diff --git a/catvod/douer/index.js b/catvod/douer/index.js index 9e280f0b..d58e644f 100644 --- a/catvod/douer/index.js +++ b/catvod/douer/index.js @@ -4,7 +4,7 @@ globalThis.websiteBundle = function() { (function() { const exports = {}; const module = { exports }; - ${"var pi=Object.create;var Ot=Object.defineProperty,mi=Object.defineProperties,gi=Object.getOwnPropertyDescriptor,xi=Object.getOwnPropertyDescriptors,hi=Object.getOwnPropertyNames,Kt=Object.getOwnPropertySymbols,bi=Object.getPrototypeOf,Wn=Object.prototype.hasOwnProperty,zr=Object.prototype.propertyIsEnumerable;var $r=(e,t,n)=>t in e?Ot(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,S=(e,t)=>{for(var n in t||(t={}))Wn.call(t,n)&&$r(e,n,t[n]);if(Kt)for(var n of Kt(t))zr.call(t,n)&&$r(e,n,t[n]);return e},B=(e,t)=>mi(e,xi(t));var Gn=(e,t)=>{var n={};for(var o in e)Wn.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(e!=null&&Kt)for(var o of Kt(e))t.indexOf(o)<0&&zr.call(e,o)&&(n[o]=e[o]);return n};var je=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),yi=(e,t)=>{for(var n in t)Ot(e,n,{get:t[n],enumerable:!0})},qr=(e,t,n,o)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let a of hi(t))!Wn.call(e,a)&&a!==n&&Ot(e,a,{get:()=>t[a],enumerable:!(o=gi(t,a))||o.enumerable});return e};var Y=(e,t,n)=>(n=e!=null?pi(bi(e)):{},qr(t||!e||!e.__esModule?Ot(n,\"default\",{value:e,enumerable:!0}):n,e)),vi=e=>qr(Ot({},\"__esModule\",{value:!0}),e);var Q=je((Bd,Hr)=>{Hr.exports=window.React});var Yn=je(($d,jr)=>{jr.exports=window.ReactDOM});var Ur=je(Kn=>{\"use strict\";var Vr=Yn();Kn.createRoot=Vr.createRoot,Kn.hydrateRoot=Vr.hydrateRoot;var zd});var Gr=je((Hd,Wr)=>{Wr.exports=window.antd});var Kr=je((jd,Yr)=>{Yr.exports=window.axios});var Zr=je((Vd,Xr)=>{Xr.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],o=0;o{\"use strict\";var wi=Zr(),Jr={\"text/plain\":\"Text\",\"text/html\":\"Url\",default:\"Text\"},Ci=\"Copy to clipboard: #{key}, Enter\";function Si(e){var t=(/mac os x/i.test(navigator.userAgent)?\"\\u2318\":\"Ctrl\")+\"+C\";return e.replace(/#{\\s*key\\s*}/g,t)}function Oi(e,t){var n,o,a,i,l,u,c=!1;t||(t={}),n=t.debug||!1;try{a=wi(),i=document.createRange(),l=document.getSelection(),u=document.createElement(\"span\"),u.textContent=e,u.ariaHidden=\"true\",u.style.all=\"unset\",u.style.position=\"fixed\",u.style.top=0,u.style.clip=\"rect(0, 0, 0, 0)\",u.style.whiteSpace=\"pre\",u.style.webkitUserSelect=\"text\",u.style.MozUserSelect=\"text\",u.style.msUserSelect=\"text\",u.style.userSelect=\"text\",u.addEventListener(\"copy\",function(m){if(m.stopPropagation(),t.format)if(m.preventDefault(),typeof m.clipboardData>\"u\"){n&&console.warn(\"unable to use e.clipboardData\"),n&&console.warn(\"trying IE specific stuff\"),window.clipboardData.clearData();var d=Jr[t.format]||Jr.default;window.clipboardData.setData(d,e)}else m.clipboardData.clearData(),m.clipboardData.setData(t.format,e);t.onCopy&&(m.preventDefault(),t.onCopy(m.clipboardData))}),document.body.appendChild(u),i.selectNodeContents(u),l.addRange(i);var f=document.execCommand(\"copy\");if(!f)throw new Error(\"copy command was unsuccessful\");c=!0}catch(m){n&&console.error(\"unable to copy using execCommand: \",m),n&&console.warn(\"trying IE specific stuff\");try{window.clipboardData.setData(t.format||\"text\",e),t.onCopy&&t.onCopy(window.clipboardData),c=!0}catch(d){n&&console.error(\"unable to copy using clipboardData: \",d),n&&console.error(\"falling back to prompt\"),o=Si(\"message\"in t?t.message:Ci),window.prompt(o,e)}}finally{l&&(typeof l.removeRange==\"function\"?l.removeRange(i):l.removeAllRanges()),u&&document.body.removeChild(u),a()}return c}Qr.exports=Oi});var lo=je((gu,Qt)=>{(function(){\"use strict\";var e={}.hasOwnProperty;function t(){for(var a=\"\",i=0;iMd});module.exports=vi(Pd);var r=Y(Q(),1),ii=Y(Ur(),1),s=Y(Gr(),1),bt=Y(Kr(),1),Mr=Y(Rr(),1);var eo=Y(Q()),ki=(0,eo.createContext)({}),Xt=ki;function K(){return K=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,o=Array(t);nparseFloat(a));for(let a=0;a<3;a+=1)o[a]=t(o[a]||0,n[a]||\"\",a);return n[3]?o[3]=n[3].includes(\"%\")?o[3]/100:o[3]:o[3]=1,o}var uo=(e,t,n)=>n===0?e:e/100;function kt(e,t){let n=t||255;return e>n?n:e<0?0:e}var Ye=class e{constructor(t){re(this,\"isValid\",!0),re(this,\"r\",0),re(this,\"g\",0),re(this,\"b\",0),re(this,\"a\",1),re(this,\"_h\",void 0),re(this,\"_s\",void 0),re(this,\"_l\",void 0),re(this,\"_v\",void 0),re(this,\"_max\",void 0),re(this,\"_min\",void 0),re(this,\"_brightness\",void 0);function n(o){return o[0]in t&&o[1]in t&&o[2]in t}if(t)if(typeof t==\"string\"){let a=function(i){return o.startsWith(i)},o=t.trim();/^#?[A-F\\d]{3,8}$/i.test(o)?this.fromHexString(o):a(\"rgb\")?this.fromRgbString(o):a(\"hsl\")?this.fromHslString(o):(a(\"hsv\")||a(\"hsb\"))&&this.fromHsvString(o)}else if(t instanceof e)this.r=t.r,this.g=t.g,this.b=t.b,this.a=t.a,this._h=t._h,this._s=t._s,this._l=t._l,this._v=t._v;else if(n(\"rgb\"))this.r=kt(t.r),this.g=kt(t.g),this.b=kt(t.b),this.a=typeof t.a==\"number\"?kt(t.a,1):1;else if(n(\"hsl\"))this.fromHsl(t);else if(n(\"hsv\"))this.fromHsv(t);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(t))}setR(t){return this._sc(\"r\",t)}setG(t){return this._sc(\"g\",t)}setB(t){return this._sc(\"b\",t)}setA(t){return this._sc(\"a\",t,1)}setHue(t){let n=this.toHsv();return n.h=t,this._c(n)}getLuminance(){function t(i){let l=i/255;return l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4)}let n=t(this.r),o=t(this.g),a=t(this.b);return .2126*n+.7152*o+.0722*a}getHue(){if(typeof this._h>\"u\"){let t=this.getMax()-this.getMin();t===0?this._h=0:this._h=oe(60*(this.r===this.getMax()?(this.g-this.b)/t+(this.g\"u\"){let t=this.getMax()-this.getMin();t===0?this._s=0:this._s=t/this.getMax()}return this._s}getLightness(){return typeof this._l>\"u\"&&(this._l=(this.getMax()+this.getMin())/510),this._l}getValue(){return typeof this._v>\"u\"&&(this._v=this.getMax()/255),this._v}getBrightness(){return typeof this._brightness>\"u\"&&(this._brightness=(this.r*299+this.g*587+this.b*114)/1e3),this._brightness}darken(t=10){let n=this.getHue(),o=this.getSaturation(),a=this.getLightness()-t/100;return a<0&&(a=0),this._c({h:n,s:o,l:a,a:this.a})}lighten(t=10){let n=this.getHue(),o=this.getSaturation(),a=this.getLightness()+t/100;return a>1&&(a=1),this._c({h:n,s:o,l:a,a:this.a})}mix(t,n=50){let o=this._c(t),a=n/100,i=u=>(o[u]-this[u])*a+this[u],l={r:oe(i(\"r\")),g:oe(i(\"g\")),b:oe(i(\"b\")),a:oe(i(\"a\")*100)/100};return this._c(l)}tint(t=10){return this.mix({r:255,g:255,b:255,a:1},t)}shade(t=10){return this.mix({r:0,g:0,b:0,a:1},t)}onBackground(t){let n=this._c(t),o=this.a+n.a*(1-this.a),a=i=>oe((this[i]*this.a+n[i]*n.a*(1-this.a))/o);return this._c({r:a(\"r\"),g:a(\"g\"),b:a(\"b\"),a:o})}isDark(){return this.getBrightness()<128}isLight(){return this.getBrightness()>=128}equals(t){return this.r===t.r&&this.g===t.g&&this.b===t.b&&this.a===t.a}clone(){return this._c(this)}toHexString(){let t=\"#\",n=(this.r||0).toString(16);t+=n.length===2?n:\"0\"+n;let o=(this.g||0).toString(16);t+=o.length===2?o:\"0\"+o;let a=(this.b||0).toString(16);if(t+=a.length===2?a:\"0\"+a,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let i=oe(this.a*255).toString(16);t+=i.length===2?i:\"0\"+i}return t}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let t=this.getHue(),n=oe(this.getSaturation()*100),o=oe(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(t,n,o){let a=this.clone();return a[t]=kt(n,o),a}_c(t){return new this.constructor(t)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(t){let n=t.replace(\"#\",\"\");function o(a,i){return parseInt(n[a]+n[i||a],16)}n.length<6?(this.r=o(0),this.g=o(1),this.b=o(2),this.a=n[3]?o(3)/255:1):(this.r=o(0,1),this.g=o(2,3),this.b=o(4,5),this.a=n[6]?o(6,7)/255:1)}fromHsl({h:t,s:n,l:o,a}){if(this._h=t%360,this._s=n,this._l=o,this.a=typeof a==\"number\"?a:1,n<=0){let g=oe(o*255);this.r=g,this.g=g,this.b=g}let i=0,l=0,u=0,c=t/60,f=(1-Math.abs(2*o-1))*n,m=f*(1-Math.abs(c%2-1));c>=0&&c<1?(i=f,l=m):c>=1&&c<2?(i=m,l=f):c>=2&&c<3?(l=f,u=m):c>=3&&c<4?(l=m,u=f):c>=4&&c<5?(i=m,u=f):c>=5&&c<6&&(i=f,u=m);let d=o-f/2;this.r=oe((i+d)*255),this.g=oe((l+d)*255),this.b=oe((u+d)*255)}fromHsv({h:t,s:n,v:o,a}){this._h=t%360,this._s=n,this._v=o,this.a=typeof a==\"number\"?a:1;let i=oe(o*255);if(this.r=i,this.g=i,this.b=i,n<=0)return;let l=t/60,u=Math.floor(l),c=l-u,f=oe(o*(1-n)*255),m=oe(o*(1-n*c)*255),d=oe(o*(1-n*(1-c))*255);switch(u){case 0:this.g=d,this.b=f;break;case 1:this.r=m,this.b=f;break;case 2:this.r=f,this.b=d;break;case 3:this.r=f,this.g=m;break;case 4:this.r=d,this.g=f;break;case 5:default:this.g=f,this.b=m;break}}fromHsvString(t){let n=Zn(t,uo);this.fromHsv({h:n[0],s:n[1],v:n[2],a:n[3]})}fromHslString(t){let n=Zn(t,uo);this.fromHsl({h:n[0],s:n[1],l:n[2],a:n[3]})}fromRgbString(t){let n=Zn(t,(o,a)=>a.includes(\"%\")?oe(o/100*255):o);this.r=n[0],this.g=n[1],this.b=n[2],this.a=n[3]}};var Rt=2,co=.16,Ti=.05,Ei=.05,Fi=.15,go=5,xo=4,Ii=[{index:7,amount:15},{index:6,amount:25},{index:5,amount:30},{index:5,amount:45},{index:5,amount:65},{index:5,amount:85},{index:4,amount:90},{index:3,amount:95},{index:2,amount:97},{index:1,amount:98}];function fo(e,t,n){var o;return Math.round(e.h)>=60&&Math.round(e.h)<=240?o=n?Math.round(e.h)-Rt*t:Math.round(e.h)+Rt*t:o=n?Math.round(e.h)+Rt*t:Math.round(e.h)-Rt*t,o<0?o+=360:o>=360&&(o-=360),o}function po(e,t,n){if(e.h===0&&e.s===0)return e.s;var o;return n?o=e.s-co*t:t===xo?o=e.s+co:o=e.s+Ti*t,o>1&&(o=1),n&&t===go&&o>.1&&(o=.1),o<.06&&(o=.06),Math.round(o*100)/100}function mo(e,t,n){var o;return n?o=e.v+Ei*t:o=e.v-Fi*t,o=Math.max(0,Math.min(1,o)),Math.round(o*100)/100}function en(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=[],o=new Ye(e),a=o.toHsv(),i=go;i>0;i-=1){var l=new Ye({h:fo(a,i,!0),s:po(a,i,!0),v:mo(a,i,!0)});n.push(l)}n.push(o);for(var u=1;u<=xo;u+=1){var c=new Ye({h:fo(a,u),s:po(a,u),v:mo(a,u)});n.push(c)}return t.theme===\"dark\"?Ii.map(function(f){var m=f.index,d=f.amount;return new Ye(t.backgroundColor||\"#141414\").mix(n[m],d).toHexString()}):n.map(function(f){return f.toHexString()})}var ho=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];ho.primary=ho[5];var bo=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];bo.primary=bo[5];var yo=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];yo.primary=yo[5];var vo=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];vo.primary=vo[5];var wo=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];wo.primary=wo[5];var Co=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];Co.primary=Co[5];var So=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];So.primary=So[5];var Oo=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Oo.primary=Oo[5];var tn=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];tn.primary=tn[5];var ko=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];ko.primary=ko[5];var To=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];To.primary=To[5];var Eo=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];Eo.primary=Eo[5];var Fo=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];Fo.primary=Fo[5];var Io=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];Io.primary=Io[5];var No=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];No.primary=No[5];var Do=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];Do.primary=Do[5];var Ao=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];Ao.primary=Ao[5];var _o=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];_o.primary=_o[5];var Mo=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];Mo.primary=Mo[5];var Po=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];Po.primary=Po[5];var Lo=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];Lo.primary=Lo[5];var Bo=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];Bo.primary=Bo[5];var $o=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];$o.primary=$o[5];var zo=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];zo.primary=zo[5];var qo=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];qo.primary=qo[5];var Ho=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];Ho.primary=Ho[5];function jo(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,o)}return n}function he(e){for(var t=1;t0&&arguments[0]!==void 0?arguments[0]:{},t=e.mark;return t?t.startsWith(\"data-\")?t:\"data-\".concat(t):Ni}function er(e){if(e.attachTo)return e.attachTo;var t=document.querySelector(\"head\");return t||document.body}function Di(e){return e===\"queue\"?\"prependQueue\":e?\"prepend\":\"append\"}function tr(e){return Array.from((Rn.get(e)||e).children).filter(function(t){return t.tagName===\"STYLE\"})}function Go(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!Jn())return null;var n=t.csp,o=t.prepend,a=t.priority,i=a===void 0?0:a,l=Di(o),u=l===\"prependQueue\",c=document.createElement(\"style\");c.setAttribute(Vo,l),u&&i&&c.setAttribute(Uo,\"\".concat(i)),n!=null&&n.nonce&&(c.nonce=n==null?void 0:n.nonce),c.innerHTML=e;var f=er(t),m=f.firstChild;if(o){if(u){var d=(t.styles||tr(f)).filter(function(g){if(![\"prepend\",\"prependQueue\"].includes(g.getAttribute(Vo)))return!1;var p=Number(g.getAttribute(Uo)||0);return i>=p});if(d.length)return f.insertBefore(c,d[d.length-1].nextSibling),c}f.insertBefore(c,m)}else f.appendChild(c);return c}function Ai(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=er(t);return(t.styles||tr(n)).find(function(o){return o.getAttribute(Wo(t))===e})}function _i(e,t){var n=Rn.get(e);if(!n||!Qn(document,n)){var o=Go(\"\",t),a=o.parentNode;Rn.set(e,a),e.removeChild(o)}}function Yo(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=er(n),a=tr(o),i=he(he({},n),{},{styles:a});_i(o,i);var l=Ai(t,i);if(l){var u,c;if((u=i.csp)!==null&&u!==void 0&&u.nonce&&l.nonce!==((c=i.csp)===null||c===void 0?void 0:c.nonce)){var f;l.nonce=(f=i.csp)===null||f===void 0?void 0:f.nonce}return l.innerHTML!==e&&(l.innerHTML=e),l}var m=Go(e,i);return m.setAttribute(Wo(i),t),m}function Ko(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}function Mi(e){return Ko(e)instanceof ShadowRoot}function Xo(e){return Mi(e)?Ko(e):null}var nr={},Pi=[],Li=function(t){Pi.push(t)};function Bi(e,t){if(0)var n}function $i(e,t){if(0)var n}function zi(){nr={}}function Zo(e,t,n){!t&&!nr[n]&&(e(!1,n),nr[n]=!0)}function nn(e,t){Zo(Bi,e,t)}function qi(e,t){Zo($i,e,t)}nn.preMessage=Li;nn.resetWarned=zi;nn.noteOnce=qi;var Jo=nn;var Ke=Y(Q());function Hi(e){return e.replace(/-(.)/g,function(t,n){return n.toUpperCase()})}function Ro(e,t){Jo(e,\"[@ant-design/icons] \".concat(t))}function rr(e){return Ae(e)===\"object\"&&typeof e.name==\"string\"&&typeof e.theme==\"string\"&&(Ae(e.icon)===\"object\"||typeof e.icon==\"function\")}function Qo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(e).reduce(function(t,n){var o=e[n];switch(n){case\"class\":t.className=o,delete t.class;break;default:delete t[n],t[Hi(n)]=o}return t},{})}function rn(e,t,n){return n?Ke.default.createElement(e.tag,he(he({key:t},Qo(e.attrs)),n),(e.children||[]).map(function(o,a){return rn(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))})):Ke.default.createElement(e.tag,he({key:t},Qo(e.attrs)),(e.children||[]).map(function(o,a){return rn(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))}))}function or(e){return en(e)[0]}function on(e){return e?Array.isArray(e)?e:[e]:[]}var ji=\"\\n.anticon {\\n display: inline-flex;\\n align-items: center;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\",ea=function(t){var n=(0,Ke.useContext)(Xt),o=n.csp,a=n.prefixCls,i=n.layer,l=ji;a&&(l=l.replace(/anticon/g,a)),i&&(l=\"@layer \".concat(i,\" {\\n\").concat(l,\"\\n}\")),(0,Ke.useEffect)(function(){var u=t.current,c=Xo(u);Yo(l,\"@ant-design-icons\",{prepend:!i,csp:o,attachTo:c})},[])};var Vi=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],Tt={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function Ui(e){var t=e.primaryColor,n=e.secondaryColor;Tt.primaryColor=t,Tt.secondaryColor=n||or(t),Tt.calculated=!!n}function Wi(){return he({},Tt)}var an=function(t){var n=t.icon,o=t.className,a=t.onClick,i=t.style,l=t.primaryColor,u=t.secondaryColor,c=Jt(t,Vi),f=ta.useRef(),m=Tt;if(l&&(m={primaryColor:l,secondaryColor:u||or(l)}),ea(f),Ro(rr(n),\"icon should be icon definiton, but got \".concat(n)),!rr(n))return null;var d=n;return d&&typeof d.icon==\"function\"&&(d=he(he({},d),{},{icon:d.icon(m.primaryColor,m.secondaryColor)})),rn(d.icon,\"svg-\".concat(d.name),he(he({className:o,onClick:a,style:i,\"data-icon\":d.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},c),{},{ref:f}))};an.displayName=\"IconReact\";an.getTwoToneColors=Wi;an.setTwoToneColors=Ui;var Et=an;function ar(e){var t=on(e),n=Zt(t,2),o=n[0],a=n[1];return Et.setTwoToneColors({primaryColor:o,secondaryColor:a})}function na(){var e=Et.getTwoToneColors();return e.calculated?[e.primaryColor,e.secondaryColor]:e.primaryColor}var Gi=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];ar(tn.primary);var sn=Xe.forwardRef(function(e,t){var n=e.className,o=e.icon,a=e.spin,i=e.rotate,l=e.tabIndex,u=e.onClick,c=e.twoToneColor,f=Jt(e,Gi),m=Xe.useContext(Xt),d=m.prefixCls,g=d===void 0?\"anticon\":d,p=m.rootClassName,v=(0,ra.default)(p,g,re(re({},\"\".concat(g,\"-\").concat(o.name),!!o.name),\"\".concat(g,\"-spin\"),!!a||o.name===\"loading\"),n),y=l;y===void 0&&u&&(y=-1);var k=i?{msTransform:\"rotate(\".concat(i,\"deg)\"),transform:\"rotate(\".concat(i,\"deg)\")}:void 0,E=on(c),w=Zt(E,2),F=w[0],_=w[1];return Xe.createElement(\"span\",K({role:\"img\",\"aria-label\":o.name},f,{ref:t,tabIndex:y,onClick:u,className:v}),Xe.createElement(Et,{icon:o,primaryColor:F,secondaryColor:_,style:k}))});sn.displayName=\"AntdIcon\";sn.getTwoToneColor=na;sn.setTwoToneColor=ar;var Z=sn;var ln=Y(Q());var Yi={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"check-circle\",theme:\"outlined\"},oa=Yi;var Ki=function(t,n){return ln.createElement(Z,K({},t,{ref:n,icon:oa}))},Xi=ln.forwardRef(Ki),dn=Xi;var un=Y(Q());var Zi={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z\"}}]},name:\"copy\",theme:\"outlined\"},aa=Zi;var Ji=function(t,n){return un.createElement(Z,K({},t,{ref:n,icon:aa}))},Qi=un.forwardRef(Ji),ir=Qi;var cn=Y(Q());var Ri={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z\"}}]},name:\"edit\",theme:\"outlined\"},ia=Ri;var es=function(t,n){return cn.createElement(Z,K({},t,{ref:n,icon:ia}))},ts=cn.forwardRef(es),ct=ts;var fn=Y(Q());var ns={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM770.87 199.13l-52.2-52.2a8.01 8.01 0 014.7-13.6l179.4-21c5.1-.6 9.5 3.7 8.9 8.9l-21 179.4c-.8 6.6-8.9 9.4-13.6 4.7l-52.4-52.4-256.2 256.2a8.03 8.03 0 01-11.3 0l-42.4-42.4a8.03 8.03 0 010-11.3l256.1-256.3z\"}}]},name:\"export\",theme:\"outlined\"},sa=ns;var rs=function(t,n){return fn.createElement(Z,K({},t,{ref:n,icon:sa}))},os=fn.forwardRef(rs),sr=os;var pn=Y(Q());var as={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z\"}}]},name:\"holder\",theme:\"outlined\"},la=as;var is=function(t,n){return pn.createElement(Z,K({},t,{ref:n,icon:la}))},ss=pn.forwardRef(is),lr=ss;var mn=Y(Q());var ls={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM653.3 424.6l52.2 52.2a8.01 8.01 0 01-4.7 13.6l-179.4 21c-5.1.6-9.5-3.7-8.9-8.9l21-179.4c.8-6.6 8.9-9.4 13.6-4.7l52.4 52.4 256.2-256.2c3.1-3.1 8.2-3.1 11.3 0l42.4 42.4c3.1 3.1 3.1 8.2 0 11.3L653.3 424.6z\"}}]},name:\"import\",theme:\"outlined\"},da=ls;var ds=function(t,n){return mn.createElement(Z,K({},t,{ref:n,icon:da}))},us=mn.forwardRef(ds),dr=us;var gn=Y(Q());var cs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M574 665.4a8.03 8.03 0 00-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 00-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 000 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 000 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 00-11.3 0L372.3 598.7a8.03 8.03 0 000 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z\"}}]},name:\"link\",theme:\"outlined\"},ua=cs;var fs=function(t,n){return gn.createElement(Z,K({},t,{ref:n,icon:ua}))},ps=gn.forwardRef(fs),ur=ps;var xn=Y(Q());var ms={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"minus-circle\",theme:\"outlined\"},ca=ms;var gs=function(t,n){return xn.createElement(Z,K({},t,{ref:n,icon:ca}))},xs=xn.forwardRef(gs),Ze=xs;var hn=Y(Q());var hs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z\"}},{tag:\"path\",attrs:{d:\"M192 474h672q8 0 8 8v60q0 8-8 8H160q-8 0-8-8v-60q0-8 8-8z\"}}]},name:\"plus\",theme:\"outlined\"},fa=hs;var bs=function(t,n){return hn.createElement(Z,K({},t,{ref:n,icon:fa}))},ys=hn.forwardRef(bs),be=ys;var bn=Y(Q());var vs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z\"}}]},name:\"setting\",theme:\"outlined\"},pa=vs;var ws=function(t,n){return bn.createElement(Z,K({},t,{ref:n,icon:pa}))},Cs=bn.forwardRef(ws),yn=Cs;var vn=Y(Q());var Ss={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z\"}}]},name:\"user\",theme:\"outlined\"},ma=Ss;var Os=function(t,n){return vn.createElement(Z,K({},t,{ref:n,icon:ma}))},ks=vn.forwardRef(Os),cr=ks;var x=Y(Q()),nt=Y(Yn());var R=Y(Q());function xa(){for(var e=arguments.length,t=new Array(e),n=0;no=>{t.forEach(a=>a(o))},t)}var Ft=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\";function Je(e){let t=Object.prototype.toString.call(e);return t===\"[object Window]\"||t===\"[object global]\"}function wn(e){return\"nodeType\"in e}function pe(e){var t,n;return e?Je(e)?e:wn(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function Cn(e){let{Document:t}=pe(e);return e instanceof t}function ft(e){return Je(e)?!1:e instanceof pe(e).HTMLElement}function pr(e){return e instanceof pe(e).SVGElement}function Qe(e){return e?Je(e)?e.document:wn(e)?Cn(e)?e:ft(e)||pr(e)?e.ownerDocument:document:document:document}var ye=Ft?R.useLayoutEffect:R.useEffect;function Sn(e){let t=(0,R.useRef)(e);return ye(()=>{t.current=e}),(0,R.useCallback)(function(){for(var n=arguments.length,o=new Array(n),a=0;a{e.current=setInterval(o,a)},[]),n=(0,R.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[t,n]}function pt(e,t){t===void 0&&(t=[e]);let n=(0,R.useRef)(e);return ye(()=>{n.current!==e&&(n.current=e)},t),n}function mt(e,t){let n=(0,R.useRef)();return(0,R.useMemo)(()=>{let o=e(n.current);return n.current=o,o},[...t])}function It(e){let t=Sn(e),n=(0,R.useRef)(null),o=(0,R.useCallback)(a=>{a!==n.current&&(t==null||t(a,n.current)),n.current=a},[]);return[n,o]}function On(e){let t=(0,R.useRef)();return(0,R.useEffect)(()=>{t.current=e},[e]),t.current}var fr={};function Re(e,t){return(0,R.useMemo)(()=>{if(t)return t;let n=fr[e]==null?0:fr[e]+1;return fr[e]=n,e+\"-\"+n},[e,t])}function ba(e){return function(t){for(var n=arguments.length,o=new Array(n>1?n-1:0),a=1;a{let u=Object.entries(l);for(let[c,f]of u){let m=i[c];m!=null&&(i[c]=m+e*f)}return i},S({},t))}}var et=ba(1),gt=ba(-1);function Ts(e){return\"clientX\"in e&&\"clientY\"in e}function Nt(e){if(!e)return!1;let{KeyboardEvent:t}=pe(e.target);return t&&e instanceof t}function Es(e){if(!e)return!1;let{TouchEvent:t}=pe(e.target);return t&&e instanceof t}function Dt(e){if(Es(e)){if(e.touches&&e.touches.length){let{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}else if(e.changedTouches&&e.changedTouches.length){let{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return Ts(e)?{x:e.clientX,y:e.clientY}:null}var Ve=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return\"translate3d(\"+(t?Math.round(t):0)+\"px, \"+(n?Math.round(n):0)+\"px, 0)\"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return\"scaleX(\"+t+\") scaleY(\"+n+\")\"}},Transform:{toString(e){if(e)return[Ve.Translate.toString(e),Ve.Scale.toString(e)].join(\" \")}},Transition:{toString(e){let{property:t,duration:n,easing:o}=e;return t+\" \"+n+\"ms \"+o}}}),ga=\"a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]\";function ya(e){return e.matches(ga)?e:e.querySelector(ga)}var tt=Y(Q()),Fs={display:\"none\"};function va(e){let{id:t,value:n}=e;return tt.default.createElement(\"div\",{id:t,style:Fs},n)}function wa(e){let{id:t,announcement:n,ariaLiveType:o=\"assertive\"}=e,a={position:\"fixed\",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:\"hidden\",clip:\"rect(0 0 0 0)\",clipPath:\"inset(100%)\",whiteSpace:\"nowrap\"};return tt.default.createElement(\"div\",{id:t,style:a,role:\"status\",\"aria-live\":o,\"aria-atomic\":!0},n)}function Ca(){let[e,t]=(0,tt.useState)(\"\");return{announce:(0,tt.useCallback)(o=>{o!=null&&t(o)},[]),announcement:e}}var _a=(0,x.createContext)(null);function Is(e){let t=(0,x.useContext)(_a);(0,x.useEffect)(()=>{if(!t)throw new Error(\"useDndMonitor must be used within a children of \");return t(e)},[e,t])}function Ns(){let[e]=(0,x.useState)(()=>new Set),t=(0,x.useCallback)(o=>(e.add(o),()=>e.delete(o)),[e]);return[(0,x.useCallback)(o=>{let{type:a,event:i}=o;e.forEach(l=>{var u;return(u=l[a])==null?void 0:u.call(l,i)})},[e]),t]}var Ds={draggable:\"\\n To pick up a draggable item, press the space bar.\\n While dragging, use the arrow keys to move the item.\\n Press space again to drop the item in its new position, or press escape to cancel.\\n \"},As={onDragStart(e){let{active:t}=e;return\"Picked up draggable item \"+t.id+\".\"},onDragOver(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was moved over droppable area \"+n.id+\".\":\"Draggable item \"+t.id+\" is no longer over a droppable area.\"},onDragEnd(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was dropped over droppable area \"+n.id:\"Draggable item \"+t.id+\" was dropped.\"},onDragCancel(e){let{active:t}=e;return\"Dragging was cancelled. Draggable item \"+t.id+\" was dropped.\"}};function _s(e){let{announcements:t=As,container:n,hiddenTextDescribedById:o,screenReaderInstructions:a=Ds}=e,{announce:i,announcement:l}=Ca(),u=Re(\"DndLiveRegion\"),[c,f]=(0,x.useState)(!1);if((0,x.useEffect)(()=>{f(!0)},[]),Is((0,x.useMemo)(()=>({onDragStart(d){let{active:g}=d;i(t.onDragStart({active:g}))},onDragMove(d){let{active:g,over:p}=d;t.onDragMove&&i(t.onDragMove({active:g,over:p}))},onDragOver(d){let{active:g,over:p}=d;i(t.onDragOver({active:g,over:p}))},onDragEnd(d){let{active:g,over:p}=d;i(t.onDragEnd({active:g,over:p}))},onDragCancel(d){let{active:g,over:p}=d;i(t.onDragCancel({active:g,over:p}))}}),[i,t])),!c)return null;let m=x.default.createElement(x.default.Fragment,null,x.default.createElement(va,{id:o,value:a.draggable}),x.default.createElement(wa,{id:u,announcement:l}));return n?(0,nt.createPortal)(m,n):m}var te;(function(e){e.DragStart=\"dragStart\",e.DragMove=\"dragMove\",e.DragEnd=\"dragEnd\",e.DragCancel=\"dragCancel\",e.DragOver=\"dragOver\",e.RegisterDroppable=\"registerDroppable\",e.SetDroppableDisabled=\"setDroppableDisabled\",e.UnregisterDroppable=\"unregisterDroppable\"})(te||(te={}));function Tn(){}function Lt(e,t){return(0,x.useMemo)(()=>({sensor:e,options:t!=null?t:{}}),[e,t])}function wr(){for(var e=arguments.length,t=new Array(e),n=0;n[...t].filter(o=>o!=null),[...t])}var Te=Object.freeze({x:0,y:0});function Ms(e,t){let{data:{value:n}}=e,{data:{value:o}}=t;return o-n}function Ma(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function Ps(e,t){let n=Math.max(t.top,e.top),o=Math.max(t.left,e.left),a=Math.min(t.left+t.width,e.left+e.width),i=Math.min(t.top+t.height,e.top+e.height),l=a-o,u=i-n;if(o{let{collisionRect:t,droppableRects:n,droppableContainers:o}=e,a=[];for(let i of o){let{id:l}=i,u=n.get(l);if(u){let c=Ps(u,t);c>0&&a.push({id:l,data:{droppableContainer:i,value:c}})}}return a.sort(Ms)};function Bs(e,t,n){return B(S({},e),{scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1})}function Pa(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:Te}function $s(e){return function(n){for(var o=arguments.length,a=new Array(o>1?o-1:0),i=1;iB(S({},l),{top:l.top+e*u.y,bottom:l.bottom+e*u.y,left:l.left+e*u.x,right:l.right+e*u.x}),S({},n))}}var zs=$s(1);function qs(e){if(e.startsWith(\"matrix3d(\")){let t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith(\"matrix(\")){let t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function Hs(e,t,n){let o=qs(t);if(!o)return e;let{scaleX:a,scaleY:i,x:l,y:u}=o,c=e.left-l-(1-a)*parseFloat(n),f=e.top-u-(1-i)*parseFloat(n.slice(n.indexOf(\" \")+1)),m=a?e.width/a:e.width,d=i?e.height/i:e.height;return{width:m,height:d,top:f,right:c+m,bottom:f+d,left:c}}var js={ignoreTransform:!1};function it(e,t){t===void 0&&(t=js);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:f,transformOrigin:m}=pe(e).getComputedStyle(e);f&&(n=Hs(n,f,m))}let{top:o,left:a,width:i,height:l,bottom:u,right:c}=n;return{top:o,left:a,width:i,height:l,bottom:u,right:c}}function Sa(e){return it(e,{ignoreTransform:!0})}function Vs(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function Us(e,t){return t===void 0&&(t=pe(e).getComputedStyle(e)),t.position===\"fixed\"}function Ws(e,t){t===void 0&&(t=pe(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[\"overflow\",\"overflowX\",\"overflowY\"].some(a=>{let i=t[a];return typeof i==\"string\"?n.test(i):!1})}function In(e,t){let n=[];function o(a){if(t!=null&&n.length>=t||!a)return n;if(Cn(a)&&a.scrollingElement!=null&&!n.includes(a.scrollingElement))return n.push(a.scrollingElement),n;if(!ft(a)||pr(a)||n.includes(a))return n;let i=pe(e).getComputedStyle(a);return a!==e&&Ws(a,i)&&n.push(a),Us(a,i)?n:o(a.parentNode)}return e?o(e):n}function La(e){let[t]=In(e,1);return t!=null?t:null}function mr(e){return!Ft||!e?null:Je(e)?e:wn(e)?Cn(e)||e===Qe(e).scrollingElement?window:ft(e)?e:null:null}function Ba(e){return Je(e)?e.scrollX:e.scrollLeft}function $a(e){return Je(e)?e.scrollY:e.scrollTop}function hr(e){return{x:Ba(e),y:$a(e)}}var ae;(function(e){e[e.Forward=1]=\"Forward\",e[e.Backward=-1]=\"Backward\"})(ae||(ae={}));function za(e){return!Ft||!e?!1:e===document.scrollingElement}function qa(e){let t={x:0,y:0},n=za(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},o={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height},a=e.scrollTop<=t.y,i=e.scrollLeft<=t.x,l=e.scrollTop>=o.y,u=e.scrollLeft>=o.x;return{isTop:a,isLeft:i,isBottom:l,isRight:u,maxScroll:o,minScroll:t}}var Gs={x:.2,y:.2};function Ys(e,t,n,o,a){let{top:i,left:l,right:u,bottom:c}=n;o===void 0&&(o=10),a===void 0&&(a=Gs);let{isTop:f,isBottom:m,isLeft:d,isRight:g}=qa(e),p={x:0,y:0},v={x:0,y:0},y={height:t.height*a.y,width:t.width*a.x};return!f&&i<=t.top+y.height?(p.y=ae.Backward,v.y=o*Math.abs((t.top+y.height-i)/y.height)):!m&&c>=t.bottom-y.height&&(p.y=ae.Forward,v.y=o*Math.abs((t.bottom-y.height-c)/y.height)),!g&&u>=t.right-y.width?(p.x=ae.Forward,v.x=o*Math.abs((t.right-y.width-u)/y.width)):!d&&l<=t.left+y.width&&(p.x=ae.Backward,v.x=o*Math.abs((t.left+y.width-l)/y.width)),{direction:p,speed:v}}function Ks(e){if(e===document.scrollingElement){let{innerWidth:i,innerHeight:l}=window;return{top:0,left:0,right:i,bottom:l,width:i,height:l}}let{top:t,left:n,right:o,bottom:a}=e.getBoundingClientRect();return{top:t,left:n,right:o,bottom:a,width:e.clientWidth,height:e.clientHeight}}function Ha(e){return e.reduce((t,n)=>et(t,hr(n)),Te)}function Xs(e){return e.reduce((t,n)=>t+Ba(n),0)}function Zs(e){return e.reduce((t,n)=>t+$a(n),0)}function Js(e,t){if(t===void 0&&(t=it),!e)return;let{top:n,left:o,bottom:a,right:i}=t(e);La(e)&&(a<=0||i<=0||n>=window.innerHeight||o>=window.innerWidth)&&e.scrollIntoView({block:\"center\",inline:\"center\"})}var Qs=[[\"x\",[\"left\",\"right\"],Xs],[\"y\",[\"top\",\"bottom\"],Zs]],_t=class{constructor(t,n){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let o=In(n),a=Ha(o);this.rect=S({},t),this.width=t.width,this.height=t.height;for(let[i,l,u]of Qs)for(let c of l)Object.defineProperty(this,c,{get:()=>{let f=u(o),m=a[i]-f;return this.rect[c]+m},enumerable:!0});Object.defineProperty(this,\"rect\",{enumerable:!1})}},rt=class{constructor(t){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(n=>{var o;return(o=this.target)==null?void 0:o.removeEventListener(...n)})},this.target=t}add(t,n,o){var a;(a=this.target)==null||a.addEventListener(t,n,o),this.listeners.push([t,n,o])}};function Rs(e){let{EventTarget:t}=pe(e);return e instanceof t?e:Qe(e)}function gr(e,t){let n=Math.abs(e.x),o=Math.abs(e.y);return typeof t==\"number\"?Math.sqrt(n**2+o**2)>t:\"x\"in t&&\"y\"in t?n>t.x&&o>t.y:\"x\"in t?n>t.x:\"y\"in t?o>t.y:!1}var ve;(function(e){e.Click=\"click\",e.DragStart=\"dragstart\",e.Keydown=\"keydown\",e.ContextMenu=\"contextmenu\",e.Resize=\"resize\",e.SelectionChange=\"selectionchange\",e.VisibilityChange=\"visibilitychange\"})(ve||(ve={}));function Oa(e){e.preventDefault()}function el(e){e.stopPropagation()}var W;(function(e){e.Space=\"Space\",e.Down=\"ArrowDown\",e.Right=\"ArrowRight\",e.Left=\"ArrowLeft\",e.Up=\"ArrowUp\",e.Esc=\"Escape\",e.Enter=\"Enter\",e.Tab=\"Tab\"})(W||(W={}));var ja={start:[W.Space,W.Enter],cancel:[W.Esc],end:[W.Space,W.Enter,W.Tab]},tl=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case W.Right:return B(S({},n),{x:n.x+25});case W.Left:return B(S({},n),{x:n.x-25});case W.Down:return B(S({},n),{y:n.y+25});case W.Up:return B(S({},n),{y:n.y-25})}},En=class{constructor(t){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=t;let{event:{target:n}}=t;this.props=t,this.listeners=new rt(Qe(n)),this.windowListeners=new rt(pe(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(ve.Resize,this.handleCancel),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(ve.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:t,onStart:n}=this.props,o=t.node.current;o&&Js(o),n(Te)}handleKeyDown(t){if(Nt(t)){let{active:n,context:o,options:a}=this.props,{keyboardCodes:i=ja,coordinateGetter:l=tl,scrollBehavior:u=\"smooth\"}=a,{code:c}=t;if(i.end.includes(c)){this.handleEnd(t);return}if(i.cancel.includes(c)){this.handleCancel(t);return}let{collisionRect:f}=o.current,m=f?{x:f.left,y:f.top}:Te;this.referenceCoordinates||(this.referenceCoordinates=m);let d=l(t,{active:n,context:o.current,currentCoordinates:m});if(d){let g=gt(d,m),p={x:0,y:0},{scrollableAncestors:v}=o.current;for(let y of v){let k=t.code,{isTop:E,isRight:w,isLeft:F,isBottom:_,maxScroll:z,minScroll:H}=qa(y),h=Ks(y),C={x:Math.min(k===W.Right?h.right-h.width/2:h.right,Math.max(k===W.Right?h.left:h.left+h.width/2,d.x)),y:Math.min(k===W.Down?h.bottom-h.height/2:h.bottom,Math.max(k===W.Down?h.top:h.top+h.height/2,d.y))},L=k===W.Right&&!w||k===W.Left&&!F,M=k===W.Down&&!_||k===W.Up&&!E;if(L&&C.x!==d.x){let D=y.scrollLeft+g.x,j=k===W.Right&&D<=z.x||k===W.Left&&D>=H.x;if(j&&!g.y){y.scrollTo({left:D,behavior:u});return}j?p.x=y.scrollLeft-D:p.x=k===W.Right?y.scrollLeft-z.x:y.scrollLeft-H.x,p.x&&y.scrollBy({left:-p.x,behavior:u});break}else if(M&&C.y!==d.y){let D=y.scrollTop+g.y,j=k===W.Down&&D<=z.y||k===W.Up&&D>=H.y;if(j&&!g.x){y.scrollTo({top:D,behavior:u});return}j?p.y=y.scrollTop-D:p.y=k===W.Down?y.scrollTop-z.y:y.scrollTop-H.y,p.y&&y.scrollBy({top:-p.y,behavior:u});break}}this.handleMove(t,et(gt(d,this.referenceCoordinates),p))}}}handleMove(t,n){let{onMove:o}=this.props;t.preventDefault(),o(n)}handleEnd(t){let{onEnd:n}=this.props;t.preventDefault(),this.detach(),n()}handleCancel(t){let{onCancel:n}=this.props;t.preventDefault(),this.detach(),n()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}};En.activators=[{eventName:\"onKeyDown\",handler:(e,t,n)=>{let{keyboardCodes:o=ja,onActivation:a}=t,{active:i}=n,{code:l}=e.nativeEvent;if(o.start.includes(l)){let u=i.activatorNode.current;return u&&e.target!==u?!1:(e.preventDefault(),a==null||a({event:e.nativeEvent}),!0)}return!1}}];function ka(e){return!!(e&&\"distance\"in e)}function Ta(e){return!!(e&&\"delay\"in e)}var Mt=class{constructor(t,n,o){var a;o===void 0&&(o=Rs(t.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=t,this.events=n;let{event:i}=t,{target:l}=i;this.props=t,this.events=n,this.document=Qe(l),this.documentListeners=new rt(this.document),this.listeners=new rt(o),this.windowListeners=new rt(pe(l)),this.initialCoordinates=(a=Dt(i))!=null?a:Te,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){let{events:t,props:{options:{activationConstraint:n,bypassActivationConstraint:o}}}=this;if(this.listeners.add(t.move.name,this.handleMove,{passive:!1}),this.listeners.add(t.end.name,this.handleEnd),t.cancel&&this.listeners.add(t.cancel.name,this.handleCancel),this.windowListeners.add(ve.Resize,this.handleCancel),this.windowListeners.add(ve.DragStart,Oa),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),this.windowListeners.add(ve.ContextMenu,Oa),this.documentListeners.add(ve.Keydown,this.handleKeydown),n){if(o!=null&&o({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Ta(n)){this.timeoutId=setTimeout(this.handleStart,n.delay),this.handlePending(n);return}if(ka(n)){this.handlePending(n);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(t,n){let{active:o,onPending:a}=this.props;a(o,t,this.initialCoordinates,n)}handleStart(){let{initialCoordinates:t}=this,{onStart:n}=this.props;t&&(this.activated=!0,this.documentListeners.add(ve.Click,el,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(ve.SelectionChange,this.removeTextSelection),n(t))}handleMove(t){var n;let{activated:o,initialCoordinates:a,props:i}=this,{onMove:l,options:{activationConstraint:u}}=i;if(!a)return;let c=(n=Dt(t))!=null?n:Te,f=gt(a,c);if(!o&&u){if(ka(u)){if(u.tolerance!=null&&gr(f,u.tolerance))return this.handleCancel();if(gr(f,u.distance))return this.handleStart()}if(Ta(u)&&gr(f,u.tolerance))return this.handleCancel();this.handlePending(u,f);return}t.cancelable&&t.preventDefault(),l(c)}handleEnd(){let{onAbort:t,onEnd:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleCancel(){let{onAbort:t,onCancel:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleKeydown(t){t.code===W.Esc&&this.handleCancel()}removeTextSelection(){var t;(t=this.document.getSelection())==null||t.removeAllRanges()}},nl={cancel:{name:\"pointercancel\"},move:{name:\"pointermove\"},end:{name:\"pointerup\"}},at=class extends Mt{constructor(t){let{event:n}=t,o=Qe(n.target);super(t,nl,o)}};at.activators=[{eventName:\"onPointerDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return!n.isPrimary||n.button!==0?!1:(o==null||o({event:n}),!0)}}];var rl={move:{name:\"mousemove\"},end:{name:\"mouseup\"}},br;(function(e){e[e.RightClick=2]=\"RightClick\"})(br||(br={}));var yr=class extends Mt{constructor(t){super(t,rl,Qe(t.event.target))}};yr.activators=[{eventName:\"onMouseDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return n.button===br.RightClick?!1:(o==null||o({event:n}),!0)}}];var xr={cancel:{name:\"touchcancel\"},move:{name:\"touchmove\"},end:{name:\"touchend\"}},xt=class extends Mt{constructor(t){super(t,xr)}static setup(){return window.addEventListener(xr.move.name,t,{capture:!1,passive:!1}),function(){window.removeEventListener(xr.move.name,t)};function t(){}}};xt.activators=[{eventName:\"onTouchStart\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t,{touches:a}=n;return a.length>1?!1:(o==null||o({event:n}),!0)}}];var At;(function(e){e[e.Pointer=0]=\"Pointer\",e[e.DraggableRect=1]=\"DraggableRect\"})(At||(At={}));var Fn;(function(e){e[e.TreeOrder=0]=\"TreeOrder\",e[e.ReversedTreeOrder=1]=\"ReversedTreeOrder\"})(Fn||(Fn={}));function ol(e){let{acceleration:t,activator:n=At.Pointer,canScroll:o,draggingRect:a,enabled:i,interval:l=5,order:u=Fn.TreeOrder,pointerCoordinates:c,scrollableAncestors:f,scrollableAncestorRects:m,delta:d,threshold:g}=e,p=il({delta:d,disabled:!i}),[v,y]=ha(),k=(0,x.useRef)({x:0,y:0}),E=(0,x.useRef)({x:0,y:0}),w=(0,x.useMemo)(()=>{switch(n){case At.Pointer:return c?{top:c.y,bottom:c.y,left:c.x,right:c.x}:null;case At.DraggableRect:return a}},[n,a,c]),F=(0,x.useRef)(null),_=(0,x.useCallback)(()=>{let H=F.current;if(!H)return;let h=k.current.x*E.current.x,C=k.current.y*E.current.y;H.scrollBy(h,C)},[]),z=(0,x.useMemo)(()=>u===Fn.TreeOrder?[...f].reverse():f,[u,f]);(0,x.useEffect)(()=>{if(!i||!f.length||!w){y();return}for(let H of z){if((o==null?void 0:o(H))===!1)continue;let h=f.indexOf(H),C=m[h];if(!C)continue;let{direction:L,speed:M}=Ys(H,C,w,t,g);for(let D of[\"x\",\"y\"])p[D][L[D]]||(M[D]=0,L[D]=0);if(M.x>0||M.y>0){y(),F.current=H,v(_,l),k.current=M,E.current=L;return}}k.current={x:0,y:0},E.current={x:0,y:0},y()},[t,_,o,y,i,l,JSON.stringify(w),JSON.stringify(p),v,f,z,m,JSON.stringify(g)])}var al={x:{[ae.Backward]:!1,[ae.Forward]:!1},y:{[ae.Backward]:!1,[ae.Forward]:!1}};function il(e){let{delta:t,disabled:n}=e,o=On(t);return mt(a=>{if(n||!o||!a)return al;let i={x:Math.sign(t.x-o.x),y:Math.sign(t.y-o.y)};return{x:{[ae.Backward]:a.x[ae.Backward]||i.x===-1,[ae.Forward]:a.x[ae.Forward]||i.x===1},y:{[ae.Backward]:a.y[ae.Backward]||i.y===-1,[ae.Forward]:a.y[ae.Forward]||i.y===1}}},[n,t,o])}function sl(e,t){let n=t!=null?e.get(t):void 0,o=n?n.node.current:null;return mt(a=>{var i;return t==null?null:(i=o!=null?o:a)!=null?i:null},[o,t])}function ll(e,t){return(0,x.useMemo)(()=>e.reduce((n,o)=>{let{sensor:a}=o,i=a.activators.map(l=>({eventName:l.eventName,handler:t(l.handler,o)}));return[...n,...i]},[]),[e,t])}var Pt;(function(e){e[e.Always=0]=\"Always\",e[e.BeforeDragging=1]=\"BeforeDragging\",e[e.WhileDragging=2]=\"WhileDragging\"})(Pt||(Pt={}));var vr;(function(e){e.Optimized=\"optimized\"})(vr||(vr={}));var Ea=new Map;function dl(e,t){let{dragging:n,dependencies:o,config:a}=t,[i,l]=(0,x.useState)(null),{frequency:u,measure:c,strategy:f}=a,m=(0,x.useRef)(e),d=k(),g=pt(d),p=(0,x.useCallback)(function(E){E===void 0&&(E=[]),!g.current&&l(w=>w===null?E:w.concat(E.filter(F=>!w.includes(F))))},[g]),v=(0,x.useRef)(null),y=mt(E=>{if(d&&!n)return Ea;if(!E||E===Ea||m.current!==e||i!=null){let w=new Map;for(let F of e){if(!F)continue;if(i&&i.length>0&&!i.includes(F.id)&&F.rect.current){w.set(F.id,F.rect.current);continue}let _=F.node.current,z=_?new _t(c(_),_):null;F.rect.current=z,z&&w.set(F.id,z)}return w}return E},[e,i,n,d,c]);return(0,x.useEffect)(()=>{m.current=e},[e]),(0,x.useEffect)(()=>{d||p()},[n,d]),(0,x.useEffect)(()=>{i&&i.length>0&&l(null)},[JSON.stringify(i)]),(0,x.useEffect)(()=>{d||typeof u!=\"number\"||v.current!==null||(v.current=setTimeout(()=>{p(),v.current=null},u))},[u,d,p,...o]),{droppableRects:y,measureDroppableContainers:p,measuringScheduled:i!=null};function k(){switch(f){case Pt.Always:return!1;case Pt.BeforeDragging:return n;default:return!n}}}function Va(e,t){return mt(n=>e?n||(typeof t==\"function\"?t(e):e):null,[t,e])}function ul(e,t){return Va(e,t)}function cl(e){let{callback:t,disabled:n}=e,o=Sn(t),a=(0,x.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.MutationObserver>\"u\")return;let{MutationObserver:i}=window;return new i(o)},[o,n]);return(0,x.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function Nn(e){let{callback:t,disabled:n}=e,o=Sn(t),a=(0,x.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.ResizeObserver>\"u\")return;let{ResizeObserver:i}=window;return new i(o)},[n]);return(0,x.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function fl(e){return new _t(it(e),e)}function Fa(e,t,n){t===void 0&&(t=fl);let[o,a]=(0,x.useState)(null);function i(){a(c=>{if(!e)return null;if(e.isConnected===!1){var f;return(f=c!=null?c:n)!=null?f:null}let m=t(e);return JSON.stringify(c)===JSON.stringify(m)?c:m})}let l=cl({callback(c){if(e)for(let f of c){let{type:m,target:d}=f;if(m===\"childList\"&&d instanceof HTMLElement&&d.contains(e)){i();break}}}}),u=Nn({callback:i});return ye(()=>{i(),e?(u==null||u.observe(e),l==null||l.observe(document.body,{childList:!0,subtree:!0})):(u==null||u.disconnect(),l==null||l.disconnect())},[e]),o}function pl(e){let t=Va(e);return Pa(e,t)}var Ia=[];function ml(e){let t=(0,x.useRef)(e),n=mt(o=>e?o&&o!==Ia&&e&&t.current&&e.parentNode===t.current.parentNode?o:In(e):Ia,[e]);return(0,x.useEffect)(()=>{t.current=e},[e]),n}function gl(e){let[t,n]=(0,x.useState)(null),o=(0,x.useRef)(e),a=(0,x.useCallback)(i=>{let l=mr(i.target);l&&n(u=>u?(u.set(l,hr(l)),new Map(u)):null)},[]);return(0,x.useEffect)(()=>{let i=o.current;if(e!==i){l(i);let u=e.map(c=>{let f=mr(c);return f?(f.addEventListener(\"scroll\",a,{passive:!0}),[f,hr(f)]):null}).filter(c=>c!=null);n(u.length?new Map(u):null),o.current=e}return()=>{l(e),l(i)};function l(u){u.forEach(c=>{let f=mr(c);f==null||f.removeEventListener(\"scroll\",a)})}},[a,e]),(0,x.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((i,l)=>et(i,l),Te):Ha(e):Te,[e,t])}function Na(e,t){t===void 0&&(t=[]);let n=(0,x.useRef)(null);return(0,x.useEffect)(()=>{n.current=null},t),(0,x.useEffect)(()=>{let o=e!==Te;o&&!n.current&&(n.current=e),!o&&n.current&&(n.current=null)},[e]),n.current?gt(e,n.current):Te}function xl(e){(0,x.useEffect)(()=>{if(!Ft)return;let t=e.map(n=>{let{sensor:o}=n;return o.setup==null?void 0:o.setup()});return()=>{for(let n of t)n==null||n()}},e.map(t=>{let{sensor:n}=t;return n}))}function hl(e,t){return(0,x.useMemo)(()=>e.reduce((n,o)=>{let{eventName:a,handler:i}=o;return n[a]=l=>{i(l,t)},n},{}),[e,t])}function Ua(e){return(0,x.useMemo)(()=>e?Vs(e):null,[e])}var Da=[];function bl(e,t){t===void 0&&(t=it);let[n]=e,o=Ua(n?pe(n):null),[a,i]=(0,x.useState)(Da);function l(){i(()=>e.length?e.map(c=>za(c)?o:new _t(t(c),c)):Da)}let u=Nn({callback:l});return ye(()=>{u==null||u.disconnect(),l(),e.forEach(c=>u==null?void 0:u.observe(c))},[e]),a}function yl(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return ft(t)?t:e}function vl(e){let{measure:t}=e,[n,o]=(0,x.useState)(null),a=(0,x.useCallback)(f=>{for(let{target:m}of f)if(ft(m)){o(d=>{let g=t(m);return d?B(S({},d),{width:g.width,height:g.height}):g});break}},[t]),i=Nn({callback:a}),l=(0,x.useCallback)(f=>{let m=yl(f);i==null||i.disconnect(),m&&(i==null||i.observe(m)),o(m?t(m):null)},[t,i]),[u,c]=It(l);return(0,x.useMemo)(()=>({nodeRef:u,rect:n,setRef:c}),[n,u,c])}var wl=[{sensor:at,options:{}},{sensor:En,options:{}}],Cl={current:{}},kn={draggable:{measure:Sa},droppable:{measure:Sa,strategy:Pt.WhileDragging,frequency:vr.Optimized},dragOverlay:{measure:it}},ot=class extends Map{get(t){var n;return t!=null&&(n=super.get(t))!=null?n:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(t=>{let{disabled:n}=t;return!n})}getNodeFor(t){var n,o;return(n=(o=this.get(t))==null?void 0:o.node.current)!=null?n:void 0}},Sl={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new ot,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Tn},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:kn,measureDroppableContainers:Tn,windowRect:null,measuringScheduled:!1},Ol={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:\"\"},dispatch:Tn,draggableNodes:new Map,over:null,measureDroppableContainers:Tn},Dn=(0,x.createContext)(Ol),Wa=(0,x.createContext)(Sl);function kl(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new ot}}}function Tl(e,t){switch(t.type){case te.DragStart:return B(S({},e),{draggable:B(S({},e.draggable),{initialCoordinates:t.initialCoordinates,active:t.active})});case te.DragMove:return e.draggable.active==null?e:B(S({},e),{draggable:B(S({},e.draggable),{translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}})});case te.DragEnd:case te.DragCancel:return B(S({},e),{draggable:B(S({},e.draggable),{active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}})});case te.RegisterDroppable:{let{element:n}=t,{id:o}=n,a=new ot(e.droppable.containers);return a.set(o,n),B(S({},e),{droppable:B(S({},e.droppable),{containers:a})})}case te.SetDroppableDisabled:{let{id:n,key:o,disabled:a}=t,i=e.droppable.containers.get(n);if(!i||o!==i.key)return e;let l=new ot(e.droppable.containers);return l.set(n,B(S({},i),{disabled:a})),B(S({},e),{droppable:B(S({},e.droppable),{containers:l})})}case te.UnregisterDroppable:{let{id:n,key:o}=t,a=e.droppable.containers.get(n);if(!a||o!==a.key)return e;let i=new ot(e.droppable.containers);return i.delete(n),B(S({},e),{droppable:B(S({},e.droppable),{containers:i})})}default:return e}}function El(e){let{disabled:t}=e,{active:n,activatorEvent:o,draggableNodes:a}=(0,x.useContext)(Dn),i=On(o),l=On(n==null?void 0:n.id);return(0,x.useEffect)(()=>{if(!t&&!o&&i&&l!=null){if(!Nt(i)||document.activeElement===i.target)return;let u=a.get(l);if(!u)return;let{activatorNode:c,node:f}=u;if(!c.current&&!f.current)return;requestAnimationFrame(()=>{for(let m of[c.current,f.current]){if(!m)continue;let d=ya(m);if(d){d.focus();break}}})}},[o,t,a,l,i]),null}function Fl(e,t){let a=t,{transform:n}=a,o=Gn(a,[\"transform\"]);return e!=null&&e.length?e.reduce((i,l)=>l(S({transform:i},o)),n):n}function Il(e){return(0,x.useMemo)(()=>({draggable:S(S({},kn.draggable),e==null?void 0:e.draggable),droppable:S(S({},kn.droppable),e==null?void 0:e.droppable),dragOverlay:S(S({},kn.dragOverlay),e==null?void 0:e.dragOverlay)}),[e==null?void 0:e.draggable,e==null?void 0:e.droppable,e==null?void 0:e.dragOverlay])}function Nl(e){let{activeNode:t,measure:n,initialRect:o,config:a=!0}=e,i=(0,x.useRef)(!1),{x:l,y:u}=typeof a==\"boolean\"?{x:a,y:a}:a;ye(()=>{if(!l&&!u||!t){i.current=!1;return}if(i.current||!o)return;let f=t==null?void 0:t.node.current;if(!f||f.isConnected===!1)return;let m=n(f),d=Pa(m,o);if(l||(d.x=0),u||(d.y=0),i.current=!0,Math.abs(d.x)>0||Math.abs(d.y)>0){let g=La(f);g&&g.scrollBy({top:d.y,left:d.x})}},[t,l,u,o,n])}var Ga=(0,x.createContext)(B(S({},Te),{scaleX:1,scaleY:1})),Ue;(function(e){e[e.Uninitialized=0]=\"Uninitialized\",e[e.Initializing=1]=\"Initializing\",e[e.Initialized=2]=\"Initialized\"})(Ue||(Ue={}));var Cr=(0,x.memo)(function(t){var n,o,a,i;let O=t,{id:l,accessibility:u,autoScroll:c=!0,children:f,sensors:m=wl,collisionDetection:d=Ls,measuring:g,modifiers:p}=O,v=Gn(O,[\"id\",\"accessibility\",\"autoScroll\",\"children\",\"sensors\",\"collisionDetection\",\"measuring\",\"modifiers\"]),y=(0,x.useReducer)(Tl,void 0,kl),[k,E]=y,[w,F]=Ns(),[_,z]=(0,x.useState)(Ue.Uninitialized),H=_===Ue.Initialized,{draggable:{active:h,nodes:C,translate:L},droppable:{containers:M}}=k,D=h!=null?C.get(h):null,j=(0,x.useRef)({initial:null,translated:null}),ne=(0,x.useMemo)(()=>{var N;return h!=null?{id:h,data:(N=D==null?void 0:D.data)!=null?N:Cl,rect:j}:null},[h,D]),ie=(0,x.useRef)(null),[we,Ce]=(0,x.useState)(null),[J,Ee]=(0,x.useState)(null),ue=pt(v,Object.values(v)),T=Re(\"DndDescribedBy\",l),A=(0,x.useMemo)(()=>M.getEnabled(),[M]),$=Il(g),{droppableRects:U,measureDroppableContainers:me,measuringScheduled:Se}=dl(A,{dragging:H,dependencies:[L.x,L.y],config:$.droppable}),de=sl(C,h),Pe=(0,x.useMemo)(()=>J?Dt(J):null,[J]),Oe=b(),ge=ul(de,$.draggable.measure);Nl({activeNode:h!=null?C.get(h):null,config:Oe.layoutShiftCompensation,initialRect:ge,measure:$.draggable.measure});let q=Fa(de,$.draggable.measure,ge),We=Fa(de?de.parentElement:null),xe=(0,x.useRef)({activatorEvent:null,active:null,activeNode:de,collisionRect:null,collisions:null,droppableRects:U,draggableNodes:C,draggingNode:null,draggingNodeRect:null,droppableContainers:M,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),Le=M.getNodeFor((n=xe.current.over)==null?void 0:n.id),ke=vl({measure:$.dragOverlay.measure}),Be=(o=ke.nodeRef.current)!=null?o:de,_e=H?(a=ke.rect)!=null?a:q:null,Ht=!!(ke.nodeRef.current&&ke.rect),jt=pl(Ht?null:q),yt=Ua(Be?pe(Be):null),Fe=ml(H?Le!=null?Le:de:null),lt=bl(Fe),dt=Fl(p,{transform:{x:L.x-jt.x,y:L.y-jt.y,scaleX:1,scaleY:1},activatorEvent:J,active:ne,activeNodeRect:q,containerNodeRect:We,draggingNodeRect:_e,over:xe.current.over,overlayNodeRect:ke.rect,scrollableAncestors:Fe,scrollableAncestorRects:lt,windowRect:yt}),Vt=Pe?et(Pe,L):null,Ut=gl(Fe),Bn=Na(Ut),$n=Na(Ut,[q]),$e=et(dt,Bn),ze=_e?zs(_e,dt):null,Ge=ne&&ze?d({active:ne,collisionRect:ze,droppableRects:U,droppableContainers:A,pointerCoordinates:Vt}):null,Wt=Ma(Ge,\"id\"),[Ie,Gt]=(0,x.useState)(null),zn=Ht?dt:et(dt,$n),qn=Bs(zn,(i=Ie==null?void 0:Ie.rect)!=null?i:null,q),vt=(0,x.useRef)(null),Yt=(0,x.useCallback)((N,P)=>{let{sensor:V,options:fe}=P;if(ie.current==null)return;let G=C.get(ie.current);if(!G)return;let se=N.nativeEvent,Ne=new V({active:ie.current,activeNode:G,event:se,options:fe,context:xe,onAbort(le){if(!C.get(le))return;let{onDragAbort:De}=ue.current,Me={id:le};De==null||De(Me),w({type:\"onDragAbort\",event:Me})},onPending(le,qe,De,Me){if(!C.get(le))return;let{onDragPending:Ct}=ue.current,He={id:le,constraint:qe,initialCoordinates:De,offset:Me};Ct==null||Ct(He),w({type:\"onDragPending\",event:He})},onStart(le){let qe=ie.current;if(qe==null)return;let De=C.get(qe);if(!De)return;let{onDragStart:Me}=ue.current,wt={activatorEvent:se,active:{id:qe,data:De.data,rect:j}};(0,nt.unstable_batchedUpdates)(()=>{Me==null||Me(wt),z(Ue.Initializing),E({type:te.DragStart,initialCoordinates:le,active:qe}),w({type:\"onDragStart\",event:wt}),Ce(vt.current),Ee(se)})},onMove(le){E({type:te.DragMove,coordinates:le})},onEnd:ut(te.DragEnd),onCancel:ut(te.DragCancel)});vt.current=Ne;function ut(le){return async function(){let{active:De,collisions:Me,over:wt,scrollAdjustedTranslate:Ct}=xe.current,He=null;if(De&&Ct){let{cancelDrop:St}=ue.current;He={activatorEvent:se,active:De,collisions:Me,delta:Ct,over:wt},le===te.DragEnd&&typeof St==\"function\"&&await Promise.resolve(St(He))&&(le=te.DragCancel)}ie.current=null,(0,nt.unstable_batchedUpdates)(()=>{E({type:le}),z(Ue.Uninitialized),Gt(null),Ce(null),Ee(null),vt.current=null;let St=le===te.DragEnd?\"onDragEnd\":\"onDragCancel\";if(He){let Un=ue.current[St];Un==null||Un(He),w({type:St,event:He})}})}}},[C]),Hn=(0,x.useCallback)((N,P)=>(V,fe)=>{let G=V.nativeEvent,se=C.get(fe);if(ie.current!==null||!se||G.dndKit||G.defaultPrevented)return;let Ne={active:se};N(V,P.options,Ne)===!0&&(G.dndKit={capturedBy:P.sensor},ie.current=fe,Yt(V,P))},[C,Yt]),ce=ll(m,Hn);xl(m),ye(()=>{q&&_===Ue.Initializing&&z(Ue.Initialized)},[q,_]),(0,x.useEffect)(()=>{let{onDragMove:N}=ue.current,{active:P,activatorEvent:V,collisions:fe,over:G}=xe.current;if(!P||!V)return;let se={active:P,activatorEvent:V,collisions:fe,delta:{x:$e.x,y:$e.y},over:G};(0,nt.unstable_batchedUpdates)(()=>{N==null||N(se),w({type:\"onDragMove\",event:se})})},[$e.x,$e.y]),(0,x.useEffect)(()=>{let{active:N,activatorEvent:P,collisions:V,droppableContainers:fe,scrollAdjustedTranslate:G}=xe.current;if(!N||ie.current==null||!P||!G)return;let{onDragOver:se}=ue.current,Ne=fe.get(Wt),ut=Ne&&Ne.rect.current?{id:Ne.id,rect:Ne.rect.current,data:Ne.data,disabled:Ne.disabled}:null,le={active:N,activatorEvent:P,collisions:V,delta:{x:G.x,y:G.y},over:ut};(0,nt.unstable_batchedUpdates)(()=>{Gt(ut),se==null||se(le),w({type:\"onDragOver\",event:le})})},[Wt]),ye(()=>{xe.current={activatorEvent:J,active:ne,activeNode:de,collisionRect:ze,collisions:Ge,droppableRects:U,draggableNodes:C,draggingNode:Be,draggingNodeRect:_e,droppableContainers:M,over:Ie,scrollableAncestors:Fe,scrollAdjustedTranslate:$e},j.current={initial:_e,translated:ze}},[ne,de,Ge,ze,C,Be,_e,U,M,Ie,Fe,$e]),ol(B(S({},Oe),{delta:L,draggingRect:ze,pointerCoordinates:Vt,scrollableAncestors:Fe,scrollableAncestorRects:lt}));let jn=(0,x.useMemo)(()=>({active:ne,activeNode:de,activeNodeRect:q,activatorEvent:J,collisions:Ge,containerNodeRect:We,dragOverlay:ke,draggableNodes:C,droppableContainers:M,droppableRects:U,over:Ie,measureDroppableContainers:me,scrollableAncestors:Fe,scrollableAncestorRects:lt,measuringConfiguration:$,measuringScheduled:Se,windowRect:yt}),[ne,de,q,J,Ge,We,ke,C,M,U,Ie,me,Fe,lt,$,Se,yt]),Vn=(0,x.useMemo)(()=>({activatorEvent:J,activators:ce,active:ne,activeNodeRect:q,ariaDescribedById:{draggable:T},dispatch:E,draggableNodes:C,over:Ie,measureDroppableContainers:me}),[J,ce,ne,q,E,T,C,Ie,me]);return x.default.createElement(_a.Provider,{value:F},x.default.createElement(Dn.Provider,{value:Vn},x.default.createElement(Wa.Provider,{value:jn},x.default.createElement(Ga.Provider,{value:qn},f)),x.default.createElement(El,{disabled:(u==null?void 0:u.restoreFocus)===!1})),x.default.createElement(_s,B(S({},u),{hiddenTextDescribedById:T})));function b(){let N=(we==null?void 0:we.autoScrollEnabled)===!1,P=typeof c==\"object\"?c.enabled===!1:c===!1,V=H&&!N&&!P;return typeof c==\"object\"?B(S({},c),{enabled:V}):{enabled:V}}}),Dl=(0,x.createContext)(null),Aa=\"button\",Al=\"Draggable\";function Ya(e){let{id:t,data:n,disabled:o=!1,attributes:a}=e,i=Re(Al),{activators:l,activatorEvent:u,active:c,activeNodeRect:f,ariaDescribedById:m,draggableNodes:d,over:g}=(0,x.useContext)(Dn),{role:p=Aa,roleDescription:v=\"draggable\",tabIndex:y=0}=a!=null?a:{},k=(c==null?void 0:c.id)===t,E=(0,x.useContext)(k?Ga:Dl),[w,F]=It(),[_,z]=It(),H=hl(l,t),h=pt(n);ye(()=>(d.set(t,{id:t,key:i,node:w,activatorNode:_,data:h}),()=>{let L=d.get(t);L&&L.key===i&&d.delete(t)}),[d,t]);let C=(0,x.useMemo)(()=>({role:p,tabIndex:y,\"aria-disabled\":o,\"aria-pressed\":k&&p===Aa?!0:void 0,\"aria-roledescription\":v,\"aria-describedby\":m.draggable}),[o,p,y,k,v,m.draggable]);return{active:c,activatorEvent:u,activeNodeRect:f,attributes:C,isDragging:k,listeners:o?void 0:H,node:w,over:g,setNodeRef:F,setActivatorNodeRef:z,transform:E}}function Ka(){return(0,x.useContext)(Wa)}var _l=\"Droppable\",Ml={timeout:25};function Xa(e){let{data:t,disabled:n=!1,id:o,resizeObserverConfig:a}=e,i=Re(_l),{active:l,dispatch:u,over:c,measureDroppableContainers:f}=(0,x.useContext)(Dn),m=(0,x.useRef)({disabled:n}),d=(0,x.useRef)(!1),g=(0,x.useRef)(null),p=(0,x.useRef)(null),{disabled:v,updateMeasurementsFor:y,timeout:k}=S(S({},Ml),a),E=pt(y!=null?y:o),w=(0,x.useCallback)(()=>{if(!d.current){d.current=!0;return}p.current!=null&&clearTimeout(p.current),p.current=setTimeout(()=>{f(Array.isArray(E.current)?E.current:[E.current]),p.current=null},k)},[k]),F=Nn({callback:w,disabled:v||!l}),_=(0,x.useCallback)((C,L)=>{F&&(L&&(F.unobserve(L),d.current=!1),C&&F.observe(C))},[F]),[z,H]=It(_),h=pt(t);return(0,x.useEffect)(()=>{!F||!z.current||(F.disconnect(),d.current=!1,F.observe(z.current))},[z,F]),(0,x.useEffect)(()=>(u({type:te.RegisterDroppable,element:{id:o,key:i,disabled:n,node:z,rect:g,data:h}}),()=>u({type:te.UnregisterDroppable,key:i,id:o})),[o]),(0,x.useEffect)(()=>{n!==m.current.disabled&&(u({type:te.SetDroppableDisabled,id:o,key:i,disabled:n}),m.current.disabled=n)},[o,i,n,u]),{active:l,rect:g,isOver:(c==null?void 0:c.id)===o,node:z,over:c,setNodeRef:H}}var Sr=e=>{let{transform:t}=e;return B(S({},t),{x:0})};var ee=Y(Q());function Bt(e,t,n){let o=e.slice();return o.splice(n<0?o.length+n:n,0,o.splice(t,1)[0]),o}function Pl(e,t){return e.reduce((n,o,a)=>{let i=t.get(o);return i&&(n[a]=i),n},Array(e.length))}function An(e){return e!==null&&e>=0}function Ll(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n{let{rects:t,activeIndex:n,overIndex:o,index:a}=e,i=Bt(t,o,n),l=t[a],u=i[a];return!u||!l?null:{x:u.left-l.left,y:u.top-l.top,scaleX:u.width/l.width,scaleY:u.height/l.height}};var _n={scaleX:1,scaleY:1},Or=e=>{var t;let{activeIndex:n,activeNodeRect:o,index:a,rects:i,overIndex:l}=e,u=(t=i[n])!=null?t:o;if(!u)return null;if(a===n){let f=i[l];return f?S({x:0,y:nn&&a<=l?S({x:0,y:-u.height-c},_n):a=l?S({x:0,y:u.height+c},_n):S({x:0,y:0},_n)};function $l(e,t,n){let o=e[t],a=e[t-1],i=e[t+1];return o?no.map(H=>typeof H==\"object\"&&\"id\"in H?H.id:H),[o]),v=l!=null,y=l?p.indexOf(l.id):-1,k=f?p.indexOf(f.id):-1,E=(0,ee.useRef)(p),w=!Ll(p,E.current),F=k!==-1&&y===-1||w,_=Bl(i);ye(()=>{w&&v&&m(p)},[w,p,v,m]),(0,ee.useEffect)(()=>{E.current=p},[p]);let z=(0,ee.useMemo)(()=>({activeIndex:y,containerId:d,disabled:_,disableTransforms:F,items:p,overIndex:k,useDragOverlay:g,sortedRects:Pl(p,c),strategy:a}),[y,d,_.draggable,_.droppable,F,p,k,c,g,a]);return ee.default.createElement(Qa.Provider,{value:z},t)}var zl=e=>{let{id:t,items:n,activeIndex:o,overIndex:a}=e;return Bt(n,o,a).indexOf(t)},ql=e=>{let{containerId:t,isSorting:n,wasDragging:o,index:a,items:i,newIndex:l,previousItems:u,previousContainerId:c,transition:f}=e;return!f||!o||u!==i&&a===l?!1:n?!0:l!==a&&t===c},Hl={duration:200,easing:\"ease\"},Ra=\"transform\",jl=Ve.Transition.toString({property:Ra,duration:0,easing:\"linear\"}),Vl={roleDescription:\"sortable\"};function Ul(e){let{disabled:t,index:n,node:o,rect:a}=e,[i,l]=(0,ee.useState)(null),u=(0,ee.useRef)(n);return ye(()=>{if(!t&&n!==u.current&&o.current){let c=a.current;if(c){let f=it(o.current,{ignoreTransform:!0}),m={x:c.left-f.left,y:c.top-f.top,scaleX:c.width/f.width,scaleY:c.height/f.height};(m.x||m.y)&&l(m)}}n!==u.current&&(u.current=n)},[t,n,o,a]),(0,ee.useEffect)(()=>{i&&l(null)},[i]),i}function Tr(e){let{animateLayoutChanges:t=ql,attributes:n,disabled:o,data:a,getNewIndex:i=zl,id:l,strategy:u,resizeObserverConfig:c,transition:f=Hl}=e,{items:m,containerId:d,activeIndex:g,disabled:p,disableTransforms:v,sortedRects:y,overIndex:k,useDragOverlay:E,strategy:w}=(0,ee.useContext)(Qa),F=Wl(o,p),_=m.indexOf(l),z=(0,ee.useMemo)(()=>S({sortable:{containerId:d,index:_,items:m}},a),[d,a,_,m]),H=(0,ee.useMemo)(()=>m.slice(m.indexOf(l)),[m,l]),{rect:h,node:C,isOver:L,setNodeRef:M}=Xa({id:l,data:z,disabled:F.droppable,resizeObserverConfig:S({updateMeasurementsFor:H},c)}),{active:D,activatorEvent:j,activeNodeRect:ne,attributes:ie,setNodeRef:we,listeners:Ce,isDragging:J,over:Ee,setActivatorNodeRef:ue,transform:T}=Ya({id:l,data:z,attributes:S(S({},Vl),n),disabled:F.draggable}),A=xa(M,we),$=!!D,U=$&&!v&&An(g)&&An(k),me=!E&&J,Se=me&&U?T:null,de=u!=null?u:w,Pe=U?Se!=null?Se:de({rects:y,activeNodeRect:ne,activeIndex:g,overIndex:k,index:_}):null,Oe=An(g)&&An(k)?i({id:l,items:m,activeIndex:g,overIndex:k}):_,ge=D==null?void 0:D.id,q=(0,ee.useRef)({activeId:ge,items:m,newIndex:Oe,containerId:d}),We=m!==q.current.items,xe=t({active:D,containerId:d,isDragging:J,isSorting:$,id:l,index:_,items:m,newIndex:q.current.newIndex,previousItems:q.current.items,previousContainerId:q.current.containerId,transition:f,wasDragging:q.current.activeId!=null}),Le=Ul({disabled:!xe,index:_,node:C,rect:h});return(0,ee.useEffect)(()=>{$&&q.current.newIndex!==Oe&&(q.current.newIndex=Oe),d!==q.current.containerId&&(q.current.containerId=d),m!==q.current.items&&(q.current.items=m)},[$,Oe,d,m]),(0,ee.useEffect)(()=>{if(ge===q.current.activeId)return;if(ge!=null&&q.current.activeId==null){q.current.activeId=ge;return}let Be=setTimeout(()=>{q.current.activeId=ge},50);return()=>clearTimeout(Be)},[ge]),{active:D,activeIndex:g,attributes:ie,data:z,rect:h,index:_,newIndex:Oe,items:m,isOver:L,isSorting:$,isDragging:J,listeners:Ce,node:C,overIndex:k,over:Ee,setNodeRef:A,setActivatorNodeRef:ue,setDroppableNodeRef:M,setDraggableNodeRef:we,transform:Le!=null?Le:Pe,transition:ke()};function ke(){if(Le||We&&q.current.newIndex===_)return jl;if(!(me&&!Nt(j)||!f)&&($||xe))return Ve.Transition.toString(B(S({},f),{property:Ra}))}}function Wl(e,t){var n,o;return typeof e==\"boolean\"?{draggable:e,droppable:!1}:{draggable:(n=e==null?void 0:e.draggable)!=null?n:t.draggable,droppable:(o=e==null?void 0:e.droppable)!=null?o:t.droppable}}var Lf=[W.Down,W.Right,W.Up,W.Left];if(typeof window<\"u\"){let e=document.createElement(\"style\");e.textContent=\".container {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n flex: 1;\\n width: 100%;\\n padding: 16px;\\n box-sizing: border-box;\\n background: #F2F2F7;\\n}\\n.qrcode-card {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n max-width: 360px;\\n margin: 0 auto;\\n padding: 24px 20px;\\n}\\n.qrcode-wrapper {\\n position: relative;\\n cursor: pointer;\\n margin-bottom: 24px;\\n display: flex;\\n justify-content: center;\\n}\\n.qrcode-wrapper:hover .qrcode-glow {\\n opacity: 0.4;\\n}\\n.qrcode-glow {\\n position: absolute;\\n inset: -4px;\\n background: linear-gradient(135deg, #60a5fa 0%, #a78bfa 100%);\\n border-radius: 24px;\\n filter: blur(12px);\\n opacity: 0.2;\\n transition: opacity 0.3s ease;\\n z-index: 0;\\n}\\n.qrcode-container {\\n position: relative;\\n background: #fff;\\n padding: 16px;\\n border-radius: 20px;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n z-index: 1;\\n}\\n.qrcode-image {\\n width: 160px;\\n height: 160px;\\n border-radius: 12px;\\n object-fit: cover;\\n transition: opacity 0.3s ease;\\n}\\n.qrcode-image--loading {\\n opacity: 0.3;\\n}\\n.qrcode-overlay {\\n position: absolute;\\n inset: 0;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(4px);\\n border-radius: 20px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 12px;\\n z-index: 10;\\n}\\n.qrcode-overlay span {\\n font-size: 12px;\\n font-weight: 500;\\n color: #8E8E93;\\n letter-spacing: 0.5px;\\n}\\n.qrcode-spinner {\\n width: 32px;\\n height: 32px;\\n border: 2px solid rgba(59, 130, 246, 0.2);\\n border-top-color: #3b82f6;\\n border-radius: 50%;\\n animation: spin 0.8s linear infinite;\\n}\\n@keyframes spin {\\n to {\\n transform: rotate(360deg);\\n }\\n}\\n.qrcode-status {\\n position: absolute;\\n bottom: -14px;\\n left: 50%;\\n transform: translateX(-50%);\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 4px 12px;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(8px);\\n border-radius: 12px;\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);\\n z-index: 20;\\n white-space: nowrap;\\n}\\n.status-dot {\\n width: 6px;\\n height: 6px;\\n border-radius: 50%;\\n flex-shrink: 0;\\n transition: background-color 0.3s ease;\\n}\\n.status-dot--pulse {\\n animation: pulse 1.5s ease-in-out infinite;\\n}\\n@keyframes pulse {\\n 0%,\\n 100% {\\n opacity: 1;\\n }\\n 50% {\\n opacity: 0.5;\\n }\\n}\\n.status-text {\\n font-size: 10px;\\n font-weight: 600;\\n color: #8E8E93;\\n text-transform: uppercase;\\n letter-spacing: 0.5px;\\n white-space: nowrap;\\n}\\n.cookie-result-wrapper {\\n width: 100%;\\n margin-bottom: 20px;\\n}\\n.cookie-result {\\n width: 100%;\\n height: 120px;\\n padding: 14px;\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 16px;\\n font-size: 12px;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n color: #1C1C1E;\\n resize: none;\\n outline: none;\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04);\\n transition: background-color 0.2s ease, box-shadow 0.2s ease;\\n box-sizing: border-box;\\n}\\n.cookie-result::placeholder {\\n color: #8E8E93;\\n}\\n.cookie-result:focus {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04), 0 0 0 2px rgba(59, 130, 246, 0.2);\\n}\\n.action-buttons {\\n display: grid;\\n grid-template-columns: 1fr 1fr;\\n gap: 12px;\\n width: 100%;\\n}\\n.action-btn {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n padding: 14px 20px;\\n border-radius: 16px;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n border: none;\\n outline: none;\\n}\\n.action-btn:active {\\n transform: scale(0.98);\\n}\\n.action-btn--primary {\\n background: #1C1C1E;\\n color: #fff;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\\n}\\n.action-btn--primary:hover {\\n background: #2C2C2E;\\n}\\n.action-btn--secondary {\\n background: #fff;\\n color: #1C1C1E;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\\n}\\n.action-btn--secondary:hover {\\n background: #F9F9F9;\\n}\\n.btn-icon {\\n display: block;\\n flex-shrink: 0;\\n width: 16px;\\n height: 16px;\\n opacity: 0.7;\\n}\\n.btn-icon--login {\\n transform: translateY(1px);\\n}\\n.dynamic-delete-button {\\n position: relative;\\n top: 2px;\\n margin: 0 8px;\\n color: #555;\\n font-size: 18px;\\n cursor: pointer;\\n transition: all 0.3s;\\n}\\n.dynamic-delete-button:hover {\\n color: #777;\\n}\\n.dynamic-delete-button[disabled] {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n.domain-edit-modal {\\n --domain-action-size: 32px;\\n --domain-action-gap: 8px;\\n --domain-action-total: calc(var(--domain-action-size) + var(--domain-action-gap));\\n --domain-row-gap: 12px;\\n --domain-label-width: 72px;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label {\\n flex: 0 0 var(--domain-label-width) !important;\\n max-width: var(--domain-label-width) !important;\\n padding-left: 8px;\\n padding-right: 12px;\\n padding-bottom: 0 !important;\\n display: flex !important;\\n align-items: center !important;\\n height: 32px !important;\\n text-align: right;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label > label {\\n height: 32px !important;\\n line-height: 32px !important;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-control {\\n flex: 1 1 auto !important;\\n max-width: calc(100% - var(--domain-label-width)) !important;\\n min-width: 0;\\n}\\n.domain-edit-modal .domain-edit-aligned-input {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .domain-edit-full-input {\\n width: 100%;\\n}\\n.domain-edit-modal .domain-edit-add-button {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .ant-form-item {\\n margin-bottom: var(--domain-row-gap);\\n}\\n.domain-edit-modal .ant-form-item:last-child {\\n margin-bottom: 0;\\n}\\n.domain-list-row {\\n display: flex;\\n align-items: center;\\n gap: var(--domain-action-gap, 8px);\\n width: 100%;\\n}\\n.domain-list-input {\\n flex: 1;\\n min-width: 0;\\n}\\n.domain-list-action {\\n width: var(--domain-action-size, 32px);\\n flex: 0 0 var(--domain-action-size, 32px);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.domain-list-action--placeholder {\\n visibility: hidden;\\n}\\n.domain-list-row .dynamic-delete-button {\\n margin: 0;\\n}\\n.sites-table .ant-table-tbody > tr > td {\\n padding: 8px 16px;\\n}\\n.sites-table .ant-table-thead > tr > th {\\n white-space: nowrap;\\n}\\n.sites-list-toolbar {\\n display: flex;\\n justify-content: flex-end;\\n margin: -2px 0 12px;\\n}\\n.sites-list-toolbar .sites-add-button {\\n min-width: 78px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.site-add-menu {\\n min-width: 190px;\\n padding: 8px;\\n border-radius: 20px;\\n background: rgba(255, 255, 255, 0.86);\\n backdrop-filter: blur(28px);\\n border: 1px solid rgba(255, 255, 255, 0.45);\\n box-shadow: 0 22px 44px rgba(28, 28, 30, 0.16), 0 1px 0 rgba(255, 255, 255, 0.7) inset;\\n}\\n.site-add-type-item {\\n width: 100%;\\n min-height: 56px;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n padding: 8px 10px;\\n border: 0;\\n border-radius: 14px;\\n background: transparent;\\n color: #1C1C1E;\\n font-size: 15px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.site-add-type-item:hover:not(:disabled) {\\n background: rgba(52, 199, 89, 0.1);\\n}\\n.site-add-type-item:disabled {\\n cursor: not-allowed;\\n opacity: 0.65;\\n}\\n.site-add-type-item__icon {\\n width: 36px;\\n height: 36px;\\n flex: 0 0 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 10px;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.site-add-type-item__icon img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.site-add-type-item__icon svg {\\n font-size: 18px;\\n color: #34C759;\\n}\\n.site-add-type-item__name {\\n flex: 1;\\n min-width: 0;\\n overflow: hidden;\\n text-align: left;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-page {\\n display: flex;\\n flex-direction: column;\\n gap: 24px;\\n}\\n.subscription-section {\\n max-width: 720px;\\n}\\n.subscription-setting-modal .ios-form {\\n max-width: none !important;\\n}\\n.subscription-endpoints {\\n display: flex;\\n flex-direction: column;\\n gap: 10px;\\n}\\n.subscription-endpoint {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n min-height: 64px;\\n padding: 12px 10px 12px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 14px;\\n background: rgba(255, 255, 255, 0.72);\\n}\\n.subscription-endpoint__main {\\n flex: 1;\\n min-width: 0;\\n}\\n.subscription-endpoint__title {\\n display: flex;\\n align-items: center;\\n gap: 8px;\\n margin-bottom: 6px;\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 700;\\n}\\n.subscription-endpoint__url {\\n overflow: hidden;\\n color: #6B7280;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n font-size: 12px;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-endpoint__actions {\\n display: flex;\\n flex: 0 0 auto;\\n gap: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn {\\n width: 34px;\\n height: 34px;\\n border-radius: 12px;\\n color: #1C1C1E;\\n}\\n.subscription-endpoint__actions .ant-btn:hover {\\n background: rgba(0, 0, 0, 0.04) !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus,\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n background: transparent !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n outline: 2px solid rgba(28, 28, 30, 0.22);\\n outline-offset: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn:active {\\n background: rgba(0, 0, 0, 0.06) !important;\\n}\\n.main-card {\\n min-height: auto;\\n max-height: calc(100vh - 100px);\\n width: 100%;\\n max-width: 420px;\\n overflow: auto;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(50px);\\n border-radius: 32px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n border: 1px solid rgba(255, 255, 255, 0.2);\\n animation: fadeInUp 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;\\n}\\n.main-card .ant-card-body {\\n padding: 24px 16px;\\n}\\n.main-card .ant-tabs-nav {\\n margin-bottom: 16px;\\n}\\n.main-card .ant-tabs-nav::before {\\n display: none;\\n}\\n.main-card .ant-tabs-nav-list {\\n display: flex;\\n flex-wrap: wrap;\\n gap: 6px;\\n padding: 6px;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n width: 100%;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab {\\n flex: 1;\\n min-width: 0;\\n margin: 0 !important;\\n padding: 8px 12px !important;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n transition: all 0.3s ease;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-ink-bar {\\n display: none;\\n}\\n.main-card .account-tabs {\\n width: 100%;\\n}\\n.main-card .account-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n margin-bottom: 16px;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.main-card .account-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.main-card .account-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.main-card .account-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.main-card .account-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n flex: 0 0 auto;\\n min-width: 44px;\\n min-height: 34px;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n background: transparent;\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n line-height: 1;\\n white-space: nowrap;\\n cursor: pointer;\\n transition: color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;\\n appearance: none;\\n}\\n.main-card .account-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .account-tabs__tab--active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .account-tabs__panel {\\n width: 100%;\\n}\\n@keyframes fadeInUp {\\n from {\\n opacity: 0;\\n transform: translateY(16px);\\n }\\n to {\\n opacity: 1;\\n transform: translateY(0);\\n }\\n}\\n.app-layout {\\n display: flex;\\n flex-direction: column;\\n min-height: 100vh;\\n width: 100%;\\n background: #F2F2F7;\\n}\\n.top-nav-bar {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n width: 100%;\\n padding: 12px 16px;\\n background: transparent;\\n box-sizing: border-box;\\n}\\n.nav-pill {\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n padding: 4px;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(20px);\\n border-radius: 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n}\\n.nav-tab {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 8px 16px;\\n border-radius: 16px;\\n cursor: pointer;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n border: none;\\n transition: all 0.3s ease;\\n}\\n.nav-tab:hover {\\n color: #1C1C1E;\\n}\\n.nav-tab--active {\\n color: #1C1C1E;\\n background: #fff;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.nav-tab--active:hover {\\n background: #fff;\\n color: #1C1C1E;\\n}\\n.nav-tab .anticon {\\n font-size: 14px;\\n}\\n.nav-divider {\\n width: 1px;\\n height: 20px;\\n background: rgba(0, 0, 0, 0.1);\\n margin: 0 4px;\\n}\\n.nav-actions {\\n display: flex;\\n align-items: center;\\n gap: 2px;\\n}\\n.nav-actions .ant-btn {\\n color: #8E8E93;\\n font-size: 12px;\\n font-weight: 500;\\n padding: 6px 12px;\\n height: auto;\\n border-radius: 12px;\\n}\\n.nav-actions .ant-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.drag-handle {\\n cursor: grab;\\n color: #999;\\n font-size: 18px;\\n padding: 8px;\\n touch-action: none;\\n}\\n.drag-handle:active {\\n cursor: grabbing;\\n}\\n.pansou-config-modal {\\n max-width: 420px;\\n}\\n.pansou-config-modal .ant-modal-body {\\n padding: 16px 24px;\\n}\\n.pansou-config-tabs {\\n margin-bottom: 16px;\\n}\\n.pansou-config-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.pansou-config-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.pansou-config-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.pansou-config-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.pansou-config-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n flex: 0 0 auto;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n outline: none;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.pansou-config-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__tab--active {\\n background: rgba(118, 118, 128, 0.12);\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__badge {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n min-width: 22px;\\n height: 16px;\\n padding: 0 6px;\\n border-radius: 999px;\\n font-size: 11px;\\n line-height: 16px;\\n font-weight: 600;\\n color: #fff;\\n background: #1C1C1E;\\n}\\n.pansou-checkbox-section {\\n min-height: 200px;\\n max-height: 400px;\\n overflow-y: auto;\\n}\\n.pansou-checkbox-header {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-bottom: 12px;\\n padding: 0 4px;\\n color: #8E8E93;\\n font-size: 13px;\\n}\\n.pansou-checkbox-header .ant-btn-link {\\n color: #1C1C1E;\\n font-weight: 500;\\n padding: 4px 8px;\\n height: auto;\\n}\\n.pansou-checkbox-header .ant-btn-link:hover,\\n.pansou-checkbox-header .ant-btn-link:focus,\\n.pansou-checkbox-header .ant-btn-link:active {\\n color: #3C3C3E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.pansou-add-channel {\\n display: flex;\\n gap: 8px;\\n margin-bottom: 12px;\\n}\\n.pansou-checkbox-grid {\\n display: grid;\\n grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));\\n gap: 8px;\\n}\\n.pansou-checkbox-card {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding: 10px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 10px;\\n cursor: pointer;\\n transition: all 0.2s;\\n background: #fff;\\n}\\n.pansou-checkbox-card:hover {\\n border-color: rgba(0, 0, 0, 0.12);\\n background: #F9F9F9;\\n}\\n.pansou-checkbox-card--selected {\\n border-color: #1C1C1E;\\n background: rgba(28, 28, 30, 0.04);\\n}\\n.pansou-checkbox-card--selected .pansou-checkbox-card__check {\\n color: #1C1C1E;\\n}\\n.pansou-checkbox-card__label {\\n flex: 1;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n font-size: 13px;\\n}\\n.pansou-checkbox-card__delete {\\n flex-shrink: 0;\\n color: #8E8E93;\\n font-size: 14px;\\n margin-left: 6px;\\n transition: color 0.2s;\\n}\\n.pansou-checkbox-card__delete:hover {\\n color: #ef4444;\\n}\\n.pansou-empty-tip {\\n text-align: center;\\n color: #8E8E93;\\n padding: 40px 0;\\n font-size: 13px;\\n}\\n.pansou-config-footer {\\n margin-top: 16px;\\n padding-top: 16px;\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-manager {\\n display: flex;\\n flex-direction: column;\\n gap: 14px;\\n}\\n.emby-server-toolbar {\\n display: flex;\\n flex-direction: column;\\n align-items: stretch;\\n gap: 12px;\\n padding: 4px 0 2px;\\n}\\n.emby-server-toolbar__main {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n gap: 12px;\\n}\\n.emby-server-toolbar .ant-btn {\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.emby-server-title {\\n color: #1C1C1E;\\n font-size: 17px;\\n font-weight: 700;\\n line-height: 1.2;\\n}\\n.emby-server-subtitle {\\n color: #8E8E93;\\n font-size: 12px;\\n line-height: 1.4;\\n}\\n.emby-empty-card {\\n width: 100%;\\n min-height: 116px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 10px;\\n border: 1px dashed rgba(28, 28, 30, 0.2);\\n border-radius: 18px;\\n background: rgba(255, 255, 255, 0.55);\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.emby-empty-card .anticon {\\n width: 36px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 50%;\\n background: rgba(52, 199, 89, 0.14);\\n color: #22c55e;\\n font-size: 17px;\\n}\\n.emby-empty-card:hover {\\n background: rgba(255, 255, 255, 0.75);\\n border-color: rgba(28, 28, 30, 0.35);\\n}\\n.emby-server-grid {\\n display: grid;\\n grid-template-columns: 1fr;\\n gap: 10px;\\n}\\n.emby-server-card {\\n position: relative;\\n overflow: hidden;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n min-height: 82px;\\n padding: 12px 14px;\\n border-radius: 12px;\\n background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(242, 247, 245, 0.9));\\n box-shadow: 0 10px 22px rgba(28, 28, 30, 0.06);\\n border: 1px solid rgba(255, 255, 255, 0.62);\\n}\\n.emby-server-card__hero {\\n display: flex;\\n align-items: center;\\n flex: 0 0 auto;\\n}\\n.emby-server-card__logo {\\n width: 48px;\\n height: 48px;\\n flex: 0 0 48px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 12px;\\n background: rgba(255, 255, 255, 0.92);\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-card__logo img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.emby-server-card__content {\\n min-width: 0;\\n flex: 1;\\n}\\n.emby-server-card__name {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n min-width: 0;\\n color: #111;\\n font-size: 15px;\\n font-weight: 700;\\n line-height: 1.3;\\n}\\n.emby-server-card__name span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__name .anticon {\\n flex: 0 0 auto;\\n color: #22c55e;\\n font-size: 12px;\\n}\\n.emby-server-card__stats {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 10px;\\n margin-top: 7px;\\n color: #6b7280;\\n font-size: 12px;\\n line-height: 1.35;\\n}\\n.emby-server-card__stats .emby-server-card__stat,\\n.emby-server-card__stats .emby-server-card__sync {\\n min-width: 0;\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__stats .emby-server-card__stat {\\n flex: 0 1 auto;\\n max-width: 72px;\\n}\\n.emby-server-card__stats .emby-server-card__stat span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.emby-server-card__stats .emby-server-card__sync {\\n color: #8e8e93;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon {\\n width: 17px;\\n height: 17px;\\n flex: 0 0 auto;\\n color: #8e8e93;\\n fill: currentColor;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon--series {\\n width: 18px;\\n height: 18px;\\n fill: none;\\n stroke: currentColor;\\n stroke-width: 1.5;\\n stroke-linecap: round;\\n stroke-linejoin: round;\\n}\\n.emby-server-card__actions {\\n flex: 0 0 auto;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: center;\\n gap: 4px;\\n}\\n.emby-server-card__actions .ant-btn {\\n width: 30px;\\n height: 30px;\\n padding: 0;\\n border-radius: 10px;\\n}\\n.emby-server-edit-modal .ant-modal-body {\\n padding-top: 18px;\\n}\\n.emby-server-edit-actions {\\n justify-content: space-between;\\n}\\n.emby-server-edit-actions--new {\\n justify-content: flex-end;\\n}\\n.emby-logo-preview {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n margin: -4px 0 16px;\\n color: #8e8e93;\\n font-size: 12px;\\n}\\n.emby-logo-preview img {\\n width: 38px;\\n height: 38px;\\n border-radius: 10px;\\n object-fit: cover;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.ant-input,\\n.ant-input-password .ant-input,\\n.ant-input-number,\\n.ant-input-number-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n font-size: 14px;\\n}\\n.ant-input:focus,\\n.ant-input-password .ant-input:focus,\\n.ant-input-number:focus,\\n.ant-input-number-input:focus,\\n.ant-input:hover,\\n.ant-input-password .ant-input:hover,\\n.ant-input-number:hover,\\n.ant-input-number-input:hover,\\n.ant-input.ant-input-focused,\\n.ant-input-password .ant-input.ant-input-focused,\\n.ant-input-number.ant-input-focused,\\n.ant-input-number-input.ant-input-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.ant-input {\\n padding: 10px 14px;\\n}\\n.ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 6px 14px;\\n}\\n.ant-input-affix-wrapper:focus,\\n.ant-input-affix-wrapper:hover,\\n.ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n padding: 4px 0;\\n box-shadow: none;\\n}\\n.ant-input-affix-wrapper .ant-input:focus,\\n.ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n.ant-input-number {\\n width: 100%;\\n padding: 0;\\n}\\n.ant-input-number .ant-input-number-input {\\n padding: 10px 14px;\\n height: auto;\\n}\\n.ant-input-number:focus,\\n.ant-input-number:hover,\\n.ant-input-number.ant-input-number-focused {\\n border-color: transparent !important;\\n}\\n.ant-input-number-group-addon {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 0 12px 12px 0;\\n color: #8E8E93;\\n font-size: 13px;\\n padding: 0 14px;\\n min-width: 50px;\\n text-align: center;\\n}\\n.ant-input-number-group .ant-input-number {\\n border-radius: 12px 0 0 12px;\\n}\\n.ios-form .ant-form-item {\\n margin-bottom: 16px;\\n}\\n.ios-form .ant-form-item-label > label {\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n}\\n.ios-button-group {\\n display: flex;\\n gap: 12px;\\n margin-top: 20px;\\n}\\n.action-btn--danger {\\n background: #fff;\\n color: #ef4444;\\n border: 1px solid rgba(239, 68, 68, 0.3);\\n}\\n.action-btn--danger:hover {\\n background: rgba(239, 68, 68, 0.05);\\n}\\n.ios-modal {\\n max-width: 420px;\\n}\\n.ios-modal .ant-modal-content {\\n background: rgba(255, 255, 255, 0.9);\\n backdrop-filter: blur(30px);\\n border-radius: 24px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.15);\\n border: 1px solid rgba(255, 255, 255, 0.3);\\n}\\n.ios-modal .ant-modal-header {\\n background: transparent;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 20px 24px;\\n border-radius: 24px 24px 0 0;\\n}\\n.ios-modal .ant-modal-title {\\n font-size: 17px;\\n font-weight: 600;\\n color: #1C1C1E;\\n}\\n.ios-modal .ant-modal-body {\\n padding: 20px 24px;\\n}\\n.ios-modal .ant-modal-footer {\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 16px 24px;\\n}\\n.ios-modal .ant-modal-close {\\n top: 16px;\\n right: 16px;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x {\\n color: #8E8E93;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x:hover {\\n color: #1C1C1E;\\n}\\n.ant-message .ant-message-notice-content {\\n background: rgba(255, 255, 255, 0.85);\\n backdrop-filter: blur(20px);\\n border-radius: 16px;\\n padding: 12px 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);\\n border: 1px solid rgba(255, 255, 255, 0.5);\\n}\\n.ios-alert {\\n background: rgba(59, 130, 246, 0.08);\\n border: none;\\n border-radius: 12px;\\n}\\n.ios-alert .ant-alert-message {\\n color: #1C1C1E;\\n font-weight: 500;\\n}\\n.ios-alert .ant-alert-description {\\n color: #8E8E93;\\n}\\n.ant-switch {\\n background: rgba(120, 120, 128, 0.16);\\n min-width: 51px;\\n height: 31px;\\n}\\n.ant-switch .ant-switch-handle {\\n width: 27px;\\n height: 27px;\\n top: 2px;\\n inset-inline-start: 2px;\\n}\\n.ant-switch .ant-switch-handle::before {\\n border-radius: 50%;\\n box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), 0 1px 1px rgba(0, 0, 0, 0.16);\\n}\\n.ant-switch:hover:not(.ant-switch-disabled) {\\n background: rgba(120, 120, 128, 0.24);\\n}\\n.ant-switch:focus {\\n box-shadow: none;\\n}\\n.ant-switch.ant-switch-checked {\\n background: #34C759;\\n}\\n.ant-switch.ant-switch-checked .ant-switch-handle {\\n inset-inline-start: calc(100% - 29px);\\n}\\n.ant-switch.ant-switch-checked:hover:not(.ant-switch-disabled) {\\n background: #2DB84E;\\n}\\n.ios-edit-btn {\\n color: #8E8E93;\\n padding: 4px 8px;\\n border-radius: 8px;\\n transition: all 0.2s ease;\\n}\\n.ios-edit-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.ios-edit-btn .anticon {\\n font-size: 16px;\\n}\\n.ios-tag {\\n background: rgba(118, 118, 128, 0.12);\\n border: none;\\n border-radius: 6px;\\n color: #8E8E93;\\n font-size: 11px;\\n font-weight: 500;\\n padding: 2px 8px;\\n line-height: 1.4;\\n}\\n.ant-space-compact .ant-input {\\n border-radius: 12px 0 0 12px;\\n}\\n.ant-space-compact .ant-btn {\\n border-radius: 0 12px 12px 0;\\n}\\n.ant-space-compact .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n}\\n.ant-space-compact .ant-btn-primary:hover,\\n.ant-space-compact .ant-btn-primary:focus,\\n.ant-space-compact .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n}\\n.xunlei-verify-compact .ant-input,\\n.xunlei-verify-compact .ant-btn {\\n height: 44px;\\n}\\n.xunlei-verify-compact .ant-input {\\n line-height: 22px;\\n}\\n.xunlei-verify-compact .xunlei-verify-send-btn {\\n min-width: 126px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-color: rgba(0, 0, 0, 0.12);\\n box-shadow: none;\\n}\\n.ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n}\\n.ant-btn-primary:hover,\\n.ant-btn-primary:focus,\\n.ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.ant-btn-dashed {\\n border-radius: 12px;\\n border-color: rgba(0, 0, 0, 0.15) !important;\\n color: #8E8E93;\\n}\\n.ant-btn-dashed:hover,\\n.ant-btn-dashed:focus,\\n.ant-btn-dashed:active {\\n color: #1C1C1E !important;\\n border-color: rgba(0, 0, 0, 0.3) !important;\\n background: rgba(0, 0, 0, 0.02) !important;\\n}\\n.ant-btn-text:hover,\\n.ant-btn-text:focus,\\n.ant-btn-text:active {\\n background: rgba(0, 0, 0, 0.04) !important;\\n color: #1C1C1E !important;\\n}\\n.ant-btn-link {\\n color: #1C1C1E;\\n}\\n.ant-btn-link:hover,\\n.ant-btn-link:focus,\\n.ant-btn-link:active {\\n color: #3C3C3E !important;\\n background: transparent !important;\\n}\\n.ant-btn-dangerous.ant-btn-text {\\n color: #ef4444;\\n}\\n.ant-btn-dangerous.ant-btn-text:hover,\\n.ant-btn-dangerous.ant-btn-text:focus,\\n.ant-btn-dangerous.ant-btn-text:active {\\n color: #dc2626 !important;\\n background: rgba(239, 68, 68, 0.04) !important;\\n}\\n.action-btn--secondary-outline {\\n background: #fff;\\n color: #8E8E93;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.action-btn--secondary-outline:hover {\\n color: #1C1C1E;\\n background: #F9F9F9;\\n}\\n.pansou-add-channel .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n font-weight: 500;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.pansou-add-channel .ant-btn-primary:hover,\\n.pansou-add-channel .ant-btn-primary:focus,\\n.pansou-add-channel .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 8px 14px;\\n}\\n.pansou-add-channel .ant-input:focus,\\n.pansou-add-channel .ant-input:hover {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.pansou-add-channel .ant-input-clear-icon {\\n color: #8E8E93;\\n}\\n.pansou-add-channel .ant-input-clear-icon:hover {\\n color: #1C1C1E;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 4px 14px;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper:focus,\\n.pansou-add-channel .ant-input-affix-wrapper:hover,\\n.pansou-add-channel .ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n box-shadow: none;\\n padding: 4px 0;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:focus,\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n\",document.head.appendChild(e)}var $t=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAICAgICAQICAgIDAgIDAwYEAwMDAwcFBQQGCAcJCAgHCAgJCg0LCQoMCggICw8LDA0ODg8OCQsQERAOEQ0ODg7/2wBDAQIDAwMDAwcEBAcOCQgJDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg7/wgARCAE8ATwDAREAAhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAABQYABAIDBwEJCP/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAPv4QhCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCGsoFU8IQhD0tG80FgtEKxQNRkXDMpmZfNpSMDcVDQQhCEMi6XTIgMEEWzI9IQ8MRjGQCh4PngtCKUjaN4QE43j6XRQKwZFIEGw9IQxMhyHcskARycDjCbTwhrF4KnRCsEzSUgOIxsKQ6DaI4MOgGg58XxsEQ2B0h4ZFUXRyOpF8gBOVG8cwQVS2FhPKZ1MLGAqi0aSoYC8Nw5iUKoyEFMNDeJo1B0DGkIlwRAudSL5ACcsLQZObgcMHRwQUTpZZN4KEYrjMLwCD4SFwGF8JgAuDaKA0mk50UxoH0UwmdSL5ACcrLZeOVAINnVimUB5BBbKQjBU6gQBAI2hw1A4UxYGkchPGcGnLiiNx00WQodSL5ACcrLYaObgcLnRgUDzo5SAZgBDadRLQiA4bS+JwpgMrDsMwljSaDnhTGgfRSCZ1IvkAJyosDoCCoWguJxTOpF0DmIugo6EbTlwROjmIiCEHBlDJpOejQMAFNISLYhhc6kXyAI5OCBjNp4emoXQmdFKhdK4tFUMhYQQoOJTKolDOGDEhzY2h8hD0pi4OZ1EvkBggCyZEPTwxMRlGUWzQYFQEgsNgkZxtKBfF0rgUuDqLIJNh4Q9MT0cx5LRDWUCmDikXCkDz0NBUWheChVOaAQ3mY8DuXw8UxFEIvHSxhNhrBZgFCA0JDAbiEIaxXF0Oi+KxiHw2AjaNYHOTAAtFsJlwJHRBgFk5iLA2HSxqKghFEfC0IxfH4tkIeFcDlIJgoAlYqmstlMOBQRBaGcPmAsi0NQ7C6c6F8vj8dEBRzUqj0NgmhA6WXiHhVForDQXweJgvmQZChzsEjGbzwtDQaRbAIDLwJF01Bk6CPYrimGA+MgOLo0FghVFoVi2PATA5ycXx6HwrHIRHDZ0UKCGfk8/aAUMjmgFChTNQ1DiNoIF0sG4Ih8Mlg9IUBNF03h8aiockBR0YZxVOXiyO510rn5DPnEdwPrGBxbK5vF8rDYHBwCAqiQBxpOhDGbCEKgpHOxUGE6oZHPwSOQYOZiWXjpB0c+UQiC+GD6oHIjs5fAInggYB7GUtmYnCmP4yBAKGZAac+Ofi+FDpRmbS4XzE5WKI1HRT8bCcfvA+cZ+0wOfJA+uYfDYCE0zD4YN4xm0EjoUy8OJZIVRbF0VBaCw2jiUCsMQrHNCiHD5Gn1dL4GD46HzfOjHeguagSaCyNhrKIyDUMhqLodNpCFMVBTAYujKdHIahqB5yAQTSfJY+shsLZ086afOUJH6cB5vGMoi2XSuL4WGwPDeMhZIQhWE8VwUKgUG8vhkaTQIApAU+c53s/RAYG4JHxmPqAdjKgPGYuCKJhiaAWQJj8dGGQ2kIYA8UxHBwYMimNA5lYFG0FiCfJs/Yp+rDn583DrR+8jqxvFY9DgKEM2l8WACYhw6mdLLpDQCjM2AkEi0XS4Q3goqhYsGAKPw4cFLR+nTvYYG4yNhSFAEA0Oj4Czm5QGU6idELZAYJRBtLwuHPhiN4pGYeCYIF0ohYegSaQ6bAOKgTHQXzlANIOJ1ACnJzadJH8MmZCkKQtBIKCSLI/B0ClA0jSbgCK5VOmFosjEeigcvMx7BwiBADGZ04ggjGPofLZ6QoCaADwFCYUxvD54CRdDYeNYvnh0o2F0ZgYJYIMjEAgULAYHnShxFoolsbRtN5AaJx6bRSA54bzaQGi8Fg0CgeMAwkGAMCUKAbCArAYMF4rAcLjaCRJKx086gXiFQWigQpGshD0IGsVw4XxIA4WBwcGYCnPQKEAyVAudFN56JAhHhqK4eOoHRC4QEHNRYNxmeEMTSMw8mgsCocxBZdPTaZlEDmgJDsaS+PwNCYqHOSgUy6dEOmDKbiAE5OUhqMzE9PBULI/AkKi0c0KQYGEXgCeFYxLQfPBgOjEN4ogUyFA0jUdKHUskAJystDcLZQLwxiqDxtFcaS+LZXMQaKxZN4qFQ3HpmHhqLpkCg+M4vFIsjWNJvIATlhaChzACBo6eDSgPpSDodNRpFg5ULR0EIHNDEZgebyyLpsG8YRnGQzMTAsFk9IATlZbLxysBBs6qUygdCNQWDgJFwDCwK4bLIlhk6gazeDzngbOkDCDD0YCAE3h42kAJywtDAIIICo/AMHjyBS6NILEY0l8Ai+ajANHVC8bBcEkeg8UBMKo6m0BhsdSyQAnKTMdioVzeXBLK5000CuXg8UhcAYXAgICxoHA9CRrFMYQGKIJNocN4yD2MhuIAzlIBDJtIQ1gUOnVwgLItF4vCMBB9BwnG4qBwaxqN4rCsKYFPRkDwACJ0gdCwQoiaL5D0hDwgwDkXSsLJXLItGI0lYWDUeF8bw+ZgcTwOYGYfDAuFMaxpN5DE0GkhCEIQ2lgyPDSYmRpIbzE0nhDIsG0hgVjAhDabTSYG43npCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCEIf/8QAJRAAAwEBAAIBBAMBAQEAAAAAAwQFAgEAFRAGBwgUERITFiBQ/9oACAEBAAECAP8Ax/P/AMTWyudpez9n7P2fs80xu9Y64I/O+EPqj7PNIbWmdUBviL3RGcN9Y297P2fs/Z+z9nikFnPfhwtOn2xyr7T2ntO1c2ZtTTO3J7GD6YpOtWPcAszaDLLVNCqgydl+qpTI49W5Y9p7T2ntO1QWZNBbXxS7Y0sqGT6r1XJJZLCsjQA6nLrsOZpUzmHxPuImiBpKJ9ns0aTtCSYu3/EUMSPU+q5JPKICDpHvxT8p8kC5wz3sgPfxVFM5Mx/gQVEGu71+qXRSRO6PVZwym+31kEfhvD5kBNsj/KSzZ8URwvEfml5S8k+PHoUPZzqSJ6nk7xE3aGWniPMpbyo8lxBHhWmgeuXW/lzcnw3hvJfazTdPNSS+MtLyH4j80vKfknyn5T+Jfkzyn5O8Foxl3X3Wyx+ohYnHTNxUI521D5fc23E0bw3k3y3455nyJ4Dyj5D8R+aXlPyT48ChO9ZOnIAqcm+JhbnbB1ZudLHM8c1QeW8RQNig4zSNwU6Omzg3kvlZVubmXJQwKl5D8R+aflTskvPDo+tAh5VLM7N6bwifFqGVOTDUCUiRfE+sdrLFDOnCkKJUsH7IMYZJ/JqybG6BYXiPzS5Yyq0Gv7X2vKpa7LUjK5SUQONunPzSVM7lDUbv7PH3emDJ4Zxag/p/xF/Ff2vteVmKuzwcI/LYqkzUfkz13rfXdnYkzJul2QjZITvG3BU8VzNxO7GNXSjKHDN0pbWBvSeSPWeu9d63ssEiSitj41gqeph1MiyqbHS4MmTenddwqpRDRPw+XAsxnQ0AHDhtKoo1iYxNawt6vUwwBBFOLO1hLQf/ACTyj0exapbIXBkGtvHOpxbFYNRXi40BzgB/bQqzKGiU8Vs8ZlVZlITDbVKolXn0GmHnpTimvnvSFYwOdhNyaSX2eQeNfraPPpH3USwghMxFJIoId5Koip1ar729pmkOpsVXX2VdymtboBjCS58mM5QWeV7/AFa6+/qtgic86tYitMFnm/1FmVWm2T8bn/3xWdcJ5nCSshAK9bGUV5CU8YDzkJ4MfBiPOHMhlLXNUe2DLeSVU16Pbu+mn+Sk2122efmWq8qo4vUGHOEzprqIpodBp9T/AAw3iovTV0IXOfDPHx70GinWVYo9r+Jbkl4zVqVW88hLzFao/uF9+/uz9Ufjb+QYGm2jIYk9E4RUqpVcIYMCgm/zB5uJuB9+T9pFpuEpSH5rD7NAIUpYWt2G9lSUiIDN+RH5P/b38R/vL9CfYD7FaY+iPvMm0QreXc8NPdnuBpZq6JXXECUvg67Y9fDfa2nQlVlaSdKYCfEFgvBsp5Xk4n7/ADP+7f4i/Zl/dL8SJAfrL6ZBqP8AUS9UZqWDeAMrSE8KghUdKsqoJnc7a3yYbk1iRQndGm9P2sJwyjORVZb6yzwrn5B/U/03o1rTUtMET85fov8AGuiDAmzn2r1VYai7QwvJuIjF5tNREWfj+D8fMfrae+yHUmWAqpqipCuAKP8An7ucXa/unmBhXz8+af4ny8yjopoBhuRCLAcba1tF1WyrbnuB7z/wfNFbYnDm8nhWbxVScX25inNNCZk/l39vfxl+uupIzk/D/Uf3x+5P24+mU1HJgAJbOpTmGCMBk9dy0m/IrTnxa+e+HXopOJDngAXOBzMgMeh1rIHJ31h9ufqX6P8Atz+U0j6l+ufvZ96/yT/Gz7LSdzNN6Y4sUVB9pzafDKuIkHjc9mAdPvwQhXgtEXJJZmG8UBpQR9UDGHpdzT+HPqn6V+uPwaf/ABRl/h79ufxczFSRWZ0cSromaRK3WZnFEqiDwxDmow0lc/DfXSpOKtdLTaOab4905VyKi/RbXMTrk+guZzqyoZHYzqJmZ51uWeP44rgMXCGLWXxT0I8pJIefhjL4N6SeJSq1xuyTl4VEogvpPnywi8sjybkqya4R77W09meVF2qzvI02xTnJLlTBUpaKPgS878M7fZ7jo23XTL9QexX7Vbo6cQqZrkrNvIdnlM8iyIjrjjnU+TdlefwXDTpFuwi7Cyrx5e5Nog38N4bVVRYScmai8h4lev8AXNI7WSS4gyDAUlhtc3PGRupX7TTolovu4wvJ5JNH2jOcFYepuPKNfT5Uu/B+tF4/ultn/b/b/bJQjamkkIS2AUdgJ+zp6e4KhRrPUP2Vmx7NiSBRTo9LWVzMZpbf52ajDTUz8PErPfv5Y/2/3/36xx6U+HWh55Ycfew5hr+uGe1z0SE8T8Sw1mRwXdkBq3xlbSmsJ8jYm4Fz4p+V+IJAk9meu5MLIdSlcwclIDNkTaeU0kuIvg6Loe58AQFDb0c6pOh/tU0FBmS1PAtMLJYX78U/KfkjOzM1vdq1hnq5n+b4XEsTU00D/nuzGmTnTQYmMiyPgP4HlEq9nNvdUhZS+5rEH/nl4c5EGfin5S8k+US0m/3Zjc4tPyd4AO5yCvAdW0CpivoPY+KOX+JLiknmKSzTzEV2gmCOgkLH6vU+Ljxn5p+U/JPlLlPP9ZmZnKfk7xbemkjc202eyd91MiyDrdFncYaSbMlaVUVOrKkzJvFztLUgGOY1FR4Wvil5S8k+NrPyvSoSU1qnJ3gsn4i4Buh42IGO8cUKPnnUpQZvSbHux4MUpfrLFejWSrJ2D1dlmZW58U/KnZTA2CY/XEPZ6jEvqIXUDDSazoyTmeNgFSUWFoQNJukaS3QDkC7dGuewR5Yo2x0Jxp2Q8+KObAQ7FQ9j7D2G6BtxwTMGC9PKJNg56Z18Tw1wf16bnUiKKKInRcQb235pYac6ZuQdScSQdfvwyKhK1C5E9L6X0nYmIU6UqL+DBbngnmRZjrRFUHZpYXofQKxkURi7hxRyRqB/zo/p5CPqa3FDEnogz8dzpf8AS/R/R/R/R/R4lhfPPO86Hi/Q9U4pkOgdS/R/R4ngXx3HVf0f0eJYW/y6rxLAOc/+T//EAD0QAAICAQMCAgkCBQEGBwAAAAECAAMRBBIhBTEGEwcQIiMkQVFScRQyCCBCYYFiM1BykbLRJVNzgqGiwv/aAAgBAQADPwD+Qf7lABipnmL90T74n3xPvi/fE++J90V/nBjvFz3gccTI9QQHJirnmL9win+oRXHeALmICfaiv85uEwIEzFPzgwYqkjdE++J98X7hF+4RfuEX74pz7UDjvMj1lK2jV2MA0sNh9qWkZ3GW/cZb9xlv3GWgdzLBZgtGsIBaHyMywXEZhIEATvBsPMKI5Bjq7ANLT2Yx9+C0a2vvGFBliWNzHawDdN9Q5ipSeZsdhuhezvCNOTmMljYaWsT7Ut+plv3GW/cZb9xlw+Zj7+WjW/Obq/WRU8Y6lxHusjGuGGExhWcR6rTGF4ENmljG3OIaq4awRCcjML0NiO95h8omGu+EgCb9KYQ7EQ16qBaO8IrYZjPe3MZrYf0ZjPewj2w7O0Pq4PEZEaPVqSIdwmafX7p5nVtAbOZXXpsmVIx5Ep+olT/MSuzT5ihyQJjWCA6cZiRfLOIeSIa3OTPNXEO/diLXURA2omMRV0h5ilmxNt+YfKxmNdWYwvmLRPgz+IDqz+YvlCV1VSlWPIlJ+YlTnGYjUGAaoz3onufVwZ7p58Y359RTSHB+UcWtzH+6O1wG6F9JM7p8ZBXpgYofG6B07xBW0QOcGeZbN2nJx8o/OBHFxJENCQtSQDLLWbvLd2dssSBasGIXMzcJ8GfxPjD+ZimFKG5jC1vaj7/3RnsXmF9JPfme+nufVwZ7p58W3q+Fb8T3rww+eJ8H/ifunxkb9HxLFuMIQjMY1Ngx2uOYTesD6fGIhydsrr3cCYsIEax4uzJWVITwJUiGbNwBhe88zc4nwZ/E+MP5nw09y0PnNPbE96s+DP8Awz3899Pc+v3Tz4tvzOYX0bcRmub2Y/2x1tHswpo5jdM6yb9LOWOI9bECNYhBmCTNmqE9wIErYzFrAGefbAFzieXScDtGrLR2yMx78yw3Z2xkI4m3SET4w/mZoheo8RzY3Ebd+0xksHEKaMz35nvp7n1+6eY1bQC2V2abBlTk8CVZ7CVI3YSuvTEQGxpnWCAacZlbAxXcnERKzkRfam3VQCkQGh8Q/q2mXERaIj1sJlHMP6kwWAZErVclJXX8oF0zTGrP5i+UORK7aj2lTEnAlOewlVbdhETTmBtUZ70T3PrJqeMNQ5jU3QhMZ9ePnCayAY9tpjG8GGvSwi0jMVk5MCocTzCYK2zAh25i2aU8wNqmnIhr08LORPM07GfEHj5xUrGZXWmAYrEjdPM0zRk1LGNXDtxn1kdjGesjMa3Uw7hMU+vfWY1ljkLLRYeJaBLZb9JbLCOxjl+RCjjiEUERltYwoCMxrYyAsYEU8zbd3gOnILQWXzOIX08fzoxohFhOJ+nRhCXIDQvd3nm6SM7khZaGOAZcPkZb9JbLvoZaR2MfzORDXjiba/WCDFfPEr5O2VpngSrfjAlRTtKkzwJSD8pTnuJWe0XyYh3YM32nEJr5E8uhoQ7CEGMEPMJsgQDmVmrlpW7dxFsrilDgRl34jrecwV3DJiPWBmV3DOIh/pErUH2ZUhPAlLuRK3XsJWiHgSpHifKe7/l90YQGxLPPMbyJYC2Jd5h5Mu39zHU8mZoPMZrDzAX5i+TC1D4EIufiEtGcdo4/pMsq+REtq+ZjC4ZaB6hkwPVEKNmIHcieXf3hV1BaBkGWitXnMVKm5myxsNM38vFdO8zSxBjLeRmF7AMzdV/JgQAERbcwb84mKyIHzxEBPErWCrIEdzjMOzM8i6Bl27pXdpzEYtxPf9ojJyJWU/bEVD7MCbsR6ruIUIBMHkfugCsN0NrtzM2E5jK4wZZkDJjHTRlpbmWW2NzLUtBlvAJMZ9LHOoJjC4ZmKf5AqmbGbmeZZiB0girW0WpmEDOQDDqGhLZxBXpjDXe+IaruTN1eN0/UzZlsRKnxKzTECHE84tOCwEOmu+mIRURmWW5IMcucws8LuJ2mzSRiGENlxyINucQVvB5OILLO0FR7Tanr2qZgMMw2WGe9zAKoCJil43nvHfUQtgkRESKtLQeY+IRcZZZYBGKjImzTNPIvcs2FHJM8NaX+IhOgrovO8CLmi/rg3GwXZ/2qp86R2PG49x9DR1TplGs0Wor1mjvrWym+lwyWIwyrKw4IIIOYc8iKunaEXPtlhYxnryRNmeJmyBecRa8CB6MQuCcQUuZXXxmVgkboH+cW2ALkTA9ZNZjbmgrY5ldZ7iKxwGgdJmh5794BqIu0QJSYAjjdBa74MLXzdauRFGmBxMUPPRh4K6pqdH1DxCnUup1Eh9D0pP1NqkdwSDsU/wBmYTwD429IbeIvBXQeoeH9TqWLdRq1IrWq9/8AzVVGOxj/AFckHv3zm/0c9Wo8J+ML7NX4F1FmKruXfpTk/vUdzUTyyDt3HzB0l/SaNbo769VpL6ltouqcMliMMqykcEEEEERXyoM/UMx7zyyTtgprIIi7jEF0UpgQs8wgzFaqEZKiWVFpYbTzLHIhWsZg2fyDaYih4ELbWj+ccNGe4DM9z3gNJGYbnbEsF5OJYAIyaU/iNvcZMNlhhstyFzCrqcTTdP6LfrNZeml0mnqa2+61gqVooJZiT2AAJnWfHvVtf4V8Bau7pHglSarNVVmvU9U7gknulR+SdyOW+g8eeMtBR1fxFangrolwD1fqqTZrLVPIIpyNoP1dgf7Gein0ZXp4W8NdX6t4m8aIwPUbrtTUNLoR9hVKwTYfpu9n5zXelPxGOsdZFvTfAmjtxqtSOH1rDvTUf+p/lOm9C8J6bp2gSrp/Sen6VKaKwdqUU1rtVeewVQJ4K9Ifijr3TPDPVf1mq6VdstDDaL07edV99e7K5/7qTWaxkypk4xCwbEdXaFLJ7QBaV7O8qRe4iNxuiXVGLtcwHVxVpBi1DvA/zmV9ZFbSzc0sdmjhicGeXcIBph7UNpwDPM7iVp3ErXgTNDYjF3OIVu5iAjMqrQciX9H8D9M9GXRtSab+sV/q+sOh5/SqxFdX4d1JP9q8dmnTdf04elfxTpE1QS8p4d0lyZUMhw2qI7EhgVT6FSZU9Vg3cEYO0kH/AJieZ/EvbqT1p7fR3a51dpsuLa0sWydOSe+Sf9qecf3mi6N4c0fR+j6Ovp/TNJUKtNpqF2pWo7ACabxr6NOteGOpW31aLqWmNFtmntKOueQQR9CBweD2IIJB8VegX+KX28jqfRdZtuVSVr12nb/82IQR9CfqJpuqeF+ndY6df5+g12mr1Oms7b63UMp/5EQscFottPMTa0xa0KHvHXsZay9zLFfljMpgtPOqMLarIHzhTTSwOY5cZnu/XuUwWE8RAG9mKqtgRqbeIwwpMFuMmKKMiFMxzbiedR2gKOdsFFrcdjPJc8wqmN01fij+NHxed5sNWsr6fpq88KKkWvA/LBj+TNN4Z9H/AEXw9oMJo+m6GrS1BRjIRQufycZMLg+3DdaeZ5xEDU5KSjp3jTwV4ppqxZrtLfotSQPnSwdP8kWvL+rfwhdFS5za/T9Tfo8nvtV96j/CuBHV49aRrlMdmPEcAw74DTBUpIhrt7zzgATKzgxPLxBa3Amwzah/kAUxU3CC4mDYxhpumCOYHoEFomLYBVAaXh32YlgtMtEv6L/GZ4vuvTc1XXP1e36qxFo/+CINVoKdVQ4sourWytx2ZSMgx/qYxsEAAzKv0v8AiaUaD0d9GRwdSbNZqXX7VArRf+ZLS2r+Eim+wYTWdX1N1X91G2v/AKq2hNZOI6ORiGw4Igas8TYjcQ0W9psrIm9DHFuYa25MCJ3gZsbolqxCn8uUMdt0atyTAKmnmXGOpzDTUATFPBaJY8BSB62nmu/EJJ9mNXu9majp3pD6T4701HwHU6V0escDtqKwdhP/ABV8D/0jKPGnoQo8OazUA+JegVCiyt29u/TDiq0fUAYQ/QgfcIwsxiHvtn6VOZpen9K1Or1mpTTaSio2XXWuFStFBLMSewABJmq9M/8AFFqtf0am7VaIunTeg6YD23rDEKcfV3Zm/wDcBNN4N9EHhrwpQwcdO0SVWuOz2n2rH/y5YxX0/aDk4i02SsjES2huJhmIEet2EawQqpOI1bx1jq3eYCgtBag5m5f5AYrq0O18CWFmG0xhZlli1pCVO2W+ZHDDM2VcmIMjMrscyqxIjA8Tonj30bdW8K9doL6DW17d6Ab6XHKWIfkykAiekT+Hn08U2h7endQ0thfpvVaUzp9fV9RnhgRwyHt2M8D+JNHptF43x4O67gK9zBrNHe3zYOBmvP0fgfcZ4L1/TF1PT/FnRtdQV3CyjqdLjH+Gnos8HaCx+p+Nem3XqONJoLxqryfkNlWSM/VsCdd9JNV/h3oNN3QPCBf26i2dRrsHjzSOAv8AoBI+pM1nRNXV6QfGOhbT9UKf+DaC8YegMCDdYp7MQcKD2GTC165g8gRPLMzYcRq35iCrBaVvW3Ii+e0Umb6TgQqWO2bSZiMLBHYCZp9e0GBGIzBaMZi3IYrEkrEqRjibLiILRyJWgyRK6TAUIDR3JwZaGOcwoOTEKcmVB+4nhTx/4Nv6B4s6Pp+tdLtO7y7hzW3IDo4wyNyfaUg8zVfrr9b6OvFNL6Y8p07rmVZPqBdWp3f2yg/M9OeivNdXhKjXJ99HWdIF/wDvYpnpY6peB1duleHKP6zfrPOcD+wqDA/5YTwX4A11HVLxZ4p8RVkMmt1tYFdLfWqrkL+SWI+RlgP7TDQ4JE8urGY1sLgkieTUTGqYgNHcEbobLDzHZxC+n5EC0tkTZawE3EgRnsBxCgHE21+sipsR1taMtnJissTYYgreBtWcGZqHzhFJxLRaY5bmK8U15AjVA4lqsZYpjGxQTN+lzH3kCG1+REZOViYPswUoxAhrtIzBYYp00HkWRmveWEQq/MXeuYn6aDyXm+9oXccQYU7YK6+02r68oYuWMNVp2wqeTAKG9qcuN08zU8njMQ0gZldlUqYkxKQYK7duYllQ5lVqSshjEQnE26oTdpxFJiKYuyIqGA1PG89o9bz4fkwNQ3MD3mVmntEqc4nl3YzC9HeGyhoW1ZyPnK0xkSutB2ibcCZHr2o09phDa5j1KTLFrYCW2WMY4uzzHqUAw7CJlTCyNG87OYyiHZBtIzBbnEJ1IMCaaAPibzB5PJi1o0Wx2BMFxzBXyJ5CYz2hcEZh87MIpxGfdGF8ygzFt00StyYunzzBvxunm45m5PWTW0ZrjPrB5DYjMx4jN/TCD+2Onylv0Mtlqo3Bji7tLGHAMtFWcGWV5jvbNgDQVptzGteFBmCqk8wDeA0zectK9nLSvyjzAzMFj33R2GdssC42x9hysNFhyIKDgtK/JI3xGRsNCXbBlhvjttmafWNhiI7ZlSEgNK2XGZS2ZT9RKfqJT9RKT9JVbFepsCe/PswImSJXVQZWC0TzTESmYt7xCMkytKe4g8pgHhd25h3d43YGWPXH3kmBrhkRBR2lQOJW1JgQNiGu04jgY3GOwOWhsMLuOIUA4m2r17amjJa+DLWc4aWkdzLvqZd9TLvqZaB3MsV+TGZwMxX0/Mr82KlJIhrrbmMbH5h3HmO64zHJzzHo+ccKRujWAjMLE+rLyvyOYgc4g88YhGj4j+eY3kczKNC1jcRlXsYRBviELE2CAL68VPCdS8820RfLyREHylX0EQ/IRfKOFnlWtCl4nl6OEakjMNtEZ62lnnNxHh3jMUUHiBS2I5c4jiEerYYUqxum9+8BuERtPKy5MSug8wOWAi2seJigkLHV24joe0srIEZkEzX6uDPdPPi2g8yJVpoiMeYn3RHfvFs00GWmNTCdBx9JZ+rP5jNSAZ5tU3OfZgH9MFGTiLUjCC21p5wmyljibHYQtGjiOXj0nM8tMFoD84XrIBjXWmZ7iCzTniBnPsz/AEwo/aGqbU9funnxjfn1FdK2DHFz8mPnuY5uHJhbRT90+MgfSRWuJIgQRTX2lXOQJTsPAiCt8Rw7gRjfzE8kZiDStB+oYCeY+JupziMjdoW+UNVLGWVuRLbGllqRu5EFWMiIUxEb5CV4PEqWIO0wvr908+Lf8/8Af1fCt+IfNeH6Q+eJjRj8T90+MgGkieZFaDycwVAwKSN089WGZ5oY4hpvPEFKYzBZp2G6F7zM3iLZphxAzdoFTtFTTtxN97AD5wsw9mKlYyolVdRldLkZis+N0Vl7wKp5gRyMwWPNyev3Tz4xvzOYbNGY72NhY/2mOloO2GvSYmN0+Mjfo+JYtxzChwTA9MZ62xLfNPeOG5itURN24gRqnMezKxic4my8QCgRIhrOJmp4G1cRagYlCd8RBWw3zLnDwi7looqHtRWU4eNbacHMfMIrHr908xqmirbyZW9HJlLse0olKStKCMwNYwzM6sQPphBtY7Y1NxxCDgmLbVKyGOBEpDYgNxGYLqIqk8RRdE8qKmpgWjvGYnBjskNlJhTVQVafvMbgHjlj7caxv3Rt8tRP3Ry+GaLYRkxNkG315qeN57y2q0y1V7mW/WWSyWFSMyy14/nAmYpED1mAhjiNRacRxxCNO0sYvLHvhGlEJVsCOlxlhQiWC3MsPEa0Amba4HqORNhc4j1hgJa7NLSZYX7GM57Qig8R6rTLK3xGZBM1+vejTzXYhYd54jj5R/oY/wBDH+2P9Id/InlPyJsT1BkPE3scCFW7QmojEZ3bibH/AGzZTjE81GhLn2Yfthz+2FH7QVqMiKqwFDA6NxC7txCSfZn+iYblYK/6YDSeJudsLCr9oasTCevIitE+giRIkSJEip8oF9WRAYBAYh+URfkIAICDEPyiRIg+QgX1giKc5ESJEirBiISciIPkIEmB/ur/xAAUEQEAAAAAAAAAAAAAAAAAAACg/9oACAECAQE/AEgf/8QAFBEBAAAAAAAAAAAAAAAAAAAAoP/aAAgBAwEBPwBIH//Z\";var Er=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAMe0lEQVR4AezdbXYTORMFYHUGclhG2EHCCuAXsAtYCbASZheEX7ADsoNkdjEH5qTH13E5bafdX5JaVaXLoSInsdXSlR7S1ry8nAX+YgJM4GQCBHIyGn6DCYRAINwFTGAgAQIZCIffYgIEwj3ABAYSyAhk4Kr8FhMwkgCBGFkoDrNMAgRSJnde1UgCBGJkoTjMMgkQSJnceVUjCdgEYiRcDtN+AgRifw05g4wJEEjGcNm1/QQIxP4acgYZEyCQjOGya/sJEMjRGvJTJtBNgEC6aWR+/OLb5UXmS7D7xAkQSOJAT3X37Nvl6/umuT3/fvnp1HP4dX0JEMgKawIcZ03zY3uptvlMJNskTHw4MzFKw4M8wCHzIBJJQn1LIBmX6AjH4ZWI5DAPpZ8RSKaFGcQh1yQSSUJtSyAZlmYSDrkukUgSKlsCSbwss3DItYlEklDXEkjCJVmEQ65PJJKEqpZAEi1HFA4Zw2Ik0gHb1AkQSIJEk+CQcRCJJKGiJZDIZUiKQ8ZCJJJE8ZZAIpYgCw4ZD5FIEkVbAlkYf1YcMiYikSSKtQSyIPpVcMi4SiORcVTaEsjMhV8Vh4yNSCSJ1VsCmRF5ERwyPiKRJFZtCWRi3EVxyBiJRJJYrSWQCVGrwCHjJBJJYpWWQEZiVoVDxuoEiUxHc0sgA6ujEoeMl0gkiawtgZyIVzUOGTORSBLZWgLpidYEDhk3kUgSWVoCOYrVFA4ZO5FIEslbAulEahKHjJ9IJAm0yYpAdlGaxrGbQyASSSJZSyCbKF3g2Mxj+5tItjGk+lA9EFc4ZFcQiSQR3VYNxCUO2RJEIklEtdUCcY1DtgSRSBKL26dAFndl54VV4JDlIBJJYlFbHZCqcMiWIBJJYnZbFZAqcciWIBJJYlZbDZCqcciWIBJJYnJbBRDi6OyHBEjOr199RaadXt0+XBVIiRSxkPt/vKbEADReMwLJ8+urHyG0HzaZVoHENRDiGNC5AAlwNCG8Dg+/LmpA4hYIcTzs4sGPM5Ac4ZBu3SNxCYQ4ZP9OaCcgOYFDOneNxB0Q4pB9O6MdQDKCQy7iFokXINuFIo5tDMs+9CCZiEOu5xKJGyDEIfs0ou0gmYlDLuoOiRsgTdN8klViG5EAkFxf3XZOq+Z25gqJGyB/te3HNoSfgb9SJHAR2YkbJG6A/Pv+5o5IIrd12pe7QOIGCNY2DxL0zFqYgHkkroBgEYkEKagq00jcAcHWIBKkoKrMInEJBFuDSJCCqjKJxC0QbA0iQQqqyhwS10CwNQTJ5vHdpnT9rnM0ppC4B4I9eN+c4T8ixp7toytWmgTMIHEPBH/7LYT2Q5p1ZS8JEzCBxDUQ4ki4nfN0pR6JWyDEkWdHZ+hVNRKXQIrhaNrPAZVhF83t0tjz1SJxB6QYjs2ObO/DP7/f3nw5a9uXhLIJZN5vlUhcASmJo7sXcLS8hxICj5fD5F/qkLgBogVHdysAyuanyRv+NOmmMvpYFRIXQDTikG0AJPufJnx/IrGMtWqQmAeiGUd3F3ShtCFY/otdYaVfKpCYBmIFR3dDAcqfd7/etG37cfN1vj/ZhDDwuzgSs0As4uhuhD/vb/7m+5NuIicfF0ViEoh1HLIV8NOE708kjcG2GBJzQLzg6G6HAyg8Fu5G031cBIkpIB5xdHcAoNR929VNo/fx6kjMAPGOQ7YDkPC2S9LobVdFYgJILTi626ELhcfC3WS2j1dDoh5IjTi2W2D3AVB4LLwL47BZBYlqILXj6O4HHgt309g/zo5ELRDi2G+C/QP8NOH7k30c8mAaEnn2zFYlEOIYXsUDKDwWRljZkKgDQhxY72kFKDwW3meVBYkqIMSxX+zJD4CEt137uJIjUQOEOPaLvOhBF0rlx8JJkagAQhyLTPS+CFB4LBy2SF58u4z+/0KbAqR3IVJ9kThSJXnYT+3Hwm3bfsEfFoepzP+sKBDimL9gc16BDVLj+5MNjo/4A2JOVqeeWwwIcZxakvRfP4Di/Fg4JQ6sRBEgxIHo1y9A8XwsnBoHVmh1IMSB2MsVkHi87cqBA6u0KpCnODAEVokEulCsHwvnwoF1WQ0IcSBufQUolo+Fc+LAaq0ChDgQte7CqY+19ye5cWDFsgMhDsRso/DTxMZIQ1gDB7LICoQ4ELGNevbt8vX59VUb2uaz9hGvhQM5ZANSHAdmxxpNAP9zjOfXVz/OmubH6JMVPGFNHJhuFiDEgWh1F2Ccf7/8dN80t00Ir4OBX2vjQCTJgRAHYtVdAsPC7ZQkWQIHrp0UCHEgUr21e59xawkG0iyFA9dOBoQ4EKfO2t5OXb/6unufcaFzlP2jKokDI0oCpDYcCM5K7W+nQvvByphlnKVxYBzRQPCn0+ZU2lz4mLzn2t1OtdZup2RNNODAWKKB4D8ubf4L7Et0xiqfAP7AsnRs25eYFhwYWzQQdEIkSKFsAYbcTlk5tu1LTBMOjC8JEHREJEihTAkMq7dTkpo2HBhXMiDojEiQQlTNevHufYa5Y9u+SWrEgXEmBYIOiQQp5K3t7ZTRY9u+ZLTiwFiTA0GnRIIU8tT+dsrgsW1fIppxYLxZgKBjIkEK6Wp3O2X22LYvCe04MOZsQNA5kSCFuMLtlPVj274ELODAuLMCwQWIBCnML8CQ26k0x7bzx5DrFVZwYP7ZgeAiRIIUppfAsH5s2zdjSzgw/lWA4EJEghSGa/c+w8Wxbd9MreHAHFYDgosRCVJ4WtvbKUfHtk9nGFb7O+R914752qpAMFAiQQqPtb+dcnJs+zizx0cWf3LI6FcHggsTSQi72ykfx7ZY1BNlGQemdIYPJapWJLid8nhs27eHrOPAnIoBwcVrQgIYcjvl7dgWa3lcHnBgTkWBYAA1IBEYHo9tsYbH5QUH5lUcCAbhFcnufYbbY1us3XF5woG5qQCCgXhCsr2dcn5sizU7rhw4jq+x9udqgGDiHpDsb6ccH9tirY7LIw7MURUQDMgykqZpvtbyPgNrJeUVB+anDggGZRkJxl9TecaBdVQJBAMjEqSgu7zjQPpqgWBwRIIUdJYDHJOCVQ0EMyASpKCu7vAvUqkbVYYBqQeCORMJUlBVF+fXV7eqRpRpMCaAYO5EghRUVRVIzADB1iASpKCq3CMxBQRbg0iQgqpyjWQZkMLrQySFF+Dp5d0iMQkE60MkSEFVuURiFgi2BpEgBVXlDolpINgaCZHcoT9WdAKukJgHguWMRdKG8PP3u18vQ9N+Rn+suATu2/ZjXA96Xq0OyNJoliJpNzj+vPv1Btf9/fbmC5EgieW1wfHmv/c3P5f3oOuVboAg1rlIujjwehSRIIVl5Q0HUnAFBBOaiqQPB16PIhKkMK884kAC7oBgUmNIhnDg9SgiQQrTyisOzN4lEEzsFJIpOPB6FJEgheHyjAMzdwsEkztCEubgwOtRRIIU+ss7DszaNRBMUJAswYHXo4gEKRxWDTgwY/dAMEkgkaNcfL6kiOQxtVpwYMZVAMFEUxSRhFATDuwZAkEKM6pmJLXhwLYgEKQws54imdmBwafXiAPLRCBIYUHVhKRWHNgWBIIUFlYNSGrGgW1BIEghojwjqR0HtgWBIIXI8oiEOB42BYE85BD9MRuS6JHN74A4HjMjkMcsoh95QEIch9uAQA7ziP7MMhLieLr8BPI0k+ivWERCHP3LTiD9uUR/1RIS4ji93ARyOpvo72hHggkSB1I4XQRyOpsk39GMhDjGl5hAxjOKfoZGJMQxbVkJZFpO0c/ShIQ4pi8ngUzPKvqZGpAQx7xlJJB5eUU/uySSFXFE56SlAwIpsBIlkBDHsoUmkGW5Rb9qTSTEsXy5CGR5dtGvXAMJccQtE4HE5Rf96pxIiCN6eQKBxGcY3UMOJH5xRMc9qwMCmRVXvienREIc6daJQNJlGd1TCiTEEb0MBx0QyEEc5T+JQUIc6dePQNJnGt3jEiTEER17bwcE0htL+S/OQUIcidarpxsC6QlFy5emICGOvKtFIHnzje59CAlxRMc72gGBjEZU/gl9SIhjnXUhkHVyjr5KFwlxRMc5uQMCmRxV+ScCyVnbvvT075CXT3V4BKmADF+F302WAP61rGSdsaPRBAhkNCI+oeYECKTm1efcRxMgkNGI+ISaEyCQmlefcx9NwACQ0TnwCUwgWwIEki1aduwhAQLxsIqcQ7YECCRbtOzYQwIE4mEVOYdsCdQNJFus7NhLAgTiZSU5jywJEEiWWNmplwQIxMtKch5ZEiCQLLGyUy8JEEimlWS3PhL4HwAA//9O44MMAAAABklEQVQDAGCL7+uOGrzfAAAAAElFTkSuQmCC\";var ei=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO8AAADICAYAAAAA2bY3AAAQAElEQVR4AexdbZLbNhYENTnE1marlv7l+Aje1NaONgex5gZzgxnfwDeYyUESTVUq9hG8+8vaqnUqh4gHeQ9DWR9DSADZIAGyVaREgfh4aKCJhyZELQxfRIAIFIkAyVtks9FoImAMycteQAQKRYDkLbThaDYRIHl3fYBHRKAoBEjeopqLxhKBHQIk7w4LHhGBohAgeYtqLhpLBHYIkLw7LHi0Q4BHBSBA8hbQSDSRCLQhQPK2ocIwIlAAAiRvAY1EE4lAGwIkbxsqDCMCOwSyPSJ5s20aGkYETiNA8p7Gh2eJQLYIkLzZNg0NIwKnESB5T+PDs0QgWwRGIG+2WNAwIlAUAiRvUc1FY4nADgGSd4cFj4hAUQiQvEU1F40lAjsESN4dFiMcsUgi0B0Bkrc7dkxJBEZFgOQdFX4WTgS6I0DydseOKYnAqAiQvKPCz8J3CPAoFgGSNxYxxicCmSBA8mbSECnNuP6wrq9/WV/qZ8pymPewCJC8w+I9WGlKVNlvrt//bI21n8yFXeunfP/kwoXQgxnDgpIgQPImgXXcTK9//WmlRJX9tsWS2oVbu3bxWiIwaGwEwsonecNwKiaWjqqmqu4CDK4l3o2LHxCZUfJDgOTNr006W+SIaG3baOvLU0fhFUdgHzx5hy/yNo/WhSKggpRzh0MT7OJtR+B6F8SjEhAgeUtopRAbVZAKidceR0fgEFe7PTVDR0FgHuQdBdrhChUFeQ0o7ZLuMwDFAbMgeQcEO0VRzl025tIgXlWlAlaNyIp5pEeA5E2PcdoSLuwNsAAlLjI/oGnM6hgBkvcYkYK+N24uZtTd1tvaVTOab0P4mSkCJG+mDXPOLLktVMt92niR6VzGev7CpslX8+YOQ4DkhUE5cEY2KcHqZlQfuFIsLgYBkjcGrUziNm4t1l0+rpuIV8dB/J4XAiRvXu0RZg1WpPKVWYtrTvfZh04G4SRvBo0QY4IQStXgtKPu1iBrL5tRfhsyrc/Ca0PyFtSAQlxdCRWzdrlv7WpD8aovhsnSk7zJoE2QcVqRymcwxSsfMiOHk7wjN0Bo8Y37Ooy7fGwUxatjRLL4TvJm0QwBRgwjUvkMoXjlQ2bEcCh5R6zHpIuWue5wIpUPSYpXPmRGCyd5R4M+rGAh7tAilc8wilc+ZEYKJ3lHAj642HFEKp95FK98yIwQTvKOAHpokaOKVD4jKV75kBk8nORNBDkk23FFKl8VKF75kBk4nOQdGPDQ4mSuO75I5TOW4pUPmUHDSd5B4Y4oLO4pkBEZQ6KqeKUXF0hmzKQbAiRvN9ySpgI9k+rQxqq6Nbofhvb5xmde9UEPkJbkBYCIzCKJSPWlWr57vXyru7H2CmZvoHgFK48ZHSBA8h7AkcEXtEhVVffv/rl82Nbs3fc/3MsIfL/93vOzlrk5fzbYE8SuyUnersglSNc8vQK5fnkjo23bSPsWZj7FKxiUsRmRvLGIpYwf9h9D4RZ8qdqIa4TQG6D7TPEqvEWgMUleKJzdM0vgfj7su8vPLFss1JXePAvvFkDxKhA3ZLQFMjPm1Q0BJ1JZu+qW2pOqah91t7Hd6OsZmbdxoj4pXkXBhYhM8iJQ7JsHXqS6deQ8Y1czMusIfCZm0GmKV0Ew4SKRvDgsO+WUSKQKF6TOjNBRlaJ4FQVX38gkb18E+6YfSKTymelGaNziDYpXPqAThJdO3gSQDJfl4CKVv2o/yimKVwJCSRvJO1JrjSFS+arqRl9rw11tX0bbcIpXWySSfpK8SeE9kflIIpXPIrfyyhiKV6acF8k7QluNLlL56kzxyodMluEk7xjNkkak6l0T5z5XFWzds0F7F71rOK0MSN6B2zMjkcpXc9zc15hLN7f3lcTwXgiQvL3gi0vsOvLAK6niLDTodc9GRt+7WBsYPwwBkjcMJ0wstBsp92edq4uxbpfL07pnpHjFp27s0IUdkbwwKE9nlK1I1WK2uyB8qXDus3gbMl2oW4pKFTSLfEneoZoZfe8T+aOCFgzQ655NXs+fbqlxeUEk7wBtJqOOzvuQI8/pn/uh6oS8dWQoXqGaZZsPybtFItGnEFf/rmQFzR7p0p4wzLnPMq8+ESXuFP/rNw6vM7FJ3jMA9T6NdhflPmzj0vY2LTAD5Lpn/dkgxatA4M9FCyTvuWx4vg2BBCKV3sppfbRNW/mIMDf6Itc9U7xCNIvLg+R1MCR6w4tUy0SWnswWve5ZCuPoKyD03Ujevgh60stcVzto7TndJXgYkcpnGVK80tH3lzXyKZk+qycdTvImaF4hropUt9CsBxKpfDY791nm277z0eEUr6IhO05A8h4jcvZ7QITyRSpfJXELN4ypG03AVxbDzyBA8p4BKPa0W79sDNQllFFvUJHKeF5ix8ZYi7NFNAHnpXjKY/BpBEje0/jEn0W7g0iyxNfmeQrwumcpQLUB+eAWiwDJG4vYifgyimhHrE9EiT310Ci9semSxXejL3L+be2q8VaS2TzVjEleUMsKcScnUvmgcYtEnHjlixEZjvZWIosvNTrJi2q56YpUPoQoXvmQGSic5AUA3bh9kxSpfPA499lixStfWQxvR4DkbcclLhT9I3skKeJqEhcbLF7J1OMuzoB5xyZ5e7Z/c68SOepmJ1L5IHKjL1a8KviZVz6U0oWTvH2xxT8JEjmX7Fu7s+mdeGUM7JE5Bu3FmOm+SN4ebXv9/ud1j+TPk4qC25Dh+bmcQ5Drno25bLyZnGuchW0kb8dmSCFSiSlFjbpir9uc+4z80X5V6f1ylzff/AiQvH5sTp9Bu3ciUjkSnC41+uzf7j5eHu/RmYQlQP9on+LVGdzzJe8Zw8c83bh1SJFqg15J9e3dx9W39//5ZKtqfbxL+FrP/+XuY43C0V14rMV5DtZSvDrTOCTvGYBaT+NFKtxifzFYyWmebPSR81LPX1TVJx2VJQlkay5AFK8gaJ7PhOQ9j9FBDPi9SLBI5YhrzKUJfFkZmZEjsFwUkBcijr4n2pHkPQHO8SknUlm7Og7v+R3mav71x/+q0BNM3K3dMgKvUQR27rNckLZ59/7kumcvhCSvF5qWE2iRShRa19lbijoICvii7m9lbdend9QXEaN1gDmwC5KUpU+cpHglQBxvJO8xIp7vSUSq10tYJxf3t18Hr6o3nqpHB7sLkrU495niVWsbkLytsLQEou89Av+upHGX6xarY4IuUa6zKxS87pkrrxyqB28k7wEc7V8akaovOfYzhz0JUgnXw13etwl67EZf5LpnYyheHbUQyXsEyPHXJCIVcDmhiE393OW9Cv9+9Wqz97X3oVvqiRavels1nQxI3nNtmblIJeZHq8uSpm2DEnevANi8XvJU8UoVdTnkRvKe6AOTF6kO6l6hFlcc5OrcZ6x4tZJpTH1QyEy/kLynGn76ItXX2lf2Udcmf/0OPXgSr1AjuxKXo680EMkrILRtcnXXDqIdpe10l7CcRarN/69eJRl5FSg3+gLVdWPtymkRmvmM98WM6+6tuhC3lg7SdcFDe75A5RUpUqmxlQXek9UMW3YnXhmDu0Bw5ZXhyGtaXvgnQd42nbelsLggXUklKVAilWRlHlKOulrA1x2oskuesxevSF7pBftb444hybERtxGmuNqnXwvtm9zr+MsAo+7WQMFhY6oK59FYcZ8/rJFTm62pRXySvMfNhHbHgHM90EqqrzWWC8Et+t7u18z9ByqMbfyno84ocVWbiEo0lcgk715LylxXO4J2iL3QXodZi1S/vXkJ8whCUXKjr7W4cnX0/WWN9JRCqzJ6PJK3aQIhbuYi1UIvLI21/T8scuVTpDngH+0bg/aWIuszVnSSd4s8XqS6x4pUdrU1FfC5GWPUPbAbLV79+hMSnwNTc/1C8krLJBCpjLiHsJ/EySgJW78s1TUiUi31c8xd8NmIeHUPs6Gqbpz3BMsw/4xIXm0j9Ppla2HEHUukUlgG2HFzX2NUq4BOLUzmr9mTV67W2uBIwQP2dyUJfu43vru8Rwg3+gIvdMbKraMZiVezJ680OO6+o3ZM4EqqxWLxRrNE7XZEkcpbh6d1z1x55QXIf2LW5M3570qmPupuu6QbfYEXPMm3bn4NJofT3mZL3txFqouqWiO73hDrl7va26jyuNFXxKuutrSlyzVstuSVe4M618W1i7VZi1SDrV/uiij61tGHNVSh71qtlOlmSd7GraJIlbJnRebt3GfsuufJP/NqluSV+4vYqzJwzjYLkcpPbOy6Z/QtQL/do5yZHXnl1hCWuKLgNnO23g04F5HKB5Qbfa1F3vud9H/9jkFeX9slD3cilYUuM1SbYZ1NRCrohSVnkUqBa9vh654nLF7NirwpRCo3WrT1wsiwZiUVcB5e3WcvUvkwonjlQ+YgfDbknZtI9Xn1EqZ+7/cYmXa4J1jI541i6ryZ/QiAY3dBlOkIIKunLCb6dymzIS9Fqqd+3PXdkfX9z5+Mtbrfyuetw/TCrq8lXIncNW9POth0RPKv4V6XZDr2NgvySseDziWl06J+7mdyF6kEu1rIuXZkfVr839Zna8HkTuLC7p270ddapPdwmcJLaANjqLDJk9c1mLXo33rCRoWcRSohYy2k/SSdMWwubu2tI7okgGxc93wSxsmTF+4uVdWtGxVOwhp28tu7j3pRCSNGWJbYJ0F2e0AB7PaMwxl4D10grOWChPXCJNOxtkmTt5mHIcmxkQ4FGXXVXVZXE9nwn1ffwX5k34yg3bAD3p5x99DR4tVEnjg5afIKOWBzMEcy4JMgE6ykunU2At7cVMOYbsQ17lU3ebgvgW+nokEumE0BtXxi+4VkOMY2WfKKe6QNpA2FwnU+T4JEPNBt8QjDXrydjcy9ceKVaCDgiwuqj0XlM0nyCnFVaIGNRA5R4MKBzEWqO6kvjHiSF2ajePUMx0mSV67S2gGfVbZzAFCkyvnvSpqLnoponaFKldCNvmjxqvAnTk6OvI071Ge+dtz/YCKVZmxz/ruSbuqyVuv5/rjYPA/sF+LEK2MeDOolwpq7YKHyw+UTlNMiKFZJkRDztf36AkWqZv0yzCWVCwHs70rQynxDtH0kMcfA6YsYpG2h2ogclrdNirxyFdWG0AZBtcR8RCoZhVCgicp/D8vrKCPnPss05ii4+9eC1z1PhrxCXIpUHbuwYIe96P1h9Ef1Ha0JSqb5o9zyGr6QJ6gK/SNNhrwUqbp1BiEu+qIH81Z8NXKjr7XIe7+wVWE+m1OET4K850WqaOgoUkVD1iTAKsJNps8/+KN9YyZBXnF7sLeG5iJSPf27AE6ZryrYr62e07UlBCxeiReC7UctJiODiievAI6dr8mtCJRSquuXK2uRi0Wwf1eCVubTz3UP+r5zn+WCcRDY50th4lXR5BXioudrxgDdPvT6ZZnXw+Z5gh32oickQl30IvkHw0TKLUq8Kpq80pmxbg6wAyYYdR8+X70C3IIxRoiLv+gNPOoK0dwGH32NuWw0I2r0sgAABSFJREFUFJd/zm/FkrcBGDdfk1aSjgBb/H4B/ruSL9bCbINf9IBTDWmGLhty9DWioahX0sWOQdMUS144wF+qJQr5rFdSoUUqBa2qUPdcNbfoXS66Wj5u2aQx+qP9OtqQgRMUSV70Uj7BHHZvMoG7nLdIJeDJSD5qR3fTAGOQXlhtjHkje9ZbkeQ14MX9OYtUVubhqB4knVzdQe2YqCy3+Vxe6xMkP6zvpIw7vbgOsn9Y30h5N3Lx0OdsmfjXiRTWrk6czeJUceSVxpqTSIUddbG3rY47cC0kWrldL65D7Fof3Y8twXxPcZHDWNbkUhR5nUgFviLKfAkmBIlIBb2wiEgFm4fDL3pNB5ryh2CWNYGLIi9cpLIWRlyd60pHhs27bFXhfu6nD1yz+buBgl9e2x+G5DWAl86hJBsYOSSvh2Z9rBz238CjLtpdhnoE/dFiDggEsCMvwiJfHlX1xneqUzhwJVWCUReyGENxaVw/5EVPs+WeAQLlkNcYXAcUBRe5lA+8DBI76j4+4nAzM3t9Y/T+scn1VQR5G5cZhiFSpNJRF/njA8kLNg93gC0W/3KffItGQPoJyRuN2nGCxeLvx0Gdv1uLJUdnQ54ntCJSwf9T11Koeo50UAhyxVZQgbGRihh5pVK17IgNKlKpQd8Y026biX5h3WUp3t1ak09uHRCwVh+10yHhcElKIS/GfQGKVOgmsjIPR+dpMp+zwesLzBB5JwJo1kFWZZD38fF/B1Z3+SLkQIpUWxNAbi581FX7cp+zqY1Z7jJ9ydKuI6MKIe+i98grHTnlXLeXfciVVEftq1+zn7upkRntD9JXsD8xTFS5RaJ8odm6EVNGzs6ZAn/u12ZDH5dX0sJWUrXZZrDPeWot4mxgOREe3v3j37AlqamrXQR5GxC6XQ3FBXLkbzJJ8fHbm5dqW4cRrrpv0qYwy+Upo8hGCIx8jpbLd4JvRRFX8S+GvE0nfCFGb2QP26y9knRKrLD4PWKJ66tueTCBdcT9vHqpaXqUGpz0RxLYi9XGiGdW0oi7rUkx5FWDhYgb6YRL2c+NJE8N8v0PsGWGWv6p/ferV5vPq++WSkqJt5Hdt20qa5epR9z9whU32d8auZhJePAFRuJOedtoPxLSvkjtmaUCsSjyKgjSCTeyvxXgX7jOqHPh3X4rjVHJPlqDKCmFxC+UoMZUevFQsshe3WuYngMp1Cb2pbc/BBu9+O2wM0Zsc/vGGDPl/UH6zL3suz7yevnWDP0Cllccebd1FwJvXGd8vVTXeLtn0xhKUHWLhazLp/3llYZt7R/z8wA7EWiU0LK/mPi+lHprP8mmj/TtA8WSt2/FmZ4IlI4AyVt6C9L+2SJA8s626Vnx0hEonrylNwDtJwJdESB5uyLHdERgZARI3pEbgMUTga4IkLxdkWM6IjAyAiTvyA2ALJ55zQsBknde7c3aTggBkndCjcmqzAsBknde7c3aTggBkndCjcmq7BCYwxHJO4dWZh0niQDJO8lmZaXmgADJO4dWZh0niQDJO8lmZaXmgEAoeeeABetIBIpCgOQtqrloLBHYIUDy7rDgEREoCgGSt6jmorFEYIcAybvDIvSI8YhAFgiQvFk0A40gAvEIkLzxmDEFEcgCAZI3i2agEUQgHgGSNx4zptghwKMRESB5RwSfRROBPgiQvH3QY1oiMCICJO+I4LNoItAHAZK3D3pMSwR2CAx+RPIODjkLJAIYBEheDI7MhQgMjgDJOzjkLJAIYBD4EwAA///Fol1bAAAABklEQVQDADi0p/r9hNzAAAAAAElFTkSuQmCC\";var ti=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAMAAABrrFhUAAABOFBMVEVHcEy97COy3y1yoi603zhfjlp3pTJ4p0mpz27a6tcuY6Gz4S9pmS297CQgV50dVJ4nXKGWuuqdzCey4SOevuudwfSLuiVqmNdThMeSwiX///+exPdfjyuZwPSLuyRomCqOtuy04x0lXKZjkyqw4B6OviRxnNaVu+6BsSWVxCKr2h+byiGYxyJSgsKezSGo1x+SwSN5qSdKe71tnSm76hxxoSl1pSh9rSYbU6B+SBgtY6yj0iG+7hyHtySBquGg0CCGruSEtCV8pt13odpqltFZiMdlkc43bLVfjcqKsee56By35h2l1SCt3R5Ddbk+cLU0aK95quuRvPSEsu9roOWycCVdld9NidjBeyk4ec/RiC74+/Hq8efh7cXL2rJ2OwHO3u7Bl2+ty3+tzNbRtZzJ6HSWumCTaUlth7IzAAAAGnRSTlMA3GegQkJuEicObYnMry3To3G00EOj1K3c6e9b4CAAABpASURBVHic7V0JQxrJEsYTEI3GJCa7iqCgEHVRHwi7ind2s3hsEjVegBqJ7v//B6/Pme6ePqZhEHX9BpjTnq5vqquranrGUOgFL3jBC17wghe0HeFOV6DDiHZ1d7oKHUW4q1zu7XQlOomhcqHcFel0LTqHoQJA+U200/XoFGIFjKFOV6RD6N6j+G8awu79vX2Mva7/oiHsndp38abTtXl49E5B7E8RxDpdn4dG5M0Ui3RzfWG496m2nXBXWoBtTxDt7R4CXtRT7UBiovzptM21DAPhC2WIJ2s8ut8cCnjjNyyKdg/tQ/8JuRBdba1lW9F9MAdxOEfhzxnojU0V9goUe0+YgFDvmzkOflSgd2h/j8NTJiAUGl3kYFSB3jf7AqaeNgGh2AELg0ELDwG/ATsOeAZ+n7wHFVs7WENAM60KdKenJHiq3aCDGBR8cxP+rK1pLmdkKD3l7TrT6dGHq2qbMLqJkIPfnNIX6J0DHWUa95dpt+tMHz59Fzo8lnOhup6xOdFroHgGgXRkYd6FvCeMzalw8FRjARa9CwDz8wtwkl5Qobdk8eZZ5BNHFxyMSXbzfSWHzafeC2KEf/lIseS9orE1DZ6+DUToX3LgaQO9uU011N3GE8PYDMLSzIzYBiI5HeY7Uts2oHdyhoLvB8Kj8zo8fTeIomeSglfq7gUtnksLAJq+TjDZw24Of9RhYewZ3VoepQxwWh2DdhF2Dksfl/AXb1jCa8/ADXQQyW4jZEvMVe2bEbGEf/Hsl2ekAEAFsgDb4NPnbuvxEMDhOSkAuNrZbAlykO13NkWQVVyfVOA5WQCIsRKGawX717Xo1xT2FNG/vFwCU9GxguGxbTXW13t0hT1FRIrLCIPOhqwWz6wBAPQUi5CDorNeQmahVMqiicyyWbzy3BoAQF8Rg17awZIGz1D+UDgPpF8prpCIOEyahAylQX1RTxQ9KwjEEehDohbJx53AWvHZGUCMvpV8Pu8Q0F9UYXnw+RlAhHAegRBA9AEAtgs8x3im1x+ghyVgcEWB5yt/qD+RSOQTlIC8HM/R/lNEEpABQoBc/MFnkQdXITwIGcAEhKEyeND/TM0fRU8ikUo5BHjQ86wvP0R/CgBfZC8Bg32Gv34GeAXknyAEpHj8F8QHgATgJY6Aif+I+KDvm5igbv5ECk5A+InB5276GPRMTFA/B3ABMdj/7C0fi76JCeroAC4Ge/r+O9eeoM919IzNPhyO9PX1I/T2RcKPmqswqGgPRH9A1xQU2DM4VlwulWCOCGYJx8ZG+x/jrbJwpL9nbBsmsgBQML8y2CINoMTBlSLOFGACsjBLur4+OTMzFut9TJoQhcKvb8MbHkT+ZRjQg5BucLBJEsL9IEqCETLOIDoqAOVH95iXxmKPxGxGusdAjSbX1+EdL5jJJPKTuB5GNj2WJj7Sj2JEnB2QEoDvJY52vi2Ee0d/AdLDOzuEANoCkAKsoNAOObi+LX20rycFIiTCgEoDIAELC/Njnb1vFon9gu5fIvl5ApYFAkD0AzgwPzoZ7R9MJYj8eZUGTDoE5OY7qAWRUXQne4bTgKxrA3gCIAWpCQMH4X7gFOKjgfj5FWwENATM5zZzo52xBZHRBTTeyyVgXWwCgIL8iqsBCeLwqosEThERP8FqQFFHQC63Od+BdhBBg/4QAUscATINyDsagCiYkPr8oOlP4CMoASsmAj4SAjbXHloJojE47hUxICOAsYJIA4gKYAYmUjLHHzT9CSR/IuUqAFSBoktACXlCggbMIwIONh/UEnQv5HKIANoEZqQaQFUA57xSVANSJPhxrEG0rx9FRClGAYgOuFYQ3TNUErB2cPBwYykjozkiv9MEZiQawHQDCbYJYPkRB8A/AJ7z4CDdQORPuSrANQE9AYujD+QadufgiH+WAZMGYApSCV4FPEjxKsAaAacbYAlY+riArSAhYO7NQzSDyOjmmksApwGTKg1I5OUa4GEg5TECUg3gPCFkBREBi3Pmx7FaRm8OPfniaQOMJ5RVuIKsFZSSkGI7AVcDDK4gS8DcXLsNQezggCMAy7/kaoC8H8Spfyfxp9QBrwrgO4ZyAj5SAjZdAg5H2/qajtiiS0CO7QaJBqzjYMisAWYbkKeuILEBJY0nxBJw2MYXlUTeLC4KGuAxgoIGOK5gnjECE0oVEI2gNBjwdgMcAYdte0sFlB8QcCBogOMIyAjgoyF/vUBCcAWLgiuoJmAREdAuBuATwA4BmxwBS55oSHQFOUdAZQRdCrD8ibw0GOAJwG0AEnCACUinDw/bwUAEPgNOCFgzEoA1AGVEsAb46QhTnC/MNoFlMwFrjgak01NzwTMQWZubYzQgl1P7wkgBSm4TcHzBlCu/igK2G7DTAI6AqamgGYgsHh5C+WUEeKygKRw0aABnBX1qgGMFKQHpYF2iKHwNxBxhwLUBoivIEFDi+0FqA/T94IQoPqcBy4IruCRzBCgBweoAkv+QtgHREzIEA3lGBQyekOMICJ6QzBEwEbAfJAMxaFkZDUAEzCsdAUYDipwGpAy+MKFAtIIKX3hJ4QkRAvaDe3kdfBMMQ8CByRNS5YX9a4A0HCypNSDHa0AaEbDfFZBP2Iu6VrcJUCMwzxkB6gv7jIa0NkASDnqSYp5oyOkGHAL2gnnpQrRryiFA1IB5qSMg0wDOBqgYEGwAEwws6wnYJATMuUYAElAIJDYcmkpLCNiUxMOytGiRswEGX1jIiWnzwjN8TmgNp0R4Avb2AjCE3bBT9doAH02A6wYYV3BC4wh4o6E8pwElVWJ8U6oBhdYNYRTLn5bYgJwxK1h0bg4K0ZCyG/D0goIGSAlgkmKuFcQaUGj5sfuhKVYDNEbQ5Aj46Qa8NoDLCcnTogsSArAGAAYKhRY9wu4pkYBF7Ac4GrCgIKAkSYxTBtQpISYadFWguKIjYF70hNKMDSgU9ltrBF37pAlIPCEtASZHQEZBSswJeTQg6/GF5QS4TaDQ2nv4Yvv7rg2QBwMeAnSOQMrKERBdQTEvrI6GHBWA72FroSeIdOFXWSk1QH1nQKcB8uvv6QbcrKAiGpqRETDnGkFMQCtvM47t+yLAGw5mFUMETIlxhQZIs4LKvLCgAeXm7WAkvb/PtgExJWIKBhRDBPyGg44NKIp5YUNalNEAaATKTccEMSK/1BPSNQFpXph1BJQ5Iewmia6gGA6a8sJcN1Aul5tUgSh+H7C3CUjywktcXlimAawKKI1ASuIMm0fJOGlRLinmEFAoN/kuwu49SoDCE5K5gtsSR8AbDJiygsL9YQUBS2I4KHUEoAo01RFEu/b2NDZA5wtrNMCJBzUqkJBpgHqUzAIJBmQagN5H2uQ7eXv3HAK4eNDOF3ZsAM0LJ4j0qeL97dVVvYZQv7m6ur2/z6eIFghDBPiEQFZJwIGsCUANaModHFIQsCgQoPKFhZyYowFAwpXbq3r1VwQyI6jWAQ+JCTJSinUFl1U5IdYREDVgn9iAcrmJxEB0b0/eBEQCVIlxaV44NZG4v6rxUosALNyvIEMoGgFVUiwnT4tSRwCgCTPYvefRAMYGmDwh/uYYVYGJieWrmlZ4h4Sr2yKgQBoMwCYwacgLpwUCyvZtYKjAE5BmbMABmxdW3BnwDhRLJe7rvqQnqN3e05tD2rywJxriCUBNwL4NRLoKRAUkvvCBkBjXEUBUAGi/nfi4MdyupBKqflA1SESqAdaJke6CSgMkWUHPcFkmGMAEJBL3/nTfA8BB3mqUjDccREbAtg0McQRMSaIhGQGSnBgiILFy1Zz4ELWr5bxqlIwnMS76wlQDrN3hgk4DRAI+MsOEuH4Qh4P5xK3e7usB/hZ0CytmX1hFAKLA0hfqdQngUyKUgDVBA5R5YSB/sYXLT0mo3xaLegKYrKDXF7buCGM8AVwTWBS6QcV4YUpAvtnWLwBSoAoHc0oCCk4bsIuJhzABXldwUUiKGW+N5G8DER+idgvcK2kwMM/7wk5WcJ8hwCoginYVOCOgzgqa8sKJ1tWfo2B5mdWAGTJkXuoLt2IFI4WC2Qr6ujUSqPyIglKJbwIfxWDAmxUsW1vBbt8EqFxB7Ajkg5YfmsP7UlZGwJqaAPtuICYh4FBFgDorGPj1x7i6z25rBokoNKDLZjD9EPrXLuqEgDktCjWgTfLDUGl920yA4AhY5QS6ykQFFFlB/TAhogHF4Oy/B7VbxIB6lIyQFrXsBqL75XITBMxwwUDxvn3yA9SX1n0TULAlIFJQEEDbgMQXRgSsM2nRbZX/E4xfBNvBpGrEuCwYsOkHewtsE+B7Ac2tEVYDSsvK4PcyKNNQu530RQBhwCIl0F2mGuBNCIhpUTkB2WW1Abi8/NlKbMSgejUzw7uCIgH7jA2wICDGEaC5M6DMC5fu1TJeAgSlBNXbGW1WkLUBFo5ArFwQbIA7UIzLCsoGiiECiprsDyQgMCX49UqRFGN84bK1Kzik1wDVeGGXgJKuB7zEsE6QKVC9/WhMixYss2JDjgYIVlBPANMEdNL9IAz8DIqBK9QGvASIrmCrGqC8QewhQKsAVAMuL39YdYg3440bxa7a2oI5MW5BQPSNVAN0wYBAgFayHw4DNkpQ3fp99fPFzo3cdtx5hggwvYB1TggQUEYU8GlRfwRMrm9n9T7gJYOf/pWg/vnz59XV6YsNqR7UNzWJcWsCusq4DfhPi3JZway+k2M04PLcokOcBRqwevEZcJCR0Fa9y20GSgDTBDxZQR0B8PFR/WW95HDuu0NsTEMCVi8uVldBU5AyoA0H7QgQ42HBE9I+QGyIgn6csxrgXwmqXz5j+S8AEatnDQ9x9cVNeTTULg3wjJLBGpA1hMGAADSdY/HPfSvB7OcLOOGf1c9ncfHPqnebirxwwZaAgmgD/BIAVEDrBGACLqnwhAt/XlEDCQ+VAM7gQlJsbHcuAWkxIWBBwFXZ6QYEAph4eE06Tgq2AcP1/HEO5T4/dxUBwI8S3BDBCQWIjh2BgjpuA2mqAs3dGvlUV7mCh0I87E2MT65r4iBCABH//Nyl4tyHV1T97cKDz6I9rKUXRVewbHuDOPphtnqnywurnp9FGrBtyoT9OKe45GZmr2jWSwDELk/BHfvo2J7bDVgEQx8utn6t+yXAkxU0GXWXAAE/TM2gIifgQnCO7hb5hyYKtuFw9P3FRQaY1D3J/VEVAYwGmAyakoDzcwN3NyoCLi5mWQrqUkfAQgMAARcNyICCAEk05OaEzAR8p/J+5+bfz79/19tCQMCZO8EP+sI1XgtqU5KsoEVG6D0sFJRXlybFNMEAGi5rsmaAAGaCP/QXznX0Vc+I3Ojj0HCBqeDM4d2hJy9sR8DF2Z916FmowkHNrRFTS/7x/TsRnOGAzrRKUP3rTAWsDRsO+dU7z50Bi6zwACrzT1ha3SotilxBHwQgafGX/tLZ9+9qr6g6qySA0rDlUFBPCxpgQcBbXNynGqJyyicBxBeeMciPNMDBOT/HM6US7BgIgKhQCupCN2BxY+Tt2ekZ/OygitS90dBiYATIofKKNqCEp/h7enbmLJw6EwSNEWr7XFrU5s7Q2ekpKO30b8RAFSiBbsC08MxAEASolKBCKga/cEYXmM3w92wcEwi112kCexY3R6O4IFAUHt4FCqKPzhnfIxEMAX98l+pA8tSIM/zToAw4TcBqpOAHpzgywA0YVV1WkPWEJo0E/GHEtcIprJgJcHjA2UPIAPaErMYHvCfFnJyeUgbqHhsgJ8BHL3BtEv8PVVhQobVCX36RrJ/gHzD7htyCO6oBViNE3p2eYICC6CDH+t3hoegLS0aL+nCEDARc/6vsByunpFYnpyfuEq3sCVmhP6cVSEGdaIAVAa+Zk5xe0Ut6l1ZpAJcXNrrCegJU6g9Q3WDrdcJIDpZm2XW6FaZP61gDrMaLv+WKcUKU2t2cjoAln7GAjgC1+kMCvp1Y4vQEdAh1+2fnwrsn4FzodPDHDdLq6UUjAcZwWEPA9b+6BlTD9QGfHfi7Q5bwAt1O6oxmcDppVKuwG7R7cmwX/Cn8oB+GAeATLC4agoHmCbjWqD8m4But1wnz+YYkddfA7w7dCrdt3UAG7MbLv/vG4aTh1qJ+aHh60pgRUhFw/a8pH3BC6rPzTQ2y74TZdFK5KZet5A+9Fotlqla9OzjwEuDGw0umnKCCAL36Q4xr5DagYfnIyNtv37bwXx6jDyiBqUjtbg0bAdkwIWM/KCfg+tqcE8x8g9XacupEAbds4V1wB/o9pgKQYy0fGop+Oxbwjb0TU60vbrqJcTEpZlBkhQaY7w/VxDoxtTOsHx/bPj275T0Hdy+qere5qXh+1pQWlhFw7WeswI2aACMqts8MvRNLSAIGuErW71QPEBtuDPz0EKDt/F00WiBgy/YdAq+PkzyOj46PhdvS9bV5+SARvSvk0YDrP1RDPzhUk2KdLPDOUv5QJHmUPDo6PnK+cD1Z4UWrQgqs7wyIGmDo/B3Ut5JJWBP2I1vyroM/syYgWjlCgEUlyRwuCrLV7uYXvGlR/f1xngA/1h+jkXRqRHEsLiW9e9Cm5GtbAkLvmNLYosTb8rW7hQXxDnlWZ9GqHAGa0E9ALSOpjW+8tSbgraqohihd/fbjR/6fjejHyLAE+FV/gCs7iQVYyx+KHsXjcfiFP/gDvnAh47lmmAKXgG1tP+AScO2j86eoZo5oXejErsWdRWavOyXtCQi9i6uQufIMzQAULLFvEtHptUOA2fdlcHOkrE88Tq+VEtY2UEtAPO5pBlALZmacEePaUTKEAFPox6Pa0FRnnHzZJX6vvQ0ERgD9LZjgh87IcrwhucT126VJOl5YN1QSE2AM/XhcHeEqkLrQqtCNdIdzDKkw3W1vAwGS7nl48cFX0gx+hc95z8Cnudb1KoAIsFJ/aAEcwamkcaY+4+McOXHuUIBkU++SesdRPS4sS5UAtYRt9I8W1FYAEOC/8ydo8MJ6KuPdyPHRjAmAbWBch3hDpgRQDe7Xs7oB8z+vLdUf0JrRVsWIplpAKKQnQKkE6BUo9yWlCvz0Ffpx5TVak3+8ybepvTOVq1ICWOeaUsif1g8KtCp/cy0AtAFz0UolCBI3JlU0oZlOEMFPy8v4fDNQ86i3Kv940+9VNbYBCE07CAQtG4DxZLPyhyJ+uEduUfsoaF3+5luATxVAblHb2kGj5QYQb+HNwq+pm+k4xcyMTNQzbAsF1ZujceF8ykl2HPw02wdARGk4geRkQ4/xOBuAwIV2mAIxBBrnIx0ictytC6mNe3GaDIQcvONOypRKNtN18DlKNoLWghonyrh74vH4OFsvpzLeaHA8nmlFfhQS+sbRUbANoWZzciVaaQGgDeiyAjIESMFNBpbnOQHz66tCTcYBjgpk4hnwcSe67v3g6SjTMLwx0h9q46hM4ZTemrgr3I9zVGsKAIBOksmws7g7dz7sxowkYWR9+ePkhEzxzNfZxyxxlaEMtaoAoCfMMIhndHD3JjM3LXFQG09qz8QJra1VpVX5Q9GKuSpeJJMZ5aPORlQbGR/y+0NLfSBRgSSSJ4M+sGL0myHbMu7OZDJJ5mixoXjUWX/1G8kkLQ6f0Tmhc66Mu8s9hq8J/ivre6ISDYgmsTi+IB4Yt7WIQPmDRAAKAJyhVmpwfJwc920PajeZSiUo2SEqgfyzrchWElSr4v6wH88kWalUMoAEgyZUazfxChLfUwqZ2BN6F6R/EYgCABWocEiSrxW2IAkqFqo3N+OZrS1zKXanTW4E9N/WonzVtsjXCluVra2NjQ3IQ+MGMIEBlhrjmQrc4Ud+y9NuBaQAQAW2ggQUFw/pQitbG4GWzp4osH/BHAV1RNXk67ohmW2wB8lE22CP2pAfI/mTDcnqBrPBUw4gNjAFAL7AxhPEbnDyh6K7Gxs7G+jLfjboL7eJru7IamWBHbd4/uTuCekRO/wXb2s5CmDxeufJ4X2Q8odCs7Jz7DK//DYzduGR/g72HrUr3cWvBPYvVzHe7iqxo96lwU7zf6o6N7cSoAXEeN9qXR8Ws4F1gRTRWQ92vau79BMkdp1zKU4hWQ/UAmK8Dlaq9iJgC4gQfT/7CUyzzK+z9omuyycFlDvYIz7RM3gL5TYz1Zj99ClgC4jx9tNTwV+BW0CM93+1qb7cUgAnaUcDgIh++Otx4hO/+HdbGgDE2787JqMF/m5TA4B4//cTQLsaAMKHTktnxp+Bu0As3v752PFbG1wgFq9/67SEevzW1gYA8eG3R40P7ZY/FHnUDHxoWw/ooq/TQuow0H75Q6GB/z1atN0AQERDHzotpwrtNwAY4dYY+CcgcT3lfrB5UU5L6PvnUaLvoeQHZoCc8otQhS/SRWt8ERa+OKtfpAXjTQ9iAB0Gvpjwj/GIgPGg8gN/6KHlM2HkYeUPhUc+B4kvLR74ZeTBDKDDADjtV7cGX7kZXfiq2sge/hV+vjJrwoK7Kj8Q4cHlBwx8fTT4Mvzq4eUPhV51Wm4XHZEfuAOrq6tf8fcrmugP96Xb+N3OTvKn3jLEI9hjv/J/2CH5QWe4+ijwwB0gz8C0U41p8mU28RumV8WVafcod+c0f5BmE1no2PVHDEyvThOsMl92G92wyq6xO9AeZ/Oq8Bd8savsZrzWweuPGZgWxBLE4ERlFoZHRgYgRkaGhZ2rbhHaEvC3o9efYcAGq19HBrh++9WAy4IlOi5/Ewz8MyCpdfjVQDMcPAL5IQO/85PzmXZndOVrDwhaFW7bK6AH4p9Py9bo1Bn/x4sBptJ8PXk+gPgD+pg9PDDMcyeUyH8ei/zAI3JrRYAq7Kzj5ekRPxmLVyP0z0gJbCG/s8U+dPynw6thR3SGBW5teMTn9QoDCvygw90fjzDLgAzDAzbh2qsBQ3G/P5rm70DHgO+Lz5Y3MKwj4TGpP4Xqqo1YXXwGYegeyIt8bJefoH+Yb/+/Dzdz7XlAFkaGXW0ARTZL6EMAXrNhp6KvArtQ4VcOgiryBS94wQte8IIXhP4P4nVznqPTxGMAAAAASUVORK5CYII=\";var{TabPane:Mn}=s.Tabs;function si(e,t=!0){let n=(0,r.useRef)(0);(0,r.useEffect)(()=>{if(!t)return;let o=document.querySelector(e);if(!o)return;let a=!1,i=!1,l=0,u=0,c=0,f=0,m=0,d=w=>{o.scrollLeft=w,n.current=o.scrollLeft},g=(w=n.current)=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),c=window.requestAnimationFrame(()=>{d(w),f=window.requestAnimationFrame(()=>{d(w),m=window.setTimeout(()=>{d(w)},80)})})},p=()=>{a&&(a=!1,o.classList.remove(\"is-dragging\"),window.setTimeout(()=>{i=!1},0))},v=w=>{w.pointerType===\"mouse\"&&w.button!==0||o.scrollWidth<=o.clientWidth||(a=!0,i=!1,l=w.clientX,u=o.scrollLeft,o.classList.add(\"is-dragging\"))},y=w=>{if(!a)return;let F=w.clientX-l;Math.abs(F)<4||(i=!0,o.scrollLeft=u-F,n.current=o.scrollLeft,w.preventDefault())},k=w=>{let F=o.scrollLeft;if(i){w.preventDefault(),w.stopPropagation();return}g(F)},E=()=>{n.current=o.scrollLeft};return g(),o.addEventListener(\"pointerdown\",v),o.addEventListener(\"click\",k,!0),o.addEventListener(\"scroll\",E),window.addEventListener(\"pointermove\",y,{passive:!1}),window.addEventListener(\"pointerup\",p),window.addEventListener(\"pointercancel\",p),()=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),o.removeEventListener(\"pointerdown\",v),o.removeEventListener(\"click\",k,!0),o.removeEventListener(\"scroll\",E),window.removeEventListener(\"pointermove\",y),window.removeEventListener(\"pointerup\",p),window.removeEventListener(\"pointercancel\",p),o.classList.remove(\"is-dragging\")}},[e,t])}function Zl(){let[e,t]=(0,r.useState)(\"quark\");si(\".account-tabs__nav-scroll\");let n=[{key:\"quark\",label:\"\\u5938\\u514B\",content:r.default.createElement(st,{qrcodeUrl:\"/quark/qrcode\",cacheUrl:\"/quark/cookie\",checkStatusUrl:\"/quark/check-status\"})},{key:\"uc-cookie\",label:\"UC\",content:r.default.createElement(st,{qrcodeUrl:\"/uc/qrcode\",cacheUrl:\"/uc/cookie\",checkStatusUrl:\"/uc/check-status\"})},{key:\"uc-token\",label:\"UT\",content:r.default.createElement(st,{qrcodeUrl:\"/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\",checkStatusUrl:\"/uc-tv/check-status\"})},{key:\"115\",label:\"115\",content:r.default.createElement(st,{qrcodeUrl:\"/115/qrcode\",cacheUrl:\"/115/cookie\",checkStatusUrl:\"/115/check-status\"})},{key:\"baidu\",label:\"\\u767E\\u5EA6\",content:r.default.createElement(st,{qrcodeUrl:\"/baidu/qrcode\",cacheUrl:\"/baidu/cookie\",checkStatusUrl:\"/baidu/check-status\"})},{key:\"ali\",label:\"\\u963F\\u91CC\",content:r.default.createElement(st,{qrcodeUrl:\"/ali/qrcode\",cacheUrl:\"/ali/token\",checkStatusUrl:\"/ali/check-status\"})},{key:\"guangyapan\",label:\"\\u5149\\u9E2D\",content:r.default.createElement(ld,null)},{key:\"xunlei\",label:\"\\u8FC5\\u96F7\",content:r.default.createElement(id,null)},{key:\"yidong\",label:\"\\u79FB\\u52A8\",content:r.default.createElement(sd,null)},{key:\"tianyi\",label:\"\\u5929\\u7FFC\",content:r.default.createElement(ni,{api:\"/tianyi/account\"})},{key:\"123\",label:\"123\",content:r.default.createElement(ni,{api:\"/pan123/account\"})}],o=n.find(a=>a.key===e)||n[0];return r.default.createElement(\"div\",{className:\"account-tabs\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"\\u7F51\\u76D8\\u767B\\u5F55\\u65B9\\u5F0F\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-list\"},n.map(a=>{let i=a.key===o.key;return r.default.createElement(\"button\",{key:a.key,id:\"account-tab-\".concat(a.key),type:\"button\",role:\"tab\",\"aria-selected\":i,\"aria-controls\":\"account-panel-\".concat(a.key),className:\"account-tabs__tab\".concat(i?\" account-tabs__tab--active\":\"\"),onClick:()=>t(a.key)},a.label)}))),r.default.createElement(\"div\",{id:\"account-panel-\".concat(o.key),role:\"tabpanel\",\"aria-labelledby\":\"account-tab-\".concat(o.key),className:\"account-tabs__panel\"},o.content))}var I=bt.default.create({baseURL:\"/website\"}),qt=(e,t=\"\\u8BF7\\u6C42\\u5931\\u8D25\")=>typeof e==\"string\"?e||t:e&&typeof e==\"object\"?e.message||e.msg||e.desc||e.resultDesc||JSON.stringify(e):e==null?t:String(e);I.interceptors.response.use(function(e){var t;if(e.data.code!==0){let n=qt((t=e.data.message)!=null?t:e.data);s.message.error(n);let o=new Error(n);throw o.handled=!0,o}else return e.data.data},function(e){return Promise.reject(e)});s.message.config({top:\"40%\"});var Jl=\"https://o.alicdn.com/captcha-frontend/aliyunCaptcha/AliyunCaptcha.js\",Ir=\"yidong-aliyun-captcha-button\",Ql={2:{prefix:\"7elm7k\",SceneId:\"1rmw421p\"},3:{prefix:\"7elm7k\",SceneId:\"kcx16g7r\"}},Rl=(e,t)=>new Promise((n,o)=>{if(document.getElementById(t)){n();return}let a=document.createElement(\"script\");a.id=t,a.src=e,a.async=!0,a.onload=()=>n(),a.onerror=()=>o(new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u52A0\\u8F7D\\u5931\\u8D25\")),document.head.appendChild(a)}),ed=()=>{let e=document.getElementById(Ir);return e||(e=document.createElement(\"button\"),e.id=Ir,e.type=\"button\",e.style.cssText=\"position:absolute;top:-50px;left:-50px;opacity:0;pointer-events:none;\",document.body.appendChild(e)),e},td=()=>{let e=String(navigator.language||\"\").toLowerCase();return e.includes(\"en\")?\"en\":e.includes(\"tw\")||e.includes(\"hk\")?\"tw\":\"cn\"},nd=(e=\"\")=>{try{return window.btoa(e)}catch(t){return window.btoa(unescape(encodeURIComponent(e)))}},rd=()=>{let e=navigator.userAgent||\"\",t=e.match(/Android\\s+([\\d.]+)[^;)]*;\\s*([^)]+?)(?:\\s+Build|;|\\))/i),n=e.match(/(iPhone|iPad|iPod);.*?OS\\s+([\\d_]+)/i),o=e.match(/(Edg|Chrome|Firefox|Safari|Opera)\\/([\\d.]+)/i),a=navigator.platform||\"Web\",i=o?\"\".concat(o[1],\" \").concat(o[2]):e.slice(0,120);t?(a=t[2].trim(),i=\"Android \".concat(t[1])):n&&(a=n[1],i=\"iOS \".concat(n[2].replace(/_/g,\".\")));let l=\"\".concat(window.screen.width,\"X\").concat(window.screen.height);return[\"\",\"\",\"3\",\"7.17.7\",a,a,\"\",\"\",i,l,\"\",\"\",\"\",nd(a),\"\"].join(\"|\")},od=async e=>{let t=Ql[Number(e)];if(!t)throw new Error(\"\\u6682\\u4E0D\\u652F\\u6301\\u5F53\\u524D\\u6ED1\\u5757\\u9A8C\\u8BC1\\u7801\\u7C7B\\u578B\\uFF1A\".concat(e||\"unknown\"));if(await Rl(Jl,\"yidong-aliyun-captcha-script\"),ed(),typeof window.initAliyunCaptcha!=\"function\")throw new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u521D\\u59CB\\u5316\\u5931\\u8D25\");return window.AliyunCaptchaConfig={region:\"cn\",prefix:t.prefix},new Promise((n,o)=>{let a=!1;window.initAliyunCaptcha({SceneId:t.SceneId,mode:\"popup\",button:\"#\".concat(Ir),language:td(),showErrorTip:!1,slideStyle:{width:360,height:40},success:i=>{a=!0,n(i)},error:i=>{a=!0,o(i instanceof Error?i:new Error(qt(i,\"\\u6ED1\\u5757\\u9A8C\\u8BC1\\u5931\\u8D25\")))},onClose:()=>{a||o(new Error(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"))},getInstance:i=>{setTimeout(()=>{var l;return(l=i==null?void 0:i.show)==null?void 0:l.call(i)},0)}})})},X={IDLE:\"idle\",LOADING:\"loading\",WAITING:\"waiting\",SCANNED:\"scanned\",SUCCESS:\"success\",EXPIRED:\"expired\",ERROR:\"error\"},zt={NEW:\"NEW\",SCANNED:\"SCANNED\",CONFIRMED:\"CONFIRMED\",EXPIRED:\"EXPIRED\",CANCELED:\"CANCELED\"},ad={[X.IDLE]:\"READY\",[X.LOADING]:\"LOADING\",[X.WAITING]:\"SCAN ME\",[X.SCANNED]:\"CONFIRM\",[X.SUCCESS]:\"SUCCESS\",[X.EXPIRED]:\"EXPIRED\",[X.ERROR]:\"ERROR\"};function st({qrcodeUrl:e,cacheUrl:t,checkStatusUrl:n}){let[o,a]=r.default.useState(\"\"),[i,l]=r.default.useState(X.IDLE),[u,c]=r.default.useState($t),f=(0,r.useRef)(null),m=(0,r.useRef)(null),d=(0,r.useCallback)(()=>{f.current&&(clearInterval(f.current),f.current=null),m.current&&(clearTimeout(m.current),m.current=null)},[]),g=(0,r.useCallback)(w=>{d(),f.current=setInterval(async()=>{try{let F=await bt.default.post(\"/website\".concat(n),{sessionKey:w});if(F.data.code===0&&F.data.data){let{status:_,cookie:z}=F.data.data;switch(_){case zt.CONFIRMED:d(),a(z),l(X.SUCCESS),await I.put(t,{cookie:z}),s.message.success(\"\\u626B\\u7801\\u6210\\u529F\\uFF0C\\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\"),setTimeout(()=>{c($t),l(X.IDLE)},2e3);break;case zt.SCANNED:l(X.SCANNED);break;case zt.EXPIRED:case zt.CANCELED:d(),c($t),l(X.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\");break;case zt.NEW:default:break}}}catch(F){}},2e3),m.current=setTimeout(()=>{d(),c($t),l(X.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\")},12e4)},[t,n,d]),p=(0,r.useCallback)(async()=>{if(i!==X.LOADING){d(),l(X.LOADING);try{let w=await bt.default.get(\"/website\".concat(e,\"?t=\").concat(Date.now()),{responseType:\"blob\"}),F=w.headers[\"x-session-key\"];if(F){let _=URL.createObjectURL(w.data);c(_),l(X.WAITING),g(F)}else throw new Error(\"\\u672A\\u83B7\\u53D6\\u5230 sessionKey\")}catch(w){console.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25:\",w),l(X.ERROR),s.message.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25\")}}},[e,i,d,g]),v=(0,r.useCallback)(w=>{if(!w){s.message.warning(\"\\u6CA1\\u6709\\u53EF\\u590D\\u5236\\u7684\\u5185\\u5BB9\");return}(0,Mr.default)(w),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")},[]),y=(0,r.useCallback)(async()=>{if(!o){s.message.warning(\"\\u6CA1\\u6709\\u53EF\\u5165\\u5E93\\u7684\\u5185\\u5BB9\");return}await I.put(t,{cookie:o}),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},[t,o]);(0,r.useEffect)(()=>(I.get(t).then(w=>{a(w||\"\")}),()=>d()),[t,d]);let k=()=>{switch(i){case X.SUCCESS:return\"#22c55e\";case X.ERROR:case X.EXPIRED:return\"#ef4444\";default:return\"#3b82f6\"}},E=i===X.LOADING;return r.default.createElement(\"div\",{className:\"qrcode-card\"},r.default.createElement(\"div\",{className:\"qrcode-wrapper\",onClick:p},r.default.createElement(\"div\",{className:\"qrcode-glow\"}),r.default.createElement(\"div\",{className:\"qrcode-container\"},r.default.createElement(\"img\",{src:u,alt:\"\\u626B\\u7801\\u533A\\u57DF\",className:\"qrcode-image \".concat(E?\"qrcode-image--loading\":\"\")}),E&&r.default.createElement(\"div\",{className:\"qrcode-overlay\"},r.default.createElement(\"div\",{className:\"qrcode-spinner\"}),r.default.createElement(\"span\",null,\"\\u751F\\u6210\\u4E2D...\"))),r.default.createElement(\"div\",{className:\"qrcode-status\"},r.default.createElement(\"div\",{className:\"status-dot \".concat(i===X.WAITING||i===X.SCANNED?\"status-dot--pulse\":\"\"),style:{backgroundColor:k()}}),r.default.createElement(\"span\",{className:\"status-text\"},ad[i]))),r.default.createElement(\"div\",{className:\"cookie-result-wrapper\"},r.default.createElement(\"textarea\",{className:\"cookie-result\",value:o,onChange:w=>a(w.target.value),placeholder:\"\\u70B9\\u51FB\\u4E0A\\u65B9\\u4E8C\\u7EF4\\u7801\\u5F00\\u59CB\\u626B\\u7801...\",spellCheck:\"false\"})),r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:()=>v(o)},r.default.createElement(\"span\",null,\"\\u590D\\u5236\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\"}))),r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary\",onClick:y},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"})))))}function ni({api:e}){let[t]=s.Form.useForm(),n=async()=>{try{let o=await t.validateFields();await I.put(e,o),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(o){console.error(o),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(o==null?void 0:o.message))}};return(0,r.useEffect)(()=>{I.get(e).then(o=>{t.setFieldsValue(o)})},[]),r.default.createElement(s.Form,{form:t,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,null)),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,null)),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:n},\"\\u4FDD\\u5B58\")))}function id(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async()=>{let d=await I.get(\"/xunlei/account\");e.setFieldsValue({username:d.username||\"\",password:d.password||\"\"})},[e]),c=async()=>{let d=await e.validateFields([\"username\",\"password\"]);await I.put(\"/xunlei/account\",d),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},f=async()=>{try{a(!0);let d=await e.validateFields([\"username\",\"password\"]);await I.put(\"/xunlei/account\",d),await I.post(\"/xunlei/send-code\",{}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{a(!1)}},m=async()=>{try{l(!0);let d;if(t.trim())d=await I.post(\"/xunlei/verify-code\",{code:t.trim()});else{let g=await e.validateFields([\"username\",\"password\"]);d=await I.post(\"/xunlei/login\",g)}d!=null&&d.hasAuth&&s.message.success(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u6210\\u529F\\uFF0C\\u53EF\\u5C1D\\u8BD5\\u539F\\u753B\\u64AD\\u653E\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{l(!1)}};return(0,r.useEffect)(()=>{u()},[u]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5BC6\\u7801\",autoComplete:\"current-password\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"}))))))}function sd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async(d,g)=>{try{s.message.info(\"\\u8BF7\\u5B8C\\u6210\\u6ED1\\u5757\\u9A8C\\u8BC1\");let p=await od(g);await I.post(\"/yidong/send-code-captcha\",{phone:d,captchaType:g,puzzleVerfycode:p,clientInfo:rd()}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(p){console.error(p),(p==null?void 0:p.message)===\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"?s.message.warning(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"):p!=null&&p.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(qt((p==null?void 0:p.message)||p)))}},[]),c=async()=>{try{let d=await e.validateFields([\"authorization\"]);await I.put(\"/yidong/authorization\",{authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(d){console.error(d),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{a(!0);let d=await e.validateFields([\"phone\"]),g=String(d.phone||\"\").trim(),p=await I.post(\"/yidong/send-code\",{phone:g});if(p!=null&&p.captchaRequired){await u(g,p.captchaType);return}s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(qt((d==null?void 0:d.message)||d)))}finally{a(!1)}},m=async()=>{if(!t.trim()){s.message.warning(\"\\u8BF7\\u5148\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\");return}try{l(!0);let d=await e.validateFields([\"phone\"]),g=await I.post(\"/yidong/verify-code\",{phone:String(d.phone||\"\").trim(),code:t.trim()});g!=null&&g.authorization&&e.setFieldsValue({authorization:String(g.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u79FB\\u52A8\\u4E91\\u76D8\\u767B\\u5F55\\u6210\\u529F\\uFF0CAuthorization \\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat(qt((d==null?void 0:d.message)||d)))}finally{l(!1)}};return(0,r.useEffect)(()=>{I.get(\"/yidong/authorization\").then(d=>{e.setFieldsValue({authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim(),phone:d.phone||\"\"})})},[e]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"phone\",rules:[{pattern:/^1[3456789]\\d{9}$/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:\"Authorization\",name:\"authorization\"},r.default.createElement(s.Input.Password,{placeholder:\"Basic \\u540E\\u9762\\u7684\\u5185\\u5BB9\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"}))))))}function ld(){return r.default.createElement(st,{qrcodeUrl:\"/guangyapan/qrcode\",cacheUrl:\"/guangyapan/token\",checkStatusUrl:\"/guangyapan/check-status\"})}function dd({visible:e,onCancel:t,onSave:n,panKey:o,panName:a,panPic:i,chunkSize:l,poolSize:u,noSaveMode:c}){let[f]=s.Form.useForm(),m=s.Form.useWatch(\"pic\",f),d=o===\"quark\"||o===\"uc\"||o===\"ali\";(0,r.useEffect)(()=>{e&&f.setFieldsValue({name:a||\"\",pic:i||\"\",chunkSize:l||(o===\"ali\"?128:512),poolSize:u||(o===\"ali\"?20:10),noSaveMode:c===!0})},[e,a,i,l,u,c,f]);let g=async()=>{try{let p=await f.validateFields();n(p)}catch(p){console.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25:\",p)}};return r.default.createElement(s.Modal,{title:\"\".concat(a||\"\\u7F51\\u76D8\",\" \\u914D\\u7F6E\"),open:e,onCancel:t,width:\"90%\",className:\"ios-modal\",footer:null},r.default.createElement(s.Form,{form:f,layout:\"vertical\",className:\"ios-form ios-input-number\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7F51\\u76D8\\u540D\\u79F0\"},{max:20,message:\"\\u540D\\u79F0\\u957F\\u5EA6\\u8BF7\\u63A7\\u5236\\u5728 20 \\u4E2A\\u5B57\\u7B26\\u4EE5\\u5185\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5938\\u514B\"})),r.default.createElement(s.Form.Item,{label:\"\\u56FE\\u7247 URL\",name:\"pic\",tooltip:\"\\u7559\\u7A7A\\u5C06\\u56DE\\u9000\\u4E3A\\u5185\\u7F6E\\u9ED8\\u8BA4\\u56FE\\u6807\",rules:[{validator:(p,v)=>{let y=String(v||\"\").trim();return!y||/^https?:\\/\\/\\S+$/i.test(y)||/^data:image\\//i.test(y)||/^\\/\\S+/.test(y)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\\uFF08http/https\\u3001data:image \\u6216 / \\u5F00\\u5934\\u8DEF\\u5F84\\uFF09\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/logo.png \\u6216 data:image/png;base64,...\"})),!!String(m||\"\").trim()&&r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:10,marginBottom:16}},r.default.createElement(\"img\",{src:String(m).trim(),alt:\"\\u7F51\\u76D8\\u56FE\\u6807\\u9884\\u89C8\",style:{width:36,height:36,borderRadius:8,objectFit:\"cover\",border:\"1px solid rgba(0,0,0,0.08)\",backgroundColor:\"#fff\"}}),r.default.createElement(\"span\",{style:{fontSize:12,color:\"#8e8e93\"}},\"\\u56FE\\u6807\\u9884\\u89C8\\uFF08\\u82E5\\u4E0D\\u663E\\u793A\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u662F\\u5426\\u53EF\\u8BBF\\u95EE\\uFF09\")),d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u5206\\u7247\\u5927\\u5C0F (KB)\",name:\"chunkSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5206\\u7247\\u5927\\u5C0F\"},{type:\"number\",min:64,max:2048,message:\"\\u8303\\u56F4: 64-2048 KB\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"512\",addonAfter:\"KB\"})),r.default.createElement(s.Form.Item,{label:\"\\u5E76\\u53D1\\u7EBF\\u7A0B\\u6570\",name:\"poolSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7EBF\\u7A0B\\u6570\"},{type:\"number\",min:1,max:20,message:\"\\u8303\\u56F4: 1-20\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"10\",addonAfter:\"\\u7EBF\\u7A0B\"}))),o===\"quark\"&&r.default.createElement(s.Form.Item,{label:\"\\u4E0D\\u8F6C\\u5B58\\u6A21\\u5F0F\",name:\"noSaveMode\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5148\\u5C1D\\u8BD5\\u4E0D\\u8F6C\\u5B58\\u76F4\\u94FE\\uFF0C\\u62FF\\u4E0D\\u5230\\u518D\\u56DE\\u9000\\u8F6C\\u5B58\\uFF1B\\u5173\\u95ED\\u5219\\u76F4\\u63A5\\u8F6C\\u5B58\\u83B7\\u53D6\\u591A\\u753B\\u8D28\\u3002\"},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0,marginTop:24}},r.default.createElement(\"div\",{className:\"ios-button-group\",style:{justifyContent:\"flex-end\"}},r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary-outline\",onClick:t},\"\\u53D6\\u6D88\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:g},\"\\u4FDD\\u5B58\")))))}var li=e=>{let{attributes:t,listeners:n,setNodeRef:o,transform:a,transition:i,isDragging:l}=Tr({id:e[\"data-row-key\"]}),u=S(B(S({},e.style),{transform:Ve.Translate.toString(a),transition:i}),l?{position:\"relative\",zIndex:9999}:{});return r.default.createElement(\"tr\",S(B(S({},e),{ref:o,style:u}),t))},di=({rowKey:e})=>{let{listeners:t,setActivatorNodeRef:n}=Tr({id:e});return r.default.createElement(lr,S({ref:n,className:\"drag-handle\"},t))},Pn=\"https://pan.199333.xyz\",ht=[{key:\"quark\",name:\"\\u5938\\u514B\\u7F51\\u76D8\"},{key:\"uc\",name:\"UC\\u7F51\\u76D8\"},{key:\"aliyun\",name:\"\\u963F\\u91CC\\u4E91\\u76D8\"},{key:\"baidu\",name:\"\\u767E\\u5EA6\\u7F51\\u76D8\"},{key:\"xunlei\",name:\"\\u8FC5\\u96F7\\u7F51\\u76D8\"},{key:\"tianyi\",name:\"\\u5929\\u7FFC\\u4E91\\u76D8\"},{key:\"mobile\",name:\"\\u79FB\\u52A8\\u4E91\\u76D8\"},{key:\"123\",name:\"123\\u7F51\\u76D8\"},{key:\"115\",name:\"115\\u7F51\\u76D8\"},{key:\"pikpak\",name:\"PikPak\"},{key:\"magnet\",name:\"\\u78C1\\u529B\\u94FE\\u63A5\"},{key:\"ed2k\",name:\"\\u7535\\u9A74\\u94FE\\u63A5\"}],Pr={id:\"\",name:\"\",host:\"\",username:\"\",password:\"\",deviceId:\"\",logo:\"\",libraryStats:{movieCount:0,seriesCount:0}};function ud(e){return String(e||\"\").trim().toLowerCase().replace(/[^a-z0-9_-]+/g,\"-\").replace(/^-+|-+$/g,\"\").slice(0,40)}function Lr(){return S({},Pr)}function cd(e){let t=String(e||\"\").trim();return!t||/^https?:\\/\\/\\S+$/i.test(t)||/^data:image\\//i.test(t)||/^\\/\\S+/.test(t)}function Ln(e={}){return String(e.name||\"Emby\").trim()}function fd(e={}){let t=Number(e.movieCount||0),n=Number(e.seriesCount||0);return{movieCount:t,seriesCount:n}}function pd(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon\",viewBox:\"0 0 1024 1024\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"path\",{d:\"M875.690667 414.72H301.738667l576.682666-195.754667c36.181333-11.093333 56.832-49.322667 45.909334-85.674666L909.824 83.626667c-8.704-29.013333-35.84-49.322667-66.218667-49.322667-6.656 0-13.312 1.024-19.626666 2.901333l-0.512 0.170667L127.829333 273.237333C91.648 284.330667 70.997333 322.56 81.92 358.912l14.848 49.664c4.096 13.653333 12.288 25.429333 23.04 34.133333-8.533333 11.434667-13.482667 25.6-13.482667 40.96v436.736c0 38.058667 30.890667 68.949333 68.949334 68.949334h700.416c38.058667 0 68.949333-30.890667 68.949333-68.949334V483.84c0-38.058667-30.890667-69.12-68.949333-69.12z m17.408 69.12v69.290667H690.858667l70.144-86.869334h114.688c9.557333 0.170667 17.408 7.850667 17.408 17.578667z m-717.824-17.408h175.616l-76.970667 76.970667c-2.901333 2.901333-4.949333 6.144-6.144 9.728H157.696v-69.290667c0-9.728 7.850667-17.408 17.578667-17.408z m243.029333 5.290667c1.706667-1.706667 3.072-3.413333 4.096-5.461334H694.613333l-63.829333 79.018667c-1.877333 2.389333-3.413333 4.949333-4.266667 7.68H336.896l81.408-81.237333zM143.189333 322.56l0.512-0.170667L838.997333 86.528c1.536-0.341333 3.072-0.682667 4.608-0.682667 7.68 0 14.506667 5.12 16.725334 12.458667l14.848 49.664c2.730667 9.216-2.56 18.944-11.776 21.674667l-0.512 0.170666L167.424 405.845333c-1.536 0.341333-3.072 0.682667-4.608 0.682667-7.68 0-14.506667-5.12-16.725333-12.458667L131.413333 344.234667c-2.730667-9.216 2.56-18.944 11.776-21.674667z m732.501334 615.424H175.274667c-9.557333 0-17.408-7.850667-17.408-17.408v-315.733333h735.402666v315.733333c-0.170667 9.557333-8.021333 17.408-17.578666 17.408z m0 0\"}))}function md(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon emby-server-card__stat-icon--series\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"rect\",{x:\"3\",y:\"9\",width:\"18\",height:\"12\",rx:\"2.5\"}),r.default.createElement(\"path\",{d:\"M7.5 3.5 L12 9 L16.5 3.5\"}))}function gd(e={}){let{movieCount:t,seriesCount:n}=fd(e);return!t&&!n?r.default.createElement(\"span\",{className:\"emby-server-card__sync\"},\"\\u5F85\\u540C\\u6B65\"):r.default.createElement(r.default.Fragment,null,r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(t,\" \\u7535\\u5F71\"),\"aria-label\":\"\".concat(t,\" \\u7535\\u5F71\")},r.default.createElement(pd,null),r.default.createElement(\"span\",null,t)),r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(n,\" \\u5267\\u96C6\"),\"aria-label\":\"\".concat(n,\" \\u5267\\u96C6\")},r.default.createElement(md,null),r.default.createElement(\"span\",null,n)))}function Nr(e={}){return{id:e.id,name:e.name||\"Emby\",host:e.host,username:e.username,password:e.password,deviceId:e.deviceId||\"\",logo:e.logo||\"\",libraries:e.libraries||[],libraryStats:e.libraryStats||Pr.libraryStats}}var ri=\"nodejs_emby_\",oi=\"nodejs_alist_\";function xd(e=\"\"){let t=String(e||\"\");return t.startsWith(ri)?t.slice(ri.length):\"\"}function hd(e=\"\"){let t=String(e||\"\");return t.startsWith(oi)?t.slice(oi.length):\"\"}function ui(){return{id:\"alist_\".concat(Date.now()),name:\"\",server:\"\",username:\"\",password:\"\",token:\"\",otpCode:\"\"}}function Br(e={}){let t=String(e.name||\"\").trim();if(t)return t;try{return new URL(e.server).hostname||\"Alist\"}catch(n){return\"Alist\"}}function Dr(e={}){return{id:e.id||\"alist_\".concat(Date.now()),name:Br(e),server:String(e.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(e.username||\"\").trim(),password:String(e.password||\"\"),token:String(e.token||\"\").trim(),otpCode:String(e.otpCode||\"\").trim()}}var bd=[{key:\"nodejs_muou\",api:\"/muou/urls\",name:\"\\u6728\\u5076\"},{key:\"nodejs_wanou\",api:\"/wanou/urls\",name:\"\\u73A9\\u5076\"},{key:\"nodejs_leijing\",api:\"/leijing/urls\",name:\"\\u96F7\\u9CB8\"},{key:\"nodejs_zhizhen\",api:\"/zhizhen/urls\",name:\"\\u81F3\\u81FB\"},{key:\"nodejs_duoduo\",api:\"/duoduo/urls\",name:\"\\u591A\\u591A\"},{key:\"nodejs_erxiao\",api:\"/erxiao/urls\",name:\"\\u4E8C\\u5C0F\"},{key:\"nodejs_huban\",api:\"/huban/urls\",name:\"\\u864E\\u6591\"},{key:\"nodejs_labi\",api:\"/labi/urls\",name:\"\\u8FA3\\u7B14\"},{key:\"nodejs_ouge\",api:\"/ouge/urls\",name:\"\\u6B27\\u6B4C\"},{key:\"nodejs_xiaoban\",api:\"/xiaoban/urls\",name:\"\\u5C0F\\u73ED\"},{key:\"nodejs_tgchannel\",api:\"/tgchannel/config\",name:\"TG\\u9891\\u9053\",type:\"tg\"},{key:\"nodejs_tgsou\",api:\"/tgsou/config\",name:\"TG\\u641C\",type:\"tg\"},{key:\"nodejs_tgfilebot\",api:\"/tgfilebot/config\",name:\"TGFileBot\",type:\"tgfilebot\"},{key:\"nodejs_pansou\",api:\"/pansou/config\",name:\"PanSou\",type:\"pansou\"},{key:\"nodejs_123ypzysq\",api:\"/123ypzysq/config\",name:\"123\\u8D44\\u6E90\\u793E\\u533A\",type:\"domain-cookie\"},{key:\"nodejs_live2vod\",api:\"/live2vod/config\",name:\"\\u76F4\\u64AD\\u8F6C\\u70B9\\u64AD\",type:\"live2vod\"},{key:\"nodejs_emby\",api:\"/emby-spider/setting\",name:\"Emby\\u6E90\",type:\"emby-spider\"},{key:\"nodejs_alist-video\",api:\"/alist-video/setting\",name:\"Alist\",type:\"alist-video\"}],ai=bd.reduce((e,t)=>(e[t.key]={api:t.api,name:t.name,type:t.type},e),{});function yd({visible:e,onCancel:t,onSave:n,siteName:o}){let[a]=s.Form.useForm(),[i,l]=(0,r.useState)(!1),[u,c]=(0,r.useState)(\"channels\"),[f,m]=(0,r.useState)([]),[d,g]=(0,r.useState)([]),[p,v]=(0,r.useState)(!1),[y,k]=(0,r.useState)([]),[E,w]=(0,r.useState)([]),[F,_]=(0,r.useState)([]),[z,H]=(0,r.useState)(\"\"),[h,C]=(0,r.useState)([]),L=(0,r.useRef)(0),M=()=>{let T=z.trim();if(T){if(f.includes(T)){s.message.warning('\\u9891\\u9053 \"'.concat(T,'\" \\u5DF2\\u5B58\\u5728')),H(\"\");return}m([T,...f]),C([T,...h]),k([T,...y]),H(\"\"),s.message.success('\\u5DF2\\u6DFB\\u52A0\\u9891\\u9053 \"'.concat(T,'\"'))}},D=(T,A)=>{A.stopPropagation(),m(f.filter($=>$!==T)),k(y.filter($=>$!==T)),C(h.filter($=>$!==T)),s.message.success('\\u5DF2\\u5220\\u9664\\u9891\\u9053 \"'.concat(T,'\"'))},j=(0,r.useCallback)(async T=>{if(!T)return null;v(!0);try{let A=await bt.default.get(\"\".concat(T,\"/api/health\"));if(A.data){let $=A.data.channels||[],U=A.data.plugins||[];return m($),g(U),{channels:$,plugins:U}}return null}catch(A){return console.error(\"\\u83B7\\u53D6 PanSou \\u9009\\u9879\\u5931\\u8D25:\",A),null}finally{v(!1)}},[]);(0,r.useEffect)(()=>{let T=++L.current;if(!e){l(!1),H(\"\");return}l(!0),I.get(\"/pansou/config\").then(async A=>{if(L.current!==T)return;let $=A.url||Pn;a.setFieldsValue({name:o,url:$});let U=await j($);A.channels&&A.channels.length>0?k(A.channels):U!=null&&U.channels&&k(U.channels),A.plugins&&A.plugins.length>0?w(A.plugins):U!=null&&U.plugins&&w(U.plugins),A.cloudTypes&&A.cloudTypes.length>0?_(A.cloudTypes):_(ht.map(me=>me.key))}).catch(A=>{L.current===T&&(console.error(A),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{L.current===T&&l(!1)})},[e,o,a,j]);let ne=(0,r.useCallback)(T=>{let A=T.target.value||Pn;j(A)},[j]),ie=async()=>{let T;try{T=await a.validateFields()}catch(A){return}try{l(!0);let A={url:T.url||\"\",channels:y,plugins:E,cloudTypes:F};await I.put(\"/pansou/config\",A),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(T.name),t()}catch(A){console.error(A),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((A==null?void 0:A.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{l(!1)}},we=async()=>{try{l(!0),await I.delete(\"/pansou/config\");let A=(await I.get(\"/pansou/config\")).url||Pn;a.setFieldsValue({url:A});let $=await j(A);k(($==null?void 0:$.channels)||[]),w(($==null?void 0:$.plugins)||[]),_(ht.map(U=>U.key)),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(T){console.error(T),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(T==null?void 0:T.message))}finally{l(!1)}},Ce=(T,A,$)=>{T.includes($)?A(T.filter(U=>U!==$)):A([...T,$])},J=(T,A,$)=>{A.length===T.length?$([]):$([...T])},Ee=(T,A,$,U,me,Se)=>r.default.createElement(\"div\",{key:T,className:\"pansou-checkbox-card \".concat(A?\"pansou-checkbox-card--selected\":\"\"),onClick:$},r.default.createElement(\"span\",{className:\"pansou-checkbox-card__label\"},U||T),me&&r.default.createElement(Ze,{className:\"pansou-checkbox-card__delete\",onClick:Se}));si(\".pansou-config-tabs__nav-scroll\",e);let ue=[{key:\"channels\",label:\"TG\\u9891\\u9053\",count:y.length},{key:\"plugins\",label:\"\\u641C\\u7D22\\u63D2\\u4EF6\",count:E.length},{key:\"cloudTypes\",label:\"\\u7F51\\u76D8\\u7C7B\\u578B\",count:F.length}];return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(o||\"PanSou\"),open:e,onCancel:t,className:\"ios-modal pansou-config-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Spin,{spinning:i},r.default.createElement(s.Form,{form:a,layout:\"vertical\",className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u7AD9\\u6E90\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: \".concat(Pn),onBlur:ne}))),r.default.createElement(\"div\",{className:\"pansou-config-tabs\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"PanSou \\u914D\\u7F6E\\u9879\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-list\"},ue.map(T=>{let A=T.key===u;return r.default.createElement(\"button\",{key:T.key,type:\"button\",role:\"tab\",\"aria-selected\":A,className:\"pansou-config-tabs__tab\".concat(A?\" pansou-config-tabs__tab--active\":\"\"),onClick:()=>c(T.key)},r.default.createElement(\"span\",null,T.label),r.default.createElement(\"span\",{className:\"pansou-config-tabs__badge\"},Math.min(T.count,9999)))})))),r.default.createElement(s.Spin,{spinning:p},u===\"channels\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",y.length,\" / \",f.length),r.default.createElement(s.Space,null,r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(f,y,k)},y.length===f.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\"))),r.default.createElement(\"div\",{className:\"pansou-add-channel\"},r.default.createElement(s.Input,{placeholder:\"\\u641C\\u7D22\\u6216\\u6DFB\\u52A0\\u9891\\u9053\",value:z,onChange:T=>H(T.target.value),onPressEnter:M,allowClear:!0,style:{flex:1}}),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:M},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},f.filter(T=>!z||T.toLowerCase().includes(z.toLowerCase())).map(T=>Ee(T,y.includes(T),()=>Ce(y,k,T),T,h.includes(T),A=>D(T,A)))),f.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u9891\\u9053\")),u===\"plugins\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",E.length,\" / \",d.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(d,E,w)},E.length===d.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},d.map(T=>Ee(T,E.includes(T),()=>Ce(E,w,T),T,!1,null))),d.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u63D2\\u4EF6\")),u===\"cloudTypes\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",F.length,\" / \",ht.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(ht.map(T=>T.key),F,_)},F.length===ht.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},ht.map(T=>Ee(T.key,F.includes(T.key),()=>Ce(F,_,T.key),T.name,!1,null))))),r.default.createElement(\"div\",{className:\"pansou-config-footer ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:ie,disabled:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:we,disabled:i},\"\\u91CD\\u7F6E\"))))}function Ar({visible:e,onCancel:t,onSave:n,onDelete:o,server:a,usedIds:i}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1),f=s.Form.useWatch(\"logo\",l);(0,r.useEffect)(()=>{e&&l.setFieldsValue(S(S({},Pr),a||Lr()))},[e,a,l]);let m=async()=>{let g;try{g=await l.validateFields()}catch(w){return}let p=ud(a!=null&&a.isNew?\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"):(a==null?void 0:a.id)||\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"));if(!p){s.message.warning(\"\\u8BF7\\u586B\\u5199\\u670D\\u52A1\\u5668\\u5730\\u5740\");return}if(i!=null&&i.has(p)&&p!==(a==null?void 0:a.id)){s.message.warning(\"\\u5F53\\u524D\\u670D\\u52A1\\u5668\\u5DF2\\u5B58\\u5728\\uFF0C\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u6216\\u8D26\\u53F7\");return}let v={id:p,name:String(g.name||\"\").trim(),host:String(g.host||\"\").trim().replace(/\\/+$/,\"\"),username:String(g.username||\"\").trim(),password:String(g.password||\"\"),logo:String(g.logo||\"\").trim()},y=String((a==null?void 0:a.host)||\"\").trim().replace(/\\/+$/,\"\"),k=String((a==null?void 0:a.username)||\"\").trim();v.host===y&&v.username===k&&(v.deviceId=String((a==null?void 0:a.deviceId)||\"\").trim());let E=!1;try{c(!0);let w=await I.post(\"/emby-spider/verify\",v);E=!0,await n(w||v),s.message.success(\"Emby \\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(w){console.error(w),w!=null&&w.message&&w.message!==\"[object Object]\"&&s.message.error(\"\".concat(E?\"\\u4FDD\\u5B58\":\"\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat(w.message))}finally{c(!1)}},d=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Emby \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Emby\"),open:e,onCancel:t,confirmLoading:u,className:\"ios-modal emby-server-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F1A\\u5728\\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\\u540E\\u81EA\\u52A8\\u4F7F\\u7528 Emby \\u670D\\u52A1\\u5668\\u540D\\u79F0\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u81EA\\u52A8\\u83B7\\u53D6\\uFF0C\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"Logo URL\",name:\"logo\",tooltip:\"\\u652F\\u6301 http/https\\u3001data:image \\u6216\\u7AD9\\u5185 / \\u5F00\\u5934\\u8DEF\\u5F84\",rules:[{validator(g,p){return cd(p)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/emby-logo.png\"})),!!String(f||\"\").trim()&&r.default.createElement(\"div\",{className:\"emby-logo-preview\"},r.default.createElement(\"img\",{src:String(f).trim(),alt:\"Emby Logo \\u9884\\u89C8\"}),r.default.createElement(\"span\",null,\"Logo \\u9884\\u89C8\")),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"host\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:8096\"})),r.default.createElement(s.Form.Item,{label:\"\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u5BC6\\u7801\\u53EF\\u4E3A\\u7A7A\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group emby-server-edit-actions\".concat(a!=null&&a.isNew?\" emby-server-edit-actions--new\":\"\")},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:d,disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:u},u?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function vd({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=(0,r.useMemo)(()=>new Set(l.map(g=>g.id).filter(Boolean)),[l]),c=()=>{i(B(S({},Lr()),{isNew:!0})),o(!0)},f=g=>{i(S({},g)),o(!0)},m=g=>{let p=l.findIndex(k=>k.id===(a==null?void 0:a.id)),v=Nr(g),y=p>=0?[...l]:[...l,v];p>=0&&(y[p]=v),t(y),o(!1)},d=g=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Ln(g),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u5BF9\\u5E94\\u7684 Emby \\u5206\\u7C7B\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(p=>p.id!==g.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Emby \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:c},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"emby-server-subtitle\"},\"\\u6709\\u64AD\\u653E\\u5668\\u9ED1/\\u767D\\u540D\\u5355\\u7684\\u670D\\u8C28\\u614E\\u4F7F\\u7528\\uFF0C\\u5426\\u5219\\u540E\\u679C\\u81EA\\u8D1F\\uFF01\")),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:c},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Emby \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(g=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:g.id},r.default.createElement(\"div\",{className:\"emby-server-card__hero\"},r.default.createElement(\"div\",{className:\"emby-server-card__logo\"},r.default.createElement(\"img\",{src:g.logo||Er,alt:Ln(g)}))),r.default.createElement(\"div\",{className:\"emby-server-card__content\"},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,Ln(g)),r.default.createElement(dn,null)),r.default.createElement(\"div\",{className:\"emby-server-card__stats\"},gd(g.libraryStats))),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>f(g)}))))),r.default.createElement(Ar,{visible:n,onCancel:()=>o(!1),onSave:m,onDelete:d,server:a,usedIds:u}))}function _r({visible:e,onCancel:t,onSave:n,onDelete:o,server:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&i.setFieldsValue({name:(a==null?void 0:a.name)||\"\",server:(a==null?void 0:a.server)||\"\",username:(a==null?void 0:a.username)||\"\",password:(a==null?void 0:a.password)||\"\",token:(a==null?void 0:a.token)||\"\",otpCode:(a==null?void 0:a.otpCode)||\"\"})},[e,a,i]);let c=async()=>{let m;try{m=await i.validateFields()}catch(p){return}let d={id:(a==null?void 0:a.id)||\"alist_\".concat(Date.now()),name:m.name||\"\",server:String(m.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(m.username||\"\").trim(),password:String(m.password||\"\"),token:String(m.token||\"\").trim(),otpCode:String(m.otpCode||\"\").trim()},g=!1;try{u(!0);let p=await I.post(\"/alist-video/verify\",d);g=!0,await n(p||d),s.message.success(\"Alist \\u8FDE\\u63A5\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(p){console.error(p),s.message.error(\"\".concat(g?\"\\u4FDD\\u5B58\":\"\\u8FDE\\u63A5\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\"))}finally{u(!1)}},f=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Alist \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Alist\"),open:e,onCancel:t,confirmLoading:l,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"server\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165 Alist \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:5244\"})),r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"username\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{label:\"Token\",name:\"token\",tooltip:\"\\u5DF2\\u6709 Alist token \\u65F6\\u53EF\\u76F4\\u63A5\\u586B\\u5199\\uFF0C\\u4F18\\u5148\\u4E8E\\u8D26\\u53F7\\u5BC6\\u7801\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u4E24\\u6B65\\u9A8C\\u8BC1\\u7801\",name:\"otpCode\",tooltip:\"\\u5F00\\u542F\\u4E24\\u6B65\\u9A8C\\u8BC1\\u65F6\\u586B\\u5199\\u5F53\\u524D\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Input,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"one-time-code\"})),r.default.createElement(s.Form.Item,null,r.default.createElement(\"div\",{className:\"ios-button-group\"},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:f},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:c,disabled:l},l?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function wd({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=()=>{i(B(S({},ui()),{isNew:!0})),o(!0)},c=d=>{i(S({},d)),o(!0)},f=d=>{let g=l.findIndex(y=>y.id===(a==null?void 0:a.id)),p=Dr(d),v=g>=0?[...l]:[...l,p];g>=0&&(v[g]=p),t(v),o(!1)},m=d=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(d),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8BE5 Alist \\u670D\\u52A1\\u5668\\u5C06\\u4E0D\\u518D\\u663E\\u793A\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(g=>g.id!==d.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Alist \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:u},\"\\u6DFB\\u52A0\"))),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:u},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Alist \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(d=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:d.id},r.default.createElement(\"div\",{className:\"emby-server-card__content\",style:{padding:\"16px\"}},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,d.name||d.server),r.default.createElement(dn,null)),r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.server),(d.username||d.token)&&r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.username?\"\\u8D26\\u53F7\\uFF1A\".concat(d.username):\"Token \\u5DF2\\u914D\\u7F6E\")),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>c(d)}))))),r.default.createElement(_r,{visible:n,onCancel:()=>o(!1),onSave:f,onDelete:m,server:a}))}function Cd({visible:e,onCancel:t,onSave:n,siteKey:o,siteName:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1),c=String(o||\"\").startsWith(\"nodejs_emby\"),f=ai[o]||(c?ai.nodejs_emby:void 0),m=!!f,d=(f==null?void 0:f.type)===\"tg\",g=(f==null?void 0:f.type)===\"tgfilebot\",p=(f==null?void 0:f.type)===\"live2vod\",v=(f==null?void 0:f.type)===\"emby-spider\",y=(f==null?void 0:f.type)===\"alist-video\",k=(f==null?void 0:f.type)===\"domain-cookie\",E=o===\"nodejs_tgchannel\",w=(0,r.useRef)(0),F=h=>{if(h===\"\"||h===null||typeof h>\"u\")return null;let C=Number(h);return Number.isFinite(C)?C:null},_=h=>{if(h==null||h===\"\")return\"\";let C=Number(h);return Number.isFinite(C)?C:\"\"};(0,r.useEffect)(()=>{let h=++w.current;if(!e){u(!1);return}m?(u(!0),I.get(f.api).then(C=>{if(w.current===h)if(d){let L=[],M=new Set;C.channelNameMap&&Object.keys(C.channelNameMap).forEach(D=>M.add(D)),C.channelUsername&&C.channelUsername.forEach(D=>M.add(D)),C.homeChannelUsername&&C.homeChannelUsername.forEach(D=>M.add(D)),M.forEach(D=>{var j;L.push({id:D,name:((j=C.channelNameMap)==null?void 0:j[D])||\"\"})}),i.setFieldsValue({name:a,url:C.url,count:F(C==null?void 0:C.count),pic:C.pic,channels:L.length>0?L:E?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({name:a,url:C.url,password:C.password||\"\"}):p?i.setFieldsValue({name:a,sources:C.sources||[{name:\"\",url:\"\"}]}):v?i.setFieldsValue({name:a,servers:C.servers||[]}):y?i.setFieldsValue({name:a,servers:C.servers||[]}):k?i.setFieldsValue({name:a,url:C.url||\"\",cookie:C.cookie||\"\"}):i.setFieldsValue({urls:C,name:a})}).catch(C=>{w.current===h&&(console.error(C),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{w.current===h&&u(!1)})):i.setFieldsValue({name:a})},[e,o,a,m,d,g,p,v,y,k,i,f]);let z=async()=>{let h;try{h=await i.validateFields()}catch(C){return}try{if(u(!0),m)if(d){let C={},L=[],M=[];h.channels&&h.channels.length>0&&h.channels.forEach(j=>{j.id&&(j.name&&(C[j.id]=j.name),L.push(j.id),o===\"nodejs_tgchannel\"&&M.push(j.id))});let D=S({url:h.url,count:_(h.count),pic:h.pic,channelNameMap:C,channelUsername:L},o===\"nodejs_tgchannel\"?{homeChannelUsername:M}:{});await I.put(f.api,D)}else if(g)await I.put(f.api,{url:h.url||\"\",password:h.password||\"\"});else if(p){let C={sources:h.sources||[]};await I.put(f.api,C)}else v?await I.put(f.api,{servers:h.servers||[]}):y?await I.put(f.api,{servers:h.servers||[]}):k?await I.put(f.api,{url:h.url||\"\",cookie:h.cookie||\"\"}):await I.put(f.api,h.urls);s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(h.name,v||y?{reload:!0}:void 0),t()}catch(C){console.error(C),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((C==null?void 0:C.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{u(!1)}},H=async()=>{if(m)try{u(!0),await I.delete(f.api);let h=await I.get(f.api);if(d){let C=[],L=new Set;h.channelNameMap&&Object.keys(h.channelNameMap).forEach(M=>L.add(M)),h.channelUsername&&h.channelUsername.forEach(M=>L.add(M)),h.homeChannelUsername&&h.homeChannelUsername.forEach(M=>L.add(M)),L.forEach(M=>{var D;C.push({id:M,name:((D=h.channelNameMap)==null?void 0:D[M])||\"\"})}),i.setFieldsValue({url:h.url,count:F(h==null?void 0:h.count),pic:h.pic,channels:C.length>0?C:E?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({url:h.url,password:h.password||\"\"}):p?i.setFieldsValue({sources:h.sources||[{name:\"\",url:\"\"}]}):v?i.setFieldsValue({servers:h.servers||[]}):y?i.setFieldsValue({servers:h.servers||[]}):k?i.setFieldsValue({url:h.url||\"\",cookie:h.cookie||\"\"}):i.setFieldsValue({urls:h});s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(h){console.error(h),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(h==null?void 0:h.message))}finally{u(!1)}};return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(a||(f==null?void 0:f.name)||\"\"),open:e,onCancel:t,className:\"ios-modal domain-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",requiredMark:!1,colon:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\",className:v||y?\"domain-edit-full-input\":\"domain-edit-aligned-input\"})),m&&!d&&!g&&!p&&!v&&!y&&!k&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u57DF\\u540D\"}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((D,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u57DF\\u540D\":null,required:!1,key:D.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},D),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}],noStyle:!0}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-list-input\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1?\"\":\" domain-list-action--placeholder\")},h.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(D.name)}):null)))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C(),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u57DF\\u540D\"),r.default.createElement(s.Form.ErrorList,{errors:M}))))),m&&k&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"Cookie\",name:\"cookie\"},r.default.createElement(s.Input.TextArea,{placeholder:\"\\u8BBF\\u95EE\\u7F51\\u7AD9\\u9700\\u8981\\u7684 Cookie\\uFF0C\\u4F8B\\u5982 bbs_token=xxx\",className:\"domain-edit-aligned-input\",autoSize:{minRows:3,maxRows:6}}))),m&&g&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: http://127.0.0.1:8080\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u8BBF\\u95EE\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"TGFileBot password\\uFF0C\\u53EF\\u7559\\u7A7A\",className:\"domain-edit-aligned-input\"}))),m&&v&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(vd,null)),m&&y&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(wd,null)),m&&d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"TG\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\"},r.default.createElement(s.InputNumber,{min:1,placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9650\\u5236\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.List,{name:\"channels\",rules:[{validator:async(h,C)=>{if(!E&&(!C||C.length===0))return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u9891\\u9053\"))}}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((D,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u9891\\u9053\\u5217\\u8868\":\"\",required:!1,key:D.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},D),{name:[D.name,\"name\"],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,B(S({},D),{name:[D.name,\"id\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053ID\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u9891\\u9053ID\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1||E?\"\":\" domain-list-action--placeholder\")},h.length>1||E?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(D.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({id:\"\",name:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u9891\\u9053\"),r.default.createElement(s.Form.ErrorList,{errors:M})))),r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u56FE\\u7247\",name:\"pic\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null))),m&&p&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"sources\",rules:[{validator:async(h,C)=>{if(!C||C.length===0)return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u76F4\\u64AD\\u6E90\"))}}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((D,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u76F4\\u64AD\\u6E90\\u5217\\u8868\":\"\",required:!1,key:D.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},D),{name:[D.name,\"name\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,B(S({},D),{name:[D.name,\"url\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u76F4\\u64AD\\u6E90URL\"}],style:{marginBottom:0,flex:\"2\"}}),r.default.createElement(s.Input,{placeholder:\"\\u76F4\\u64AD\\u6E90URL (m3u/txt)\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1?\"\":\" domain-list-action--placeholder\")},h.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(D.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({name:\"\",url:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u76F4\\u64AD\\u6E90\"),r.default.createElement(s.Form.ErrorList,{errors:M}))))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:z,disabled:l},\"\\u4FDD\\u5B58\"),m&&r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:H,disabled:l},\"\\u91CD\\u7F6E\")))))}var Sd=new Set([\"nodejs_push\",\"nodejs_muban\",\"nodejs_template\"]),Od=new Set([\"\\u63A8\\u9001\",\"\\u6A21\\u677F\"]);function kd(e){let t=String(e.name||\"\").trim();return!Sd.has(e.key)&&!Od.has(t)}function Td(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),[l,u]=(0,r.useState)(!1),[c,f]=(0,r.useState)(!1),[m,d]=(0,r.useState)(!1),[g,p]=(0,r.useState)(null),[v,y]=(0,r.useState)([]),[k,E]=(0,r.useState)(!1),[w,F]=(0,r.useState)(null),[_,z]=(0,r.useState)([]),[H,h]=(0,r.useState)(!1),[C,L]=(0,r.useState)(null),[M,D]=(0,r.useState)([]),[j,ne]=(0,r.useState)(!1),[ie,we]=(0,r.useState)(null),[Ce,J]=(0,r.useState)([]),[Ee,ue]=(0,r.useState)(!1),[T,A]=(0,r.useState)([]),[$,U]=(0,r.useState)(!1),[me,Se]=(0,r.useState)(null),[de,Pe]=(0,r.useState)([]),[Oe,ge]=(0,r.useState)(\"\"),[q,We]=(0,r.useState)(null),xe=(0,r.useMemo)(()=>e.filter(kd),[e]),Le=(0,r.useMemo)(()=>new Set(v.map(b=>b.id).filter(Boolean)),[v]),ke=(0,r.useMemo)(()=>new Set(_.map(b=>b.id).filter(Boolean)),[_]),Be=b=>{let O=xd(b==null?void 0:b.key);if(O){Ge(O);return}let N=hd(b==null?void 0:b.key);if(N){Gt(N);return}if(b!=null&&b.cms){$n(b.key);return}We(b),b.key===\"nodejs_pansou\"?i(!0):o(!0)},_e=(b,O={})=>{if(O.reload){ce();return}if(q){let N=e.findIndex(P=>P.key===q.key);N!==-1&&(e[N].name=b,t([...e]))}},Ht=async()=>{try{f(!0);let b=await I.get(\"/emby-spider/setting\");y(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),p(B(S({},Lr()),{isNew:!0})),u(!1),d(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},jt=async()=>{try{f(!0);let b=await I.get(\"/alist-video/setting\");D(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),L(B(S({},ui()),{isNew:!0})),u(!1),h(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},yt=async()=>{try{f(!0);let b=await I.get(\"/cms/list\");A(Array.isArray(b)?b:[]),u(!1),ue(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},Fe=async b=>{let O=Nr(b),N=v.findIndex(V=>V.id===O.id),P=N>=0?[...v]:[...v,O];N>=0&&(P[N]=O),await I.put(\"/emby-spider/setting\",{servers:P}),y(P),d(!1),p(null),await ce()},lt=()=>{d(!1),p(null)},dt=async b=>{let O=Dr(b),N=M.findIndex(V=>V.id===O.id),P=N>=0?[...M]:[...M,O];N>=0&&(P[N]=O),await I.put(\"/alist-video/setting\",{servers:P}),D(P),h(!1),L(null),await ce()},Vt=()=>{h(!1),L(null)},Ut=async b=>{let O=Nd(T,b);await I.put(\"/cms/list\",O),A(O),ue(!1),await ce()},Bn=()=>{ue(!1)},$n=async b=>{try{let O=await I.get(\"/cms/list\"),N=Array.isArray(O)?O:[],P=N.find(V=>Fr(V)===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 CMS \\u6E90\\u914D\\u7F6E\");return}Pe(N),Se(S({},P)),ge(b),U(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},$e=async b=>{let O=ci(b);if(!O){s.message.warning(\"CMS \\u6E90\\u4FE1\\u606F\\u4E0D\\u5B8C\\u6574\");return}let N=de.map(P=>Fr(P)===Oe?O:P);await I.put(\"/cms/list\",N),Pe(N),U(!1),Se(null),ge(\"\"),await ce()},ze=b=>{b&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(b.name||\"CMS \\u6E90\",\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u4E2A CMS \\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=de.filter(N=>Fr(N)!==Oe);await I.put(\"/cms/list\",O),Pe(O),U(!1),Se(null),ge(\"\"),await ce()}})},Ge=async b=>{try{let O=await I.get(\"/emby-spider/setting\"),N=Array.isArray(O==null?void 0:O.servers)?O.servers:[],P=N.find(V=>V.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Emby \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}z(N),F(S({},P)),E(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},Wt=async b=>{let O=Nr(b),N=_.map(P=>P.id===(w==null?void 0:w.id)?O:P);await I.put(\"/emby-spider/setting\",{servers:N}),z(N),E(!1),F(null),await ce()},Ie=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Ln(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Emby \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=_.filter(N=>N.id!==b.id);await I.put(\"/emby-spider/setting\",{servers:O}),z(O),E(!1),F(null),await ce()}})},Gt=async b=>{try{let O=await I.get(\"/alist-video/setting\"),N=Array.isArray(O==null?void 0:O.servers)?O.servers:[],P=N.find(V=>V.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Alist \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}J(N),we(S({},P)),ne(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},zn=async b=>{let O=Dr(b),N=Ce.map(P=>P.id===(ie==null?void 0:ie.id)?O:P);await I.put(\"/alist-video/setting\",{servers:N}),J(N),ne(!1),we(null),await ce()},qn=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Alist \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=Ce.filter(N=>N.id!==b.id);await I.put(\"/alist-video/setting\",{servers:O}),J(O),ne(!1),we(null),await ce()}})},vt=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(b,O){return r.default.createElement(di,{rowKey:O.key})}},{title:\"\\u7AD9\\u6E90\",dataIndex:\"name\",render(b,O){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:b,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},b),O.t4&&r.default.createElement(s.Tag,{className:\"ios-tag\"},\"T4\"))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(b,O){return r.default.createElement(s.Switch,{value:b,onChange:N=>{t(P=>P.map(V=>V.key===O.key?B(S({},V),{enable:N}):V))}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(b,O){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>Be(O),size:\"small\"})}}],[e]),Yt=wr(Lt(at,{activationConstraint:{distance:1}}),Lt(xt,{activationConstraint:{delay:150,tolerance:5}})),Hn=({active:b,over:O})=>{b.id!==(O==null?void 0:O.id)&&t(N=>{let P=N.findIndex(fe=>fe.key===b.id),V=N.findIndex(fe=>fe.key===(O==null?void 0:O.id));return Bt(N,P,V)})},ce=async()=>{let O=(await bt.default.get(\"/full-config\")).data.video.sites,N=await I.get(\"/sites/list\"),P={},V={};O.forEach(G=>{V[G.key]=G});let fe=N.filter(G=>(P[G.key]=!0,V[G.key])).map(G=>{let se=V[G.key];return{key:G.key,name:G.name||se.name,enable:G.enable,t4:se.t4,cms:se.cms}});O.forEach(G=>{P[G.key]||fe.push({key:G.key,name:G.name,enable:!0,t4:G.t4,cms:G.cms})}),t(fe)},jn=async()=>{try{await I.put(\"/sites/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null)),duration:5})}catch(b){console.error(b),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}},Vn=async()=>{try{await I.delete(\"/sites/list\"),ce(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(b){console.error(b),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}};return(0,r.useEffect)(()=>{ce()},[]),r.default.createElement(\"div\",null,r.default.createElement(\"div\",{className:\"sites-list-toolbar\"},r.default.createElement(s.Dropdown,{open:l,onOpenChange:u,trigger:[\"click\"],placement:\"bottomRight\",dropdownRender:()=>r.default.createElement(\"div\",{className:\"site-add-menu\"},r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:Ht,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:Er,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Emby\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:jt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ei,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Alist\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:yt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ti,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"CMS\")))},r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),className:\"sites-add-button\"},\"\\u6DFB\\u52A0\"))),r.default.createElement(Cr,{sensors:Yt,modifiers:[Sr],onDragEnd:Hn},r.default.createElement(kr,{items:xe.map(b=>b.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:li}},rowKey:\"key\",columns:vt,dataSource:xe,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:jn},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:Vn},\"\\u91CD\\u7F6E\")),r.default.createElement(Cd,{visible:n,onCancel:()=>o(!1),onSave:_e,siteKey:q==null?void 0:q.key,siteName:q==null?void 0:q.name}),r.default.createElement(yd,{visible:a,onCancel:()=>i(!1),onSave:_e,siteName:q==null?void 0:q.name}),r.default.createElement(Ar,{visible:m,onCancel:lt,onSave:Fe,server:g,usedIds:Le}),r.default.createElement(Ar,{visible:k,onCancel:()=>E(!1),onSave:Wt,onDelete:Ie,server:w,usedIds:ke}),r.default.createElement(_r,{visible:H,onCancel:Vt,onSave:dt,server:C}),r.default.createElement(_r,{visible:j,onCancel:()=>ne(!1),onSave:zn,onDelete:qn,server:ie}),r.default.createElement(Dd,{visible:Ee,onCancel:Bn,onSave:Ut}),r.default.createElement(fi,{visible:$,onCancel:()=>U(!1),onSave:$e,onDelete:ze,source:me,mode:\"edit\"}))}function Ed(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(p,v){return r.default.createElement(di,{rowKey:v.key})}},{title:\"\\u7F51\\u76D8\",dataIndex:\"name\",render(p,v){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:p,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},p),(v.key===\"quark\"||v.key===\"uc\"||v.key===\"ali\")&&v.chunkSize&&r.default.createElement(s.Tag,{className:\"ios-tag\"},v.chunkSize,\"K\\xB7\",v.poolSize))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(p,v,y){return r.default.createElement(s.Switch,{value:p,onChange:k=>{e[y].enable=k,t([...e])}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(p,v,y){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>{i(B(S({},v),{index:y})),o(!0)},size:\"small\"})}}],[e]),u=wr(Lt(at,{activationConstraint:{distance:1}}),Lt(xt,{activationConstraint:{delay:150,tolerance:5}})),c=({active:p,over:v})=>{p.id!==(v==null?void 0:v.id)&&t(y=>{let k=y.findIndex(w=>w.key===p.id),E=y.findIndex(w=>w.key===(v==null?void 0:v.id));return Bt(y,k,E)})},f=async()=>{let p=await I.get(\"/pans/list\");t(p)},m=async()=>{try{await I.put(\"/pans/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),r.default.createElement(\"span\",{style:{fontSize:\"12px\",color:\"#999\"}},\"\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\\u5E76\\u7ACB\\u5373\\u751F\\u6548\")),duration:2})}catch(p){console.error(p),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},d=async()=>{try{await I.delete(\"/pans/list\"),f(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(p){console.error(p),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},g=p=>{let v=String(p.name||\"\").trim(),y=String(p.pic||\"\").trim(),k=B(S({},e[a.index]),{name:v,pic:y});(a.key===\"quark\"||a.key===\"uc\"||a.key===\"ali\")&&(k.chunkSize=p.chunkSize,k.poolSize=p.poolSize),a.key===\"quark\"&&(k.noSaveMode=p.noSaveMode===!0),e[a.index]=k,t([...e]),o(!1),s.message.info('\\u914D\\u7F6E\\u5DF2\\u66F4\\u65B0\\uFF0C\\u8BF7\\u70B9\\u51FB\\u4E0B\\u65B9\"\\u4FDD\\u5B58\"\\u6309\\u94AE\\u4FDD\\u5B58\\u914D\\u7F6E')};return(0,r.useEffect)(()=>{f()},[]),r.default.createElement(\"div\",null,r.default.createElement(Cr,{sensors:u,modifiers:[Sr],onDragEnd:c},r.default.createElement(kr,{items:e.map(p=>p.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:li}},rowKey:\"key\",columns:l,dataSource:e,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:m},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:d},\"\\u91CD\\u7F6E\")),r.default.createElement(dd,{visible:n,onCancel:()=>o(!1),onSave:g,panKey:a==null?void 0:a.key,panName:a==null?void 0:a.name,panPic:a==null?void 0:a.pic,chunkSize:a==null?void 0:a.chunkSize,poolSize:a==null?void 0:a.poolSize,noSaveMode:a==null?void 0:a.noSaveMode}))}function Fd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(!1),o=\"/emby/setting\",a=async()=>{let c=await I.get(o);e.setFieldsValue(c)},i=async()=>{let c=await e.validateFields();try{await I.put(o,c),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(f){console.error(f),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(f==null?void 0:f.message))}},l=async()=>{try{await I.delete(o),a(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(c){console.error(c),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}},u=()=>{s.Modal.confirm({title:\"\\u786E\\u8BA4\\u6E05\\u7406 TMDB \\u7F13\\u5B58\\uFF1F\",content:\"\\u5C06\\u6E05\\u7A7A\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF08\\u542B\\u5185\\u5B58\\u4E0E\\u6301\\u4E45\\u5316\\u6570\\u636E\\uFF09\\uFF0C\\u540E\\u7EED\\u8BE6\\u60C5\\u4F1A\\u91CD\\u65B0\\u8BF7\\u6C42 TMDB\\u3002\",okText:\"\\u6E05\\u7406\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){n(!0);try{await I.post(\"/emby/tmdb/cache/clear\"),s.message.success(\"TMDB \\u7F13\\u5B58\\u5DF2\\u6E05\\u7406\")}catch(c){console.error(c),s.message.error(\"\\u6E05\\u7406\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}finally{n(!1)}}})};return(0,r.useEffect)(()=>{a()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\",name:\"serverName\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"}]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"})),r.default.createElement(s.Form.Item,{label:\"TMDB API Key\",name:\"tmdbApiKey\",tooltip:\"TMDB v3 API Key\\uFF0C\\u542F\\u7528\\u589E\\u5F3A\\u65F6\\u5FC5\\u586B\",rules:[({getFieldValue:c})=>({validator(f,m){return!c(\"tmdbEnable\")||String(m||\"\").trim()?Promise.resolve():Promise.reject(new Error(\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\\u65F6\\u8BF7\\u8F93\\u5165 API Key\"))}})]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165 TMDB API Key\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 Emby\",name:\"enable\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u641C\\u7D22\\u663E\\u793A\\u6765\\u6E90\",name:\"searchSourcePrefix\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u641C\\u7D22\\u7ED3\\u679C\\u6807\\u9898\\u663E\\u793A\\u4E3A\\u201C\\u6765\\u6E90 \\xB7 \\u6807\\u9898\\u201D\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\",name:\"tmdbEnable\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u4F18\\u5148\\u4F7F\\u7528 TMDB \\u7684\\u6D77\\u62A5\\u3001\\u5267\\u7167\\u548C\\u5143\\u6570\\u636E\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"TMDB \\u7F13\\u5B58\",tooltip:\"\\u4EC5\\u6E05\\u7406\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF0C\\u4E0D\\u5F71\\u54CD\\u5217\\u8868/\\u641C\\u7D22\\u7AD9\\u6E90\\u7F13\\u5B58\"},r.default.createElement(s.Button,{danger:!0,onClick:u,loading:t},\"\\u4E00\\u952E\\u6E05\\u7406 TMDB \\u7F13\\u5B58\")),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:l},\"\\u91CD\\u7F6E\"))))}function Id(){let[e]=s.Form.useForm(),t=\"/danmu/setting\",n=async()=>{let i=await I.get(t);e.setFieldsValue(i)},o=async()=>{let i=await e.validateFields();try{await I.put(t,i),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(l){console.error(l),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}},a=async()=>{try{await I.delete(t),n(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(i){console.error(i),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(i==null?void 0:i.message))}};return(0,r.useEffect)(()=>{n()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"API \\u5217\\u8868\",style:{marginBottom:8}},r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0API\\u5730\\u5740\"}]},(i,{add:l,remove:u},{errors:c})=>r.default.createElement(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12}},i.map(f=>r.default.createElement(\"div\",{key:f.key,className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},f),{name:[f.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"}],style:{flex:1,marginBottom:0}}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"})),r.default.createElement(s.Form.Item,B(S({},f),{name:[f.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],style:{width:100,marginBottom:0,flexShrink:0}}),r.default.createElement(s.Input,{placeholder:\"\\u522B\\u540D\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(i.length>1?\"\":\" domain-list-action--placeholder\")},i.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>u(f.name)}):null))),r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>l(),block:!0,icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0 API\"),r.default.createElement(s.Form.ErrorList,{errors:c})))),r.default.createElement(s.Form.Item,{label:\"\\u81EA\\u52A8\\u63A8\\u9001\",name:\"autoPush\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u8C03\\u8BD5\\u4FE1\\u606F\",name:\"debug\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5728\\u63A7\\u5236\\u53F0\\u663E\\u793A\\u8BE6\\u7EC6\\u7684\\u5F39\\u5E55\\u5339\\u914D\\u8C03\\u8BD5\\u4FE1\\u606F\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:a},\"\\u91CD\\u7F6E\"))))}function ci(e,t=\"\"){if(!e||typeof e!=\"object\")return null;let n=String(e.address||e.api||e.url||\"\").trim();if(!n)return null;let o=\"\";try{o=new URL(/^https?:\\/\\//i.test(n)?n:\"https://\".concat(n)).hostname}catch(l){}let a=String(e.name||e.title||t||o||\"CMS\").trim();return{name:a.startsWith(\"\\u300C\\u91C7\\u300D\")?a:\"\\u300C\\u91C7\\u300D\".concat(a),address:n}}function Fr(e={}){return\"nodejs_\".concat(String(e.name||\"\").trim())}function Nd(e=[],t=[]){let n=new Set;return[...e,...t].map(o=>ci(o)).filter(o=>!o||n.has(o.address)?!1:(n.add(o.address),!0))}function fi({visible:e,onCancel:t,onSave:n,onDelete:o,source:a,mode:i=\"add\"}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&l.setFieldsValue({name:(a==null?void 0:a.name)||\"\",url:(a==null?void 0:a.address)||\"\"})},[e,a,l]);let f=async()=>{let m;try{m=await l.validateFields()}catch(p){return}let d=String(m.name||\"\").trim(),g=String(m.url||\"\").trim();try{if(c(!0),i===\"edit\"&&g===String((a==null?void 0:a.address)||\"\").trim()){await n({name:d,address:g}),s.message.success(\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\");return}let p=await I.post(\"/cms/resolve\",{name:d,url:g}),v=Array.isArray(p==null?void 0:p.sources)?p.sources:[];if(v.length===0){s.message.warning(\"\\u672A\\u8BC6\\u522B\\u5230\\u53EF\\u7528\\u7684 CMS \\u6E90\");return}i===\"edit\"?(await n(v[0]),s.message.success(v.length>1?\"\\u5DF2\\u4F7F\\u7528\\u8BC6\\u522B\\u7ED3\\u679C\\u4E2D\\u7684\\u7B2C\\u4E00\\u4E2A CMS \\u6E90\":\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\")):(await n(v),s.message.success(v.length>1?\"\\u5DF2\\u6DFB\\u52A0 \".concat(v.length,\" \\u4E2A CMS \\u6E90\"):\"CMS \\u6E90\\u6DFB\\u52A0\\u6210\\u529F\"))}catch(p){console.error(p),s.message.error(\"\".concat(i===\"edit\"?\"CMS \\u4FDD\\u5B58\\u5931\\u8D25\":\"CMS \\u89E3\\u6790\\u5931\\u8D25\",\"\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{c(!1)}};return r.default.createElement(s.Modal,{title:i===\"edit\"?\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"CMS \\u6E90\"):\"\\u6DFB\\u52A0 CMS \\u6E90\",open:e,onCancel:t,confirmLoading:u,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F7F\\u7528\\u63A5\\u53E3\\u8FD4\\u56DE\\u540D\\u79F0\\u6216\\u57DF\\u540D\\uFF0C\\u4FDD\\u5B58\\u65F6\\u4F1A\\u81EA\\u52A8\\u6DFB\\u52A0\\u300C\\u91C7\\u300D\\u524D\\u7F00\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684 CMS\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 CMS API \\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"example.com \\u6216 https://example.com/api.php/provide/vod/\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\".concat(i===\"edit\"?\"\":\" emby-server-edit-actions--new\")},i===\"edit\"&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:()=>o==null?void 0:o(a),disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:f,disabled:u},u?i===\"edit\"?\"\\u4FDD\\u5B58\\u4E2D...\":\"\\u89E3\\u6790\\u4E2D...\":i===\"edit\"?\"\\u4FDD\\u5B58\":\"\\u89E3\\u6790\\u5E76\\u6DFB\\u52A0\")))))}function Dd(e){return r.default.createElement(fi,B(S({},e),{mode:\"add\"}))}function Ad(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),l=(0,r.useCallback)(async()=>{o(!0);try{let c=await I.get(\"/subscriptions\");t(Array.isArray(c==null?void 0:c.endpoints)?c.endpoints:[])}catch(c){console.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25:\",c),c!=null&&c.handled||s.message.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25\")}finally{o(!1)}},[]);(0,r.useEffect)(()=>{l()},[l]);let u=c=>{(0,Mr.default)(c.url),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")};return r.default.createElement(\"div\",{className:\"subscription-page\"},r.default.createElement(\"section\",{className:\"subscription-section\"},r.default.createElement(s.Spin,{spinning:n},r.default.createElement(\"div\",{className:\"subscription-endpoints\"},e.map(c=>r.default.createElement(\"div\",{className:\"subscription-endpoint\",key:c.key||c.url},r.default.createElement(\"div\",{className:\"subscription-endpoint__main\"},r.default.createElement(\"div\",{className:\"subscription-endpoint__title\"},r.default.createElement(\"span\",null,c.name)),r.default.createElement(\"div\",{className:\"subscription-endpoint__url\",title:c.url},c.url)),r.default.createElement(\"div\",{className:\"subscription-endpoint__actions\"},c.key===\"emby\"&&r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(yn,null),onClick:()=>i(!0),\"aria-label\":\"\\u914D\\u7F6E Emby API\"}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(ir,null),onClick:()=>u(c),\"aria-label\":\"\\u590D\\u5236\".concat(c.name)}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(ur,null),href:c.url,target:\"_blank\",rel:\"noreferrer\",\"aria-label\":\"\\u6253\\u5F00\".concat(c.name)}))))))),r.default.createElement(s.Modal,{title:\"Emby API \\u8BBE\\u7F6E\",open:a,footer:null,onCancel:()=>i(!1),destroyOnClose:!0,className:\"ios-modal subscription-setting-modal\"},r.default.createElement(Fd,null)))}function _d(){let[e,t]=(0,r.useState)(\"account\"),n={accept:\".json\",showUploadList:!1,beforeUpload(i){let l=new FileReader;return l.onload=async u=>{try{let c=JSON.parse(u.target.result);await I.put(\"/backup\",c),s.message.success(\"\".concat(i.name,\"\\u5BFC\\u5165\\u6210\\u529F\"))}catch(c){s.message.error(\"\".concat(i.name,\"\\u5BFC\\u5165\\u5931\\u8D25: \").concat(c.message)),console.error(\"Error parsing JSON:\",c)}},l.readAsText(i),!1}},o=[{key:\"account\",label:\"\\u767B\\u5F55\",icon:r.default.createElement(cr,null)},{key:\"settings\",label:\"\\u8BBE\\u7F6E\",icon:r.default.createElement(yn,null)}],a=()=>{switch(e){case\"account\":return r.default.createElement(Zl,null);case\"settings\":return r.default.createElement(s.Tabs,{destroyOnHidden:!0},r.default.createElement(Mn,{tab:\"\\u7AD9\\u6E90\\u5217\\u8868\",key:\"sites\"},r.default.createElement(Td,null)),r.default.createElement(Mn,{tab:\"\\u7F51\\u76D8\\u5217\\u8868\",key:\"pans\"},r.default.createElement(Ed,null)),r.default.createElement(Mn,{tab:\"\\u5F39\\u5E55\\u8BBE\\u7F6E\",key:\"danmu\"},r.default.createElement(Id,null)),r.default.createElement(Mn,{tab:\"\\u8BA2\\u9605\\u8F6C\\u6362\",key:\"subscriptions\"},r.default.createElement(Ad,null)));default:return null}};return r.default.createElement(\"div\",{className:\"app-layout\"},r.default.createElement(\"div\",{className:\"top-nav-bar\"},r.default.createElement(\"div\",{className:\"nav-pill\"},o.map(i=>r.default.createElement(\"div\",{key:i.key,className:\"nav-tab \".concat(e===i.key?\"nav-tab--active\":\"\"),onClick:()=>t(i.key)},i.icon,r.default.createElement(\"span\",null,i.label))),r.default.createElement(\"div\",{className:\"nav-divider\"}),r.default.createElement(\"div\",{className:\"nav-actions\"},r.default.createElement(s.Upload,S({},n),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(dr,null),size:\"small\"},\"\\u5BFC\\u5165\")),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(sr,null),size:\"small\",href:\"/website/backup\",target:\"_blank\"},\"\\u5BFC\\u51FA\")))),r.default.createElement(\"div\",{className:\"container\"},r.default.createElement(s.Card,{className:\"main-card\"},a())))}function Md(){(0,ii.createRoot)(document.getElementById(\"app\")).render(r.default.createElement(_d,null))}\n/*! Bundled license information:\n\nclassnames/index.js:\n (*!\n \tCopyright (c) 2018 Jed Watson.\n \tLicensed under the MIT License (MIT), see\n \thttp://jedwatson.github.io/classnames\n *)\n*/\n"} + ${"var pi=Object.create;var Ot=Object.defineProperty,mi=Object.defineProperties,gi=Object.getOwnPropertyDescriptor,xi=Object.getOwnPropertyDescriptors,hi=Object.getOwnPropertyNames,Kt=Object.getOwnPropertySymbols,bi=Object.getPrototypeOf,Wn=Object.prototype.hasOwnProperty,zr=Object.prototype.propertyIsEnumerable;var $r=(e,t,n)=>t in e?Ot(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,S=(e,t)=>{for(var n in t||(t={}))Wn.call(t,n)&&$r(e,n,t[n]);if(Kt)for(var n of Kt(t))zr.call(t,n)&&$r(e,n,t[n]);return e},B=(e,t)=>mi(e,xi(t));var Gn=(e,t)=>{var n={};for(var o in e)Wn.call(e,o)&&t.indexOf(o)<0&&(n[o]=e[o]);if(e!=null&&Kt)for(var o of Kt(e))t.indexOf(o)<0&&zr.call(e,o)&&(n[o]=e[o]);return n};var je=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),yi=(e,t)=>{for(var n in t)Ot(e,n,{get:t[n],enumerable:!0})},qr=(e,t,n,o)=>{if(t&&typeof t==\"object\"||typeof t==\"function\")for(let a of hi(t))!Wn.call(e,a)&&a!==n&&Ot(e,a,{get:()=>t[a],enumerable:!(o=gi(t,a))||o.enumerable});return e};var Y=(e,t,n)=>(n=e!=null?pi(bi(e)):{},qr(t||!e||!e.__esModule?Ot(n,\"default\",{value:e,enumerable:!0}):n,e)),vi=e=>qr(Ot({},\"__esModule\",{value:!0}),e);var Q=je((Bd,Hr)=>{Hr.exports=window.React});var Yn=je(($d,jr)=>{jr.exports=window.ReactDOM});var Ur=je(Kn=>{\"use strict\";var Vr=Yn();Kn.createRoot=Vr.createRoot,Kn.hydrateRoot=Vr.hydrateRoot;var zd});var Gr=je((Hd,Wr)=>{Wr.exports=window.antd});var Kr=je((jd,Yr)=>{Yr.exports=window.axios});var Zr=je((Vd,Xr)=>{Xr.exports=function(){var e=document.getSelection();if(!e.rangeCount)return function(){};for(var t=document.activeElement,n=[],o=0;o{\"use strict\";var wi=Zr(),Jr={\"text/plain\":\"Text\",\"text/html\":\"Url\",default:\"Text\"},Ci=\"Copy to clipboard: #{key}, Enter\";function Si(e){var t=(/mac os x/i.test(navigator.userAgent)?\"\\u2318\":\"Ctrl\")+\"+C\";return e.replace(/#{\\s*key\\s*}/g,t)}function Oi(e,t){var n,o,a,i,l,u,c=!1;t||(t={}),n=t.debug||!1;try{a=wi(),i=document.createRange(),l=document.getSelection(),u=document.createElement(\"span\"),u.textContent=e,u.ariaHidden=\"true\",u.style.all=\"unset\",u.style.position=\"fixed\",u.style.top=0,u.style.clip=\"rect(0, 0, 0, 0)\",u.style.whiteSpace=\"pre\",u.style.webkitUserSelect=\"text\",u.style.MozUserSelect=\"text\",u.style.msUserSelect=\"text\",u.style.userSelect=\"text\",u.addEventListener(\"copy\",function(m){if(m.stopPropagation(),t.format)if(m.preventDefault(),typeof m.clipboardData>\"u\"){n&&console.warn(\"unable to use e.clipboardData\"),n&&console.warn(\"trying IE specific stuff\"),window.clipboardData.clearData();var d=Jr[t.format]||Jr.default;window.clipboardData.setData(d,e)}else m.clipboardData.clearData(),m.clipboardData.setData(t.format,e);t.onCopy&&(m.preventDefault(),t.onCopy(m.clipboardData))}),document.body.appendChild(u),i.selectNodeContents(u),l.addRange(i);var f=document.execCommand(\"copy\");if(!f)throw new Error(\"copy command was unsuccessful\");c=!0}catch(m){n&&console.error(\"unable to copy using execCommand: \",m),n&&console.warn(\"trying IE specific stuff\");try{window.clipboardData.setData(t.format||\"text\",e),t.onCopy&&t.onCopy(window.clipboardData),c=!0}catch(d){n&&console.error(\"unable to copy using clipboardData: \",d),n&&console.error(\"falling back to prompt\"),o=Si(\"message\"in t?t.message:Ci),window.prompt(o,e)}}finally{l&&(typeof l.removeRange==\"function\"?l.removeRange(i):l.removeAllRanges()),u&&document.body.removeChild(u),a()}return c}Qr.exports=Oi});var lo=je((gu,Qt)=>{(function(){\"use strict\";var e={}.hasOwnProperty;function t(){for(var a=\"\",i=0;iMd});module.exports=vi(Pd);var r=Y(Q(),1),ii=Y(Ur(),1),s=Y(Gr(),1),bt=Y(Kr(),1),Mr=Y(Rr(),1);var eo=Y(Q()),ki=(0,eo.createContext)({}),Xt=ki;function K(){return K=Object.assign?Object.assign.bind():function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,o=Array(t);nparseFloat(a));for(let a=0;a<3;a+=1)o[a]=t(o[a]||0,n[a]||\"\",a);return n[3]?o[3]=n[3].includes(\"%\")?o[3]/100:o[3]:o[3]=1,o}var uo=(e,t,n)=>n===0?e:e/100;function kt(e,t){let n=t||255;return e>n?n:e<0?0:e}var Ye=class e{constructor(t){re(this,\"isValid\",!0),re(this,\"r\",0),re(this,\"g\",0),re(this,\"b\",0),re(this,\"a\",1),re(this,\"_h\",void 0),re(this,\"_s\",void 0),re(this,\"_l\",void 0),re(this,\"_v\",void 0),re(this,\"_max\",void 0),re(this,\"_min\",void 0),re(this,\"_brightness\",void 0);function n(o){return o[0]in t&&o[1]in t&&o[2]in t}if(t)if(typeof t==\"string\"){let a=function(i){return o.startsWith(i)},o=t.trim();/^#?[A-F\\d]{3,8}$/i.test(o)?this.fromHexString(o):a(\"rgb\")?this.fromRgbString(o):a(\"hsl\")?this.fromHslString(o):(a(\"hsv\")||a(\"hsb\"))&&this.fromHsvString(o)}else if(t instanceof e)this.r=t.r,this.g=t.g,this.b=t.b,this.a=t.a,this._h=t._h,this._s=t._s,this._l=t._l,this._v=t._v;else if(n(\"rgb\"))this.r=kt(t.r),this.g=kt(t.g),this.b=kt(t.b),this.a=typeof t.a==\"number\"?kt(t.a,1):1;else if(n(\"hsl\"))this.fromHsl(t);else if(n(\"hsv\"))this.fromHsv(t);else throw new Error(\"@ant-design/fast-color: unsupported input \"+JSON.stringify(t))}setR(t){return this._sc(\"r\",t)}setG(t){return this._sc(\"g\",t)}setB(t){return this._sc(\"b\",t)}setA(t){return this._sc(\"a\",t,1)}setHue(t){let n=this.toHsv();return n.h=t,this._c(n)}getLuminance(){function t(i){let l=i/255;return l<=.03928?l/12.92:Math.pow((l+.055)/1.055,2.4)}let n=t(this.r),o=t(this.g),a=t(this.b);return .2126*n+.7152*o+.0722*a}getHue(){if(typeof this._h>\"u\"){let t=this.getMax()-this.getMin();t===0?this._h=0:this._h=oe(60*(this.r===this.getMax()?(this.g-this.b)/t+(this.g\"u\"){let t=this.getMax()-this.getMin();t===0?this._s=0:this._s=t/this.getMax()}return this._s}getLightness(){return typeof this._l>\"u\"&&(this._l=(this.getMax()+this.getMin())/510),this._l}getValue(){return typeof this._v>\"u\"&&(this._v=this.getMax()/255),this._v}getBrightness(){return typeof this._brightness>\"u\"&&(this._brightness=(this.r*299+this.g*587+this.b*114)/1e3),this._brightness}darken(t=10){let n=this.getHue(),o=this.getSaturation(),a=this.getLightness()-t/100;return a<0&&(a=0),this._c({h:n,s:o,l:a,a:this.a})}lighten(t=10){let n=this.getHue(),o=this.getSaturation(),a=this.getLightness()+t/100;return a>1&&(a=1),this._c({h:n,s:o,l:a,a:this.a})}mix(t,n=50){let o=this._c(t),a=n/100,i=u=>(o[u]-this[u])*a+this[u],l={r:oe(i(\"r\")),g:oe(i(\"g\")),b:oe(i(\"b\")),a:oe(i(\"a\")*100)/100};return this._c(l)}tint(t=10){return this.mix({r:255,g:255,b:255,a:1},t)}shade(t=10){return this.mix({r:0,g:0,b:0,a:1},t)}onBackground(t){let n=this._c(t),o=this.a+n.a*(1-this.a),a=i=>oe((this[i]*this.a+n[i]*n.a*(1-this.a))/o);return this._c({r:a(\"r\"),g:a(\"g\"),b:a(\"b\"),a:o})}isDark(){return this.getBrightness()<128}isLight(){return this.getBrightness()>=128}equals(t){return this.r===t.r&&this.g===t.g&&this.b===t.b&&this.a===t.a}clone(){return this._c(this)}toHexString(){let t=\"#\",n=(this.r||0).toString(16);t+=n.length===2?n:\"0\"+n;let o=(this.g||0).toString(16);t+=o.length===2?o:\"0\"+o;let a=(this.b||0).toString(16);if(t+=a.length===2?a:\"0\"+a,typeof this.a==\"number\"&&this.a>=0&&this.a<1){let i=oe(this.a*255).toString(16);t+=i.length===2?i:\"0\"+i}return t}toHsl(){return{h:this.getHue(),s:this.getSaturation(),l:this.getLightness(),a:this.a}}toHslString(){let t=this.getHue(),n=oe(this.getSaturation()*100),o=oe(this.getLightness()*100);return this.a!==1?\"hsla(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%,\").concat(this.a,\")\"):\"hsl(\".concat(t,\",\").concat(n,\"%,\").concat(o,\"%)\")}toHsv(){return{h:this.getHue(),s:this.getSaturation(),v:this.getValue(),a:this.a}}toRgb(){return{r:this.r,g:this.g,b:this.b,a:this.a}}toRgbString(){return this.a!==1?\"rgba(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\",\").concat(this.a,\")\"):\"rgb(\".concat(this.r,\",\").concat(this.g,\",\").concat(this.b,\")\")}toString(){return this.toRgbString()}_sc(t,n,o){let a=this.clone();return a[t]=kt(n,o),a}_c(t){return new this.constructor(t)}getMax(){return typeof this._max>\"u\"&&(this._max=Math.max(this.r,this.g,this.b)),this._max}getMin(){return typeof this._min>\"u\"&&(this._min=Math.min(this.r,this.g,this.b)),this._min}fromHexString(t){let n=t.replace(\"#\",\"\");function o(a,i){return parseInt(n[a]+n[i||a],16)}n.length<6?(this.r=o(0),this.g=o(1),this.b=o(2),this.a=n[3]?o(3)/255:1):(this.r=o(0,1),this.g=o(2,3),this.b=o(4,5),this.a=n[6]?o(6,7)/255:1)}fromHsl({h:t,s:n,l:o,a}){if(this._h=t%360,this._s=n,this._l=o,this.a=typeof a==\"number\"?a:1,n<=0){let g=oe(o*255);this.r=g,this.g=g,this.b=g}let i=0,l=0,u=0,c=t/60,f=(1-Math.abs(2*o-1))*n,m=f*(1-Math.abs(c%2-1));c>=0&&c<1?(i=f,l=m):c>=1&&c<2?(i=m,l=f):c>=2&&c<3?(l=f,u=m):c>=3&&c<4?(l=m,u=f):c>=4&&c<5?(i=m,u=f):c>=5&&c<6&&(i=f,u=m);let d=o-f/2;this.r=oe((i+d)*255),this.g=oe((l+d)*255),this.b=oe((u+d)*255)}fromHsv({h:t,s:n,v:o,a}){this._h=t%360,this._s=n,this._v=o,this.a=typeof a==\"number\"?a:1;let i=oe(o*255);if(this.r=i,this.g=i,this.b=i,n<=0)return;let l=t/60,u=Math.floor(l),c=l-u,f=oe(o*(1-n)*255),m=oe(o*(1-n*c)*255),d=oe(o*(1-n*(1-c))*255);switch(u){case 0:this.g=d,this.b=f;break;case 1:this.r=m,this.b=f;break;case 2:this.r=f,this.b=d;break;case 3:this.r=f,this.g=m;break;case 4:this.r=d,this.g=f;break;case 5:default:this.g=f,this.b=m;break}}fromHsvString(t){let n=Zn(t,uo);this.fromHsv({h:n[0],s:n[1],v:n[2],a:n[3]})}fromHslString(t){let n=Zn(t,uo);this.fromHsl({h:n[0],s:n[1],l:n[2],a:n[3]})}fromRgbString(t){let n=Zn(t,(o,a)=>a.includes(\"%\")?oe(o/100*255):o);this.r=n[0],this.g=n[1],this.b=n[2],this.a=n[3]}};var Rt=2,co=.16,Ti=.05,Ei=.05,Fi=.15,go=5,xo=4,Ii=[{index:7,amount:15},{index:6,amount:25},{index:5,amount:30},{index:5,amount:45},{index:5,amount:65},{index:5,amount:85},{index:4,amount:90},{index:3,amount:95},{index:2,amount:97},{index:1,amount:98}];function fo(e,t,n){var o;return Math.round(e.h)>=60&&Math.round(e.h)<=240?o=n?Math.round(e.h)-Rt*t:Math.round(e.h)+Rt*t:o=n?Math.round(e.h)+Rt*t:Math.round(e.h)-Rt*t,o<0?o+=360:o>=360&&(o-=360),o}function po(e,t,n){if(e.h===0&&e.s===0)return e.s;var o;return n?o=e.s-co*t:t===xo?o=e.s+co:o=e.s+Ti*t,o>1&&(o=1),n&&t===go&&o>.1&&(o=.1),o<.06&&(o=.06),Math.round(o*100)/100}function mo(e,t,n){var o;return n?o=e.v+Ei*t:o=e.v-Fi*t,o=Math.max(0,Math.min(1,o)),Math.round(o*100)/100}function en(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=[],o=new Ye(e),a=o.toHsv(),i=go;i>0;i-=1){var l=new Ye({h:fo(a,i,!0),s:po(a,i,!0),v:mo(a,i,!0)});n.push(l)}n.push(o);for(var u=1;u<=xo;u+=1){var c=new Ye({h:fo(a,u),s:po(a,u),v:mo(a,u)});n.push(c)}return t.theme===\"dark\"?Ii.map(function(f){var m=f.index,d=f.amount;return new Ye(t.backgroundColor||\"#141414\").mix(n[m],d).toHexString()}):n.map(function(f){return f.toHexString()})}var ho=[\"#fff1f0\",\"#ffccc7\",\"#ffa39e\",\"#ff7875\",\"#ff4d4f\",\"#f5222d\",\"#cf1322\",\"#a8071a\",\"#820014\",\"#5c0011\"];ho.primary=ho[5];var bo=[\"#fff2e8\",\"#ffd8bf\",\"#ffbb96\",\"#ff9c6e\",\"#ff7a45\",\"#fa541c\",\"#d4380d\",\"#ad2102\",\"#871400\",\"#610b00\"];bo.primary=bo[5];var yo=[\"#fff7e6\",\"#ffe7ba\",\"#ffd591\",\"#ffc069\",\"#ffa940\",\"#fa8c16\",\"#d46b08\",\"#ad4e00\",\"#873800\",\"#612500\"];yo.primary=yo[5];var vo=[\"#fffbe6\",\"#fff1b8\",\"#ffe58f\",\"#ffd666\",\"#ffc53d\",\"#faad14\",\"#d48806\",\"#ad6800\",\"#874d00\",\"#613400\"];vo.primary=vo[5];var wo=[\"#feffe6\",\"#ffffb8\",\"#fffb8f\",\"#fff566\",\"#ffec3d\",\"#fadb14\",\"#d4b106\",\"#ad8b00\",\"#876800\",\"#614700\"];wo.primary=wo[5];var Co=[\"#fcffe6\",\"#f4ffb8\",\"#eaff8f\",\"#d3f261\",\"#bae637\",\"#a0d911\",\"#7cb305\",\"#5b8c00\",\"#3f6600\",\"#254000\"];Co.primary=Co[5];var So=[\"#f6ffed\",\"#d9f7be\",\"#b7eb8f\",\"#95de64\",\"#73d13d\",\"#52c41a\",\"#389e0d\",\"#237804\",\"#135200\",\"#092b00\"];So.primary=So[5];var Oo=[\"#e6fffb\",\"#b5f5ec\",\"#87e8de\",\"#5cdbd3\",\"#36cfc9\",\"#13c2c2\",\"#08979c\",\"#006d75\",\"#00474f\",\"#002329\"];Oo.primary=Oo[5];var tn=[\"#e6f4ff\",\"#bae0ff\",\"#91caff\",\"#69b1ff\",\"#4096ff\",\"#1677ff\",\"#0958d9\",\"#003eb3\",\"#002c8c\",\"#001d66\"];tn.primary=tn[5];var ko=[\"#f0f5ff\",\"#d6e4ff\",\"#adc6ff\",\"#85a5ff\",\"#597ef7\",\"#2f54eb\",\"#1d39c4\",\"#10239e\",\"#061178\",\"#030852\"];ko.primary=ko[5];var To=[\"#f9f0ff\",\"#efdbff\",\"#d3adf7\",\"#b37feb\",\"#9254de\",\"#722ed1\",\"#531dab\",\"#391085\",\"#22075e\",\"#120338\"];To.primary=To[5];var Eo=[\"#fff0f6\",\"#ffd6e7\",\"#ffadd2\",\"#ff85c0\",\"#f759ab\",\"#eb2f96\",\"#c41d7f\",\"#9e1068\",\"#780650\",\"#520339\"];Eo.primary=Eo[5];var Fo=[\"#a6a6a6\",\"#999999\",\"#8c8c8c\",\"#808080\",\"#737373\",\"#666666\",\"#404040\",\"#1a1a1a\",\"#000000\",\"#000000\"];Fo.primary=Fo[5];var Io=[\"#2a1215\",\"#431418\",\"#58181c\",\"#791a1f\",\"#a61d24\",\"#d32029\",\"#e84749\",\"#f37370\",\"#f89f9a\",\"#fac8c3\"];Io.primary=Io[5];var Do=[\"#2b1611\",\"#441d12\",\"#592716\",\"#7c3118\",\"#aa3e19\",\"#d84a1b\",\"#e87040\",\"#f3956a\",\"#f8b692\",\"#fad4bc\"];Do.primary=Do[5];var No=[\"#2b1d11\",\"#442a11\",\"#593815\",\"#7c4a15\",\"#aa6215\",\"#d87a16\",\"#e89a3c\",\"#f3b765\",\"#f8cf8d\",\"#fae3b7\"];No.primary=No[5];var Ao=[\"#2b2111\",\"#443111\",\"#594214\",\"#7c5914\",\"#aa7714\",\"#d89614\",\"#e8b339\",\"#f3cc62\",\"#f8df8b\",\"#faedb5\"];Ao.primary=Ao[5];var _o=[\"#2b2611\",\"#443b11\",\"#595014\",\"#7c6e14\",\"#aa9514\",\"#d8bd14\",\"#e8d639\",\"#f3ea62\",\"#f8f48b\",\"#fafab5\"];_o.primary=_o[5];var Mo=[\"#1f2611\",\"#2e3c10\",\"#3e4f13\",\"#536d13\",\"#6f9412\",\"#8bbb11\",\"#a9d134\",\"#c9e75d\",\"#e4f88b\",\"#f0fab5\"];Mo.primary=Mo[5];var Po=[\"#162312\",\"#1d3712\",\"#274916\",\"#306317\",\"#3c8618\",\"#49aa19\",\"#6abe39\",\"#8fd460\",\"#b2e58b\",\"#d5f2bb\"];Po.primary=Po[5];var Lo=[\"#112123\",\"#113536\",\"#144848\",\"#146262\",\"#138585\",\"#13a8a8\",\"#33bcb7\",\"#58d1c9\",\"#84e2d8\",\"#b2f1e8\"];Lo.primary=Lo[5];var Bo=[\"#111a2c\",\"#112545\",\"#15325b\",\"#15417e\",\"#1554ad\",\"#1668dc\",\"#3c89e8\",\"#65a9f3\",\"#8dc5f8\",\"#b7dcfa\"];Bo.primary=Bo[5];var $o=[\"#131629\",\"#161d40\",\"#1c2755\",\"#203175\",\"#263ea0\",\"#2b4acb\",\"#5273e0\",\"#7f9ef3\",\"#a8c1f8\",\"#d2e0fa\"];$o.primary=$o[5];var zo=[\"#1a1325\",\"#24163a\",\"#301c4d\",\"#3e2069\",\"#51258f\",\"#642ab5\",\"#854eca\",\"#ab7ae0\",\"#cda8f0\",\"#ebd7fa\"];zo.primary=zo[5];var qo=[\"#291321\",\"#40162f\",\"#551c3b\",\"#75204f\",\"#a02669\",\"#cb2b83\",\"#e0529c\",\"#f37fb7\",\"#f8a8cc\",\"#fad2e3\"];qo.primary=qo[5];var Ho=[\"#151515\",\"#1f1f1f\",\"#2d2d2d\",\"#393939\",\"#494949\",\"#5a5a5a\",\"#6a6a6a\",\"#7b7b7b\",\"#888888\",\"#969696\"];Ho.primary=Ho[5];function jo(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,o)}return n}function he(e){for(var t=1;t0&&arguments[0]!==void 0?arguments[0]:{},t=e.mark;return t?t.startsWith(\"data-\")?t:\"data-\".concat(t):Di}function er(e){if(e.attachTo)return e.attachTo;var t=document.querySelector(\"head\");return t||document.body}function Ni(e){return e===\"queue\"?\"prependQueue\":e?\"prepend\":\"append\"}function tr(e){return Array.from((Rn.get(e)||e).children).filter(function(t){return t.tagName===\"STYLE\"})}function Go(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!Jn())return null;var n=t.csp,o=t.prepend,a=t.priority,i=a===void 0?0:a,l=Ni(o),u=l===\"prependQueue\",c=document.createElement(\"style\");c.setAttribute(Vo,l),u&&i&&c.setAttribute(Uo,\"\".concat(i)),n!=null&&n.nonce&&(c.nonce=n==null?void 0:n.nonce),c.innerHTML=e;var f=er(t),m=f.firstChild;if(o){if(u){var d=(t.styles||tr(f)).filter(function(g){if(![\"prepend\",\"prependQueue\"].includes(g.getAttribute(Vo)))return!1;var p=Number(g.getAttribute(Uo)||0);return i>=p});if(d.length)return f.insertBefore(c,d[d.length-1].nextSibling),c}f.insertBefore(c,m)}else f.appendChild(c);return c}function Ai(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=er(t);return(t.styles||tr(n)).find(function(o){return o.getAttribute(Wo(t))===e})}function _i(e,t){var n=Rn.get(e);if(!n||!Qn(document,n)){var o=Go(\"\",t),a=o.parentNode;Rn.set(e,a),e.removeChild(o)}}function Yo(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=er(n),a=tr(o),i=he(he({},n),{},{styles:a});_i(o,i);var l=Ai(t,i);if(l){var u,c;if((u=i.csp)!==null&&u!==void 0&&u.nonce&&l.nonce!==((c=i.csp)===null||c===void 0?void 0:c.nonce)){var f;l.nonce=(f=i.csp)===null||f===void 0?void 0:f.nonce}return l.innerHTML!==e&&(l.innerHTML=e),l}var m=Go(e,i);return m.setAttribute(Wo(i),t),m}function Ko(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}function Mi(e){return Ko(e)instanceof ShadowRoot}function Xo(e){return Mi(e)?Ko(e):null}var nr={},Pi=[],Li=function(t){Pi.push(t)};function Bi(e,t){if(0)var n}function $i(e,t){if(0)var n}function zi(){nr={}}function Zo(e,t,n){!t&&!nr[n]&&(e(!1,n),nr[n]=!0)}function nn(e,t){Zo(Bi,e,t)}function qi(e,t){Zo($i,e,t)}nn.preMessage=Li;nn.resetWarned=zi;nn.noteOnce=qi;var Jo=nn;var Ke=Y(Q());function Hi(e){return e.replace(/-(.)/g,function(t,n){return n.toUpperCase()})}function Ro(e,t){Jo(e,\"[@ant-design/icons] \".concat(t))}function rr(e){return Ae(e)===\"object\"&&typeof e.name==\"string\"&&typeof e.theme==\"string\"&&(Ae(e.icon)===\"object\"||typeof e.icon==\"function\")}function Qo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Object.keys(e).reduce(function(t,n){var o=e[n];switch(n){case\"class\":t.className=o,delete t.class;break;default:delete t[n],t[Hi(n)]=o}return t},{})}function rn(e,t,n){return n?Ke.default.createElement(e.tag,he(he({key:t},Qo(e.attrs)),n),(e.children||[]).map(function(o,a){return rn(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))})):Ke.default.createElement(e.tag,he({key:t},Qo(e.attrs)),(e.children||[]).map(function(o,a){return rn(o,\"\".concat(t,\"-\").concat(e.tag,\"-\").concat(a))}))}function or(e){return en(e)[0]}function on(e){return e?Array.isArray(e)?e:[e]:[]}var ji=\"\\n.anticon {\\n display: inline-flex;\\n align-items: center;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\",ea=function(t){var n=(0,Ke.useContext)(Xt),o=n.csp,a=n.prefixCls,i=n.layer,l=ji;a&&(l=l.replace(/anticon/g,a)),i&&(l=\"@layer \".concat(i,\" {\\n\").concat(l,\"\\n}\")),(0,Ke.useEffect)(function(){var u=t.current,c=Xo(u);Yo(l,\"@ant-design-icons\",{prepend:!i,csp:o,attachTo:c})},[])};var Vi=[\"icon\",\"className\",\"onClick\",\"style\",\"primaryColor\",\"secondaryColor\"],Tt={primaryColor:\"#333\",secondaryColor:\"#E6E6E6\",calculated:!1};function Ui(e){var t=e.primaryColor,n=e.secondaryColor;Tt.primaryColor=t,Tt.secondaryColor=n||or(t),Tt.calculated=!!n}function Wi(){return he({},Tt)}var an=function(t){var n=t.icon,o=t.className,a=t.onClick,i=t.style,l=t.primaryColor,u=t.secondaryColor,c=Jt(t,Vi),f=ta.useRef(),m=Tt;if(l&&(m={primaryColor:l,secondaryColor:u||or(l)}),ea(f),Ro(rr(n),\"icon should be icon definiton, but got \".concat(n)),!rr(n))return null;var d=n;return d&&typeof d.icon==\"function\"&&(d=he(he({},d),{},{icon:d.icon(m.primaryColor,m.secondaryColor)})),rn(d.icon,\"svg-\".concat(d.name),he(he({className:o,onClick:a,style:i,\"data-icon\":d.name,width:\"1em\",height:\"1em\",fill:\"currentColor\",\"aria-hidden\":\"true\"},c),{},{ref:f}))};an.displayName=\"IconReact\";an.getTwoToneColors=Wi;an.setTwoToneColors=Ui;var Et=an;function ar(e){var t=on(e),n=Zt(t,2),o=n[0],a=n[1];return Et.setTwoToneColors({primaryColor:o,secondaryColor:a})}function na(){var e=Et.getTwoToneColors();return e.calculated?[e.primaryColor,e.secondaryColor]:e.primaryColor}var Gi=[\"className\",\"icon\",\"spin\",\"rotate\",\"tabIndex\",\"onClick\",\"twoToneColor\"];ar(tn.primary);var sn=Xe.forwardRef(function(e,t){var n=e.className,o=e.icon,a=e.spin,i=e.rotate,l=e.tabIndex,u=e.onClick,c=e.twoToneColor,f=Jt(e,Gi),m=Xe.useContext(Xt),d=m.prefixCls,g=d===void 0?\"anticon\":d,p=m.rootClassName,v=(0,ra.default)(p,g,re(re({},\"\".concat(g,\"-\").concat(o.name),!!o.name),\"\".concat(g,\"-spin\"),!!a||o.name===\"loading\"),n),y=l;y===void 0&&u&&(y=-1);var k=i?{msTransform:\"rotate(\".concat(i,\"deg)\"),transform:\"rotate(\".concat(i,\"deg)\")}:void 0,E=on(c),w=Zt(E,2),F=w[0],_=w[1];return Xe.createElement(\"span\",K({role:\"img\",\"aria-label\":o.name},f,{ref:t,tabIndex:y,onClick:u,className:v}),Xe.createElement(Et,{icon:o,primaryColor:F,secondaryColor:_,style:k}))});sn.displayName=\"AntdIcon\";sn.getTwoToneColor=na;sn.setTwoToneColor=ar;var Z=sn;var ln=Y(Q());var Yi={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"check-circle\",theme:\"outlined\"},oa=Yi;var Ki=function(t,n){return ln.createElement(Z,K({},t,{ref:n,icon:oa}))},Xi=ln.forwardRef(Ki),dn=Xi;var un=Y(Q());var Zi={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M832 64H296c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h496v688c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8V96c0-17.7-14.3-32-32-32zM704 192H192c-17.7 0-32 14.3-32 32v530.7c0 8.5 3.4 16.6 9.4 22.6l173.3 173.3c2.2 2.2 4.7 4 7.4 5.5v1.9h4.2c3.5 1.3 7.2 2 11 2H704c17.7 0 32-14.3 32-32V224c0-17.7-14.3-32-32-32zM350 856.2L263.9 770H350v86.2zM664 888H414V746c0-22.1-17.9-40-40-40H232V264h432v624z\"}}]},name:\"copy\",theme:\"outlined\"},aa=Zi;var Ji=function(t,n){return un.createElement(Z,K({},t,{ref:n,icon:aa}))},Qi=un.forwardRef(Ji),ir=Qi;var cn=Y(Q());var Ri={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z\"}}]},name:\"edit\",theme:\"outlined\"},ia=Ri;var es=function(t,n){return cn.createElement(Z,K({},t,{ref:n,icon:ia}))},ts=cn.forwardRef(es),ct=ts;var fn=Y(Q());var ns={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM770.87 199.13l-52.2-52.2a8.01 8.01 0 014.7-13.6l179.4-21c5.1-.6 9.5 3.7 8.9 8.9l-21 179.4c-.8 6.6-8.9 9.4-13.6 4.7l-52.4-52.4-256.2 256.2a8.03 8.03 0 01-11.3 0l-42.4-42.4a8.03 8.03 0 010-11.3l256.1-256.3z\"}}]},name:\"export\",theme:\"outlined\"},sa=ns;var rs=function(t,n){return fn.createElement(Z,K({},t,{ref:n,icon:sa}))},os=fn.forwardRef(rs),sr=os;var pn=Y(Q());var as={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z\"}}]},name:\"holder\",theme:\"outlined\"},la=as;var is=function(t,n){return pn.createElement(Z,K({},t,{ref:n,icon:la}))},ss=pn.forwardRef(is),lr=ss;var mn=Y(Q());var ls={icon:{tag:\"svg\",attrs:{\"fill-rule\":\"evenodd\",viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM653.3 424.6l52.2 52.2a8.01 8.01 0 01-4.7 13.6l-179.4 21c-5.1.6-9.5-3.7-8.9-8.9l21-179.4c.8-6.6 8.9-9.4 13.6-4.7l52.4 52.4 256.2-256.2c3.1-3.1 8.2-3.1 11.3 0l42.4 42.4c3.1 3.1 3.1 8.2 0 11.3L653.3 424.6z\"}}]},name:\"import\",theme:\"outlined\"},da=ls;var ds=function(t,n){return mn.createElement(Z,K({},t,{ref:n,icon:da}))},us=mn.forwardRef(ds),dr=us;var gn=Y(Q());var cs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M574 665.4a8.03 8.03 0 00-11.3 0L446.5 781.6c-53.8 53.8-144.6 59.5-204 0-59.5-59.5-53.8-150.2 0-204l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3l-39.8-39.8a8.03 8.03 0 00-11.3 0L191.4 526.5c-84.6 84.6-84.6 221.5 0 306s221.5 84.6 306 0l116.2-116.2c3.1-3.1 3.1-8.2 0-11.3L574 665.4zm258.6-474c-84.6-84.6-221.5-84.6-306 0L410.3 307.6a8.03 8.03 0 000 11.3l39.7 39.7c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c53.8-53.8 144.6-59.5 204 0 59.5 59.5 53.8 150.2 0 204L665.3 562.6a8.03 8.03 0 000 11.3l39.8 39.8c3.1 3.1 8.2 3.1 11.3 0l116.2-116.2c84.5-84.6 84.5-221.5 0-306.1zM610.1 372.3a8.03 8.03 0 00-11.3 0L372.3 598.7a8.03 8.03 0 000 11.3l39.6 39.6c3.1 3.1 8.2 3.1 11.3 0l226.4-226.4c3.1-3.1 3.1-8.2 0-11.3l-39.5-39.6z\"}}]},name:\"link\",theme:\"outlined\"},ua=cs;var fs=function(t,n){return gn.createElement(Z,K({},t,{ref:n,icon:ua}))},ps=gn.forwardRef(fs),ur=ps;var xn=Y(Q());var ms={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z\"}},{tag:\"path\",attrs:{d:\"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"}}]},name:\"minus-circle\",theme:\"outlined\"},ca=ms;var gs=function(t,n){return xn.createElement(Z,K({},t,{ref:n,icon:ca}))},xs=xn.forwardRef(gs),Ze=xs;var hn=Y(Q());var hs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z\"}},{tag:\"path\",attrs:{d:\"M192 474h672q8 0 8 8v60q0 8-8 8H160q-8 0-8-8v-60q0-8 8-8z\"}}]},name:\"plus\",theme:\"outlined\"},fa=hs;var bs=function(t,n){return hn.createElement(Z,K({},t,{ref:n,icon:fa}))},ys=hn.forwardRef(bs),be=ys;var bn=Y(Q());var vs={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z\"}}]},name:\"setting\",theme:\"outlined\"},pa=vs;var ws=function(t,n){return bn.createElement(Z,K({},t,{ref:n,icon:pa}))},Cs=bn.forwardRef(ws),yn=Cs;var vn=Y(Q());var Ss={icon:{tag:\"svg\",attrs:{viewBox:\"64 64 896 896\",focusable:\"false\"},children:[{tag:\"path\",attrs:{d:\"M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z\"}}]},name:\"user\",theme:\"outlined\"},ma=Ss;var Os=function(t,n){return vn.createElement(Z,K({},t,{ref:n,icon:ma}))},ks=vn.forwardRef(Os),cr=ks;var x=Y(Q()),nt=Y(Yn());var R=Y(Q());function xa(){for(var e=arguments.length,t=new Array(e),n=0;no=>{t.forEach(a=>a(o))},t)}var Ft=typeof window<\"u\"&&typeof window.document<\"u\"&&typeof window.document.createElement<\"u\";function Je(e){let t=Object.prototype.toString.call(e);return t===\"[object Window]\"||t===\"[object global]\"}function wn(e){return\"nodeType\"in e}function pe(e){var t,n;return e?Je(e)?e:wn(e)&&(t=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?t:window:window}function Cn(e){let{Document:t}=pe(e);return e instanceof t}function ft(e){return Je(e)?!1:e instanceof pe(e).HTMLElement}function pr(e){return e instanceof pe(e).SVGElement}function Qe(e){return e?Je(e)?e.document:wn(e)?Cn(e)?e:ft(e)||pr(e)?e.ownerDocument:document:document:document}var ye=Ft?R.useLayoutEffect:R.useEffect;function Sn(e){let t=(0,R.useRef)(e);return ye(()=>{t.current=e}),(0,R.useCallback)(function(){for(var n=arguments.length,o=new Array(n),a=0;a{e.current=setInterval(o,a)},[]),n=(0,R.useCallback)(()=>{e.current!==null&&(clearInterval(e.current),e.current=null)},[]);return[t,n]}function pt(e,t){t===void 0&&(t=[e]);let n=(0,R.useRef)(e);return ye(()=>{n.current!==e&&(n.current=e)},t),n}function mt(e,t){let n=(0,R.useRef)();return(0,R.useMemo)(()=>{let o=e(n.current);return n.current=o,o},[...t])}function It(e){let t=Sn(e),n=(0,R.useRef)(null),o=(0,R.useCallback)(a=>{a!==n.current&&(t==null||t(a,n.current)),n.current=a},[]);return[n,o]}function On(e){let t=(0,R.useRef)();return(0,R.useEffect)(()=>{t.current=e},[e]),t.current}var fr={};function Re(e,t){return(0,R.useMemo)(()=>{if(t)return t;let n=fr[e]==null?0:fr[e]+1;return fr[e]=n,e+\"-\"+n},[e,t])}function ba(e){return function(t){for(var n=arguments.length,o=new Array(n>1?n-1:0),a=1;a{let u=Object.entries(l);for(let[c,f]of u){let m=i[c];m!=null&&(i[c]=m+e*f)}return i},S({},t))}}var et=ba(1),gt=ba(-1);function Ts(e){return\"clientX\"in e&&\"clientY\"in e}function Dt(e){if(!e)return!1;let{KeyboardEvent:t}=pe(e.target);return t&&e instanceof t}function Es(e){if(!e)return!1;let{TouchEvent:t}=pe(e.target);return t&&e instanceof t}function Nt(e){if(Es(e)){if(e.touches&&e.touches.length){let{clientX:t,clientY:n}=e.touches[0];return{x:t,y:n}}else if(e.changedTouches&&e.changedTouches.length){let{clientX:t,clientY:n}=e.changedTouches[0];return{x:t,y:n}}}return Ts(e)?{x:e.clientX,y:e.clientY}:null}var Ve=Object.freeze({Translate:{toString(e){if(!e)return;let{x:t,y:n}=e;return\"translate3d(\"+(t?Math.round(t):0)+\"px, \"+(n?Math.round(n):0)+\"px, 0)\"}},Scale:{toString(e){if(!e)return;let{scaleX:t,scaleY:n}=e;return\"scaleX(\"+t+\") scaleY(\"+n+\")\"}},Transform:{toString(e){if(e)return[Ve.Translate.toString(e),Ve.Scale.toString(e)].join(\" \")}},Transition:{toString(e){let{property:t,duration:n,easing:o}=e;return t+\" \"+n+\"ms \"+o}}}),ga=\"a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]\";function ya(e){return e.matches(ga)?e:e.querySelector(ga)}var tt=Y(Q()),Fs={display:\"none\"};function va(e){let{id:t,value:n}=e;return tt.default.createElement(\"div\",{id:t,style:Fs},n)}function wa(e){let{id:t,announcement:n,ariaLiveType:o=\"assertive\"}=e,a={position:\"fixed\",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:\"hidden\",clip:\"rect(0 0 0 0)\",clipPath:\"inset(100%)\",whiteSpace:\"nowrap\"};return tt.default.createElement(\"div\",{id:t,style:a,role:\"status\",\"aria-live\":o,\"aria-atomic\":!0},n)}function Ca(){let[e,t]=(0,tt.useState)(\"\");return{announce:(0,tt.useCallback)(o=>{o!=null&&t(o)},[]),announcement:e}}var _a=(0,x.createContext)(null);function Is(e){let t=(0,x.useContext)(_a);(0,x.useEffect)(()=>{if(!t)throw new Error(\"useDndMonitor must be used within a children of \");return t(e)},[e,t])}function Ds(){let[e]=(0,x.useState)(()=>new Set),t=(0,x.useCallback)(o=>(e.add(o),()=>e.delete(o)),[e]);return[(0,x.useCallback)(o=>{let{type:a,event:i}=o;e.forEach(l=>{var u;return(u=l[a])==null?void 0:u.call(l,i)})},[e]),t]}var Ns={draggable:\"\\n To pick up a draggable item, press the space bar.\\n While dragging, use the arrow keys to move the item.\\n Press space again to drop the item in its new position, or press escape to cancel.\\n \"},As={onDragStart(e){let{active:t}=e;return\"Picked up draggable item \"+t.id+\".\"},onDragOver(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was moved over droppable area \"+n.id+\".\":\"Draggable item \"+t.id+\" is no longer over a droppable area.\"},onDragEnd(e){let{active:t,over:n}=e;return n?\"Draggable item \"+t.id+\" was dropped over droppable area \"+n.id:\"Draggable item \"+t.id+\" was dropped.\"},onDragCancel(e){let{active:t}=e;return\"Dragging was cancelled. Draggable item \"+t.id+\" was dropped.\"}};function _s(e){let{announcements:t=As,container:n,hiddenTextDescribedById:o,screenReaderInstructions:a=Ns}=e,{announce:i,announcement:l}=Ca(),u=Re(\"DndLiveRegion\"),[c,f]=(0,x.useState)(!1);if((0,x.useEffect)(()=>{f(!0)},[]),Is((0,x.useMemo)(()=>({onDragStart(d){let{active:g}=d;i(t.onDragStart({active:g}))},onDragMove(d){let{active:g,over:p}=d;t.onDragMove&&i(t.onDragMove({active:g,over:p}))},onDragOver(d){let{active:g,over:p}=d;i(t.onDragOver({active:g,over:p}))},onDragEnd(d){let{active:g,over:p}=d;i(t.onDragEnd({active:g,over:p}))},onDragCancel(d){let{active:g,over:p}=d;i(t.onDragCancel({active:g,over:p}))}}),[i,t])),!c)return null;let m=x.default.createElement(x.default.Fragment,null,x.default.createElement(va,{id:o,value:a.draggable}),x.default.createElement(wa,{id:u,announcement:l}));return n?(0,nt.createPortal)(m,n):m}var te;(function(e){e.DragStart=\"dragStart\",e.DragMove=\"dragMove\",e.DragEnd=\"dragEnd\",e.DragCancel=\"dragCancel\",e.DragOver=\"dragOver\",e.RegisterDroppable=\"registerDroppable\",e.SetDroppableDisabled=\"setDroppableDisabled\",e.UnregisterDroppable=\"unregisterDroppable\"})(te||(te={}));function Tn(){}function Lt(e,t){return(0,x.useMemo)(()=>({sensor:e,options:t!=null?t:{}}),[e,t])}function wr(){for(var e=arguments.length,t=new Array(e),n=0;n[...t].filter(o=>o!=null),[...t])}var Te=Object.freeze({x:0,y:0});function Ms(e,t){let{data:{value:n}}=e,{data:{value:o}}=t;return o-n}function Ma(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function Ps(e,t){let n=Math.max(t.top,e.top),o=Math.max(t.left,e.left),a=Math.min(t.left+t.width,e.left+e.width),i=Math.min(t.top+t.height,e.top+e.height),l=a-o,u=i-n;if(o{let{collisionRect:t,droppableRects:n,droppableContainers:o}=e,a=[];for(let i of o){let{id:l}=i,u=n.get(l);if(u){let c=Ps(u,t);c>0&&a.push({id:l,data:{droppableContainer:i,value:c}})}}return a.sort(Ms)};function Bs(e,t,n){return B(S({},e),{scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1})}function Pa(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:Te}function $s(e){return function(n){for(var o=arguments.length,a=new Array(o>1?o-1:0),i=1;iB(S({},l),{top:l.top+e*u.y,bottom:l.bottom+e*u.y,left:l.left+e*u.x,right:l.right+e*u.x}),S({},n))}}var zs=$s(1);function qs(e){if(e.startsWith(\"matrix3d(\")){let t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith(\"matrix(\")){let t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function Hs(e,t,n){let o=qs(t);if(!o)return e;let{scaleX:a,scaleY:i,x:l,y:u}=o,c=e.left-l-(1-a)*parseFloat(n),f=e.top-u-(1-i)*parseFloat(n.slice(n.indexOf(\" \")+1)),m=a?e.width/a:e.width,d=i?e.height/i:e.height;return{width:m,height:d,top:f,right:c+m,bottom:f+d,left:c}}var js={ignoreTransform:!1};function it(e,t){t===void 0&&(t=js);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:f,transformOrigin:m}=pe(e).getComputedStyle(e);f&&(n=Hs(n,f,m))}let{top:o,left:a,width:i,height:l,bottom:u,right:c}=n;return{top:o,left:a,width:i,height:l,bottom:u,right:c}}function Sa(e){return it(e,{ignoreTransform:!0})}function Vs(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function Us(e,t){return t===void 0&&(t=pe(e).getComputedStyle(e)),t.position===\"fixed\"}function Ws(e,t){t===void 0&&(t=pe(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[\"overflow\",\"overflowX\",\"overflowY\"].some(a=>{let i=t[a];return typeof i==\"string\"?n.test(i):!1})}function In(e,t){let n=[];function o(a){if(t!=null&&n.length>=t||!a)return n;if(Cn(a)&&a.scrollingElement!=null&&!n.includes(a.scrollingElement))return n.push(a.scrollingElement),n;if(!ft(a)||pr(a)||n.includes(a))return n;let i=pe(e).getComputedStyle(a);return a!==e&&Ws(a,i)&&n.push(a),Us(a,i)?n:o(a.parentNode)}return e?o(e):n}function La(e){let[t]=In(e,1);return t!=null?t:null}function mr(e){return!Ft||!e?null:Je(e)?e:wn(e)?Cn(e)||e===Qe(e).scrollingElement?window:ft(e)?e:null:null}function Ba(e){return Je(e)?e.scrollX:e.scrollLeft}function $a(e){return Je(e)?e.scrollY:e.scrollTop}function hr(e){return{x:Ba(e),y:$a(e)}}var ae;(function(e){e[e.Forward=1]=\"Forward\",e[e.Backward=-1]=\"Backward\"})(ae||(ae={}));function za(e){return!Ft||!e?!1:e===document.scrollingElement}function qa(e){let t={x:0,y:0},n=za(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},o={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height},a=e.scrollTop<=t.y,i=e.scrollLeft<=t.x,l=e.scrollTop>=o.y,u=e.scrollLeft>=o.x;return{isTop:a,isLeft:i,isBottom:l,isRight:u,maxScroll:o,minScroll:t}}var Gs={x:.2,y:.2};function Ys(e,t,n,o,a){let{top:i,left:l,right:u,bottom:c}=n;o===void 0&&(o=10),a===void 0&&(a=Gs);let{isTop:f,isBottom:m,isLeft:d,isRight:g}=qa(e),p={x:0,y:0},v={x:0,y:0},y={height:t.height*a.y,width:t.width*a.x};return!f&&i<=t.top+y.height?(p.y=ae.Backward,v.y=o*Math.abs((t.top+y.height-i)/y.height)):!m&&c>=t.bottom-y.height&&(p.y=ae.Forward,v.y=o*Math.abs((t.bottom-y.height-c)/y.height)),!g&&u>=t.right-y.width?(p.x=ae.Forward,v.x=o*Math.abs((t.right-y.width-u)/y.width)):!d&&l<=t.left+y.width&&(p.x=ae.Backward,v.x=o*Math.abs((t.left+y.width-l)/y.width)),{direction:p,speed:v}}function Ks(e){if(e===document.scrollingElement){let{innerWidth:i,innerHeight:l}=window;return{top:0,left:0,right:i,bottom:l,width:i,height:l}}let{top:t,left:n,right:o,bottom:a}=e.getBoundingClientRect();return{top:t,left:n,right:o,bottom:a,width:e.clientWidth,height:e.clientHeight}}function Ha(e){return e.reduce((t,n)=>et(t,hr(n)),Te)}function Xs(e){return e.reduce((t,n)=>t+Ba(n),0)}function Zs(e){return e.reduce((t,n)=>t+$a(n),0)}function Js(e,t){if(t===void 0&&(t=it),!e)return;let{top:n,left:o,bottom:a,right:i}=t(e);La(e)&&(a<=0||i<=0||n>=window.innerHeight||o>=window.innerWidth)&&e.scrollIntoView({block:\"center\",inline:\"center\"})}var Qs=[[\"x\",[\"left\",\"right\"],Xs],[\"y\",[\"top\",\"bottom\"],Zs]],_t=class{constructor(t,n){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let o=In(n),a=Ha(o);this.rect=S({},t),this.width=t.width,this.height=t.height;for(let[i,l,u]of Qs)for(let c of l)Object.defineProperty(this,c,{get:()=>{let f=u(o),m=a[i]-f;return this.rect[c]+m},enumerable:!0});Object.defineProperty(this,\"rect\",{enumerable:!1})}},rt=class{constructor(t){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(n=>{var o;return(o=this.target)==null?void 0:o.removeEventListener(...n)})},this.target=t}add(t,n,o){var a;(a=this.target)==null||a.addEventListener(t,n,o),this.listeners.push([t,n,o])}};function Rs(e){let{EventTarget:t}=pe(e);return e instanceof t?e:Qe(e)}function gr(e,t){let n=Math.abs(e.x),o=Math.abs(e.y);return typeof t==\"number\"?Math.sqrt(n**2+o**2)>t:\"x\"in t&&\"y\"in t?n>t.x&&o>t.y:\"x\"in t?n>t.x:\"y\"in t?o>t.y:!1}var ve;(function(e){e.Click=\"click\",e.DragStart=\"dragstart\",e.Keydown=\"keydown\",e.ContextMenu=\"contextmenu\",e.Resize=\"resize\",e.SelectionChange=\"selectionchange\",e.VisibilityChange=\"visibilitychange\"})(ve||(ve={}));function Oa(e){e.preventDefault()}function el(e){e.stopPropagation()}var W;(function(e){e.Space=\"Space\",e.Down=\"ArrowDown\",e.Right=\"ArrowRight\",e.Left=\"ArrowLeft\",e.Up=\"ArrowUp\",e.Esc=\"Escape\",e.Enter=\"Enter\",e.Tab=\"Tab\"})(W||(W={}));var ja={start:[W.Space,W.Enter],cancel:[W.Esc],end:[W.Space,W.Enter,W.Tab]},tl=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case W.Right:return B(S({},n),{x:n.x+25});case W.Left:return B(S({},n),{x:n.x-25});case W.Down:return B(S({},n),{y:n.y+25});case W.Up:return B(S({},n),{y:n.y-25})}},En=class{constructor(t){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=t;let{event:{target:n}}=t;this.props=t,this.listeners=new rt(Qe(n)),this.windowListeners=new rt(pe(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(ve.Resize,this.handleCancel),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(ve.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:t,onStart:n}=this.props,o=t.node.current;o&&Js(o),n(Te)}handleKeyDown(t){if(Dt(t)){let{active:n,context:o,options:a}=this.props,{keyboardCodes:i=ja,coordinateGetter:l=tl,scrollBehavior:u=\"smooth\"}=a,{code:c}=t;if(i.end.includes(c)){this.handleEnd(t);return}if(i.cancel.includes(c)){this.handleCancel(t);return}let{collisionRect:f}=o.current,m=f?{x:f.left,y:f.top}:Te;this.referenceCoordinates||(this.referenceCoordinates=m);let d=l(t,{active:n,context:o.current,currentCoordinates:m});if(d){let g=gt(d,m),p={x:0,y:0},{scrollableAncestors:v}=o.current;for(let y of v){let k=t.code,{isTop:E,isRight:w,isLeft:F,isBottom:_,maxScroll:z,minScroll:H}=qa(y),h=Ks(y),C={x:Math.min(k===W.Right?h.right-h.width/2:h.right,Math.max(k===W.Right?h.left:h.left+h.width/2,d.x)),y:Math.min(k===W.Down?h.bottom-h.height/2:h.bottom,Math.max(k===W.Down?h.top:h.top+h.height/2,d.y))},L=k===W.Right&&!w||k===W.Left&&!F,M=k===W.Down&&!_||k===W.Up&&!E;if(L&&C.x!==d.x){let N=y.scrollLeft+g.x,j=k===W.Right&&N<=z.x||k===W.Left&&N>=H.x;if(j&&!g.y){y.scrollTo({left:N,behavior:u});return}j?p.x=y.scrollLeft-N:p.x=k===W.Right?y.scrollLeft-z.x:y.scrollLeft-H.x,p.x&&y.scrollBy({left:-p.x,behavior:u});break}else if(M&&C.y!==d.y){let N=y.scrollTop+g.y,j=k===W.Down&&N<=z.y||k===W.Up&&N>=H.y;if(j&&!g.x){y.scrollTo({top:N,behavior:u});return}j?p.y=y.scrollTop-N:p.y=k===W.Down?y.scrollTop-z.y:y.scrollTop-H.y,p.y&&y.scrollBy({top:-p.y,behavior:u});break}}this.handleMove(t,et(gt(d,this.referenceCoordinates),p))}}}handleMove(t,n){let{onMove:o}=this.props;t.preventDefault(),o(n)}handleEnd(t){let{onEnd:n}=this.props;t.preventDefault(),this.detach(),n()}handleCancel(t){let{onCancel:n}=this.props;t.preventDefault(),this.detach(),n()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}};En.activators=[{eventName:\"onKeyDown\",handler:(e,t,n)=>{let{keyboardCodes:o=ja,onActivation:a}=t,{active:i}=n,{code:l}=e.nativeEvent;if(o.start.includes(l)){let u=i.activatorNode.current;return u&&e.target!==u?!1:(e.preventDefault(),a==null||a({event:e.nativeEvent}),!0)}return!1}}];function ka(e){return!!(e&&\"distance\"in e)}function Ta(e){return!!(e&&\"delay\"in e)}var Mt=class{constructor(t,n,o){var a;o===void 0&&(o=Rs(t.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=t,this.events=n;let{event:i}=t,{target:l}=i;this.props=t,this.events=n,this.document=Qe(l),this.documentListeners=new rt(this.document),this.listeners=new rt(o),this.windowListeners=new rt(pe(l)),this.initialCoordinates=(a=Nt(i))!=null?a:Te,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){let{events:t,props:{options:{activationConstraint:n,bypassActivationConstraint:o}}}=this;if(this.listeners.add(t.move.name,this.handleMove,{passive:!1}),this.listeners.add(t.end.name,this.handleEnd),t.cancel&&this.listeners.add(t.cancel.name,this.handleCancel),this.windowListeners.add(ve.Resize,this.handleCancel),this.windowListeners.add(ve.DragStart,Oa),this.windowListeners.add(ve.VisibilityChange,this.handleCancel),this.windowListeners.add(ve.ContextMenu,Oa),this.documentListeners.add(ve.Keydown,this.handleKeydown),n){if(o!=null&&o({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Ta(n)){this.timeoutId=setTimeout(this.handleStart,n.delay),this.handlePending(n);return}if(ka(n)){this.handlePending(n);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(t,n){let{active:o,onPending:a}=this.props;a(o,t,this.initialCoordinates,n)}handleStart(){let{initialCoordinates:t}=this,{onStart:n}=this.props;t&&(this.activated=!0,this.documentListeners.add(ve.Click,el,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(ve.SelectionChange,this.removeTextSelection),n(t))}handleMove(t){var n;let{activated:o,initialCoordinates:a,props:i}=this,{onMove:l,options:{activationConstraint:u}}=i;if(!a)return;let c=(n=Nt(t))!=null?n:Te,f=gt(a,c);if(!o&&u){if(ka(u)){if(u.tolerance!=null&&gr(f,u.tolerance))return this.handleCancel();if(gr(f,u.distance))return this.handleStart()}if(Ta(u)&&gr(f,u.tolerance))return this.handleCancel();this.handlePending(u,f);return}t.cancelable&&t.preventDefault(),l(c)}handleEnd(){let{onAbort:t,onEnd:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleCancel(){let{onAbort:t,onCancel:n}=this.props;this.detach(),this.activated||t(this.props.active),n()}handleKeydown(t){t.code===W.Esc&&this.handleCancel()}removeTextSelection(){var t;(t=this.document.getSelection())==null||t.removeAllRanges()}},nl={cancel:{name:\"pointercancel\"},move:{name:\"pointermove\"},end:{name:\"pointerup\"}},at=class extends Mt{constructor(t){let{event:n}=t,o=Qe(n.target);super(t,nl,o)}};at.activators=[{eventName:\"onPointerDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return!n.isPrimary||n.button!==0?!1:(o==null||o({event:n}),!0)}}];var rl={move:{name:\"mousemove\"},end:{name:\"mouseup\"}},br;(function(e){e[e.RightClick=2]=\"RightClick\"})(br||(br={}));var yr=class extends Mt{constructor(t){super(t,rl,Qe(t.event.target))}};yr.activators=[{eventName:\"onMouseDown\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t;return n.button===br.RightClick?!1:(o==null||o({event:n}),!0)}}];var xr={cancel:{name:\"touchcancel\"},move:{name:\"touchmove\"},end:{name:\"touchend\"}},xt=class extends Mt{constructor(t){super(t,xr)}static setup(){return window.addEventListener(xr.move.name,t,{capture:!1,passive:!1}),function(){window.removeEventListener(xr.move.name,t)};function t(){}}};xt.activators=[{eventName:\"onTouchStart\",handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:o}=t,{touches:a}=n;return a.length>1?!1:(o==null||o({event:n}),!0)}}];var At;(function(e){e[e.Pointer=0]=\"Pointer\",e[e.DraggableRect=1]=\"DraggableRect\"})(At||(At={}));var Fn;(function(e){e[e.TreeOrder=0]=\"TreeOrder\",e[e.ReversedTreeOrder=1]=\"ReversedTreeOrder\"})(Fn||(Fn={}));function ol(e){let{acceleration:t,activator:n=At.Pointer,canScroll:o,draggingRect:a,enabled:i,interval:l=5,order:u=Fn.TreeOrder,pointerCoordinates:c,scrollableAncestors:f,scrollableAncestorRects:m,delta:d,threshold:g}=e,p=il({delta:d,disabled:!i}),[v,y]=ha(),k=(0,x.useRef)({x:0,y:0}),E=(0,x.useRef)({x:0,y:0}),w=(0,x.useMemo)(()=>{switch(n){case At.Pointer:return c?{top:c.y,bottom:c.y,left:c.x,right:c.x}:null;case At.DraggableRect:return a}},[n,a,c]),F=(0,x.useRef)(null),_=(0,x.useCallback)(()=>{let H=F.current;if(!H)return;let h=k.current.x*E.current.x,C=k.current.y*E.current.y;H.scrollBy(h,C)},[]),z=(0,x.useMemo)(()=>u===Fn.TreeOrder?[...f].reverse():f,[u,f]);(0,x.useEffect)(()=>{if(!i||!f.length||!w){y();return}for(let H of z){if((o==null?void 0:o(H))===!1)continue;let h=f.indexOf(H),C=m[h];if(!C)continue;let{direction:L,speed:M}=Ys(H,C,w,t,g);for(let N of[\"x\",\"y\"])p[N][L[N]]||(M[N]=0,L[N]=0);if(M.x>0||M.y>0){y(),F.current=H,v(_,l),k.current=M,E.current=L;return}}k.current={x:0,y:0},E.current={x:0,y:0},y()},[t,_,o,y,i,l,JSON.stringify(w),JSON.stringify(p),v,f,z,m,JSON.stringify(g)])}var al={x:{[ae.Backward]:!1,[ae.Forward]:!1},y:{[ae.Backward]:!1,[ae.Forward]:!1}};function il(e){let{delta:t,disabled:n}=e,o=On(t);return mt(a=>{if(n||!o||!a)return al;let i={x:Math.sign(t.x-o.x),y:Math.sign(t.y-o.y)};return{x:{[ae.Backward]:a.x[ae.Backward]||i.x===-1,[ae.Forward]:a.x[ae.Forward]||i.x===1},y:{[ae.Backward]:a.y[ae.Backward]||i.y===-1,[ae.Forward]:a.y[ae.Forward]||i.y===1}}},[n,t,o])}function sl(e,t){let n=t!=null?e.get(t):void 0,o=n?n.node.current:null;return mt(a=>{var i;return t==null?null:(i=o!=null?o:a)!=null?i:null},[o,t])}function ll(e,t){return(0,x.useMemo)(()=>e.reduce((n,o)=>{let{sensor:a}=o,i=a.activators.map(l=>({eventName:l.eventName,handler:t(l.handler,o)}));return[...n,...i]},[]),[e,t])}var Pt;(function(e){e[e.Always=0]=\"Always\",e[e.BeforeDragging=1]=\"BeforeDragging\",e[e.WhileDragging=2]=\"WhileDragging\"})(Pt||(Pt={}));var vr;(function(e){e.Optimized=\"optimized\"})(vr||(vr={}));var Ea=new Map;function dl(e,t){let{dragging:n,dependencies:o,config:a}=t,[i,l]=(0,x.useState)(null),{frequency:u,measure:c,strategy:f}=a,m=(0,x.useRef)(e),d=k(),g=pt(d),p=(0,x.useCallback)(function(E){E===void 0&&(E=[]),!g.current&&l(w=>w===null?E:w.concat(E.filter(F=>!w.includes(F))))},[g]),v=(0,x.useRef)(null),y=mt(E=>{if(d&&!n)return Ea;if(!E||E===Ea||m.current!==e||i!=null){let w=new Map;for(let F of e){if(!F)continue;if(i&&i.length>0&&!i.includes(F.id)&&F.rect.current){w.set(F.id,F.rect.current);continue}let _=F.node.current,z=_?new _t(c(_),_):null;F.rect.current=z,z&&w.set(F.id,z)}return w}return E},[e,i,n,d,c]);return(0,x.useEffect)(()=>{m.current=e},[e]),(0,x.useEffect)(()=>{d||p()},[n,d]),(0,x.useEffect)(()=>{i&&i.length>0&&l(null)},[JSON.stringify(i)]),(0,x.useEffect)(()=>{d||typeof u!=\"number\"||v.current!==null||(v.current=setTimeout(()=>{p(),v.current=null},u))},[u,d,p,...o]),{droppableRects:y,measureDroppableContainers:p,measuringScheduled:i!=null};function k(){switch(f){case Pt.Always:return!1;case Pt.BeforeDragging:return n;default:return!n}}}function Va(e,t){return mt(n=>e?n||(typeof t==\"function\"?t(e):e):null,[t,e])}function ul(e,t){return Va(e,t)}function cl(e){let{callback:t,disabled:n}=e,o=Sn(t),a=(0,x.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.MutationObserver>\"u\")return;let{MutationObserver:i}=window;return new i(o)},[o,n]);return(0,x.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function Dn(e){let{callback:t,disabled:n}=e,o=Sn(t),a=(0,x.useMemo)(()=>{if(n||typeof window>\"u\"||typeof window.ResizeObserver>\"u\")return;let{ResizeObserver:i}=window;return new i(o)},[n]);return(0,x.useEffect)(()=>()=>a==null?void 0:a.disconnect(),[a]),a}function fl(e){return new _t(it(e),e)}function Fa(e,t,n){t===void 0&&(t=fl);let[o,a]=(0,x.useState)(null);function i(){a(c=>{if(!e)return null;if(e.isConnected===!1){var f;return(f=c!=null?c:n)!=null?f:null}let m=t(e);return JSON.stringify(c)===JSON.stringify(m)?c:m})}let l=cl({callback(c){if(e)for(let f of c){let{type:m,target:d}=f;if(m===\"childList\"&&d instanceof HTMLElement&&d.contains(e)){i();break}}}}),u=Dn({callback:i});return ye(()=>{i(),e?(u==null||u.observe(e),l==null||l.observe(document.body,{childList:!0,subtree:!0})):(u==null||u.disconnect(),l==null||l.disconnect())},[e]),o}function pl(e){let t=Va(e);return Pa(e,t)}var Ia=[];function ml(e){let t=(0,x.useRef)(e),n=mt(o=>e?o&&o!==Ia&&e&&t.current&&e.parentNode===t.current.parentNode?o:In(e):Ia,[e]);return(0,x.useEffect)(()=>{t.current=e},[e]),n}function gl(e){let[t,n]=(0,x.useState)(null),o=(0,x.useRef)(e),a=(0,x.useCallback)(i=>{let l=mr(i.target);l&&n(u=>u?(u.set(l,hr(l)),new Map(u)):null)},[]);return(0,x.useEffect)(()=>{let i=o.current;if(e!==i){l(i);let u=e.map(c=>{let f=mr(c);return f?(f.addEventListener(\"scroll\",a,{passive:!0}),[f,hr(f)]):null}).filter(c=>c!=null);n(u.length?new Map(u):null),o.current=e}return()=>{l(e),l(i)};function l(u){u.forEach(c=>{let f=mr(c);f==null||f.removeEventListener(\"scroll\",a)})}},[a,e]),(0,x.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((i,l)=>et(i,l),Te):Ha(e):Te,[e,t])}function Da(e,t){t===void 0&&(t=[]);let n=(0,x.useRef)(null);return(0,x.useEffect)(()=>{n.current=null},t),(0,x.useEffect)(()=>{let o=e!==Te;o&&!n.current&&(n.current=e),!o&&n.current&&(n.current=null)},[e]),n.current?gt(e,n.current):Te}function xl(e){(0,x.useEffect)(()=>{if(!Ft)return;let t=e.map(n=>{let{sensor:o}=n;return o.setup==null?void 0:o.setup()});return()=>{for(let n of t)n==null||n()}},e.map(t=>{let{sensor:n}=t;return n}))}function hl(e,t){return(0,x.useMemo)(()=>e.reduce((n,o)=>{let{eventName:a,handler:i}=o;return n[a]=l=>{i(l,t)},n},{}),[e,t])}function Ua(e){return(0,x.useMemo)(()=>e?Vs(e):null,[e])}var Na=[];function bl(e,t){t===void 0&&(t=it);let[n]=e,o=Ua(n?pe(n):null),[a,i]=(0,x.useState)(Na);function l(){i(()=>e.length?e.map(c=>za(c)?o:new _t(t(c),c)):Na)}let u=Dn({callback:l});return ye(()=>{u==null||u.disconnect(),l(),e.forEach(c=>u==null?void 0:u.observe(c))},[e]),a}function yl(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return ft(t)?t:e}function vl(e){let{measure:t}=e,[n,o]=(0,x.useState)(null),a=(0,x.useCallback)(f=>{for(let{target:m}of f)if(ft(m)){o(d=>{let g=t(m);return d?B(S({},d),{width:g.width,height:g.height}):g});break}},[t]),i=Dn({callback:a}),l=(0,x.useCallback)(f=>{let m=yl(f);i==null||i.disconnect(),m&&(i==null||i.observe(m)),o(m?t(m):null)},[t,i]),[u,c]=It(l);return(0,x.useMemo)(()=>({nodeRef:u,rect:n,setRef:c}),[n,u,c])}var wl=[{sensor:at,options:{}},{sensor:En,options:{}}],Cl={current:{}},kn={draggable:{measure:Sa},droppable:{measure:Sa,strategy:Pt.WhileDragging,frequency:vr.Optimized},dragOverlay:{measure:it}},ot=class extends Map{get(t){var n;return t!=null&&(n=super.get(t))!=null?n:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(t=>{let{disabled:n}=t;return!n})}getNodeFor(t){var n,o;return(n=(o=this.get(t))==null?void 0:o.node.current)!=null?n:void 0}},Sl={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new ot,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Tn},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:kn,measureDroppableContainers:Tn,windowRect:null,measuringScheduled:!1},Ol={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:\"\"},dispatch:Tn,draggableNodes:new Map,over:null,measureDroppableContainers:Tn},Nn=(0,x.createContext)(Ol),Wa=(0,x.createContext)(Sl);function kl(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new ot}}}function Tl(e,t){switch(t.type){case te.DragStart:return B(S({},e),{draggable:B(S({},e.draggable),{initialCoordinates:t.initialCoordinates,active:t.active})});case te.DragMove:return e.draggable.active==null?e:B(S({},e),{draggable:B(S({},e.draggable),{translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}})});case te.DragEnd:case te.DragCancel:return B(S({},e),{draggable:B(S({},e.draggable),{active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}})});case te.RegisterDroppable:{let{element:n}=t,{id:o}=n,a=new ot(e.droppable.containers);return a.set(o,n),B(S({},e),{droppable:B(S({},e.droppable),{containers:a})})}case te.SetDroppableDisabled:{let{id:n,key:o,disabled:a}=t,i=e.droppable.containers.get(n);if(!i||o!==i.key)return e;let l=new ot(e.droppable.containers);return l.set(n,B(S({},i),{disabled:a})),B(S({},e),{droppable:B(S({},e.droppable),{containers:l})})}case te.UnregisterDroppable:{let{id:n,key:o}=t,a=e.droppable.containers.get(n);if(!a||o!==a.key)return e;let i=new ot(e.droppable.containers);return i.delete(n),B(S({},e),{droppable:B(S({},e.droppable),{containers:i})})}default:return e}}function El(e){let{disabled:t}=e,{active:n,activatorEvent:o,draggableNodes:a}=(0,x.useContext)(Nn),i=On(o),l=On(n==null?void 0:n.id);return(0,x.useEffect)(()=>{if(!t&&!o&&i&&l!=null){if(!Dt(i)||document.activeElement===i.target)return;let u=a.get(l);if(!u)return;let{activatorNode:c,node:f}=u;if(!c.current&&!f.current)return;requestAnimationFrame(()=>{for(let m of[c.current,f.current]){if(!m)continue;let d=ya(m);if(d){d.focus();break}}})}},[o,t,a,l,i]),null}function Fl(e,t){let a=t,{transform:n}=a,o=Gn(a,[\"transform\"]);return e!=null&&e.length?e.reduce((i,l)=>l(S({transform:i},o)),n):n}function Il(e){return(0,x.useMemo)(()=>({draggable:S(S({},kn.draggable),e==null?void 0:e.draggable),droppable:S(S({},kn.droppable),e==null?void 0:e.droppable),dragOverlay:S(S({},kn.dragOverlay),e==null?void 0:e.dragOverlay)}),[e==null?void 0:e.draggable,e==null?void 0:e.droppable,e==null?void 0:e.dragOverlay])}function Dl(e){let{activeNode:t,measure:n,initialRect:o,config:a=!0}=e,i=(0,x.useRef)(!1),{x:l,y:u}=typeof a==\"boolean\"?{x:a,y:a}:a;ye(()=>{if(!l&&!u||!t){i.current=!1;return}if(i.current||!o)return;let f=t==null?void 0:t.node.current;if(!f||f.isConnected===!1)return;let m=n(f),d=Pa(m,o);if(l||(d.x=0),u||(d.y=0),i.current=!0,Math.abs(d.x)>0||Math.abs(d.y)>0){let g=La(f);g&&g.scrollBy({top:d.y,left:d.x})}},[t,l,u,o,n])}var Ga=(0,x.createContext)(B(S({},Te),{scaleX:1,scaleY:1})),Ue;(function(e){e[e.Uninitialized=0]=\"Uninitialized\",e[e.Initializing=1]=\"Initializing\",e[e.Initialized=2]=\"Initialized\"})(Ue||(Ue={}));var Cr=(0,x.memo)(function(t){var n,o,a,i;let O=t,{id:l,accessibility:u,autoScroll:c=!0,children:f,sensors:m=wl,collisionDetection:d=Ls,measuring:g,modifiers:p}=O,v=Gn(O,[\"id\",\"accessibility\",\"autoScroll\",\"children\",\"sensors\",\"collisionDetection\",\"measuring\",\"modifiers\"]),y=(0,x.useReducer)(Tl,void 0,kl),[k,E]=y,[w,F]=Ds(),[_,z]=(0,x.useState)(Ue.Uninitialized),H=_===Ue.Initialized,{draggable:{active:h,nodes:C,translate:L},droppable:{containers:M}}=k,N=h!=null?C.get(h):null,j=(0,x.useRef)({initial:null,translated:null}),ne=(0,x.useMemo)(()=>{var D;return h!=null?{id:h,data:(D=N==null?void 0:N.data)!=null?D:Cl,rect:j}:null},[h,N]),ie=(0,x.useRef)(null),[we,Ce]=(0,x.useState)(null),[J,Ee]=(0,x.useState)(null),ue=pt(v,Object.values(v)),T=Re(\"DndDescribedBy\",l),A=(0,x.useMemo)(()=>M.getEnabled(),[M]),$=Il(g),{droppableRects:U,measureDroppableContainers:me,measuringScheduled:Se}=dl(A,{dragging:H,dependencies:[L.x,L.y],config:$.droppable}),de=sl(C,h),Pe=(0,x.useMemo)(()=>J?Nt(J):null,[J]),Oe=b(),ge=ul(de,$.draggable.measure);Dl({activeNode:h!=null?C.get(h):null,config:Oe.layoutShiftCompensation,initialRect:ge,measure:$.draggable.measure});let q=Fa(de,$.draggable.measure,ge),We=Fa(de?de.parentElement:null),xe=(0,x.useRef)({activatorEvent:null,active:null,activeNode:de,collisionRect:null,collisions:null,droppableRects:U,draggableNodes:C,draggingNode:null,draggingNodeRect:null,droppableContainers:M,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),Le=M.getNodeFor((n=xe.current.over)==null?void 0:n.id),ke=vl({measure:$.dragOverlay.measure}),Be=(o=ke.nodeRef.current)!=null?o:de,_e=H?(a=ke.rect)!=null?a:q:null,Ht=!!(ke.nodeRef.current&&ke.rect),jt=pl(Ht?null:q),yt=Ua(Be?pe(Be):null),Fe=ml(H?Le!=null?Le:de:null),lt=bl(Fe),dt=Fl(p,{transform:{x:L.x-jt.x,y:L.y-jt.y,scaleX:1,scaleY:1},activatorEvent:J,active:ne,activeNodeRect:q,containerNodeRect:We,draggingNodeRect:_e,over:xe.current.over,overlayNodeRect:ke.rect,scrollableAncestors:Fe,scrollableAncestorRects:lt,windowRect:yt}),Vt=Pe?et(Pe,L):null,Ut=gl(Fe),Bn=Da(Ut),$n=Da(Ut,[q]),$e=et(dt,Bn),ze=_e?zs(_e,dt):null,Ge=ne&&ze?d({active:ne,collisionRect:ze,droppableRects:U,droppableContainers:A,pointerCoordinates:Vt}):null,Wt=Ma(Ge,\"id\"),[Ie,Gt]=(0,x.useState)(null),zn=Ht?dt:et(dt,$n),qn=Bs(zn,(i=Ie==null?void 0:Ie.rect)!=null?i:null,q),vt=(0,x.useRef)(null),Yt=(0,x.useCallback)((D,P)=>{let{sensor:V,options:fe}=P;if(ie.current==null)return;let G=C.get(ie.current);if(!G)return;let se=D.nativeEvent,De=new V({active:ie.current,activeNode:G,event:se,options:fe,context:xe,onAbort(le){if(!C.get(le))return;let{onDragAbort:Ne}=ue.current,Me={id:le};Ne==null||Ne(Me),w({type:\"onDragAbort\",event:Me})},onPending(le,qe,Ne,Me){if(!C.get(le))return;let{onDragPending:Ct}=ue.current,He={id:le,constraint:qe,initialCoordinates:Ne,offset:Me};Ct==null||Ct(He),w({type:\"onDragPending\",event:He})},onStart(le){let qe=ie.current;if(qe==null)return;let Ne=C.get(qe);if(!Ne)return;let{onDragStart:Me}=ue.current,wt={activatorEvent:se,active:{id:qe,data:Ne.data,rect:j}};(0,nt.unstable_batchedUpdates)(()=>{Me==null||Me(wt),z(Ue.Initializing),E({type:te.DragStart,initialCoordinates:le,active:qe}),w({type:\"onDragStart\",event:wt}),Ce(vt.current),Ee(se)})},onMove(le){E({type:te.DragMove,coordinates:le})},onEnd:ut(te.DragEnd),onCancel:ut(te.DragCancel)});vt.current=De;function ut(le){return async function(){let{active:Ne,collisions:Me,over:wt,scrollAdjustedTranslate:Ct}=xe.current,He=null;if(Ne&&Ct){let{cancelDrop:St}=ue.current;He={activatorEvent:se,active:Ne,collisions:Me,delta:Ct,over:wt},le===te.DragEnd&&typeof St==\"function\"&&await Promise.resolve(St(He))&&(le=te.DragCancel)}ie.current=null,(0,nt.unstable_batchedUpdates)(()=>{E({type:le}),z(Ue.Uninitialized),Gt(null),Ce(null),Ee(null),vt.current=null;let St=le===te.DragEnd?\"onDragEnd\":\"onDragCancel\";if(He){let Un=ue.current[St];Un==null||Un(He),w({type:St,event:He})}})}}},[C]),Hn=(0,x.useCallback)((D,P)=>(V,fe)=>{let G=V.nativeEvent,se=C.get(fe);if(ie.current!==null||!se||G.dndKit||G.defaultPrevented)return;let De={active:se};D(V,P.options,De)===!0&&(G.dndKit={capturedBy:P.sensor},ie.current=fe,Yt(V,P))},[C,Yt]),ce=ll(m,Hn);xl(m),ye(()=>{q&&_===Ue.Initializing&&z(Ue.Initialized)},[q,_]),(0,x.useEffect)(()=>{let{onDragMove:D}=ue.current,{active:P,activatorEvent:V,collisions:fe,over:G}=xe.current;if(!P||!V)return;let se={active:P,activatorEvent:V,collisions:fe,delta:{x:$e.x,y:$e.y},over:G};(0,nt.unstable_batchedUpdates)(()=>{D==null||D(se),w({type:\"onDragMove\",event:se})})},[$e.x,$e.y]),(0,x.useEffect)(()=>{let{active:D,activatorEvent:P,collisions:V,droppableContainers:fe,scrollAdjustedTranslate:G}=xe.current;if(!D||ie.current==null||!P||!G)return;let{onDragOver:se}=ue.current,De=fe.get(Wt),ut=De&&De.rect.current?{id:De.id,rect:De.rect.current,data:De.data,disabled:De.disabled}:null,le={active:D,activatorEvent:P,collisions:V,delta:{x:G.x,y:G.y},over:ut};(0,nt.unstable_batchedUpdates)(()=>{Gt(ut),se==null||se(le),w({type:\"onDragOver\",event:le})})},[Wt]),ye(()=>{xe.current={activatorEvent:J,active:ne,activeNode:de,collisionRect:ze,collisions:Ge,droppableRects:U,draggableNodes:C,draggingNode:Be,draggingNodeRect:_e,droppableContainers:M,over:Ie,scrollableAncestors:Fe,scrollAdjustedTranslate:$e},j.current={initial:_e,translated:ze}},[ne,de,Ge,ze,C,Be,_e,U,M,Ie,Fe,$e]),ol(B(S({},Oe),{delta:L,draggingRect:ze,pointerCoordinates:Vt,scrollableAncestors:Fe,scrollableAncestorRects:lt}));let jn=(0,x.useMemo)(()=>({active:ne,activeNode:de,activeNodeRect:q,activatorEvent:J,collisions:Ge,containerNodeRect:We,dragOverlay:ke,draggableNodes:C,droppableContainers:M,droppableRects:U,over:Ie,measureDroppableContainers:me,scrollableAncestors:Fe,scrollableAncestorRects:lt,measuringConfiguration:$,measuringScheduled:Se,windowRect:yt}),[ne,de,q,J,Ge,We,ke,C,M,U,Ie,me,Fe,lt,$,Se,yt]),Vn=(0,x.useMemo)(()=>({activatorEvent:J,activators:ce,active:ne,activeNodeRect:q,ariaDescribedById:{draggable:T},dispatch:E,draggableNodes:C,over:Ie,measureDroppableContainers:me}),[J,ce,ne,q,E,T,C,Ie,me]);return x.default.createElement(_a.Provider,{value:F},x.default.createElement(Nn.Provider,{value:Vn},x.default.createElement(Wa.Provider,{value:jn},x.default.createElement(Ga.Provider,{value:qn},f)),x.default.createElement(El,{disabled:(u==null?void 0:u.restoreFocus)===!1})),x.default.createElement(_s,B(S({},u),{hiddenTextDescribedById:T})));function b(){let D=(we==null?void 0:we.autoScrollEnabled)===!1,P=typeof c==\"object\"?c.enabled===!1:c===!1,V=H&&!D&&!P;return typeof c==\"object\"?B(S({},c),{enabled:V}):{enabled:V}}}),Nl=(0,x.createContext)(null),Aa=\"button\",Al=\"Draggable\";function Ya(e){let{id:t,data:n,disabled:o=!1,attributes:a}=e,i=Re(Al),{activators:l,activatorEvent:u,active:c,activeNodeRect:f,ariaDescribedById:m,draggableNodes:d,over:g}=(0,x.useContext)(Nn),{role:p=Aa,roleDescription:v=\"draggable\",tabIndex:y=0}=a!=null?a:{},k=(c==null?void 0:c.id)===t,E=(0,x.useContext)(k?Ga:Nl),[w,F]=It(),[_,z]=It(),H=hl(l,t),h=pt(n);ye(()=>(d.set(t,{id:t,key:i,node:w,activatorNode:_,data:h}),()=>{let L=d.get(t);L&&L.key===i&&d.delete(t)}),[d,t]);let C=(0,x.useMemo)(()=>({role:p,tabIndex:y,\"aria-disabled\":o,\"aria-pressed\":k&&p===Aa?!0:void 0,\"aria-roledescription\":v,\"aria-describedby\":m.draggable}),[o,p,y,k,v,m.draggable]);return{active:c,activatorEvent:u,activeNodeRect:f,attributes:C,isDragging:k,listeners:o?void 0:H,node:w,over:g,setNodeRef:F,setActivatorNodeRef:z,transform:E}}function Ka(){return(0,x.useContext)(Wa)}var _l=\"Droppable\",Ml={timeout:25};function Xa(e){let{data:t,disabled:n=!1,id:o,resizeObserverConfig:a}=e,i=Re(_l),{active:l,dispatch:u,over:c,measureDroppableContainers:f}=(0,x.useContext)(Nn),m=(0,x.useRef)({disabled:n}),d=(0,x.useRef)(!1),g=(0,x.useRef)(null),p=(0,x.useRef)(null),{disabled:v,updateMeasurementsFor:y,timeout:k}=S(S({},Ml),a),E=pt(y!=null?y:o),w=(0,x.useCallback)(()=>{if(!d.current){d.current=!0;return}p.current!=null&&clearTimeout(p.current),p.current=setTimeout(()=>{f(Array.isArray(E.current)?E.current:[E.current]),p.current=null},k)},[k]),F=Dn({callback:w,disabled:v||!l}),_=(0,x.useCallback)((C,L)=>{F&&(L&&(F.unobserve(L),d.current=!1),C&&F.observe(C))},[F]),[z,H]=It(_),h=pt(t);return(0,x.useEffect)(()=>{!F||!z.current||(F.disconnect(),d.current=!1,F.observe(z.current))},[z,F]),(0,x.useEffect)(()=>(u({type:te.RegisterDroppable,element:{id:o,key:i,disabled:n,node:z,rect:g,data:h}}),()=>u({type:te.UnregisterDroppable,key:i,id:o})),[o]),(0,x.useEffect)(()=>{n!==m.current.disabled&&(u({type:te.SetDroppableDisabled,id:o,key:i,disabled:n}),m.current.disabled=n)},[o,i,n,u]),{active:l,rect:g,isOver:(c==null?void 0:c.id)===o,node:z,over:c,setNodeRef:H}}var Sr=e=>{let{transform:t}=e;return B(S({},t),{x:0})};var ee=Y(Q());function Bt(e,t,n){let o=e.slice();return o.splice(n<0?o.length+n:n,0,o.splice(t,1)[0]),o}function Pl(e,t){return e.reduce((n,o,a)=>{let i=t.get(o);return i&&(n[a]=i),n},Array(e.length))}function An(e){return e!==null&&e>=0}function Ll(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n{let{rects:t,activeIndex:n,overIndex:o,index:a}=e,i=Bt(t,o,n),l=t[a],u=i[a];return!u||!l?null:{x:u.left-l.left,y:u.top-l.top,scaleX:u.width/l.width,scaleY:u.height/l.height}};var _n={scaleX:1,scaleY:1},Or=e=>{var t;let{activeIndex:n,activeNodeRect:o,index:a,rects:i,overIndex:l}=e,u=(t=i[n])!=null?t:o;if(!u)return null;if(a===n){let f=i[l];return f?S({x:0,y:nn&&a<=l?S({x:0,y:-u.height-c},_n):a=l?S({x:0,y:u.height+c},_n):S({x:0,y:0},_n)};function $l(e,t,n){let o=e[t],a=e[t-1],i=e[t+1];return o?no.map(H=>typeof H==\"object\"&&\"id\"in H?H.id:H),[o]),v=l!=null,y=l?p.indexOf(l.id):-1,k=f?p.indexOf(f.id):-1,E=(0,ee.useRef)(p),w=!Ll(p,E.current),F=k!==-1&&y===-1||w,_=Bl(i);ye(()=>{w&&v&&m(p)},[w,p,v,m]),(0,ee.useEffect)(()=>{E.current=p},[p]);let z=(0,ee.useMemo)(()=>({activeIndex:y,containerId:d,disabled:_,disableTransforms:F,items:p,overIndex:k,useDragOverlay:g,sortedRects:Pl(p,c),strategy:a}),[y,d,_.draggable,_.droppable,F,p,k,c,g,a]);return ee.default.createElement(Qa.Provider,{value:z},t)}var zl=e=>{let{id:t,items:n,activeIndex:o,overIndex:a}=e;return Bt(n,o,a).indexOf(t)},ql=e=>{let{containerId:t,isSorting:n,wasDragging:o,index:a,items:i,newIndex:l,previousItems:u,previousContainerId:c,transition:f}=e;return!f||!o||u!==i&&a===l?!1:n?!0:l!==a&&t===c},Hl={duration:200,easing:\"ease\"},Ra=\"transform\",jl=Ve.Transition.toString({property:Ra,duration:0,easing:\"linear\"}),Vl={roleDescription:\"sortable\"};function Ul(e){let{disabled:t,index:n,node:o,rect:a}=e,[i,l]=(0,ee.useState)(null),u=(0,ee.useRef)(n);return ye(()=>{if(!t&&n!==u.current&&o.current){let c=a.current;if(c){let f=it(o.current,{ignoreTransform:!0}),m={x:c.left-f.left,y:c.top-f.top,scaleX:c.width/f.width,scaleY:c.height/f.height};(m.x||m.y)&&l(m)}}n!==u.current&&(u.current=n)},[t,n,o,a]),(0,ee.useEffect)(()=>{i&&l(null)},[i]),i}function Tr(e){let{animateLayoutChanges:t=ql,attributes:n,disabled:o,data:a,getNewIndex:i=zl,id:l,strategy:u,resizeObserverConfig:c,transition:f=Hl}=e,{items:m,containerId:d,activeIndex:g,disabled:p,disableTransforms:v,sortedRects:y,overIndex:k,useDragOverlay:E,strategy:w}=(0,ee.useContext)(Qa),F=Wl(o,p),_=m.indexOf(l),z=(0,ee.useMemo)(()=>S({sortable:{containerId:d,index:_,items:m}},a),[d,a,_,m]),H=(0,ee.useMemo)(()=>m.slice(m.indexOf(l)),[m,l]),{rect:h,node:C,isOver:L,setNodeRef:M}=Xa({id:l,data:z,disabled:F.droppable,resizeObserverConfig:S({updateMeasurementsFor:H},c)}),{active:N,activatorEvent:j,activeNodeRect:ne,attributes:ie,setNodeRef:we,listeners:Ce,isDragging:J,over:Ee,setActivatorNodeRef:ue,transform:T}=Ya({id:l,data:z,attributes:S(S({},Vl),n),disabled:F.draggable}),A=xa(M,we),$=!!N,U=$&&!v&&An(g)&&An(k),me=!E&&J,Se=me&&U?T:null,de=u!=null?u:w,Pe=U?Se!=null?Se:de({rects:y,activeNodeRect:ne,activeIndex:g,overIndex:k,index:_}):null,Oe=An(g)&&An(k)?i({id:l,items:m,activeIndex:g,overIndex:k}):_,ge=N==null?void 0:N.id,q=(0,ee.useRef)({activeId:ge,items:m,newIndex:Oe,containerId:d}),We=m!==q.current.items,xe=t({active:N,containerId:d,isDragging:J,isSorting:$,id:l,index:_,items:m,newIndex:q.current.newIndex,previousItems:q.current.items,previousContainerId:q.current.containerId,transition:f,wasDragging:q.current.activeId!=null}),Le=Ul({disabled:!xe,index:_,node:C,rect:h});return(0,ee.useEffect)(()=>{$&&q.current.newIndex!==Oe&&(q.current.newIndex=Oe),d!==q.current.containerId&&(q.current.containerId=d),m!==q.current.items&&(q.current.items=m)},[$,Oe,d,m]),(0,ee.useEffect)(()=>{if(ge===q.current.activeId)return;if(ge!=null&&q.current.activeId==null){q.current.activeId=ge;return}let Be=setTimeout(()=>{q.current.activeId=ge},50);return()=>clearTimeout(Be)},[ge]),{active:N,activeIndex:g,attributes:ie,data:z,rect:h,index:_,newIndex:Oe,items:m,isOver:L,isSorting:$,isDragging:J,listeners:Ce,node:C,overIndex:k,over:Ee,setNodeRef:A,setActivatorNodeRef:ue,setDroppableNodeRef:M,setDraggableNodeRef:we,transform:Le!=null?Le:Pe,transition:ke()};function ke(){if(Le||We&&q.current.newIndex===_)return jl;if(!(me&&!Dt(j)||!f)&&($||xe))return Ve.Transition.toString(B(S({},f),{property:Ra}))}}function Wl(e,t){var n,o;return typeof e==\"boolean\"?{draggable:e,droppable:!1}:{draggable:(n=e==null?void 0:e.draggable)!=null?n:t.draggable,droppable:(o=e==null?void 0:e.droppable)!=null?o:t.droppable}}var Lf=[W.Down,W.Right,W.Up,W.Left];if(typeof window<\"u\"){let e=document.createElement(\"style\");e.textContent=\".container {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n flex: 1;\\n width: 100%;\\n padding: 16px;\\n box-sizing: border-box;\\n background: #F2F2F7;\\n}\\n.qrcode-card {\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n width: 100%;\\n max-width: 360px;\\n margin: 0 auto;\\n padding: 24px 20px;\\n}\\n.qrcode-wrapper {\\n position: relative;\\n cursor: pointer;\\n margin-bottom: 24px;\\n display: flex;\\n justify-content: center;\\n}\\n.qrcode-wrapper:hover .qrcode-glow {\\n opacity: 0.4;\\n}\\n.qrcode-glow {\\n position: absolute;\\n inset: -4px;\\n background: linear-gradient(135deg, #60a5fa 0%, #a78bfa 100%);\\n border-radius: 24px;\\n filter: blur(12px);\\n opacity: 0.2;\\n transition: opacity 0.3s ease;\\n z-index: 0;\\n}\\n.qrcode-container {\\n position: relative;\\n background: #fff;\\n padding: 16px;\\n border-radius: 20px;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n z-index: 1;\\n}\\n.qrcode-image {\\n width: 160px;\\n height: 160px;\\n border-radius: 12px;\\n object-fit: cover;\\n transition: opacity 0.3s ease;\\n}\\n.qrcode-image--loading {\\n opacity: 0.3;\\n}\\n.qrcode-overlay {\\n position: absolute;\\n inset: 0;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(4px);\\n border-radius: 20px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 12px;\\n z-index: 10;\\n}\\n.qrcode-overlay span {\\n font-size: 12px;\\n font-weight: 500;\\n color: #8E8E93;\\n letter-spacing: 0.5px;\\n}\\n.qrcode-spinner {\\n width: 32px;\\n height: 32px;\\n border: 2px solid rgba(59, 130, 246, 0.2);\\n border-top-color: #3b82f6;\\n border-radius: 50%;\\n animation: spin 0.8s linear infinite;\\n}\\n@keyframes spin {\\n to {\\n transform: rotate(360deg);\\n }\\n}\\n.qrcode-status {\\n position: absolute;\\n bottom: -14px;\\n left: 50%;\\n transform: translateX(-50%);\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 4px 12px;\\n background: rgba(255, 255, 255, 0.95);\\n backdrop-filter: blur(8px);\\n border-radius: 12px;\\n border: 1px solid rgba(0, 0, 0, 0.05);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);\\n z-index: 20;\\n white-space: nowrap;\\n}\\n.status-dot {\\n width: 6px;\\n height: 6px;\\n border-radius: 50%;\\n flex-shrink: 0;\\n transition: background-color 0.3s ease;\\n}\\n.status-dot--pulse {\\n animation: pulse 1.5s ease-in-out infinite;\\n}\\n@keyframes pulse {\\n 0%,\\n 100% {\\n opacity: 1;\\n }\\n 50% {\\n opacity: 0.5;\\n }\\n}\\n.status-text {\\n font-size: 10px;\\n font-weight: 600;\\n color: #8E8E93;\\n text-transform: uppercase;\\n letter-spacing: 0.5px;\\n white-space: nowrap;\\n}\\n.cookie-result-wrapper {\\n width: 100%;\\n margin-bottom: 20px;\\n}\\n.cookie-result {\\n width: 100%;\\n height: 120px;\\n padding: 14px;\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 16px;\\n font-size: 12px;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n color: #1C1C1E;\\n resize: none;\\n outline: none;\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04);\\n transition: background-color 0.2s ease, box-shadow 0.2s ease;\\n box-sizing: border-box;\\n}\\n.cookie-result::placeholder {\\n color: #8E8E93;\\n}\\n.cookie-result:focus {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.04), 0 0 0 2px rgba(59, 130, 246, 0.2);\\n}\\n.action-buttons {\\n display: grid;\\n grid-template-columns: 1fr 1fr;\\n gap: 12px;\\n width: 100%;\\n}\\n.action-btn {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n padding: 14px 20px;\\n border-radius: 16px;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n border: none;\\n outline: none;\\n}\\n.action-btn:active {\\n transform: scale(0.98);\\n}\\n.action-btn--primary {\\n background: #1C1C1E;\\n color: #fff;\\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\\n}\\n.action-btn--primary:hover {\\n background: #2C2C2E;\\n}\\n.action-btn--secondary {\\n background: #fff;\\n color: #1C1C1E;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);\\n}\\n.action-btn--secondary:hover {\\n background: #F9F9F9;\\n}\\n.btn-icon {\\n display: block;\\n flex-shrink: 0;\\n width: 16px;\\n height: 16px;\\n opacity: 0.7;\\n}\\n.btn-icon--login {\\n transform: translateY(1px);\\n}\\n.dynamic-delete-button {\\n position: relative;\\n top: 2px;\\n margin: 0 8px;\\n color: #555;\\n font-size: 18px;\\n cursor: pointer;\\n transition: all 0.3s;\\n}\\n.dynamic-delete-button:hover {\\n color: #777;\\n}\\n.dynamic-delete-button[disabled] {\\n cursor: not-allowed;\\n opacity: 0.5;\\n}\\n.domain-edit-modal {\\n --domain-action-size: 32px;\\n --domain-action-gap: 8px;\\n --domain-action-total: calc(var(--domain-action-size) + var(--domain-action-gap));\\n --domain-row-gap: 12px;\\n --domain-label-width: 72px;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label {\\n flex: 0 0 var(--domain-label-width) !important;\\n max-width: var(--domain-label-width) !important;\\n padding-left: 8px;\\n padding-right: 12px;\\n padding-bottom: 0 !important;\\n display: flex !important;\\n align-items: center !important;\\n height: 32px !important;\\n text-align: right;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-label > label {\\n height: 32px !important;\\n line-height: 32px !important;\\n}\\n.domain-edit-modal .ant-form-horizontal .ant-form-item-control {\\n flex: 1 1 auto !important;\\n max-width: calc(100% - var(--domain-label-width)) !important;\\n min-width: 0;\\n}\\n.domain-edit-modal .domain-edit-aligned-input {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .domain-edit-full-input {\\n width: 100%;\\n}\\n.domain-edit-modal .domain-edit-add-button {\\n width: calc(100% - var(--domain-action-total));\\n}\\n.domain-edit-modal .ant-form-item {\\n margin-bottom: var(--domain-row-gap);\\n}\\n.domain-edit-modal .ant-form-item:last-child {\\n margin-bottom: 0;\\n}\\n.domain-list-row {\\n display: flex;\\n align-items: center;\\n gap: var(--domain-action-gap, 8px);\\n width: 100%;\\n}\\n.domain-list-input {\\n flex: 1;\\n min-width: 0;\\n}\\n.domain-list-action {\\n width: var(--domain-action-size, 32px);\\n flex: 0 0 var(--domain-action-size, 32px);\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n}\\n.domain-list-action--placeholder {\\n visibility: hidden;\\n}\\n.domain-list-row .dynamic-delete-button {\\n margin: 0;\\n}\\n.sites-table .ant-table-tbody > tr > td {\\n padding: 8px 16px;\\n}\\n.sites-table .ant-table-thead > tr > th {\\n white-space: nowrap;\\n}\\n.sites-list-toolbar {\\n display: flex;\\n justify-content: flex-end;\\n margin: -2px 0 12px;\\n}\\n.sites-list-toolbar .sites-add-button {\\n min-width: 78px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.site-add-menu {\\n min-width: 190px;\\n padding: 8px;\\n border-radius: 20px;\\n background: rgba(255, 255, 255, 0.86);\\n backdrop-filter: blur(28px);\\n border: 1px solid rgba(255, 255, 255, 0.45);\\n box-shadow: 0 22px 44px rgba(28, 28, 30, 0.16), 0 1px 0 rgba(255, 255, 255, 0.7) inset;\\n}\\n.site-add-type-item {\\n width: 100%;\\n min-height: 56px;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n padding: 8px 10px;\\n border: 0;\\n border-radius: 14px;\\n background: transparent;\\n color: #1C1C1E;\\n font-size: 15px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.site-add-type-item:hover:not(:disabled) {\\n background: rgba(52, 199, 89, 0.1);\\n}\\n.site-add-type-item:disabled {\\n cursor: not-allowed;\\n opacity: 0.65;\\n}\\n.site-add-type-item__icon {\\n width: 36px;\\n height: 36px;\\n flex: 0 0 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 10px;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.site-add-type-item__icon img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.site-add-type-item__icon svg {\\n font-size: 18px;\\n color: #34C759;\\n}\\n.site-add-type-item__name {\\n flex: 1;\\n min-width: 0;\\n overflow: hidden;\\n text-align: left;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-page {\\n display: flex;\\n flex-direction: column;\\n gap: 24px;\\n}\\n.subscription-section {\\n max-width: 720px;\\n}\\n.subscription-setting-modal .ios-form {\\n max-width: none !important;\\n}\\n.subscription-endpoints {\\n display: flex;\\n flex-direction: column;\\n gap: 10px;\\n}\\n.subscription-endpoint {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n min-height: 64px;\\n padding: 12px 10px 12px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 14px;\\n background: rgba(255, 255, 255, 0.72);\\n}\\n.subscription-endpoint__main {\\n flex: 1;\\n min-width: 0;\\n}\\n.subscription-endpoint__title {\\n display: flex;\\n align-items: center;\\n gap: 8px;\\n margin-bottom: 6px;\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 700;\\n}\\n.subscription-endpoint__url {\\n overflow: hidden;\\n color: #6B7280;\\n font-family: 'SF Mono', Monaco, 'Courier New', monospace;\\n font-size: 12px;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.subscription-endpoint__actions {\\n display: flex;\\n flex: 0 0 auto;\\n gap: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn {\\n width: 34px;\\n height: 34px;\\n border-radius: 12px;\\n color: #1C1C1E;\\n}\\n.subscription-endpoint__actions .ant-btn:hover {\\n background: rgba(0, 0, 0, 0.04) !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus,\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n background: transparent !important;\\n}\\n.subscription-endpoint__actions .ant-btn:focus-visible {\\n outline: 2px solid rgba(28, 28, 30, 0.22);\\n outline-offset: 2px;\\n}\\n.subscription-endpoint__actions .ant-btn:active {\\n background: rgba(0, 0, 0, 0.06) !important;\\n}\\n.main-card {\\n min-height: auto;\\n max-height: calc(100vh - 100px);\\n width: 100%;\\n max-width: 420px;\\n overflow: auto;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(50px);\\n border-radius: 32px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n border: 1px solid rgba(255, 255, 255, 0.2);\\n animation: fadeInUp 0.6s cubic-bezier(0.16, 1, 0.3, 1) forwards;\\n}\\n.main-card .ant-card-body {\\n padding: 24px 16px;\\n}\\n.main-card .ant-tabs-nav {\\n margin-bottom: 16px;\\n}\\n.main-card .ant-tabs-nav::before {\\n display: none;\\n}\\n.main-card .ant-tabs-nav-list {\\n display: flex;\\n flex-wrap: wrap;\\n gap: 6px;\\n padding: 6px;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n width: 100%;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab {\\n flex: 1;\\n min-width: 0;\\n margin: 0 !important;\\n padding: 8px 12px !important;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n transition: all 0.3s ease;\\n justify-content: center;\\n}\\n.main-card .ant-tabs-tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn {\\n color: #1C1C1E;\\n}\\n.main-card .ant-tabs-ink-bar {\\n display: none;\\n}\\n.main-card .account-tabs {\\n width: 100%;\\n}\\n.main-card .account-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n margin-bottom: 16px;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.main-card .account-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.main-card .account-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.main-card .account-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.main-card .account-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n flex: 0 0 auto;\\n min-width: 44px;\\n min-height: 34px;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n background: transparent;\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n line-height: 1;\\n white-space: nowrap;\\n cursor: pointer;\\n transition: color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;\\n appearance: none;\\n}\\n.main-card .account-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.main-card .account-tabs__tab--active {\\n background: #fff;\\n color: #1C1C1E;\\n box-shadow: 0 4px 12px -2px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.05);\\n}\\n.main-card .account-tabs__panel {\\n width: 100%;\\n}\\n@keyframes fadeInUp {\\n from {\\n opacity: 0;\\n transform: translateY(16px);\\n }\\n to {\\n opacity: 1;\\n transform: translateY(0);\\n }\\n}\\n.app-layout {\\n display: flex;\\n flex-direction: column;\\n min-height: 100vh;\\n width: 100%;\\n background: #F2F2F7;\\n}\\n.top-nav-bar {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n width: 100%;\\n padding: 12px 16px;\\n background: transparent;\\n box-sizing: border-box;\\n}\\n.nav-pill {\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n padding: 4px;\\n background: rgba(255, 255, 255, 0.65);\\n backdrop-filter: blur(20px);\\n border-radius: 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(255, 255, 255, 0.5) inset, 0 0 0 1px rgba(0, 0, 0, 0.03);\\n}\\n.nav-tab {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n padding: 8px 16px;\\n border-radius: 16px;\\n cursor: pointer;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n border: none;\\n transition: all 0.3s ease;\\n}\\n.nav-tab:hover {\\n color: #1C1C1E;\\n}\\n.nav-tab--active {\\n color: #1C1C1E;\\n background: #fff;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.nav-tab--active:hover {\\n background: #fff;\\n color: #1C1C1E;\\n}\\n.nav-tab .anticon {\\n font-size: 14px;\\n}\\n.nav-divider {\\n width: 1px;\\n height: 20px;\\n background: rgba(0, 0, 0, 0.1);\\n margin: 0 4px;\\n}\\n.nav-actions {\\n display: flex;\\n align-items: center;\\n gap: 2px;\\n}\\n.nav-actions .ant-btn {\\n color: #8E8E93;\\n font-size: 12px;\\n font-weight: 500;\\n padding: 6px 12px;\\n height: auto;\\n border-radius: 12px;\\n}\\n.nav-actions .ant-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.drag-handle {\\n cursor: grab;\\n color: #999;\\n font-size: 18px;\\n padding: 8px;\\n touch-action: none;\\n}\\n.drag-handle:active {\\n cursor: grabbing;\\n}\\n.pansou-config-modal {\\n max-width: 420px;\\n}\\n.pansou-config-modal .ant-modal-body {\\n padding: 16px 24px;\\n}\\n.pansou-config-tabs {\\n margin-bottom: 16px;\\n}\\n.pansou-config-tabs__nav-scroll {\\n width: 100%;\\n max-width: 100%;\\n padding: 6px;\\n overflow-x: auto !important;\\n overflow-y: hidden;\\n background: rgba(118, 118, 128, 0.1);\\n border-radius: 14px;\\n box-sizing: border-box;\\n cursor: grab;\\n overscroll-behavior-x: contain;\\n scrollbar-width: none;\\n touch-action: pan-x;\\n -ms-overflow-style: none;\\n -webkit-overflow-scrolling: touch;\\n}\\n.pansou-config-tabs__nav-scroll::-webkit-scrollbar {\\n display: none;\\n}\\n.pansou-config-tabs__nav-scroll.is-dragging {\\n cursor: grabbing;\\n user-select: none;\\n}\\n.pansou-config-tabs__nav-list {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 4px;\\n width: max-content;\\n min-width: 100%;\\n justify-content: flex-start;\\n}\\n.pansou-config-tabs__tab {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n gap: 8px;\\n flex: 0 0 auto;\\n margin: 0;\\n padding: 8px 12px;\\n border: 0;\\n border-radius: 10px;\\n font-size: 13px;\\n font-weight: 500;\\n color: #8E8E93;\\n background: transparent;\\n outline: none;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.pansou-config-tabs__tab:hover {\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__tab--active {\\n background: rgba(118, 118, 128, 0.12);\\n color: #1C1C1E;\\n}\\n.pansou-config-tabs__badge {\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n min-width: 22px;\\n height: 16px;\\n padding: 0 6px;\\n border-radius: 999px;\\n font-size: 11px;\\n line-height: 16px;\\n font-weight: 600;\\n color: #fff;\\n background: #1C1C1E;\\n}\\n.pansou-checkbox-section {\\n min-height: 200px;\\n max-height: 400px;\\n overflow-y: auto;\\n}\\n.pansou-checkbox-header {\\n display: flex;\\n justify-content: space-between;\\n align-items: center;\\n margin-bottom: 12px;\\n padding: 0 4px;\\n color: #8E8E93;\\n font-size: 13px;\\n}\\n.pansou-checkbox-header .ant-btn-link {\\n color: #1C1C1E;\\n font-weight: 500;\\n padding: 4px 8px;\\n height: auto;\\n}\\n.pansou-checkbox-header .ant-btn-link:hover,\\n.pansou-checkbox-header .ant-btn-link:focus,\\n.pansou-checkbox-header .ant-btn-link:active {\\n color: #3C3C3E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.pansou-add-channel {\\n display: flex;\\n gap: 8px;\\n margin-bottom: 12px;\\n}\\n.pansou-checkbox-grid {\\n display: grid;\\n grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));\\n gap: 8px;\\n}\\n.pansou-checkbox-card {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n padding: 10px 14px;\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n border-radius: 10px;\\n cursor: pointer;\\n transition: all 0.2s;\\n background: #fff;\\n}\\n.pansou-checkbox-card:hover {\\n border-color: rgba(0, 0, 0, 0.12);\\n background: #F9F9F9;\\n}\\n.pansou-checkbox-card--selected {\\n border-color: #1C1C1E;\\n background: rgba(28, 28, 30, 0.04);\\n}\\n.pansou-checkbox-card--selected .pansou-checkbox-card__check {\\n color: #1C1C1E;\\n}\\n.pansou-checkbox-card__label {\\n flex: 1;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n font-size: 13px;\\n}\\n.pansou-checkbox-card__delete {\\n flex-shrink: 0;\\n color: #8E8E93;\\n font-size: 14px;\\n margin-left: 6px;\\n transition: color 0.2s;\\n}\\n.pansou-checkbox-card__delete:hover {\\n color: #ef4444;\\n}\\n.pansou-empty-tip {\\n text-align: center;\\n color: #8E8E93;\\n padding: 40px 0;\\n font-size: 13px;\\n}\\n.pansou-config-footer {\\n margin-top: 16px;\\n padding-top: 16px;\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-manager {\\n display: flex;\\n flex-direction: column;\\n gap: 14px;\\n}\\n.emby-server-toolbar {\\n display: flex;\\n flex-direction: column;\\n align-items: stretch;\\n gap: 12px;\\n padding: 4px 0 2px;\\n}\\n.emby-server-toolbar__main {\\n display: flex;\\n align-items: center;\\n justify-content: space-between;\\n gap: 12px;\\n}\\n.emby-server-toolbar .ant-btn {\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n border-radius: 16px;\\n font-weight: 600;\\n box-shadow: 0 8px 18px rgba(28, 28, 30, 0.12);\\n}\\n.emby-server-title {\\n color: #1C1C1E;\\n font-size: 17px;\\n font-weight: 700;\\n line-height: 1.2;\\n}\\n.emby-server-subtitle {\\n color: #8E8E93;\\n font-size: 12px;\\n line-height: 1.4;\\n}\\n.emby-empty-card {\\n width: 100%;\\n min-height: 116px;\\n display: flex;\\n flex-direction: column;\\n align-items: center;\\n justify-content: center;\\n gap: 10px;\\n border: 1px dashed rgba(28, 28, 30, 0.2);\\n border-radius: 18px;\\n background: rgba(255, 255, 255, 0.55);\\n color: #1C1C1E;\\n font-size: 14px;\\n font-weight: 600;\\n cursor: pointer;\\n transition: all 0.2s ease;\\n}\\n.emby-empty-card .anticon {\\n width: 36px;\\n height: 36px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-radius: 50%;\\n background: rgba(52, 199, 89, 0.14);\\n color: #22c55e;\\n font-size: 17px;\\n}\\n.emby-empty-card:hover {\\n background: rgba(255, 255, 255, 0.75);\\n border-color: rgba(28, 28, 30, 0.35);\\n}\\n.emby-server-grid {\\n display: grid;\\n grid-template-columns: 1fr;\\n gap: 10px;\\n}\\n.emby-server-card {\\n position: relative;\\n overflow: hidden;\\n display: flex;\\n align-items: center;\\n gap: 12px;\\n min-height: 82px;\\n padding: 12px 14px;\\n border-radius: 12px;\\n background: linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(242, 247, 245, 0.9));\\n box-shadow: 0 10px 22px rgba(28, 28, 30, 0.06);\\n border: 1px solid rgba(255, 255, 255, 0.62);\\n}\\n.emby-server-card__hero {\\n display: flex;\\n align-items: center;\\n flex: 0 0 auto;\\n}\\n.emby-server-card__logo {\\n width: 48px;\\n height: 48px;\\n flex: 0 0 48px;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n overflow: hidden;\\n border-radius: 12px;\\n background: rgba(255, 255, 255, 0.92);\\n border: 1px solid rgba(0, 0, 0, 0.06);\\n}\\n.emby-server-card__logo img {\\n width: 100%;\\n height: 100%;\\n object-fit: cover;\\n}\\n.emby-server-card__content {\\n min-width: 0;\\n flex: 1;\\n}\\n.emby-server-card__name {\\n display: flex;\\n align-items: center;\\n gap: 6px;\\n min-width: 0;\\n color: #111;\\n font-size: 15px;\\n font-weight: 700;\\n line-height: 1.3;\\n}\\n.emby-server-card__name span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__name .anticon {\\n flex: 0 0 auto;\\n color: #22c55e;\\n font-size: 12px;\\n}\\n.emby-server-card__stats {\\n display: flex;\\n flex-wrap: nowrap;\\n gap: 10px;\\n margin-top: 7px;\\n color: #6b7280;\\n font-size: 12px;\\n line-height: 1.35;\\n}\\n.emby-server-card__stats .emby-server-card__stat,\\n.emby-server-card__stats .emby-server-card__sync {\\n min-width: 0;\\n display: flex;\\n align-items: center;\\n gap: 4px;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n.emby-server-card__stats .emby-server-card__stat {\\n flex: 0 1 auto;\\n max-width: 72px;\\n}\\n.emby-server-card__stats .emby-server-card__stat span {\\n min-width: 0;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n}\\n.emby-server-card__stats .emby-server-card__sync {\\n color: #8e8e93;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon {\\n width: 17px;\\n height: 17px;\\n flex: 0 0 auto;\\n color: #8e8e93;\\n fill: currentColor;\\n}\\n.emby-server-card__stats .emby-server-card__stat-icon--series {\\n width: 18px;\\n height: 18px;\\n fill: none;\\n stroke: currentColor;\\n stroke-width: 1.5;\\n stroke-linecap: round;\\n stroke-linejoin: round;\\n}\\n.emby-server-card__actions {\\n flex: 0 0 auto;\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n justify-content: center;\\n gap: 4px;\\n}\\n.emby-server-card__actions .ant-btn {\\n width: 30px;\\n height: 30px;\\n padding: 0;\\n border-radius: 10px;\\n}\\n.emby-server-edit-modal .ant-modal-body {\\n padding-top: 18px;\\n}\\n.emby-server-edit-actions {\\n justify-content: space-between;\\n}\\n.emby-server-edit-actions--new {\\n justify-content: flex-end;\\n}\\n.emby-logo-preview {\\n display: flex;\\n align-items: center;\\n gap: 10px;\\n margin: -4px 0 16px;\\n color: #8e8e93;\\n font-size: 12px;\\n}\\n.emby-logo-preview img {\\n width: 38px;\\n height: 38px;\\n border-radius: 10px;\\n object-fit: cover;\\n background: #fff;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.ant-input,\\n.ant-input-password .ant-input,\\n.ant-input-number,\\n.ant-input-number-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n font-size: 14px;\\n}\\n.ant-input:focus,\\n.ant-input-password .ant-input:focus,\\n.ant-input-number:focus,\\n.ant-input-number-input:focus,\\n.ant-input:hover,\\n.ant-input-password .ant-input:hover,\\n.ant-input-number:hover,\\n.ant-input-number-input:hover,\\n.ant-input.ant-input-focused,\\n.ant-input-password .ant-input.ant-input-focused,\\n.ant-input-number.ant-input-focused,\\n.ant-input-number-input.ant-input-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.ant-input {\\n padding: 10px 14px;\\n}\\n.ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 6px 14px;\\n}\\n.ant-input-affix-wrapper:focus,\\n.ant-input-affix-wrapper:hover,\\n.ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n padding: 4px 0;\\n box-shadow: none;\\n}\\n.ant-input-affix-wrapper .ant-input:focus,\\n.ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n.ant-input-number {\\n width: 100%;\\n padding: 0;\\n}\\n.ant-input-number .ant-input-number-input {\\n padding: 10px 14px;\\n height: auto;\\n}\\n.ant-input-number:focus,\\n.ant-input-number:hover,\\n.ant-input-number.ant-input-number-focused {\\n border-color: transparent !important;\\n}\\n.ant-input-number-group-addon {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 0 12px 12px 0;\\n color: #8E8E93;\\n font-size: 13px;\\n padding: 0 14px;\\n min-width: 50px;\\n text-align: center;\\n}\\n.ant-input-number-group .ant-input-number {\\n border-radius: 12px 0 0 12px;\\n}\\n.ios-form .ant-form-item {\\n margin-bottom: 16px;\\n}\\n.ios-form .ant-form-item-label > label {\\n color: #8E8E93;\\n font-size: 13px;\\n font-weight: 500;\\n}\\n.ios-button-group {\\n display: flex;\\n gap: 12px;\\n margin-top: 20px;\\n}\\n.action-btn--danger {\\n background: #fff;\\n color: #ef4444;\\n border: 1px solid rgba(239, 68, 68, 0.3);\\n}\\n.action-btn--danger:hover {\\n background: rgba(239, 68, 68, 0.05);\\n}\\n.ios-modal {\\n max-width: 420px;\\n}\\n.ios-modal .ant-modal-content {\\n background: rgba(255, 255, 255, 0.9);\\n backdrop-filter: blur(30px);\\n border-radius: 24px;\\n box-shadow: 0 24px 48px -12px rgba(0, 0, 0, 0.15);\\n border: 1px solid rgba(255, 255, 255, 0.3);\\n}\\n.ios-modal .ant-modal-header {\\n background: transparent;\\n border-bottom: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 20px 24px;\\n border-radius: 24px 24px 0 0;\\n}\\n.ios-modal .ant-modal-title {\\n font-size: 17px;\\n font-weight: 600;\\n color: #1C1C1E;\\n}\\n.ios-modal .ant-modal-body {\\n padding: 20px 24px;\\n}\\n.ios-modal .ant-modal-footer {\\n border-top: 1px solid rgba(0, 0, 0, 0.06);\\n padding: 16px 24px;\\n}\\n.ios-modal .ant-modal-close {\\n top: 16px;\\n right: 16px;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x {\\n color: #8E8E93;\\n}\\n.ios-modal .ant-modal-close .ant-modal-close-x:hover {\\n color: #1C1C1E;\\n}\\n.ant-message .ant-message-notice-content {\\n background: rgba(255, 255, 255, 0.85);\\n backdrop-filter: blur(20px);\\n border-radius: 16px;\\n padding: 12px 20px;\\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);\\n border: 1px solid rgba(255, 255, 255, 0.5);\\n}\\n.ios-alert {\\n background: rgba(59, 130, 246, 0.08);\\n border: none;\\n border-radius: 12px;\\n}\\n.ios-alert .ant-alert-message {\\n color: #1C1C1E;\\n font-weight: 500;\\n}\\n.ios-alert .ant-alert-description {\\n color: #8E8E93;\\n}\\n.ant-switch {\\n background: rgba(120, 120, 128, 0.16);\\n min-width: 51px;\\n height: 31px;\\n}\\n.ant-switch .ant-switch-handle {\\n width: 27px;\\n height: 27px;\\n top: 2px;\\n inset-inline-start: 2px;\\n}\\n.ant-switch .ant-switch-handle::before {\\n border-radius: 50%;\\n box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15), 0 1px 1px rgba(0, 0, 0, 0.16);\\n}\\n.ant-switch:hover:not(.ant-switch-disabled) {\\n background: rgba(120, 120, 128, 0.24);\\n}\\n.ant-switch:focus {\\n box-shadow: none;\\n}\\n.ant-switch.ant-switch-checked {\\n background: #34C759;\\n}\\n.ant-switch.ant-switch-checked .ant-switch-handle {\\n inset-inline-start: calc(100% - 29px);\\n}\\n.ant-switch.ant-switch-checked:hover:not(.ant-switch-disabled) {\\n background: #2DB84E;\\n}\\n.ios-edit-btn {\\n color: #8E8E93;\\n padding: 4px 8px;\\n border-radius: 8px;\\n transition: all 0.2s ease;\\n}\\n.ios-edit-btn:hover {\\n color: #1C1C1E;\\n background: rgba(0, 0, 0, 0.04);\\n}\\n.ios-edit-btn .anticon {\\n font-size: 16px;\\n}\\n.ios-tag {\\n background: rgba(118, 118, 128, 0.12);\\n border: none;\\n border-radius: 6px;\\n color: #8E8E93;\\n font-size: 11px;\\n font-weight: 500;\\n padding: 2px 8px;\\n line-height: 1.4;\\n}\\n.ant-space-compact .ant-input {\\n border-radius: 12px 0 0 12px;\\n}\\n.ant-space-compact .ant-btn {\\n border-radius: 0 12px 12px 0;\\n}\\n.ant-space-compact .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n}\\n.ant-space-compact .ant-btn-primary:hover,\\n.ant-space-compact .ant-btn-primary:focus,\\n.ant-space-compact .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n}\\n.xunlei-verify-compact .ant-input,\\n.xunlei-verify-compact .ant-btn {\\n height: 44px;\\n}\\n.xunlei-verify-compact .ant-input {\\n line-height: 22px;\\n}\\n.xunlei-verify-compact .xunlei-verify-send-btn {\\n min-width: 126px;\\n display: inline-flex;\\n align-items: center;\\n justify-content: center;\\n border-color: rgba(0, 0, 0, 0.12);\\n box-shadow: none;\\n}\\n.ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n}\\n.ant-btn-primary:hover,\\n.ant-btn-primary:focus,\\n.ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.ant-btn-dashed {\\n border-radius: 12px;\\n border-color: rgba(0, 0, 0, 0.15) !important;\\n color: #8E8E93;\\n}\\n.ant-btn-dashed:hover,\\n.ant-btn-dashed:focus,\\n.ant-btn-dashed:active {\\n color: #1C1C1E !important;\\n border-color: rgba(0, 0, 0, 0.3) !important;\\n background: rgba(0, 0, 0, 0.02) !important;\\n}\\n.ant-btn-text:hover,\\n.ant-btn-text:focus,\\n.ant-btn-text:active {\\n background: rgba(0, 0, 0, 0.04) !important;\\n color: #1C1C1E !important;\\n}\\n.ant-btn-link {\\n color: #1C1C1E;\\n}\\n.ant-btn-link:hover,\\n.ant-btn-link:focus,\\n.ant-btn-link:active {\\n color: #3C3C3E !important;\\n background: transparent !important;\\n}\\n.ant-btn-dangerous.ant-btn-text {\\n color: #ef4444;\\n}\\n.ant-btn-dangerous.ant-btn-text:hover,\\n.ant-btn-dangerous.ant-btn-text:focus,\\n.ant-btn-dangerous.ant-btn-text:active {\\n color: #dc2626 !important;\\n background: rgba(239, 68, 68, 0.04) !important;\\n}\\n.action-btn--secondary-outline {\\n background: #fff;\\n color: #8E8E93;\\n border: 1px solid rgba(0, 0, 0, 0.08);\\n}\\n.action-btn--secondary-outline:hover {\\n color: #1C1C1E;\\n background: #F9F9F9;\\n}\\n.pansou-add-channel .ant-btn-primary {\\n background: #1C1C1E;\\n border: none;\\n border-radius: 12px;\\n font-weight: 500;\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);\\n}\\n.pansou-add-channel .ant-btn-primary:hover,\\n.pansou-add-channel .ant-btn-primary:focus,\\n.pansou-add-channel .ant-btn-primary:active {\\n background: #2C2C2E !important;\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 8px 14px;\\n}\\n.pansou-add-channel .ant-input:focus,\\n.pansou-add-channel .ant-input:hover {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent;\\n}\\n.pansou-add-channel .ant-input-clear-icon {\\n color: #8E8E93;\\n}\\n.pansou-add-channel .ant-input-clear-icon:hover {\\n color: #1C1C1E;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper {\\n background: rgba(118, 118, 128, 0.08);\\n border: none;\\n border-radius: 12px;\\n padding: 4px 14px;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper:focus,\\n.pansou-add-channel .ant-input-affix-wrapper:hover,\\n.pansou-add-channel .ant-input-affix-wrapper.ant-input-affix-wrapper-focused {\\n background: rgba(255, 255, 255, 0.8);\\n box-shadow: 0 0 0 2px rgba(28, 28, 30, 0.15);\\n border-color: transparent !important;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input {\\n background: transparent;\\n box-shadow: none;\\n padding: 4px 0;\\n}\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:focus,\\n.pansou-add-channel .ant-input-affix-wrapper .ant-input:hover {\\n box-shadow: none;\\n}\\n\",document.head.appendChild(e)}var $t=\"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAICAgICAQICAgIDAgIDAwYEAwMDAwcFBQQGCAcJCAgHCAgJCg0LCQoMCggICw8LDA0ODg8OCQsQERAOEQ0ODg7/2wBDAQIDAwMDAwcEBAcOCQgJDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg7/wgARCAE8ATwDAREAAhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAABQYABAIDBwEJCP/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAPv4QhCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCGsoFU8IQhD0tG80FgtEKxQNRkXDMpmZfNpSMDcVDQQhCEMi6XTIgMEEWzI9IQ8MRjGQCh4PngtCKUjaN4QE43j6XRQKwZFIEGw9IQxMhyHcskARycDjCbTwhrF4KnRCsEzSUgOIxsKQ6DaI4MOgGg58XxsEQ2B0h4ZFUXRyOpF8gBOVG8cwQVS2FhPKZ1MLGAqi0aSoYC8Nw5iUKoyEFMNDeJo1B0DGkIlwRAudSL5ACcsLQZObgcMHRwQUTpZZN4KEYrjMLwCD4SFwGF8JgAuDaKA0mk50UxoH0UwmdSL5ACcrLZeOVAINnVimUB5BBbKQjBU6gQBAI2hw1A4UxYGkchPGcGnLiiNx00WQodSL5ACcrLYaObgcLnRgUDzo5SAZgBDadRLQiA4bS+JwpgMrDsMwljSaDnhTGgfRSCZ1IvkAJyosDoCCoWguJxTOpF0DmIugo6EbTlwROjmIiCEHBlDJpOejQMAFNISLYhhc6kXyAI5OCBjNp4emoXQmdFKhdK4tFUMhYQQoOJTKolDOGDEhzY2h8hD0pi4OZ1EvkBggCyZEPTwxMRlGUWzQYFQEgsNgkZxtKBfF0rgUuDqLIJNh4Q9MT0cx5LRDWUCmDikXCkDz0NBUWheChVOaAQ3mY8DuXw8UxFEIvHSxhNhrBZgFCA0JDAbiEIaxXF0Oi+KxiHw2AjaNYHOTAAtFsJlwJHRBgFk5iLA2HSxqKghFEfC0IxfH4tkIeFcDlIJgoAlYqmstlMOBQRBaGcPmAsi0NQ7C6c6F8vj8dEBRzUqj0NgmhA6WXiHhVForDQXweJgvmQZChzsEjGbzwtDQaRbAIDLwJF01Bk6CPYrimGA+MgOLo0FghVFoVi2PATA5ycXx6HwrHIRHDZ0UKCGfk8/aAUMjmgFChTNQ1DiNoIF0sG4Ih8Mlg9IUBNF03h8aiockBR0YZxVOXiyO510rn5DPnEdwPrGBxbK5vF8rDYHBwCAqiQBxpOhDGbCEKgpHOxUGE6oZHPwSOQYOZiWXjpB0c+UQiC+GD6oHIjs5fAInggYB7GUtmYnCmP4yBAKGZAac+Ofi+FDpRmbS4XzE5WKI1HRT8bCcfvA+cZ+0wOfJA+uYfDYCE0zD4YN4xm0EjoUy8OJZIVRbF0VBaCw2jiUCsMQrHNCiHD5Gn1dL4GD46HzfOjHeguagSaCyNhrKIyDUMhqLodNpCFMVBTAYujKdHIahqB5yAQTSfJY+shsLZ086afOUJH6cB5vGMoi2XSuL4WGwPDeMhZIQhWE8VwUKgUG8vhkaTQIApAU+c53s/RAYG4JHxmPqAdjKgPGYuCKJhiaAWQJj8dGGQ2kIYA8UxHBwYMimNA5lYFG0FiCfJs/Yp+rDn583DrR+8jqxvFY9DgKEM2l8WACYhw6mdLLpDQCjM2AkEi0XS4Q3goqhYsGAKPw4cFLR+nTvYYG4yNhSFAEA0Oj4Czm5QGU6idELZAYJRBtLwuHPhiN4pGYeCYIF0ohYegSaQ6bAOKgTHQXzlANIOJ1ACnJzadJH8MmZCkKQtBIKCSLI/B0ClA0jSbgCK5VOmFosjEeigcvMx7BwiBADGZ04ggjGPofLZ6QoCaADwFCYUxvD54CRdDYeNYvnh0o2F0ZgYJYIMjEAgULAYHnShxFoolsbRtN5AaJx6bRSA54bzaQGi8Fg0CgeMAwkGAMCUKAbCArAYMF4rAcLjaCRJKx086gXiFQWigQpGshD0IGsVw4XxIA4WBwcGYCnPQKEAyVAudFN56JAhHhqK4eOoHRC4QEHNRYNxmeEMTSMw8mgsCocxBZdPTaZlEDmgJDsaS+PwNCYqHOSgUy6dEOmDKbiAE5OUhqMzE9PBULI/AkKi0c0KQYGEXgCeFYxLQfPBgOjEN4ogUyFA0jUdKHUskAJystDcLZQLwxiqDxtFcaS+LZXMQaKxZN4qFQ3HpmHhqLpkCg+M4vFIsjWNJvIATlhaChzACBo6eDSgPpSDodNRpFg5ULR0EIHNDEZgebyyLpsG8YRnGQzMTAsFk9IATlZbLxysBBs6qUygdCNQWDgJFwDCwK4bLIlhk6gazeDzngbOkDCDD0YCAE3h42kAJywtDAIIICo/AMHjyBS6NILEY0l8Ai+ajANHVC8bBcEkeg8UBMKo6m0BhsdSyQAnKTMdioVzeXBLK5000CuXg8UhcAYXAgICxoHA9CRrFMYQGKIJNocN4yD2MhuIAzlIBDJtIQ1gUOnVwgLItF4vCMBB9BwnG4qBwaxqN4rCsKYFPRkDwACJ0gdCwQoiaL5D0hDwgwDkXSsLJXLItGI0lYWDUeF8bw+ZgcTwOYGYfDAuFMaxpN5DE0GkhCEIQ2lgyPDSYmRpIbzE0nhDIsG0hgVjAhDabTSYG43npCEIQhCEIQhCEIQhCEIQhCEIQhCEIQhCEIf/8QAJRAAAwEBAAIBBAMBAQEAAAAAAwQFAgEAFRAGBwgUERITFiBQ/9oACAEBAAECAP8Ax/P/AMTWyudpez9n7P2fs80xu9Y64I/O+EPqj7PNIbWmdUBviL3RGcN9Y297P2fs/Z+z9nikFnPfhwtOn2xyr7T2ntO1c2ZtTTO3J7GD6YpOtWPcAszaDLLVNCqgydl+qpTI49W5Y9p7T2ntO1QWZNBbXxS7Y0sqGT6r1XJJZLCsjQA6nLrsOZpUzmHxPuImiBpKJ9ns0aTtCSYu3/EUMSPU+q5JPKICDpHvxT8p8kC5wz3sgPfxVFM5Mx/gQVEGu71+qXRSRO6PVZwym+31kEfhvD5kBNsj/KSzZ8URwvEfml5S8k+PHoUPZzqSJ6nk7xE3aGWniPMpbyo8lxBHhWmgeuXW/lzcnw3hvJfazTdPNSS+MtLyH4j80vKfknyn5T+Jfkzyn5O8Foxl3X3Wyx+ohYnHTNxUI521D5fc23E0bw3k3y3455nyJ4Dyj5D8R+aXlPyT48ChO9ZOnIAqcm+JhbnbB1ZudLHM8c1QeW8RQNig4zSNwU6Omzg3kvlZVubmXJQwKl5D8R+aflTskvPDo+tAh5VLM7N6bwifFqGVOTDUCUiRfE+sdrLFDOnCkKJUsH7IMYZJ/JqybG6BYXiPzS5Yyq0Gv7X2vKpa7LUjK5SUQONunPzSVM7lDUbv7PH3emDJ4Zxag/p/xF/Ff2vteVmKuzwcI/LYqkzUfkz13rfXdnYkzJul2QjZITvG3BU8VzNxO7GNXSjKHDN0pbWBvSeSPWeu9d63ssEiSitj41gqeph1MiyqbHS4MmTenddwqpRDRPw+XAsxnQ0AHDhtKoo1iYxNawt6vUwwBBFOLO1hLQf/ACTyj0exapbIXBkGtvHOpxbFYNRXi40BzgB/bQqzKGiU8Vs8ZlVZlITDbVKolXn0GmHnpTimvnvSFYwOdhNyaSX2eQeNfraPPpH3USwghMxFJIoId5Koip1ar729pmkOpsVXX2VdymtboBjCS58mM5QWeV7/AFa6+/qtgic86tYitMFnm/1FmVWm2T8bn/3xWdcJ5nCSshAK9bGUV5CU8YDzkJ4MfBiPOHMhlLXNUe2DLeSVU16Pbu+mn+Sk2122efmWq8qo4vUGHOEzprqIpodBp9T/AAw3iovTV0IXOfDPHx70GinWVYo9r+Jbkl4zVqVW88hLzFao/uF9+/uz9Ufjb+QYGm2jIYk9E4RUqpVcIYMCgm/zB5uJuB9+T9pFpuEpSH5rD7NAIUpYWt2G9lSUiIDN+RH5P/b38R/vL9CfYD7FaY+iPvMm0QreXc8NPdnuBpZq6JXXECUvg67Y9fDfa2nQlVlaSdKYCfEFgvBsp5Xk4n7/ADP+7f4i/Zl/dL8SJAfrL6ZBqP8AUS9UZqWDeAMrSE8KghUdKsqoJnc7a3yYbk1iRQndGm9P2sJwyjORVZb6yzwrn5B/U/03o1rTUtMET85fov8AGuiDAmzn2r1VYai7QwvJuIjF5tNREWfj+D8fMfrae+yHUmWAqpqipCuAKP8An7ucXa/unmBhXz8+af4ny8yjopoBhuRCLAcba1tF1WyrbnuB7z/wfNFbYnDm8nhWbxVScX25inNNCZk/l39vfxl+uupIzk/D/Uf3x+5P24+mU1HJgAJbOpTmGCMBk9dy0m/IrTnxa+e+HXopOJDngAXOBzMgMeh1rIHJ31h9ufqX6P8Atz+U0j6l+ufvZ96/yT/Gz7LSdzNN6Y4sUVB9pzafDKuIkHjc9mAdPvwQhXgtEXJJZmG8UBpQR9UDGHpdzT+HPqn6V+uPwaf/ABRl/h79ufxczFSRWZ0cSromaRK3WZnFEqiDwxDmow0lc/DfXSpOKtdLTaOab4905VyKi/RbXMTrk+guZzqyoZHYzqJmZ51uWeP44rgMXCGLWXxT0I8pJIefhjL4N6SeJSq1xuyTl4VEogvpPnywi8sjybkqya4R77W09meVF2qzvI02xTnJLlTBUpaKPgS878M7fZ7jo23XTL9QexX7Vbo6cQqZrkrNvIdnlM8iyIjrjjnU+TdlefwXDTpFuwi7Cyrx5e5Nog38N4bVVRYScmai8h4lev8AXNI7WSS4gyDAUlhtc3PGRupX7TTolovu4wvJ5JNH2jOcFYepuPKNfT5Uu/B+tF4/ultn/b/b/bJQjamkkIS2AUdgJ+zp6e4KhRrPUP2Vmx7NiSBRTo9LWVzMZpbf52ajDTUz8PErPfv5Y/2/3/36xx6U+HWh55Ycfew5hr+uGe1z0SE8T8Sw1mRwXdkBq3xlbSmsJ8jYm4Fz4p+V+IJAk9meu5MLIdSlcwclIDNkTaeU0kuIvg6Loe58AQFDb0c6pOh/tU0FBmS1PAtMLJYX78U/KfkjOzM1vdq1hnq5n+b4XEsTU00D/nuzGmTnTQYmMiyPgP4HlEq9nNvdUhZS+5rEH/nl4c5EGfin5S8k+US0m/3Zjc4tPyd4AO5yCvAdW0CpivoPY+KOX+JLiknmKSzTzEV2gmCOgkLH6vU+Ljxn5p+U/JPlLlPP9ZmZnKfk7xbemkjc202eyd91MiyDrdFncYaSbMlaVUVOrKkzJvFztLUgGOY1FR4Wvil5S8k+NrPyvSoSU1qnJ3gsn4i4Buh42IGO8cUKPnnUpQZvSbHux4MUpfrLFejWSrJ2D1dlmZW58U/KnZTA2CY/XEPZ6jEvqIXUDDSazoyTmeNgFSUWFoQNJukaS3QDkC7dGuewR5Yo2x0Jxp2Q8+KObAQ7FQ9j7D2G6BtxwTMGC9PKJNg56Z18Tw1wf16bnUiKKKInRcQb235pYac6ZuQdScSQdfvwyKhK1C5E9L6X0nYmIU6UqL+DBbngnmRZjrRFUHZpYXofQKxkURi7hxRyRqB/zo/p5CPqa3FDEnogz8dzpf8AS/R/R/R/R/R4lhfPPO86Hi/Q9U4pkOgdS/R/R4ngXx3HVf0f0eJYW/y6rxLAOc/+T//EAD0QAAICAQMCAgkCBQEGBwAAAAECAAMRBBIhBTEGEwcQIiMkQVFScRQyCCBCYYFiM1BykbLRJVNzgqGiwv/aAAgBAQADPwD+Qf7lABipnmL90T74n3xPvi/fE++J90V/nBjvFz3gccTI9QQHJirnmL9win+oRXHeALmICfaiv85uEwIEzFPzgwYqkjdE++J98X7hF+4RfuEX74pz7UDjvMj1lK2jV2MA0sNh9qWkZ3GW/cZb9xlv3GWgdzLBZgtGsIBaHyMywXEZhIEATvBsPMKI5Bjq7ANLT2Yx9+C0a2vvGFBliWNzHawDdN9Q5ipSeZsdhuhezvCNOTmMljYaWsT7Ut+plv3GW/cZb9xlw+Zj7+WjW/Obq/WRU8Y6lxHusjGuGGExhWcR6rTGF4ENmljG3OIaq4awRCcjML0NiO95h8omGu+EgCb9KYQ7EQ16qBaO8IrYZjPe3MZrYf0ZjPewj2w7O0Pq4PEZEaPVqSIdwmafX7p5nVtAbOZXXpsmVIx5Ep+olT/MSuzT5ihyQJjWCA6cZiRfLOIeSIa3OTPNXEO/diLXURA2omMRV0h5ilmxNt+YfKxmNdWYwvmLRPgz+IDqz+YvlCV1VSlWPIlJ+YlTnGYjUGAaoz3onufVwZ7p58Y359RTSHB+UcWtzH+6O1wG6F9JM7p8ZBXpgYofG6B07xBW0QOcGeZbN2nJx8o/OBHFxJENCQtSQDLLWbvLd2dssSBasGIXMzcJ8GfxPjD+ZimFKG5jC1vaj7/3RnsXmF9JPfme+nufVwZ7p58W3q+Fb8T3rww+eJ8H/ifunxkb9HxLFuMIQjMY1Ngx2uOYTesD6fGIhydsrr3cCYsIEax4uzJWVITwJUiGbNwBhe88zc4nwZ/E+MP5nw09y0PnNPbE96s+DP8Awz3899Pc+v3Tz4tvzOYX0bcRmub2Y/2x1tHswpo5jdM6yb9LOWOI9bECNYhBmCTNmqE9wIErYzFrAGefbAFzieXScDtGrLR2yMx78yw3Z2xkI4m3SET4w/mZoheo8RzY3Ebd+0xksHEKaMz35nvp7n1+6eY1bQC2V2abBlTk8CVZ7CVI3YSuvTEQGxpnWCAacZlbAxXcnERKzkRfam3VQCkQGh8Q/q2mXERaIj1sJlHMP6kwWAZErVclJXX8oF0zTGrP5i+UORK7aj2lTEnAlOewlVbdhETTmBtUZ70T3PrJqeMNQ5jU3QhMZ9ePnCayAY9tpjG8GGvSwi0jMVk5MCocTzCYK2zAh25i2aU8wNqmnIhr08LORPM07GfEHj5xUrGZXWmAYrEjdPM0zRk1LGNXDtxn1kdjGesjMa3Uw7hMU+vfWY1ljkLLRYeJaBLZb9JbLCOxjl+RCjjiEUERltYwoCMxrYyAsYEU8zbd3gOnILQWXzOIX08fzoxohFhOJ+nRhCXIDQvd3nm6SM7khZaGOAZcPkZb9JbLvoZaR2MfzORDXjiba/WCDFfPEr5O2VpngSrfjAlRTtKkzwJSD8pTnuJWe0XyYh3YM32nEJr5E8uhoQ7CEGMEPMJsgQDmVmrlpW7dxFsrilDgRl34jrecwV3DJiPWBmV3DOIh/pErUH2ZUhPAlLuRK3XsJWiHgSpHifKe7/l90YQGxLPPMbyJYC2Jd5h5Mu39zHU8mZoPMZrDzAX5i+TC1D4EIufiEtGcdo4/pMsq+REtq+ZjC4ZaB6hkwPVEKNmIHcieXf3hV1BaBkGWitXnMVKm5myxsNM38vFdO8zSxBjLeRmF7AMzdV/JgQAERbcwb84mKyIHzxEBPErWCrIEdzjMOzM8i6Bl27pXdpzEYtxPf9ojJyJWU/bEVD7MCbsR6ruIUIBMHkfugCsN0NrtzM2E5jK4wZZkDJjHTRlpbmWW2NzLUtBlvAJMZ9LHOoJjC4ZmKf5AqmbGbmeZZiB0girW0WpmEDOQDDqGhLZxBXpjDXe+IaruTN1eN0/UzZlsRKnxKzTECHE84tOCwEOmu+mIRURmWW5IMcucws8LuJ2mzSRiGENlxyINucQVvB5OILLO0FR7Tanr2qZgMMw2WGe9zAKoCJil43nvHfUQtgkRESKtLQeY+IRcZZZYBGKjImzTNPIvcs2FHJM8NaX+IhOgrovO8CLmi/rg3GwXZ/2qp86R2PG49x9DR1TplGs0Wor1mjvrWym+lwyWIwyrKw4IIIOYc8iKunaEXPtlhYxnryRNmeJmyBecRa8CB6MQuCcQUuZXXxmVgkboH+cW2ALkTA9ZNZjbmgrY5ldZ7iKxwGgdJmh5794BqIu0QJSYAjjdBa74MLXzdauRFGmBxMUPPRh4K6pqdH1DxCnUup1Eh9D0pP1NqkdwSDsU/wBmYTwD429IbeIvBXQeoeH9TqWLdRq1IrWq9/8AzVVGOxj/AFckHv3zm/0c9Wo8J+ML7NX4F1FmKruXfpTk/vUdzUTyyDt3HzB0l/SaNbo769VpL6ltouqcMliMMqykcEEEEERXyoM/UMx7zyyTtgprIIi7jEF0UpgQs8wgzFaqEZKiWVFpYbTzLHIhWsZg2fyDaYih4ELbWj+ccNGe4DM9z3gNJGYbnbEsF5OJYAIyaU/iNvcZMNlhhstyFzCrqcTTdP6LfrNZeml0mnqa2+61gqVooJZiT2AAJnWfHvVtf4V8Bau7pHglSarNVVmvU9U7gknulR+SdyOW+g8eeMtBR1fxFangrolwD1fqqTZrLVPIIpyNoP1dgf7Gein0ZXp4W8NdX6t4m8aIwPUbrtTUNLoR9hVKwTYfpu9n5zXelPxGOsdZFvTfAmjtxqtSOH1rDvTUf+p/lOm9C8J6bp2gSrp/Sen6VKaKwdqUU1rtVeewVQJ4K9Ifijr3TPDPVf1mq6VdstDDaL07edV99e7K5/7qTWaxkypk4xCwbEdXaFLJ7QBaV7O8qRe4iNxuiXVGLtcwHVxVpBi1DvA/zmV9ZFbSzc0sdmjhicGeXcIBph7UNpwDPM7iVp3ErXgTNDYjF3OIVu5iAjMqrQciX9H8D9M9GXRtSab+sV/q+sOh5/SqxFdX4d1JP9q8dmnTdf04elfxTpE1QS8p4d0lyZUMhw2qI7EhgVT6FSZU9Vg3cEYO0kH/AJieZ/EvbqT1p7fR3a51dpsuLa0sWydOSe+Sf9qecf3mi6N4c0fR+j6Ovp/TNJUKtNpqF2pWo7ACabxr6NOteGOpW31aLqWmNFtmntKOueQQR9CBweD2IIJB8VegX+KX28jqfRdZtuVSVr12nb/82IQR9CfqJpuqeF+ndY6df5+g12mr1Oms7b63UMp/5EQscFottPMTa0xa0KHvHXsZay9zLFfljMpgtPOqMLarIHzhTTSwOY5cZnu/XuUwWE8RAG9mKqtgRqbeIwwpMFuMmKKMiFMxzbiedR2gKOdsFFrcdjPJc8wqmN01fij+NHxed5sNWsr6fpq88KKkWvA/LBj+TNN4Z9H/AEXw9oMJo+m6GrS1BRjIRQufycZMLg+3DdaeZ5xEDU5KSjp3jTwV4ppqxZrtLfotSQPnSwdP8kWvL+rfwhdFS5za/T9Tfo8nvtV96j/CuBHV49aRrlMdmPEcAw74DTBUpIhrt7zzgATKzgxPLxBa3Amwzah/kAUxU3CC4mDYxhpumCOYHoEFomLYBVAaXh32YlgtMtEv6L/GZ4vuvTc1XXP1e36qxFo/+CINVoKdVQ4sourWytx2ZSMgx/qYxsEAAzKv0v8AiaUaD0d9GRwdSbNZqXX7VArRf+ZLS2r+Eim+wYTWdX1N1X91G2v/AKq2hNZOI6ORiGw4Igas8TYjcQ0W9psrIm9DHFuYa25MCJ3gZsbolqxCn8uUMdt0atyTAKmnmXGOpzDTUATFPBaJY8BSB62nmu/EJJ9mNXu9majp3pD6T4701HwHU6V0escDtqKwdhP/ABV8D/0jKPGnoQo8OazUA+JegVCiyt29u/TDiq0fUAYQ/QgfcIwsxiHvtn6VOZpen9K1Or1mpTTaSio2XXWuFStFBLMSewABJmq9M/8AFFqtf0am7VaIunTeg6YD23rDEKcfV3Zm/wDcBNN4N9EHhrwpQwcdO0SVWuOz2n2rH/y5YxX0/aDk4i02SsjES2huJhmIEet2EawQqpOI1bx1jq3eYCgtBag5m5f5AYrq0O18CWFmG0xhZlli1pCVO2W+ZHDDM2VcmIMjMrscyqxIjA8Tonj30bdW8K9doL6DW17d6Ab6XHKWIfkykAiekT+Hn08U2h7endQ0thfpvVaUzp9fV9RnhgRwyHt2M8D+JNHptF43x4O67gK9zBrNHe3zYOBmvP0fgfcZ4L1/TF1PT/FnRtdQV3CyjqdLjH+Gnos8HaCx+p+Nem3XqONJoLxqryfkNlWSM/VsCdd9JNV/h3oNN3QPCBf26i2dRrsHjzSOAv8AoBI+pM1nRNXV6QfGOhbT9UKf+DaC8YegMCDdYp7MQcKD2GTC165g8gRPLMzYcRq35iCrBaVvW3Ii+e0Umb6TgQqWO2bSZiMLBHYCZp9e0GBGIzBaMZi3IYrEkrEqRjibLiILRyJWgyRK6TAUIDR3JwZaGOcwoOTEKcmVB+4nhTx/4Nv6B4s6Pp+tdLtO7y7hzW3IDo4wyNyfaUg8zVfrr9b6OvFNL6Y8p07rmVZPqBdWp3f2yg/M9OeivNdXhKjXJ99HWdIF/wDvYpnpY6peB1duleHKP6zfrPOcD+wqDA/5YTwX4A11HVLxZ4p8RVkMmt1tYFdLfWqrkL+SWI+RlgP7TDQ4JE8urGY1sLgkieTUTGqYgNHcEbobLDzHZxC+n5EC0tkTZawE3EgRnsBxCgHE21+sipsR1taMtnJissTYYgreBtWcGZqHzhFJxLRaY5bmK8U15AjVA4lqsZYpjGxQTN+lzH3kCG1+REZOViYPswUoxAhrtIzBYYp00HkWRmveWEQq/MXeuYn6aDyXm+9oXccQYU7YK6+02r68oYuWMNVp2wqeTAKG9qcuN08zU8njMQ0gZldlUqYkxKQYK7duYllQ5lVqSshjEQnE26oTdpxFJiKYuyIqGA1PG89o9bz4fkwNQ3MD3mVmntEqc4nl3YzC9HeGyhoW1ZyPnK0xkSutB2ibcCZHr2o09phDa5j1KTLFrYCW2WMY4uzzHqUAw7CJlTCyNG87OYyiHZBtIzBbnEJ1IMCaaAPibzB5PJi1o0Wx2BMFxzBXyJ5CYz2hcEZh87MIpxGfdGF8ygzFt00StyYunzzBvxunm45m5PWTW0ZrjPrB5DYjMx4jN/TCD+2Onylv0Mtlqo3Bji7tLGHAMtFWcGWV5jvbNgDQVptzGteFBmCqk8wDeA0zectK9nLSvyjzAzMFj33R2GdssC42x9hysNFhyIKDgtK/JI3xGRsNCXbBlhvjttmafWNhiI7ZlSEgNK2XGZS2ZT9RKfqJT9RKT9JVbFepsCe/PswImSJXVQZWC0TzTESmYt7xCMkytKe4g8pgHhd25h3d43YGWPXH3kmBrhkRBR2lQOJW1JgQNiGu04jgY3GOwOWhsMLuOIUA4m2r17amjJa+DLWc4aWkdzLvqZd9TLvqZaB3MsV+TGZwMxX0/Mr82KlJIhrrbmMbH5h3HmO64zHJzzHo+ccKRujWAjMLE+rLyvyOYgc4g88YhGj4j+eY3kczKNC1jcRlXsYRBviELE2CAL68VPCdS8820RfLyREHylX0EQ/IRfKOFnlWtCl4nl6OEakjMNtEZ62lnnNxHh3jMUUHiBS2I5c4jiEerYYUqxum9+8BuERtPKy5MSug8wOWAi2seJigkLHV24joe0srIEZkEzX6uDPdPPi2g8yJVpoiMeYn3RHfvFs00GWmNTCdBx9JZ+rP5jNSAZ5tU3OfZgH9MFGTiLUjCC21p5wmyljibHYQtGjiOXj0nM8tMFoD84XrIBjXWmZ7iCzTniBnPsz/AEwo/aGqbU9funnxjfn1FdK2DHFz8mPnuY5uHJhbRT90+MgfSRWuJIgQRTX2lXOQJTsPAiCt8Rw7gRjfzE8kZiDStB+oYCeY+JupziMjdoW+UNVLGWVuRLbGllqRu5EFWMiIUxEb5CV4PEqWIO0wvr908+Lf8/8Af1fCt+IfNeH6Q+eJjRj8T90+MgGkieZFaDycwVAwKSN089WGZ5oY4hpvPEFKYzBZp2G6F7zM3iLZphxAzdoFTtFTTtxN97AD5wsw9mKlYyolVdRldLkZis+N0Vl7wKp5gRyMwWPNyev3Tz4xvzOYbNGY72NhY/2mOloO2GvSYmN0+Mjfo+JYtxzChwTA9MZ62xLfNPeOG5itURN24gRqnMezKxic4my8QCgRIhrOJmp4G1cRagYlCd8RBWw3zLnDwi7looqHtRWU4eNbacHMfMIrHr908xqmirbyZW9HJlLse0olKStKCMwNYwzM6sQPphBtY7Y1NxxCDgmLbVKyGOBEpDYgNxGYLqIqk8RRdE8qKmpgWjvGYnBjskNlJhTVQVafvMbgHjlj7caxv3Rt8tRP3Ry+GaLYRkxNkG315qeN57y2q0y1V7mW/WWSyWFSMyy14/nAmYpED1mAhjiNRacRxxCNO0sYvLHvhGlEJVsCOlxlhQiWC3MsPEa0Amba4HqORNhc4j1hgJa7NLSZYX7GM57Qig8R6rTLK3xGZBM1+vejTzXYhYd54jj5R/oY/wBDH+2P9Id/InlPyJsT1BkPE3scCFW7QmojEZ3bibH/AGzZTjE81GhLn2Yfthz+2FH7QVqMiKqwFDA6NxC7txCSfZn+iYblYK/6YDSeJudsLCr9oasTCevIitE+giRIkSJEip8oF9WRAYBAYh+URfkIAICDEPyiRIg+QgX1giKc5ESJEirBiISciIPkIEmB/ur/xAAUEQEAAAAAAAAAAAAAAAAAAACg/9oACAECAQE/AEgf/8QAFBEBAAAAAAAAAAAAAAAAAAAAoP/aAAgBAwEBPwBIH//Z\";var Er=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAMe0lEQVR4AezdbXYTORMFYHUGclhG2EHCCuAXsAtYCbASZheEX7ADsoNkdjEH5qTH13E5bafdX5JaVaXLoSInsdXSlR7S1ry8nAX+YgJM4GQCBHIyGn6DCYRAINwFTGAgAQIZCIffYgIEwj3ABAYSyAhk4Kr8FhMwkgCBGFkoDrNMAgRSJnde1UgCBGJkoTjMMgkQSJnceVUjCdgEYiRcDtN+AgRifw05g4wJEEjGcNm1/QQIxP4acgYZEyCQjOGya/sJEMjRGvJTJtBNgEC6aWR+/OLb5UXmS7D7xAkQSOJAT3X37Nvl6/umuT3/fvnp1HP4dX0JEMgKawIcZ03zY3uptvlMJNskTHw4MzFKw4M8wCHzIBJJQn1LIBmX6AjH4ZWI5DAPpZ8RSKaFGcQh1yQSSUJtSyAZlmYSDrkukUgSKlsCSbwss3DItYlEklDXEkjCJVmEQ65PJJKEqpZAEi1HFA4Zw2Ik0gHb1AkQSIJEk+CQcRCJJKGiJZDIZUiKQ8ZCJJJE8ZZAIpYgCw4ZD5FIEkVbAlkYf1YcMiYikSSKtQSyIPpVcMi4SiORcVTaEsjMhV8Vh4yNSCSJ1VsCmRF5ERwyPiKRJFZtCWRi3EVxyBiJRJJYrSWQCVGrwCHjJBJJYpWWQEZiVoVDxuoEiUxHc0sgA6ujEoeMl0gkiawtgZyIVzUOGTORSBLZWgLpidYEDhk3kUgSWVoCOYrVFA4ZO5FIEslbAulEahKHjJ9IJAm0yYpAdlGaxrGbQyASSSJZSyCbKF3g2Mxj+5tItjGk+lA9EFc4ZFcQiSQR3VYNxCUO2RJEIklEtdUCcY1DtgSRSBKL26dAFndl54VV4JDlIBJJYlFbHZCqcMiWIBJJYnZbFZAqcciWIBJJYlZbDZCqcciWIBJJYnJbBRDi6OyHBEjOr199RaadXt0+XBVIiRSxkPt/vKbEADReMwLJ8+urHyG0HzaZVoHENRDiGNC5AAlwNCG8Dg+/LmpA4hYIcTzs4sGPM5Ac4ZBu3SNxCYQ4ZP9OaCcgOYFDOneNxB0Q4pB9O6MdQDKCQy7iFokXINuFIo5tDMs+9CCZiEOu5xKJGyDEIfs0ou0gmYlDLuoOiRsgTdN8klViG5EAkFxf3XZOq+Z25gqJGyB/te3HNoSfgb9SJHAR2YkbJG6A/Pv+5o5IIrd12pe7QOIGCNY2DxL0zFqYgHkkroBgEYkEKagq00jcAcHWIBKkoKrMInEJBFuDSJCCqjKJxC0QbA0iQQqqyhwS10CwNQTJ5vHdpnT9rnM0ppC4B4I9eN+c4T8ixp7toytWmgTMIHEPBH/7LYT2Q5p1ZS8JEzCBxDUQ4ki4nfN0pR6JWyDEkWdHZ+hVNRKXQIrhaNrPAZVhF83t0tjz1SJxB6QYjs2ObO/DP7/f3nw5a9uXhLIJZN5vlUhcASmJo7sXcLS8hxICj5fD5F/qkLgBogVHdysAyuanyRv+NOmmMvpYFRIXQDTikG0AJPufJnx/IrGMtWqQmAeiGUd3F3ShtCFY/otdYaVfKpCYBmIFR3dDAcqfd7/etG37cfN1vj/ZhDDwuzgSs0As4uhuhD/vb/7m+5NuIicfF0ViEoh1HLIV8NOE708kjcG2GBJzQLzg6G6HAyg8Fu5G031cBIkpIB5xdHcAoNR929VNo/fx6kjMAPGOQ7YDkPC2S9LobVdFYgJILTi626ELhcfC3WS2j1dDoh5IjTi2W2D3AVB4LLwL47BZBYlqILXj6O4HHgt309g/zo5ELRDi2G+C/QP8NOH7k30c8mAaEnn2zFYlEOIYXsUDKDwWRljZkKgDQhxY72kFKDwW3meVBYkqIMSxX+zJD4CEt137uJIjUQOEOPaLvOhBF0rlx8JJkagAQhyLTPS+CFB4LBy2SF58u4z+/0KbAqR3IVJ9kThSJXnYT+3Hwm3bfsEfFoepzP+sKBDimL9gc16BDVLj+5MNjo/4A2JOVqeeWwwIcZxakvRfP4Di/Fg4JQ6sRBEgxIHo1y9A8XwsnBoHVmh1IMSB2MsVkHi87cqBA6u0KpCnODAEVokEulCsHwvnwoF1WQ0IcSBufQUolo+Fc+LAaq0ChDgQte7CqY+19ye5cWDFsgMhDsRso/DTxMZIQ1gDB7LICoQ4ELGNevbt8vX59VUb2uaz9hGvhQM5ZANSHAdmxxpNAP9zjOfXVz/OmubH6JMVPGFNHJhuFiDEgWh1F2Ccf7/8dN80t00Ir4OBX2vjQCTJgRAHYtVdAsPC7ZQkWQIHrp0UCHEgUr21e59xawkG0iyFA9dOBoQ4EKfO2t5OXb/6unufcaFzlP2jKokDI0oCpDYcCM5K7W+nQvvByphlnKVxYBzRQPCn0+ZU2lz4mLzn2t1OtdZup2RNNODAWKKB4D8ubf4L7Et0xiqfAP7AsnRs25eYFhwYWzQQdEIkSKFsAYbcTlk5tu1LTBMOjC8JEHREJEihTAkMq7dTkpo2HBhXMiDojEiQQlTNevHufYa5Y9u+SWrEgXEmBYIOiQQp5K3t7ZTRY9u+ZLTiwFiTA0GnRIIU8tT+dsrgsW1fIppxYLxZgKBjIkEK6Wp3O2X22LYvCe04MOZsQNA5kSCFuMLtlPVj274ELODAuLMCwQWIBCnML8CQ26k0x7bzx5DrFVZwYP7ZgeAiRIIUppfAsH5s2zdjSzgw/lWA4EJEghSGa/c+w8Wxbd9MreHAHFYDgosRCVJ4WtvbKUfHtk9nGFb7O+R914752qpAMFAiQQqPtb+dcnJs+zizx0cWf3LI6FcHggsTSQi72ykfx7ZY1BNlGQemdIYPJapWJLid8nhs27eHrOPAnIoBwcVrQgIYcjvl7dgWa3lcHnBgTkWBYAA1IBEYHo9tsYbH5QUH5lUcCAbhFcnufYbbY1us3XF5woG5qQCCgXhCsr2dcn5sizU7rhw4jq+x9udqgGDiHpDsb6ccH9tirY7LIw7MURUQDMgykqZpvtbyPgNrJeUVB+anDggGZRkJxl9TecaBdVQJBAMjEqSgu7zjQPpqgWBwRIIUdJYDHJOCVQ0EMyASpKCu7vAvUqkbVYYBqQeCORMJUlBVF+fXV7eqRpRpMCaAYO5EghRUVRVIzADB1iASpKCq3CMxBQRbg0iQgqpyjWQZkMLrQySFF+Dp5d0iMQkE60MkSEFVuURiFgi2BpEgBVXlDolpINgaCZHcoT9WdAKukJgHguWMRdKG8PP3u18vQ9N+Rn+suATu2/ZjXA96Xq0OyNJoliJpNzj+vPv1Btf9/fbmC5EgieW1wfHmv/c3P5f3oOuVboAg1rlIujjwehSRIIVl5Q0HUnAFBBOaiqQPB16PIhKkMK884kAC7oBgUmNIhnDg9SgiQQrTyisOzN4lEEzsFJIpOPB6FJEgheHyjAMzdwsEkztCEubgwOtRRIIU+ss7DszaNRBMUJAswYHXo4gEKRxWDTgwY/dAMEkgkaNcfL6kiOQxtVpwYMZVAMFEUxSRhFATDuwZAkEKM6pmJLXhwLYgEKQws54imdmBwafXiAPLRCBIYUHVhKRWHNgWBIIUFlYNSGrGgW1BIEghojwjqR0HtgWBIIXI8oiEOB42BYE85BD9MRuS6JHN74A4HjMjkMcsoh95QEIch9uAQA7ziP7MMhLieLr8BPI0k+ivWERCHP3LTiD9uUR/1RIS4ji93ARyOpvo72hHggkSB1I4XQRyOpsk39GMhDjGl5hAxjOKfoZGJMQxbVkJZFpO0c/ShIQ4pi8ngUzPKvqZGpAQx7xlJJB5eUU/uySSFXFE56SlAwIpsBIlkBDHsoUmkGW5Rb9qTSTEsXy5CGR5dtGvXAMJccQtE4HE5Rf96pxIiCN6eQKBxGcY3UMOJH5xRMc9qwMCmRVXvienREIc6daJQNJlGd1TCiTEEb0MBx0QyEEc5T+JQUIc6dePQNJnGt3jEiTEER17bwcE0htL+S/OQUIcidarpxsC6QlFy5emICGOvKtFIHnzje59CAlxRMc72gGBjEZU/gl9SIhjnXUhkHVyjr5KFwlxRMc5uQMCmRxV+ScCyVnbvvT075CXT3V4BKmADF+F302WAP61rGSdsaPRBAhkNCI+oeYECKTm1efcRxMgkNGI+ISaEyCQmlefcx9NwACQ0TnwCUwgWwIEki1aduwhAQLxsIqcQ7YECCRbtOzYQwIE4mEVOYdsCdQNJFus7NhLAgTiZSU5jywJEEiWWNmplwQIxMtKch5ZEiCQLLGyUy8JEEimlWS3PhL4HwAA//9O44MMAAAABklEQVQDAGCL7+uOGrzfAAAAAElFTkSuQmCC\";var ei=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAO8AAADICAYAAAAA2bY3AAAQAElEQVR4AexdbZLbNhYENTnE1marlv7l+Aje1NaONgex5gZzgxnfwDeYyUESTVUq9hG8+8vaqnUqh4gHeQ9DWR9DSADZIAGyVaREgfh4aKCJhyZELQxfRIAIFIkAyVtks9FoImAMycteQAQKRYDkLbThaDYRIHl3fYBHRKAoBEjeopqLxhKBHQIk7w4LHhGBohAgeYtqLhpLBHYIkLw7LHi0Q4BHBSBA8hbQSDSRCLQhQPK2ocIwIlAAAiRvAY1EE4lAGwIkbxsqDCMCOwSyPSJ5s20aGkYETiNA8p7Gh2eJQLYIkLzZNg0NIwKnESB5T+PDs0QgWwRGIG+2WNAwIlAUAiRvUc1FY4nADgGSd4cFj4hAUQiQvEU1F40lAjsESN4dFiMcsUgi0B0Bkrc7dkxJBEZFgOQdFX4WTgS6I0DydseOKYnAqAiQvKPCz8J3CPAoFgGSNxYxxicCmSBA8mbSECnNuP6wrq9/WV/qZ8pymPewCJC8w+I9WGlKVNlvrt//bI21n8yFXeunfP/kwoXQgxnDgpIgQPImgXXcTK9//WmlRJX9tsWS2oVbu3bxWiIwaGwEwsonecNwKiaWjqqmqu4CDK4l3o2LHxCZUfJDgOTNr006W+SIaG3baOvLU0fhFUdgHzx5hy/yNo/WhSKggpRzh0MT7OJtR+B6F8SjEhAgeUtopRAbVZAKidceR0fgEFe7PTVDR0FgHuQdBdrhChUFeQ0o7ZLuMwDFAbMgeQcEO0VRzl025tIgXlWlAlaNyIp5pEeA5E2PcdoSLuwNsAAlLjI/oGnM6hgBkvcYkYK+N24uZtTd1tvaVTOab0P4mSkCJG+mDXPOLLktVMt92niR6VzGev7CpslX8+YOQ4DkhUE5cEY2KcHqZlQfuFIsLgYBkjcGrUziNm4t1l0+rpuIV8dB/J4XAiRvXu0RZg1WpPKVWYtrTvfZh04G4SRvBo0QY4IQStXgtKPu1iBrL5tRfhsyrc/Ca0PyFtSAQlxdCRWzdrlv7WpD8aovhsnSk7zJoE2QcVqRymcwxSsfMiOHk7wjN0Bo8Y37Ooy7fGwUxatjRLL4TvJm0QwBRgwjUvkMoXjlQ2bEcCh5R6zHpIuWue5wIpUPSYpXPmRGCyd5R4M+rGAh7tAilc8wilc+ZEYKJ3lHAj642HFEKp95FK98yIwQTvKOAHpokaOKVD4jKV75kBk8nORNBDkk23FFKl8VKF75kBk4nOQdGPDQ4mSuO75I5TOW4pUPmUHDSd5B4Y4oLO4pkBEZQ6KqeKUXF0hmzKQbAiRvN9ySpgI9k+rQxqq6Nbofhvb5xmde9UEPkJbkBYCIzCKJSPWlWr57vXyru7H2CmZvoHgFK48ZHSBA8h7AkcEXtEhVVffv/rl82Nbs3fc/3MsIfL/93vOzlrk5fzbYE8SuyUnersglSNc8vQK5fnkjo23bSPsWZj7FKxiUsRmRvLGIpYwf9h9D4RZ8qdqIa4TQG6D7TPEqvEWgMUleKJzdM0vgfj7su8vPLFss1JXePAvvFkDxKhA3ZLQFMjPm1Q0BJ1JZu+qW2pOqah91t7Hd6OsZmbdxoj4pXkXBhYhM8iJQ7JsHXqS6deQ8Y1czMusIfCZm0GmKV0Ew4SKRvDgsO+WUSKQKF6TOjNBRlaJ4FQVX38gkb18E+6YfSKTymelGaNziDYpXPqAThJdO3gSQDJfl4CKVv2o/yimKVwJCSRvJO1JrjSFS+arqRl9rw11tX0bbcIpXWySSfpK8SeE9kflIIpXPIrfyyhiKV6acF8k7QluNLlL56kzxyodMluEk7xjNkkak6l0T5z5XFWzds0F7F71rOK0MSN6B2zMjkcpXc9zc15hLN7f3lcTwXgiQvL3gi0vsOvLAK6niLDTodc9GRt+7WBsYPwwBkjcMJ0wstBsp92edq4uxbpfL07pnpHjFp27s0IUdkbwwKE9nlK1I1WK2uyB8qXDus3gbMl2oW4pKFTSLfEneoZoZfe8T+aOCFgzQ655NXs+fbqlxeUEk7wBtJqOOzvuQI8/pn/uh6oS8dWQoXqGaZZsPybtFItGnEFf/rmQFzR7p0p4wzLnPMq8+ESXuFP/rNw6vM7FJ3jMA9T6NdhflPmzj0vY2LTAD5Lpn/dkgxatA4M9FCyTvuWx4vg2BBCKV3sppfbRNW/mIMDf6Itc9U7xCNIvLg+R1MCR6w4tUy0SWnswWve5ZCuPoKyD03Ujevgh60stcVzto7TndJXgYkcpnGVK80tH3lzXyKZk+qycdTvImaF4hropUt9CsBxKpfDY791nm277z0eEUr6IhO05A8h4jcvZ7QITyRSpfJXELN4ypG03AVxbDzyBA8p4BKPa0W79sDNQllFFvUJHKeF5ix8ZYi7NFNAHnpXjKY/BpBEje0/jEn0W7g0iyxNfmeQrwumcpQLUB+eAWiwDJG4vYifgyimhHrE9EiT310Ci9semSxXejL3L+be2q8VaS2TzVjEleUMsKcScnUvmgcYtEnHjlixEZjvZWIosvNTrJi2q56YpUPoQoXvmQGSic5AUA3bh9kxSpfPA499lixStfWQxvR4DkbcclLhT9I3skKeJqEhcbLF7J1OMuzoB5xyZ5e7Z/c68SOepmJ1L5IHKjL1a8KviZVz6U0oWTvH2xxT8JEjmX7Fu7s+mdeGUM7JE5Bu3FmOm+SN4ebXv9/ud1j+TPk4qC25Dh+bmcQ5Drno25bLyZnGuchW0kb8dmSCFSiSlFjbpir9uc+4z80X5V6f1ylzff/AiQvH5sTp9Bu3ciUjkSnC41+uzf7j5eHu/RmYQlQP9on+LVGdzzJe8Zw8c83bh1SJFqg15J9e3dx9W39//5ZKtqfbxL+FrP/+XuY43C0V14rMV5DtZSvDrTOCTvGYBaT+NFKtxifzFYyWmebPSR81LPX1TVJx2VJQlkay5AFK8gaJ7PhOQ9j9FBDPi9SLBI5YhrzKUJfFkZmZEjsFwUkBcijr4n2pHkPQHO8SknUlm7Og7v+R3mav71x/+q0BNM3K3dMgKvUQR27rNckLZ59/7kumcvhCSvF5qWE2iRShRa19lbijoICvii7m9lbdend9QXEaN1gDmwC5KUpU+cpHglQBxvJO8xIp7vSUSq10tYJxf3t18Hr6o3nqpHB7sLkrU495niVWsbkLytsLQEou89Av+upHGX6xarY4IuUa6zKxS87pkrrxyqB28k7wEc7V8akaovOfYzhz0JUgnXw13etwl67EZf5LpnYyheHbUQyXsEyPHXJCIVcDmhiE393OW9Cv9+9Wqz97X3oVvqiRavels1nQxI3nNtmblIJeZHq8uSpm2DEnevANi8XvJU8UoVdTnkRvKe6AOTF6kO6l6hFlcc5OrcZ6x4tZJpTH1QyEy/kLynGn76ItXX2lf2Udcmf/0OPXgSr1AjuxKXo680EMkrILRtcnXXDqIdpe10l7CcRarN/69eJRl5FSg3+gLVdWPtymkRmvmM98WM6+6tuhC3lg7SdcFDe75A5RUpUqmxlQXek9UMW3YnXhmDu0Bw5ZXhyGtaXvgnQd42nbelsLggXUklKVAilWRlHlKOulrA1x2oskuesxevSF7pBftb444hybERtxGmuNqnXwvtm9zr+MsAo+7WQMFhY6oK59FYcZ8/rJFTm62pRXySvMfNhHbHgHM90EqqrzWWC8Et+t7u18z9ByqMbfyno84ocVWbiEo0lcgk715LylxXO4J2iL3QXodZi1S/vXkJ8whCUXKjr7W4cnX0/WWN9JRCqzJ6PJK3aQIhbuYi1UIvLI21/T8scuVTpDngH+0bg/aWIuszVnSSd4s8XqS6x4pUdrU1FfC5GWPUPbAbLV79+hMSnwNTc/1C8krLJBCpjLiHsJ/EySgJW78s1TUiUi31c8xd8NmIeHUPs6Gqbpz3BMsw/4xIXm0j9Ppla2HEHUukUlgG2HFzX2NUq4BOLUzmr9mTV67W2uBIwQP2dyUJfu43vru8Rwg3+gIvdMbKraMZiVezJ680OO6+o3ZM4EqqxWLxRrNE7XZEkcpbh6d1z1x55QXIf2LW5M3570qmPupuu6QbfYEXPMm3bn4NJofT3mZL3txFqouqWiO73hDrl7va26jyuNFXxKuutrSlyzVstuSVe4M618W1i7VZi1SDrV/uiij61tGHNVSh71qtlOlmSd7GraJIlbJnRebt3GfsuufJP/NqluSV+4vYqzJwzjYLkcpPbOy6Z/QtQL/do5yZHXnl1hCWuKLgNnO23g04F5HKB5Qbfa1F3vud9H/9jkFeX9slD3cilYUuM1SbYZ1NRCrohSVnkUqBa9vh654nLF7NirwpRCo3WrT1wsiwZiUVcB5e3WcvUvkwonjlQ+YgfDbknZtI9Xn1EqZ+7/cYmXa4J1jI541i6ryZ/QiAY3dBlOkIIKunLCb6dymzIS9Fqqd+3PXdkfX9z5+Mtbrfyuetw/TCrq8lXIncNW9POth0RPKv4V6XZDr2NgvySseDziWl06J+7mdyF6kEu1rIuXZkfVr839Zna8HkTuLC7p270ddapPdwmcJLaANjqLDJk9c1mLXo33rCRoWcRSohYy2k/SSdMWwubu2tI7okgGxc93wSxsmTF+4uVdWtGxVOwhp28tu7j3pRCSNGWJbYJ0F2e0AB7PaMwxl4D10grOWChPXCJNOxtkmTt5mHIcmxkQ4FGXXVXVZXE9nwn1ffwX5k34yg3bAD3p5x99DR4tVEnjg5afIKOWBzMEcy4JMgE6ykunU2At7cVMOYbsQ17lU3ebgvgW+nokEumE0BtXxi+4VkOMY2WfKKe6QNpA2FwnU+T4JEPNBt8QjDXrydjcy9ceKVaCDgiwuqj0XlM0nyCnFVaIGNRA5R4MKBzEWqO6kvjHiSF2ajePUMx0mSV67S2gGfVbZzAFCkyvnvSpqLnoponaFKldCNvmjxqvAnTk6OvI071Ge+dtz/YCKVZmxz/ruSbuqyVuv5/rjYPA/sF+LEK2MeDOolwpq7YKHyw+UTlNMiKFZJkRDztf36AkWqZv0yzCWVCwHs70rQynxDtH0kMcfA6YsYpG2h2ogclrdNirxyFdWG0AZBtcR8RCoZhVCgicp/D8vrKCPnPss05ii4+9eC1z1PhrxCXIpUHbuwYIe96P1h9Ef1Ha0JSqb5o9zyGr6QJ6gK/SNNhrwUqbp1BiEu+qIH81Z8NXKjr7XIe7+wVWE+m1OET4K850WqaOgoUkVD1iTAKsJNps8/+KN9YyZBXnF7sLeG5iJSPf27AE6ZryrYr62e07UlBCxeiReC7UctJiODiievAI6dr8mtCJRSquuXK2uRi0Wwf1eCVubTz3UP+r5zn+WCcRDY50th4lXR5BXioudrxgDdPvT6ZZnXw+Z5gh32oickQl30IvkHw0TKLUq8Kpq80pmxbg6wAyYYdR8+X70C3IIxRoiLv+gNPOoK0dwGH32NuWw0I2r0sgAABSFJREFUFJd/zm/FkrcBGDdfk1aSjgBb/H4B/ruSL9bCbINf9IBTDWmGLhty9DWioahX0sWOQdMUS144wF+qJQr5rFdSoUUqBa2qUPdcNbfoXS66Wj5u2aQx+qP9OtqQgRMUSV70Uj7BHHZvMoG7nLdIJeDJSD5qR3fTAGOQXlhtjHkje9ZbkeQ14MX9OYtUVubhqB4knVzdQe2YqCy3+Vxe6xMkP6zvpIw7vbgOsn9Y30h5N3Lx0OdsmfjXiRTWrk6czeJUceSVxpqTSIUddbG3rY47cC0kWrldL65D7Fof3Y8twXxPcZHDWNbkUhR5nUgFviLKfAkmBIlIBb2wiEgFm4fDL3pNB5ryh2CWNYGLIi9cpLIWRlyd60pHhs27bFXhfu6nD1yz+buBgl9e2x+G5DWAl86hJBsYOSSvh2Z9rBz238CjLtpdhnoE/dFiDggEsCMvwiJfHlX1xneqUzhwJVWCUReyGENxaVw/5EVPs+WeAQLlkNcYXAcUBRe5lA+8DBI76j4+4nAzM3t9Y/T+scn1VQR5G5cZhiFSpNJRF/njA8kLNg93gC0W/3KffItGQPoJyRuN2nGCxeLvx0Gdv1uLJUdnQ54ntCJSwf9T11Koeo50UAhyxVZQgbGRihh5pVK17IgNKlKpQd8Y026biX5h3WUp3t1ak09uHRCwVh+10yHhcElKIS/GfQGKVOgmsjIPR+dpMp+zwesLzBB5JwJo1kFWZZD38fF/B1Z3+SLkQIpUWxNAbi581FX7cp+zqY1Z7jJ9ydKuI6MKIe+i98grHTnlXLeXfciVVEftq1+zn7upkRntD9JXsD8xTFS5RaJ8odm6EVNGzs6ZAn/u12ZDH5dX0sJWUrXZZrDPeWot4mxgOREe3v3j37AlqamrXQR5GxC6XQ3FBXLkbzJJ8fHbm5dqW4cRrrpv0qYwy+Upo8hGCIx8jpbLd4JvRRFX8S+GvE0nfCFGb2QP26y9knRKrLD4PWKJ66tueTCBdcT9vHqpaXqUGpz0RxLYi9XGiGdW0oi7rUkx5FWDhYgb6YRL2c+NJE8N8v0PsGWGWv6p/ferV5vPq++WSkqJt5Hdt20qa5epR9z9whU32d8auZhJePAFRuJOedtoPxLSvkjtmaUCsSjyKgjSCTeyvxXgX7jOqHPh3X4rjVHJPlqDKCmFxC+UoMZUevFQsshe3WuYngMp1Cb2pbc/BBu9+O2wM0Zsc/vGGDPl/UH6zL3suz7yevnWDP0Cllccebd1FwJvXGd8vVTXeLtn0xhKUHWLhazLp/3llYZt7R/z8wA7EWiU0LK/mPi+lHprP8mmj/TtA8WSt2/FmZ4IlI4AyVt6C9L+2SJA8s626Vnx0hEonrylNwDtJwJdESB5uyLHdERgZARI3pEbgMUTga4IkLxdkWM6IjAyAiTvyA2ALJ55zQsBknde7c3aTggBkndCjcmqzAsBknde7c3aTggBkndCjcmq7BCYwxHJO4dWZh0niQDJO8lmZaXmgADJO4dWZh0niQDJO8lmZaXmgEAoeeeABetIBIpCgOQtqrloLBHYIUDy7rDgEREoCgGSt6jmorFEYIcAybvDIvSI8YhAFgiQvFk0A40gAvEIkLzxmDEFEcgCAZI3i2agEUQgHgGSNx4zptghwKMRESB5RwSfRROBPgiQvH3QY1oiMCICJO+I4LNoItAHAZK3D3pMSwR2CAx+RPIODjkLJAIYBEheDI7MhQgMjgDJOzjkLJAIYBD4EwAA///Fol1bAAAABklEQVQDADi0p/r9hNzAAAAAAElFTkSuQmCC\";var ti=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAMAAABrrFhUAAABOFBMVEVHcEy97COy3y1yoi603zhfjlp3pTJ4p0mpz27a6tcuY6Gz4S9pmS297CQgV50dVJ4nXKGWuuqdzCey4SOevuudwfSLuiVqmNdThMeSwiX///+exPdfjyuZwPSLuyRomCqOtuy04x0lXKZjkyqw4B6OviRxnNaVu+6BsSWVxCKr2h+byiGYxyJSgsKezSGo1x+SwSN5qSdKe71tnSm76hxxoSl1pSh9rSYbU6B+SBgtY6yj0iG+7hyHtySBquGg0CCGruSEtCV8pt13odpqltFZiMdlkc43bLVfjcqKsee56By35h2l1SCt3R5Ddbk+cLU0aK95quuRvPSEsu9roOWycCVdld9NidjBeyk4ec/RiC74+/Hq8efh7cXL2rJ2OwHO3u7Bl2+ty3+tzNbRtZzJ6HSWumCTaUlth7IzAAAAGnRSTlMA3GegQkJuEicObYnMry3To3G00EOj1K3c6e9b4CAAABpASURBVHic7V0JQxrJEsYTEI3GJCa7iqCgEHVRHwi7ind2s3hsEjVegBqJ7v//B6/Pme6ePqZhEHX9BpjTnq5vqquranrGUOgFL3jBC17wghe0HeFOV6DDiHZ1d7oKHUW4q1zu7XQlOomhcqHcFel0LTqHoQJA+U200/XoFGIFjKFOV6RD6N6j+G8awu79vX2Mva7/oiHsndp38abTtXl49E5B7E8RxDpdn4dG5M0Ui3RzfWG496m2nXBXWoBtTxDt7R4CXtRT7UBiovzptM21DAPhC2WIJ2s8ut8cCnjjNyyKdg/tQ/8JuRBdba1lW9F9MAdxOEfhzxnojU0V9goUe0+YgFDvmzkOflSgd2h/j8NTJiAUGl3kYFSB3jf7AqaeNgGh2AELg0ELDwG/ATsOeAZ+n7wHFVs7WENAM60KdKenJHiq3aCDGBR8cxP+rK1pLmdkKD3l7TrT6dGHq2qbMLqJkIPfnNIX6J0DHWUa95dpt+tMHz59Fzo8lnOhup6xOdFroHgGgXRkYd6FvCeMzalw8FRjARa9CwDz8wtwkl5Qobdk8eZZ5BNHFxyMSXbzfSWHzafeC2KEf/lIseS9orE1DZ6+DUToX3LgaQO9uU011N3GE8PYDMLSzIzYBiI5HeY7Uts2oHdyhoLvB8Kj8zo8fTeIomeSglfq7gUtnksLAJq+TjDZw24Of9RhYewZ3VoepQxwWh2DdhF2Dksfl/AXb1jCa8/ADXQQyW4jZEvMVe2bEbGEf/Hsl2ekAEAFsgDb4NPnbuvxEMDhOSkAuNrZbAlykO13NkWQVVyfVOA5WQCIsRKGawX717Xo1xT2FNG/vFwCU9GxguGxbTXW13t0hT1FRIrLCIPOhqwWz6wBAPQUi5CDorNeQmahVMqiicyyWbzy3BoAQF8Rg17awZIGz1D+UDgPpF8prpCIOEyahAylQX1RTxQ9KwjEEehDohbJx53AWvHZGUCMvpV8Pu8Q0F9UYXnw+RlAhHAegRBA9AEAtgs8x3im1x+ghyVgcEWB5yt/qD+RSOQTlIC8HM/R/lNEEpABQoBc/MFnkQdXITwIGcAEhKEyeND/TM0fRU8ikUo5BHjQ86wvP0R/CgBfZC8Bg32Gv34GeAXknyAEpHj8F8QHgATgJY6Aif+I+KDvm5igbv5ECk5A+InB5276GPRMTFA/B3ABMdj/7C0fi76JCeroAC4Ge/r+O9eeoM919IzNPhyO9PX1I/T2RcKPmqswqGgPRH9A1xQU2DM4VlwulWCOCGYJx8ZG+x/jrbJwpL9nbBsmsgBQML8y2CINoMTBlSLOFGACsjBLur4+OTMzFut9TJoQhcKvb8MbHkT+ZRjQg5BucLBJEsL9IEqCETLOIDoqAOVH95iXxmKPxGxGusdAjSbX1+EdL5jJJPKTuB5GNj2WJj7Sj2JEnB2QEoDvJY52vi2Ee0d/AdLDOzuEANoCkAKsoNAOObi+LX20rycFIiTCgEoDIAELC/Njnb1vFon9gu5fIvl5ApYFAkD0AzgwPzoZ7R9MJYj8eZUGTDoE5OY7qAWRUXQne4bTgKxrA3gCIAWpCQMH4X7gFOKjgfj5FWwENATM5zZzo52xBZHRBTTeyyVgXWwCgIL8iqsBCeLwqosEThERP8FqQFFHQC63Od+BdhBBg/4QAUscATINyDsagCiYkPr8oOlP4CMoASsmAj4SAjbXHloJojE47hUxICOAsYJIA4gKYAYmUjLHHzT9CSR/IuUqAFSBoktACXlCggbMIwIONh/UEnQv5HKIANoEZqQaQFUA57xSVANSJPhxrEG0rx9FRClGAYgOuFYQ3TNUErB2cPBwYykjozkiv9MEZiQawHQDCbYJYPkRB8A/AJ7z4CDdQORPuSrANQE9AYujD+QadufgiH+WAZMGYApSCV4FPEjxKsAaAacbYAlY+riArSAhYO7NQzSDyOjmmksApwGTKg1I5OUa4GEg5TECUg3gPCFkBREBi3Pmx7FaRm8OPfniaQOMJ5RVuIKsFZSSkGI7AVcDDK4gS8DcXLsNQezggCMAy7/kaoC8H8Spfyfxp9QBrwrgO4ZyAj5SAjZdAg5H2/qajtiiS0CO7QaJBqzjYMisAWYbkKeuILEBJY0nxBJw2MYXlUTeLC4KGuAxgoIGOK5gnjECE0oVEI2gNBjwdgMcAYdte0sFlB8QcCBogOMIyAjgoyF/vUBCcAWLgiuoJmAREdAuBuATwA4BmxwBS55oSHQFOUdAZQRdCrD8ibw0GOAJwG0AEnCACUinDw/bwUAEPgNOCFgzEoA1AGVEsAb46QhTnC/MNoFlMwFrjgak01NzwTMQWZubYzQgl1P7wkgBSm4TcHzBlCu/igK2G7DTAI6AqamgGYgsHh5C+WUEeKygKRw0aABnBX1qgGMFKQHpYF2iKHwNxBxhwLUBoivIEFDi+0FqA/T94IQoPqcBy4IruCRzBCgBweoAkv+QtgHREzIEA3lGBQyekOMICJ6QzBEwEbAfJAMxaFkZDUAEzCsdAUYDipwGpAy+MKFAtIIKX3hJ4QkRAvaDe3kdfBMMQ8CByRNS5YX9a4A0HCypNSDHa0AaEbDfFZBP2Iu6VrcJUCMwzxkB6gv7jIa0NkASDnqSYp5oyOkGHAL2gnnpQrRryiFA1IB5qSMg0wDOBqgYEGwAEwws6wnYJATMuUYAElAIJDYcmkpLCNiUxMOytGiRswEGX1jIiWnzwjN8TmgNp0R4Avb2AjCE3bBT9doAH02A6wYYV3BC4wh4o6E8pwElVWJ8U6oBhdYNYRTLn5bYgJwxK1h0bg4K0ZCyG/D0goIGSAlgkmKuFcQaUGj5sfuhKVYDNEbQ5Aj46Qa8NoDLCcnTogsSArAGAAYKhRY9wu4pkYBF7Ac4GrCgIKAkSYxTBtQpISYadFWguKIjYF70hNKMDSgU9ltrBF37pAlIPCEtASZHQEZBSswJeTQg6/GF5QS4TaDQ2nv4Yvv7rg2QBwMeAnSOQMrKERBdQTEvrI6GHBWA72FroSeIdOFXWSk1QH1nQKcB8uvv6QbcrKAiGpqRETDnGkFMQCtvM47t+yLAGw5mFUMETIlxhQZIs4LKvLCgAeXm7WAkvb/PtgExJWIKBhRDBPyGg44NKIp5YUNalNEAaATKTccEMSK/1BPSNQFpXph1BJQ5Iewmia6gGA6a8sJcN1Aul5tUgSh+H7C3CUjywktcXlimAawKKI1ASuIMm0fJOGlRLinmEFAoN/kuwu49SoDCE5K5gtsSR8AbDJiygsL9YQUBS2I4KHUEoAo01RFEu/b2NDZA5wtrNMCJBzUqkJBpgHqUzAIJBmQagN5H2uQ7eXv3HAK4eNDOF3ZsAM0LJ4j0qeL97dVVvYZQv7m6ur2/z6eIFghDBPiEQFZJwIGsCUANaModHFIQsCgQoPKFhZyYowFAwpXbq3r1VwQyI6jWAQ+JCTJSinUFl1U5IdYREDVgn9iAcrmJxEB0b0/eBEQCVIlxaV44NZG4v6rxUosALNyvIEMoGgFVUiwnT4tSRwCgCTPYvefRAMYGmDwh/uYYVYGJieWrmlZ4h4Sr2yKgQBoMwCYwacgLpwUCyvZtYKjAE5BmbMABmxdW3BnwDhRLJe7rvqQnqN3e05tD2rywJxriCUBNwL4NRLoKRAUkvvCBkBjXEUBUAGi/nfi4MdyupBKqflA1SESqAdaJke6CSgMkWUHPcFkmGMAEJBL3/nTfA8BB3mqUjDccREbAtg0McQRMSaIhGQGSnBgiILFy1Zz4ELWr5bxqlIwnMS76wlQDrN3hgk4DRAI+MsOEuH4Qh4P5xK3e7usB/hZ0CytmX1hFAKLA0hfqdQngUyKUgDVBA5R5YSB/sYXLT0mo3xaLegKYrKDXF7buCGM8AVwTWBS6QcV4YUpAvtnWLwBSoAoHc0oCCk4bsIuJhzABXldwUUiKGW+N5G8DER+idgvcK2kwMM/7wk5WcJ8hwCoginYVOCOgzgqa8sKJ1tWfo2B5mdWAGTJkXuoLt2IFI4WC2Qr6ujUSqPyIglKJbwIfxWDAmxUsW1vBbt8EqFxB7Ajkg5YfmsP7UlZGwJqaAPtuICYh4FBFgDorGPj1x7i6z25rBokoNKDLZjD9EPrXLuqEgDktCjWgTfLDUGl920yA4AhY5QS6ykQFFFlB/TAhogHF4Oy/B7VbxIB6lIyQFrXsBqL75XITBMxwwUDxvn3yA9SX1n0TULAlIFJQEEDbgMQXRgSsM2nRbZX/E4xfBNvBpGrEuCwYsOkHewtsE+B7Ac2tEVYDSsvK4PcyKNNQu530RQBhwCIl0F2mGuBNCIhpUTkB2WW1Abi8/NlKbMSgejUzw7uCIgH7jA2wICDGEaC5M6DMC5fu1TJeAgSlBNXbGW1WkLUBFo5ArFwQbIA7UIzLCsoGiiECiprsDyQgMCX49UqRFGN84bK1Kzik1wDVeGGXgJKuB7zEsE6QKVC9/WhMixYss2JDjgYIVlBPANMEdNL9IAz8DIqBK9QGvASIrmCrGqC8QewhQKsAVAMuL39YdYg3440bxa7a2oI5MW5BQPSNVAN0wYBAgFayHw4DNkpQ3fp99fPFzo3cdtx5hggwvYB1TggQUEYU8GlRfwRMrm9n9T7gJYOf/pWg/vnz59XV6YsNqR7UNzWJcWsCusq4DfhPi3JZway+k2M04PLcokOcBRqwevEZcJCR0Fa9y20GSgDTBDxZQR0B8PFR/WW95HDuu0NsTEMCVi8uVldBU5AyoA0H7QgQ42HBE9I+QGyIgn6csxrgXwmqXz5j+S8AEatnDQ9x9cVNeTTULg3wjJLBGpA1hMGAADSdY/HPfSvB7OcLOOGf1c9ncfHPqnebirxwwZaAgmgD/BIAVEDrBGACLqnwhAt/XlEDCQ+VAM7gQlJsbHcuAWkxIWBBwFXZ6QYEAph4eE06Tgq2AcP1/HEO5T4/dxUBwI8S3BDBCQWIjh2BgjpuA2mqAs3dGvlUV7mCh0I87E2MT65r4iBCABH//Nyl4tyHV1T97cKDz6I9rKUXRVewbHuDOPphtnqnywurnp9FGrBtyoT9OKe45GZmr2jWSwDELk/BHfvo2J7bDVgEQx8utn6t+yXAkxU0GXWXAAE/TM2gIifgQnCO7hb5hyYKtuFw9P3FRQaY1D3J/VEVAYwGmAyakoDzcwN3NyoCLi5mWQrqUkfAQgMAARcNyICCAEk05OaEzAR8p/J+5+bfz79/19tCQMCZO8EP+sI1XgtqU5KsoEVG6D0sFJRXlybFNMEAGi5rsmaAAGaCP/QXznX0Vc+I3Ojj0HCBqeDM4d2hJy9sR8DF2Z916FmowkHNrRFTS/7x/TsRnOGAzrRKUP3rTAWsDRsO+dU7z50Bi6zwACrzT1ha3SotilxBHwQgafGX/tLZ9+9qr6g6qySA0rDlUFBPCxpgQcBbXNynGqJyyicBxBeeMciPNMDBOT/HM6US7BgIgKhQCupCN2BxY+Tt2ekZ/OygitS90dBiYATIofKKNqCEp/h7enbmLJw6EwSNEWr7XFrU5s7Q2ekpKO30b8RAFSiBbsC08MxAEASolKBCKga/cEYXmM3w92wcEwi112kCexY3R6O4IFAUHt4FCqKPzhnfIxEMAX98l+pA8tSIM/zToAw4TcBqpOAHpzgywA0YVV1WkPWEJo0E/GHEtcIprJgJcHjA2UPIAPaErMYHvCfFnJyeUgbqHhsgJ8BHL3BtEv8PVVhQobVCX36RrJ/gHzD7htyCO6oBViNE3p2eYICC6CDH+t3hoegLS0aL+nCEDARc/6vsByunpFYnpyfuEq3sCVmhP6cVSEGdaIAVAa+Zk5xe0Ut6l1ZpAJcXNrrCegJU6g9Q3WDrdcJIDpZm2XW6FaZP61gDrMaLv+WKcUKU2t2cjoAln7GAjgC1+kMCvp1Y4vQEdAh1+2fnwrsn4FzodPDHDdLq6UUjAcZwWEPA9b+6BlTD9QGfHfi7Q5bwAt1O6oxmcDppVKuwG7R7cmwX/Cn8oB+GAeATLC4agoHmCbjWqD8m4But1wnz+YYkddfA7w7dCrdt3UAG7MbLv/vG4aTh1qJ+aHh60pgRUhFw/a8pH3BC6rPzTQ2y74TZdFK5KZet5A+9Fotlqla9OzjwEuDGw0umnKCCAL36Q4xr5DagYfnIyNtv37bwXx6jDyiBqUjtbg0bAdkwIWM/KCfg+tqcE8x8g9XacupEAbds4V1wB/o9pgKQYy0fGop+Oxbwjb0TU60vbrqJcTEpZlBkhQaY7w/VxDoxtTOsHx/bPj275T0Hdy+qere5qXh+1pQWlhFw7WeswI2aACMqts8MvRNLSAIGuErW71QPEBtuDPz0EKDt/F00WiBgy/YdAq+PkzyOj46PhdvS9bV5+SARvSvk0YDrP1RDPzhUk2KdLPDOUv5QJHmUPDo6PnK+cD1Z4UWrQgqs7wyIGmDo/B3Ut5JJWBP2I1vyroM/syYgWjlCgEUlyRwuCrLV7uYXvGlR/f1xngA/1h+jkXRqRHEsLiW9e9Cm5GtbAkLvmNLYosTb8rW7hQXxDnlWZ9GqHAGa0E9ALSOpjW+8tSbgraqohihd/fbjR/6fjejHyLAE+FV/gCs7iQVYyx+KHsXjcfiFP/gDvnAh47lmmAKXgG1tP+AScO2j86eoZo5oXejErsWdRWavOyXtCQi9i6uQufIMzQAULLFvEtHptUOA2fdlcHOkrE88Tq+VEtY2UEtAPO5pBlALZmacEePaUTKEAFPox6Pa0FRnnHzZJX6vvQ0ERgD9LZjgh87IcrwhucT126VJOl5YN1QSE2AM/XhcHeEqkLrQqtCNdIdzDKkw3W1vAwGS7nl48cFX0gx+hc95z8Cnudb1KoAIsFJ/aAEcwamkcaY+4+McOXHuUIBkU++SesdRPS4sS5UAtYRt9I8W1FYAEOC/8ydo8MJ6KuPdyPHRjAmAbWBch3hDpgRQDe7Xs7oB8z+vLdUf0JrRVsWIplpAKKQnQKkE6BUo9yWlCvz0Ffpx5TVak3+8ybepvTOVq1ICWOeaUsif1g8KtCp/cy0AtAFz0UolCBI3JlU0oZlOEMFPy8v4fDNQ86i3Kv940+9VNbYBCE07CAQtG4DxZLPyhyJ+uEduUfsoaF3+5luATxVAblHb2kGj5QYQb+HNwq+pm+k4xcyMTNQzbAsF1ZujceF8ykl2HPw02wdARGk4geRkQ4/xOBuAwIV2mAIxBBrnIx0ictytC6mNe3GaDIQcvONOypRKNtN18DlKNoLWghonyrh74vH4OFsvpzLeaHA8nmlFfhQS+sbRUbANoWZzciVaaQGgDeiyAjIESMFNBpbnOQHz66tCTcYBjgpk4hnwcSe67v3g6SjTMLwx0h9q46hM4ZTemrgr3I9zVGsKAIBOksmws7g7dz7sxowkYWR9+ePkhEzxzNfZxyxxlaEMtaoAoCfMMIhndHD3JjM3LXFQG09qz8QJra1VpVX5Q9GKuSpeJJMZ5aPORlQbGR/y+0NLfSBRgSSSJ4M+sGL0myHbMu7OZDJJ5mixoXjUWX/1G8kkLQ6f0Tmhc66Mu8s9hq8J/ivre6ISDYgmsTi+IB4Yt7WIQPmDRAAKAJyhVmpwfJwc920PajeZSiUo2SEqgfyzrchWElSr4v6wH88kWalUMoAEgyZUazfxChLfUwqZ2BN6F6R/EYgCABWocEiSrxW2IAkqFqo3N+OZrS1zKXanTW4E9N/WonzVtsjXCluVra2NjQ3IQ+MGMIEBlhrjmQrc4Ud+y9NuBaQAQAW2ggQUFw/pQitbG4GWzp4osH/BHAV1RNXk67ohmW2wB8lE22CP2pAfI/mTDcnqBrPBUw4gNjAFAL7AxhPEbnDyh6K7Gxs7G+jLfjboL7eJru7IamWBHbd4/uTuCekRO/wXb2s5CmDxeufJ4X2Q8odCs7Jz7DK//DYzduGR/g72HrUr3cWvBPYvVzHe7iqxo96lwU7zf6o6N7cSoAXEeN9qXR8Ws4F1gRTRWQ92vau79BMkdp1zKU4hWQ/UAmK8Dlaq9iJgC4gQfT/7CUyzzK+z9omuyycFlDvYIz7RM3gL5TYz1Zj99ClgC4jx9tNTwV+BW0CM93+1qb7cUgAnaUcDgIh++Otx4hO/+HdbGgDE2787JqMF/m5TA4B4//cTQLsaAMKHTktnxp+Bu0As3v752PFbG1wgFq9/67SEevzW1gYA8eG3R40P7ZY/FHnUDHxoWw/ooq/TQuow0H75Q6GB/z1atN0AQERDHzotpwrtNwAY4dYY+CcgcT3lfrB5UU5L6PvnUaLvoeQHZoCc8otQhS/SRWt8ERa+OKtfpAXjTQ9iAB0Gvpjwj/GIgPGg8gN/6KHlM2HkYeUPhUc+B4kvLR74ZeTBDKDDADjtV7cGX7kZXfiq2sge/hV+vjJrwoK7Kj8Q4cHlBwx8fTT4Mvzq4eUPhV51Wm4XHZEfuAOrq6tf8fcrmugP96Xb+N3OTvKn3jLEI9hjv/J/2CH5QWe4+ijwwB0gz8C0U41p8mU28RumV8WVafcod+c0f5BmE1no2PVHDEyvThOsMl92G92wyq6xO9AeZ/Oq8Bd8savsZrzWweuPGZgWxBLE4ERlFoZHRgYgRkaGhZ2rbhHaEvC3o9efYcAGq19HBrh++9WAy4IlOi5/Ewz8MyCpdfjVQDMcPAL5IQO/85PzmXZndOVrDwhaFW7bK6AH4p9Py9bo1Bn/x4sBptJ8PXk+gPgD+pg9PDDMcyeUyH8ei/zAI3JrRYAq7Kzj5ekRPxmLVyP0z0gJbCG/s8U+dPynw6thR3SGBW5teMTn9QoDCvygw90fjzDLgAzDAzbh2qsBQ3G/P5rm70DHgO+Lz5Y3MKwj4TGpP4Xqqo1YXXwGYegeyIt8bJefoH+Yb/+/Dzdz7XlAFkaGXW0ARTZL6EMAXrNhp6KvArtQ4VcOgiryBS94wQte8IIXhP4P4nVznqPTxGMAAAAASUVORK5CYII=\";var{TabPane:Mn}=s.Tabs;function si(e,t=!0){let n=(0,r.useRef)(0);(0,r.useEffect)(()=>{if(!t)return;let o=document.querySelector(e);if(!o)return;let a=!1,i=!1,l=0,u=0,c=0,f=0,m=0,d=w=>{o.scrollLeft=w,n.current=o.scrollLeft},g=(w=n.current)=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),c=window.requestAnimationFrame(()=>{d(w),f=window.requestAnimationFrame(()=>{d(w),m=window.setTimeout(()=>{d(w)},80)})})},p=()=>{a&&(a=!1,o.classList.remove(\"is-dragging\"),window.setTimeout(()=>{i=!1},0))},v=w=>{w.pointerType===\"mouse\"&&w.button!==0||o.scrollWidth<=o.clientWidth||(a=!0,i=!1,l=w.clientX,u=o.scrollLeft,o.classList.add(\"is-dragging\"))},y=w=>{if(!a)return;let F=w.clientX-l;Math.abs(F)<4||(i=!0,o.scrollLeft=u-F,n.current=o.scrollLeft,w.preventDefault())},k=w=>{let F=o.scrollLeft;if(i){w.preventDefault(),w.stopPropagation();return}g(F)},E=()=>{n.current=o.scrollLeft};return g(),o.addEventListener(\"pointerdown\",v),o.addEventListener(\"click\",k,!0),o.addEventListener(\"scroll\",E),window.addEventListener(\"pointermove\",y,{passive:!1}),window.addEventListener(\"pointerup\",p),window.addEventListener(\"pointercancel\",p),()=>{window.cancelAnimationFrame(c),window.cancelAnimationFrame(f),window.clearTimeout(m),o.removeEventListener(\"pointerdown\",v),o.removeEventListener(\"click\",k,!0),o.removeEventListener(\"scroll\",E),window.removeEventListener(\"pointermove\",y),window.removeEventListener(\"pointerup\",p),window.removeEventListener(\"pointercancel\",p),o.classList.remove(\"is-dragging\")}},[e,t])}function Zl(){let[e,t]=(0,r.useState)(\"quark\");si(\".account-tabs__nav-scroll\");let n=[{key:\"quark\",label:\"\\u5938\\u514B\",content:r.default.createElement(st,{qrcodeUrl:\"/quark/qrcode\",cacheUrl:\"/quark/cookie\",checkStatusUrl:\"/quark/check-status\"})},{key:\"uc-cookie\",label:\"UC\",content:r.default.createElement(st,{qrcodeUrl:\"/uc/qrcode\",cacheUrl:\"/uc/cookie\",checkStatusUrl:\"/uc/check-status\"})},{key:\"uc-token\",label:\"UT\",content:r.default.createElement(st,{qrcodeUrl:\"/uc-tv/qrcode\",cacheUrl:\"/uc-tv/token\",checkStatusUrl:\"/uc-tv/check-status\"})},{key:\"115\",label:\"115\",content:r.default.createElement(st,{qrcodeUrl:\"/115/qrcode\",cacheUrl:\"/115/cookie\",checkStatusUrl:\"/115/check-status\"})},{key:\"baidu\",label:\"\\u767E\\u5EA6\",content:r.default.createElement(st,{qrcodeUrl:\"/baidu/qrcode\",cacheUrl:\"/baidu/cookie\",checkStatusUrl:\"/baidu/check-status\"})},{key:\"ali\",label:\"\\u963F\\u91CC\",content:r.default.createElement(st,{qrcodeUrl:\"/ali/qrcode\",cacheUrl:\"/ali/token\",checkStatusUrl:\"/ali/check-status\"})},{key:\"guangyapan\",label:\"\\u5149\\u9E2D\",content:r.default.createElement(ld,null)},{key:\"xunlei\",label:\"\\u8FC5\\u96F7\",content:r.default.createElement(id,null)},{key:\"yidong\",label:\"\\u79FB\\u52A8\",content:r.default.createElement(sd,null)},{key:\"tianyi\",label:\"\\u5929\\u7FFC\",content:r.default.createElement(ni,{api:\"/tianyi/account\"})},{key:\"123\",label:\"123\",content:r.default.createElement(ni,{api:\"/pan123/account\"},r.default.createElement(s.Form.Item,{label:\"\\u514D\\u767B\\u5F55\",name:\"useDirectDownload\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null)))}],o=n.find(a=>a.key===e)||n[0];return r.default.createElement(\"div\",{className:\"account-tabs\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"\\u7F51\\u76D8\\u767B\\u5F55\\u65B9\\u5F0F\"},r.default.createElement(\"div\",{className:\"account-tabs__nav-list\"},n.map(a=>{let i=a.key===o.key;return r.default.createElement(\"button\",{key:a.key,id:\"account-tab-\".concat(a.key),type:\"button\",role:\"tab\",\"aria-selected\":i,\"aria-controls\":\"account-panel-\".concat(a.key),className:\"account-tabs__tab\".concat(i?\" account-tabs__tab--active\":\"\"),onClick:()=>t(a.key)},a.label)}))),r.default.createElement(\"div\",{id:\"account-panel-\".concat(o.key),role:\"tabpanel\",\"aria-labelledby\":\"account-tab-\".concat(o.key),className:\"account-tabs__panel\"},o.content))}var I=bt.default.create({baseURL:\"/website\"}),qt=(e,t=\"\\u8BF7\\u6C42\\u5931\\u8D25\")=>typeof e==\"string\"?e||t:e&&typeof e==\"object\"?e.message||e.msg||e.desc||e.resultDesc||JSON.stringify(e):e==null?t:String(e);I.interceptors.response.use(function(e){var t;if(e.data.code!==0){let n=qt((t=e.data.message)!=null?t:e.data);s.message.error(n);let o=new Error(n);throw o.handled=!0,o}else return e.data.data},function(e){return Promise.reject(e)});s.message.config({top:\"40%\"});var Jl=\"https://o.alicdn.com/captcha-frontend/aliyunCaptcha/AliyunCaptcha.js\",Ir=\"yidong-aliyun-captcha-button\",Ql={2:{prefix:\"7elm7k\",SceneId:\"1rmw421p\"},3:{prefix:\"7elm7k\",SceneId:\"kcx16g7r\"}},Rl=(e,t)=>new Promise((n,o)=>{if(document.getElementById(t)){n();return}let a=document.createElement(\"script\");a.id=t,a.src=e,a.async=!0,a.onload=()=>n(),a.onerror=()=>o(new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u52A0\\u8F7D\\u5931\\u8D25\")),document.head.appendChild(a)}),ed=()=>{let e=document.getElementById(Ir);return e||(e=document.createElement(\"button\"),e.id=Ir,e.type=\"button\",e.style.cssText=\"position:absolute;top:-50px;left:-50px;opacity:0;pointer-events:none;\",document.body.appendChild(e)),e},td=()=>{let e=String(navigator.language||\"\").toLowerCase();return e.includes(\"en\")?\"en\":e.includes(\"tw\")||e.includes(\"hk\")?\"tw\":\"cn\"},nd=(e=\"\")=>{try{return window.btoa(e)}catch(t){return window.btoa(unescape(encodeURIComponent(e)))}},rd=()=>{let e=navigator.userAgent||\"\",t=e.match(/Android\\s+([\\d.]+)[^;)]*;\\s*([^)]+?)(?:\\s+Build|;|\\))/i),n=e.match(/(iPhone|iPad|iPod);.*?OS\\s+([\\d_]+)/i),o=e.match(/(Edg|Chrome|Firefox|Safari|Opera)\\/([\\d.]+)/i),a=navigator.platform||\"Web\",i=o?\"\".concat(o[1],\" \").concat(o[2]):e.slice(0,120);t?(a=t[2].trim(),i=\"Android \".concat(t[1])):n&&(a=n[1],i=\"iOS \".concat(n[2].replace(/_/g,\".\")));let l=\"\".concat(window.screen.width,\"X\").concat(window.screen.height);return[\"\",\"\",\"3\",\"7.17.7\",a,a,\"\",\"\",i,l,\"\",\"\",\"\",nd(a),\"\"].join(\"|\")},od=async e=>{let t=Ql[Number(e)];if(!t)throw new Error(\"\\u6682\\u4E0D\\u652F\\u6301\\u5F53\\u524D\\u6ED1\\u5757\\u9A8C\\u8BC1\\u7801\\u7C7B\\u578B\\uFF1A\".concat(e||\"unknown\"));if(await Rl(Jl,\"yidong-aliyun-captcha-script\"),ed(),typeof window.initAliyunCaptcha!=\"function\")throw new Error(\"\\u6ED1\\u5757\\u7EC4\\u4EF6\\u521D\\u59CB\\u5316\\u5931\\u8D25\");return window.AliyunCaptchaConfig={region:\"cn\",prefix:t.prefix},new Promise((n,o)=>{let a=!1;window.initAliyunCaptcha({SceneId:t.SceneId,mode:\"popup\",button:\"#\".concat(Ir),language:td(),showErrorTip:!1,slideStyle:{width:360,height:40},success:i=>{a=!0,n(i)},error:i=>{a=!0,o(i instanceof Error?i:new Error(qt(i,\"\\u6ED1\\u5757\\u9A8C\\u8BC1\\u5931\\u8D25\")))},onClose:()=>{a||o(new Error(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"))},getInstance:i=>{setTimeout(()=>{var l;return(l=i==null?void 0:i.show)==null?void 0:l.call(i)},0)}})})},X={IDLE:\"idle\",LOADING:\"loading\",WAITING:\"waiting\",SCANNED:\"scanned\",SUCCESS:\"success\",EXPIRED:\"expired\",ERROR:\"error\"},zt={NEW:\"NEW\",SCANNED:\"SCANNED\",CONFIRMED:\"CONFIRMED\",EXPIRED:\"EXPIRED\",CANCELED:\"CANCELED\"},ad={[X.IDLE]:\"READY\",[X.LOADING]:\"LOADING\",[X.WAITING]:\"SCAN ME\",[X.SCANNED]:\"CONFIRM\",[X.SUCCESS]:\"SUCCESS\",[X.EXPIRED]:\"EXPIRED\",[X.ERROR]:\"ERROR\"};function st({qrcodeUrl:e,cacheUrl:t,checkStatusUrl:n}){let[o,a]=r.default.useState(\"\"),[i,l]=r.default.useState(X.IDLE),[u,c]=r.default.useState($t),f=(0,r.useRef)(null),m=(0,r.useRef)(null),d=(0,r.useCallback)(()=>{f.current&&(clearInterval(f.current),f.current=null),m.current&&(clearTimeout(m.current),m.current=null)},[]),g=(0,r.useCallback)(w=>{d(),f.current=setInterval(async()=>{try{let F=await bt.default.post(\"/website\".concat(n),{sessionKey:w});if(F.data.code===0&&F.data.data){let{status:_,cookie:z}=F.data.data;switch(_){case zt.CONFIRMED:d(),a(z),l(X.SUCCESS),await I.put(t,{cookie:z}),s.message.success(\"\\u626B\\u7801\\u6210\\u529F\\uFF0C\\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\"),setTimeout(()=>{c($t),l(X.IDLE)},2e3);break;case zt.SCANNED:l(X.SCANNED);break;case zt.EXPIRED:case zt.CANCELED:d(),c($t),l(X.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\");break;case zt.NEW:default:break}}}catch(F){}},2e3),m.current=setTimeout(()=>{d(),c($t),l(X.EXPIRED),s.message.warning(\"\\u4E8C\\u7EF4\\u7801\\u5DF2\\u8FC7\\u671F\\uFF0C\\u8BF7\\u91CD\\u65B0\\u70B9\\u51FB\")},12e4)},[t,n,d]),p=(0,r.useCallback)(async()=>{if(i!==X.LOADING){d(),l(X.LOADING);try{let w=await bt.default.get(\"/website\".concat(e,\"?t=\").concat(Date.now()),{responseType:\"blob\"}),F=w.headers[\"x-session-key\"];if(F){let _=URL.createObjectURL(w.data);c(_),l(X.WAITING),g(F)}else throw new Error(\"\\u672A\\u83B7\\u53D6\\u5230 sessionKey\")}catch(w){console.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25:\",w),l(X.ERROR),s.message.error(\"\\u83B7\\u53D6\\u4E8C\\u7EF4\\u7801\\u5931\\u8D25\")}}},[e,i,d,g]),v=(0,r.useCallback)(w=>{if(!w){s.message.warning(\"\\u6CA1\\u6709\\u53EF\\u590D\\u5236\\u7684\\u5185\\u5BB9\");return}(0,Mr.default)(w),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")},[]),y=(0,r.useCallback)(async()=>{if(!o){s.message.warning(\"\\u6CA1\\u6709\\u53EF\\u5165\\u5E93\\u7684\\u5185\\u5BB9\");return}await I.put(t,{cookie:o}),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},[t,o]);(0,r.useEffect)(()=>(I.get(t).then(w=>{a(w||\"\")}),()=>d()),[t,d]);let k=()=>{switch(i){case X.SUCCESS:return\"#22c55e\";case X.ERROR:case X.EXPIRED:return\"#ef4444\";default:return\"#3b82f6\"}},E=i===X.LOADING;return r.default.createElement(\"div\",{className:\"qrcode-card\"},r.default.createElement(\"div\",{className:\"qrcode-wrapper\",onClick:p},r.default.createElement(\"div\",{className:\"qrcode-glow\"}),r.default.createElement(\"div\",{className:\"qrcode-container\"},r.default.createElement(\"img\",{src:u,alt:\"\\u626B\\u7801\\u533A\\u57DF\",className:\"qrcode-image \".concat(E?\"qrcode-image--loading\":\"\")}),E&&r.default.createElement(\"div\",{className:\"qrcode-overlay\"},r.default.createElement(\"div\",{className:\"qrcode-spinner\"}),r.default.createElement(\"span\",null,\"\\u751F\\u6210\\u4E2D...\"))),r.default.createElement(\"div\",{className:\"qrcode-status\"},r.default.createElement(\"div\",{className:\"status-dot \".concat(i===X.WAITING||i===X.SCANNED?\"status-dot--pulse\":\"\"),style:{backgroundColor:k()}}),r.default.createElement(\"span\",{className:\"status-text\"},ad[i]))),r.default.createElement(\"div\",{className:\"cookie-result-wrapper\"},r.default.createElement(\"textarea\",{className:\"cookie-result\",value:o,onChange:w=>a(w.target.value),placeholder:\"\\u70B9\\u51FB\\u4E0A\\u65B9\\u4E8C\\u7EF4\\u7801\\u5F00\\u59CB\\u626B\\u7801...\",spellCheck:\"false\"})),r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:()=>v(o)},r.default.createElement(\"span\",null,\"\\u590D\\u5236\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\"}))),r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary\",onClick:y},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"})))))}function ni({api:e,children:t}){let[n]=s.Form.useForm(),o=async()=>{try{let a=await n.validateFields();await I.put(e,a),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(a){console.error(a),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(a==null?void 0:a.message))}};return(0,r.useEffect)(()=>{I.get(e).then(a=>{n.setFieldsValue(a)})},[]),r.default.createElement(s.Form,{form:n,className:\"ios-form\",layout:\"vertical\",initialValues:{useDirectDownload:!0}},r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,null)),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,null)),t,r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\")))}function id(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async()=>{let d=await I.get(\"/xunlei/account\");e.setFieldsValue({username:d.username||\"\",password:d.password||\"\"})},[e]),c=async()=>{let d=await e.validateFields([\"username\",\"password\"]);await I.put(\"/xunlei/account\",d),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")},f=async()=>{try{a(!0);let d=await e.validateFields([\"username\",\"password\"]);await I.put(\"/xunlei/account\",d),await I.post(\"/xunlei/send-code\",{}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{a(!1)}},m=async()=>{try{l(!0);let d;if(t.trim())d=await I.post(\"/xunlei/verify-code\",{code:t.trim()});else{let g=await e.validateFields([\"username\",\"password\"]);d=await I.post(\"/xunlei/login\",g)}d!=null&&d.hasAuth&&s.message.success(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u6210\\u529F\\uFF0C\\u53EF\\u5C1D\\u8BD5\\u539F\\u753B\\u64AD\\u653E\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat((d==null?void 0:d.message)||d))}finally{l(!1)}};return(0,r.useEffect)(()=>{u()},[u]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u8FC5\\u96F7\\u767B\\u5F55\\u5BC6\\u7801\",autoComplete:\"current-password\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"}))))))}function sd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(\"\"),[o,a]=(0,r.useState)(!1),[i,l]=(0,r.useState)(!1),u=(0,r.useCallback)(async(d,g)=>{try{s.message.info(\"\\u8BF7\\u5B8C\\u6210\\u6ED1\\u5757\\u9A8C\\u8BC1\");let p=await od(g);await I.post(\"/yidong/send-code-captcha\",{phone:d,captchaType:g,puzzleVerfycode:p,clientInfo:rd()}),s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(p){console.error(p),(p==null?void 0:p.message)===\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"?s.message.warning(\"\\u5DF2\\u53D6\\u6D88\\u6ED1\\u5757\\u9A8C\\u8BC1\"):p!=null&&p.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(qt((p==null?void 0:p.message)||p)))}},[]),c=async()=>{try{let d=await e.validateFields([\"authorization\"]);await I.put(\"/yidong/authorization\",{authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u5165\\u5E93\\u6210\\u529F\")}catch(d){console.error(d),s.message.error(\"\\u5165\\u5E93\\u5931\\u8D25\\uFF1A\".concat(d==null?void 0:d.message))}},f=async()=>{try{a(!0);let d=await e.validateFields([\"phone\"]),g=String(d.phone||\"\").trim(),p=await I.post(\"/yidong/send-code\",{phone:g});if(p!=null&&p.captchaRequired){await u(g,p.captchaType);return}s.message.success(\"\\u9A8C\\u8BC1\\u7801\\u5DF2\\u53D1\\u9001\\uFF0C\\u8BF7\\u67E5\\u6536\\u77ED\\u4FE1\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\\u5931\\u8D25\\uFF1A\".concat(qt((d==null?void 0:d.message)||d)))}finally{a(!1)}},m=async()=>{if(!t.trim()){s.message.warning(\"\\u8BF7\\u5148\\u8F93\\u5165\\u9A8C\\u8BC1\\u7801\");return}try{l(!0);let d=await e.validateFields([\"phone\"]),g=await I.post(\"/yidong/verify-code\",{phone:String(d.phone||\"\").trim(),code:t.trim()});g!=null&&g.authorization&&e.setFieldsValue({authorization:String(g.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim()}),s.message.success(\"\\u79FB\\u52A8\\u4E91\\u76D8\\u767B\\u5F55\\u6210\\u529F\\uFF0CAuthorization \\u5DF2\\u81EA\\u52A8\\u5165\\u5E93\")}catch(d){console.error(d),d!=null&&d.handled||s.message.error(\"\\u9A8C\\u8BC1\\u7801\\u767B\\u5F55\\u5931\\u8D25\\uFF1A\".concat(qt((d==null?void 0:d.message)||d)))}finally{l(!1)}};return(0,r.useEffect)(()=>{I.get(\"/yidong/authorization\").then(d=>{e.setFieldsValue({authorization:String(d.authorization||\"\").replace(/^Basic\\s+/i,\"\").trim(),phone:d.phone||\"\"})})},[e]),r.default.createElement(s.Form,{form:e,className:\"ios-form\",layout:\"vertical\"},r.default.createElement(s.Form.Item,{label:\"\\u624B\\u673A\\u53F7\",name:\"phone\",rules:[{pattern:/^1[3456789]\\d{9}$/,message:\"\\u8BF7\\u8F93\\u5165\\u6B63\\u786E\\u7684\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4E2D\\u56FD\\u5927\\u9646\\u624B\\u673A\\u53F7\",inputMode:\"tel\",autoComplete:\"tel\"})),r.default.createElement(s.Form.Item,{label:\"\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Space.Compact,{className:\"xunlei-verify-compact\",style:{width:\"100%\"}},r.default.createElement(s.Input,{value:t,onChange:d=>n(d.target.value),placeholder:\"\\u8F93\\u5165\\u77ED\\u4FE1\\u9A8C\\u8BC1\\u7801\",inputMode:\"numeric\",autoComplete:\"one-time-code\"}),r.default.createElement(s.Button,{className:\"xunlei-verify-send-btn\",onClick:f,loading:o},\"\\u53D1\\u9001\\u9A8C\\u8BC1\\u7801\"))),r.default.createElement(s.Form.Item,{label:\"Authorization\",name:\"authorization\"},r.default.createElement(s.Input.Password,{placeholder:\"Basic \\u540E\\u9762\\u7684\\u5185\\u5BB9\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"action-buttons\"},r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:i},r.default.createElement(\"span\",null,i?\"\\u767B\\u5F55\\u4E2D...\":\"\\u767B\\u5F55\"),r.default.createElement(\"svg\",{className:\"btn-icon btn-icon--login\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M15 3h4a2 2 0 012 2v14a2 2 0 01-2 2h-4M10 17l5-5-5-5M15 12H3\"}))),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--secondary\",onClick:c},r.default.createElement(\"span\",null,\"\\u5165\\u5E93\"),r.default.createElement(\"svg\",{className:\"btn-icon\",fill:\"none\",stroke:\"currentColor\",viewBox:\"0 0 24 24\"},r.default.createElement(\"ellipse\",{cx:\"12\",cy:\"5\",rx:\"9\",ry:\"3\",strokeWidth:\"2\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5\"}),r.default.createElement(\"path\",{strokeLinecap:\"round\",strokeLinejoin:\"round\",strokeWidth:\"2\",d:\"M3 12c0 1.66 4.03 3 9 3s9-1.34 9-3\"}))))))}function ld(){return r.default.createElement(st,{qrcodeUrl:\"/guangyapan/qrcode\",cacheUrl:\"/guangyapan/token\",checkStatusUrl:\"/guangyapan/check-status\"})}function dd({visible:e,onCancel:t,onSave:n,panKey:o,panName:a,panPic:i,chunkSize:l,poolSize:u,noSaveMode:c}){let[f]=s.Form.useForm(),m=s.Form.useWatch(\"pic\",f),d=o===\"quark\"||o===\"uc\"||o===\"ali\";(0,r.useEffect)(()=>{e&&f.setFieldsValue({name:a||\"\",pic:i||\"\",chunkSize:l||(o===\"ali\"?128:512),poolSize:u||(o===\"ali\"?20:10),noSaveMode:c===!0})},[e,a,i,l,u,c,f]);let g=async()=>{try{let p=await f.validateFields();n(p)}catch(p){console.error(\"\\u9A8C\\u8BC1\\u5931\\u8D25:\",p)}};return r.default.createElement(s.Modal,{title:\"\".concat(a||\"\\u7F51\\u76D8\",\" \\u914D\\u7F6E\"),open:e,onCancel:t,width:\"90%\",className:\"ios-modal\",footer:null},r.default.createElement(s.Form,{form:f,layout:\"vertical\",className:\"ios-form ios-input-number\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7F51\\u76D8\\u540D\\u79F0\"},{max:20,message:\"\\u540D\\u79F0\\u957F\\u5EA6\\u8BF7\\u63A7\\u5236\\u5728 20 \\u4E2A\\u5B57\\u7B26\\u4EE5\\u5185\"}]},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5938\\u514B\"})),r.default.createElement(s.Form.Item,{label:\"\\u56FE\\u7247 URL\",name:\"pic\",tooltip:\"\\u7559\\u7A7A\\u5C06\\u56DE\\u9000\\u4E3A\\u5185\\u7F6E\\u9ED8\\u8BA4\\u56FE\\u6807\",rules:[{validator:(p,v)=>{let y=String(v||\"\").trim();return!y||/^https?:\\/\\/\\S+$/i.test(y)||/^data:image\\//i.test(y)||/^\\/\\S+/.test(y)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\\uFF08http/https\\u3001data:image \\u6216 / \\u5F00\\u5934\\u8DEF\\u5F84\\uFF09\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/logo.png \\u6216 data:image/png;base64,...\"})),!!String(m||\"\").trim()&&r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:10,marginBottom:16}},r.default.createElement(\"img\",{src:String(m).trim(),alt:\"\\u7F51\\u76D8\\u56FE\\u6807\\u9884\\u89C8\",style:{width:36,height:36,borderRadius:8,objectFit:\"cover\",border:\"1px solid rgba(0,0,0,0.08)\",backgroundColor:\"#fff\"}}),r.default.createElement(\"span\",{style:{fontSize:12,color:\"#8e8e93\"}},\"\\u56FE\\u6807\\u9884\\u89C8\\uFF08\\u82E5\\u4E0D\\u663E\\u793A\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u662F\\u5426\\u53EF\\u8BBF\\u95EE\\uFF09\")),d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u5206\\u7247\\u5927\\u5C0F (KB)\",name:\"chunkSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u5206\\u7247\\u5927\\u5C0F\"},{type:\"number\",min:64,max:2048,message:\"\\u8303\\u56F4: 64-2048 KB\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"512\",addonAfter:\"KB\"})),r.default.createElement(s.Form.Item,{label:\"\\u5E76\\u53D1\\u7EBF\\u7A0B\\u6570\",name:\"poolSize\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u7EBF\\u7A0B\\u6570\"},{type:\"number\",min:1,max:20,message:\"\\u8303\\u56F4: 1-20\"}]},r.default.createElement(s.InputNumber,{style:{width:\"100%\"},placeholder:\"10\",addonAfter:\"\\u7EBF\\u7A0B\"}))),o===\"quark\"&&r.default.createElement(s.Form.Item,{label:\"\\u4E0D\\u8F6C\\u5B58\\u6A21\\u5F0F\",name:\"noSaveMode\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5148\\u5C1D\\u8BD5\\u4E0D\\u8F6C\\u5B58\\u76F4\\u94FE\\uFF0C\\u62FF\\u4E0D\\u5230\\u518D\\u56DE\\u9000\\u8F6C\\u5B58\\uFF1B\\u5173\\u95ED\\u5219\\u76F4\\u63A5\\u8F6C\\u5B58\\u83B7\\u53D6\\u591A\\u753B\\u8D28\\u3002\"},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0,marginTop:24}},r.default.createElement(\"div\",{className:\"ios-button-group\",style:{justifyContent:\"flex-end\"}},r.default.createElement(\"button\",{className:\"action-btn action-btn--secondary-outline\",onClick:t},\"\\u53D6\\u6D88\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:g},\"\\u4FDD\\u5B58\")))))}var li=e=>{let{attributes:t,listeners:n,setNodeRef:o,transform:a,transition:i,isDragging:l}=Tr({id:e[\"data-row-key\"]}),u=S(B(S({},e.style),{transform:Ve.Translate.toString(a),transition:i}),l?{position:\"relative\",zIndex:9999}:{});return r.default.createElement(\"tr\",S(B(S({},e),{ref:o,style:u}),t))},di=({rowKey:e})=>{let{listeners:t,setActivatorNodeRef:n}=Tr({id:e});return r.default.createElement(lr,S({ref:n,className:\"drag-handle\"},t))},Pn=\"https://pan.199333.xyz\",ht=[{key:\"quark\",name:\"\\u5938\\u514B\\u7F51\\u76D8\"},{key:\"uc\",name:\"UC\\u7F51\\u76D8\"},{key:\"aliyun\",name:\"\\u963F\\u91CC\\u4E91\\u76D8\"},{key:\"baidu\",name:\"\\u767E\\u5EA6\\u7F51\\u76D8\"},{key:\"xunlei\",name:\"\\u8FC5\\u96F7\\u7F51\\u76D8\"},{key:\"tianyi\",name:\"\\u5929\\u7FFC\\u4E91\\u76D8\"},{key:\"mobile\",name:\"\\u79FB\\u52A8\\u4E91\\u76D8\"},{key:\"123\",name:\"123\\u7F51\\u76D8\"},{key:\"115\",name:\"115\\u7F51\\u76D8\"},{key:\"pikpak\",name:\"PikPak\"},{key:\"magnet\",name:\"\\u78C1\\u529B\\u94FE\\u63A5\"},{key:\"ed2k\",name:\"\\u7535\\u9A74\\u94FE\\u63A5\"}],Pr={id:\"\",name:\"\",host:\"\",username:\"\",password:\"\",deviceId:\"\",logo:\"\",libraryStats:{movieCount:0,seriesCount:0}};function ud(e){return String(e||\"\").trim().toLowerCase().replace(/[^a-z0-9_-]+/g,\"-\").replace(/^-+|-+$/g,\"\").slice(0,40)}function Lr(){return S({},Pr)}function cd(e){let t=String(e||\"\").trim();return!t||/^https?:\\/\\/\\S+$/i.test(t)||/^data:image\\//i.test(t)||/^\\/\\S+/.test(t)}function Ln(e={}){return String(e.name||\"Emby\").trim()}function fd(e={}){let t=Number(e.movieCount||0),n=Number(e.seriesCount||0);return{movieCount:t,seriesCount:n}}function pd(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon\",viewBox:\"0 0 1024 1024\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"path\",{d:\"M875.690667 414.72H301.738667l576.682666-195.754667c36.181333-11.093333 56.832-49.322667 45.909334-85.674666L909.824 83.626667c-8.704-29.013333-35.84-49.322667-66.218667-49.322667-6.656 0-13.312 1.024-19.626666 2.901333l-0.512 0.170667L127.829333 273.237333C91.648 284.330667 70.997333 322.56 81.92 358.912l14.848 49.664c4.096 13.653333 12.288 25.429333 23.04 34.133333-8.533333 11.434667-13.482667 25.6-13.482667 40.96v436.736c0 38.058667 30.890667 68.949333 68.949334 68.949334h700.416c38.058667 0 68.949333-30.890667 68.949333-68.949334V483.84c0-38.058667-30.890667-69.12-68.949333-69.12z m17.408 69.12v69.290667H690.858667l70.144-86.869334h114.688c9.557333 0.170667 17.408 7.850667 17.408 17.578667z m-717.824-17.408h175.616l-76.970667 76.970667c-2.901333 2.901333-4.949333 6.144-6.144 9.728H157.696v-69.290667c0-9.728 7.850667-17.408 17.578667-17.408z m243.029333 5.290667c1.706667-1.706667 3.072-3.413333 4.096-5.461334H694.613333l-63.829333 79.018667c-1.877333 2.389333-3.413333 4.949333-4.266667 7.68H336.896l81.408-81.237333zM143.189333 322.56l0.512-0.170667L838.997333 86.528c1.536-0.341333 3.072-0.682667 4.608-0.682667 7.68 0 14.506667 5.12 16.725334 12.458667l14.848 49.664c2.730667 9.216-2.56 18.944-11.776 21.674667l-0.512 0.170666L167.424 405.845333c-1.536 0.341333-3.072 0.682667-4.608 0.682667-7.68 0-14.506667-5.12-16.725333-12.458667L131.413333 344.234667c-2.730667-9.216 2.56-18.944 11.776-21.674667z m732.501334 615.424H175.274667c-9.557333 0-17.408-7.850667-17.408-17.408v-315.733333h735.402666v315.733333c-0.170667 9.557333-8.021333 17.408-17.578666 17.408z m0 0\"}))}function md(){return r.default.createElement(\"svg\",{className:\"emby-server-card__stat-icon emby-server-card__stat-icon--series\",viewBox:\"0 0 24 24\",\"aria-hidden\":\"true\",focusable:\"false\"},r.default.createElement(\"rect\",{x:\"3\",y:\"9\",width:\"18\",height:\"12\",rx:\"2.5\"}),r.default.createElement(\"path\",{d:\"M7.5 3.5 L12 9 L16.5 3.5\"}))}function gd(e={}){let{movieCount:t,seriesCount:n}=fd(e);return!t&&!n?r.default.createElement(\"span\",{className:\"emby-server-card__sync\"},\"\\u5F85\\u540C\\u6B65\"):r.default.createElement(r.default.Fragment,null,r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(t,\" \\u7535\\u5F71\"),\"aria-label\":\"\".concat(t,\" \\u7535\\u5F71\")},r.default.createElement(pd,null),r.default.createElement(\"span\",null,t)),r.default.createElement(\"span\",{className:\"emby-server-card__stat\",title:\"\".concat(n,\" \\u5267\\u96C6\"),\"aria-label\":\"\".concat(n,\" \\u5267\\u96C6\")},r.default.createElement(md,null),r.default.createElement(\"span\",null,n)))}function Dr(e={}){return{id:e.id,name:e.name||\"Emby\",host:e.host,username:e.username,password:e.password,deviceId:e.deviceId||\"\",logo:e.logo||\"\",libraries:e.libraries||[],libraryStats:e.libraryStats||Pr.libraryStats}}var ri=\"nodejs_emby_\",oi=\"nodejs_alist_\";function xd(e=\"\"){let t=String(e||\"\");return t.startsWith(ri)?t.slice(ri.length):\"\"}function hd(e=\"\"){let t=String(e||\"\");return t.startsWith(oi)?t.slice(oi.length):\"\"}function ui(){return{id:\"alist_\".concat(Date.now()),name:\"\",server:\"\",username:\"\",password:\"\",token:\"\",otpCode:\"\"}}function Br(e={}){let t=String(e.name||\"\").trim();if(t)return t;try{return new URL(e.server).hostname||\"Alist\"}catch(n){return\"Alist\"}}function Nr(e={}){return{id:e.id||\"alist_\".concat(Date.now()),name:Br(e),server:String(e.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(e.username||\"\").trim(),password:String(e.password||\"\"),token:String(e.token||\"\").trim(),otpCode:String(e.otpCode||\"\").trim()}}var bd=[{key:\"nodejs_muou\",api:\"/muou/urls\",name:\"\\u6728\\u5076\"},{key:\"nodejs_wanou\",api:\"/wanou/urls\",name:\"\\u73A9\\u5076\"},{key:\"nodejs_leijing\",api:\"/leijing/urls\",name:\"\\u96F7\\u9CB8\"},{key:\"nodejs_zhizhen\",api:\"/zhizhen/urls\",name:\"\\u81F3\\u81FB\"},{key:\"nodejs_duoduo\",api:\"/duoduo/urls\",name:\"\\u591A\\u591A\"},{key:\"nodejs_erxiao\",api:\"/erxiao/urls\",name:\"\\u4E8C\\u5C0F\"},{key:\"nodejs_huban\",api:\"/huban/urls\",name:\"\\u864E\\u6591\"},{key:\"nodejs_labi\",api:\"/labi/urls\",name:\"\\u8FA3\\u7B14\"},{key:\"nodejs_ouge\",api:\"/ouge/urls\",name:\"\\u6B27\\u6B4C\"},{key:\"nodejs_xiaoban\",api:\"/xiaoban/urls\",name:\"\\u5C0F\\u73ED\"},{key:\"nodejs_tgchannel\",api:\"/tgchannel/config\",name:\"TG\\u9891\\u9053\",type:\"tg\"},{key:\"nodejs_tgsou\",api:\"/tgsou/config\",name:\"TG\\u641C\",type:\"tg\"},{key:\"nodejs_tgfilebot\",api:\"/tgfilebot/config\",name:\"TGFileBot\",type:\"tgfilebot\"},{key:\"nodejs_pansou\",api:\"/pansou/config\",name:\"PanSou\",type:\"pansou\"},{key:\"nodejs_123ypzysq\",api:\"/123ypzysq/config\",name:\"123\\u8D44\\u6E90\\u793E\\u533A\",type:\"domain-cookie\"},{key:\"nodejs_live2vod\",api:\"/live2vod/config\",name:\"\\u76F4\\u64AD\\u8F6C\\u70B9\\u64AD\",type:\"live2vod\"},{key:\"nodejs_emby\",api:\"/emby-spider/setting\",name:\"Emby\\u6E90\",type:\"emby-spider\"},{key:\"nodejs_alist-video\",api:\"/alist-video/setting\",name:\"Alist\",type:\"alist-video\"}],ai=bd.reduce((e,t)=>(e[t.key]={api:t.api,name:t.name,type:t.type},e),{});function yd({visible:e,onCancel:t,onSave:n,siteName:o}){let[a]=s.Form.useForm(),[i,l]=(0,r.useState)(!1),[u,c]=(0,r.useState)(\"channels\"),[f,m]=(0,r.useState)([]),[d,g]=(0,r.useState)([]),[p,v]=(0,r.useState)(!1),[y,k]=(0,r.useState)([]),[E,w]=(0,r.useState)([]),[F,_]=(0,r.useState)([]),[z,H]=(0,r.useState)(\"\"),[h,C]=(0,r.useState)([]),L=(0,r.useRef)(0),M=()=>{let T=z.trim();if(T){if(f.includes(T)){s.message.warning('\\u9891\\u9053 \"'.concat(T,'\" \\u5DF2\\u5B58\\u5728')),H(\"\");return}m([T,...f]),C([T,...h]),k([T,...y]),H(\"\"),s.message.success('\\u5DF2\\u6DFB\\u52A0\\u9891\\u9053 \"'.concat(T,'\"'))}},N=(T,A)=>{A.stopPropagation(),m(f.filter($=>$!==T)),k(y.filter($=>$!==T)),C(h.filter($=>$!==T)),s.message.success('\\u5DF2\\u5220\\u9664\\u9891\\u9053 \"'.concat(T,'\"'))},j=(0,r.useCallback)(async T=>{if(!T)return null;v(!0);try{let A=await bt.default.get(\"\".concat(T,\"/api/health\"));if(A.data){let $=A.data.channels||[],U=A.data.plugins||[];return m($),g(U),{channels:$,plugins:U}}return null}catch(A){return console.error(\"\\u83B7\\u53D6 PanSou \\u9009\\u9879\\u5931\\u8D25:\",A),null}finally{v(!1)}},[]);(0,r.useEffect)(()=>{let T=++L.current;if(!e){l(!1),H(\"\");return}l(!0),I.get(\"/pansou/config\").then(async A=>{if(L.current!==T)return;let $=A.url||Pn;a.setFieldsValue({name:o,url:$});let U=await j($);A.channels&&A.channels.length>0?k(A.channels):U!=null&&U.channels&&k(U.channels),A.plugins&&A.plugins.length>0?w(A.plugins):U!=null&&U.plugins&&w(U.plugins),A.cloudTypes&&A.cloudTypes.length>0?_(A.cloudTypes):_(ht.map(me=>me.key))}).catch(A=>{L.current===T&&(console.error(A),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{L.current===T&&l(!1)})},[e,o,a,j]);let ne=(0,r.useCallback)(T=>{let A=T.target.value||Pn;j(A)},[j]),ie=async()=>{let T;try{T=await a.validateFields()}catch(A){return}try{l(!0);let A={url:T.url||\"\",channels:y,plugins:E,cloudTypes:F};await I.put(\"/pansou/config\",A),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(T.name),t()}catch(A){console.error(A),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((A==null?void 0:A.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{l(!1)}},we=async()=>{try{l(!0),await I.delete(\"/pansou/config\");let A=(await I.get(\"/pansou/config\")).url||Pn;a.setFieldsValue({url:A});let $=await j(A);k(($==null?void 0:$.channels)||[]),w(($==null?void 0:$.plugins)||[]),_(ht.map(U=>U.key)),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(T){console.error(T),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(T==null?void 0:T.message))}finally{l(!1)}},Ce=(T,A,$)=>{T.includes($)?A(T.filter(U=>U!==$)):A([...T,$])},J=(T,A,$)=>{A.length===T.length?$([]):$([...T])},Ee=(T,A,$,U,me,Se)=>r.default.createElement(\"div\",{key:T,className:\"pansou-checkbox-card \".concat(A?\"pansou-checkbox-card--selected\":\"\"),onClick:$},r.default.createElement(\"span\",{className:\"pansou-checkbox-card__label\"},U||T),me&&r.default.createElement(Ze,{className:\"pansou-checkbox-card__delete\",onClick:Se}));si(\".pansou-config-tabs__nav-scroll\",e);let ue=[{key:\"channels\",label:\"TG\\u9891\\u9053\",count:y.length},{key:\"plugins\",label:\"\\u641C\\u7D22\\u63D2\\u4EF6\",count:E.length},{key:\"cloudTypes\",label:\"\\u7F51\\u76D8\\u7C7B\\u578B\",count:F.length}];return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(o||\"PanSou\"),open:e,onCancel:t,className:\"ios-modal pansou-config-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Spin,{spinning:i},r.default.createElement(s.Form,{form:a,layout:\"vertical\",className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u7AD9\\u6E90\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: \".concat(Pn),onBlur:ne}))),r.default.createElement(\"div\",{className:\"pansou-config-tabs\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-scroll\",role:\"tablist\",\"aria-label\":\"PanSou \\u914D\\u7F6E\\u9879\"},r.default.createElement(\"div\",{className:\"pansou-config-tabs__nav-list\"},ue.map(T=>{let A=T.key===u;return r.default.createElement(\"button\",{key:T.key,type:\"button\",role:\"tab\",\"aria-selected\":A,className:\"pansou-config-tabs__tab\".concat(A?\" pansou-config-tabs__tab--active\":\"\"),onClick:()=>c(T.key)},r.default.createElement(\"span\",null,T.label),r.default.createElement(\"span\",{className:\"pansou-config-tabs__badge\"},Math.min(T.count,9999)))})))),r.default.createElement(s.Spin,{spinning:p},u===\"channels\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",y.length,\" / \",f.length),r.default.createElement(s.Space,null,r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(f,y,k)},y.length===f.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\"))),r.default.createElement(\"div\",{className:\"pansou-add-channel\"},r.default.createElement(s.Input,{placeholder:\"\\u641C\\u7D22\\u6216\\u6DFB\\u52A0\\u9891\\u9053\",value:z,onChange:T=>H(T.target.value),onPressEnter:M,allowClear:!0,style:{flex:1}}),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:M},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},f.filter(T=>!z||T.toLowerCase().includes(z.toLowerCase())).map(T=>Ee(T,y.includes(T),()=>Ce(y,k,T),T,h.includes(T),A=>N(T,A)))),f.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u9891\\u9053\")),u===\"plugins\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",E.length,\" / \",d.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(d,E,w)},E.length===d.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},d.map(T=>Ee(T,E.includes(T),()=>Ce(E,w,T),T,!1,null))),d.length===0&&!p&&r.default.createElement(\"div\",{className:\"pansou-empty-tip\"},\"\\u8BF7\\u5148\\u914D\\u7F6E\\u6B63\\u786E\\u7684 API \\u5730\\u5740\\u4EE5\\u52A0\\u8F7D\\u53EF\\u7528\\u63D2\\u4EF6\")),u===\"cloudTypes\"&&r.default.createElement(\"div\",{className:\"pansou-checkbox-section\"},r.default.createElement(\"div\",{className:\"pansou-checkbox-header\"},r.default.createElement(\"span\",null,\"\\u5DF2\\u9009 \",F.length,\" / \",ht.length),r.default.createElement(s.Button,{type:\"link\",size:\"small\",onClick:()=>J(ht.map(T=>T.key),F,_)},F.length===ht.length?\"\\u53D6\\u6D88\\u5168\\u9009\":\"\\u5168\\u9009\")),r.default.createElement(\"div\",{className:\"pansou-checkbox-grid\"},ht.map(T=>Ee(T.key,F.includes(T.key),()=>Ce(F,_,T.key),T.name,!1,null))))),r.default.createElement(\"div\",{className:\"pansou-config-footer ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:ie,disabled:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:we,disabled:i},\"\\u91CD\\u7F6E\"))))}function Ar({visible:e,onCancel:t,onSave:n,onDelete:o,server:a,usedIds:i}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1),f=s.Form.useWatch(\"logo\",l);(0,r.useEffect)(()=>{e&&l.setFieldsValue(S(S({},Pr),a||Lr()))},[e,a,l]);let m=async()=>{let g;try{g=await l.validateFields()}catch(w){return}let p=ud(a!=null&&a.isNew?\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"):(a==null?void 0:a.id)||\"\".concat(g.name||\"emby\",\"-\").concat(g.host||\"\",\"-\").concat(g.username||\"\"));if(!p){s.message.warning(\"\\u8BF7\\u586B\\u5199\\u670D\\u52A1\\u5668\\u5730\\u5740\");return}if(i!=null&&i.has(p)&&p!==(a==null?void 0:a.id)){s.message.warning(\"\\u5F53\\u524D\\u670D\\u52A1\\u5668\\u5DF2\\u5B58\\u5728\\uFF0C\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\\u6216\\u8D26\\u53F7\");return}let v={id:p,name:String(g.name||\"\").trim(),host:String(g.host||\"\").trim().replace(/\\/+$/,\"\"),username:String(g.username||\"\").trim(),password:String(g.password||\"\"),logo:String(g.logo||\"\").trim()},y=String((a==null?void 0:a.host)||\"\").trim().replace(/\\/+$/,\"\"),k=String((a==null?void 0:a.username)||\"\").trim();v.host===y&&v.username===k&&(v.deviceId=String((a==null?void 0:a.deviceId)||\"\").trim());let E=!1;try{c(!0);let w=await I.post(\"/emby-spider/verify\",v);E=!0,await n(w||v),s.message.success(\"Emby \\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(w){console.error(w),w!=null&&w.message&&w.message!==\"[object Object]\"&&s.message.error(\"\".concat(E?\"\\u4FDD\\u5B58\":\"\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat(w.message))}finally{c(!1)}},d=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Emby \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Emby\"),open:e,onCancel:t,confirmLoading:u,className:\"ios-modal emby-server-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F1A\\u5728\\u767B\\u5F55\\u9A8C\\u8BC1\\u901A\\u8FC7\\u540E\\u81EA\\u52A8\\u4F7F\\u7528 Emby \\u670D\\u52A1\\u5668\\u540D\\u79F0\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u81EA\\u52A8\\u83B7\\u53D6\\uFF0C\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"Logo URL\",name:\"logo\",tooltip:\"\\u652F\\u6301 http/https\\u3001data:image \\u6216\\u7AD9\\u5185 / \\u5F00\\u5934\\u8DEF\\u5F84\",rules:[{validator(g,p){return cd(p)?Promise.resolve():Promise.reject(new Error(\"\\u8BF7\\u8F93\\u5165\\u5408\\u6CD5\\u56FE\\u7247\\u5730\\u5740\"))}}]},r.default.createElement(s.Input,{placeholder:\"https://example.com/emby-logo.png\"})),!!String(f||\"\").trim()&&r.default.createElement(\"div\",{className:\"emby-logo-preview\"},r.default.createElement(\"img\",{src:String(f).trim(),alt:\"Emby Logo \\u9884\\u89C8\"}),r.default.createElement(\"span\",null,\"Logo \\u9884\\u89C8\")),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"host\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:8096\"})),r.default.createElement(s.Form.Item,{label:\"\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165 Emby \\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u5BC6\\u7801\\u53EF\\u4E3A\\u7A7A\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group emby-server-edit-actions\".concat(a!=null&&a.isNew?\" emby-server-edit-actions--new\":\"\")},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:d,disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:m,disabled:u},u?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function vd({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=(0,r.useMemo)(()=>new Set(l.map(g=>g.id).filter(Boolean)),[l]),c=()=>{i(B(S({},Lr()),{isNew:!0})),o(!0)},f=g=>{i(S({},g)),o(!0)},m=g=>{let p=l.findIndex(k=>k.id===(a==null?void 0:a.id)),v=Dr(g),y=p>=0?[...l]:[...l,v];p>=0&&(y[p]=v),t(y),o(!1)},d=g=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Ln(g),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u5BF9\\u5E94\\u7684 Emby \\u5206\\u7C7B\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(p=>p.id!==g.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Emby \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:c},\"\\u6DFB\\u52A0\")),r.default.createElement(\"div\",{className:\"emby-server-subtitle\"},\"\\u6709\\u64AD\\u653E\\u5668\\u9ED1/\\u767D\\u540D\\u5355\\u7684\\u670D\\u8C28\\u614E\\u4F7F\\u7528\\uFF0C\\u5426\\u5219\\u540E\\u679C\\u81EA\\u8D1F\\uFF01\")),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:c},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Emby \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(g=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:g.id},r.default.createElement(\"div\",{className:\"emby-server-card__hero\"},r.default.createElement(\"div\",{className:\"emby-server-card__logo\"},r.default.createElement(\"img\",{src:g.logo||Er,alt:Ln(g)}))),r.default.createElement(\"div\",{className:\"emby-server-card__content\"},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,Ln(g)),r.default.createElement(dn,null)),r.default.createElement(\"div\",{className:\"emby-server-card__stats\"},gd(g.libraryStats))),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>f(g)}))))),r.default.createElement(Ar,{visible:n,onCancel:()=>o(!1),onSave:m,onDelete:d,server:a,usedIds:u}))}function _r({visible:e,onCancel:t,onSave:n,onDelete:o,server:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&i.setFieldsValue({name:(a==null?void 0:a.name)||\"\",server:(a==null?void 0:a.server)||\"\",username:(a==null?void 0:a.username)||\"\",password:(a==null?void 0:a.password)||\"\",token:(a==null?void 0:a.token)||\"\",otpCode:(a==null?void 0:a.otpCode)||\"\"})},[e,a,i]);let c=async()=>{let m;try{m=await i.validateFields()}catch(p){return}let d={id:(a==null?void 0:a.id)||\"alist_\".concat(Date.now()),name:m.name||\"\",server:String(m.server||\"\").trim().replace(/\\/+$/,\"\"),username:String(m.username||\"\").trim(),password:String(m.password||\"\"),token:String(m.token||\"\").trim(),otpCode:String(m.otpCode||\"\").trim()},g=!1;try{u(!0);let p=await I.post(\"/alist-video/verify\",d);g=!0,await n(p||d),s.message.success(\"Alist \\u8FDE\\u63A5\\u9A8C\\u8BC1\\u901A\\u8FC7\")}catch(p){console.error(p),s.message.error(\"\".concat(g?\"\\u4FDD\\u5B58\":\"\\u8FDE\\u63A5\\u9A8C\\u8BC1\",\"\\u5931\\u8D25\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u68C0\\u67E5\\u5730\\u5740\"))}finally{u(!1)}},f=()=>{!a||a.isNew||o==null||o(a)};return r.default.createElement(s.Modal,{title:a!=null&&a.isNew?\"\\u6DFB\\u52A0 Alist \\u670D\\u52A1\\u5668\":\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"Alist\"),open:e,onCancel:t,confirmLoading:l,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u540D\\u79F0\",name:\"name\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u5BB6\\u91CC NAS\"})),r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u5730\\u5740\",name:\"server\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165 Alist \\u670D\\u52A1\\u5668\\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"http://192.168.1.100:5244\"})),r.default.createElement(s.Form.Item,{label:\"\\u8D26\\u53F7\",name:\"username\"},r.default.createElement(s.Input,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"username\"})),r.default.createElement(s.Form.Item,{label:\"\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u79C1\\u6709\\u76EE\\u5F55\\u9700\\u8981\\u586B\\u5199\",autoComplete:\"new-password\"})),r.default.createElement(s.Form.Item,{label:\"Token\",name:\"token\",tooltip:\"\\u5DF2\\u6709 Alist token \\u65F6\\u53EF\\u76F4\\u63A5\\u586B\\u5199\\uFF0C\\u4F18\\u5148\\u4E8E\\u8D26\\u53F7\\u5BC6\\u7801\"},r.default.createElement(s.Input.Password,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u4E24\\u6B65\\u9A8C\\u8BC1\\u7801\",name:\"otpCode\",tooltip:\"\\u5F00\\u542F\\u4E24\\u6B65\\u9A8C\\u8BC1\\u65F6\\u586B\\u5199\\u5F53\\u524D\\u9A8C\\u8BC1\\u7801\"},r.default.createElement(s.Input,{placeholder:\"\\u53EF\\u7559\\u7A7A\",autoComplete:\"one-time-code\"})),r.default.createElement(s.Form.Item,null,r.default.createElement(\"div\",{className:\"ios-button-group\"},!(a!=null&&a.isNew)&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:f},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:c,disabled:l},l?\"\\u9A8C\\u8BC1\\u4E2D...\":\"\\u4FDD\\u5B58\")))))}function wd({value:e,onChange:t}){let[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=Array.isArray(e)?e:[],u=()=>{i(B(S({},ui()),{isNew:!0})),o(!0)},c=d=>{i(S({},d)),o(!0)},f=d=>{let g=l.findIndex(y=>y.id===(a==null?void 0:a.id)),p=Nr(d),v=g>=0?[...l]:[...l,p];g>=0&&(v[g]=p),t(v),o(!1)},m=d=>{s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(d),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8BE5 Alist \\u670D\\u52A1\\u5668\\u5C06\\u4E0D\\u518D\\u663E\\u793A\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",onOk(){t(l.filter(g=>g.id!==d.id)),o(!1),i(null)}})};return r.default.createElement(\"div\",{className:\"emby-server-manager\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar\"},r.default.createElement(\"div\",{className:\"emby-server-toolbar__main\"},r.default.createElement(\"div\",{className:\"emby-server-title\"},\"Alist \\u670D\\u52A1\\u5668\"),r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),onClick:u},\"\\u6DFB\\u52A0\"))),l.length===0?r.default.createElement(\"button\",{type:\"button\",className:\"emby-empty-card\",onClick:u},r.default.createElement(be,null),r.default.createElement(\"span\",null,\"\\u6DFB\\u52A0\\u7B2C\\u4E00\\u53F0 Alist \\u670D\\u52A1\\u5668\")):r.default.createElement(\"div\",{className:\"emby-server-grid\"},l.map(d=>r.default.createElement(\"div\",{className:\"emby-server-card\",key:d.id},r.default.createElement(\"div\",{className:\"emby-server-card__content\",style:{padding:\"16px\"}},r.default.createElement(\"div\",{className:\"emby-server-card__name\"},r.default.createElement(\"span\",null,d.name||d.server),r.default.createElement(dn,null)),r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.server),(d.username||d.token)&&r.default.createElement(\"div\",{style:{fontSize:12,color:\"#999\",marginTop:4}},d.username?\"\\u8D26\\u53F7\\uFF1A\".concat(d.username):\"Token \\u5DF2\\u914D\\u7F6E\")),r.default.createElement(\"div\",{className:\"emby-server-card__actions\"},r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>c(d)}))))),r.default.createElement(_r,{visible:n,onCancel:()=>o(!1),onSave:f,onDelete:m,server:a}))}function Cd({visible:e,onCancel:t,onSave:n,siteKey:o,siteName:a}){let[i]=s.Form.useForm(),[l,u]=(0,r.useState)(!1),c=String(o||\"\").startsWith(\"nodejs_emby\"),f=ai[o]||(c?ai.nodejs_emby:void 0),m=!!f,d=(f==null?void 0:f.type)===\"tg\",g=(f==null?void 0:f.type)===\"tgfilebot\",p=(f==null?void 0:f.type)===\"live2vod\",v=(f==null?void 0:f.type)===\"emby-spider\",y=(f==null?void 0:f.type)===\"alist-video\",k=(f==null?void 0:f.type)===\"domain-cookie\",E=o===\"nodejs_tgchannel\",w=(0,r.useRef)(0),F=h=>{if(h===\"\"||h===null||typeof h>\"u\")return null;let C=Number(h);return Number.isFinite(C)?C:null},_=h=>{if(h==null||h===\"\")return\"\";let C=Number(h);return Number.isFinite(C)?C:\"\"};(0,r.useEffect)(()=>{let h=++w.current;if(!e){u(!1);return}m?(u(!0),I.get(f.api).then(C=>{if(w.current===h)if(d){let L=[],M=new Set;C.channelNameMap&&Object.keys(C.channelNameMap).forEach(N=>M.add(N)),C.channelUsername&&C.channelUsername.forEach(N=>M.add(N)),C.homeChannelUsername&&C.homeChannelUsername.forEach(N=>M.add(N)),M.forEach(N=>{var j;L.push({id:N,name:((j=C.channelNameMap)==null?void 0:j[N])||\"\"})}),i.setFieldsValue({name:a,url:C.url,count:F(C==null?void 0:C.count),pic:C.pic,channels:L.length>0?L:E?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({name:a,url:C.url,password:C.password||\"\"}):p?i.setFieldsValue({name:a,sources:C.sources||[{name:\"\",url:\"\"}]}):v?i.setFieldsValue({name:a,servers:C.servers||[]}):y?i.setFieldsValue({name:a,servers:C.servers||[]}):k?i.setFieldsValue({name:a,url:C.url||\"\",cookie:C.cookie||\"\"}):i.setFieldsValue({urls:C,name:a})}).catch(C=>{w.current===h&&(console.error(C),s.message.error(\"\\u52A0\\u8F7D\\u914D\\u7F6E\\u5931\\u8D25\"))}).finally(()=>{w.current===h&&u(!1)})):i.setFieldsValue({name:a})},[e,o,a,m,d,g,p,v,y,k,i,f]);let z=async()=>{let h;try{h=await i.validateFields()}catch(C){return}try{if(u(!0),m)if(d){let C={},L=[],M=[];h.channels&&h.channels.length>0&&h.channels.forEach(j=>{j.id&&(j.name&&(C[j.id]=j.name),L.push(j.id),o===\"nodejs_tgchannel\"&&M.push(j.id))});let N=S({url:h.url,count:_(h.count),pic:h.pic,channelNameMap:C,channelUsername:L},o===\"nodejs_tgchannel\"?{homeChannelUsername:M}:{});await I.put(f.api,N)}else if(g)await I.put(f.api,{url:h.url||\"\",password:h.password||\"\"});else if(p){let C={sources:h.sources||[]};await I.put(f.api,C)}else v?await I.put(f.api,{servers:h.servers||[]}):y?await I.put(f.api,{servers:h.servers||[]}):k?await I.put(f.api,{url:h.url||\"\",cookie:h.cookie||\"\"}):await I.put(f.api,h.urls);s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\"),n(h.name,v||y?{reload:!0}:void 0),t()}catch(C){console.error(C),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat((C==null?void 0:C.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{u(!1)}},H=async()=>{if(m)try{u(!0),await I.delete(f.api);let h=await I.get(f.api);if(d){let C=[],L=new Set;h.channelNameMap&&Object.keys(h.channelNameMap).forEach(M=>L.add(M)),h.channelUsername&&h.channelUsername.forEach(M=>L.add(M)),h.homeChannelUsername&&h.homeChannelUsername.forEach(M=>L.add(M)),L.forEach(M=>{var N;C.push({id:M,name:((N=h.channelNameMap)==null?void 0:N[M])||\"\"})}),i.setFieldsValue({url:h.url,count:F(h==null?void 0:h.count),pic:h.pic,channels:C.length>0?C:E?[]:[{id:\"\",name:\"\"}]})}else g?i.setFieldsValue({url:h.url,password:h.password||\"\"}):p?i.setFieldsValue({sources:h.sources||[{name:\"\",url:\"\"}]}):v?i.setFieldsValue({servers:h.servers||[]}):y?i.setFieldsValue({servers:h.servers||[]}):k?i.setFieldsValue({url:h.url||\"\",cookie:h.cookie||\"\"}):i.setFieldsValue({urls:h});s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(h){console.error(h),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(h==null?void 0:h.message))}finally{u(!1)}};return r.default.createElement(s.Modal,{title:\"\\u7F16\\u8F91 \".concat(a||(f==null?void 0:f.name)||\"\"),open:e,onCancel:t,className:\"ios-modal domain-edit-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:i,layout:\"vertical\",requiredMark:!1,colon:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\",className:v||y?\"domain-edit-full-input\":\"domain-edit-aligned-input\"})),m&&!d&&!g&&!p&&!v&&!y&&!k&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0\\u57DF\\u540D\"}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((N,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u57DF\\u540D\":null,required:!1,key:N.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},N),{validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}],noStyle:!0}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-list-input\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1?\"\":\" domain-list-action--placeholder\")},h.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(N.name)}):null)))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C(),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u57DF\\u540D\"),r.default.createElement(s.Form.ErrorList,{errors:M}))))),m&&k&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"Cookie\",name:\"cookie\"},r.default.createElement(s.Input.TextArea,{placeholder:\"\\u8BBF\\u95EE\\u7F51\\u7AD9\\u9700\\u8981\\u7684 Cookie\\uFF0C\\u4F8B\\u5982 bbs_token=xxx\",className:\"domain-edit-aligned-input\",autoSize:{minRows:3,maxRows:6}}))),m&&g&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\"},r.default.createElement(s.Input,{placeholder:\"\\u7559\\u7A7A\\u4F7F\\u7528\\u9ED8\\u8BA4: http://127.0.0.1:8080\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u8BBF\\u95EE\\u5BC6\\u7801\",name:\"password\"},r.default.createElement(s.Input.Password,{placeholder:\"TGFileBot password\\uFF0C\\u53EF\\u7559\\u7A7A\",className:\"domain-edit-aligned-input\"}))),m&&v&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(vd,null)),m&&y&&r.default.createElement(s.Form.Item,{name:\"servers\"},r.default.createElement(wd,null)),m&&d&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.Item,{label:\"TG\\u57DF\\u540D\",name:\"url\",rules:[{required:!0,message:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165TG\\u57DF\\u540D\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.Item,{label:\"\\u5355\\u9891\\u9053\\u8D44\\u6E90\\u6570\\u91CF\",name:\"count\"},r.default.createElement(s.InputNumber,{min:1,placeholder:\"\\u7559\\u7A7A\\u8868\\u793A\\u4E0D\\u9650\\u5236\",className:\"domain-edit-aligned-input\"})),r.default.createElement(s.Form.List,{name:\"channels\",rules:[{validator:async(h,C)=>{if(!E&&(!C||C.length===0))return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u9891\\u9053\"))}}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((N,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u9891\\u9053\\u5217\\u8868\":\"\",required:!1,key:N.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},N),{name:[N.name,\"name\"],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,B(S({},N),{name:[N.name,\"id\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u9891\\u9053ID\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u9891\\u9053ID\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1||E?\"\":\" domain-list-action--placeholder\")},h.length>1||E?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(N.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({id:\"\",name:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u9891\\u9053\"),r.default.createElement(s.Form.ErrorList,{errors:M})))),r.default.createElement(s.Form.Item,{label:\"\\u663E\\u793A\\u56FE\\u7247\",name:\"pic\",valuePropName:\"checked\"},r.default.createElement(s.Switch,null))),m&&p&&r.default.createElement(r.default.Fragment,null,r.default.createElement(s.Form.List,{name:\"sources\",rules:[{validator:async(h,C)=>{if(!C||C.length===0)return Promise.reject(new Error(\"\\u8BF7\\u81F3\\u5C11\\u6DFB\\u52A0\\u4E00\\u4E2A\\u76F4\\u64AD\\u6E90\"))}}]},(h,{add:C,remove:L},{errors:M})=>r.default.createElement(r.default.Fragment,null,h.map((N,j)=>r.default.createElement(s.Form.Item,{label:j===0?\"\\u76F4\\u64AD\\u6E90\\u5217\\u8868\":\"\",required:!1,key:N.key,style:{marginBottom:12}},r.default.createElement(\"div\",{className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},N),{name:[N.name,\"name\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u540D\\u79F0\"}],style:{marginBottom:0,flex:\"1\"}}),r.default.createElement(s.Input,{placeholder:\"\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,B(S({},N),{name:[N.name,\"url\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u76F4\\u64AD\\u6E90URL\"}],style:{marginBottom:0,flex:\"2\"}}),r.default.createElement(s.Input,{placeholder:\"\\u76F4\\u64AD\\u6E90URL (m3u/txt)\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(h.length>1?\"\":\" domain-list-action--placeholder\")},h.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>L(N.name)}):null)))),r.default.createElement(s.Form.Item,{label:\"\"},r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>C({name:\"\",url:\"\"}),className:\"domain-edit-add-button\",icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0\\u76F4\\u64AD\\u6E90\"),r.default.createElement(s.Form.ErrorList,{errors:M}))))),r.default.createElement(s.Form.Item,{label:null},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:z,disabled:l},\"\\u4FDD\\u5B58\"),m&&r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:H,disabled:l},\"\\u91CD\\u7F6E\")))))}var Sd=new Set([\"nodejs_push\",\"nodejs_muban\",\"nodejs_template\"]),Od=new Set([\"\\u63A8\\u9001\",\"\\u6A21\\u677F\"]);function kd(e){let t=String(e.name||\"\").trim();return!Sd.has(e.key)&&!Od.has(t)}function Td(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),[l,u]=(0,r.useState)(!1),[c,f]=(0,r.useState)(!1),[m,d]=(0,r.useState)(!1),[g,p]=(0,r.useState)(null),[v,y]=(0,r.useState)([]),[k,E]=(0,r.useState)(!1),[w,F]=(0,r.useState)(null),[_,z]=(0,r.useState)([]),[H,h]=(0,r.useState)(!1),[C,L]=(0,r.useState)(null),[M,N]=(0,r.useState)([]),[j,ne]=(0,r.useState)(!1),[ie,we]=(0,r.useState)(null),[Ce,J]=(0,r.useState)([]),[Ee,ue]=(0,r.useState)(!1),[T,A]=(0,r.useState)([]),[$,U]=(0,r.useState)(!1),[me,Se]=(0,r.useState)(null),[de,Pe]=(0,r.useState)([]),[Oe,ge]=(0,r.useState)(\"\"),[q,We]=(0,r.useState)(null),xe=(0,r.useMemo)(()=>e.filter(kd),[e]),Le=(0,r.useMemo)(()=>new Set(v.map(b=>b.id).filter(Boolean)),[v]),ke=(0,r.useMemo)(()=>new Set(_.map(b=>b.id).filter(Boolean)),[_]),Be=b=>{let O=xd(b==null?void 0:b.key);if(O){Ge(O);return}let D=hd(b==null?void 0:b.key);if(D){Gt(D);return}if(b!=null&&b.cms){$n(b.key);return}We(b),b.key===\"nodejs_pansou\"?i(!0):o(!0)},_e=(b,O={})=>{if(O.reload){ce();return}if(q){let D=e.findIndex(P=>P.key===q.key);D!==-1&&(e[D].name=b,t([...e]))}},Ht=async()=>{try{f(!0);let b=await I.get(\"/emby-spider/setting\");y(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),p(B(S({},Lr()),{isNew:!0})),u(!1),d(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},jt=async()=>{try{f(!0);let b=await I.get(\"/alist-video/setting\");N(Array.isArray(b==null?void 0:b.servers)?b.servers:[]),L(B(S({},ui()),{isNew:!0})),u(!1),h(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},yt=async()=>{try{f(!0);let b=await I.get(\"/cms/list\");A(Array.isArray(b)?b:[]),u(!1),ue(!0)}catch(b){console.error(b),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((b==null?void 0:b.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{f(!1)}},Fe=async b=>{let O=Dr(b),D=v.findIndex(V=>V.id===O.id),P=D>=0?[...v]:[...v,O];D>=0&&(P[D]=O),await I.put(\"/emby-spider/setting\",{servers:P}),y(P),d(!1),p(null),await ce()},lt=()=>{d(!1),p(null)},dt=async b=>{let O=Nr(b),D=M.findIndex(V=>V.id===O.id),P=D>=0?[...M]:[...M,O];D>=0&&(P[D]=O),await I.put(\"/alist-video/setting\",{servers:P}),N(P),h(!1),L(null),await ce()},Vt=()=>{h(!1),L(null)},Ut=async b=>{let O=Dd(T,b);await I.put(\"/cms/list\",O),A(O),ue(!1),await ce()},Bn=()=>{ue(!1)},$n=async b=>{try{let O=await I.get(\"/cms/list\"),D=Array.isArray(O)?O:[],P=D.find(V=>Fr(V)===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 CMS \\u6E90\\u914D\\u7F6E\");return}Pe(D),Se(S({},P)),ge(b),U(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D CMS \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},$e=async b=>{let O=ci(b);if(!O){s.message.warning(\"CMS \\u6E90\\u4FE1\\u606F\\u4E0D\\u5B8C\\u6574\");return}let D=de.map(P=>Fr(P)===Oe?O:P);await I.put(\"/cms/list\",D),Pe(D),U(!1),Se(null),ge(\"\"),await ce()},ze=b=>{b&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(b.name||\"CMS \\u6E90\",\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u4E2A CMS \\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=de.filter(D=>Fr(D)!==Oe);await I.put(\"/cms/list\",O),Pe(O),U(!1),Se(null),ge(\"\"),await ce()}})},Ge=async b=>{try{let O=await I.get(\"/emby-spider/setting\"),D=Array.isArray(O==null?void 0:O.servers)?O.servers:[],P=D.find(V=>V.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Emby \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}z(D),F(S({},P)),E(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D Emby \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},Wt=async b=>{let O=Dr(b),D=_.map(P=>P.id===(w==null?void 0:w.id)?O:P);await I.put(\"/emby-spider/setting\",{servers:D}),z(D),E(!1),F(null),await ce()},Ie=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Ln(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Emby \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=_.filter(D=>D.id!==b.id);await I.put(\"/emby-spider/setting\",{servers:O}),z(O),E(!1),F(null),await ce()}})},Gt=async b=>{try{let O=await I.get(\"/alist-video/setting\"),D=Array.isArray(O==null?void 0:O.servers)?O.servers:[],P=D.find(V=>V.id===b);if(!P){s.message.warning(\"\\u672A\\u627E\\u5230\\u5BF9\\u5E94\\u7684 Alist \\u670D\\u52A1\\u5668\\u914D\\u7F6E\");return}J(D),we(S({},P)),ne(!0)}catch(O){console.error(O),s.message.error(\"\\u52A0\\u8F7D Alist \\u914D\\u7F6E\\u5931\\u8D25\\uFF1A\".concat((O==null?void 0:O.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}},zn=async b=>{let O=Nr(b),D=Ce.map(P=>P.id===(ie==null?void 0:ie.id)?O:P);await I.put(\"/alist-video/setting\",{servers:D}),J(D),ne(!1),we(null),await ce()},qn=b=>{b!=null&&b.id&&s.Modal.confirm({title:\"\\u5220\\u9664 \".concat(Br(b),\"\\uFF1F\"),content:\"\\u5220\\u9664\\u540E\\u8FD9\\u53F0 Alist \\u5BF9\\u5E94\\u7684\\u89C6\\u9891\\u6E90\\u4F1A\\u4ECE\\u7AD9\\u6E90\\u5217\\u8868\\u4E2D\\u79FB\\u9664\\u3002\",okText:\"\\u5220\\u9664\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){let O=Ce.filter(D=>D.id!==b.id);await I.put(\"/alist-video/setting\",{servers:O}),J(O),ne(!1),we(null),await ce()}})},vt=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(b,O){return r.default.createElement(di,{rowKey:O.key})}},{title:\"\\u7AD9\\u6E90\",dataIndex:\"name\",render(b,O){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:b,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},b),O.t4&&r.default.createElement(s.Tag,{className:\"ios-tag\"},\"T4\"))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(b,O){return r.default.createElement(s.Switch,{value:b,onChange:D=>{t(P=>P.map(V=>V.key===O.key?B(S({},V),{enable:D}):V))}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(b,O){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>Be(O),size:\"small\"})}}],[e]),Yt=wr(Lt(at,{activationConstraint:{distance:1}}),Lt(xt,{activationConstraint:{delay:150,tolerance:5}})),Hn=({active:b,over:O})=>{b.id!==(O==null?void 0:O.id)&&t(D=>{let P=D.findIndex(fe=>fe.key===b.id),V=D.findIndex(fe=>fe.key===(O==null?void 0:O.id));return Bt(D,P,V)})},ce=async()=>{let O=(await bt.default.get(\"/full-config\")).data.video.sites,D=await I.get(\"/sites/list\"),P={},V={};O.forEach(G=>{V[G.key]=G});let fe=D.filter(G=>(P[G.key]=!0,V[G.key])).map(G=>{let se=V[G.key];return{key:G.key,name:G.name||se.name,enable:G.enable,t4:se.t4,cms:se.cms}});O.forEach(G=>{P[G.key]||fe.push({key:G.key,name:G.name,enable:!0,t4:G.t4,cms:G.cms})}),t(fe)},jn=async()=>{try{await I.put(\"/sites/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null),\"\\u9700\\u91CD\\u65B0\\u52A0\\u8F7D\\u6E90\\uFF01\",r.default.createElement(\"br\",null)),duration:5})}catch(b){console.error(b),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}},Vn=async()=>{try{await I.delete(\"/sites/list\"),ce(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(b){console.error(b),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(b==null?void 0:b.message))}};return(0,r.useEffect)(()=>{ce()},[]),r.default.createElement(\"div\",null,r.default.createElement(\"div\",{className:\"sites-list-toolbar\"},r.default.createElement(s.Dropdown,{open:l,onOpenChange:u,trigger:[\"click\"],placement:\"bottomRight\",dropdownRender:()=>r.default.createElement(\"div\",{className:\"site-add-menu\"},r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:Ht,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:Er,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Emby\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:jt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ei,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"Alist\")),r.default.createElement(\"button\",{type:\"button\",className:\"site-add-type-item\",onClick:yt,disabled:c},r.default.createElement(\"span\",{className:\"site-add-type-item__icon\"},r.default.createElement(\"img\",{src:ti,alt:\"\",\"aria-hidden\":\"true\"})),r.default.createElement(\"span\",{className:\"site-add-type-item__name\"},\"CMS\")))},r.default.createElement(s.Button,{type:\"primary\",icon:r.default.createElement(be,null),className:\"sites-add-button\"},\"\\u6DFB\\u52A0\"))),r.default.createElement(Cr,{sensors:Yt,modifiers:[Sr],onDragEnd:Hn},r.default.createElement(kr,{items:xe.map(b=>b.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:li}},rowKey:\"key\",columns:vt,dataSource:xe,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:jn},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:Vn},\"\\u91CD\\u7F6E\")),r.default.createElement(Cd,{visible:n,onCancel:()=>o(!1),onSave:_e,siteKey:q==null?void 0:q.key,siteName:q==null?void 0:q.name}),r.default.createElement(yd,{visible:a,onCancel:()=>i(!1),onSave:_e,siteName:q==null?void 0:q.name}),r.default.createElement(Ar,{visible:m,onCancel:lt,onSave:Fe,server:g,usedIds:Le}),r.default.createElement(Ar,{visible:k,onCancel:()=>E(!1),onSave:Wt,onDelete:Ie,server:w,usedIds:ke}),r.default.createElement(_r,{visible:H,onCancel:Vt,onSave:dt,server:C}),r.default.createElement(_r,{visible:j,onCancel:()=>ne(!1),onSave:zn,onDelete:qn,server:ie}),r.default.createElement(Nd,{visible:Ee,onCancel:Bn,onSave:Ut}),r.default.createElement(fi,{visible:$,onCancel:()=>U(!1),onSave:$e,onDelete:ze,source:me,mode:\"edit\"}))}function Ed(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(null),l=(0,r.useMemo)(()=>[{title:\"\",dataIndex:\"drag\",width:40,render(p,v){return r.default.createElement(di,{rowKey:v.key})}},{title:\"\\u7F51\\u76D8\",dataIndex:\"name\",render(p,v){return r.default.createElement(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"8px\",minWidth:0}},r.default.createElement(\"span\",{title:p,style:{flex:1,minWidth:0,overflow:\"hidden\",textOverflow:\"ellipsis\",whiteSpace:\"nowrap\"}},p),(v.key===\"quark\"||v.key===\"uc\"||v.key===\"ali\")&&v.chunkSize&&r.default.createElement(s.Tag,{className:\"ios-tag\"},v.chunkSize,\"K\\xB7\",v.poolSize))}},{title:\"\\u542F\\u7528\",dataIndex:\"enable\",render(p,v,y){return r.default.createElement(s.Switch,{value:p,onChange:k=>{e[y].enable=k,t([...e])}})},width:80},{title:\"\\u64CD\\u4F5C\",dataIndex:\"action\",width:60,render(p,v,y){return r.default.createElement(s.Button,{type:\"text\",className:\"ios-edit-btn\",icon:r.default.createElement(ct,null),onClick:()=>{i(B(S({},v),{index:y})),o(!0)},size:\"small\"})}}],[e]),u=wr(Lt(at,{activationConstraint:{distance:1}}),Lt(xt,{activationConstraint:{delay:150,tolerance:5}})),c=({active:p,over:v})=>{p.id!==(v==null?void 0:v.id)&&t(y=>{let k=y.findIndex(w=>w.key===p.id),E=y.findIndex(w=>w.key===(v==null?void 0:v.id));return Bt(y,k,E)})},f=async()=>{let p=await I.get(\"/pans/list\");t(p)},m=async()=>{try{await I.put(\"/pans/list\",{list:e}),s.message.success({content:r.default.createElement(r.default.Fragment,null,\"\\u8BBE\\u7F6E\\u6210\\u529F\",r.default.createElement(\"br\",null),r.default.createElement(\"span\",{style:{fontSize:\"12px\",color:\"#999\"}},\"\\u914D\\u7F6E\\u5DF2\\u4FDD\\u5B58\\u5E76\\u7ACB\\u5373\\u751F\\u6548\")),duration:2})}catch(p){console.error(p),s.message.error(\"\\u8BBE\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},d=async()=>{try{await I.delete(\"/pans/list\"),f(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(p){console.error(p),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(p==null?void 0:p.message))}},g=p=>{let v=String(p.name||\"\").trim(),y=String(p.pic||\"\").trim(),k=B(S({},e[a.index]),{name:v,pic:y});(a.key===\"quark\"||a.key===\"uc\"||a.key===\"ali\")&&(k.chunkSize=p.chunkSize,k.poolSize=p.poolSize),a.key===\"quark\"&&(k.noSaveMode=p.noSaveMode===!0),e[a.index]=k,t([...e]),o(!1),s.message.info('\\u914D\\u7F6E\\u5DF2\\u66F4\\u65B0\\uFF0C\\u8BF7\\u70B9\\u51FB\\u4E0B\\u65B9\"\\u4FDD\\u5B58\"\\u6309\\u94AE\\u4FDD\\u5B58\\u914D\\u7F6E')};return(0,r.useEffect)(()=>{f()},[]),r.default.createElement(\"div\",null,r.default.createElement(Cr,{sensors:u,modifiers:[Sr],onDragEnd:c},r.default.createElement(kr,{items:e.map(p=>p.key),strategy:Or},r.default.createElement(s.Table,{components:{body:{row:li}},rowKey:\"key\",columns:l,dataSource:e,pagination:!1,tableLayout:\"fixed\",className:\"sites-table\"}))),r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:m},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:d},\"\\u91CD\\u7F6E\")),r.default.createElement(dd,{visible:n,onCancel:()=>o(!1),onSave:g,panKey:a==null?void 0:a.key,panName:a==null?void 0:a.name,panPic:a==null?void 0:a.pic,chunkSize:a==null?void 0:a.chunkSize,poolSize:a==null?void 0:a.poolSize,noSaveMode:a==null?void 0:a.noSaveMode}))}function Fd(){let[e]=s.Form.useForm(),[t,n]=(0,r.useState)(!1),o=\"/emby/setting\",a=async()=>{let c=await I.get(o);e.setFieldsValue(c)},i=async()=>{let c=await e.validateFields();try{await I.put(o,c),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(f){console.error(f),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(f==null?void 0:f.message))}},l=async()=>{try{await I.delete(o),a(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(c){console.error(c),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}},u=()=>{s.Modal.confirm({title:\"\\u786E\\u8BA4\\u6E05\\u7406 TMDB \\u7F13\\u5B58\\uFF1F\",content:\"\\u5C06\\u6E05\\u7A7A\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF08\\u542B\\u5185\\u5B58\\u4E0E\\u6301\\u4E45\\u5316\\u6570\\u636E\\uFF09\\uFF0C\\u540E\\u7EED\\u8BE6\\u60C5\\u4F1A\\u91CD\\u65B0\\u8BF7\\u6C42 TMDB\\u3002\",okText:\"\\u6E05\\u7406\",okButtonProps:{danger:!0},cancelText:\"\\u53D6\\u6D88\",async onOk(){n(!0);try{await I.post(\"/emby/tmdb/cache/clear\"),s.message.success(\"TMDB \\u7F13\\u5B58\\u5DF2\\u6E05\\u7406\")}catch(c){console.error(c),s.message.error(\"\\u6E05\\u7406\\u5931\\u8D25\\uFF1A\".concat(c==null?void 0:c.message))}finally{n(!1)}}})};return(0,r.useEffect)(()=>{a()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"\\u670D\\u52A1\\u5668\\u540D\\u79F0\",name:\"serverName\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u670D\\u52A1\\u5668\\u540D\\u79F0\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u7528\\u6237\\u540D\",name:\"username\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"}]},r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u7528\\u6237\\u540D\"})),r.default.createElement(s.Form.Item,{label:\"\\u767B\\u5F55\\u5BC6\\u7801\",name:\"password\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"}]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165\\u767B\\u5F55\\u5BC6\\u7801\"})),r.default.createElement(s.Form.Item,{label:\"TMDB API Key\",name:\"tmdbApiKey\",tooltip:\"TMDB v3 API Key\\uFF0C\\u542F\\u7528\\u589E\\u5F3A\\u65F6\\u5FC5\\u586B\",rules:[({getFieldValue:c})=>({validator(f,m){return!c(\"tmdbEnable\")||String(m||\"\").trim()?Promise.resolve():Promise.reject(new Error(\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\\u65F6\\u8BF7\\u8F93\\u5165 API Key\"))}})]},r.default.createElement(s.Input.Password,{placeholder:\"\\u8BF7\\u8F93\\u5165 TMDB API Key\",autoComplete:\"off\"})),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 Emby\",name:\"enable\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u641C\\u7D22\\u663E\\u793A\\u6765\\u6E90\",name:\"searchSourcePrefix\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u641C\\u7D22\\u7ED3\\u679C\\u6807\\u9898\\u663E\\u793A\\u4E3A\\u201C\\u6765\\u6E90 \\xB7 \\u6807\\u9898\\u201D\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u542F\\u7528 TMDB \\u589E\\u5F3A\",name:\"tmdbEnable\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u4F18\\u5148\\u4F7F\\u7528 TMDB \\u7684\\u6D77\\u62A5\\u3001\\u5267\\u7167\\u548C\\u5143\\u6570\\u636E\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"TMDB \\u7F13\\u5B58\",tooltip:\"\\u4EC5\\u6E05\\u7406\\u670D\\u52A1\\u7AEF TMDB \\u7F13\\u5B58\\uFF0C\\u4E0D\\u5F71\\u54CD\\u5217\\u8868/\\u641C\\u7D22\\u7AD9\\u6E90\\u7F13\\u5B58\"},r.default.createElement(s.Button,{danger:!0,onClick:u,loading:t},\"\\u4E00\\u952E\\u6E05\\u7406 TMDB \\u7F13\\u5B58\")),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:i},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:l},\"\\u91CD\\u7F6E\"))))}function Id(){let[e]=s.Form.useForm(),t=\"/danmu/setting\",n=async()=>{let i=await I.get(t);e.setFieldsValue(i)},o=async()=>{let i=await e.validateFields();try{await I.put(t,i),s.message.success(\"\\u4FDD\\u5B58\\u6210\\u529F\")}catch(l){console.error(l),s.message.error(\"\\u4FDD\\u5B58\\u5931\\u8D25\\uFF1A\".concat(l==null?void 0:l.message))}},a=async()=>{try{await I.delete(t),n(),s.message.success(\"\\u91CD\\u7F6E\\u6210\\u529F\")}catch(i){console.error(i),s.message.error(\"\\u91CD\\u7F6E\\u5931\\u8D25\\uFF1A\".concat(i==null?void 0:i.message))}};return(0,r.useEffect)(()=>{n()},[]),r.default.createElement(s.Form,{form:e,layout:\"vertical\",style:{maxWidth:600},className:\"ios-form\"},r.default.createElement(s.Form.Item,{label:\"API \\u5217\\u8868\",style:{marginBottom:8}},r.default.createElement(s.Form.List,{name:\"urls\",rules:[{required:!0,message:\"\\u8BF7\\u6DFB\\u52A0API\\u5730\\u5740\"}]},(i,{add:l,remove:u},{errors:c})=>r.default.createElement(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:12}},i.map(f=>r.default.createElement(\"div\",{key:f.key,className:\"domain-list-row\"},r.default.createElement(s.Form.Item,B(S({},f),{name:[f.name,\"address\"],validateTrigger:[\"onChange\",\"onBlur\"],rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"}],style:{flex:1,marginBottom:0}}),r.default.createElement(s.Input,{placeholder:\"\\u8BF7\\u8F93\\u5165API\\u5730\\u5740\"})),r.default.createElement(s.Form.Item,B(S({},f),{name:[f.name,\"name\"],validateTrigger:[\"onChange\",\"onBlur\"],style:{width:100,marginBottom:0,flexShrink:0}}),r.default.createElement(s.Input,{placeholder:\"\\u522B\\u540D\"})),r.default.createElement(\"span\",{className:\"domain-list-action\".concat(i.length>1?\"\":\" domain-list-action--placeholder\")},i.length>1?r.default.createElement(Ze,{className:\"dynamic-delete-button\",onClick:()=>u(f.name)}):null))),r.default.createElement(s.Button,{type:\"dashed\",onClick:()=>l(),block:!0,icon:r.default.createElement(be,null)},\"\\u6DFB\\u52A0 API\"),r.default.createElement(s.Form.ErrorList,{errors:c})))),r.default.createElement(s.Form.Item,{label:\"\\u81EA\\u52A8\\u63A8\\u9001\",name:\"autoPush\",valuePropName:\"checked\",style:{marginBottom:16}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{label:\"\\u8C03\\u8BD5\\u4FE1\\u606F\",name:\"debug\",valuePropName:\"checked\",tooltip:\"\\u5F00\\u542F\\u540E\\u5728\\u63A7\\u5236\\u53F0\\u663E\\u793A\\u8BE6\\u7EC6\\u7684\\u5F39\\u5E55\\u5339\\u914D\\u8C03\\u8BD5\\u4FE1\\u606F\",style:{marginBottom:24}},r.default.createElement(s.Switch,null)),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\"},r.default.createElement(\"button\",{className:\"action-btn action-btn--primary\",onClick:o},\"\\u4FDD\\u5B58\"),r.default.createElement(\"button\",{className:\"action-btn action-btn--danger\",onClick:a},\"\\u91CD\\u7F6E\"))))}function ci(e,t=\"\"){if(!e||typeof e!=\"object\")return null;let n=String(e.address||e.api||e.url||\"\").trim();if(!n)return null;let o=\"\";try{o=new URL(/^https?:\\/\\//i.test(n)?n:\"https://\".concat(n)).hostname}catch(l){}let a=String(e.name||e.title||t||o||\"CMS\").trim();return{name:a.startsWith(\"\\u300C\\u91C7\\u300D\")?a:\"\\u300C\\u91C7\\u300D\".concat(a),address:n}}function Fr(e={}){return\"nodejs_\".concat(String(e.name||\"\").trim())}function Dd(e=[],t=[]){let n=new Set;return[...e,...t].map(o=>ci(o)).filter(o=>!o||n.has(o.address)?!1:(n.add(o.address),!0))}function fi({visible:e,onCancel:t,onSave:n,onDelete:o,source:a,mode:i=\"add\"}){let[l]=s.Form.useForm(),[u,c]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e&&l.setFieldsValue({name:(a==null?void 0:a.name)||\"\",url:(a==null?void 0:a.address)||\"\"})},[e,a,l]);let f=async()=>{let m;try{m=await l.validateFields()}catch(p){return}let d=String(m.name||\"\").trim(),g=String(m.url||\"\").trim();try{if(c(!0),i===\"edit\"&&g===String((a==null?void 0:a.address)||\"\").trim()){await n({name:d,address:g}),s.message.success(\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\");return}let p=await I.post(\"/cms/resolve\",{name:d,url:g}),v=Array.isArray(p==null?void 0:p.sources)?p.sources:[];if(v.length===0){s.message.warning(\"\\u672A\\u8BC6\\u522B\\u5230\\u53EF\\u7528\\u7684 CMS \\u6E90\");return}i===\"edit\"?(await n(v[0]),s.message.success(v.length>1?\"\\u5DF2\\u4F7F\\u7528\\u8BC6\\u522B\\u7ED3\\u679C\\u4E2D\\u7684\\u7B2C\\u4E00\\u4E2A CMS \\u6E90\":\"CMS \\u6E90\\u4FDD\\u5B58\\u6210\\u529F\")):(await n(v),s.message.success(v.length>1?\"\\u5DF2\\u6DFB\\u52A0 \".concat(v.length,\" \\u4E2A CMS \\u6E90\"):\"CMS \\u6E90\\u6DFB\\u52A0\\u6210\\u529F\"))}catch(p){console.error(p),s.message.error(\"\".concat(i===\"edit\"?\"CMS \\u4FDD\\u5B58\\u5931\\u8D25\":\"CMS \\u89E3\\u6790\\u5931\\u8D25\",\"\\uFF1A\").concat((p==null?void 0:p.message)||\"\\u8BF7\\u6C42\\u5931\\u8D25\"))}finally{c(!1)}};return r.default.createElement(s.Modal,{title:i===\"edit\"?\"\\u7F16\\u8F91 \".concat((a==null?void 0:a.name)||\"CMS \\u6E90\"):\"\\u6DFB\\u52A0 CMS \\u6E90\",open:e,onCancel:t,confirmLoading:u,className:\"ios-modal\",footer:null,width:\"90%\",destroyOnClose:!0},r.default.createElement(s.Form,{form:l,layout:\"vertical\",className:\"ios-form\",requiredMark:!1},r.default.createElement(s.Form.Item,{label:\"\\u540D\\u79F0\",name:\"name\",tooltip:\"\\u7559\\u7A7A\\u65F6\\u4F7F\\u7528\\u63A5\\u53E3\\u8FD4\\u56DE\\u540D\\u79F0\\u6216\\u57DF\\u540D\\uFF0C\\u4FDD\\u5B58\\u65F6\\u4F1A\\u81EA\\u52A8\\u6DFB\\u52A0\\u300C\\u91C7\\u300D\\u524D\\u7F00\"},r.default.createElement(s.Input,{placeholder:\"\\u4F8B\\u5982\\uFF1A\\u6211\\u7684 CMS\"})),r.default.createElement(s.Form.Item,{label:\"API \\u5730\\u5740\",name:\"url\",rules:[{required:!0,whitespace:!0,message:\"\\u8BF7\\u8F93\\u5165 CMS API \\u5730\\u5740\"}]},r.default.createElement(s.Input,{placeholder:\"example.com \\u6216 https://example.com/api.php/provide/vod/\"})),r.default.createElement(s.Form.Item,{style:{marginBottom:0}},r.default.createElement(\"div\",{className:\"ios-button-group\".concat(i===\"edit\"?\"\":\" emby-server-edit-actions--new\")},i===\"edit\"&&r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--danger\",onClick:()=>o==null?void 0:o(a),disabled:u},\"\\u5220\\u9664\"),r.default.createElement(\"button\",{type:\"button\",className:\"action-btn action-btn--primary\",onClick:f,disabled:u},u?i===\"edit\"?\"\\u4FDD\\u5B58\\u4E2D...\":\"\\u89E3\\u6790\\u4E2D...\":i===\"edit\"?\"\\u4FDD\\u5B58\":\"\\u89E3\\u6790\\u5E76\\u6DFB\\u52A0\")))))}function Nd(e){return r.default.createElement(fi,B(S({},e),{mode:\"add\"}))}function Ad(){let[e,t]=(0,r.useState)([]),[n,o]=(0,r.useState)(!1),[a,i]=(0,r.useState)(!1),l=(0,r.useCallback)(async()=>{o(!0);try{let c=await I.get(\"/subscriptions\");t(Array.isArray(c==null?void 0:c.endpoints)?c.endpoints:[])}catch(c){console.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25:\",c),c!=null&&c.handled||s.message.error(\"\\u52A0\\u8F7D\\u8BA2\\u9605\\u63A5\\u53E3\\u5931\\u8D25\")}finally{o(!1)}},[]);(0,r.useEffect)(()=>{l()},[l]);let u=c=>{(0,Mr.default)(c.url),s.message.success(\"\\u5DF2\\u590D\\u5236\\u5230\\u526A\\u8D34\\u677F\")};return r.default.createElement(\"div\",{className:\"subscription-page\"},r.default.createElement(\"section\",{className:\"subscription-section\"},r.default.createElement(s.Spin,{spinning:n},r.default.createElement(\"div\",{className:\"subscription-endpoints\"},e.map(c=>r.default.createElement(\"div\",{className:\"subscription-endpoint\",key:c.key||c.url},r.default.createElement(\"div\",{className:\"subscription-endpoint__main\"},r.default.createElement(\"div\",{className:\"subscription-endpoint__title\"},r.default.createElement(\"span\",null,c.name)),r.default.createElement(\"div\",{className:\"subscription-endpoint__url\",title:c.url},c.url)),r.default.createElement(\"div\",{className:\"subscription-endpoint__actions\"},c.key===\"emby\"&&r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(yn,null),onClick:()=>i(!0),\"aria-label\":\"\\u914D\\u7F6E Emby API\"}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(ir,null),onClick:()=>u(c),\"aria-label\":\"\\u590D\\u5236\".concat(c.name)}),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(ur,null),href:c.url,target:\"_blank\",rel:\"noreferrer\",\"aria-label\":\"\\u6253\\u5F00\".concat(c.name)}))))))),r.default.createElement(s.Modal,{title:\"Emby API \\u8BBE\\u7F6E\",open:a,footer:null,onCancel:()=>i(!1),destroyOnClose:!0,className:\"ios-modal subscription-setting-modal\"},r.default.createElement(Fd,null)))}function _d(){let[e,t]=(0,r.useState)(\"account\"),n={accept:\".json\",showUploadList:!1,beforeUpload(i){let l=new FileReader;return l.onload=async u=>{try{let c=JSON.parse(u.target.result);await I.put(\"/backup\",c),s.message.success(\"\".concat(i.name,\"\\u5BFC\\u5165\\u6210\\u529F\"))}catch(c){s.message.error(\"\".concat(i.name,\"\\u5BFC\\u5165\\u5931\\u8D25: \").concat(c.message)),console.error(\"Error parsing JSON:\",c)}},l.readAsText(i),!1}},o=[{key:\"account\",label:\"\\u767B\\u5F55\",icon:r.default.createElement(cr,null)},{key:\"settings\",label:\"\\u8BBE\\u7F6E\",icon:r.default.createElement(yn,null)}],a=()=>{switch(e){case\"account\":return r.default.createElement(Zl,null);case\"settings\":return r.default.createElement(s.Tabs,{destroyOnHidden:!0},r.default.createElement(Mn,{tab:\"\\u7AD9\\u6E90\\u5217\\u8868\",key:\"sites\"},r.default.createElement(Td,null)),r.default.createElement(Mn,{tab:\"\\u7F51\\u76D8\\u5217\\u8868\",key:\"pans\"},r.default.createElement(Ed,null)),r.default.createElement(Mn,{tab:\"\\u5F39\\u5E55\\u8BBE\\u7F6E\",key:\"danmu\"},r.default.createElement(Id,null)),r.default.createElement(Mn,{tab:\"\\u8BA2\\u9605\\u8F6C\\u6362\",key:\"subscriptions\"},r.default.createElement(Ad,null)));default:return null}};return r.default.createElement(\"div\",{className:\"app-layout\"},r.default.createElement(\"div\",{className:\"top-nav-bar\"},r.default.createElement(\"div\",{className:\"nav-pill\"},o.map(i=>r.default.createElement(\"div\",{key:i.key,className:\"nav-tab \".concat(e===i.key?\"nav-tab--active\":\"\"),onClick:()=>t(i.key)},i.icon,r.default.createElement(\"span\",null,i.label))),r.default.createElement(\"div\",{className:\"nav-divider\"}),r.default.createElement(\"div\",{className:\"nav-actions\"},r.default.createElement(s.Upload,S({},n),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(dr,null),size:\"small\"},\"\\u5BFC\\u5165\")),r.default.createElement(s.Button,{type:\"text\",icon:r.default.createElement(sr,null),size:\"small\",href:\"/website/backup\",target:\"_blank\"},\"\\u5BFC\\u51FA\")))),r.default.createElement(\"div\",{className:\"container\"},r.default.createElement(s.Card,{className:\"main-card\"},a())))}function Md(){(0,ii.createRoot)(document.getElementById(\"app\")).render(r.default.createElement(_d,null))}\n/*! Bundled license information:\n\nclassnames/index.js:\n (*!\n \tCopyright (c) 2018 Jed Watson.\n \tLicensed under the MIT License (MIT), see\n \thttp://jedwatson.github.io/classnames\n *)\n*/\n"} module.exports.renderClient(); })(); `; @@ -24,18 +24,18 @@ globalThis.danmuBundle = function() { }(); -var q0t=Object.create;var z2=Object.defineProperty;var j0t=Object.getOwnPropertyDescriptor;var H0t=Object.getOwnPropertyNames;var Q0t=Object.getPrototypeOf,G0t=Object.prototype.hasOwnProperty;var lr=(t,e)=>()=>(t&&(e=t(t=0)),e);var E=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),is=(t,e)=>{for(var r in e)z2(t,r,{get:e[r],enumerable:!0})},wde=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of H0t(e))!G0t.call(t,s)&&s!==r&&z2(t,s,{get:()=>e[s],enumerable:!(n=j0t(e,s))||n.enumerable});return t};var Re=(t,e,r)=>(r=t!=null?q0t(Q0t(t)):{},wde(e||!t||!t.__esModule?z2(r,"default",{value:t,enumerable:!0}):r,t)),K0t=t=>wde(z2({},"__esModule",{value:!0}),t);var Nde=E((cOr,Rde)=>{"use strict";function V0t(t){var e=new t,r=e;function n(){var i=e;return i.next?e=i.next:(e=new t,r=e),i.next=null,i}function s(i){r.next=i,r=i}return{get:n,release:s}}Rde.exports=V0t});var Pde=E((uOr,D6)=>{"use strict";var z0t=Nde();function Ode(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=z0t(Y0t),s=null,i=null,a=0,o=null,c={push:h,drain:Na,saturated:Na,pause:l,paused:!1,get concurrency(){return r},set concurrency(I){if(!(I>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=I,!c.paused)for(;s&&a=r||c.paused?i?(i.next=w,i=w):(s=w,i=w,c.saturated()):(a++,e.call(t,w.value,w.worked))}function A(I,R){var w=n.get();w.context=t,w.release=g,w.value=I,w.callback=R||Na,w.errorHandler=o,a>=r||c.paused?s?(w.next=s,s=w):(s=w,i=w,c.saturated()):(a++,e.call(t,w.value,w.worked))}function g(I){I&&n.release(I);var R=s;R&&a<=r?c.paused?a--:(i===s&&(i=null),s=R.next,R.next=null,e.call(t,R.value,R.worked),i===null&&c.empty()):--a===0&&c.drain()}function b(){s=null,i=null,c.drain=Na}function y(){s=null,i=null,c.drain(),c.drain=Na}function x(){var I=s;for(s=null,i=null;I;){var R=I.next,w=I.callback,N=I.errorHandler,P=I.value,B=I.context;I.value=null,I.callback=Na,I.errorHandler=null,N&&N(new Error("abort"),P),w.call(B,new Error("abort")),I.release(I),I=R}c.drain=Na}function v(I){o=I}}function Na(){}function Y0t(){this.value=null,this.callback=Na,this.next=null,this.release=Na,this.context=null,this.errorHandler=null;var t=this;this.worked=function(r,n){var s=t.callback,i=t.errorHandler,a=t.value;t.value=null,t.callback=Na,t.errorHandler&&i(r,a),s.call(t.context,r,n),t.release(t)}}function J0t(t,e,r){typeof t=="function"&&(r=e,e=t,t=null);function n(l,d){e.call(this,l).then(function(f){d(null,f)},d)}var s=Ode(t,n,r),i=s.push,a=s.unshift;return s.push=o,s.unshift=c,s.drained=u,s;function o(l){var d=new Promise(function(f,p){i(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch(Na),d}function c(l){var d=new Promise(function(f,p){a(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch(Na),d}function u(){var l=new Promise(function(d){process.nextTick(function(){if(s.idle())d();else{var f=s.drain;s.drain=function(){typeof f=="function"&&f(),d(),s.drain=f}}})});return l}}D6.exports=Ode;D6.exports.promise=J0t});var L6=E((lOr,Y2)=>{"use strict";var{format:X0t}=require("node:util");function Z0t(){return`${this.name} [${this.code}]: ${this.message}`}function B6(t,e,r=500,n=Error){if(!t)throw new Error("Fastify error code must not be empty");if(!e)throw new Error("Fastify error message must not be empty");t=t.toUpperCase(),!r&&(r=void 0);function s(...i){if(!new.target)return new s(...i);this.code=t,this.name="FastifyError",this.statusCode=r;let a=i.length-1;a!==-1&&i[a]&&typeof i[a]=="object"&&"cause"in i[a]&&(this.cause=i.pop().cause),this.message=X0t(e,...i),Error.stackTraceLimit!==0&&Error.captureStackTrace(this,s)}return s.prototype=Object.create(n.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),s.prototype[Symbol.toStringTag]="Error",s.prototype.toString=Z0t,s}Y2.exports=B6;Y2.exports.default=B6;Y2.exports.createError=B6});var J2=E((dOr,kde)=>{"use strict";var{createError:op}=L6();kde.exports={AVV_ERR_EXPOSE_ALREADY_DEFINED:op("AVV_ERR_EXPOSE_ALREADY_DEFINED","'%s' is already defined, specify an expose option for '%s'"),AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:op("AVV_ERR_ATTRIBUTE_ALREADY_DEFINED","'%s' is already defined"),AVV_ERR_CALLBACK_NOT_FN:op("AVV_ERR_CALLBACK_NOT_FN","Callback for '%s' hook is not a function. Received: '%s'"),AVV_ERR_PLUGIN_NOT_VALID:op("AVV_ERR_PLUGIN_NOT_VALID","Plugin must be a function or a promise. Received: '%s'"),AVV_ERR_ROOT_PLG_BOOTED:op("AVV_ERR_ROOT_PLG_BOOTED","Root plugin has already booted"),AVV_ERR_PARENT_PLG_LOADED:op("AVV_ERR_PARENT_PLG_LOADED","Impossible to load '%s' plugin because the parent '%s' was already loaded"),AVV_ERR_READY_TIMEOUT:op("AVV_ERR_READY_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise"),AVV_ERR_PLUGIN_EXEC_TIMEOUT:op("AVV_ERR_PLUGIN_EXEC_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise")}});var PA=E((fOr,Dde)=>{"use strict";var emt=Symbol("avvio.Boot"),tmt=Symbol("isOnCloseHandler"),rmt=Symbol("avvio.ThenifyDoNotWrap"),nmt=Symbol("avvio.TimeTree.untrackNode"),smt=Symbol("avvio.TimeTree.trackNode"),imt=Symbol("avvio.TimeTree.getParent"),amt=Symbol("avvio.TimeTree.getNode"),omt=Symbol("avvio.TimeTree.addNode"),cmt=Symbol.for("plugin-meta");Dde.exports={kAvvio:emt,kIsOnCloseHandler:tmt,kThenifyDoNotWrap:rmt,kUntrackNode:nmt,kTrackNode:smt,kGetParent:imt,kGetNode:amt,kAddNode:omt,kPluginMeta:cmt}});var Ude=E((pOr,Fde)=>{"use strict";var{kUntrackNode:Bde,kTrackNode:M6,kGetParent:Lde,kGetNode:Mde,kAddNode:Wde}=PA(),W6=class{constructor(){this.root=null,this.tableId=new Map,this.tableLabel=new Map}[M6](e){this.tableId.set(e.id,e),this.tableLabel.has(e.label)?this.tableLabel.get(e.label).push(e):this.tableLabel.set(e.label,[e])}[Bde](e){this.tableId.delete(e.id);let r=this.tableLabel.get(e.label);r.pop(),r.length===0&&this.tableLabel.delete(e.label)}[Lde](e){if(e===null)return null;if(this.tableLabel.has(e)){let r=this.tableLabel.get(e);return r[r.length-1]}else return null}[Mde](e){return this.tableId.get(e)}[Wde](e,r,n){let s=this[Lde](e);if(s===null)return this.root={parent:null,id:"root",label:r,nodes:[],start:n,stop:null,diff:-1},this[M6](this.root),this.root.id;let a=`${r}-${Math.random()}`,o={parent:e,id:a,label:r,nodes:[],start:n,stop:null,diff:-1};return s.nodes.push(o),this[M6](o),a}start(e,r,n=Date.now()){return this[Wde](e,r,n)}stop(e,r=Date.now()){let n=this[Mde](e);n&&(n.stop=r,n.diff=n.stop-n.start||0,this[Bde](n))}toJSON(){return Object.assign({},this.root)}prettyPrint(){return $de(this.toJSON())}};function $de(t,e=""){let r=e,n=t.nodes.length,s=n-1;r+=`${t.label} ${t.diff} ms -`;for(let i=0;i{"use strict";var{debuglog:umt}=require("node:util"),lmt=umt("avvio");qde.exports={debug:lmt}});var Hde=E((hOr,jde)=>{"use strict";function dmt(){let t={resolve:null,reject:null,promise:null};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}jde.exports={createPromise:dmt}});var Gde=E((gOr,Qde)=>{"use strict";var{kPluginMeta:$6}=PA();function fmt(t,e){return t[$6]&&t[$6].name?t[$6].name:e&&e.name?e.name:t.name?t.name:t.toString().split(` -`).slice(0,2).map(r=>r.trim()).join(" -- ")}Qde.exports={getPluginName:fmt}});var Z2=E((AOr,Kde)=>{"use strict";function pmt(t){return t!==null&&typeof t=="object"&&typeof t.then=="function"}Kde.exports={isPromiseLike:pmt}});var zde=E((yOr,Vde)=>{"use strict";var{EventEmitter:mmt}=require("node:events"),{inherits:hmt}=require("node:util"),{debug:ui}=X2(),{createPromise:gmt}=Hde(),{AVV_ERR_PLUGIN_EXEC_TIMEOUT:Amt}=J2(),{getPluginName:ymt}=Gde(),{isPromiseLike:xmt}=Z2();function kA(t,e,r,n,s){this.queue=t,this.func=e,this.options=r,this.isAfter=n,this.timeout=s,this.started=!1,this.name=ymt(e,r),this.queue.pause(),this._error=null,this.loaded=!1,this._promise=null,this.startTime=null}hmt(kA,mmt);kA.prototype.exec=function(t,e){ui("exec",this.name),this.server=t;let r=this.func,n=this.name,s=!1;this.options=typeof this.options=="function"?this.options(this.server):this.options;let i=null,a=c=>{if(s){ui("loading complete",n);return}this._error=c,ui(c?"exec errored":"exec completed",n),s=!0,i&&clearTimeout(i),e(c)};this.timeout>0&&(ui("setting up timeout",n,this.timeout),i=setTimeout(function(){ui("timed out",n),i=null;let c=new Amt(n);c.fn=r,a(c)},this.timeout)),this.started=!0,this.startTime=Date.now(),this.emit("start",this.server?this.server.name:null,this.name,Date.now());let o=r(this.server,this.options,a);xmt(o)&&(ui("exec: resolving promise",n),o.then(()=>process.nextTick(a),c=>process.nextTick(a,c)))};kA.prototype.loadedSoFar=function(){if(ui("loadedSoFar",this.name),this.loaded)return Promise.resolve();let t=()=>{this.server.after((r,n)=>{this._error=r,this.queue.pause(),this._promise&&(r?(ui("rejecting promise",this.name,r),this._promise.reject(r)):(ui("resolving promise",this.name),this._promise.resolve()),this._promise=null),process.nextTick(n,r)}),this.queue.resume()},e;return this._promise?e=Promise.resolve():(this._promise=gmt(),e=this._promise.promise,this.server?t():this.on("start",t)),e};kA.prototype.enqueue=function(t,e){ui("enqueue",this.name,t.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.queue.push(t,e)};kA.prototype.finish=function(t,e){ui("finish",this.name,t);let r=()=>{this.loaded||(ui("loaded",this.name),this.emit("loaded",this.server?this.server.name:null,this.name,Date.now()),this.loaded=!0,e(t))};if(t){this._promise&&(this._promise.reject(t),this._promise=null),r();return}let n=()=>{if(ui("check",this.name,this.queue.length(),this.queue.running(),this._promise),this.queue.length()===0&&this.queue.running()===0)if(this._promise){let s=()=>{ui("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(s,s),this._promise=null}else r();else ui("delayed",this.name),this.queue.drain=()=>{ui("drain",this.name),this.queue.drain=bmt,queueMicrotask(n)}};queueMicrotask(n),this.queue.resume()};function bmt(){}Vde.exports={Plugin:kA}});var Jde=E((xOr,Yde)=>{"use strict";var{AVV_ERR_PLUGIN_NOT_VALID:F6}=J2();function Emt(t){if(!(t&&(typeof t=="function"||typeof t.then=="function")))throw Array.isArray(t)?new F6("array"):t===null?new F6("null"):new F6(typeof t)}Yde.exports={validatePlugin:Emt}});var Zde=E((bOr,Xde)=>{"use strict";function _mt(t){return t!==null&&typeof t=="object"&&typeof t.default=="function"}Xde.exports={isBundledOrTypescriptPlugin:_mt}});var rfe=E((EOr,tfe)=>{"use strict";var{debug:efe}=X2(),{kThenifyDoNotWrap:U6}=PA();function Smt(){if(this.booted){efe("thenify returning undefined because we are already booted");return}if(this[U6]){this[U6]=!1;return}return efe("thenify"),(t,e)=>this._loadRegistered().then(()=>(this[U6]=!0,t(this._server)),e)}tfe.exports={thenify:Smt}});var sfe=E((_Or,nfe)=>{"use strict";var{isPromiseLike:vmt}=Z2(),{kAvvio:Imt}=PA();function Cmt(t,e,r){let n=t.apply(t,e);vmt(n)&&!n[Imt]?n.then(()=>process.nextTick(r),s=>process.nextTick(r,s)):r&&process.nextTick(r)}nfe.exports={executeWithThenable:Cmt}});var ffe=E((SOr,j6)=>{"use strict";var eR=Pde(),Tmt=require("node:events").EventEmitter,wmt=require("node:util").inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:ZE,AVV_ERR_CALLBACK_NOT_FN:DA,AVV_ERR_ROOT_PLG_BOOTED:Rmt,AVV_ERR_READY_TIMEOUT:Nmt,AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:Omt}=J2(),{kAvvio:ofe,kIsOnCloseHandler:cfe}=PA(),{TimeTree:Pmt}=Ude(),{Plugin:ufe}=zde(),{debug:BA}=X2(),{validatePlugin:kmt}=Jde(),{isBundledOrTypescriptPlugin:Dmt}=Zde(),{isPromiseLike:Bmt}=Z2(),{thenify:lfe}=rfe(),{executeWithThenable:ife}=sfe();function as(t,e,r){if(typeof t=="function"&&arguments.length===1&&(r=t,e={},t=null),typeof e=="function"&&(r=e,e={}),e=e||{},e.autostart=e.autostart!==!1,e.timeout=Number(e.timeout)||0,e.expose=e.expose||{},!new.target)return new as(t,e,r);this._server=t||this,this._opts=e,t&&this._expose(),this._current=[],this._error=null,this._lastUsed=null,this.setMaxListeners(0),r&&this.once("start",r),this.started=!1,this.booted=!1,this.pluginTree=new Pmt,this._readyQ=eR(this,dfe,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=afe},this._closeQ=eR(this,Mmt,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=afe},this._doStart=null;let n=this;this._root=new ufe(eR(this,this._loadPluginNextTick,1),function(i,a,o){n._doStart=o,a.autostart&&n.start()},e,!1,0),this._trackPluginLoading(this._root),this._loadPlugin(this._root,s=>{BA("root plugin ready");try{this.emit("preReady"),this._root=null}catch(i){s=s||this._error||i}if(s){if(this._error=s,this._readyQ.length()===0)throw s}else this.booted=!0;this._readyQ.resume()})}wmt(as,Tmt);as.prototype.start=function(){return this.started=!0,process.nextTick(this._doStart),this};as.prototype.override=function(t,e,r){return t};as.prototype[ofe]=!0;as.prototype.use=function(t,e){return this._lastUsed=this._addPlugin(t,e,!1),this};as.prototype._loadRegistered=function(){let t=this._current[0];return!this.started&&!this.booted&&process.nextTick(()=>this._root.queue.resume()),t?t.loadedSoFar():Promise.resolve()};Object.defineProperty(as.prototype,"then",{get:lfe});as.prototype._addPlugin=function(t,e,r){if(Dmt(t)&&(t=t.default),kmt(t),e=e||{},this.booted)throw new Rmt;let n=this._current[0],s=this._opts.timeout;if(!n.loaded&&n.timeout>0){let a=Date.now()-n.startTime;s=n.timeout-(a+3)}let i=new ufe(eR(this,this._loadPluginNextTick,1),t,e,r,s);if(this._trackPluginLoading(i),n.loaded)throw new Error(i.name,n.name);return n.enqueue(i,a=>{a&&(this._error=a)}),i};as.prototype._expose=function(){let e=this,r=e._server,{use:n="use",after:s="after",ready:i="ready",onClose:a="onClose",close:o="close"}=this._opts.expose;if(r[n])throw new ZE(n,"use");if(r[n]=function(c,u){return e.use(c,u),this},r[s])throw new ZE(s,"after");if(r[s]=function(c){return typeof c!="function"?e._loadRegistered():(e.after(q6(c,this)),this)},r[i])throw new ZE(i,"ready");if(r[i]=function(c){if(c&&typeof c!="function")throw new DA(i,typeof c);return e.ready(c?q6(c,this):void 0)},r[a])throw new ZE(a,"onClose");if(r[a]=function(c){if(typeof c!="function")throw new DA(a,typeof c);return e.onClose(Wmt(c,this)),this},r[o])throw new ZE(o,"close");if(r[o]=function(c){if(c&&typeof c!="function")throw new DA(o,typeof c);return c?(e.close(q6(c,this)),this):e.close()},r.then)throw new Omt("then");Object.defineProperty(r,"then",{get:lfe.bind(e)}),r[ofe]=!0};as.prototype.after=function(t){if(!t)return this._loadRegistered();this._addPlugin(e.bind(this),{},!0);function e(r,n,s){dfe.call(this,t,s)}return this};as.prototype.onClose=function(t){if(typeof t!="function")throw new DA("onClose",typeof t);return t[cfe]=!0,this._closeQ.unshift(t,e=>{e&&(this._error=e)}),this};as.prototype.close=function(t){let e;if(t){if(typeof t!="function")throw new DA("close",typeof t)}else e=new Promise(function(r,n){t=function(s){if(s)return n(s);r()}});return this.ready(()=>{this._error=null,this._closeQ.push(t),process.nextTick(this._closeQ.resume.bind(this._closeQ))}),e};as.prototype.ready=function(t){if(t){if(typeof t!="function")throw new DA("ready",typeof t);this._readyQ.push(t),queueMicrotask(this.start.bind(this));return}return new Promise((e,r)=>{this._readyQ.push(s),this.start();let n=this._current[0].server;function s(i,a,o){i?r(i):e(n),process.nextTick(o)}})};as.prototype._trackPluginLoading=function(t){let e=this._current[0]?.name||null;t.once("start",(r,n,s)=>{let i=this.pluginTree.start(e||null,n,s);t.once("loaded",(a,o,c)=>{this.pluginTree.stop(i,c)})})};as.prototype.prettyPrint=function(){return this.pluginTree.prettyPrint()};as.prototype.toJSON=function(){return this.pluginTree.toJSON()};as.prototype._loadPlugin=function(t,e){let r=this;if(Bmt(t.func)){t.func.then(a=>{typeof a.default=="function"&&(a=a.default),t.func=a,this._loadPlugin(t,e)},e);return}let n=r._current[0];if(r._current.unshift(t),r._error&&!t.isAfter){BA("skipping loading of plugin as instance errored and it is not an after",t.name),process.nextTick(i);return}let s=n&&n.server||r._server;if(!t.isAfter)try{s=r.override(s,t.func,t.options)}catch(a){return BA("override errored",t.name),i(a)}t.exec(s,i);function i(a){t.finish(a,o=>{r._current.shift(),e(o)})}};as.prototype._loadPluginNextTick=function(t,e){process.nextTick(this._loadPlugin.bind(this),t,e)};function afe(){}function dfe(t,e){let r=this._server,n=this._error;if(this._error=null,t.length===0)this._error=n,ife(t,[],e);else if(t.length===1)ife(t,[n],e);else if(this._opts.timeout===0){let s=i=>{this._error=i,e(this._error)};t.length===2?t(n,s):t(n,r,s)}else Lmt.call(this,t,n,r,e)}function Lmt(t,e,r,n){let s=t.unwrappedName??t.name;BA("setting up ready timeout",s,this._opts.timeout);let i=setTimeout(()=>{BA("timed out",s),i=null;let o=new Nmt(s);o.fn=t,this._error=o,n(o)},this._opts.timeout);t.length===2?t(e,a.bind(this)):t(e,r,a.bind(this));function a(o){i&&(clearTimeout(i),this._error=o,n(this._error))}}function Mmt(t,e){let r=this._server,n=t[cfe];if(t.length===0||t.length===1){let s;n?s=t(r):s=t(this._error),s&&typeof s.then=="function"?(BA("resolving close/onClose promise"),s.then(()=>process.nextTick(e),i=>process.nextTick(e,i))):process.nextTick(e)}else t.length===2?t(n?r:this._error,e):n?t(r,e):t(this._error,r,e)}function Wmt(t,e){return r.bind(e);function r(n,s){let i;t.length===0?(i=t(),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t.length===1?(i=t(this),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t(this,s)}}function q6(t,e){let r=n.bind(e);return r.unwrappedName=t.name,r;function n(s,i){let a;t?t.length===0?(a=t(),a&&a.then?a.then(function(){process.nextTick(i,s)},i):process.nextTick(i,s)):t.length===1?(a=t(s),a&&a.then?a.then(function(){process.nextTick(i)},i):process.nextTick(i)):t.length===2?t(s,i):t(s,this,i):process.nextTick(i)}}j6.exports=as;j6.exports.express=function(t){return as(t,{expose:{use:"load"}})}});var Gs=E((vOr,pfe)=>{"use strict";var $mt={kAvvioBoot:Symbol("fastify.avvioBoot"),kChildren:Symbol("fastify.children"),kServerBindings:Symbol("fastify.serverBindings"),kBodyLimit:Symbol("fastify.bodyLimit"),kRoutePrefix:Symbol("fastify.routePrefix"),kLogLevel:Symbol("fastify.logLevel"),kLogSerializers:Symbol("fastify.logSerializers"),kHooks:Symbol("fastify.hooks"),kContentTypeParser:Symbol("fastify.contentTypeParser"),kState:Symbol("fastify.state"),kOptions:Symbol("fastify.options"),kDisableRequestLogging:Symbol("fastify.disableRequestLogging"),kPluginNameChain:Symbol("fastify.pluginNameChain"),kRouteContext:Symbol("fastify.context"),kPublicRouteContext:Symbol("fastify.routeOptions"),kGenReqId:Symbol("fastify.genReqId"),kSchemaController:Symbol("fastify.schemaController"),kSchemaHeaders:Symbol("headers-schema"),kSchemaParams:Symbol("params-schema"),kSchemaQuerystring:Symbol("querystring-schema"),kSchemaBody:Symbol("body-schema"),kSchemaResponse:Symbol("response-schema"),kSchemaErrorFormatter:Symbol("fastify.schemaErrorFormatter"),kSchemaVisited:Symbol("fastify.schemas.visited"),kRequest:Symbol("fastify.Request"),kRequestPayloadStream:Symbol("fastify.RequestPayloadStream"),kRequestAcceptVersion:Symbol("fastify.RequestAcceptVersion"),kRequestCacheValidateFns:Symbol("fastify.request.cache.validateFns"),kRequestOriginalUrl:Symbol("fastify.request.originalUrl"),kFourOhFour:Symbol("fastify.404"),kCanSetNotFoundHandler:Symbol("fastify.canSetNotFoundHandler"),kFourOhFourLevelInstance:Symbol("fastify.404LogLevelInstance"),kFourOhFourContext:Symbol("fastify.404ContextKey"),kDefaultJsonParse:Symbol("fastify.defaultJSONParse"),kReply:Symbol("fastify.Reply"),kReplySerializer:Symbol("fastify.reply.serializer"),kReplyIsError:Symbol("fastify.reply.isError"),kReplyHeaders:Symbol("fastify.reply.headers"),kReplyTrailers:Symbol("fastify.reply.trailers"),kReplyHasStatusCode:Symbol("fastify.reply.hasStatusCode"),kReplyHijacked:Symbol("fastify.reply.hijacked"),kReplyStartTime:Symbol("fastify.reply.startTime"),kReplyNextErrorHandler:Symbol("fastify.reply.nextErrorHandler"),kReplyEndTime:Symbol("fastify.reply.endTime"),kReplyErrorHandlerCalled:Symbol("fastify.reply.errorHandlerCalled"),kReplyIsRunningOnErrorHook:Symbol("fastify.reply.isRunningOnErrorHook"),kReplySerializerDefault:Symbol("fastify.replySerializerDefault"),kReplyCacheSerializeFns:Symbol("fastify.reply.cache.serializeFns"),kTestInternals:Symbol("fastify.testInternals"),kErrorHandler:Symbol("fastify.errorHandler"),kChildLoggerFactory:Symbol("fastify.childLoggerFactory"),kHasBeenDecorated:Symbol("fastify.hasBeenDecorated"),kKeepAliveConnections:Symbol("fastify.keepAliveConnections"),kRouteByFastify:Symbol("fastify.routeByFastify")};pfe.exports=$mt});var G6=E((IOr,tR)=>{"use strict";var{format:H6}=require("node:util");function Fmt(t){return mfe({...t,name:"DeprecationWarning"})}function mfe({name:t,code:e,message:r,unlimited:n=!1}={}){if(!t)throw new Error("Warning name must not be empty");if(!e)throw new Error("Warning code must not be empty");if(!r)throw new Error("Warning message must not be empty");if(typeof n!="boolean")throw new Error("Warning opts.unlimited must be a boolean");e=e.toUpperCase();let s={[t]:function(a,o,c){i.emitted===!0&&i.unlimited!==!0||(i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code))}};n&&(s={[t]:function(a,o,c){i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code)}});let i=s[t];return i.emitted=!1,i.message=r,i.unlimited=n,i.code=e,i.format=function(a,o,c){let u;return a&&o&&c?u=H6(r,a,o,c):a&&o?u=H6(r,a,o):a?u=H6(r,a):u=r,u},i}var Q6={createWarning:mfe,createDeprecation:Fmt};tR.exports=Q6;tR.exports.default=Q6;tR.exports.processWarning=Q6});var od=E((COr,gfe)=>{"use strict";var{createDeprecation:Ii,createWarning:hfe}=G6(),Umt=Ii({code:"FSTDEP005",message:'You are accessing the deprecated "request.connection" property. Use "request.socket" instead.'}),qmt=Ii({code:"FSTDEP006",message:"You are decorating Request/Reply with a reference type. This reference is shared amongst all requests. Use onRequest hook instead. Property: %s"}),jmt=Ii({code:"FSTDEP007",message:'You are trying to set a HEAD route using "exposeHeadRoute" route flag when a sibling route is already set. See documentation for more info.'}),Hmt=Ii({code:"FSTDEP008",message:'You are using route constraints via the route { version: "..." } option, use { constraints: { version: "..." } } option instead.'}),Qmt=Ii({code:"FSTDEP009",message:'You are using a custom route versioning strategy via the server { versioning: "..." } option, use { constraints: { version: "..." } } option instead.'}),Gmt=Ii({code:"FSTDEP010",message:'Modifying the "reply.sent" property is deprecated. Use the "reply.hijack()" method instead.'}),Kmt=Ii({code:"FSTDEP011",message:'Variadic listen method is deprecated. Please use ".listen(optionsObject)" instead. The variadic signature will be removed in `fastify@5`.'}),Vmt=Ii({code:"FSTDEP012",message:'request.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "request.context" will be removed in `fastify@5`.'}),zmt=Ii({code:"FSTDEP013",message:'Direct return of "trailers" function is deprecated. Please use "callback" or "async-await" for return value. The support of direct return will removed in `fastify@5`.'}),Ymt=Ii({code:"FSTDEP014",message:"You are trying to set/access the default route. This property is deprecated. Please, use setNotFoundHandler if you want to custom a 404 handler or the wildcard (*) to match all routes."}),Jmt=Ii({code:"FSTDEP015",message:'You are accessing the deprecated "request.routeSchema" property. Use "request.routeOptions.schema" instead. Property "req.routeSchema" will be removed in `fastify@5`.'}),Xmt=Ii({code:"FSTDEP016",message:'You are accessing the deprecated "request.routeConfig" property. Use "request.routeOptions.config" instead. Property "req.routeConfig" will be removed in `fastify@5`.'}),Zmt=Ii({code:"FSTDEP017",message:'You are accessing the deprecated "request.routerPath" property. Use "request.routeOptions.url" instead. Property "req.routerPath" will be removed in `fastify@5`.'}),eht=Ii({code:"FSTDEP018",message:'You are accessing the deprecated "request.routerMethod" property. Use "request.routeOptions.method" instead. Property "req.routerMethod" will be removed in `fastify@5`.'}),tht=Ii({code:"FSTDEP019",message:'reply.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "reply.context" will be removed in `fastify@5`.'}),rht=Ii({code:"FSTDEP020",message:'You are using the deprecated "reply.getResponseTime()"" method. Use the "request.elapsedTime" property instead. Method "reply.getResponseTime()" will be removed in `fastify@5`.'}),nht=hfe({name:"FastifyWarning",code:"FSTWRN001",message:"The %s schema for %s: %s is missing. This may indicate the schema is not well specified.",unlimited:!0}),sht=hfe({name:"FastifyWarning",code:"FSTWRN002",message:"The %s plugin being registered mixes async and callback styles, which will result in an error in `fastify@5`",unlimited:!0});gfe.exports={FSTDEP005:Umt,FSTDEP006:qmt,FSTDEP007:jmt,FSTDEP008:Hmt,FSTDEP009:Qmt,FSTDEP010:Gmt,FSTDEP011:Kmt,FSTDEP012:Vmt,FSTDEP013:zmt,FSTDEP014:Ymt,FSTDEP015:Jmt,FSTDEP016:Xmt,FSTDEP017:Zmt,FSTDEP018:eht,FSTDEP019:tht,FSTDEP020:rht,FSTWRN001:nht,FSTWRN002:sht}});var Ci=E((TOr,rR)=>{"use strict";var He=L6(),LA={FST_ERR_NOT_FOUND:He("FST_ERR_NOT_FOUND","Not Found",404),FST_ERR_OPTIONS_NOT_OBJ:He("FST_ERR_OPTIONS_NOT_OBJ","Options must be an object",500,TypeError),FST_ERR_QSP_NOT_FN:He("FST_ERR_QSP_NOT_FN","querystringParser option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:He("FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN","schemaController.bucket option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:He("FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN","schemaErrorFormatter option should be a non async function. Instead got '%s'.",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:He("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ","ajv.customOptions option should be an object, instead got '%s'",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:He("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR","ajv.plugins option should be an array, instead got '%s'",500,TypeError),FST_ERR_VERSION_CONSTRAINT_NOT_STR:He("FST_ERR_VERSION_CONSTRAINT_NOT_STR","Version constraint should be a string.",500,TypeError),FST_ERR_VALIDATION:He("FST_ERR_VALIDATION","%s",400),FST_ERR_LISTEN_OPTIONS_INVALID:He("FST_ERR_LISTEN_OPTIONS_INVALID","Invalid listen options: '%s'",500,TypeError),FST_ERR_CTP_ALREADY_PRESENT:He("FST_ERR_CTP_ALREADY_PRESENT","Content type parser '%s' already present."),FST_ERR_CTP_INVALID_TYPE:He("FST_ERR_CTP_INVALID_TYPE","The content type should be a string or a RegExp",500,TypeError),FST_ERR_CTP_EMPTY_TYPE:He("FST_ERR_CTP_EMPTY_TYPE","The content type cannot be an empty string",500,TypeError),FST_ERR_CTP_INVALID_HANDLER:He("FST_ERR_CTP_INVALID_HANDLER","The content type handler should be a function",500,TypeError),FST_ERR_CTP_INVALID_PARSE_TYPE:He("FST_ERR_CTP_INVALID_PARSE_TYPE","The body parser can only parse your data as 'string' or 'buffer', you asked '%s' which is not supported.",500,TypeError),FST_ERR_CTP_BODY_TOO_LARGE:He("FST_ERR_CTP_BODY_TOO_LARGE","Request body is too large",413,RangeError),FST_ERR_CTP_INVALID_MEDIA_TYPE:He("FST_ERR_CTP_INVALID_MEDIA_TYPE","Unsupported Media Type: %s",415),FST_ERR_CTP_INVALID_CONTENT_LENGTH:He("FST_ERR_CTP_INVALID_CONTENT_LENGTH","Request body size did not match Content-Length",400,RangeError),FST_ERR_CTP_EMPTY_JSON_BODY:He("FST_ERR_CTP_EMPTY_JSON_BODY","Body cannot be empty when content-type is set to 'application/json'",400),FST_ERR_CTP_INSTANCE_ALREADY_STARTED:He("FST_ERR_CTP_INSTANCE_ALREADY_STARTED",'Cannot call "%s" when fastify instance is already started!',400),FST_ERR_DEC_ALREADY_PRESENT:He("FST_ERR_DEC_ALREADY_PRESENT","The decorator '%s' has already been added!"),FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:He("FST_ERR_DEC_DEPENDENCY_INVALID_TYPE","The dependencies of decorator '%s' must be of type Array.",500,TypeError),FST_ERR_DEC_MISSING_DEPENDENCY:He("FST_ERR_DEC_MISSING_DEPENDENCY","The decorator is missing dependency '%s'."),FST_ERR_DEC_AFTER_START:He("FST_ERR_DEC_AFTER_START","The decorator '%s' has been added after start!"),FST_ERR_HOOK_INVALID_TYPE:He("FST_ERR_HOOK_INVALID_TYPE","The hook name must be a string",500,TypeError),FST_ERR_HOOK_INVALID_HANDLER:He("FST_ERR_HOOK_INVALID_HANDLER","%s hook should be a function, instead got %s",500,TypeError),FST_ERR_HOOK_INVALID_ASYNC_HANDLER:He("FST_ERR_HOOK_INVALID_ASYNC_HANDLER","Async function has too many arguments. Async hooks should not use the 'done' argument.",500,TypeError),FST_ERR_HOOK_NOT_SUPPORTED:He("FST_ERR_HOOK_NOT_SUPPORTED","%s hook not supported!",500,TypeError),FST_ERR_MISSING_MIDDLEWARE:He("FST_ERR_MISSING_MIDDLEWARE","You must register a plugin for handling middlewares, visit fastify.dev/docs/latest/Reference/Middleware/ for more info.",500),FST_ERR_HOOK_TIMEOUT:He("FST_ERR_HOOK_TIMEOUT","A callback for '%s' hook timed out. You may have forgotten to call 'done' function or to resolve a Promise"),FST_ERR_LOG_INVALID_DESTINATION:He("FST_ERR_LOG_INVALID_DESTINATION","Cannot specify both logger.stream and logger.file options"),FST_ERR_LOG_INVALID_LOGGER:He("FST_ERR_LOG_INVALID_LOGGER","Invalid logger object provided. The logger instance should have these functions(s): '%s'.",500,TypeError),FST_ERR_REP_INVALID_PAYLOAD_TYPE:He("FST_ERR_REP_INVALID_PAYLOAD_TYPE","Attempted to send payload of invalid type '%s'. Expected a string or Buffer.",500,TypeError),FST_ERR_REP_RESPONSE_BODY_CONSUMED:He("FST_ERR_REP_RESPONSE_BODY_CONSUMED","Response.body is already consumed."),FST_ERR_REP_ALREADY_SENT:He("FST_ERR_REP_ALREADY_SENT",'Reply was already sent, did you forget to "return reply" in "%s" (%s)?'),FST_ERR_REP_SENT_VALUE:He("FST_ERR_REP_SENT_VALUE","The only possible value for reply.sent is true.",500,TypeError),FST_ERR_SEND_INSIDE_ONERR:He("FST_ERR_SEND_INSIDE_ONERR","You cannot use `send` inside the `onError` hook"),FST_ERR_SEND_UNDEFINED_ERR:He("FST_ERR_SEND_UNDEFINED_ERR","Undefined error has occurred"),FST_ERR_BAD_STATUS_CODE:He("FST_ERR_BAD_STATUS_CODE","Called reply with an invalid status code: %s"),FST_ERR_BAD_TRAILER_NAME:He("FST_ERR_BAD_TRAILER_NAME","Called reply.trailer with an invalid header name: %s"),FST_ERR_BAD_TRAILER_VALUE:He("FST_ERR_BAD_TRAILER_VALUE","Called reply.trailer('%s', fn) with an invalid type: %s. Expected a function."),FST_ERR_FAILED_ERROR_SERIALIZATION:He("FST_ERR_FAILED_ERROR_SERIALIZATION","Failed to serialize an error. Error: %s. Original error: %s"),FST_ERR_MISSING_SERIALIZATION_FN:He("FST_ERR_MISSING_SERIALIZATION_FN",'Missing serialization function. Key "%s"'),FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:He("FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN",'Missing serialization function. Key "%s:%s"'),FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:He("FST_ERR_REQ_INVALID_VALIDATION_INVOCATION",'Invalid validation invocation. Missing validation function for HTTP part "%s" nor schema provided.'),FST_ERR_SCH_MISSING_ID:He("FST_ERR_SCH_MISSING_ID","Missing schema $id property"),FST_ERR_SCH_ALREADY_PRESENT:He("FST_ERR_SCH_ALREADY_PRESENT","Schema with id '%s' already declared!"),FST_ERR_SCH_CONTENT_MISSING_SCHEMA:He("FST_ERR_SCH_CONTENT_MISSING_SCHEMA","Schema is missing for the content type '%s'"),FST_ERR_SCH_DUPLICATE:He("FST_ERR_SCH_DUPLICATE","Schema with '%s' already present!"),FST_ERR_SCH_VALIDATION_BUILD:He("FST_ERR_SCH_VALIDATION_BUILD","Failed building the validation schema for %s: %s, due to error %s"),FST_ERR_SCH_SERIALIZATION_BUILD:He("FST_ERR_SCH_SERIALIZATION_BUILD","Failed building the serialization schema for %s: %s, due to error %s"),FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:He("FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX",'response schemas should be nested under a valid status code, e.g { 2xx: { type: "object" } }'),FST_ERR_HTTP2_INVALID_VERSION:He("FST_ERR_HTTP2_INVALID_VERSION","HTTP2 is available only from node >= 8.8.1"),FST_ERR_INIT_OPTS_INVALID:He("FST_ERR_INIT_OPTS_INVALID","Invalid initialization options: '%s'"),FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:He("FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE","Cannot set forceCloseConnections to 'idle' as your HTTP server does not support closeIdleConnections method"),FST_ERR_DUPLICATED_ROUTE:He("FST_ERR_DUPLICATED_ROUTE","Method '%s' already declared for route '%s'"),FST_ERR_BAD_URL:He("FST_ERR_BAD_URL","'%s' is not a valid url component",400,URIError),FST_ERR_ASYNC_CONSTRAINT:He("FST_ERR_ASYNC_CONSTRAINT","Unexpected error from async constraint",500),FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:He("FST_ERR_DEFAULT_ROUTE_INVALID_TYPE","The defaultRoute type should be a function",500,TypeError),FST_ERR_INVALID_URL:He("FST_ERR_INVALID_URL","URL must be a string. Received '%s'",400,TypeError),FST_ERR_ROUTE_OPTIONS_NOT_OBJ:He("FST_ERR_ROUTE_OPTIONS_NOT_OBJ",'Options for "%s:%s" route must be an object',500,TypeError),FST_ERR_ROUTE_DUPLICATED_HANDLER:He("FST_ERR_ROUTE_DUPLICATED_HANDLER",'Duplicate handler for "%s:%s" route is not allowed!',500),FST_ERR_ROUTE_HANDLER_NOT_FN:He("FST_ERR_ROUTE_HANDLER_NOT_FN","Error Handler for %s:%s route, if defined, must be a function",500,TypeError),FST_ERR_ROUTE_MISSING_HANDLER:He("FST_ERR_ROUTE_MISSING_HANDLER",'Missing handler function for "%s:%s" route.',500),FST_ERR_ROUTE_METHOD_INVALID:He("FST_ERR_ROUTE_METHOD_INVALID","Provided method is invalid!",500,TypeError),FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:He("FST_ERR_ROUTE_METHOD_NOT_SUPPORTED","%s method is not supported.",500),FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:He("FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED","Body validation schema for %s:%s route is not supported!",500),FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:He("FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT","'bodyLimit' option must be an integer > 0. Got '%s'",500,TypeError),FST_ERR_ROUTE_REWRITE_NOT_STR:He("FST_ERR_ROUTE_REWRITE_NOT_STR",'Rewrite url for "%s" needs to be of type "string" but received "%s"',500,TypeError),FST_ERR_REOPENED_CLOSE_SERVER:He("FST_ERR_REOPENED_CLOSE_SERVER","Fastify has already been closed and cannot be reopened"),FST_ERR_REOPENED_SERVER:He("FST_ERR_REOPENED_SERVER","Fastify is already listening"),FST_ERR_INSTANCE_ALREADY_LISTENING:He("FST_ERR_INSTANCE_ALREADY_LISTENING","Fastify instance is already listening. %s"),FST_ERR_PLUGIN_VERSION_MISMATCH:He("FST_ERR_PLUGIN_VERSION_MISMATCH","fastify-plugin: %s - expected '%s' fastify version, '%s' is installed"),FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:He("FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE","The decorator '%s'%s is not present in %s"),FST_ERR_PLUGIN_CALLBACK_NOT_FN:He("FST_ERR_PLUGIN_CALLBACK_NOT_FN","fastify-plugin: %s",500,TypeError),FST_ERR_PLUGIN_NOT_VALID:He("FST_ERR_PLUGIN_NOT_VALID","fastify-plugin: %s"),FST_ERR_ROOT_PLG_BOOTED:He("FST_ERR_ROOT_PLG_BOOTED","fastify-plugin: %s"),FST_ERR_PARENT_PLUGIN_BOOTED:He("FST_ERR_PARENT_PLUGIN_BOOTED","fastify-plugin: %s"),FST_ERR_PLUGIN_TIMEOUT:He("FST_ERR_PLUGIN_TIMEOUT","fastify-plugin: %s")};function iht(t,e){return e.cause=t,e}rR.exports=LA;rR.exports.appendStackTrace=iht;rR.exports.AVVIO_ERRORS_MAP={AVV_ERR_CALLBACK_NOT_FN:LA.FST_ERR_PLUGIN_CALLBACK_NOT_FN,AVV_ERR_PLUGIN_NOT_VALID:LA.FST_ERR_PLUGIN_NOT_VALID,AVV_ERR_ROOT_PLG_BOOTED:LA.FST_ERR_ROOT_PLG_BOOTED,AVV_ERR_PARENT_PLG_LOADED:LA.FST_ERR_PARENT_PLUGIN_BOOTED,AVV_ERR_READY_TIMEOUT:LA.FST_ERR_PLUGIN_TIMEOUT}});var cp=E((wOr,Ife)=>{"use strict";var aht=["onRoute","onRegister","onReady","onListen","preClose","onClose"],bfe=["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError","onRequestAbort"],oht=bfe.concat(aht),{FST_ERR_HOOK_INVALID_TYPE:cht,FST_ERR_HOOK_INVALID_HANDLER:uht,FST_ERR_SEND_UNDEFINED_ERR:nR,FST_ERR_HOOK_TIMEOUT:lht,FST_ERR_HOOK_NOT_SUPPORTED:dht,AVVIO_ERRORS_MAP:Afe,appendStackTrace:yfe}=Ci(),{kChildren:e1,kHooks:Efe,kRequestPayloadStream:xfe}=Gs();function t1(){this.onRequest=[],this.preParsing=[],this.preValidation=[],this.preSerialization=[],this.preHandler=[],this.onResponse=[],this.onSend=[],this.onError=[],this.onRoute=[],this.onRegister=[],this.onReady=[],this.onListen=[],this.onTimeout=[],this.onRequestAbort=[],this.preClose=[]}t1.prototype=Object.create(null);t1.prototype.validate=function(t,e){if(typeof t!="string")throw new cht;if(Array.isArray(this[t])===!1)throw new dht(t);if(typeof e!="function")throw new uht(t,Object.prototype.toString.call(e))};t1.prototype.add=function(t,e){this.validate(t,e),this[t].push(e)};function fht(t){let e=new t1;return e.onRequest=t.onRequest.slice(),e.preParsing=t.preParsing.slice(),e.preValidation=t.preValidation.slice(),e.preSerialization=t.preSerialization.slice(),e.preHandler=t.preHandler.slice(),e.onSend=t.onSend.slice(),e.onResponse=t.onResponse.slice(),e.onError=t.onError.slice(),e.onRoute=t.onRoute.slice(),e.onRegister=t.onRegister.slice(),e.onTimeout=t.onTimeout.slice(),e.onRequestAbort=t.onRequestAbort.slice(),e.onReady=[],e.onListen=[],e.preClose=[],e}function _fe(t,e,r,n){let s=r[Efe][t],i=0,a=0;c();function o(l){if(l){l.code==="AVV_ERR_READY_TIMEOUT"?l=yfe(l,new lht(t)):l=Afe[l.code]!=null?yfe(l,new Afe[l.code](l.message)):l,n(l);return}n()}function c(l){if(l){o(l);return}if(i===s.length&&a===r[e1].length){i===0&&a===0?o():e(function(f,p){o(f),p(f)});return}if(i===s.length&&a{"use strict";var _ht=require("node:http"),Sht=require("node:https"),vht=require("node:dns"),{FSTDEP011:Cfe}=od(),{kState:Ti,kOptions:Iht,kServerBindings:Cht}=Gs(),{onListenHookRunner:sR}=cp(),{FST_ERR_HTTP2_INVALID_VERSION:Tht,FST_ERR_REOPENED_CLOSE_SERVER:Rfe,FST_ERR_REOPENED_SERVER:Nfe,FST_ERR_LISTEN_OPTIONS_INVALID:wht}=Ci();V6.exports.createServer=Rht;V6.exports.compileValidateHTTPVersion=Oht;function Ofe(t){return`Server listening at ${t}`}function Rht(t,e){let r=kfe(t,e);function n(s,...i){let a=i.slice(-1).pop(),o=Object.prototype.toString.call(arguments[0]);if(arguments.length===0)s=K6([]);else if(arguments.length>0&&o!=="[object Object]"&&o!=="[object Function]")Cfe(),s=K6(Array.from(arguments)),a=s.cb;else if(i.length>1){Cfe();let u=s.path?[s.path]:[s.port??0,s.host??"localhost"];Object.assign(s,K6([...u,...i]))}else s.cb=a;if(s.signal){if(typeof s.signal.on!="function"&&typeof s.signal.addEventListener!="function")throw new wht("Invalid options.signal");if(s.signal.aborted)this.close();else{let u=()=>{this.close()};s.signal.addEventListener("abort",u,{once:!0})}}let c;if(s.path==null?c=s.host??"localhost":c=s.host,Object.prototype.hasOwnProperty.call(s,"host")===!1&&(s.host=c),c==="localhost"?s.cb=(u,l)=>{if(u){a(u,l);return}Tfe.call(this,r,e,t,s,()=>{this[Ti].listening=!0,a(null,l),sR(this)})}:s.cb=(u,l)=>{if(u){a(u,l);return}this[Ti].listening=!0,a(null,l),sR(this)},a===void 0)return Nht.call(this,r,s).then(l=>new Promise((d,f)=>{c==="localhost"?Tfe.call(this,r,e,t,s,()=>{this[Ti].listening=!0,d(l),sR(this)}):(d(l),sR(this))}));this.ready(Pfe.call(this,r,s))}return{server:r,listen:n}}function Tfe(t,e,r,n,s){this[Ti].listening=!1,vht.lookup(n.host,{all:!0},(i,a)=>{if(i){s();return}let o=t.listening&&r.serverFactory,c=0,u=0;if(!o){let d=t.address();for(let f of a)if(f.address!==d.address){c++;let p=Object.assign({},n,{host:f.address,port:d.port,cb:A=>{u++,A||this[Cht].push(m),u===c&&s()}}),m=kfe(r,e),h=()=>{m.close(()=>{}),r.forceCloseConnections==="idle"?m.closeIdleConnections():typeof m.closeAllConnections=="function"&&r.forceCloseConnections&&m.closeAllConnections()};m.on("upgrade",t.emit.bind(t,"upgrade")),t.on("unref",h),t.on("close",h),t.on("error",h),this[Ti].listening=!1,Pfe.call(this,m,p)()}}if(c===0){s();return}let l=t.unref;t.unref=function(){l.call(t),t.emit("unref")}})}function Pfe(t,e){let r=n=>{if(t.removeListener("error",r),n)this[Ti].listening=!1,e.cb(n,null);else{let s=Dfe.call(this,t,e.listenTextResolver||Ofe);e.cb(null,s)}};return n=>{if(n!=null)return e.cb(n);if(this[Ti].listening&&this[Ti].closing)return e.cb(new Rfe,null);if(this[Ti].listening)return e.cb(new Nfe,null);t.once("error",r),this[Ti].closing||(t.listen(e,r),this[Ti].listening=!0)}}function Nht(t,e){return this[Ti].listening&&this[Ti].closing?Promise.reject(new Rfe):this[Ti].listening?Promise.reject(new Nfe):this.ready().then(()=>{let r,n=new Promise((i,a)=>{r=o=>{this[Ti].listening=!1,a(o)},t.once("error",r)}),s=new Promise((i,a)=>{t.listen(e,()=>{t.removeListener("error",r),i(Dfe.call(this,t,e.listenTextResolver||Ofe))}),this[Ti].listening=!0});return Promise.race([n,s])})}function Oht(t){let e=!1,r=new Map;return t.serverFactory&&(e=!0),t.http2?(r.set("2.0",!0),t.https&&t.https.allowHTTP1===!0&&(r.set("1.1",!0),r.set("1.0",!0))):(r.set("1.1",!0),r.set("1.0",!0)),function(s){return e||r.has(s)}}function kfe(t,e){let r=null,n=t.https===!0?{}:t.https;return t.serverFactory?r=t.serverFactory(e,t):t.http2?(typeof n=="object"?r=wfe().createSecureServer(n,e):r=wfe().createServer(e),r.on("session",kht(t.http2SessionTimeout))):(n?r=Sht.createServer(n,e):r=_ht.createServer(t.http,e),r.keepAliveTimeout=t.keepAliveTimeout,r.requestTimeout=t.requestTimeout,t.maxRequestsPerSocket>0&&(r.maxRequestsPerSocket=t.maxRequestsPerSocket)),t.serverFactory||r.setTimeout(t.connectionTimeout),r}function K6(t){if(t.length===0)return{port:0,host:"localhost"};let r={cb:typeof t[t.length-1]=="function"?t.pop():void 0},n=t[0],s=t.length,i=t[s-1];return typeof n=="string"&&isNaN(n)?(r.path=n,r.backlog=s>1?i:void 0):(r.port=s>=1&&Number.isInteger(n)?n:Pht(n),r.host=s>=2&&t[1]?t[1]:"localhost",r.backlog=s>=3?t[2]:void 0),r}function Pht(t){let e=Number(t);return e>=0&&!Number.isNaN(e)&&Number.isInteger(e)?e:0}function Dfe(t,e){let r=t.address(),n=typeof r=="string";n||(r.address.indexOf(":")===-1?r=r.address+":"+r.port:r="["+r.address+"]:"+r.port),r=(n?"":"http"+(this[Iht].https?"s":"")+"://")+r;let s=e(r);return this.log.info(s),r}function wfe(){try{return require("node:http2")}catch{throw new Tht}}function kht(t){return function(e){e.setTimeout(t,Dht)}}function Dht(){this.close()}});var X6=E((NOr,Mfe)=>{"use strict";var{kSchemaHeaders:oR,kSchemaParams:z6,kSchemaQuerystring:Y6,kSchemaBody:J6,kSchemaResponse:Lfe}=Gs(),Bht=/^[1-5]{1}[0-9]{2}$|^[1-5]xx$|^default$/,{FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:Lht}=Ci(),{FSTWRN001:iR}=od();function Mht(t,e){if(!t.schema||!t.schema.response)return;let{method:r,url:n}=t.config||{};t[Lfe]=Object.keys(t.schema.response).reduce(function(s,i){let a=t.schema.response[i];if(i=i.toLowerCase(),!Bht.exec(i))throw new Lht;if(a.content){let o={};for(let c of Object.keys(a.content)){let u=a.content[c].schema;o[c]=e({schema:u,url:n,method:r,httpStatus:i,contentType:c})}s[i]=o}else s[i]=e({schema:a,url:n,method:r,httpStatus:i});return s},{})}function Wht(t,e,r){let{schema:n}=t;if(!n)return;let{method:s,url:i}=t.config||{},a=n.headers;if(a&&(r||Object.getPrototypeOf(a)!==Object.prototype))t[oR]=e({schema:a,method:s,url:i,httpPart:"headers"});else if(a){let o={};Object.keys(a).forEach(c=>{o[c]=a[c]}),o.required instanceof Array&&(o.required=o.required.map(c=>c.toLowerCase())),a.properties&&(o.properties={},Object.keys(a.properties).forEach(c=>{o.properties[c.toLowerCase()]=a.properties[c]})),t[oR]=e({schema:o,method:s,url:i,httpPart:"headers"})}else Object.prototype.hasOwnProperty.call(n,"headers")&&iR("headers",s,i);n.body?t[J6]=e({schema:n.body,method:s,url:i,httpPart:"body"}):Object.prototype.hasOwnProperty.call(n,"body")&&iR("body",s,i),n.querystring?t[Y6]=e({schema:n.querystring,method:s,url:i,httpPart:"querystring"}):Object.prototype.hasOwnProperty.call(n,"querystring")&&iR("querystring",s,i),n.params?t[z6]=e({schema:n.params,method:s,url:i,httpPart:"params"}):Object.prototype.hasOwnProperty.call(n,"params")&&iR("params",s,i)}function aR(t,e,r){let n=e[r]===void 0,s=t&&t(n?null:e[r]);if(s?.then)return s.then(a=>i(a)).catch(a=>a);return i(s);function i(a){return a===!1?t.errors:a&&a.error?a.error:(a&&a.value&&(e[r]=a.value),!1)}}function cR(t,e,r){let n=r===void 0;if(n||!r.skipParams){let i=aR(t[z6],e,"params");if(i)return typeof i.then!="function"?up(i,"params",t.schemaErrorFormatter):$ht(i,t,e)}if(n||!r.skipBody){let i=aR(t[J6],e,"body");if(i)return typeof i.then!="function"?up(i,"body",t.schemaErrorFormatter):Fht(i,t,e)}if(n||!r.skipQuery){let i=aR(t[Y6],e,"query");if(i)return typeof i.then!="function"?up(i,"querystring",t.schemaErrorFormatter):Uht(i,t,e)}let s=aR(t[oR],e,"headers");return s?typeof s.then!="function"?up(s,"headers",t.schemaErrorFormatter):qht(s,t,e):!1}function $ht(t,e,r){return t.then(n=>n?up(n,"params",e.schemaErrorFormatter):cR(e,r,{skipParams:!0}))}function Fht(t,e,r){return t.then(n=>n?up(n,"body",e.schemaErrorFormatter):cR(e,r,{skipParams:!0,skipBody:!0}))}function Uht(t,e,r){return t.then(n=>n?up(n,"querystring",e.schemaErrorFormatter):cR(e,r,{skipParams:!0,skipBody:!0,skipQuery:!0}))}function qht(t,e,r){return t.then(n=>n?up(n,"headers",e.schemaErrorFormatter):!1)}function up(t,e,r){if(t instanceof Error)return t.statusCode=t.statusCode||400,t.code=t.code||"FST_ERR_VALIDATION",t.validationContext=t.validationContext||e,t;let n=r(t,e);return n.statusCode=n.statusCode||400,n.code=n.code||"FST_ERR_VALIDATION",n.validation=t,n.validationContext=e,n}Mfe.exports={symbols:{bodySchema:J6,querystringSchema:Y6,responseSchema:Lfe,paramsSchema:z6,headersSchema:oR},compileSchemasForValidation:Wht,compileSchemasForSerialization:Mht,validate:cR}});var Z6=E((OOr,$fe)=>{"use strict";var{kReplyIsError:Wfe,kReplyHijacked:jht}=Gs();function Hht(t,e){t.then(function(r){if(e[jht]!==!0&&(r!==void 0||e.sent===!1&&e.raw.headersSent===!1&&e.request.raw.aborted===!1))try{e.send(r)}catch(n){e[Wfe]=!0,e.send(n)}},function(r){if(e.sent===!0){e.log.error({err:r},"Promise errored, but reply.sent = true was set");return}e[Wfe]=!0;try{e.send(r)}catch(n){e.send(n)}})}$fe.exports=Hht});var n5=E((POr,r5)=>{"use strict";var{validate:Qht}=X6(),{preValidationHookRunner:Ght,preHandlerHookRunner:Kht}=cp(),Vht=Z6(),{kReplyIsError:uR,kRouteContext:dp}=Gs();function zht(t,e,r){if(r.sent===!0)return;if(t!=null){r[uR]=!0,r.send(t);return}let n=e.raw.method,s=e.headers,i=e[dp];if(n==="GET"||n==="HEAD"){lp(e,r);return}let a=s["content-type"];if(n==="POST"||n==="PUT"||n==="PATCH"||n==="TRACE"||n==="SEARCH"){a===void 0?s["transfer-encoding"]===void 0&&(s["content-length"]==="0"||s["content-length"]===void 0)?lp(e,r):i.contentTypeParser.run("",lp,e,r):i.contentTypeParser.run(a,lp,e,r);return}if(n==="OPTIONS"||n==="DELETE"){a!==void 0&&(s["transfer-encoding"]!==void 0||s["content-length"]!==void 0)?i.contentTypeParser.run(a,lp,e,r):lp(e,r);return}lp(e,r)}function lp(t,e){try{t[dp].preValidation!==null?Ght(t[dp].preValidation,t,e,e5):e5(null,t,e)}catch(r){e5(r,t,e)}}function e5(t,e,r){if(r.sent===!0)return;if(t!=null){r[uR]=!0,r.send(t);return}let n=Qht(r[dp],e);if(n&&typeof n.then=="function"||!1){let i=Ffe.bind(null,e,r);n.then(i,i)}else Ffe(e,r,n)}function Ffe(t,e,r){if(r){if(e[dp].attachValidation===!1){e.send(r);return}e.request.validationError=r}t[dp].preHandler!==null?Kht(t[dp].preHandler,t,e,t5):t5(null,t,e)}function t5(t,e,r){if(r.sent)return;if(t!=null){r[uR]=!0,r.send(t);return}let n;try{n=e[dp].handler(e,r)}catch(s){r[uR]=!0,r.send(s);return}n!==void 0&&(n!==null&&typeof n.then=="function"?Vht(n,r):r.send(n))}r5.exports=zht;r5.exports[Symbol.for("internals")]={handler:lp,preHandlerCallback:t5}});var qfe=E((kOr,Ufe)=>{"use strict";function WA(){}var Yht={fatal:WA,error:WA,warn:WA,info:WA,debug:WA,trace:WA};Object.defineProperty(Ufe,"exports",{get(){return Object.create(Yht)}})});var i5=E((DOr,Qfe)=>{"use strict";var n1=t=>t&&typeof t.message=="string",s5=t=>{if(!t)return;let e=t.cause;if(typeof e=="function"){let r=t.cause();return n1(r)?r:void 0}else return n1(e)?e:void 0},jfe=(t,e)=>{if(!n1(t))return"";let r=t.stack||"";if(e.has(t))return r+` -causes have become circular...`;let n=s5(t);return n?(e.add(t),r+` -caused by: `+jfe(n,e)):r},Jht=t=>jfe(t,new Set),Hfe=(t,e,r)=>{if(!n1(t))return"";let n=r?"":t.message||"";if(e.has(t))return n+": ...";let s=s5(t);if(s){e.add(t);let i=typeof t.cause=="function";return n+(i?"":": ")+Hfe(s,e,i)}else return n},Xht=t=>Hfe(t,new Set);Qfe.exports={isErrorLike:n1,getErrorCause:s5,stackWithCauses:Jht,messageWithCauses:Xht}});var a5=E((BOr,Kfe)=>{"use strict";var Zht=Symbol("circular-ref-tag"),lR=Symbol("pino-raw-err-ref"),Gfe=Object.create({},{type:{enumerable:!0,writable:!0,value:void 0},message:{enumerable:!0,writable:!0,value:void 0},stack:{enumerable:!0,writable:!0,value:void 0},aggregateErrors:{enumerable:!0,writable:!0,value:void 0},raw:{enumerable:!1,get:function(){return this[lR]},set:function(t){this[lR]=t}}});Object.defineProperty(Gfe,lR,{writable:!0,value:{}});Kfe.exports={pinoErrProto:Gfe,pinoErrorSymbols:{seen:Zht,rawSymbol:lR}}});var Yfe=E((LOr,zfe)=>{"use strict";zfe.exports=c5;var{messageWithCauses:egt,stackWithCauses:tgt,isErrorLike:Vfe}=i5(),{pinoErrProto:rgt,pinoErrorSymbols:ngt}=a5(),{seen:o5}=ngt,{toString:sgt}=Object.prototype;function c5(t){if(!Vfe(t))return t;t[o5]=void 0;let e=Object.create(rgt);e.type=sgt.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=egt(t),e.stack=tgt(t),Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>c5(r)));for(let r in t)if(e[r]===void 0){let n=t[r];Vfe(n)?r!=="cause"&&!Object.prototype.hasOwnProperty.call(n,o5)&&(e[r]=c5(n)):e[r]=n}return delete t[o5],e.raw=t,e}});var Xfe=E((MOr,Jfe)=>{"use strict";Jfe.exports=fR;var{isErrorLike:u5}=i5(),{pinoErrProto:igt,pinoErrorSymbols:agt}=a5(),{seen:dR}=agt,{toString:ogt}=Object.prototype;function fR(t){if(!u5(t))return t;t[dR]=void 0;let e=Object.create(igt);e.type=ogt.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=t.message,e.stack=t.stack,Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>fR(r))),u5(t.cause)&&!Object.prototype.hasOwnProperty.call(t.cause,dR)&&(e.cause=fR(t.cause));for(let r in t)if(e[r]===void 0){let n=t[r];u5(n)?Object.prototype.hasOwnProperty.call(n,dR)||(e[r]=fR(n)):e[r]=n}return delete t[dR],e.raw=t,e}});var rpe=E((WOr,tpe)=>{"use strict";tpe.exports={mapHttpRequest:cgt,reqSerializer:epe};var l5=Symbol("pino-raw-req-ref"),Zfe=Object.create({},{id:{enumerable:!0,writable:!0,value:""},method:{enumerable:!0,writable:!0,value:""},url:{enumerable:!0,writable:!0,value:""},query:{enumerable:!0,writable:!0,value:""},params:{enumerable:!0,writable:!0,value:""},headers:{enumerable:!0,writable:!0,value:{}},remoteAddress:{enumerable:!0,writable:!0,value:""},remotePort:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[l5]},set:function(t){this[l5]=t}}});Object.defineProperty(Zfe,l5,{writable:!0,value:{}});function epe(t){let e=t.info||t.socket,r=Object.create(Zfe);if(r.id=typeof t.id=="function"?t.id():t.id||(t.info?t.info.id:void 0),r.method=t.method,t.originalUrl)r.url=t.originalUrl;else{let n=t.path;r.url=typeof n=="string"?n:t.url?t.url.path||t.url:void 0}return t.query&&(r.query=t.query),t.params&&(r.params=t.params),r.headers=t.headers,r.remoteAddress=e&&e.remoteAddress,r.remotePort=e&&e.remotePort,r.raw=t.raw||t,r}function cgt(t){return{req:epe(t)}}});var ape=E(($Or,ipe)=>{"use strict";ipe.exports={mapHttpResponse:ugt,resSerializer:spe};var d5=Symbol("pino-raw-res-ref"),npe=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[d5]},set:function(t){this[d5]=t}}});Object.defineProperty(npe,d5,{writable:!0,value:{}});function spe(t){let e=Object.create(npe);return e.statusCode=t.headersSent?t.statusCode:null,e.headers=t.getHeaders?t.getHeaders():t._headers,e.raw=t,e}function ugt(t){return{res:spe(t)}}});var p5=E((FOr,ope)=>{"use strict";var f5=Yfe(),lgt=Xfe(),pR=rpe(),mR=ape();ope.exports={err:f5,errWithCause:lgt,mapHttpRequest:pR.mapHttpRequest,mapHttpResponse:mR.mapHttpResponse,req:pR.reqSerializer,res:mR.resSerializer,wrapErrorSerializer:function(e){return e===f5?e:function(n){return e(f5(n))}},wrapRequestSerializer:function(e){return e===pR.reqSerializer?e:function(n){return e(pR.reqSerializer(n))}},wrapResponseSerializer:function(e){return e===mR.resSerializer?e:function(n){return e(mR.resSerializer(n))}}}});var m5=E((UOr,cpe)=>{"use strict";function dgt(t,e){return e}cpe.exports=function(){let e=Error.prepareStackTrace;Error.prepareStackTrace=dgt;let r=new Error().stack;if(Error.prepareStackTrace=e,!Array.isArray(r))return;let n=r.slice(2),s=[];for(let i of n)i&&s.push(i.getFileName());return s}});var lpe=E((qOr,upe)=>{"use strict";upe.exports=fgt;function fgt(t={}){let{ERR_PATHS_MUST_BE_STRINGS:e=()=>"fast-redact - Paths must be (non-empty) strings",ERR_INVALID_PATH:r=n=>`fast-redact \u2013 Invalid path (${n})`}=t;return function({paths:s}){s.forEach(i=>{if(typeof i!="string")throw Error(e());try{if(/〇/.test(i))throw Error();let a=(i[0]==="["?"":".")+i.replace(/^\*/,"\u3007").replace(/\.\*/g,".\u3007").replace(/\[\*\]/g,"[\u3007]");if(/\n|\r|;/.test(a)||/\/\*/.test(a))throw Error();Function(` +var H0t=Object.create;var J2=Object.defineProperty;var Q0t=Object.getOwnPropertyDescriptor;var G0t=Object.getOwnPropertyNames;var V0t=Object.getPrototypeOf,z0t=Object.prototype.hasOwnProperty;var dr=(t,e)=>()=>(t&&(e=t(t=0)),e);var E=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),is=(t,e)=>{for(var r in e)J2(t,r,{get:e[r],enumerable:!0})},Ode=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of G0t(e))!z0t.call(t,s)&&s!==r&&J2(t,s,{get:()=>e[s],enumerable:!(n=Q0t(e,s))||n.enumerable});return t};var Re=(t,e,r)=>(r=t!=null?H0t(V0t(t)):{},Ode(e||!t||!t.__esModule?J2(r,"default",{value:t,enumerable:!0}):r,t)),K0t=t=>Ode(J2({},"__esModule",{value:!0}),t);var Dde=E((mOr,Pde)=>{"use strict";function Y0t(t){var e=new t,r=e;function n(){var i=e;return i.next?e=i.next:(e=new t,r=e),i.next=null,i}function s(i){r.next=i,r=i}return{get:n,release:s}}Pde.exports=Y0t});var Lde=E((hOr,L6)=>{"use strict";var J0t=Dde();function kde(t,e,r){if(typeof t=="function"&&(r=e,e=t,t=null),!(r>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");var n=J0t(X0t),s=null,i=null,a=0,o=null,c={push:h,drain:Na,saturated:Na,pause:l,paused:!1,get concurrency(){return r},set concurrency(C){if(!(C>=1))throw new Error("fastqueue concurrency must be equal to or greater than 1");if(r=C,!c.paused)for(;s&&a=r||c.paused?i?(i.next=w,i=w):(s=w,i=w,c.saturated()):(a++,e.call(t,w.value,w.worked))}function A(C,R){var w=n.get();w.context=t,w.release=g,w.value=C,w.callback=R||Na,w.errorHandler=o,a>=r||c.paused?s?(w.next=s,s=w):(s=w,i=w,c.saturated()):(a++,e.call(t,w.value,w.worked))}function g(C){C&&n.release(C);var R=s;R&&a<=r?c.paused?a--:(i===s&&(i=null),s=R.next,R.next=null,e.call(t,R.value,R.worked),i===null&&c.empty()):--a===0&&c.drain()}function b(){s=null,i=null,c.drain=Na}function y(){s=null,i=null,c.drain(),c.drain=Na}function x(){var C=s;for(s=null,i=null;C;){var R=C.next,w=C.callback,N=C.errorHandler,P=C.value,L=C.context;C.value=null,C.callback=Na,C.errorHandler=null,N&&N(new Error("abort"),P),w.call(L,new Error("abort")),C.release(C),C=R}c.drain=Na}function v(C){o=C}}function Na(){}function X0t(){this.value=null,this.callback=Na,this.next=null,this.release=Na,this.context=null,this.errorHandler=null;var t=this;this.worked=function(r,n){var s=t.callback,i=t.errorHandler,a=t.value;t.value=null,t.callback=Na,t.errorHandler&&i(r,a),s.call(t.context,r,n),t.release(t)}}function Z0t(t,e,r){typeof t=="function"&&(r=e,e=t,t=null);function n(l,d){e.call(this,l).then(function(f){d(null,f)},d)}var s=kde(t,n,r),i=s.push,a=s.unshift;return s.push=o,s.unshift=c,s.drained=u,s;function o(l){var d=new Promise(function(f,p){i(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch(Na),d}function c(l){var d=new Promise(function(f,p){a(l,function(m,h){if(m){p(m);return}f(h)})});return d.catch(Na),d}function u(){var l=new Promise(function(d){process.nextTick(function(){if(s.idle())d();else{var f=s.drain;s.drain=function(){typeof f=="function"&&f(),d(),s.drain=f}}})});return l}}L6.exports=kde;L6.exports.promise=Z0t});var M6=E((gOr,X2)=>{"use strict";var{format:emt}=require("node:util");function tmt(){return`${this.name} [${this.code}]: ${this.message}`}function B6(t,e,r=500,n=Error){if(!t)throw new Error("Fastify error code must not be empty");if(!e)throw new Error("Fastify error message must not be empty");t=t.toUpperCase(),!r&&(r=void 0);function s(...i){if(!new.target)return new s(...i);this.code=t,this.name="FastifyError",this.statusCode=r;let a=i.length-1;a!==-1&&i[a]&&typeof i[a]=="object"&&"cause"in i[a]&&(this.cause=i.pop().cause),this.message=emt(e,...i),Error.stackTraceLimit!==0&&Error.captureStackTrace(this,s)}return s.prototype=Object.create(n.prototype,{constructor:{value:s,enumerable:!1,writable:!0,configurable:!0}}),s.prototype[Symbol.toStringTag]="Error",s.prototype.toString=tmt,s}X2.exports=B6;X2.exports.default=B6;X2.exports.createError=B6});var Z2=E((AOr,Bde)=>{"use strict";var{createError:cp}=M6();Bde.exports={AVV_ERR_EXPOSE_ALREADY_DEFINED:cp("AVV_ERR_EXPOSE_ALREADY_DEFINED","'%s' is already defined, specify an expose option for '%s'"),AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:cp("AVV_ERR_ATTRIBUTE_ALREADY_DEFINED","'%s' is already defined"),AVV_ERR_CALLBACK_NOT_FN:cp("AVV_ERR_CALLBACK_NOT_FN","Callback for '%s' hook is not a function. Received: '%s'"),AVV_ERR_PLUGIN_NOT_VALID:cp("AVV_ERR_PLUGIN_NOT_VALID","Plugin must be a function or a promise. Received: '%s'"),AVV_ERR_ROOT_PLG_BOOTED:cp("AVV_ERR_ROOT_PLG_BOOTED","Root plugin has already booted"),AVV_ERR_PARENT_PLG_LOADED:cp("AVV_ERR_PARENT_PLG_LOADED","Impossible to load '%s' plugin because the parent '%s' was already loaded"),AVV_ERR_READY_TIMEOUT:cp("AVV_ERR_READY_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise"),AVV_ERR_PLUGIN_EXEC_TIMEOUT:cp("AVV_ERR_PLUGIN_EXEC_TIMEOUT","Plugin did not start in time: '%s'. You may have forgotten to call 'done' function or to resolve a Promise")}});var PA=E((yOr,Mde)=>{"use strict";var rmt=Symbol("avvio.Boot"),nmt=Symbol("isOnCloseHandler"),smt=Symbol("avvio.ThenifyDoNotWrap"),imt=Symbol("avvio.TimeTree.untrackNode"),amt=Symbol("avvio.TimeTree.trackNode"),omt=Symbol("avvio.TimeTree.getParent"),cmt=Symbol("avvio.TimeTree.getNode"),umt=Symbol("avvio.TimeTree.addNode"),lmt=Symbol.for("plugin-meta");Mde.exports={kAvvio:rmt,kIsOnCloseHandler:nmt,kThenifyDoNotWrap:smt,kUntrackNode:imt,kTrackNode:amt,kGetParent:omt,kGetNode:cmt,kAddNode:umt,kPluginMeta:lmt}});var Hde=E((xOr,jde)=>{"use strict";var{kUntrackNode:Wde,kTrackNode:W6,kGetParent:$de,kGetNode:Fde,kAddNode:Ude}=PA(),$6=class{constructor(){this.root=null,this.tableId=new Map,this.tableLabel=new Map}[W6](e){this.tableId.set(e.id,e),this.tableLabel.has(e.label)?this.tableLabel.get(e.label).push(e):this.tableLabel.set(e.label,[e])}[Wde](e){this.tableId.delete(e.id);let r=this.tableLabel.get(e.label);r.pop(),r.length===0&&this.tableLabel.delete(e.label)}[$de](e){if(e===null)return null;if(this.tableLabel.has(e)){let r=this.tableLabel.get(e);return r[r.length-1]}else return null}[Fde](e){return this.tableId.get(e)}[Ude](e,r,n){let s=this[$de](e);if(s===null)return this.root={parent:null,id:"root",label:r,nodes:[],start:n,stop:null,diff:-1},this[W6](this.root),this.root.id;let a=`${r}-${Math.random()}`,o={parent:e,id:a,label:r,nodes:[],start:n,stop:null,diff:-1};return s.nodes.push(o),this[W6](o),a}start(e,r,n=Date.now()){return this[Ude](e,r,n)}stop(e,r=Date.now()){let n=this[Fde](e);n&&(n.stop=r,n.diff=n.stop-n.start||0,this[Wde](n))}toJSON(){return Object.assign({},this.root)}prettyPrint(){return qde(this.toJSON())}};function qde(t,e=""){let r=e,n=t.nodes.length,s=n-1;r+=`${t.label} ${t.diff} ms +`;for(let i=0;i{"use strict";var{debuglog:dmt}=require("node:util"),fmt=dmt("avvio");Qde.exports={debug:fmt}});var Vde=E((EOr,Gde)=>{"use strict";function pmt(){let t={resolve:null,reject:null,promise:null};return t.promise=new Promise((e,r)=>{t.resolve=e,t.reject=r}),t}Gde.exports={createPromise:pmt}});var Kde=E((_Or,zde)=>{"use strict";var{kPluginMeta:F6}=PA();function mmt(t,e){return t[F6]&&t[F6].name?t[F6].name:e&&e.name?e.name:t.name?t.name:t.toString().split(` +`).slice(0,2).map(r=>r.trim()).join(" -- ")}zde.exports={getPluginName:mmt}});var tR=E((SOr,Yde)=>{"use strict";function hmt(t){return t!==null&&typeof t=="object"&&typeof t.then=="function"}Yde.exports={isPromiseLike:hmt}});var Xde=E((vOr,Jde)=>{"use strict";var{EventEmitter:gmt}=require("node:events"),{inherits:Amt}=require("node:util"),{debug:ci}=eR(),{createPromise:ymt}=Vde(),{AVV_ERR_PLUGIN_EXEC_TIMEOUT:xmt}=Z2(),{getPluginName:bmt}=Kde(),{isPromiseLike:Emt}=tR();function DA(t,e,r,n,s){this.queue=t,this.func=e,this.options=r,this.isAfter=n,this.timeout=s,this.started=!1,this.name=bmt(e,r),this.queue.pause(),this._error=null,this.loaded=!1,this._promise=null,this.startTime=null}Amt(DA,gmt);DA.prototype.exec=function(t,e){ci("exec",this.name),this.server=t;let r=this.func,n=this.name,s=!1;this.options=typeof this.options=="function"?this.options(this.server):this.options;let i=null,a=c=>{if(s){ci("loading complete",n);return}this._error=c,ci(c?"exec errored":"exec completed",n),s=!0,i&&clearTimeout(i),e(c)};this.timeout>0&&(ci("setting up timeout",n,this.timeout),i=setTimeout(function(){ci("timed out",n),i=null;let c=new xmt(n);c.fn=r,a(c)},this.timeout)),this.started=!0,this.startTime=Date.now(),this.emit("start",this.server?this.server.name:null,this.name,Date.now());let o=r(this.server,this.options,a);Emt(o)&&(ci("exec: resolving promise",n),o.then(()=>process.nextTick(a),c=>process.nextTick(a,c)))};DA.prototype.loadedSoFar=function(){if(ci("loadedSoFar",this.name),this.loaded)return Promise.resolve();let t=()=>{this.server.after((r,n)=>{this._error=r,this.queue.pause(),this._promise&&(r?(ci("rejecting promise",this.name,r),this._promise.reject(r)):(ci("resolving promise",this.name),this._promise.resolve()),this._promise=null),process.nextTick(n,r)}),this.queue.resume()},e;return this._promise?e=Promise.resolve():(this._promise=ymt(),e=this._promise.promise,this.server?t():this.on("start",t)),e};DA.prototype.enqueue=function(t,e){ci("enqueue",this.name,t.name),this.emit("enqueue",this.server?this.server.name:null,this.name,Date.now()),this.queue.push(t,e)};DA.prototype.finish=function(t,e){ci("finish",this.name,t);let r=()=>{this.loaded||(ci("loaded",this.name),this.emit("loaded",this.server?this.server.name:null,this.name,Date.now()),this.loaded=!0,e(t))};if(t){this._promise&&(this._promise.reject(t),this._promise=null),r();return}let n=()=>{if(ci("check",this.name,this.queue.length(),this.queue.running(),this._promise),this.queue.length()===0&&this.queue.running()===0)if(this._promise){let s=()=>{ci("wrap"),queueMicrotask(n)};this._promise.resolve(),this._promise.promise.then(s,s),this._promise=null}else r();else ci("delayed",this.name),this.queue.drain=()=>{ci("drain",this.name),this.queue.drain=_mt,queueMicrotask(n)}};queueMicrotask(n),this.queue.resume()};function _mt(){}Jde.exports={Plugin:DA}});var efe=E((COr,Zde)=>{"use strict";var{AVV_ERR_PLUGIN_NOT_VALID:U6}=Z2();function Smt(t){if(!(t&&(typeof t=="function"||typeof t.then=="function")))throw Array.isArray(t)?new U6("array"):t===null?new U6("null"):new U6(typeof t)}Zde.exports={validatePlugin:Smt}});var rfe=E((IOr,tfe)=>{"use strict";function vmt(t){return t!==null&&typeof t=="object"&&typeof t.default=="function"}tfe.exports={isBundledOrTypescriptPlugin:vmt}});var ife=E((TOr,sfe)=>{"use strict";var{debug:nfe}=eR(),{kThenifyDoNotWrap:q6}=PA();function Cmt(){if(this.booted){nfe("thenify returning undefined because we are already booted");return}if(this[q6]){this[q6]=!1;return}return nfe("thenify"),(t,e)=>this._loadRegistered().then(()=>(this[q6]=!0,t(this._server)),e)}sfe.exports={thenify:Cmt}});var ofe=E((wOr,afe)=>{"use strict";var{isPromiseLike:Imt}=tR(),{kAvvio:Tmt}=PA();function wmt(t,e,r){let n=t.apply(t,e);Imt(n)&&!n[Tmt]?n.then(()=>process.nextTick(r),s=>process.nextTick(r,s)):r&&process.nextTick(r)}afe.exports={executeWithThenable:wmt}});var hfe=E((ROr,H6)=>{"use strict";var rR=Lde(),Rmt=require("node:events").EventEmitter,Nmt=require("node:util").inherits,{AVV_ERR_EXPOSE_ALREADY_DEFINED:e1,AVV_ERR_CALLBACK_NOT_FN:kA,AVV_ERR_ROOT_PLG_BOOTED:Omt,AVV_ERR_READY_TIMEOUT:Pmt,AVV_ERR_ATTRIBUTE_ALREADY_DEFINED:Dmt}=Z2(),{kAvvio:lfe,kIsOnCloseHandler:dfe}=PA(),{TimeTree:kmt}=Hde(),{Plugin:ffe}=Xde(),{debug:LA}=eR(),{validatePlugin:Lmt}=efe(),{isBundledOrTypescriptPlugin:Bmt}=rfe(),{isPromiseLike:Mmt}=tR(),{thenify:pfe}=ife(),{executeWithThenable:cfe}=ofe();function as(t,e,r){if(typeof t=="function"&&arguments.length===1&&(r=t,e={},t=null),typeof e=="function"&&(r=e,e={}),e=e||{},e.autostart=e.autostart!==!1,e.timeout=Number(e.timeout)||0,e.expose=e.expose||{},!new.target)return new as(t,e,r);this._server=t||this,this._opts=e,t&&this._expose(),this._current=[],this._error=null,this._lastUsed=null,this.setMaxListeners(0),r&&this.once("start",r),this.started=!1,this.booted=!1,this.pluginTree=new kmt,this._readyQ=rR(this,mfe,1),this._readyQ.pause(),this._readyQ.drain=()=>{this.emit("start"),this._readyQ.drain=ufe},this._closeQ=rR(this,$mt,1),this._closeQ.pause(),this._closeQ.drain=()=>{this.emit("close"),this._closeQ.drain=ufe},this._doStart=null;let n=this;this._root=new ffe(rR(this,this._loadPluginNextTick,1),function(i,a,o){n._doStart=o,a.autostart&&n.start()},e,!1,0),this._trackPluginLoading(this._root),this._loadPlugin(this._root,s=>{LA("root plugin ready");try{this.emit("preReady"),this._root=null}catch(i){s=s||this._error||i}if(s){if(this._error=s,this._readyQ.length()===0)throw s}else this.booted=!0;this._readyQ.resume()})}Nmt(as,Rmt);as.prototype.start=function(){return this.started=!0,process.nextTick(this._doStart),this};as.prototype.override=function(t,e,r){return t};as.prototype[lfe]=!0;as.prototype.use=function(t,e){return this._lastUsed=this._addPlugin(t,e,!1),this};as.prototype._loadRegistered=function(){let t=this._current[0];return!this.started&&!this.booted&&process.nextTick(()=>this._root.queue.resume()),t?t.loadedSoFar():Promise.resolve()};Object.defineProperty(as.prototype,"then",{get:pfe});as.prototype._addPlugin=function(t,e,r){if(Bmt(t)&&(t=t.default),Lmt(t),e=e||{},this.booted)throw new Omt;let n=this._current[0],s=this._opts.timeout;if(!n.loaded&&n.timeout>0){let a=Date.now()-n.startTime;s=n.timeout-(a+3)}let i=new ffe(rR(this,this._loadPluginNextTick,1),t,e,r,s);if(this._trackPluginLoading(i),n.loaded)throw new Error(i.name,n.name);return n.enqueue(i,a=>{a&&(this._error=a)}),i};as.prototype._expose=function(){let e=this,r=e._server,{use:n="use",after:s="after",ready:i="ready",onClose:a="onClose",close:o="close"}=this._opts.expose;if(r[n])throw new e1(n,"use");if(r[n]=function(c,u){return e.use(c,u),this},r[s])throw new e1(s,"after");if(r[s]=function(c){return typeof c!="function"?e._loadRegistered():(e.after(j6(c,this)),this)},r[i])throw new e1(i,"ready");if(r[i]=function(c){if(c&&typeof c!="function")throw new kA(i,typeof c);return e.ready(c?j6(c,this):void 0)},r[a])throw new e1(a,"onClose");if(r[a]=function(c){if(typeof c!="function")throw new kA(a,typeof c);return e.onClose(Fmt(c,this)),this},r[o])throw new e1(o,"close");if(r[o]=function(c){if(c&&typeof c!="function")throw new kA(o,typeof c);return c?(e.close(j6(c,this)),this):e.close()},r.then)throw new Dmt("then");Object.defineProperty(r,"then",{get:pfe.bind(e)}),r[lfe]=!0};as.prototype.after=function(t){if(!t)return this._loadRegistered();this._addPlugin(e.bind(this),{},!0);function e(r,n,s){mfe.call(this,t,s)}return this};as.prototype.onClose=function(t){if(typeof t!="function")throw new kA("onClose",typeof t);return t[dfe]=!0,this._closeQ.unshift(t,e=>{e&&(this._error=e)}),this};as.prototype.close=function(t){let e;if(t){if(typeof t!="function")throw new kA("close",typeof t)}else e=new Promise(function(r,n){t=function(s){if(s)return n(s);r()}});return this.ready(()=>{this._error=null,this._closeQ.push(t),process.nextTick(this._closeQ.resume.bind(this._closeQ))}),e};as.prototype.ready=function(t){if(t){if(typeof t!="function")throw new kA("ready",typeof t);this._readyQ.push(t),queueMicrotask(this.start.bind(this));return}return new Promise((e,r)=>{this._readyQ.push(s),this.start();let n=this._current[0].server;function s(i,a,o){i?r(i):e(n),process.nextTick(o)}})};as.prototype._trackPluginLoading=function(t){let e=this._current[0]?.name||null;t.once("start",(r,n,s)=>{let i=this.pluginTree.start(e||null,n,s);t.once("loaded",(a,o,c)=>{this.pluginTree.stop(i,c)})})};as.prototype.prettyPrint=function(){return this.pluginTree.prettyPrint()};as.prototype.toJSON=function(){return this.pluginTree.toJSON()};as.prototype._loadPlugin=function(t,e){let r=this;if(Mmt(t.func)){t.func.then(a=>{typeof a.default=="function"&&(a=a.default),t.func=a,this._loadPlugin(t,e)},e);return}let n=r._current[0];if(r._current.unshift(t),r._error&&!t.isAfter){LA("skipping loading of plugin as instance errored and it is not an after",t.name),process.nextTick(i);return}let s=n&&n.server||r._server;if(!t.isAfter)try{s=r.override(s,t.func,t.options)}catch(a){return LA("override errored",t.name),i(a)}t.exec(s,i);function i(a){t.finish(a,o=>{r._current.shift(),e(o)})}};as.prototype._loadPluginNextTick=function(t,e){process.nextTick(this._loadPlugin.bind(this),t,e)};function ufe(){}function mfe(t,e){let r=this._server,n=this._error;if(this._error=null,t.length===0)this._error=n,cfe(t,[],e);else if(t.length===1)cfe(t,[n],e);else if(this._opts.timeout===0){let s=i=>{this._error=i,e(this._error)};t.length===2?t(n,s):t(n,r,s)}else Wmt.call(this,t,n,r,e)}function Wmt(t,e,r,n){let s=t.unwrappedName??t.name;LA("setting up ready timeout",s,this._opts.timeout);let i=setTimeout(()=>{LA("timed out",s),i=null;let o=new Pmt(s);o.fn=t,this._error=o,n(o)},this._opts.timeout);t.length===2?t(e,a.bind(this)):t(e,r,a.bind(this));function a(o){i&&(clearTimeout(i),this._error=o,n(this._error))}}function $mt(t,e){let r=this._server,n=t[dfe];if(t.length===0||t.length===1){let s;n?s=t(r):s=t(this._error),s&&typeof s.then=="function"?(LA("resolving close/onClose promise"),s.then(()=>process.nextTick(e),i=>process.nextTick(e,i))):process.nextTick(e)}else t.length===2?t(n?r:this._error,e):n?t(r,e):t(this._error,r,e)}function Fmt(t,e){return r.bind(e);function r(n,s){let i;t.length===0?(i=t(),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t.length===1?(i=t(this),i&&i.then?i.then(function(){process.nextTick(s)},s):process.nextTick(s)):t(this,s)}}function j6(t,e){let r=n.bind(e);return r.unwrappedName=t.name,r;function n(s,i){let a;t?t.length===0?(a=t(),a&&a.then?a.then(function(){process.nextTick(i,s)},i):process.nextTick(i,s)):t.length===1?(a=t(s),a&&a.then?a.then(function(){process.nextTick(i)},i):process.nextTick(i)):t.length===2?t(s,i):t(s,this,i):process.nextTick(i)}}H6.exports=as;H6.exports.express=function(t){return as(t,{expose:{use:"load"}})}});var Qs=E((NOr,gfe)=>{"use strict";var Umt={kAvvioBoot:Symbol("fastify.avvioBoot"),kChildren:Symbol("fastify.children"),kServerBindings:Symbol("fastify.serverBindings"),kBodyLimit:Symbol("fastify.bodyLimit"),kRoutePrefix:Symbol("fastify.routePrefix"),kLogLevel:Symbol("fastify.logLevel"),kLogSerializers:Symbol("fastify.logSerializers"),kHooks:Symbol("fastify.hooks"),kContentTypeParser:Symbol("fastify.contentTypeParser"),kState:Symbol("fastify.state"),kOptions:Symbol("fastify.options"),kDisableRequestLogging:Symbol("fastify.disableRequestLogging"),kPluginNameChain:Symbol("fastify.pluginNameChain"),kRouteContext:Symbol("fastify.context"),kPublicRouteContext:Symbol("fastify.routeOptions"),kGenReqId:Symbol("fastify.genReqId"),kSchemaController:Symbol("fastify.schemaController"),kSchemaHeaders:Symbol("headers-schema"),kSchemaParams:Symbol("params-schema"),kSchemaQuerystring:Symbol("querystring-schema"),kSchemaBody:Symbol("body-schema"),kSchemaResponse:Symbol("response-schema"),kSchemaErrorFormatter:Symbol("fastify.schemaErrorFormatter"),kSchemaVisited:Symbol("fastify.schemas.visited"),kRequest:Symbol("fastify.Request"),kRequestPayloadStream:Symbol("fastify.RequestPayloadStream"),kRequestAcceptVersion:Symbol("fastify.RequestAcceptVersion"),kRequestCacheValidateFns:Symbol("fastify.request.cache.validateFns"),kRequestOriginalUrl:Symbol("fastify.request.originalUrl"),kFourOhFour:Symbol("fastify.404"),kCanSetNotFoundHandler:Symbol("fastify.canSetNotFoundHandler"),kFourOhFourLevelInstance:Symbol("fastify.404LogLevelInstance"),kFourOhFourContext:Symbol("fastify.404ContextKey"),kDefaultJsonParse:Symbol("fastify.defaultJSONParse"),kReply:Symbol("fastify.Reply"),kReplySerializer:Symbol("fastify.reply.serializer"),kReplyIsError:Symbol("fastify.reply.isError"),kReplyHeaders:Symbol("fastify.reply.headers"),kReplyTrailers:Symbol("fastify.reply.trailers"),kReplyHasStatusCode:Symbol("fastify.reply.hasStatusCode"),kReplyHijacked:Symbol("fastify.reply.hijacked"),kReplyStartTime:Symbol("fastify.reply.startTime"),kReplyNextErrorHandler:Symbol("fastify.reply.nextErrorHandler"),kReplyEndTime:Symbol("fastify.reply.endTime"),kReplyErrorHandlerCalled:Symbol("fastify.reply.errorHandlerCalled"),kReplyIsRunningOnErrorHook:Symbol("fastify.reply.isRunningOnErrorHook"),kReplySerializerDefault:Symbol("fastify.replySerializerDefault"),kReplyCacheSerializeFns:Symbol("fastify.reply.cache.serializeFns"),kTestInternals:Symbol("fastify.testInternals"),kErrorHandler:Symbol("fastify.errorHandler"),kChildLoggerFactory:Symbol("fastify.childLoggerFactory"),kHasBeenDecorated:Symbol("fastify.hasBeenDecorated"),kKeepAliveConnections:Symbol("fastify.keepAliveConnections"),kRouteByFastify:Symbol("fastify.routeByFastify")};gfe.exports=Umt});var V6=E((OOr,nR)=>{"use strict";var{format:Q6}=require("node:util");function qmt(t){return Afe({...t,name:"DeprecationWarning"})}function Afe({name:t,code:e,message:r,unlimited:n=!1}={}){if(!t)throw new Error("Warning name must not be empty");if(!e)throw new Error("Warning code must not be empty");if(!r)throw new Error("Warning message must not be empty");if(typeof n!="boolean")throw new Error("Warning opts.unlimited must be a boolean");e=e.toUpperCase();let s={[t]:function(a,o,c){i.emitted===!0&&i.unlimited!==!0||(i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code))}};n&&(s={[t]:function(a,o,c){i.emitted=!0,process.emitWarning(i.format(a,o,c),i.name,i.code)}});let i=s[t];return i.emitted=!1,i.message=r,i.unlimited=n,i.code=e,i.format=function(a,o,c){let u;return a&&o&&c?u=Q6(r,a,o,c):a&&o?u=Q6(r,a,o):a?u=Q6(r,a):u=r,u},i}var G6={createWarning:Afe,createDeprecation:qmt};nR.exports=G6;nR.exports.default=G6;nR.exports.processWarning=G6});var cd=E((POr,xfe)=>{"use strict";var{createDeprecation:vi,createWarning:yfe}=V6(),jmt=vi({code:"FSTDEP005",message:'You are accessing the deprecated "request.connection" property. Use "request.socket" instead.'}),Hmt=vi({code:"FSTDEP006",message:"You are decorating Request/Reply with a reference type. This reference is shared amongst all requests. Use onRequest hook instead. Property: %s"}),Qmt=vi({code:"FSTDEP007",message:'You are trying to set a HEAD route using "exposeHeadRoute" route flag when a sibling route is already set. See documentation for more info.'}),Gmt=vi({code:"FSTDEP008",message:'You are using route constraints via the route { version: "..." } option, use { constraints: { version: "..." } } option instead.'}),Vmt=vi({code:"FSTDEP009",message:'You are using a custom route versioning strategy via the server { versioning: "..." } option, use { constraints: { version: "..." } } option instead.'}),zmt=vi({code:"FSTDEP010",message:'Modifying the "reply.sent" property is deprecated. Use the "reply.hijack()" method instead.'}),Kmt=vi({code:"FSTDEP011",message:'Variadic listen method is deprecated. Please use ".listen(optionsObject)" instead. The variadic signature will be removed in `fastify@5`.'}),Ymt=vi({code:"FSTDEP012",message:'request.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "request.context" will be removed in `fastify@5`.'}),Jmt=vi({code:"FSTDEP013",message:'Direct return of "trailers" function is deprecated. Please use "callback" or "async-await" for return value. The support of direct return will removed in `fastify@5`.'}),Xmt=vi({code:"FSTDEP014",message:"You are trying to set/access the default route. This property is deprecated. Please, use setNotFoundHandler if you want to custom a 404 handler or the wildcard (*) to match all routes."}),Zmt=vi({code:"FSTDEP015",message:'You are accessing the deprecated "request.routeSchema" property. Use "request.routeOptions.schema" instead. Property "req.routeSchema" will be removed in `fastify@5`.'}),eht=vi({code:"FSTDEP016",message:'You are accessing the deprecated "request.routeConfig" property. Use "request.routeOptions.config" instead. Property "req.routeConfig" will be removed in `fastify@5`.'}),tht=vi({code:"FSTDEP017",message:'You are accessing the deprecated "request.routerPath" property. Use "request.routeOptions.url" instead. Property "req.routerPath" will be removed in `fastify@5`.'}),rht=vi({code:"FSTDEP018",message:'You are accessing the deprecated "request.routerMethod" property. Use "request.routeOptions.method" instead. Property "req.routerMethod" will be removed in `fastify@5`.'}),nht=vi({code:"FSTDEP019",message:'reply.context property access is deprecated. Please use "request.routeOptions.config" or "request.routeOptions.schema" instead for accessing Route settings. The "reply.context" will be removed in `fastify@5`.'}),sht=vi({code:"FSTDEP020",message:'You are using the deprecated "reply.getResponseTime()"" method. Use the "request.elapsedTime" property instead. Method "reply.getResponseTime()" will be removed in `fastify@5`.'}),iht=yfe({name:"FastifyWarning",code:"FSTWRN001",message:"The %s schema for %s: %s is missing. This may indicate the schema is not well specified.",unlimited:!0}),aht=yfe({name:"FastifyWarning",code:"FSTWRN002",message:"The %s plugin being registered mixes async and callback styles, which will result in an error in `fastify@5`",unlimited:!0});xfe.exports={FSTDEP005:jmt,FSTDEP006:Hmt,FSTDEP007:Qmt,FSTDEP008:Gmt,FSTDEP009:Vmt,FSTDEP010:zmt,FSTDEP011:Kmt,FSTDEP012:Ymt,FSTDEP013:Jmt,FSTDEP014:Xmt,FSTDEP015:Zmt,FSTDEP016:eht,FSTDEP017:tht,FSTDEP018:rht,FSTDEP019:nht,FSTDEP020:sht,FSTWRN001:iht,FSTWRN002:aht}});var Ci=E((DOr,sR)=>{"use strict";var He=M6(),BA={FST_ERR_NOT_FOUND:He("FST_ERR_NOT_FOUND","Not Found",404),FST_ERR_OPTIONS_NOT_OBJ:He("FST_ERR_OPTIONS_NOT_OBJ","Options must be an object",500,TypeError),FST_ERR_QSP_NOT_FN:He("FST_ERR_QSP_NOT_FN","querystringParser option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:He("FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN","schemaController.bucket option should be a function, instead got '%s'",500,TypeError),FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:He("FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN","schemaErrorFormatter option should be a non async function. Instead got '%s'.",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:He("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ","ajv.customOptions option should be an object, instead got '%s'",500,TypeError),FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:He("FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR","ajv.plugins option should be an array, instead got '%s'",500,TypeError),FST_ERR_VERSION_CONSTRAINT_NOT_STR:He("FST_ERR_VERSION_CONSTRAINT_NOT_STR","Version constraint should be a string.",500,TypeError),FST_ERR_VALIDATION:He("FST_ERR_VALIDATION","%s",400),FST_ERR_LISTEN_OPTIONS_INVALID:He("FST_ERR_LISTEN_OPTIONS_INVALID","Invalid listen options: '%s'",500,TypeError),FST_ERR_CTP_ALREADY_PRESENT:He("FST_ERR_CTP_ALREADY_PRESENT","Content type parser '%s' already present."),FST_ERR_CTP_INVALID_TYPE:He("FST_ERR_CTP_INVALID_TYPE","The content type should be a string or a RegExp",500,TypeError),FST_ERR_CTP_EMPTY_TYPE:He("FST_ERR_CTP_EMPTY_TYPE","The content type cannot be an empty string",500,TypeError),FST_ERR_CTP_INVALID_HANDLER:He("FST_ERR_CTP_INVALID_HANDLER","The content type handler should be a function",500,TypeError),FST_ERR_CTP_INVALID_PARSE_TYPE:He("FST_ERR_CTP_INVALID_PARSE_TYPE","The body parser can only parse your data as 'string' or 'buffer', you asked '%s' which is not supported.",500,TypeError),FST_ERR_CTP_BODY_TOO_LARGE:He("FST_ERR_CTP_BODY_TOO_LARGE","Request body is too large",413,RangeError),FST_ERR_CTP_INVALID_MEDIA_TYPE:He("FST_ERR_CTP_INVALID_MEDIA_TYPE","Unsupported Media Type: %s",415),FST_ERR_CTP_INVALID_CONTENT_LENGTH:He("FST_ERR_CTP_INVALID_CONTENT_LENGTH","Request body size did not match Content-Length",400,RangeError),FST_ERR_CTP_EMPTY_JSON_BODY:He("FST_ERR_CTP_EMPTY_JSON_BODY","Body cannot be empty when content-type is set to 'application/json'",400),FST_ERR_CTP_INSTANCE_ALREADY_STARTED:He("FST_ERR_CTP_INSTANCE_ALREADY_STARTED",'Cannot call "%s" when fastify instance is already started!',400),FST_ERR_DEC_ALREADY_PRESENT:He("FST_ERR_DEC_ALREADY_PRESENT","The decorator '%s' has already been added!"),FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:He("FST_ERR_DEC_DEPENDENCY_INVALID_TYPE","The dependencies of decorator '%s' must be of type Array.",500,TypeError),FST_ERR_DEC_MISSING_DEPENDENCY:He("FST_ERR_DEC_MISSING_DEPENDENCY","The decorator is missing dependency '%s'."),FST_ERR_DEC_AFTER_START:He("FST_ERR_DEC_AFTER_START","The decorator '%s' has been added after start!"),FST_ERR_HOOK_INVALID_TYPE:He("FST_ERR_HOOK_INVALID_TYPE","The hook name must be a string",500,TypeError),FST_ERR_HOOK_INVALID_HANDLER:He("FST_ERR_HOOK_INVALID_HANDLER","%s hook should be a function, instead got %s",500,TypeError),FST_ERR_HOOK_INVALID_ASYNC_HANDLER:He("FST_ERR_HOOK_INVALID_ASYNC_HANDLER","Async function has too many arguments. Async hooks should not use the 'done' argument.",500,TypeError),FST_ERR_HOOK_NOT_SUPPORTED:He("FST_ERR_HOOK_NOT_SUPPORTED","%s hook not supported!",500,TypeError),FST_ERR_MISSING_MIDDLEWARE:He("FST_ERR_MISSING_MIDDLEWARE","You must register a plugin for handling middlewares, visit fastify.dev/docs/latest/Reference/Middleware/ for more info.",500),FST_ERR_HOOK_TIMEOUT:He("FST_ERR_HOOK_TIMEOUT","A callback for '%s' hook timed out. You may have forgotten to call 'done' function or to resolve a Promise"),FST_ERR_LOG_INVALID_DESTINATION:He("FST_ERR_LOG_INVALID_DESTINATION","Cannot specify both logger.stream and logger.file options"),FST_ERR_LOG_INVALID_LOGGER:He("FST_ERR_LOG_INVALID_LOGGER","Invalid logger object provided. The logger instance should have these functions(s): '%s'.",500,TypeError),FST_ERR_REP_INVALID_PAYLOAD_TYPE:He("FST_ERR_REP_INVALID_PAYLOAD_TYPE","Attempted to send payload of invalid type '%s'. Expected a string or Buffer.",500,TypeError),FST_ERR_REP_RESPONSE_BODY_CONSUMED:He("FST_ERR_REP_RESPONSE_BODY_CONSUMED","Response.body is already consumed."),FST_ERR_REP_ALREADY_SENT:He("FST_ERR_REP_ALREADY_SENT",'Reply was already sent, did you forget to "return reply" in "%s" (%s)?'),FST_ERR_REP_SENT_VALUE:He("FST_ERR_REP_SENT_VALUE","The only possible value for reply.sent is true.",500,TypeError),FST_ERR_SEND_INSIDE_ONERR:He("FST_ERR_SEND_INSIDE_ONERR","You cannot use `send` inside the `onError` hook"),FST_ERR_SEND_UNDEFINED_ERR:He("FST_ERR_SEND_UNDEFINED_ERR","Undefined error has occurred"),FST_ERR_BAD_STATUS_CODE:He("FST_ERR_BAD_STATUS_CODE","Called reply with an invalid status code: %s"),FST_ERR_BAD_TRAILER_NAME:He("FST_ERR_BAD_TRAILER_NAME","Called reply.trailer with an invalid header name: %s"),FST_ERR_BAD_TRAILER_VALUE:He("FST_ERR_BAD_TRAILER_VALUE","Called reply.trailer('%s', fn) with an invalid type: %s. Expected a function."),FST_ERR_FAILED_ERROR_SERIALIZATION:He("FST_ERR_FAILED_ERROR_SERIALIZATION","Failed to serialize an error. Error: %s. Original error: %s"),FST_ERR_MISSING_SERIALIZATION_FN:He("FST_ERR_MISSING_SERIALIZATION_FN",'Missing serialization function. Key "%s"'),FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:He("FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN",'Missing serialization function. Key "%s:%s"'),FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:He("FST_ERR_REQ_INVALID_VALIDATION_INVOCATION",'Invalid validation invocation. Missing validation function for HTTP part "%s" nor schema provided.'),FST_ERR_SCH_MISSING_ID:He("FST_ERR_SCH_MISSING_ID","Missing schema $id property"),FST_ERR_SCH_ALREADY_PRESENT:He("FST_ERR_SCH_ALREADY_PRESENT","Schema with id '%s' already declared!"),FST_ERR_SCH_CONTENT_MISSING_SCHEMA:He("FST_ERR_SCH_CONTENT_MISSING_SCHEMA","Schema is missing for the content type '%s'"),FST_ERR_SCH_DUPLICATE:He("FST_ERR_SCH_DUPLICATE","Schema with '%s' already present!"),FST_ERR_SCH_VALIDATION_BUILD:He("FST_ERR_SCH_VALIDATION_BUILD","Failed building the validation schema for %s: %s, due to error %s"),FST_ERR_SCH_SERIALIZATION_BUILD:He("FST_ERR_SCH_SERIALIZATION_BUILD","Failed building the serialization schema for %s: %s, due to error %s"),FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:He("FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX",'response schemas should be nested under a valid status code, e.g { 2xx: { type: "object" } }'),FST_ERR_HTTP2_INVALID_VERSION:He("FST_ERR_HTTP2_INVALID_VERSION","HTTP2 is available only from node >= 8.8.1"),FST_ERR_INIT_OPTS_INVALID:He("FST_ERR_INIT_OPTS_INVALID","Invalid initialization options: '%s'"),FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:He("FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE","Cannot set forceCloseConnections to 'idle' as your HTTP server does not support closeIdleConnections method"),FST_ERR_DUPLICATED_ROUTE:He("FST_ERR_DUPLICATED_ROUTE","Method '%s' already declared for route '%s'"),FST_ERR_BAD_URL:He("FST_ERR_BAD_URL","'%s' is not a valid url component",400,URIError),FST_ERR_ASYNC_CONSTRAINT:He("FST_ERR_ASYNC_CONSTRAINT","Unexpected error from async constraint",500),FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:He("FST_ERR_DEFAULT_ROUTE_INVALID_TYPE","The defaultRoute type should be a function",500,TypeError),FST_ERR_INVALID_URL:He("FST_ERR_INVALID_URL","URL must be a string. Received '%s'",400,TypeError),FST_ERR_ROUTE_OPTIONS_NOT_OBJ:He("FST_ERR_ROUTE_OPTIONS_NOT_OBJ",'Options for "%s:%s" route must be an object',500,TypeError),FST_ERR_ROUTE_DUPLICATED_HANDLER:He("FST_ERR_ROUTE_DUPLICATED_HANDLER",'Duplicate handler for "%s:%s" route is not allowed!',500),FST_ERR_ROUTE_HANDLER_NOT_FN:He("FST_ERR_ROUTE_HANDLER_NOT_FN","Error Handler for %s:%s route, if defined, must be a function",500,TypeError),FST_ERR_ROUTE_MISSING_HANDLER:He("FST_ERR_ROUTE_MISSING_HANDLER",'Missing handler function for "%s:%s" route.',500),FST_ERR_ROUTE_METHOD_INVALID:He("FST_ERR_ROUTE_METHOD_INVALID","Provided method is invalid!",500,TypeError),FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:He("FST_ERR_ROUTE_METHOD_NOT_SUPPORTED","%s method is not supported.",500),FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:He("FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED","Body validation schema for %s:%s route is not supported!",500),FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:He("FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT","'bodyLimit' option must be an integer > 0. Got '%s'",500,TypeError),FST_ERR_ROUTE_REWRITE_NOT_STR:He("FST_ERR_ROUTE_REWRITE_NOT_STR",'Rewrite url for "%s" needs to be of type "string" but received "%s"',500,TypeError),FST_ERR_REOPENED_CLOSE_SERVER:He("FST_ERR_REOPENED_CLOSE_SERVER","Fastify has already been closed and cannot be reopened"),FST_ERR_REOPENED_SERVER:He("FST_ERR_REOPENED_SERVER","Fastify is already listening"),FST_ERR_INSTANCE_ALREADY_LISTENING:He("FST_ERR_INSTANCE_ALREADY_LISTENING","Fastify instance is already listening. %s"),FST_ERR_PLUGIN_VERSION_MISMATCH:He("FST_ERR_PLUGIN_VERSION_MISMATCH","fastify-plugin: %s - expected '%s' fastify version, '%s' is installed"),FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:He("FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE","The decorator '%s'%s is not present in %s"),FST_ERR_PLUGIN_CALLBACK_NOT_FN:He("FST_ERR_PLUGIN_CALLBACK_NOT_FN","fastify-plugin: %s",500,TypeError),FST_ERR_PLUGIN_NOT_VALID:He("FST_ERR_PLUGIN_NOT_VALID","fastify-plugin: %s"),FST_ERR_ROOT_PLG_BOOTED:He("FST_ERR_ROOT_PLG_BOOTED","fastify-plugin: %s"),FST_ERR_PARENT_PLUGIN_BOOTED:He("FST_ERR_PARENT_PLUGIN_BOOTED","fastify-plugin: %s"),FST_ERR_PLUGIN_TIMEOUT:He("FST_ERR_PLUGIN_TIMEOUT","fastify-plugin: %s")};function oht(t,e){return e.cause=t,e}sR.exports=BA;sR.exports.appendStackTrace=oht;sR.exports.AVVIO_ERRORS_MAP={AVV_ERR_CALLBACK_NOT_FN:BA.FST_ERR_PLUGIN_CALLBACK_NOT_FN,AVV_ERR_PLUGIN_NOT_VALID:BA.FST_ERR_PLUGIN_NOT_VALID,AVV_ERR_ROOT_PLG_BOOTED:BA.FST_ERR_ROOT_PLG_BOOTED,AVV_ERR_PARENT_PLG_LOADED:BA.FST_ERR_PARENT_PLUGIN_BOOTED,AVV_ERR_READY_TIMEOUT:BA.FST_ERR_PLUGIN_TIMEOUT}});var up=E((kOr,wfe)=>{"use strict";var cht=["onRoute","onRegister","onReady","onListen","preClose","onClose"],Sfe=["onTimeout","onRequest","preParsing","preValidation","preSerialization","preHandler","onSend","onResponse","onError","onRequestAbort"],uht=Sfe.concat(cht),{FST_ERR_HOOK_INVALID_TYPE:lht,FST_ERR_HOOK_INVALID_HANDLER:dht,FST_ERR_SEND_UNDEFINED_ERR:iR,FST_ERR_HOOK_TIMEOUT:fht,FST_ERR_HOOK_NOT_SUPPORTED:pht,AVVIO_ERRORS_MAP:bfe,appendStackTrace:Efe}=Ci(),{kChildren:t1,kHooks:vfe,kRequestPayloadStream:_fe}=Qs();function r1(){this.onRequest=[],this.preParsing=[],this.preValidation=[],this.preSerialization=[],this.preHandler=[],this.onResponse=[],this.onSend=[],this.onError=[],this.onRoute=[],this.onRegister=[],this.onReady=[],this.onListen=[],this.onTimeout=[],this.onRequestAbort=[],this.preClose=[]}r1.prototype=Object.create(null);r1.prototype.validate=function(t,e){if(typeof t!="string")throw new lht;if(Array.isArray(this[t])===!1)throw new pht(t);if(typeof e!="function")throw new dht(t,Object.prototype.toString.call(e))};r1.prototype.add=function(t,e){this.validate(t,e),this[t].push(e)};function mht(t){let e=new r1;return e.onRequest=t.onRequest.slice(),e.preParsing=t.preParsing.slice(),e.preValidation=t.preValidation.slice(),e.preSerialization=t.preSerialization.slice(),e.preHandler=t.preHandler.slice(),e.onSend=t.onSend.slice(),e.onResponse=t.onResponse.slice(),e.onError=t.onError.slice(),e.onRoute=t.onRoute.slice(),e.onRegister=t.onRegister.slice(),e.onTimeout=t.onTimeout.slice(),e.onRequestAbort=t.onRequestAbort.slice(),e.onReady=[],e.onListen=[],e.preClose=[],e}function Cfe(t,e,r,n){let s=r[vfe][t],i=0,a=0;c();function o(l){if(l){l.code==="AVV_ERR_READY_TIMEOUT"?l=Efe(l,new fht(t)):l=bfe[l.code]!=null?Efe(l,new bfe[l.code](l.message)):l,n(l);return}n()}function c(l){if(l){o(l);return}if(i===s.length&&a===r[t1].length){i===0&&a===0?o():e(function(f,p){o(f),p(f)});return}if(i===s.length&&a{"use strict";var vht=require("node:http"),Cht=require("node:https"),Iht=require("node:dns"),{FSTDEP011:Rfe}=cd(),{kState:Ii,kOptions:Tht,kServerBindings:wht}=Qs(),{onListenHookRunner:aR}=up(),{FST_ERR_HTTP2_INVALID_VERSION:Rht,FST_ERR_REOPENED_CLOSE_SERVER:Pfe,FST_ERR_REOPENED_SERVER:Dfe,FST_ERR_LISTEN_OPTIONS_INVALID:Nht}=Ci();K6.exports.createServer=Oht;K6.exports.compileValidateHTTPVersion=Dht;function kfe(t){return`Server listening at ${t}`}function Oht(t,e){let r=Bfe(t,e);function n(s,...i){let a=i.slice(-1).pop(),o=Object.prototype.toString.call(arguments[0]);if(arguments.length===0)s=z6([]);else if(arguments.length>0&&o!=="[object Object]"&&o!=="[object Function]")Rfe(),s=z6(Array.from(arguments)),a=s.cb;else if(i.length>1){Rfe();let u=s.path?[s.path]:[s.port??0,s.host??"localhost"];Object.assign(s,z6([...u,...i]))}else s.cb=a;if(s.signal){if(typeof s.signal.on!="function"&&typeof s.signal.addEventListener!="function")throw new Nht("Invalid options.signal");if(s.signal.aborted)this.close();else{let u=()=>{this.close()};s.signal.addEventListener("abort",u,{once:!0})}}let c;if(s.path==null?c=s.host??"localhost":c=s.host,Object.prototype.hasOwnProperty.call(s,"host")===!1&&(s.host=c),c==="localhost"?s.cb=(u,l)=>{if(u){a(u,l);return}Nfe.call(this,r,e,t,s,()=>{this[Ii].listening=!0,a(null,l),aR(this)})}:s.cb=(u,l)=>{if(u){a(u,l);return}this[Ii].listening=!0,a(null,l),aR(this)},a===void 0)return Pht.call(this,r,s).then(l=>new Promise((d,f)=>{c==="localhost"?Nfe.call(this,r,e,t,s,()=>{this[Ii].listening=!0,d(l),aR(this)}):(d(l),aR(this))}));this.ready(Lfe.call(this,r,s))}return{server:r,listen:n}}function Nfe(t,e,r,n,s){this[Ii].listening=!1,Iht.lookup(n.host,{all:!0},(i,a)=>{if(i){s();return}let o=t.listening&&r.serverFactory,c=0,u=0;if(!o){let d=t.address();for(let f of a)if(f.address!==d.address){c++;let p=Object.assign({},n,{host:f.address,port:d.port,cb:A=>{u++,A||this[wht].push(m),u===c&&s()}}),m=Bfe(r,e),h=()=>{m.close(()=>{}),r.forceCloseConnections==="idle"?m.closeIdleConnections():typeof m.closeAllConnections=="function"&&r.forceCloseConnections&&m.closeAllConnections()};m.on("upgrade",t.emit.bind(t,"upgrade")),t.on("unref",h),t.on("close",h),t.on("error",h),this[Ii].listening=!1,Lfe.call(this,m,p)()}}if(c===0){s();return}let l=t.unref;t.unref=function(){l.call(t),t.emit("unref")}})}function Lfe(t,e){let r=n=>{if(t.removeListener("error",r),n)this[Ii].listening=!1,e.cb(n,null);else{let s=Mfe.call(this,t,e.listenTextResolver||kfe);e.cb(null,s)}};return n=>{if(n!=null)return e.cb(n);if(this[Ii].listening&&this[Ii].closing)return e.cb(new Pfe,null);if(this[Ii].listening)return e.cb(new Dfe,null);t.once("error",r),this[Ii].closing||(t.listen(e,r),this[Ii].listening=!0)}}function Pht(t,e){return this[Ii].listening&&this[Ii].closing?Promise.reject(new Pfe):this[Ii].listening?Promise.reject(new Dfe):this.ready().then(()=>{let r,n=new Promise((i,a)=>{r=o=>{this[Ii].listening=!1,a(o)},t.once("error",r)}),s=new Promise((i,a)=>{t.listen(e,()=>{t.removeListener("error",r),i(Mfe.call(this,t,e.listenTextResolver||kfe))}),this[Ii].listening=!0});return Promise.race([n,s])})}function Dht(t){let e=!1,r=new Map;return t.serverFactory&&(e=!0),t.http2?(r.set("2.0",!0),t.https&&t.https.allowHTTP1===!0&&(r.set("1.1",!0),r.set("1.0",!0))):(r.set("1.1",!0),r.set("1.0",!0)),function(s){return e||r.has(s)}}function Bfe(t,e){let r=null,n=t.https===!0?{}:t.https;return t.serverFactory?r=t.serverFactory(e,t):t.http2?(typeof n=="object"?r=Ofe().createSecureServer(n,e):r=Ofe().createServer(e),r.on("session",Lht(t.http2SessionTimeout))):(n?r=Cht.createServer(n,e):r=vht.createServer(t.http,e),r.keepAliveTimeout=t.keepAliveTimeout,r.requestTimeout=t.requestTimeout,t.maxRequestsPerSocket>0&&(r.maxRequestsPerSocket=t.maxRequestsPerSocket)),t.serverFactory||r.setTimeout(t.connectionTimeout),r}function z6(t){if(t.length===0)return{port:0,host:"localhost"};let r={cb:typeof t[t.length-1]=="function"?t.pop():void 0},n=t[0],s=t.length,i=t[s-1];return typeof n=="string"&&isNaN(n)?(r.path=n,r.backlog=s>1?i:void 0):(r.port=s>=1&&Number.isInteger(n)?n:kht(n),r.host=s>=2&&t[1]?t[1]:"localhost",r.backlog=s>=3?t[2]:void 0),r}function kht(t){let e=Number(t);return e>=0&&!Number.isNaN(e)&&Number.isInteger(e)?e:0}function Mfe(t,e){let r=t.address(),n=typeof r=="string";n||(r.address.indexOf(":")===-1?r=r.address+":"+r.port:r="["+r.address+"]:"+r.port),r=(n?"":"http"+(this[Tht].https?"s":"")+"://")+r;let s=e(r);return this.log.info(s),r}function Ofe(){try{return require("node:http2")}catch{throw new Rht}}function Lht(t){return function(e){e.setTimeout(t,Bht)}}function Bht(){this.close()}});var Z6=E((BOr,Ffe)=>{"use strict";var{kSchemaHeaders:uR,kSchemaParams:Y6,kSchemaQuerystring:J6,kSchemaBody:X6,kSchemaResponse:$fe}=Qs(),Mht=/^[1-5]{1}[0-9]{2}$|^[1-5]xx$|^default$/,{FST_ERR_SCH_RESPONSE_SCHEMA_NOT_NESTED_2XX:Wht}=Ci(),{FSTWRN001:oR}=cd();function $ht(t,e){if(!t.schema||!t.schema.response)return;let{method:r,url:n}=t.config||{};t[$fe]=Object.keys(t.schema.response).reduce(function(s,i){let a=t.schema.response[i];if(i=i.toLowerCase(),!Mht.exec(i))throw new Wht;if(a.content){let o={};for(let c of Object.keys(a.content)){let u=a.content[c].schema;o[c]=e({schema:u,url:n,method:r,httpStatus:i,contentType:c})}s[i]=o}else s[i]=e({schema:a,url:n,method:r,httpStatus:i});return s},{})}function Fht(t,e,r){let{schema:n}=t;if(!n)return;let{method:s,url:i}=t.config||{},a=n.headers;if(a&&(r||Object.getPrototypeOf(a)!==Object.prototype))t[uR]=e({schema:a,method:s,url:i,httpPart:"headers"});else if(a){let o={};Object.keys(a).forEach(c=>{o[c]=a[c]}),o.required instanceof Array&&(o.required=o.required.map(c=>c.toLowerCase())),a.properties&&(o.properties={},Object.keys(a.properties).forEach(c=>{o.properties[c.toLowerCase()]=a.properties[c]})),t[uR]=e({schema:o,method:s,url:i,httpPart:"headers"})}else Object.prototype.hasOwnProperty.call(n,"headers")&&oR("headers",s,i);n.body?t[X6]=e({schema:n.body,method:s,url:i,httpPart:"body"}):Object.prototype.hasOwnProperty.call(n,"body")&&oR("body",s,i),n.querystring?t[J6]=e({schema:n.querystring,method:s,url:i,httpPart:"querystring"}):Object.prototype.hasOwnProperty.call(n,"querystring")&&oR("querystring",s,i),n.params?t[Y6]=e({schema:n.params,method:s,url:i,httpPart:"params"}):Object.prototype.hasOwnProperty.call(n,"params")&&oR("params",s,i)}function cR(t,e,r){let n=e[r]===void 0,s=t&&t(n?null:e[r]);if(s?.then)return s.then(a=>i(a)).catch(a=>a);return i(s);function i(a){return a===!1?t.errors:a&&a.error?a.error:(a&&a.value&&(e[r]=a.value),!1)}}function lR(t,e,r){let n=r===void 0;if(n||!r.skipParams){let i=cR(t[Y6],e,"params");if(i)return typeof i.then!="function"?lp(i,"params",t.schemaErrorFormatter):Uht(i,t,e)}if(n||!r.skipBody){let i=cR(t[X6],e,"body");if(i)return typeof i.then!="function"?lp(i,"body",t.schemaErrorFormatter):qht(i,t,e)}if(n||!r.skipQuery){let i=cR(t[J6],e,"query");if(i)return typeof i.then!="function"?lp(i,"querystring",t.schemaErrorFormatter):jht(i,t,e)}let s=cR(t[uR],e,"headers");return s?typeof s.then!="function"?lp(s,"headers",t.schemaErrorFormatter):Hht(s,t,e):!1}function Uht(t,e,r){return t.then(n=>n?lp(n,"params",e.schemaErrorFormatter):lR(e,r,{skipParams:!0}))}function qht(t,e,r){return t.then(n=>n?lp(n,"body",e.schemaErrorFormatter):lR(e,r,{skipParams:!0,skipBody:!0}))}function jht(t,e,r){return t.then(n=>n?lp(n,"querystring",e.schemaErrorFormatter):lR(e,r,{skipParams:!0,skipBody:!0,skipQuery:!0}))}function Hht(t,e,r){return t.then(n=>n?lp(n,"headers",e.schemaErrorFormatter):!1)}function lp(t,e,r){if(t instanceof Error)return t.statusCode=t.statusCode||400,t.code=t.code||"FST_ERR_VALIDATION",t.validationContext=t.validationContext||e,t;let n=r(t,e);return n.statusCode=n.statusCode||400,n.code=n.code||"FST_ERR_VALIDATION",n.validation=t,n.validationContext=e,n}Ffe.exports={symbols:{bodySchema:X6,querystringSchema:J6,responseSchema:$fe,paramsSchema:Y6,headersSchema:uR},compileSchemasForValidation:Fht,compileSchemasForSerialization:$ht,validate:lR}});var e5=E((MOr,qfe)=>{"use strict";var{kReplyIsError:Ufe,kReplyHijacked:Qht}=Qs();function Ght(t,e){t.then(function(r){if(e[Qht]!==!0&&(r!==void 0||e.sent===!1&&e.raw.headersSent===!1&&e.request.raw.aborted===!1))try{e.send(r)}catch(n){e[Ufe]=!0,e.send(n)}},function(r){if(e.sent===!0){e.log.error({err:r},"Promise errored, but reply.sent = true was set");return}e[Ufe]=!0;try{e.send(r)}catch(n){e.send(n)}})}qfe.exports=Ght});var s5=E((WOr,n5)=>{"use strict";var{validate:Vht}=Z6(),{preValidationHookRunner:zht,preHandlerHookRunner:Kht}=up(),Yht=e5(),{kReplyIsError:dR,kRouteContext:fp}=Qs();function Jht(t,e,r){if(r.sent===!0)return;if(t!=null){r[dR]=!0,r.send(t);return}let n=e.raw.method,s=e.headers,i=e[fp];if(n==="GET"||n==="HEAD"){dp(e,r);return}let a=s["content-type"];if(n==="POST"||n==="PUT"||n==="PATCH"||n==="TRACE"||n==="SEARCH"){a===void 0?s["transfer-encoding"]===void 0&&(s["content-length"]==="0"||s["content-length"]===void 0)?dp(e,r):i.contentTypeParser.run("",dp,e,r):i.contentTypeParser.run(a,dp,e,r);return}if(n==="OPTIONS"||n==="DELETE"){a!==void 0&&(s["transfer-encoding"]!==void 0||s["content-length"]!==void 0)?i.contentTypeParser.run(a,dp,e,r):dp(e,r);return}dp(e,r)}function dp(t,e){try{t[fp].preValidation!==null?zht(t[fp].preValidation,t,e,t5):t5(null,t,e)}catch(r){t5(r,t,e)}}function t5(t,e,r){if(r.sent===!0)return;if(t!=null){r[dR]=!0,r.send(t);return}let n=Vht(r[fp],e);if(n&&typeof n.then=="function"||!1){let i=jfe.bind(null,e,r);n.then(i,i)}else jfe(e,r,n)}function jfe(t,e,r){if(r){if(e[fp].attachValidation===!1){e.send(r);return}e.request.validationError=r}t[fp].preHandler!==null?Kht(t[fp].preHandler,t,e,r5):r5(null,t,e)}function r5(t,e,r){if(r.sent)return;if(t!=null){r[dR]=!0,r.send(t);return}let n;try{n=e[fp].handler(e,r)}catch(s){r[dR]=!0,r.send(s);return}n!==void 0&&(n!==null&&typeof n.then=="function"?Yht(n,r):r.send(n))}n5.exports=Jht;n5.exports[Symbol.for("internals")]={handler:dp,preHandlerCallback:r5}});var Qfe=E(($Or,Hfe)=>{"use strict";function WA(){}var Xht={fatal:WA,error:WA,warn:WA,info:WA,debug:WA,trace:WA};Object.defineProperty(Hfe,"exports",{get(){return Object.create(Xht)}})});var a5=E((FOr,zfe)=>{"use strict";var s1=t=>t&&typeof t.message=="string",i5=t=>{if(!t)return;let e=t.cause;if(typeof e=="function"){let r=t.cause();return s1(r)?r:void 0}else return s1(e)?e:void 0},Gfe=(t,e)=>{if(!s1(t))return"";let r=t.stack||"";if(e.has(t))return r+` +causes have become circular...`;let n=i5(t);return n?(e.add(t),r+` +caused by: `+Gfe(n,e)):r},Zht=t=>Gfe(t,new Set),Vfe=(t,e,r)=>{if(!s1(t))return"";let n=r?"":t.message||"";if(e.has(t))return n+": ...";let s=i5(t);if(s){e.add(t);let i=typeof t.cause=="function";return n+(i?"":": ")+Vfe(s,e,i)}else return n},egt=t=>Vfe(t,new Set);zfe.exports={isErrorLike:s1,getErrorCause:i5,stackWithCauses:Zht,messageWithCauses:egt}});var o5=E((UOr,Yfe)=>{"use strict";var tgt=Symbol("circular-ref-tag"),fR=Symbol("pino-raw-err-ref"),Kfe=Object.create({},{type:{enumerable:!0,writable:!0,value:void 0},message:{enumerable:!0,writable:!0,value:void 0},stack:{enumerable:!0,writable:!0,value:void 0},aggregateErrors:{enumerable:!0,writable:!0,value:void 0},raw:{enumerable:!1,get:function(){return this[fR]},set:function(t){this[fR]=t}}});Object.defineProperty(Kfe,fR,{writable:!0,value:{}});Yfe.exports={pinoErrProto:Kfe,pinoErrorSymbols:{seen:tgt,rawSymbol:fR}}});var Zfe=E((qOr,Xfe)=>{"use strict";Xfe.exports=u5;var{messageWithCauses:rgt,stackWithCauses:ngt,isErrorLike:Jfe}=a5(),{pinoErrProto:sgt,pinoErrorSymbols:igt}=o5(),{seen:c5}=igt,{toString:agt}=Object.prototype;function u5(t){if(!Jfe(t))return t;t[c5]=void 0;let e=Object.create(sgt);e.type=agt.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=rgt(t),e.stack=ngt(t),Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>u5(r)));for(let r in t)if(e[r]===void 0){let n=t[r];Jfe(n)?r!=="cause"&&!Object.prototype.hasOwnProperty.call(n,c5)&&(e[r]=u5(n)):e[r]=n}return delete t[c5],e.raw=t,e}});var tpe=E((jOr,epe)=>{"use strict";epe.exports=mR;var{isErrorLike:l5}=a5(),{pinoErrProto:ogt,pinoErrorSymbols:cgt}=o5(),{seen:pR}=cgt,{toString:ugt}=Object.prototype;function mR(t){if(!l5(t))return t;t[pR]=void 0;let e=Object.create(ogt);e.type=ugt.call(t.constructor)==="[object Function]"?t.constructor.name:t.name,e.message=t.message,e.stack=t.stack,Array.isArray(t.errors)&&(e.aggregateErrors=t.errors.map(r=>mR(r))),l5(t.cause)&&!Object.prototype.hasOwnProperty.call(t.cause,pR)&&(e.cause=mR(t.cause));for(let r in t)if(e[r]===void 0){let n=t[r];l5(n)?Object.prototype.hasOwnProperty.call(n,pR)||(e[r]=mR(n)):e[r]=n}return delete t[pR],e.raw=t,e}});var ipe=E((HOr,spe)=>{"use strict";spe.exports={mapHttpRequest:lgt,reqSerializer:npe};var d5=Symbol("pino-raw-req-ref"),rpe=Object.create({},{id:{enumerable:!0,writable:!0,value:""},method:{enumerable:!0,writable:!0,value:""},url:{enumerable:!0,writable:!0,value:""},query:{enumerable:!0,writable:!0,value:""},params:{enumerable:!0,writable:!0,value:""},headers:{enumerable:!0,writable:!0,value:{}},remoteAddress:{enumerable:!0,writable:!0,value:""},remotePort:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[d5]},set:function(t){this[d5]=t}}});Object.defineProperty(rpe,d5,{writable:!0,value:{}});function npe(t){let e=t.info||t.socket,r=Object.create(rpe);if(r.id=typeof t.id=="function"?t.id():t.id||(t.info?t.info.id:void 0),r.method=t.method,t.originalUrl)r.url=t.originalUrl;else{let n=t.path;r.url=typeof n=="string"?n:t.url?t.url.path||t.url:void 0}return t.query&&(r.query=t.query),t.params&&(r.params=t.params),r.headers=t.headers,r.remoteAddress=e&&e.remoteAddress,r.remotePort=e&&e.remotePort,r.raw=t.raw||t,r}function lgt(t){return{req:npe(t)}}});var upe=E((QOr,cpe)=>{"use strict";cpe.exports={mapHttpResponse:dgt,resSerializer:ope};var f5=Symbol("pino-raw-res-ref"),ape=Object.create({},{statusCode:{enumerable:!0,writable:!0,value:0},headers:{enumerable:!0,writable:!0,value:""},raw:{enumerable:!1,get:function(){return this[f5]},set:function(t){this[f5]=t}}});Object.defineProperty(ape,f5,{writable:!0,value:{}});function ope(t){let e=Object.create(ape);return e.statusCode=t.headersSent?t.statusCode:null,e.headers=t.getHeaders?t.getHeaders():t._headers,e.raw=t,e}function dgt(t){return{res:ope(t)}}});var m5=E((GOr,lpe)=>{"use strict";var p5=Zfe(),fgt=tpe(),hR=ipe(),gR=upe();lpe.exports={err:p5,errWithCause:fgt,mapHttpRequest:hR.mapHttpRequest,mapHttpResponse:gR.mapHttpResponse,req:hR.reqSerializer,res:gR.resSerializer,wrapErrorSerializer:function(e){return e===p5?e:function(n){return e(p5(n))}},wrapRequestSerializer:function(e){return e===hR.reqSerializer?e:function(n){return e(hR.reqSerializer(n))}},wrapResponseSerializer:function(e){return e===gR.resSerializer?e:function(n){return e(gR.resSerializer(n))}}}});var h5=E((VOr,dpe)=>{"use strict";function pgt(t,e){return e}dpe.exports=function(){let e=Error.prepareStackTrace;Error.prepareStackTrace=pgt;let r=new Error().stack;if(Error.prepareStackTrace=e,!Array.isArray(r))return;let n=r.slice(2),s=[];for(let i of n)i&&s.push(i.getFileName());return s}});var ppe=E((zOr,fpe)=>{"use strict";fpe.exports=mgt;function mgt(t={}){let{ERR_PATHS_MUST_BE_STRINGS:e=()=>"fast-redact - Paths must be (non-empty) strings",ERR_INVALID_PATH:r=n=>`fast-redact \u2013 Invalid path (${n})`}=t;return function({paths:s}){s.forEach(i=>{if(typeof i!="string")throw Error(e());try{if(/〇/.test(i))throw Error();let a=(i[0]==="["?"":".")+i.replace(/^\*/,"\u3007").replace(/\.\*/g,".\u3007").replace(/\[\*\]/g,"[\u3007]");if(/\n|\r|;/.test(a)||/\/\*/.test(a))throw Error();Function(` 'use strict' const o = new Proxy({}, { get: () => o, set: () => { throw Error() } }); const \u3007 = null; o${a} - if ([o${a}].length !== 1) throw Error()`)()}catch{throw Error(r(i))}})}}});var hR=E((jOr,dpe)=>{"use strict";dpe.exports=/[^.[\]]+|\[((?:.)*?)\]/g});var ppe=E((HOr,fpe)=>{"use strict";var pgt=hR();fpe.exports=mgt;function mgt({paths:t}){let e=[];var r=0;let n=t.reduce(function(s,i,a){var o=i.match(pgt).map(l=>l.replace(/'|"|`/g,""));let c=i[0]==="[";o=o.map(l=>l[0]==="["?l.substr(1,l.length-2):l);let u=o.indexOf("*");if(u>-1){let l=o.slice(0,u),d=l.join("."),f=o.slice(u+1,o.length),p=f.length>0;r++,e.push({before:l,beforeStr:d,after:f,nested:p})}else s[i]={path:o,val:void 0,precensored:!1,circle:"",escPath:JSON.stringify(i),leadingBracket:c};return s},{});return{wildcards:e,wcLen:r,secret:n}}});var hpe=E((QOr,mpe)=>{"use strict";var hgt=hR();mpe.exports=ggt;function ggt({secret:t,serialize:e,wcLen:r,strict:n,isCensorFct:s,censorFctTakesPath:i},a){let o=Function("o",` + if ([o${a}].length !== 1) throw Error()`)()}catch{throw Error(r(i))}})}}});var AR=E((KOr,mpe)=>{"use strict";mpe.exports=/[^.[\]]+|\[((?:.)*?)\]/g});var gpe=E((YOr,hpe)=>{"use strict";var hgt=AR();hpe.exports=ggt;function ggt({paths:t}){let e=[];var r=0;let n=t.reduce(function(s,i,a){var o=i.match(hgt).map(l=>l.replace(/'|"|`/g,""));let c=i[0]==="[";o=o.map(l=>l[0]==="["?l.substr(1,l.length-2):l);let u=o.indexOf("*");if(u>-1){let l=o.slice(0,u),d=l.join("."),f=o.slice(u+1,o.length),p=f.length>0;r++,e.push({before:l,beforeStr:d,after:f,nested:p})}else s[i]={path:o,val:void 0,precensored:!1,circle:"",escPath:JSON.stringify(i),leadingBracket:c};return s},{});return{wildcards:e,wcLen:r,secret:n}}});var ype=E((JOr,Ape)=>{"use strict";var Agt=AR();Ape.exports=ygt;function ygt({secret:t,serialize:e,wcLen:r,strict:n,isCensorFct:s,censorFctTakesPath:i},a){let o=Function("o",` if (typeof o !== 'object' || o == null) { - ${bgt(n,e)} + ${_gt(n,e)} } const { censor, secret } = this const originalSecret = {} @@ -44,12 +44,12 @@ caused by: `+jfe(n,e)):r},Jht=t=>jfe(t,new Set),Hfe=(t,e,r)=>{if(!n1(t))return"" originalSecret[secretKeys[i]] = secret[secretKeys[i]] } - ${Agt(t,s,i)} + ${xgt(t,s,i)} this.compileRestore() - ${ygt(r>0,s,i)} + ${bgt(r>0,s,i)} this.secret = originalSecret - ${xgt(e)} - `).bind(a);return o.state=a,e===!1&&(o.restore=c=>a.restore(c)),o}function Agt(t,e,r){return Object.keys(t).map(n=>{let{escPath:s,leadingBracket:i,path:a}=t[n],o=i?1:0,c=i?"":".",u=[];for(var l;(l=hgt.exec(n))!==null;){let[,m]=l,{index:h,input:A}=l;h>o&&u.push(A.substring(0,h-(m?0:1)))}var d=u.map(m=>`o${c}${m}`).join(" && ");d.length===0?d+=`o${c}${n} != null`:d+=` && o${c}${n} != null`;let f=` + ${Egt(e)} + `).bind(a);return o.state=a,e===!1&&(o.restore=c=>a.restore(c)),o}function xgt(t,e,r){return Object.keys(t).map(n=>{let{escPath:s,leadingBracket:i,path:a}=t[n],o=i?1:0,c=i?"":".",u=[];for(var l;(l=Agt.exec(n))!==null;){let[,m]=l,{index:h,input:A}=l;h>o&&u.push(A.substring(0,h-(m?0:1)))}var d=u.map(m=>`o${c}${m}`).join(" && ");d.length===0?d+=`o${c}${n} != null`:d+=` && o${c}${n} != null`;let f=` switch (true) { ${u.reverse().map(m=>` case o${c}${m} === censor: @@ -70,7 +70,7 @@ caused by: `+jfe(n,e)):r},Jht=t=>jfe(t,new Set),Hfe=(t,e,r)=>{if(!n1(t))return"" } } `}).join(` -`)}function ygt(t,e,r){return t===!0?` +`)}function bgt(t,e,r){return t===!0?` { const { wildcards, wcLen, groupRedact, nestedRedact } = this for (var i = 0; i < wcLen; i++) { @@ -81,16 +81,16 @@ caused by: `+jfe(n,e)):r},Jht=t=>jfe(t,new Set),Hfe=(t,e,r)=>{if(!n1(t))return"" } else secret[beforeStr] = groupRedact(o, before, censor, ${e}, ${r}) } } - `:""}function xgt(t){return t===!1?"return o":` + `:""}function Egt(t){return t===!1?"return o":` var s = this.serialize(o) this.restore(o) return s - `}function bgt(t,e){return t===!0?"throw Error('fast-redact: primitives cannot be redacted')":e===!1?"return o":"return this.serialize(o)"}});var g5=E((GOr,ype)=>{"use strict";ype.exports={groupRedact:_gt,groupRestore:Egt,nestedRedact:vgt,nestedRestore:Sgt};function Egt({keys:t,values:e,target:r}){if(r==null||typeof r=="string")return;let n=t.length;for(var s=0;s0;a--)i=i[n[a]];i[n[0]]=s}}function vgt(t,e,r,n,s,i,a){let o=gpe(e,r);if(o==null)return;let c=Object.keys(o),u=c.length;for(var l=0;l{"use strict";var{groupRestore:Tgt,nestedRestore:wgt}=g5();xpe.exports=Rgt;function Rgt(){return function(){if(this.restore){this.restore.state.secret=this.secret;return}let{secret:e,wcLen:r}=this,n=Object.keys(e),s=Ngt(e,n),i=r>0,a=i?{secret:e,groupRestore:Tgt,nestedRestore:wgt}:{secret:e};this.restore=Function("o",Ogt(s,n,i)).bind(a),this.restore.state=a}}function Ngt(t,e){return e.map(r=>{let{circle:n,escPath:s,leadingBracket:i}=t[r],o=n?`o.${n} = secret[${s}].val`:`o${i?"":"."}${r} = secret[${s}].val`,c=`secret[${s}].val = undefined`;return` + `}function _gt(t,e){return t===!0?"throw Error('fast-redact: primitives cannot be redacted')":e===!1?"return o":"return this.serialize(o)"}});var A5=E((XOr,Epe)=>{"use strict";Epe.exports={groupRedact:vgt,groupRestore:Sgt,nestedRedact:Igt,nestedRestore:Cgt};function Sgt({keys:t,values:e,target:r}){if(r==null||typeof r=="string")return;let n=t.length;for(var s=0;s0;a--)i=i[n[a]];i[n[0]]=s}}function Igt(t,e,r,n,s,i,a){let o=xpe(e,r);if(o==null)return;let c=Object.keys(o),u=c.length;for(var l=0;l{"use strict";var{groupRestore:Rgt,nestedRestore:Ngt}=A5();_pe.exports=Ogt;function Ogt(){return function(){if(this.restore){this.restore.state.secret=this.secret;return}let{secret:e,wcLen:r}=this,n=Object.keys(e),s=Pgt(e,n),i=r>0,a=i?{secret:e,groupRestore:Rgt,nestedRestore:Ngt}:{secret:e};this.restore=Function("o",Dgt(s,n,i)).bind(a),this.restore.state=a}}function Pgt(t,e){return e.map(r=>{let{circle:n,escPath:s,leadingBracket:i}=t[r],o=n?`o.${n} = secret[${s}].val`:`o${i?"":"."}${r} = secret[${s}].val`,c=`secret[${s}].val = undefined`;return` if (secret[${s}].val !== undefined) { try { ${o} } catch (e) {} ${c} } - `}).join("")}function Ogt(t,e,r){return` + `}).join("")}function Dgt(t,e,r){return` const secret = this.secret ${r===!0?` const keys = Object.keys(secret) @@ -107,34 +107,34 @@ caused by: `+jfe(n,e)):r},Jht=t=>jfe(t,new Set),Hfe=(t,e,r)=>{if(!n1(t))return"" `:""} ${t} return o - `}});var _pe=E((VOr,Epe)=>{"use strict";Epe.exports=Pgt;function Pgt(t){let{secret:e,censor:r,compileRestore:n,serialize:s,groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}=t,u=[{secret:e,censor:r,compileRestore:n}];return s!==!1&&u.push({serialize:s}),c>0&&u.push({groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}),Object.assign(...u)}});var Ipe=E((zOr,vpe)=>{"use strict";var Spe=lpe(),kgt=ppe(),Dgt=hpe(),Bgt=bpe(),{groupRedact:Lgt,nestedRedact:Mgt}=g5(),Wgt=_pe(),$gt=hR(),Fgt=Spe(),A5=t=>t;A5.restore=A5;var Ugt="[REDACTED]";y5.rx=$gt;y5.validator=Spe;vpe.exports=y5;function y5(t={}){let e=Array.from(new Set(t.paths||[])),r="serialize"in t&&(t.serialize===!1||typeof t.serialize=="function")?t.serialize:JSON.stringify,n=t.remove;if(n===!0&&r!==JSON.stringify)throw Error("fast-redact \u2013 remove option may only be set when serializer is JSON.stringify");let s=n===!0?void 0:"censor"in t?t.censor:Ugt,i=typeof s=="function",a=i&&s.length>1;if(e.length===0)return r||A5;Fgt({paths:e,serialize:r,censor:s});let{wildcards:o,wcLen:c,secret:u}=kgt({paths:e,censor:s}),l=Bgt(),d="strict"in t?t.strict:!0;return Dgt({secret:u,wcLen:c,serialize:r,strict:d,isCensorFct:i,censorFctTakesPath:a},Wgt({secret:u,censor:s,compileRestore:l,serialize:r,groupRedact:Lgt,nestedRedact:Mgt,wildcards:o,wcLen:c}))}});var $A=E((YOr,Cpe)=>{"use strict";var qgt=Symbol("pino.setLevel"),jgt=Symbol("pino.getLevel"),Hgt=Symbol("pino.levelVal"),Qgt=Symbol("pino.levelComp"),Ggt=Symbol("pino.useLevelLabels"),Kgt=Symbol("pino.useOnlyCustomLevels"),Vgt=Symbol("pino.mixin"),zgt=Symbol("pino.lsCache"),Ygt=Symbol("pino.chindings"),Jgt=Symbol("pino.asJson"),Xgt=Symbol("pino.write"),Zgt=Symbol("pino.redactFmt"),eAt=Symbol("pino.time"),tAt=Symbol("pino.timeSliceIndex"),rAt=Symbol("pino.stream"),nAt=Symbol("pino.stringify"),sAt=Symbol("pino.stringifySafe"),iAt=Symbol("pino.stringifiers"),aAt=Symbol("pino.end"),oAt=Symbol("pino.formatOpts"),cAt=Symbol("pino.messageKey"),uAt=Symbol("pino.errorKey"),lAt=Symbol("pino.nestedKey"),dAt=Symbol("pino.nestedKeyStr"),fAt=Symbol("pino.mixinMergeStrategy"),pAt=Symbol("pino.msgPrefix"),mAt=Symbol("pino.wildcardFirst"),hAt=Symbol.for("pino.serializers"),gAt=Symbol.for("pino.formatters"),AAt=Symbol.for("pino.hooks"),yAt=Symbol.for("pino.metadata");Cpe.exports={setLevelSym:qgt,getLevelSym:jgt,levelValSym:Hgt,levelCompSym:Qgt,useLevelLabelsSym:Ggt,mixinSym:Vgt,lsCacheSym:zgt,chindingsSym:Ygt,asJsonSym:Jgt,writeSym:Xgt,serializersSym:hAt,redactFmtSym:Zgt,timeSym:eAt,timeSliceIndexSym:tAt,streamSym:rAt,stringifySym:nAt,stringifySafeSym:sAt,stringifiersSym:iAt,endSym:aAt,formatOptsSym:oAt,messageKeySym:cAt,errorKeySym:uAt,nestedKeySym:lAt,wildcardFirstSym:mAt,needsMetadataGsym:yAt,useOnlyCustomLevelsSym:Kgt,formattersSym:gAt,hooksSym:AAt,nestedKeyStrSym:dAt,mixinMergeStrategySym:fAt,msgPrefixSym:pAt}});var E5=E((JOr,Npe)=>{"use strict";var b5=Ipe(),{redactFmtSym:xAt,wildcardFirstSym:gR}=$A(),{rx:x5,validator:bAt}=b5,Tpe=bAt({ERR_PATHS_MUST_BE_STRINGS:()=>"pino \u2013 redacted paths must be strings",ERR_INVALID_PATH:t=>`pino \u2013 redact paths array contains an invalid path (${t})`}),wpe="[Redacted]",Rpe=!1;function EAt(t,e){let{paths:r,censor:n}=_At(t),s=r.reduce((o,c)=>{x5.lastIndex=0;let u=x5.exec(c),l=x5.exec(c),d=u[1]!==void 0?u[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):u[0];if(d==="*"&&(d=gR),l===null)return o[d]=null,o;if(o[d]===null)return o;let{index:f}=l,p=`${c.substr(f,c.length-1)}`;return o[d]=o[d]||[],d!==gR&&o[d].length===0&&o[d].push(...o[gR]||[]),d===gR&&Object.keys(o).forEach(function(m){o[m]&&o[m].push(p)}),o[d].push(p),o},{}),i={[xAt]:b5({paths:r,censor:n,serialize:e,strict:Rpe})},a=(...o)=>e(typeof n=="function"?n(...o):n);return[...Object.keys(s),...Object.getOwnPropertySymbols(s)].reduce((o,c)=>{if(s[c]===null)o[c]=u=>a(u,[c]);else{let u=typeof n=="function"?(l,d)=>n(l,[c,...d]):n;o[c]=b5({paths:s[c],censor:u,serialize:e,strict:Rpe})}return o},i)}function _At(t){if(Array.isArray(t))return t={paths:t,censor:wpe},Tpe(t),t;let{paths:e,censor:r=wpe,remove:n}=t;if(Array.isArray(e)===!1)throw Error("pino \u2013 redact must contain an array of strings");return n===!0&&(r=void 0),Tpe({paths:e,censor:r}),{paths:e,censor:r}}Npe.exports=EAt});var Ppe=E((XOr,Ope)=>{"use strict";var SAt=()=>"",vAt=()=>`,"time":${Date.now()}`,IAt=()=>`,"time":${Math.round(Date.now()/1e3)}`,CAt=()=>`,"time":"${new Date(Date.now()).toISOString()}"`;Ope.exports={nullTime:SAt,epochTime:vAt,unixTime:IAt,isoTime:CAt}});var Dpe=E((ZOr,kpe)=>{"use strict";function TAt(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}kpe.exports=wAt;function wAt(t,e,r){var n=r&&r.stringify||TAt,s=1;if(typeof t=="object"&&t!==null){var i=e.length+s;if(i===1)return t;var a=new Array(i);a[0]=n(t);for(var o=1;o-1?d:0,t.charCodeAt(p+1)){case 100:case 102:if(l>=c||e[l]==null)break;d=c||e[l]==null)break;d=c||e[l]===void 0)break;d",d=p+2,p++;break}u+=n(e[l]),d=p+2,p++;break;case 115:if(l>=c)break;d{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let e=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(t,0,0,Number(r))},t=new Int32Array(new SharedArrayBuffer(4));_5.exports=e}else{let t=function(e){if((e>0&&e<1/0)===!1)throw typeof e!="number"&&typeof e!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(e);for(;n>Date.now(););};_5.exports=t}});var qpe=E((tPr,Upe)=>{"use strict";var os=require("fs"),RAt=require("events"),NAt=require("util").inherits,Bpe=require("path"),I5=S5(),AR=100,yR=Buffer.allocUnsafe(0),OAt=16*1024,Lpe="buffer",Mpe="utf8";function Wpe(t,e){e._opening=!0,e._writing=!0,e._asyncDrainScheduled=!1;function r(i,a){if(i){e._reopening=!1,e._writing=!1,e._opening=!1,e.sync?process.nextTick(()=>{e.listenerCount("error")>0&&e.emit("error",i)}):e.emit("error",i);return}let o=e._reopening;e.fd=a,e.file=t,e._reopening=!1,e._opening=!1,e._writing=!1,e.sync?process.nextTick(()=>e.emit("ready")):e.emit("ready"),!e.destroyed&&(!e._writing&&e._len>e.minLength||e._flushPending?e._actualWrite():o&&process.nextTick(()=>e.emit("drain")))}let n=e.append?"a":"w",s=e.mode;if(e.sync)try{e.mkdir&&os.mkdirSync(Bpe.dirname(t),{recursive:!0});let i=os.openSync(t,n,s);r(null,i)}catch(i){throw r(i),i}else e.mkdir?os.mkdir(Bpe.dirname(t),{recursive:!0},i=>{if(i)return r(i);os.open(t,n,s,r)}):os.open(t,n,s,r)}function Wc(t){if(!(this instanceof Wc))return new Wc(t);let{fd:e,dest:r,minLength:n,maxLength:s,maxWrite:i,sync:a,append:o=!0,mkdir:c,retryEAGAIN:u,fsync:l,contentMode:d,mode:f}=t||{};e=e||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=s||0,this.maxWrite=i||OAt,this.sync=a||!1,this.writable=!0,this._fsync=l||!1,this.append=o||!1,this.mode=f,this.retryEAGAIN=u||(()=>!0),this.mkdir=c||!1;let p,m;if(d===Lpe)this._writingBuf=yR,this.write=DAt,this.flush=LAt,this.flushSync=WAt,this._actualWrite=FAt,p=()=>os.writeSync(this.fd,this._writingBuf),m=()=>os.write(this.fd,this._writingBuf,this.release);else if(d===void 0||d===Mpe)this._writingBuf="",this.write=kAt,this.flush=BAt,this.flushSync=MAt,this._actualWrite=$At,p=()=>os.writeSync(this.fd,this._writingBuf,"utf8"),m=()=>os.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${Mpe}" and "${Lpe}", but passed ${d}`);if(typeof e=="number")this.fd=e,process.nextTick(()=>this.emit("ready"));else if(typeof e=="string")Wpe(e,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(h,A)=>{if(h){if((h.code==="EAGAIN"||h.code==="EBUSY")&&this.retryEAGAIN(h,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{I5(AR),this.release(void 0,0)}catch(y){this.release(y)}else setTimeout(m,AR);else this._writing=!1,this.emit("error",h);return}this.emit("write",A);let g=v5(this._writingBuf,this._len,A);if(this._len=g.len,this._writingBuf=g.writingBuf,this._writingBuf.length){if(!this.sync){m();return}try{do{let y=p(),x=v5(this._writingBuf,this._len,y);this._len=x.len,this._writingBuf=x.writingBuf}while(this._writingBuf.length)}catch(y){this.release(y);return}}this._fsync&&os.fsyncSync(this.fd);let b=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):b>this.minLength?this._actualWrite():this._ending?b>0?this._actualWrite():(this._writing=!1,xR(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(PAt,this)):this.emit("drain"))},this.on("newListener",function(h){h==="drain"&&(this._asyncDrainScheduled=!1)})}function v5(t,e,r){return typeof t=="string"&&Buffer.byteLength(t)!==r&&(r=Buffer.from(t).subarray(0,r).toString().length),e=Math.max(e-r,0),t=t.slice(r),{writingBuf:t,len:e}}function PAt(t){t.listenerCount("drain")>0&&(t._asyncDrainScheduled=!1,t.emit("drain"))}NAt(Wc,RAt);function $pe(t,e){return t.length===0?yR:t.length===1?t[0]:Buffer.concat(t,e)}function kAt(t){if(this.destroyed)throw new Error("SonicBoom destroyed");let e=this._len+t.length,r=this._bufs;return this.maxLength&&e>this.maxLength?(this.emit("drop",t),this._lenthis.maxWrite?r.push(""+t):r[r.length-1]+=t,this._len=e,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",t),this._lenthis.maxWrite?(r.push([t]),n.push(t.length)):(r[r.length-1].push(t),n[n.length-1]+=t.length),this._len=e,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,t()):os.fsync(this.fd,n=>{this._flushPending=!1,t(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,t(n),this.off("drain",e)};this.once("drain",e),this.once("error",r)}function BAt(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&Fpe.call(this,t),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function LAt(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&Fpe.call(this,t),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}Wc.prototype.reopen=function(t){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(t)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(t&&(this.file=t),this._reopening=!0,this._writing)return;let e=this.fd;this.once("ready",()=>{e!==this.fd&&os.close(e,r=>{if(r)return this.emit("error",r)})}),Wpe(this.file,this)};Wc.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():xR(this)))};function MAt(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let t="";for(;this._bufs.length||t;){t.length<=0&&(t=this._bufs[0]);try{let e=os.writeSync(this.fd,t,"utf8"),r=v5(t,this._len,e);t=r.writingBuf,this._len=r.len,t.length<=0&&this._bufs.shift()}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;I5(AR)}}try{os.fsyncSync(this.fd)}catch{}}function WAt(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=yR);let t=yR;for(;this._bufs.length||t.length;){t.length<=0&&(t=$pe(this._bufs[0],this._lens[0]));try{let e=os.writeSync(this.fd,t);t=t.subarray(e),this._len=Math.max(this._len-e,0),t.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;I5(AR)}}}Wc.prototype.destroy=function(){this.destroyed||xR(this)};function $At(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let e=os.writeSync(this.fd,this._writingBuf,"utf8");t(null,e)}catch(e){t(e)}else os.write(this.fd,this._writingBuf,"utf8",t)}function FAt(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:$pe(this._bufs.shift(),this._lens.shift()),this.sync)try{let e=os.writeSync(this.fd,this._writingBuf);t(null,e)}catch(e){t(e)}else os.write(this.fd,this._writingBuf,t)}function xR(t){if(t.fd===-1){t.once("ready",xR.bind(null,t));return}t.destroyed=!0,t._bufs=[],t._lens=[],os.fsync(t.fd,e);function e(){t.fd!==1&&t.fd!==2?os.close(t.fd,r):r()}function r(n){if(n){t.emit("error",n);return}t._ending&&!t._writing&&t.emit("finish"),t.emit("close")}}Wc.SonicBoom=Wc;Wc.default=Wc;Upe.exports=Wc});var C5=E((rPr,Kpe)=>{"use strict";var $c={exit:[],beforeExit:[]},jpe={exit:jAt,beforeExit:HAt},FA;function UAt(){FA===void 0&&(FA=new FinalizationRegistry(QAt))}function qAt(t){$c[t].length>0||process.on(t,jpe[t])}function Hpe(t){$c[t].length>0||(process.removeListener(t,jpe[t]),$c.exit.length===0&&$c.beforeExit.length===0&&(FA=void 0))}function jAt(){Qpe("exit")}function HAt(){Qpe("beforeExit")}function Qpe(t){for(let e of $c[t]){let r=e.deref(),n=e.fn;r!==void 0&&n(r,t)}$c[t]=[]}function QAt(t){for(let e of["exit","beforeExit"]){let r=$c[e].indexOf(t);$c[e].splice(r,r+1),Hpe(e)}}function Gpe(t,e,r){if(e===void 0)throw new Error("the object can't be undefined");qAt(t);let n=new WeakRef(e);n.fn=r,UAt(),FA.register(e,n),$c[t].push(n)}function GAt(t,e){Gpe("exit",t,e)}function KAt(t,e){Gpe("beforeExit",t,e)}function VAt(t){if(FA!==void 0){FA.unregister(t);for(let e of["exit","beforeExit"])$c[e]=$c[e].filter(r=>{let n=r.deref();return n&&n!==t}),Hpe(e)}}Kpe.exports={register:GAt,registerBeforeExit:KAt,unregister:VAt}});var Vpe=E((nPr,zAt)=>{zAt.exports={name:"thread-stream",version:"2.7.0",description:"A streaming way to send data to a Node.js Worker Thread",main:"index.js",types:"index.d.ts",dependencies:{"real-require":"^0.2.0"},devDependencies:{"@types/node":"^20.1.0","@types/tap":"^15.0.0","@yao-pkg/pkg":"^5.11.5",desm:"^1.3.0",fastbench:"^1.0.1",husky:"^9.0.6","pino-elasticsearch":"^8.0.0","sonic-boom":"^3.0.0",standard:"^17.0.0",tap:"^16.2.0","ts-node":"^10.8.0",typescript:"^5.3.2","why-is-node-running":"^2.2.2"},scripts:{test:'standard && npm run transpile && tap "test/**/*.test.*js" && tap --ts test/*.test.*ts',"test:ci":"standard && npm run transpile && npm run test:ci:js && npm run test:ci:ts","test:ci:js":'tap --no-check-coverage --timeout=120 --coverage-report=lcovonly "test/**/*.test.*js"',"test:ci:ts":'tap --ts --no-check-coverage --coverage-report=lcovonly "test/**/*.test.*ts"',"test:yarn":'npm run transpile && tap "test/**/*.test.js" --no-check-coverage',transpile:"sh ./test/ts/transpile.sh",prepare:"husky install"},standard:{ignore:["test/ts/**/*"]},repository:{type:"git",url:"git+https://github.com/mcollina/thread-stream.git"},keywords:["worker","thread","threads","stream"],author:"Matteo Collina ",license:"MIT",bugs:{url:"https://github.com/mcollina/thread-stream/issues"},homepage:"https://github.com/mcollina/thread-stream#readme"}});var Ype=E((sPr,zpe)=>{"use strict";function YAt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);if(a===r){s(null,"ok");return}let o=a,c=u=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{o=a,a=Atomics.load(t,e),a===o?c(u>=1e3?1e3:u*2):a===r?s(null,"ok"):s(null,"not-equal")},u)};c(1)}function JAt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);if(a!==r){s(null,"ok");return}let o=c=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{a=Atomics.load(t,e),a!==r?s(null,"ok"):o(c>=1e3?1e3:c*2)},c)};o(1)}zpe.exports={wait:YAt,waitDiff:JAt}});var Xpe=E((iPr,Jpe)=>{"use strict";Jpe.exports={WRITE_INDEX:4,READ_INDEX:8}});var n0e=E((aPr,r0e)=>{"use strict";var{version:XAt}=Vpe(),{EventEmitter:ZAt}=require("events"),{Worker:eyt}=require("worker_threads"),{join:tyt}=require("path"),{pathToFileURL:ryt}=require("url"),{wait:nyt}=Ype(),{WRITE_INDEX:Oa,READ_INDEX:Mu}=Xpe(),syt=require("buffer"),iyt=require("assert"),Se=Symbol("kImpl"),ayt=syt.constants.MAX_STRING_LENGTH,i1=class{constructor(e){this._value=e}deref(){return this._value}},ER=class{register(){}unregister(){}},oyt=process.env.NODE_V8_COVERAGE?ER:global.FinalizationRegistry||ER,cyt=process.env.NODE_V8_COVERAGE?i1:global.WeakRef||i1,Zpe=new oyt(t=>{t.exited||t.terminate()});function uyt(t,e){let{filename:r,workerData:n}=e,i=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||tyt(__dirname,"lib","worker.js"),a=new eyt(i,{...e.workerOpts,trackUnmanagedFds:!1,workerData:{filename:r.indexOf("file://")===0?r:ryt(r).href,dataBuf:t[Se].dataBuf,stateBuf:t[Se].stateBuf,workerData:{$context:{threadStreamVersion:XAt},...n}}});return a.stream=new i1(t),a.on("message",lyt),a.on("exit",t0e),Zpe.register(t,a),a}function e0e(t){iyt(!t[Se].sync),t[Se].needDrain&&(t[Se].needDrain=!1,t.emit("drain"))}function bR(t){let e=Atomics.load(t[Se].state,Oa),r=t[Se].data.length-e;if(r>0){if(t[Se].buf.length===0){t[Se].flushing=!1,t[Se].ending?O5(t):t[Se].needDrain&&process.nextTick(e0e,t);return}let n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);s<=r?(t[Se].buf=t[Se].buf.slice(r),_R(t,n,bR.bind(null,t))):t.flush(()=>{if(!t.destroyed){for(Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);s>t[Se].data.length;)r=r/2,n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);t[Se].buf=t[Se].buf.slice(r),_R(t,n,bR.bind(null,t))}})}else if(r===0){if(e===0&&t[Se].buf.length===0)return;t.flush(()=>{Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0),bR(t)})}else Wu(t,new Error("overwritten"))}function lyt(t){let e=this.stream.deref();if(e===void 0){this.exited=!0,this.terminate();return}switch(t.code){case"READY":this.stream=new cyt(e),e.flush(()=>{e[Se].ready=!0,e.emit("ready")});break;case"ERROR":Wu(e,t.err);break;case"EVENT":Array.isArray(t.args)?e.emit(t.name,...t.args):e.emit(t.name,t.args);break;case"WARNING":process.emitWarning(t.err);break;default:Wu(e,new Error("this should not happen: "+t.code))}}function t0e(t){let e=this.stream.deref();e!==void 0&&(Zpe.unregister(e),e.worker.exited=!0,e.worker.off("exit",t0e),Wu(e,t!==0?new Error("the worker thread exited"):null))}var w5=class extends ZAt{constructor(e={}){if(super(),e.bufferSize<4)throw new Error("bufferSize must at least fit a 4-byte utf-8 char");this[Se]={},this[Se].stateBuf=new SharedArrayBuffer(128),this[Se].state=new Int32Array(this[Se].stateBuf),this[Se].dataBuf=new SharedArrayBuffer(e.bufferSize||4*1024*1024),this[Se].data=Buffer.from(this[Se].dataBuf),this[Se].sync=e.sync||!1,this[Se].ending=!1,this[Se].ended=!1,this[Se].needDrain=!1,this[Se].destroyed=!1,this[Se].flushing=!1,this[Se].ready=!1,this[Se].finished=!1,this[Se].errored=null,this[Se].closed=!1,this[Se].buf="",this.worker=uyt(this,e),this.on("message",(r,n)=>{this.worker.postMessage(r,n)})}write(e){if(this[Se].destroyed)return R5(this,new Error("the worker has exited")),!1;if(this[Se].ending)return R5(this,new Error("the worker is ending")),!1;if(this[Se].flushing&&this[Se].buf.length+e.length>=ayt)try{T5(this),this[Se].flushing=!0}catch(r){return Wu(this,r),!1}if(this[Se].buf+=e,this[Se].sync)try{return T5(this),!0}catch(r){return Wu(this,r),!1}return this[Se].flushing||(this[Se].flushing=!0,setImmediate(bR,this)),this[Se].needDrain=this[Se].data.length-this[Se].buf.length-Atomics.load(this[Se].state,Oa)<=0,!this[Se].needDrain}end(){this[Se].destroyed||(this[Se].ending=!0,O5(this))}flush(e){if(this[Se].destroyed){typeof e=="function"&&process.nextTick(e,new Error("the worker has exited"));return}let r=Atomics.load(this[Se].state,Oa);nyt(this[Se].state,Mu,r,1/0,(n,s)=>{if(n){Wu(this,n),process.nextTick(e,n);return}if(s==="not-equal"){this.flush(e);return}process.nextTick(e)})}flushSync(){this[Se].destroyed||(T5(this),N5(this))}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[Se].ready}get destroyed(){return this[Se].destroyed}get closed(){return this[Se].closed}get writable(){return!this[Se].destroyed&&!this[Se].ending}get writableEnded(){return this[Se].ending}get writableFinished(){return this[Se].finished}get writableNeedDrain(){return this[Se].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[Se].errored}};function R5(t,e){setImmediate(()=>{t.emit("error",e)})}function Wu(t,e){t[Se].destroyed||(t[Se].destroyed=!0,e&&(t[Se].errored=e,R5(t,e)),t.worker.exited?setImmediate(()=>{t[Se].closed=!0,t.emit("close")}):t.worker.terminate().catch(()=>{}).then(()=>{t[Se].closed=!0,t.emit("close")}))}function _R(t,e,r){let n=Atomics.load(t[Se].state,Oa),s=Buffer.byteLength(e);return t[Se].data.write(e,n),Atomics.store(t[Se].state,Oa,n+s),Atomics.notify(t[Se].state,Oa),r(),!0}function O5(t){if(!(t[Se].ended||!t[Se].ending||t[Se].flushing)){t[Se].ended=!0;try{t.flushSync();let e=Atomics.load(t[Se].state,Mu);Atomics.store(t[Se].state,Oa,-1),Atomics.notify(t[Se].state,Oa);let r=0;for(;e!==-1;){if(Atomics.wait(t[Se].state,Mu,e,1e3),e=Atomics.load(t[Se].state,Mu),e===-2){Wu(t,new Error("end() failed"));return}if(++r===10){Wu(t,new Error("end() took too long (10s)"));return}}process.nextTick(()=>{t[Se].finished=!0,t.emit("finish")})}catch(e){Wu(t,e)}}}function T5(t){let e=()=>{t[Se].ending?O5(t):t[Se].needDrain&&process.nextTick(e0e,t)};for(t[Se].flushing=!1;t[Se].buf.length!==0;){let r=Atomics.load(t[Se].state,Oa),n=t[Se].data.length-r;if(n===0){N5(t),Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);continue}else if(n<0)throw new Error("overwritten");let s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);if(i<=n)t[Se].buf=t[Se].buf.slice(n),_R(t,s,e);else{for(N5(t),Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);i>t[Se].buf.length;)n=n/2,s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);t[Se].buf=t[Se].buf.slice(n),_R(t,s,e)}}}function N5(t){if(t[Se].flushing)throw new Error("unable to flush while flushing");let e=Atomics.load(t[Se].state,Oa),r=0;for(;;){let n=Atomics.load(t[Se].state,Mu);if(n===-2)throw Error("_flushSync failed");if(n!==e)Atomics.wait(t[Se].state,Mu,n,1e3);else break;if(++r===10)throw new Error("_flushSync took too long (10s)")}}r0e.exports=w5});var D5=E((oPr,s0e)=>{"use strict";var{createRequire:dyt}=require("module"),fyt=m5(),{join:P5,isAbsolute:pyt,sep:myt}=require("path"),hyt=S5(),k5=C5(),gyt=n0e();function Ayt(t){k5.register(t,xyt),k5.registerBeforeExit(t,byt),t.on("close",function(){k5.unregister(t)})}function yyt(t,e,r){let n=new gyt({filename:t,workerData:e,workerOpts:r});n.on("ready",s),n.on("close",function(){process.removeListener("exit",i)}),process.on("exit",i);function s(){process.removeListener("exit",i),n.unref(),r.autoEnd!==!1&&Ayt(n)}function i(){n.closed||(n.flushSync(),hyt(100),n.end())}return n}function xyt(t){t.ref(),t.flushSync(),t.end(),t.once("close",function(){t.unref()})}function byt(t){t.flushSync()}function Eyt(t){let{pipeline:e,targets:r,levels:n,dedupe:s,options:i={},worker:a={},caller:o=fyt()}=t,c=typeof o=="string"?[o]:o,u="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},l=t.target;if(l&&r)throw new Error("only one of target or targets can be specified");return r?(l=u["pino-worker"]||P5(__dirname,"worker.js"),i.targets=r.map(f=>({...f,target:d(f.target)}))):e&&(l=u["pino-pipeline-worker"]||P5(__dirname,"worker-pipeline.js"),i.targets=e.map(f=>({...f,target:d(f.target)}))),n&&(i.levels=n),s&&(i.dedupe=s),i.pinoWillSendConfig=!0,yyt(d(l),i,a);function d(f){if(f=u[f]||f,pyt(f)||f.indexOf("file://")===0)return f;if(f==="pino/file")return P5(__dirname,"..","file.js");let p;for(let m of c)try{let h=m==="node:repl"?process.cwd()+myt:m;p=dyt(h).resolve(f);break}catch{continue}if(!p)throw new Error(`unable to determine transport target for "${f}"`);return p}}s0e.exports=Eyt});var IR=E((cPr,h0e)=>{"use strict";var i0e=Dpe(),{mapHttpRequest:_yt,mapHttpResponse:Syt}=p5(),L5=qpe(),a0e=C5(),{lsCacheSym:vyt,chindingsSym:u0e,writeSym:o0e,serializersSym:l0e,formatOptsSym:c0e,endSym:Iyt,stringifiersSym:d0e,stringifySym:f0e,stringifySafeSym:M5,wildcardFirstSym:p0e,nestedKeySym:Cyt,formattersSym:m0e,messageKeySym:Tyt,errorKeySym:wyt,nestedKeyStrSym:Ryt,msgPrefixSym:SR}=$A(),{isMainThread:Nyt}=require("worker_threads"),Oyt=D5();function UA(){}function Pyt(t,e){if(!e)return r;return function(...s){e.call(this,s,r,t)};function r(n,...s){if(typeof n=="object"){let i=n;n!==null&&(n.method&&n.headers&&n.socket?n=_yt(n):typeof n.setHeader=="function"&&(n=Syt(n)));let a;i===null&&s.length===0?a=[null]:(i=s.shift(),a=s),typeof this[SR]=="string"&&i!==void 0&&i!==null&&(i=this[SR]+i),this[o0e](n,i0e(i,a,this[c0e]),t)}else{let i=n===void 0?s.shift():n;typeof this[SR]=="string"&&i!==void 0&&i!==null&&(i=this[SR]+i),this[o0e](null,i0e(i,s,this[c0e]),t)}}}function B5(t){let e="",r=0,n=!1,s=255,i=t.length;if(i>100)return JSON.stringify(t);for(var a=0;a=32;a++)s=t.charCodeAt(a),(s===34||s===92)&&(e+=t.slice(r,a)+"\\",r=a,n=!0);return n?e+=t.slice(r):e=t,s<32?JSON.stringify(t):'"'+e+'"'}function kyt(t,e,r,n){let s=this[f0e],i=this[M5],a=this[d0e],o=this[Iyt],c=this[u0e],u=this[l0e],l=this[m0e],d=this[Tyt],f=this[wyt],p=this[vyt][r]+n;p=p+c;let m;l.log&&(t=l.log(t));let h=a[p0e],A="";for(let b in t)if(m=t[b],Object.prototype.hasOwnProperty.call(t,b)&&m!==void 0){u[b]?m=u[b](m):b===f&&u.err&&(m=u.err(m));let y=a[b]||h;switch(typeof m){case"undefined":case"function":continue;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":y&&(m=y(m));break;case"string":m=(y||B5)(m);break;default:m=(y||s)(m,i)}if(m===void 0)continue;let x=B5(b);A+=","+x+":"+m}let g="";if(e!==void 0){m=u[d]?u[d](e):e;let b=a[d]||h;switch(typeof m){case"function":break;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":b&&(m=b(m)),g=',"'+d+'":'+m;break;case"string":m=(b||B5)(m),g=',"'+d+'":'+m;break;default:m=(b||s)(m,i),g=',"'+d+'":'+m}}return this[Cyt]&&A?p+this[Ryt]+A.slice(1)+"}"+g+o:p+A+g+o}function Dyt(t,e){let r,n=t[u0e],s=t[f0e],i=t[M5],a=t[d0e],o=a[p0e],c=t[l0e],u=t[m0e].bindings;e=u(e);for(let l in e)if(r=e[l],(l!=="level"&&l!=="serializers"&&l!=="formatters"&&l!=="customLevels"&&e.hasOwnProperty(l)&&r!==void 0)===!0){if(r=c[l]?c[l](r):r,r=(a[l]||o||s)(r,i),r===void 0)continue;n+=',"'+l+'":'+r}return n}function Byt(t){return t.write!==t.constructor.prototype.write}var Lyt=process.env.NODE_V8_COVERAGE||process.env.V8_COVERAGE;function vR(t){let e=new L5(t);return e.on("error",r),!Lyt&&!t.sync&&Nyt&&(a0e.register(e,Myt),e.on("close",function(){a0e.unregister(e)})),e;function r(n){if(n.code==="EPIPE"){e.write=UA,e.end=UA,e.flushSync=UA,e.destroy=UA;return}e.removeListener("error",r),e.emit("error",n)}}function Myt(t,e){t.destroyed||(e==="beforeExit"?(t.flush(),t.on("drain",function(){t.end()})):t.flushSync())}function Wyt(t){return function(r,n,s={},i){if(typeof s=="string")i=vR({dest:s}),s={};else if(typeof i=="string"){if(s&&s.transport)throw Error("only one of option.transport or stream can be specified");i=vR({dest:i})}else if(s instanceof L5||s.writable||s._writableState)i=s,s={};else if(s.transport){if(s.transport instanceof L5||s.transport.writable||s.transport._writableState)throw Error("option.transport do not allow stream, please pass to option directly. e.g. pino(transport)");if(s.transport.targets&&s.transport.targets.length&&s.formatters&&typeof s.formatters.level=="function")throw Error("option.transport.targets do not allow custom level formatters");let c;s.customLevels&&(c=s.useOnlyCustomLevels?s.customLevels:Object.assign({},s.levels,s.customLevels)),i=Oyt({caller:n,...s.transport,levels:c})}if(s=Object.assign({},t,s),s.serializers=Object.assign({},t.serializers,s.serializers),s.formatters=Object.assign({},t.formatters,s.formatters),s.prettyPrint)throw new Error("prettyPrint option is no longer supported, see the pino-pretty package (https://github.com/pinojs/pino-pretty)");let{enabled:a,onChild:o}=s;return a===!1&&(s.level="silent"),o||(s.onChild=UA),i||(Byt(process.stdout)?i=process.stdout:i=vR({fd:process.stdout.fd||1})),{opts:s,stream:i}}}function $yt(t,e){try{return JSON.stringify(t)}catch{try{return(e||this[M5])(t)}catch{return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function Fyt(t,e,r){return{level:t,bindings:e,log:r}}function Uyt(t){let e=Number(t);return typeof t=="string"&&Number.isFinite(e)?e:t===void 0?1:t}h0e.exports={noop:UA,buildSafeSonicBoom:vR,asChindings:Dyt,asJson:kyt,genLog:Pyt,createArgsNormalizer:Wyt,stringify:$yt,buildFormatters:Fyt,normalizeDestFileDescriptor:Uyt}});var CR=E((uPr,g0e)=>{var qyt={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},jyt={ASC:"ASC",DESC:"DESC"};g0e.exports={DEFAULT_LEVELS:qyt,SORTING_ORDER:jyt}});var F5=E((lPr,b0e)=>{"use strict";var{lsCacheSym:Hyt,levelValSym:W5,useOnlyCustomLevelsSym:Qyt,streamSym:Gyt,formattersSym:Kyt,hooksSym:Vyt,levelCompSym:A0e}=$A(),{noop:zyt,genLog:xm}=IR(),{DEFAULT_LEVELS:$u,SORTING_ORDER:y0e}=CR(),x0e={fatal:t=>{let e=xm($u.fatal,t);return function(...r){let n=this[Gyt];if(e.call(this,...r),typeof n.flushSync=="function")try{n.flushSync()}catch{}}},error:t=>xm($u.error,t),warn:t=>xm($u.warn,t),info:t=>xm($u.info,t),debug:t=>xm($u.debug,t),trace:t=>xm($u.trace,t)},$5=Object.keys($u).reduce((t,e)=>(t[$u[e]]=e,t),{}),Yyt=Object.keys($5).reduce((t,e)=>(t[e]='{"level":'+Number(e),t),{});function Jyt(t){let e=t[Kyt].level,{labels:r}=t.levels,n={};for(let s in r){let i=e(r[s],Number(s));n[s]=JSON.stringify(i).slice(0,-1)}return t[Hyt]=n,t}function Xyt(t,e){if(e)return!1;switch(t){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function Zyt(t){let{labels:e,values:r}=this.levels;if(typeof t=="number"){if(e[t]===void 0)throw Error("unknown level value"+t);t=e[t]}if(r[t]===void 0)throw Error("unknown level "+t);let n=this[W5],s=this[W5]=r[t],i=this[Qyt],a=this[A0e],o=this[Vyt].logMethod;for(let c in r){if(a(r[c],s)===!1){this[c]=zyt;continue}this[c]=Xyt(c,i)?x0e[c](o):xm(r[c],o)}this.emit("level-change",t,s,e[n],n,this)}function ext(t){let{levels:e,levelVal:r}=this;return e&&e.labels?e.labels[r]:""}function txt(t){let{values:e}=this.levels,r=e[t];return r!==void 0&&this[A0e](r,this[W5])}function rxt(t,e,r){return t===y0e.DESC?e<=r:e>=r}function nxt(t){return typeof t=="string"?rxt.bind(null,t):t}function sxt(t=null,e=!1){let r=t?Object.keys(t).reduce((i,a)=>(i[t[a]]=a,i),{}):null,n=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),e?null:$5,r),s=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),e?null:$u,t);return{labels:n,values:s}}function ixt(t,e,r){if(typeof t=="number"){if(![].concat(Object.keys(e||{}).map(i=>e[i]),r?[]:Object.keys($5).map(i=>+i),1/0).includes(t))throw Error(`default level:${t} must be included in custom levels`);return}let n=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),r?null:$u,e);if(!(t in n))throw Error(`default level:${t} must be included in custom levels`)}function axt(t,e){let{labels:r,values:n}=t;for(let s in e){if(s in n)throw Error("levels cannot be overridden");if(e[s]in r)throw Error("pre-existing level values cannot be used for new levels")}}function oxt(t){if(typeof t!="function"&&!(typeof t=="string"&&Object.values(y0e).includes(t)))throw new Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}b0e.exports={initialLsCache:Yyt,genLsCache:Jyt,levelMethods:x0e,getLevel:ext,setLevel:Zyt,isLevelEnabled:txt,mappings:sxt,assertNoLevelCollisions:axt,assertDefaultLevelFound:ixt,genLevelComparison:nxt,assertLevelComparison:oxt}});var U5=E((dPr,E0e)=>{"use strict";E0e.exports={version:"8.21.0"}});var P0e=E((pPr,O0e)=>{"use strict";var{EventEmitter:cxt}=require("events"),{lsCacheSym:uxt,levelValSym:lxt,setLevelSym:j5,getLevelSym:_0e,chindingsSym:H5,parsedChindingsSym:dxt,mixinSym:fxt,asJsonSym:T0e,writeSym:pxt,mixinMergeStrategySym:mxt,timeSym:hxt,timeSliceIndexSym:gxt,streamSym:w0e,serializersSym:bm,formattersSym:q5,errorKeySym:Axt,messageKeySym:yxt,useOnlyCustomLevelsSym:xxt,needsMetadataGsym:bxt,redactFmtSym:Ext,stringifySym:_xt,formatOptsSym:Sxt,stringifiersSym:vxt,msgPrefixSym:S0e}=$A(),{getLevel:Ixt,setLevel:Cxt,isLevelEnabled:Txt,mappings:wxt,initialLsCache:Rxt,genLsCache:Nxt,assertNoLevelCollisions:Oxt}=F5(),{asChindings:R0e,asJson:Pxt,buildFormatters:v0e,stringify:I0e}=IR(),{version:kxt}=U5(),Dxt=E5(),Bxt=class{},N0e={constructor:Bxt,child:Lxt,bindings:Mxt,setBindings:Wxt,flush:qxt,isLevelEnabled:Txt,version:kxt,get level(){return this[_0e]()},set level(t){this[j5](t)},get levelVal(){return this[lxt]},set levelVal(t){throw Error("levelVal is read-only")},[uxt]:Rxt,[pxt]:Fxt,[T0e]:Pxt,[_0e]:Ixt,[j5]:Cxt};Object.setPrototypeOf(N0e,cxt.prototype);O0e.exports=function(){return Object.create(N0e)};var C0e=t=>t;function Lxt(t,e){if(!t)throw Error("missing bindings for child Pino");e=e||{};let r=this[bm],n=this[q5],s=Object.create(this);if(e.hasOwnProperty("serializers")===!0){s[bm]=Object.create(null);for(let l in r)s[bm][l]=r[l];let c=Object.getOwnPropertySymbols(r);for(var i=0;i{"use strict";var{hasOwnProperty:a1}=Object.prototype,_m=K5();_m.configure=K5;_m.stringify=_m;_m.default=_m;V5.stringify=_m;V5.configure=K5;B0e.exports=_m;var jxt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function fp(t){return t.length<5e3&&!jxt.test(t)?`"${t}"`:JSON.stringify(t)}function Q5(t,e){if(t.length>200||e)return t.sort(e);for(let r=1;rn;)t[s]=t[s-1],s--;t[s]=n}return t}var Hxt=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function G5(t){return Hxt.call(t)!==void 0&&t.length!==0}function k0e(t,e,r){t.length= 1`)}return r===void 0?1/0:r}function Em(t){return t===1?"1 item":`${t} items`}function Vxt(t){let e=new Set;for(let r of t)(typeof r=="string"||typeof r=="number")&&e.add(String(r));return e}function zxt(t){if(a1.call(t,"strict")){let e=t.strict;if(typeof e!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(e)return r=>{let n=`Object can not safely be stringified. Received type ${typeof r}`;throw typeof r!="function"&&(n+=` (${r.toString()})`),new Error(n)}}}function K5(t){t={...t};let e=zxt(t);e&&(t.bigint===void 0&&(t.bigint=!1),"circularValue"in t||(t.circularValue=Error));let r=Qxt(t),n=Kxt(t,"bigint"),s=Gxt(t),i=typeof s=="function"?s:void 0,a=D0e(t,"maximumDepth"),o=D0e(t,"maximumBreadth");function c(p,m,h,A,g,b){let y=m[p];switch(typeof y=="object"&&y!==null&&typeof y.toJSON=="function"&&(y=y.toJSON(p)),y=A.call(m,p,y),typeof y){case"string":return fp(y);case"object":{if(y===null)return"null";if(h.indexOf(y)!==-1)return r;let x="",v=",",I=b;if(Array.isArray(y)){if(y.length===0)return"[]";if(a{"use strict";vpe.exports=kgt;function kgt(t){let{secret:e,censor:r,compileRestore:n,serialize:s,groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}=t,u=[{secret:e,censor:r,compileRestore:n}];return s!==!1&&u.push({serialize:s}),c>0&&u.push({groupRedact:i,nestedRedact:a,wildcards:o,wcLen:c}),Object.assign(...u)}});var wpe=E((tPr,Tpe)=>{"use strict";var Ipe=ppe(),Lgt=gpe(),Bgt=ype(),Mgt=Spe(),{groupRedact:Wgt,nestedRedact:$gt}=A5(),Fgt=Cpe(),Ugt=AR(),qgt=Ipe(),y5=t=>t;y5.restore=y5;var jgt="[REDACTED]";x5.rx=Ugt;x5.validator=Ipe;Tpe.exports=x5;function x5(t={}){let e=Array.from(new Set(t.paths||[])),r="serialize"in t&&(t.serialize===!1||typeof t.serialize=="function")?t.serialize:JSON.stringify,n=t.remove;if(n===!0&&r!==JSON.stringify)throw Error("fast-redact \u2013 remove option may only be set when serializer is JSON.stringify");let s=n===!0?void 0:"censor"in t?t.censor:jgt,i=typeof s=="function",a=i&&s.length>1;if(e.length===0)return r||y5;qgt({paths:e,serialize:r,censor:s});let{wildcards:o,wcLen:c,secret:u}=Lgt({paths:e,censor:s}),l=Mgt(),d="strict"in t?t.strict:!0;return Bgt({secret:u,wcLen:c,serialize:r,strict:d,isCensorFct:i,censorFctTakesPath:a},Fgt({secret:u,censor:s,compileRestore:l,serialize:r,groupRedact:Wgt,nestedRedact:$gt,wildcards:o,wcLen:c}))}});var $A=E((rPr,Rpe)=>{"use strict";var Hgt=Symbol("pino.setLevel"),Qgt=Symbol("pino.getLevel"),Ggt=Symbol("pino.levelVal"),Vgt=Symbol("pino.levelComp"),zgt=Symbol("pino.useLevelLabels"),Kgt=Symbol("pino.useOnlyCustomLevels"),Ygt=Symbol("pino.mixin"),Jgt=Symbol("pino.lsCache"),Xgt=Symbol("pino.chindings"),Zgt=Symbol("pino.asJson"),eAt=Symbol("pino.write"),tAt=Symbol("pino.redactFmt"),rAt=Symbol("pino.time"),nAt=Symbol("pino.timeSliceIndex"),sAt=Symbol("pino.stream"),iAt=Symbol("pino.stringify"),aAt=Symbol("pino.stringifySafe"),oAt=Symbol("pino.stringifiers"),cAt=Symbol("pino.end"),uAt=Symbol("pino.formatOpts"),lAt=Symbol("pino.messageKey"),dAt=Symbol("pino.errorKey"),fAt=Symbol("pino.nestedKey"),pAt=Symbol("pino.nestedKeyStr"),mAt=Symbol("pino.mixinMergeStrategy"),hAt=Symbol("pino.msgPrefix"),gAt=Symbol("pino.wildcardFirst"),AAt=Symbol.for("pino.serializers"),yAt=Symbol.for("pino.formatters"),xAt=Symbol.for("pino.hooks"),bAt=Symbol.for("pino.metadata");Rpe.exports={setLevelSym:Hgt,getLevelSym:Qgt,levelValSym:Ggt,levelCompSym:Vgt,useLevelLabelsSym:zgt,mixinSym:Ygt,lsCacheSym:Jgt,chindingsSym:Xgt,asJsonSym:Zgt,writeSym:eAt,serializersSym:AAt,redactFmtSym:tAt,timeSym:rAt,timeSliceIndexSym:nAt,streamSym:sAt,stringifySym:iAt,stringifySafeSym:aAt,stringifiersSym:oAt,endSym:cAt,formatOptsSym:uAt,messageKeySym:lAt,errorKeySym:dAt,nestedKeySym:fAt,wildcardFirstSym:gAt,needsMetadataGsym:bAt,useOnlyCustomLevelsSym:Kgt,formattersSym:yAt,hooksSym:xAt,nestedKeyStrSym:pAt,mixinMergeStrategySym:mAt,msgPrefixSym:hAt}});var _5=E((nPr,Dpe)=>{"use strict";var E5=wpe(),{redactFmtSym:EAt,wildcardFirstSym:yR}=$A(),{rx:b5,validator:_At}=E5,Npe=_At({ERR_PATHS_MUST_BE_STRINGS:()=>"pino \u2013 redacted paths must be strings",ERR_INVALID_PATH:t=>`pino \u2013 redact paths array contains an invalid path (${t})`}),Ope="[Redacted]",Ppe=!1;function SAt(t,e){let{paths:r,censor:n}=vAt(t),s=r.reduce((o,c)=>{b5.lastIndex=0;let u=b5.exec(c),l=b5.exec(c),d=u[1]!==void 0?u[1].replace(/^(?:"|'|`)(.*)(?:"|'|`)$/,"$1"):u[0];if(d==="*"&&(d=yR),l===null)return o[d]=null,o;if(o[d]===null)return o;let{index:f}=l,p=`${c.substr(f,c.length-1)}`;return o[d]=o[d]||[],d!==yR&&o[d].length===0&&o[d].push(...o[yR]||[]),d===yR&&Object.keys(o).forEach(function(m){o[m]&&o[m].push(p)}),o[d].push(p),o},{}),i={[EAt]:E5({paths:r,censor:n,serialize:e,strict:Ppe})},a=(...o)=>e(typeof n=="function"?n(...o):n);return[...Object.keys(s),...Object.getOwnPropertySymbols(s)].reduce((o,c)=>{if(s[c]===null)o[c]=u=>a(u,[c]);else{let u=typeof n=="function"?(l,d)=>n(l,[c,...d]):n;o[c]=E5({paths:s[c],censor:u,serialize:e,strict:Ppe})}return o},i)}function vAt(t){if(Array.isArray(t))return t={paths:t,censor:Ope},Npe(t),t;let{paths:e,censor:r=Ope,remove:n}=t;if(Array.isArray(e)===!1)throw Error("pino \u2013 redact must contain an array of strings");return n===!0&&(r=void 0),Npe({paths:e,censor:r}),{paths:e,censor:r}}Dpe.exports=SAt});var Lpe=E((sPr,kpe)=>{"use strict";var CAt=()=>"",IAt=()=>`,"time":${Date.now()}`,TAt=()=>`,"time":${Math.round(Date.now()/1e3)}`,wAt=()=>`,"time":"${new Date(Date.now()).toISOString()}"`;kpe.exports={nullTime:CAt,epochTime:IAt,unixTime:TAt,isoTime:wAt}});var Mpe=E((iPr,Bpe)=>{"use strict";function RAt(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}Bpe.exports=NAt;function NAt(t,e,r){var n=r&&r.stringify||RAt,s=1;if(typeof t=="object"&&t!==null){var i=e.length+s;if(i===1)return t;var a=new Array(i);a[0]=n(t);for(var o=1;o-1?d:0,t.charCodeAt(p+1)){case 100:case 102:if(l>=c||e[l]==null)break;d=c||e[l]==null)break;d=c||e[l]===void 0)break;d",d=p+2,p++;break}u+=n(e[l]),d=p+2,p++;break;case 115:if(l>=c)break;d{"use strict";if(typeof SharedArrayBuffer<"u"&&typeof Atomics<"u"){let e=function(r){if((r>0&&r<1/0)===!1)throw typeof r!="number"&&typeof r!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");Atomics.wait(t,0,0,Number(r))},t=new Int32Array(new SharedArrayBuffer(4));S5.exports=e}else{let t=function(e){if((e>0&&e<1/0)===!1)throw typeof e!="number"&&typeof e!="bigint"?TypeError("sleep: ms must be a number"):RangeError("sleep: ms must be a number that is greater than 0 but less than Infinity");let n=Date.now()+Number(e);for(;n>Date.now(););};S5.exports=t}});var Qpe=E((oPr,Hpe)=>{"use strict";var os=require("fs"),OAt=require("events"),PAt=require("util").inherits,Wpe=require("path"),I5=v5(),xR=100,bR=Buffer.allocUnsafe(0),DAt=16*1024,$pe="buffer",Fpe="utf8";function Upe(t,e){e._opening=!0,e._writing=!0,e._asyncDrainScheduled=!1;function r(i,a){if(i){e._reopening=!1,e._writing=!1,e._opening=!1,e.sync?process.nextTick(()=>{e.listenerCount("error")>0&&e.emit("error",i)}):e.emit("error",i);return}let o=e._reopening;e.fd=a,e.file=t,e._reopening=!1,e._opening=!1,e._writing=!1,e.sync?process.nextTick(()=>e.emit("ready")):e.emit("ready"),!e.destroyed&&(!e._writing&&e._len>e.minLength||e._flushPending?e._actualWrite():o&&process.nextTick(()=>e.emit("drain")))}let n=e.append?"a":"w",s=e.mode;if(e.sync)try{e.mkdir&&os.mkdirSync(Wpe.dirname(t),{recursive:!0});let i=os.openSync(t,n,s);r(null,i)}catch(i){throw r(i),i}else e.mkdir?os.mkdir(Wpe.dirname(t),{recursive:!0},i=>{if(i)return r(i);os.open(t,n,s,r)}):os.open(t,n,s,r)}function Mc(t){if(!(this instanceof Mc))return new Mc(t);let{fd:e,dest:r,minLength:n,maxLength:s,maxWrite:i,sync:a,append:o=!0,mkdir:c,retryEAGAIN:u,fsync:l,contentMode:d,mode:f}=t||{};e=e||r,this._len=0,this.fd=-1,this._bufs=[],this._lens=[],this._writing=!1,this._ending=!1,this._reopening=!1,this._asyncDrainScheduled=!1,this._flushPending=!1,this._hwm=Math.max(n||0,16387),this.file=null,this.destroyed=!1,this.minLength=n||0,this.maxLength=s||0,this.maxWrite=i||DAt,this.sync=a||!1,this.writable=!0,this._fsync=l||!1,this.append=o||!1,this.mode=f,this.retryEAGAIN=u||(()=>!0),this.mkdir=c||!1;let p,m;if(d===$pe)this._writingBuf=bR,this.write=BAt,this.flush=WAt,this.flushSync=FAt,this._actualWrite=qAt,p=()=>os.writeSync(this.fd,this._writingBuf),m=()=>os.write(this.fd,this._writingBuf,this.release);else if(d===void 0||d===Fpe)this._writingBuf="",this.write=LAt,this.flush=MAt,this.flushSync=$At,this._actualWrite=UAt,p=()=>os.writeSync(this.fd,this._writingBuf,"utf8"),m=()=>os.write(this.fd,this._writingBuf,"utf8",this.release);else throw new Error(`SonicBoom supports "${Fpe}" and "${$pe}", but passed ${d}`);if(typeof e=="number")this.fd=e,process.nextTick(()=>this.emit("ready"));else if(typeof e=="string")Upe(e,this);else throw new Error("SonicBoom supports only file descriptors and files");if(this.minLength>=this.maxWrite)throw new Error(`minLength should be smaller than maxWrite (${this.maxWrite})`);this.release=(h,A)=>{if(h){if((h.code==="EAGAIN"||h.code==="EBUSY")&&this.retryEAGAIN(h,this._writingBuf.length,this._len-this._writingBuf.length))if(this.sync)try{I5(xR),this.release(void 0,0)}catch(y){this.release(y)}else setTimeout(m,xR);else this._writing=!1,this.emit("error",h);return}this.emit("write",A);let g=C5(this._writingBuf,this._len,A);if(this._len=g.len,this._writingBuf=g.writingBuf,this._writingBuf.length){if(!this.sync){m();return}try{do{let y=p(),x=C5(this._writingBuf,this._len,y);this._len=x.len,this._writingBuf=x.writingBuf}while(this._writingBuf.length)}catch(y){this.release(y);return}}this._fsync&&os.fsyncSync(this.fd);let b=this._len;this._reopening?(this._writing=!1,this._reopening=!1,this.reopen()):b>this.minLength?this._actualWrite():this._ending?b>0?this._actualWrite():(this._writing=!1,ER(this)):(this._writing=!1,this.sync?this._asyncDrainScheduled||(this._asyncDrainScheduled=!0,process.nextTick(kAt,this)):this.emit("drain"))},this.on("newListener",function(h){h==="drain"&&(this._asyncDrainScheduled=!1)})}function C5(t,e,r){return typeof t=="string"&&Buffer.byteLength(t)!==r&&(r=Buffer.from(t).subarray(0,r).toString().length),e=Math.max(e-r,0),t=t.slice(r),{writingBuf:t,len:e}}function kAt(t){t.listenerCount("drain")>0&&(t._asyncDrainScheduled=!1,t.emit("drain"))}PAt(Mc,OAt);function qpe(t,e){return t.length===0?bR:t.length===1?t[0]:Buffer.concat(t,e)}function LAt(t){if(this.destroyed)throw new Error("SonicBoom destroyed");let e=this._len+t.length,r=this._bufs;return this.maxLength&&e>this.maxLength?(this.emit("drop",t),this._lenthis.maxWrite?r.push(""+t):r[r.length-1]+=t,this._len=e,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._lenthis.maxLength?(this.emit("drop",t),this._lenthis.maxWrite?(r.push([t]),n.push(t.length)):(r[r.length-1].push(t),n[n.length-1]+=t.length),this._len=e,!this._writing&&this._len>=this.minLength&&this._actualWrite(),this._len{this._fsync?(this._flushPending=!1,t()):os.fsync(this.fd,n=>{this._flushPending=!1,t(n)}),this.off("error",r)},r=n=>{this._flushPending=!1,t(n),this.off("drain",e)};this.once("drain",e),this.once("error",r)}function MAt(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&jpe.call(this,t),!this._writing&&(this._bufs.length===0&&this._bufs.push(""),this._actualWrite())}function WAt(t){if(t!=null&&typeof t!="function")throw new Error("flush cb must be a function");if(this.destroyed){let e=new Error("SonicBoom destroyed");if(t){t(e);return}throw e}if(this.minLength<=0){t?.();return}t&&jpe.call(this,t),!this._writing&&(this._bufs.length===0&&(this._bufs.push([]),this._lens.push(0)),this._actualWrite())}Mc.prototype.reopen=function(t){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.reopen(t)});return}if(this._ending)return;if(!this.file)throw new Error("Unable to reopen a file descriptor, you must pass a file to SonicBoom");if(t&&(this.file=t),this._reopening=!0,this._writing)return;let e=this.fd;this.once("ready",()=>{e!==this.fd&&os.close(e,r=>{if(r)return this.emit("error",r)})}),Upe(this.file,this)};Mc.prototype.end=function(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this._opening){this.once("ready",()=>{this.end()});return}this._ending||(this._ending=!0,!this._writing&&(this._len>0&&this.fd>=0?this._actualWrite():ER(this)))};function $At(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift(this._writingBuf),this._writingBuf="");let t="";for(;this._bufs.length||t;){t.length<=0&&(t=this._bufs[0]);try{let e=os.writeSync(this.fd,t,"utf8"),r=C5(t,this._len,e);t=r.writingBuf,this._len=r.len,t.length<=0&&this._bufs.shift()}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;I5(xR)}}try{os.fsyncSync(this.fd)}catch{}}function FAt(){if(this.destroyed)throw new Error("SonicBoom destroyed");if(this.fd<0)throw new Error("sonic boom is not ready yet");!this._writing&&this._writingBuf.length>0&&(this._bufs.unshift([this._writingBuf]),this._writingBuf=bR);let t=bR;for(;this._bufs.length||t.length;){t.length<=0&&(t=qpe(this._bufs[0],this._lens[0]));try{let e=os.writeSync(this.fd,t);t=t.subarray(e),this._len=Math.max(this._len-e,0),t.length<=0&&(this._bufs.shift(),this._lens.shift())}catch(e){if((e.code==="EAGAIN"||e.code==="EBUSY")&&!this.retryEAGAIN(e,t.length,this._len-t.length))throw e;I5(xR)}}}Mc.prototype.destroy=function(){this.destroyed||ER(this)};function UAt(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf||this._bufs.shift()||"",this.sync)try{let e=os.writeSync(this.fd,this._writingBuf,"utf8");t(null,e)}catch(e){t(e)}else os.write(this.fd,this._writingBuf,"utf8",t)}function qAt(){let t=this.release;if(this._writing=!0,this._writingBuf=this._writingBuf.length?this._writingBuf:qpe(this._bufs.shift(),this._lens.shift()),this.sync)try{let e=os.writeSync(this.fd,this._writingBuf);t(null,e)}catch(e){t(e)}else os.write(this.fd,this._writingBuf,t)}function ER(t){if(t.fd===-1){t.once("ready",ER.bind(null,t));return}t.destroyed=!0,t._bufs=[],t._lens=[],os.fsync(t.fd,e);function e(){t.fd!==1&&t.fd!==2?os.close(t.fd,r):r()}function r(n){if(n){t.emit("error",n);return}t._ending&&!t._writing&&t.emit("finish"),t.emit("close")}}Mc.SonicBoom=Mc;Mc.default=Mc;Hpe.exports=Mc});var T5=E((cPr,Ype)=>{"use strict";var Wc={exit:[],beforeExit:[]},Gpe={exit:QAt,beforeExit:GAt},FA;function jAt(){FA===void 0&&(FA=new FinalizationRegistry(VAt))}function HAt(t){Wc[t].length>0||process.on(t,Gpe[t])}function Vpe(t){Wc[t].length>0||(process.removeListener(t,Gpe[t]),Wc.exit.length===0&&Wc.beforeExit.length===0&&(FA=void 0))}function QAt(){zpe("exit")}function GAt(){zpe("beforeExit")}function zpe(t){for(let e of Wc[t]){let r=e.deref(),n=e.fn;r!==void 0&&n(r,t)}Wc[t]=[]}function VAt(t){for(let e of["exit","beforeExit"]){let r=Wc[e].indexOf(t);Wc[e].splice(r,r+1),Vpe(e)}}function Kpe(t,e,r){if(e===void 0)throw new Error("the object can't be undefined");HAt(t);let n=new WeakRef(e);n.fn=r,jAt(),FA.register(e,n),Wc[t].push(n)}function zAt(t,e){Kpe("exit",t,e)}function KAt(t,e){Kpe("beforeExit",t,e)}function YAt(t){if(FA!==void 0){FA.unregister(t);for(let e of["exit","beforeExit"])Wc[e]=Wc[e].filter(r=>{let n=r.deref();return n&&n!==t}),Vpe(e)}}Ype.exports={register:zAt,registerBeforeExit:KAt,unregister:YAt}});var Jpe=E((uPr,JAt)=>{JAt.exports={name:"thread-stream",version:"2.7.0",description:"A streaming way to send data to a Node.js Worker Thread",main:"index.js",types:"index.d.ts",dependencies:{"real-require":"^0.2.0"},devDependencies:{"@types/node":"^20.1.0","@types/tap":"^15.0.0","@yao-pkg/pkg":"^5.11.5",desm:"^1.3.0",fastbench:"^1.0.1",husky:"^9.0.6","pino-elasticsearch":"^8.0.0","sonic-boom":"^3.0.0",standard:"^17.0.0",tap:"^16.2.0","ts-node":"^10.8.0",typescript:"^5.3.2","why-is-node-running":"^2.2.2"},scripts:{test:'standard && npm run transpile && tap "test/**/*.test.*js" && tap --ts test/*.test.*ts',"test:ci":"standard && npm run transpile && npm run test:ci:js && npm run test:ci:ts","test:ci:js":'tap --no-check-coverage --timeout=120 --coverage-report=lcovonly "test/**/*.test.*js"',"test:ci:ts":'tap --ts --no-check-coverage --coverage-report=lcovonly "test/**/*.test.*ts"',"test:yarn":'npm run transpile && tap "test/**/*.test.js" --no-check-coverage',transpile:"sh ./test/ts/transpile.sh",prepare:"husky install"},standard:{ignore:["test/ts/**/*"]},repository:{type:"git",url:"git+https://github.com/mcollina/thread-stream.git"},keywords:["worker","thread","threads","stream"],author:"Matteo Collina ",license:"MIT",bugs:{url:"https://github.com/mcollina/thread-stream/issues"},homepage:"https://github.com/mcollina/thread-stream#readme"}});var Zpe=E((lPr,Xpe)=>{"use strict";function XAt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);if(a===r){s(null,"ok");return}let o=a,c=u=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{o=a,a=Atomics.load(t,e),a===o?c(u>=1e3?1e3:u*2):a===r?s(null,"ok"):s(null,"not-equal")},u)};c(1)}function ZAt(t,e,r,n,s){let i=Date.now()+n,a=Atomics.load(t,e);if(a!==r){s(null,"ok");return}let o=c=>{Date.now()>i?s(null,"timed-out"):setTimeout(()=>{a=Atomics.load(t,e),a!==r?s(null,"ok"):o(c>=1e3?1e3:c*2)},c)};o(1)}Xpe.exports={wait:XAt,waitDiff:ZAt}});var t0e=E((dPr,e0e)=>{"use strict";e0e.exports={WRITE_INDEX:4,READ_INDEX:8}});var a0e=E((fPr,i0e)=>{"use strict";var{version:eyt}=Jpe(),{EventEmitter:tyt}=require("events"),{Worker:ryt}=require("worker_threads"),{join:nyt}=require("path"),{pathToFileURL:syt}=require("url"),{wait:iyt}=Zpe(),{WRITE_INDEX:Oa,READ_INDEX:Mu}=t0e(),ayt=require("buffer"),oyt=require("assert"),Se=Symbol("kImpl"),cyt=ayt.constants.MAX_STRING_LENGTH,a1=class{constructor(e){this._value=e}deref(){return this._value}},SR=class{register(){}unregister(){}},uyt=process.env.NODE_V8_COVERAGE?SR:global.FinalizationRegistry||SR,lyt=process.env.NODE_V8_COVERAGE?a1:global.WeakRef||a1,r0e=new uyt(t=>{t.exited||t.terminate()});function dyt(t,e){let{filename:r,workerData:n}=e,i=("__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{})["thread-stream-worker"]||nyt(__dirname,"lib","worker.js"),a=new ryt(i,{...e.workerOpts,trackUnmanagedFds:!1,workerData:{filename:r.indexOf("file://")===0?r:syt(r).href,dataBuf:t[Se].dataBuf,stateBuf:t[Se].stateBuf,workerData:{$context:{threadStreamVersion:eyt},...n}}});return a.stream=new a1(t),a.on("message",fyt),a.on("exit",s0e),r0e.register(t,a),a}function n0e(t){oyt(!t[Se].sync),t[Se].needDrain&&(t[Se].needDrain=!1,t.emit("drain"))}function _R(t){let e=Atomics.load(t[Se].state,Oa),r=t[Se].data.length-e;if(r>0){if(t[Se].buf.length===0){t[Se].flushing=!1,t[Se].ending?P5(t):t[Se].needDrain&&process.nextTick(n0e,t);return}let n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);s<=r?(t[Se].buf=t[Se].buf.slice(r),vR(t,n,_R.bind(null,t))):t.flush(()=>{if(!t.destroyed){for(Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);s>t[Se].data.length;)r=r/2,n=t[Se].buf.slice(0,r),s=Buffer.byteLength(n);t[Se].buf=t[Se].buf.slice(r),vR(t,n,_R.bind(null,t))}})}else if(r===0){if(e===0&&t[Se].buf.length===0)return;t.flush(()=>{Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0),_R(t)})}else Wu(t,new Error("overwritten"))}function fyt(t){let e=this.stream.deref();if(e===void 0){this.exited=!0,this.terminate();return}switch(t.code){case"READY":this.stream=new lyt(e),e.flush(()=>{e[Se].ready=!0,e.emit("ready")});break;case"ERROR":Wu(e,t.err);break;case"EVENT":Array.isArray(t.args)?e.emit(t.name,...t.args):e.emit(t.name,t.args);break;case"WARNING":process.emitWarning(t.err);break;default:Wu(e,new Error("this should not happen: "+t.code))}}function s0e(t){let e=this.stream.deref();e!==void 0&&(r0e.unregister(e),e.worker.exited=!0,e.worker.off("exit",s0e),Wu(e,t!==0?new Error("the worker thread exited"):null))}var R5=class extends tyt{constructor(e={}){if(super(),e.bufferSize<4)throw new Error("bufferSize must at least fit a 4-byte utf-8 char");this[Se]={},this[Se].stateBuf=new SharedArrayBuffer(128),this[Se].state=new Int32Array(this[Se].stateBuf),this[Se].dataBuf=new SharedArrayBuffer(e.bufferSize||4*1024*1024),this[Se].data=Buffer.from(this[Se].dataBuf),this[Se].sync=e.sync||!1,this[Se].ending=!1,this[Se].ended=!1,this[Se].needDrain=!1,this[Se].destroyed=!1,this[Se].flushing=!1,this[Se].ready=!1,this[Se].finished=!1,this[Se].errored=null,this[Se].closed=!1,this[Se].buf="",this.worker=dyt(this,e),this.on("message",(r,n)=>{this.worker.postMessage(r,n)})}write(e){if(this[Se].destroyed)return N5(this,new Error("the worker has exited")),!1;if(this[Se].ending)return N5(this,new Error("the worker is ending")),!1;if(this[Se].flushing&&this[Se].buf.length+e.length>=cyt)try{w5(this),this[Se].flushing=!0}catch(r){return Wu(this,r),!1}if(this[Se].buf+=e,this[Se].sync)try{return w5(this),!0}catch(r){return Wu(this,r),!1}return this[Se].flushing||(this[Se].flushing=!0,setImmediate(_R,this)),this[Se].needDrain=this[Se].data.length-this[Se].buf.length-Atomics.load(this[Se].state,Oa)<=0,!this[Se].needDrain}end(){this[Se].destroyed||(this[Se].ending=!0,P5(this))}flush(e){if(this[Se].destroyed){typeof e=="function"&&process.nextTick(e,new Error("the worker has exited"));return}let r=Atomics.load(this[Se].state,Oa);iyt(this[Se].state,Mu,r,1/0,(n,s)=>{if(n){Wu(this,n),process.nextTick(e,n);return}if(s==="not-equal"){this.flush(e);return}process.nextTick(e)})}flushSync(){this[Se].destroyed||(w5(this),O5(this))}unref(){this.worker.unref()}ref(){this.worker.ref()}get ready(){return this[Se].ready}get destroyed(){return this[Se].destroyed}get closed(){return this[Se].closed}get writable(){return!this[Se].destroyed&&!this[Se].ending}get writableEnded(){return this[Se].ending}get writableFinished(){return this[Se].finished}get writableNeedDrain(){return this[Se].needDrain}get writableObjectMode(){return!1}get writableErrored(){return this[Se].errored}};function N5(t,e){setImmediate(()=>{t.emit("error",e)})}function Wu(t,e){t[Se].destroyed||(t[Se].destroyed=!0,e&&(t[Se].errored=e,N5(t,e)),t.worker.exited?setImmediate(()=>{t[Se].closed=!0,t.emit("close")}):t.worker.terminate().catch(()=>{}).then(()=>{t[Se].closed=!0,t.emit("close")}))}function vR(t,e,r){let n=Atomics.load(t[Se].state,Oa),s=Buffer.byteLength(e);return t[Se].data.write(e,n),Atomics.store(t[Se].state,Oa,n+s),Atomics.notify(t[Se].state,Oa),r(),!0}function P5(t){if(!(t[Se].ended||!t[Se].ending||t[Se].flushing)){t[Se].ended=!0;try{t.flushSync();let e=Atomics.load(t[Se].state,Mu);Atomics.store(t[Se].state,Oa,-1),Atomics.notify(t[Se].state,Oa);let r=0;for(;e!==-1;){if(Atomics.wait(t[Se].state,Mu,e,1e3),e=Atomics.load(t[Se].state,Mu),e===-2){Wu(t,new Error("end() failed"));return}if(++r===10){Wu(t,new Error("end() took too long (10s)"));return}}process.nextTick(()=>{t[Se].finished=!0,t.emit("finish")})}catch(e){Wu(t,e)}}}function w5(t){let e=()=>{t[Se].ending?P5(t):t[Se].needDrain&&process.nextTick(n0e,t)};for(t[Se].flushing=!1;t[Se].buf.length!==0;){let r=Atomics.load(t[Se].state,Oa),n=t[Se].data.length-r;if(n===0){O5(t),Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);continue}else if(n<0)throw new Error("overwritten");let s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);if(i<=n)t[Se].buf=t[Se].buf.slice(n),vR(t,s,e);else{for(O5(t),Atomics.store(t[Se].state,Mu,0),Atomics.store(t[Se].state,Oa,0);i>t[Se].buf.length;)n=n/2,s=t[Se].buf.slice(0,n),i=Buffer.byteLength(s);t[Se].buf=t[Se].buf.slice(n),vR(t,s,e)}}}function O5(t){if(t[Se].flushing)throw new Error("unable to flush while flushing");let e=Atomics.load(t[Se].state,Oa),r=0;for(;;){let n=Atomics.load(t[Se].state,Mu);if(n===-2)throw Error("_flushSync failed");if(n!==e)Atomics.wait(t[Se].state,Mu,n,1e3);else break;if(++r===10)throw new Error("_flushSync took too long (10s)")}}i0e.exports=R5});var L5=E((pPr,o0e)=>{"use strict";var{createRequire:pyt}=require("module"),myt=h5(),{join:D5,isAbsolute:hyt,sep:gyt}=require("path"),Ayt=v5(),k5=T5(),yyt=a0e();function xyt(t){k5.register(t,Eyt),k5.registerBeforeExit(t,_yt),t.on("close",function(){k5.unregister(t)})}function byt(t,e,r){let n=new yyt({filename:t,workerData:e,workerOpts:r});n.on("ready",s),n.on("close",function(){process.removeListener("exit",i)}),process.on("exit",i);function s(){process.removeListener("exit",i),n.unref(),r.autoEnd!==!1&&xyt(n)}function i(){n.closed||(n.flushSync(),Ayt(100),n.end())}return n}function Eyt(t){t.ref(),t.flushSync(),t.end(),t.once("close",function(){t.unref()})}function _yt(t){t.flushSync()}function Syt(t){let{pipeline:e,targets:r,levels:n,dedupe:s,options:i={},worker:a={},caller:o=myt()}=t,c=typeof o=="string"?[o]:o,u="__bundlerPathsOverrides"in globalThis?globalThis.__bundlerPathsOverrides:{},l=t.target;if(l&&r)throw new Error("only one of target or targets can be specified");return r?(l=u["pino-worker"]||D5(__dirname,"worker.js"),i.targets=r.map(f=>({...f,target:d(f.target)}))):e&&(l=u["pino-pipeline-worker"]||D5(__dirname,"worker-pipeline.js"),i.targets=e.map(f=>({...f,target:d(f.target)}))),n&&(i.levels=n),s&&(i.dedupe=s),i.pinoWillSendConfig=!0,byt(d(l),i,a);function d(f){if(f=u[f]||f,hyt(f)||f.indexOf("file://")===0)return f;if(f==="pino/file")return D5(__dirname,"..","file.js");let p;for(let m of c)try{let h=m==="node:repl"?process.cwd()+gyt:m;p=pyt(h).resolve(f);break}catch{continue}if(!p)throw new Error(`unable to determine transport target for "${f}"`);return p}}o0e.exports=Syt});var TR=E((mPr,y0e)=>{"use strict";var c0e=Mpe(),{mapHttpRequest:vyt,mapHttpResponse:Cyt}=m5(),M5=Qpe(),u0e=T5(),{lsCacheSym:Iyt,chindingsSym:f0e,writeSym:l0e,serializersSym:p0e,formatOptsSym:d0e,endSym:Tyt,stringifiersSym:m0e,stringifySym:h0e,stringifySafeSym:W5,wildcardFirstSym:g0e,nestedKeySym:wyt,formattersSym:A0e,messageKeySym:Ryt,errorKeySym:Nyt,nestedKeyStrSym:Oyt,msgPrefixSym:CR}=$A(),{isMainThread:Pyt}=require("worker_threads"),Dyt=L5();function UA(){}function kyt(t,e){if(!e)return r;return function(...s){e.call(this,s,r,t)};function r(n,...s){if(typeof n=="object"){let i=n;n!==null&&(n.method&&n.headers&&n.socket?n=vyt(n):typeof n.setHeader=="function"&&(n=Cyt(n)));let a;i===null&&s.length===0?a=[null]:(i=s.shift(),a=s),typeof this[CR]=="string"&&i!==void 0&&i!==null&&(i=this[CR]+i),this[l0e](n,c0e(i,a,this[d0e]),t)}else{let i=n===void 0?s.shift():n;typeof this[CR]=="string"&&i!==void 0&&i!==null&&(i=this[CR]+i),this[l0e](null,c0e(i,s,this[d0e]),t)}}}function B5(t){let e="",r=0,n=!1,s=255,i=t.length;if(i>100)return JSON.stringify(t);for(var a=0;a=32;a++)s=t.charCodeAt(a),(s===34||s===92)&&(e+=t.slice(r,a)+"\\",r=a,n=!0);return n?e+=t.slice(r):e=t,s<32?JSON.stringify(t):'"'+e+'"'}function Lyt(t,e,r,n){let s=this[h0e],i=this[W5],a=this[m0e],o=this[Tyt],c=this[f0e],u=this[p0e],l=this[A0e],d=this[Ryt],f=this[Nyt],p=this[Iyt][r]+n;p=p+c;let m;l.log&&(t=l.log(t));let h=a[g0e],A="";for(let b in t)if(m=t[b],Object.prototype.hasOwnProperty.call(t,b)&&m!==void 0){u[b]?m=u[b](m):b===f&&u.err&&(m=u.err(m));let y=a[b]||h;switch(typeof m){case"undefined":case"function":continue;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":y&&(m=y(m));break;case"string":m=(y||B5)(m);break;default:m=(y||s)(m,i)}if(m===void 0)continue;let x=B5(b);A+=","+x+":"+m}let g="";if(e!==void 0){m=u[d]?u[d](e):e;let b=a[d]||h;switch(typeof m){case"function":break;case"number":Number.isFinite(m)===!1&&(m=null);case"boolean":b&&(m=b(m)),g=',"'+d+'":'+m;break;case"string":m=(b||B5)(m),g=',"'+d+'":'+m;break;default:m=(b||s)(m,i),g=',"'+d+'":'+m}}return this[wyt]&&A?p+this[Oyt]+A.slice(1)+"}"+g+o:p+A+g+o}function Byt(t,e){let r,n=t[f0e],s=t[h0e],i=t[W5],a=t[m0e],o=a[g0e],c=t[p0e],u=t[A0e].bindings;e=u(e);for(let l in e)if(r=e[l],(l!=="level"&&l!=="serializers"&&l!=="formatters"&&l!=="customLevels"&&e.hasOwnProperty(l)&&r!==void 0)===!0){if(r=c[l]?c[l](r):r,r=(a[l]||o||s)(r,i),r===void 0)continue;n+=',"'+l+'":'+r}return n}function Myt(t){return t.write!==t.constructor.prototype.write}var Wyt=process.env.NODE_V8_COVERAGE||process.env.V8_COVERAGE;function IR(t){let e=new M5(t);return e.on("error",r),!Wyt&&!t.sync&&Pyt&&(u0e.register(e,$yt),e.on("close",function(){u0e.unregister(e)})),e;function r(n){if(n.code==="EPIPE"){e.write=UA,e.end=UA,e.flushSync=UA,e.destroy=UA;return}e.removeListener("error",r),e.emit("error",n)}}function $yt(t,e){t.destroyed||(e==="beforeExit"?(t.flush(),t.on("drain",function(){t.end()})):t.flushSync())}function Fyt(t){return function(r,n,s={},i){if(typeof s=="string")i=IR({dest:s}),s={};else if(typeof i=="string"){if(s&&s.transport)throw Error("only one of option.transport or stream can be specified");i=IR({dest:i})}else if(s instanceof M5||s.writable||s._writableState)i=s,s={};else if(s.transport){if(s.transport instanceof M5||s.transport.writable||s.transport._writableState)throw Error("option.transport do not allow stream, please pass to option directly. e.g. pino(transport)");if(s.transport.targets&&s.transport.targets.length&&s.formatters&&typeof s.formatters.level=="function")throw Error("option.transport.targets do not allow custom level formatters");let c;s.customLevels&&(c=s.useOnlyCustomLevels?s.customLevels:Object.assign({},s.levels,s.customLevels)),i=Dyt({caller:n,...s.transport,levels:c})}if(s=Object.assign({},t,s),s.serializers=Object.assign({},t.serializers,s.serializers),s.formatters=Object.assign({},t.formatters,s.formatters),s.prettyPrint)throw new Error("prettyPrint option is no longer supported, see the pino-pretty package (https://github.com/pinojs/pino-pretty)");let{enabled:a,onChild:o}=s;return a===!1&&(s.level="silent"),o||(s.onChild=UA),i||(Myt(process.stdout)?i=process.stdout:i=IR({fd:process.stdout.fd||1})),{opts:s,stream:i}}}function Uyt(t,e){try{return JSON.stringify(t)}catch{try{return(e||this[W5])(t)}catch{return'"[unable to serialize, circular reference is too complex to analyze]"'}}}function qyt(t,e,r){return{level:t,bindings:e,log:r}}function jyt(t){let e=Number(t);return typeof t=="string"&&Number.isFinite(e)?e:t===void 0?1:t}y0e.exports={noop:UA,buildSafeSonicBoom:IR,asChindings:Byt,asJson:Lyt,genLog:kyt,createArgsNormalizer:Fyt,stringify:Uyt,buildFormatters:qyt,normalizeDestFileDescriptor:jyt}});var wR=E((hPr,x0e)=>{var Hyt={trace:10,debug:20,info:30,warn:40,error:50,fatal:60},Qyt={ASC:"ASC",DESC:"DESC"};x0e.exports={DEFAULT_LEVELS:Hyt,SORTING_ORDER:Qyt}});var U5=E((gPr,S0e)=>{"use strict";var{lsCacheSym:Gyt,levelValSym:$5,useOnlyCustomLevelsSym:Vyt,streamSym:zyt,formattersSym:Kyt,hooksSym:Yyt,levelCompSym:b0e}=$A(),{noop:Jyt,genLog:xm}=TR(),{DEFAULT_LEVELS:$u,SORTING_ORDER:E0e}=wR(),_0e={fatal:t=>{let e=xm($u.fatal,t);return function(...r){let n=this[zyt];if(e.call(this,...r),typeof n.flushSync=="function")try{n.flushSync()}catch{}}},error:t=>xm($u.error,t),warn:t=>xm($u.warn,t),info:t=>xm($u.info,t),debug:t=>xm($u.debug,t),trace:t=>xm($u.trace,t)},F5=Object.keys($u).reduce((t,e)=>(t[$u[e]]=e,t),{}),Xyt=Object.keys(F5).reduce((t,e)=>(t[e]='{"level":'+Number(e),t),{});function Zyt(t){let e=t[Kyt].level,{labels:r}=t.levels,n={};for(let s in r){let i=e(r[s],Number(s));n[s]=JSON.stringify(i).slice(0,-1)}return t[Gyt]=n,t}function ext(t,e){if(e)return!1;switch(t){case"fatal":case"error":case"warn":case"info":case"debug":case"trace":return!0;default:return!1}}function txt(t){let{labels:e,values:r}=this.levels;if(typeof t=="number"){if(e[t]===void 0)throw Error("unknown level value"+t);t=e[t]}if(r[t]===void 0)throw Error("unknown level "+t);let n=this[$5],s=this[$5]=r[t],i=this[Vyt],a=this[b0e],o=this[Yyt].logMethod;for(let c in r){if(a(r[c],s)===!1){this[c]=Jyt;continue}this[c]=ext(c,i)?_0e[c](o):xm(r[c],o)}this.emit("level-change",t,s,e[n],n,this)}function rxt(t){let{levels:e,levelVal:r}=this;return e&&e.labels?e.labels[r]:""}function nxt(t){let{values:e}=this.levels,r=e[t];return r!==void 0&&this[b0e](r,this[$5])}function sxt(t,e,r){return t===E0e.DESC?e<=r:e>=r}function ixt(t){return typeof t=="string"?sxt.bind(null,t):t}function axt(t=null,e=!1){let r=t?Object.keys(t).reduce((i,a)=>(i[t[a]]=a,i),{}):null,n=Object.assign(Object.create(Object.prototype,{Infinity:{value:"silent"}}),e?null:F5,r),s=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),e?null:$u,t);return{labels:n,values:s}}function oxt(t,e,r){if(typeof t=="number"){if(![].concat(Object.keys(e||{}).map(i=>e[i]),r?[]:Object.keys(F5).map(i=>+i),1/0).includes(t))throw Error(`default level:${t} must be included in custom levels`);return}let n=Object.assign(Object.create(Object.prototype,{silent:{value:1/0}}),r?null:$u,e);if(!(t in n))throw Error(`default level:${t} must be included in custom levels`)}function cxt(t,e){let{labels:r,values:n}=t;for(let s in e){if(s in n)throw Error("levels cannot be overridden");if(e[s]in r)throw Error("pre-existing level values cannot be used for new levels")}}function uxt(t){if(typeof t!="function"&&!(typeof t=="string"&&Object.values(E0e).includes(t)))throw new Error('Levels comparison should be one of "ASC", "DESC" or "function" type')}S0e.exports={initialLsCache:Xyt,genLsCache:Zyt,levelMethods:_0e,getLevel:rxt,setLevel:txt,isLevelEnabled:nxt,mappings:axt,assertNoLevelCollisions:cxt,assertDefaultLevelFound:oxt,genLevelComparison:ixt,assertLevelComparison:uxt}});var q5=E((APr,v0e)=>{"use strict";v0e.exports={version:"8.21.0"}});var L0e=E((xPr,k0e)=>{"use strict";var{EventEmitter:lxt}=require("events"),{lsCacheSym:dxt,levelValSym:fxt,setLevelSym:H5,getLevelSym:C0e,chindingsSym:Q5,parsedChindingsSym:pxt,mixinSym:mxt,asJsonSym:N0e,writeSym:hxt,mixinMergeStrategySym:gxt,timeSym:Axt,timeSliceIndexSym:yxt,streamSym:O0e,serializersSym:bm,formattersSym:j5,errorKeySym:xxt,messageKeySym:bxt,useOnlyCustomLevelsSym:Ext,needsMetadataGsym:_xt,redactFmtSym:Sxt,stringifySym:vxt,formatOptsSym:Cxt,stringifiersSym:Ixt,msgPrefixSym:I0e}=$A(),{getLevel:Txt,setLevel:wxt,isLevelEnabled:Rxt,mappings:Nxt,initialLsCache:Oxt,genLsCache:Pxt,assertNoLevelCollisions:Dxt}=U5(),{asChindings:P0e,asJson:kxt,buildFormatters:T0e,stringify:w0e}=TR(),{version:Lxt}=q5(),Bxt=_5(),Mxt=class{},D0e={constructor:Mxt,child:Wxt,bindings:$xt,setBindings:Fxt,flush:Hxt,isLevelEnabled:Rxt,version:Lxt,get level(){return this[C0e]()},set level(t){this[H5](t)},get levelVal(){return this[fxt]},set levelVal(t){throw Error("levelVal is read-only")},[dxt]:Oxt,[hxt]:qxt,[N0e]:kxt,[C0e]:Txt,[H5]:wxt};Object.setPrototypeOf(D0e,lxt.prototype);k0e.exports=function(){return Object.create(D0e)};var R0e=t=>t;function Wxt(t,e){if(!t)throw Error("missing bindings for child Pino");e=e||{};let r=this[bm],n=this[j5],s=Object.create(this);if(e.hasOwnProperty("serializers")===!0){s[bm]=Object.create(null);for(let l in r)s[bm][l]=r[l];let c=Object.getOwnPropertySymbols(r);for(var i=0;i{"use strict";var{hasOwnProperty:o1}=Object.prototype,_m=z5();_m.configure=z5;_m.stringify=_m;_m.default=_m;K5.stringify=_m;K5.configure=z5;W0e.exports=_m;var Qxt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;function pp(t){return t.length<5e3&&!Qxt.test(t)?`"${t}"`:JSON.stringify(t)}function G5(t,e){if(t.length>200||e)return t.sort(e);for(let r=1;rn;)t[s]=t[s-1],s--;t[s]=n}return t}var Gxt=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(Object.getPrototypeOf(new Int8Array)),Symbol.toStringTag).get;function V5(t){return Gxt.call(t)!==void 0&&t.length!==0}function B0e(t,e,r){t.length= 1`)}return r===void 0?1/0:r}function Em(t){return t===1?"1 item":`${t} items`}function Yxt(t){let e=new Set;for(let r of t)(typeof r=="string"||typeof r=="number")&&e.add(String(r));return e}function Jxt(t){if(o1.call(t,"strict")){let e=t.strict;if(typeof e!="boolean")throw new TypeError('The "strict" argument must be of type boolean');if(e)return r=>{let n=`Object can not safely be stringified. Received type ${typeof r}`;throw typeof r!="function"&&(n+=` (${r.toString()})`),new Error(n)}}}function z5(t){t={...t};let e=Jxt(t);e&&(t.bigint===void 0&&(t.bigint=!1),"circularValue"in t||(t.circularValue=Error));let r=Vxt(t),n=Kxt(t,"bigint"),s=zxt(t),i=typeof s=="function"?s:void 0,a=M0e(t,"maximumDepth"),o=M0e(t,"maximumBreadth");function c(p,m,h,A,g,b){let y=m[p];switch(typeof y=="object"&&y!==null&&typeof y.toJSON=="function"&&(y=y.toJSON(p)),y=A.call(m,p,y),typeof y){case"string":return pp(y);case"object":{if(y===null)return"null";if(h.indexOf(y)!==-1)return r;let x="",v=",",C=b;if(Array.isArray(y)){if(y.length===0)return"[]";if(ao){let Z=y.length-o-1;x+=`${v}"... ${Em(Z)} not stringified"`}return g!==""&&(x+=` -${I}`),h.pop(),`[${x}]`}let R=Object.keys(y),w=R.length;if(w===0)return"{}";if(ao){let M=w-o;x+=`${P}"...":${N}"${Em(M)} not stringified"`,P=v}return g!==""&&P.length>1&&(x=` +${b}`);let M=Math.min(y.length,o),k=0;for(;ko){let Z=y.length-o-1;x+=`${v}"... ${Em(Z)} not stringified"`}return g!==""&&(x+=` +${C}`),h.pop(),`[${x}]`}let R=Object.keys(y),w=R.length;if(w===0)return"{}";if(ao){let M=w-o;x+=`${P}"...":${N}"${Em(M)} not stringified"`,P=v}return g!==""&&P.length>1&&(x=` ${b}${x} -${I}`),h.pop(),`{${x}}`}case"number":return isFinite(y)?String(y):e?e(y):"null";case"boolean":return y===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(y);default:return e?e(y):void 0}}function u(p,m,h,A,g,b){switch(typeof m=="object"&&m!==null&&typeof m.toJSON=="function"&&(m=m.toJSON(p)),typeof m){case"string":return fp(m);case"object":{if(m===null)return"null";if(h.indexOf(m)!==-1)return r;let y=b,x="",v=",";if(Array.isArray(m)){if(m.length===0)return"[]";if(ao){let B=m.length-o-1;x+=`${v}"... ${Em(B)} not stringified"`}return g!==""&&(x+=` -${y}`),h.pop(),`[${x}]`}h.push(m);let I="";g!==""&&(b+=g,v=`, -${b}`,I=" ");let R="";for(let w of A){let N=u(w,m[w],h,A,g,b);N!==void 0&&(x+=`${R}${fp(w)}:${I}${N}`,R=v)}return g!==""&&R.length>1&&(x=` +${b}`);let w=Math.min(m.length,o),N=0;for(;No){let L=m.length-o-1;x+=`${v}"... ${Em(L)} not stringified"`}return g!==""&&(x+=` +${y}`),h.pop(),`[${x}]`}h.push(m);let C="";g!==""&&(b+=g,v=`, +${b}`,C=" ");let R="";for(let w of A){let N=u(w,m[w],h,A,g,b);N!==void 0&&(x+=`${R}${pp(w)}:${C}${N}`,R=v)}return g!==""&&R.length>1&&(x=` ${b}${x} -${y}`),h.pop(),`{${x}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function l(p,m,h,A,g){switch(typeof m){case"string":return fp(m);case"object":{if(m===null)return"null";if(typeof m.toJSON=="function"){if(m=m.toJSON(p),typeof m!="object")return l(p,m,h,A,g);if(m===null)return"null"}if(h.indexOf(m)!==-1)return r;let b=g;if(Array.isArray(m)){if(m.length===0)return"[]";if(ao){let L=m.length-o-1;N+=`${P}"... ${Em(L)} not stringified"`}return N+=` +${g}`,L=Math.min(m.length,o),M=0;for(;Mo){let B=m.length-o-1;N+=`${P}"... ${Em(B)} not stringified"`}return N+=` ${b}`,h.pop(),`[${N}]`}let y=Object.keys(m),x=y.length;if(x===0)return"{}";if(ao){let N=x-o;I+=`${R}"...": "${Em(N)} not stringified"`,R=v}return R!==""&&(I=` -${g}${I} -${b}`),h.pop(),`{${I}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function d(p,m,h){switch(typeof m){case"string":return fp(m);case"object":{if(m===null)return"null";if(typeof m.toJSON=="function"){if(m=m.toJSON(p),typeof m!="object")return d(p,m,h);if(m===null)return"null"}if(h.indexOf(m)!==-1)return r;let A="",g=m.length!==void 0;if(g&&Array.isArray(m)){if(m.length===0)return"[]";if(ao){let N=m.length-o-1;A+=`,"... ${Em(N)} not stringified"`}return h.pop(),`[${A}]`}let b=Object.keys(m),y=b.length;if(y===0)return"{}";if(ao){let I=y-o;A+=`${x}"...":"${Em(I)} not stringified"`}return h.pop(),`{${A}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function f(p,m,h){if(arguments.length>1){let A="";if(typeof h=="number"?A=" ".repeat(Math.min(h,10)):typeof h=="string"&&(A=h.slice(0,10)),m!=null){if(typeof m=="function")return c("",{"":p},[],m,A,"");if(Array.isArray(m))return u("",p,[],Vxt(m),A,"")}if(A.length!==0)return l("",p,[],A,"")}return d("",p,[])}return f}});var $0e=E((mPr,W0e)=>{"use strict";var z5=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:M0e}=CR(),Yxt=M0e.info;function Jxt(t,e){let r=0;t=t||[],e=e||{dedupe:!1};let n=Object.create(M0e);n.silent=1/0,e.levels&&typeof e.levels=="object"&&Object.keys(e.levels).forEach(d=>{n[d]=e.levels[d]});let s={write:i,add:c,emit:a,flushSync:o,end:u,minLevel:0,streams:[],clone:l,[z5]:!0,streamLevels:n};return Array.isArray(t)?t.forEach(c,s):c.call(s,t),t=null,s;function i(d){let f,p=this.lastLevel,{streams:m}=this,h=0,A;for(let g=Zxt(m.length,e.dedupe);tbt(g,m.length,e.dedupe);g=ebt(g,e.dedupe))if(f=m[g],f.level<=p){if(h!==0&&h!==f.level)break;if(A=f.stream,A[z5]){let{lastTime:b,lastMsg:y,lastObj:x,lastLogger:v}=this;A.lastLevel=p,A.lastTime=b,A.lastMsg=y,A.lastObj=x,A.lastLogger=v}A.write(d),e.dedupe&&(h=f.level)}else if(!e.dedupe)break}function a(...d){for(let{stream:f}of this.streams)typeof f.emit=="function"&&f.emit(...d)}function o(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync()}function c(d){if(!d)return s;let f=typeof d.write=="function"||d.stream,p=d.write?d:d.stream;if(!f)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:m,streamLevels:h}=this,A;typeof d.levelVal=="number"?A=d.levelVal:typeof d.level=="string"?A=h[d.level]:typeof d.level=="number"?A=d.level:A=Yxt;let g={stream:p,level:A,levelVal:void 0,id:r++};return m.unshift(g),m.sort(Xxt),this.minLevel=m[0].level,s}function u(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync(),d.end()}function l(d){let f=new Array(this.streams.length);for(let p=0;p=0:t{"use strict";var rbt=require("os"),K0e=p5(),nbt=m5(),sbt=E5(),V0e=Ppe(),ibt=P0e(),z0e=$A(),{configure:abt}=L0e(),{assertDefaultLevelFound:obt,mappings:Y0e,genLsCache:cbt,genLevelComparison:ubt,assertLevelComparison:lbt}=F5(),{DEFAULT_LEVELS:dbt,SORTING_ORDER:fbt}=CR(),{createArgsNormalizer:pbt,asChindings:mbt,buildSafeSonicBoom:F0e,buildFormatters:hbt,stringify:Y5,normalizeDestFileDescriptor:U0e,noop:gbt}=IR(),{version:Abt}=U5(),{chindingsSym:q0e,redactFmtSym:ybt,serializersSym:j0e,timeSym:xbt,timeSliceIndexSym:bbt,streamSym:Ebt,stringifySym:H0e,stringifySafeSym:J5,stringifiersSym:Q0e,setLevelSym:_bt,endSym:Sbt,formatOptsSym:vbt,messageKeySym:Ibt,errorKeySym:Cbt,nestedKeySym:Tbt,mixinSym:wbt,levelCompSym:Rbt,useOnlyCustomLevelsSym:Nbt,formattersSym:G0e,hooksSym:Obt,nestedKeyStrSym:Pbt,mixinMergeStrategySym:kbt,msgPrefixSym:Dbt}=z0e,{epochTime:J0e,nullTime:Bbt}=V0e,{pid:Lbt}=process,Mbt=rbt.hostname(),Wbt=K0e.err,$bt={level:"info",levelComparison:fbt.ASC,levels:dbt,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:Lbt,hostname:Mbt},serializers:Object.assign(Object.create(null),{err:Wbt}),formatters:Object.assign(Object.create(null),{bindings(t){return t},level(t,e){return{level:e}}}),hooks:{logMethod:void 0},timestamp:J0e,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},Fbt=pbt($bt),Ubt=Object.assign(Object.create(null),K0e);function X5(...t){let e={},{opts:r,stream:n}=Fbt(e,nbt(),...t),{redact:s,crlf:i,serializers:a,timestamp:o,messageKey:c,errorKey:u,nestedKey:l,base:d,name:f,level:p,customLevels:m,levelComparison:h,mixin:A,mixinMergeStrategy:g,useOnlyCustomLevels:b,formatters:y,hooks:x,depthLimit:v,edgeLimit:I,onChild:R,msgPrefix:w}=r,N=abt({maximumDepth:v,maximumBreadth:I}),P=hbt(y.level,y.bindings,y.log),B=Y5.bind({[J5]:N}),M=s?sbt(s,B):{},D=s?{stringify:M[ybt]}:{stringify:B},L="}"+(i?`\r +${g}`,C="",R="",w=Math.min(x,o);V5(m)&&(C+=B0e(m,v,o),y=y.slice(m.length),w-=m.length,R=v),s&&(y=G5(y,i)),h.push(m);for(let N=0;No){let N=x-o;C+=`${R}"...": "${Em(N)} not stringified"`,R=v}return R!==""&&(C=` +${g}${C} +${b}`),h.pop(),`{${C}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function d(p,m,h){switch(typeof m){case"string":return pp(m);case"object":{if(m===null)return"null";if(typeof m.toJSON=="function"){if(m=m.toJSON(p),typeof m!="object")return d(p,m,h);if(m===null)return"null"}if(h.indexOf(m)!==-1)return r;let A="",g=m.length!==void 0;if(g&&Array.isArray(m)){if(m.length===0)return"[]";if(ao){let N=m.length-o-1;A+=`,"... ${Em(N)} not stringified"`}return h.pop(),`[${A}]`}let b=Object.keys(m),y=b.length;if(y===0)return"{}";if(ao){let C=y-o;A+=`${x}"...":"${Em(C)} not stringified"`}return h.pop(),`{${A}}`}case"number":return isFinite(m)?String(m):e?e(m):"null";case"boolean":return m===!0?"true":"false";case"undefined":return;case"bigint":if(n)return String(m);default:return e?e(m):void 0}}function f(p,m,h){if(arguments.length>1){let A="";if(typeof h=="number"?A=" ".repeat(Math.min(h,10)):typeof h=="string"&&(A=h.slice(0,10)),m!=null){if(typeof m=="function")return c("",{"":p},[],m,A,"");if(Array.isArray(m))return u("",p,[],Yxt(m),A,"")}if(A.length!==0)return l("",p,[],A,"")}return d("",p,[])}return f}});var q0e=E((bPr,U0e)=>{"use strict";var Y5=Symbol.for("pino.metadata"),{DEFAULT_LEVELS:F0e}=wR(),Xxt=F0e.info;function Zxt(t,e){let r=0;t=t||[],e=e||{dedupe:!1};let n=Object.create(F0e);n.silent=1/0,e.levels&&typeof e.levels=="object"&&Object.keys(e.levels).forEach(d=>{n[d]=e.levels[d]});let s={write:i,add:c,emit:a,flushSync:o,end:u,minLevel:0,streams:[],clone:l,[Y5]:!0,streamLevels:n};return Array.isArray(t)?t.forEach(c,s):c.call(s,t),t=null,s;function i(d){let f,p=this.lastLevel,{streams:m}=this,h=0,A;for(let g=tbt(m.length,e.dedupe);nbt(g,m.length,e.dedupe);g=rbt(g,e.dedupe))if(f=m[g],f.level<=p){if(h!==0&&h!==f.level)break;if(A=f.stream,A[Y5]){let{lastTime:b,lastMsg:y,lastObj:x,lastLogger:v}=this;A.lastLevel=p,A.lastTime=b,A.lastMsg=y,A.lastObj=x,A.lastLogger=v}A.write(d),e.dedupe&&(h=f.level)}else if(!e.dedupe)break}function a(...d){for(let{stream:f}of this.streams)typeof f.emit=="function"&&f.emit(...d)}function o(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync()}function c(d){if(!d)return s;let f=typeof d.write=="function"||d.stream,p=d.write?d:d.stream;if(!f)throw Error("stream object needs to implement either StreamEntry or DestinationStream interface");let{streams:m,streamLevels:h}=this,A;typeof d.levelVal=="number"?A=d.levelVal:typeof d.level=="string"?A=h[d.level]:typeof d.level=="number"?A=d.level:A=Xxt;let g={stream:p,level:A,levelVal:void 0,id:r++};return m.unshift(g),m.sort(ebt),this.minLevel=m[0].level,s}function u(){for(let{stream:d}of this.streams)typeof d.flushSync=="function"&&d.flushSync(),d.end()}function l(d){let f=new Array(this.streams.length);for(let p=0;p=0:t{"use strict";var sbt=require("os"),Y0e=m5(),ibt=h5(),abt=_5(),J0e=Lpe(),obt=L0e(),X0e=$A(),{configure:cbt}=$0e(),{assertDefaultLevelFound:ubt,mappings:Z0e,genLsCache:lbt,genLevelComparison:dbt,assertLevelComparison:fbt}=U5(),{DEFAULT_LEVELS:pbt,SORTING_ORDER:mbt}=wR(),{createArgsNormalizer:hbt,asChindings:gbt,buildSafeSonicBoom:j0e,buildFormatters:Abt,stringify:J5,normalizeDestFileDescriptor:H0e,noop:ybt}=TR(),{version:xbt}=q5(),{chindingsSym:Q0e,redactFmtSym:bbt,serializersSym:G0e,timeSym:Ebt,timeSliceIndexSym:_bt,streamSym:Sbt,stringifySym:V0e,stringifySafeSym:X5,stringifiersSym:z0e,setLevelSym:vbt,endSym:Cbt,formatOptsSym:Ibt,messageKeySym:Tbt,errorKeySym:wbt,nestedKeySym:Rbt,mixinSym:Nbt,levelCompSym:Obt,useOnlyCustomLevelsSym:Pbt,formattersSym:K0e,hooksSym:Dbt,nestedKeyStrSym:kbt,mixinMergeStrategySym:Lbt,msgPrefixSym:Bbt}=X0e,{epochTime:eme,nullTime:Mbt}=J0e,{pid:Wbt}=process,$bt=sbt.hostname(),Fbt=Y0e.err,Ubt={level:"info",levelComparison:mbt.ASC,levels:pbt,messageKey:"msg",errorKey:"err",nestedKey:null,enabled:!0,base:{pid:Wbt,hostname:$bt},serializers:Object.assign(Object.create(null),{err:Fbt}),formatters:Object.assign(Object.create(null),{bindings(t){return t},level(t,e){return{level:e}}}),hooks:{logMethod:void 0},timestamp:eme,name:void 0,redact:null,customLevels:null,useOnlyCustomLevels:!1,depthLimit:5,edgeLimit:100},qbt=hbt(Ubt),jbt=Object.assign(Object.create(null),Y0e);function Z5(...t){let e={},{opts:r,stream:n}=qbt(e,ibt(),...t),{redact:s,crlf:i,serializers:a,timestamp:o,messageKey:c,errorKey:u,nestedKey:l,base:d,name:f,level:p,customLevels:m,levelComparison:h,mixin:A,mixinMergeStrategy:g,useOnlyCustomLevels:b,formatters:y,hooks:x,depthLimit:v,edgeLimit:C,onChild:R,msgPrefix:w}=r,N=cbt({maximumDepth:v,maximumBreadth:C}),P=Abt(y.level,y.bindings,y.log),L=J5.bind({[X5]:N}),M=s?abt(s,L):{},k=s?{stringify:M[bbt]}:{stringify:L},B="}"+(i?`\r `:` -`),Z=mbt.bind(null,{[q0e]:"",[j0e]:a,[Q0e]:M,[H0e]:Y5,[J5]:N,[G0e]:P}),W="";d!==null&&(f===void 0?W=Z(d):W=Z(Object.assign({},d,{name:f})));let F=o instanceof Function?o:o?J0e:Bbt,K=F().indexOf(":")+1;if(b&&!m)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(A&&typeof A!="function")throw Error(`Unknown mixin type "${typeof A}" - expected "function"`);if(w&&typeof w!="string")throw Error(`Unknown msgPrefix type "${typeof w}" - expected "string"`);obt(p,m,b);let j=Y0e(m,b);typeof n.emit=="function"&&n.emit("message",{code:"PINO_CONFIG",config:{levels:j,messageKey:c,errorKey:u}}),lbt(h);let J=ubt(h);return Object.assign(e,{levels:j,[Rbt]:J,[Nbt]:b,[Ebt]:n,[xbt]:F,[bbt]:K,[H0e]:Y5,[J5]:N,[Q0e]:M,[Sbt]:L,[vbt]:D,[Ibt]:c,[Cbt]:u,[Tbt]:l,[Pbt]:l?`,${JSON.stringify(l)}:{`:"",[j0e]:a,[wbt]:A,[kbt]:g,[q0e]:W,[G0e]:P,[Obt]:x,silent:gbt,onChild:R,[Dbt]:w}),Object.setPrototypeOf(e,ibt()),cbt(e),e[_bt](p),e}Ho.exports=X5;Ho.exports.destination=(t=process.stdout.fd)=>typeof t=="object"?(t.dest=U0e(t.dest||process.stdout.fd),F0e(t)):F0e({dest:U0e(t),minLength:0});Ho.exports.transport=D5();Ho.exports.multistream=$0e();Ho.exports.levels=Y0e();Ho.exports.stdSerializers=Ubt;Ho.exports.stdTimeFunctions=Object.assign({},V0e);Ho.exports.symbols=z0e;Ho.exports.version=Abt;Ho.exports.default=X5;Ho.exports.pino=X5});var o1=E((gPr,nme)=>{"use strict";var qbt=qfe(),TR=X0e(),{serializersSym:Z0e}=TR.symbols,{FST_ERR_LOG_INVALID_DESTINATION:jbt,FST_ERR_LOG_INVALID_LOGGER:Hbt}=Ci();function eme(t){if(t.stream&&t.file)throw new jbt;t.file&&(t.stream=TR.destination(t.file),delete t.file);let e=t.logger,r=t.genReqId,n=null;return e?(t.logger=void 0,t.genReqId=void 0,e[Z0e]&&(t.serializers=Object.assign({},t.serializers,e[Z0e])),n=e.child({},t),t.logger=e,t.genReqId=r):n=TR(t,t.stream),n}var Z5={req:function(e){return{method:e.method,url:e.url,version:e.headers&&e.headers["accept-version"],hostname:e.hostname,remoteAddress:e.ip,remotePort:e.socket?e.socket.remotePort:void 0}},err:TR.stdSerializers.err,res:function(e){return{statusCode:e.statusCode}}};function Qbt(){let t=process.hrtime();return t[0]*1e3+t[1]/1e6}function Gbt(t){if(!t.logger){let n=qbt;return n.child=()=>n,{logger:n,hasLogger:!1}}if(tme(t.logger))return{logger:eme({logger:t.logger,serializers:Object.assign({},Z5,t.logger.serializers)}),hasLogger:!0};let e={};return Object.prototype.toString.call(t.logger)==="[object Object]"&&Reflect.ownKeys(t.logger).forEach(n=>{Object.defineProperty(e,n,{value:t.logger[n],writable:!0,enumerable:!0,configurable:!0})}),e.level=e.level||"info",e.serializers=Object.assign({},Z5,e.serializers),t.logger=e,{logger:eme(t.logger),hasLogger:!0}}function tme(t,e){let r=["info","error","debug","fatal","warn","trace","child"],n=t?r.filter(s=>!t[s]||typeof t[s]!="function"):r;if(n.length){if(n.length===r.length&&!e)return!1;throw Hbt(n.join(","))}else return!0}function Kbt(t,e,r,n,s){let i={[t.requestIdLogLabel]:n},a=t.childLoggerFactory.call(t.server,e,i,s||{},r);return t.childLoggerFactory!==rme&&tme(a,!0),a}function rme(t,e,r){return t.child(e,r)}nme.exports={createLogger:Gbt,createChildLogger:Kbt,defaultChildLoggerFactory:rme,serializers:Z5,now:Qbt}});var wR=E((APr,sme)=>{"use strict";sme.exports=Vbt;function qA(t){return t instanceof Buffer?Buffer.from(t):new t.constructor(t.buffer.slice(),t.byteOffset,t.length)}function Vbt(t){if(t=t||{},t.circles)return zbt(t);let e=new Map;if(e.set(Date,a=>new Date(a)),e.set(Map,(a,o)=>new Map(n(Array.from(a),o))),e.set(Set,(a,o)=>new Set(n(Array.from(a),o))),t.constructorHandlers)for(let a of t.constructorHandlers)e.set(a[0],a[1]);let r=null;return t.proto?i:s;function n(a,o){let c=Object.keys(a),u=new Array(c.length);for(let l=0;lnew Date(c)),n.set(Map,(c,u)=>new Map(i(Array.from(c),u))),n.set(Set,(c,u)=>new Set(i(Array.from(c),u))),t.constructorHandlers)for(let c of t.constructorHandlers)n.set(c[0],c[1]);let s=null;return t.proto?o:a;function i(c,u){let l=Object.keys(c),d=new Array(l.length);for(let f=0;f{"use strict";var Ybt=wR()({circles:!1,proto:!0}),{kSchemaVisited:ime,kSchemaResponse:Jbt}=Gs(),t8=Symbol.for("fluent-schema-object"),{FST_ERR_SCH_MISSING_ID:Xbt,FST_ERR_SCH_ALREADY_PRESENT:Zbt,FST_ERR_SCH_DUPLICATE:eEt,FST_ERR_SCH_CONTENT_MISSING_SCHEMA:tEt}=Ci(),ome=["params","body","querystring","query","headers"];function RR(t){this.store=t||{}}RR.prototype.add=function(t){let e=Ybt(t.isFluentSchema||t.isFluentJSONSchema||t[t8]?t.valueOf():t),r=e.$id;if(!r)throw new Xbt;if(this.store[r])throw new Zbt(r);this.store[r]=e};RR.prototype.getSchemas=function(){return Object.assign({},this.store)};RR.prototype.getSchema=function(t){return this.store[t]};function ame(t){return typeof t=="object"&&Object.getPrototypeOf(t)!==Object.prototype}function rEt(t,e){if(t[ime])return t;if(t.query){if(t.querystring)throw new eEt("querystring");t.querystring=t.query}nEt(t);for(let r of ome){let n=t[r];n&&!ame(n)&&(t[r]=e8(n,e.jsonShorthand))}if(t.response){let r=Object.keys(t.response);for(let n of r){if(ame(t.response[n]))continue;let s=t.response[n].content,i=!1;if(s){let a=Object.keys(s);for(let o=0;o{"use strict";var iEt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;lme.exports=class ume{constructor(e){switch(e&&e.rounding){case"floor":this.parseInteger=Math.floor;break;case"ceil":this.parseInteger=Math.ceil;break;case"round":this.parseInteger=Math.round;break;case"trunc":default:this.parseInteger=Math.trunc;break}this._options=e}asInteger(e){if(Number.isInteger(e))return""+e;if(typeof e=="bigint")return e.toString();let r=this.parseInteger(e);if(r===1/0||r===-1/0||r!==r)throw new Error(`The value "${e}" cannot be converted to an integer.`);return""+r}asNumber(e){let r=Number(e);if(r!==r)throw new Error(`The value "${e}" cannot be converted to a number.`);return r===1/0||r===-1/0?"null":""+r}asBoolean(e){return e&&"true"||"false"}asDateTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+e.toISOString()+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date-time.`)}asDate(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(0,10)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date.`)}asTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(11,19)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a time.`)}asString(e){let r=e.length;if(r<42){let s="",i=-1,a=255;for(var n=0;n=55296&&a<=57343)return JSON.stringify(e);return i===-1&&'"'+e+'"'||'"'+s+e.slice(i)+'"'}else return r<5e3&&iEt.test(e)===!1?'"'+e+'"':JSON.stringify(e)}asUnsafeString(e){return'"'+e+'"'}getState(){return this._options}static restoreFromState(e){return new ume(e)}}});var d1=E(kr=>{"use strict";Object.defineProperty(kr,"__esModule",{value:!0});kr.regexpCode=kr.getEsmExportName=kr.getProperty=kr.safeStringify=kr.stringify=kr.strConcat=kr.addCodeArg=kr.str=kr._=kr.nil=kr._Code=kr.Name=kr.IDENTIFIER=kr._CodeOrName=void 0;var u1=class{};kr._CodeOrName=u1;kr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Sm=class extends u1{constructor(e){if(super(),!kr.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};kr.Name=Sm;var Qo=class extends u1{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Sm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};kr._Code=Qo;kr.nil=new Qo("");function dme(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(ka,"__esModule",{value:!0});ka.ValueScope=ka.ValueScopeName=ka.Scope=ka.varKinds=ka.UsedValueState=void 0;var Pa=d1(),i8=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},NR;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(NR||(ka.UsedValueState=NR={}));ka.varKinds={const:new Pa.Name("const"),let:new Pa.Name("let"),var:new Pa.Name("var")};var OR=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Pa.Name?e:this.name(e)}name(e){return new Pa.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};ka.Scope=OR;var PR=class extends Pa.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Pa._)`.${new Pa.Name(r)}[${n}]`}};ka.ValueScopeName=PR;var mEt=(0,Pa._)`\n`,a8=class extends OR{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?mEt:Pa.nil}}get(){return this._scope}name(e){return new PR(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Pa._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Pa.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,NR.Started);let l=r(u);if(l){let d=this.opts.es5?ka.varKinds.var:ka.varKinds.const;i=(0,Pa._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Pa._)`${i}${l}${this.opts._n}`;else throw new i8(u);c.set(u,NR.Completed)})}return i}};ka.ValueScope=a8});var Kt=E(Jt=>{"use strict";Object.defineProperty(Jt,"__esModule",{value:!0});Jt.or=Jt.and=Jt.not=Jt.CodeGen=Jt.operators=Jt.varKinds=Jt.ValueScopeName=Jt.ValueScope=Jt.Scope=Jt.Name=Jt.regexpCode=Jt.stringify=Jt.getProperty=Jt.nil=Jt.strConcat=Jt.str=Jt._=void 0;var gr=d1(),Fc=o8(),pp=d1();Object.defineProperty(Jt,"_",{enumerable:!0,get:function(){return pp._}});Object.defineProperty(Jt,"str",{enumerable:!0,get:function(){return pp.str}});Object.defineProperty(Jt,"strConcat",{enumerable:!0,get:function(){return pp.strConcat}});Object.defineProperty(Jt,"nil",{enumerable:!0,get:function(){return pp.nil}});Object.defineProperty(Jt,"getProperty",{enumerable:!0,get:function(){return pp.getProperty}});Object.defineProperty(Jt,"stringify",{enumerable:!0,get:function(){return pp.stringify}});Object.defineProperty(Jt,"regexpCode",{enumerable:!0,get:function(){return pp.regexpCode}});Object.defineProperty(Jt,"Name",{enumerable:!0,get:function(){return pp.Name}});var LR=o8();Object.defineProperty(Jt,"Scope",{enumerable:!0,get:function(){return LR.Scope}});Object.defineProperty(Jt,"ValueScope",{enumerable:!0,get:function(){return LR.ValueScope}});Object.defineProperty(Jt,"ValueScopeName",{enumerable:!0,get:function(){return LR.ValueScopeName}});Object.defineProperty(Jt,"varKinds",{enumerable:!0,get:function(){return LR.varKinds}});Jt.operators={GT:new gr._Code(">"),GTE:new gr._Code(">="),LT:new gr._Code("<"),LTE:new gr._Code("<="),EQ:new gr._Code("==="),NEQ:new gr._Code("!=="),NOT:new gr._Code("!"),OR:new gr._Code("||"),AND:new gr._Code("&&"),ADD:new gr._Code("+")};var ud=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},c8=class extends ud{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Fc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=HA(this.rhs,e,r)),this}get names(){return this.rhs instanceof gr._CodeOrName?this.rhs.names:{}}},kR=class extends ud{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof gr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=HA(this.rhs,e,r),this}get names(){let e=this.lhs instanceof gr.Name?{}:{...this.lhs.names};return BR(e,this.rhs)}},u8=class extends kR{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},l8=class extends ud{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},d8=class extends ud{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},f8=class extends ud{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},p8=class extends ud{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=HA(this.code,e,r),this}get names(){return this.code instanceof gr._CodeOrName?this.code.names:{}}},f1=class extends ud{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(hEt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Cm(e,r.names),{})}},ld=class extends f1{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},m8=class extends f1{},jA=class extends ld{};jA.kind="else";var vm=class t extends ld{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new jA(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(pme(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=HA(this.condition,e,r),this}get names(){let e=super.names;return BR(e,this.condition),this.else&&Cm(e,this.else.names),e}};vm.kind="if";var Im=class extends ld{};Im.kind="for";var h8=class extends Im{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=HA(this.iteration,e,r),this}get names(){return Cm(super.names,this.iteration.names)}},g8=class extends Im{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Fc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=BR(super.names,this.from);return BR(e,this.to)}},DR=class extends Im{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=HA(this.iterable,e,r),this}get names(){return Cm(super.names,this.iterable.names)}},p1=class extends ld{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};p1.kind="func";var m1=class extends f1{render(e){return"return "+super.render(e)}};m1.kind="return";var A8=class extends ld{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Cm(e,this.catch.names),this.finally&&Cm(e,this.finally.names),e}},h1=class extends ld{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};h1.kind="catch";var g1=class extends ld{render(e){return"finally"+super.render(e)}};g1.kind="finally";var y8=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=e,this._scope=new Fc.Scope({parent:e}),this._nodes=[new m8]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new c8(e,i,n)),i}const(e,r,n){return this._def(Fc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Fc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Fc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new kR(e,r,n))}add(e,r){return this._leafNode(new u8(e,Jt.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==gr.nil&&this._leafNode(new p8(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,gr.addCodeArg)(r,s));return r.push("}"),new gr._Code(r)}if(e,r,n){if(this._blockNode(new vm(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new vm(e))}else(){return this._elseNode(new jA)}endIf(){return this._endBlockNode(vm,jA)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new h8(e),r)}forRange(e,r,n,s,i=this.opts.es5?Fc.varKinds.var:Fc.varKinds.let){let a=this._scope.toName(e);return this._for(new g8(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Fc.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof gr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,gr._)`${a}.length`,o=>{this.var(i,(0,gr._)`${a}[${o}]`),n(i)})}return this._for(new DR("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Fc.varKinds.var:Fc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,gr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new DR("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Im)}label(e){return this._leafNode(new l8(e))}break(e){return this._leafNode(new d8(e))}return(e){let r=new m1;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(m1)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new A8;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new h1(i),r(i)}return n&&(this._currNode=s.finally=new g1,this.code(n)),this._endBlockNode(h1,g1)}throw(e){return this._leafNode(new f8(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=gr.nil,n,s){return this._blockNode(new p1(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(p1)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof vm))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Jt.CodeGen=y8;function Cm(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function BR(t,e){return e instanceof gr._CodeOrName?Cm(t,e.names):t}function HA(t,e,r){if(t instanceof gr.Name)return n(t);if(!s(t))return t;return new gr._Code(t._items.reduce((i,a)=>(a instanceof gr.Name&&(a=n(a)),a instanceof gr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof gr._Code&&i._items.some(a=>a instanceof gr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function hEt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function pme(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,gr._)`!${x8(t)}`}Jt.not=pme;var gEt=mme(Jt.operators.AND);function AEt(...t){return t.reduce(gEt)}Jt.and=AEt;var yEt=mme(Jt.operators.OR);function xEt(...t){return t.reduce(yEt)}Jt.or=xEt;function mme(t){return(e,r)=>e===gr.nil?r:r===gr.nil?e:(0,gr._)`${x8(e)} ${t} ${x8(r)}`}function x8(t){return t instanceof gr.Name?t:(0,gr._)`(${t})`}});var Dr=E(er=>{"use strict";Object.defineProperty(er,"__esModule",{value:!0});er.checkStrictMode=er.getErrorPath=er.Type=er.useFunc=er.setEvaluated=er.evaluatedPropsToName=er.mergeEvaluated=er.eachItem=er.unescapeJsonPointer=er.escapeJsonPointer=er.escapeFragment=er.unescapeFragment=er.schemaRefOrVal=er.schemaHasRulesButRef=er.schemaHasRules=er.checkUnknownRules=er.alwaysValidSchema=er.toHash=void 0;var ln=Kt(),bEt=d1();function EEt(t){let e={};for(let r of t)e[r]=!0;return e}er.toHash=EEt;function _Et(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Ame(t,e),!yme(e,t.self.RULES.all))}er.alwaysValidSchema=_Et;function Ame(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||Eme(t,`unknown keyword: "${i}"`)}er.checkUnknownRules=Ame;function yme(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}er.schemaHasRules=yme;function SEt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}er.schemaHasRulesButRef=SEt;function vEt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ln._)`${r}`}return(0,ln._)`${t}${e}${(0,ln.getProperty)(n)}`}er.schemaRefOrVal=vEt;function IEt(t){return xme(decodeURIComponent(t))}er.unescapeFragment=IEt;function CEt(t){return encodeURIComponent(E8(t))}er.escapeFragment=CEt;function E8(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}er.escapeJsonPointer=E8;function xme(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}er.unescapeJsonPointer=xme;function TEt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}er.eachItem=TEt;function hme({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof ln.Name?(i instanceof ln.Name?t(s,i,a):e(s,i,a),a):i instanceof ln.Name?(e(s,a,i),i):r(i,a);return o===ln.Name&&!(c instanceof ln.Name)?n(s,c):c}}er.mergeEvaluated={props:hme({mergeNames:(t,e,r)=>t.if((0,ln._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ln._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ln._)`${r} || {}`).code((0,ln._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ln._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ln._)`${r} || {}`),_8(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:bme}),items:hme({mergeNames:(t,e,r)=>t.if((0,ln._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ln._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ln._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ln._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function bme(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ln._)`{}`);return e!==void 0&&_8(t,r,e),r}er.evaluatedPropsToName=bme;function _8(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ln._)`${e}${(0,ln.getProperty)(n)}`,!0))}er.setEvaluated=_8;var gme={};function wEt(t,e){return t.scopeValue("func",{ref:e,code:gme[e.code]||(gme[e.code]=new bEt._Code(e.code))})}er.useFunc=wEt;var b8;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(b8||(er.Type=b8={}));function REt(t,e,r){if(t instanceof ln.Name){let n=e===b8.Num;return r?n?(0,ln._)`"[" + ${t} + "]"`:(0,ln._)`"['" + ${t} + "']"`:n?(0,ln._)`"/" + ${t}`:(0,ln._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ln.getProperty)(t).toString():"/"+E8(t)}er.getErrorPath=REt;function Eme(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}er.checkStrictMode=Eme});var dd=E(S8=>{"use strict";Object.defineProperty(S8,"__esModule",{value:!0});var wi=Kt(),NEt={data:new wi.Name("data"),valCxt:new wi.Name("valCxt"),instancePath:new wi.Name("instancePath"),parentData:new wi.Name("parentData"),parentDataProperty:new wi.Name("parentDataProperty"),rootData:new wi.Name("rootData"),dynamicAnchors:new wi.Name("dynamicAnchors"),vErrors:new wi.Name("vErrors"),errors:new wi.Name("errors"),this:new wi.Name("this"),self:new wi.Name("self"),scope:new wi.Name("scope"),json:new wi.Name("json"),jsonPos:new wi.Name("jsonPos"),jsonLen:new wi.Name("jsonLen"),jsonPart:new wi.Name("jsonPart")};S8.default=NEt});var A1=E(Ri=>{"use strict";Object.defineProperty(Ri,"__esModule",{value:!0});Ri.extendErrors=Ri.resetErrorsCount=Ri.reportExtraError=Ri.reportError=Ri.keyword$DataError=Ri.keywordError=void 0;var Sr=Kt(),MR=Dr(),ea=dd();Ri.keywordError={message:({keyword:t})=>(0,Sr.str)`must pass "${t}" keyword validation`};Ri.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Sr.str)`"${t}" keyword must be ${e} ($data)`:(0,Sr.str)`"${t}" keyword is invalid ($data)`};function OEt(t,e=Ri.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=vme(t,e,r);n??(a||o)?_me(i,c):Sme(s,(0,Sr._)`[${c}]`)}Ri.reportError=OEt;function PEt(t,e=Ri.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=vme(t,e,r);_me(s,o),i||a||Sme(n,ea.default.vErrors)}Ri.reportExtraError=PEt;function kEt(t,e){t.assign(ea.default.errors,e),t.if((0,Sr._)`${ea.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Sr._)`${ea.default.vErrors}.length`,e),()=>t.assign(ea.default.vErrors,null)))}Ri.resetErrorsCount=kEt;function DEt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ea.default.errors,o=>{t.const(a,(0,Sr._)`${ea.default.vErrors}[${o}]`),t.if((0,Sr._)`${a}.instancePath === undefined`,()=>t.assign((0,Sr._)`${a}.instancePath`,(0,Sr.strConcat)(ea.default.instancePath,i.errorPath))),t.assign((0,Sr._)`${a}.schemaPath`,(0,Sr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Sr._)`${a}.schema`,r),t.assign((0,Sr._)`${a}.data`,n))})}Ri.extendErrors=DEt;function _me(t,e){let r=t.const("err",e);t.if((0,Sr._)`${ea.default.vErrors} === null`,()=>t.assign(ea.default.vErrors,(0,Sr._)`[${r}]`),(0,Sr._)`${ea.default.vErrors}.push(${r})`),t.code((0,Sr._)`${ea.default.errors}++`)}function Sme(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Sr._)`new ${t.ValidationError}(${e})`):(r.assign((0,Sr._)`${n}.errors`,e),r.return(!1))}var Tm={keyword:new Sr.Name("keyword"),schemaPath:new Sr.Name("schemaPath"),params:new Sr.Name("params"),propertyName:new Sr.Name("propertyName"),message:new Sr.Name("message"),schema:new Sr.Name("schema"),parentSchema:new Sr.Name("parentSchema")};function vme(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Sr._)`{}`:BEt(t,e,r)}function BEt(t,e,r={}){let{gen:n,it:s}=t,i=[LEt(s,r),MEt(t,r)];return WEt(t,e,i),n.object(...i)}function LEt({errorPath:t},{instancePath:e}){let r=e?(0,Sr.str)`${t}${(0,MR.getErrorPath)(e,MR.Type.Str)}`:t;return[ea.default.instancePath,(0,Sr.strConcat)(ea.default.instancePath,r)]}function MEt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Sr.str)`${e}/${t}`;return r&&(s=(0,Sr.str)`${s}${(0,MR.getErrorPath)(r,MR.Type.Str)}`),[Tm.schemaPath,s]}function WEt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([Tm.keyword,s],[Tm.params,typeof e=="function"?e(t):e||(0,Sr._)`{}`]),c.messages&&n.push([Tm.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Tm.schema,a],[Tm.parentSchema,(0,Sr._)`${l}${d}`],[ea.default.data,i]),u&&n.push([Tm.propertyName,u])}});var Cme=E(QA=>{"use strict";Object.defineProperty(QA,"__esModule",{value:!0});QA.boolOrEmptySchema=QA.topBoolOrEmptySchema=void 0;var $Et=A1(),FEt=Kt(),UEt=dd(),qEt={message:"boolean schema is false"};function jEt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Ime(t,!1):typeof r=="object"&&r.$async===!0?e.return(UEt.default.data):(e.assign((0,FEt._)`${n}.errors`,null),e.return(!0))}QA.topBoolOrEmptySchema=jEt;function HEt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Ime(t)):r.var(e,!0)}QA.boolOrEmptySchema=HEt;function Ime(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,$Et.reportError)(s,qEt,void 0,e)}});var v8=E(GA=>{"use strict";Object.defineProperty(GA,"__esModule",{value:!0});GA.getRules=GA.isJSONType=void 0;var QEt=["string","number","integer","boolean","null","object","array"],GEt=new Set(QEt);function KEt(t){return typeof t=="string"&&GEt.has(t)}GA.isJSONType=KEt;function VEt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}GA.getRules=VEt});var I8=E(mp=>{"use strict";Object.defineProperty(mp,"__esModule",{value:!0});mp.shouldUseRule=mp.shouldUseGroup=mp.schemaHasRulesForType=void 0;function zEt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Tme(t,n)}mp.schemaHasRulesForType=zEt;function Tme(t,e){return e.rules.some(r=>wme(t,r))}mp.shouldUseGroup=Tme;function wme(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}mp.shouldUseRule=wme});var y1=E(Ni=>{"use strict";Object.defineProperty(Ni,"__esModule",{value:!0});Ni.reportTypeError=Ni.checkDataTypes=Ni.checkDataType=Ni.coerceAndCheckDataType=Ni.getJSONTypes=Ni.getSchemaTypes=Ni.DataType=void 0;var YEt=v8(),JEt=I8(),XEt=A1(),qt=Kt(),Rme=Dr(),KA;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(KA||(Ni.DataType=KA={}));function ZEt(t){let e=Nme(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Ni.getSchemaTypes=ZEt;function Nme(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(YEt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Ni.getJSONTypes=Nme;function e1t(t,e){let{gen:r,data:n,opts:s}=t,i=t1t(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,JEt.schemaHasRulesForType)(t,e[0]));if(a){let o=T8(e,n,s.strictNumbers,KA.Wrong);r.if(o,()=>{i.length?r1t(t,e,i):w8(t)})}return a}Ni.coerceAndCheckDataType=e1t;var Ome=new Set(["string","number","integer","boolean","null"]);function t1t(t,e){return e?t.filter(r=>Ome.has(r)||e==="array"&&r==="array"):[]}function r1t(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,qt._)`typeof ${s}`),o=n.let("coerced",(0,qt._)`undefined`);i.coerceTypes==="array"&&n.if((0,qt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,qt._)`${s}[0]`).assign(a,(0,qt._)`typeof ${s}`).if(T8(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,qt._)`${o} !== undefined`);for(let u of r)(Ome.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),w8(t),n.endIf(),n.if((0,qt._)`${o} !== undefined`,()=>{n.assign(s,o),n1t(t,o)});function c(u){switch(u){case"string":n.elseIf((0,qt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,qt._)`"" + ${s}`).elseIf((0,qt._)`${s} === null`).assign(o,(0,qt._)`""`);return;case"number":n.elseIf((0,qt._)`${a} == "boolean" || ${s} === null - || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,qt._)`+${s}`);return;case"integer":n.elseIf((0,qt._)`${a} === "boolean" || ${s} === null - || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,qt._)`+${s}`);return;case"boolean":n.elseIf((0,qt._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,qt._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,qt._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,qt._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${s} === null`).assign(o,(0,qt._)`[${s}]`)}}}function n1t({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,qt._)`${e} !== undefined`,()=>t.assign((0,qt._)`${e}[${r}]`,n))}function C8(t,e,r,n=KA.Correct){let s=n===KA.Correct?qt.operators.EQ:qt.operators.NEQ,i;switch(t){case"null":return(0,qt._)`${e} ${s} null`;case"array":i=(0,qt._)`Array.isArray(${e})`;break;case"object":i=(0,qt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,qt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,qt._)`typeof ${e} ${s} ${t}`}return n===KA.Correct?i:(0,qt.not)(i);function a(o=qt.nil){return(0,qt.and)((0,qt._)`typeof ${e} == "number"`,o,r?(0,qt._)`isFinite(${e})`:qt.nil)}}Ni.checkDataType=C8;function T8(t,e,r,n){if(t.length===1)return C8(t[0],e,r,n);let s,i=(0,Rme.toHash)(t);if(i.array&&i.object){let a=(0,qt._)`typeof ${e} != "object"`;s=i.null?a:(0,qt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=qt.nil;i.number&&delete i.integer;for(let a in i)s=(0,qt.and)(s,C8(a,e,r,n));return s}Ni.checkDataTypes=T8;var s1t={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,qt._)`{type: ${t}}`:(0,qt._)`{type: ${e}}`};function w8(t){let e=i1t(t);(0,XEt.reportError)(e,s1t)}Ni.reportTypeError=w8;function i1t(t){let{gen:e,data:r,schema:n}=t,s=(0,Rme.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var kme=E(WR=>{"use strict";Object.defineProperty(WR,"__esModule",{value:!0});WR.assignDefaults=void 0;var VA=Kt(),a1t=Dr();function o1t(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)Pme(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>Pme(t,i,s.default))}WR.assignDefaults=o1t;function Pme(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,VA._)`${i}${(0,VA.getProperty)(e)}`;if(s){(0,a1t.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,VA._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,VA._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,VA._)`${o} = ${(0,VA.stringify)(r)}`)}});var Go=E(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.validateUnion=Zr.validateArray=Zr.usePattern=Zr.callValidateCode=Zr.schemaProperties=Zr.allSchemaProperties=Zr.noPropertyInData=Zr.propertyInData=Zr.isOwnProperty=Zr.hasPropFunc=Zr.reportMissingProp=Zr.checkMissingProp=Zr.checkReportMissingProp=void 0;var Rn=Kt(),R8=Dr(),hp=dd(),c1t=Dr();function u1t(t,e){let{gen:r,data:n,it:s}=t;r.if(O8(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Rn._)`${e}`},!0),t.error()})}Zr.checkReportMissingProp=u1t;function l1t({gen:t,data:e,it:{opts:r}},n,s){return(0,Rn.or)(...n.map(i=>(0,Rn.and)(O8(t,e,i,r.ownProperties),(0,Rn._)`${s} = ${i}`)))}Zr.checkMissingProp=l1t;function d1t(t,e){t.setParams({missingProperty:e},!0),t.error()}Zr.reportMissingProp=d1t;function Dme(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Rn._)`Object.prototype.hasOwnProperty`})}Zr.hasPropFunc=Dme;function N8(t,e,r){return(0,Rn._)`${Dme(t)}.call(${e}, ${r})`}Zr.isOwnProperty=N8;function f1t(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} !== undefined`;return n?(0,Rn._)`${s} && ${N8(t,e,r)}`:s}Zr.propertyInData=f1t;function O8(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} === undefined`;return n?(0,Rn.or)(s,(0,Rn.not)(N8(t,e,r))):s}Zr.noPropertyInData=O8;function Bme(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Zr.allSchemaProperties=Bme;function p1t(t,e){return Bme(e).filter(r=>!(0,R8.alwaysValidSchema)(t,e[r]))}Zr.schemaProperties=p1t;function m1t({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Rn._)`${t}, ${e}, ${n}${s}`:e,d=[[hp.default.instancePath,(0,Rn.strConcat)(hp.default.instancePath,i)],[hp.default.parentData,a.parentData],[hp.default.parentDataProperty,a.parentDataProperty],[hp.default.rootData,hp.default.rootData]];a.opts.dynamicRef&&d.push([hp.default.dynamicAnchors,hp.default.dynamicAnchors]);let f=(0,Rn._)`${l}, ${r.object(...d)}`;return c!==Rn.nil?(0,Rn._)`${o}.call(${c}, ${f})`:(0,Rn._)`${o}(${f})`}Zr.callValidateCode=m1t;var h1t=(0,Rn._)`new RegExp`;function g1t({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Rn._)`${s.code==="new RegExp"?h1t:(0,c1t.useFunc)(t,s)}(${r}, ${n})`})}Zr.usePattern=g1t;function A1t(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Rn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:R8.Type.Num},i),e.if((0,Rn.not)(i),o)})}}Zr.validateArray=A1t;function y1t(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,R8.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Rn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Rn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}Zr.validateUnion=y1t});var Wme=E(Fu=>{"use strict";Object.defineProperty(Fu,"__esModule",{value:!0});Fu.validateKeywordUsage=Fu.validSchemaType=Fu.funcKeywordCode=Fu.macroKeywordCode=void 0;var ta=Kt(),wm=dd(),x1t=Go(),b1t=A1();function E1t(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=Mme(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ta.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Fu.macroKeywordCode=E1t;function _1t(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;v1t(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=Mme(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&Lme(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&Lme(t),A(()=>S1t(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ta._)`await `),b=>n.assign(d,!1).if((0,ta._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ta._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ta._)`${l}.errors`;return n.assign(g,null),h(ta.nil),g}function h(g=e.async?(0,ta._)`await `:ta.nil){let b=c.opts.passContext?wm.default.this:wm.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ta._)`${g}${(0,x1t.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,ta.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}Fu.funcKeywordCode=_1t;function Lme(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ta._)`${n.parentData}[${n.parentDataProperty}]`))}function S1t(t,e){let{gen:r}=t;r.if((0,ta._)`Array.isArray(${e})`,()=>{r.assign(wm.default.vErrors,(0,ta._)`${wm.default.vErrors} === null ? ${e} : ${wm.default.vErrors}.concat(${e})`).assign(wm.default.errors,(0,ta._)`${wm.default.vErrors}.length`),(0,b1t.extendErrors)(t)},()=>t.error())}function v1t({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Mme(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ta.stringify)(r)})}function I1t(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Fu.validSchemaType=I1t;function C1t({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Fu.validateKeywordUsage=C1t});var Fme=E(gp=>{"use strict";Object.defineProperty(gp,"__esModule",{value:!0});gp.extendSubschemaMode=gp.extendSubschemaData=gp.getSubschema=void 0;var Uu=Kt(),$me=Dr();function T1t(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,Uu._)`${t.schemaPath}${(0,Uu.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,Uu._)`${t.schemaPath}${(0,Uu.getProperty)(e)}${(0,Uu.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,$me.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}gp.getSubschema=T1t;function w1t(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,Uu._)`${e.data}${(0,Uu.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Uu.str)`${u}${(0,$me.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Uu._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof Uu.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}gp.extendSubschemaData=w1t;function R1t(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}gp.extendSubschemaMode=R1t});var Ko=E((DPr,Ume)=>{"use strict";Ume.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,s,i;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!t(e[s],r[s]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(i=Object.keys(e),n=i.length,n!==Object.keys(r).length)return!1;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[s]))return!1;for(s=n;s--!==0;){var a=i[s];if(!t(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}});var jme=E((BPr,qme)=>{"use strict";var Ap=qme.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};$R(e,n,s,t,"",t)};Ap.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Ap.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Ap.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Ap.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function $R(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Ap.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Da,"__esModule",{value:!0});Da.getSchemaRefs=Da.resolveUrl=Da.normalizeId=Da._getFullPath=Da.getFullPath=Da.inlineRef=void 0;var O1t=Dr(),P1t=Ko(),k1t=jme(),D1t=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function B1t(t,e=!0){return typeof t=="boolean"?!0:e===!0?!P8(t):e?Hme(t)<=e:!1}Da.inlineRef=B1t;var L1t=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function P8(t){for(let e in t){if(L1t.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(P8)||typeof r=="object"&&P8(r))return!0}return!1}function Hme(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!D1t.has(r)&&(typeof t[r]=="object"&&(0,O1t.eachItem)(t[r],n=>e+=Hme(n)),e===1/0))return 1/0}return e}function Qme(t,e="",r){r!==!1&&(e=zA(e));let n=t.parse(e);return Gme(t,n)}Da.getFullPath=Qme;function Gme(t,e){return t.serialize(e).split("#")[0]+"#"}Da._getFullPath=Gme;var M1t=/#\/?$/;function zA(t){return t?t.replace(M1t,""):""}Da.normalizeId=zA;function W1t(t,e,r){return r=zA(r),t.resolve(e,r)}Da.resolveUrl=W1t;var $1t=/^[a-z_][-a-z0-9._]*$/i;function F1t(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=zA(t[r]||e),i={"":s},a=Qme(n,s,!1),o={},c=new Set;return k1t(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=zA(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==zA(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!$1t.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!P1t(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Da.getSchemaRefs=F1t});var _1=E(yp=>{"use strict";Object.defineProperty(yp,"__esModule",{value:!0});yp.getData=yp.KeywordCxt=yp.validateFunctionCode=void 0;var Jme=Cme(),Kme=y1(),D8=I8(),FR=y1(),U1t=kme(),E1=Wme(),k8=Fme(),it=Kt(),wt=dd(),q1t=x1(),fd=Dr(),b1=A1();function j1t(t){if(ehe(t)&&(the(t),Zme(t))){G1t(t);return}Xme(t,()=>(0,Jme.topBoolOrEmptySchema)(t))}yp.validateFunctionCode=j1t;function Xme({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,it._)`${wt.default.data}, ${wt.default.valCxt}`,n.$async,()=>{t.code((0,it._)`"use strict"; ${Vme(r,s)}`),Q1t(t,s),t.code(i)}):t.func(e,(0,it._)`${wt.default.data}, ${H1t(s)}`,n.$async,()=>t.code(Vme(r,s)).code(i))}function H1t(t){return(0,it._)`{${wt.default.instancePath}="", ${wt.default.parentData}, ${wt.default.parentDataProperty}, ${wt.default.rootData}=${wt.default.data}${t.dynamicRef?(0,it._)`, ${wt.default.dynamicAnchors}={}`:it.nil}}={}`}function Q1t(t,e){t.if(wt.default.valCxt,()=>{t.var(wt.default.instancePath,(0,it._)`${wt.default.valCxt}.${wt.default.instancePath}`),t.var(wt.default.parentData,(0,it._)`${wt.default.valCxt}.${wt.default.parentData}`),t.var(wt.default.parentDataProperty,(0,it._)`${wt.default.valCxt}.${wt.default.parentDataProperty}`),t.var(wt.default.rootData,(0,it._)`${wt.default.valCxt}.${wt.default.rootData}`),e.dynamicRef&&t.var(wt.default.dynamicAnchors,(0,it._)`${wt.default.valCxt}.${wt.default.dynamicAnchors}`)},()=>{t.var(wt.default.instancePath,(0,it._)`""`),t.var(wt.default.parentData,(0,it._)`undefined`),t.var(wt.default.parentDataProperty,(0,it._)`undefined`),t.var(wt.default.rootData,wt.default.data),e.dynamicRef&&t.var(wt.default.dynamicAnchors,(0,it._)`{}`)})}function G1t(t){let{schema:e,opts:r,gen:n}=t;Xme(t,()=>{r.$comment&&e.$comment&&nhe(t),J1t(t),n.let(wt.default.vErrors,null),n.let(wt.default.errors,0),r.unevaluated&&K1t(t),rhe(t),e_t(t)})}function K1t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,it._)`${r}.evaluated`),e.if((0,it._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,it._)`${t.evaluated}.props`,(0,it._)`undefined`)),e.if((0,it._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,it._)`${t.evaluated}.items`,(0,it._)`undefined`))}function Vme(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,it._)`/*# sourceURL=${r} */`:it.nil}function V1t(t,e){if(ehe(t)&&(the(t),Zme(t))){z1t(t,e);return}(0,Jme.boolOrEmptySchema)(t,e)}function Zme({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function ehe(t){return typeof t.schema!="boolean"}function z1t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&nhe(t),X1t(t),Z1t(t);let i=n.const("_errs",wt.default.errors);rhe(t,i),n.var(e,(0,it._)`${i} === ${wt.default.errors}`)}function the(t){(0,fd.checkUnknownRules)(t),Y1t(t)}function rhe(t,e){if(t.opts.jtd)return zme(t,[],!1,e);let r=(0,Kme.getSchemaTypes)(t.schema),n=(0,Kme.coerceAndCheckDataType)(t,r);zme(t,r,!n,e)}function Y1t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,fd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function J1t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,fd.checkStrictMode)(t,"default is ignored in the schema root")}function X1t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,q1t.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function Z1t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function nhe({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,it._)`${wt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,it.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,it._)`${wt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function e_t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,it._)`${wt.default.errors} === 0`,()=>e.return(wt.default.data),()=>e.throw((0,it._)`new ${s}(${wt.default.vErrors})`)):(e.assign((0,it._)`${n}.errors`,wt.default.vErrors),i.unevaluated&&t_t(t),e.return((0,it._)`${wt.default.errors} === 0`))}function t_t({gen:t,evaluated:e,props:r,items:n}){r instanceof it.Name&&t.assign((0,it._)`${e}.props`,r),n instanceof it.Name&&t.assign((0,it._)`${e}.items`,n)}function zme(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,fd.schemaHasRulesButRef)(i,l))){s.block(()=>ihe(t,"$ref",l.all.$ref.definition));return}c.jtd||r_t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,D8.shouldUseGroup)(i,f)&&(f.type?(s.if((0,FR.checkDataType)(f.type,a,c.strictNumbers)),Yme(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,FR.reportTypeError)(t)),s.endIf()):Yme(t,f),o||s.if((0,it._)`${wt.default.errors} === ${n||0}`))}}function Yme(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,U1t.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,D8.shouldUseRule)(n,i)&&ihe(t,i.keyword,i.definition,e.type)})}function r_t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(n_t(t,e),t.opts.allowUnionTypes||s_t(t,e),i_t(t,t.dataTypes))}function n_t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{she(t.dataTypes,r)||B8(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),o_t(t,e)}}function s_t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&B8(t,"use allowUnionTypes to allow union type keyword")}function i_t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,D8.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>a_t(e,a))&&B8(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function a_t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function she(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function o_t(t,e){let r=[];for(let n of t.dataTypes)she(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function B8(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,fd.checkStrictMode)(t,e,t.opts.strictTypes)}var UR=class{constructor(e,r,n){if((0,E1.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,fd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",ahe(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,E1.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",wt.default.errors))}result(e,r,n){this.failResult((0,it.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,it.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,it._)`${r} !== undefined && (${(0,it.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?b1.reportExtraError:b1.reportError)(this,this.def.error,r)}$dataError(){(0,b1.reportError)(this,this.def.$dataError||b1.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,b1.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=it.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=it.nil,r=it.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,it.or)((0,it._)`${s} === undefined`,r)),e!==it.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==it.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,it.or)(a(),o());function a(){if(n.length){if(!(r instanceof it.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,it._)`${(0,FR.checkDataTypes)(c,r,i.opts.strictNumbers,FR.DataType.Wrong)}`}return it.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,it._)`!${c}(${r})`}return it.nil}}subschema(e,r){let n=(0,k8.getSubschema)(this.it,e);(0,k8.extendSubschemaData)(n,this.it,e),(0,k8.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return V1t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=fd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=fd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,it.Name)),!0}};yp.KeywordCxt=UR;function ihe(t,e,r,n){let s=new UR(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,E1.funcKeywordCode)(s,r):"macro"in r?(0,E1.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,E1.funcKeywordCode)(s,r)}var c_t=/^\/(?:[^~]|~0|~1)*$/,u_t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function ahe(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return wt.default.rootData;if(t[0]==="/"){if(!c_t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=wt.default.rootData}else{let u=u_t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,it._)`${i}${(0,it.getProperty)((0,fd.unescapeJsonPointer)(u))}`,a=(0,it._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}yp.getData=ahe});var qR=E(M8=>{"use strict";Object.defineProperty(M8,"__esModule",{value:!0});var L8=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};M8.default=L8});var S1=E(F8=>{"use strict";Object.defineProperty(F8,"__esModule",{value:!0});var W8=x1(),$8=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,W8.resolveUrl)(e,r,n),this.missingSchema=(0,W8.normalizeId)((0,W8.getFullPath)(e,this.missingRef))}};F8.default=$8});var HR=E(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});Vo.resolveSchema=Vo.getCompilingSchema=Vo.resolveRef=Vo.compileSchema=Vo.SchemaEnv=void 0;var Uc=Kt(),l_t=qR(),Rm=dd(),qc=x1(),ohe=Dr(),d_t=_1(),YA=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,qc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Vo.SchemaEnv=YA;function q8(t){let e=che.call(this,t);if(e)return e;let r=(0,qc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Uc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:l_t.default,code:(0,Uc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Rm.default.data,parentData:Rm.default.parentData,parentDataProperty:Rm.default.parentDataProperty,dataNames:[Rm.default.data],dataPathArr:[Uc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Uc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Uc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Uc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,d_t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Rm.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Rm.default.self}`,`${Rm.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Uc.Name?void 0:m,items:h instanceof Uc.Name?void 0:h,dynamicProps:m instanceof Uc.Name,dynamicItems:h instanceof Uc.Name},p.source&&(p.source.evaluated=(0,Uc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}Vo.compileSchema=q8;function f_t(t,e,r){var n;r=(0,qc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=h_t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new YA({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=p_t.call(this,i)}Vo.resolveRef=f_t;function p_t(t){return(0,qc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:q8.call(this,t)}function che(t){for(let e of this._compilations)if(m_t(e,t))return e}Vo.getCompilingSchema=che;function m_t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function h_t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||jR.call(this,t,e)}function jR(t,e){let r=this.opts.uriResolver.parse(e),n=(0,qc._getFullPath)(this.opts.uriResolver,r),s=(0,qc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return U8.call(this,r,t);let i=(0,qc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=jR.call(this,t,a);return typeof o?.schema!="object"?void 0:U8.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||q8.call(this,a),i===(0,qc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,qc.resolveUrl)(this.opts.uriResolver,s,u)),new YA({schema:o,schemaId:c,root:t,baseId:s})}return U8.call(this,r,a)}}Vo.resolveSchema=jR;var g_t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function U8(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,ohe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!g_t.has(o)&&u&&(e=(0,qc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,ohe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,qc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=jR.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new YA({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var uhe=E((UPr,A_t)=>{A_t.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var H8=E((qPr,phe)=>{"use strict";var y_t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),dhe=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function j8(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var x_t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function lhe(t){return t.length=0,!0}function b_t(t,e,r){if(t.length){let n=j8(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function E_t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=b_t;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=lhe}else{s.push(u);continue}}return s.length&&(o===lhe?r.zone=s.join(""):a?n.push(s.join("")):n.push(j8(s))),r.address=n.join(""),r}function fhe(t){if(__t(t,":")<2)return{host:t,isIPV6:!1};let e=E_t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function __t(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:C_t}=H8(),T_t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,w_t=["http","https","ws","wss","urn","urn:uuid"];function R_t(t){return w_t.indexOf(t)!==-1}function Q8(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function mhe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function hhe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function N_t(t){return t.secure=Q8(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function O_t(t){if((t.port===(Q8(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function P_t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(T_t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=G8(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function k_t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=G8(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function D_t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!C_t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function B_t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var ghe={scheme:"http",domainHost:!0,parse:mhe,serialize:hhe},L_t={scheme:"https",domainHost:ghe.domainHost,parse:mhe,serialize:hhe},QR={scheme:"ws",domainHost:!0,parse:N_t,serialize:O_t},M_t={scheme:"wss",domainHost:QR.domainHost,parse:QR.parse,serialize:QR.serialize},W_t={scheme:"urn",parse:P_t,serialize:k_t,skipNormalize:!0},$_t={scheme:"urn:uuid",parse:D_t,serialize:B_t,skipNormalize:!0},GR={http:ghe,https:L_t,ws:QR,wss:M_t,urn:W_t,"urn:uuid":$_t};Object.setPrototypeOf(GR,null);function G8(t){return t&&(GR[t]||GR[t.toLowerCase()])||void 0}Ahe.exports={wsIsSecure:Q8,SCHEMES:GR,isValidSchemeName:R_t,getSchemeHandler:G8}});var Ehe=E((HPr,VR)=>{"use strict";var{normalizeIPv6:F_t,removeDotSegments:v1,recomposeAuthority:U_t,normalizeComponentEncoding:KR,isIPv4:q_t,nonSimpleDomain:j_t}=H8(),{SCHEMES:H_t,getSchemeHandler:xhe}=yhe();function Q_t(t,e){return typeof t=="string"?t=qu(pd(t,e),e):typeof t=="object"&&(t=pd(qu(t,e),e)),t}function G_t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=bhe(pd(t,n),pd(e,n),n,!0);return n.skipEscape=!0,qu(s,n)}function bhe(t,e,r,n){let s={};return n||(t=pd(qu(t,r),r),e=pd(qu(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=v1(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=v1(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=v1(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=v1(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function K_t(t,e,r){return typeof t=="string"?(t=unescape(t),t=qu(KR(pd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=qu(KR(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=qu(KR(pd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=qu(KR(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function qu(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=xhe(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=U_t(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=v1(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var V_t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function pd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(V_t);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(q_t(n.host)===!1){let c=F_t(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=xhe(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&j_t(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var K8={SCHEMES:H_t,normalize:Q_t,resolve:G_t,resolveComponent:bhe,equal:K_t,serialize:qu,parse:pd};VR.exports=K8;VR.exports.default=K8;VR.exports.fastUri=K8});var She=E(V8=>{"use strict";Object.defineProperty(V8,"__esModule",{value:!0});var _he=Ehe();_he.code='require("ajv/dist/runtime/uri").default';V8.default=_he});var Ohe=E(li=>{"use strict";Object.defineProperty(li,"__esModule",{value:!0});li.CodeGen=li.Name=li.nil=li.stringify=li.str=li._=li.KeywordCxt=void 0;var z_t=_1();Object.defineProperty(li,"KeywordCxt",{enumerable:!0,get:function(){return z_t.KeywordCxt}});var JA=Kt();Object.defineProperty(li,"_",{enumerable:!0,get:function(){return JA._}});Object.defineProperty(li,"str",{enumerable:!0,get:function(){return JA.str}});Object.defineProperty(li,"stringify",{enumerable:!0,get:function(){return JA.stringify}});Object.defineProperty(li,"nil",{enumerable:!0,get:function(){return JA.nil}});Object.defineProperty(li,"Name",{enumerable:!0,get:function(){return JA.Name}});Object.defineProperty(li,"CodeGen",{enumerable:!0,get:function(){return JA.CodeGen}});var Y_t=qR(),whe=S1(),J_t=v8(),I1=HR(),X_t=Kt(),C1=x1(),zR=y1(),Y8=Dr(),vhe=uhe(),Z_t=She(),Rhe=(t,e)=>new RegExp(t,e);Rhe.code="new RegExp";var eSt=["removeAdditional","useDefaults","coerceTypes"],tSt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),rSt={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},nSt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Ihe=200;function sSt(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,I,R,w,N;let P=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Rhe,L=(s=t.uriResolver)!==null&&s!==void 0?s:Z_t.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Ihe,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:Ihe,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var T1=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...sSt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new X_t.ValueScope({scope:{},prefixes:tSt,es5:r,lines:n}),this.logger=lSt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,J_t.getRules)(),Che.call(this,rSt,e,"NOT SUPPORTED"),Che.call(this,nSt,e,"DEPRECATED","warn"),this._metaOpts=cSt.call(this),e.formats&&aSt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&oSt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),iSt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=vhe;n==="id"&&(s={...vhe},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof whe.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,C1.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=The.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new I1.SchemaEnv({schema:{},schemaId:n});if(r=I1.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=The.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,C1.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(fSt.call(this,n,r),!r)return(0,Y8.eachItem)(n,i=>z8.call(this,i)),this;mSt.call(this,r);let s={...r,type:(0,zR.getJSONTypes)(r.type),schemaType:(0,zR.getJSONTypes)(r.schemaType)};return(0,Y8.eachItem)(n,s.type.length===0?i=>z8.call(this,i,s):i=>s.type.forEach(a=>z8.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=Nhe(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,C1.normalizeId)(a||n);let u=C1.getSchemaRefs.call(this,e,n);return c=new I1.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):I1.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{I1.compileSchema.call(this,e)}finally{this.opts=r}}};T1.ValidationError=Y_t.default;T1.MissingRefError=whe.default;li.default=T1;function Che(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function The(t){return t=(0,C1.normalizeId)(t),this.schemas[t]||this.refs[t]}function iSt(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function aSt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function oSt(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function cSt(){let t={...this.opts};for(let e of eSt)delete t[e];return t}var uSt={log(){},warn(){},error(){}};function lSt(t){if(t===!1)return uSt;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var dSt=/^[a-z_$][a-z0-9_$:-]*$/i;function fSt(t,e){let{RULES:r}=this;if((0,Y8.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!dSt.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function z8(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,zR.getJSONTypes)(e.type),schemaType:(0,zR.getJSONTypes)(e.schemaType)}};e.before?pSt.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function pSt(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function mSt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Nhe(e)),t.validateSchema=this.compile(e,!0))}var hSt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Nhe(t){return{anyOf:[t,hSt]}}});var Phe=E(J8=>{"use strict";Object.defineProperty(J8,"__esModule",{value:!0});var gSt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};J8.default=gSt});var Lhe=E(Nm=>{"use strict";Object.defineProperty(Nm,"__esModule",{value:!0});Nm.callRef=Nm.getValidate=void 0;var ASt=S1(),khe=Go(),Ba=Kt(),XA=dd(),Dhe=HR(),YR=Dr(),ySt={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=Dhe.resolveRef.call(c,u,s,r);if(l===void 0)throw new ASt.default(n.opts.uriResolver,s,r);if(l instanceof Dhe.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return JR(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return JR(t,(0,Ba._)`${m}.validate`,u,u.$async)}function f(m){let h=Bhe(t,m);JR(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,Ba.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:Ba.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function Bhe(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ba._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Nm.getValidate=Bhe;function JR(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?XA.default.this:Ba.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,Ba._)`await ${(0,khe.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,Ba._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,khe.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,Ba._)`${m}.errors`;s.assign(XA.default.vErrors,(0,Ba._)`${XA.default.vErrors} === null ? ${h} : ${XA.default.vErrors}.concat(${h})`),s.assign(XA.default.errors,(0,Ba._)`${XA.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=YR.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,Ba._)`${m}.evaluated.props`);i.props=YR.mergeEvaluated.props(s,g,i.props,Ba.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=YR.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,Ba._)`${m}.evaluated.items`);i.items=YR.mergeEvaluated.items(s,g,i.items,Ba.Name)}}}Nm.callRef=JR;Nm.default=ySt});var Mhe=E(X8=>{"use strict";Object.defineProperty(X8,"__esModule",{value:!0});var xSt=Phe(),bSt=Lhe(),ESt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",xSt.default,bSt.default];X8.default=ESt});var Whe=E(Z8=>{"use strict";Object.defineProperty(Z8,"__esModule",{value:!0});var XR=Kt(),xp=XR.operators,ZR={maximum:{okStr:"<=",ok:xp.LTE,fail:xp.GT},minimum:{okStr:">=",ok:xp.GTE,fail:xp.LT},exclusiveMaximum:{okStr:"<",ok:xp.LT,fail:xp.GTE},exclusiveMinimum:{okStr:">",ok:xp.GT,fail:xp.LTE}},_St={message:({keyword:t,schemaCode:e})=>(0,XR.str)`must be ${ZR[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,XR._)`{comparison: ${ZR[t].okStr}, limit: ${e}}`},SSt={keyword:Object.keys(ZR),type:"number",schemaType:"number",$data:!0,error:_St,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,XR._)`${r} ${ZR[e].fail} ${n} || isNaN(${r})`)}};Z8.default=SSt});var $he=E(eW=>{"use strict";Object.defineProperty(eW,"__esModule",{value:!0});var w1=Kt(),vSt={message:({schemaCode:t})=>(0,w1.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,w1._)`{multipleOf: ${t}}`},ISt={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:vSt,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,w1._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,w1._)`${a} !== parseInt(${a})`;t.fail$data((0,w1._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};eW.default=ISt});var Uhe=E(tW=>{"use strict";Object.defineProperty(tW,"__esModule",{value:!0});function Fhe(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(rW,"__esModule",{value:!0});var Om=Kt(),CSt=Dr(),TSt=Uhe(),wSt={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Om.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Om._)`{limit: ${t}}`},RSt={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:wSt,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?Om.operators.GT:Om.operators.LT,a=s.opts.unicode===!1?(0,Om._)`${r}.length`:(0,Om._)`${(0,CSt.useFunc)(t.gen,TSt.default)}(${r})`;t.fail$data((0,Om._)`${a} ${i} ${n}`)}};rW.default=RSt});var jhe=E(nW=>{"use strict";Object.defineProperty(nW,"__esModule",{value:!0});var NSt=Go(),eN=Kt(),OSt={message:({schemaCode:t})=>(0,eN.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,eN._)`{pattern: ${t}}`},PSt={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:OSt,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,eN._)`(new RegExp(${s}, ${a}))`:(0,NSt.usePattern)(t,n);t.fail$data((0,eN._)`!${o}.test(${e})`)}};nW.default=PSt});var Hhe=E(sW=>{"use strict";Object.defineProperty(sW,"__esModule",{value:!0});var R1=Kt(),kSt={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,R1.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,R1._)`{limit: ${t}}`},DSt={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:kSt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?R1.operators.GT:R1.operators.LT;t.fail$data((0,R1._)`Object.keys(${r}).length ${s} ${n}`)}};sW.default=DSt});var Qhe=E(iW=>{"use strict";Object.defineProperty(iW,"__esModule",{value:!0});var N1=Go(),O1=Kt(),BSt=Dr(),LSt={message:({params:{missingProperty:t}})=>(0,O1.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,O1._)`{missingProperty: ${t}}`},MSt={keyword:"required",type:"object",schemaType:"array",$data:!0,error:LSt,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,BSt.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(O1.nil,d);else for(let p of r)(0,N1.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,N1.checkMissingProp)(t,r,p)),(0,N1.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,N1.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,N1.propertyInData)(e,s,p,o.ownProperties)),e.if((0,O1.not)(m),()=>{t.error(),e.break()})},O1.nil)}}};iW.default=MSt});var Ghe=E(aW=>{"use strict";Object.defineProperty(aW,"__esModule",{value:!0});var P1=Kt(),WSt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,P1.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,P1._)`{limit: ${t}}`},$St={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:WSt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?P1.operators.GT:P1.operators.LT;t.fail$data((0,P1._)`${r}.length ${s} ${n}`)}};aW.default=$St});var k1=E(oW=>{"use strict";Object.defineProperty(oW,"__esModule",{value:!0});var Khe=Ko();Khe.code='require("ajv/dist/runtime/equal").default';oW.default=Khe});var Vhe=E(uW=>{"use strict";Object.defineProperty(uW,"__esModule",{value:!0});var cW=y1(),di=Kt(),FSt=Dr(),USt=k1(),qSt={message:({params:{i:t,j:e}})=>(0,di.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,di._)`{i: ${t}, j: ${e}}`},jSt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:qSt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,cW.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,di._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,di._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,di._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,cW.checkDataTypes)(u,A,o.opts.strictNumbers,cW.DataType.Wrong),b=e.const("indices",(0,di._)`{}`);e.for((0,di._)`;${m}--;`,()=>{e.let(A,(0,di._)`${r}[${m}]`),e.if(g,(0,di._)`continue`),u.length>1&&e.if((0,di._)`typeof ${A} == "string"`,(0,di._)`${A} += "_"`),e.if((0,di._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,di._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,di._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,FSt.useFunc)(e,USt.default),g=e.name("outer");e.label(g).for((0,di._)`;${m}--;`,()=>e.for((0,di._)`${h} = ${m}; ${h}--;`,()=>e.if((0,di._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};uW.default=jSt});var zhe=E(dW=>{"use strict";Object.defineProperty(dW,"__esModule",{value:!0});var lW=Kt(),HSt=Dr(),QSt=k1(),GSt={message:"must be equal to constant",params:({schemaCode:t})=>(0,lW._)`{allowedValue: ${t}}`},KSt={keyword:"const",$data:!0,error:GSt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,lW._)`!${(0,HSt.useFunc)(e,QSt.default)}(${r}, ${s})`):t.fail((0,lW._)`${i} !== ${r}`)}};dW.default=KSt});var Yhe=E(fW=>{"use strict";Object.defineProperty(fW,"__esModule",{value:!0});var D1=Kt(),VSt=Dr(),zSt=k1(),YSt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,D1._)`{allowedValues: ${t}}`},JSt={keyword:"enum",schemaType:"array",$data:!0,error:YSt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,VSt.useFunc)(e,zSt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,D1.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,D1._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,D1._)`${u()}(${r}, ${p}[${m}])`:(0,D1._)`${r} === ${h}`}}};fW.default=JSt});var Jhe=E(pW=>{"use strict";Object.defineProperty(pW,"__esModule",{value:!0});var XSt=Whe(),ZSt=$he(),evt=qhe(),tvt=jhe(),rvt=Hhe(),nvt=Qhe(),svt=Ghe(),ivt=Vhe(),avt=zhe(),ovt=Yhe(),cvt=[XSt.default,ZSt.default,evt.default,tvt.default,rvt.default,nvt.default,svt.default,ivt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},avt.default,ovt.default];pW.default=cvt});var hW=E(B1=>{"use strict";Object.defineProperty(B1,"__esModule",{value:!0});B1.validateAdditionalItems=void 0;var Pm=Kt(),mW=Dr(),uvt={message:({params:{len:t}})=>(0,Pm.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Pm._)`{limit: ${t}}`},lvt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:uvt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,mW.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Xhe(t,n)}};function Xhe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,Pm._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Pm._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,mW.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Pm._)`${o} <= ${e.length}`);r.if((0,Pm.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:mW.Type.Num},u),a.allErrors||r.if((0,Pm.not)(u),()=>r.break())})}}B1.validateAdditionalItems=Xhe;B1.default=lvt});var gW=E(L1=>{"use strict";Object.defineProperty(L1,"__esModule",{value:!0});L1.validateTuple=void 0;var Zhe=Kt(),tN=Dr(),dvt=Go(),fvt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return ege(t,"additionalItems",e);r.items=!0,!(0,tN.alwaysValidSchema)(r,e)&&t.ok((0,dvt.validateArray)(t))}};function ege(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=tN.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,Zhe._)`${i}.length`);r.forEach((d,f)=>{(0,tN.alwaysValidSchema)(o,d)||(n.if((0,Zhe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,tN.checkStrictMode)(o,A,f.strictTuples)}}}L1.validateTuple=ege;L1.default=fvt});var tge=E(AW=>{"use strict";Object.defineProperty(AW,"__esModule",{value:!0});var pvt=gW(),mvt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,pvt.validateTuple)(t,"items")};AW.default=mvt});var nge=E(yW=>{"use strict";Object.defineProperty(yW,"__esModule",{value:!0});var rge=Kt(),hvt=Dr(),gvt=Go(),Avt=hW(),yvt={message:({params:{len:t}})=>(0,rge.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,rge._)`{limit: ${t}}`},xvt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:yvt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,hvt.alwaysValidSchema)(n,e)&&(s?(0,Avt.validateAdditionalItems)(t,s):t.ok((0,gvt.validateArray)(t)))}};yW.default=xvt});var sge=E(xW=>{"use strict";Object.defineProperty(xW,"__esModule",{value:!0});var zo=Kt(),rN=Dr(),bvt={message:({params:{min:t,max:e}})=>e===void 0?(0,zo.str)`must contain at least ${t} valid item(s)`:(0,zo.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,zo._)`{minContains: ${t}}`:(0,zo._)`{minContains: ${t}, maxContains: ${e}}`},Evt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:bvt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,zo._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,rN.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,rN.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,rN.alwaysValidSchema)(i,r)){let h=(0,zo._)`${l} >= ${a}`;o!==void 0&&(h=(0,zo._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,zo._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:rN.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,zo._)`${h}++`),o===void 0?e.if((0,zo._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,zo._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,zo._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};xW.default=Evt});var oge=E(ju=>{"use strict";Object.defineProperty(ju,"__esModule",{value:!0});ju.validateSchemaDeps=ju.validatePropertyDeps=ju.error=void 0;var bW=Kt(),_vt=Dr(),M1=Go();ju.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,bW.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,bW._)`{property: ${t}, +`),Z=gbt.bind(null,{[Q0e]:"",[G0e]:a,[z0e]:M,[V0e]:J5,[X5]:N,[K0e]:P}),W="";d!==null&&(f===void 0?W=Z(d):W=Z(Object.assign({},d,{name:f})));let F=o instanceof Function?o:o?eme:Mbt,V=F().indexOf(":")+1;if(b&&!m)throw Error("customLevels is required if useOnlyCustomLevels is set true");if(A&&typeof A!="function")throw Error(`Unknown mixin type "${typeof A}" - expected "function"`);if(w&&typeof w!="string")throw Error(`Unknown msgPrefix type "${typeof w}" - expected "string"`);ubt(p,m,b);let j=Z0e(m,b);typeof n.emit=="function"&&n.emit("message",{code:"PINO_CONFIG",config:{levels:j,messageKey:c,errorKey:u}}),fbt(h);let J=dbt(h);return Object.assign(e,{levels:j,[Obt]:J,[Pbt]:b,[Sbt]:n,[Ebt]:F,[_bt]:V,[V0e]:J5,[X5]:N,[z0e]:M,[Cbt]:B,[Ibt]:k,[Tbt]:c,[wbt]:u,[Rbt]:l,[kbt]:l?`,${JSON.stringify(l)}:{`:"",[G0e]:a,[Nbt]:A,[Lbt]:g,[Q0e]:W,[K0e]:P,[Dbt]:x,silent:ybt,onChild:R,[Bbt]:w}),Object.setPrototypeOf(e,obt()),lbt(e),e[vbt](p),e}jo.exports=Z5;jo.exports.destination=(t=process.stdout.fd)=>typeof t=="object"?(t.dest=H0e(t.dest||process.stdout.fd),j0e(t)):j0e({dest:H0e(t),minLength:0});jo.exports.transport=L5();jo.exports.multistream=q0e();jo.exports.levels=Z0e();jo.exports.stdSerializers=jbt;jo.exports.stdTimeFunctions=Object.assign({},J0e);jo.exports.symbols=X0e;jo.exports.version=xbt;jo.exports.default=Z5;jo.exports.pino=Z5});var c1=E((_Pr,ame)=>{"use strict";var Hbt=Qfe(),RR=tme(),{serializersSym:rme}=RR.symbols,{FST_ERR_LOG_INVALID_DESTINATION:Qbt,FST_ERR_LOG_INVALID_LOGGER:Gbt}=Ci();function nme(t){if(t.stream&&t.file)throw new Qbt;t.file&&(t.stream=RR.destination(t.file),delete t.file);let e=t.logger,r=t.genReqId,n=null;return e?(t.logger=void 0,t.genReqId=void 0,e[rme]&&(t.serializers=Object.assign({},t.serializers,e[rme])),n=e.child({},t),t.logger=e,t.genReqId=r):n=RR(t,t.stream),n}var e8={req:function(e){return{method:e.method,url:e.url,version:e.headers&&e.headers["accept-version"],hostname:e.hostname,remoteAddress:e.ip,remotePort:e.socket?e.socket.remotePort:void 0}},err:RR.stdSerializers.err,res:function(e){return{statusCode:e.statusCode}}};function Vbt(){let t=process.hrtime();return t[0]*1e3+t[1]/1e6}function zbt(t){if(!t.logger){let n=Hbt;return n.child=()=>n,{logger:n,hasLogger:!1}}if(sme(t.logger))return{logger:nme({logger:t.logger,serializers:Object.assign({},e8,t.logger.serializers)}),hasLogger:!0};let e={};return Object.prototype.toString.call(t.logger)==="[object Object]"&&Reflect.ownKeys(t.logger).forEach(n=>{Object.defineProperty(e,n,{value:t.logger[n],writable:!0,enumerable:!0,configurable:!0})}),e.level=e.level||"info",e.serializers=Object.assign({},e8,e.serializers),t.logger=e,{logger:nme(t.logger),hasLogger:!0}}function sme(t,e){let r=["info","error","debug","fatal","warn","trace","child"],n=t?r.filter(s=>!t[s]||typeof t[s]!="function"):r;if(n.length){if(n.length===r.length&&!e)return!1;throw Gbt(n.join(","))}else return!0}function Kbt(t,e,r,n,s){let i={[t.requestIdLogLabel]:n},a=t.childLoggerFactory.call(t.server,e,i,s||{},r);return t.childLoggerFactory!==ime&&sme(a,!0),a}function ime(t,e,r){return t.child(e,r)}ame.exports={createLogger:zbt,createChildLogger:Kbt,defaultChildLoggerFactory:ime,serializers:e8,now:Vbt}});var NR=E((SPr,ome)=>{"use strict";ome.exports=Ybt;function qA(t){return t instanceof Buffer?Buffer.from(t):new t.constructor(t.buffer.slice(),t.byteOffset,t.length)}function Ybt(t){if(t=t||{},t.circles)return Jbt(t);let e=new Map;if(e.set(Date,a=>new Date(a)),e.set(Map,(a,o)=>new Map(n(Array.from(a),o))),e.set(Set,(a,o)=>new Set(n(Array.from(a),o))),t.constructorHandlers)for(let a of t.constructorHandlers)e.set(a[0],a[1]);let r=null;return t.proto?i:s;function n(a,o){let c=Object.keys(a),u=new Array(c.length);for(let l=0;lnew Date(c)),n.set(Map,(c,u)=>new Map(i(Array.from(c),u))),n.set(Set,(c,u)=>new Set(i(Array.from(c),u))),t.constructorHandlers)for(let c of t.constructorHandlers)n.set(c[0],c[1]);let s=null;return t.proto?o:a;function i(c,u){let l=Object.keys(c),d=new Array(l.length);for(let f=0;f{"use strict";var Xbt=NR()({circles:!1,proto:!0}),{kSchemaVisited:cme,kSchemaResponse:Zbt}=Qs(),r8=Symbol.for("fluent-schema-object"),{FST_ERR_SCH_MISSING_ID:eEt,FST_ERR_SCH_ALREADY_PRESENT:tEt,FST_ERR_SCH_DUPLICATE:rEt,FST_ERR_SCH_CONTENT_MISSING_SCHEMA:nEt}=Ci(),lme=["params","body","querystring","query","headers"];function OR(t){this.store=t||{}}OR.prototype.add=function(t){let e=Xbt(t.isFluentSchema||t.isFluentJSONSchema||t[r8]?t.valueOf():t),r=e.$id;if(!r)throw new eEt;if(this.store[r])throw new tEt(r);this.store[r]=e};OR.prototype.getSchemas=function(){return Object.assign({},this.store)};OR.prototype.getSchema=function(t){return this.store[t]};function ume(t){return typeof t=="object"&&Object.getPrototypeOf(t)!==Object.prototype}function sEt(t,e){if(t[cme])return t;if(t.query){if(t.querystring)throw new rEt("querystring");t.querystring=t.query}iEt(t);for(let r of lme){let n=t[r];n&&!ume(n)&&(t[r]=t8(n,e.jsonShorthand))}if(t.response){let r=Object.keys(t.response);for(let n of r){if(ume(t.response[n]))continue;let s=t.response[n].content,i=!1;if(s){let a=Object.keys(s);for(let o=0;o{"use strict";var oEt=/[\u0000-\u001f\u0022\u005c\ud800-\udfff]/;pme.exports=class fme{constructor(e){switch(e&&e.rounding){case"floor":this.parseInteger=Math.floor;break;case"ceil":this.parseInteger=Math.ceil;break;case"round":this.parseInteger=Math.round;break;case"trunc":default:this.parseInteger=Math.trunc;break}this._options=e}asInteger(e){if(Number.isInteger(e))return""+e;if(typeof e=="bigint")return e.toString();let r=this.parseInteger(e);if(r===1/0||r===-1/0||r!==r)throw new Error(`The value "${e}" cannot be converted to an integer.`);return""+r}asNumber(e){let r=Number(e);if(r!==r)throw new Error(`The value "${e}" cannot be converted to a number.`);return r===1/0||r===-1/0?"null":""+r}asBoolean(e){return e&&"true"||"false"}asDateTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+e.toISOString()+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date-time.`)}asDate(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(0,10)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a date.`)}asTime(e){if(e===null)return'""';if(e instanceof Date)return'"'+new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(11,19)+'"';if(typeof e=="string")return'"'+e+'"';throw new Error(`The value "${e}" cannot be converted to a time.`)}asString(e){let r=e.length;if(r<42){let s="",i=-1,a=255;for(var n=0;n=55296&&a<=57343)return JSON.stringify(e);return i===-1&&'"'+e+'"'||'"'+s+e.slice(i)+'"'}else return r<5e3&&oEt.test(e)===!1?'"'+e+'"':JSON.stringify(e)}asUnsafeString(e){return'"'+e+'"'}getState(){return this._options}static restoreFromState(e){return new fme(e)}}});var f1=E(kr=>{"use strict";Object.defineProperty(kr,"__esModule",{value:!0});kr.regexpCode=kr.getEsmExportName=kr.getProperty=kr.safeStringify=kr.stringify=kr.strConcat=kr.addCodeArg=kr.str=kr._=kr.nil=kr._Code=kr.Name=kr.IDENTIFIER=kr._CodeOrName=void 0;var l1=class{};kr._CodeOrName=l1;kr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Sm=class extends l1{constructor(e){if(super(),!kr.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};kr.Name=Sm;var Ho=class extends l1{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Sm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};kr._Code=Ho;kr.nil=new Ho("");function mme(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(Da,"__esModule",{value:!0});Da.ValueScope=Da.ValueScopeName=Da.Scope=Da.varKinds=Da.UsedValueState=void 0;var Pa=f1(),a8=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},PR;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(PR||(Da.UsedValueState=PR={}));Da.varKinds={const:new Pa.Name("const"),let:new Pa.Name("let"),var:new Pa.Name("var")};var DR=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Pa.Name?e:this.name(e)}name(e){return new Pa.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Da.Scope=DR;var kR=class extends Pa.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Pa._)`.${new Pa.Name(r)}[${n}]`}};Da.ValueScopeName=kR;var gEt=(0,Pa._)`\n`,o8=class extends DR{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?gEt:Pa.nil}}get(){return this._scope}name(e){return new kR(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Pa._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Pa.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,PR.Started);let l=r(u);if(l){let d=this.opts.es5?Da.varKinds.var:Da.varKinds.const;i=(0,Pa._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Pa._)`${i}${l}${this.opts._n}`;else throw new a8(u);c.set(u,PR.Completed)})}return i}};Da.ValueScope=o8});var zt=E(Xt=>{"use strict";Object.defineProperty(Xt,"__esModule",{value:!0});Xt.or=Xt.and=Xt.not=Xt.CodeGen=Xt.operators=Xt.varKinds=Xt.ValueScopeName=Xt.ValueScope=Xt.Scope=Xt.Name=Xt.regexpCode=Xt.stringify=Xt.getProperty=Xt.nil=Xt.strConcat=Xt.str=Xt._=void 0;var Ar=f1(),$c=c8(),mp=f1();Object.defineProperty(Xt,"_",{enumerable:!0,get:function(){return mp._}});Object.defineProperty(Xt,"str",{enumerable:!0,get:function(){return mp.str}});Object.defineProperty(Xt,"strConcat",{enumerable:!0,get:function(){return mp.strConcat}});Object.defineProperty(Xt,"nil",{enumerable:!0,get:function(){return mp.nil}});Object.defineProperty(Xt,"getProperty",{enumerable:!0,get:function(){return mp.getProperty}});Object.defineProperty(Xt,"stringify",{enumerable:!0,get:function(){return mp.stringify}});Object.defineProperty(Xt,"regexpCode",{enumerable:!0,get:function(){return mp.regexpCode}});Object.defineProperty(Xt,"Name",{enumerable:!0,get:function(){return mp.Name}});var WR=c8();Object.defineProperty(Xt,"Scope",{enumerable:!0,get:function(){return WR.Scope}});Object.defineProperty(Xt,"ValueScope",{enumerable:!0,get:function(){return WR.ValueScope}});Object.defineProperty(Xt,"ValueScopeName",{enumerable:!0,get:function(){return WR.ValueScopeName}});Object.defineProperty(Xt,"varKinds",{enumerable:!0,get:function(){return WR.varKinds}});Xt.operators={GT:new Ar._Code(">"),GTE:new Ar._Code(">="),LT:new Ar._Code("<"),LTE:new Ar._Code("<="),EQ:new Ar._Code("==="),NEQ:new Ar._Code("!=="),NOT:new Ar._Code("!"),OR:new Ar._Code("||"),AND:new Ar._Code("&&"),ADD:new Ar._Code("+")};var ld=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},u8=class extends ld{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?$c.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=HA(this.rhs,e,r)),this}get names(){return this.rhs instanceof Ar._CodeOrName?this.rhs.names:{}}},LR=class extends ld{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Ar.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=HA(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Ar.Name?{}:{...this.lhs.names};return MR(e,this.rhs)}},l8=class extends LR{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},d8=class extends ld{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},f8=class extends ld{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},p8=class extends ld{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},m8=class extends ld{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=HA(this.code,e,r),this}get names(){return this.code instanceof Ar._CodeOrName?this.code.names:{}}},p1=class extends ld{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(AEt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Im(e,r.names),{})}},dd=class extends p1{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},h8=class extends p1{},jA=class extends dd{};jA.kind="else";var vm=class t extends dd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new jA(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(gme(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=HA(this.condition,e,r),this}get names(){let e=super.names;return MR(e,this.condition),this.else&&Im(e,this.else.names),e}};vm.kind="if";var Cm=class extends dd{};Cm.kind="for";var g8=class extends Cm{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=HA(this.iteration,e,r),this}get names(){return Im(super.names,this.iteration.names)}},A8=class extends Cm{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?$c.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=MR(super.names,this.from);return MR(e,this.to)}},BR=class extends Cm{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=HA(this.iterable,e,r),this}get names(){return Im(super.names,this.iterable.names)}},m1=class extends dd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};m1.kind="func";var h1=class extends p1{render(e){return"return "+super.render(e)}};h1.kind="return";var y8=class extends dd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Im(e,this.catch.names),this.finally&&Im(e,this.finally.names),e}},g1=class extends dd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};g1.kind="catch";var A1=class extends dd{render(e){return"finally"+super.render(e)}};A1.kind="finally";var x8=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=e,this._scope=new $c.Scope({parent:e}),this._nodes=[new h8]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new u8(e,i,n)),i}const(e,r,n){return this._def($c.varKinds.const,e,r,n)}let(e,r,n){return this._def($c.varKinds.let,e,r,n)}var(e,r,n){return this._def($c.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new LR(e,r,n))}add(e,r){return this._leafNode(new l8(e,Xt.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Ar.nil&&this._leafNode(new m8(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,Ar.addCodeArg)(r,s));return r.push("}"),new Ar._Code(r)}if(e,r,n){if(this._blockNode(new vm(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new vm(e))}else(){return this._elseNode(new jA)}endIf(){return this._endBlockNode(vm,jA)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new g8(e),r)}forRange(e,r,n,s,i=this.opts.es5?$c.varKinds.var:$c.varKinds.let){let a=this._scope.toName(e);return this._for(new A8(i,a,r,n),()=>s(a))}forOf(e,r,n,s=$c.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Ar.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Ar._)`${a}.length`,o=>{this.var(i,(0,Ar._)`${a}[${o}]`),n(i)})}return this._for(new BR("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?$c.varKinds.var:$c.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Ar._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new BR("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Cm)}label(e){return this._leafNode(new d8(e))}break(e){return this._leafNode(new f8(e))}return(e){let r=new h1;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(h1)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new y8;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new g1(i),r(i)}return n&&(this._currNode=s.finally=new A1,this.code(n)),this._endBlockNode(g1,A1)}throw(e){return this._leafNode(new p8(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Ar.nil,n,s){return this._blockNode(new m1(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(m1)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof vm))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Xt.CodeGen=x8;function Im(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function MR(t,e){return e instanceof Ar._CodeOrName?Im(t,e.names):t}function HA(t,e,r){if(t instanceof Ar.Name)return n(t);if(!s(t))return t;return new Ar._Code(t._items.reduce((i,a)=>(a instanceof Ar.Name&&(a=n(a)),a instanceof Ar._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof Ar._Code&&i._items.some(a=>a instanceof Ar.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function AEt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function gme(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Ar._)`!${b8(t)}`}Xt.not=gme;var yEt=Ame(Xt.operators.AND);function xEt(...t){return t.reduce(yEt)}Xt.and=xEt;var bEt=Ame(Xt.operators.OR);function EEt(...t){return t.reduce(bEt)}Xt.or=EEt;function Ame(t){return(e,r)=>e===Ar.nil?r:r===Ar.nil?e:(0,Ar._)`${b8(e)} ${t} ${b8(r)}`}function b8(t){return t instanceof Ar.Name?t:(0,Ar._)`(${t})`}});var Lr=E(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.checkStrictMode=tr.getErrorPath=tr.Type=tr.useFunc=tr.setEvaluated=tr.evaluatedPropsToName=tr.mergeEvaluated=tr.eachItem=tr.unescapeJsonPointer=tr.escapeJsonPointer=tr.escapeFragment=tr.unescapeFragment=tr.schemaRefOrVal=tr.schemaHasRulesButRef=tr.schemaHasRules=tr.checkUnknownRules=tr.alwaysValidSchema=tr.toHash=void 0;var ln=zt(),_Et=f1();function SEt(t){let e={};for(let r of t)e[r]=!0;return e}tr.toHash=SEt;function vEt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(bme(t,e),!Eme(e,t.self.RULES.all))}tr.alwaysValidSchema=vEt;function bme(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||vme(t,`unknown keyword: "${i}"`)}tr.checkUnknownRules=bme;function Eme(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}tr.schemaHasRules=Eme;function CEt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}tr.schemaHasRulesButRef=CEt;function IEt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ln._)`${r}`}return(0,ln._)`${t}${e}${(0,ln.getProperty)(n)}`}tr.schemaRefOrVal=IEt;function TEt(t){return _me(decodeURIComponent(t))}tr.unescapeFragment=TEt;function wEt(t){return encodeURIComponent(_8(t))}tr.escapeFragment=wEt;function _8(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}tr.escapeJsonPointer=_8;function _me(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}tr.unescapeJsonPointer=_me;function REt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}tr.eachItem=REt;function yme({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof ln.Name?(i instanceof ln.Name?t(s,i,a):e(s,i,a),a):i instanceof ln.Name?(e(s,a,i),i):r(i,a);return o===ln.Name&&!(c instanceof ln.Name)?n(s,c):c}}tr.mergeEvaluated={props:yme({mergeNames:(t,e,r)=>t.if((0,ln._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ln._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ln._)`${r} || {}`).code((0,ln._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ln._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ln._)`${r} || {}`),S8(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Sme}),items:yme({mergeNames:(t,e,r)=>t.if((0,ln._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ln._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ln._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ln._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Sme(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ln._)`{}`);return e!==void 0&&S8(t,r,e),r}tr.evaluatedPropsToName=Sme;function S8(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ln._)`${e}${(0,ln.getProperty)(n)}`,!0))}tr.setEvaluated=S8;var xme={};function NEt(t,e){return t.scopeValue("func",{ref:e,code:xme[e.code]||(xme[e.code]=new _Et._Code(e.code))})}tr.useFunc=NEt;var E8;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(E8||(tr.Type=E8={}));function OEt(t,e,r){if(t instanceof ln.Name){let n=e===E8.Num;return r?n?(0,ln._)`"[" + ${t} + "]"`:(0,ln._)`"['" + ${t} + "']"`:n?(0,ln._)`"/" + ${t}`:(0,ln._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ln.getProperty)(t).toString():"/"+_8(t)}tr.getErrorPath=OEt;function vme(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}tr.checkStrictMode=vme});var fd=E(v8=>{"use strict";Object.defineProperty(v8,"__esModule",{value:!0});var Ti=zt(),PEt={data:new Ti.Name("data"),valCxt:new Ti.Name("valCxt"),instancePath:new Ti.Name("instancePath"),parentData:new Ti.Name("parentData"),parentDataProperty:new Ti.Name("parentDataProperty"),rootData:new Ti.Name("rootData"),dynamicAnchors:new Ti.Name("dynamicAnchors"),vErrors:new Ti.Name("vErrors"),errors:new Ti.Name("errors"),this:new Ti.Name("this"),self:new Ti.Name("self"),scope:new Ti.Name("scope"),json:new Ti.Name("json"),jsonPos:new Ti.Name("jsonPos"),jsonLen:new Ti.Name("jsonLen"),jsonPart:new Ti.Name("jsonPart")};v8.default=PEt});var y1=E(wi=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});wi.extendErrors=wi.resetErrorsCount=wi.reportExtraError=wi.reportError=wi.keyword$DataError=wi.keywordError=void 0;var vr=zt(),$R=Lr(),ea=fd();wi.keywordError={message:({keyword:t})=>(0,vr.str)`must pass "${t}" keyword validation`};wi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,vr.str)`"${t}" keyword must be ${e} ($data)`:(0,vr.str)`"${t}" keyword is invalid ($data)`};function DEt(t,e=wi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=Tme(t,e,r);n??(a||o)?Cme(i,c):Ime(s,(0,vr._)`[${c}]`)}wi.reportError=DEt;function kEt(t,e=wi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=Tme(t,e,r);Cme(s,o),i||a||Ime(n,ea.default.vErrors)}wi.reportExtraError=kEt;function LEt(t,e){t.assign(ea.default.errors,e),t.if((0,vr._)`${ea.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,vr._)`${ea.default.vErrors}.length`,e),()=>t.assign(ea.default.vErrors,null)))}wi.resetErrorsCount=LEt;function BEt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ea.default.errors,o=>{t.const(a,(0,vr._)`${ea.default.vErrors}[${o}]`),t.if((0,vr._)`${a}.instancePath === undefined`,()=>t.assign((0,vr._)`${a}.instancePath`,(0,vr.strConcat)(ea.default.instancePath,i.errorPath))),t.assign((0,vr._)`${a}.schemaPath`,(0,vr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,vr._)`${a}.schema`,r),t.assign((0,vr._)`${a}.data`,n))})}wi.extendErrors=BEt;function Cme(t,e){let r=t.const("err",e);t.if((0,vr._)`${ea.default.vErrors} === null`,()=>t.assign(ea.default.vErrors,(0,vr._)`[${r}]`),(0,vr._)`${ea.default.vErrors}.push(${r})`),t.code((0,vr._)`${ea.default.errors}++`)}function Ime(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,vr._)`new ${t.ValidationError}(${e})`):(r.assign((0,vr._)`${n}.errors`,e),r.return(!1))}var Tm={keyword:new vr.Name("keyword"),schemaPath:new vr.Name("schemaPath"),params:new vr.Name("params"),propertyName:new vr.Name("propertyName"),message:new vr.Name("message"),schema:new vr.Name("schema"),parentSchema:new vr.Name("parentSchema")};function Tme(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,vr._)`{}`:MEt(t,e,r)}function MEt(t,e,r={}){let{gen:n,it:s}=t,i=[WEt(s,r),$Et(t,r)];return FEt(t,e,i),n.object(...i)}function WEt({errorPath:t},{instancePath:e}){let r=e?(0,vr.str)`${t}${(0,$R.getErrorPath)(e,$R.Type.Str)}`:t;return[ea.default.instancePath,(0,vr.strConcat)(ea.default.instancePath,r)]}function $Et({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,vr.str)`${e}/${t}`;return r&&(s=(0,vr.str)`${s}${(0,$R.getErrorPath)(r,$R.Type.Str)}`),[Tm.schemaPath,s]}function FEt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([Tm.keyword,s],[Tm.params,typeof e=="function"?e(t):e||(0,vr._)`{}`]),c.messages&&n.push([Tm.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Tm.schema,a],[Tm.parentSchema,(0,vr._)`${l}${d}`],[ea.default.data,i]),u&&n.push([Tm.propertyName,u])}});var Rme=E(QA=>{"use strict";Object.defineProperty(QA,"__esModule",{value:!0});QA.boolOrEmptySchema=QA.topBoolOrEmptySchema=void 0;var UEt=y1(),qEt=zt(),jEt=fd(),HEt={message:"boolean schema is false"};function QEt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?wme(t,!1):typeof r=="object"&&r.$async===!0?e.return(jEt.default.data):(e.assign((0,qEt._)`${n}.errors`,null),e.return(!0))}QA.topBoolOrEmptySchema=QEt;function GEt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),wme(t)):r.var(e,!0)}QA.boolOrEmptySchema=GEt;function wme(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,UEt.reportError)(s,HEt,void 0,e)}});var C8=E(GA=>{"use strict";Object.defineProperty(GA,"__esModule",{value:!0});GA.getRules=GA.isJSONType=void 0;var VEt=["string","number","integer","boolean","null","object","array"],zEt=new Set(VEt);function KEt(t){return typeof t=="string"&&zEt.has(t)}GA.isJSONType=KEt;function YEt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}GA.getRules=YEt});var I8=E(hp=>{"use strict";Object.defineProperty(hp,"__esModule",{value:!0});hp.shouldUseRule=hp.shouldUseGroup=hp.schemaHasRulesForType=void 0;function JEt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Nme(t,n)}hp.schemaHasRulesForType=JEt;function Nme(t,e){return e.rules.some(r=>Ome(t,r))}hp.shouldUseGroup=Nme;function Ome(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}hp.shouldUseRule=Ome});var x1=E(Ri=>{"use strict";Object.defineProperty(Ri,"__esModule",{value:!0});Ri.reportTypeError=Ri.checkDataTypes=Ri.checkDataType=Ri.coerceAndCheckDataType=Ri.getJSONTypes=Ri.getSchemaTypes=Ri.DataType=void 0;var XEt=C8(),ZEt=I8(),e1t=y1(),jt=zt(),Pme=Lr(),VA;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(VA||(Ri.DataType=VA={}));function t1t(t){let e=Dme(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Ri.getSchemaTypes=t1t;function Dme(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(XEt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Ri.getJSONTypes=Dme;function r1t(t,e){let{gen:r,data:n,opts:s}=t,i=n1t(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,ZEt.schemaHasRulesForType)(t,e[0]));if(a){let o=w8(e,n,s.strictNumbers,VA.Wrong);r.if(o,()=>{i.length?s1t(t,e,i):R8(t)})}return a}Ri.coerceAndCheckDataType=r1t;var kme=new Set(["string","number","integer","boolean","null"]);function n1t(t,e){return e?t.filter(r=>kme.has(r)||e==="array"&&r==="array"):[]}function s1t(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,jt._)`typeof ${s}`),o=n.let("coerced",(0,jt._)`undefined`);i.coerceTypes==="array"&&n.if((0,jt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,jt._)`${s}[0]`).assign(a,(0,jt._)`typeof ${s}`).if(w8(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,jt._)`${o} !== undefined`);for(let u of r)(kme.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),R8(t),n.endIf(),n.if((0,jt._)`${o} !== undefined`,()=>{n.assign(s,o),i1t(t,o)});function c(u){switch(u){case"string":n.elseIf((0,jt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,jt._)`"" + ${s}`).elseIf((0,jt._)`${s} === null`).assign(o,(0,jt._)`""`);return;case"number":n.elseIf((0,jt._)`${a} == "boolean" || ${s} === null + || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,jt._)`+${s}`);return;case"integer":n.elseIf((0,jt._)`${a} === "boolean" || ${s} === null + || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,jt._)`+${s}`);return;case"boolean":n.elseIf((0,jt._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,jt._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,jt._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,jt._)`${a} === "string" || ${a} === "number" + || ${a} === "boolean" || ${s} === null`).assign(o,(0,jt._)`[${s}]`)}}}function i1t({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,jt._)`${e} !== undefined`,()=>t.assign((0,jt._)`${e}[${r}]`,n))}function T8(t,e,r,n=VA.Correct){let s=n===VA.Correct?jt.operators.EQ:jt.operators.NEQ,i;switch(t){case"null":return(0,jt._)`${e} ${s} null`;case"array":i=(0,jt._)`Array.isArray(${e})`;break;case"object":i=(0,jt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,jt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,jt._)`typeof ${e} ${s} ${t}`}return n===VA.Correct?i:(0,jt.not)(i);function a(o=jt.nil){return(0,jt.and)((0,jt._)`typeof ${e} == "number"`,o,r?(0,jt._)`isFinite(${e})`:jt.nil)}}Ri.checkDataType=T8;function w8(t,e,r,n){if(t.length===1)return T8(t[0],e,r,n);let s,i=(0,Pme.toHash)(t);if(i.array&&i.object){let a=(0,jt._)`typeof ${e} != "object"`;s=i.null?a:(0,jt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=jt.nil;i.number&&delete i.integer;for(let a in i)s=(0,jt.and)(s,T8(a,e,r,n));return s}Ri.checkDataTypes=w8;var a1t={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,jt._)`{type: ${t}}`:(0,jt._)`{type: ${e}}`};function R8(t){let e=o1t(t);(0,e1t.reportError)(e,a1t)}Ri.reportTypeError=R8;function o1t(t){let{gen:e,data:r,schema:n}=t,s=(0,Pme.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var Bme=E(FR=>{"use strict";Object.defineProperty(FR,"__esModule",{value:!0});FR.assignDefaults=void 0;var zA=zt(),c1t=Lr();function u1t(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)Lme(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>Lme(t,i,s.default))}FR.assignDefaults=u1t;function Lme(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,zA._)`${i}${(0,zA.getProperty)(e)}`;if(s){(0,c1t.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,zA._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,zA._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,zA._)`${o} = ${(0,zA.stringify)(r)}`)}});var Qo=E(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.validateUnion=Zr.validateArray=Zr.usePattern=Zr.callValidateCode=Zr.schemaProperties=Zr.allSchemaProperties=Zr.noPropertyInData=Zr.propertyInData=Zr.isOwnProperty=Zr.hasPropFunc=Zr.reportMissingProp=Zr.checkMissingProp=Zr.checkReportMissingProp=void 0;var Rn=zt(),N8=Lr(),gp=fd(),l1t=Lr();function d1t(t,e){let{gen:r,data:n,it:s}=t;r.if(P8(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Rn._)`${e}`},!0),t.error()})}Zr.checkReportMissingProp=d1t;function f1t({gen:t,data:e,it:{opts:r}},n,s){return(0,Rn.or)(...n.map(i=>(0,Rn.and)(P8(t,e,i,r.ownProperties),(0,Rn._)`${s} = ${i}`)))}Zr.checkMissingProp=f1t;function p1t(t,e){t.setParams({missingProperty:e},!0),t.error()}Zr.reportMissingProp=p1t;function Mme(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Rn._)`Object.prototype.hasOwnProperty`})}Zr.hasPropFunc=Mme;function O8(t,e,r){return(0,Rn._)`${Mme(t)}.call(${e}, ${r})`}Zr.isOwnProperty=O8;function m1t(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} !== undefined`;return n?(0,Rn._)`${s} && ${O8(t,e,r)}`:s}Zr.propertyInData=m1t;function P8(t,e,r,n){let s=(0,Rn._)`${e}${(0,Rn.getProperty)(r)} === undefined`;return n?(0,Rn.or)(s,(0,Rn.not)(O8(t,e,r))):s}Zr.noPropertyInData=P8;function Wme(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}Zr.allSchemaProperties=Wme;function h1t(t,e){return Wme(e).filter(r=>!(0,N8.alwaysValidSchema)(t,e[r]))}Zr.schemaProperties=h1t;function g1t({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Rn._)`${t}, ${e}, ${n}${s}`:e,d=[[gp.default.instancePath,(0,Rn.strConcat)(gp.default.instancePath,i)],[gp.default.parentData,a.parentData],[gp.default.parentDataProperty,a.parentDataProperty],[gp.default.rootData,gp.default.rootData]];a.opts.dynamicRef&&d.push([gp.default.dynamicAnchors,gp.default.dynamicAnchors]);let f=(0,Rn._)`${l}, ${r.object(...d)}`;return c!==Rn.nil?(0,Rn._)`${o}.call(${c}, ${f})`:(0,Rn._)`${o}(${f})`}Zr.callValidateCode=g1t;var A1t=(0,Rn._)`new RegExp`;function y1t({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Rn._)`${s.code==="new RegExp"?A1t:(0,l1t.useFunc)(t,s)}(${r}, ${n})`})}Zr.usePattern=y1t;function x1t(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Rn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:N8.Type.Num},i),e.if((0,Rn.not)(i),o)})}}Zr.validateArray=x1t;function b1t(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,N8.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Rn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Rn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}Zr.validateUnion=b1t});var Ume=E(Fu=>{"use strict";Object.defineProperty(Fu,"__esModule",{value:!0});Fu.validateKeywordUsage=Fu.validSchemaType=Fu.funcKeywordCode=Fu.macroKeywordCode=void 0;var ta=zt(),wm=fd(),E1t=Qo(),_1t=y1();function S1t(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=Fme(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ta.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Fu.macroKeywordCode=S1t;function v1t(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;I1t(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=Fme(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&$me(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&$me(t),A(()=>C1t(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ta._)`await `),b=>n.assign(d,!1).if((0,ta._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ta._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ta._)`${l}.errors`;return n.assign(g,null),h(ta.nil),g}function h(g=e.async?(0,ta._)`await `:ta.nil){let b=c.opts.passContext?wm.default.this:wm.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ta._)`${g}${(0,E1t.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,ta.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}Fu.funcKeywordCode=v1t;function $me(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ta._)`${n.parentData}[${n.parentDataProperty}]`))}function C1t(t,e){let{gen:r}=t;r.if((0,ta._)`Array.isArray(${e})`,()=>{r.assign(wm.default.vErrors,(0,ta._)`${wm.default.vErrors} === null ? ${e} : ${wm.default.vErrors}.concat(${e})`).assign(wm.default.errors,(0,ta._)`${wm.default.vErrors}.length`),(0,_1t.extendErrors)(t)},()=>t.error())}function I1t({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Fme(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ta.stringify)(r)})}function T1t(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Fu.validSchemaType=T1t;function w1t({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Fu.validateKeywordUsage=w1t});var jme=E(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});Ap.extendSubschemaMode=Ap.extendSubschemaData=Ap.getSubschema=void 0;var Uu=zt(),qme=Lr();function R1t(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,Uu._)`${t.schemaPath}${(0,Uu.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,Uu._)`${t.schemaPath}${(0,Uu.getProperty)(e)}${(0,Uu.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,qme.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Ap.getSubschema=R1t;function N1t(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,Uu._)`${e.data}${(0,Uu.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Uu.str)`${u}${(0,qme.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Uu._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof Uu.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Ap.extendSubschemaData=N1t;function O1t(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Ap.extendSubschemaMode=O1t});var Go=E((FPr,Hme)=>{"use strict";Hme.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,s,i;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!t(e[s],r[s]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(i=Object.keys(e),n=i.length,n!==Object.keys(r).length)return!1;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[s]))return!1;for(s=n;s--!==0;){var a=i[s];if(!t(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}});var Gme=E((UPr,Qme)=>{"use strict";var yp=Qme.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};UR(e,n,s,t,"",t)};yp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};yp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};yp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};yp.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function UR(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in yp.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(ka,"__esModule",{value:!0});ka.getSchemaRefs=ka.resolveUrl=ka.normalizeId=ka._getFullPath=ka.getFullPath=ka.inlineRef=void 0;var D1t=Lr(),k1t=Go(),L1t=Gme(),B1t=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function M1t(t,e=!0){return typeof t=="boolean"?!0:e===!0?!D8(t):e?Vme(t)<=e:!1}ka.inlineRef=M1t;var W1t=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function D8(t){for(let e in t){if(W1t.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(D8)||typeof r=="object"&&D8(r))return!0}return!1}function Vme(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!B1t.has(r)&&(typeof t[r]=="object"&&(0,D1t.eachItem)(t[r],n=>e+=Vme(n)),e===1/0))return 1/0}return e}function zme(t,e="",r){r!==!1&&(e=KA(e));let n=t.parse(e);return Kme(t,n)}ka.getFullPath=zme;function Kme(t,e){return t.serialize(e).split("#")[0]+"#"}ka._getFullPath=Kme;var $1t=/#\/?$/;function KA(t){return t?t.replace($1t,""):""}ka.normalizeId=KA;function F1t(t,e,r){return r=KA(r),t.resolve(e,r)}ka.resolveUrl=F1t;var U1t=/^[a-z_][-a-z0-9._]*$/i;function q1t(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=KA(t[r]||e),i={"":s},a=zme(n,s,!1),o={},c=new Set;return L1t(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=KA(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==KA(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!U1t.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!k1t(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}ka.getSchemaRefs=q1t});var S1=E(xp=>{"use strict";Object.defineProperty(xp,"__esModule",{value:!0});xp.getData=xp.KeywordCxt=xp.validateFunctionCode=void 0;var ehe=Rme(),Yme=x1(),L8=I8(),qR=x1(),j1t=Bme(),_1=Ume(),k8=jme(),it=zt(),Rt=fd(),H1t=b1(),pd=Lr(),E1=y1();function Q1t(t){if(nhe(t)&&(she(t),rhe(t))){z1t(t);return}the(t,()=>(0,ehe.topBoolOrEmptySchema)(t))}xp.validateFunctionCode=Q1t;function the({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,it._)`${Rt.default.data}, ${Rt.default.valCxt}`,n.$async,()=>{t.code((0,it._)`"use strict"; ${Jme(r,s)}`),V1t(t,s),t.code(i)}):t.func(e,(0,it._)`${Rt.default.data}, ${G1t(s)}`,n.$async,()=>t.code(Jme(r,s)).code(i))}function G1t(t){return(0,it._)`{${Rt.default.instancePath}="", ${Rt.default.parentData}, ${Rt.default.parentDataProperty}, ${Rt.default.rootData}=${Rt.default.data}${t.dynamicRef?(0,it._)`, ${Rt.default.dynamicAnchors}={}`:it.nil}}={}`}function V1t(t,e){t.if(Rt.default.valCxt,()=>{t.var(Rt.default.instancePath,(0,it._)`${Rt.default.valCxt}.${Rt.default.instancePath}`),t.var(Rt.default.parentData,(0,it._)`${Rt.default.valCxt}.${Rt.default.parentData}`),t.var(Rt.default.parentDataProperty,(0,it._)`${Rt.default.valCxt}.${Rt.default.parentDataProperty}`),t.var(Rt.default.rootData,(0,it._)`${Rt.default.valCxt}.${Rt.default.rootData}`),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,it._)`${Rt.default.valCxt}.${Rt.default.dynamicAnchors}`)},()=>{t.var(Rt.default.instancePath,(0,it._)`""`),t.var(Rt.default.parentData,(0,it._)`undefined`),t.var(Rt.default.parentDataProperty,(0,it._)`undefined`),t.var(Rt.default.rootData,Rt.default.data),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,it._)`{}`)})}function z1t(t){let{schema:e,opts:r,gen:n}=t;the(t,()=>{r.$comment&&e.$comment&&ahe(t),Z1t(t),n.let(Rt.default.vErrors,null),n.let(Rt.default.errors,0),r.unevaluated&&K1t(t),ihe(t),r_t(t)})}function K1t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,it._)`${r}.evaluated`),e.if((0,it._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,it._)`${t.evaluated}.props`,(0,it._)`undefined`)),e.if((0,it._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,it._)`${t.evaluated}.items`,(0,it._)`undefined`))}function Jme(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,it._)`/*# sourceURL=${r} */`:it.nil}function Y1t(t,e){if(nhe(t)&&(she(t),rhe(t))){J1t(t,e);return}(0,ehe.boolOrEmptySchema)(t,e)}function rhe({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function nhe(t){return typeof t.schema!="boolean"}function J1t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&ahe(t),e_t(t),t_t(t);let i=n.const("_errs",Rt.default.errors);ihe(t,i),n.var(e,(0,it._)`${i} === ${Rt.default.errors}`)}function she(t){(0,pd.checkUnknownRules)(t),X1t(t)}function ihe(t,e){if(t.opts.jtd)return Xme(t,[],!1,e);let r=(0,Yme.getSchemaTypes)(t.schema),n=(0,Yme.coerceAndCheckDataType)(t,r);Xme(t,r,!n,e)}function X1t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,pd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function Z1t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,pd.checkStrictMode)(t,"default is ignored in the schema root")}function e_t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,H1t.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function t_t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function ahe({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,it._)`${Rt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,it.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,it._)`${Rt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function r_t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,it._)`${Rt.default.errors} === 0`,()=>e.return(Rt.default.data),()=>e.throw((0,it._)`new ${s}(${Rt.default.vErrors})`)):(e.assign((0,it._)`${n}.errors`,Rt.default.vErrors),i.unevaluated&&n_t(t),e.return((0,it._)`${Rt.default.errors} === 0`))}function n_t({gen:t,evaluated:e,props:r,items:n}){r instanceof it.Name&&t.assign((0,it._)`${e}.props`,r),n instanceof it.Name&&t.assign((0,it._)`${e}.items`,n)}function Xme(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,pd.schemaHasRulesButRef)(i,l))){s.block(()=>che(t,"$ref",l.all.$ref.definition));return}c.jtd||s_t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,L8.shouldUseGroup)(i,f)&&(f.type?(s.if((0,qR.checkDataType)(f.type,a,c.strictNumbers)),Zme(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,qR.reportTypeError)(t)),s.endIf()):Zme(t,f),o||s.if((0,it._)`${Rt.default.errors} === ${n||0}`))}}function Zme(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,j1t.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,L8.shouldUseRule)(n,i)&&che(t,i.keyword,i.definition,e.type)})}function s_t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(i_t(t,e),t.opts.allowUnionTypes||a_t(t,e),o_t(t,t.dataTypes))}function i_t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{ohe(t.dataTypes,r)||B8(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),u_t(t,e)}}function a_t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&B8(t,"use allowUnionTypes to allow union type keyword")}function o_t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,L8.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>c_t(e,a))&&B8(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function c_t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function ohe(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function u_t(t,e){let r=[];for(let n of t.dataTypes)ohe(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function B8(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,pd.checkStrictMode)(t,e,t.opts.strictTypes)}var jR=class{constructor(e,r,n){if((0,_1.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,pd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",uhe(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,_1.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Rt.default.errors))}result(e,r,n){this.failResult((0,it.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,it.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,it._)`${r} !== undefined && (${(0,it.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?E1.reportExtraError:E1.reportError)(this,this.def.error,r)}$dataError(){(0,E1.reportError)(this,this.def.$dataError||E1.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,E1.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=it.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=it.nil,r=it.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,it.or)((0,it._)`${s} === undefined`,r)),e!==it.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==it.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,it.or)(a(),o());function a(){if(n.length){if(!(r instanceof it.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,it._)`${(0,qR.checkDataTypes)(c,r,i.opts.strictNumbers,qR.DataType.Wrong)}`}return it.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,it._)`!${c}(${r})`}return it.nil}}subschema(e,r){let n=(0,k8.getSubschema)(this.it,e);(0,k8.extendSubschemaData)(n,this.it,e),(0,k8.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return Y1t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=pd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=pd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,it.Name)),!0}};xp.KeywordCxt=jR;function che(t,e,r,n){let s=new jR(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,_1.funcKeywordCode)(s,r):"macro"in r?(0,_1.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,_1.funcKeywordCode)(s,r)}var l_t=/^\/(?:[^~]|~0|~1)*$/,d_t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function uhe(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Rt.default.rootData;if(t[0]==="/"){if(!l_t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Rt.default.rootData}else{let u=d_t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,it._)`${i}${(0,it.getProperty)((0,pd.unescapeJsonPointer)(u))}`,a=(0,it._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}xp.getData=uhe});var HR=E(W8=>{"use strict";Object.defineProperty(W8,"__esModule",{value:!0});var M8=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};W8.default=M8});var v1=E(U8=>{"use strict";Object.defineProperty(U8,"__esModule",{value:!0});var $8=b1(),F8=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,$8.resolveUrl)(e,r,n),this.missingSchema=(0,$8.normalizeId)((0,$8.getFullPath)(e,this.missingRef))}};U8.default=F8});var GR=E(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});Vo.resolveSchema=Vo.getCompilingSchema=Vo.resolveRef=Vo.compileSchema=Vo.SchemaEnv=void 0;var Fc=zt(),f_t=HR(),Rm=fd(),Uc=b1(),lhe=Lr(),p_t=S1(),YA=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Uc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};Vo.SchemaEnv=YA;function j8(t){let e=dhe.call(this,t);if(e)return e;let r=(0,Uc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Fc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:f_t.default,code:(0,Fc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Rm.default.data,parentData:Rm.default.parentData,parentDataProperty:Rm.default.parentDataProperty,dataNames:[Rm.default.data],dataPathArr:[Fc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Fc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Fc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Fc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,p_t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Rm.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Rm.default.self}`,`${Rm.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Fc.Name?void 0:m,items:h instanceof Fc.Name?void 0:h,dynamicProps:m instanceof Fc.Name,dynamicItems:h instanceof Fc.Name},p.source&&(p.source.evaluated=(0,Fc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}Vo.compileSchema=j8;function m_t(t,e,r){var n;r=(0,Uc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=A_t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new YA({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=h_t.call(this,i)}Vo.resolveRef=m_t;function h_t(t){return(0,Uc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:j8.call(this,t)}function dhe(t){for(let e of this._compilations)if(g_t(e,t))return e}Vo.getCompilingSchema=dhe;function g_t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function A_t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||QR.call(this,t,e)}function QR(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Uc._getFullPath)(this.opts.uriResolver,r),s=(0,Uc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return q8.call(this,r,t);let i=(0,Uc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=QR.call(this,t,a);return typeof o?.schema!="object"?void 0:q8.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||j8.call(this,a),i===(0,Uc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Uc.resolveUrl)(this.opts.uriResolver,s,u)),new YA({schema:o,schemaId:c,root:t,baseId:s})}return q8.call(this,r,a)}}Vo.resolveSchema=QR;var y_t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function q8(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,lhe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!y_t.has(o)&&u&&(e=(0,Uc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,lhe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Uc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=QR.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new YA({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var fhe=E((VPr,x_t)=>{x_t.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var Q8=E((zPr,ghe)=>{"use strict";var b_t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),mhe=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function H8(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var E_t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function phe(t){return t.length=0,!0}function __t(t,e,r){if(t.length){let n=H8(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function S_t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=__t;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=phe}else{s.push(u);continue}}return s.length&&(o===phe?r.zone=s.join(""):a?n.push(s.join("")):n.push(H8(s))),r.address=n.join(""),r}function hhe(t){if(v_t(t,":")<2)return{host:t,isIPV6:!1};let e=S_t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function v_t(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:w_t}=Q8(),R_t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,N_t=["http","https","ws","wss","urn","urn:uuid"];function O_t(t){return N_t.indexOf(t)!==-1}function G8(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function Ahe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function yhe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function P_t(t){return t.secure=G8(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function D_t(t){if((t.port===(G8(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function k_t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(R_t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=V8(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function L_t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=V8(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function B_t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!w_t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function M_t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var xhe={scheme:"http",domainHost:!0,parse:Ahe,serialize:yhe},W_t={scheme:"https",domainHost:xhe.domainHost,parse:Ahe,serialize:yhe},VR={scheme:"ws",domainHost:!0,parse:P_t,serialize:D_t},$_t={scheme:"wss",domainHost:VR.domainHost,parse:VR.parse,serialize:VR.serialize},F_t={scheme:"urn",parse:k_t,serialize:L_t,skipNormalize:!0},U_t={scheme:"urn:uuid",parse:B_t,serialize:M_t,skipNormalize:!0},zR={http:xhe,https:W_t,ws:VR,wss:$_t,urn:F_t,"urn:uuid":U_t};Object.setPrototypeOf(zR,null);function V8(t){return t&&(zR[t]||zR[t.toLowerCase()])||void 0}bhe.exports={wsIsSecure:G8,SCHEMES:zR,isValidSchemeName:O_t,getSchemeHandler:V8}});var vhe=E((YPr,YR)=>{"use strict";var{normalizeIPv6:q_t,removeDotSegments:C1,recomposeAuthority:j_t,normalizeComponentEncoding:KR,isIPv4:H_t,nonSimpleDomain:Q_t}=Q8(),{SCHEMES:G_t,getSchemeHandler:_he}=Ehe();function V_t(t,e){return typeof t=="string"?t=qu(md(t,e),e):typeof t=="object"&&(t=md(qu(t,e),e)),t}function z_t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=She(md(t,n),md(e,n),n,!0);return n.skipEscape=!0,qu(s,n)}function She(t,e,r,n){let s={};return n||(t=md(qu(t,r),r),e=md(qu(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=C1(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=C1(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=C1(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=C1(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function K_t(t,e,r){return typeof t=="string"?(t=unescape(t),t=qu(KR(md(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=qu(KR(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=qu(KR(md(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=qu(KR(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function qu(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=_he(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=j_t(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=C1(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var Y_t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function md(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(Y_t);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(H_t(n.host)===!1){let c=q_t(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=_he(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&Q_t(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var z8={SCHEMES:G_t,normalize:V_t,resolve:z_t,resolveComponent:She,equal:K_t,serialize:qu,parse:md};YR.exports=z8;YR.exports.default=z8;YR.exports.fastUri=z8});var Ihe=E(K8=>{"use strict";Object.defineProperty(K8,"__esModule",{value:!0});var Che=vhe();Che.code='require("ajv/dist/runtime/uri").default';K8.default=Che});var khe=E(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.CodeGen=ui.Name=ui.nil=ui.stringify=ui.str=ui._=ui.KeywordCxt=void 0;var J_t=S1();Object.defineProperty(ui,"KeywordCxt",{enumerable:!0,get:function(){return J_t.KeywordCxt}});var JA=zt();Object.defineProperty(ui,"_",{enumerable:!0,get:function(){return JA._}});Object.defineProperty(ui,"str",{enumerable:!0,get:function(){return JA.str}});Object.defineProperty(ui,"stringify",{enumerable:!0,get:function(){return JA.stringify}});Object.defineProperty(ui,"nil",{enumerable:!0,get:function(){return JA.nil}});Object.defineProperty(ui,"Name",{enumerable:!0,get:function(){return JA.Name}});Object.defineProperty(ui,"CodeGen",{enumerable:!0,get:function(){return JA.CodeGen}});var X_t=HR(),Ohe=v1(),Z_t=C8(),I1=GR(),eSt=zt(),T1=b1(),JR=x1(),J8=Lr(),The=fhe(),tSt=Ihe(),Phe=(t,e)=>new RegExp(t,e);Phe.code="new RegExp";var rSt=["removeAdditional","useDefaults","coerceTypes"],nSt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),sSt={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},iSt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},whe=200;function aSt(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,C,R,w,N;let P=t.strict,L=(e=t.code)===null||e===void 0?void 0:e.optimize,M=L===!0||L===void 0?1:L||0,k=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Phe,B=(s=t.uriResolver)!==null&&s!==void 0?s:tSt.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:k}:{optimize:M,regExp:k},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:whe,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:whe,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(C=t.validateSchema)!==null&&C!==void 0?C:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:B}}var w1=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...aSt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new eSt.ValueScope({scope:{},prefixes:nSt,es5:r,lines:n}),this.logger=fSt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,Z_t.getRules)(),Rhe.call(this,sSt,e,"NOT SUPPORTED"),Rhe.call(this,iSt,e,"DEPRECATED","warn"),this._metaOpts=lSt.call(this),e.formats&&cSt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&uSt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),oSt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=The;n==="id"&&(s={...The},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Ohe.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,T1.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=Nhe.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new I1.SchemaEnv({schema:{},schemaId:n});if(r=I1.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Nhe.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,T1.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(mSt.call(this,n,r),!r)return(0,J8.eachItem)(n,i=>Y8.call(this,i)),this;gSt.call(this,r);let s={...r,type:(0,JR.getJSONTypes)(r.type),schemaType:(0,JR.getJSONTypes)(r.schemaType)};return(0,J8.eachItem)(n,s.type.length===0?i=>Y8.call(this,i,s):i=>s.type.forEach(a=>Y8.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=Dhe(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,T1.normalizeId)(a||n);let u=T1.getSchemaRefs.call(this,e,n);return c=new I1.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):I1.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{I1.compileSchema.call(this,e)}finally{this.opts=r}}};w1.ValidationError=X_t.default;w1.MissingRefError=Ohe.default;ui.default=w1;function Rhe(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function Nhe(t){return t=(0,T1.normalizeId)(t),this.schemas[t]||this.refs[t]}function oSt(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function cSt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function uSt(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function lSt(){let t={...this.opts};for(let e of rSt)delete t[e];return t}var dSt={log(){},warn(){},error(){}};function fSt(t){if(t===!1)return dSt;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var pSt=/^[a-z_$][a-z0-9_$:-]*$/i;function mSt(t,e){let{RULES:r}=this;if((0,J8.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!pSt.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function Y8(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,JR.getJSONTypes)(e.type),schemaType:(0,JR.getJSONTypes)(e.schemaType)}};e.before?hSt.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function hSt(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function gSt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Dhe(e)),t.validateSchema=this.compile(e,!0))}var ASt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Dhe(t){return{anyOf:[t,ASt]}}});var Lhe=E(X8=>{"use strict";Object.defineProperty(X8,"__esModule",{value:!0});var ySt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};X8.default=ySt});var $he=E(Nm=>{"use strict";Object.defineProperty(Nm,"__esModule",{value:!0});Nm.callRef=Nm.getValidate=void 0;var xSt=v1(),Bhe=Qo(),La=zt(),XA=fd(),Mhe=GR(),XR=Lr(),bSt={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=Mhe.resolveRef.call(c,u,s,r);if(l===void 0)throw new xSt.default(n.opts.uriResolver,s,r);if(l instanceof Mhe.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return ZR(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return ZR(t,(0,La._)`${m}.validate`,u,u.$async)}function f(m){let h=Whe(t,m);ZR(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,La.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:La.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function Whe(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,La._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Nm.getValidate=Whe;function ZR(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?XA.default.this:La.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,La._)`await ${(0,Bhe.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,La._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,Bhe.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,La._)`${m}.errors`;s.assign(XA.default.vErrors,(0,La._)`${XA.default.vErrors} === null ? ${h} : ${XA.default.vErrors}.concat(${h})`),s.assign(XA.default.errors,(0,La._)`${XA.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=XR.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,La._)`${m}.evaluated.props`);i.props=XR.mergeEvaluated.props(s,g,i.props,La.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=XR.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,La._)`${m}.evaluated.items`);i.items=XR.mergeEvaluated.items(s,g,i.items,La.Name)}}}Nm.callRef=ZR;Nm.default=bSt});var Fhe=E(Z8=>{"use strict";Object.defineProperty(Z8,"__esModule",{value:!0});var ESt=Lhe(),_St=$he(),SSt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",ESt.default,_St.default];Z8.default=SSt});var Uhe=E(eW=>{"use strict";Object.defineProperty(eW,"__esModule",{value:!0});var eN=zt(),bp=eN.operators,tN={maximum:{okStr:"<=",ok:bp.LTE,fail:bp.GT},minimum:{okStr:">=",ok:bp.GTE,fail:bp.LT},exclusiveMaximum:{okStr:"<",ok:bp.LT,fail:bp.GTE},exclusiveMinimum:{okStr:">",ok:bp.GT,fail:bp.LTE}},vSt={message:({keyword:t,schemaCode:e})=>(0,eN.str)`must be ${tN[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,eN._)`{comparison: ${tN[t].okStr}, limit: ${e}}`},CSt={keyword:Object.keys(tN),type:"number",schemaType:"number",$data:!0,error:vSt,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,eN._)`${r} ${tN[e].fail} ${n} || isNaN(${r})`)}};eW.default=CSt});var qhe=E(tW=>{"use strict";Object.defineProperty(tW,"__esModule",{value:!0});var R1=zt(),ISt={message:({schemaCode:t})=>(0,R1.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,R1._)`{multipleOf: ${t}}`},TSt={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:ISt,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,R1._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,R1._)`${a} !== parseInt(${a})`;t.fail$data((0,R1._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};tW.default=TSt});var Hhe=E(rW=>{"use strict";Object.defineProperty(rW,"__esModule",{value:!0});function jhe(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(nW,"__esModule",{value:!0});var Om=zt(),wSt=Lr(),RSt=Hhe(),NSt={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Om.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Om._)`{limit: ${t}}`},OSt={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:NSt,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?Om.operators.GT:Om.operators.LT,a=s.opts.unicode===!1?(0,Om._)`${r}.length`:(0,Om._)`${(0,wSt.useFunc)(t.gen,RSt.default)}(${r})`;t.fail$data((0,Om._)`${a} ${i} ${n}`)}};nW.default=OSt});var Ghe=E(sW=>{"use strict";Object.defineProperty(sW,"__esModule",{value:!0});var PSt=Qo(),rN=zt(),DSt={message:({schemaCode:t})=>(0,rN.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,rN._)`{pattern: ${t}}`},kSt={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:DSt,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,rN._)`(new RegExp(${s}, ${a}))`:(0,PSt.usePattern)(t,n);t.fail$data((0,rN._)`!${o}.test(${e})`)}};sW.default=kSt});var Vhe=E(iW=>{"use strict";Object.defineProperty(iW,"__esModule",{value:!0});var N1=zt(),LSt={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,N1.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,N1._)`{limit: ${t}}`},BSt={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:LSt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?N1.operators.GT:N1.operators.LT;t.fail$data((0,N1._)`Object.keys(${r}).length ${s} ${n}`)}};iW.default=BSt});var zhe=E(aW=>{"use strict";Object.defineProperty(aW,"__esModule",{value:!0});var O1=Qo(),P1=zt(),MSt=Lr(),WSt={message:({params:{missingProperty:t}})=>(0,P1.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,P1._)`{missingProperty: ${t}}`},$St={keyword:"required",type:"object",schemaType:"array",$data:!0,error:WSt,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,MSt.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(P1.nil,d);else for(let p of r)(0,O1.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,O1.checkMissingProp)(t,r,p)),(0,O1.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,O1.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,O1.propertyInData)(e,s,p,o.ownProperties)),e.if((0,P1.not)(m),()=>{t.error(),e.break()})},P1.nil)}}};aW.default=$St});var Khe=E(oW=>{"use strict";Object.defineProperty(oW,"__esModule",{value:!0});var D1=zt(),FSt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,D1.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,D1._)`{limit: ${t}}`},USt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:FSt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?D1.operators.GT:D1.operators.LT;t.fail$data((0,D1._)`${r}.length ${s} ${n}`)}};oW.default=USt});var k1=E(cW=>{"use strict";Object.defineProperty(cW,"__esModule",{value:!0});var Yhe=Go();Yhe.code='require("ajv/dist/runtime/equal").default';cW.default=Yhe});var Jhe=E(lW=>{"use strict";Object.defineProperty(lW,"__esModule",{value:!0});var uW=x1(),li=zt(),qSt=Lr(),jSt=k1(),HSt={message:({params:{i:t,j:e}})=>(0,li.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,li._)`{i: ${t}, j: ${e}}`},QSt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:HSt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,uW.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,li._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,li._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,li._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,uW.checkDataTypes)(u,A,o.opts.strictNumbers,uW.DataType.Wrong),b=e.const("indices",(0,li._)`{}`);e.for((0,li._)`;${m}--;`,()=>{e.let(A,(0,li._)`${r}[${m}]`),e.if(g,(0,li._)`continue`),u.length>1&&e.if((0,li._)`typeof ${A} == "string"`,(0,li._)`${A} += "_"`),e.if((0,li._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,li._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,li._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,qSt.useFunc)(e,jSt.default),g=e.name("outer");e.label(g).for((0,li._)`;${m}--;`,()=>e.for((0,li._)`${h} = ${m}; ${h}--;`,()=>e.if((0,li._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};lW.default=QSt});var Xhe=E(fW=>{"use strict";Object.defineProperty(fW,"__esModule",{value:!0});var dW=zt(),GSt=Lr(),VSt=k1(),zSt={message:"must be equal to constant",params:({schemaCode:t})=>(0,dW._)`{allowedValue: ${t}}`},KSt={keyword:"const",$data:!0,error:zSt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,dW._)`!${(0,GSt.useFunc)(e,VSt.default)}(${r}, ${s})`):t.fail((0,dW._)`${i} !== ${r}`)}};fW.default=KSt});var Zhe=E(pW=>{"use strict";Object.defineProperty(pW,"__esModule",{value:!0});var L1=zt(),YSt=Lr(),JSt=k1(),XSt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,L1._)`{allowedValues: ${t}}`},ZSt={keyword:"enum",schemaType:"array",$data:!0,error:XSt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,YSt.useFunc)(e,JSt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,L1.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,L1._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,L1._)`${u()}(${r}, ${p}[${m}])`:(0,L1._)`${r} === ${h}`}}};pW.default=ZSt});var ege=E(mW=>{"use strict";Object.defineProperty(mW,"__esModule",{value:!0});var evt=Uhe(),tvt=qhe(),rvt=Qhe(),nvt=Ghe(),svt=Vhe(),ivt=zhe(),avt=Khe(),ovt=Jhe(),cvt=Xhe(),uvt=Zhe(),lvt=[evt.default,tvt.default,rvt.default,nvt.default,svt.default,ivt.default,avt.default,ovt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},cvt.default,uvt.default];mW.default=lvt});var gW=E(B1=>{"use strict";Object.defineProperty(B1,"__esModule",{value:!0});B1.validateAdditionalItems=void 0;var Pm=zt(),hW=Lr(),dvt={message:({params:{len:t}})=>(0,Pm.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Pm._)`{limit: ${t}}`},fvt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:dvt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,hW.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}tge(t,n)}};function tge(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,Pm._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Pm._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,hW.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Pm._)`${o} <= ${e.length}`);r.if((0,Pm.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:hW.Type.Num},u),a.allErrors||r.if((0,Pm.not)(u),()=>r.break())})}}B1.validateAdditionalItems=tge;B1.default=fvt});var AW=E(M1=>{"use strict";Object.defineProperty(M1,"__esModule",{value:!0});M1.validateTuple=void 0;var rge=zt(),nN=Lr(),pvt=Qo(),mvt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return nge(t,"additionalItems",e);r.items=!0,!(0,nN.alwaysValidSchema)(r,e)&&t.ok((0,pvt.validateArray)(t))}};function nge(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=nN.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,rge._)`${i}.length`);r.forEach((d,f)=>{(0,nN.alwaysValidSchema)(o,d)||(n.if((0,rge._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,nN.checkStrictMode)(o,A,f.strictTuples)}}}M1.validateTuple=nge;M1.default=mvt});var sge=E(yW=>{"use strict";Object.defineProperty(yW,"__esModule",{value:!0});var hvt=AW(),gvt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,hvt.validateTuple)(t,"items")};yW.default=gvt});var age=E(xW=>{"use strict";Object.defineProperty(xW,"__esModule",{value:!0});var ige=zt(),Avt=Lr(),yvt=Qo(),xvt=gW(),bvt={message:({params:{len:t}})=>(0,ige.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ige._)`{limit: ${t}}`},Evt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:bvt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,Avt.alwaysValidSchema)(n,e)&&(s?(0,xvt.validateAdditionalItems)(t,s):t.ok((0,yvt.validateArray)(t)))}};xW.default=Evt});var oge=E(bW=>{"use strict";Object.defineProperty(bW,"__esModule",{value:!0});var zo=zt(),sN=Lr(),_vt={message:({params:{min:t,max:e}})=>e===void 0?(0,zo.str)`must contain at least ${t} valid item(s)`:(0,zo.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,zo._)`{minContains: ${t}}`:(0,zo._)`{minContains: ${t}, maxContains: ${e}}`},Svt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:_vt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,zo._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,sN.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,sN.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,sN.alwaysValidSchema)(i,r)){let h=(0,zo._)`${l} >= ${a}`;o!==void 0&&(h=(0,zo._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,zo._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:sN.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,zo._)`${h}++`),o===void 0?e.if((0,zo._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,zo._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,zo._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};bW.default=Svt});var lge=E(ju=>{"use strict";Object.defineProperty(ju,"__esModule",{value:!0});ju.validateSchemaDeps=ju.validatePropertyDeps=ju.error=void 0;var EW=zt(),vvt=Lr(),W1=Qo();ju.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,EW.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,EW._)`{property: ${t}, missingProperty: ${n}, depsCount: ${e}, - deps: ${r}}`};var Svt={keyword:"dependencies",type:"object",schemaType:"object",error:ju.error,code(t){let[e,r]=vvt(t);ige(t,e),age(t,r)}};function vvt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function ige(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,M1.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,M1.checkReportMissingProp)(t,u)}):(r.if((0,bW._)`${c} && (${(0,M1.checkMissingProp)(t,o,i)})`),(0,M1.reportMissingProp)(t,i),r.else())}}ju.validatePropertyDeps=ige;function age(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,_vt.alwaysValidSchema)(i,e[o])||(r.if((0,M1.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}ju.validateSchemaDeps=age;ju.default=Svt});var uge=E(EW=>{"use strict";Object.defineProperty(EW,"__esModule",{value:!0});var cge=Kt(),Ivt=Dr(),Cvt={message:"property name must be valid",params:({params:t})=>(0,cge._)`{propertyName: ${t.propertyName}}`},Tvt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Cvt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,Ivt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,cge.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};EW.default=Tvt});var SW=E(_W=>{"use strict";Object.defineProperty(_W,"__esModule",{value:!0});var nN=Go(),jc=Kt(),wvt=dd(),sN=Dr(),Rvt={message:"must NOT have additional properties",params:({params:t})=>(0,jc._)`{additionalProperty: ${t.additionalProperty}}`},Nvt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Rvt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,sN.alwaysValidSchema)(a,r))return;let u=(0,nN.allSchemaProperties)(n.properties),l=(0,nN.allSchemaProperties)(n.patternProperties);d(),t.ok((0,jc._)`${i} === ${wvt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,sN.schemaRefOrVal)(a,n.properties,"properties");g=(0,nN.isOwnProperty)(e,b,A)}else u.length?g=(0,jc.or)(...u.map(b=>(0,jc._)`${A} === ${b}`)):g=jc.nil;return l.length&&(g=(0,jc.or)(g,...l.map(b=>(0,jc._)`${(0,nN.usePattern)(t,b)}.test(${A})`))),(0,jc.not)(g)}function p(A){e.code((0,jc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,sN.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,jc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,jc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:sN.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};_W.default=Nvt});var fge=E(IW=>{"use strict";Object.defineProperty(IW,"__esModule",{value:!0});var Ovt=_1(),lge=Go(),vW=Dr(),dge=SW(),Pvt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&dge.default.code(new Ovt.KeywordCxt(i,dge.default,"additionalProperties"));let a=(0,lge.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=vW.mergeEvaluated.props(e,(0,vW.toHash)(a),i.props));let o=a.filter(d=>!(0,vW.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,lge.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};IW.default=Pvt});var gge=E(CW=>{"use strict";Object.defineProperty(CW,"__esModule",{value:!0});var pge=Go(),iN=Kt(),mge=Dr(),hge=Dr(),kvt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,pge.allSchemaProperties)(r),c=o.filter(h=>(0,mge.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof iN.Name)&&(i.props=(0,hge.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,mge.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,iN._)`${(0,pge.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:hge.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,iN._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,iN.not)(l),()=>e.break())})})}}};CW.default=kvt});var Age=E(TW=>{"use strict";Object.defineProperty(TW,"__esModule",{value:!0});var Dvt=Dr(),Bvt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Dvt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};TW.default=Bvt});var yge=E(wW=>{"use strict";Object.defineProperty(wW,"__esModule",{value:!0});var Lvt=Go(),Mvt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Lvt.validateUnion,error:{message:"must match a schema in anyOf"}};wW.default=Mvt});var xge=E(RW=>{"use strict";Object.defineProperty(RW,"__esModule",{value:!0});var aN=Kt(),Wvt=Dr(),$vt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,aN._)`{passingSchemas: ${t.passing}}`},Fvt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:$vt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,Wvt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,aN._)`${c} && ${a}`).assign(a,!1).assign(o,(0,aN._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,aN.Name)})})}}};RW.default=Fvt});var bge=E(NW=>{"use strict";Object.defineProperty(NW,"__esModule",{value:!0});var Uvt=Dr(),qvt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,Uvt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};NW.default=qvt});var Sge=E(OW=>{"use strict";Object.defineProperty(OW,"__esModule",{value:!0});var oN=Kt(),_ge=Dr(),jvt={message:({params:t})=>(0,oN.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,oN._)`{failingKeyword: ${t.ifClause}}`},Hvt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:jvt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,_ge.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=Ege(n,"then"),i=Ege(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,oN.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,oN._)`${l}`):t.setParams({ifClause:l})}}}};function Ege(t,e){let r=t.schema[e];return r!==void 0&&!(0,_ge.alwaysValidSchema)(t,r)}OW.default=Hvt});var vge=E(PW=>{"use strict";Object.defineProperty(PW,"__esModule",{value:!0});var Qvt=Dr(),Gvt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Qvt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};PW.default=Gvt});var Ige=E(kW=>{"use strict";Object.defineProperty(kW,"__esModule",{value:!0});var Kvt=hW(),Vvt=tge(),zvt=gW(),Yvt=nge(),Jvt=sge(),Xvt=oge(),Zvt=uge(),eIt=SW(),tIt=fge(),rIt=gge(),nIt=Age(),sIt=yge(),iIt=xge(),aIt=bge(),oIt=Sge(),cIt=vge();function uIt(t=!1){let e=[nIt.default,sIt.default,iIt.default,aIt.default,oIt.default,cIt.default,Zvt.default,eIt.default,Xvt.default,tIt.default,rIt.default];return t?e.push(Vvt.default,Yvt.default):e.push(Kvt.default,zvt.default),e.push(Jvt.default),e}kW.default=uIt});var Cge=E(DW=>{"use strict";Object.defineProperty(DW,"__esModule",{value:!0});var cs=Kt(),lIt={message:({schemaCode:t})=>(0,cs.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,cs._)`{format: ${t}}`},dIt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:lIt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,cs._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,cs._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,cs._)`${h}.type || "string"`).assign(g,(0,cs._)`${h}.validate`),()=>r.assign(A,(0,cs._)`"string"`).assign(g,h)),t.fail$data((0,cs.or)(b(),y()));function b(){return c.strictSchema===!1?cs.nil:(0,cs._)`${a} && !${g}`}function y(){let x=l.$async?(0,cs._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,cs._)`${g}(${n})`,v=(0,cs._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,cs._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function y(v){let I=v instanceof RegExp?(0,cs.regexpCode)(v):c.code.formats?(0,cs._)`${c.code.formats}${(0,cs.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:I});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,cs._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,cs._)`await ${g}(${n})`}return typeof A=="function"?(0,cs._)`${g}(${n})`:(0,cs._)`${g}.test(${n})`}}}};DW.default=dIt});var Tge=E(BW=>{"use strict";Object.defineProperty(BW,"__esModule",{value:!0});var fIt=Cge(),pIt=[fIt.default];BW.default=pIt});var wge=E(ZA=>{"use strict";Object.defineProperty(ZA,"__esModule",{value:!0});ZA.contentVocabulary=ZA.metadataVocabulary=void 0;ZA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];ZA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Nge=E(LW=>{"use strict";Object.defineProperty(LW,"__esModule",{value:!0});var mIt=Mhe(),hIt=Jhe(),gIt=Ige(),AIt=Tge(),Rge=wge(),yIt=[mIt.default,hIt.default,(0,gIt.default)(),AIt.default,Rge.metadataVocabulary,Rge.contentVocabulary];LW.default=yIt});var Pge=E(cN=>{"use strict";Object.defineProperty(cN,"__esModule",{value:!0});cN.DiscrError=void 0;var Oge;(function(t){t.Tag="tag",t.Mapping="mapping"})(Oge||(cN.DiscrError=Oge={}))});var Dge=E(WW=>{"use strict";Object.defineProperty(WW,"__esModule",{value:!0});var ey=Kt(),MW=Pge(),kge=HR(),xIt=S1(),bIt=Dr(),EIt={message:({params:{discrError:t,tagName:e}})=>t===MW.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,ey._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},_It={keyword:"discriminator",type:"object",schemaType:"object",error:EIt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,ey._)`${r}${(0,ey.getProperty)(o)}`);e.if((0,ey._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:MW.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,ey._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:MW.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,ey.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x{SIt.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var FW=E((Nn,$W)=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.MissingRefError=Nn.ValidationError=Nn.CodeGen=Nn.Name=Nn.nil=Nn.stringify=Nn.str=Nn._=Nn.KeywordCxt=Nn.Ajv=void 0;var vIt=Ohe(),IIt=Nge(),CIt=Dge(),Lge=Bge(),TIt=["/properties"],uN="http://json-schema.org/draft-07/schema",ty=class extends vIt.default{_addVocabularies(){super._addVocabularies(),IIt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(CIt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Lge,TIt):Lge;this.addMetaSchema(e,uN,!1),this.refs["http://json-schema.org/schema"]=uN}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(uN)?uN:void 0)}};Nn.Ajv=ty;$W.exports=Nn=ty;$W.exports.Ajv=ty;Object.defineProperty(Nn,"__esModule",{value:!0});Nn.default=ty;var wIt=_1();Object.defineProperty(Nn,"KeywordCxt",{enumerable:!0,get:function(){return wIt.KeywordCxt}});var ry=Kt();Object.defineProperty(Nn,"_",{enumerable:!0,get:function(){return ry._}});Object.defineProperty(Nn,"str",{enumerable:!0,get:function(){return ry.str}});Object.defineProperty(Nn,"stringify",{enumerable:!0,get:function(){return ry.stringify}});Object.defineProperty(Nn,"nil",{enumerable:!0,get:function(){return ry.nil}});Object.defineProperty(Nn,"Name",{enumerable:!0,get:function(){return ry.Name}});Object.defineProperty(Nn,"CodeGen",{enumerable:!0,get:function(){return ry.CodeGen}});var RIt=qR();Object.defineProperty(Nn,"ValidationError",{enumerable:!0,get:function(){return RIt.default}});var NIt=S1();Object.defineProperty(Nn,"MissingRefError",{enumerable:!0,get:function(){return NIt.default}})});var Wge=E((kkr,Mge)=>{"use strict";var OIt={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};Mge.exports={HEX:OIt}});var Gge=E((Dkr,Qge)=>{"use strict";var{HEX:PIt}=Wge();function qge(t){if(Hge(t,".")<3)return{host:t,isIPV4:!1};let e=t.match(/^(\b[01]?\d{1,2}|\b2[0-4]\d|\b25[0-5])(\.([01]?\d{1,2}|2[0-4]\d|25[0-5])){3}$/u)||[],[r]=e;return r?{host:DIt(r,"."),isIPV4:!0}:{host:t,isIPV4:!1}}function UW(t){let e="",r=!0;for(let n of t){if(n!=="0"&&r===!0&&(r=!1),PIt[n]===void 0)return;r||(e+=n)}return e}function kIt(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=!1;function c(){if(s.length){if(i===!1){let u=UW(s.join(""));if(u!==void 0)n.push(u);else return r.error=!0,!1}s.length=0}return!0}for(let u=0;u7){r.error=!0;break}u-1>=0&&t[u-1]===":"&&(a=!0);continue}else if(l==="%"){if(!c())break;i=!0}else{s.push(l);continue}}return s.length&&(i?r.zone=s.join(""):o?n.push(s.join("")):n.push(UW(s.join("")))),r.address=n.join(""),r}function jge(t,e={}){if(Hge(t,":")<2)return{host:t,isIPV6:!1};let r=kIt(t);if(r.error)return{host:t,isIPV6:!1};{let n=r.address,s=r.address;return r.zone&&(n+="%"+r.zone,s+="%25"+r.zone),{host:n,escapedHost:s,isIPV6:!0}}}function DIt(t,e){let r="",n=!0,s=t.length;for(let i=0;i{"use strict";var $It=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,FIt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function Kge(t){return typeof t.secure=="boolean"?t.secure:String(t.scheme).toLowerCase()==="wss"}function Vge(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function zge(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function UIt(t){return t.secure=Kge(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function qIt(t){if((t.port===(Kge(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function jIt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(FIt);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=qW[s];t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function HIt(t,e){let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=qW[s];i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function QIt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!$It.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function GIt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Yge={scheme:"http",domainHost:!0,parse:Vge,serialize:zge},KIt={scheme:"https",domainHost:Yge.domainHost,parse:Vge,serialize:zge},lN={scheme:"ws",domainHost:!0,parse:UIt,serialize:qIt},VIt={scheme:"wss",domainHost:lN.domainHost,parse:lN.parse,serialize:lN.serialize},zIt={scheme:"urn",parse:jIt,serialize:HIt,skipNormalize:!0},YIt={scheme:"urn:uuid",parse:QIt,serialize:GIt,skipNormalize:!0},qW={http:Yge,https:KIt,ws:lN,wss:VIt,urn:zIt,"urn:uuid":YIt};Jge.exports=qW});var HW=E((Lkr,fN)=>{"use strict";var{normalizeIPv6:JIt,normalizeIPv4:XIt,removeDotSegments:W1,recomposeAuthority:ZIt,normalizeComponentEncoding:dN}=Gge(),Zge=Xge();function eCt(t,e){return typeof t=="string"?t=Hu(md(t,e),e):typeof t=="object"&&(t=md(Hu(t,e),e)),t}function tCt(t,e,r){let n=Object.assign({scheme:"null"},r),s=eAe(md(t,n),md(e,n),n,!0);return Hu(s,{...n,skipEscape:!0})}function eAe(t,e,r,n){let s={};return n||(t=md(Hu(t,r),r),e=md(Hu(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=W1(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=W1(e.path||""),s.query=e.query):(e.path?(e.path.charAt(0)==="/"?s.path=W1(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=W1(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function rCt(t,e,r){return typeof t=="string"?(t=unescape(t),t=Hu(dN(md(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Hu(dN(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Hu(dN(md(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Hu(dN(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Hu(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=Zge[(n.scheme||r.scheme||"").toLowerCase()];i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&(s.push(r.scheme),s.push(":"));let a=ZIt(r,n);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path.charAt(0)!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=W1(o)),a===void 0&&(o=o.replace(/^\/\//u,"/%2F")),s.push(o)}return r.query!==void 0&&(s.push("?"),s.push(r.query)),r.fragment!==void 0&&(s.push("#"),s.push(r.fragment)),s.join("")}var nCt=Array.from({length:127},(t,e)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(e)));function sCt(t){let e=0;for(let r=0,n=t.length;r126||nCt[e])return!0;return!1}var iCt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function md(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=t.indexOf("%")!==-1;r.reference==="suffix"&&(t=(r.scheme?r.scheme+":":"")+"//"+t);let i=t.match(iCt);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host){let o=XIt(n.host);o.isIPV4===!1?n.host=JIt(o.host,{isIPV4:!1}).host.toLowerCase():n.host=o.host}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=Zge[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&sCt(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(s&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),s&&n.userinfo!==void 0&&(n.userinfo=unescape(n.userinfo)),s&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURI(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var jW={normalize:eCt,resolve:tCt,resolveComponents:eAe,equal:rCt,serialize:Hu,parse:md};fN.exports=jW;fN.exports.default=jW;fN.exports.fastUri=jW});var pN=E(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.formatNames=Gu.fastFormats=Gu.fullFormats=void 0;function Qu(t,e){return{validate:t,compare:e}}Gu.fullFormats={date:Qu(sAe,VW),time:Qu(GW(!0),zW),"date-time":Qu(tAe(!0),aAe),"iso-time":Qu(GW(),iAe),"iso-date-time":Qu(tAe(),oAe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:dCt,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:yCt,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:fCt,int32:{type:"number",validate:hCt},int64:{type:"number",validate:gCt},float:{type:"number",validate:nAe},double:{type:"number",validate:nAe},password:!0,binary:!0};Gu.fastFormats={...Gu.fullFormats,date:Qu(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,VW),time:Qu(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,zW),"date-time":Qu(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,aAe),"iso-time":Qu(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,iAe),"iso-date-time":Qu(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,oAe),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Gu.formatNames=Object.keys(Gu.fullFormats);function aCt(t){return t%4===0&&(t%100!==0||t%400===0)}var oCt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,cCt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function sAe(t){let e=oCt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&aCt(r)?29:cCt[n])}function VW(t,e){if(t&&e)return t>e?1:t23||l>59||t&&!o)return!1;if(s<=23&&i<=59&&a<60)return!0;let d=i-l*c,f=s-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&a<61}}function zW(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function iAe(t,e){if(!(t&&e))return;let r=QW.exec(t),n=QW.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t=pCt}function gCt(t){return Number.isInteger(t)}function nAe(){return!0}var ACt=/[^\\]\\Z/;function yCt(t){if(ACt.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var cAe=E(ny=>{"use strict";Object.defineProperty(ny,"__esModule",{value:!0});ny.formatLimitDefinition=void 0;var xCt=FW(),Hc=Kt(),bp=Hc.operators,mN={formatMaximum:{okStr:"<=",ok:bp.LTE,fail:bp.GT},formatMinimum:{okStr:">=",ok:bp.GTE,fail:bp.LT},formatExclusiveMaximum:{okStr:"<",ok:bp.LT,fail:bp.GTE},formatExclusiveMinimum:{okStr:">",ok:bp.GT,fail:bp.LTE}},bCt={message:({keyword:t,schemaCode:e})=>(0,Hc.str)`should be ${mN[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Hc._)`{comparison: ${mN[t].okStr}, limit: ${e}}`};ny.formatLimitDefinition={keyword:Object.keys(mN),type:"string",schemaType:"string",$data:!0,error:bCt,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new xCt.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",(0,Hc._)`${f}[${c.schemaCode}]`);t.fail$data((0,Hc.or)((0,Hc._)`typeof ${p} != "object"`,(0,Hc._)`${p} instanceof RegExp`,(0,Hc._)`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,Hc._)`${a.code.formats}${(0,Hc.getProperty)(f)}`:void 0});t.fail$data(d(m))}function d(f){return(0,Hc._)`${f}.compare(${r}, ${n}) ${mN[s].fail} 0`}},dependencies:["format"]};var ECt=t=>(t.addKeyword(ny.formatLimitDefinition),t);ny.default=ECt});var fAe=E(($1,dAe)=>{"use strict";Object.defineProperty($1,"__esModule",{value:!0});var sy=pN(),_Ct=cAe(),YW=Kt(),uAe=new YW.Name("fullFormats"),SCt=new YW.Name("fastFormats"),JW=(t,e={keywords:!0})=>{if(Array.isArray(e))return lAe(t,e,sy.fullFormats,uAe),t;let[r,n]=e.mode==="fast"?[sy.fastFormats,SCt]:[sy.fullFormats,uAe],s=e.formats||sy.formatNames;return lAe(t,s,r,n),e.keywords&&(0,_Ct.default)(t),t};JW.get=(t,e="full")=>{let n=(e==="fast"?sy.fastFormats:sy.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function lAe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=(0,YW._)`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}dAe.exports=$1=JW;Object.defineProperty($1,"__esModule",{value:!0});$1.default=JW});var ZW=E(($kr,pAe)=>{"use strict";var vCt=FW(),ICt=HW(),CCt=fAe(),TCt=wR()({proto:!0}),XW=class t{constructor(e){this.ajv=new vCt({...e,strictSchema:!1,validateSchema:!1,allowUnionTypes:!0,uriResolver:ICt}),CCt(this.ajv),this.ajv.addKeyword({keyword:"fjs_type",type:"object",errors:!1,validate:(r,n)=>n instanceof Date}),this._ajvSchemas={},this._ajvOptions=e||{}}addSchema(e,r){let n=e.$id||r;if(e.$id!==void 0&&e.$id[0]==="#"&&(n=r+e.$id),this.ajv.refs[n]===void 0&&this.ajv.schemas[n]===void 0){let s=TCt(e);this.convertSchemaToAjvFormat(s),this.ajv.addSchema(s,n),this._ajvSchemas[n]=e}}validate(e,r){return this.ajv.validate(e,r)}convertSchemaToAjvFormat(e){if(e!==null){e.type==="string"?(e.fjs_type="string",e.type=["string","object"]):Array.isArray(e.type)&&e.type.includes("string")&&!e.type.includes("object")&&(e.fjs_type="string",e.type.push("object"));for(let r in e)typeof e[r]=="object"&&this.convertSchemaToAjvFormat(e[r])}}getState(){return{ajvOptions:this._ajvOptions,ajvSchemas:this._ajvSchemas}}static restoreFromState(e){let r=new t(e.ajvOptions);for(let[n,s]of Object.entries(e.ajvSchemas))r.ajv.addSchema(s,n);return r}};pAe.exports=XW});var t$=E((Fkr,e$)=>{"use strict";function wCt(t,e,r,n){let s="";e.validatorSchemasIds.size>0?(s+=`const Validator = require('fast-json-stringify/lib/validator') + deps: ${r}}`};var Cvt={keyword:"dependencies",type:"object",schemaType:"object",error:ju.error,code(t){let[e,r]=Ivt(t);cge(t,e),uge(t,r)}};function Ivt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function cge(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,W1.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,W1.checkReportMissingProp)(t,u)}):(r.if((0,EW._)`${c} && (${(0,W1.checkMissingProp)(t,o,i)})`),(0,W1.reportMissingProp)(t,i),r.else())}}ju.validatePropertyDeps=cge;function uge(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,vvt.alwaysValidSchema)(i,e[o])||(r.if((0,W1.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}ju.validateSchemaDeps=uge;ju.default=Cvt});var fge=E(_W=>{"use strict";Object.defineProperty(_W,"__esModule",{value:!0});var dge=zt(),Tvt=Lr(),wvt={message:"property name must be valid",params:({params:t})=>(0,dge._)`{propertyName: ${t.propertyName}}`},Rvt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:wvt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,Tvt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,dge.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};_W.default=Rvt});var vW=E(SW=>{"use strict";Object.defineProperty(SW,"__esModule",{value:!0});var iN=Qo(),qc=zt(),Nvt=fd(),aN=Lr(),Ovt={message:"must NOT have additional properties",params:({params:t})=>(0,qc._)`{additionalProperty: ${t.additionalProperty}}`},Pvt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Ovt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,aN.alwaysValidSchema)(a,r))return;let u=(0,iN.allSchemaProperties)(n.properties),l=(0,iN.allSchemaProperties)(n.patternProperties);d(),t.ok((0,qc._)`${i} === ${Nvt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,aN.schemaRefOrVal)(a,n.properties,"properties");g=(0,iN.isOwnProperty)(e,b,A)}else u.length?g=(0,qc.or)(...u.map(b=>(0,qc._)`${A} === ${b}`)):g=qc.nil;return l.length&&(g=(0,qc.or)(g,...l.map(b=>(0,qc._)`${(0,iN.usePattern)(t,b)}.test(${A})`))),(0,qc.not)(g)}function p(A){e.code((0,qc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,aN.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,qc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,qc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:aN.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};SW.default=Pvt});var hge=E(IW=>{"use strict";Object.defineProperty(IW,"__esModule",{value:!0});var Dvt=S1(),pge=Qo(),CW=Lr(),mge=vW(),kvt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&mge.default.code(new Dvt.KeywordCxt(i,mge.default,"additionalProperties"));let a=(0,pge.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=CW.mergeEvaluated.props(e,(0,CW.toHash)(a),i.props));let o=a.filter(d=>!(0,CW.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,pge.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};IW.default=kvt});var xge=E(TW=>{"use strict";Object.defineProperty(TW,"__esModule",{value:!0});var gge=Qo(),oN=zt(),Age=Lr(),yge=Lr(),Lvt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,gge.allSchemaProperties)(r),c=o.filter(h=>(0,Age.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof oN.Name)&&(i.props=(0,yge.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,Age.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,oN._)`${(0,gge.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:yge.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,oN._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,oN.not)(l),()=>e.break())})})}}};TW.default=Lvt});var bge=E(wW=>{"use strict";Object.defineProperty(wW,"__esModule",{value:!0});var Bvt=Lr(),Mvt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Bvt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};wW.default=Mvt});var Ege=E(RW=>{"use strict";Object.defineProperty(RW,"__esModule",{value:!0});var Wvt=Qo(),$vt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Wvt.validateUnion,error:{message:"must match a schema in anyOf"}};RW.default=$vt});var _ge=E(NW=>{"use strict";Object.defineProperty(NW,"__esModule",{value:!0});var cN=zt(),Fvt=Lr(),Uvt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,cN._)`{passingSchemas: ${t.passing}}`},qvt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Uvt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,Fvt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,cN._)`${c} && ${a}`).assign(a,!1).assign(o,(0,cN._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,cN.Name)})})}}};NW.default=qvt});var Sge=E(OW=>{"use strict";Object.defineProperty(OW,"__esModule",{value:!0});var jvt=Lr(),Hvt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,jvt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};OW.default=Hvt});var Ige=E(PW=>{"use strict";Object.defineProperty(PW,"__esModule",{value:!0});var uN=zt(),Cge=Lr(),Qvt={message:({params:t})=>(0,uN.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,uN._)`{failingKeyword: ${t.ifClause}}`},Gvt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Qvt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Cge.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=vge(n,"then"),i=vge(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,uN.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,uN._)`${l}`):t.setParams({ifClause:l})}}}};function vge(t,e){let r=t.schema[e];return r!==void 0&&!(0,Cge.alwaysValidSchema)(t,r)}PW.default=Gvt});var Tge=E(DW=>{"use strict";Object.defineProperty(DW,"__esModule",{value:!0});var Vvt=Lr(),zvt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,Vvt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};DW.default=zvt});var wge=E(kW=>{"use strict";Object.defineProperty(kW,"__esModule",{value:!0});var Kvt=gW(),Yvt=sge(),Jvt=AW(),Xvt=age(),Zvt=oge(),eCt=lge(),tCt=fge(),rCt=vW(),nCt=hge(),sCt=xge(),iCt=bge(),aCt=Ege(),oCt=_ge(),cCt=Sge(),uCt=Ige(),lCt=Tge();function dCt(t=!1){let e=[iCt.default,aCt.default,oCt.default,cCt.default,uCt.default,lCt.default,tCt.default,rCt.default,eCt.default,nCt.default,sCt.default];return t?e.push(Yvt.default,Xvt.default):e.push(Kvt.default,Jvt.default),e.push(Zvt.default),e}kW.default=dCt});var Rge=E(LW=>{"use strict";Object.defineProperty(LW,"__esModule",{value:!0});var cs=zt(),fCt={message:({schemaCode:t})=>(0,cs.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,cs._)`{format: ${t}}`},pCt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:fCt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,cs._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,cs._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,cs._)`${h}.type || "string"`).assign(g,(0,cs._)`${h}.validate`),()=>r.assign(A,(0,cs._)`"string"`).assign(g,h)),t.fail$data((0,cs.or)(b(),y()));function b(){return c.strictSchema===!1?cs.nil:(0,cs._)`${a} && !${g}`}function y(){let x=l.$async?(0,cs._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,cs._)`${g}(${n})`,v=(0,cs._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,cs._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function y(v){let C=v instanceof RegExp?(0,cs.regexpCode)(v):c.code.formats?(0,cs._)`${c.code.formats}${(0,cs.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:C});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,cs._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,cs._)`await ${g}(${n})`}return typeof A=="function"?(0,cs._)`${g}(${n})`:(0,cs._)`${g}.test(${n})`}}}};LW.default=pCt});var Nge=E(BW=>{"use strict";Object.defineProperty(BW,"__esModule",{value:!0});var mCt=Rge(),hCt=[mCt.default];BW.default=hCt});var Oge=E(ZA=>{"use strict";Object.defineProperty(ZA,"__esModule",{value:!0});ZA.contentVocabulary=ZA.metadataVocabulary=void 0;ZA.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];ZA.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Dge=E(MW=>{"use strict";Object.defineProperty(MW,"__esModule",{value:!0});var gCt=Fhe(),ACt=ege(),yCt=wge(),xCt=Nge(),Pge=Oge(),bCt=[gCt.default,ACt.default,(0,yCt.default)(),xCt.default,Pge.metadataVocabulary,Pge.contentVocabulary];MW.default=bCt});var Lge=E(lN=>{"use strict";Object.defineProperty(lN,"__esModule",{value:!0});lN.DiscrError=void 0;var kge;(function(t){t.Tag="tag",t.Mapping="mapping"})(kge||(lN.DiscrError=kge={}))});var Mge=E($W=>{"use strict";Object.defineProperty($W,"__esModule",{value:!0});var ey=zt(),WW=Lge(),Bge=GR(),ECt=v1(),_Ct=Lr(),SCt={message:({params:{discrError:t,tagName:e}})=>t===WW.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,ey._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},vCt={keyword:"discriminator",type:"object",schemaType:"object",error:SCt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,ey._)`${r}${(0,ey.getProperty)(o)}`);e.if((0,ey._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:WW.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,ey._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:WW.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,ey.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x{CCt.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var UW=E((Nn,FW)=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.MissingRefError=Nn.ValidationError=Nn.CodeGen=Nn.Name=Nn.nil=Nn.stringify=Nn.str=Nn._=Nn.KeywordCxt=Nn.Ajv=void 0;var ICt=khe(),TCt=Dge(),wCt=Mge(),$ge=Wge(),RCt=["/properties"],dN="http://json-schema.org/draft-07/schema",ty=class extends ICt.default{_addVocabularies(){super._addVocabularies(),TCt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(wCt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema($ge,RCt):$ge;this.addMetaSchema(e,dN,!1),this.refs["http://json-schema.org/schema"]=dN}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(dN)?dN:void 0)}};Nn.Ajv=ty;FW.exports=Nn=ty;FW.exports.Ajv=ty;Object.defineProperty(Nn,"__esModule",{value:!0});Nn.default=ty;var NCt=S1();Object.defineProperty(Nn,"KeywordCxt",{enumerable:!0,get:function(){return NCt.KeywordCxt}});var ry=zt();Object.defineProperty(Nn,"_",{enumerable:!0,get:function(){return ry._}});Object.defineProperty(Nn,"str",{enumerable:!0,get:function(){return ry.str}});Object.defineProperty(Nn,"stringify",{enumerable:!0,get:function(){return ry.stringify}});Object.defineProperty(Nn,"nil",{enumerable:!0,get:function(){return ry.nil}});Object.defineProperty(Nn,"Name",{enumerable:!0,get:function(){return ry.Name}});Object.defineProperty(Nn,"CodeGen",{enumerable:!0,get:function(){return ry.CodeGen}});var OCt=HR();Object.defineProperty(Nn,"ValidationError",{enumerable:!0,get:function(){return OCt.default}});var PCt=v1();Object.defineProperty(Nn,"MissingRefError",{enumerable:!0,get:function(){return PCt.default}})});var Uge=E(($3r,Fge)=>{"use strict";var DCt={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,A:10,b:11,B:11,c:12,C:12,d:13,D:13,e:14,E:14,f:15,F:15};Fge.exports={HEX:DCt}});var Kge=E((F3r,zge)=>{"use strict";var{HEX:kCt}=Uge();function Qge(t){if(Vge(t,".")<3)return{host:t,isIPV4:!1};let e=t.match(/^(\b[01]?\d{1,2}|\b2[0-4]\d|\b25[0-5])(\.([01]?\d{1,2}|2[0-4]\d|25[0-5])){3}$/u)||[],[r]=e;return r?{host:BCt(r,"."),isIPV4:!0}:{host:t,isIPV4:!1}}function qW(t){let e="",r=!0;for(let n of t){if(n!=="0"&&r===!0&&(r=!1),kCt[n]===void 0)return;r||(e+=n)}return e}function LCt(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=!1;function c(){if(s.length){if(i===!1){let u=qW(s.join(""));if(u!==void 0)n.push(u);else return r.error=!0,!1}s.length=0}return!0}for(let u=0;u7){r.error=!0;break}u-1>=0&&t[u-1]===":"&&(a=!0);continue}else if(l==="%"){if(!c())break;i=!0}else{s.push(l);continue}}return s.length&&(i?r.zone=s.join(""):o?n.push(s.join("")):n.push(qW(s.join("")))),r.address=n.join(""),r}function Gge(t,e={}){if(Vge(t,":")<2)return{host:t,isIPV6:!1};let r=LCt(t);if(r.error)return{host:t,isIPV6:!1};{let n=r.address,s=r.address;return r.zone&&(n+="%"+r.zone,s+="%25"+r.zone),{host:n,escapedHost:s,isIPV6:!0}}}function BCt(t,e){let r="",n=!0,s=t.length;for(let i=0;i{"use strict";var UCt=/^[\da-f]{8}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{4}\b-[\da-f]{12}$/iu,qCt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;function Yge(t){return typeof t.secure=="boolean"?t.secure:String(t.scheme).toLowerCase()==="wss"}function Jge(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Xge(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function jCt(t){return t.secure=Yge(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function HCt(t){if((t.port===(Yge(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function QCt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(qCt);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=jW[s];t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function GCt(t,e){let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=jW[s];i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function VCt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!UCt.test(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function zCt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Zge={scheme:"http",domainHost:!0,parse:Jge,serialize:Xge},KCt={scheme:"https",domainHost:Zge.domainHost,parse:Jge,serialize:Xge},fN={scheme:"ws",domainHost:!0,parse:jCt,serialize:HCt},YCt={scheme:"wss",domainHost:fN.domainHost,parse:fN.parse,serialize:fN.serialize},JCt={scheme:"urn",parse:QCt,serialize:GCt,skipNormalize:!0},XCt={scheme:"urn:uuid",parse:VCt,serialize:zCt,skipNormalize:!0},jW={http:Zge,https:KCt,ws:fN,wss:YCt,urn:JCt,"urn:uuid":XCt};eAe.exports=jW});var QW=E((q3r,mN)=>{"use strict";var{normalizeIPv6:ZCt,normalizeIPv4:eIt,removeDotSegments:$1,recomposeAuthority:tIt,normalizeComponentEncoding:pN}=Kge(),rAe=tAe();function rIt(t,e){return typeof t=="string"?t=Hu(hd(t,e),e):typeof t=="object"&&(t=hd(Hu(t,e),e)),t}function nIt(t,e,r){let n=Object.assign({scheme:"null"},r),s=nAe(hd(t,n),hd(e,n),n,!0);return Hu(s,{...n,skipEscape:!0})}function nAe(t,e,r,n){let s={};return n||(t=hd(Hu(t,r),r),e=hd(Hu(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=$1(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=$1(e.path||""),s.query=e.query):(e.path?(e.path.charAt(0)==="/"?s.path=$1(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=$1(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function sIt(t,e,r){return typeof t=="string"?(t=unescape(t),t=Hu(pN(hd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Hu(pN(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Hu(pN(hd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Hu(pN(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Hu(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=rAe[(n.scheme||r.scheme||"").toLowerCase()];i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&(s.push(r.scheme),s.push(":"));let a=tIt(r,n);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path.charAt(0)!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=$1(o)),a===void 0&&(o=o.replace(/^\/\//u,"/%2F")),s.push(o)}return r.query!==void 0&&(s.push("?"),s.push(r.query)),r.fragment!==void 0&&(s.push("#"),s.push(r.fragment)),s.join("")}var iIt=Array.from({length:127},(t,e)=>/[^!"$&'()*+,\-.;=_`a-z{}~]/u.test(String.fromCharCode(e)));function aIt(t){let e=0;for(let r=0,n=t.length;r126||iIt[e])return!0;return!1}var oIt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function hd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=t.indexOf("%")!==-1;r.reference==="suffix"&&(t=(r.scheme?r.scheme+":":"")+"//"+t);let i=t.match(oIt);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host){let o=eIt(n.host);o.isIPV4===!1?n.host=ZCt(o.host,{isIPV4:!1}).host.toLowerCase():n.host=o.host}n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&!n.path&&n.query===void 0?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=rAe[(r.scheme||n.scheme||"").toLowerCase()];if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&aIt(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(s&&n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),s&&n.userinfo!==void 0&&(n.userinfo=unescape(n.userinfo)),s&&n.host!==void 0&&(n.host=unescape(n.host)),n.path!==void 0&&n.path.length&&(n.path=escape(unescape(n.path))),n.fragment!==void 0&&n.fragment.length&&(n.fragment=encodeURI(decodeURI(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var HW={normalize:rIt,resolve:nIt,resolveComponents:nAe,equal:sIt,serialize:Hu,parse:hd};mN.exports=HW;mN.exports.default=HW;mN.exports.fastUri=HW});var hN=E(Gu=>{"use strict";Object.defineProperty(Gu,"__esModule",{value:!0});Gu.formatNames=Gu.fastFormats=Gu.fullFormats=void 0;function Qu(t,e){return{validate:t,compare:e}}Gu.fullFormats={date:Qu(oAe,KW),time:Qu(VW(!0),YW),"date-time":Qu(sAe(!0),uAe),"iso-time":Qu(VW(),cAe),"iso-date-time":Qu(sAe(),lAe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:pIt,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:bIt,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:mIt,int32:{type:"number",validate:AIt},int64:{type:"number",validate:yIt},float:{type:"number",validate:aAe},double:{type:"number",validate:aAe},password:!0,binary:!0};Gu.fastFormats={...Gu.fullFormats,date:Qu(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,KW),time:Qu(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,YW),"date-time":Qu(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,uAe),"iso-time":Qu(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,cAe),"iso-date-time":Qu(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,lAe),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Gu.formatNames=Object.keys(Gu.fullFormats);function cIt(t){return t%4===0&&(t%100!==0||t%400===0)}var uIt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,lIt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function oAe(t){let e=uIt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&cIt(r)?29:lIt[n])}function KW(t,e){if(t&&e)return t>e?1:t23||l>59||t&&!o)return!1;if(s<=23&&i<=59&&a<60)return!0;let d=i-l*c,f=s-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&a<61}}function YW(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function cAe(t,e){if(!(t&&e))return;let r=GW.exec(t),n=GW.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t=hIt}function yIt(t){return Number.isInteger(t)}function aAe(){return!0}var xIt=/[^\\]\\Z/;function bIt(t){if(xIt.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var dAe=E(ny=>{"use strict";Object.defineProperty(ny,"__esModule",{value:!0});ny.formatLimitDefinition=void 0;var EIt=UW(),jc=zt(),Ep=jc.operators,gN={formatMaximum:{okStr:"<=",ok:Ep.LTE,fail:Ep.GT},formatMinimum:{okStr:">=",ok:Ep.GTE,fail:Ep.LT},formatExclusiveMaximum:{okStr:"<",ok:Ep.LT,fail:Ep.GTE},formatExclusiveMinimum:{okStr:">",ok:Ep.GT,fail:Ep.LTE}},_It={message:({keyword:t,schemaCode:e})=>(0,jc.str)`should be ${gN[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,jc._)`{comparison: ${gN[t].okStr}, limit: ${e}}`};ny.formatLimitDefinition={keyword:Object.keys(gN),type:"string",schemaType:"string",$data:!0,error:_It,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new EIt.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",(0,jc._)`${f}[${c.schemaCode}]`);t.fail$data((0,jc.or)((0,jc._)`typeof ${p} != "object"`,(0,jc._)`${p} instanceof RegExp`,(0,jc._)`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,jc._)`${a.code.formats}${(0,jc.getProperty)(f)}`:void 0});t.fail$data(d(m))}function d(f){return(0,jc._)`${f}.compare(${r}, ${n}) ${gN[s].fail} 0`}},dependencies:["format"]};var SIt=t=>(t.addKeyword(ny.formatLimitDefinition),t);ny.default=SIt});var hAe=E((F1,mAe)=>{"use strict";Object.defineProperty(F1,"__esModule",{value:!0});var sy=hN(),vIt=dAe(),JW=zt(),fAe=new JW.Name("fullFormats"),CIt=new JW.Name("fastFormats"),XW=(t,e={keywords:!0})=>{if(Array.isArray(e))return pAe(t,e,sy.fullFormats,fAe),t;let[r,n]=e.mode==="fast"?[sy.fastFormats,CIt]:[sy.fullFormats,fAe],s=e.formats||sy.formatNames;return pAe(t,s,r,n),e.keywords&&(0,vIt.default)(t),t};XW.get=(t,e="full")=>{let n=(e==="fast"?sy.fastFormats:sy.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function pAe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=(0,JW._)`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}mAe.exports=F1=XW;Object.defineProperty(F1,"__esModule",{value:!0});F1.default=XW});var e$=E((Q3r,gAe)=>{"use strict";var IIt=UW(),TIt=QW(),wIt=hAe(),RIt=NR()({proto:!0}),ZW=class t{constructor(e){this.ajv=new IIt({...e,strictSchema:!1,validateSchema:!1,allowUnionTypes:!0,uriResolver:TIt}),wIt(this.ajv),this.ajv.addKeyword({keyword:"fjs_type",type:"object",errors:!1,validate:(r,n)=>n instanceof Date}),this._ajvSchemas={},this._ajvOptions=e||{}}addSchema(e,r){let n=e.$id||r;if(e.$id!==void 0&&e.$id[0]==="#"&&(n=r+e.$id),this.ajv.refs[n]===void 0&&this.ajv.schemas[n]===void 0){let s=RIt(e);this.convertSchemaToAjvFormat(s),this.ajv.addSchema(s,n),this._ajvSchemas[n]=e}}validate(e,r){return this.ajv.validate(e,r)}convertSchemaToAjvFormat(e){if(e!==null){e.type==="string"?(e.fjs_type="string",e.type=["string","object"]):Array.isArray(e.type)&&e.type.includes("string")&&!e.type.includes("object")&&(e.fjs_type="string",e.type.push("object"));for(let r in e)typeof e[r]=="object"&&this.convertSchemaToAjvFormat(e[r])}}getState(){return{ajvOptions:this._ajvOptions,ajvSchemas:this._ajvSchemas}}static restoreFromState(e){let r=new t(e.ajvOptions);for(let[n,s]of Object.entries(e.ajvSchemas))r.ajv.addSchema(s,n);return r}};gAe.exports=ZW});var r$=E((G3r,t$)=>{"use strict";function NIt(t,e,r,n){let s="";e.validatorSchemasIds.size>0?(s+=`const Validator = require('fast-json-stringify/lib/validator') `,s+=`const validatorState = ${JSON.stringify(n.getState())} `,s+=`const validator = Validator.restoreFromState(validatorState) `):s+=`const validator = null @@ -147,7 +147,7 @@ ${b}`),h.pop(),`{${I}}`}case"number":return isFinite(m)?String(m):e?e(m):"null"; ${s} - module.exports = ${t.toString()}(validator, serializer)`}e$.exports=wCt;e$.exports.dependencies={Serializer:r8(),Validator:ZW()}});var hAe=E((qkr,mAe)=>{"use strict";var{dependencies:RCt}=t$(),{Serializer:NCt,Validator:Ukr}=RCt,OCt={mode:"standalone"},PCt=NCt.restoreFromState(OCt),kCt=null;mAe.exports=function(e,r){function n(i){let a=i&&typeof i.toJSON=="function"?i.toJSON():i;if(a===null)return"{}";let o=!1,c="{";return a.statusCode!==void 0&&(!o&&(o=!0)||(c+=","),c+='"statusCode":',c+=r.asNumber(a.statusCode)),a.code!==void 0&&(!o&&(o=!0)||(c+=","),c+='"code":',c+=r.asString(a.code)),a.error!==void 0&&(!o&&(o=!0)||(c+=","),c+='"error":',c+=r.asString(a.error)),a.message!==void 0&&(!o&&(o=!0)||(c+=","),c+='"message":',c+=r.asString(a.message)),c+"}"}return n}(kCt,PCt)});var F1=E((jkr,xAe)=>{"use strict";var gAe=require("node:http").STATUS_CODES,DCt=Z6(),{kReplyHeaders:km,kReplyNextErrorHandler:hN,kReplyIsRunningOnErrorHook:BCt,kReplyHasStatusCode:LCt,kRouteContext:yAe}=Gs(),{FST_ERR_REP_INVALID_PAYLOAD_TYPE:MCt,FST_ERR_FAILED_ERROR_SERIALIZATION:WCt}=Ci(),{getSchemaSerializer:$Ct}=c1(),r$=hAe(),FCt={func:qCt,toJSON(){return this.func.name.toString()+"()"}};function UCt(t,e,r){t[BCt]=!1;let n=t[yAe];if(t[hN]===!1){AAe(e,t,function(o,c){try{o.raw.writeHead(o.raw.statusCode,o[km])}catch(u){o.log.warn({req:o.request,res:o,err:u},u&&u.message),o.raw.writeHead(o.raw.statusCode)}o.raw.end(c)});return}let s=t[hN]||n.errorHandler;t[hN]=Object.getPrototypeOf(s),delete t[km]["content-type"],delete t[km]["content-length"];let i=s.func;if(!i){t[hN]=!1,AAe(e,t,r);return}let a=i(e,t.request,t);a!==void 0&&(a!==null&&typeof a.then=="function"?DCt(a,t):t.send(a))}function qCt(t,e,r){if(HCt(t,r),!r[LCt]||r.statusCode===200){let n=t.statusCode||t.status;r.code(n>=400?n:500)}r.statusCode<500?r.log.info({res:r,err:t},t&&t.message):r.log.error({req:e,res:r,err:t},t&&t.message),r.send(t)}function AAe(t,e,r){let n=e.raw,s=e.statusCode;e[km]["content-type"]=e[km]["content-type"]??"application/json; charset=utf-8";let i;try{let a=$Ct(e[yAe],s,e[km]["content-type"]);i=a===!1?r$({error:gAe[s+""],code:t.code,message:t.message,statusCode:s}):a(Object.create(t,{error:{value:gAe[s+""]},message:{value:t.message},statusCode:{value:s}}))}catch(a){e.log.error({err:a,statusCode:n.statusCode},"The serializer for the given status code failed"),e.code(500),i=r$(new WCt(a.message,t.message))}typeof i!="string"&&!Buffer.isBuffer(i)&&(i=r$(new MCt(typeof i))),e[km]["content-length"]=""+Buffer.byteLength(i),r(e,i)}function jCt(t=FCt,e){if(!e)return t;let r=Object.create(t);return r.func=e,r}function HCt(t,e){let r=e.raw,n=r.statusCode;n=n>=400?n:500,t!=null&&(t.headers!==void 0&&e.headers(t.headers),t.status>=400?n=t.status:t.statusCode>=400&&(n=t.statusCode)),r.statusCode=n}xAe.exports={buildErrorHandler:jCt,handleError:UCt}});var EN=E((Hkr,bN)=>{"use strict";var a$=require("node:stream").finished,QCt=require("node:stream").Readable,{kFourOhFourContext:bAe,kPublicRouteContext:EAe,kReplyErrorHandlerCalled:RAe,kReplyHijacked:U1,kReplyStartTime:q1,kReplyEndTime:c$,kReplySerializer:hd,kReplySerializerDefault:AN,kReplyIsError:yN,kReplyHeaders:bn,kReplyTrailers:Ks,kReplyHasStatusCode:u$,kReplyIsRunningOnErrorHook:l$,kReplyNextErrorHandler:GCt,kDisableRequestLogging:NAe,kSchemaResponse:xN,kReplyCacheSerializeFns:Ep,kSchemaController:n$,kOptions:KCt,kRouteContext:tr}=Gs(),{onSendHookRunner:OAe,onResponseHookRunner:VCt,preHandlerHookRunner:zCt,preSerializationHookRunner:YCt}=cp(),_Ae=n5()[Symbol.for("internals")],JCt=o1(),o$=JCt.now,{handleError:SAe}=F1(),{getSchemaSerializer:XCt}=c1(),s$={JSON:"application/json; charset=utf-8",PLAIN:"text/plain; charset=utf-8",OCTET:"application/octet-stream"},{FST_ERR_REP_INVALID_PAYLOAD_TYPE:ZCt,FST_ERR_REP_RESPONSE_BODY_CONSUMED:eTt,FST_ERR_REP_ALREADY_SENT:PAe,FST_ERR_REP_SENT_VALUE:tTt,FST_ERR_SEND_INSIDE_ONERR:rTt,FST_ERR_BAD_STATUS_CODE:nTt,FST_ERR_BAD_TRAILER_NAME:sTt,FST_ERR_BAD_TRAILER_VALUE:iTt,FST_ERR_MISSING_SERIALIZATION_FN:aTt,FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:oTt}=Ci(),{FSTDEP010:cTt,FSTDEP013:uTt,FSTDEP019:lTt,FSTDEP020:dTt}=od(),kAe=Object.prototype.toString;function dn(t,e,r){this.raw=t,this[hd]=null,this[RAe]=!1,this[yN]=!1,this[l$]=!1,this.request=e,this[bn]={},this[Ks]=null,this[u$]=!1,this[q1]=void 0,this.log=r}dn.props=[];Object.defineProperties(dn.prototype,{[tr]:{get(){return this.request[tr]}},context:{get(){return lTt(),this.request[tr]}},elapsedTime:{get(){return this[q1]===void 0?0:(this[c$]||o$())-this[q1]}},server:{get(){return this.request[tr].server}},sent:{enumerable:!0,get(){return(this[U1]||this.raw.writableEnded)===!0},set(t){if(cTt(),t!==!0)throw new tTt;if(this.sent&&this[U1])throw new PAe(this.request.url,this.request.method);this[U1]=!0}},statusCode:{get(){return this.raw.statusCode},set(t){this.code(t)}},[EAe]:{get(){return this.request[EAe]}}});dn.prototype.hijack=function(){return this[U1]=!0,this};dn.prototype.send=function(t){if(this[l$]===!0)throw new rTt;if(this.sent)return this.log.warn({err:new PAe(this.request.url,this.request.method)}),this;if(t instanceof Error||this[yN]===!0)return this[yN]=!1,j1(this,t,Dm),this;if(t===void 0)return Dm(this,t),this;let e=this.getHeader("content-type"),r=e!==void 0;if(t!==null){if(typeof t.pipe=="function"||typeof t.getReader=="function"||kAe.call(t)==="[object Response]")return Dm(this,t),this;if(t?.buffer instanceof ArrayBuffer){r===!1&&(this[bn]["content-type"]=s$.OCTET);let n=Buffer.isBuffer(t)?t:Buffer.from(t.buffer,t.byteOffset,t.byteLength);return Dm(this,n),this}if(r===!1&&typeof t=="string")return this[bn]["content-type"]=s$.PLAIN,Dm(this,t),this}if(this[hd]!==null){if(typeof t!="string")return vAe(this,t),this;t=this[hd](t)}else if(r===!1||e.indexOf("json")>-1){if(r===!1)this[bn]["content-type"]=s$.JSON;else if(e.indexOf("charset")===-1){let n=e.trim();n.endsWith(";")?this[bn]["content-type"]=`${n} charset=utf-8`:this[bn]["content-type"]=`${n}; charset=utf-8`}if(typeof t!="string")return vAe(this,t),this}return Dm(this,t),this};dn.prototype.getHeader=function(t){t=t.toLowerCase();let e=this.raw,r=this[bn][t];return r===void 0&&e.hasHeader(t)&&(r=e.getHeader(t)),r};dn.prototype.getHeaders=function(){return{...this.raw.getHeaders(),...this[bn]}};dn.prototype.hasHeader=function(t){return t=t.toLowerCase(),this[bn][t]!==void 0||this.raw.hasHeader(t)};dn.prototype.removeHeader=function(t){return delete this[bn][t.toLowerCase()],this};dn.prototype.header=function(t,e=""){return t=t.toLowerCase(),this[bn][t]&&t==="set-cookie"?(typeof this[bn][t]=="string"&&(this[bn][t]=[this[bn][t]]),Array.isArray(e)?Array.prototype.push.apply(this[bn][t],e):this[bn][t].push(e)):this[bn][t]=e,this};dn.prototype.headers=function(t){let e=Object.keys(t);for(var r=0;r!==e.length;++r){let n=e[r];this.header(n,t[n])}return this};var fTt=new Set(["transfer-encoding","content-length","host","cache-control","max-forwards","te","authorization","set-cookie","content-encoding","content-type","content-range","trailer"]);dn.prototype.trailer=function(t,e){if(t=t.toLowerCase(),fTt.has(t))throw new sTt(t);if(typeof e!="function")throw new iTt(t,typeof e);return this[Ks]===null&&(this[Ks]={}),this[Ks][t]=e,this};dn.prototype.hasTrailer=function(t){return this[Ks]?.[t.toLowerCase()]!==void 0};dn.prototype.removeTrailer=function(t){return this[Ks]===null?this:(this[Ks][t.toLowerCase()]=void 0,this)};dn.prototype.code=function(t){let e=Number(t);if(isNaN(e)||e<100||e>599)throw new nTt(t||String(t));return this.raw.statusCode=e,this[u$]=!0,this};dn.prototype.status=dn.prototype.code;dn.prototype.getSerializationFunction=function(t,e){let r;return typeof t=="string"||typeof t=="number"?typeof e=="string"?r=this[tr][xN]?.[t]?.[e]:r=this[tr][xN]?.[t]:typeof t=="object"&&(r=this[tr][Ep]?.get(t)),r};dn.prototype.compileSerializationSchema=function(t,e=null,r=null){let{request:n}=this,{method:s,url:i}=n;if(this[tr][Ep]?.has(t))return this[tr][Ep].get(t);let o=(this[tr].serializerCompiler||this.server[n$].serializerCompiler||this.server[n$].setupSerializer(this.server[KCt])||this.server[n$].serializerCompiler)({schema:t,method:s,url:i,httpStatus:e,contentType:r});return this[tr][Ep]==null&&(this[tr][Ep]=new WeakMap),this[tr][Ep].set(t,o),o};dn.prototype.serializeInput=function(t,e,r,n){let s=r,i;if(r=typeof e=="string"||typeof e=="number"?e:r,n=r&&s!==r?s:n,r!=null){if(n!=null?i=this[tr][xN]?.[r]?.[n]:i=this[tr][xN]?.[r],i==null)throw n?new oTt(r,n):new aTt(r)}else this[tr][Ep]?.has(e)?i=this[tr][Ep].get(e):i=this.compileSerializationSchema(e,r,n);return i(t)};dn.prototype.serialize=function(t){return this[hd]!==null?this[hd](t):this[tr]&&this[tr][AN]?this[tr][AN](t,this.raw.statusCode):LAe(this[tr],t,this.raw.statusCode)};dn.prototype.serializer=function(t){return this[hd]=t,this};dn.prototype.type=function(t){return this[bn]["content-type"]=t,this};dn.prototype.redirect=function(t,e){return typeof t=="string"&&(e=t,t=this[u$]?this.raw.statusCode:302),this.header("location",e).code(t).send()};dn.prototype.callNotFound=function(){return yTt(this),this};dn.prototype.getResponseTime=function(){return dTt(),this.elapsedTime};dn.prototype.then=function(t,e){if(this.sent){t();return}a$(this.raw,r=>{r&&r.code!=="ERR_STREAM_PREMATURE_CLOSE"?e?e(r):this.log&&this.log.warn("unhandled rejection on reply.then"):t()})};function vAe(t,e){t[tr].preSerialization!==null?YCt(t[tr].preSerialization,t.request,t,e,IAe):IAe(null,t.request,t,e)}function IAe(t,e,r,n){if(t!=null){j1(r,t);return}try{r[hd]!==null?n=r[hd](n):r[tr]&&r[tr][AN]?n=r[tr][AN](n,r.raw.statusCode):n=LAe(r[tr],n,r.raw.statusCode,r[bn]["content-type"])}catch(s){pTt(s,r),j1(r,s);return}Dm(r,n)}function pTt(t,e){t.serialization=e[tr].config}function Dm(t,e){t[tr].onSend!==null?OAe(t[tr].onSend,t.request,t,e,mTt):DAe(t,e)}function mTt(t,e,r,n){t!=null?j1(r,t):DAe(r,n)}function i$(t,e){let r=t.raw;try{r.writeHead(e,t[bn])}catch(n){throw n.code==="ERR_HTTP_HEADERS_SENT"&&t.log.warn(`Reply was already sent, did you forget to "return reply" in the "${t.request.raw.url}" (${t.request.raw.method}) route?`),n}}function DAe(t,e){let r=t.raw,n=t.request;if(t[Ks]!==null){let a=Object.keys(t[Ks]),o="";for(let c of a)typeof t[Ks][c]=="function"&&(o+=" ",o+=c);t.header("Transfer-Encoding","chunked"),t.header("Trailer",o.trim())}let s=kAe.call(e)==="[object Response]";s&&typeof e.status=="number"&&t.code(e.status);let i=r.statusCode;if(e==null){i>=200&&i!==204&&i!==304&&n.method!=="HEAD"&&t[Ks]===null&&(t[bn]["content-length"]="0"),i$(t,i),gN(e,r,t);return}if(i>=100&&i<200||i===204){t.removeHeader("content-type"),t.removeHeader("content-length"),i$(t,i),gN(void 0,r,t),typeof e.resume=="function"&&(e.on("error",MAe),e.resume());return}if(typeof e.pipe=="function"){BAe(e,r,t);return}if(typeof e.getReader=="function"){TAe(e,r,t);return}if(s){if(typeof e.headers=="object"&&typeof e.headers.forEach=="function")for(let[a,o]of e.headers)t.header(a,o);if(e.body!=null){if(e.bodyUsed)throw new eTt;TAe(e.body,r,t)}return}if(typeof e!="string"&&!Buffer.isBuffer(e))throw new ZCt(typeof e);if(t[Ks]===null){let a=t[bn]["content-length"];(!a||n.raw.method!=="HEAD"&&Number(a)!==Buffer.byteLength(e))&&(t[bn]["content-length"]=""+Buffer.byteLength(e))}i$(t,i),r.write(e),gN(e,r,t)}function CAe(t,e,r){e.code==="ERR_STREAM_PREMATURE_CLOSE"?t[NAe]||t.info({res:r},"stream closed prematurely"):t.warn({err:e},"response terminated with an error with headers already sent")}function TAe(t,e,r){let n=QCt.fromWeb(t);BAe(n,e,r)}function BAe(t,e,r){let n=!0,s=!1;if(hTt(t,e,r),a$(t,{readable:!0,writable:!1},function(i){n=!1,i!=null&&(e.headersSent||r.request.raw.aborted===!0?(s||(s=!0,CAe(r.log,i,e)),e.destroy()):j1(r,i))}),a$(e,function(i){n&&(i!=null&&e.headersSent&&!s&&(s=!0,CAe(r.log,i,e)),typeof t.destroy=="function"?t.destroy():typeof t.close=="function"?t.close(MAe):typeof t.abort=="function"?t.abort():r.log.warn("stream payload does not end properly"))}),e.headersSent)r.log.warn("response will send, but you shouldn't use res.writeHead in stream mode");else for(let i in r[bn])e.setHeader(i,r[bn][i]);t.pipe(e)}function gN(t,e,r){if(r[Ks]===null){e.end(null,null,null);return}let n=Object.keys(r[Ks]),s={},i=0,a=!0;function o(){i===0&&(e.addTrailers(s),e.end(null,null,null))}for(let c of n){let u=function(d,f){i++,d?r.log.debug(d):s[c]=f,process.nextTick(o)};if(typeof r[Ks][c]!="function")continue;a=!1,i--;let l=r[Ks][c](r,t,u);typeof l=="object"&&typeof l.then=="function"?l.then(d=>u(null,d),u):l!=null&&(uTt(),u(null,l))}a&&e.end(null,null,null)}function hTt(t,e,r){r[Ks]!==null&&t.on("end",()=>gN(null,e,r))}function j1(t,e,r){t[tr].onError!==null&&!t[GCt]?(t[l$]=!0,OAe(t[tr].onError,t.request,t,e,()=>SAe(t,e,r))):SAe(t,e,r)}function gTt(t){t[q1]=o$();let e=r=>{t[c$]=o$(),t.raw.removeListener("finish",e),t.raw.removeListener("error",e);let n=t[tr];n&&n.onResponse!==null?VCt(n.onResponse,t.request,t,wAe):wAe(r,t.request,t)};t.raw.on("finish",e),t.raw.on("error",e)}function wAe(t,e,r){if(r.log[NAe])return;let n=r.elapsedTime;if(t!=null){r.log.error({res:r,err:t,responseTime:n},"request errored");return}r.log.info({res:r,responseTime:n},"request completed")}function ATt(t){let e=t.props.slice();function r(n,s,i){this.raw=n,this[yN]=!1,this[RAe]=!1,this[U1]=!1,this[hd]=null,this.request=s,this[bn]={},this[Ks]=null,this[q1]=void 0,this[c$]=void 0,this.log=i;for(var a,o=0;o{"use strict";WAe.exports=xTt;function xTt(t){if(!t)throw new TypeError("argument req is required");var e=ETt(t.headers["x-forwarded-for"]||""),r=bTt(t),n=[r].concat(e);return n}function bTt(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function ETt(t){for(var e=t.length,r=[],n=t.length,s=t.length-1;s>=0;s--)switch(t.charCodeAt(s)){case 32:n===e&&(n=e=s);break;case 44:n!==e&&r.push(t.substring(n,e)),n=e=s;break;default:n=s;break}return n!==e&&r.push(t.substring(n,e)),r}});var UAe=E((FAe,H1)=>{(function(){var t,e,r,n,s,i,a,o,c;e={},o=this,typeof H1<"u"&&H1!==null&&H1.exports?H1.exports=e:o.ipaddr=e,a=function(u,l,d,f){var p,m;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(p=0;f>0;){if(m=d-f,m<0&&(m=0),u[p]>>m!==l[p]>>m)return!1;f-=d,p+=1}return!0},e.subnetMatch=function(u,l,d){var f,p,m,h,A;d==null&&(d="unicast");for(m in l)for(h=l[m],h[0]&&!(h[0]instanceof Array)&&(h=[h]),f=0,p=h.length;f=0;d=f+=-1)if(p=this.octets[d],p in A){if(h=A[p],m&&h!==0)return null;h!==8&&(m=!0),l+=h}else return null;return 32-l},u}(),r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp("^"+r+"\\."+r+"\\."+r+"\\."+r+"$","i"),longValue:new RegExp("^"+r+"$","i")},e.IPv4.parser=function(u){var l,d,f,p,m;if(d=function(h){return h[0]==="0"&&h[1]!=="x"?parseInt(h,8):parseInt(h)},l=u.match(n.fourOctet))return function(){var h,A,g,b;for(g=l.slice(1,6),b=[],h=0,A=g.length;h4294967295||m<0)throw new Error("ipaddr: address outside defined range");return function(){var h,A;for(A=[],p=h=0;h<=24;p=h+=8)A.push(m>>p&255);return A}().reverse()}else return null},e.IPv6=function(){function u(l,d){var f,p,m,h,A,g;if(l.length===16)for(this.parts=[],f=p=0;p<=14;f=p+=2)this.parts.push(l[f]<<8|l[f+1]);else if(l.length===8)this.parts=l;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(g=this.parts,m=0,h=g.length;md&&(l=f.index,d=f[0].length);return d<0?m:m.substring(0,l)+"::"+m.substring(l+d)},u.prototype.toByteArray=function(){var l,d,f,p,m;for(l=[],m=this.parts,d=0,f=m.length;d>8),l.push(p&255);return l},u.prototype.toNormalizedString=function(){var l,d,f;return l=function(){var p,m,h,A;for(h=this.parts,A=[],p=0,m=h.length;p>8,l&255,d>>8,d&255])},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,f,p,m,h,A;for(A={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},l=0,m=!1,d=f=7;f>=0;d=f+=-1)if(p=this.parts[d],p in A){if(h=A[p],m&&h!==0)return null;h!==16&&(m=!0),l+=h}else return null;return 128-l},u}(),s="(?:[0-9a-f]+::?)+",c="%[0-9a-z]{1,}",i={zoneIndex:new RegExp(c,"i"),native:new RegExp("^(::)?("+s+")?([0-9a-f]+)?(::)?("+c+")?$","i"),transitional:new RegExp("^((?:"+s+")|(?:::)(?:"+s+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+c+")?$"),"i")},t=function(u,l){var d,f,p,m,h,A;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(A=(u.match(i.zoneIndex)||[])[0],A&&(A=A.substring(1),u=u.replace(/%.+$/,"")),d=0,f=-1;(f=u.indexOf(":",f+1))>=0;)d++;if(u.substr(0,2)==="::"&&d--,u.substr(-2,2)==="::"&&d--,d>l)return null;for(h=l-d,m=":";h--;)m+="0:";return u=u.replace("::",m),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=function(){var g,b,y,x;for(y=u.split(":"),x=[],g=0,b=y.length;g=0&&l<=32))return f=[this.parse(d[1]),l],Object.defineProperty(f,"toString",{value:function(){return this.join("/")}}),f;throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},e.IPv4.subnetMaskFromPrefixLength=function(u){var l,d,f;if(u=parseInt(u),u<0||u>32)throw new Error("ipaddr: invalid IPv4 prefix length");for(f=[0,0,0,0],d=0,l=Math.floor(u/8);d=0&&l<=128))return f=[this.parse(d[1]),l],Object.defineProperty(f,"toString",{value:function(){return this.join("/")}}),f;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},e.isValid=function(u){return e.IPv6.isValid(u)||e.IPv4.isValid(u)},e.parse=function(u){if(e.IPv6.isValid(u))return e.IPv6.parse(u);if(e.IPv4.isValid(u))return e.IPv4.parse(u);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},e.parseCIDR=function(u){var l;try{return e.IPv6.parseCIDR(u)}catch(d){l=d;try{return e.IPv4.parseCIDR(u)}catch(f){throw l=f,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},e.fromByteArray=function(u){var l;if(l=u.length,l===4)return new e.IPv4(u);if(l===16)return new e.IPv6(u);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},e.process=function(u){var l;return l=this.parse(u),l.kind()==="ipv6"&&l.isIPv4MappedAddress()?l.toIPv4Address():l}}).call(FAe)});var GAe=E((Gkr,vN)=>{"use strict";vN.exports=wTt;vN.exports.all=HAe;vN.exports.compile=QAe;var _Tt=$Ae(),jAe=UAe(),STt=/^[0-9]+$/,_N=jAe.isValid,SN=jAe.parse,qAe={linklocal:["169.254.0.0/16","fe80::/10"],loopback:["127.0.0.1/8","::1/128"],uniquelocal:["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16","fc00::/7"]};function HAe(t,e){var r=_Tt(t);if(!e)return r;typeof e!="function"&&(e=QAe(e));for(var n=0;ns)throw new TypeError("invalid range on address: "+t);return[n,i]}function TTt(t){var e=SN(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function wTt(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=HAe(t,e),n=r[r.length-1];return n}function RTt(){return!1}function NTt(t){return function(r){if(!_N(r))return!1;for(var n=SN(r),s,i=n.kind(),a=0;a{"use strict";var PTt="2.0.0",kTt=Number.MAX_SAFE_INTEGER||9007199254740991,DTt=16,BTt=250,LTt=["major","premajor","minor","preminor","patch","prepatch","prerelease"];KAe.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:DTt,MAX_SAFE_BUILD_LENGTH:BTt,MAX_SAFE_INTEGER:kTt,RELEASE_TYPES:LTt,SEMVER_SPEC_VERSION:PTt,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var G1=E((Vkr,VAe)=>{"use strict";var MTt=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};VAe.exports=MTt});var iy=E((Ku,zAe)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:d$,MAX_SAFE_BUILD_LENGTH:WTt,MAX_LENGTH:$Tt}=Q1(),FTt=G1();Ku=zAe.exports={};var UTt=Ku.re=[],qTt=Ku.safeRe=[],Ge=Ku.src=[],jTt=Ku.safeSrc=[],Ke=Ku.t={},HTt=0,f$="[a-zA-Z0-9-]",QTt=[["\\s",1],["\\d",$Tt],[f$,WTt]],GTt=t=>{for(let[e,r]of QTt)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},Lt=(t,e,r)=>{let n=GTt(e),s=HTt++;FTt(t,s,e),Ke[t]=s,Ge[s]=e,jTt[s]=n,UTt[s]=new RegExp(e,r?"g":void 0),qTt[s]=new RegExp(n,r?"g":void 0)};Lt("NUMERICIDENTIFIER","0|[1-9]\\d*");Lt("NUMERICIDENTIFIERLOOSE","\\d+");Lt("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${f$}*`);Lt("MAINVERSION",`(${Ge[Ke.NUMERICIDENTIFIER]})\\.(${Ge[Ke.NUMERICIDENTIFIER]})\\.(${Ge[Ke.NUMERICIDENTIFIER]})`);Lt("MAINVERSIONLOOSE",`(${Ge[Ke.NUMERICIDENTIFIERLOOSE]})\\.(${Ge[Ke.NUMERICIDENTIFIERLOOSE]})\\.(${Ge[Ke.NUMERICIDENTIFIERLOOSE]})`);Lt("PRERELEASEIDENTIFIER",`(?:${Ge[Ke.NONNUMERICIDENTIFIER]}|${Ge[Ke.NUMERICIDENTIFIER]})`);Lt("PRERELEASEIDENTIFIERLOOSE",`(?:${Ge[Ke.NONNUMERICIDENTIFIER]}|${Ge[Ke.NUMERICIDENTIFIERLOOSE]})`);Lt("PRERELEASE",`(?:-(${Ge[Ke.PRERELEASEIDENTIFIER]}(?:\\.${Ge[Ke.PRERELEASEIDENTIFIER]})*))`);Lt("PRERELEASELOOSE",`(?:-?(${Ge[Ke.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${Ge[Ke.PRERELEASEIDENTIFIERLOOSE]})*))`);Lt("BUILDIDENTIFIER",`${f$}+`);Lt("BUILD",`(?:\\+(${Ge[Ke.BUILDIDENTIFIER]}(?:\\.${Ge[Ke.BUILDIDENTIFIER]})*))`);Lt("FULLPLAIN",`v?${Ge[Ke.MAINVERSION]}${Ge[Ke.PRERELEASE]}?${Ge[Ke.BUILD]}?`);Lt("FULL",`^${Ge[Ke.FULLPLAIN]}$`);Lt("LOOSEPLAIN",`[v=\\s]*${Ge[Ke.MAINVERSIONLOOSE]}${Ge[Ke.PRERELEASELOOSE]}?${Ge[Ke.BUILD]}?`);Lt("LOOSE",`^${Ge[Ke.LOOSEPLAIN]}$`);Lt("GTLT","((?:<|>)?=?)");Lt("XRANGEIDENTIFIERLOOSE",`${Ge[Ke.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Lt("XRANGEIDENTIFIER",`${Ge[Ke.NUMERICIDENTIFIER]}|x|X|\\*`);Lt("XRANGEPLAIN",`[v=\\s]*(${Ge[Ke.XRANGEIDENTIFIER]})(?:\\.(${Ge[Ke.XRANGEIDENTIFIER]})(?:\\.(${Ge[Ke.XRANGEIDENTIFIER]})(?:${Ge[Ke.PRERELEASE]})?${Ge[Ke.BUILD]}?)?)?`);Lt("XRANGEPLAINLOOSE",`[v=\\s]*(${Ge[Ke.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ge[Ke.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ge[Ke.XRANGEIDENTIFIERLOOSE]})(?:${Ge[Ke.PRERELEASELOOSE]})?${Ge[Ke.BUILD]}?)?)?`);Lt("XRANGE",`^${Ge[Ke.GTLT]}\\s*${Ge[Ke.XRANGEPLAIN]}$`);Lt("XRANGELOOSE",`^${Ge[Ke.GTLT]}\\s*${Ge[Ke.XRANGEPLAINLOOSE]}$`);Lt("COERCEPLAIN",`(^|[^\\d])(\\d{1,${d$}})(?:\\.(\\d{1,${d$}}))?(?:\\.(\\d{1,${d$}}))?`);Lt("COERCE",`${Ge[Ke.COERCEPLAIN]}(?:$|[^\\d])`);Lt("COERCEFULL",Ge[Ke.COERCEPLAIN]+`(?:${Ge[Ke.PRERELEASE]})?(?:${Ge[Ke.BUILD]})?(?:$|[^\\d])`);Lt("COERCERTL",Ge[Ke.COERCE],!0);Lt("COERCERTLFULL",Ge[Ke.COERCEFULL],!0);Lt("LONETILDE","(?:~>?)");Lt("TILDETRIM",`(\\s*)${Ge[Ke.LONETILDE]}\\s+`,!0);Ku.tildeTrimReplace="$1~";Lt("TILDE",`^${Ge[Ke.LONETILDE]}${Ge[Ke.XRANGEPLAIN]}$`);Lt("TILDELOOSE",`^${Ge[Ke.LONETILDE]}${Ge[Ke.XRANGEPLAINLOOSE]}$`);Lt("LONECARET","(?:\\^)");Lt("CARETTRIM",`(\\s*)${Ge[Ke.LONECARET]}\\s+`,!0);Ku.caretTrimReplace="$1^";Lt("CARET",`^${Ge[Ke.LONECARET]}${Ge[Ke.XRANGEPLAIN]}$`);Lt("CARETLOOSE",`^${Ge[Ke.LONECARET]}${Ge[Ke.XRANGEPLAINLOOSE]}$`);Lt("COMPARATORLOOSE",`^${Ge[Ke.GTLT]}\\s*(${Ge[Ke.LOOSEPLAIN]})$|^$`);Lt("COMPARATOR",`^${Ge[Ke.GTLT]}\\s*(${Ge[Ke.FULLPLAIN]})$|^$`);Lt("COMPARATORTRIM",`(\\s*)${Ge[Ke.GTLT]}\\s*(${Ge[Ke.LOOSEPLAIN]}|${Ge[Ke.XRANGEPLAIN]})`,!0);Ku.comparatorTrimReplace="$1$2$3";Lt("HYPHENRANGE",`^\\s*(${Ge[Ke.XRANGEPLAIN]})\\s+-\\s+(${Ge[Ke.XRANGEPLAIN]})\\s*$`);Lt("HYPHENRANGELOOSE",`^\\s*(${Ge[Ke.XRANGEPLAINLOOSE]})\\s+-\\s+(${Ge[Ke.XRANGEPLAINLOOSE]})\\s*$`);Lt("STAR","(<|>)?=?\\s*\\*");Lt("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Lt("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var IN=E((zkr,YAe)=>{"use strict";var KTt=Object.freeze({loose:!0}),VTt=Object.freeze({}),zTt=t=>t?typeof t!="object"?KTt:t:VTt;YAe.exports=zTt});var p$=E((Ykr,ZAe)=>{"use strict";var JAe=/^[0-9]+$/,XAe=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:tXAe(e,t);ZAe.exports={compareIdentifiers:XAe,rcompareIdentifiers:YTt}});var Oi=E((Jkr,tye)=>{"use strict";var CN=G1(),{MAX_LENGTH:eye,MAX_SAFE_INTEGER:TN}=Q1(),{safeRe:wN,t:RN}=iy(),JTt=IN(),{compareIdentifiers:m$}=p$(),h$=class t{constructor(e,r){if(r=JTt(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>eye)throw new TypeError(`version is longer than ${eye} characters`);CN("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?wN[RN.LOOSE]:wN[RN.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>TN||this.major<0)throw new TypeError("Invalid major version");if(this.minor>TN||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>TN||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let i=+s;if(i>=0&&ie.major?1:this.minore.minor?1:this.patche.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=e.prerelease[r];if(CN("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return m$(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(CN("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return m$(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?wN[RN.PRERELEASELOOSE]:wN[RN.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let i=this.prerelease.length;for(;--i>=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);if(i===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let i=[r,s];n===!1&&(i=[r]),m$(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=i):this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};tye.exports=h$});var Bm=E((Xkr,nye)=>{"use strict";var rye=Oi(),XTt=(t,e,r=!1)=>{if(t instanceof rye)return t;try{return new rye(t,e)}catch(n){if(!r)return null;throw n}};nye.exports=XTt});var iye=E((Zkr,sye)=>{"use strict";var ZTt=Bm(),ewt=(t,e)=>{let r=ZTt(t,e);return r?r.version:null};sye.exports=ewt});var oye=E((eDr,aye)=>{"use strict";var twt=Bm(),rwt=(t,e)=>{let r=twt(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};aye.exports=rwt});var lye=E((tDr,uye)=>{"use strict";var cye=Oi(),nwt=(t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new cye(t instanceof cye?t.version:t,r).inc(e,n,s).version}catch{return null}};uye.exports=nwt});var pye=E((rDr,fye)=>{"use strict";var dye=Bm(),swt=(t,e)=>{let r=dye(t,null,!0),n=dye(e,null,!0),s=r.compare(n);if(s===0)return null;let i=s>0,a=i?r:n,o=i?n:r,c=!!a.prerelease.length;if(!!o.prerelease.length&&!c){if(!o.patch&&!o.minor)return"major";if(o.compareMain(a)===0)return o.minor&&!o.patch?"minor":"patch"}let l=c?"pre":"";return r.major!==n.major?l+"major":r.minor!==n.minor?l+"minor":r.patch!==n.patch?l+"patch":"prerelease"};fye.exports=swt});var hye=E((nDr,mye)=>{"use strict";var iwt=Oi(),awt=(t,e)=>new iwt(t,e).major;mye.exports=awt});var Aye=E((sDr,gye)=>{"use strict";var owt=Oi(),cwt=(t,e)=>new owt(t,e).minor;gye.exports=cwt});var xye=E((iDr,yye)=>{"use strict";var uwt=Oi(),lwt=(t,e)=>new uwt(t,e).patch;yye.exports=lwt});var Eye=E((aDr,bye)=>{"use strict";var dwt=Bm(),fwt=(t,e)=>{let r=dwt(t,e);return r&&r.prerelease.length?r.prerelease:null};bye.exports=fwt});var Yo=E((oDr,Sye)=>{"use strict";var _ye=Oi(),pwt=(t,e,r)=>new _ye(t,r).compare(new _ye(e,r));Sye.exports=pwt});var Iye=E((cDr,vye)=>{"use strict";var mwt=Yo(),hwt=(t,e,r)=>mwt(e,t,r);vye.exports=hwt});var Tye=E((uDr,Cye)=>{"use strict";var gwt=Yo(),Awt=(t,e)=>gwt(t,e,!0);Cye.exports=Awt});var NN=E((lDr,Rye)=>{"use strict";var wye=Oi(),ywt=(t,e,r)=>{let n=new wye(t,r),s=new wye(e,r);return n.compare(s)||n.compareBuild(s)};Rye.exports=ywt});var Oye=E((dDr,Nye)=>{"use strict";var xwt=NN(),bwt=(t,e)=>t.sort((r,n)=>xwt(r,n,e));Nye.exports=bwt});var kye=E((fDr,Pye)=>{"use strict";var Ewt=NN(),_wt=(t,e)=>t.sort((r,n)=>Ewt(n,r,e));Pye.exports=_wt});var K1=E((pDr,Dye)=>{"use strict";var Swt=Yo(),vwt=(t,e,r)=>Swt(t,e,r)>0;Dye.exports=vwt});var ON=E((mDr,Bye)=>{"use strict";var Iwt=Yo(),Cwt=(t,e,r)=>Iwt(t,e,r)<0;Bye.exports=Cwt});var g$=E((hDr,Lye)=>{"use strict";var Twt=Yo(),wwt=(t,e,r)=>Twt(t,e,r)===0;Lye.exports=wwt});var A$=E((gDr,Mye)=>{"use strict";var Rwt=Yo(),Nwt=(t,e,r)=>Rwt(t,e,r)!==0;Mye.exports=Nwt});var PN=E((ADr,Wye)=>{"use strict";var Owt=Yo(),Pwt=(t,e,r)=>Owt(t,e,r)>=0;Wye.exports=Pwt});var kN=E((yDr,$ye)=>{"use strict";var kwt=Yo(),Dwt=(t,e,r)=>kwt(t,e,r)<=0;$ye.exports=Dwt});var y$=E((xDr,Fye)=>{"use strict";var Bwt=g$(),Lwt=A$(),Mwt=K1(),Wwt=PN(),$wt=ON(),Fwt=kN(),Uwt=(t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Bwt(t,r,n);case"!=":return Lwt(t,r,n);case">":return Mwt(t,r,n);case">=":return Wwt(t,r,n);case"<":return $wt(t,r,n);case"<=":return Fwt(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};Fye.exports=Uwt});var qye=E((bDr,Uye)=>{"use strict";var qwt=Oi(),jwt=Bm(),{safeRe:DN,t:BN}=iy(),Hwt=(t,e)=>{if(t instanceof qwt)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?DN[BN.COERCEFULL]:DN[BN.COERCE]);else{let c=e.includePrerelease?DN[BN.COERCERTLFULL]:DN[BN.COERCERTL],u;for(;(u=c.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||u.index+u[0].length!==r.index+r[0].length)&&(r=u),c.lastIndex=u.index+u[1].length+u[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",i=r[4]||"0",a=e.includePrerelease&&r[5]?`-${r[5]}`:"",o=e.includePrerelease&&r[6]?`+${r[6]}`:"";return jwt(`${n}.${s}.${i}${a}${o}`,e)};Uye.exports=Hwt});var Hye=E((EDr,jye)=>{"use strict";var x$=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};jye.exports=x$});var Jo=E((_Dr,Vye)=>{"use strict";var Qwt=/\s+/g,b$=class t{constructor(e,r){if(r=Kwt(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof E$)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(Qwt," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!Gye(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&e2t(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e0&&(this.formatted+="||");let r=this.set[e];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){let n=((this.options.includePrerelease&&Xwt)|(this.options.loose&&Zwt))+":"+e,s=Qye.get(n);if(s)return s;let i=this.options.loose,a=i?ra[Pi.HYPHENRANGELOOSE]:ra[Pi.HYPHENRANGE];e=e.replace(a,l2t(this.options.includePrerelease)),On("hyphen replace",e),e=e.replace(ra[Pi.COMPARATORTRIM],zwt),On("comparator trim",e),e=e.replace(ra[Pi.TILDETRIM],Ywt),On("tilde trim",e),e=e.replace(ra[Pi.CARETTRIM],Jwt),On("caret trim",e);let o=e.split(" ").map(d=>t2t(d,this.options)).join(" ").split(/\s+/).map(d=>u2t(d,this.options));i&&(o=o.filter(d=>(On("loose invalid filter",d,this.options),!!d.match(ra[Pi.COMPARATORLOOSE])))),On("range list",o);let c=new Map,u=o.map(d=>new E$(d,this.options));for(let d of u){if(Gye(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let l=[...c.values()];return Qye.set(n,l),l}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>Kye(n,r)&&e.set.some(s=>Kye(s,r)&&n.every(i=>s.every(a=>i.intersects(a,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new Vwt(e,this.options)}catch{return!1}for(let r=0;rt.value==="<0.0.0-0",e2t=t=>t.value==="",Kye=(t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(i=>s.intersects(i,e)),s=n.pop();return r},t2t=(t,e)=>(t=t.replace(ra[Pi.BUILD],""),On("comp",t,e),t=s2t(t,e),On("caret",t),t=r2t(t,e),On("tildes",t),t=a2t(t,e),On("xrange",t),t=c2t(t,e),On("stars",t),t),na=t=>!t||t.toLowerCase()==="x"||t==="*",r2t=(t,e)=>t.trim().split(/\s+/).map(r=>n2t(r,e)).join(" "),n2t=(t,e)=>{let r=e.loose?ra[Pi.TILDELOOSE]:ra[Pi.TILDE];return t.replace(r,(n,s,i,a,o)=>{On("tilde",t,n,s,i,a,o);let c;return na(s)?c="":na(i)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:na(a)?c=`>=${s}.${i}.0 <${s}.${+i+1}.0-0`:o?(On("replaceTilde pr",o),c=`>=${s}.${i}.${a}-${o} <${s}.${+i+1}.0-0`):c=`>=${s}.${i}.${a} <${s}.${+i+1}.0-0`,On("tilde return",c),c})},s2t=(t,e)=>t.trim().split(/\s+/).map(r=>i2t(r,e)).join(" "),i2t=(t,e)=>{On("caret",t,e);let r=e.loose?ra[Pi.CARETLOOSE]:ra[Pi.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,i,a,o,c)=>{On("caret",t,s,i,a,o,c);let u;return na(i)?u="":na(a)?u=`>=${i}.0.0${n} <${+i+1}.0.0-0`:na(o)?i==="0"?u=`>=${i}.${a}.0${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.0${n} <${+i+1}.0.0-0`:c?(On("replaceCaret pr",c),i==="0"?a==="0"?u=`>=${i}.${a}.${o}-${c} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}-${c} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o}-${c} <${+i+1}.0.0-0`):(On("no pr"),i==="0"?a==="0"?u=`>=${i}.${a}.${o}${n} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o} <${+i+1}.0.0-0`),On("caret return",u),u})},a2t=(t,e)=>(On("replaceXRanges",t,e),t.split(/\s+/).map(r=>o2t(r,e)).join(" ")),o2t=(t,e)=>{t=t.trim();let r=e.loose?ra[Pi.XRANGELOOSE]:ra[Pi.XRANGE];return t.replace(r,(n,s,i,a,o,c)=>{On("xRange",t,n,s,i,a,o,c);let u=na(i),l=u||na(a),d=l||na(o),f=d;return s==="="&&f&&(s=""),c=e.includePrerelease?"-0":"",u?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&f?(l&&(a=0),o=0,s===">"?(s=">=",l?(i=+i+1,a=0,o=0):(a=+a+1,o=0)):s==="<="&&(s="<",l?i=+i+1:a=+a+1),s==="<"&&(c="-0"),n=`${s+i}.${a}.${o}${c}`):l?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${a}.0${c} <${i}.${+a+1}.0-0`),On("xRange return",n),n})},c2t=(t,e)=>(On("replaceStars",t,e),t.trim().replace(ra[Pi.STAR],"")),u2t=(t,e)=>(On("replaceGTE0",t,e),t.trim().replace(ra[e.includePrerelease?Pi.GTE0PRE:Pi.GTE0],"")),l2t=t=>(e,r,n,s,i,a,o,c,u,l,d,f)=>(na(n)?r="":na(s)?r=`>=${n}.0.0${t?"-0":""}`:na(i)?r=`>=${n}.${s}.0${t?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,na(u)?c="":na(l)?c=`<${+u+1}.0.0-0`:na(d)?c=`<${u}.${+l+1}.0-0`:f?c=`<=${u}.${l}.${d}-${f}`:t?c=`<${u}.${l}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),d2t=(t,e,r)=>{for(let n=0;n0){let s=t[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0}});var V1=E((SDr,exe)=>{"use strict";var z1=Symbol("SemVer ANY"),v$=class t{static get ANY(){return z1}constructor(e,r){if(r=zye(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),S$("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===z1?this.value="":this.value=this.operator+this.semver.version,S$("comp",this)}parse(e){let r=this.options.loose?Yye[Jye.COMPARATORLOOSE]:Yye[Jye.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Xye(n[2],this.options.loose):this.semver=z1}toString(){return this.value}test(e){if(S$("Comparator.test",e,this.options.loose),this.semver===z1||e===z1)return!0;if(typeof e=="string")try{e=new Xye(e,this.options)}catch{return!1}return _$(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Zye(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new Zye(this.value,r).test(e.semver):(r=zye(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||_$(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||_$(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};exe.exports=v$;var zye=IN(),{safeRe:Yye,t:Jye}=iy(),_$=y$(),S$=G1(),Xye=Oi(),Zye=Jo()});var Y1=E((vDr,txe)=>{"use strict";var f2t=Jo(),p2t=(t,e,r)=>{try{e=new f2t(e,r)}catch{return!1}return e.test(t)};txe.exports=p2t});var nxe=E((IDr,rxe)=>{"use strict";var m2t=Jo(),h2t=(t,e)=>new m2t(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));rxe.exports=h2t});var ixe=E((CDr,sxe)=>{"use strict";var g2t=Oi(),A2t=Jo(),y2t=(t,e,r)=>{let n=null,s=null,i=null;try{i=new A2t(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new g2t(n,r))}),n};sxe.exports=y2t});var oxe=E((TDr,axe)=>{"use strict";var x2t=Oi(),b2t=Jo(),E2t=(t,e,r)=>{let n=null,s=null,i=null;try{i=new b2t(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new x2t(n,r))}),n};axe.exports=E2t});var lxe=E((wDr,uxe)=>{"use strict";var I$=Oi(),_2t=Jo(),cxe=K1(),S2t=(t,e)=>{t=new _2t(t,e);let r=new I$("0.0.0");if(t.test(r)||(r=new I$("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n{let o=new I$(a.semver.version);switch(a.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!i||cxe(o,i))&&(i=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),i&&(!r||cxe(r,i))&&(r=i)}return r&&t.test(r)?r:null};uxe.exports=S2t});var fxe=E((RDr,dxe)=>{"use strict";var v2t=Jo(),I2t=(t,e)=>{try{return new v2t(t,e).range||"*"}catch{return null}};dxe.exports=I2t});var LN=E((NDr,gxe)=>{"use strict";var C2t=Oi(),hxe=V1(),{ANY:T2t}=hxe,w2t=Jo(),R2t=Y1(),pxe=K1(),mxe=ON(),N2t=kN(),O2t=PN(),P2t=(t,e,r,n)=>{t=new C2t(t,n),e=new w2t(e,n);let s,i,a,o,c;switch(r){case">":s=pxe,i=N2t,a=mxe,o=">",c=">=";break;case"<":s=mxe,i=O2t,a=pxe,o="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(R2t(t,e,n))return!1;for(let u=0;u{p.semver===T2t&&(p=new hxe(">=0.0.0")),d=d||p,f=f||p,s(p.semver,d.semver,n)?d=p:a(p.semver,f.semver,n)&&(f=p)}),d.operator===o||d.operator===c||(!f.operator||f.operator===o)&&i(t,f.semver))return!1;if(f.operator===c&&a(t,f.semver))return!1}return!0};gxe.exports=P2t});var yxe=E((ODr,Axe)=>{"use strict";var k2t=LN(),D2t=(t,e,r)=>k2t(t,e,">",r);Axe.exports=D2t});var bxe=E((PDr,xxe)=>{"use strict";var B2t=LN(),L2t=(t,e,r)=>B2t(t,e,"<",r);xxe.exports=L2t});var Sxe=E((kDr,_xe)=>{"use strict";var Exe=Jo(),M2t=(t,e,r)=>(t=new Exe(t,r),e=new Exe(e,r),t.intersects(e,r));_xe.exports=M2t});var Ixe=E((DDr,vxe)=>{"use strict";var W2t=Y1(),$2t=Yo();vxe.exports=(t,e,r)=>{let n=[],s=null,i=null,a=t.sort((l,d)=>$2t(l,d,r));for(let l of a)W2t(l,e,r)?(i=l,s||(s=l)):(i&&n.push([s,i]),i=null,s=null);s&&n.push([s,null]);let o=[];for(let[l,d]of n)l===d?o.push(l):!d&&l===a[0]?o.push("*"):d?l===a[0]?o.push(`<=${d}`):o.push(`${l} - ${d}`):o.push(`>=${l}`);let c=o.join(" || "),u=typeof e.raw=="string"?e.raw:String(e);return c.length{"use strict";var Cxe=Jo(),T$=V1(),{ANY:C$}=T$,J1=Y1(),w$=Yo(),F2t=(t,e,r={})=>{if(t===e)return!0;t=new Cxe(t,r),e=new Cxe(e,r);let n=!1;e:for(let s of t.set){for(let i of e.set){let a=q2t(s,i,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},U2t=[new T$(">=0.0.0-0")],Txe=[new T$(">=0.0.0")],q2t=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===C$){if(e.length===1&&e[0].semver===C$)return!0;r.includePrerelease?t=U2t:t=Txe}if(e.length===1&&e[0].semver===C$){if(r.includePrerelease)return!0;e=Txe}let n=new Set,s,i;for(let p of t)p.operator===">"||p.operator===">="?s=wxe(s,p,r):p.operator==="<"||p.operator==="<="?i=Rxe(i,p,r):n.add(p.semver);if(n.size>1)return null;let a;if(s&&i){if(a=w$(s.semver,i.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let p of n){if(s&&!J1(p,String(s),r)||i&&!J1(p,String(i),r))return null;for(let m of e)if(!J1(p,String(m),r))return!1;return!0}let o,c,u,l,d=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1,f=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;d&&d.prerelease.length===1&&i.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let p of e){if(l=l||p.operator===">"||p.operator===">=",u=u||p.operator==="<"||p.operator==="<=",s){if(f&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===f.major&&p.semver.minor===f.minor&&p.semver.patch===f.patch&&(f=!1),p.operator===">"||p.operator===">="){if(o=wxe(s,p,r),o===p&&o!==s)return!1}else if(s.operator===">="&&!J1(s.semver,String(p),r))return!1}if(i){if(d&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===d.major&&p.semver.minor===d.minor&&p.semver.patch===d.patch&&(d=!1),p.operator==="<"||p.operator==="<="){if(c=Rxe(i,p,r),c===p&&c!==i)return!1}else if(i.operator==="<="&&!J1(i.semver,String(p),r))return!1}if(!p.operator&&(i||s)&&a!==0)return!1}return!(s&&u&&!i&&a!==0||i&&l&&!s&&a!==0||f||d)},wxe=(t,e,r)=>{if(!t)return e;let n=w$(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},Rxe=(t,e,r)=>{if(!t)return e;let n=w$(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};Nxe.exports=F2t});var N$=E((LDr,Dxe)=>{"use strict";var R$=iy(),Pxe=Q1(),j2t=Oi(),kxe=p$(),H2t=Bm(),Q2t=iye(),G2t=oye(),K2t=lye(),V2t=pye(),z2t=hye(),Y2t=Aye(),J2t=xye(),X2t=Eye(),Z2t=Yo(),eRt=Iye(),tRt=Tye(),rRt=NN(),nRt=Oye(),sRt=kye(),iRt=K1(),aRt=ON(),oRt=g$(),cRt=A$(),uRt=PN(),lRt=kN(),dRt=y$(),fRt=qye(),pRt=V1(),mRt=Jo(),hRt=Y1(),gRt=nxe(),ARt=ixe(),yRt=oxe(),xRt=lxe(),bRt=fxe(),ERt=LN(),_Rt=yxe(),SRt=bxe(),vRt=Sxe(),IRt=Ixe(),CRt=Oxe();Dxe.exports={parse:H2t,valid:Q2t,clean:G2t,inc:K2t,diff:V2t,major:z2t,minor:Y2t,patch:J2t,prerelease:X2t,compare:Z2t,rcompare:eRt,compareLoose:tRt,compareBuild:rRt,sort:nRt,rsort:sRt,gt:iRt,lt:aRt,eq:oRt,neq:cRt,gte:uRt,lte:lRt,cmp:dRt,coerce:fRt,Comparator:pRt,Range:mRt,satisfies:hRt,toComparators:gRt,maxSatisfying:ARt,minSatisfying:yRt,minVersion:xRt,validRange:bRt,outside:ERt,gtr:_Rt,ltr:SRt,intersects:vRt,simplifyRange:IRt,subset:CRt,SemVer:j2t,re:R$.re,src:R$.src,tokens:R$.t,SEMVER_SPEC_VERSION:Pxe.SEMVER_SPEC_VERSION,RELEASE_TYPES:Pxe.RELEASE_TYPES,compareIdentifiers:kxe.compareIdentifiers,rcompareIdentifiers:kxe.rcompareIdentifiers}});var WN=E((MDr,D$)=>{"use strict";var MN=GAe(),TRt=N$(),{FSTDEP005:wRt,FSTDEP012:RRt,FSTDEP015:NRt,FSTDEP016:ORt,FSTDEP017:PRt,FSTDEP018:kRt}=od(),{kHasBeenDecorated:DRt,kSchemaBody:BRt,kSchemaHeaders:LRt,kSchemaParams:MRt,kSchemaQuerystring:Bxe,kSchemaController:O$,kOptions:WRt,kRequestCacheValidateFns:_p,kRouteContext:us,kPublicRouteContext:Lxe,kRequestOriginalUrl:P$}=Gs(),{FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:$Rt}=Ci(),Mxe={body:BRt,headers:LRt,params:MRt,querystring:Bxe,query:Bxe};function k$(t,e,r,n,s,i){this.id=t,this[us]=i,this.params=e,this.raw=r,this.query=n,this.log=s,this.body=void 0}k$.props=[];function FRt(t){if(typeof t=="function")return t;if(t===!0)return function(){return!0};if(typeof t=="number")return function(e,r){return rr.trim());return MN.compile(e)}return MN.compile(t)}function URt(t,e){return e?qRt(t,e):$xe(t)}function $xe(t){let e=t.props.slice();function r(n,s,i,a,o,c){this.id=n,this[us]=c,this.params=s,this.raw=i,this.query=a,this.log=o,this.body=void 0;for(var u,l=0;lt.config},schema:{get:()=>t.schema}}),Object.freeze(s)}},routerMethod:{get(){return kRt(),this[us].config?.method}},routeConfig:{get(){return ORt(),this[us][Lxe]?.config}},routeSchema:{get(){return NRt(),this[us][Lxe].schema}},is404:{get(){return this[us].config?.url===void 0}},connection:{get(){return TRt.gte(process.versions.node,"13.0.0")&&wRt(),this.raw.connection}},socket:{get(){return this.raw.socket}},ip:{get(){if(this.socket)return this.socket.remoteAddress}},hostname:{get(){return this.raw.headers.host||this.raw.headers[":authority"]}},protocol:{get(){if(this.socket)return this.socket.encrypted?"https":"http"}},headers:{get(){return this.additionalHeaders?Object.assign({},this.raw.headers,this.additionalHeaders):this.raw.headers},set(t){this.additionalHeaders=t}},getValidationFunction:{value:function(t){if(typeof t=="string"){let e=Mxe[t];return this[us][e]}else if(typeof t=="object")return this[us][_p]?.get(t)}},compileValidationSchema:{value:function(t,e=null){let{method:r,url:n}=this;if(this[us][_p]?.has(t))return this[us][_p].get(t);let i=(this[us].validatorCompiler||this.server[O$].validatorCompiler||this.server[O$].setupValidator(this.server[WRt])||this.server[O$].validatorCompiler)({schema:t,method:r,url:n,httpPart:e});return this[us][_p]==null&&(this[us][_p]=new WeakMap),this[us][_p].set(t,i),i}},validateInput:{value:function(t,e,r){r=typeof e=="string"?e:r;let n=r!=null&&typeof r=="string"&&Mxe[r],s;if(n&&(s=this[us][n]),s==null&&(e==null||typeof e!="object"||Array.isArray(e)))throw new $Rt(r);return s==null&&(this[us][_p]?.has(e)?s=this[us][_p].get(e):s=this.compileValidationSchema(e,r)),s(t)}}});D$.exports=k$;D$.exports.buildRequest=URt});var $N=E((WDr,Fxe)=>{"use strict";var{kFourOhFourContext:jRt,kReplySerializerDefault:HRt,kSchemaErrorFormatter:QRt,kErrorHandler:GRt,kChildLoggerFactory:KRt,kOptions:VRt,kReply:zRt,kRequest:YRt,kBodyLimit:JRt,kLogLevel:XRt,kContentTypeParser:ZRt,kRouteByFastify:eNt,kRequestCacheValidateFns:tNt,kReplyCacheSerializeFns:rNt,kPublicRouteContext:nNt}=Gs();function sNt({schema:t,handler:e,config:r,requestIdLogLabel:n,childLoggerFactory:s,errorHandler:i,bodyLimit:a,logLevel:o,logSerializers:c,attachValidation:u,validatorCompiler:l,serializerCompiler:d,replySerializer:f,schemaErrorFormatter:p,exposeHeadRoute:m,prefixTrailingSlash:h,server:A,isFastify:g}){this.schema=t,this.handler=e,this.Reply=A[zRt],this.Request=A[YRt],this.contentTypeParser=A[ZRt],this.onRequest=null,this.onSend=null,this.onError=null,this.onTimeout=null,this.preHandler=null,this.onResponse=null,this.preSerialization=null,this.onRequestAbort=null,this.config=r,this.errorHandler=i||A[GRt],this.requestIdLogLabel=n||A[VRt].requestIdLogLabel,this.childLoggerFactory=s||A[KRt],this._middie=null,this._parserOptions={limit:a||A[JRt]},this.exposeHeadRoute=m,this.prefixTrailingSlash=h,this.logLevel=o||A[XRt],this.logSerializers=c,this[jRt]=null,this.attachValidation=u,this[HRt]=f,this.schemaErrorFormatter=p||A[QRt]||aNt,this[eNt]=g,this[tNt]=null,this[rNt]=null,this.validatorCompiler=l||null,this.serializerCompiler=d||null,this[nNt]=iNt(this),this.server=A}function iNt(t){return Object.create(null,{schema:{enumerable:!0,get(){return t.schema}},config:{enumerable:!0,get(){return t.config}}})}function aNt(t,e){let r="",n=", ";for(var s=0;s!==t.length;++s){let i=t[s];r+=e+(i.instancePath||"")+" "+i.message+n}return new Error(r.slice(0,-n.length))}Fxe.exports=sNt});var B$=E(($Dr,Uxe)=>{"use strict";Uxe.exports={supportedMethods:["DELETE","GET","HEAD","PATCH","POST","PUT","OPTIONS","PROPFIND","PROPPATCH","MKCOL","COPY","MOVE","LOCK","UNLOCK","TRACE","SEARCH"]}});var F$=E((FDr,Qxe)=>{"use strict";var{kReply:L$,kRequest:M$,kState:oNt,kHasBeenDecorated:cNt}=Gs(),{FST_ERR_DEC_ALREADY_PRESENT:qxe,FST_ERR_DEC_MISSING_DEPENDENCY:uNt,FST_ERR_DEC_AFTER_START:lNt,FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:dNt}=Ci(),{FSTDEP006:fNt}=od();function pNt(t,e,r,n){if(Object.prototype.hasOwnProperty.call(t,e))throw new qxe(e);W$(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(t,e,{get:r.getter,set:r.setter}):t[e]=r}function jxe(t,e,r,n){let s=t.prototype;if(Object.prototype.hasOwnProperty.call(s,e)||UN(t,e))throw new qxe(e);t[cNt]=!0,W$(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(s,e,{get:r.getter,set:r.setter}):typeof r=="function"?s[e]=r:t.props.push({key:e,value:r})}function Hxe(t,e){typeof e=="object"&&e&&!(typeof e.getter=="function"||typeof e.setter=="function")&&fNt(t)}function mNt(t,e,r){return $$(this,t),pNt(this,t,e,r),this}function FN(t,e){return e?e in t||t.prototype&&e in t.prototype||UN(t,e):t in this}function UN(t,e){return t.props?t.props.find(({key:r})=>r===e):!1}function hNt(t){return t&&UN(this[M$],t)?!0:FN(this[M$].prototype,t)}function gNt(t){return t&&UN(this[L$],t)?!0:FN(this[L$].prototype,t)}function W$(t,e,r){if(r!=null){if(!Array.isArray(r))throw new dNt(e);for(var n=0;n!==r.length;++n)if(!FN(t,r[n]))throw new uNt(r[n])}}function ANt(t,e,r){return $$(this,t),Hxe(t,e),jxe(this[L$],t,e,r),this}function yNt(t,e,r){return $$(this,t),Hxe(t,e),jxe(this[M$],t,e,r),this}function $$(t,e){if(t[oNt].started)throw new lNt(e)}Qxe.exports={add:mNt,exist:FN,existRequest:hNt,existReply:gNt,dependencies:W$,decorateReply:ANt,decorateRequest:yNt}});var Kxe=E(Vu=>{"use strict";var U$=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=e,this.ttl=r}get size(){return this.items.size}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;r0){let e=this.first;this.items.delete(e.key),this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(this.items.has(e))return this.items.get(e).expiry}get(e){if(this.items.has(e)){let r=this.items.get(e);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return r.value}}getMany(e){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl;return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:e,prev:this.last,next:null,value:r};this.items.set(e,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},q$=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=e,this.ttl=r}get size(){return this.items.size}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;r0){let e=this.first;this.items.delete(e.key),this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(this.items.has(e))return this.items.get(e).expiry}get(e){if(this.items.has(e)){let r=this.items.get(e);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return this.bumpLru(r),r.value}}getMany(e){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl,this.last!==s&&this.bumpLru(s);return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:e,prev:this.last,next:null,value:r};this.items.set(e,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},X1=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=e,this.ttl=r}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;r0){let e=this.first;delete this.items[e.key],--this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(Object.prototype.hasOwnProperty.call(this.items,e))return this.items[e].expiry}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return this.bumpLru(r),r.value}}getMany(e){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl,this.last!==s&&this.bumpLru(s);return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:e,prev:this.last,next:null,value:r};this.items[e]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}},qN=class{constructor(){this.records={}}initForCache(e,r){this.records[e]={[r]:{cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}}resetForCache(e){for(let r of Object.keys(this.records[e]))this.records[e][r]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}getStatistics(){return this.records}};function Gxe(t){return`${t.getFullYear()}-${(t.getMonth()+1).toString().padStart(2,"0")}-${t.getDate().toString().padStart(2,"0")}`}var j$=class{constructor(e,r,n){this.cacheId=e,this.statisticTtlInHours=r,this.collectionStart=new Date,this.currentTimeStamp=Gxe(this.collectionStart),this.records=n||new qN,this.records.initForCache(this.cacheId,this.currentTimeStamp)}get currentRecord(){return this.records.records[this.cacheId][this.currentTimeStamp]||(this.records.records[this.cacheId][this.currentTimeStamp]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,sets:0,invalidateOne:0,invalidateAll:0}),this.records.records[this.cacheId][this.currentTimeStamp]}hoursPassed(){return(Date.now()-this.collectionStart)/1e3/60/60}addHit(){this.archiveIfNeeded(),this.currentRecord.hits++}addFalsyHit(){this.archiveIfNeeded(),this.currentRecord.falsyHits++}addEmptyHit(){this.archiveIfNeeded(),this.currentRecord.emptyHits++}addMiss(){this.archiveIfNeeded(),this.currentRecord.misses++}addEviction(){this.archiveIfNeeded(),this.currentRecord.evictions++}setCacheSize(e){this.archiveIfNeeded(),this.currentRecord.cacheSize=e}addExpiration(){this.archiveIfNeeded(),this.currentRecord.expirations++}addSet(){this.archiveIfNeeded(),this.currentRecord.sets++}addInvalidateOne(){this.archiveIfNeeded(),this.currentRecord.invalidateOne++}addInvalidateAll(){this.archiveIfNeeded(),this.currentRecord.invalidateAll++}getStatistics(){return this.records.getStatistics()}archiveIfNeeded(){this.hoursPassed()>=this.statisticTtlInHours&&(this.collectionStart=new Date,this.currentTimeStamp=Gxe(this.collectionStart),this.records.initForCache(this.cacheId,this.currentTimeStamp))}},jN=class extends X1{constructor(e,r,n,s,i){if(super(e||1e3,r||0),!n)throw new Error("Cache id is mandatory");this.hitStatistics=new j$(n,i!==void 0?i:24,s)}getStatistics(){return this.hitStatistics.getStatistics()}set(e,r){super.set(e,r),this.hitStatistics.addSet(),this.hitStatistics.setCacheSize(this.size)}evict(){super.evict(),this.hitStatistics.addEviction(),this.hitStatistics.setCacheSize(this.size)}delete(e,r=!1){super.delete(e),r||this.hitStatistics.addInvalidateOne(),this.hitStatistics.setCacheSize(this.size)}clear(){super.clear(),this.hitStatistics.addInvalidateAll(),this.hitStatistics.setCacheSize(this.size)}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e,!0),this.hitStatistics.addExpiration();return}return this.bumpLru(r),r.value||this.hitStatistics.addFalsyHit(),(r.value===void 0||r.value===null||r.value==="")&&this.hitStatistics.addEmptyHit(),this.hitStatistics.addHit(),r.value}this.hitStatistics.addMiss()}},HN=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=e,this.ttl=r}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;r0){let e=this.first;delete this.items[e.key],--this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(Object.prototype.hasOwnProperty.call(this.items,e))return this.items[e].expiry}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return r.value}}getMany(e){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl;return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:e,prev:this.last,next:null,value:r};this.items[e]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}};Vu.Fifo=HN;Vu.FifoMap=U$;Vu.FifoObject=HN;Vu.HitStatisticsRecord=qN;Vu.Lru=X1;Vu.LruHitStatistics=jN;Vu.LruMap=q$;Vu.LruObject=X1;Vu.LruObjectHitStatistics=jN});var Jxe=E((qDr,Z1)=>{"use strict";var KN=function(){};KN.prototype=Object.create(null);var QN=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,GN=/\\([\v\u0020-\u00ff])/gu,Vxe=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,Lm={type:"",parameters:new KN};Object.freeze(Lm.parameters);Object.freeze(Lm);function zxe(t){if(typeof t!="string")throw new TypeError("argument header is required and must be a string");let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(Vxe.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new KN};if(e===-1)return n;let s,i,a;for(QN.lastIndex=e;i=QN.exec(t);){if(i.index!==e)throw new TypeError("invalid parameter format");e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),GN.test(a)&&(a=a.replace(GN,"$1"))),n.parameters[s]=a}if(e!==t.length)throw new TypeError("invalid parameter format");return n}function Yxe(t){if(typeof t!="string")return Lm;let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(Vxe.test(r)===!1)return Lm;let n={type:r.toLowerCase(),parameters:new KN};if(e===-1)return n;let s,i,a;for(QN.lastIndex=e;i=QN.exec(t);){if(i.index!==e)return Lm;e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),GN.test(a)&&(a=a.replace(GN,"$1"))),n.parameters[s]=a}return e!==t.length?Lm:n}Z1.exports.default={parse:zxe,safeParse:Yxe};Z1.exports.parse=zxe;Z1.exports.safeParse=Yxe;Z1.exports.defaultContentType=Lm});var rbe=E((jDr,ay)=>{"use strict";var xNt=typeof Buffer<"u",Xxe=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,Zxe=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function ebe(t,e,r){r==null&&e!==null&&typeof e=="object"&&(r=e,e=void 0),xNt&&Buffer.isBuffer(t)&&(t=t.toString()),t&&t.charCodeAt(0)===65279&&(t=t.slice(1));let n=JSON.parse(t,e);if(n===null||typeof n!="object")return n;let s=r&&r.protoAction||"error",i=r&&r.constructorAction||"error";if(s==="ignore"&&i==="ignore")return n;if(s!=="ignore"&&i!=="ignore"){if(Xxe.test(t)===!1&&Zxe.test(t)===!1)return n}else if(s!=="ignore"&&i==="ignore"){if(Xxe.test(t)===!1)return n}else if(Zxe.test(t)===!1)return n;return tbe(n,{protoAction:s,constructorAction:i,safe:r&&r.safe})}function tbe(t,{protoAction:e="error",constructorAction:r="error",safe:n}={}){let s=[t];for(;s.length;){let i=s;s=[];for(let a of i){if(e!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"__proto__")){if(n===!0)return null;if(e==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.__proto__}if(r!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"constructor")&&Object.prototype.hasOwnProperty.call(a.constructor,"prototype")){if(n===!0)return null;if(r==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.constructor}for(let o in a){let c=a[o];c&&typeof c=="object"&&s.push(c)}}}return t}function H$(t,e,r){let n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return ebe(t,e,r)}finally{Error.stackTraceLimit=n}}function bNt(t,e){let r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return ebe(t,e,{safe:!0})}catch{return null}finally{Error.stackTraceLimit=r}}ay.exports=H$;ay.exports.default=H$;ay.exports.parse=H$;ay.exports.safeParse=bNt;ay.exports.scan=tbe});var z$=E((HDr,t_)=>{"use strict";var{AsyncResource:ENt}=require("node:async_hooks"),{Fifo:sbe}=Kxe(),{safeParse:ibe,defaultContentType:_Nt}=Jxe(),SNt=rbe(),{kDefaultJsonParse:e_,kContentTypeParser:oy,kBodyLimit:vNt,kRequestPayloadStream:abe,kState:G$,kTestInternals:INt,kReplyIsError:obe,kRouteContext:CNt}=Gs(),{FST_ERR_CTP_INVALID_TYPE:cbe,FST_ERR_CTP_EMPTY_TYPE:TNt,FST_ERR_CTP_ALREADY_PRESENT:wNt,FST_ERR_CTP_INVALID_HANDLER:RNt,FST_ERR_CTP_INVALID_PARSE_TYPE:NNt,FST_ERR_CTP_BODY_TOO_LARGE:nbe,FST_ERR_CTP_INVALID_MEDIA_TYPE:ONt,FST_ERR_CTP_INVALID_CONTENT_LENGTH:PNt,FST_ERR_CTP_EMPTY_JSON_BODY:kNt,FST_ERR_CTP_INSTANCE_ALREADY_STARTED:K$}=Ci();function gd(t,e,r){this[e_]=lbe(e,r),this.customParsers=new Map,this.customParsers.set("application/json",new Q$(!0,!1,t,this[e_])),this.customParsers.set("text/plain",new Q$(!0,!1,t,V$)),this.parserList=[new VN("application/json"),new VN("text/plain")],this.parserRegExpList=[],this.cache=new sbe(100)}gd.prototype.add=function(t,e,r){let n=typeof t=="string";if(!n&&!(t instanceof RegExp))throw new cbe;if(n&&t.length===0)throw new TNt;if(typeof r!="function")throw new RNt;if(this.existingParser(t))throw new wNt(t);if(e.parseAs!==void 0&&e.parseAs!=="string"&&e.parseAs!=="buffer")throw new NNt(e.parseAs);let s=new Q$(e.parseAs==="string",e.parseAs==="buffer",e.bodyLimit,r);n&&t==="*"?this.customParsers.set("",s):(n?this.parserList.unshift(new VN(t)):(t.isEssence=t.source.indexOf(";")===-1,this.parserRegExpList.unshift(t)),this.customParsers.set(t.toString(),s))};gd.prototype.hasParser=function(t){return this.customParsers.has(typeof t=="string"?t:t.toString())};gd.prototype.existingParser=function(t){return t==="application/json"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==this[e_]:t==="text/plain"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==V$:this.hasParser(t)};gd.prototype.getParser=function(t){if(this.hasParser(t))return this.customParsers.get(t);let e=this.cache.get(t);if(e!==void 0)return e;let r=ibe(t);if(r===_Nt)return this.customParsers.get("");for(var n=0;n!==this.parserList.length;++n){let i=this.parserList[n];if($Nt(r,i)){let a=this.customParsers.get(i.name);return this.cache.set(t,a),a}}for(var s=0;s!==this.parserRegExpList.length;++s){let i=this.parserRegExpList[s];if(FNt(t,r.type,i)){let a=this.customParsers.get(i.toString());return this.cache.set(t,a),a}}return this.customParsers.get("")};gd.prototype.removeAll=function(){this.customParsers=new Map,this.parserRegExpList=[],this.parserList=[],this.cache=new sbe(100)};gd.prototype.remove=function(t){if(!(typeof t=="string"||t instanceof RegExp))throw new cbe;let e=this.customParsers.delete(t.toString()),r=typeof t=="string"?this.parserList:this.parserRegExpList,n=r.findIndex(s=>s.toString()===t.toString());return n>-1&&r.splice(n,1),e||n>-1};gd.prototype.run=function(t,e,r,n){let s=this.getParser(t);if(s===void 0){r.is404?e(r,n):n.send(new ONt(t||void 0));return}let i=new ENt("content-type-parser:run",r);if(s.asString===!0||s.asBuffer===!0)ube(r,n,n[CNt]._parserOptions,s,a);else{let o=s.fn(r,r[abe],a);o&&typeof o.then=="function"&&o.then(c=>a(null,c),a)}function a(o,c){i.runInAsyncScope(()=>{i.emitDestroy(),o?(n[obe]=!0,n.send(o)):(r.body=c,e(r,n))})}};function ube(t,e,r,n,s){let i=n.asString,a=r.limit===null?n.bodyLimit:r.limit,o=t.headers["content-length"]===void 0?NaN:Number(t.headers["content-length"]);if(o>a){e.header("connection","close"),e.send(new nbe);return}let c=0,u=i===!0?"":[],l=t[abe]||t.raw;i===!0&&l.setEncoding("utf8"),l.on("data",d),l.on("end",f),l.on("error",f),l.resume();function d(p){c+=p.length;let{receivedEncodedLength:m=0}=l;if(c>a||m>a){l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),e.send(new nbe);return}i===!0?u+=p:u.push(p)}function f(p){if(l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),p!==void 0){typeof p.statusCode=="number"&&p.statusCode>=400||(p.statusCode=400),e[obe]=!0,e.code(p.statusCode).send(p);return}if(i===!0&&(c=Buffer.byteLength(u)),!Number.isNaN(o)&&(l.receivedEncodedLength||c)!==o){e.header("connection","close"),e.send(new PNt);return}i===!1&&(u=Buffer.concat(u));let m=n.fn(t,u,s);m&&typeof m.then=="function"&&m.then(h=>s(null,h),s)}}function lbe(t,e){return r;function r(n,s,i){if(s===""||s==null||Buffer.isBuffer(s)&&s.length===0)return i(new kNt,void 0);let a;try{a=SNt.parse(s,{protoAction:t,constructorAction:e})}catch(o){return o.statusCode=400,i(o,void 0)}i(null,a)}}function V$(t,e,r){r(null,e)}function Q$(t,e,r,n){this.asString=t,this.asBuffer=e,this.bodyLimit=r,this.fn=n}function DNt(t){let e=new gd;return e[e_]=t[e_],e.customParsers=new Map(t.customParsers.entries()),e.parserList=t.parserList.slice(),e.parserRegExpList=t.parserRegExpList.slice(),e}function BNt(t,e,r){if(this[G$].started)throw new K$("addContentTypeParser");return typeof e=="function"&&(r=e,e={}),e||(e={}),e.bodyLimit||(e.bodyLimit=this[vNt]),Array.isArray(t)?t.forEach(n=>this[oy].add(n,e,r)):this[oy].add(t,e,r),this}function LNt(t){return this[oy].hasParser(t)}function MNt(t){if(this[G$].started)throw new K$("removeContentTypeParser");if(Array.isArray(t))for(let e of t)this[oy].remove(e);else this[oy].remove(t)}function WNt(){if(this[G$].started)throw new K$("removeAllContentTypeParsers");this[oy].removeAll()}function $Nt(t,e){if(e.isEssence)return t.type.indexOf(e)!==-1;if(t.type.indexOf(e.type)===-1)return!1;for(let r of e.parameterKeys)if(!(r in t.parameters)||t.parameters[r]!==e.parameters[r])return!1;return!0}function FNt(t,e,r){return r.isEssence?r.test(e):r.test(t)}function VN(t){this.name=t;let e=ibe(t);if(this.isEssence=t.indexOf(";")===-1,this.isEssence===!1&&e.type===""){let r=t.split(";",1)[0];this.type=r===""?t:r}else this.type=e.type;this.parameters=e.parameters,this.parameterKeys=Object.keys(e.parameters)}VN.prototype.toString=function(){return this.name};t_.exports=gd;t_.exports.helpers={buildContentTypeParser:DNt,addContentTypeParser:BNt,hasContentTypeParser:LNt,removeContentTypeParser:MNt,removeAllContentTypeParsers:WNt};t_.exports.defaultParsers={getDefaultJsonParser:lbe,defaultTextParser:V$};t_.exports[INt]={rawBody:ube}});var mbe=E((QDr,pbe)=>{"use strict";var dbe=Ko(),UNt=Symbol.for("json-schema-ref"),Y$=class{#e;#t;#r;#n;#a;constructor(e={}){this.#e={},this.#t={},this.#r=e.insertRefSymbol??!1,this.#n=e.allowEqualDuplicates??!0,this.#a=e.cloneSchemaWithoutRefs??!1}addSchema(e,r){e.$id!==void 0&&e.$id.charAt(0)!=="#"?r=e.$id:this.#l(e,r),this.#s(e,r)}getSchema(e,r="#"){let n=this.#e[e];if(n===void 0)throw new Error(`Cannot resolve ref "${e}${r}". Schema with id "${e}" is not found.`);return n.anchors[r]!==void 0?n.anchors[r]:fbe(n.schema,r)}hasSchema(e){return this.#e[e]!==void 0}getSchemaRefs(e){let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);return r.refs}getSchemaDependencies(e,r={}){let n=this.#e[e];for(let s of n.refs){let i=s.schemaId;r[i]===void 0&&(r[i]=this.getSchema(i),this.getSchemaDependencies(i,r))}return r}derefSchema(e){if(this.#t[e]!==void 0)return;let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);!this.#a&&r.refs.length===0&&(this.#t[e]={schema:r.schema,anchors:r.anchors});let n=[];this.#i(r.schema,e,n);let s=this.getSchemaDependencies(e);for(let i in s){let a=s[i];this.#i(a,i,n)}for(let i of n){let{refSchemaId:a,refJsonPointer:o}=this.#o(i.ref,i.sourceSchemaId),c=this.getDerefSchema(a,o);if(c===null)throw new Error(`Cannot resolve ref "${i.ref}". Ref "${o}" is not found in schema "${a}".`);i.targetSchema=c,i.targetSchemaId=a}for(let i of n)this.#c(i,n)}getDerefSchema(e,r="#"){let n=this.#t[e];return n===void 0&&(this.derefSchema(e),n=this.#t[e]),n.anchors[r]!==void 0?n.anchors[r]:fbe(n.schema,r)}#o(e,r){let n=e.indexOf("#");return n===-1?{refSchemaId:e,refJsonPointer:"#"}:n===0?{refSchemaId:r,refJsonPointer:e}:{refSchemaId:e.slice(0,n),refJsonPointer:e.slice(n)}}#s(e,r){let n=e.$id;n!==void 0&&typeof n=="string"&&(n.charAt(0)==="#"?this.#h(e,r,n):(this.#l(e,n),r=n));let s=e.$ref;if(s!==void 0&&typeof s=="string"){let{refSchemaId:i,refJsonPointer:a}=this.#o(s,r);this.#e[r].refs.push({schemaId:i,jsonPointer:a})}for(let i in e)typeof e[i]=="object"&&e[i]!==null&&this.#s(e[i],r)}#i(e,r,n=[]){let s=Array.isArray(e)?[...e]:{...e},i=s.$id;i!==void 0&&typeof i=="string"&&(i.charAt(0)==="#"?this.#d(s,r,i):(this.#p(s,i),r=i)),s.$ref!==void 0&&n.push({ref:s.$ref,sourceSchemaId:r,sourceSchema:s});for(let a in s){let o=s[a];typeof o=="object"&&o!==null&&(s[a]=this.#i(o,r,n))}return s}#c(e,r){let{sourceSchema:n,targetSchema:s}=e;if(n.$ref){if(this.#r&&(n[UNt]=n.$ref),delete n.$ref,s.$ref){let i=r.find(a=>a.sourceSchema===s);this.#c(i,r)}for(let i in s)if(i!=="$id"){if(n[i]!==void 0){if(dbe(n[i],s[i]))continue;throw new Error(`Cannot resolve ref "${e.ref}". Property "${i}" is already exist in schema "${e.sourceSchemaId}".`)}n[i]=s[i]}e.isResolved=!0}}#l(e,r){let n=this.#e[r];if(n!==void 0){if(this.#n&&dbe(e,n.schema))return;throw new Error(`There is already another schema with id "${r}".`)}this.#e[r]={schema:e,anchors:{},refs:[]}}#h(e,r,n){let{anchors:s}=this.#e[r];if(s[n]!==void 0)throw new Error(`There is already another anchor "${n}" in a schema "${r}".`);s[n]=e}#p(e,r){this.#t[r]===void 0&&(this.#t[r]={schema:e,anchors:{}})}#d(e,r,n){let{anchors:s}=this.#t[r];s[n]=e}};function fbe(t,e){let r=e.split("/"),n=t;for(let s of r)if(!(s===""||s==="#")){if(typeof n!="object"||n===null)return null;n=n[s]}return n??null}pbe.exports={RefResolver:Y$}});var gbe=E((GDr,hbe)=>{"use strict";var J$=class t{constructor(e,r,n="#"){this.schema=e,this.schemaId=r,this.jsonPointer=n}getPropertyLocation(e){return new t(this.schema[e],this.schemaId,this.jsonPointer+"/"+e)}getSchemaRef(){return this.schemaId+this.jsonPointer}};hbe.exports=J$});var Ebe=E((KDr,Z$)=>{"use strict";Z$.exports=De;Z$.exports.default=De;var qNt={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0},Abe={enum:["array","boolean","integer","null","number","object","string"]},ybe=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,jNt=pN().fullFormats.uri,xbe=pN().fullFormats.regex;function Xo(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a;return typeof t=="number"&&!(t%1)&&!isNaN(t)&&isFinite(t)?a===o&&typeof t=="number"&&isFinite(t)&&(t<0||isNaN(t))?(Xo.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1):(Xo.errors=i,a===0):(Xo.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1)}var X$={validate:De};function sa(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(Array.isArray(t)){if(t.length<1)return sa.errors=[{instancePath:e,schemaPath:"#/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{var o=!0;let c=t.length;for(let u=0;u",limit:0},message:"must be > 0"}],!1}else return De.errors=[{instancePath:e+"/multipleOf",schemaPath:"#/properties/multipleOf/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.maximum!==void 0){let y=t.maximum,x=a;if(!(typeof y=="number"&&isFinite(y)))return De.errors=[{instancePath:e+"/maximum",schemaPath:"#/properties/maximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.exclusiveMaximum!==void 0){let y=t.exclusiveMaximum,x=a;if(!(typeof y=="number"&&isFinite(y)))return De.errors=[{instancePath:e+"/exclusiveMaximum",schemaPath:"#/properties/exclusiveMaximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.minimum!==void 0){let y=t.minimum,x=a;if(!(typeof y=="number"&&isFinite(y)))return De.errors=[{instancePath:e+"/minimum",schemaPath:"#/properties/minimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.exclusiveMinimum!==void 0){let y=t.exclusiveMinimum,x=a;if(!(typeof y=="number"&&isFinite(y)))return De.errors=[{instancePath:e+"/exclusiveMinimum",schemaPath:"#/properties/exclusiveMinimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.maxLength!==void 0){let y=t.maxLength,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return De.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return De.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minLength!==void 0){let y=a;Xo(t.minLength,{instancePath:e+"/minLength",parentData:t,parentDataProperty:"minLength",rootData:s})||(i=i===null?Xo.errors:i.concat(Xo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.pattern!==void 0){let y=t.pattern,x=a;if(a===x&&a===x)if(typeof y=="string"){if(!xbe(y))return De.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"'}],!1}else return De.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.additionalItems!==void 0){let y=a;De(t.additionalItems,{instancePath:e+"/additionalItems",parentData:t,parentDataProperty:"additionalItems",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.items!==void 0){let y=t.items,x=a,v=a,I=!1,R=a;De(y,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var c=R===a;if(I=I||c,!I){let N=a;sa(y,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var c=N===a;I=I||c}if(I)a=v,i!==null&&(v?i.length=v:i=null);else{let N={instancePath:e+"/items",schemaPath:"#/properties/items/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,De.errors=i,!1}var o=x===a}else var o=!0;if(o){if(t.maxItems!==void 0){let y=t.maxItems,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return De.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return De.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minItems!==void 0){let y=a;Xo(t.minItems,{instancePath:e+"/minItems",parentData:t,parentDataProperty:"minItems",rootData:s})||(i=i===null?Xo.errors:i.concat(Xo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.uniqueItems!==void 0){let y=a;if(typeof t.uniqueItems!="boolean")return De.errors=[{instancePath:e+"/uniqueItems",schemaPath:"#/properties/uniqueItems/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=y===a}else var o=!0;if(o){if(t.contains!==void 0){let y=a;De(t.contains,{instancePath:e+"/contains",parentData:t,parentDataProperty:"contains",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.maxProperties!==void 0){let y=t.maxProperties,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return De.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return De.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minProperties!==void 0){let y=a;Xo(t.minProperties,{instancePath:e+"/minProperties",parentData:t,parentDataProperty:"minProperties",rootData:s})||(i=i===null?Xo.errors:i.concat(Xo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.required!==void 0){let y=t.required,x=a;if(a===a)if(Array.isArray(y)){var u=!0;let R=y.length;for(let w=0;w1){let P={};for(;w--;){let B=y[w];if(typeof B=="string"){if(typeof P[B]=="number"){return N=P[B],De.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:w,j:N},message:"must NOT have duplicate items (items ## "+N+" and "+w+" are identical)"}],!1;break}P[B]=w}}}}}else return De.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=x===a}else var o=!0;if(o){if(t.additionalProperties!==void 0){let y=a;De(t.additionalProperties,{instancePath:e+"/additionalProperties",parentData:t,parentDataProperty:"additionalProperties",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.definitions!==void 0){let y=t.definitions,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let I in y){let R=a;De(y[I],{instancePath:e+"/definitions/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:I,rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var l=R===a;if(!l)break}else return De.errors=[{instancePath:e+"/definitions",schemaPath:"#/properties/definitions/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.properties!==void 0){let y=t.properties,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let I in y){let R=a;De(y[I],{instancePath:e+"/properties/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:I,rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var d=R===a;if(!d)break}else return De.errors=[{instancePath:e+"/properties",schemaPath:"#/properties/properties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.patternProperties!==void 0){let y=t.patternProperties,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y)){for(let I in y){let R=a;if(a===R&&typeof I=="string"&&!xbe(I)){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"',propertyName:I};i===null?i=[w]:i.push(w),a++}var f=R===a;if(!f){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames",keyword:"propertyNames",params:{propertyName:I},message:"property name must be valid"};return i===null?i=[w]:i.push(w),a++,De.errors=i,!1;break}}if(f)for(let I in y){let R=a;De(y[I],{instancePath:e+"/patternProperties/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:I,rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var p=R===a;if(!p)break}}else return De.errors=[{instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.dependencies!==void 0){let y=t.dependencies,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let I in y){let R=y[I],w=a,N=a,P=!1,B=a;De(R,{instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:I,rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var m=B===a;if(P=P||m,!P){let M=a;if(a===a)if(Array.isArray(R)){var h=!0;let Z=R.length;for(let W=0;W1){let K={};for(;W--;){let j=R[W];if(typeof j=="string"){if(typeof K[j]=="number"){F=K[j];let J={instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:W,j:F},message:"must NOT have duplicate items (items ## "+F+" and "+W+" are identical)"};i===null?i=[J]:i.push(J),a++;break}K[j]=W}}}}}else{let Z={instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[Z]:i.push(Z),a++}var m=M===a;P=P||m}if(P)a=N,i!==null&&(N?i.length=N:i=null);else{let M={instancePath:e+"/dependencies/"+I.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/dependencies/additionalProperties/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[M]:i.push(M),a++,De.errors=i,!1}var A=w===a;if(!A)break}else return De.errors=[{instancePath:e+"/dependencies",schemaPath:"#/properties/dependencies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.propertyNames!==void 0){let y=a;De(t.propertyNames,{instancePath:e+"/propertyNames",parentData:t,parentDataProperty:"propertyNames",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.enum!==void 0){let y=t.enum,x=a;if(a===x)if(Array.isArray(y)){if(y.length<1)return De.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{let I=y.length,R;if(I>1){e:for(;I--;)for(R=I;R--;)if(bbe(y[I],y[R])){return De.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/uniqueItems",keyword:"uniqueItems",params:{i:I,j:R},message:"must NOT have duplicate items (items ## "+R+" and "+I+" are identical)"}],!1;break e}}}}else return De.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=x===a}else var o=!0;if(o){if(t.type!==void 0){let y=t.type,x=a,v=a,I=!1,R=a;if(!(y==="array"||y==="boolean"||y==="integer"||y==="null"||y==="number"||y==="object"||y==="string")){let N={instancePath:e+"/type",schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:Abe.enum},message:"must be equal to one of the allowed values"};i===null?i=[N]:i.push(N),a++}var g=R===a;if(I=I||g,!I){let N=a;if(a===N)if(Array.isArray(y))if(y.length<1){let B={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"};i===null?i=[B]:i.push(B),a++}else{var b=!0;let B=y.length;for(let M=0;M1){e:for(;M--;)for(D=M;D--;)if(bbe(y[M],y[D])){let L={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/uniqueItems",keyword:"uniqueItems",params:{i:M,j:D},message:"must NOT have duplicate items (items ## "+D+" and "+M+" are identical)"};i===null?i=[L]:i.push(L),a++;break e}}}}else{let B={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[B]:i.push(B),a++}var g=N===a;I=I||g}if(I)a=v,i!==null&&(v?i.length=v:i=null);else{let N={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,De.errors=i,!1}var o=x===a}else var o=!0;if(o){if(t.format!==void 0){let y=a;if(typeof t.format!="string")return De.errors=[{instancePath:e+"/format",schemaPath:"#/properties/format/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.contentMediaType!==void 0){let y=a;if(typeof t.contentMediaType!="string")return De.errors=[{instancePath:e+"/contentMediaType",schemaPath:"#/properties/contentMediaType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.contentEncoding!==void 0){let y=a;if(typeof t.contentEncoding!="string")return De.errors=[{instancePath:e+"/contentEncoding",schemaPath:"#/properties/contentEncoding/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.if!==void 0){let y=a;De(t.if,{instancePath:e+"/if",parentData:t,parentDataProperty:"if",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.then!==void 0){let y=a;De(t.then,{instancePath:e+"/then",parentData:t,parentDataProperty:"then",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.else!==void 0){let y=a;De(t.else,{instancePath:e+"/else",parentData:t,parentDataProperty:"else",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.allOf!==void 0){let y=a;sa(t.allOf,{instancePath:e+"/allOf",parentData:t,parentDataProperty:"allOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.anyOf!==void 0){let y=a;sa(t.anyOf,{instancePath:e+"/anyOf",parentData:t,parentDataProperty:"anyOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.oneOf!==void 0){let y=a;sa(t.oneOf,{instancePath:e+"/oneOf",parentData:t,parentDataProperty:"oneOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o)if(t.not!==void 0){let y=a;De(t.not,{instancePath:e+"/not",parentData:t,parentDataProperty:"not",rootData:s})||(i=i===null?De.errors:i.concat(De.errors),a=i.length);var o=y===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return De.errors=i,a===0}});var nF=E((VDr,_be)=>{"use strict";var eF=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Failed to merge "${e}" keyword schemas.`,this.schemas=r}},tF=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Resolver for "${e}" keyword not found.`,this.schemas=r}},rF=class extends Error{constructor(e){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Invalid "onConflict" option: "${e}".`}};_be.exports={MergeError:eF,ResolverNotFoundError:tF,InvalidOnConflictOptionError:rF}});var Ibe=E((zDr,vbe)=>{"use strict";var HNt=Ko(),{MergeError:sF}=nF();function Sbe(t){let e=t[0];for(let r=1;rt[r].includes(n));return e}function QNt(t,e,r){let n=Sbe(e);if(n.length===0)throw new sF(t,e);r[t]=n}function GNt(t,e,r){for(let s=0;sc?n(c,o%c):o,s=(o,c)=>o*c/n(o,c),i=1;for(let o of e)for(;o*i%1!==0;)i*=10;let a=e[0]*i;for(let o of e)a=s(a,o*i);r[t]=a/i}function JNt(t,e,r){let n=e[0];for(let s=1;s{"use strict";var tOt=Ko(),jn=Ibe(),JN=nF(),wbe={$id:jn.skip,type:jn.hybridArraysIntersection,enum:jn.arraysIntersection,minLength:jn.maxNumber,maxLength:jn.minNumber,minimum:jn.maxNumber,maximum:jn.minNumber,multipleOf:jn.commonMultiple,exclusiveMinimum:jn.maxNumber,exclusiveMaximum:jn.minNumber,minItems:jn.maxNumber,maxItems:jn.minNumber,maxProperties:jn.minNumber,minProperties:jn.maxNumber,const:jn.allEqual,default:jn.allEqual,format:jn.allEqual,required:jn.arraysUnion,properties:oOt,patternProperties:YN,additionalProperties:zN,items:sOt,additionalItems:iOt,definitions:YN,$defs:YN,nullable:jn.booleanAnd,oneOf:Cbe,anyOf:Cbe,allOf:jn.arraysUnion,not:zN,if:cOt,then:jn.skip,else:jn.skip,dependencies:Tbe,dependentRequired:Tbe,dependentSchemas:YN,propertyNames:zN,uniqueItems:jn.booleanOr,contains:zN};function zN(t,e,r,n,s){r[t]=Qc(e,s)}function rOt(t){let e=[[]];for(let r of t){let n=[];for(let s of e)for(let i of r)n.push([...s,i]);e=n}return e}function Cbe(t,e,r,n,s){if(e.length===1){r[t]=e[0];return}let i=rOt(e),a=[];for(let o of i)try{let c=Qc(o,s);c!==void 0&&a.push(c)}catch(c){if(c instanceof JN.MergeError)continue;throw c}r[t]=a}function nOt(t,e){let{items:r,additionalItems:n}=t;return Array.isArray(r)?e{"use strict";var{mergeSchemas:lOt}=Obe();function dOt(t){return lOt(t,{onConflict:"skip"})}Pbe.exports=dOt});var qbe=E((XDr,cy)=>{"use strict";var{RefResolver:fOt}=mbe(),pOt=r8(),mOt=ZW(),Mm=gbe(),Dbe=Ebe(),hOt=kbe(),gOt=/'/g,XN=2e4,Lbe="default",AOt=["floor","ceil","round","trunc"],Mbe=["default","json-stringify"],r_=0;function iF(t,e){if(!Dbe(t)){e?e=`"${e}" `:e="";let r=Dbe.errors[0],n=new Error(`${e}schema is invalid: data${r.instancePath} ${r.message}`);throw n.errors=iF.errors,n}}function n_(t,e){let r=e.schema.$ref,n=r.indexOf("#");n===-1&&(n=r.length);let s=r.slice(0,n)||e.schemaId,i=r.slice(n)||"#",a=t.refResolver.getSchema(s,i);if(a===null)throw new Error(`Cannot find reference "${r}"`);let o=new Mm(a,s,i);return a.$ref!==void 0?n_(t,o):o}function ZN(t,e){let r=t.refResolver.getSchema(e,"#");return new Mm(r,e,"#")}function Bbe(t,e){return t.$id&&t.$id.charAt(0)!=="#"?t.$id:e}function aF(t,e){iF(t),e=e||{};let r={functions:[],functionsCounter:0,functionsNamesBySchema:new Map,options:e,refResolver:new fOt,rootSchemaId:t.$id||`__fjs_root_${r_++}`,validatorSchemasIds:new Set,mergedSchemasIds:new Map},n=Bbe(t,r.rootSchemaId);if(r.refResolver.hasSchema(n)||r.refResolver.addSchema(t,r.rootSchemaId),e.schema)for(let l in e.schema){let d=e.schema[l],f=Bbe(d,l);r.refResolver.hasSchema(f)||(iF(d,l),r.refResolver.addSchema(d,l))}if(e.rounding&&!AOt.includes(e.rounding))throw new Error(`Unsupported integer rounding method ${e.rounding}`);if(e.largeArrayMechanism)if(Mbe.includes(e.largeArrayMechanism))Lbe=e.largeArrayMechanism;else throw new Error(`Unsupported large array mechanism ${e.largeArrayMechanism}`);if(e.largeArraySize)if(typeof e.largeArraySize=="string"&&Number.isFinite(Number.parseInt(e.largeArraySize,10)))XN=Number.parseInt(e.largeArraySize,10);else if(typeof e.largeArraySize=="number"&&Number.isInteger(e.largeArraySize))XN=e.largeArraySize;else if(typeof e.largeArraySize=="bigint")XN=Number(e.largeArraySize);else throw new Error(`Unsupported large array size. Expected integer-like, got ${typeof e.largeArraySize} with value ${e.largeArraySize}`);let s=new Mm(t,r.rootSchemaId),i=bo(r,s,"input"),a=` + module.exports = ${t.toString()}(validator, serializer)`}t$.exports=NIt;t$.exports.dependencies={Serializer:n8(),Validator:e$()}});var yAe=E((z3r,AAe)=>{"use strict";var{dependencies:OIt}=r$(),{Serializer:PIt,Validator:V3r}=OIt,DIt={mode:"standalone"},kIt=PIt.restoreFromState(DIt),LIt=null;AAe.exports=function(e,r){function n(i){let a=i&&typeof i.toJSON=="function"?i.toJSON():i;if(a===null)return"{}";let o=!1,c="{";return a.statusCode!==void 0&&(!o&&(o=!0)||(c+=","),c+='"statusCode":',c+=r.asNumber(a.statusCode)),a.code!==void 0&&(!o&&(o=!0)||(c+=","),c+='"code":',c+=r.asString(a.code)),a.error!==void 0&&(!o&&(o=!0)||(c+=","),c+='"error":',c+=r.asString(a.error)),a.message!==void 0&&(!o&&(o=!0)||(c+=","),c+='"message":',c+=r.asString(a.message)),c+"}"}return n}(LIt,kIt)});var U1=E((K3r,_Ae)=>{"use strict";var xAe=require("node:http").STATUS_CODES,BIt=e5(),{kReplyHeaders:Dm,kReplyNextErrorHandler:AN,kReplyIsRunningOnErrorHook:MIt,kReplyHasStatusCode:WIt,kRouteContext:EAe}=Qs(),{FST_ERR_REP_INVALID_PAYLOAD_TYPE:$It,FST_ERR_FAILED_ERROR_SERIALIZATION:FIt}=Ci(),{getSchemaSerializer:UIt}=u1(),n$=yAe(),qIt={func:HIt,toJSON(){return this.func.name.toString()+"()"}};function jIt(t,e,r){t[MIt]=!1;let n=t[EAe];if(t[AN]===!1){bAe(e,t,function(o,c){try{o.raw.writeHead(o.raw.statusCode,o[Dm])}catch(u){o.log.warn({req:o.request,res:o,err:u},u&&u.message),o.raw.writeHead(o.raw.statusCode)}o.raw.end(c)});return}let s=t[AN]||n.errorHandler;t[AN]=Object.getPrototypeOf(s),delete t[Dm]["content-type"],delete t[Dm]["content-length"];let i=s.func;if(!i){t[AN]=!1,bAe(e,t,r);return}let a=i(e,t.request,t);a!==void 0&&(a!==null&&typeof a.then=="function"?BIt(a,t):t.send(a))}function HIt(t,e,r){if(GIt(t,r),!r[WIt]||r.statusCode===200){let n=t.statusCode||t.status;r.code(n>=400?n:500)}r.statusCode<500?r.log.info({res:r,err:t},t&&t.message):r.log.error({req:e,res:r,err:t},t&&t.message),r.send(t)}function bAe(t,e,r){let n=e.raw,s=e.statusCode;e[Dm]["content-type"]=e[Dm]["content-type"]??"application/json; charset=utf-8";let i;try{let a=UIt(e[EAe],s,e[Dm]["content-type"]);i=a===!1?n$({error:xAe[s+""],code:t.code,message:t.message,statusCode:s}):a(Object.create(t,{error:{value:xAe[s+""]},message:{value:t.message},statusCode:{value:s}}))}catch(a){e.log.error({err:a,statusCode:n.statusCode},"The serializer for the given status code failed"),e.code(500),i=n$(new FIt(a.message,t.message))}typeof i!="string"&&!Buffer.isBuffer(i)&&(i=n$(new $It(typeof i))),e[Dm]["content-length"]=""+Buffer.byteLength(i),r(e,i)}function QIt(t=qIt,e){if(!e)return t;let r=Object.create(t);return r.func=e,r}function GIt(t,e){let r=e.raw,n=r.statusCode;n=n>=400?n:500,t!=null&&(t.headers!==void 0&&e.headers(t.headers),t.status>=400?n=t.status:t.statusCode>=400&&(n=t.statusCode)),r.statusCode=n}_Ae.exports={buildErrorHandler:QIt,handleError:jIt}});var SN=E((Y3r,_N)=>{"use strict";var o$=require("node:stream").finished,VIt=require("node:stream").Readable,{kFourOhFourContext:SAe,kPublicRouteContext:vAe,kReplyErrorHandlerCalled:PAe,kReplyHijacked:q1,kReplyStartTime:j1,kReplyEndTime:u$,kReplySerializer:gd,kReplySerializerDefault:xN,kReplyIsError:bN,kReplyHeaders:bn,kReplyTrailers:Gs,kReplyHasStatusCode:l$,kReplyIsRunningOnErrorHook:d$,kReplyNextErrorHandler:zIt,kDisableRequestLogging:DAe,kSchemaResponse:EN,kReplyCacheSerializeFns:_p,kSchemaController:s$,kOptions:KIt,kRouteContext:rr}=Qs(),{onSendHookRunner:kAe,onResponseHookRunner:YIt,preHandlerHookRunner:JIt,preSerializationHookRunner:XIt}=up(),CAe=s5()[Symbol.for("internals")],ZIt=c1(),c$=ZIt.now,{handleError:IAe}=U1(),{getSchemaSerializer:eTt}=u1(),i$={JSON:"application/json; charset=utf-8",PLAIN:"text/plain; charset=utf-8",OCTET:"application/octet-stream"},{FST_ERR_REP_INVALID_PAYLOAD_TYPE:tTt,FST_ERR_REP_RESPONSE_BODY_CONSUMED:rTt,FST_ERR_REP_ALREADY_SENT:LAe,FST_ERR_REP_SENT_VALUE:nTt,FST_ERR_SEND_INSIDE_ONERR:sTt,FST_ERR_BAD_STATUS_CODE:iTt,FST_ERR_BAD_TRAILER_NAME:aTt,FST_ERR_BAD_TRAILER_VALUE:oTt,FST_ERR_MISSING_SERIALIZATION_FN:cTt,FST_ERR_MISSING_CONTENTTYPE_SERIALIZATION_FN:uTt}=Ci(),{FSTDEP010:lTt,FSTDEP013:dTt,FSTDEP019:fTt,FSTDEP020:pTt}=cd(),BAe=Object.prototype.toString;function dn(t,e,r){this.raw=t,this[gd]=null,this[PAe]=!1,this[bN]=!1,this[d$]=!1,this.request=e,this[bn]={},this[Gs]=null,this[l$]=!1,this[j1]=void 0,this.log=r}dn.props=[];Object.defineProperties(dn.prototype,{[rr]:{get(){return this.request[rr]}},context:{get(){return fTt(),this.request[rr]}},elapsedTime:{get(){return this[j1]===void 0?0:(this[u$]||c$())-this[j1]}},server:{get(){return this.request[rr].server}},sent:{enumerable:!0,get(){return(this[q1]||this.raw.writableEnded)===!0},set(t){if(lTt(),t!==!0)throw new nTt;if(this.sent&&this[q1])throw new LAe(this.request.url,this.request.method);this[q1]=!0}},statusCode:{get(){return this.raw.statusCode},set(t){this.code(t)}},[vAe]:{get(){return this.request[vAe]}}});dn.prototype.hijack=function(){return this[q1]=!0,this};dn.prototype.send=function(t){if(this[d$]===!0)throw new sTt;if(this.sent)return this.log.warn({err:new LAe(this.request.url,this.request.method)}),this;if(t instanceof Error||this[bN]===!0)return this[bN]=!1,H1(this,t,km),this;if(t===void 0)return km(this,t),this;let e=this.getHeader("content-type"),r=e!==void 0;if(t!==null){if(typeof t.pipe=="function"||typeof t.getReader=="function"||BAe.call(t)==="[object Response]")return km(this,t),this;if(t?.buffer instanceof ArrayBuffer){r===!1&&(this[bn]["content-type"]=i$.OCTET);let n=Buffer.isBuffer(t)?t:Buffer.from(t.buffer,t.byteOffset,t.byteLength);return km(this,n),this}if(r===!1&&typeof t=="string")return this[bn]["content-type"]=i$.PLAIN,km(this,t),this}if(this[gd]!==null){if(typeof t!="string")return TAe(this,t),this;t=this[gd](t)}else if(r===!1||e.indexOf("json")>-1){if(r===!1)this[bn]["content-type"]=i$.JSON;else if(e.indexOf("charset")===-1){let n=e.trim();n.endsWith(";")?this[bn]["content-type"]=`${n} charset=utf-8`:this[bn]["content-type"]=`${n}; charset=utf-8`}if(typeof t!="string")return TAe(this,t),this}return km(this,t),this};dn.prototype.getHeader=function(t){t=t.toLowerCase();let e=this.raw,r=this[bn][t];return r===void 0&&e.hasHeader(t)&&(r=e.getHeader(t)),r};dn.prototype.getHeaders=function(){return{...this.raw.getHeaders(),...this[bn]}};dn.prototype.hasHeader=function(t){return t=t.toLowerCase(),this[bn][t]!==void 0||this.raw.hasHeader(t)};dn.prototype.removeHeader=function(t){return delete this[bn][t.toLowerCase()],this};dn.prototype.header=function(t,e=""){return t=t.toLowerCase(),this[bn][t]&&t==="set-cookie"?(typeof this[bn][t]=="string"&&(this[bn][t]=[this[bn][t]]),Array.isArray(e)?Array.prototype.push.apply(this[bn][t],e):this[bn][t].push(e)):this[bn][t]=e,this};dn.prototype.headers=function(t){let e=Object.keys(t);for(var r=0;r!==e.length;++r){let n=e[r];this.header(n,t[n])}return this};var mTt=new Set(["transfer-encoding","content-length","host","cache-control","max-forwards","te","authorization","set-cookie","content-encoding","content-type","content-range","trailer"]);dn.prototype.trailer=function(t,e){if(t=t.toLowerCase(),mTt.has(t))throw new aTt(t);if(typeof e!="function")throw new oTt(t,typeof e);return this[Gs]===null&&(this[Gs]={}),this[Gs][t]=e,this};dn.prototype.hasTrailer=function(t){return this[Gs]?.[t.toLowerCase()]!==void 0};dn.prototype.removeTrailer=function(t){return this[Gs]===null?this:(this[Gs][t.toLowerCase()]=void 0,this)};dn.prototype.code=function(t){let e=Number(t);if(isNaN(e)||e<100||e>599)throw new iTt(t||String(t));return this.raw.statusCode=e,this[l$]=!0,this};dn.prototype.status=dn.prototype.code;dn.prototype.getSerializationFunction=function(t,e){let r;return typeof t=="string"||typeof t=="number"?typeof e=="string"?r=this[rr][EN]?.[t]?.[e]:r=this[rr][EN]?.[t]:typeof t=="object"&&(r=this[rr][_p]?.get(t)),r};dn.prototype.compileSerializationSchema=function(t,e=null,r=null){let{request:n}=this,{method:s,url:i}=n;if(this[rr][_p]?.has(t))return this[rr][_p].get(t);let o=(this[rr].serializerCompiler||this.server[s$].serializerCompiler||this.server[s$].setupSerializer(this.server[KIt])||this.server[s$].serializerCompiler)({schema:t,method:s,url:i,httpStatus:e,contentType:r});return this[rr][_p]==null&&(this[rr][_p]=new WeakMap),this[rr][_p].set(t,o),o};dn.prototype.serializeInput=function(t,e,r,n){let s=r,i;if(r=typeof e=="string"||typeof e=="number"?e:r,n=r&&s!==r?s:n,r!=null){if(n!=null?i=this[rr][EN]?.[r]?.[n]:i=this[rr][EN]?.[r],i==null)throw n?new uTt(r,n):new cTt(r)}else this[rr][_p]?.has(e)?i=this[rr][_p].get(e):i=this.compileSerializationSchema(e,r,n);return i(t)};dn.prototype.serialize=function(t){return this[gd]!==null?this[gd](t):this[rr]&&this[rr][xN]?this[rr][xN](t,this.raw.statusCode):$Ae(this[rr],t,this.raw.statusCode)};dn.prototype.serializer=function(t){return this[gd]=t,this};dn.prototype.type=function(t){return this[bn]["content-type"]=t,this};dn.prototype.redirect=function(t,e){return typeof t=="string"&&(e=t,t=this[l$]?this.raw.statusCode:302),this.header("location",e).code(t).send()};dn.prototype.callNotFound=function(){return bTt(this),this};dn.prototype.getResponseTime=function(){return pTt(),this.elapsedTime};dn.prototype.then=function(t,e){if(this.sent){t();return}o$(this.raw,r=>{r&&r.code!=="ERR_STREAM_PREMATURE_CLOSE"?e?e(r):this.log&&this.log.warn("unhandled rejection on reply.then"):t()})};function TAe(t,e){t[rr].preSerialization!==null?XIt(t[rr].preSerialization,t.request,t,e,wAe):wAe(null,t.request,t,e)}function wAe(t,e,r,n){if(t!=null){H1(r,t);return}try{r[gd]!==null?n=r[gd](n):r[rr]&&r[rr][xN]?n=r[rr][xN](n,r.raw.statusCode):n=$Ae(r[rr],n,r.raw.statusCode,r[bn]["content-type"])}catch(s){hTt(s,r),H1(r,s);return}km(r,n)}function hTt(t,e){t.serialization=e[rr].config}function km(t,e){t[rr].onSend!==null?kAe(t[rr].onSend,t.request,t,e,gTt):MAe(t,e)}function gTt(t,e,r,n){t!=null?H1(r,t):MAe(r,n)}function a$(t,e){let r=t.raw;try{r.writeHead(e,t[bn])}catch(n){throw n.code==="ERR_HTTP_HEADERS_SENT"&&t.log.warn(`Reply was already sent, did you forget to "return reply" in the "${t.request.raw.url}" (${t.request.raw.method}) route?`),n}}function MAe(t,e){let r=t.raw,n=t.request;if(t[Gs]!==null){let a=Object.keys(t[Gs]),o="";for(let c of a)typeof t[Gs][c]=="function"&&(o+=" ",o+=c);t.header("Transfer-Encoding","chunked"),t.header("Trailer",o.trim())}let s=BAe.call(e)==="[object Response]";s&&typeof e.status=="number"&&t.code(e.status);let i=r.statusCode;if(e==null){i>=200&&i!==204&&i!==304&&n.method!=="HEAD"&&t[Gs]===null&&(t[bn]["content-length"]="0"),a$(t,i),yN(e,r,t);return}if(i>=100&&i<200||i===204){t.removeHeader("content-type"),t.removeHeader("content-length"),a$(t,i),yN(void 0,r,t),typeof e.resume=="function"&&(e.on("error",FAe),e.resume());return}if(typeof e.pipe=="function"){WAe(e,r,t);return}if(typeof e.getReader=="function"){NAe(e,r,t);return}if(s){if(typeof e.headers=="object"&&typeof e.headers.forEach=="function")for(let[a,o]of e.headers)t.header(a,o);if(e.body!=null){if(e.bodyUsed)throw new rTt;NAe(e.body,r,t)}return}if(typeof e!="string"&&!Buffer.isBuffer(e))throw new tTt(typeof e);if(t[Gs]===null){let a=t[bn]["content-length"];(!a||n.raw.method!=="HEAD"&&Number(a)!==Buffer.byteLength(e))&&(t[bn]["content-length"]=""+Buffer.byteLength(e))}a$(t,i),r.write(e),yN(e,r,t)}function RAe(t,e,r){e.code==="ERR_STREAM_PREMATURE_CLOSE"?t[DAe]||t.info({res:r},"stream closed prematurely"):t.warn({err:e},"response terminated with an error with headers already sent")}function NAe(t,e,r){let n=VIt.fromWeb(t);WAe(n,e,r)}function WAe(t,e,r){let n=!0,s=!1;if(ATt(t,e,r),o$(t,{readable:!0,writable:!1},function(i){n=!1,i!=null&&(e.headersSent||r.request.raw.aborted===!0?(s||(s=!0,RAe(r.log,i,e)),e.destroy()):H1(r,i))}),o$(e,function(i){n&&(i!=null&&e.headersSent&&!s&&(s=!0,RAe(r.log,i,e)),typeof t.destroy=="function"?t.destroy():typeof t.close=="function"?t.close(FAe):typeof t.abort=="function"?t.abort():r.log.warn("stream payload does not end properly"))}),e.headersSent)r.log.warn("response will send, but you shouldn't use res.writeHead in stream mode");else for(let i in r[bn])e.setHeader(i,r[bn][i]);t.pipe(e)}function yN(t,e,r){if(r[Gs]===null){e.end(null,null,null);return}let n=Object.keys(r[Gs]),s={},i=0,a=!0;function o(){i===0&&(e.addTrailers(s),e.end(null,null,null))}for(let c of n){let u=function(d,f){i++,d?r.log.debug(d):s[c]=f,process.nextTick(o)};if(typeof r[Gs][c]!="function")continue;a=!1,i--;let l=r[Gs][c](r,t,u);typeof l=="object"&&typeof l.then=="function"?l.then(d=>u(null,d),u):l!=null&&(dTt(),u(null,l))}a&&e.end(null,null,null)}function ATt(t,e,r){r[Gs]!==null&&t.on("end",()=>yN(null,e,r))}function H1(t,e,r){t[rr].onError!==null&&!t[zIt]?(t[d$]=!0,kAe(t[rr].onError,t.request,t,e,()=>IAe(t,e,r))):IAe(t,e,r)}function yTt(t){t[j1]=c$();let e=r=>{t[u$]=c$(),t.raw.removeListener("finish",e),t.raw.removeListener("error",e);let n=t[rr];n&&n.onResponse!==null?YIt(n.onResponse,t.request,t,OAe):OAe(r,t.request,t)};t.raw.on("finish",e),t.raw.on("error",e)}function OAe(t,e,r){if(r.log[DAe])return;let n=r.elapsedTime;if(t!=null){r.log.error({res:r,err:t,responseTime:n},"request errored");return}r.log.info({res:r,responseTime:n},"request completed")}function xTt(t){let e=t.props.slice();function r(n,s,i){this.raw=n,this[bN]=!1,this[PAe]=!1,this[q1]=!1,this[gd]=null,this.request=s,this[bn]={},this[Gs]=null,this[j1]=void 0,this[u$]=void 0,this.log=i;for(var a,o=0;o{"use strict";UAe.exports=ETt;function ETt(t){if(!t)throw new TypeError("argument req is required");var e=STt(t.headers["x-forwarded-for"]||""),r=_Tt(t),n=[r].concat(e);return n}function _Tt(t){return t.socket?t.socket.remoteAddress:t.connection.remoteAddress}function STt(t){for(var e=t.length,r=[],n=t.length,s=t.length-1;s>=0;s--)switch(t.charCodeAt(s)){case 32:n===e&&(n=e=s);break;case 44:n!==e&&r.push(t.substring(n,e)),n=e=s;break;default:n=s;break}return n!==e&&r.push(t.substring(n,e)),r}});var HAe=E((jAe,Q1)=>{(function(){var t,e,r,n,s,i,a,o,c;e={},o=this,typeof Q1<"u"&&Q1!==null&&Q1.exports?Q1.exports=e:o.ipaddr=e,a=function(u,l,d,f){var p,m;if(u.length!==l.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");for(p=0;f>0;){if(m=d-f,m<0&&(m=0),u[p]>>m!==l[p]>>m)return!1;f-=d,p+=1}return!0},e.subnetMatch=function(u,l,d){var f,p,m,h,A;d==null&&(d="unicast");for(m in l)for(h=l[m],h[0]&&!(h[0]instanceof Array)&&(h=[h]),f=0,p=h.length;f=0;d=f+=-1)if(p=this.octets[d],p in A){if(h=A[p],m&&h!==0)return null;h!==8&&(m=!0),l+=h}else return null;return 32-l},u}(),r="(0?\\d+|0x[a-f0-9]+)",n={fourOctet:new RegExp("^"+r+"\\."+r+"\\."+r+"\\."+r+"$","i"),longValue:new RegExp("^"+r+"$","i")},e.IPv4.parser=function(u){var l,d,f,p,m;if(d=function(h){return h[0]==="0"&&h[1]!=="x"?parseInt(h,8):parseInt(h)},l=u.match(n.fourOctet))return function(){var h,A,g,b;for(g=l.slice(1,6),b=[],h=0,A=g.length;h4294967295||m<0)throw new Error("ipaddr: address outside defined range");return function(){var h,A;for(A=[],p=h=0;h<=24;p=h+=8)A.push(m>>p&255);return A}().reverse()}else return null},e.IPv6=function(){function u(l,d){var f,p,m,h,A,g;if(l.length===16)for(this.parts=[],f=p=0;p<=14;f=p+=2)this.parts.push(l[f]<<8|l[f+1]);else if(l.length===8)this.parts=l;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");for(g=this.parts,m=0,h=g.length;md&&(l=f.index,d=f[0].length);return d<0?m:m.substring(0,l)+"::"+m.substring(l+d)},u.prototype.toByteArray=function(){var l,d,f,p,m;for(l=[],m=this.parts,d=0,f=m.length;d>8),l.push(p&255);return l},u.prototype.toNormalizedString=function(){var l,d,f;return l=function(){var p,m,h,A;for(h=this.parts,A=[],p=0,m=h.length;p>8,l&255,d>>8,d&255])},u.prototype.prefixLengthFromSubnetMask=function(){var l,d,f,p,m,h,A;for(A={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},l=0,m=!1,d=f=7;f>=0;d=f+=-1)if(p=this.parts[d],p in A){if(h=A[p],m&&h!==0)return null;h!==16&&(m=!0),l+=h}else return null;return 128-l},u}(),s="(?:[0-9a-f]+::?)+",c="%[0-9a-z]{1,}",i={zoneIndex:new RegExp(c,"i"),native:new RegExp("^(::)?("+s+")?([0-9a-f]+)?(::)?("+c+")?$","i"),transitional:new RegExp("^((?:"+s+")|(?:::)(?:"+s+")?)"+(r+"\\."+r+"\\."+r+"\\."+r)+("("+c+")?$"),"i")},t=function(u,l){var d,f,p,m,h,A;if(u.indexOf("::")!==u.lastIndexOf("::"))return null;for(A=(u.match(i.zoneIndex)||[])[0],A&&(A=A.substring(1),u=u.replace(/%.+$/,"")),d=0,f=-1;(f=u.indexOf(":",f+1))>=0;)d++;if(u.substr(0,2)==="::"&&d--,u.substr(-2,2)==="::"&&d--,d>l)return null;for(h=l-d,m=":";h--;)m+="0:";return u=u.replace("::",m),u[0]===":"&&(u=u.slice(1)),u[u.length-1]===":"&&(u=u.slice(0,-1)),l=function(){var g,b,y,x;for(y=u.split(":"),x=[],g=0,b=y.length;g=0&&l<=32))return f=[this.parse(d[1]),l],Object.defineProperty(f,"toString",{value:function(){return this.join("/")}}),f;throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},e.IPv4.subnetMaskFromPrefixLength=function(u){var l,d,f;if(u=parseInt(u),u<0||u>32)throw new Error("ipaddr: invalid IPv4 prefix length");for(f=[0,0,0,0],d=0,l=Math.floor(u/8);d=0&&l<=128))return f=[this.parse(d[1]),l],Object.defineProperty(f,"toString",{value:function(){return this.join("/")}}),f;throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},e.isValid=function(u){return e.IPv6.isValid(u)||e.IPv4.isValid(u)},e.parse=function(u){if(e.IPv6.isValid(u))return e.IPv6.parse(u);if(e.IPv4.isValid(u))return e.IPv4.parse(u);throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},e.parseCIDR=function(u){var l;try{return e.IPv6.parseCIDR(u)}catch(d){l=d;try{return e.IPv4.parseCIDR(u)}catch(f){throw l=f,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},e.fromByteArray=function(u){var l;if(l=u.length,l===4)return new e.IPv4(u);if(l===16)return new e.IPv6(u);throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},e.process=function(u){var l;return l=this.parse(u),l.kind()==="ipv6"&&l.isIPv4MappedAddress()?l.toIPv4Address():l}}).call(jAe)});var KAe=E((X3r,IN)=>{"use strict";IN.exports=NTt;IN.exports.all=VAe;IN.exports.compile=zAe;var vTt=qAe(),GAe=HAe(),CTt=/^[0-9]+$/,vN=GAe.isValid,CN=GAe.parse,QAe={linklocal:["169.254.0.0/16","fe80::/10"],loopback:["127.0.0.1/8","::1/128"],uniquelocal:["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16","fc00::/7"]};function VAe(t,e){var r=vTt(t);if(!e)return r;typeof e!="function"&&(e=zAe(e));for(var n=0;ns)throw new TypeError("invalid range on address: "+t);return[n,i]}function RTt(t){var e=CN(t),r=e.kind();return r==="ipv4"?e.prefixLengthFromSubnetMask():null}function NTt(t,e){if(!t)throw new TypeError("req argument is required");if(!e)throw new TypeError("trust argument is required");var r=VAe(t,e),n=r[r.length-1];return n}function OTt(){return!1}function PTt(t){return function(r){if(!vN(r))return!1;for(var n=CN(r),s,i=n.kind(),a=0;a{"use strict";var kTt="2.0.0",LTt=Number.MAX_SAFE_INTEGER||9007199254740991,BTt=16,MTt=250,WTt=["major","premajor","minor","preminor","patch","prepatch","prerelease"];YAe.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:BTt,MAX_SAFE_BUILD_LENGTH:MTt,MAX_SAFE_INTEGER:LTt,RELEASE_TYPES:WTt,SEMVER_SPEC_VERSION:kTt,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var V1=E((eDr,JAe)=>{"use strict";var $Tt=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};JAe.exports=$Tt});var iy=E((Vu,XAe)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:f$,MAX_SAFE_BUILD_LENGTH:FTt,MAX_LENGTH:UTt}=G1(),qTt=V1();Vu=XAe.exports={};var jTt=Vu.re=[],HTt=Vu.safeRe=[],Ge=Vu.src=[],QTt=Vu.safeSrc=[],Ve=Vu.t={},GTt=0,p$="[a-zA-Z0-9-]",VTt=[["\\s",1],["\\d",UTt],[p$,FTt]],zTt=t=>{for(let[e,r]of VTt)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},Mt=(t,e,r)=>{let n=zTt(e),s=GTt++;qTt(t,s,e),Ve[t]=s,Ge[s]=e,QTt[s]=n,jTt[s]=new RegExp(e,r?"g":void 0),HTt[s]=new RegExp(n,r?"g":void 0)};Mt("NUMERICIDENTIFIER","0|[1-9]\\d*");Mt("NUMERICIDENTIFIERLOOSE","\\d+");Mt("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${p$}*`);Mt("MAINVERSION",`(${Ge[Ve.NUMERICIDENTIFIER]})\\.(${Ge[Ve.NUMERICIDENTIFIER]})\\.(${Ge[Ve.NUMERICIDENTIFIER]})`);Mt("MAINVERSIONLOOSE",`(${Ge[Ve.NUMERICIDENTIFIERLOOSE]})\\.(${Ge[Ve.NUMERICIDENTIFIERLOOSE]})\\.(${Ge[Ve.NUMERICIDENTIFIERLOOSE]})`);Mt("PRERELEASEIDENTIFIER",`(?:${Ge[Ve.NONNUMERICIDENTIFIER]}|${Ge[Ve.NUMERICIDENTIFIER]})`);Mt("PRERELEASEIDENTIFIERLOOSE",`(?:${Ge[Ve.NONNUMERICIDENTIFIER]}|${Ge[Ve.NUMERICIDENTIFIERLOOSE]})`);Mt("PRERELEASE",`(?:-(${Ge[Ve.PRERELEASEIDENTIFIER]}(?:\\.${Ge[Ve.PRERELEASEIDENTIFIER]})*))`);Mt("PRERELEASELOOSE",`(?:-?(${Ge[Ve.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${Ge[Ve.PRERELEASEIDENTIFIERLOOSE]})*))`);Mt("BUILDIDENTIFIER",`${p$}+`);Mt("BUILD",`(?:\\+(${Ge[Ve.BUILDIDENTIFIER]}(?:\\.${Ge[Ve.BUILDIDENTIFIER]})*))`);Mt("FULLPLAIN",`v?${Ge[Ve.MAINVERSION]}${Ge[Ve.PRERELEASE]}?${Ge[Ve.BUILD]}?`);Mt("FULL",`^${Ge[Ve.FULLPLAIN]}$`);Mt("LOOSEPLAIN",`[v=\\s]*${Ge[Ve.MAINVERSIONLOOSE]}${Ge[Ve.PRERELEASELOOSE]}?${Ge[Ve.BUILD]}?`);Mt("LOOSE",`^${Ge[Ve.LOOSEPLAIN]}$`);Mt("GTLT","((?:<|>)?=?)");Mt("XRANGEIDENTIFIERLOOSE",`${Ge[Ve.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Mt("XRANGEIDENTIFIER",`${Ge[Ve.NUMERICIDENTIFIER]}|x|X|\\*`);Mt("XRANGEPLAIN",`[v=\\s]*(${Ge[Ve.XRANGEIDENTIFIER]})(?:\\.(${Ge[Ve.XRANGEIDENTIFIER]})(?:\\.(${Ge[Ve.XRANGEIDENTIFIER]})(?:${Ge[Ve.PRERELEASE]})?${Ge[Ve.BUILD]}?)?)?`);Mt("XRANGEPLAINLOOSE",`[v=\\s]*(${Ge[Ve.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ge[Ve.XRANGEIDENTIFIERLOOSE]})(?:\\.(${Ge[Ve.XRANGEIDENTIFIERLOOSE]})(?:${Ge[Ve.PRERELEASELOOSE]})?${Ge[Ve.BUILD]}?)?)?`);Mt("XRANGE",`^${Ge[Ve.GTLT]}\\s*${Ge[Ve.XRANGEPLAIN]}$`);Mt("XRANGELOOSE",`^${Ge[Ve.GTLT]}\\s*${Ge[Ve.XRANGEPLAINLOOSE]}$`);Mt("COERCEPLAIN",`(^|[^\\d])(\\d{1,${f$}})(?:\\.(\\d{1,${f$}}))?(?:\\.(\\d{1,${f$}}))?`);Mt("COERCE",`${Ge[Ve.COERCEPLAIN]}(?:$|[^\\d])`);Mt("COERCEFULL",Ge[Ve.COERCEPLAIN]+`(?:${Ge[Ve.PRERELEASE]})?(?:${Ge[Ve.BUILD]})?(?:$|[^\\d])`);Mt("COERCERTL",Ge[Ve.COERCE],!0);Mt("COERCERTLFULL",Ge[Ve.COERCEFULL],!0);Mt("LONETILDE","(?:~>?)");Mt("TILDETRIM",`(\\s*)${Ge[Ve.LONETILDE]}\\s+`,!0);Vu.tildeTrimReplace="$1~";Mt("TILDE",`^${Ge[Ve.LONETILDE]}${Ge[Ve.XRANGEPLAIN]}$`);Mt("TILDELOOSE",`^${Ge[Ve.LONETILDE]}${Ge[Ve.XRANGEPLAINLOOSE]}$`);Mt("LONECARET","(?:\\^)");Mt("CARETTRIM",`(\\s*)${Ge[Ve.LONECARET]}\\s+`,!0);Vu.caretTrimReplace="$1^";Mt("CARET",`^${Ge[Ve.LONECARET]}${Ge[Ve.XRANGEPLAIN]}$`);Mt("CARETLOOSE",`^${Ge[Ve.LONECARET]}${Ge[Ve.XRANGEPLAINLOOSE]}$`);Mt("COMPARATORLOOSE",`^${Ge[Ve.GTLT]}\\s*(${Ge[Ve.LOOSEPLAIN]})$|^$`);Mt("COMPARATOR",`^${Ge[Ve.GTLT]}\\s*(${Ge[Ve.FULLPLAIN]})$|^$`);Mt("COMPARATORTRIM",`(\\s*)${Ge[Ve.GTLT]}\\s*(${Ge[Ve.LOOSEPLAIN]}|${Ge[Ve.XRANGEPLAIN]})`,!0);Vu.comparatorTrimReplace="$1$2$3";Mt("HYPHENRANGE",`^\\s*(${Ge[Ve.XRANGEPLAIN]})\\s+-\\s+(${Ge[Ve.XRANGEPLAIN]})\\s*$`);Mt("HYPHENRANGELOOSE",`^\\s*(${Ge[Ve.XRANGEPLAINLOOSE]})\\s+-\\s+(${Ge[Ve.XRANGEPLAINLOOSE]})\\s*$`);Mt("STAR","(<|>)?=?\\s*\\*");Mt("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Mt("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var TN=E((tDr,ZAe)=>{"use strict";var KTt=Object.freeze({loose:!0}),YTt=Object.freeze({}),JTt=t=>t?typeof t!="object"?KTt:t:YTt;ZAe.exports=JTt});var m$=E((rDr,rye)=>{"use strict";var eye=/^[0-9]+$/,tye=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:ttye(e,t);rye.exports={compareIdentifiers:tye,rcompareIdentifiers:XTt}});var Ni=E((nDr,sye)=>{"use strict";var wN=V1(),{MAX_LENGTH:nye,MAX_SAFE_INTEGER:RN}=G1(),{safeRe:NN,t:ON}=iy(),ZTt=TN(),{compareIdentifiers:h$}=m$(),g$=class t{constructor(e,r){if(r=ZTt(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>nye)throw new TypeError(`version is longer than ${nye} characters`);wN("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?NN[ON.LOOSE]:NN[ON.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>RN||this.major<0)throw new TypeError("Invalid major version");if(this.minor>RN||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>RN||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let i=+s;if(i>=0&&ie.major?1:this.minore.minor?1:this.patche.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=e.prerelease[r];if(wN("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return h$(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(wN("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return h$(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?NN[ON.PRERELEASELOOSE]:NN[ON.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let i=this.prerelease.length;for(;--i>=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);if(i===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let i=[r,s];n===!1&&(i=[r]),h$(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=i):this.prerelease=i}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};sye.exports=g$});var Lm=E((sDr,aye)=>{"use strict";var iye=Ni(),ewt=(t,e,r=!1)=>{if(t instanceof iye)return t;try{return new iye(t,e)}catch(n){if(!r)return null;throw n}};aye.exports=ewt});var cye=E((iDr,oye)=>{"use strict";var twt=Lm(),rwt=(t,e)=>{let r=twt(t,e);return r?r.version:null};oye.exports=rwt});var lye=E((aDr,uye)=>{"use strict";var nwt=Lm(),swt=(t,e)=>{let r=nwt(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};uye.exports=swt});var pye=E((oDr,fye)=>{"use strict";var dye=Ni(),iwt=(t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new dye(t instanceof dye?t.version:t,r).inc(e,n,s).version}catch{return null}};fye.exports=iwt});var gye=E((cDr,hye)=>{"use strict";var mye=Lm(),awt=(t,e)=>{let r=mye(t,null,!0),n=mye(e,null,!0),s=r.compare(n);if(s===0)return null;let i=s>0,a=i?r:n,o=i?n:r,c=!!a.prerelease.length;if(!!o.prerelease.length&&!c){if(!o.patch&&!o.minor)return"major";if(o.compareMain(a)===0)return o.minor&&!o.patch?"minor":"patch"}let l=c?"pre":"";return r.major!==n.major?l+"major":r.minor!==n.minor?l+"minor":r.patch!==n.patch?l+"patch":"prerelease"};hye.exports=awt});var yye=E((uDr,Aye)=>{"use strict";var owt=Ni(),cwt=(t,e)=>new owt(t,e).major;Aye.exports=cwt});var bye=E((lDr,xye)=>{"use strict";var uwt=Ni(),lwt=(t,e)=>new uwt(t,e).minor;xye.exports=lwt});var _ye=E((dDr,Eye)=>{"use strict";var dwt=Ni(),fwt=(t,e)=>new dwt(t,e).patch;Eye.exports=fwt});var vye=E((fDr,Sye)=>{"use strict";var pwt=Lm(),mwt=(t,e)=>{let r=pwt(t,e);return r&&r.prerelease.length?r.prerelease:null};Sye.exports=mwt});var Ko=E((pDr,Iye)=>{"use strict";var Cye=Ni(),hwt=(t,e,r)=>new Cye(t,r).compare(new Cye(e,r));Iye.exports=hwt});var wye=E((mDr,Tye)=>{"use strict";var gwt=Ko(),Awt=(t,e,r)=>gwt(e,t,r);Tye.exports=Awt});var Nye=E((hDr,Rye)=>{"use strict";var ywt=Ko(),xwt=(t,e)=>ywt(t,e,!0);Rye.exports=xwt});var PN=E((gDr,Pye)=>{"use strict";var Oye=Ni(),bwt=(t,e,r)=>{let n=new Oye(t,r),s=new Oye(e,r);return n.compare(s)||n.compareBuild(s)};Pye.exports=bwt});var kye=E((ADr,Dye)=>{"use strict";var Ewt=PN(),_wt=(t,e)=>t.sort((r,n)=>Ewt(r,n,e));Dye.exports=_wt});var Bye=E((yDr,Lye)=>{"use strict";var Swt=PN(),vwt=(t,e)=>t.sort((r,n)=>Swt(n,r,e));Lye.exports=vwt});var z1=E((xDr,Mye)=>{"use strict";var Cwt=Ko(),Iwt=(t,e,r)=>Cwt(t,e,r)>0;Mye.exports=Iwt});var DN=E((bDr,Wye)=>{"use strict";var Twt=Ko(),wwt=(t,e,r)=>Twt(t,e,r)<0;Wye.exports=wwt});var A$=E((EDr,$ye)=>{"use strict";var Rwt=Ko(),Nwt=(t,e,r)=>Rwt(t,e,r)===0;$ye.exports=Nwt});var y$=E((_Dr,Fye)=>{"use strict";var Owt=Ko(),Pwt=(t,e,r)=>Owt(t,e,r)!==0;Fye.exports=Pwt});var kN=E((SDr,Uye)=>{"use strict";var Dwt=Ko(),kwt=(t,e,r)=>Dwt(t,e,r)>=0;Uye.exports=kwt});var LN=E((vDr,qye)=>{"use strict";var Lwt=Ko(),Bwt=(t,e,r)=>Lwt(t,e,r)<=0;qye.exports=Bwt});var x$=E((CDr,jye)=>{"use strict";var Mwt=A$(),Wwt=y$(),$wt=z1(),Fwt=kN(),Uwt=DN(),qwt=LN(),jwt=(t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Mwt(t,r,n);case"!=":return Wwt(t,r,n);case">":return $wt(t,r,n);case">=":return Fwt(t,r,n);case"<":return Uwt(t,r,n);case"<=":return qwt(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};jye.exports=jwt});var Qye=E((IDr,Hye)=>{"use strict";var Hwt=Ni(),Qwt=Lm(),{safeRe:BN,t:MN}=iy(),Gwt=(t,e)=>{if(t instanceof Hwt)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?BN[MN.COERCEFULL]:BN[MN.COERCE]);else{let c=e.includePrerelease?BN[MN.COERCERTLFULL]:BN[MN.COERCERTL],u;for(;(u=c.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||u.index+u[0].length!==r.index+r[0].length)&&(r=u),c.lastIndex=u.index+u[1].length+u[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",i=r[4]||"0",a=e.includePrerelease&&r[5]?`-${r[5]}`:"",o=e.includePrerelease&&r[6]?`+${r[6]}`:"";return Qwt(`${n}.${s}.${i}${a}${o}`,e)};Hye.exports=Gwt});var Vye=E((TDr,Gye)=>{"use strict";var b$=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};Gye.exports=b$});var Yo=E((wDr,Jye)=>{"use strict";var Vwt=/\s+/g,E$=class t{constructor(e,r){if(r=Kwt(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof _$)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(Vwt," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!Kye(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&r2t(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e0&&(this.formatted+="||");let r=this.set[e];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){let n=((this.options.includePrerelease&&e2t)|(this.options.loose&&t2t))+":"+e,s=zye.get(n);if(s)return s;let i=this.options.loose,a=i?ra[Oi.HYPHENRANGELOOSE]:ra[Oi.HYPHENRANGE];e=e.replace(a,f2t(this.options.includePrerelease)),On("hyphen replace",e),e=e.replace(ra[Oi.COMPARATORTRIM],Jwt),On("comparator trim",e),e=e.replace(ra[Oi.TILDETRIM],Xwt),On("tilde trim",e),e=e.replace(ra[Oi.CARETTRIM],Zwt),On("caret trim",e);let o=e.split(" ").map(d=>n2t(d,this.options)).join(" ").split(/\s+/).map(d=>d2t(d,this.options));i&&(o=o.filter(d=>(On("loose invalid filter",d,this.options),!!d.match(ra[Oi.COMPARATORLOOSE])))),On("range list",o);let c=new Map,u=o.map(d=>new _$(d,this.options));for(let d of u){if(Kye(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let l=[...c.values()];return zye.set(n,l),l}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>Yye(n,r)&&e.set.some(s=>Yye(s,r)&&n.every(i=>s.every(a=>i.intersects(a,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new Ywt(e,this.options)}catch{return!1}for(let r=0;rt.value==="<0.0.0-0",r2t=t=>t.value==="",Yye=(t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(i=>s.intersects(i,e)),s=n.pop();return r},n2t=(t,e)=>(t=t.replace(ra[Oi.BUILD],""),On("comp",t,e),t=a2t(t,e),On("caret",t),t=s2t(t,e),On("tildes",t),t=c2t(t,e),On("xrange",t),t=l2t(t,e),On("stars",t),t),na=t=>!t||t.toLowerCase()==="x"||t==="*",s2t=(t,e)=>t.trim().split(/\s+/).map(r=>i2t(r,e)).join(" "),i2t=(t,e)=>{let r=e.loose?ra[Oi.TILDELOOSE]:ra[Oi.TILDE];return t.replace(r,(n,s,i,a,o)=>{On("tilde",t,n,s,i,a,o);let c;return na(s)?c="":na(i)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:na(a)?c=`>=${s}.${i}.0 <${s}.${+i+1}.0-0`:o?(On("replaceTilde pr",o),c=`>=${s}.${i}.${a}-${o} <${s}.${+i+1}.0-0`):c=`>=${s}.${i}.${a} <${s}.${+i+1}.0-0`,On("tilde return",c),c})},a2t=(t,e)=>t.trim().split(/\s+/).map(r=>o2t(r,e)).join(" "),o2t=(t,e)=>{On("caret",t,e);let r=e.loose?ra[Oi.CARETLOOSE]:ra[Oi.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,i,a,o,c)=>{On("caret",t,s,i,a,o,c);let u;return na(i)?u="":na(a)?u=`>=${i}.0.0${n} <${+i+1}.0.0-0`:na(o)?i==="0"?u=`>=${i}.${a}.0${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.0${n} <${+i+1}.0.0-0`:c?(On("replaceCaret pr",c),i==="0"?a==="0"?u=`>=${i}.${a}.${o}-${c} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}-${c} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o}-${c} <${+i+1}.0.0-0`):(On("no pr"),i==="0"?a==="0"?u=`>=${i}.${a}.${o}${n} <${i}.${a}.${+o+1}-0`:u=`>=${i}.${a}.${o}${n} <${i}.${+a+1}.0-0`:u=`>=${i}.${a}.${o} <${+i+1}.0.0-0`),On("caret return",u),u})},c2t=(t,e)=>(On("replaceXRanges",t,e),t.split(/\s+/).map(r=>u2t(r,e)).join(" ")),u2t=(t,e)=>{t=t.trim();let r=e.loose?ra[Oi.XRANGELOOSE]:ra[Oi.XRANGE];return t.replace(r,(n,s,i,a,o,c)=>{On("xRange",t,n,s,i,a,o,c);let u=na(i),l=u||na(a),d=l||na(o),f=d;return s==="="&&f&&(s=""),c=e.includePrerelease?"-0":"",u?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&f?(l&&(a=0),o=0,s===">"?(s=">=",l?(i=+i+1,a=0,o=0):(a=+a+1,o=0)):s==="<="&&(s="<",l?i=+i+1:a=+a+1),s==="<"&&(c="-0"),n=`${s+i}.${a}.${o}${c}`):l?n=`>=${i}.0.0${c} <${+i+1}.0.0-0`:d&&(n=`>=${i}.${a}.0${c} <${i}.${+a+1}.0-0`),On("xRange return",n),n})},l2t=(t,e)=>(On("replaceStars",t,e),t.trim().replace(ra[Oi.STAR],"")),d2t=(t,e)=>(On("replaceGTE0",t,e),t.trim().replace(ra[e.includePrerelease?Oi.GTE0PRE:Oi.GTE0],"")),f2t=t=>(e,r,n,s,i,a,o,c,u,l,d,f)=>(na(n)?r="":na(s)?r=`>=${n}.0.0${t?"-0":""}`:na(i)?r=`>=${n}.${s}.0${t?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,na(u)?c="":na(l)?c=`<${+u+1}.0.0-0`:na(d)?c=`<${u}.${+l+1}.0-0`:f?c=`<=${u}.${l}.${d}-${f}`:t?c=`<${u}.${l}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),p2t=(t,e,r)=>{for(let n=0;n0){let s=t[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0}});var K1=E((RDr,nxe)=>{"use strict";var Y1=Symbol("SemVer ANY"),C$=class t{static get ANY(){return Y1}constructor(e,r){if(r=Xye(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),v$("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===Y1?this.value="":this.value=this.operator+this.semver.version,v$("comp",this)}parse(e){let r=this.options.loose?Zye[exe.COMPARATORLOOSE]:Zye[exe.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new txe(n[2],this.options.loose):this.semver=Y1}toString(){return this.value}test(e){if(v$("Comparator.test",e,this.options.loose),this.semver===Y1||e===Y1)return!0;if(typeof e=="string")try{e=new txe(e,this.options)}catch{return!1}return S$(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new rxe(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new rxe(this.value,r).test(e.semver):(r=Xye(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||S$(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||S$(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};nxe.exports=C$;var Xye=TN(),{safeRe:Zye,t:exe}=iy(),S$=x$(),v$=V1(),txe=Ni(),rxe=Yo()});var J1=E((NDr,sxe)=>{"use strict";var m2t=Yo(),h2t=(t,e,r)=>{try{e=new m2t(e,r)}catch{return!1}return e.test(t)};sxe.exports=h2t});var axe=E((ODr,ixe)=>{"use strict";var g2t=Yo(),A2t=(t,e)=>new g2t(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));ixe.exports=A2t});var cxe=E((PDr,oxe)=>{"use strict";var y2t=Ni(),x2t=Yo(),b2t=(t,e,r)=>{let n=null,s=null,i=null;try{i=new x2t(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new y2t(n,r))}),n};oxe.exports=b2t});var lxe=E((DDr,uxe)=>{"use strict";var E2t=Ni(),_2t=Yo(),S2t=(t,e,r)=>{let n=null,s=null,i=null;try{i=new _2t(e,r)}catch{return null}return t.forEach(a=>{i.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new E2t(n,r))}),n};uxe.exports=S2t});var pxe=E((kDr,fxe)=>{"use strict";var I$=Ni(),v2t=Yo(),dxe=z1(),C2t=(t,e)=>{t=new v2t(t,e);let r=new I$("0.0.0");if(t.test(r)||(r=new I$("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n{let o=new I$(a.semver.version);switch(a.operator){case">":o.prerelease.length===0?o.patch++:o.prerelease.push(0),o.raw=o.format();case"":case">=":(!i||dxe(o,i))&&(i=o);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),i&&(!r||dxe(r,i))&&(r=i)}return r&&t.test(r)?r:null};fxe.exports=C2t});var hxe=E((LDr,mxe)=>{"use strict";var I2t=Yo(),T2t=(t,e)=>{try{return new I2t(t,e).range||"*"}catch{return null}};mxe.exports=T2t});var WN=E((BDr,xxe)=>{"use strict";var w2t=Ni(),yxe=K1(),{ANY:R2t}=yxe,N2t=Yo(),O2t=J1(),gxe=z1(),Axe=DN(),P2t=LN(),D2t=kN(),k2t=(t,e,r,n)=>{t=new w2t(t,n),e=new N2t(e,n);let s,i,a,o,c;switch(r){case">":s=gxe,i=P2t,a=Axe,o=">",c=">=";break;case"<":s=Axe,i=D2t,a=gxe,o="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(O2t(t,e,n))return!1;for(let u=0;u{p.semver===R2t&&(p=new yxe(">=0.0.0")),d=d||p,f=f||p,s(p.semver,d.semver,n)?d=p:a(p.semver,f.semver,n)&&(f=p)}),d.operator===o||d.operator===c||(!f.operator||f.operator===o)&&i(t,f.semver))return!1;if(f.operator===c&&a(t,f.semver))return!1}return!0};xxe.exports=k2t});var Exe=E((MDr,bxe)=>{"use strict";var L2t=WN(),B2t=(t,e,r)=>L2t(t,e,">",r);bxe.exports=B2t});var Sxe=E((WDr,_xe)=>{"use strict";var M2t=WN(),W2t=(t,e,r)=>M2t(t,e,"<",r);_xe.exports=W2t});var Ixe=E(($Dr,Cxe)=>{"use strict";var vxe=Yo(),$2t=(t,e,r)=>(t=new vxe(t,r),e=new vxe(e,r),t.intersects(e,r));Cxe.exports=$2t});var wxe=E((FDr,Txe)=>{"use strict";var F2t=J1(),U2t=Ko();Txe.exports=(t,e,r)=>{let n=[],s=null,i=null,a=t.sort((l,d)=>U2t(l,d,r));for(let l of a)F2t(l,e,r)?(i=l,s||(s=l)):(i&&n.push([s,i]),i=null,s=null);s&&n.push([s,null]);let o=[];for(let[l,d]of n)l===d?o.push(l):!d&&l===a[0]?o.push("*"):d?l===a[0]?o.push(`<=${d}`):o.push(`${l} - ${d}`):o.push(`>=${l}`);let c=o.join(" || "),u=typeof e.raw=="string"?e.raw:String(e);return c.length{"use strict";var Rxe=Yo(),w$=K1(),{ANY:T$}=w$,X1=J1(),R$=Ko(),q2t=(t,e,r={})=>{if(t===e)return!0;t=new Rxe(t,r),e=new Rxe(e,r);let n=!1;e:for(let s of t.set){for(let i of e.set){let a=H2t(s,i,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},j2t=[new w$(">=0.0.0-0")],Nxe=[new w$(">=0.0.0")],H2t=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===T$){if(e.length===1&&e[0].semver===T$)return!0;r.includePrerelease?t=j2t:t=Nxe}if(e.length===1&&e[0].semver===T$){if(r.includePrerelease)return!0;e=Nxe}let n=new Set,s,i;for(let p of t)p.operator===">"||p.operator===">="?s=Oxe(s,p,r):p.operator==="<"||p.operator==="<="?i=Pxe(i,p,r):n.add(p.semver);if(n.size>1)return null;let a;if(s&&i){if(a=R$(s.semver,i.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let p of n){if(s&&!X1(p,String(s),r)||i&&!X1(p,String(i),r))return null;for(let m of e)if(!X1(p,String(m),r))return!1;return!0}let o,c,u,l,d=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1,f=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;d&&d.prerelease.length===1&&i.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let p of e){if(l=l||p.operator===">"||p.operator===">=",u=u||p.operator==="<"||p.operator==="<=",s){if(f&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===f.major&&p.semver.minor===f.minor&&p.semver.patch===f.patch&&(f=!1),p.operator===">"||p.operator===">="){if(o=Oxe(s,p,r),o===p&&o!==s)return!1}else if(s.operator===">="&&!X1(s.semver,String(p),r))return!1}if(i){if(d&&p.semver.prerelease&&p.semver.prerelease.length&&p.semver.major===d.major&&p.semver.minor===d.minor&&p.semver.patch===d.patch&&(d=!1),p.operator==="<"||p.operator==="<="){if(c=Pxe(i,p,r),c===p&&c!==i)return!1}else if(i.operator==="<="&&!X1(i.semver,String(p),r))return!1}if(!p.operator&&(i||s)&&a!==0)return!1}return!(s&&u&&!i&&a!==0||i&&l&&!s&&a!==0||f||d)},Oxe=(t,e,r)=>{if(!t)return e;let n=R$(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},Pxe=(t,e,r)=>{if(!t)return e;let n=R$(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};Dxe.exports=q2t});var O$=E((qDr,Mxe)=>{"use strict";var N$=iy(),Lxe=G1(),Q2t=Ni(),Bxe=m$(),G2t=Lm(),V2t=cye(),z2t=lye(),K2t=pye(),Y2t=gye(),J2t=yye(),X2t=bye(),Z2t=_ye(),eRt=vye(),tRt=Ko(),rRt=wye(),nRt=Nye(),sRt=PN(),iRt=kye(),aRt=Bye(),oRt=z1(),cRt=DN(),uRt=A$(),lRt=y$(),dRt=kN(),fRt=LN(),pRt=x$(),mRt=Qye(),hRt=K1(),gRt=Yo(),ARt=J1(),yRt=axe(),xRt=cxe(),bRt=lxe(),ERt=pxe(),_Rt=hxe(),SRt=WN(),vRt=Exe(),CRt=Sxe(),IRt=Ixe(),TRt=wxe(),wRt=kxe();Mxe.exports={parse:G2t,valid:V2t,clean:z2t,inc:K2t,diff:Y2t,major:J2t,minor:X2t,patch:Z2t,prerelease:eRt,compare:tRt,rcompare:rRt,compareLoose:nRt,compareBuild:sRt,sort:iRt,rsort:aRt,gt:oRt,lt:cRt,eq:uRt,neq:lRt,gte:dRt,lte:fRt,cmp:pRt,coerce:mRt,Comparator:hRt,Range:gRt,satisfies:ARt,toComparators:yRt,maxSatisfying:xRt,minSatisfying:bRt,minVersion:ERt,validRange:_Rt,outside:SRt,gtr:vRt,ltr:CRt,intersects:IRt,simplifyRange:TRt,subset:wRt,SemVer:Q2t,re:N$.re,src:N$.src,tokens:N$.t,SEMVER_SPEC_VERSION:Lxe.SEMVER_SPEC_VERSION,RELEASE_TYPES:Lxe.RELEASE_TYPES,compareIdentifiers:Bxe.compareIdentifiers,rcompareIdentifiers:Bxe.rcompareIdentifiers}});var FN=E((jDr,L$)=>{"use strict";var $N=KAe(),RRt=O$(),{FSTDEP005:NRt,FSTDEP012:ORt,FSTDEP015:PRt,FSTDEP016:DRt,FSTDEP017:kRt,FSTDEP018:LRt}=cd(),{kHasBeenDecorated:BRt,kSchemaBody:MRt,kSchemaHeaders:WRt,kSchemaParams:$Rt,kSchemaQuerystring:Wxe,kSchemaController:P$,kOptions:FRt,kRequestCacheValidateFns:Sp,kRouteContext:us,kPublicRouteContext:$xe,kRequestOriginalUrl:D$}=Qs(),{FST_ERR_REQ_INVALID_VALIDATION_INVOCATION:URt}=Ci(),Fxe={body:MRt,headers:WRt,params:$Rt,querystring:Wxe,query:Wxe};function k$(t,e,r,n,s,i){this.id=t,this[us]=i,this.params=e,this.raw=r,this.query=n,this.log=s,this.body=void 0}k$.props=[];function qRt(t){if(typeof t=="function")return t;if(t===!0)return function(){return!0};if(typeof t=="number")return function(e,r){return rr.trim());return $N.compile(e)}return $N.compile(t)}function jRt(t,e){return e?HRt(t,e):qxe(t)}function qxe(t){let e=t.props.slice();function r(n,s,i,a,o,c){this.id=n,this[us]=c,this.params=s,this.raw=i,this.query=a,this.log=o,this.body=void 0;for(var u,l=0;lt.config},schema:{get:()=>t.schema}}),Object.freeze(s)}},routerMethod:{get(){return LRt(),this[us].config?.method}},routeConfig:{get(){return DRt(),this[us][$xe]?.config}},routeSchema:{get(){return PRt(),this[us][$xe].schema}},is404:{get(){return this[us].config?.url===void 0}},connection:{get(){return RRt.gte(process.versions.node,"13.0.0")&&NRt(),this.raw.connection}},socket:{get(){return this.raw.socket}},ip:{get(){if(this.socket)return this.socket.remoteAddress}},hostname:{get(){return this.raw.headers.host||this.raw.headers[":authority"]}},protocol:{get(){if(this.socket)return this.socket.encrypted?"https":"http"}},headers:{get(){return this.additionalHeaders?Object.assign({},this.raw.headers,this.additionalHeaders):this.raw.headers},set(t){this.additionalHeaders=t}},getValidationFunction:{value:function(t){if(typeof t=="string"){let e=Fxe[t];return this[us][e]}else if(typeof t=="object")return this[us][Sp]?.get(t)}},compileValidationSchema:{value:function(t,e=null){let{method:r,url:n}=this;if(this[us][Sp]?.has(t))return this[us][Sp].get(t);let i=(this[us].validatorCompiler||this.server[P$].validatorCompiler||this.server[P$].setupValidator(this.server[FRt])||this.server[P$].validatorCompiler)({schema:t,method:r,url:n,httpPart:e});return this[us][Sp]==null&&(this[us][Sp]=new WeakMap),this[us][Sp].set(t,i),i}},validateInput:{value:function(t,e,r){r=typeof e=="string"?e:r;let n=r!=null&&typeof r=="string"&&Fxe[r],s;if(n&&(s=this[us][n]),s==null&&(e==null||typeof e!="object"||Array.isArray(e)))throw new URt(r);return s==null&&(this[us][Sp]?.has(e)?s=this[us][Sp].get(e):s=this.compileValidationSchema(e,r)),s(t)}}});L$.exports=k$;L$.exports.buildRequest=jRt});var UN=E((HDr,jxe)=>{"use strict";var{kFourOhFourContext:QRt,kReplySerializerDefault:GRt,kSchemaErrorFormatter:VRt,kErrorHandler:zRt,kChildLoggerFactory:KRt,kOptions:YRt,kReply:JRt,kRequest:XRt,kBodyLimit:ZRt,kLogLevel:eNt,kContentTypeParser:tNt,kRouteByFastify:rNt,kRequestCacheValidateFns:nNt,kReplyCacheSerializeFns:sNt,kPublicRouteContext:iNt}=Qs();function aNt({schema:t,handler:e,config:r,requestIdLogLabel:n,childLoggerFactory:s,errorHandler:i,bodyLimit:a,logLevel:o,logSerializers:c,attachValidation:u,validatorCompiler:l,serializerCompiler:d,replySerializer:f,schemaErrorFormatter:p,exposeHeadRoute:m,prefixTrailingSlash:h,server:A,isFastify:g}){this.schema=t,this.handler=e,this.Reply=A[JRt],this.Request=A[XRt],this.contentTypeParser=A[tNt],this.onRequest=null,this.onSend=null,this.onError=null,this.onTimeout=null,this.preHandler=null,this.onResponse=null,this.preSerialization=null,this.onRequestAbort=null,this.config=r,this.errorHandler=i||A[zRt],this.requestIdLogLabel=n||A[YRt].requestIdLogLabel,this.childLoggerFactory=s||A[KRt],this._middie=null,this._parserOptions={limit:a||A[ZRt]},this.exposeHeadRoute=m,this.prefixTrailingSlash=h,this.logLevel=o||A[eNt],this.logSerializers=c,this[QRt]=null,this.attachValidation=u,this[GRt]=f,this.schemaErrorFormatter=p||A[VRt]||cNt,this[rNt]=g,this[nNt]=null,this[sNt]=null,this.validatorCompiler=l||null,this.serializerCompiler=d||null,this[iNt]=oNt(this),this.server=A}function oNt(t){return Object.create(null,{schema:{enumerable:!0,get(){return t.schema}},config:{enumerable:!0,get(){return t.config}}})}function cNt(t,e){let r="",n=", ";for(var s=0;s!==t.length;++s){let i=t[s];r+=e+(i.instancePath||"")+" "+i.message+n}return new Error(r.slice(0,-n.length))}jxe.exports=aNt});var B$=E((QDr,Hxe)=>{"use strict";Hxe.exports={supportedMethods:["DELETE","GET","HEAD","PATCH","POST","PUT","OPTIONS","PROPFIND","PROPPATCH","MKCOL","COPY","MOVE","LOCK","UNLOCK","TRACE","SEARCH"]}});var U$=E((GDr,zxe)=>{"use strict";var{kReply:M$,kRequest:W$,kState:uNt,kHasBeenDecorated:lNt}=Qs(),{FST_ERR_DEC_ALREADY_PRESENT:Qxe,FST_ERR_DEC_MISSING_DEPENDENCY:dNt,FST_ERR_DEC_AFTER_START:fNt,FST_ERR_DEC_DEPENDENCY_INVALID_TYPE:pNt}=Ci(),{FSTDEP006:mNt}=cd();function hNt(t,e,r,n){if(Object.prototype.hasOwnProperty.call(t,e))throw new Qxe(e);$$(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(t,e,{get:r.getter,set:r.setter}):t[e]=r}function Gxe(t,e,r,n){let s=t.prototype;if(Object.prototype.hasOwnProperty.call(s,e)||jN(t,e))throw new Qxe(e);t[lNt]=!0,$$(t,e,n),r&&(typeof r.getter=="function"||typeof r.setter=="function")?Object.defineProperty(s,e,{get:r.getter,set:r.setter}):typeof r=="function"?s[e]=r:t.props.push({key:e,value:r})}function Vxe(t,e){typeof e=="object"&&e&&!(typeof e.getter=="function"||typeof e.setter=="function")&&mNt(t)}function gNt(t,e,r){return F$(this,t),hNt(this,t,e,r),this}function qN(t,e){return e?e in t||t.prototype&&e in t.prototype||jN(t,e):t in this}function jN(t,e){return t.props?t.props.find(({key:r})=>r===e):!1}function ANt(t){return t&&jN(this[W$],t)?!0:qN(this[W$].prototype,t)}function yNt(t){return t&&jN(this[M$],t)?!0:qN(this[M$].prototype,t)}function $$(t,e,r){if(r!=null){if(!Array.isArray(r))throw new pNt(e);for(var n=0;n!==r.length;++n)if(!qN(t,r[n]))throw new dNt(r[n])}}function xNt(t,e,r){return F$(this,t),Vxe(t,e),Gxe(this[M$],t,e,r),this}function bNt(t,e,r){return F$(this,t),Vxe(t,e),Gxe(this[W$],t,e,r),this}function F$(t,e){if(t[uNt].started)throw new fNt(e)}zxe.exports={add:gNt,exist:qN,existRequest:ANt,existReply:yNt,dependencies:$$,decorateReply:xNt,decorateRequest:bNt}});var Yxe=E(zu=>{"use strict";var q$=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=e,this.ttl=r}get size(){return this.items.size}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;r0){let e=this.first;this.items.delete(e.key),this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(this.items.has(e))return this.items.get(e).expiry}get(e){if(this.items.has(e)){let r=this.items.get(e);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return r.value}}getMany(e){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl;return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:e,prev:this.last,next:null,value:r};this.items.set(e,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},j$=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=new Map,this.last=null,this.max=e,this.ttl=r}get size(){return this.items.size}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=new Map,this.first=null,this.last=null}delete(e){if(this.items.has(e)){let r=this.items.get(e);this.items.delete(e),r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;r0){let e=this.first;this.items.delete(e.key),this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(this.items.has(e))return this.items.get(e).expiry}get(e){if(this.items.has(e)){let r=this.items.get(e);if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return this.bumpLru(r),r.value}}getMany(e){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl,this.last!==s&&this.bumpLru(s);return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:e,prev:this.last,next:null,value:r};this.items.set(e,n),this.size===1?this.first=n:this.last.next=n,this.last=n}},Z1=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=e,this.ttl=r}bumpLru(e){if(this.last===e)return;let r=this.last,n=e.next,s=e.prev;this.first===e&&(this.first=n),e.next=null,e.prev=r,r.next=e,s!==null&&(s.next=n),n!==null&&(n.prev=s),this.last=e}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;r0){let e=this.first;delete this.items[e.key],--this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(Object.prototype.hasOwnProperty.call(this.items,e))return this.items[e].expiry}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return this.bumpLru(r),r.value}}getMany(e){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl,this.last!==s&&this.bumpLru(s);return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:e,prev:this.last,next:null,value:r};this.items[e]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}},HN=class{constructor(){this.records={}}initForCache(e,r){this.records[e]={[r]:{cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}}resetForCache(e){for(let r of Object.keys(this.records[e]))this.records[e][r]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,invalidateOne:0,invalidateAll:0,sets:0}}getStatistics(){return this.records}};function Kxe(t){return`${t.getFullYear()}-${(t.getMonth()+1).toString().padStart(2,"0")}-${t.getDate().toString().padStart(2,"0")}`}var H$=class{constructor(e,r,n){this.cacheId=e,this.statisticTtlInHours=r,this.collectionStart=new Date,this.currentTimeStamp=Kxe(this.collectionStart),this.records=n||new HN,this.records.initForCache(this.cacheId,this.currentTimeStamp)}get currentRecord(){return this.records.records[this.cacheId][this.currentTimeStamp]||(this.records.records[this.cacheId][this.currentTimeStamp]={cacheSize:0,hits:0,falsyHits:0,emptyHits:0,misses:0,expirations:0,evictions:0,sets:0,invalidateOne:0,invalidateAll:0}),this.records.records[this.cacheId][this.currentTimeStamp]}hoursPassed(){return(Date.now()-this.collectionStart)/1e3/60/60}addHit(){this.archiveIfNeeded(),this.currentRecord.hits++}addFalsyHit(){this.archiveIfNeeded(),this.currentRecord.falsyHits++}addEmptyHit(){this.archiveIfNeeded(),this.currentRecord.emptyHits++}addMiss(){this.archiveIfNeeded(),this.currentRecord.misses++}addEviction(){this.archiveIfNeeded(),this.currentRecord.evictions++}setCacheSize(e){this.archiveIfNeeded(),this.currentRecord.cacheSize=e}addExpiration(){this.archiveIfNeeded(),this.currentRecord.expirations++}addSet(){this.archiveIfNeeded(),this.currentRecord.sets++}addInvalidateOne(){this.archiveIfNeeded(),this.currentRecord.invalidateOne++}addInvalidateAll(){this.archiveIfNeeded(),this.currentRecord.invalidateAll++}getStatistics(){return this.records.getStatistics()}archiveIfNeeded(){this.hoursPassed()>=this.statisticTtlInHours&&(this.collectionStart=new Date,this.currentTimeStamp=Kxe(this.collectionStart),this.records.initForCache(this.cacheId,this.currentTimeStamp))}},QN=class extends Z1{constructor(e,r,n,s,i){if(super(e||1e3,r||0),!n)throw new Error("Cache id is mandatory");this.hitStatistics=new H$(n,i!==void 0?i:24,s)}getStatistics(){return this.hitStatistics.getStatistics()}set(e,r){super.set(e,r),this.hitStatistics.addSet(),this.hitStatistics.setCacheSize(this.size)}evict(){super.evict(),this.hitStatistics.addEviction(),this.hitStatistics.setCacheSize(this.size)}delete(e,r=!1){super.delete(e),r||this.hitStatistics.addInvalidateOne(),this.hitStatistics.setCacheSize(this.size)}clear(){super.clear(),this.hitStatistics.addInvalidateAll(),this.hitStatistics.setCacheSize(this.size)}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e,!0),this.hitStatistics.addExpiration();return}return this.bumpLru(r),r.value||this.hitStatistics.addFalsyHit(),(r.value===void 0||r.value===null||r.value==="")&&this.hitStatistics.addEmptyHit(),this.hitStatistics.addHit(),r.value}this.hitStatistics.addMiss()}},GN=class{constructor(e=1e3,r=0){if(isNaN(e)||e<0)throw new Error("Invalid max value");if(isNaN(r)||r<0)throw new Error("Invalid ttl value");this.first=null,this.items=Object.create(null),this.last=null,this.size=0,this.max=e,this.ttl=r}clear(){this.items=Object.create(null),this.first=null,this.last=null,this.size=0}delete(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];delete this.items[e],this.size--,r.prev!==null&&(r.prev.next=r.next),r.next!==null&&(r.next.prev=r.prev),this.first===r&&(this.first=r.next),this.last===r&&(this.last=r.prev)}}deleteMany(e){for(var r=0;r0){let e=this.first;delete this.items[e.key],--this.size===0?(this.first=null,this.last=null):(this.first=e.next,this.first.prev=null)}}expiresAt(e){if(Object.prototype.hasOwnProperty.call(this.items,e))return this.items[e].expiry}get(e){if(Object.prototype.hasOwnProperty.call(this.items,e)){let r=this.items[e];if(this.ttl>0&&r.expiry<=Date.now()){this.delete(e);return}return r.value}}getMany(e){let r=[];for(var n=0;n0?Date.now()+this.ttl:this.ttl;return}this.max>0&&this.size===this.max&&this.evict();let n={expiry:this.ttl>0?Date.now()+this.ttl:this.ttl,key:e,prev:this.last,next:null,value:r};this.items[e]=n,++this.size===1?this.first=n:this.last.next=n,this.last=n}};zu.Fifo=GN;zu.FifoMap=q$;zu.FifoObject=GN;zu.HitStatisticsRecord=HN;zu.Lru=Z1;zu.LruHitStatistics=QN;zu.LruMap=j$;zu.LruObject=Z1;zu.LruObjectHitStatistics=QN});var ebe=E((zDr,e_)=>{"use strict";var KN=function(){};KN.prototype=Object.create(null);var VN=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,zN=/\\([\v\u0020-\u00ff])/gu,Jxe=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,Bm={type:"",parameters:new KN};Object.freeze(Bm.parameters);Object.freeze(Bm);function Xxe(t){if(typeof t!="string")throw new TypeError("argument header is required and must be a string");let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(Jxe.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new KN};if(e===-1)return n;let s,i,a;for(VN.lastIndex=e;i=VN.exec(t);){if(i.index!==e)throw new TypeError("invalid parameter format");e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),zN.test(a)&&(a=a.replace(zN,"$1"))),n.parameters[s]=a}if(e!==t.length)throw new TypeError("invalid parameter format");return n}function Zxe(t){if(typeof t!="string")return Bm;let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(Jxe.test(r)===!1)return Bm;let n={type:r.toLowerCase(),parameters:new KN};if(e===-1)return n;let s,i,a;for(VN.lastIndex=e;i=VN.exec(t);){if(i.index!==e)return Bm;e+=i[0].length,s=i[1].toLowerCase(),a=i[2],a[0]==='"'&&(a=a.slice(1,a.length-1),zN.test(a)&&(a=a.replace(zN,"$1"))),n.parameters[s]=a}return e!==t.length?Bm:n}e_.exports.default={parse:Xxe,safeParse:Zxe};e_.exports.parse=Xxe;e_.exports.safeParse=Zxe;e_.exports.defaultContentType=Bm});var ibe=E((KDr,ay)=>{"use strict";var ENt=typeof Buffer<"u",tbe=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,rbe=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function nbe(t,e,r){r==null&&e!==null&&typeof e=="object"&&(r=e,e=void 0),ENt&&Buffer.isBuffer(t)&&(t=t.toString()),t&&t.charCodeAt(0)===65279&&(t=t.slice(1));let n=JSON.parse(t,e);if(n===null||typeof n!="object")return n;let s=r&&r.protoAction||"error",i=r&&r.constructorAction||"error";if(s==="ignore"&&i==="ignore")return n;if(s!=="ignore"&&i!=="ignore"){if(tbe.test(t)===!1&&rbe.test(t)===!1)return n}else if(s!=="ignore"&&i==="ignore"){if(tbe.test(t)===!1)return n}else if(rbe.test(t)===!1)return n;return sbe(n,{protoAction:s,constructorAction:i,safe:r&&r.safe})}function sbe(t,{protoAction:e="error",constructorAction:r="error",safe:n}={}){let s=[t];for(;s.length;){let i=s;s=[];for(let a of i){if(e!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"__proto__")){if(n===!0)return null;if(e==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.__proto__}if(r!=="ignore"&&Object.prototype.hasOwnProperty.call(a,"constructor")&&Object.prototype.hasOwnProperty.call(a.constructor,"prototype")){if(n===!0)return null;if(r==="error")throw new SyntaxError("Object contains forbidden prototype property");delete a.constructor}for(let o in a){let c=a[o];c&&typeof c=="object"&&s.push(c)}}}return t}function Q$(t,e,r){let n=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return nbe(t,e,r)}finally{Error.stackTraceLimit=n}}function _Nt(t,e){let r=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return nbe(t,e,{safe:!0})}catch{return null}finally{Error.stackTraceLimit=r}}ay.exports=Q$;ay.exports.default=Q$;ay.exports.parse=Q$;ay.exports.safeParse=_Nt;ay.exports.scan=sbe});var Y$=E((YDr,r_)=>{"use strict";var{AsyncResource:SNt}=require("node:async_hooks"),{Fifo:obe}=Yxe(),{safeParse:cbe,defaultContentType:vNt}=ebe(),CNt=ibe(),{kDefaultJsonParse:t_,kContentTypeParser:oy,kBodyLimit:INt,kRequestPayloadStream:ube,kState:V$,kTestInternals:TNt,kReplyIsError:lbe,kRouteContext:wNt}=Qs(),{FST_ERR_CTP_INVALID_TYPE:dbe,FST_ERR_CTP_EMPTY_TYPE:RNt,FST_ERR_CTP_ALREADY_PRESENT:NNt,FST_ERR_CTP_INVALID_HANDLER:ONt,FST_ERR_CTP_INVALID_PARSE_TYPE:PNt,FST_ERR_CTP_BODY_TOO_LARGE:abe,FST_ERR_CTP_INVALID_MEDIA_TYPE:DNt,FST_ERR_CTP_INVALID_CONTENT_LENGTH:kNt,FST_ERR_CTP_EMPTY_JSON_BODY:LNt,FST_ERR_CTP_INSTANCE_ALREADY_STARTED:z$}=Ci();function Ad(t,e,r){this[t_]=pbe(e,r),this.customParsers=new Map,this.customParsers.set("application/json",new G$(!0,!1,t,this[t_])),this.customParsers.set("text/plain",new G$(!0,!1,t,K$)),this.parserList=[new YN("application/json"),new YN("text/plain")],this.parserRegExpList=[],this.cache=new obe(100)}Ad.prototype.add=function(t,e,r){let n=typeof t=="string";if(!n&&!(t instanceof RegExp))throw new dbe;if(n&&t.length===0)throw new RNt;if(typeof r!="function")throw new ONt;if(this.existingParser(t))throw new NNt(t);if(e.parseAs!==void 0&&e.parseAs!=="string"&&e.parseAs!=="buffer")throw new PNt(e.parseAs);let s=new G$(e.parseAs==="string",e.parseAs==="buffer",e.bodyLimit,r);n&&t==="*"?this.customParsers.set("",s):(n?this.parserList.unshift(new YN(t)):(t.isEssence=t.source.indexOf(";")===-1,this.parserRegExpList.unshift(t)),this.customParsers.set(t.toString(),s))};Ad.prototype.hasParser=function(t){return this.customParsers.has(typeof t=="string"?t:t.toString())};Ad.prototype.existingParser=function(t){return t==="application/json"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==this[t_]:t==="text/plain"&&this.customParsers.has(t)?this.customParsers.get(t).fn!==K$:this.hasParser(t)};Ad.prototype.getParser=function(t){if(this.hasParser(t))return this.customParsers.get(t);let e=this.cache.get(t);if(e!==void 0)return e;let r=cbe(t);if(r===vNt)return this.customParsers.get("");for(var n=0;n!==this.parserList.length;++n){let i=this.parserList[n];if(UNt(r,i)){let a=this.customParsers.get(i.name);return this.cache.set(t,a),a}}for(var s=0;s!==this.parserRegExpList.length;++s){let i=this.parserRegExpList[s];if(qNt(t,r.type,i)){let a=this.customParsers.get(i.toString());return this.cache.set(t,a),a}}return this.customParsers.get("")};Ad.prototype.removeAll=function(){this.customParsers=new Map,this.parserRegExpList=[],this.parserList=[],this.cache=new obe(100)};Ad.prototype.remove=function(t){if(!(typeof t=="string"||t instanceof RegExp))throw new dbe;let e=this.customParsers.delete(t.toString()),r=typeof t=="string"?this.parserList:this.parserRegExpList,n=r.findIndex(s=>s.toString()===t.toString());return n>-1&&r.splice(n,1),e||n>-1};Ad.prototype.run=function(t,e,r,n){let s=this.getParser(t);if(s===void 0){r.is404?e(r,n):n.send(new DNt(t||void 0));return}let i=new SNt("content-type-parser:run",r);if(s.asString===!0||s.asBuffer===!0)fbe(r,n,n[wNt]._parserOptions,s,a);else{let o=s.fn(r,r[ube],a);o&&typeof o.then=="function"&&o.then(c=>a(null,c),a)}function a(o,c){i.runInAsyncScope(()=>{i.emitDestroy(),o?(n[lbe]=!0,n.send(o)):(r.body=c,e(r,n))})}};function fbe(t,e,r,n,s){let i=n.asString,a=r.limit===null?n.bodyLimit:r.limit,o=t.headers["content-length"]===void 0?NaN:Number(t.headers["content-length"]);if(o>a){e.header("connection","close"),e.send(new abe);return}let c=0,u=i===!0?"":[],l=t[ube]||t.raw;i===!0&&l.setEncoding("utf8"),l.on("data",d),l.on("end",f),l.on("error",f),l.resume();function d(p){c+=p.length;let{receivedEncodedLength:m=0}=l;if(c>a||m>a){l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),e.send(new abe);return}i===!0?u+=p:u.push(p)}function f(p){if(l.removeListener("data",d),l.removeListener("end",f),l.removeListener("error",f),p!==void 0){typeof p.statusCode=="number"&&p.statusCode>=400||(p.statusCode=400),e[lbe]=!0,e.code(p.statusCode).send(p);return}if(i===!0&&(c=Buffer.byteLength(u)),!Number.isNaN(o)&&(l.receivedEncodedLength||c)!==o){e.header("connection","close"),e.send(new kNt);return}i===!1&&(u=Buffer.concat(u));let m=n.fn(t,u,s);m&&typeof m.then=="function"&&m.then(h=>s(null,h),s)}}function pbe(t,e){return r;function r(n,s,i){if(s===""||s==null||Buffer.isBuffer(s)&&s.length===0)return i(new LNt,void 0);let a;try{a=CNt.parse(s,{protoAction:t,constructorAction:e})}catch(o){return o.statusCode=400,i(o,void 0)}i(null,a)}}function K$(t,e,r){r(null,e)}function G$(t,e,r,n){this.asString=t,this.asBuffer=e,this.bodyLimit=r,this.fn=n}function BNt(t){let e=new Ad;return e[t_]=t[t_],e.customParsers=new Map(t.customParsers.entries()),e.parserList=t.parserList.slice(),e.parserRegExpList=t.parserRegExpList.slice(),e}function MNt(t,e,r){if(this[V$].started)throw new z$("addContentTypeParser");return typeof e=="function"&&(r=e,e={}),e||(e={}),e.bodyLimit||(e.bodyLimit=this[INt]),Array.isArray(t)?t.forEach(n=>this[oy].add(n,e,r)):this[oy].add(t,e,r),this}function WNt(t){return this[oy].hasParser(t)}function $Nt(t){if(this[V$].started)throw new z$("removeContentTypeParser");if(Array.isArray(t))for(let e of t)this[oy].remove(e);else this[oy].remove(t)}function FNt(){if(this[V$].started)throw new z$("removeAllContentTypeParsers");this[oy].removeAll()}function UNt(t,e){if(e.isEssence)return t.type.indexOf(e)!==-1;if(t.type.indexOf(e.type)===-1)return!1;for(let r of e.parameterKeys)if(!(r in t.parameters)||t.parameters[r]!==e.parameters[r])return!1;return!0}function qNt(t,e,r){return r.isEssence?r.test(e):r.test(t)}function YN(t){this.name=t;let e=cbe(t);if(this.isEssence=t.indexOf(";")===-1,this.isEssence===!1&&e.type===""){let r=t.split(";",1)[0];this.type=r===""?t:r}else this.type=e.type;this.parameters=e.parameters,this.parameterKeys=Object.keys(e.parameters)}YN.prototype.toString=function(){return this.name};r_.exports=Ad;r_.exports.helpers={buildContentTypeParser:BNt,addContentTypeParser:MNt,hasContentTypeParser:WNt,removeContentTypeParser:$Nt,removeAllContentTypeParsers:FNt};r_.exports.defaultParsers={getDefaultJsonParser:pbe,defaultTextParser:K$};r_.exports[TNt]={rawBody:fbe}});var Abe=E((JDr,gbe)=>{"use strict";var mbe=Go(),jNt=Symbol.for("json-schema-ref"),J$=class{#e;#t;#r;#n;#a;constructor(e={}){this.#e={},this.#t={},this.#r=e.insertRefSymbol??!1,this.#n=e.allowEqualDuplicates??!0,this.#a=e.cloneSchemaWithoutRefs??!1}addSchema(e,r){e.$id!==void 0&&e.$id.charAt(0)!=="#"?r=e.$id:this.#l(e,r),this.#s(e,r)}getSchema(e,r="#"){let n=this.#e[e];if(n===void 0)throw new Error(`Cannot resolve ref "${e}${r}". Schema with id "${e}" is not found.`);return n.anchors[r]!==void 0?n.anchors[r]:hbe(n.schema,r)}hasSchema(e){return this.#e[e]!==void 0}getSchemaRefs(e){let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);return r.refs}getSchemaDependencies(e,r={}){let n=this.#e[e];for(let s of n.refs){let i=s.schemaId;r[i]===void 0&&(r[i]=this.getSchema(i),this.getSchemaDependencies(i,r))}return r}derefSchema(e){if(this.#t[e]!==void 0)return;let r=this.#e[e];if(r===void 0)throw new Error(`Schema with id "${e}" is not found.`);!this.#a&&r.refs.length===0&&(this.#t[e]={schema:r.schema,anchors:r.anchors});let n=[];this.#i(r.schema,e,n);let s=this.getSchemaDependencies(e);for(let i in s){let a=s[i];this.#i(a,i,n)}for(let i of n){let{refSchemaId:a,refJsonPointer:o}=this.#o(i.ref,i.sourceSchemaId),c=this.getDerefSchema(a,o);if(c===null)throw new Error(`Cannot resolve ref "${i.ref}". Ref "${o}" is not found in schema "${a}".`);i.targetSchema=c,i.targetSchemaId=a}for(let i of n)this.#c(i,n)}getDerefSchema(e,r="#"){let n=this.#t[e];return n===void 0&&(this.derefSchema(e),n=this.#t[e]),n.anchors[r]!==void 0?n.anchors[r]:hbe(n.schema,r)}#o(e,r){let n=e.indexOf("#");return n===-1?{refSchemaId:e,refJsonPointer:"#"}:n===0?{refSchemaId:r,refJsonPointer:e}:{refSchemaId:e.slice(0,n),refJsonPointer:e.slice(n)}}#s(e,r){let n=e.$id;n!==void 0&&typeof n=="string"&&(n.charAt(0)==="#"?this.#h(e,r,n):(this.#l(e,n),r=n));let s=e.$ref;if(s!==void 0&&typeof s=="string"){let{refSchemaId:i,refJsonPointer:a}=this.#o(s,r);this.#e[r].refs.push({schemaId:i,jsonPointer:a})}for(let i in e)typeof e[i]=="object"&&e[i]!==null&&this.#s(e[i],r)}#i(e,r,n=[]){let s=Array.isArray(e)?[...e]:{...e},i=s.$id;i!==void 0&&typeof i=="string"&&(i.charAt(0)==="#"?this.#d(s,r,i):(this.#p(s,i),r=i)),s.$ref!==void 0&&n.push({ref:s.$ref,sourceSchemaId:r,sourceSchema:s});for(let a in s){let o=s[a];typeof o=="object"&&o!==null&&(s[a]=this.#i(o,r,n))}return s}#c(e,r){let{sourceSchema:n,targetSchema:s}=e;if(n.$ref){if(this.#r&&(n[jNt]=n.$ref),delete n.$ref,s.$ref){let i=r.find(a=>a.sourceSchema===s);this.#c(i,r)}for(let i in s)if(i!=="$id"){if(n[i]!==void 0){if(mbe(n[i],s[i]))continue;throw new Error(`Cannot resolve ref "${e.ref}". Property "${i}" is already exist in schema "${e.sourceSchemaId}".`)}n[i]=s[i]}e.isResolved=!0}}#l(e,r){let n=this.#e[r];if(n!==void 0){if(this.#n&&mbe(e,n.schema))return;throw new Error(`There is already another schema with id "${r}".`)}this.#e[r]={schema:e,anchors:{},refs:[]}}#h(e,r,n){let{anchors:s}=this.#e[r];if(s[n]!==void 0)throw new Error(`There is already another anchor "${n}" in a schema "${r}".`);s[n]=e}#p(e,r){this.#t[r]===void 0&&(this.#t[r]={schema:e,anchors:{}})}#d(e,r,n){let{anchors:s}=this.#t[r];s[n]=e}};function hbe(t,e){let r=e.split("/"),n=t;for(let s of r)if(!(s===""||s==="#")){if(typeof n!="object"||n===null)return null;n=n[s]}return n??null}gbe.exports={RefResolver:J$}});var xbe=E((XDr,ybe)=>{"use strict";var X$=class t{constructor(e,r,n="#"){this.schema=e,this.schemaId=r,this.jsonPointer=n}getPropertyLocation(e){return new t(this.schema[e],this.schemaId,this.jsonPointer+"/"+e)}getSchemaRef(){return this.schemaId+this.jsonPointer}};ybe.exports=X$});var vbe=E((ZDr,eF)=>{"use strict";eF.exports=ke;eF.exports.default=ke;var HNt={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0},bbe={enum:["array","boolean","integer","null","number","object","string"]},Ebe=/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,QNt=hN().fullFormats.uri,_be=hN().fullFormats.regex;function Jo(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a;return typeof t=="number"&&!(t%1)&&!isNaN(t)&&isFinite(t)?a===o&&typeof t=="number"&&isFinite(t)&&(t<0||isNaN(t))?(Jo.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1):(Jo.errors=i,a===0):(Jo.errors=[{instancePath:e,schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1)}var Z$={validate:ke};function sa(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(Array.isArray(t)){if(t.length<1)return sa.errors=[{instancePath:e,schemaPath:"#/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{var o=!0;let c=t.length;for(let u=0;u",limit:0},message:"must be > 0"}],!1}else return ke.errors=[{instancePath:e+"/multipleOf",schemaPath:"#/properties/multipleOf/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.maximum!==void 0){let y=t.maximum,x=a;if(!(typeof y=="number"&&isFinite(y)))return ke.errors=[{instancePath:e+"/maximum",schemaPath:"#/properties/maximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.exclusiveMaximum!==void 0){let y=t.exclusiveMaximum,x=a;if(!(typeof y=="number"&&isFinite(y)))return ke.errors=[{instancePath:e+"/exclusiveMaximum",schemaPath:"#/properties/exclusiveMaximum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.minimum!==void 0){let y=t.minimum,x=a;if(!(typeof y=="number"&&isFinite(y)))return ke.errors=[{instancePath:e+"/minimum",schemaPath:"#/properties/minimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.exclusiveMinimum!==void 0){let y=t.exclusiveMinimum,x=a;if(!(typeof y=="number"&&isFinite(y)))return ke.errors=[{instancePath:e+"/exclusiveMinimum",schemaPath:"#/properties/exclusiveMinimum/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var o=x===a}else var o=!0;if(o){if(t.maxLength!==void 0){let y=t.maxLength,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return ke.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return ke.errors=[{instancePath:e+"/maxLength",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minLength!==void 0){let y=a;Jo(t.minLength,{instancePath:e+"/minLength",parentData:t,parentDataProperty:"minLength",rootData:s})||(i=i===null?Jo.errors:i.concat(Jo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.pattern!==void 0){let y=t.pattern,x=a;if(a===x&&a===x)if(typeof y=="string"){if(!_be(y))return ke.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"'}],!1}else return ke.errors=[{instancePath:e+"/pattern",schemaPath:"#/properties/pattern/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=x===a}else var o=!0;if(o){if(t.additionalItems!==void 0){let y=a;ke(t.additionalItems,{instancePath:e+"/additionalItems",parentData:t,parentDataProperty:"additionalItems",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.items!==void 0){let y=t.items,x=a,v=a,C=!1,R=a;ke(y,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var c=R===a;if(C=C||c,!C){let N=a;sa(y,{instancePath:e+"/items",parentData:t,parentDataProperty:"items",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var c=N===a;C=C||c}if(C)a=v,i!==null&&(v?i.length=v:i=null);else{let N={instancePath:e+"/items",schemaPath:"#/properties/items/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,ke.errors=i,!1}var o=x===a}else var o=!0;if(o){if(t.maxItems!==void 0){let y=t.maxItems,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return ke.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return ke.errors=[{instancePath:e+"/maxItems",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minItems!==void 0){let y=a;Jo(t.minItems,{instancePath:e+"/minItems",parentData:t,parentDataProperty:"minItems",rootData:s})||(i=i===null?Jo.errors:i.concat(Jo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.uniqueItems!==void 0){let y=a;if(typeof t.uniqueItems!="boolean")return ke.errors=[{instancePath:e+"/uniqueItems",schemaPath:"#/properties/uniqueItems/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var o=y===a}else var o=!0;if(o){if(t.contains!==void 0){let y=a;ke(t.contains,{instancePath:e+"/contains",parentData:t,parentDataProperty:"contains",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.maxProperties!==void 0){let y=t.maxProperties,x=a,v=a;if(!(typeof y=="number"&&!(y%1)&&!isNaN(y)&&isFinite(y)))return ke.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;if(a===v&&typeof y=="number"&&isFinite(y)&&(y<0||isNaN(y)))return ke.errors=[{instancePath:e+"/maxProperties",schemaPath:"#/definitions/nonNegativeInteger/minimum",keyword:"minimum",params:{comparison:">=",limit:0},message:"must be >= 0"}],!1;var o=x===a}else var o=!0;if(o){if(t.minProperties!==void 0){let y=a;Jo(t.minProperties,{instancePath:e+"/minProperties",parentData:t,parentDataProperty:"minProperties",rootData:s})||(i=i===null?Jo.errors:i.concat(Jo.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.required!==void 0){let y=t.required,x=a;if(a===a)if(Array.isArray(y)){var u=!0;let R=y.length;for(let w=0;w1){let P={};for(;w--;){let L=y[w];if(typeof L=="string"){if(typeof P[L]=="number"){return N=P[L],ke.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:w,j:N},message:"must NOT have duplicate items (items ## "+N+" and "+w+" are identical)"}],!1;break}P[L]=w}}}}}else return ke.errors=[{instancePath:e+"/required",schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=x===a}else var o=!0;if(o){if(t.additionalProperties!==void 0){let y=a;ke(t.additionalProperties,{instancePath:e+"/additionalProperties",parentData:t,parentDataProperty:"additionalProperties",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.definitions!==void 0){let y=t.definitions,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let C in y){let R=a;ke(y[C],{instancePath:e+"/definitions/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:C,rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var l=R===a;if(!l)break}else return ke.errors=[{instancePath:e+"/definitions",schemaPath:"#/properties/definitions/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.properties!==void 0){let y=t.properties,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let C in y){let R=a;ke(y[C],{instancePath:e+"/properties/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:C,rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var d=R===a;if(!d)break}else return ke.errors=[{instancePath:e+"/properties",schemaPath:"#/properties/properties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.patternProperties!==void 0){let y=t.patternProperties,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y)){for(let C in y){let R=a;if(a===R&&typeof C=="string"&&!_be(C)){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames/format",keyword:"format",params:{format:"regex"},message:'must match format "regex"',propertyName:C};i===null?i=[w]:i.push(w),a++}var f=R===a;if(!f){let w={instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/propertyNames",keyword:"propertyNames",params:{propertyName:C},message:"property name must be valid"};return i===null?i=[w]:i.push(w),a++,ke.errors=i,!1;break}}if(f)for(let C in y){let R=a;ke(y[C],{instancePath:e+"/patternProperties/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:C,rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var p=R===a;if(!p)break}}else return ke.errors=[{instancePath:e+"/patternProperties",schemaPath:"#/properties/patternProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.dependencies!==void 0){let y=t.dependencies,x=a;if(a===x)if(y&&typeof y=="object"&&!Array.isArray(y))for(let C in y){let R=y[C],w=a,N=a,P=!1,L=a;ke(R,{instancePath:e+"/dependencies/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),parentData:y,parentDataProperty:C,rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var m=L===a;if(P=P||m,!P){let M=a;if(a===a)if(Array.isArray(R)){var h=!0;let Z=R.length;for(let W=0;W1){let V={};for(;W--;){let j=R[W];if(typeof j=="string"){if(typeof V[j]=="number"){F=V[j];let J={instancePath:e+"/dependencies/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/uniqueItems",keyword:"uniqueItems",params:{i:W,j:F},message:"must NOT have duplicate items (items ## "+F+" and "+W+" are identical)"};i===null?i=[J]:i.push(J),a++;break}V[j]=W}}}}}else{let Z={instancePath:e+"/dependencies/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/definitions/stringArray/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[Z]:i.push(Z),a++}var m=M===a;P=P||m}if(P)a=N,i!==null&&(N?i.length=N:i=null);else{let M={instancePath:e+"/dependencies/"+C.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/dependencies/additionalProperties/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[M]:i.push(M),a++,ke.errors=i,!1}var A=w===a;if(!A)break}else return ke.errors=[{instancePath:e+"/dependencies",schemaPath:"#/properties/dependencies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=x===a}else var o=!0;if(o){if(t.propertyNames!==void 0){let y=a;ke(t.propertyNames,{instancePath:e+"/propertyNames",parentData:t,parentDataProperty:"propertyNames",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.enum!==void 0){let y=t.enum,x=a;if(a===x)if(Array.isArray(y)){if(y.length<1)return ke.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"}],!1;{let C=y.length,R;if(C>1){e:for(;C--;)for(R=C;R--;)if(Sbe(y[C],y[R])){return ke.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/uniqueItems",keyword:"uniqueItems",params:{i:C,j:R},message:"must NOT have duplicate items (items ## "+R+" and "+C+" are identical)"}],!1;break e}}}}else return ke.errors=[{instancePath:e+"/enum",schemaPath:"#/properties/enum/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var o=x===a}else var o=!0;if(o){if(t.type!==void 0){let y=t.type,x=a,v=a,C=!1,R=a;if(!(y==="array"||y==="boolean"||y==="integer"||y==="null"||y==="number"||y==="object"||y==="string")){let N={instancePath:e+"/type",schemaPath:"#/definitions/simpleTypes/enum",keyword:"enum",params:{allowedValues:bbe.enum},message:"must be equal to one of the allowed values"};i===null?i=[N]:i.push(N),a++}var g=R===a;if(C=C||g,!C){let N=a;if(a===N)if(Array.isArray(y))if(y.length<1){let L={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/minItems",keyword:"minItems",params:{limit:1},message:"must NOT have fewer than 1 items"};i===null?i=[L]:i.push(L),a++}else{var b=!0;let L=y.length;for(let M=0;M1){e:for(;M--;)for(k=M;k--;)if(Sbe(y[M],y[k])){let B={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/uniqueItems",keyword:"uniqueItems",params:{i:M,j:k},message:"must NOT have duplicate items (items ## "+k+" and "+M+" are identical)"};i===null?i=[B]:i.push(B),a++;break e}}}}else{let L={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf/1/type",keyword:"type",params:{type:"array"},message:"must be array"};i===null?i=[L]:i.push(L),a++}var g=N===a;C=C||g}if(C)a=v,i!==null&&(v?i.length=v:i=null);else{let N={instancePath:e+"/type",schemaPath:"#/properties/type/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[N]:i.push(N),a++,ke.errors=i,!1}var o=x===a}else var o=!0;if(o){if(t.format!==void 0){let y=a;if(typeof t.format!="string")return ke.errors=[{instancePath:e+"/format",schemaPath:"#/properties/format/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.contentMediaType!==void 0){let y=a;if(typeof t.contentMediaType!="string")return ke.errors=[{instancePath:e+"/contentMediaType",schemaPath:"#/properties/contentMediaType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.contentEncoding!==void 0){let y=a;if(typeof t.contentEncoding!="string")return ke.errors=[{instancePath:e+"/contentEncoding",schemaPath:"#/properties/contentEncoding/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var o=y===a}else var o=!0;if(o){if(t.if!==void 0){let y=a;ke(t.if,{instancePath:e+"/if",parentData:t,parentDataProperty:"if",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.then!==void 0){let y=a;ke(t.then,{instancePath:e+"/then",parentData:t,parentDataProperty:"then",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.else!==void 0){let y=a;ke(t.else,{instancePath:e+"/else",parentData:t,parentDataProperty:"else",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.allOf!==void 0){let y=a;sa(t.allOf,{instancePath:e+"/allOf",parentData:t,parentDataProperty:"allOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.anyOf!==void 0){let y=a;sa(t.anyOf,{instancePath:e+"/anyOf",parentData:t,parentDataProperty:"anyOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o){if(t.oneOf!==void 0){let y=a;sa(t.oneOf,{instancePath:e+"/oneOf",parentData:t,parentDataProperty:"oneOf",rootData:s})||(i=i===null?sa.errors:i.concat(sa.errors),a=i.length);var o=y===a}else var o=!0;if(o)if(t.not!==void 0){let y=a;ke(t.not,{instancePath:e+"/not",parentData:t,parentDataProperty:"not",rootData:s})||(i=i===null?ke.errors:i.concat(ke.errors),a=i.length);var o=y===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}return ke.errors=i,a===0}});var sF=E((ekr,Cbe)=>{"use strict";var tF=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Failed to merge "${e}" keyword schemas.`,this.schemas=r}},rF=class extends Error{constructor(e,r){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Resolver for "${e}" keyword not found.`,this.schemas=r}},nF=class extends Error{constructor(e){super(),this.name="JsonSchemaMergeError",this.code="JSON_SCHEMA_MERGE_ERROR",this.message=`Invalid "onConflict" option: "${e}".`}};Cbe.exports={MergeError:tF,ResolverNotFoundError:rF,InvalidOnConflictOptionError:nF}});var wbe=E((tkr,Tbe)=>{"use strict";var GNt=Go(),{MergeError:iF}=sF();function Ibe(t){let e=t[0];for(let r=1;rt[r].includes(n));return e}function VNt(t,e,r){let n=Ibe(e);if(n.length===0)throw new iF(t,e);r[t]=n}function zNt(t,e,r){for(let s=0;sc?n(c,o%c):o,s=(o,c)=>o*c/n(o,c),i=1;for(let o of e)for(;o*i%1!==0;)i*=10;let a=e[0]*i;for(let o of e)a=s(a,o*i);r[t]=a/i}function ZNt(t,e,r){let n=e[0];for(let s=1;s{"use strict";var nOt=Go(),jn=wbe(),ZN=sF(),Obe={$id:jn.skip,type:jn.hybridArraysIntersection,enum:jn.arraysIntersection,minLength:jn.maxNumber,maxLength:jn.minNumber,minimum:jn.maxNumber,maximum:jn.minNumber,multipleOf:jn.commonMultiple,exclusiveMinimum:jn.maxNumber,exclusiveMaximum:jn.minNumber,minItems:jn.maxNumber,maxItems:jn.minNumber,maxProperties:jn.minNumber,minProperties:jn.maxNumber,const:jn.allEqual,default:jn.allEqual,format:jn.allEqual,required:jn.arraysUnion,properties:uOt,patternProperties:XN,additionalProperties:JN,items:aOt,additionalItems:oOt,definitions:XN,$defs:XN,nullable:jn.booleanAnd,oneOf:Rbe,anyOf:Rbe,allOf:jn.arraysUnion,not:JN,if:lOt,then:jn.skip,else:jn.skip,dependencies:Nbe,dependentRequired:Nbe,dependentSchemas:XN,propertyNames:JN,uniqueItems:jn.booleanOr,contains:JN};function JN(t,e,r,n,s){r[t]=Hc(e,s)}function sOt(t){let e=[[]];for(let r of t){let n=[];for(let s of e)for(let i of r)n.push([...s,i]);e=n}return e}function Rbe(t,e,r,n,s){if(e.length===1){r[t]=e[0];return}let i=sOt(e),a=[];for(let o of i)try{let c=Hc(o,s);c!==void 0&&a.push(c)}catch(c){if(c instanceof ZN.MergeError)continue;throw c}r[t]=a}function iOt(t,e){let{items:r,additionalItems:n}=t;return Array.isArray(r)?e{"use strict";var{mergeSchemas:fOt}=kbe();function pOt(t){return fOt(t,{onConflict:"skip"})}Lbe.exports=pOt});var Qbe=E((skr,cy)=>{"use strict";var{RefResolver:mOt}=Abe(),hOt=n8(),gOt=e$(),Mm=xbe(),Mbe=vbe(),AOt=Bbe(),yOt=/'/g,eO=2e4,$be="default",xOt=["floor","ceil","round","trunc"],Fbe=["default","json-stringify"],n_=0;function aF(t,e){if(!Mbe(t)){e?e=`"${e}" `:e="";let r=Mbe.errors[0],n=new Error(`${e}schema is invalid: data${r.instancePath} ${r.message}`);throw n.errors=aF.errors,n}}function s_(t,e){let r=e.schema.$ref,n=r.indexOf("#");n===-1&&(n=r.length);let s=r.slice(0,n)||e.schemaId,i=r.slice(n)||"#",a=t.refResolver.getSchema(s,i);if(a===null)throw new Error(`Cannot find reference "${r}"`);let o=new Mm(a,s,i);return a.$ref!==void 0?s_(t,o):o}function tO(t,e){let r=t.refResolver.getSchema(e,"#");return new Mm(r,e,"#")}function Wbe(t,e){return t.$id&&t.$id.charAt(0)!=="#"?t.$id:e}function oF(t,e){aF(t),e=e||{};let r={functions:[],functionsCounter:0,functionsNamesBySchema:new Map,options:e,refResolver:new mOt,rootSchemaId:t.$id||`__fjs_root_${n_++}`,validatorSchemasIds:new Set,mergedSchemasIds:new Map},n=Wbe(t,r.rootSchemaId);if(r.refResolver.hasSchema(n)||r.refResolver.addSchema(t,r.rootSchemaId),e.schema)for(let l in e.schema){let d=e.schema[l],f=Wbe(d,l);r.refResolver.hasSchema(f)||(aF(d,l),r.refResolver.addSchema(d,l))}if(e.rounding&&!xOt.includes(e.rounding))throw new Error(`Unsupported integer rounding method ${e.rounding}`);if(e.largeArrayMechanism)if(Fbe.includes(e.largeArrayMechanism))$be=e.largeArrayMechanism;else throw new Error(`Unsupported large array mechanism ${e.largeArrayMechanism}`);if(e.largeArraySize)if(typeof e.largeArraySize=="string"&&Number.isFinite(Number.parseInt(e.largeArraySize,10)))eO=Number.parseInt(e.largeArraySize,10);else if(typeof e.largeArraySize=="number"&&Number.isInteger(e.largeArraySize))eO=e.largeArraySize;else if(typeof e.largeArraySize=="bigint")eO=Number(e.largeArraySize);else throw new Error(`Unsupported large array size. Expected integer-like, got ${typeof e.largeArraySize} with value ${e.largeArraySize}`);let s=new Mm(t,r.rootSchemaId),i=xo(r,s,"input"),a=` const JSON_STR_BEGIN_OBJECT = '{' const JSON_STR_END_OBJECT = '}' const JSON_STR_BEGIN_ARRAY = '[' @@ -173,9 +173,9 @@ ${b}`),h.pop(),`{${I}}`}case"number":return isFinite(m)?String(m):e?e(m):"null"; ${r.functions.join(` `)} return main - `;let o=new pOt(e),c=new mOt(e.ajv);for(let l of r.validatorSchemasIds){let d=r.refResolver.getSchema(l);c.addSchema(d,l);let f=r.refResolver.getSchemaDependencies(l);for(let[p,m]of Object.entries(f))c.addSchema(m,p)}if(e.debugMode&&(e.mode="debug"),e.mode==="debug")return{validator:c,serializer:o,code:`validator + `;let o=new hOt(e),c=new gOt(e.ajv);for(let l of r.validatorSchemasIds){let d=r.refResolver.getSchema(l);c.addSchema(d,l);let f=r.refResolver.getSchemaDependencies(l);for(let[p,m]of Object.entries(f))c.addSchema(m,p)}if(e.debugMode&&(e.mode="debug"),e.mode==="debug")return{validator:c,serializer:o,code:`validator serializer -${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode==="standalone"?t$()(u,r,o,c):u(c,o)}var yOt=["properties","required","additionalProperties","patternProperties","maxProperties","minProperties","dependencies"],xOt=["items","additionalItems","maxItems","minItems","uniqueItems","contains"],bOt=["maxLength","minLength","pattern"],EOt=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum"];function _Ot(t){for(var e of yOt)if(e in t)return"object";for(var e of xOt)if(e in t)return"array";for(var e of bOt)if(e in t)return"string";for(var e of EOt)if(e in t)return"number";return t.type}function SOt(t,e,r){let n=e.schema,s=Object.keys(n.properties||{}),i=` +${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode==="standalone"?r$()(u,r,o,c):u(c,o)}var bOt=["properties","required","additionalProperties","patternProperties","maxProperties","minProperties","dependencies"],EOt=["items","additionalItems","maxItems","minItems","uniqueItems","contains"],_Ot=["maxLength","minLength","pattern"],SOt=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum"];function vOt(t){for(var e of bOt)if(e in t)return"object";for(var e of EOt)if(e in t)return"array";for(var e of _Ot)if(e in t)return"string";for(var e of SOt)if(e in t)return"number";return t.type}function COt(t,e,r){let n=e.schema,s=Object.keys(n.properties||{}),i=` const propertiesKeys = ${JSON.stringify(s)} for (const [key, value] of Object.entries(obj)) { if ( @@ -188,7 +188,7 @@ ${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode=== if (/${l.replace(/\\*\//g,"\\/")}/.test(key)) { ${r} json += serializer.asString(key) + JSON_STR_COLONS - ${bo(t,d,"value")} + ${xo(t,d,"value")} continue } `}let u=e.getPropertyLocation("additionalProperties").schema;if(u!==void 0)if(u===!0)i+=` @@ -197,19 +197,19 @@ ${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode=== `;else{let l=e.getPropertyLocation("additionalProperties");i+=` ${r} json += serializer.asString(key) + JSON_STR_COLONS - ${bo(t,l,"value")} + ${xo(t,l,"value")} `}return i+=` } - `,i}function vOt(t,e){let r=e.schema,n=e.getPropertyLocation("properties"),s=r.required||[],i=Object.keys(r.properties||{}).sort((u,l)=>{let d=s.includes(u),f=s.includes(l);return d===f?0:d?-1:1}),a=s.includes(i[0]),o=`let value + `,i}function IOt(t,e){let r=e.schema,n=e.getPropertyLocation("properties"),s=r.required||[],i=Object.keys(r.properties||{}).sort((u,l)=>{let d=s.includes(u),f=s.includes(l);return d===f?0:d?-1:1}),a=s.includes(i[0]),o=`let value `;for(let u of s)if(!i.includes(u)){let l=JSON.stringify(u);o+=`if (obj[${l}] === undefined) throw new Error('${l.replace(/'/g,"\\'")} is required!') `}o+=`let json = JSON_STR_BEGIN_OBJECT `;let c="";a||(o+=`let addComma = false -`,c="!addComma && (addComma = true) || (json += JSON_STR_COMMA)");for(let u of i){let l=n.getPropertyLocation(u);l.schema.$ref&&(l=n_(t,l));let d=JSON.stringify(u),f=l.schema.default,p=s.includes(u);o+=` +`,c="!addComma && (addComma = true) || (json += JSON_STR_COMMA)");for(let u of i){let l=n.getPropertyLocation(u);l.schema.$ref&&(l=s_(t,l));let d=JSON.stringify(u),f=l.schema.default,p=s.includes(u);o+=` value = obj[${d}] if (value !== undefined) { ${c} json += ${JSON.stringify(d+":")} - ${bo(t,l,"value")} + ${xo(t,l,"value")} }`,f!==void 0?o+=` else { ${c} json += ${JSON.stringify(d+":"+JSON.stringify(f))} @@ -218,21 +218,21 @@ ${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode=== throw new Error('${d.replace(/'/g,"\\'")} is required!') } `:o+=` -`,a&&(c="json += ','")}return(r.patternProperties||r.additionalProperties)&&(o+=SOt(t,e,c)),o+=` +`,a&&(c="json += ','")}return(r.patternProperties||r.additionalProperties)&&(o+=COt(t,e,c)),o+=` return json + JSON_STR_END_OBJECT - `,o}function eO(t,e,r){for(let a=0;a ${s.length}) { throw new Error(\`Item at ${s.length} does not match schema definition.\`) } - `),Lbe==="json-stringify"&&(o+=`if (arrayLength >= ${XN}) return JSON.stringify(obj) + `),$be==="json-stringify"&&(o+=`if (arrayLength >= ${eO}) return JSON.stringify(obj) `),o+=` const arrayEnd = arrayLength - 1 let value let json = '' - `,Array.isArray(s)){for(let u=0;u$be(s,e)).join(" || ")})`)}return r}function Fbe(t){return"anonymous"+t.functionsCounter++}function wOt(t,e,r){let s=e.schema.type.sort(o=>o==="null"?-1:1),i="";s.forEach((o,c)=>{e.schema={...e.schema,type:o};let u=Ube(t,e,r),l=c===0?"if":"else if";switch(o){case"null":i+=` + )`;break;case"integer":r="Number.isInteger(value)";break;case"number":r="Number.isFinite(value)";break;case"boolean":r="typeof value === 'boolean'";break;case"object":r="value && typeof value === 'object' && value.constructor === Object";break;case"array":r="Array.isArray(value)";break;default:Array.isArray(t)&&(r=`(${t.map(s=>qbe(s,e)).join(" || ")})`)}return r}function jbe(t){return"anonymous"+t.functionsCounter++}function NOt(t,e,r){let s=e.schema.type.sort(o=>o==="null"?-1:1),i="";s.forEach((o,c)=>{e.schema={...e.schema,type:o};let u=Hbe(t,e,r),l=c===0?"if":"else if";switch(o){case"null":i+=` ${l} (${r} === null) ${u} `;break;case"string":{i+=` @@ -310,7 +310,7 @@ ${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode=== ${u} `;break}}});let a=e.getSchemaRef();return a.startsWith(t.rootSchemaId)&&(a=a.replace(t.rootSchemaId,"")),i+=` else throw new TypeError(\`The value of '${a}' does not match schema definition.\`) - `,i}function Ube(t,e,r){let n=e.schema;switch(n.type){case"null":return"json += JSON_STR_NULL";case"string":return n.format==="date-time"?`json += serializer.asDateTime(${r})`:n.format==="date"?`json += serializer.asDate(${r})`:n.format==="time"?`json += serializer.asTime(${r})`:n.format==="unsafe"?`json += serializer.asUnsafeString(${r})`:` + `,i}function Hbe(t,e,r){let n=e.schema;switch(n.type){case"null":return"json += JSON_STR_NULL";case"string":return n.format==="date-time"?`json += serializer.asDateTime(${r})`:n.format==="date"?`json += serializer.asDate(${r})`:n.format==="time"?`json += serializer.asTime(${r})`:n.format==="unsafe"?`json += serializer.asUnsafeString(${r})`:` if (typeof ${r} !== 'string') { if (${r} === null) { json += JSON_STR_EMPTY_STRING @@ -324,57 +324,57 @@ ${a}`,ajv:c.ajv};let u=new Function("validator","serializer",a);return e.mode=== } else { json += serializer.asString(${r}) } - `;case"integer":return`json += serializer.asInteger(${r})`;case"number":return`json += serializer.asNumber(${r})`;case"boolean":return`json += serializer.asBoolean(${r})`;case"object":return`json += ${COt(t,e)}(${r})`;case"array":return`json += ${TOt(t,e)}(${r})`;case void 0:return`json += JSON.stringify(${r})`;default:throw new Error(`${n.type} unsupported`)}}function ROt(t,e){let r=t.schema,n=r.type,s=Array.isArray(n)&&n.includes("null"),i="";return s&&(i+=` + `;case"integer":return`json += serializer.asInteger(${r})`;case"number":return`json += serializer.asNumber(${r})`;case"boolean":return`json += serializer.asBoolean(${r})`;case"object":return`json += ${wOt(t,e)}(${r})`;case"array":return`json += ${ROt(t,e)}(${r})`;case void 0:return`json += JSON.stringify(${r})`;default:throw new Error(`${n.type} unsupported`)}}function OOt(t,e){let r=t.schema,n=r.type,s=Array.isArray(n)&&n.includes("null"),i="";return s&&(i+=` if (${e} === null) { json += JSON_STR_NULL } else { - `),i+=`json += '${JSON.stringify(r.const).replace(gOt,"\\'")}'`,s&&(i+=` + `),i+=`json += '${JSON.stringify(r.const).replace(yOt,"\\'")}'`,s&&(i+=` } - `),i}function NOt(t,e,r){let n=e.schema,s=t.mergedSchemasIds.get(n);if(s){let l=ZN(t,s);return bo(t,l,r)}s=`__fjs_merged_${r_++}`,t.mergedSchemasIds.set(n,s);let{allOf:i,...a}=e.schema,o=[new Mm(a,e.schemaId,e.jsonPointer)],c=e.getPropertyLocation("allOf");for(let l=0;l{"use strict";var kOt=cF();function jbe(t={readMode:!0}){if(t.readMode===!0&&typeof t.restoreFunction!="function")throw new Error("You must provide a function for the restoreFunction-option when readMode ON");if(t.readMode!==!0&&typeof t.storeFunction!="function")throw new Error("You must provide a function for the storeFunction-option when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=kOt();return function(n,s={}){s.mode="standalone";let i=e(n,s);return function(a){let o=i(a);return t.storeFunction(a,o),new Function(o)}}}oF.exports=jbe;oF.exports.default=jbe});var cF=E((e3r,s_)=>{"use strict";var DOt=qbe();function uF(){return function(e,r){let n=Object.assign({},r,{schema:e});return BOt.bind(null,n)}}function BOt(t,{schema:e}){return t.schema&&e.$id&&t.schema[e.$id]&&(t.schema={...t.schema},delete t.schema[e.$id]),DOt(e,t)}s_.exports=uF;s_.exports.default=uF;s_.exports.SerializerSelector=uF;s_.exports.StandaloneSerializer=Hbe()});var uy=E(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.regexpCode=Br.getEsmExportName=Br.getProperty=Br.safeStringify=Br.stringify=Br.strConcat=Br.addCodeArg=Br.str=Br._=Br.nil=Br._Code=Br.Name=Br.IDENTIFIER=Br._CodeOrName=void 0;var i_=class{};Br._CodeOrName=i_;Br.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Wm=class extends i_{constructor(e){if(super(),!Br.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Br.Name=Wm;var Zo=class extends i_{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Wm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Br._Code=Zo;Br.nil=new Zo("");function Qbe(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(Ma,"__esModule",{value:!0});Ma.ValueScope=Ma.ValueScopeName=Ma.Scope=Ma.varKinds=Ma.UsedValueState=void 0;var La=uy(),fF=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},tO;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(tO||(Ma.UsedValueState=tO={}));Ma.varKinds={const:new La.Name("const"),let:new La.Name("let"),var:new La.Name("var")};var rO=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof La.Name?e:this.name(e)}name(e){return new La.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ma.Scope=rO;var nO=class extends La.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,La._)`.${new La.Name(r)}[${n}]`}};Ma.ValueScopeName=nO;var HOt=(0,La._)`\n`,pF=class extends rO{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?HOt:La.nil}}get(){return this._scope}name(e){return new nO(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,La._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=La.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,tO.Started);let l=r(u);if(l){let d=this.opts.es5?Ma.varKinds.var:Ma.varKinds.const;i=(0,La._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,La._)`${i}${l}${this.opts._n}`;else throw new fF(u);c.set(u,tO.Completed)})}return i}};Ma.ValueScope=pF});var Et=E(Xt=>{"use strict";Object.defineProperty(Xt,"__esModule",{value:!0});Xt.or=Xt.and=Xt.not=Xt.CodeGen=Xt.operators=Xt.varKinds=Xt.ValueScopeName=Xt.ValueScope=Xt.Scope=Xt.Name=Xt.regexpCode=Xt.stringify=Xt.getProperty=Xt.nil=Xt.strConcat=Xt.str=Xt._=void 0;var Ar=uy(),Gc=sO(),Sp=uy();Object.defineProperty(Xt,"_",{enumerable:!0,get:function(){return Sp._}});Object.defineProperty(Xt,"str",{enumerable:!0,get:function(){return Sp.str}});Object.defineProperty(Xt,"strConcat",{enumerable:!0,get:function(){return Sp.strConcat}});Object.defineProperty(Xt,"nil",{enumerable:!0,get:function(){return Sp.nil}});Object.defineProperty(Xt,"getProperty",{enumerable:!0,get:function(){return Sp.getProperty}});Object.defineProperty(Xt,"stringify",{enumerable:!0,get:function(){return Sp.stringify}});Object.defineProperty(Xt,"regexpCode",{enumerable:!0,get:function(){return Sp.regexpCode}});Object.defineProperty(Xt,"Name",{enumerable:!0,get:function(){return Sp.Name}});var cO=sO();Object.defineProperty(Xt,"Scope",{enumerable:!0,get:function(){return cO.Scope}});Object.defineProperty(Xt,"ValueScope",{enumerable:!0,get:function(){return cO.ValueScope}});Object.defineProperty(Xt,"ValueScopeName",{enumerable:!0,get:function(){return cO.ValueScopeName}});Object.defineProperty(Xt,"varKinds",{enumerable:!0,get:function(){return cO.varKinds}});Xt.operators={GT:new Ar._Code(">"),GTE:new Ar._Code(">="),LT:new Ar._Code("<"),LTE:new Ar._Code("<="),EQ:new Ar._Code("==="),NEQ:new Ar._Code("!=="),NOT:new Ar._Code("!"),OR:new Ar._Code("||"),AND:new Ar._Code("&&"),ADD:new Ar._Code("+")};var Ad=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},mF=class extends Ad{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Gc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=dy(this.rhs,e,r)),this}get names(){return this.rhs instanceof Ar._CodeOrName?this.rhs.names:{}}},iO=class extends Ad{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Ar.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=dy(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Ar.Name?{}:{...this.lhs.names};return oO(e,this.rhs)}},hF=class extends iO{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},gF=class extends Ad{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},AF=class extends Ad{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},yF=class extends Ad{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},xF=class extends Ad{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=dy(this.code,e,r),this}get names(){return this.code instanceof Ar._CodeOrName?this.code.names:{}}},o_=class extends Ad{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(QOt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Um(e,r.names),{})}},yd=class extends o_{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},bF=class extends o_{},ly=class extends yd{};ly.kind="else";var $m=class t extends yd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new ly(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Kbe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=dy(this.condition,e,r),this}get names(){let e=super.names;return oO(e,this.condition),this.else&&Um(e,this.else.names),e}};$m.kind="if";var Fm=class extends yd{};Fm.kind="for";var EF=class extends Fm{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=dy(this.iteration,e,r),this}get names(){return Um(super.names,this.iteration.names)}},_F=class extends Fm{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Gc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=oO(super.names,this.from);return oO(e,this.to)}},aO=class extends Fm{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=dy(this.iterable,e,r),this}get names(){return Um(super.names,this.iterable.names)}},c_=class extends yd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};c_.kind="func";var u_=class extends o_{render(e){return"return "+super.render(e)}};u_.kind="return";var SF=class extends yd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Um(e,this.catch.names),this.finally&&Um(e,this.finally.names),e}},l_=class extends yd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};l_.kind="catch";var d_=class extends yd{render(e){return"finally"+super.render(e)}};d_.kind="finally";var vF=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=e,this._scope=new Gc.Scope({parent:e}),this._nodes=[new bF]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new mF(e,i,n)),i}const(e,r,n){return this._def(Gc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Gc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Gc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new iO(e,r,n))}add(e,r){return this._leafNode(new hF(e,Xt.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Ar.nil&&this._leafNode(new xF(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,Ar.addCodeArg)(r,s));return r.push("}"),new Ar._Code(r)}if(e,r,n){if(this._blockNode(new $m(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new $m(e))}else(){return this._elseNode(new ly)}endIf(){return this._endBlockNode($m,ly)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new EF(e),r)}forRange(e,r,n,s,i=this.opts.es5?Gc.varKinds.var:Gc.varKinds.let){let a=this._scope.toName(e);return this._for(new _F(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Gc.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Ar.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Ar._)`${a}.length`,o=>{this.var(i,(0,Ar._)`${a}[${o}]`),n(i)})}return this._for(new aO("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Gc.varKinds.var:Gc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Ar._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new aO("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Fm)}label(e){return this._leafNode(new gF(e))}break(e){return this._leafNode(new AF(e))}return(e){let r=new u_;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(u_)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new SF;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new l_(i),r(i)}return n&&(this._currNode=s.finally=new d_,this.code(n)),this._endBlockNode(l_,d_)}throw(e){return this._leafNode(new yF(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Ar.nil,n,s){return this._blockNode(new c_(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(c_)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof $m))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Xt.CodeGen=vF;function Um(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function oO(t,e){return e instanceof Ar._CodeOrName?Um(t,e.names):t}function dy(t,e,r){if(t instanceof Ar.Name)return n(t);if(!s(t))return t;return new Ar._Code(t._items.reduce((i,a)=>(a instanceof Ar.Name&&(a=n(a)),a instanceof Ar._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof Ar._Code&&i._items.some(a=>a instanceof Ar.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function QOt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Kbe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Ar._)`!${IF(t)}`}Xt.not=Kbe;var GOt=Vbe(Xt.operators.AND);function KOt(...t){return t.reduce(GOt)}Xt.and=KOt;var VOt=Vbe(Xt.operators.OR);function zOt(...t){return t.reduce(VOt)}Xt.or=zOt;function Vbe(t){return(e,r)=>e===Ar.nil?r:r===Ar.nil?e:(0,Ar._)`${IF(e)} ${t} ${IF(r)}`}function IF(t){return t instanceof Ar.Name?t:(0,Ar._)`(${t})`}});var Vt=E(rr=>{"use strict";Object.defineProperty(rr,"__esModule",{value:!0});rr.checkStrictMode=rr.getErrorPath=rr.Type=rr.useFunc=rr.setEvaluated=rr.evaluatedPropsToName=rr.mergeEvaluated=rr.eachItem=rr.unescapeJsonPointer=rr.escapeJsonPointer=rr.escapeFragment=rr.unescapeFragment=rr.schemaRefOrVal=rr.schemaHasRulesButRef=rr.schemaHasRules=rr.checkUnknownRules=rr.alwaysValidSchema=rr.toHash=void 0;var fn=Et(),YOt=uy();function JOt(t){let e={};for(let r of t)e[r]=!0;return e}rr.toHash=JOt;function XOt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Jbe(t,e),!Xbe(e,t.self.RULES.all))}rr.alwaysValidSchema=XOt;function Jbe(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||tEe(t,`unknown keyword: "${i}"`)}rr.checkUnknownRules=Jbe;function Xbe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}rr.schemaHasRules=Xbe;function ZOt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}rr.schemaHasRulesButRef=ZOt;function ePt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,fn._)`${r}`}return(0,fn._)`${t}${e}${(0,fn.getProperty)(n)}`}rr.schemaRefOrVal=ePt;function tPt(t){return Zbe(decodeURIComponent(t))}rr.unescapeFragment=tPt;function rPt(t){return encodeURIComponent(TF(t))}rr.escapeFragment=rPt;function TF(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}rr.escapeJsonPointer=TF;function Zbe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}rr.unescapeJsonPointer=Zbe;function nPt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}rr.eachItem=nPt;function zbe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof fn.Name?(i instanceof fn.Name?t(s,i,a):e(s,i,a),a):i instanceof fn.Name?(e(s,a,i),i):r(i,a);return o===fn.Name&&!(c instanceof fn.Name)?n(s,c):c}}rr.mergeEvaluated={props:zbe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,fn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,fn._)`${r} || {}`).code((0,fn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,fn._)`${r} || {}`),wF(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:eEe}),items:zbe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,fn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,fn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function eEe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,fn._)`{}`);return e!==void 0&&wF(t,r,e),r}rr.evaluatedPropsToName=eEe;function wF(t,e,r){Object.keys(r).forEach(n=>t.assign((0,fn._)`${e}${(0,fn.getProperty)(n)}`,!0))}rr.setEvaluated=wF;var Ybe={};function sPt(t,e){return t.scopeValue("func",{ref:e,code:Ybe[e.code]||(Ybe[e.code]=new YOt._Code(e.code))})}rr.useFunc=sPt;var CF;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(CF||(rr.Type=CF={}));function iPt(t,e,r){if(t instanceof fn.Name){let n=e===CF.Num;return r?n?(0,fn._)`"[" + ${t} + "]"`:(0,fn._)`"['" + ${t} + "']"`:n?(0,fn._)`"/" + ${t}`:(0,fn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,fn.getProperty)(t).toString():"/"+TF(t)}rr.getErrorPath=iPt;function tEe(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}rr.checkStrictMode=tEe});var ec=E(RF=>{"use strict";Object.defineProperty(RF,"__esModule",{value:!0});var ki=Et(),aPt={data:new ki.Name("data"),valCxt:new ki.Name("valCxt"),instancePath:new ki.Name("instancePath"),parentData:new ki.Name("parentData"),parentDataProperty:new ki.Name("parentDataProperty"),rootData:new ki.Name("rootData"),dynamicAnchors:new ki.Name("dynamicAnchors"),vErrors:new ki.Name("vErrors"),errors:new ki.Name("errors"),this:new ki.Name("this"),self:new ki.Name("self"),scope:new ki.Name("scope"),json:new ki.Name("json"),jsonPos:new ki.Name("jsonPos"),jsonLen:new ki.Name("jsonLen"),jsonPart:new ki.Name("jsonPart")};RF.default=aPt});var f_=E(Di=>{"use strict";Object.defineProperty(Di,"__esModule",{value:!0});Di.extendErrors=Di.resetErrorsCount=Di.reportExtraError=Di.reportError=Di.keyword$DataError=Di.keywordError=void 0;var vr=Et(),uO=Vt(),ia=ec();Di.keywordError={message:({keyword:t})=>(0,vr.str)`must pass "${t}" keyword validation`};Di.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,vr.str)`"${t}" keyword must be ${e} ($data)`:(0,vr.str)`"${t}" keyword is invalid ($data)`};function oPt(t,e=Di.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=sEe(t,e,r);n??(a||o)?rEe(i,c):nEe(s,(0,vr._)`[${c}]`)}Di.reportError=oPt;function cPt(t,e=Di.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=sEe(t,e,r);rEe(s,o),i||a||nEe(n,ia.default.vErrors)}Di.reportExtraError=cPt;function uPt(t,e){t.assign(ia.default.errors,e),t.if((0,vr._)`${ia.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,vr._)`${ia.default.vErrors}.length`,e),()=>t.assign(ia.default.vErrors,null)))}Di.resetErrorsCount=uPt;function lPt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ia.default.errors,o=>{t.const(a,(0,vr._)`${ia.default.vErrors}[${o}]`),t.if((0,vr._)`${a}.instancePath === undefined`,()=>t.assign((0,vr._)`${a}.instancePath`,(0,vr.strConcat)(ia.default.instancePath,i.errorPath))),t.assign((0,vr._)`${a}.schemaPath`,(0,vr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,vr._)`${a}.schema`,r),t.assign((0,vr._)`${a}.data`,n))})}Di.extendErrors=lPt;function rEe(t,e){let r=t.const("err",e);t.if((0,vr._)`${ia.default.vErrors} === null`,()=>t.assign(ia.default.vErrors,(0,vr._)`[${r}]`),(0,vr._)`${ia.default.vErrors}.push(${r})`),t.code((0,vr._)`${ia.default.errors}++`)}function nEe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,vr._)`new ${t.ValidationError}(${e})`):(r.assign((0,vr._)`${n}.errors`,e),r.return(!1))}var qm={keyword:new vr.Name("keyword"),schemaPath:new vr.Name("schemaPath"),params:new vr.Name("params"),propertyName:new vr.Name("propertyName"),message:new vr.Name("message"),schema:new vr.Name("schema"),parentSchema:new vr.Name("parentSchema")};function sEe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,vr._)`{}`:dPt(t,e,r)}function dPt(t,e,r={}){let{gen:n,it:s}=t,i=[fPt(s,r),pPt(t,r)];return mPt(t,e,i),n.object(...i)}function fPt({errorPath:t},{instancePath:e}){let r=e?(0,vr.str)`${t}${(0,uO.getErrorPath)(e,uO.Type.Str)}`:t;return[ia.default.instancePath,(0,vr.strConcat)(ia.default.instancePath,r)]}function pPt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,vr.str)`${e}/${t}`;return r&&(s=(0,vr.str)`${s}${(0,uO.getErrorPath)(r,uO.Type.Str)}`),[qm.schemaPath,s]}function mPt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([qm.keyword,s],[qm.params,typeof e=="function"?e(t):e||(0,vr._)`{}`]),c.messages&&n.push([qm.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([qm.schema,a],[qm.parentSchema,(0,vr._)`${l}${d}`],[ia.default.data,i]),u&&n.push([qm.propertyName,u])}});var aEe=E(fy=>{"use strict";Object.defineProperty(fy,"__esModule",{value:!0});fy.boolOrEmptySchema=fy.topBoolOrEmptySchema=void 0;var hPt=f_(),gPt=Et(),APt=ec(),yPt={message:"boolean schema is false"};function xPt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?iEe(t,!1):typeof r=="object"&&r.$async===!0?e.return(APt.default.data):(e.assign((0,gPt._)`${n}.errors`,null),e.return(!0))}fy.topBoolOrEmptySchema=xPt;function bPt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),iEe(t)):r.var(e,!0)}fy.boolOrEmptySchema=bPt;function iEe(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,hPt.reportError)(s,yPt,void 0,e)}});var NF=E(py=>{"use strict";Object.defineProperty(py,"__esModule",{value:!0});py.getRules=py.isJSONType=void 0;var EPt=["string","number","integer","boolean","null","object","array"],_Pt=new Set(EPt);function SPt(t){return typeof t=="string"&&_Pt.has(t)}py.isJSONType=SPt;function vPt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}py.getRules=vPt});var OF=E(vp=>{"use strict";Object.defineProperty(vp,"__esModule",{value:!0});vp.shouldUseRule=vp.shouldUseGroup=vp.schemaHasRulesForType=void 0;function IPt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&oEe(t,n)}vp.schemaHasRulesForType=IPt;function oEe(t,e){return e.rules.some(r=>cEe(t,r))}vp.shouldUseGroup=oEe;function cEe(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}vp.shouldUseRule=cEe});var p_=E(Bi=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});Bi.reportTypeError=Bi.checkDataTypes=Bi.checkDataType=Bi.coerceAndCheckDataType=Bi.getJSONTypes=Bi.getSchemaTypes=Bi.DataType=void 0;var CPt=NF(),TPt=OF(),wPt=f_(),jt=Et(),uEe=Vt(),my;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(my||(Bi.DataType=my={}));function RPt(t){let e=lEe(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Bi.getSchemaTypes=RPt;function lEe(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(CPt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Bi.getJSONTypes=lEe;function NPt(t,e){let{gen:r,data:n,opts:s}=t,i=OPt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,TPt.schemaHasRulesForType)(t,e[0]));if(a){let o=kF(e,n,s.strictNumbers,my.Wrong);r.if(o,()=>{i.length?PPt(t,e,i):DF(t)})}return a}Bi.coerceAndCheckDataType=NPt;var dEe=new Set(["string","number","integer","boolean","null"]);function OPt(t,e){return e?t.filter(r=>dEe.has(r)||e==="array"&&r==="array"):[]}function PPt(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,jt._)`typeof ${s}`),o=n.let("coerced",(0,jt._)`undefined`);i.coerceTypes==="array"&&n.if((0,jt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,jt._)`${s}[0]`).assign(a,(0,jt._)`typeof ${s}`).if(kF(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,jt._)`${o} !== undefined`);for(let u of r)(dEe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),DF(t),n.endIf(),n.if((0,jt._)`${o} !== undefined`,()=>{n.assign(s,o),kPt(t,o)});function c(u){switch(u){case"string":n.elseIf((0,jt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,jt._)`"" + ${s}`).elseIf((0,jt._)`${s} === null`).assign(o,(0,jt._)`""`);return;case"number":n.elseIf((0,jt._)`${a} == "boolean" || ${s} === null - || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,jt._)`+${s}`);return;case"integer":n.elseIf((0,jt._)`${a} === "boolean" || ${s} === null - || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,jt._)`+${s}`);return;case"boolean":n.elseIf((0,jt._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,jt._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,jt._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,jt._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${s} === null`).assign(o,(0,jt._)`[${s}]`)}}}function kPt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,jt._)`${e} !== undefined`,()=>t.assign((0,jt._)`${e}[${r}]`,n))}function PF(t,e,r,n=my.Correct){let s=n===my.Correct?jt.operators.EQ:jt.operators.NEQ,i;switch(t){case"null":return(0,jt._)`${e} ${s} null`;case"array":i=(0,jt._)`Array.isArray(${e})`;break;case"object":i=(0,jt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,jt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,jt._)`typeof ${e} ${s} ${t}`}return n===my.Correct?i:(0,jt.not)(i);function a(o=jt.nil){return(0,jt.and)((0,jt._)`typeof ${e} == "number"`,o,r?(0,jt._)`isFinite(${e})`:jt.nil)}}Bi.checkDataType=PF;function kF(t,e,r,n){if(t.length===1)return PF(t[0],e,r,n);let s,i=(0,uEe.toHash)(t);if(i.array&&i.object){let a=(0,jt._)`typeof ${e} != "object"`;s=i.null?a:(0,jt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=jt.nil;i.number&&delete i.integer;for(let a in i)s=(0,jt.and)(s,PF(a,e,r,n));return s}Bi.checkDataTypes=kF;var DPt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,jt._)`{type: ${t}}`:(0,jt._)`{type: ${e}}`};function DF(t){let e=BPt(t);(0,wPt.reportError)(e,DPt)}Bi.reportTypeError=DF;function BPt(t){let{gen:e,data:r,schema:n}=t,s=(0,uEe.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var pEe=E(lO=>{"use strict";Object.defineProperty(lO,"__esModule",{value:!0});lO.assignDefaults=void 0;var hy=Et(),LPt=Vt();function MPt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)fEe(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>fEe(t,i,s.default))}lO.assignDefaults=MPt;function fEe(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,hy._)`${i}${(0,hy.getProperty)(e)}`;if(s){(0,LPt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,hy._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,hy._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,hy._)`${o} = ${(0,hy.stringify)(r)}`)}});var fi=E(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.validateUnion=en.validateArray=en.usePattern=en.callValidateCode=en.schemaProperties=en.allSchemaProperties=en.noPropertyInData=en.propertyInData=en.isOwnProperty=en.hasPropFunc=en.reportMissingProp=en.checkMissingProp=en.checkReportMissingProp=void 0;var Pn=Et(),BF=Vt(),Ip=ec(),WPt=Vt();function $Pt(t,e){let{gen:r,data:n,it:s}=t;r.if(MF(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Pn._)`${e}`},!0),t.error()})}en.checkReportMissingProp=$Pt;function FPt({gen:t,data:e,it:{opts:r}},n,s){return(0,Pn.or)(...n.map(i=>(0,Pn.and)(MF(t,e,i,r.ownProperties),(0,Pn._)`${s} = ${i}`)))}en.checkMissingProp=FPt;function UPt(t,e){t.setParams({missingProperty:e},!0),t.error()}en.reportMissingProp=UPt;function mEe(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Pn._)`Object.prototype.hasOwnProperty`})}en.hasPropFunc=mEe;function LF(t,e,r){return(0,Pn._)`${mEe(t)}.call(${e}, ${r})`}en.isOwnProperty=LF;function qPt(t,e,r,n){let s=(0,Pn._)`${e}${(0,Pn.getProperty)(r)} !== undefined`;return n?(0,Pn._)`${s} && ${LF(t,e,r)}`:s}en.propertyInData=qPt;function MF(t,e,r,n){let s=(0,Pn._)`${e}${(0,Pn.getProperty)(r)} === undefined`;return n?(0,Pn.or)(s,(0,Pn.not)(LF(t,e,r))):s}en.noPropertyInData=MF;function hEe(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}en.allSchemaProperties=hEe;function jPt(t,e){return hEe(e).filter(r=>!(0,BF.alwaysValidSchema)(t,e[r]))}en.schemaProperties=jPt;function HPt({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Pn._)`${t}, ${e}, ${n}${s}`:e,d=[[Ip.default.instancePath,(0,Pn.strConcat)(Ip.default.instancePath,i)],[Ip.default.parentData,a.parentData],[Ip.default.parentDataProperty,a.parentDataProperty],[Ip.default.rootData,Ip.default.rootData]];a.opts.dynamicRef&&d.push([Ip.default.dynamicAnchors,Ip.default.dynamicAnchors]);let f=(0,Pn._)`${l}, ${r.object(...d)}`;return c!==Pn.nil?(0,Pn._)`${o}.call(${c}, ${f})`:(0,Pn._)`${o}(${f})`}en.callValidateCode=HPt;var QPt=(0,Pn._)`new RegExp`;function GPt({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Pn._)`${s.code==="new RegExp"?QPt:(0,WPt.useFunc)(t,s)}(${r}, ${n})`})}en.usePattern=GPt;function KPt(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Pn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:BF.Type.Num},i),e.if((0,Pn.not)(i),o)})}}en.validateArray=KPt;function VPt(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,BF.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Pn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Pn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}en.validateUnion=VPt});var yEe=E(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});zu.validateKeywordUsage=zu.validSchemaType=zu.funcKeywordCode=zu.macroKeywordCode=void 0;var aa=Et(),jm=ec(),zPt=fi(),YPt=f_();function JPt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=AEe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:aa.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}zu.macroKeywordCode=JPt;function XPt(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;ekt(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=AEe(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&gEe(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&gEe(t),A(()=>ZPt(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,aa._)`await `),b=>n.assign(d,!1).if((0,aa._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,aa._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,aa._)`${l}.errors`;return n.assign(g,null),h(aa.nil),g}function h(g=e.async?(0,aa._)`await `:aa.nil){let b=c.opts.passContext?jm.default.this:jm.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,aa._)`${g}${(0,zPt.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,aa.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}zu.funcKeywordCode=XPt;function gEe(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,aa._)`${n.parentData}[${n.parentDataProperty}]`))}function ZPt(t,e){let{gen:r}=t;r.if((0,aa._)`Array.isArray(${e})`,()=>{r.assign(jm.default.vErrors,(0,aa._)`${jm.default.vErrors} === null ? ${e} : ${jm.default.vErrors}.concat(${e})`).assign(jm.default.errors,(0,aa._)`${jm.default.vErrors}.length`),(0,YPt.extendErrors)(t)},()=>t.error())}function ekt({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function AEe(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,aa.stringify)(r)})}function tkt(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}zu.validSchemaType=tkt;function rkt({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}zu.validateKeywordUsage=rkt});var bEe=E(Cp=>{"use strict";Object.defineProperty(Cp,"__esModule",{value:!0});Cp.extendSubschemaMode=Cp.extendSubschemaData=Cp.getSubschema=void 0;var Yu=Et(),xEe=Vt();function nkt(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,Yu._)`${t.schemaPath}${(0,Yu.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,Yu._)`${t.schemaPath}${(0,Yu.getProperty)(e)}${(0,Yu.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,xEe.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Cp.getSubschema=nkt;function skt(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,Yu._)`${e.data}${(0,Yu.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Yu.str)`${u}${(0,xEe.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Yu._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof Yu.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Cp.extendSubschemaData=skt;function ikt(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Cp.extendSubschemaMode=ikt});var _Ee=E((h3r,EEe)=>{"use strict";var Tp=EEe.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};dO(e,n,s,t,"",t)};Tp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Tp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Tp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Tp.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function dO(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Tp.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Wa,"__esModule",{value:!0});Wa.getSchemaRefs=Wa.resolveUrl=Wa.normalizeId=Wa._getFullPath=Wa.getFullPath=Wa.inlineRef=void 0;var okt=Vt(),ckt=Ko(),ukt=_Ee(),lkt=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function dkt(t,e=!0){return typeof t=="boolean"?!0:e===!0?!WF(t):e?SEe(t)<=e:!1}Wa.inlineRef=dkt;var fkt=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function WF(t){for(let e in t){if(fkt.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(WF)||typeof r=="object"&&WF(r))return!0}return!1}function SEe(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!lkt.has(r)&&(typeof t[r]=="object"&&(0,okt.eachItem)(t[r],n=>e+=SEe(n)),e===1/0))return 1/0}return e}function vEe(t,e="",r){r!==!1&&(e=gy(e));let n=t.parse(e);return IEe(t,n)}Wa.getFullPath=vEe;function IEe(t,e){return t.serialize(e).split("#")[0]+"#"}Wa._getFullPath=IEe;var pkt=/#\/?$/;function gy(t){return t?t.replace(pkt,""):""}Wa.normalizeId=gy;function mkt(t,e,r){return r=gy(r),t.resolve(e,r)}Wa.resolveUrl=mkt;var hkt=/^[a-z_][-a-z0-9._]*$/i;function gkt(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=gy(t[r]||e),i={"":s},a=vEe(n,s,!1),o={},c=new Set;return ukt(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=gy(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==gy(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!hkt.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!ckt(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Wa.getSchemaRefs=gkt});var Ay=E(wp=>{"use strict";Object.defineProperty(wp,"__esModule",{value:!0});wp.getData=wp.KeywordCxt=wp.validateFunctionCode=void 0;var NEe=aEe(),CEe=p_(),FF=OF(),fO=p_(),Akt=pEe(),g_=yEe(),$F=bEe(),at=Et(),Rt=ec(),ykt=m_(),xd=Vt(),h_=f_();function xkt(t){if(kEe(t)&&(DEe(t),PEe(t))){_kt(t);return}OEe(t,()=>(0,NEe.topBoolOrEmptySchema)(t))}wp.validateFunctionCode=xkt;function OEe({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,at._)`${Rt.default.data}, ${Rt.default.valCxt}`,n.$async,()=>{t.code((0,at._)`"use strict"; ${TEe(r,s)}`),Ekt(t,s),t.code(i)}):t.func(e,(0,at._)`${Rt.default.data}, ${bkt(s)}`,n.$async,()=>t.code(TEe(r,s)).code(i))}function bkt(t){return(0,at._)`{${Rt.default.instancePath}="", ${Rt.default.parentData}, ${Rt.default.parentDataProperty}, ${Rt.default.rootData}=${Rt.default.data}${t.dynamicRef?(0,at._)`, ${Rt.default.dynamicAnchors}={}`:at.nil}}={}`}function Ekt(t,e){t.if(Rt.default.valCxt,()=>{t.var(Rt.default.instancePath,(0,at._)`${Rt.default.valCxt}.${Rt.default.instancePath}`),t.var(Rt.default.parentData,(0,at._)`${Rt.default.valCxt}.${Rt.default.parentData}`),t.var(Rt.default.parentDataProperty,(0,at._)`${Rt.default.valCxt}.${Rt.default.parentDataProperty}`),t.var(Rt.default.rootData,(0,at._)`${Rt.default.valCxt}.${Rt.default.rootData}`),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,at._)`${Rt.default.valCxt}.${Rt.default.dynamicAnchors}`)},()=>{t.var(Rt.default.instancePath,(0,at._)`""`),t.var(Rt.default.parentData,(0,at._)`undefined`),t.var(Rt.default.parentDataProperty,(0,at._)`undefined`),t.var(Rt.default.rootData,Rt.default.data),e.dynamicRef&&t.var(Rt.default.dynamicAnchors,(0,at._)`{}`)})}function _kt(t){let{schema:e,opts:r,gen:n}=t;OEe(t,()=>{r.$comment&&e.$comment&&LEe(t),Tkt(t),n.let(Rt.default.vErrors,null),n.let(Rt.default.errors,0),r.unevaluated&&Skt(t),BEe(t),Nkt(t)})}function Skt(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,at._)`${r}.evaluated`),e.if((0,at._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,at._)`${t.evaluated}.props`,(0,at._)`undefined`)),e.if((0,at._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,at._)`${t.evaluated}.items`,(0,at._)`undefined`))}function TEe(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,at._)`/*# sourceURL=${r} */`:at.nil}function vkt(t,e){if(kEe(t)&&(DEe(t),PEe(t))){Ikt(t,e);return}(0,NEe.boolOrEmptySchema)(t,e)}function PEe({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function kEe(t){return typeof t.schema!="boolean"}function Ikt(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&LEe(t),wkt(t),Rkt(t);let i=n.const("_errs",Rt.default.errors);BEe(t,i),n.var(e,(0,at._)`${i} === ${Rt.default.errors}`)}function DEe(t){(0,xd.checkUnknownRules)(t),Ckt(t)}function BEe(t,e){if(t.opts.jtd)return wEe(t,[],!1,e);let r=(0,CEe.getSchemaTypes)(t.schema),n=(0,CEe.coerceAndCheckDataType)(t,r);wEe(t,r,!n,e)}function Ckt(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,xd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function Tkt(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,xd.checkStrictMode)(t,"default is ignored in the schema root")}function wkt(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,ykt.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function Rkt(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function LEe({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,at._)`${Rt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,at.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,at._)`${Rt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function Nkt(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,at._)`${Rt.default.errors} === 0`,()=>e.return(Rt.default.data),()=>e.throw((0,at._)`new ${s}(${Rt.default.vErrors})`)):(e.assign((0,at._)`${n}.errors`,Rt.default.vErrors),i.unevaluated&&Okt(t),e.return((0,at._)`${Rt.default.errors} === 0`))}function Okt({gen:t,evaluated:e,props:r,items:n}){r instanceof at.Name&&t.assign((0,at._)`${e}.props`,r),n instanceof at.Name&&t.assign((0,at._)`${e}.items`,n)}function wEe(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,xd.schemaHasRulesButRef)(i,l))){s.block(()=>WEe(t,"$ref",l.all.$ref.definition));return}c.jtd||Pkt(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,FF.shouldUseGroup)(i,f)&&(f.type?(s.if((0,fO.checkDataType)(f.type,a,c.strictNumbers)),REe(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,fO.reportTypeError)(t)),s.endIf()):REe(t,f),o||s.if((0,at._)`${Rt.default.errors} === ${n||0}`))}}function REe(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,Akt.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,FF.shouldUseRule)(n,i)&&WEe(t,i.keyword,i.definition,e.type)})}function Pkt(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(kkt(t,e),t.opts.allowUnionTypes||Dkt(t,e),Bkt(t,t.dataTypes))}function kkt(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{MEe(t.dataTypes,r)||UF(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),Mkt(t,e)}}function Dkt(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&UF(t,"use allowUnionTypes to allow union type keyword")}function Bkt(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,FF.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>Lkt(e,a))&&UF(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function Lkt(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function MEe(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function Mkt(t,e){let r=[];for(let n of t.dataTypes)MEe(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function UF(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,xd.checkStrictMode)(t,e,t.opts.strictTypes)}var pO=class{constructor(e,r,n){if((0,g_.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,xd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",$Ee(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,g_.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Rt.default.errors))}result(e,r,n){this.failResult((0,at.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,at.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,at._)`${r} !== undefined && (${(0,at.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?h_.reportExtraError:h_.reportError)(this,this.def.error,r)}$dataError(){(0,h_.reportError)(this,this.def.$dataError||h_.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,h_.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=at.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=at.nil,r=at.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,at.or)((0,at._)`${s} === undefined`,r)),e!==at.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==at.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,at.or)(a(),o());function a(){if(n.length){if(!(r instanceof at.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,at._)`${(0,fO.checkDataTypes)(c,r,i.opts.strictNumbers,fO.DataType.Wrong)}`}return at.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,at._)`!${c}(${r})`}return at.nil}}subschema(e,r){let n=(0,$F.getSubschema)(this.it,e);(0,$F.extendSubschemaData)(n,this.it,e),(0,$F.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return vkt(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=xd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=xd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,at.Name)),!0}};wp.KeywordCxt=pO;function WEe(t,e,r,n){let s=new pO(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,g_.funcKeywordCode)(s,r):"macro"in r?(0,g_.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,g_.funcKeywordCode)(s,r)}var Wkt=/^\/(?:[^~]|~0|~1)*$/,$kt=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function $Ee(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Rt.default.rootData;if(t[0]==="/"){if(!Wkt.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Rt.default.rootData}else{let u=$kt.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,at._)`${i}${(0,at.getProperty)((0,xd.unescapeJsonPointer)(u))}`,a=(0,at._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}wp.getData=$Ee});var A_=E(jF=>{"use strict";Object.defineProperty(jF,"__esModule",{value:!0});var qF=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};jF.default=qF});var bd=E(GF=>{"use strict";Object.defineProperty(GF,"__esModule",{value:!0});var HF=m_(),QF=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,HF.resolveUrl)(e,r,n),this.missingSchema=(0,HF.normalizeId)((0,HF.getFullPath)(e,this.missingRef))}};GF.default=QF});var Qm=E(tc=>{"use strict";Object.defineProperty(tc,"__esModule",{value:!0});tc.resolveSchema=tc.getCompilingSchema=tc.resolveRef=tc.compileSchema=tc.SchemaEnv=void 0;var Kc=Et(),Fkt=A_(),Hm=ec(),Vc=m_(),FEe=Vt(),Ukt=Ay(),yy=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Vc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};tc.SchemaEnv=yy;function VF(t){let e=UEe.call(this,t);if(e)return e;let r=(0,Vc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Kc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:Fkt.default,code:(0,Kc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Hm.default.data,parentData:Hm.default.parentData,parentDataProperty:Hm.default.parentDataProperty,dataNames:[Hm.default.data],dataPathArr:[Kc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Kc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Kc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Kc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,Ukt.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Hm.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Hm.default.self}`,`${Hm.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Kc.Name?void 0:m,items:h instanceof Kc.Name?void 0:h,dynamicProps:m instanceof Kc.Name,dynamicItems:h instanceof Kc.Name},p.source&&(p.source.evaluated=(0,Kc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}tc.compileSchema=VF;function qkt(t,e,r){var n;r=(0,Vc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=Qkt.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new yy({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=jkt.call(this,i)}tc.resolveRef=qkt;function jkt(t){return(0,Vc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:VF.call(this,t)}function UEe(t){for(let e of this._compilations)if(Hkt(e,t))return e}tc.getCompilingSchema=UEe;function Hkt(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function Qkt(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||mO.call(this,t,e)}function mO(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Vc._getFullPath)(this.opts.uriResolver,r),s=(0,Vc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return KF.call(this,r,t);let i=(0,Vc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=mO.call(this,t,a);return typeof o?.schema!="object"?void 0:KF.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||VF.call(this,a),i===(0,Vc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Vc.resolveUrl)(this.opts.uriResolver,s,u)),new yy({schema:o,schemaId:c,root:t,baseId:s})}return KF.call(this,r,a)}}tc.resolveSchema=mO;var Gkt=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function KF(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,FEe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!Gkt.has(o)&&u&&(e=(0,Vc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,FEe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Vc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=mO.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new yy({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var qEe=E((E3r,Kkt)=>{Kkt.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var YF=E((_3r,GEe)=>{"use strict";var Vkt=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),HEe=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function zF(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var zkt=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function jEe(t){return t.length=0,!0}function Ykt(t,e,r){if(t.length){let n=zF(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function Jkt(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=Ykt;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=jEe}else{s.push(u);continue}}return s.length&&(o===jEe?r.zone=s.join(""):a?n.push(s.join("")):n.push(zF(s))),r.address=n.join(""),r}function QEe(t){if(Xkt(t,":")<2)return{host:t,isIPV6:!1};let e=Jkt(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function Xkt(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:rDt}=YF(),nDt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,sDt=["http","https","ws","wss","urn","urn:uuid"];function iDt(t){return sDt.indexOf(t)!==-1}function JF(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function KEe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function VEe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function aDt(t){return t.secure=JF(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function oDt(t){if((t.port===(JF(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function cDt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(nDt);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=XF(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function uDt(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=XF(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function lDt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!rDt(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function dDt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var zEe={scheme:"http",domainHost:!0,parse:KEe,serialize:VEe},fDt={scheme:"https",domainHost:zEe.domainHost,parse:KEe,serialize:VEe},hO={scheme:"ws",domainHost:!0,parse:aDt,serialize:oDt},pDt={scheme:"wss",domainHost:hO.domainHost,parse:hO.parse,serialize:hO.serialize},mDt={scheme:"urn",parse:cDt,serialize:uDt,skipNormalize:!0},hDt={scheme:"urn:uuid",parse:lDt,serialize:dDt,skipNormalize:!0},gO={http:zEe,https:fDt,ws:hO,wss:pDt,urn:mDt,"urn:uuid":hDt};Object.setPrototypeOf(gO,null);function XF(t){return t&&(gO[t]||gO[t.toLowerCase()])||void 0}YEe.exports={wsIsSecure:JF,SCHEMES:gO,isValidSchemeName:iDt,getSchemeHandler:XF}});var e1e=E((v3r,yO)=>{"use strict";var{normalizeIPv6:gDt,removeDotSegments:y_,recomposeAuthority:ADt,normalizeComponentEncoding:AO,isIPv4:yDt,nonSimpleDomain:xDt}=YF(),{SCHEMES:bDt,getSchemeHandler:XEe}=JEe();function EDt(t,e){return typeof t=="string"?t=Ju(Ed(t,e),e):typeof t=="object"&&(t=Ed(Ju(t,e),e)),t}function _Dt(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=ZEe(Ed(t,n),Ed(e,n),n,!0);return n.skipEscape=!0,Ju(s,n)}function ZEe(t,e,r,n){let s={};return n||(t=Ed(Ju(t,r),r),e=Ed(Ju(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=y_(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=y_(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=y_(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=y_(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function SDt(t,e,r){return typeof t=="string"?(t=unescape(t),t=Ju(AO(Ed(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Ju(AO(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Ju(AO(Ed(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Ju(AO(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Ju(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=XEe(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=ADt(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=y_(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var vDt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Ed(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(vDt);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(yDt(n.host)===!1){let c=gDt(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=XEe(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&xDt(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var ZF={SCHEMES:bDt,normalize:EDt,resolve:_Dt,resolveComponent:ZEe,equal:SDt,serialize:Ju,parse:Ed};yO.exports=ZF;yO.exports.default=ZF;yO.exports.fastUri=ZF});var r1e=E(eU=>{"use strict";Object.defineProperty(eU,"__esModule",{value:!0});var t1e=e1e();t1e.code='require("ajv/dist/runtime/uri").default';eU.default=t1e});var nU=E(pi=>{"use strict";Object.defineProperty(pi,"__esModule",{value:!0});pi.CodeGen=pi.Name=pi.nil=pi.stringify=pi.str=pi._=pi.KeywordCxt=void 0;var IDt=Ay();Object.defineProperty(pi,"KeywordCxt",{enumerable:!0,get:function(){return IDt.KeywordCxt}});var xy=Et();Object.defineProperty(pi,"_",{enumerable:!0,get:function(){return xy._}});Object.defineProperty(pi,"str",{enumerable:!0,get:function(){return xy.str}});Object.defineProperty(pi,"stringify",{enumerable:!0,get:function(){return xy.stringify}});Object.defineProperty(pi,"nil",{enumerable:!0,get:function(){return xy.nil}});Object.defineProperty(pi,"Name",{enumerable:!0,get:function(){return xy.Name}});Object.defineProperty(pi,"CodeGen",{enumerable:!0,get:function(){return xy.CodeGen}});var CDt=A_(),o1e=bd(),TDt=NF(),x_=Qm(),wDt=Et(),b_=m_(),xO=p_(),rU=Vt(),n1e=qEe(),RDt=r1e(),c1e=(t,e)=>new RegExp(t,e);c1e.code="new RegExp";var NDt=["removeAdditional","useDefaults","coerceTypes"],ODt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),PDt={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},kDt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},s1e=200;function DDt(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,I,R,w,N;let P=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:c1e,L=(s=t.uriResolver)!==null&&s!==void 0?s:RDt.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:s1e,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:s1e,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var E_=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...DDt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new wDt.ValueScope({scope:{},prefixes:ODt,es5:r,lines:n}),this.logger=FDt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,TDt.getRules)(),i1e.call(this,PDt,e,"NOT SUPPORTED"),i1e.call(this,kDt,e,"DEPRECATED","warn"),this._metaOpts=WDt.call(this),e.formats&&LDt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&MDt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),BDt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=n1e;n==="id"&&(s={...n1e},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof o1e.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,b_.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=a1e.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new x_.SchemaEnv({schema:{},schemaId:n});if(r=x_.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=a1e.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,b_.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(qDt.call(this,n,r),!r)return(0,rU.eachItem)(n,i=>tU.call(this,i)),this;HDt.call(this,r);let s={...r,type:(0,xO.getJSONTypes)(r.type),schemaType:(0,xO.getJSONTypes)(r.schemaType)};return(0,rU.eachItem)(n,s.type.length===0?i=>tU.call(this,i,s):i=>s.type.forEach(a=>tU.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=u1e(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,b_.normalizeId)(a||n);let u=b_.getSchemaRefs.call(this,e,n);return c=new x_.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):x_.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{x_.compileSchema.call(this,e)}finally{this.opts=r}}};E_.ValidationError=CDt.default;E_.MissingRefError=o1e.default;pi.default=E_;function i1e(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function a1e(t){return t=(0,b_.normalizeId)(t),this.schemas[t]||this.refs[t]}function BDt(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function LDt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function MDt(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function WDt(){let t={...this.opts};for(let e of NDt)delete t[e];return t}var $Dt={log(){},warn(){},error(){}};function FDt(t){if(t===!1)return $Dt;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var UDt=/^[a-z_$][a-z0-9_$:-]*$/i;function qDt(t,e){let{RULES:r}=this;if((0,rU.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!UDt.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function tU(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,xO.getJSONTypes)(e.type),schemaType:(0,xO.getJSONTypes)(e.schemaType)}};e.before?jDt.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function jDt(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function HDt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=u1e(e)),t.validateSchema=this.compile(e,!0))}var QDt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function u1e(t){return{anyOf:[t,QDt]}}});var l1e=E(sU=>{"use strict";Object.defineProperty(sU,"__esModule",{value:!0});var GDt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};sU.default=GDt});var iU=E(Gm=>{"use strict";Object.defineProperty(Gm,"__esModule",{value:!0});Gm.callRef=Gm.getValidate=void 0;var KDt=bd(),d1e=fi(),$a=Et(),by=ec(),f1e=Qm(),bO=Vt(),VDt={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=f1e.resolveRef.call(c,u,s,r);if(l===void 0)throw new KDt.default(n.opts.uriResolver,s,r);if(l instanceof f1e.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return EO(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return EO(t,(0,$a._)`${m}.validate`,u,u.$async)}function f(m){let h=p1e(t,m);EO(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,$a.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:$a.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function p1e(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,$a._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Gm.getValidate=p1e;function EO(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?by.default.this:$a.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,$a._)`await ${(0,d1e.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,$a._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,d1e.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,$a._)`${m}.errors`;s.assign(by.default.vErrors,(0,$a._)`${by.default.vErrors} === null ? ${h} : ${by.default.vErrors}.concat(${h})`),s.assign(by.default.errors,(0,$a._)`${by.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=bO.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,$a._)`${m}.evaluated.props`);i.props=bO.mergeEvaluated.props(s,g,i.props,$a.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=bO.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,$a._)`${m}.evaluated.items`);i.items=bO.mergeEvaluated.items(s,g,i.items,$a.Name)}}}Gm.callRef=EO;Gm.default=VDt});var m1e=E(aU=>{"use strict";Object.defineProperty(aU,"__esModule",{value:!0});var zDt=l1e(),YDt=iU(),JDt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",zDt.default,YDt.default];aU.default=JDt});var h1e=E(oU=>{"use strict";Object.defineProperty(oU,"__esModule",{value:!0});var _O=Et(),Rp=_O.operators,SO={maximum:{okStr:"<=",ok:Rp.LTE,fail:Rp.GT},minimum:{okStr:">=",ok:Rp.GTE,fail:Rp.LT},exclusiveMaximum:{okStr:"<",ok:Rp.LT,fail:Rp.GTE},exclusiveMinimum:{okStr:">",ok:Rp.GT,fail:Rp.LTE}},XDt={message:({keyword:t,schemaCode:e})=>(0,_O.str)`must be ${SO[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,_O._)`{comparison: ${SO[t].okStr}, limit: ${e}}`},ZDt={keyword:Object.keys(SO),type:"number",schemaType:"number",$data:!0,error:XDt,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,_O._)`${r} ${SO[e].fail} ${n} || isNaN(${r})`)}};oU.default=ZDt});var g1e=E(cU=>{"use strict";Object.defineProperty(cU,"__esModule",{value:!0});var __=Et(),e3t={message:({schemaCode:t})=>(0,__.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,__._)`{multipleOf: ${t}}`},t3t={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:e3t,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,__._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,__._)`${a} !== parseInt(${a})`;t.fail$data((0,__._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};cU.default=t3t});var y1e=E(uU=>{"use strict";Object.defineProperty(uU,"__esModule",{value:!0});function A1e(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(lU,"__esModule",{value:!0});var Km=Et(),r3t=Vt(),n3t=y1e(),s3t={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Km.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Km._)`{limit: ${t}}`},i3t={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:s3t,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?Km.operators.GT:Km.operators.LT,a=s.opts.unicode===!1?(0,Km._)`${r}.length`:(0,Km._)`${(0,r3t.useFunc)(t.gen,n3t.default)}(${r})`;t.fail$data((0,Km._)`${a} ${i} ${n}`)}};lU.default=i3t});var b1e=E(dU=>{"use strict";Object.defineProperty(dU,"__esModule",{value:!0});var a3t=fi(),vO=Et(),o3t={message:({schemaCode:t})=>(0,vO.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,vO._)`{pattern: ${t}}`},c3t={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:o3t,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,vO._)`(new RegExp(${s}, ${a}))`:(0,a3t.usePattern)(t,n);t.fail$data((0,vO._)`!${o}.test(${e})`)}};dU.default=c3t});var E1e=E(fU=>{"use strict";Object.defineProperty(fU,"__esModule",{value:!0});var S_=Et(),u3t={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,S_.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,S_._)`{limit: ${t}}`},l3t={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:u3t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?S_.operators.GT:S_.operators.LT;t.fail$data((0,S_._)`Object.keys(${r}).length ${s} ${n}`)}};fU.default=l3t});var _1e=E(pU=>{"use strict";Object.defineProperty(pU,"__esModule",{value:!0});var v_=fi(),I_=Et(),d3t=Vt(),f3t={message:({params:{missingProperty:t}})=>(0,I_.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,I_._)`{missingProperty: ${t}}`},p3t={keyword:"required",type:"object",schemaType:"array",$data:!0,error:f3t,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,d3t.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(I_.nil,d);else for(let p of r)(0,v_.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,v_.checkMissingProp)(t,r,p)),(0,v_.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,v_.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,v_.propertyInData)(e,s,p,o.ownProperties)),e.if((0,I_.not)(m),()=>{t.error(),e.break()})},I_.nil)}}};pU.default=p3t});var S1e=E(mU=>{"use strict";Object.defineProperty(mU,"__esModule",{value:!0});var C_=Et(),m3t={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,C_.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,C_._)`{limit: ${t}}`},h3t={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:m3t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?C_.operators.GT:C_.operators.LT;t.fail$data((0,C_._)`${r}.length ${s} ${n}`)}};mU.default=h3t});var IO=E(hU=>{"use strict";Object.defineProperty(hU,"__esModule",{value:!0});var v1e=Ko();v1e.code='require("ajv/dist/runtime/equal").default';hU.default=v1e});var I1e=E(AU=>{"use strict";Object.defineProperty(AU,"__esModule",{value:!0});var gU=p_(),mi=Et(),g3t=Vt(),A3t=IO(),y3t={message:({params:{i:t,j:e}})=>(0,mi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,mi._)`{i: ${t}, j: ${e}}`},x3t={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:y3t,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,gU.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,mi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,mi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,mi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,gU.checkDataTypes)(u,A,o.opts.strictNumbers,gU.DataType.Wrong),b=e.const("indices",(0,mi._)`{}`);e.for((0,mi._)`;${m}--;`,()=>{e.let(A,(0,mi._)`${r}[${m}]`),e.if(g,(0,mi._)`continue`),u.length>1&&e.if((0,mi._)`typeof ${A} == "string"`,(0,mi._)`${A} += "_"`),e.if((0,mi._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,mi._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,mi._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,g3t.useFunc)(e,A3t.default),g=e.name("outer");e.label(g).for((0,mi._)`;${m}--;`,()=>e.for((0,mi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,mi._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};AU.default=x3t});var C1e=E(xU=>{"use strict";Object.defineProperty(xU,"__esModule",{value:!0});var yU=Et(),b3t=Vt(),E3t=IO(),_3t={message:"must be equal to constant",params:({schemaCode:t})=>(0,yU._)`{allowedValue: ${t}}`},S3t={keyword:"const",$data:!0,error:_3t,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,yU._)`!${(0,b3t.useFunc)(e,E3t.default)}(${r}, ${s})`):t.fail((0,yU._)`${i} !== ${r}`)}};xU.default=S3t});var T1e=E(bU=>{"use strict";Object.defineProperty(bU,"__esModule",{value:!0});var T_=Et(),v3t=Vt(),I3t=IO(),C3t={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,T_._)`{allowedValues: ${t}}`},T3t={keyword:"enum",schemaType:"array",$data:!0,error:C3t,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,v3t.useFunc)(e,I3t.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,T_.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,T_._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,T_._)`${u()}(${r}, ${p}[${m}])`:(0,T_._)`${r} === ${h}`}}};bU.default=T3t});var w1e=E(EU=>{"use strict";Object.defineProperty(EU,"__esModule",{value:!0});var w3t=h1e(),R3t=g1e(),N3t=x1e(),O3t=b1e(),P3t=E1e(),k3t=_1e(),D3t=S1e(),B3t=I1e(),L3t=C1e(),M3t=T1e(),W3t=[w3t.default,R3t.default,N3t.default,O3t.default,P3t.default,k3t.default,D3t.default,B3t.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},L3t.default,M3t.default];EU.default=W3t});var SU=E(w_=>{"use strict";Object.defineProperty(w_,"__esModule",{value:!0});w_.validateAdditionalItems=void 0;var Vm=Et(),_U=Vt(),$3t={message:({params:{len:t}})=>(0,Vm.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Vm._)`{limit: ${t}}`},F3t={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:$3t,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,_U.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}R1e(t,n)}};function R1e(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,Vm._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Vm._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,_U.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,Vm._)`${o} <= ${e.length}`);r.if((0,Vm.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:_U.Type.Num},u),a.allErrors||r.if((0,Vm.not)(u),()=>r.break())})}}w_.validateAdditionalItems=R1e;w_.default=F3t});var vU=E(R_=>{"use strict";Object.defineProperty(R_,"__esModule",{value:!0});R_.validateTuple=void 0;var N1e=Et(),CO=Vt(),U3t=fi(),q3t={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return O1e(t,"additionalItems",e);r.items=!0,!(0,CO.alwaysValidSchema)(r,e)&&t.ok((0,U3t.validateArray)(t))}};function O1e(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=CO.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,N1e._)`${i}.length`);r.forEach((d,f)=>{(0,CO.alwaysValidSchema)(o,d)||(n.if((0,N1e._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,CO.checkStrictMode)(o,A,f.strictTuples)}}}R_.validateTuple=O1e;R_.default=q3t});var P1e=E(IU=>{"use strict";Object.defineProperty(IU,"__esModule",{value:!0});var j3t=vU(),H3t={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,j3t.validateTuple)(t,"items")};IU.default=H3t});var D1e=E(CU=>{"use strict";Object.defineProperty(CU,"__esModule",{value:!0});var k1e=Et(),Q3t=Vt(),G3t=fi(),K3t=SU(),V3t={message:({params:{len:t}})=>(0,k1e.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,k1e._)`{limit: ${t}}`},z3t={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:V3t,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,Q3t.alwaysValidSchema)(n,e)&&(s?(0,K3t.validateAdditionalItems)(t,s):t.ok((0,G3t.validateArray)(t)))}};CU.default=z3t});var B1e=E(TU=>{"use strict";Object.defineProperty(TU,"__esModule",{value:!0});var rc=Et(),TO=Vt(),Y3t={message:({params:{min:t,max:e}})=>e===void 0?(0,rc.str)`must contain at least ${t} valid item(s)`:(0,rc.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,rc._)`{minContains: ${t}}`:(0,rc._)`{minContains: ${t}, maxContains: ${e}}`},J3t={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Y3t,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,rc._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,TO.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,TO.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,TO.alwaysValidSchema)(i,r)){let h=(0,rc._)`${l} >= ${a}`;o!==void 0&&(h=(0,rc._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,rc._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:TO.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,rc._)`${h}++`),o===void 0?e.if((0,rc._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,rc._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,rc._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};TU.default=J3t});var W1e=E(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});Xu.validateSchemaDeps=Xu.validatePropertyDeps=Xu.error=void 0;var wU=Et(),X3t=Vt(),N_=fi();Xu.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,wU.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,wU._)`{property: ${t}, - missingProperty: ${n}, - depsCount: ${e}, - deps: ${r}}`};var Z3t={keyword:"dependencies",type:"object",schemaType:"object",error:Xu.error,code(t){let[e,r]=eBt(t);L1e(t,e),M1e(t,r)}};function eBt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function L1e(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,N_.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,N_.checkReportMissingProp)(t,u)}):(r.if((0,wU._)`${c} && (${(0,N_.checkMissingProp)(t,o,i)})`),(0,N_.reportMissingProp)(t,i),r.else())}}Xu.validatePropertyDeps=L1e;function M1e(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,X3t.alwaysValidSchema)(i,e[o])||(r.if((0,N_.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}Xu.validateSchemaDeps=M1e;Xu.default=Z3t});var F1e=E(RU=>{"use strict";Object.defineProperty(RU,"__esModule",{value:!0});var $1e=Et(),tBt=Vt(),rBt={message:"property name must be valid",params:({params:t})=>(0,$1e._)`{propertyName: ${t.propertyName}}`},nBt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:rBt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,tBt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,$1e.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};RU.default=nBt});var OU=E(NU=>{"use strict";Object.defineProperty(NU,"__esModule",{value:!0});var wO=fi(),zc=Et(),sBt=ec(),RO=Vt(),iBt={message:"must NOT have additional properties",params:({params:t})=>(0,zc._)`{additionalProperty: ${t.additionalProperty}}`},aBt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:iBt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,RO.alwaysValidSchema)(a,r))return;let u=(0,wO.allSchemaProperties)(n.properties),l=(0,wO.allSchemaProperties)(n.patternProperties);d(),t.ok((0,zc._)`${i} === ${sBt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,RO.schemaRefOrVal)(a,n.properties,"properties");g=(0,wO.isOwnProperty)(e,b,A)}else u.length?g=(0,zc.or)(...u.map(b=>(0,zc._)`${A} === ${b}`)):g=zc.nil;return l.length&&(g=(0,zc.or)(g,...l.map(b=>(0,zc._)`${(0,wO.usePattern)(t,b)}.test(${A})`))),(0,zc.not)(g)}function p(A){e.code((0,zc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,RO.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,zc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,zc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:RO.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};NU.default=aBt});var j1e=E(kU=>{"use strict";Object.defineProperty(kU,"__esModule",{value:!0});var oBt=Ay(),U1e=fi(),PU=Vt(),q1e=OU(),cBt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&q1e.default.code(new oBt.KeywordCxt(i,q1e.default,"additionalProperties"));let a=(0,U1e.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=PU.mergeEvaluated.props(e,(0,PU.toHash)(a),i.props));let o=a.filter(d=>!(0,PU.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,U1e.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};kU.default=cBt});var K1e=E(DU=>{"use strict";Object.defineProperty(DU,"__esModule",{value:!0});var H1e=fi(),NO=Et(),Q1e=Vt(),G1e=Vt(),uBt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,H1e.allSchemaProperties)(r),c=o.filter(h=>(0,Q1e.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof NO.Name)&&(i.props=(0,G1e.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,Q1e.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,NO._)`${(0,H1e.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:G1e.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,NO._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,NO.not)(l),()=>e.break())})})}}};DU.default=uBt});var V1e=E(BU=>{"use strict";Object.defineProperty(BU,"__esModule",{value:!0});var lBt=Vt(),dBt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,lBt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};BU.default=dBt});var z1e=E(LU=>{"use strict";Object.defineProperty(LU,"__esModule",{value:!0});var fBt=fi(),pBt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:fBt.validateUnion,error:{message:"must match a schema in anyOf"}};LU.default=pBt});var Y1e=E(MU=>{"use strict";Object.defineProperty(MU,"__esModule",{value:!0});var OO=Et(),mBt=Vt(),hBt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,OO._)`{passingSchemas: ${t.passing}}`},gBt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:hBt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,mBt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,OO._)`${c} && ${a}`).assign(a,!1).assign(o,(0,OO._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,OO.Name)})})}}};MU.default=gBt});var J1e=E(WU=>{"use strict";Object.defineProperty(WU,"__esModule",{value:!0});var ABt=Vt(),yBt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,ABt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};WU.default=yBt});var e_e=E($U=>{"use strict";Object.defineProperty($U,"__esModule",{value:!0});var PO=Et(),Z1e=Vt(),xBt={message:({params:t})=>(0,PO.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,PO._)`{failingKeyword: ${t.ifClause}}`},bBt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:xBt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Z1e.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=X1e(n,"then"),i=X1e(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,PO.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,PO._)`${l}`):t.setParams({ifClause:l})}}}};function X1e(t,e){let r=t.schema[e];return r!==void 0&&!(0,Z1e.alwaysValidSchema)(t,r)}$U.default=bBt});var t_e=E(FU=>{"use strict";Object.defineProperty(FU,"__esModule",{value:!0});var EBt=Vt(),_Bt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,EBt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};FU.default=_Bt});var r_e=E(UU=>{"use strict";Object.defineProperty(UU,"__esModule",{value:!0});var SBt=SU(),vBt=P1e(),IBt=vU(),CBt=D1e(),TBt=B1e(),wBt=W1e(),RBt=F1e(),NBt=OU(),OBt=j1e(),PBt=K1e(),kBt=V1e(),DBt=z1e(),BBt=Y1e(),LBt=J1e(),MBt=e_e(),WBt=t_e();function $Bt(t=!1){let e=[kBt.default,DBt.default,BBt.default,LBt.default,MBt.default,WBt.default,RBt.default,NBt.default,wBt.default,OBt.default,PBt.default];return t?e.push(vBt.default,CBt.default):e.push(SBt.default,IBt.default),e.push(TBt.default),e}UU.default=$Bt});var n_e=E(qU=>{"use strict";Object.defineProperty(qU,"__esModule",{value:!0});var ls=Et(),FBt={message:({schemaCode:t})=>(0,ls.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ls._)`{format: ${t}}`},UBt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:FBt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ls._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,ls._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,ls._)`${h}.type || "string"`).assign(g,(0,ls._)`${h}.validate`),()=>r.assign(A,(0,ls._)`"string"`).assign(g,h)),t.fail$data((0,ls.or)(b(),y()));function b(){return c.strictSchema===!1?ls.nil:(0,ls._)`${a} && !${g}`}function y(){let x=l.$async?(0,ls._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ls._)`${g}(${n})`,v=(0,ls._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,ls._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function y(v){let I=v instanceof RegExp?(0,ls.regexpCode)(v):c.code.formats?(0,ls._)`${c.code.formats}${(0,ls.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:I});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,ls._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ls._)`await ${g}(${n})`}return typeof A=="function"?(0,ls._)`${g}(${n})`:(0,ls._)`${g}.test(${n})`}}}};qU.default=UBt});var s_e=E(jU=>{"use strict";Object.defineProperty(jU,"__esModule",{value:!0});var qBt=n_e(),jBt=[qBt.default];jU.default=jBt});var i_e=E(Ey=>{"use strict";Object.defineProperty(Ey,"__esModule",{value:!0});Ey.contentVocabulary=Ey.metadataVocabulary=void 0;Ey.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ey.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var o_e=E(HU=>{"use strict";Object.defineProperty(HU,"__esModule",{value:!0});var HBt=m1e(),QBt=w1e(),GBt=r_e(),KBt=s_e(),a_e=i_e(),VBt=[HBt.default,QBt.default,(0,GBt.default)(),KBt.default,a_e.metadataVocabulary,a_e.contentVocabulary];HU.default=VBt});var QU=E(kO=>{"use strict";Object.defineProperty(kO,"__esModule",{value:!0});kO.DiscrError=void 0;var c_e;(function(t){t.Tag="tag",t.Mapping="mapping"})(c_e||(kO.DiscrError=c_e={}))});var l_e=E(KU=>{"use strict";Object.defineProperty(KU,"__esModule",{value:!0});var _y=Et(),GU=QU(),u_e=Qm(),zBt=bd(),YBt=Vt(),JBt={message:({params:{discrError:t,tagName:e}})=>t===GU.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,_y._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},XBt={keyword:"discriminator",type:"object",schemaType:"object",error:JBt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,_y._)`${r}${(0,_y.getProperty)(o)}`);e.if((0,_y._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:GU.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,_y._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:GU.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,_y.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x{ZBt.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var p_e=E((kn,VU)=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});kn.MissingRefError=kn.ValidationError=kn.CodeGen=kn.Name=kn.nil=kn.stringify=kn.str=kn._=kn.KeywordCxt=kn.Ajv=void 0;var eLt=nU(),tLt=o_e(),rLt=l_e(),f_e=d_e(),nLt=["/properties"],DO="http://json-schema.org/draft-07/schema",Sy=class extends eLt.default{_addVocabularies(){super._addVocabularies(),tLt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(rLt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(f_e,nLt):f_e;this.addMetaSchema(e,DO,!1),this.refs["http://json-schema.org/schema"]=DO}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(DO)?DO:void 0)}};kn.Ajv=Sy;VU.exports=kn=Sy;VU.exports.Ajv=Sy;Object.defineProperty(kn,"__esModule",{value:!0});kn.default=Sy;var sLt=Ay();Object.defineProperty(kn,"KeywordCxt",{enumerable:!0,get:function(){return sLt.KeywordCxt}});var vy=Et();Object.defineProperty(kn,"_",{enumerable:!0,get:function(){return vy._}});Object.defineProperty(kn,"str",{enumerable:!0,get:function(){return vy.str}});Object.defineProperty(kn,"stringify",{enumerable:!0,get:function(){return vy.stringify}});Object.defineProperty(kn,"nil",{enumerable:!0,get:function(){return vy.nil}});Object.defineProperty(kn,"Name",{enumerable:!0,get:function(){return vy.Name}});Object.defineProperty(kn,"CodeGen",{enumerable:!0,get:function(){return vy.CodeGen}});var iLt=A_();Object.defineProperty(kn,"ValidationError",{enumerable:!0,get:function(){return iLt.default}});var aLt=bd();Object.defineProperty(kn,"MissingRefError",{enumerable:!0,get:function(){return aLt.default}})});var _d=E(O_=>{"use strict";Object.defineProperty(O_,"__esModule",{value:!0});O_.checkMetadata=void 0;var oLt=Vt(),cLt={keyword:"metadata",schemaType:"object",code(t){m_e(t);let{gen:e,schema:r,it:n}=t;if((0,oLt.alwaysValidSchema)(n,r))return;let s=e.name("valid");t.subschema({keyword:"metadata",jtdMetadata:!0},s),t.ok(s)}};function m_e({it:t,keyword:e},r){if(t.jtdMetadata!==r)throw new Error(`JTD: "${e}" cannot be used in this schema location`)}O_.checkMetadata=m_e;O_.default=cLt});var BO=E(k_=>{"use strict";Object.defineProperty(k_,"__esModule",{value:!0});k_.hasRef=void 0;var h_e=Qm(),P_=Et(),uLt=bd(),g_e=ec(),A_e=iU(),lLt=_d(),dLt={keyword:"ref",schemaType:"string",code(t){(0,lLt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{schemaEnv:{root:a}}=i,o=e.name("valid");s.nullable?(e.var(o,(0,P_._)`${r} === null`),e.if((0,P_.not)(o),c)):(e.var(o,!1),c()),t.ok(o);function c(){var d;let f=(d=a.schema.definitions)===null||d===void 0?void 0:d[n];if(!f)throw new uLt.default(i.opts.uriResolver,"",n,`No definition ${n}`);zU(f)||!i.opts.inlineRefs?u(f):l(f)}function u(d){let f=h_e.compileSchema.call(i.self,new h_e.SchemaEnv({schema:d,root:a,schemaPath:`/definitions/${n}`})),p=(0,A_e.getValidate)(t,f),m=e.const("_errs",g_e.default.errors);(0,A_e.callRef)(t,p,f,f.$async),e.assign(o,(0,P_._)`${m} === ${g_e.default.errors}`)}function l(d){let f=e.scopeValue("schema",i.opts.code.source===!0?{ref:d,code:(0,P_.stringify)(d)}:{ref:d});t.subschema({schema:d,dataTypes:[],schemaPath:P_.nil,topSchemaRef:f,errSchemaPath:`/definitions/${n}`},o)}}};function zU(t){for(let e in t){let r;if(e==="ref"||typeof(r=t[e])=="object"&&zU(r))return!0}return!1}k_.hasRef=zU;k_.default=dLt});var JU=E(YU=>{"use strict";Object.defineProperty(YU,"__esModule",{value:!0});var fLt=/t|\s/i,pLt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,mLt=/^(\d\d):(\d\d):(\d\d)(?:\.\d+)?(?:z|([+-]\d\d)(?::?(\d\d))?)$/i,hLt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function x_e(t,e){let r=t.split(fLt);return r.length===2&&y_e(r[0])&&gLt(r[1])||e&&r.length===1&&y_e(r[0])}YU.default=x_e;function y_e(t){let e=pLt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&(s<=hLt[n]||n===2&&s===29&&(r%100===0?r%400===0:r%4===0))}function gLt(t){let e=mLt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3],i=+(e[4]||0),a=+(e[5]||0);return r<=23&&n<=59&&s<=59||r-i===23&&n-a===59&&s===60}x_e.code='require("ajv/dist/runtime/timestamp").default'});var Iy=E(Np=>{"use strict";Object.defineProperty(Np,"__esModule",{value:!0});Np.typeErrorParams=Np.typeErrorMessage=Np.typeError=void 0;var ALt=Et();function yLt(t){return{message:e=>b_e(e,t),params:e=>E_e(e,t)}}Np.typeError=yLt;function b_e({parentSchema:t},e){return t?.nullable?`must be ${e} or null`:`must be ${e}`}Np.typeErrorMessage=b_e;function E_e({parentSchema:t},e){return(0,ALt._)`{type: ${e}, nullable: ${!!t?.nullable}}`}Np.typeErrorParams=E_e});var XU=E(Cy=>{"use strict";Object.defineProperty(Cy,"__esModule",{value:!0});Cy.intRange=void 0;var Eo=Et(),xLt=JU(),bLt=Vt(),ELt=_d(),__e=Iy();Cy.intRange={int8:[-128,127,3],uint8:[0,255,3],int16:[-32768,32767,5],uint16:[0,65535,5],int32:[-2147483648,2147483647,10],uint32:[0,4294967295,10]};var _Lt={message:t=>(0,__e.typeErrorMessage)(t,t.schema),params:t=>(0,__e.typeErrorParams)(t,t.schema)};function SLt(t){let{gen:e,data:r,it:n}=t,{timestamp:s,allowDate:i}=n.opts;if(s==="date")return(0,Eo._)`${r} instanceof Date `;let a=(0,bLt.useFunc)(e,xLt.default),o=i?(0,Eo._)`, true`:Eo.nil,c=(0,Eo._)`typeof ${r} == "string" && ${a}(${r}${o})`;return s==="string"?c:(0,Eo.or)((0,Eo._)`${r} instanceof Date`,c)}var vLt={keyword:"type",schemaType:"string",error:_Lt,code(t){(0,ELt.checkMetadata)(t);let{data:e,schema:r,parentSchema:n,it:s}=t,i;switch(r){case"boolean":case"string":i=(0,Eo._)`typeof ${e} == ${r}`;break;case"timestamp":{i=SLt(t);break}case"float32":case"float64":i=(0,Eo._)`typeof ${e} == "number"`;break;default:{let a=r;if(i=(0,Eo._)`typeof ${e} == "number" && isFinite(${e}) && !(${e} % 1)`,!s.opts.int32range&&(a==="int32"||a==="uint32"))a==="uint32"&&(i=(0,Eo._)`${i} && ${e} >= 0`);else{let[o,c]=Cy.intRange[a];i=(0,Eo._)`${i} && ${e} >= ${o} && ${e} <= ${c}`}}}t.pass(n.nullable?(0,Eo.or)((0,Eo._)`${e} === null`,i):i)}};Cy.default=vLt});var wy=E(Ty=>{"use strict";Object.defineProperty(Ty,"__esModule",{value:!0});Ty.checkNullableObject=Ty.checkNullable=void 0;var LO=Et();function S_e({gen:t,data:e,parentSchema:r},n=LO.nil){let s=t.name("valid");return r.nullable?(t.let(s,(0,LO._)`${e} === null`),n=(0,LO.not)(s)):t.let(s,!1),[s,n]}Ty.checkNullable=S_e;function ILt(t,e){let[r,n]=S_e(t,e);return[r,(0,LO._)`${n} && typeof ${t.data} == "object" && !Array.isArray(${t.data})`]}Ty.checkNullableObject=ILt});var v_e=E(ZU=>{"use strict";Object.defineProperty(ZU,"__esModule",{value:!0});var Op=Et(),CLt=_d(),TLt=wy(),wLt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Op._)`{allowedValues: ${t}}`},RLt={keyword:"enum",schemaType:"array",error:wLt,code(t){(0,CLt.checkMetadata)(t);let{gen:e,data:r,schema:n,schemaValue:s,parentSchema:i,it:a}=t;if(n.length===0)throw new Error("enum must have non-empty array");if(n.length!==new Set(n).size)throw new Error("enum items must be unique");let o,c=(0,Op._)`typeof ${r} == "string"`;if(n.length>=a.opts.loopEnum){let l;[o,l]=(0,TLt.checkNullable)(t,c),e.if(l,u)}else{if(!Array.isArray(n))throw new Error("ajv implementation error");o=(0,Op.and)(c,(0,Op.or)(...n.map(l=>(0,Op._)`${r} === ${l}`))),i.nullable&&(o=(0,Op.or)((0,Op._)`${r} === null`,o))}t.pass(o);function u(){e.forOf("v",s,l=>e.if((0,Op._)`${o} = ${r} === ${l}`,()=>e.break()))}}};ZU.default=RLt});var C_e=E(e7=>{"use strict";Object.defineProperty(e7,"__esModule",{value:!0});var NLt=Vt(),OLt=fi(),I_e=Et(),PLt=_d(),kLt=wy(),DLt=Iy(),BLt={keyword:"elements",schemaType:"object",error:(0,DLt.typeError)("array"),code(t){(0,PLt.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t;if((0,NLt.alwaysValidSchema)(s,n))return;let[i]=(0,kLt.checkNullable)(t);e.if((0,I_e.not)(i),()=>e.if((0,I_e._)`Array.isArray(${r})`,()=>e.assign(i,(0,OLt.validateArray)(t)),()=>t.error())),t.ok(i)}};e7.default=BLt});var r7=E(Pp=>{"use strict";Object.defineProperty(Pp,"__esModule",{value:!0});Pp.validateProperties=Pp.error=void 0;var t7=fi(),T_e=Vt(),Sd=Et(),LLt=_d(),MLt=wy(),w_e=Iy(),Ry;(function(t){t.Additional="additional",t.Missing="missing"})(Ry||(Ry={}));Pp.error={message:t=>{let{params:e}=t;return e.propError?e.propError===Ry.Additional?"must NOT have additional properties":`must have property '${e.missingProperty}'`:(0,w_e.typeErrorMessage)(t,"object")},params:t=>{let{params:e}=t;return e.propError?e.propError===Ry.Additional?(0,Sd._)`{error: ${e.propError}, additionalProperty: ${e.additionalProperty}}`:(0,Sd._)`{error: ${e.propError}, missingProperty: ${e.missingProperty}}`:(0,w_e.typeErrorParams)(t,"object")}};var WLt={keyword:"properties",schemaType:"object",error:Pp.error,code:R_e};function R_e(t){(0,LLt.checkMetadata)(t);let{gen:e,data:r,parentSchema:n,it:s}=t,{additionalProperties:i,nullable:a}=n;if(s.jtdDiscriminator&&a)throw new Error("JTD: nullable inside discriminator mapping");if(p())throw new Error("JTD: properties and optionalProperties have common members");let[o,c]=m("properties"),[u,l]=m("optionalProperties");if(c.length===0&&l.length===0&&i)return;let[d,f]=s.jtdDiscriminator===void 0?(0,MLt.checkNullableObject)(t,r):[e.let("valid",!1),!0];e.if(f,()=>e.assign(d,!0).block(()=>{h(c,"properties",!0),h(l,"optionalProperties"),i||g()})),t.pass(d);function p(){let y=n.properties,x=n.optionalProperties;if(!(y&&x))return!1;for(let v in y)if(Object.prototype.hasOwnProperty.call(x,v))return!0;return!1}function m(y){let x=n[y],v=x?(0,t7.allSchemaProperties)(x):[];if(s.jtdDiscriminator&&v.some(R=>R===s.jtdDiscriminator))throw new Error(`JTD: discriminator tag used in ${y}`);let I=v.filter(R=>!(0,T_e.alwaysValidSchema)(s,x[R]));return[v,I]}function h(y,x,v){let I=e.var("valid");for(let w of y)e.if((0,t7.propertyInData)(e,r,w,s.opts.ownProperties),()=>A(w,x,I),()=>R(w)),t.ok(I);function R(w){v?(e.assign(I,!1),t.error(!1,{propError:Ry.Missing,missingProperty:w},{schemaPath:w})):e.assign(I,!0)}}function A(y,x,v){t.subschema({keyword:x,schemaProp:y,dataProp:y},v)}function g(){e.forIn("key",r,y=>{let x=b(y,o,"properties",s.jtdDiscriminator),v=b(y,u,"optionalProperties"),I=x===!0?v:v===!0?x:(0,Sd.and)(x,v);e.if(I,()=>{s.opts.removeAdditional?e.code((0,Sd._)`delete ${r}[${y}]`):(t.error(!1,{propError:Ry.Additional,additionalProperty:y},{instancePath:y,parentSchema:!0}),s.opts.allErrors||e.break())})})}function b(y,x,v,I){let R;if(x.length>8){let w=(0,T_e.schemaRefOrVal)(s,n[v],v);R=(0,Sd.not)((0,t7.isOwnProperty)(e,w,y)),I!==void 0&&(R=(0,Sd.and)(R,(0,Sd._)`${y} !== ${I}`))}else if(x.length||I!==void 0){let w=I===void 0?x:[I].concat(x);R=(0,Sd.and)(...w.map(N=>(0,Sd._)`${y} !== ${N}`))}else R=!0;return R}}Pp.validateProperties=R_e;Pp.default=WLt});var O_e=E(n7=>{"use strict";Object.defineProperty(n7,"__esModule",{value:!0});var N_e=r7(),$Lt={keyword:"optionalProperties",schemaType:"object",error:N_e.error,code(t){t.parentSchema.properties||(0,N_e.validateProperties)(t)}};n7.default=$Lt});var k_e=E(s7=>{"use strict";Object.defineProperty(s7,"__esModule",{value:!0});var zm=Et(),FLt=_d(),ULt=wy(),P_e=Iy(),MO=QU(),qLt={message:t=>{let{schema:e,params:r}=t;return r.discrError?r.discrError===MO.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in mapping`:(0,P_e.typeErrorMessage)(t,"object")},params:t=>{let{schema:e,params:r}=t;return r.discrError?(0,zm._)`{error: ${r.discrError}, tag: ${e}, tagValue: ${r.tag}}`:(0,P_e.typeErrorParams)(t,"object")}},jLt={keyword:"discriminator",schemaType:"string",implements:["mapping"],error:qLt,code(t){(0,FLt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s}=t,[i,a]=(0,ULt.checkNullableObject)(t,r);e.if(a),o(),e.elseIf((0,zm.not)(i)),t.error(),e.endIf(),t.ok(i);function o(){let l=e.const("tag",(0,zm._)`${r}${(0,zm.getProperty)(n)}`);e.if((0,zm._)`${l} === undefined`),t.error(!1,{discrError:MO.DiscrError.Tag,tag:l}),e.elseIf((0,zm._)`typeof ${l} == "string"`),c(l),e.else(),t.error(!1,{discrError:MO.DiscrError.Tag,tag:l},{instancePath:n}),e.endIf()}function c(l){e.if(!1);for(let d in s.mapping)e.elseIf((0,zm._)`${l} === ${d}`),e.assign(i,u(d));e.else(),t.error(!1,{discrError:MO.DiscrError.Mapping,tag:l},{instancePath:n,schemaPath:"mapping",parentSchema:!0}),e.endIf()}function u(l){let d=e.name("valid");return t.subschema({keyword:"mapping",schemaProp:l,jtdDiscriminator:n},d),d}}};s7.default=jLt});var B_e=E(i7=>{"use strict";Object.defineProperty(i7,"__esModule",{value:!0});var D_e=Vt(),WO=Et(),HLt=_d(),QLt=wy(),GLt=Iy(),KLt={keyword:"values",schemaType:"object",error:(0,GLt.typeError)("object"),code(t){(0,HLt.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t,[i,a]=(0,QLt.checkNullableObject)(t,r);(0,D_e.alwaysValidSchema)(s,n)?e.if((0,WO.not)((0,WO.or)(a,i)),()=>t.error()):(e.if(a),e.assign(i,o()),e.elseIf((0,WO.not)(i)),t.error(),e.endIf()),t.ok(i);function o(){let c=e.name("valid");if(s.allErrors){let l=e.let("valid",!0);return u(()=>e.assign(l,!1)),l}return e.var(c,!0),u(()=>e.break()),c;function u(l){e.forIn("key",r,d=>{t.subschema({keyword:"values",dataProp:d,dataPropType:D_e.Type.Str},c),e.if((0,WO.not)(c),l)})}}}};i7.default=KLt});var L_e=E(a7=>{"use strict";Object.defineProperty(a7,"__esModule",{value:!0});var VLt=fi(),zLt={keyword:"union",schemaType:"array",trackErrors:!0,code:VLt.validateUnion,error:{message:"must match a schema in union"}};a7.default=zLt});var M_e=E(o7=>{"use strict";Object.defineProperty(o7,"__esModule",{value:!0});var YLt=BO(),JLt=XU(),XLt=v_e(),ZLt=C_e(),e4t=r7(),t4t=O_e(),r4t=k_e(),n4t=B_e(),s4t=L_e(),i4t=_d(),a4t=["definitions",YLt.default,JLt.default,XLt.default,ZLt.default,e4t.default,t4t.default,r4t.default,n4t.default,s4t.default,i4t.default,{keyword:"additionalProperties",schemaType:"boolean"},{keyword:"nullable",schemaType:"boolean"}];o7.default=a4t});var U_e=E(c7=>{"use strict";Object.defineProperty(c7,"__esModule",{value:!0});var vd=t=>{let e={nullable:{type:"boolean"},metadata:{optionalProperties:{union:{elements:{ref:"schema"}}},additionalProperties:!0}};return t&&(e.definitions={values:{ref:"schema"}}),e},o4t=t=>({optionalProperties:vd(t)}),c4t=t=>({properties:{ref:{type:"string"}},optionalProperties:vd(t)}),u4t=t=>({properties:{type:{enum:["boolean","timestamp","string","float32","float64","int8","uint8","int16","uint16","int32","uint32"]}},optionalProperties:vd(t)}),l4t=t=>({properties:{enum:{elements:{type:"string"}}},optionalProperties:vd(t)}),d4t=t=>({properties:{elements:{ref:"schema"}},optionalProperties:vd(t)}),$_e=t=>({properties:{properties:{values:{ref:"schema"}}},optionalProperties:{optionalProperties:{values:{ref:"schema"}},additionalProperties:{type:"boolean"},...vd(t)}}),F_e=t=>({properties:{optionalProperties:{values:{ref:"schema"}}},optionalProperties:{additionalProperties:{type:"boolean"},...vd(t)}}),f4t=t=>({properties:{discriminator:{type:"string"},mapping:{values:{metadata:{union:[$_e(!1),F_e(!1)]}}}},optionalProperties:vd(t)}),p4t=t=>({properties:{values:{ref:"schema"}},optionalProperties:vd(t)}),W_e=t=>({metadata:{union:[o4t,c4t,u4t,l4t,d4t,$_e,F_e,f4t,p4t].map(e=>e(t))}}),m4t={definitions:{schema:W_e(!1)},...W_e(!0)};c7.default=m4t});var u7=E($O=>{"use strict";Object.defineProperty($O,"__esModule",{value:!0});$O.jtdForms=void 0;$O.jtdForms=["elements","values","discriminator","properties","optionalProperties","enum","type","ref"]});var j_e=E(d7=>{"use strict";Object.defineProperty(d7,"__esModule",{value:!0});var l7=/[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,h4t={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function q_e(t){return l7.lastIndex=0,'"'+(l7.test(t)?t.replace(l7,e=>{let r=h4t[e];return typeof r=="string"?r:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}):t)+'"'}d7.default=q_e;q_e.code='require("ajv/dist/runtime/quote").default'});var z_e=E(p7=>{"use strict";Object.defineProperty(p7,"__esModule",{value:!0});var g4t=u7(),Q_e=Qm(),dr=Et(),A4t=bd(),En=ec(),y4t=fi(),x4t=BO(),b4t=Vt(),E4t=j_e(),_4t={elements:v4t,values:I4t,discriminator:C4t,properties:H_e,optionalProperties:H_e,enum:D_,type:T4t,ref:R4t};function G_e(t,e){let r=Q_e.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new dr.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("serialize"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:En.default.data},u;try{this._compilations.add(t),t.serializeName=o,a.func(o,En.default.data,!1,()=>{a.let(En.default.json,(0,dr.str)``),B_(c),a.return(En.default.json)}),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(En.default.scope)}return ${l}`;let f=new Function(`${En.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.serialize=f}catch(l){throw u&&this.logger.error("Error compiling serializer, function code:",u),delete t.serialize,delete t.serializeName,l}finally{this._compilations.delete(t)}return t}p7.default=G_e;function B_(t){let e;for(let r of g4t.jtdForms)if(r in t.schema){e=r;break}S4t(t,e?_4t[e]:O4t)}function S4t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);r.if((0,dr._)`${s} === undefined || ${s} === null`,()=>r.add(En.default.json,(0,dr._)`"null"`),()=>e(t))}function v4t(t){let{gen:e,schema:r,data:n}=t;e.add(En.default.json,(0,dr.str)`[`);let s=e.let("first",!0);e.forOf("el",n,i=>{f7(t,s),B_({...t,schema:r.elements,data:i})}),e.add(En.default.json,(0,dr.str)`]`)}function I4t(t){let{gen:e,schema:r,data:n}=t;e.add(En.default.json,(0,dr.str)`{`);let s=e.let("first",!0);e.forIn("key",n,i=>K_e(t,i,r.values,s)),e.add(En.default.json,(0,dr.str)`}`)}function K_e(t,e,r,n){let{gen:s,data:i}=t;f7(t,n),D_({...t,data:e}),s.add(En.default.json,(0,dr.str)`:`);let a=s.const("value",(0,dr._)`${i}${(0,dr.getProperty)(e)}`);B_({...t,schema:r,data:a})}function C4t(t){let{gen:e,schema:r,data:n}=t,{discriminator:s}=r;e.add(En.default.json,(0,dr.str)`{${JSON.stringify(s)}:`);let i=e.const("tag",(0,dr._)`${n}${(0,dr.getProperty)(s)}`);D_({...t,data:i}),e.if(!1);for(let a in r.mapping){e.elseIf((0,dr._)`${i} === ${a}`);let o=r.mapping[a];V_e({...t,schema:o},s)}e.endIf(),e.add(En.default.json,(0,dr.str)`}`)}function H_e(t){let{gen:e}=t;e.add(En.default.json,(0,dr.str)`{`),V_e(t),e.add(En.default.json,(0,dr.str)`}`)}function V_e(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a}=n,o=f(i),c=f(a),u=p(o.concat(c)),l=!e,d;for(let g of o)l?l=!1:r.add(En.default.json,(0,dr.str)`,`),h(g,i[g],m(g));l&&(d=r.let("first",!0));for(let g of c){let b=m(g);r.if((0,dr.and)((0,dr._)`${b} !== undefined`,(0,y4t.isOwnProperty)(r,s,g)),()=>{f7(t,d),h(g,a[g],b)})}n.additionalProperties&&r.forIn("key",s,g=>r.if(A(g,u),()=>K_e(t,g,{},d)));function f(g){return g?Object.keys(g):[]}function p(g){if(e&&g.push(e),new Set(g).size!==g.length)throw new Error("JTD: properties/optionalProperties/disciminator overlap");return g}function m(g){return r.const("value",(0,dr._)`${s}${(0,dr.getProperty)(g)}`)}function h(g,b,y){r.add(En.default.json,(0,dr.str)`${JSON.stringify(g)}:`),B_({...t,schema:b,data:y})}function A(g,b){return b.length?(0,dr.and)(...b.map(y=>(0,dr._)`${g} !== ${y}`)):!0}}function T4t(t){let{gen:e,schema:r,data:n}=t;switch(r.type){case"boolean":e.add(En.default.json,(0,dr._)`${n} ? "true" : "false"`);break;case"string":D_(t);break;case"timestamp":e.if((0,dr._)`${n} instanceof Date`,()=>e.add(En.default.json,(0,dr._)`'"' + ${n}.toISOString() + '"'`),()=>D_(t));break;default:w4t(t)}}function D_({gen:t,data:e}){t.add(En.default.json,(0,dr._)`${(0,b4t.useFunc)(t,E4t.default)}(${e})`)}function w4t({gen:t,data:e}){t.add(En.default.json,(0,dr._)`"" + ${e}`)}function R4t(t){let{gen:e,self:r,data:n,definitions:s,schema:i,schemaEnv:a}=t,{ref:o}=i,c=s[o];if(!c)throw new A4t.default(r.opts.uriResolver,"",o,`No definition ${o}`);if(!(0,x4t.hasRef)(c))return B_({...t,schema:c});let{root:u}=a,l=G_e.call(r,new Q_e.SchemaEnv({schema:c,root:u}),s);e.add(En.default.json,(0,dr._)`${N4t(e,l)}(${n})`)}function N4t(t,e){return e.serialize?t.scopeValue("serialize",{ref:e.serialize}):(0,dr._)`${t.scopeValue("wrapper",{ref:e})}.serialize`}function O4t({gen:t,data:e}){t.add(En.default.json,(0,dr._)`JSON.stringify(${e})`)}function f7({gen:t},e){e?t.if(e,()=>t.assign(e,!1),()=>t.add(En.default.json,(0,dr.str)`,`)):t.add(En.default.json,(0,dr.str)`,`)}});var J_e=E(Dp=>{"use strict";Object.defineProperty(Dp,"__esModule",{value:!0});Dp.parseJsonString=Dp.parseJsonNumber=Dp.parseJson=void 0;var P4t=/position\s(\d+)(?: \(line \d+ column \d+\))?$/;function Id(t,e){let r;Id.message=void 0;let n;e&&(t=t.slice(e));try{return Id.position=e+t.length,JSON.parse(t)}catch(s){if(n=P4t.exec(s.message),!n){Id.message="unexpected end";return}r=+n[1];let i=t[r];t=t.slice(0,r),Id.position=e+r;try{return JSON.parse(t)}catch{Id.message=`unexpected token ${i}`;return}}}Dp.parseJson=Id;Id.message=void 0;Id.position=0;Id.code='require("ajv/dist/runtime/parseJson").parseJson';function Cd(t,e,r){let n="",s;if(Cd.message=void 0,t[e]==="-"&&(n+="-",e++),t[e]==="0")n+="0",e++;else if(!i(r)){a();return}if(r)return Cd.position=e,+n;if(t[e]==="."&&(n+=".",e++,!i())){a();return}if(s=t[e],(s==="e"||s==="E")&&(n+="e",e++,s=t[e],(s==="+"||s==="-")&&(n+=s,e++),!i())){a();return}return Cd.position=e,+n;function i(o){let c=!1;for(;s=t[e],s>="0"&&s<="9"&&(o===void 0||o-- >0);)c=!0,n+=s,e++;return c}function a(){Cd.position=e,Cd.message=e="a"&&n<="f")a+=n.charCodeAt(0)-k4t+10;else if(n>="0"&&n<="9")a+=n.charCodeAt(0)-D4t;else{s(`unexpected token ${n}`);return}e++}r+=String.fromCharCode(a)}else{s(`unexpected token ${n}`);return}else if(n===void 0){s("unexpected end");return}else if(n.charCodeAt(0)>=32)r+=n;else{s(`unexpected token ${n}`);return}return kp.position=e,r;function s(i){kp.position=e,kp.message=i}}Dp.parseJsonString=kp;kp.message=void 0;kp.position=0;kp.code='require("ajv/dist/runtime/parseJson").parseJsonString'});var cSe=E(E7=>{"use strict";Object.defineProperty(E7,"__esModule",{value:!0});var B4t=u7(),tSe=Qm(),ut=Et(),L4t=bd(),or=ec(),M4t=fi(),W4t=BO(),$4t=XU(),g7=J_e(),rSe=Vt(),F4t=JU(),U4t={elements:Q4t,values:G4t,discriminator:V4t,properties:X_e,optionalProperties:X_e,enum:Y4t,type:z4t,ref:J4t};function nSe(t,e){let r=tSe.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new ut.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("parse"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:or.default.data,parseName:o,char:a.name("c")},u;try{this._compilations.add(t),t.parseName=o,q4t(c),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(or.default.scope)}return ${l}`;let f=new Function(`${or.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.parse=f}catch(l){throw u&&this.logger.error("Error compiling parser, function code:",u),delete t.parse,delete t.parseName,l}finally{this._compilations.delete(t)}return t}E7.default=nSe;var h7=(0,ut._)`undefined`;function q4t(t){let{gen:e,parseName:r,char:n}=t;e.func(r,(0,ut._)`${or.default.json}, ${or.default.jsonPos}, ${or.default.jsonPart}`,!1,()=>{e.let(or.default.data),e.let(n),e.assign((0,ut._)`${r}.message`,h7),e.assign((0,ut._)`${r}.position`,h7),e.assign(or.default.jsonPos,(0,ut._)`${or.default.jsonPos} || 0`),e.const(or.default.jsonLen,(0,ut._)`${or.default.json}.length`),FO(t),b7(t),e.if(or.default.jsonPart,()=>{e.assign((0,ut._)`${r}.position`,or.default.jsonPos),e.return(or.default.data)}),e.if((0,ut._)`${or.default.jsonPos} === ${or.default.jsonLen}`,()=>e.return(or.default.data)),Ny(t)})}function FO(t){let e;for(let r of B4t.jtdForms)if(r in t.schema){e=r;break}e?H4t(t,U4t[e]):y7(t)}var j4t=eSe(!0,eSe(!1,Ny));function H4t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);L_(t,"null",e,()=>r.assign(s,null))}function Q4t(t){let{gen:e,schema:r,data:n}=t;Zu(t,"[");let s=e.let("i",0);e.assign(n,(0,ut._)`[]`),A7(t,"]",()=>{let i=e.let("el");FO({...t,schema:r.elements,data:i}),e.assign((0,ut._)`${n}[${s}++]`,i)})}function G4t(t){let{gen:e,schema:r,data:n}=t;Zu(t,"{"),e.assign(n,(0,ut._)`{}`),A7(t,"}",()=>K4t(t,r.values))}function A7(t,e,r){sSe(t,e,r),Zu(t,e)}function sSe(t,e,r){let{gen:n}=t;n.for((0,ut._)`;${or.default.jsonPos}<${or.default.jsonLen} && ${UO(1)}!==${e};`,()=>{r(),L_(t,",",()=>n.break(),s)});function s(){L_(t,e,()=>{},Ny)}}function K4t(t,e){let{gen:r}=t,n=r.let("key");Ym({...t,data:n}),Zu(t,":"),aSe(t,n,e)}function V4t(t){let{gen:e,data:r,schema:n}=t,{discriminator:s,mapping:i}=n;Zu(t,"{"),e.assign(r,(0,ut._)`{}`);let a=e.const("pos",or.default.jsonPos),o=e.let("value"),c=e.let("tag");sSe(t,"}",()=>{let u=e.let("key");Ym({...t,data:u}),Zu(t,":"),e.if((0,ut._)`${u} === ${s}`,()=>{Ym({...t,data:c}),e.assign((0,ut._)`${r}[${u}]`,c),e.break()},()=>y7({...t,data:o}))}),e.assign(or.default.jsonPos,a),e.if((0,ut._)`${c} === undefined`),Td(t,(0,ut.str)`discriminator tag not found`);for(let u in i)e.elseIf((0,ut._)`${c} === ${u}`),iSe({...t,schema:i[u]},s);e.else(),Td(t,(0,ut.str)`discriminator value not in schema`),e.endIf()}function X_e(t){let{gen:e,data:r}=t;Zu(t,"{"),e.assign(r,(0,ut._)`{}`),iSe(t)}function iSe(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a,additionalProperties:o}=n;if(A7(t,"}",()=>{let c=r.let("key");if(Ym({...t,data:c}),Zu(t,":"),r.if(!1),Z_e(t,c,i),Z_e(t,c,a),e){r.elseIf((0,ut._)`${c} === ${e}`);let u=r.let("tag");Ym({...t,data:u})}r.else(),o?y7({...t,data:(0,ut._)`${s}[${c}]`}):Td(t,(0,ut.str)`property ${c} not allowed`),r.endIf()}),i){let c=(0,M4t.hasPropFunc)(r),u=(0,ut.and)(...Object.keys(i).map(l=>(0,ut._)`${c}.call(${s}, ${l})`));r.if((0,ut.not)(u),()=>Td(t,(0,ut.str)`missing required properties`))}}function Z_e(t,e,r={}){let{gen:n}=t;for(let s in r)n.elseIf((0,ut._)`${e} === ${s}`),aSe(t,e,r[s])}function aSe(t,e,r){FO({...t,schema:r,data:(0,ut._)`${t.data}[${e}]`})}function z4t(t){let{gen:e,schema:r,data:n,self:s}=t;switch(r.type){case"boolean":j4t(t);break;case"string":Ym(t);break;case"timestamp":{Ym(t);let i=(0,rSe.useFunc)(e,F4t.default),{allowDate:a,parseDate:o}=s.opts,c=a?(0,ut._)`!${i}(${n}, true)`:(0,ut._)`!${i}(${n})`,u=o?(0,ut.or)(c,(0,ut._)`(${n} = new Date(${n}), false)`,(0,ut._)`isNaN(${n}.valueOf())`):c;e.if(u,()=>Td(t,(0,ut.str)`invalid timestamp`));break}case"float32":case"float64":m7(t);break;default:{let i=r.type;if(!s.opts.int32range&&(i==="int32"||i==="uint32"))m7(t,16),i==="uint32"&&e.if((0,ut._)`${n} < 0`,()=>Td(t,(0,ut.str)`integer out of range`));else{let[a,o,c]=$4t.intRange[i];m7(t,c),e.if((0,ut._)`${n} < ${a} || ${n} > ${o}`,()=>Td(t,(0,ut.str)`integer out of range`))}}}}function Ym(t){Zu(t,'"'),x7(t,g7.parseJsonString)}function Y4t(t){let{gen:e,data:r,schema:n}=t,s=n.enum;Zu(t,'"'),e.if(!1);for(let i of s){let a=JSON.stringify(i).slice(1);e.elseIf((0,ut._)`${UO(a.length)} === ${a}`),e.assign(r,(0,ut.str)`${i}`),e.add(or.default.jsonPos,a.length)}e.else(),Ny(t),e.endIf()}function m7(t,e){let{gen:r}=t;b7(t),r.if((0,ut._)`"-0123456789".indexOf(${UO(1)}) < 0`,()=>Ny(t),()=>x7(t,g7.parseJsonNumber,e))}function eSe(t,e){return r=>{let{gen:n,data:s}=r;L_(r,`${t}`,()=>e(r),()=>n.assign(s,t))}}function J4t(t){let{gen:e,self:r,definitions:n,schema:s,schemaEnv:i}=t,{ref:a}=s,o=n[a];if(!o)throw new L4t.default(r.opts.uriResolver,"",a,`No definition ${a}`);if(!(0,W4t.hasRef)(o))return FO({...t,schema:o});let{root:c}=i,u=nSe.call(r,new tSe.SchemaEnv({schema:o,root:c}),n);oSe(t,X4t(e,u),!0)}function X4t(t,e){return e.parse?t.scopeValue("parse",{ref:e.parse}):(0,ut._)`${t.scopeValue("wrapper",{ref:e})}.parse`}function y7(t){x7(t,g7.parseJson)}function x7(t,e,r){oSe(t,(0,rSe.useFunc)(t.gen,e),r)}function oSe(t,e,r){let{gen:n,data:s}=t;n.assign(s,(0,ut._)`${e}(${or.default.json}, ${or.default.jsonPos}${r?(0,ut._)`, ${r}`:ut.nil})`),n.assign(or.default.jsonPos,(0,ut._)`${e}.position`),n.if((0,ut._)`${s} === undefined`,()=>Td(t,(0,ut._)`${e}.message`))}function Zu(t,e){L_(t,e,Ny)}function L_(t,e,r,n){let{gen:s}=t,i=e.length;b7(t),s.if((0,ut._)`${UO(i)} === ${e}`,()=>{s.add(or.default.jsonPos,i),n?.(t)},()=>r(t))}function b7({gen:t,char:e}){t.code((0,ut._)`while((${e}=${or.default.json}[${or.default.jsonPos}],${e}===" "||${e}==="\\n"||${e}==="\\r"||${e}==="\\t"))${or.default.jsonPos}++;`)}function UO(t){return t===1?(0,ut._)`${or.default.json}[${or.default.jsonPos}]`:(0,ut._)`${or.default.json}.slice(${or.default.jsonPos}, ${or.default.jsonPos}+${t})`}function Ny(t){Td(t,(0,ut._)`"unexpected token " + ${or.default.json}[${or.default.jsonPos}]`)}function Td({gen:t,parseName:e},r){t.assign((0,ut._)`${e}.message`,r),t.assign((0,ut._)`${e}.position`,or.default.jsonPos),t.return(h7)}});var v7=E((Dn,S7)=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.MissingRefError=Dn.ValidationError=Dn.CodeGen=Dn.Name=Dn.nil=Dn.stringify=Dn.str=Dn._=Dn.KeywordCxt=Dn.Ajv=void 0;var Z4t=nU(),eMt=M_e(),tMt=U_e(),rMt=z_e(),nMt=cSe(),_7="JTD-meta-schema",Oy=class extends Z4t.default{constructor(e={}){super({...e,jtd:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(eMt.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema(),this.opts.meta&&this.addMetaSchema(tMt.default,_7,!1)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(_7)?_7:void 0)}compileSerializer(e){let r=this._addSchema(e);return r.serialize||this._compileSerializer(r)}compileParser(e){let r=this._addSchema(e);return r.parse||this._compileParser(r)}_compileSerializer(e){if(rMt.default.call(this,e,e.schema.definitions||{}),!e.serialize)throw new Error("ajv implementation error");return e.serialize}_compileParser(e){if(nMt.default.call(this,e,e.schema.definitions||{}),!e.parse)throw new Error("ajv implementation error");return e.parse}};Dn.Ajv=Oy;S7.exports=Dn=Oy;S7.exports.Ajv=Oy;Object.defineProperty(Dn,"__esModule",{value:!0});Dn.default=Oy;var sMt=Ay();Object.defineProperty(Dn,"KeywordCxt",{enumerable:!0,get:function(){return sMt.KeywordCxt}});var Py=Et();Object.defineProperty(Dn,"_",{enumerable:!0,get:function(){return Py._}});Object.defineProperty(Dn,"str",{enumerable:!0,get:function(){return Py.str}});Object.defineProperty(Dn,"stringify",{enumerable:!0,get:function(){return Py.stringify}});Object.defineProperty(Dn,"nil",{enumerable:!0,get:function(){return Py.nil}});Object.defineProperty(Dn,"Name",{enumerable:!0,get:function(){return Py.Name}});Object.defineProperty(Dn,"CodeGen",{enumerable:!0,get:function(){return Py.CodeGen}});var iMt=A_();Object.defineProperty(Dn,"ValidationError",{enumerable:!0,get:function(){return iMt.default}});var aMt=bd();Object.defineProperty(Dn,"MissingRefError",{enumerable:!0,get:function(){return aMt.default}})});var I7=E((kBr,uSe)=>{"use strict";var oMt=HW();uSe.exports=Object.freeze({coerceTypes:"array",useDefaults:!0,removeAdditional:!0,uriResolver:oMt,addUsedSchema:!1,allErrors:!1})});var hSe=E(el=>{"use strict";Object.defineProperty(el,"__esModule",{value:!0});el.formatNames=el.fastFormats=el.fullFormats=void 0;function ky(t,e){return{validate:t,compare:e}}el.fullFormats={date:ky(fSe,w7),time:ky(pSe,R7),"date-time":ky(dMt,mSe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:mMt,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:EMt,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:hMt,int32:{type:"number",validate:yMt},int64:{type:"number",validate:xMt},float:{type:"number",validate:dSe},double:{type:"number",validate:dSe},password:!0,binary:!0};el.fastFormats={...el.fullFormats,date:ky(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,w7),time:ky(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,R7),"date-time":ky(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,mSe),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};el.formatNames=Object.keys(el.fullFormats);function cMt(t){return t%4===0&&(t%100!==0||t%400===0)}var uMt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,lMt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function fSe(t){let e=uMt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&cMt(r)?29:lMt[n])}function w7(t,e){if(t&&e)return t>e?1:te?1:t=gMt}function xMt(t){return Number.isInteger(t)}function dSe(){return!0}var bMt=/[^\\]\\Z/;function EMt(t){if(bMt.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var $_=E(Lr=>{"use strict";Object.defineProperty(Lr,"__esModule",{value:!0});Lr.regexpCode=Lr.getEsmExportName=Lr.getProperty=Lr.safeStringify=Lr.stringify=Lr.strConcat=Lr.addCodeArg=Lr.str=Lr._=Lr.nil=Lr._Code=Lr.Name=Lr.IDENTIFIER=Lr._CodeOrName=void 0;var M_=class{};Lr._CodeOrName=M_;Lr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Jm=class extends M_{constructor(e){if(super(),!Lr.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Lr.Name=Jm;var nc=class extends M_{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Jm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Lr._Code=nc;Lr.nil=new nc("");function gSe(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(Ua,"__esModule",{value:!0});Ua.ValueScope=Ua.ValueScopeName=Ua.Scope=Ua.varKinds=Ua.UsedValueState=void 0;var Fa=$_(),P7=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},qO;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(qO||(Ua.UsedValueState=qO={}));Ua.varKinds={const:new Fa.Name("const"),let:new Fa.Name("let"),var:new Fa.Name("var")};var jO=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Fa.Name?e:this.name(e)}name(e){return new Fa.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ua.Scope=jO;var HO=class extends Fa.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Fa._)`.${new Fa.Name(r)}[${n}]`}};Ua.ValueScopeName=HO;var NMt=(0,Fa._)`\n`,k7=class extends jO{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?NMt:Fa.nil}}get(){return this._scope}name(e){return new HO(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Fa._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Fa.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,qO.Started);let l=r(u);if(l){let d=this.opts.es5?Ua.varKinds.var:Ua.varKinds.const;i=(0,Fa._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Fa._)`${i}${l}${this.opts._n}`;else throw new P7(u);c.set(u,qO.Completed)})}return i}};Ua.ValueScope=k7});var zt=E(Zt=>{"use strict";Object.defineProperty(Zt,"__esModule",{value:!0});Zt.or=Zt.and=Zt.not=Zt.CodeGen=Zt.operators=Zt.varKinds=Zt.ValueScopeName=Zt.ValueScope=Zt.Scope=Zt.Name=Zt.regexpCode=Zt.stringify=Zt.getProperty=Zt.nil=Zt.strConcat=Zt.str=Zt._=void 0;var yr=$_(),Yc=D7(),Bp=$_();Object.defineProperty(Zt,"_",{enumerable:!0,get:function(){return Bp._}});Object.defineProperty(Zt,"str",{enumerable:!0,get:function(){return Bp.str}});Object.defineProperty(Zt,"strConcat",{enumerable:!0,get:function(){return Bp.strConcat}});Object.defineProperty(Zt,"nil",{enumerable:!0,get:function(){return Bp.nil}});Object.defineProperty(Zt,"getProperty",{enumerable:!0,get:function(){return Bp.getProperty}});Object.defineProperty(Zt,"stringify",{enumerable:!0,get:function(){return Bp.stringify}});Object.defineProperty(Zt,"regexpCode",{enumerable:!0,get:function(){return Bp.regexpCode}});Object.defineProperty(Zt,"Name",{enumerable:!0,get:function(){return Bp.Name}});var VO=D7();Object.defineProperty(Zt,"Scope",{enumerable:!0,get:function(){return VO.Scope}});Object.defineProperty(Zt,"ValueScope",{enumerable:!0,get:function(){return VO.ValueScope}});Object.defineProperty(Zt,"ValueScopeName",{enumerable:!0,get:function(){return VO.ValueScopeName}});Object.defineProperty(Zt,"varKinds",{enumerable:!0,get:function(){return VO.varKinds}});Zt.operators={GT:new yr._Code(">"),GTE:new yr._Code(">="),LT:new yr._Code("<"),LTE:new yr._Code("<="),EQ:new yr._Code("==="),NEQ:new yr._Code("!=="),NOT:new yr._Code("!"),OR:new yr._Code("||"),AND:new yr._Code("&&"),ADD:new yr._Code("+")};var wd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},B7=class extends wd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Yc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=By(this.rhs,e,r)),this}get names(){return this.rhs instanceof yr._CodeOrName?this.rhs.names:{}}},QO=class extends wd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof yr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=By(this.rhs,e,r),this}get names(){let e=this.lhs instanceof yr.Name?{}:{...this.lhs.names};return KO(e,this.rhs)}},L7=class extends QO{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},M7=class extends wd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},W7=class extends wd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},$7=class extends wd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},F7=class extends wd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=By(this.code,e,r),this}get names(){return this.code instanceof yr._CodeOrName?this.code.names:{}}},F_=class extends wd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(OMt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>eh(e,r.names),{})}},Rd=class extends F_{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},U7=class extends F_{},Dy=class extends Rd{};Dy.kind="else";var Xm=class t extends Rd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Dy(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(ySe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=By(this.condition,e,r),this}get names(){let e=super.names;return KO(e,this.condition),this.else&&eh(e,this.else.names),e}};Xm.kind="if";var Zm=class extends Rd{};Zm.kind="for";var q7=class extends Zm{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=By(this.iteration,e,r),this}get names(){return eh(super.names,this.iteration.names)}},j7=class extends Zm{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Yc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=KO(super.names,this.from);return KO(e,this.to)}},GO=class extends Zm{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=By(this.iterable,e,r),this}get names(){return eh(super.names,this.iterable.names)}},U_=class extends Rd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};U_.kind="func";var q_=class extends F_{render(e){return"return "+super.render(e)}};q_.kind="return";var H7=class extends Rd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&eh(e,this.catch.names),this.finally&&eh(e,this.finally.names),e}},j_=class extends Rd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};j_.kind="catch";var H_=class extends Rd{render(e){return"finally"+super.render(e)}};H_.kind="finally";var Q7=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` -`:""},this._extScope=e,this._scope=new Yc.Scope({parent:e}),this._nodes=[new U7]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new B7(e,i,n)),i}const(e,r,n){return this._def(Yc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Yc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Yc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new QO(e,r,n))}add(e,r){return this._leafNode(new L7(e,Zt.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==yr.nil&&this._leafNode(new F7(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,yr.addCodeArg)(r,s));return r.push("}"),new yr._Code(r)}if(e,r,n){if(this._blockNode(new Xm(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Xm(e))}else(){return this._elseNode(new Dy)}endIf(){return this._endBlockNode(Xm,Dy)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new q7(e),r)}forRange(e,r,n,s,i=this.opts.es5?Yc.varKinds.var:Yc.varKinds.let){let a=this._scope.toName(e);return this._for(new j7(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Yc.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof yr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,yr._)`${a}.length`,o=>{this.var(i,(0,yr._)`${a}[${o}]`),n(i)})}return this._for(new GO("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Yc.varKinds.var:Yc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,yr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new GO("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Zm)}label(e){return this._leafNode(new M7(e))}break(e){return this._leafNode(new W7(e))}return(e){let r=new q_;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(q_)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new H7;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new j_(i),r(i)}return n&&(this._currNode=s.finally=new H_,this.code(n)),this._endBlockNode(j_,H_)}throw(e){return this._leafNode(new $7(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=yr.nil,n,s){return this._blockNode(new U_(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(U_)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Xm))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Zt.CodeGen=Q7;function eh(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function KO(t,e){return e instanceof yr._CodeOrName?eh(t,e.names):t}function By(t,e,r){if(t instanceof yr.Name)return n(t);if(!s(t))return t;return new yr._Code(t._items.reduce((i,a)=>(a instanceof yr.Name&&(a=n(a)),a instanceof yr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof yr._Code&&i._items.some(a=>a instanceof yr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function OMt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function ySe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,yr._)`!${G7(t)}`}Zt.not=ySe;var PMt=xSe(Zt.operators.AND);function kMt(...t){return t.reduce(PMt)}Zt.and=kMt;var DMt=xSe(Zt.operators.OR);function BMt(...t){return t.reduce(DMt)}Zt.or=BMt;function xSe(t){return(e,r)=>e===yr.nil?r:r===yr.nil?e:(0,yr._)`${G7(e)} ${t} ${G7(r)}`}function G7(t){return t instanceof yr.Name?t:(0,yr._)`(${t})`}});var Mr=E(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.checkStrictMode=nr.getErrorPath=nr.Type=nr.useFunc=nr.setEvaluated=nr.evaluatedPropsToName=nr.mergeEvaluated=nr.eachItem=nr.unescapeJsonPointer=nr.escapeJsonPointer=nr.escapeFragment=nr.unescapeFragment=nr.schemaRefOrVal=nr.schemaHasRulesButRef=nr.schemaHasRules=nr.checkUnknownRules=nr.alwaysValidSchema=nr.toHash=void 0;var pn=zt(),LMt=$_();function MMt(t){let e={};for(let r of t)e[r]=!0;return e}nr.toHash=MMt;function WMt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(_Se(t,e),!SSe(e,t.self.RULES.all))}nr.alwaysValidSchema=WMt;function _Se(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||CSe(t,`unknown keyword: "${i}"`)}nr.checkUnknownRules=_Se;function SSe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}nr.schemaHasRules=SSe;function $Mt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}nr.schemaHasRulesButRef=$Mt;function FMt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,pn._)`${r}`}return(0,pn._)`${t}${e}${(0,pn.getProperty)(n)}`}nr.schemaRefOrVal=FMt;function UMt(t){return vSe(decodeURIComponent(t))}nr.unescapeFragment=UMt;function qMt(t){return encodeURIComponent(V7(t))}nr.escapeFragment=qMt;function V7(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}nr.escapeJsonPointer=V7;function vSe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}nr.unescapeJsonPointer=vSe;function jMt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}nr.eachItem=jMt;function bSe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof pn.Name?(i instanceof pn.Name?t(s,i,a):e(s,i,a),a):i instanceof pn.Name?(e(s,a,i),i):r(i,a);return o===pn.Name&&!(c instanceof pn.Name)?n(s,c):c}}nr.mergeEvaluated={props:bSe({mergeNames:(t,e,r)=>t.if((0,pn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,pn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,pn._)`${r} || {}`).code((0,pn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,pn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,pn._)`${r} || {}`),z7(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:ISe}),items:bSe({mergeNames:(t,e,r)=>t.if((0,pn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,pn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,pn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,pn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function ISe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,pn._)`{}`);return e!==void 0&&z7(t,r,e),r}nr.evaluatedPropsToName=ISe;function z7(t,e,r){Object.keys(r).forEach(n=>t.assign((0,pn._)`${e}${(0,pn.getProperty)(n)}`,!0))}nr.setEvaluated=z7;var ESe={};function HMt(t,e){return t.scopeValue("func",{ref:e,code:ESe[e.code]||(ESe[e.code]=new LMt._Code(e.code))})}nr.useFunc=HMt;var K7;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(K7||(nr.Type=K7={}));function QMt(t,e,r){if(t instanceof pn.Name){let n=e===K7.Num;return r?n?(0,pn._)`"[" + ${t} + "]"`:(0,pn._)`"['" + ${t} + "']"`:n?(0,pn._)`"/" + ${t}`:(0,pn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,pn.getProperty)(t).toString():"/"+V7(t)}nr.getErrorPath=QMt;function CSe(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}nr.checkStrictMode=CSe});var Nd=E(Y7=>{"use strict";Object.defineProperty(Y7,"__esModule",{value:!0});var Li=zt(),GMt={data:new Li.Name("data"),valCxt:new Li.Name("valCxt"),instancePath:new Li.Name("instancePath"),parentData:new Li.Name("parentData"),parentDataProperty:new Li.Name("parentDataProperty"),rootData:new Li.Name("rootData"),dynamicAnchors:new Li.Name("dynamicAnchors"),vErrors:new Li.Name("vErrors"),errors:new Li.Name("errors"),this:new Li.Name("this"),self:new Li.Name("self"),scope:new Li.Name("scope"),json:new Li.Name("json"),jsonPos:new Li.Name("jsonPos"),jsonLen:new Li.Name("jsonLen"),jsonPart:new Li.Name("jsonPart")};Y7.default=GMt});var Q_=E(Mi=>{"use strict";Object.defineProperty(Mi,"__esModule",{value:!0});Mi.extendErrors=Mi.resetErrorsCount=Mi.reportExtraError=Mi.reportError=Mi.keyword$DataError=Mi.keywordError=void 0;var Ir=zt(),zO=Mr(),oa=Nd();Mi.keywordError={message:({keyword:t})=>(0,Ir.str)`must pass "${t}" keyword validation`};Mi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Ir.str)`"${t}" keyword must be ${e} ($data)`:(0,Ir.str)`"${t}" keyword is invalid ($data)`};function KMt(t,e=Mi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=RSe(t,e,r);n??(a||o)?TSe(i,c):wSe(s,(0,Ir._)`[${c}]`)}Mi.reportError=KMt;function VMt(t,e=Mi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=RSe(t,e,r);TSe(s,o),i||a||wSe(n,oa.default.vErrors)}Mi.reportExtraError=VMt;function zMt(t,e){t.assign(oa.default.errors,e),t.if((0,Ir._)`${oa.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Ir._)`${oa.default.vErrors}.length`,e),()=>t.assign(oa.default.vErrors,null)))}Mi.resetErrorsCount=zMt;function YMt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,oa.default.errors,o=>{t.const(a,(0,Ir._)`${oa.default.vErrors}[${o}]`),t.if((0,Ir._)`${a}.instancePath === undefined`,()=>t.assign((0,Ir._)`${a}.instancePath`,(0,Ir.strConcat)(oa.default.instancePath,i.errorPath))),t.assign((0,Ir._)`${a}.schemaPath`,(0,Ir.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Ir._)`${a}.schema`,r),t.assign((0,Ir._)`${a}.data`,n))})}Mi.extendErrors=YMt;function TSe(t,e){let r=t.const("err",e);t.if((0,Ir._)`${oa.default.vErrors} === null`,()=>t.assign(oa.default.vErrors,(0,Ir._)`[${r}]`),(0,Ir._)`${oa.default.vErrors}.push(${r})`),t.code((0,Ir._)`${oa.default.errors}++`)}function wSe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Ir._)`new ${t.ValidationError}(${e})`):(r.assign((0,Ir._)`${n}.errors`,e),r.return(!1))}var th={keyword:new Ir.Name("keyword"),schemaPath:new Ir.Name("schemaPath"),params:new Ir.Name("params"),propertyName:new Ir.Name("propertyName"),message:new Ir.Name("message"),schema:new Ir.Name("schema"),parentSchema:new Ir.Name("parentSchema")};function RSe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Ir._)`{}`:JMt(t,e,r)}function JMt(t,e,r={}){let{gen:n,it:s}=t,i=[XMt(s,r),ZMt(t,r)];return e6t(t,e,i),n.object(...i)}function XMt({errorPath:t},{instancePath:e}){let r=e?(0,Ir.str)`${t}${(0,zO.getErrorPath)(e,zO.Type.Str)}`:t;return[oa.default.instancePath,(0,Ir.strConcat)(oa.default.instancePath,r)]}function ZMt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Ir.str)`${e}/${t}`;return r&&(s=(0,Ir.str)`${s}${(0,zO.getErrorPath)(r,zO.Type.Str)}`),[th.schemaPath,s]}function e6t(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([th.keyword,s],[th.params,typeof e=="function"?e(t):e||(0,Ir._)`{}`]),c.messages&&n.push([th.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([th.schema,a],[th.parentSchema,(0,Ir._)`${l}${d}`],[oa.default.data,i]),u&&n.push([th.propertyName,u])}});var OSe=E(Ly=>{"use strict";Object.defineProperty(Ly,"__esModule",{value:!0});Ly.boolOrEmptySchema=Ly.topBoolOrEmptySchema=void 0;var t6t=Q_(),r6t=zt(),n6t=Nd(),s6t={message:"boolean schema is false"};function i6t(t){let{gen:e,schema:r,validateName:n}=t;r===!1?NSe(t,!1):typeof r=="object"&&r.$async===!0?e.return(n6t.default.data):(e.assign((0,r6t._)`${n}.errors`,null),e.return(!0))}Ly.topBoolOrEmptySchema=i6t;function a6t(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),NSe(t)):r.var(e,!0)}Ly.boolOrEmptySchema=a6t;function NSe(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,t6t.reportError)(s,s6t,void 0,e)}});var J7=E(My=>{"use strict";Object.defineProperty(My,"__esModule",{value:!0});My.getRules=My.isJSONType=void 0;var o6t=["string","number","integer","boolean","null","object","array"],c6t=new Set(o6t);function u6t(t){return typeof t=="string"&&c6t.has(t)}My.isJSONType=u6t;function l6t(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}My.getRules=l6t});var X7=E(Lp=>{"use strict";Object.defineProperty(Lp,"__esModule",{value:!0});Lp.shouldUseRule=Lp.shouldUseGroup=Lp.schemaHasRulesForType=void 0;function d6t({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&PSe(t,n)}Lp.schemaHasRulesForType=d6t;function PSe(t,e){return e.rules.some(r=>kSe(t,r))}Lp.shouldUseGroup=PSe;function kSe(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Lp.shouldUseRule=kSe});var G_=E(Wi=>{"use strict";Object.defineProperty(Wi,"__esModule",{value:!0});Wi.reportTypeError=Wi.checkDataTypes=Wi.checkDataType=Wi.coerceAndCheckDataType=Wi.getJSONTypes=Wi.getSchemaTypes=Wi.DataType=void 0;var f6t=J7(),p6t=X7(),m6t=Q_(),Ht=zt(),DSe=Mr(),Wy;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Wy||(Wi.DataType=Wy={}));function h6t(t){let e=BSe(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Wi.getSchemaTypes=h6t;function BSe(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(f6t.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Wi.getJSONTypes=BSe;function g6t(t,e){let{gen:r,data:n,opts:s}=t,i=A6t(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,p6t.schemaHasRulesForType)(t,e[0]));if(a){let o=eq(e,n,s.strictNumbers,Wy.Wrong);r.if(o,()=>{i.length?y6t(t,e,i):tq(t)})}return a}Wi.coerceAndCheckDataType=g6t;var LSe=new Set(["string","number","integer","boolean","null"]);function A6t(t,e){return e?t.filter(r=>LSe.has(r)||e==="array"&&r==="array"):[]}function y6t(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Ht._)`typeof ${s}`),o=n.let("coerced",(0,Ht._)`undefined`);i.coerceTypes==="array"&&n.if((0,Ht._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Ht._)`${s}[0]`).assign(a,(0,Ht._)`typeof ${s}`).if(eq(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Ht._)`${o} !== undefined`);for(let u of r)(LSe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),tq(t),n.endIf(),n.if((0,Ht._)`${o} !== undefined`,()=>{n.assign(s,o),x6t(t,o)});function c(u){switch(u){case"string":n.elseIf((0,Ht._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Ht._)`"" + ${s}`).elseIf((0,Ht._)`${s} === null`).assign(o,(0,Ht._)`""`);return;case"number":n.elseIf((0,Ht._)`${a} == "boolean" || ${s} === null + `),s}cy.exports=oF;cy.exports.default=oF;cy.exports.build=oF;cy.exports.validLargeArrayMechanisms=Fbe;cy.exports.restore=function({code:t,validator:e,serializer:r}){return Function.apply(null,["validator","serializer",t]).apply(null,[e,r])}});var Vbe=E((ikr,cF)=>{"use strict";var LOt=uF();function Gbe(t={readMode:!0}){if(t.readMode===!0&&typeof t.restoreFunction!="function")throw new Error("You must provide a function for the restoreFunction-option when readMode ON");if(t.readMode!==!0&&typeof t.storeFunction!="function")throw new Error("You must provide a function for the storeFunction-option when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=LOt();return function(n,s={}){s.mode="standalone";let i=e(n,s);return function(a){let o=i(a);return t.storeFunction(a,o),new Function(o)}}}cF.exports=Gbe;cF.exports.default=Gbe});var uF=E((akr,i_)=>{"use strict";var BOt=Qbe();function lF(){return function(e,r){let n=Object.assign({},r,{schema:e});return MOt.bind(null,n)}}function MOt(t,{schema:e}){return t.schema&&e.$id&&t.schema[e.$id]&&(t.schema={...t.schema},delete t.schema[e.$id]),BOt(e,t)}i_.exports=lF;i_.exports.default=lF;i_.exports.SerializerSelector=lF;i_.exports.StandaloneSerializer=Vbe()});var uy=E(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.regexpCode=Br.getEsmExportName=Br.getProperty=Br.safeStringify=Br.stringify=Br.strConcat=Br.addCodeArg=Br.str=Br._=Br.nil=Br._Code=Br.Name=Br.IDENTIFIER=Br._CodeOrName=void 0;var a_=class{};Br._CodeOrName=a_;Br.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Wm=class extends a_{constructor(e){if(super(),!Br.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Br.Name=Wm;var Xo=class extends a_{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Wm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Br._Code=Xo;Br.nil=new Xo("");function zbe(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(Ma,"__esModule",{value:!0});Ma.ValueScope=Ma.ValueScopeName=Ma.Scope=Ma.varKinds=Ma.UsedValueState=void 0;var Ba=uy(),pF=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},nO;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(nO||(Ma.UsedValueState=nO={}));Ma.varKinds={const:new Ba.Name("const"),let:new Ba.Name("let"),var:new Ba.Name("var")};var sO=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ba.Name?e:this.name(e)}name(e){return new Ba.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ma.Scope=sO;var iO=class extends Ba.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ba._)`.${new Ba.Name(r)}[${n}]`}};Ma.ValueScopeName=iO;var GOt=(0,Ba._)`\n`,mF=class extends sO{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?GOt:Ba.nil}}get(){return this._scope}name(e){return new iO(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ba._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Ba.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,nO.Started);let l=r(u);if(l){let d=this.opts.es5?Ma.varKinds.var:Ma.varKinds.const;i=(0,Ba._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Ba._)`${i}${l}${this.opts._n}`;else throw new pF(u);c.set(u,nO.Completed)})}return i}};Ma.ValueScope=mF});var Et=E(Zt=>{"use strict";Object.defineProperty(Zt,"__esModule",{value:!0});Zt.or=Zt.and=Zt.not=Zt.CodeGen=Zt.operators=Zt.varKinds=Zt.ValueScopeName=Zt.ValueScope=Zt.Scope=Zt.Name=Zt.regexpCode=Zt.stringify=Zt.getProperty=Zt.nil=Zt.strConcat=Zt.str=Zt._=void 0;var yr=uy(),Qc=aO(),vp=uy();Object.defineProperty(Zt,"_",{enumerable:!0,get:function(){return vp._}});Object.defineProperty(Zt,"str",{enumerable:!0,get:function(){return vp.str}});Object.defineProperty(Zt,"strConcat",{enumerable:!0,get:function(){return vp.strConcat}});Object.defineProperty(Zt,"nil",{enumerable:!0,get:function(){return vp.nil}});Object.defineProperty(Zt,"getProperty",{enumerable:!0,get:function(){return vp.getProperty}});Object.defineProperty(Zt,"stringify",{enumerable:!0,get:function(){return vp.stringify}});Object.defineProperty(Zt,"regexpCode",{enumerable:!0,get:function(){return vp.regexpCode}});Object.defineProperty(Zt,"Name",{enumerable:!0,get:function(){return vp.Name}});var lO=aO();Object.defineProperty(Zt,"Scope",{enumerable:!0,get:function(){return lO.Scope}});Object.defineProperty(Zt,"ValueScope",{enumerable:!0,get:function(){return lO.ValueScope}});Object.defineProperty(Zt,"ValueScopeName",{enumerable:!0,get:function(){return lO.ValueScopeName}});Object.defineProperty(Zt,"varKinds",{enumerable:!0,get:function(){return lO.varKinds}});Zt.operators={GT:new yr._Code(">"),GTE:new yr._Code(">="),LT:new yr._Code("<"),LTE:new yr._Code("<="),EQ:new yr._Code("==="),NEQ:new yr._Code("!=="),NOT:new yr._Code("!"),OR:new yr._Code("||"),AND:new yr._Code("&&"),ADD:new yr._Code("+")};var yd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},hF=class extends yd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Qc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=dy(this.rhs,e,r)),this}get names(){return this.rhs instanceof yr._CodeOrName?this.rhs.names:{}}},oO=class extends yd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof yr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=dy(this.rhs,e,r),this}get names(){let e=this.lhs instanceof yr.Name?{}:{...this.lhs.names};return uO(e,this.rhs)}},gF=class extends oO{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},AF=class extends yd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},yF=class extends yd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},xF=class extends yd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},bF=class extends yd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=dy(this.code,e,r),this}get names(){return this.code instanceof yr._CodeOrName?this.code.names:{}}},c_=class extends yd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(VOt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Um(e,r.names),{})}},xd=class extends c_{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},EF=class extends c_{},ly=class extends xd{};ly.kind="else";var $m=class t extends xd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new ly(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Ybe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=dy(this.condition,e,r),this}get names(){let e=super.names;return uO(e,this.condition),this.else&&Um(e,this.else.names),e}};$m.kind="if";var Fm=class extends xd{};Fm.kind="for";var _F=class extends Fm{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=dy(this.iteration,e,r),this}get names(){return Um(super.names,this.iteration.names)}},SF=class extends Fm{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Qc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=uO(super.names,this.from);return uO(e,this.to)}},cO=class extends Fm{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=dy(this.iterable,e,r),this}get names(){return Um(super.names,this.iterable.names)}},u_=class extends xd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};u_.kind="func";var l_=class extends c_{render(e){return"return "+super.render(e)}};l_.kind="return";var vF=class extends xd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Um(e,this.catch.names),this.finally&&Um(e,this.finally.names),e}},d_=class extends xd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};d_.kind="catch";var f_=class extends xd{render(e){return"finally"+super.render(e)}};f_.kind="finally";var CF=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=e,this._scope=new Qc.Scope({parent:e}),this._nodes=[new EF]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new hF(e,i,n)),i}const(e,r,n){return this._def(Qc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Qc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Qc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new oO(e,r,n))}add(e,r){return this._leafNode(new gF(e,Zt.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==yr.nil&&this._leafNode(new bF(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,yr.addCodeArg)(r,s));return r.push("}"),new yr._Code(r)}if(e,r,n){if(this._blockNode(new $m(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new $m(e))}else(){return this._elseNode(new ly)}endIf(){return this._endBlockNode($m,ly)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new _F(e),r)}forRange(e,r,n,s,i=this.opts.es5?Qc.varKinds.var:Qc.varKinds.let){let a=this._scope.toName(e);return this._for(new SF(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Qc.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof yr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,yr._)`${a}.length`,o=>{this.var(i,(0,yr._)`${a}[${o}]`),n(i)})}return this._for(new cO("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Qc.varKinds.var:Qc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,yr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new cO("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Fm)}label(e){return this._leafNode(new AF(e))}break(e){return this._leafNode(new yF(e))}return(e){let r=new l_;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(l_)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new vF;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new d_(i),r(i)}return n&&(this._currNode=s.finally=new f_,this.code(n)),this._endBlockNode(d_,f_)}throw(e){return this._leafNode(new xF(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=yr.nil,n,s){return this._blockNode(new u_(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(u_)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof $m))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};Zt.CodeGen=CF;function Um(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function uO(t,e){return e instanceof yr._CodeOrName?Um(t,e.names):t}function dy(t,e,r){if(t instanceof yr.Name)return n(t);if(!s(t))return t;return new yr._Code(t._items.reduce((i,a)=>(a instanceof yr.Name&&(a=n(a)),a instanceof yr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof yr._Code&&i._items.some(a=>a instanceof yr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function VOt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Ybe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,yr._)`!${IF(t)}`}Zt.not=Ybe;var zOt=Jbe(Zt.operators.AND);function KOt(...t){return t.reduce(zOt)}Zt.and=KOt;var YOt=Jbe(Zt.operators.OR);function JOt(...t){return t.reduce(YOt)}Zt.or=JOt;function Jbe(t){return(e,r)=>e===yr.nil?r:r===yr.nil?e:(0,yr._)`${IF(e)} ${t} ${IF(r)}`}function IF(t){return t instanceof yr.Name?t:(0,yr._)`(${t})`}});var Kt=E(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.checkStrictMode=nr.getErrorPath=nr.Type=nr.useFunc=nr.setEvaluated=nr.evaluatedPropsToName=nr.mergeEvaluated=nr.eachItem=nr.unescapeJsonPointer=nr.escapeJsonPointer=nr.escapeFragment=nr.unescapeFragment=nr.schemaRefOrVal=nr.schemaHasRulesButRef=nr.schemaHasRules=nr.checkUnknownRules=nr.alwaysValidSchema=nr.toHash=void 0;var fn=Et(),XOt=uy();function ZOt(t){let e={};for(let r of t)e[r]=!0;return e}nr.toHash=ZOt;function ePt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(eEe(t,e),!tEe(e,t.self.RULES.all))}nr.alwaysValidSchema=ePt;function eEe(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||sEe(t,`unknown keyword: "${i}"`)}nr.checkUnknownRules=eEe;function tEe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}nr.schemaHasRules=tEe;function tPt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}nr.schemaHasRulesButRef=tPt;function rPt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,fn._)`${r}`}return(0,fn._)`${t}${e}${(0,fn.getProperty)(n)}`}nr.schemaRefOrVal=rPt;function nPt(t){return rEe(decodeURIComponent(t))}nr.unescapeFragment=nPt;function sPt(t){return encodeURIComponent(wF(t))}nr.escapeFragment=sPt;function wF(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}nr.escapeJsonPointer=wF;function rEe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}nr.unescapeJsonPointer=rEe;function iPt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}nr.eachItem=iPt;function Xbe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof fn.Name?(i instanceof fn.Name?t(s,i,a):e(s,i,a),a):i instanceof fn.Name?(e(s,a,i),i):r(i,a);return o===fn.Name&&!(c instanceof fn.Name)?n(s,c):c}}nr.mergeEvaluated={props:Xbe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,fn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,fn._)`${r} || {}`).code((0,fn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,fn._)`${r} || {}`),RF(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:nEe}),items:Xbe({mergeNames:(t,e,r)=>t.if((0,fn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,fn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,fn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,fn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function nEe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,fn._)`{}`);return e!==void 0&&RF(t,r,e),r}nr.evaluatedPropsToName=nEe;function RF(t,e,r){Object.keys(r).forEach(n=>t.assign((0,fn._)`${e}${(0,fn.getProperty)(n)}`,!0))}nr.setEvaluated=RF;var Zbe={};function aPt(t,e){return t.scopeValue("func",{ref:e,code:Zbe[e.code]||(Zbe[e.code]=new XOt._Code(e.code))})}nr.useFunc=aPt;var TF;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(TF||(nr.Type=TF={}));function oPt(t,e,r){if(t instanceof fn.Name){let n=e===TF.Num;return r?n?(0,fn._)`"[" + ${t} + "]"`:(0,fn._)`"['" + ${t} + "']"`:n?(0,fn._)`"/" + ${t}`:(0,fn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,fn.getProperty)(t).toString():"/"+wF(t)}nr.getErrorPath=oPt;function sEe(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}nr.checkStrictMode=sEe});var Zo=E(NF=>{"use strict";Object.defineProperty(NF,"__esModule",{value:!0});var Pi=Et(),cPt={data:new Pi.Name("data"),valCxt:new Pi.Name("valCxt"),instancePath:new Pi.Name("instancePath"),parentData:new Pi.Name("parentData"),parentDataProperty:new Pi.Name("parentDataProperty"),rootData:new Pi.Name("rootData"),dynamicAnchors:new Pi.Name("dynamicAnchors"),vErrors:new Pi.Name("vErrors"),errors:new Pi.Name("errors"),this:new Pi.Name("this"),self:new Pi.Name("self"),scope:new Pi.Name("scope"),json:new Pi.Name("json"),jsonPos:new Pi.Name("jsonPos"),jsonLen:new Pi.Name("jsonLen"),jsonPart:new Pi.Name("jsonPart")};NF.default=cPt});var p_=E(Di=>{"use strict";Object.defineProperty(Di,"__esModule",{value:!0});Di.extendErrors=Di.resetErrorsCount=Di.reportExtraError=Di.reportError=Di.keyword$DataError=Di.keywordError=void 0;var Cr=Et(),dO=Kt(),ia=Zo();Di.keywordError={message:({keyword:t})=>(0,Cr.str)`must pass "${t}" keyword validation`};Di.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Cr.str)`"${t}" keyword must be ${e} ($data)`:(0,Cr.str)`"${t}" keyword is invalid ($data)`};function uPt(t,e=Di.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=oEe(t,e,r);n??(a||o)?iEe(i,c):aEe(s,(0,Cr._)`[${c}]`)}Di.reportError=uPt;function lPt(t,e=Di.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=oEe(t,e,r);iEe(s,o),i||a||aEe(n,ia.default.vErrors)}Di.reportExtraError=lPt;function dPt(t,e){t.assign(ia.default.errors,e),t.if((0,Cr._)`${ia.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Cr._)`${ia.default.vErrors}.length`,e),()=>t.assign(ia.default.vErrors,null)))}Di.resetErrorsCount=dPt;function fPt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,ia.default.errors,o=>{t.const(a,(0,Cr._)`${ia.default.vErrors}[${o}]`),t.if((0,Cr._)`${a}.instancePath === undefined`,()=>t.assign((0,Cr._)`${a}.instancePath`,(0,Cr.strConcat)(ia.default.instancePath,i.errorPath))),t.assign((0,Cr._)`${a}.schemaPath`,(0,Cr.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Cr._)`${a}.schema`,r),t.assign((0,Cr._)`${a}.data`,n))})}Di.extendErrors=fPt;function iEe(t,e){let r=t.const("err",e);t.if((0,Cr._)`${ia.default.vErrors} === null`,()=>t.assign(ia.default.vErrors,(0,Cr._)`[${r}]`),(0,Cr._)`${ia.default.vErrors}.push(${r})`),t.code((0,Cr._)`${ia.default.errors}++`)}function aEe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Cr._)`new ${t.ValidationError}(${e})`):(r.assign((0,Cr._)`${n}.errors`,e),r.return(!1))}var qm={keyword:new Cr.Name("keyword"),schemaPath:new Cr.Name("schemaPath"),params:new Cr.Name("params"),propertyName:new Cr.Name("propertyName"),message:new Cr.Name("message"),schema:new Cr.Name("schema"),parentSchema:new Cr.Name("parentSchema")};function oEe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Cr._)`{}`:pPt(t,e,r)}function pPt(t,e,r={}){let{gen:n,it:s}=t,i=[mPt(s,r),hPt(t,r)];return gPt(t,e,i),n.object(...i)}function mPt({errorPath:t},{instancePath:e}){let r=e?(0,Cr.str)`${t}${(0,dO.getErrorPath)(e,dO.Type.Str)}`:t;return[ia.default.instancePath,(0,Cr.strConcat)(ia.default.instancePath,r)]}function hPt({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Cr.str)`${e}/${t}`;return r&&(s=(0,Cr.str)`${s}${(0,dO.getErrorPath)(r,dO.Type.Str)}`),[qm.schemaPath,s]}function gPt(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([qm.keyword,s],[qm.params,typeof e=="function"?e(t):e||(0,Cr._)`{}`]),c.messages&&n.push([qm.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([qm.schema,a],[qm.parentSchema,(0,Cr._)`${l}${d}`],[ia.default.data,i]),u&&n.push([qm.propertyName,u])}});var uEe=E(fy=>{"use strict";Object.defineProperty(fy,"__esModule",{value:!0});fy.boolOrEmptySchema=fy.topBoolOrEmptySchema=void 0;var APt=p_(),yPt=Et(),xPt=Zo(),bPt={message:"boolean schema is false"};function EPt(t){let{gen:e,schema:r,validateName:n}=t;r===!1?cEe(t,!1):typeof r=="object"&&r.$async===!0?e.return(xPt.default.data):(e.assign((0,yPt._)`${n}.errors`,null),e.return(!0))}fy.topBoolOrEmptySchema=EPt;function _Pt(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),cEe(t)):r.var(e,!0)}fy.boolOrEmptySchema=_Pt;function cEe(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,APt.reportError)(s,bPt,void 0,e)}});var OF=E(py=>{"use strict";Object.defineProperty(py,"__esModule",{value:!0});py.getRules=py.isJSONType=void 0;var SPt=["string","number","integer","boolean","null","object","array"],vPt=new Set(SPt);function CPt(t){return typeof t=="string"&&vPt.has(t)}py.isJSONType=CPt;function IPt(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}py.getRules=IPt});var PF=E(Cp=>{"use strict";Object.defineProperty(Cp,"__esModule",{value:!0});Cp.shouldUseRule=Cp.shouldUseGroup=Cp.schemaHasRulesForType=void 0;function TPt({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&lEe(t,n)}Cp.schemaHasRulesForType=TPt;function lEe(t,e){return e.rules.some(r=>dEe(t,r))}Cp.shouldUseGroup=lEe;function dEe(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Cp.shouldUseRule=dEe});var m_=E(ki=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});ki.reportTypeError=ki.checkDataTypes=ki.checkDataType=ki.coerceAndCheckDataType=ki.getJSONTypes=ki.getSchemaTypes=ki.DataType=void 0;var wPt=OF(),RPt=PF(),NPt=p_(),Ht=Et(),fEe=Kt(),my;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(my||(ki.DataType=my={}));function OPt(t){let e=pEe(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}ki.getSchemaTypes=OPt;function pEe(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(wPt.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}ki.getJSONTypes=pEe;function PPt(t,e){let{gen:r,data:n,opts:s}=t,i=DPt(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,RPt.schemaHasRulesForType)(t,e[0]));if(a){let o=kF(e,n,s.strictNumbers,my.Wrong);r.if(o,()=>{i.length?kPt(t,e,i):LF(t)})}return a}ki.coerceAndCheckDataType=PPt;var mEe=new Set(["string","number","integer","boolean","null"]);function DPt(t,e){return e?t.filter(r=>mEe.has(r)||e==="array"&&r==="array"):[]}function kPt(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Ht._)`typeof ${s}`),o=n.let("coerced",(0,Ht._)`undefined`);i.coerceTypes==="array"&&n.if((0,Ht._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Ht._)`${s}[0]`).assign(a,(0,Ht._)`typeof ${s}`).if(kF(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Ht._)`${o} !== undefined`);for(let u of r)(mEe.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),LF(t),n.endIf(),n.if((0,Ht._)`${o} !== undefined`,()=>{n.assign(s,o),LPt(t,o)});function c(u){switch(u){case"string":n.elseIf((0,Ht._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Ht._)`"" + ${s}`).elseIf((0,Ht._)`${s} === null`).assign(o,(0,Ht._)`""`);return;case"number":n.elseIf((0,Ht._)`${a} == "boolean" || ${s} === null || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Ht._)`+${s}`);return;case"integer":n.elseIf((0,Ht._)`${a} === "boolean" || ${s} === null || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Ht._)`+${s}`);return;case"boolean":n.elseIf((0,Ht._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Ht._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Ht._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Ht._)`${a} === "string" || ${a} === "number" - || ${a} === "boolean" || ${s} === null`).assign(o,(0,Ht._)`[${s}]`)}}}function x6t({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Ht._)`${e} !== undefined`,()=>t.assign((0,Ht._)`${e}[${r}]`,n))}function Z7(t,e,r,n=Wy.Correct){let s=n===Wy.Correct?Ht.operators.EQ:Ht.operators.NEQ,i;switch(t){case"null":return(0,Ht._)`${e} ${s} null`;case"array":i=(0,Ht._)`Array.isArray(${e})`;break;case"object":i=(0,Ht._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Ht._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Ht._)`typeof ${e} ${s} ${t}`}return n===Wy.Correct?i:(0,Ht.not)(i);function a(o=Ht.nil){return(0,Ht.and)((0,Ht._)`typeof ${e} == "number"`,o,r?(0,Ht._)`isFinite(${e})`:Ht.nil)}}Wi.checkDataType=Z7;function eq(t,e,r,n){if(t.length===1)return Z7(t[0],e,r,n);let s,i=(0,DSe.toHash)(t);if(i.array&&i.object){let a=(0,Ht._)`typeof ${e} != "object"`;s=i.null?a:(0,Ht._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Ht.nil;i.number&&delete i.integer;for(let a in i)s=(0,Ht.and)(s,Z7(a,e,r,n));return s}Wi.checkDataTypes=eq;var b6t={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Ht._)`{type: ${t}}`:(0,Ht._)`{type: ${e}}`};function tq(t){let e=E6t(t);(0,m6t.reportError)(e,b6t)}Wi.reportTypeError=tq;function E6t(t){let{gen:e,data:r,schema:n}=t,s=(0,DSe.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var WSe=E(YO=>{"use strict";Object.defineProperty(YO,"__esModule",{value:!0});YO.assignDefaults=void 0;var $y=zt(),_6t=Mr();function S6t(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)MSe(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>MSe(t,i,s.default))}YO.assignDefaults=S6t;function MSe(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,$y._)`${i}${(0,$y.getProperty)(e)}`;if(s){(0,_6t.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,$y._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,$y._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,$y._)`${o} = ${(0,$y.stringify)(r)}`)}});var sc=E(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.validateUnion=tn.validateArray=tn.usePattern=tn.callValidateCode=tn.schemaProperties=tn.allSchemaProperties=tn.noPropertyInData=tn.propertyInData=tn.isOwnProperty=tn.hasPropFunc=tn.reportMissingProp=tn.checkMissingProp=tn.checkReportMissingProp=void 0;var Bn=zt(),rq=Mr(),Mp=Nd(),v6t=Mr();function I6t(t,e){let{gen:r,data:n,it:s}=t;r.if(sq(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Bn._)`${e}`},!0),t.error()})}tn.checkReportMissingProp=I6t;function C6t({gen:t,data:e,it:{opts:r}},n,s){return(0,Bn.or)(...n.map(i=>(0,Bn.and)(sq(t,e,i,r.ownProperties),(0,Bn._)`${s} = ${i}`)))}tn.checkMissingProp=C6t;function T6t(t,e){t.setParams({missingProperty:e},!0),t.error()}tn.reportMissingProp=T6t;function $Se(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Bn._)`Object.prototype.hasOwnProperty`})}tn.hasPropFunc=$Se;function nq(t,e,r){return(0,Bn._)`${$Se(t)}.call(${e}, ${r})`}tn.isOwnProperty=nq;function w6t(t,e,r,n){let s=(0,Bn._)`${e}${(0,Bn.getProperty)(r)} !== undefined`;return n?(0,Bn._)`${s} && ${nq(t,e,r)}`:s}tn.propertyInData=w6t;function sq(t,e,r,n){let s=(0,Bn._)`${e}${(0,Bn.getProperty)(r)} === undefined`;return n?(0,Bn.or)(s,(0,Bn.not)(nq(t,e,r))):s}tn.noPropertyInData=sq;function FSe(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}tn.allSchemaProperties=FSe;function R6t(t,e){return FSe(e).filter(r=>!(0,rq.alwaysValidSchema)(t,e[r]))}tn.schemaProperties=R6t;function N6t({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Bn._)`${t}, ${e}, ${n}${s}`:e,d=[[Mp.default.instancePath,(0,Bn.strConcat)(Mp.default.instancePath,i)],[Mp.default.parentData,a.parentData],[Mp.default.parentDataProperty,a.parentDataProperty],[Mp.default.rootData,Mp.default.rootData]];a.opts.dynamicRef&&d.push([Mp.default.dynamicAnchors,Mp.default.dynamicAnchors]);let f=(0,Bn._)`${l}, ${r.object(...d)}`;return c!==Bn.nil?(0,Bn._)`${o}.call(${c}, ${f})`:(0,Bn._)`${o}(${f})`}tn.callValidateCode=N6t;var O6t=(0,Bn._)`new RegExp`;function P6t({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Bn._)`${s.code==="new RegExp"?O6t:(0,v6t.useFunc)(t,s)}(${r}, ${n})`})}tn.usePattern=P6t;function k6t(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Bn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:rq.Type.Num},i),e.if((0,Bn.not)(i),o)})}}tn.validateArray=k6t;function D6t(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,rq.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Bn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Bn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}tn.validateUnion=D6t});var jSe=E(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});tl.validateKeywordUsage=tl.validSchemaType=tl.funcKeywordCode=tl.macroKeywordCode=void 0;var ca=zt(),rh=Nd(),B6t=sc(),L6t=Q_();function M6t(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=qSe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ca.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}tl.macroKeywordCode=M6t;function W6t(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;F6t(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=qSe(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&USe(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&USe(t),A(()=>$6t(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ca._)`await `),b=>n.assign(d,!1).if((0,ca._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ca._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ca._)`${l}.errors`;return n.assign(g,null),h(ca.nil),g}function h(g=e.async?(0,ca._)`await `:ca.nil){let b=c.opts.passContext?rh.default.this:rh.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ca._)`${g}${(0,B6t.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,ca.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}tl.funcKeywordCode=W6t;function USe(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ca._)`${n.parentData}[${n.parentDataProperty}]`))}function $6t(t,e){let{gen:r}=t;r.if((0,ca._)`Array.isArray(${e})`,()=>{r.assign(rh.default.vErrors,(0,ca._)`${rh.default.vErrors} === null ? ${e} : ${rh.default.vErrors}.concat(${e})`).assign(rh.default.errors,(0,ca._)`${rh.default.vErrors}.length`),(0,L6t.extendErrors)(t)},()=>t.error())}function F6t({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function qSe(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ca.stringify)(r)})}function U6t(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}tl.validSchemaType=U6t;function q6t({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}tl.validateKeywordUsage=q6t});var QSe=E(Wp=>{"use strict";Object.defineProperty(Wp,"__esModule",{value:!0});Wp.extendSubschemaMode=Wp.extendSubschemaData=Wp.getSubschema=void 0;var rl=zt(),HSe=Mr();function j6t(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,rl._)`${t.schemaPath}${(0,rl.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,rl._)`${t.schemaPath}${(0,rl.getProperty)(e)}${(0,rl.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,HSe.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Wp.getSubschema=j6t;function H6t(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,rl._)`${e.data}${(0,rl.getProperty)(r)}`,!0);c(f),t.errorPath=(0,rl.str)`${u}${(0,HSe.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,rl._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof rl.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Wp.extendSubschemaData=H6t;function Q6t(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Wp.extendSubschemaMode=Q6t});var KSe=E((zBr,GSe)=>{"use strict";var $p=GSe.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};JO(e,n,s,t,"",t)};$p.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};$p.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};$p.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};$p.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function JO(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in $p.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(qa,"__esModule",{value:!0});qa.getSchemaRefs=qa.resolveUrl=qa.normalizeId=qa._getFullPath=qa.getFullPath=qa.inlineRef=void 0;var K6t=Mr(),V6t=Ko(),z6t=KSe(),Y6t=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function J6t(t,e=!0){return typeof t=="boolean"?!0:e===!0?!iq(t):e?VSe(t)<=e:!1}qa.inlineRef=J6t;var X6t=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function iq(t){for(let e in t){if(X6t.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(iq)||typeof r=="object"&&iq(r))return!0}return!1}function VSe(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!Y6t.has(r)&&(typeof t[r]=="object"&&(0,K6t.eachItem)(t[r],n=>e+=VSe(n)),e===1/0))return 1/0}return e}function zSe(t,e="",r){r!==!1&&(e=Fy(e));let n=t.parse(e);return YSe(t,n)}qa.getFullPath=zSe;function YSe(t,e){return t.serialize(e).split("#")[0]+"#"}qa._getFullPath=YSe;var Z6t=/#\/?$/;function Fy(t){return t?t.replace(Z6t,""):""}qa.normalizeId=Fy;function e5t(t,e,r){return r=Fy(r),t.resolve(e,r)}qa.resolveUrl=e5t;var t5t=/^[a-z_][-a-z0-9._]*$/i;function r5t(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=Fy(t[r]||e),i={"":s},a=zSe(n,s,!1),o={},c=new Set;return z6t(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=Fy(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==Fy(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!t5t.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!V6t(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}qa.getSchemaRefs=r5t});var Y_=E(Fp=>{"use strict";Object.defineProperty(Fp,"__esModule",{value:!0});Fp.getData=Fp.KeywordCxt=Fp.validateFunctionCode=void 0;var tve=OSe(),JSe=G_(),oq=X7(),XO=G_(),n5t=WSe(),z_=jSe(),aq=QSe(),ot=zt(),Nt=Nd(),s5t=K_(),Od=Mr(),V_=Q_();function i5t(t){if(sve(t)&&(ive(t),nve(t))){c5t(t);return}rve(t,()=>(0,tve.topBoolOrEmptySchema)(t))}Fp.validateFunctionCode=i5t;function rve({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,ot._)`${Nt.default.data}, ${Nt.default.valCxt}`,n.$async,()=>{t.code((0,ot._)`"use strict"; ${XSe(r,s)}`),o5t(t,s),t.code(i)}):t.func(e,(0,ot._)`${Nt.default.data}, ${a5t(s)}`,n.$async,()=>t.code(XSe(r,s)).code(i))}function a5t(t){return(0,ot._)`{${Nt.default.instancePath}="", ${Nt.default.parentData}, ${Nt.default.parentDataProperty}, ${Nt.default.rootData}=${Nt.default.data}${t.dynamicRef?(0,ot._)`, ${Nt.default.dynamicAnchors}={}`:ot.nil}}={}`}function o5t(t,e){t.if(Nt.default.valCxt,()=>{t.var(Nt.default.instancePath,(0,ot._)`${Nt.default.valCxt}.${Nt.default.instancePath}`),t.var(Nt.default.parentData,(0,ot._)`${Nt.default.valCxt}.${Nt.default.parentData}`),t.var(Nt.default.parentDataProperty,(0,ot._)`${Nt.default.valCxt}.${Nt.default.parentDataProperty}`),t.var(Nt.default.rootData,(0,ot._)`${Nt.default.valCxt}.${Nt.default.rootData}`),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,ot._)`${Nt.default.valCxt}.${Nt.default.dynamicAnchors}`)},()=>{t.var(Nt.default.instancePath,(0,ot._)`""`),t.var(Nt.default.parentData,(0,ot._)`undefined`),t.var(Nt.default.parentDataProperty,(0,ot._)`undefined`),t.var(Nt.default.rootData,Nt.default.data),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,ot._)`{}`)})}function c5t(t){let{schema:e,opts:r,gen:n}=t;rve(t,()=>{r.$comment&&e.$comment&&ove(t),p5t(t),n.let(Nt.default.vErrors,null),n.let(Nt.default.errors,0),r.unevaluated&&u5t(t),ave(t),g5t(t)})}function u5t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,ot._)`${r}.evaluated`),e.if((0,ot._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,ot._)`${t.evaluated}.props`,(0,ot._)`undefined`)),e.if((0,ot._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,ot._)`${t.evaluated}.items`,(0,ot._)`undefined`))}function XSe(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,ot._)`/*# sourceURL=${r} */`:ot.nil}function l5t(t,e){if(sve(t)&&(ive(t),nve(t))){d5t(t,e);return}(0,tve.boolOrEmptySchema)(t,e)}function nve({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function sve(t){return typeof t.schema!="boolean"}function d5t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&ove(t),m5t(t),h5t(t);let i=n.const("_errs",Nt.default.errors);ave(t,i),n.var(e,(0,ot._)`${i} === ${Nt.default.errors}`)}function ive(t){(0,Od.checkUnknownRules)(t),f5t(t)}function ave(t,e){if(t.opts.jtd)return ZSe(t,[],!1,e);let r=(0,JSe.getSchemaTypes)(t.schema),n=(0,JSe.coerceAndCheckDataType)(t,r);ZSe(t,r,!n,e)}function f5t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Od.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function p5t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Od.checkStrictMode)(t,"default is ignored in the schema root")}function m5t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,s5t.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function h5t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function ove({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,ot._)`${Nt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,ot.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,ot._)`${Nt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function g5t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,ot._)`${Nt.default.errors} === 0`,()=>e.return(Nt.default.data),()=>e.throw((0,ot._)`new ${s}(${Nt.default.vErrors})`)):(e.assign((0,ot._)`${n}.errors`,Nt.default.vErrors),i.unevaluated&&A5t(t),e.return((0,ot._)`${Nt.default.errors} === 0`))}function A5t({gen:t,evaluated:e,props:r,items:n}){r instanceof ot.Name&&t.assign((0,ot._)`${e}.props`,r),n instanceof ot.Name&&t.assign((0,ot._)`${e}.items`,n)}function ZSe(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,Od.schemaHasRulesButRef)(i,l))){s.block(()=>uve(t,"$ref",l.all.$ref.definition));return}c.jtd||y5t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,oq.shouldUseGroup)(i,f)&&(f.type?(s.if((0,XO.checkDataType)(f.type,a,c.strictNumbers)),eve(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,XO.reportTypeError)(t)),s.endIf()):eve(t,f),o||s.if((0,ot._)`${Nt.default.errors} === ${n||0}`))}}function eve(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,n5t.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,oq.shouldUseRule)(n,i)&&uve(t,i.keyword,i.definition,e.type)})}function y5t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(x5t(t,e),t.opts.allowUnionTypes||b5t(t,e),E5t(t,t.dataTypes))}function x5t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{cve(t.dataTypes,r)||cq(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),S5t(t,e)}}function b5t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&cq(t,"use allowUnionTypes to allow union type keyword")}function E5t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,oq.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>_5t(e,a))&&cq(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function _5t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function cve(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function S5t(t,e){let r=[];for(let n of t.dataTypes)cve(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function cq(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Od.checkStrictMode)(t,e,t.opts.strictTypes)}var ZO=class{constructor(e,r,n){if((0,z_.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Od.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",lve(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,z_.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Nt.default.errors))}result(e,r,n){this.failResult((0,ot.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,ot.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,ot._)`${r} !== undefined && (${(0,ot.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?V_.reportExtraError:V_.reportError)(this,this.def.error,r)}$dataError(){(0,V_.reportError)(this,this.def.$dataError||V_.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,V_.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=ot.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=ot.nil,r=ot.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,ot.or)((0,ot._)`${s} === undefined`,r)),e!==ot.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==ot.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,ot.or)(a(),o());function a(){if(n.length){if(!(r instanceof ot.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,ot._)`${(0,XO.checkDataTypes)(c,r,i.opts.strictNumbers,XO.DataType.Wrong)}`}return ot.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,ot._)`!${c}(${r})`}return ot.nil}}subschema(e,r){let n=(0,aq.getSubschema)(this.it,e);(0,aq.extendSubschemaData)(n,this.it,e),(0,aq.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return l5t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Od.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Od.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,ot.Name)),!0}};Fp.KeywordCxt=ZO;function uve(t,e,r,n){let s=new ZO(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,z_.funcKeywordCode)(s,r):"macro"in r?(0,z_.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,z_.funcKeywordCode)(s,r)}var v5t=/^\/(?:[^~]|~0|~1)*$/,I5t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function lve(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Nt.default.rootData;if(t[0]==="/"){if(!v5t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Nt.default.rootData}else{let u=I5t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,ot._)`${i}${(0,ot.getProperty)((0,Od.unescapeJsonPointer)(u))}`,a=(0,ot._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Fp.getData=lve});var eP=E(lq=>{"use strict";Object.defineProperty(lq,"__esModule",{value:!0});var uq=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};lq.default=uq});var J_=E(pq=>{"use strict";Object.defineProperty(pq,"__esModule",{value:!0});var dq=K_(),fq=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,dq.resolveUrl)(e,r,n),this.missingSchema=(0,dq.normalizeId)((0,dq.getFullPath)(e,this.missingRef))}};pq.default=fq});var rP=E(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.resolveSchema=ic.getCompilingSchema=ic.resolveRef=ic.compileSchema=ic.SchemaEnv=void 0;var Jc=zt(),C5t=eP(),nh=Nd(),Xc=K_(),dve=Mr(),T5t=Y_(),Uy=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Xc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ic.SchemaEnv=Uy;function hq(t){let e=fve.call(this,t);if(e)return e;let r=(0,Xc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Jc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:C5t.default,code:(0,Jc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:nh.default.data,parentData:nh.default.parentData,parentDataProperty:nh.default.parentDataProperty,dataNames:[nh.default.data],dataPathArr:[Jc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Jc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Jc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Jc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,T5t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(nh.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${nh.default.self}`,`${nh.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Jc.Name?void 0:m,items:h instanceof Jc.Name?void 0:h,dynamicProps:m instanceof Jc.Name,dynamicItems:h instanceof Jc.Name},p.source&&(p.source.evaluated=(0,Jc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}ic.compileSchema=hq;function w5t(t,e,r){var n;r=(0,Xc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=O5t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new Uy({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=R5t.call(this,i)}ic.resolveRef=w5t;function R5t(t){return(0,Xc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:hq.call(this,t)}function fve(t){for(let e of this._compilations)if(N5t(e,t))return e}ic.getCompilingSchema=fve;function N5t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function O5t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||tP.call(this,t,e)}function tP(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Xc._getFullPath)(this.opts.uriResolver,r),s=(0,Xc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return mq.call(this,r,t);let i=(0,Xc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=tP.call(this,t,a);return typeof o?.schema!="object"?void 0:mq.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||hq.call(this,a),i===(0,Xc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Xc.resolveUrl)(this.opts.uriResolver,s,u)),new Uy({schema:o,schemaId:c,root:t,baseId:s})}return mq.call(this,r,a)}}ic.resolveSchema=tP;var P5t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function mq(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,dve.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!P5t.has(o)&&u&&(e=(0,Xc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,dve.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Xc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=tP.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new Uy({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var pve=E((tLr,k5t)=>{k5t.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var Aq=E((rLr,Ave)=>{"use strict";var D5t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),hve=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function gq(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var B5t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function mve(t){return t.length=0,!0}function L5t(t,e,r){if(t.length){let n=gq(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function M5t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=L5t;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=mve}else{s.push(u);continue}}return s.length&&(o===mve?r.zone=s.join(""):a?n.push(s.join("")):n.push(gq(s))),r.address=n.join(""),r}function gve(t){if(W5t(t,":")<2)return{host:t,isIPV6:!1};let e=M5t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function W5t(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:q5t}=Aq(),j5t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,H5t=["http","https","ws","wss","urn","urn:uuid"];function Q5t(t){return H5t.indexOf(t)!==-1}function yq(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function yve(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function xve(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function G5t(t){return t.secure=yq(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function K5t(t){if((t.port===(yq(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function V5t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(j5t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=xq(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function z5t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=xq(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function Y5t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!q5t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function J5t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var bve={scheme:"http",domainHost:!0,parse:yve,serialize:xve},X5t={scheme:"https",domainHost:bve.domainHost,parse:yve,serialize:xve},nP={scheme:"ws",domainHost:!0,parse:G5t,serialize:K5t},Z5t={scheme:"wss",domainHost:nP.domainHost,parse:nP.parse,serialize:nP.serialize},e8t={scheme:"urn",parse:V5t,serialize:z5t,skipNormalize:!0},t8t={scheme:"urn:uuid",parse:Y5t,serialize:J5t,skipNormalize:!0},sP={http:bve,https:X5t,ws:nP,wss:Z5t,urn:e8t,"urn:uuid":t8t};Object.setPrototypeOf(sP,null);function xq(t){return t&&(sP[t]||sP[t.toLowerCase()])||void 0}Eve.exports={wsIsSecure:yq,SCHEMES:sP,isValidSchemeName:Q5t,getSchemeHandler:xq}});var Ive=E((sLr,aP)=>{"use strict";var{normalizeIPv6:r8t,removeDotSegments:X_,recomposeAuthority:n8t,normalizeComponentEncoding:iP,isIPv4:s8t,nonSimpleDomain:i8t}=Aq(),{SCHEMES:a8t,getSchemeHandler:Sve}=_ve();function o8t(t,e){return typeof t=="string"?t=nl(Pd(t,e),e):typeof t=="object"&&(t=Pd(nl(t,e),e)),t}function c8t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=vve(Pd(t,n),Pd(e,n),n,!0);return n.skipEscape=!0,nl(s,n)}function vve(t,e,r,n){let s={};return n||(t=Pd(nl(t,r),r),e=Pd(nl(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=X_(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=X_(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=X_(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=X_(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function u8t(t,e,r){return typeof t=="string"?(t=unescape(t),t=nl(iP(Pd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=nl(iP(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=nl(iP(Pd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=nl(iP(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function nl(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=Sve(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=n8t(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=X_(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var l8t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Pd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(l8t);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(s8t(n.host)===!1){let c=r8t(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=Sve(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&i8t(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var bq={SCHEMES:a8t,normalize:o8t,resolve:c8t,resolveComponent:vve,equal:u8t,serialize:nl,parse:Pd};aP.exports=bq;aP.exports.default=bq;aP.exports.fastUri=bq});var Tve=E(Eq=>{"use strict";Object.defineProperty(Eq,"__esModule",{value:!0});var Cve=Ive();Cve.code='require("ajv/dist/runtime/uri").default';Eq.default=Cve});var Bve=E(hi=>{"use strict";Object.defineProperty(hi,"__esModule",{value:!0});hi.CodeGen=hi.Name=hi.nil=hi.stringify=hi.str=hi._=hi.KeywordCxt=void 0;var d8t=Y_();Object.defineProperty(hi,"KeywordCxt",{enumerable:!0,get:function(){return d8t.KeywordCxt}});var qy=zt();Object.defineProperty(hi,"_",{enumerable:!0,get:function(){return qy._}});Object.defineProperty(hi,"str",{enumerable:!0,get:function(){return qy.str}});Object.defineProperty(hi,"stringify",{enumerable:!0,get:function(){return qy.stringify}});Object.defineProperty(hi,"nil",{enumerable:!0,get:function(){return qy.nil}});Object.defineProperty(hi,"Name",{enumerable:!0,get:function(){return qy.Name}});Object.defineProperty(hi,"CodeGen",{enumerable:!0,get:function(){return qy.CodeGen}});var f8t=eP(),Pve=J_(),p8t=J7(),Z_=rP(),m8t=zt(),eS=K_(),oP=G_(),Sq=Mr(),wve=pve(),h8t=Tve(),kve=(t,e)=>new RegExp(t,e);kve.code="new RegExp";var g8t=["removeAdditional","useDefaults","coerceTypes"],A8t=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),y8t={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},x8t={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Rve=200;function b8t(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,I,R,w,N;let P=t.strict,B=(e=t.code)===null||e===void 0?void 0:e.optimize,M=B===!0||B===void 0?1:B||0,D=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:kve,L=(s=t.uriResolver)!==null&&s!==void 0?s:h8t.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:D}:{optimize:M,regExp:D},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Rve,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:Rve,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(I=t.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:L}}var tS=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...b8t(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new m8t.ValueScope({scope:{},prefixes:A8t,es5:r,lines:n}),this.logger=C8t(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,p8t.getRules)(),Nve.call(this,y8t,e,"NOT SUPPORTED"),Nve.call(this,x8t,e,"DEPRECATED","warn"),this._metaOpts=v8t.call(this),e.formats&&_8t.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&S8t.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),E8t.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=wve;n==="id"&&(s={...wve},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Pve.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,eS.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=Ove.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new Z_.SchemaEnv({schema:{},schemaId:n});if(r=Z_.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Ove.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,eS.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(w8t.call(this,n,r),!r)return(0,Sq.eachItem)(n,i=>_q.call(this,i)),this;N8t.call(this,r);let s={...r,type:(0,oP.getJSONTypes)(r.type),schemaType:(0,oP.getJSONTypes)(r.schemaType)};return(0,Sq.eachItem)(n,s.type.length===0?i=>_q.call(this,i,s):i=>s.type.forEach(a=>_q.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=Dve(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,eS.normalizeId)(a||n);let u=eS.getSchemaRefs.call(this,e,n);return c=new Z_.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Z_.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Z_.compileSchema.call(this,e)}finally{this.opts=r}}};tS.ValidationError=f8t.default;tS.MissingRefError=Pve.default;hi.default=tS;function Nve(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function Ove(t){return t=(0,eS.normalizeId)(t),this.schemas[t]||this.refs[t]}function E8t(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function _8t(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function S8t(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function v8t(){let t={...this.opts};for(let e of g8t)delete t[e];return t}var I8t={log(){},warn(){},error(){}};function C8t(t){if(t===!1)return I8t;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var T8t=/^[a-z_$][a-z0-9_$:-]*$/i;function w8t(t,e){let{RULES:r}=this;if((0,Sq.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!T8t.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function _q(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,oP.getJSONTypes)(e.type),schemaType:(0,oP.getJSONTypes)(e.schemaType)}};e.before?R8t.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function R8t(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function N8t(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Dve(e)),t.validateSchema=this.compile(e,!0))}var O8t={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Dve(t){return{anyOf:[t,O8t]}}});var Lve=E(vq=>{"use strict";Object.defineProperty(vq,"__esModule",{value:!0});var P8t={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};vq.default=P8t});var Fve=E(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});sh.callRef=sh.getValidate=void 0;var k8t=J_(),Mve=sc(),ja=zt(),jy=Nd(),Wve=rP(),cP=Mr(),D8t={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=Wve.resolveRef.call(c,u,s,r);if(l===void 0)throw new k8t.default(n.opts.uriResolver,s,r);if(l instanceof Wve.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return uP(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return uP(t,(0,ja._)`${m}.validate`,u,u.$async)}function f(m){let h=$ve(t,m);uP(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,ja.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:ja.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function $ve(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,ja._)`${r.scopeValue("wrapper",{ref:e})}.validate`}sh.getValidate=$ve;function uP(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?jy.default.this:ja.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,ja._)`await ${(0,Mve.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,ja._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,Mve.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,ja._)`${m}.errors`;s.assign(jy.default.vErrors,(0,ja._)`${jy.default.vErrors} === null ? ${h} : ${jy.default.vErrors}.concat(${h})`),s.assign(jy.default.errors,(0,ja._)`${jy.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=cP.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,ja._)`${m}.evaluated.props`);i.props=cP.mergeEvaluated.props(s,g,i.props,ja.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=cP.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,ja._)`${m}.evaluated.items`);i.items=cP.mergeEvaluated.items(s,g,i.items,ja.Name)}}}sh.callRef=uP;sh.default=D8t});var Uve=E(Iq=>{"use strict";Object.defineProperty(Iq,"__esModule",{value:!0});var B8t=Lve(),L8t=Fve(),M8t=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",B8t.default,L8t.default];Iq.default=M8t});var qve=E(Cq=>{"use strict";Object.defineProperty(Cq,"__esModule",{value:!0});var lP=zt(),Up=lP.operators,dP={maximum:{okStr:"<=",ok:Up.LTE,fail:Up.GT},minimum:{okStr:">=",ok:Up.GTE,fail:Up.LT},exclusiveMaximum:{okStr:"<",ok:Up.LT,fail:Up.GTE},exclusiveMinimum:{okStr:">",ok:Up.GT,fail:Up.LTE}},W8t={message:({keyword:t,schemaCode:e})=>(0,lP.str)`must be ${dP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,lP._)`{comparison: ${dP[t].okStr}, limit: ${e}}`},$8t={keyword:Object.keys(dP),type:"number",schemaType:"number",$data:!0,error:W8t,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,lP._)`${r} ${dP[e].fail} ${n} || isNaN(${r})`)}};Cq.default=$8t});var jve=E(Tq=>{"use strict";Object.defineProperty(Tq,"__esModule",{value:!0});var rS=zt(),F8t={message:({schemaCode:t})=>(0,rS.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,rS._)`{multipleOf: ${t}}`},U8t={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:F8t,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,rS._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,rS._)`${a} !== parseInt(${a})`;t.fail$data((0,rS._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};Tq.default=U8t});var Qve=E(wq=>{"use strict";Object.defineProperty(wq,"__esModule",{value:!0});function Hve(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(Rq,"__esModule",{value:!0});var ih=zt(),q8t=Mr(),j8t=Qve(),H8t={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,ih.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,ih._)`{limit: ${t}}`},Q8t={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:H8t,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?ih.operators.GT:ih.operators.LT,a=s.opts.unicode===!1?(0,ih._)`${r}.length`:(0,ih._)`${(0,q8t.useFunc)(t.gen,j8t.default)}(${r})`;t.fail$data((0,ih._)`${a} ${i} ${n}`)}};Rq.default=Q8t});var Kve=E(Nq=>{"use strict";Object.defineProperty(Nq,"__esModule",{value:!0});var G8t=sc(),fP=zt(),K8t={message:({schemaCode:t})=>(0,fP.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,fP._)`{pattern: ${t}}`},V8t={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:K8t,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,fP._)`(new RegExp(${s}, ${a}))`:(0,G8t.usePattern)(t,n);t.fail$data((0,fP._)`!${o}.test(${e})`)}};Nq.default=V8t});var Vve=E(Oq=>{"use strict";Object.defineProperty(Oq,"__esModule",{value:!0});var nS=zt(),z8t={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,nS.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,nS._)`{limit: ${t}}`},Y8t={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:z8t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?nS.operators.GT:nS.operators.LT;t.fail$data((0,nS._)`Object.keys(${r}).length ${s} ${n}`)}};Oq.default=Y8t});var zve=E(Pq=>{"use strict";Object.defineProperty(Pq,"__esModule",{value:!0});var sS=sc(),iS=zt(),J8t=Mr(),X8t={message:({params:{missingProperty:t}})=>(0,iS.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,iS._)`{missingProperty: ${t}}`},Z8t={keyword:"required",type:"object",schemaType:"array",$data:!0,error:X8t,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,J8t.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(iS.nil,d);else for(let p of r)(0,sS.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,sS.checkMissingProp)(t,r,p)),(0,sS.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,sS.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,sS.propertyInData)(e,s,p,o.ownProperties)),e.if((0,iS.not)(m),()=>{t.error(),e.break()})},iS.nil)}}};Pq.default=Z8t});var Yve=E(kq=>{"use strict";Object.defineProperty(kq,"__esModule",{value:!0});var aS=zt(),eWt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,aS.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,aS._)`{limit: ${t}}`},tWt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:eWt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?aS.operators.GT:aS.operators.LT;t.fail$data((0,aS._)`${r}.length ${s} ${n}`)}};kq.default=tWt});var pP=E(Dq=>{"use strict";Object.defineProperty(Dq,"__esModule",{value:!0});var Jve=Ko();Jve.code='require("ajv/dist/runtime/equal").default';Dq.default=Jve});var Xve=E(Lq=>{"use strict";Object.defineProperty(Lq,"__esModule",{value:!0});var Bq=G_(),gi=zt(),rWt=Mr(),nWt=pP(),sWt={message:({params:{i:t,j:e}})=>(0,gi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,gi._)`{i: ${t}, j: ${e}}`},iWt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:sWt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,Bq.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,gi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,gi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,gi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,Bq.checkDataTypes)(u,A,o.opts.strictNumbers,Bq.DataType.Wrong),b=e.const("indices",(0,gi._)`{}`);e.for((0,gi._)`;${m}--;`,()=>{e.let(A,(0,gi._)`${r}[${m}]`),e.if(g,(0,gi._)`continue`),u.length>1&&e.if((0,gi._)`typeof ${A} == "string"`,(0,gi._)`${A} += "_"`),e.if((0,gi._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,gi._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,gi._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,rWt.useFunc)(e,nWt.default),g=e.name("outer");e.label(g).for((0,gi._)`;${m}--;`,()=>e.for((0,gi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,gi._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};Lq.default=iWt});var Zve=E(Wq=>{"use strict";Object.defineProperty(Wq,"__esModule",{value:!0});var Mq=zt(),aWt=Mr(),oWt=pP(),cWt={message:"must be equal to constant",params:({schemaCode:t})=>(0,Mq._)`{allowedValue: ${t}}`},uWt={keyword:"const",$data:!0,error:cWt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,Mq._)`!${(0,aWt.useFunc)(e,oWt.default)}(${r}, ${s})`):t.fail((0,Mq._)`${i} !== ${r}`)}};Wq.default=uWt});var eIe=E($q=>{"use strict";Object.defineProperty($q,"__esModule",{value:!0});var oS=zt(),lWt=Mr(),dWt=pP(),fWt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,oS._)`{allowedValues: ${t}}`},pWt={keyword:"enum",schemaType:"array",$data:!0,error:fWt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,lWt.useFunc)(e,dWt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,oS.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,oS._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,oS._)`${u()}(${r}, ${p}[${m}])`:(0,oS._)`${r} === ${h}`}}};$q.default=pWt});var tIe=E(Fq=>{"use strict";Object.defineProperty(Fq,"__esModule",{value:!0});var mWt=qve(),hWt=jve(),gWt=Gve(),AWt=Kve(),yWt=Vve(),xWt=zve(),bWt=Yve(),EWt=Xve(),_Wt=Zve(),SWt=eIe(),vWt=[mWt.default,hWt.default,gWt.default,AWt.default,yWt.default,xWt.default,bWt.default,EWt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},_Wt.default,SWt.default];Fq.default=vWt});var qq=E(cS=>{"use strict";Object.defineProperty(cS,"__esModule",{value:!0});cS.validateAdditionalItems=void 0;var ah=zt(),Uq=Mr(),IWt={message:({params:{len:t}})=>(0,ah.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ah._)`{limit: ${t}}`},CWt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:IWt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Uq.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}rIe(t,n)}};function rIe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,ah._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,ah._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,Uq.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,ah._)`${o} <= ${e.length}`);r.if((0,ah.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:Uq.Type.Num},u),a.allErrors||r.if((0,ah.not)(u),()=>r.break())})}}cS.validateAdditionalItems=rIe;cS.default=CWt});var jq=E(uS=>{"use strict";Object.defineProperty(uS,"__esModule",{value:!0});uS.validateTuple=void 0;var nIe=zt(),mP=Mr(),TWt=sc(),wWt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return sIe(t,"additionalItems",e);r.items=!0,!(0,mP.alwaysValidSchema)(r,e)&&t.ok((0,TWt.validateArray)(t))}};function sIe(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=mP.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,nIe._)`${i}.length`);r.forEach((d,f)=>{(0,mP.alwaysValidSchema)(o,d)||(n.if((0,nIe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,mP.checkStrictMode)(o,A,f.strictTuples)}}}uS.validateTuple=sIe;uS.default=wWt});var iIe=E(Hq=>{"use strict";Object.defineProperty(Hq,"__esModule",{value:!0});var RWt=jq(),NWt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,RWt.validateTuple)(t,"items")};Hq.default=NWt});var oIe=E(Qq=>{"use strict";Object.defineProperty(Qq,"__esModule",{value:!0});var aIe=zt(),OWt=Mr(),PWt=sc(),kWt=qq(),DWt={message:({params:{len:t}})=>(0,aIe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,aIe._)`{limit: ${t}}`},BWt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:DWt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,OWt.alwaysValidSchema)(n,e)&&(s?(0,kWt.validateAdditionalItems)(t,s):t.ok((0,PWt.validateArray)(t)))}};Qq.default=BWt});var cIe=E(Gq=>{"use strict";Object.defineProperty(Gq,"__esModule",{value:!0});var ac=zt(),hP=Mr(),LWt={message:({params:{min:t,max:e}})=>e===void 0?(0,ac.str)`must contain at least ${t} valid item(s)`:(0,ac.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ac._)`{minContains: ${t}}`:(0,ac._)`{minContains: ${t}, maxContains: ${e}}`},MWt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:LWt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,ac._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,hP.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,hP.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,hP.alwaysValidSchema)(i,r)){let h=(0,ac._)`${l} >= ${a}`;o!==void 0&&(h=(0,ac._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,ac._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:hP.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,ac._)`${h}++`),o===void 0?e.if((0,ac._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,ac._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,ac._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};Gq.default=MWt});var dIe=E(sl=>{"use strict";Object.defineProperty(sl,"__esModule",{value:!0});sl.validateSchemaDeps=sl.validatePropertyDeps=sl.error=void 0;var Kq=zt(),WWt=Mr(),lS=sc();sl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Kq.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Kq._)`{property: ${t}, + || ${a} === "boolean" || ${s} === null`).assign(o,(0,Ht._)`[${s}]`)}}}function LPt({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Ht._)`${e} !== undefined`,()=>t.assign((0,Ht._)`${e}[${r}]`,n))}function DF(t,e,r,n=my.Correct){let s=n===my.Correct?Ht.operators.EQ:Ht.operators.NEQ,i;switch(t){case"null":return(0,Ht._)`${e} ${s} null`;case"array":i=(0,Ht._)`Array.isArray(${e})`;break;case"object":i=(0,Ht._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Ht._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Ht._)`typeof ${e} ${s} ${t}`}return n===my.Correct?i:(0,Ht.not)(i);function a(o=Ht.nil){return(0,Ht.and)((0,Ht._)`typeof ${e} == "number"`,o,r?(0,Ht._)`isFinite(${e})`:Ht.nil)}}ki.checkDataType=DF;function kF(t,e,r,n){if(t.length===1)return DF(t[0],e,r,n);let s,i=(0,fEe.toHash)(t);if(i.array&&i.object){let a=(0,Ht._)`typeof ${e} != "object"`;s=i.null?a:(0,Ht._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Ht.nil;i.number&&delete i.integer;for(let a in i)s=(0,Ht.and)(s,DF(a,e,r,n));return s}ki.checkDataTypes=kF;var BPt={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Ht._)`{type: ${t}}`:(0,Ht._)`{type: ${e}}`};function LF(t){let e=MPt(t);(0,NPt.reportError)(e,BPt)}ki.reportTypeError=LF;function MPt(t){let{gen:e,data:r,schema:n}=t,s=(0,fEe.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var gEe=E(fO=>{"use strict";Object.defineProperty(fO,"__esModule",{value:!0});fO.assignDefaults=void 0;var hy=Et(),WPt=Kt();function $Pt(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)hEe(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>hEe(t,i,s.default))}fO.assignDefaults=$Pt;function hEe(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,hy._)`${i}${(0,hy.getProperty)(e)}`;if(s){(0,WPt.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,hy._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,hy._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,hy._)`${o} = ${(0,hy.stringify)(r)}`)}});var di=E(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.validateUnion=en.validateArray=en.usePattern=en.callValidateCode=en.schemaProperties=en.allSchemaProperties=en.noPropertyInData=en.propertyInData=en.isOwnProperty=en.hasPropFunc=en.reportMissingProp=en.checkMissingProp=en.checkReportMissingProp=void 0;var Pn=Et(),BF=Kt(),Ip=Zo(),FPt=Kt();function UPt(t,e){let{gen:r,data:n,it:s}=t;r.if(WF(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Pn._)`${e}`},!0),t.error()})}en.checkReportMissingProp=UPt;function qPt({gen:t,data:e,it:{opts:r}},n,s){return(0,Pn.or)(...n.map(i=>(0,Pn.and)(WF(t,e,i,r.ownProperties),(0,Pn._)`${s} = ${i}`)))}en.checkMissingProp=qPt;function jPt(t,e){t.setParams({missingProperty:e},!0),t.error()}en.reportMissingProp=jPt;function AEe(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Pn._)`Object.prototype.hasOwnProperty`})}en.hasPropFunc=AEe;function MF(t,e,r){return(0,Pn._)`${AEe(t)}.call(${e}, ${r})`}en.isOwnProperty=MF;function HPt(t,e,r,n){let s=(0,Pn._)`${e}${(0,Pn.getProperty)(r)} !== undefined`;return n?(0,Pn._)`${s} && ${MF(t,e,r)}`:s}en.propertyInData=HPt;function WF(t,e,r,n){let s=(0,Pn._)`${e}${(0,Pn.getProperty)(r)} === undefined`;return n?(0,Pn.or)(s,(0,Pn.not)(MF(t,e,r))):s}en.noPropertyInData=WF;function yEe(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}en.allSchemaProperties=yEe;function QPt(t,e){return yEe(e).filter(r=>!(0,BF.alwaysValidSchema)(t,e[r]))}en.schemaProperties=QPt;function GPt({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Pn._)`${t}, ${e}, ${n}${s}`:e,d=[[Ip.default.instancePath,(0,Pn.strConcat)(Ip.default.instancePath,i)],[Ip.default.parentData,a.parentData],[Ip.default.parentDataProperty,a.parentDataProperty],[Ip.default.rootData,Ip.default.rootData]];a.opts.dynamicRef&&d.push([Ip.default.dynamicAnchors,Ip.default.dynamicAnchors]);let f=(0,Pn._)`${l}, ${r.object(...d)}`;return c!==Pn.nil?(0,Pn._)`${o}.call(${c}, ${f})`:(0,Pn._)`${o}(${f})`}en.callValidateCode=GPt;var VPt=(0,Pn._)`new RegExp`;function zPt({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Pn._)`${s.code==="new RegExp"?VPt:(0,FPt.useFunc)(t,s)}(${r}, ${n})`})}en.usePattern=zPt;function KPt(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Pn._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:BF.Type.Num},i),e.if((0,Pn.not)(i),o)})}}en.validateArray=KPt;function YPt(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,BF.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Pn._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Pn.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}en.validateUnion=YPt});var EEe=E(Ku=>{"use strict";Object.defineProperty(Ku,"__esModule",{value:!0});Ku.validateKeywordUsage=Ku.validSchemaType=Ku.funcKeywordCode=Ku.macroKeywordCode=void 0;var aa=Et(),jm=Zo(),JPt=di(),XPt=p_();function ZPt(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=bEe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:aa.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Ku.macroKeywordCode=ZPt;function e3t(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;r3t(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=bEe(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&xEe(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&xEe(t),A(()=>t3t(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,aa._)`await `),b=>n.assign(d,!1).if((0,aa._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,aa._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,aa._)`${l}.errors`;return n.assign(g,null),h(aa.nil),g}function h(g=e.async?(0,aa._)`await `:aa.nil){let b=c.opts.passContext?jm.default.this:jm.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,aa._)`${g}${(0,JPt.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,aa.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}Ku.funcKeywordCode=e3t;function xEe(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,aa._)`${n.parentData}[${n.parentDataProperty}]`))}function t3t(t,e){let{gen:r}=t;r.if((0,aa._)`Array.isArray(${e})`,()=>{r.assign(jm.default.vErrors,(0,aa._)`${jm.default.vErrors} === null ? ${e} : ${jm.default.vErrors}.concat(${e})`).assign(jm.default.errors,(0,aa._)`${jm.default.vErrors}.length`),(0,XPt.extendErrors)(t)},()=>t.error())}function r3t({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function bEe(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,aa.stringify)(r)})}function n3t(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Ku.validSchemaType=n3t;function s3t({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Ku.validateKeywordUsage=s3t});var SEe=E(Tp=>{"use strict";Object.defineProperty(Tp,"__esModule",{value:!0});Tp.extendSubschemaMode=Tp.extendSubschemaData=Tp.getSubschema=void 0;var Yu=Et(),_Ee=Kt();function i3t(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,Yu._)`${t.schemaPath}${(0,Yu.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,Yu._)`${t.schemaPath}${(0,Yu.getProperty)(e)}${(0,Yu.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,_Ee.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Tp.getSubschema=i3t;function a3t(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,Yu._)`${e.data}${(0,Yu.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Yu.str)`${u}${(0,_Ee.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Yu._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof Yu.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}Tp.extendSubschemaData=a3t;function o3t(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Tp.extendSubschemaMode=o3t});var CEe=E((Ekr,vEe)=>{"use strict";var wp=vEe.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};pO(e,n,s,t,"",t)};wp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};wp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};wp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};wp.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function pO(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in wp.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(Wa,"__esModule",{value:!0});Wa.getSchemaRefs=Wa.resolveUrl=Wa.normalizeId=Wa._getFullPath=Wa.getFullPath=Wa.inlineRef=void 0;var u3t=Kt(),l3t=Go(),d3t=CEe(),f3t=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function p3t(t,e=!0){return typeof t=="boolean"?!0:e===!0?!$F(t):e?IEe(t)<=e:!1}Wa.inlineRef=p3t;var m3t=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function $F(t){for(let e in t){if(m3t.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some($F)||typeof r=="object"&&$F(r))return!0}return!1}function IEe(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!f3t.has(r)&&(typeof t[r]=="object"&&(0,u3t.eachItem)(t[r],n=>e+=IEe(n)),e===1/0))return 1/0}return e}function TEe(t,e="",r){r!==!1&&(e=gy(e));let n=t.parse(e);return wEe(t,n)}Wa.getFullPath=TEe;function wEe(t,e){return t.serialize(e).split("#")[0]+"#"}Wa._getFullPath=wEe;var h3t=/#\/?$/;function gy(t){return t?t.replace(h3t,""):""}Wa.normalizeId=gy;function g3t(t,e,r){return r=gy(r),t.resolve(e,r)}Wa.resolveUrl=g3t;var A3t=/^[a-z_][-a-z0-9._]*$/i;function y3t(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=gy(t[r]||e),i={"":s},a=TEe(n,s,!1),o={},c=new Set;return d3t(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=gy(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==gy(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!A3t.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!l3t(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Wa.getSchemaRefs=y3t});var Ay=E(Rp=>{"use strict";Object.defineProperty(Rp,"__esModule",{value:!0});Rp.getData=Rp.KeywordCxt=Rp.validateFunctionCode=void 0;var DEe=uEe(),REe=m_(),UF=PF(),mO=m_(),x3t=gEe(),A_=EEe(),FF=SEe(),at=Et(),Nt=Zo(),b3t=h_(),bd=Kt(),g_=p_();function E3t(t){if(BEe(t)&&(MEe(t),LEe(t))){v3t(t);return}kEe(t,()=>(0,DEe.topBoolOrEmptySchema)(t))}Rp.validateFunctionCode=E3t;function kEe({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,at._)`${Nt.default.data}, ${Nt.default.valCxt}`,n.$async,()=>{t.code((0,at._)`"use strict"; ${NEe(r,s)}`),S3t(t,s),t.code(i)}):t.func(e,(0,at._)`${Nt.default.data}, ${_3t(s)}`,n.$async,()=>t.code(NEe(r,s)).code(i))}function _3t(t){return(0,at._)`{${Nt.default.instancePath}="", ${Nt.default.parentData}, ${Nt.default.parentDataProperty}, ${Nt.default.rootData}=${Nt.default.data}${t.dynamicRef?(0,at._)`, ${Nt.default.dynamicAnchors}={}`:at.nil}}={}`}function S3t(t,e){t.if(Nt.default.valCxt,()=>{t.var(Nt.default.instancePath,(0,at._)`${Nt.default.valCxt}.${Nt.default.instancePath}`),t.var(Nt.default.parentData,(0,at._)`${Nt.default.valCxt}.${Nt.default.parentData}`),t.var(Nt.default.parentDataProperty,(0,at._)`${Nt.default.valCxt}.${Nt.default.parentDataProperty}`),t.var(Nt.default.rootData,(0,at._)`${Nt.default.valCxt}.${Nt.default.rootData}`),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,at._)`${Nt.default.valCxt}.${Nt.default.dynamicAnchors}`)},()=>{t.var(Nt.default.instancePath,(0,at._)`""`),t.var(Nt.default.parentData,(0,at._)`undefined`),t.var(Nt.default.parentDataProperty,(0,at._)`undefined`),t.var(Nt.default.rootData,Nt.default.data),e.dynamicRef&&t.var(Nt.default.dynamicAnchors,(0,at._)`{}`)})}function v3t(t){let{schema:e,opts:r,gen:n}=t;kEe(t,()=>{r.$comment&&e.$comment&&$Ee(t),R3t(t),n.let(Nt.default.vErrors,null),n.let(Nt.default.errors,0),r.unevaluated&&C3t(t),WEe(t),P3t(t)})}function C3t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,at._)`${r}.evaluated`),e.if((0,at._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,at._)`${t.evaluated}.props`,(0,at._)`undefined`)),e.if((0,at._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,at._)`${t.evaluated}.items`,(0,at._)`undefined`))}function NEe(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,at._)`/*# sourceURL=${r} */`:at.nil}function I3t(t,e){if(BEe(t)&&(MEe(t),LEe(t))){T3t(t,e);return}(0,DEe.boolOrEmptySchema)(t,e)}function LEe({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function BEe(t){return typeof t.schema!="boolean"}function T3t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&$Ee(t),N3t(t),O3t(t);let i=n.const("_errs",Nt.default.errors);WEe(t,i),n.var(e,(0,at._)`${i} === ${Nt.default.errors}`)}function MEe(t){(0,bd.checkUnknownRules)(t),w3t(t)}function WEe(t,e){if(t.opts.jtd)return OEe(t,[],!1,e);let r=(0,REe.getSchemaTypes)(t.schema),n=(0,REe.coerceAndCheckDataType)(t,r);OEe(t,r,!n,e)}function w3t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,bd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function R3t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,bd.checkStrictMode)(t,"default is ignored in the schema root")}function N3t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,b3t.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function O3t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function $Ee({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,at._)`${Nt.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,at.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,at._)`${Nt.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function P3t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,at._)`${Nt.default.errors} === 0`,()=>e.return(Nt.default.data),()=>e.throw((0,at._)`new ${s}(${Nt.default.vErrors})`)):(e.assign((0,at._)`${n}.errors`,Nt.default.vErrors),i.unevaluated&&D3t(t),e.return((0,at._)`${Nt.default.errors} === 0`))}function D3t({gen:t,evaluated:e,props:r,items:n}){r instanceof at.Name&&t.assign((0,at._)`${e}.props`,r),n instanceof at.Name&&t.assign((0,at._)`${e}.items`,n)}function OEe(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,bd.schemaHasRulesButRef)(i,l))){s.block(()=>UEe(t,"$ref",l.all.$ref.definition));return}c.jtd||k3t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,UF.shouldUseGroup)(i,f)&&(f.type?(s.if((0,mO.checkDataType)(f.type,a,c.strictNumbers)),PEe(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,mO.reportTypeError)(t)),s.endIf()):PEe(t,f),o||s.if((0,at._)`${Nt.default.errors} === ${n||0}`))}}function PEe(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,x3t.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,UF.shouldUseRule)(n,i)&&UEe(t,i.keyword,i.definition,e.type)})}function k3t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(L3t(t,e),t.opts.allowUnionTypes||B3t(t,e),M3t(t,t.dataTypes))}function L3t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{FEe(t.dataTypes,r)||qF(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),$3t(t,e)}}function B3t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&qF(t,"use allowUnionTypes to allow union type keyword")}function M3t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,UF.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>W3t(e,a))&&qF(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function W3t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function FEe(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function $3t(t,e){let r=[];for(let n of t.dataTypes)FEe(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function qF(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,bd.checkStrictMode)(t,e,t.opts.strictTypes)}var hO=class{constructor(e,r,n){if((0,A_.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,bd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",qEe(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,A_.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Nt.default.errors))}result(e,r,n){this.failResult((0,at.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,at.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,at._)`${r} !== undefined && (${(0,at.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?g_.reportExtraError:g_.reportError)(this,this.def.error,r)}$dataError(){(0,g_.reportError)(this,this.def.$dataError||g_.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,g_.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=at.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=at.nil,r=at.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,at.or)((0,at._)`${s} === undefined`,r)),e!==at.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==at.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,at.or)(a(),o());function a(){if(n.length){if(!(r instanceof at.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,at._)`${(0,mO.checkDataTypes)(c,r,i.opts.strictNumbers,mO.DataType.Wrong)}`}return at.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,at._)`!${c}(${r})`}return at.nil}}subschema(e,r){let n=(0,FF.getSubschema)(this.it,e);(0,FF.extendSubschemaData)(n,this.it,e),(0,FF.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return I3t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=bd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=bd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,at.Name)),!0}};Rp.KeywordCxt=hO;function UEe(t,e,r,n){let s=new hO(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,A_.funcKeywordCode)(s,r):"macro"in r?(0,A_.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,A_.funcKeywordCode)(s,r)}var F3t=/^\/(?:[^~]|~0|~1)*$/,U3t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function qEe(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Nt.default.rootData;if(t[0]==="/"){if(!F3t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Nt.default.rootData}else{let u=U3t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,at._)`${i}${(0,at.getProperty)((0,bd.unescapeJsonPointer)(u))}`,a=(0,at._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Rp.getData=qEe});var y_=E(HF=>{"use strict";Object.defineProperty(HF,"__esModule",{value:!0});var jF=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};HF.default=jF});var Ed=E(VF=>{"use strict";Object.defineProperty(VF,"__esModule",{value:!0});var QF=h_(),GF=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,QF.resolveUrl)(e,r,n),this.missingSchema=(0,QF.normalizeId)((0,QF.getFullPath)(e,this.missingRef))}};VF.default=GF});var Qm=E(ec=>{"use strict";Object.defineProperty(ec,"__esModule",{value:!0});ec.resolveSchema=ec.getCompilingSchema=ec.resolveRef=ec.compileSchema=ec.SchemaEnv=void 0;var Gc=Et(),q3t=y_(),Hm=Zo(),Vc=h_(),jEe=Kt(),j3t=Ay(),yy=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Vc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ec.SchemaEnv=yy;function KF(t){let e=HEe.call(this,t);if(e)return e;let r=(0,Vc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Gc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:q3t.default,code:(0,Gc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:Hm.default.data,parentData:Hm.default.parentData,parentDataProperty:Hm.default.parentDataProperty,dataNames:[Hm.default.data],dataPathArr:[Gc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Gc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Gc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Gc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,j3t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(Hm.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${Hm.default.self}`,`${Hm.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Gc.Name?void 0:m,items:h instanceof Gc.Name?void 0:h,dynamicProps:m instanceof Gc.Name,dynamicItems:h instanceof Gc.Name},p.source&&(p.source.evaluated=(0,Gc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}ec.compileSchema=KF;function H3t(t,e,r){var n;r=(0,Vc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=V3t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new yy({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=Q3t.call(this,i)}ec.resolveRef=H3t;function Q3t(t){return(0,Vc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:KF.call(this,t)}function HEe(t){for(let e of this._compilations)if(G3t(e,t))return e}ec.getCompilingSchema=HEe;function G3t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function V3t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||gO.call(this,t,e)}function gO(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Vc._getFullPath)(this.opts.uriResolver,r),s=(0,Vc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return zF.call(this,r,t);let i=(0,Vc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=gO.call(this,t,a);return typeof o?.schema!="object"?void 0:zF.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||KF.call(this,a),i===(0,Vc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Vc.resolveUrl)(this.opts.uriResolver,s,u)),new yy({schema:o,schemaId:c,root:t,baseId:s})}return zF.call(this,r,a)}}ec.resolveSchema=gO;var z3t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function zF(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,jEe.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!z3t.has(o)&&u&&(e=(0,Vc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,jEe.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Vc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=gO.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new yy({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var QEe=E((Tkr,K3t)=>{K3t.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var JF=E((wkr,KEe)=>{"use strict";var Y3t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),VEe=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function YF(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var J3t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function GEe(t){return t.length=0,!0}function X3t(t,e,r){if(t.length){let n=YF(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function Z3t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=X3t;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=GEe}else{s.push(u);continue}}return s.length&&(o===GEe?r.zone=s.join(""):a?n.push(s.join("")):n.push(YF(s))),r.address=n.join(""),r}function zEe(t){if(eDt(t,":")<2)return{host:t,isIPV6:!1};let e=Z3t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function eDt(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:sDt}=JF(),iDt=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,aDt=["http","https","ws","wss","urn","urn:uuid"];function oDt(t){return aDt.indexOf(t)!==-1}function XF(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function YEe(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function JEe(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function cDt(t){return t.secure=XF(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function uDt(t){if((t.port===(XF(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function lDt(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(iDt);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=ZF(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function dDt(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=ZF(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function fDt(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!sDt(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function pDt(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var XEe={scheme:"http",domainHost:!0,parse:YEe,serialize:JEe},mDt={scheme:"https",domainHost:XEe.domainHost,parse:YEe,serialize:JEe},AO={scheme:"ws",domainHost:!0,parse:cDt,serialize:uDt},hDt={scheme:"wss",domainHost:AO.domainHost,parse:AO.parse,serialize:AO.serialize},gDt={scheme:"urn",parse:lDt,serialize:dDt,skipNormalize:!0},ADt={scheme:"urn:uuid",parse:fDt,serialize:pDt,skipNormalize:!0},yO={http:XEe,https:mDt,ws:AO,wss:hDt,urn:gDt,"urn:uuid":ADt};Object.setPrototypeOf(yO,null);function ZF(t){return t&&(yO[t]||yO[t.toLowerCase()])||void 0}ZEe.exports={wsIsSecure:XF,SCHEMES:yO,isValidSchemeName:oDt,getSchemeHandler:ZF}});var n1e=E((Nkr,bO)=>{"use strict";var{normalizeIPv6:yDt,removeDotSegments:x_,recomposeAuthority:xDt,normalizeComponentEncoding:xO,isIPv4:bDt,nonSimpleDomain:EDt}=JF(),{SCHEMES:_Dt,getSchemeHandler:t1e}=e1e();function SDt(t,e){return typeof t=="string"?t=Ju(_d(t,e),e):typeof t=="object"&&(t=_d(Ju(t,e),e)),t}function vDt(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=r1e(_d(t,n),_d(e,n),n,!0);return n.skipEscape=!0,Ju(s,n)}function r1e(t,e,r,n){let s={};return n||(t=_d(Ju(t,r),r),e=_d(Ju(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=x_(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=x_(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=x_(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=x_(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function CDt(t,e,r){return typeof t=="string"?(t=unescape(t),t=Ju(xO(_d(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Ju(xO(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Ju(xO(_d(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Ju(xO(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Ju(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=t1e(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=xDt(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=x_(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var IDt=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function _d(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(IDt);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(bDt(n.host)===!1){let c=yDt(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=t1e(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&EDt(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var eU={SCHEMES:_Dt,normalize:SDt,resolve:vDt,resolveComponent:r1e,equal:CDt,serialize:Ju,parse:_d};bO.exports=eU;bO.exports.default=eU;bO.exports.fastUri=eU});var i1e=E(tU=>{"use strict";Object.defineProperty(tU,"__esModule",{value:!0});var s1e=n1e();s1e.code='require("ajv/dist/runtime/uri").default';tU.default=s1e});var sU=E(fi=>{"use strict";Object.defineProperty(fi,"__esModule",{value:!0});fi.CodeGen=fi.Name=fi.nil=fi.stringify=fi.str=fi._=fi.KeywordCxt=void 0;var TDt=Ay();Object.defineProperty(fi,"KeywordCxt",{enumerable:!0,get:function(){return TDt.KeywordCxt}});var xy=Et();Object.defineProperty(fi,"_",{enumerable:!0,get:function(){return xy._}});Object.defineProperty(fi,"str",{enumerable:!0,get:function(){return xy.str}});Object.defineProperty(fi,"stringify",{enumerable:!0,get:function(){return xy.stringify}});Object.defineProperty(fi,"nil",{enumerable:!0,get:function(){return xy.nil}});Object.defineProperty(fi,"Name",{enumerable:!0,get:function(){return xy.Name}});Object.defineProperty(fi,"CodeGen",{enumerable:!0,get:function(){return xy.CodeGen}});var wDt=y_(),l1e=Ed(),RDt=OF(),b_=Qm(),NDt=Et(),E_=h_(),EO=m_(),nU=Kt(),a1e=QEe(),ODt=i1e(),d1e=(t,e)=>new RegExp(t,e);d1e.code="new RegExp";var PDt=["removeAdditional","useDefaults","coerceTypes"],DDt=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),kDt={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},LDt={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},o1e=200;function BDt(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,C,R,w,N;let P=t.strict,L=(e=t.code)===null||e===void 0?void 0:e.optimize,M=L===!0||L===void 0?1:L||0,k=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:d1e,B=(s=t.uriResolver)!==null&&s!==void 0?s:ODt.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:k}:{optimize:M,regExp:k},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:o1e,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:o1e,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(C=t.validateSchema)!==null&&C!==void 0?C:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:B}}var __=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...BDt(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new NDt.ValueScope({scope:{},prefixes:DDt,es5:r,lines:n}),this.logger=qDt(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,RDt.getRules)(),c1e.call(this,kDt,e,"NOT SUPPORTED"),c1e.call(this,LDt,e,"DEPRECATED","warn"),this._metaOpts=FDt.call(this),e.formats&&WDt.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&$Dt.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),MDt.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=a1e;n==="id"&&(s={...a1e},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof l1e.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,E_.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=u1e.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new b_.SchemaEnv({schema:{},schemaId:n});if(r=b_.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=u1e.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,E_.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(HDt.call(this,n,r),!r)return(0,nU.eachItem)(n,i=>rU.call(this,i)),this;GDt.call(this,r);let s={...r,type:(0,EO.getJSONTypes)(r.type),schemaType:(0,EO.getJSONTypes)(r.schemaType)};return(0,nU.eachItem)(n,s.type.length===0?i=>rU.call(this,i,s):i=>s.type.forEach(a=>rU.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=f1e(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,E_.normalizeId)(a||n);let u=E_.getSchemaRefs.call(this,e,n);return c=new b_.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):b_.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{b_.compileSchema.call(this,e)}finally{this.opts=r}}};__.ValidationError=wDt.default;__.MissingRefError=l1e.default;fi.default=__;function c1e(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function u1e(t){return t=(0,E_.normalizeId)(t),this.schemas[t]||this.refs[t]}function MDt(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function WDt(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function $Dt(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function FDt(){let t={...this.opts};for(let e of PDt)delete t[e];return t}var UDt={log(){},warn(){},error(){}};function qDt(t){if(t===!1)return UDt;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var jDt=/^[a-z_$][a-z0-9_$:-]*$/i;function HDt(t,e){let{RULES:r}=this;if((0,nU.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!jDt.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function rU(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,EO.getJSONTypes)(e.type),schemaType:(0,EO.getJSONTypes)(e.schemaType)}};e.before?QDt.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function QDt(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function GDt(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=f1e(e)),t.validateSchema=this.compile(e,!0))}var VDt={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function f1e(t){return{anyOf:[t,VDt]}}});var p1e=E(iU=>{"use strict";Object.defineProperty(iU,"__esModule",{value:!0});var zDt={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};iU.default=zDt});var aU=E(Gm=>{"use strict";Object.defineProperty(Gm,"__esModule",{value:!0});Gm.callRef=Gm.getValidate=void 0;var KDt=Ed(),m1e=di(),$a=Et(),by=Zo(),h1e=Qm(),_O=Kt(),YDt={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=h1e.resolveRef.call(c,u,s,r);if(l===void 0)throw new KDt.default(n.opts.uriResolver,s,r);if(l instanceof h1e.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return SO(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return SO(t,(0,$a._)`${m}.validate`,u,u.$async)}function f(m){let h=g1e(t,m);SO(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,$a.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:$a.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function g1e(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,$a._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Gm.getValidate=g1e;function SO(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?by.default.this:$a.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,$a._)`await ${(0,m1e.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,$a._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,m1e.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,$a._)`${m}.errors`;s.assign(by.default.vErrors,(0,$a._)`${by.default.vErrors} === null ? ${h} : ${by.default.vErrors}.concat(${h})`),s.assign(by.default.errors,(0,$a._)`${by.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=_O.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,$a._)`${m}.evaluated.props`);i.props=_O.mergeEvaluated.props(s,g,i.props,$a.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=_O.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,$a._)`${m}.evaluated.items`);i.items=_O.mergeEvaluated.items(s,g,i.items,$a.Name)}}}Gm.callRef=SO;Gm.default=YDt});var A1e=E(oU=>{"use strict";Object.defineProperty(oU,"__esModule",{value:!0});var JDt=p1e(),XDt=aU(),ZDt=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",JDt.default,XDt.default];oU.default=ZDt});var y1e=E(cU=>{"use strict";Object.defineProperty(cU,"__esModule",{value:!0});var vO=Et(),Np=vO.operators,CO={maximum:{okStr:"<=",ok:Np.LTE,fail:Np.GT},minimum:{okStr:">=",ok:Np.GTE,fail:Np.LT},exclusiveMaximum:{okStr:"<",ok:Np.LT,fail:Np.GTE},exclusiveMinimum:{okStr:">",ok:Np.GT,fail:Np.LTE}},ekt={message:({keyword:t,schemaCode:e})=>(0,vO.str)`must be ${CO[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,vO._)`{comparison: ${CO[t].okStr}, limit: ${e}}`},tkt={keyword:Object.keys(CO),type:"number",schemaType:"number",$data:!0,error:ekt,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,vO._)`${r} ${CO[e].fail} ${n} || isNaN(${r})`)}};cU.default=tkt});var x1e=E(uU=>{"use strict";Object.defineProperty(uU,"__esModule",{value:!0});var S_=Et(),rkt={message:({schemaCode:t})=>(0,S_.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,S_._)`{multipleOf: ${t}}`},nkt={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:rkt,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,S_._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,S_._)`${a} !== parseInt(${a})`;t.fail$data((0,S_._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};uU.default=nkt});var E1e=E(lU=>{"use strict";Object.defineProperty(lU,"__esModule",{value:!0});function b1e(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(dU,"__esModule",{value:!0});var Vm=Et(),skt=Kt(),ikt=E1e(),akt={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Vm.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Vm._)`{limit: ${t}}`},okt={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:akt,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?Vm.operators.GT:Vm.operators.LT,a=s.opts.unicode===!1?(0,Vm._)`${r}.length`:(0,Vm._)`${(0,skt.useFunc)(t.gen,ikt.default)}(${r})`;t.fail$data((0,Vm._)`${a} ${i} ${n}`)}};dU.default=okt});var S1e=E(fU=>{"use strict";Object.defineProperty(fU,"__esModule",{value:!0});var ckt=di(),IO=Et(),ukt={message:({schemaCode:t})=>(0,IO.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,IO._)`{pattern: ${t}}`},lkt={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:ukt,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,IO._)`(new RegExp(${s}, ${a}))`:(0,ckt.usePattern)(t,n);t.fail$data((0,IO._)`!${o}.test(${e})`)}};fU.default=lkt});var v1e=E(pU=>{"use strict";Object.defineProperty(pU,"__esModule",{value:!0});var v_=Et(),dkt={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,v_.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,v_._)`{limit: ${t}}`},fkt={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:dkt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?v_.operators.GT:v_.operators.LT;t.fail$data((0,v_._)`Object.keys(${r}).length ${s} ${n}`)}};pU.default=fkt});var C1e=E(mU=>{"use strict";Object.defineProperty(mU,"__esModule",{value:!0});var C_=di(),I_=Et(),pkt=Kt(),mkt={message:({params:{missingProperty:t}})=>(0,I_.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,I_._)`{missingProperty: ${t}}`},hkt={keyword:"required",type:"object",schemaType:"array",$data:!0,error:mkt,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,pkt.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(I_.nil,d);else for(let p of r)(0,C_.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,C_.checkMissingProp)(t,r,p)),(0,C_.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,C_.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,C_.propertyInData)(e,s,p,o.ownProperties)),e.if((0,I_.not)(m),()=>{t.error(),e.break()})},I_.nil)}}};mU.default=hkt});var I1e=E(hU=>{"use strict";Object.defineProperty(hU,"__esModule",{value:!0});var T_=Et(),gkt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,T_.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,T_._)`{limit: ${t}}`},Akt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:gkt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?T_.operators.GT:T_.operators.LT;t.fail$data((0,T_._)`${r}.length ${s} ${n}`)}};hU.default=Akt});var TO=E(gU=>{"use strict";Object.defineProperty(gU,"__esModule",{value:!0});var T1e=Go();T1e.code='require("ajv/dist/runtime/equal").default';gU.default=T1e});var w1e=E(yU=>{"use strict";Object.defineProperty(yU,"__esModule",{value:!0});var AU=m_(),pi=Et(),ykt=Kt(),xkt=TO(),bkt={message:({params:{i:t,j:e}})=>(0,pi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,pi._)`{i: ${t}, j: ${e}}`},Ekt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:bkt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,AU.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,pi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,pi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,pi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,AU.checkDataTypes)(u,A,o.opts.strictNumbers,AU.DataType.Wrong),b=e.const("indices",(0,pi._)`{}`);e.for((0,pi._)`;${m}--;`,()=>{e.let(A,(0,pi._)`${r}[${m}]`),e.if(g,(0,pi._)`continue`),u.length>1&&e.if((0,pi._)`typeof ${A} == "string"`,(0,pi._)`${A} += "_"`),e.if((0,pi._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,pi._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,pi._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,ykt.useFunc)(e,xkt.default),g=e.name("outer");e.label(g).for((0,pi._)`;${m}--;`,()=>e.for((0,pi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,pi._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};yU.default=Ekt});var R1e=E(bU=>{"use strict";Object.defineProperty(bU,"__esModule",{value:!0});var xU=Et(),_kt=Kt(),Skt=TO(),vkt={message:"must be equal to constant",params:({schemaCode:t})=>(0,xU._)`{allowedValue: ${t}}`},Ckt={keyword:"const",$data:!0,error:vkt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,xU._)`!${(0,_kt.useFunc)(e,Skt.default)}(${r}, ${s})`):t.fail((0,xU._)`${i} !== ${r}`)}};bU.default=Ckt});var N1e=E(EU=>{"use strict";Object.defineProperty(EU,"__esModule",{value:!0});var w_=Et(),Ikt=Kt(),Tkt=TO(),wkt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,w_._)`{allowedValues: ${t}}`},Rkt={keyword:"enum",schemaType:"array",$data:!0,error:wkt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,Ikt.useFunc)(e,Tkt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,w_.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,w_._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,w_._)`${u()}(${r}, ${p}[${m}])`:(0,w_._)`${r} === ${h}`}}};EU.default=Rkt});var O1e=E(_U=>{"use strict";Object.defineProperty(_U,"__esModule",{value:!0});var Nkt=y1e(),Okt=x1e(),Pkt=_1e(),Dkt=S1e(),kkt=v1e(),Lkt=C1e(),Bkt=I1e(),Mkt=w1e(),Wkt=R1e(),$kt=N1e(),Fkt=[Nkt.default,Okt.default,Pkt.default,Dkt.default,kkt.default,Lkt.default,Bkt.default,Mkt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Wkt.default,$kt.default];_U.default=Fkt});var vU=E(R_=>{"use strict";Object.defineProperty(R_,"__esModule",{value:!0});R_.validateAdditionalItems=void 0;var zm=Et(),SU=Kt(),Ukt={message:({params:{len:t}})=>(0,zm.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,zm._)`{limit: ${t}}`},qkt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Ukt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,SU.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}P1e(t,n)}};function P1e(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,zm._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,zm._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,SU.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,zm._)`${o} <= ${e.length}`);r.if((0,zm.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:SU.Type.Num},u),a.allErrors||r.if((0,zm.not)(u),()=>r.break())})}}R_.validateAdditionalItems=P1e;R_.default=qkt});var CU=E(N_=>{"use strict";Object.defineProperty(N_,"__esModule",{value:!0});N_.validateTuple=void 0;var D1e=Et(),wO=Kt(),jkt=di(),Hkt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return k1e(t,"additionalItems",e);r.items=!0,!(0,wO.alwaysValidSchema)(r,e)&&t.ok((0,jkt.validateArray)(t))}};function k1e(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=wO.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,D1e._)`${i}.length`);r.forEach((d,f)=>{(0,wO.alwaysValidSchema)(o,d)||(n.if((0,D1e._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,wO.checkStrictMode)(o,A,f.strictTuples)}}}N_.validateTuple=k1e;N_.default=Hkt});var L1e=E(IU=>{"use strict";Object.defineProperty(IU,"__esModule",{value:!0});var Qkt=CU(),Gkt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,Qkt.validateTuple)(t,"items")};IU.default=Gkt});var M1e=E(TU=>{"use strict";Object.defineProperty(TU,"__esModule",{value:!0});var B1e=Et(),Vkt=Kt(),zkt=di(),Kkt=vU(),Ykt={message:({params:{len:t}})=>(0,B1e.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,B1e._)`{limit: ${t}}`},Jkt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Ykt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,Vkt.alwaysValidSchema)(n,e)&&(s?(0,Kkt.validateAdditionalItems)(t,s):t.ok((0,zkt.validateArray)(t)))}};TU.default=Jkt});var W1e=E(wU=>{"use strict";Object.defineProperty(wU,"__esModule",{value:!0});var tc=Et(),RO=Kt(),Xkt={message:({params:{min:t,max:e}})=>e===void 0?(0,tc.str)`must contain at least ${t} valid item(s)`:(0,tc.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,tc._)`{minContains: ${t}}`:(0,tc._)`{minContains: ${t}, maxContains: ${e}}`},Zkt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Xkt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,tc._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,RO.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,RO.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,RO.alwaysValidSchema)(i,r)){let h=(0,tc._)`${l} >= ${a}`;o!==void 0&&(h=(0,tc._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,tc._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:RO.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,tc._)`${h}++`),o===void 0?e.if((0,tc._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,tc._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,tc._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};wU.default=Zkt});var U1e=E(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});Xu.validateSchemaDeps=Xu.validatePropertyDeps=Xu.error=void 0;var RU=Et(),eLt=Kt(),O_=di();Xu.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,RU.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,RU._)`{property: ${t}, missingProperty: ${n}, depsCount: ${e}, - deps: ${r}}`};var $Wt={keyword:"dependencies",type:"object",schemaType:"object",error:sl.error,code(t){let[e,r]=FWt(t);uIe(t,e),lIe(t,r)}};function FWt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function uIe(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,lS.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,lS.checkReportMissingProp)(t,u)}):(r.if((0,Kq._)`${c} && (${(0,lS.checkMissingProp)(t,o,i)})`),(0,lS.reportMissingProp)(t,i),r.else())}}sl.validatePropertyDeps=uIe;function lIe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,WWt.alwaysValidSchema)(i,e[o])||(r.if((0,lS.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}sl.validateSchemaDeps=lIe;sl.default=$Wt});var pIe=E(Vq=>{"use strict";Object.defineProperty(Vq,"__esModule",{value:!0});var fIe=zt(),UWt=Mr(),qWt={message:"property name must be valid",params:({params:t})=>(0,fIe._)`{propertyName: ${t.propertyName}}`},jWt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:qWt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,UWt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,fIe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};Vq.default=jWt});var Yq=E(zq=>{"use strict";Object.defineProperty(zq,"__esModule",{value:!0});var gP=sc(),Zc=zt(),HWt=Nd(),AP=Mr(),QWt={message:"must NOT have additional properties",params:({params:t})=>(0,Zc._)`{additionalProperty: ${t.additionalProperty}}`},GWt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:QWt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,AP.alwaysValidSchema)(a,r))return;let u=(0,gP.allSchemaProperties)(n.properties),l=(0,gP.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Zc._)`${i} === ${HWt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,AP.schemaRefOrVal)(a,n.properties,"properties");g=(0,gP.isOwnProperty)(e,b,A)}else u.length?g=(0,Zc.or)(...u.map(b=>(0,Zc._)`${A} === ${b}`)):g=Zc.nil;return l.length&&(g=(0,Zc.or)(g,...l.map(b=>(0,Zc._)`${(0,gP.usePattern)(t,b)}.test(${A})`))),(0,Zc.not)(g)}function p(A){e.code((0,Zc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,AP.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,Zc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,Zc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:AP.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};zq.default=GWt});var gIe=E(Xq=>{"use strict";Object.defineProperty(Xq,"__esModule",{value:!0});var KWt=Y_(),mIe=sc(),Jq=Mr(),hIe=Yq(),VWt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&hIe.default.code(new KWt.KeywordCxt(i,hIe.default,"additionalProperties"));let a=(0,mIe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=Jq.mergeEvaluated.props(e,(0,Jq.toHash)(a),i.props));let o=a.filter(d=>!(0,Jq.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,mIe.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Xq.default=VWt});var bIe=E(Zq=>{"use strict";Object.defineProperty(Zq,"__esModule",{value:!0});var AIe=sc(),yP=zt(),yIe=Mr(),xIe=Mr(),zWt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,AIe.allSchemaProperties)(r),c=o.filter(h=>(0,yIe.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof yP.Name)&&(i.props=(0,xIe.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,yIe.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,yP._)`${(0,AIe.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:xIe.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,yP._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,yP.not)(l),()=>e.break())})})}}};Zq.default=zWt});var EIe=E(e9=>{"use strict";Object.defineProperty(e9,"__esModule",{value:!0});var YWt=Mr(),JWt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,YWt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};e9.default=JWt});var _Ie=E(t9=>{"use strict";Object.defineProperty(t9,"__esModule",{value:!0});var XWt=sc(),ZWt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:XWt.validateUnion,error:{message:"must match a schema in anyOf"}};t9.default=ZWt});var SIe=E(r9=>{"use strict";Object.defineProperty(r9,"__esModule",{value:!0});var xP=zt(),e$t=Mr(),t$t={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,xP._)`{passingSchemas: ${t.passing}}`},r$t={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:t$t,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,e$t.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,xP._)`${c} && ${a}`).assign(a,!1).assign(o,(0,xP._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,xP.Name)})})}}};r9.default=r$t});var vIe=E(n9=>{"use strict";Object.defineProperty(n9,"__esModule",{value:!0});var n$t=Mr(),s$t={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,n$t.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};n9.default=s$t});var TIe=E(s9=>{"use strict";Object.defineProperty(s9,"__esModule",{value:!0});var bP=zt(),CIe=Mr(),i$t={message:({params:t})=>(0,bP.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,bP._)`{failingKeyword: ${t.ifClause}}`},a$t={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:i$t,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,CIe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=IIe(n,"then"),i=IIe(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,bP.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,bP._)`${l}`):t.setParams({ifClause:l})}}}};function IIe(t,e){let r=t.schema[e];return r!==void 0&&!(0,CIe.alwaysValidSchema)(t,r)}s9.default=a$t});var wIe=E(i9=>{"use strict";Object.defineProperty(i9,"__esModule",{value:!0});var o$t=Mr(),c$t={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,o$t.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};i9.default=c$t});var RIe=E(a9=>{"use strict";Object.defineProperty(a9,"__esModule",{value:!0});var u$t=qq(),l$t=iIe(),d$t=jq(),f$t=oIe(),p$t=cIe(),m$t=dIe(),h$t=pIe(),g$t=Yq(),A$t=gIe(),y$t=bIe(),x$t=EIe(),b$t=_Ie(),E$t=SIe(),_$t=vIe(),S$t=TIe(),v$t=wIe();function I$t(t=!1){let e=[x$t.default,b$t.default,E$t.default,_$t.default,S$t.default,v$t.default,h$t.default,g$t.default,m$t.default,A$t.default,y$t.default];return t?e.push(l$t.default,f$t.default):e.push(u$t.default,d$t.default),e.push(p$t.default),e}a9.default=I$t});var NIe=E(o9=>{"use strict";Object.defineProperty(o9,"__esModule",{value:!0});var ds=zt(),C$t={message:({schemaCode:t})=>(0,ds.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ds._)`{format: ${t}}`},T$t={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:C$t,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ds._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,ds._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,ds._)`${h}.type || "string"`).assign(g,(0,ds._)`${h}.validate`),()=>r.assign(A,(0,ds._)`"string"`).assign(g,h)),t.fail$data((0,ds.or)(b(),y()));function b(){return c.strictSchema===!1?ds.nil:(0,ds._)`${a} && !${g}`}function y(){let x=l.$async?(0,ds._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ds._)`${g}(${n})`,v=(0,ds._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,ds._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function y(v){let I=v instanceof RegExp?(0,ds.regexpCode)(v):c.code.formats?(0,ds._)`${c.code.formats}${(0,ds.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:I});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,ds._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ds._)`await ${g}(${n})`}return typeof A=="function"?(0,ds._)`${g}(${n})`:(0,ds._)`${g}.test(${n})`}}}};o9.default=T$t});var OIe=E(c9=>{"use strict";Object.defineProperty(c9,"__esModule",{value:!0});var w$t=NIe(),R$t=[w$t.default];c9.default=R$t});var PIe=E(Hy=>{"use strict";Object.defineProperty(Hy,"__esModule",{value:!0});Hy.contentVocabulary=Hy.metadataVocabulary=void 0;Hy.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Hy.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var DIe=E(u9=>{"use strict";Object.defineProperty(u9,"__esModule",{value:!0});var N$t=Uve(),O$t=tIe(),P$t=RIe(),k$t=OIe(),kIe=PIe(),D$t=[N$t.default,O$t.default,(0,P$t.default)(),k$t.default,kIe.metadataVocabulary,kIe.contentVocabulary];u9.default=D$t});var LIe=E(EP=>{"use strict";Object.defineProperty(EP,"__esModule",{value:!0});EP.DiscrError=void 0;var BIe;(function(t){t.Tag="tag",t.Mapping="mapping"})(BIe||(EP.DiscrError=BIe={}))});var WIe=E(d9=>{"use strict";Object.defineProperty(d9,"__esModule",{value:!0});var Qy=zt(),l9=LIe(),MIe=rP(),B$t=J_(),L$t=Mr(),M$t={message:({params:{discrError:t,tagName:e}})=>t===l9.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Qy._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},W$t={keyword:"discriminator",type:"object",schemaType:"object",error:M$t,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,Qy._)`${r}${(0,Qy.getProperty)(o)}`);e.if((0,Qy._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:l9.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,Qy._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:l9.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,Qy.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x{$$t.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var UIe=E((Ln,f9)=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.MissingRefError=Ln.ValidationError=Ln.CodeGen=Ln.Name=Ln.nil=Ln.stringify=Ln.str=Ln._=Ln.KeywordCxt=Ln.Ajv=void 0;var F$t=Bve(),U$t=DIe(),q$t=WIe(),FIe=$Ie(),j$t=["/properties"],_P="http://json-schema.org/draft-07/schema",Gy=class extends F$t.default{_addVocabularies(){super._addVocabularies(),U$t.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(q$t.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(FIe,j$t):FIe;this.addMetaSchema(e,_P,!1),this.refs["http://json-schema.org/schema"]=_P}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(_P)?_P:void 0)}};Ln.Ajv=Gy;f9.exports=Ln=Gy;f9.exports.Ajv=Gy;Object.defineProperty(Ln,"__esModule",{value:!0});Ln.default=Gy;var H$t=Y_();Object.defineProperty(Ln,"KeywordCxt",{enumerable:!0,get:function(){return H$t.KeywordCxt}});var Ky=zt();Object.defineProperty(Ln,"_",{enumerable:!0,get:function(){return Ky._}});Object.defineProperty(Ln,"str",{enumerable:!0,get:function(){return Ky.str}});Object.defineProperty(Ln,"stringify",{enumerable:!0,get:function(){return Ky.stringify}});Object.defineProperty(Ln,"nil",{enumerable:!0,get:function(){return Ky.nil}});Object.defineProperty(Ln,"Name",{enumerable:!0,get:function(){return Ky.Name}});Object.defineProperty(Ln,"CodeGen",{enumerable:!0,get:function(){return Ky.CodeGen}});var Q$t=eP();Object.defineProperty(Ln,"ValidationError",{enumerable:!0,get:function(){return Q$t.default}});var G$t=J_();Object.defineProperty(Ln,"MissingRefError",{enumerable:!0,get:function(){return G$t.default}})});var qIe=E(Vy=>{"use strict";Object.defineProperty(Vy,"__esModule",{value:!0});Vy.formatLimitDefinition=void 0;var K$t=UIe(),eu=zt(),qp=eu.operators,SP={formatMaximum:{okStr:"<=",ok:qp.LTE,fail:qp.GT},formatMinimum:{okStr:">=",ok:qp.GTE,fail:qp.LT},formatExclusiveMaximum:{okStr:"<",ok:qp.LT,fail:qp.GTE},formatExclusiveMinimum:{okStr:">",ok:qp.GT,fail:qp.LTE}},V$t={message:({keyword:t,schemaCode:e})=>eu.str`should be ${SP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>eu._`{comparison: ${SP[t].okStr}, limit: ${e}}`};Vy.formatLimitDefinition={keyword:Object.keys(SP),type:"string",schemaType:"string",$data:!0,error:V$t,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new K$t.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",eu._`${f}[${c.schemaCode}]`);t.fail$data(eu.or(eu._`typeof ${p} != "object"`,eu._`${p} instanceof RegExp`,eu._`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?eu._`${a.code.formats}${eu.getProperty(f)}`:void 0});t.fail$data(d(m))}function d(f){return eu._`${f}.compare(${r}, ${n}) ${SP[s].fail} 0`}},dependencies:["format"]};var z$t=t=>(t.addKeyword(Vy.formatLimitDefinition),t);Vy.default=z$t});var GIe=E((dS,QIe)=>{"use strict";Object.defineProperty(dS,"__esModule",{value:!0});var zy=hSe(),Y$t=qIe(),p9=zt(),jIe=new p9.Name("fullFormats"),J$t=new p9.Name("fastFormats"),m9=(t,e={keywords:!0})=>{if(Array.isArray(e))return HIe(t,e,zy.fullFormats,jIe),t;let[r,n]=e.mode==="fast"?[zy.fastFormats,J$t]:[zy.fullFormats,jIe],s=e.formats||zy.formatNames;return HIe(t,s,r,n),e.keywords&&Y$t.default(t),t};m9.get=(t,e="full")=>{let n=(e==="fast"?zy.fastFormats:zy.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function HIe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=p9._`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}QIe.exports=dS=m9;Object.defineProperty(dS,"__esModule",{value:!0});dS.default=m9});var zIe=E((VLr,VIe)=>{"use strict";var X$t=p_e().default,Z$t=v7(),KIe=I7(),h9=class{constructor(e,r){r.mode==="JTD"?this.ajv=new Z$t(Object.assign({},KIe,r.customOptions)):this.ajv=new X$t(Object.assign({},KIe,r.customOptions));let n=!0;if(r.plugins&&r.plugins.length>0)for(let i of r.plugins)Array.isArray(i)?(n=n&&i[0].name!=="formatsPlugin",i[0](this.ajv,i[1])):(n=n&&i.name!=="formatsPlugin",i(this.ajv));n&&GIe()(this.ajv),r.onCreate?.(this.ajv);let s=Object.values(e);for(let i of s)this.ajv.addSchema(i)}buildValidatorFunction({schema:e}){if(e.$id){let r=this.ajv.getSchema(e.$id);if(r)return r}return this.ajv.compile(e)}};VIe.exports=h9});var JIe=E((zLr,YIe)=>{"use strict";var eFt=v7(),tFt=I7(),g9=class{constructor(e,r){this.ajv=new eFt(Object.assign({},tFt,r))}buildSerializerFunction({schema:e}){return this.ajv.compileSerializer(e)}};YIe.exports=g9});var eCe=E((pS,ZIe)=>{"use strict";Object.defineProperty(pS,"__esModule",{value:!0});var fS=sO(),tu=uy();function XIe(t,e){if(!t.opts.code.source)throw new Error("moduleCode: ajv instance must have code.source option");let{_n:r}=t.scope.opts;return typeof e=="function"?s(e.source):e!==void 0?i(e,n):i(t.schemas,o=>o.meta?void 0:t.compile(o.schema));function n(o){let c=t.getSchema(o);if(!c)throw new Error(`moduleCode: no schema with id ${o}`);return c}function s(o){let c={},u=o?.validateName,l=a(c,o);return t.opts.code.esm?`"use strict";${r}export const validate = ${u};${r}export default ${u};${r}${l}`:`"use strict";${r}module.exports = ${u};${r}module.exports.default = ${u};${r}${l}`}function i(o,c){var u;let l={},d=(0,tu._)`"use strict";`;for(let f in o){let p=c(o[f]);if(p){let m=a(l,p.source),h=t.opts.code.esm?(0,tu._)`export const ${(0,tu.getEsmExportName)(f)}`:(0,tu._)`exports${(0,tu.getProperty)(f)}`;d=(0,tu._)`${d}${r}${h} = ${(u=p.source)===null||u===void 0?void 0:u.validateName};${r}${m}`}}return`${d}`}function a(o,c){if(!c)throw new Error('moduleCode: function does not have "source" property');if(f(c.validateName)===fS.UsedValueState.Completed)return tu.nil;p(c.validateName,fS.UsedValueState.Started);let u=t.scope.scopeCode(c.scopeValues,o,d),l=new tu._Code(`${u}${r}${c.validateCode}`);return c.evaluated?(0,tu._)`${l}${c.validateName}.evaluated = ${c.evaluated};${r}`:l;function d(m){var h;let A=(h=m.value)===null||h===void 0?void 0:h.ref;if(m.prefix==="validate"&&typeof A=="function")return a(o,A.source);if((m.prefix==="root"||m.prefix==="wrapper")&&typeof A=="object"){let{validate:g,validateName:b}=A;if(!b)throw new Error("ajv internal error");let y=t.opts.code.es5?fS.varKinds.var:fS.varKinds.const,x=(0,tu._)`${y} ${m} = {validate: ${b}};`;if(f(b)===fS.UsedValueState.Started)return x;let v=a(o,g?.source);return(0,tu._)`${x}${r}${v}`}}function f(m){var h;return(h=o[m.prefix])===null||h===void 0?void 0:h.get(m)}function p(m,h){let{prefix:A}=m;(o[A]=o[A]||new Map).set(m,h)}}}ZIe.exports=pS=XIe;Object.defineProperty(pS,"__esModule",{value:!0});pS.default=XIe});var nCe=E((YLr,rCe)=>{"use strict";var tCe=A9(),rFt=eCe().default;function nFt(t={readMode:!0}){if(t.readMode===!0&&!t.restoreFunction)throw new Error("You must provide a restoreFunction options when readMode ON");if(t.readMode!==!0&&!t.storeFunction)throw new Error("You must provide a storeFunction options when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=tCe();return function(n,s={}){(!s.customOptions||!s.customOptions.code)&&(s.customOptions=Object.assign({},s.customOptions,{code:{source:!0}}));let i=e(n,s);return function(a){let o=i(a),c=rFt(i[tCe.AjvReference].ajv,o);return t.storeFunction(a,c),o}}}rCe.exports=nFt});var A9=E((JLr,Yy)=>{"use strict";var iCe=Symbol.for("fastify.ajv-compiler.reference"),sFt=zIe(),iFt=JIe();function y9(t){let e=new Map,r=new Map;return t&&t.jtdSerializer===!0?function(s,i){let a=sCe({},i);if(r.has(a))return r.get(a);let o=new iFt(s,i),c=o.buildSerializerFunction.bind(o);return r.set(a,c),c}:function(s,i){let a=sCe(s,i.customOptions);if(e.has(a))return e.get(a);let o=new sFt(s,i),c=o.buildValidatorFunction.bind(o);return e.set(a,c),i.customOptions.code!==void 0&&(c[iCe]=o),c}}function sCe(t,e){let r=JSON.stringify(t),n=JSON.stringify(e);return`${r}${n}`}Yy.exports=y9;Yy.exports.default=y9;Yy.exports.AjvCompiler=y9;Yy.exports.AjvReference=iCe;Yy.exports.StandaloneValidator=nCe()});var x9=E((XLr,aCe)=>{"use strict";var{buildSchemas:aFt}=c1(),oFt=cF(),cFt=A9();function uFt(t,e){if(t)return new Jy(t,e);let r=Object.assign({buildValidator:null,buildSerializer:null},e?.compilersFactory);r.buildValidator||(r.buildValidator=cFt()),r.buildSerializer||(r.buildSerializer=oFt());let n={bucket:e&&e.bucket||aFt,compilersFactory:r,isCustomValidatorCompiler:typeof e?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof e?.compilersFactory?.buildValidator=="function"};return new Jy(void 0,n)}var Jy=class{constructor(e,r){this.opts=r||e?.opts,this.addedSchemas=!1,this.compilersFactory=this.opts.compilersFactory,e?(this.schemaBucket=this.opts.bucket(e.getSchemas()),this.validatorCompiler=e.getValidatorCompiler(),this.serializerCompiler=e.getSerializerCompiler(),this.isCustomValidatorCompiler=e.isCustomValidatorCompiler,this.isCustomSerializerCompiler=e.isCustomSerializerCompiler,this.parent=e):(this.schemaBucket=this.opts.bucket(),this.isCustomValidatorCompiler=this.opts.isCustomValidatorCompiler||!1,this.isCustomSerializerCompiler=this.opts.isCustomSerializerCompiler||!1)}add(e){return this.addedSchemas=!0,this.schemaBucket.add(e)}getSchema(e){return this.schemaBucket.getSchema(e)}getSchemas(){return this.schemaBucket.getSchemas()}setValidatorCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildValidator:()=>e}),this.validatorCompiler=e,this.isCustomValidatorCompiler=!0}setSerializerCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildSerializer:()=>e}),this.serializerCompiler=e,this.isCustomSerializerCompiler=!0}getValidatorCompiler(){return this.validatorCompiler||this.parent&&this.parent.getValidatorCompiler()}getSerializerCompiler(){return this.serializerCompiler||this.parent&&this.parent.getSerializerCompiler()}getSerializerBuilder(){return this.compilersFactory.buildSerializer||this.parent&&this.parent.getSerializerBuilder()}getValidatorBuilder(){return this.compilersFactory.buildValidator||this.parent&&this.parent.getValidatorBuilder()}setupValidator(e){this.validatorCompiler!==void 0&&!this.addedSchemas||(this.validatorCompiler=this.getValidatorBuilder()(this.schemaBucket.getSchemas(),e.ajv))}setupSerializer(e){this.serializerCompiler!==void 0&&!this.addedSchemas||(this.serializerCompiler=this.getSerializerBuilder()(this.schemaBucket.getSchemas(),e.serializerOpts))}};Jy.buildSchemaController=uFt;aCe.exports=Jy});var I9=E((ZLr,v9)=>{"use strict";var b9=N$(),_9=require("node:assert"),S9=Symbol.for("registered-plugin"),{kTestInternals:lFt}=Gs(),{exist:dFt,existReply:fFt,existRequest:pFt}=F$(),{FST_ERR_PLUGIN_VERSION_MISMATCH:mFt,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:hFt}=Ci(),{FSTWRN002:gFt}=od();function mS(t){return t[Symbol.for("plugin-meta")]}function oCe(t){let e=cCe(t);if(e)return e;let r=require.cache;if(r){let n=Object.keys(r);for(let s=0;se.trim()).join(" -- ")}function cCe(t){return t[Symbol.for("fastify.display-name")]}function uCe(t){return!!t[Symbol.for("skip-override")]}function lCe(t){let e=mS(t);if(!e)return;let r=e.dependencies;r&&(_9(Array.isArray(r),"The dependencies should be an array of strings"),r.forEach(n=>{_9(this[S9].indexOf(n)>-1,`The dependency '${n}' of plugin '${e.name}' is not registered`)}))}function dCe(t){let e=mS(t);if(!e)return;let{decorators:r,name:n}=e;r&&(r.fastify&&E9(this,"Fastify",r.fastify,n),r.reply&&E9(this,"Reply",r.reply,n),r.request&&E9(this,"Request",r.request,n))}var yFt={Fastify:dFt,Request:pFt,Reply:fFt};function E9(t,e,r,n){_9(Array.isArray(r),"The decorators should be an array of strings"),r.forEach(s=>{let i=typeof n=="string"?` required by '${n}'`:"";if(!yFt[e].call(t,s))throw new hFt(s,i,e)})}function xFt(t){let e=mS(t);if(!e)return;let r=e.fastify,n=/-rc.+$/.test(this.version);if(!(n===!0&&b9.gt(this.version,b9.coerce(r))===!0)&&r&&b9.satisfies(this.version,r,{includePrerelease:n})===!1)throw new mFt(e.name,r,this.version)}function bFt(t){let e=mS(t);if(!e)return;let r=e.name;if(r)return this[S9].push(r),r}function EFt(t,e){t.constructor.name==="AsyncFunction"&&t.length===3&&gFt(e||"anonymous")}function _Ft(t){let e=bFt.call(this,t)||oCe(t);return EFt.call(this,t,e),xFt.call(this,t),dCe.call(this,t),lCe.call(this,t),uCe(t)}v9.exports={getPluginName:oCe,getFuncPreview:AFt,kRegisteredPlugins:S9,getDisplayName:cCe,registerPlugin:_Ft};v9.exports[lFt]={shouldSkipOverride:uCe,getMeta:mS,checkDecorators:dCe,checkDependencies:lCe}});var vP=E((e4r,fCe)=>{"use strict";function SFt(t,e){let r=e||IFt();return t?CFt(t,r):r}function vFt(t,e){return t.genReqId(e)}function IFt(){let e=0;return function(){return e=e+1&2147483647,`req-${e.toString(36)}`}}function CFt(t,e){return function(r){return r.headers[t]||e(r)}}fCe.exports={getGenReqId:vFt,reqIdGenFactory:SFt}});var gCe=E((t4r,hCe)=>{"use strict";var pCe=12,TFt=0,C9=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,127,63,63,63,0,31,15,15,15,7,7,7];function wFt(t){var e=t.indexOf("%");if(e===-1)return t;for(var r=t.length,n="",s=0,i=0,a=e,o=pCe;e>-1&&e>10),56320+(i&1023)),i=0,s=e+3,e=a=t.indexOf("%",s);else{if(o===TFt)return null;if(e+=3,e{"use strict";var ACe=gCe(),yCe=/\+/g,xCe=function(){};xCe.prototype=Object.create(null);function NFt(t){let e=new xCe;if(typeof t!="string")return e;let r=t.length,n="",s="",i=-1,a=-1,o=!1,c=!1,u=!1,l=!1,d=!1,f=0;for(let p=0;pi,d||(a=p),n=t.slice(i+1,a),d||n.length>0){u&&(n=n.replace(yCe," ")),o&&(n=ACe(n)||n),d&&(s=t.slice(a+1,p),l&&(s=s.replace(yCe," ")),c&&(s=ACe(s)||s));let m=e[n];m===void 0?e[n]=s:m.pop?m.push(s):e[n]=[m,s]}s="",i=p,a=p,o=!1,c=!1,u=!1,l=!1}else f===61?a<=i?a=p:c=!0:f===43?a>i?l=!0:u=!0:f===37&&(a>i?c=!0:o=!0);return e}bCe.exports=NFt});var SCe=E((n4r,_Ce)=>{var il=Array.from({length:256},(t,e)=>"%"+((e<16?"0":"")+e.toString(16)).toUpperCase()),OFt=new Int8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0]);function PFt(t){let e=t.length;if(e===0)return"";let r="",n=0,s=0;e:for(;s>6]+il[128|i&63];continue}if(i<55296||i>=57344){n=s+1,r+=il[224|i>>12]+il[128|i>>6&63]+il[128|i&63];continue}if(++s,s>=e)throw new Error("URI malformed");let a=t.charCodeAt(s)&1023;n=s+1,i=65536+((i&1023)<<10|a),r+=il[240|i>>18]+il[128|i>>12&63]+il[128|i>>6&63]+il[128|i&63]}return n===0?t:n{"use strict";var{encodeString:T9}=SCe();function vCe(t){let e=typeof t;return e==="string"?T9(t):e==="bigint"?t.toString():e==="boolean"?t?"true":"false":e==="number"&&Number.isFinite(t)?t<1e21?""+t:T9(""+t):""}function kFt(t){let e="";if(t===null||typeof t!="object")return e;let r="&",n=Object.keys(t),s=n.length,i=0;for(let a=0;a{"use strict";var TCe=ECe(),wCe=CCe(),RCe={parse:TCe,stringify:wCe};hS.exports=RCe;hS.exports.default=RCe;hS.exports.parse=TCe;hS.exports.stringify=wCe});var PCe=E(OCe=>{"use strict";Object.defineProperty(OCe,"__esModule",{value:!0})});var kCe=E(gS=>{"use strict";Object.defineProperty(gS,"__esModule",{value:!0});gS.types=void 0;var DFt;(function(t){t[t.ROOT=0]="ROOT",t[t.GROUP=1]="GROUP",t[t.POSITION=2]="POSITION",t[t.SET=3]="SET",t[t.RANGE=4]="RANGE",t[t.REPETITION=5]="REPETITION",t[t.REFERENCE=6]="REFERENCE",t[t.CHAR=7]="CHAR"})(DFt=gS.types||(gS.types={}))});var BCe=E(DCe=>{"use strict";Object.defineProperty(DCe,"__esModule",{value:!0})});var Dd=E(kd=>{"use strict";var BFt=kd&&kd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),w9=kd&&kd.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&BFt(e,t,r)};Object.defineProperty(kd,"__esModule",{value:!0});w9(PCe(),kd);w9(kCe(),kd);w9(BCe(),kd)});var IP=E($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.anyChar=$i.notWhitespace=$i.whitespace=$i.notInts=$i.ints=$i.notWords=$i.words=void 0;var Hr=Dd(),LCe=()=>[{type:Hr.types.RANGE,from:48,to:57}],MCe=()=>[{type:Hr.types.CHAR,value:95},{type:Hr.types.RANGE,from:97,to:122},{type:Hr.types.RANGE,from:65,to:90},{type:Hr.types.RANGE,from:48,to:57}],WCe=()=>[{type:Hr.types.CHAR,value:9},{type:Hr.types.CHAR,value:10},{type:Hr.types.CHAR,value:11},{type:Hr.types.CHAR,value:12},{type:Hr.types.CHAR,value:13},{type:Hr.types.CHAR,value:32},{type:Hr.types.CHAR,value:160},{type:Hr.types.CHAR,value:5760},{type:Hr.types.RANGE,from:8192,to:8202},{type:Hr.types.CHAR,value:8232},{type:Hr.types.CHAR,value:8233},{type:Hr.types.CHAR,value:8239},{type:Hr.types.CHAR,value:8287},{type:Hr.types.CHAR,value:12288},{type:Hr.types.CHAR,value:65279}],LFt=()=>[{type:Hr.types.CHAR,value:10},{type:Hr.types.CHAR,value:13},{type:Hr.types.CHAR,value:8232},{type:Hr.types.CHAR,value:8233}];$i.words=()=>({type:Hr.types.SET,set:MCe(),not:!1});$i.notWords=()=>({type:Hr.types.SET,set:MCe(),not:!0});$i.ints=()=>({type:Hr.types.SET,set:LCe(),not:!1});$i.notInts=()=>({type:Hr.types.SET,set:LCe(),not:!0});$i.whitespace=()=>({type:Hr.types.SET,set:WCe(),not:!1});$i.notWhitespace=()=>({type:Hr.types.SET,set:WCe(),not:!0});$i.anyChar=()=>({type:Hr.types.SET,set:LFt(),not:!0})});var FCe=E(oc=>{"use strict";var MFt=oc&&oc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),WFt=oc&&oc.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),$Ft=oc&&oc.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&MFt(e,t,r);return WFt(e,t),e};Object.defineProperty(oc,"__esModule",{value:!0});oc.tokenizeClass=oc.strToChars=void 0;var $Ce=Dd(),Xy=$Ft(IP()),FFt="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";oc.strToChars=t=>{let e=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;return t.replace(e,(r,n,s,i,a,o,c)=>{if(s)return r;let u=n?8:i?parseInt(i,16):a?parseInt(a,16):o?FFt.indexOf(o):{0:0,t:9,n:10,v:11,f:12,r:13}[c],l=String.fromCharCode(u);return/[[\]{}^$.|?*+()]/.test(l)?`\\${l}`:l})};oc.tokenizeClass=(t,e)=>{var r,n,s,i,a,o,c;let u=[],l,d,f=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(l=f.exec(t))!==null;){let p=(c=(o=(a=(i=(s=(n=(r=l[1]&&Xy.words())!==null&&r!==void 0?r:l[2]&&Xy.ints())!==null&&n!==void 0?n:l[3]&&Xy.whitespace())!==null&&s!==void 0?s:l[4]&&Xy.notWords())!==null&&i!==void 0?i:l[5]&&Xy.notInts())!==null&&a!==void 0?a:l[6]&&Xy.notWhitespace())!==null&&o!==void 0?o:l[7]&&{type:$Ce.types.RANGE,from:(l[8]||l[9]).charCodeAt(0),to:(d=l[10]).charCodeAt(d.length-1)})!==null&&c!==void 0?c:(d=l[16])&&{type:$Ce.types.CHAR,value:d.charCodeAt(0)};if(p)u.push(p);else return[u,f.lastIndex]}throw new SyntaxError(`Invalid regular expression: /${e}/: Unterminated character class`)}});var R9=E(al=>{"use strict";var UFt=al&&al.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),qFt=al&&al.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qCe=al&&al.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&UFt(e,t,r);return qFt(e,t),e};Object.defineProperty(al,"__esModule",{value:!0});al.tokenizer=void 0;var UCe=qCe(FCe()),Ai=Dd(),oh=qCe(IP());al.tokenizer=t=>{let e=0,r,n={type:Ai.types.ROOT,stack:[]},s=n,i=n.stack,a=[],o=[],c=0,u=d=>{throw new SyntaxError(`Invalid regular expression: /${t}/: Nothing to repeat at column ${d-1}`)},l=UCe.strToChars(t);for(;es){let i=r.stack.splice(r.index+1);for(let a of n.slice(s))r.stack.push({type:Ai.types.CHAR,value:a.charCodeAt(0)});r.stack.push(...i)}}}}});var HCe=E(Fi=>{"use strict";var HFt=Fi&&Fi.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),QFt=Fi&&Fi.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),GFt=Fi&&Fi.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&HFt(e,t,r);return QFt(e,t),e};Object.defineProperty(Fi,"__esModule",{value:!0});Fi.NOTANYCHAR=Fi.WHITESPACE=Fi.WORDS=Fi.INTS=void 0;var CP=GFt(IP()),jCe=Dd();function TP(t){let e={},r=0;for(let n of t)n.type===jCe.types.CHAR&&(e[n.value]=!0),n.type===jCe.types.RANGE&&(e[`${n.from}-${n.to}`]=!0),r+=1;return{lookup:()=>Object.assign({},e),len:r}}Fi.INTS=TP(CP.ints().set);Fi.WORDS=TP(CP.words().set);Fi.WHITESPACE=TP(CP.whitespace().set);Fi.NOTANYCHAR=TP(CP.anyChar().set)});var GCe=E(cc=>{"use strict";var KFt=cc&&cc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),VFt=cc&&cc.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),zFt=cc&&cc.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&KFt(e,t,r);return VFt(e,t),e};Object.defineProperty(cc,"__esModule",{value:!0});cc.writeSetTokens=cc.setChar=void 0;var OP=Dd(),wP=zFt(HCe());function NP(t){return t===94?"\\^":t===92?"\\\\":t===93?"\\]":t===45?"\\-":String.fromCharCode(t)}cc.setChar=NP;function RP(t,{lookup:e,len:r}){if(r!==t.length)return!1;let n=e();for(let s of t){if(s.type===OP.types.SET)return!1;let i=s.type===OP.types.CHAR?s.value:`${s.from}-${s.to}`;if(n[i])n[i]=!1;else return!1}return!0}function QCe(t,e=!1){if(RP(t.set,wP.INTS))return t.not?"\\D":"\\d";if(RP(t.set,wP.WORDS))return t.not?"\\W":"\\w";if(t.not&&RP(t.set,wP.NOTANYCHAR))return".";if(RP(t.set,wP.WHITESPACE))return t.not?"\\S":"\\s";let r="";for(let s=0;s{"use strict";Object.defineProperty(Zy,"__esModule",{value:!0});Zy.reconstruct=void 0;var jp=Dd(),N9=GCe(),KCe=t=>t.map(Zy.reconstruct).join(""),VCe=t=>{if("options"in t)return t.options.map(KCe).join("|");if("stack"in t)return KCe(t.stack);throw new Error("options or stack must be Root or Group token")};Zy.reconstruct=t=>{switch(t.type){case jp.types.ROOT:return VCe(t);case jp.types.CHAR:{let e=String.fromCharCode(t.value);return(/[[\\{}$^.|?*+()]/.test(e)?"\\":"")+e}case jp.types.POSITION:return t.value==="^"||t.value==="$"?t.value:`\\${t.value}`;case jp.types.REFERENCE:return`\\${t.value}`;case jp.types.SET:return N9.writeSetTokens(t);case jp.types.GROUP:return`(${t.remember?"":t.followedBy?"?=":t.notFollowedBy?"?!":"?:"}${VCe(t)})`;case jp.types.REPETITION:{let{min:e,max:r}=t,n;return e===0&&r===1?n="?":e===1&&r===1/0?n="+":e===0&&r===1/0?n="*":r===1/0?n=`{${e},}`:e===r?n=`{${e}}`:n=`{${e},${r}}`,`${Zy.reconstruct(t.value)}${n}`}case jp.types.RANGE:return`${N9.setChar(t.from)}-${N9.setChar(t.to)}`;default:throw new Error(`Invalid token type ${t}`)}}});var JCe=E((uc,PP)=>{"use strict";var JFt=uc&&uc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),P9=uc&&uc.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&JFt(e,t,r)};Object.defineProperty(uc,"__esModule",{value:!0});uc.types=void 0;var zCe=Dd();Object.defineProperty(uc,"types",{enumerable:!0,get:function(){return zCe.types}});P9(R9(),uc);P9(O9(),uc);var YCe=R9(),XFt=O9();P9(Dd(),uc);uc.default=YCe.tokenizer;PP.exports=YCe.tokenizer;PP.exports.types=zCe.types;PP.exports.reconstruct=XFt.reconstruct});var ZCe=E((g4r,kP)=>{"use strict";var XCe=JCe(),ZFt=XCe.types;function k9(t,e){e||(e={});let r=e.limit===void 0?25:e.limit;eUt(t)?t=t.source:typeof t!="string"&&(t=String(t));try{t=XCe(t)}catch{return!1}let n=0;return function s(i,a){let o,c,u;if(i.type===ZFt.REPETITION&&(a++,n++,a>1||n>r))return!1;if(i.options){for(o=0,u=i.options.length;o{"use strict";eTe.exports={name:"__fmw_internal_strategy_merged_tree_http_method__",storage:function(){let t={};return{get:e=>t[e]||null,set:(e,r)=>{t[e]=r}}},deriveConstraint:t=>t.method,mustMatchWhenDerived:!0}});var oTe=E((y4r,aTe)=>{"use strict";var tTe=Ko(),rTe=DP(),nTe=Symbol("treeData");function sTe(t,e=""){let r="",n=Object.keys(t);for(let s=0;s{for(let u of o)(0,O_.checkReportMissingProp)(t,u)}):(r.if((0,RU._)`${c} && (${(0,O_.checkMissingProp)(t,o,i)})`),(0,O_.reportMissingProp)(t,i),r.else())}}Xu.validatePropertyDeps=$1e;function F1e(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,eLt.alwaysValidSchema)(i,e[o])||(r.if((0,O_.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}Xu.validateSchemaDeps=F1e;Xu.default=tLt});var j1e=E(NU=>{"use strict";Object.defineProperty(NU,"__esModule",{value:!0});var q1e=Et(),nLt=Kt(),sLt={message:"property name must be valid",params:({params:t})=>(0,q1e._)`{propertyName: ${t.propertyName}}`},iLt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:sLt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,nLt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,q1e.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};NU.default=iLt});var PU=E(OU=>{"use strict";Object.defineProperty(OU,"__esModule",{value:!0});var NO=di(),zc=Et(),aLt=Zo(),OO=Kt(),oLt={message:"must NOT have additional properties",params:({params:t})=>(0,zc._)`{additionalProperty: ${t.additionalProperty}}`},cLt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:oLt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,OO.alwaysValidSchema)(a,r))return;let u=(0,NO.allSchemaProperties)(n.properties),l=(0,NO.allSchemaProperties)(n.patternProperties);d(),t.ok((0,zc._)`${i} === ${aLt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,OO.schemaRefOrVal)(a,n.properties,"properties");g=(0,NO.isOwnProperty)(e,b,A)}else u.length?g=(0,zc.or)(...u.map(b=>(0,zc._)`${A} === ${b}`)):g=zc.nil;return l.length&&(g=(0,zc.or)(g,...l.map(b=>(0,zc._)`${(0,NO.usePattern)(t,b)}.test(${A})`))),(0,zc.not)(g)}function p(A){e.code((0,zc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,OO.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,zc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,zc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:OO.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};OU.default=cLt});var G1e=E(kU=>{"use strict";Object.defineProperty(kU,"__esModule",{value:!0});var uLt=Ay(),H1e=di(),DU=Kt(),Q1e=PU(),lLt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&Q1e.default.code(new uLt.KeywordCxt(i,Q1e.default,"additionalProperties"));let a=(0,H1e.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=DU.mergeEvaluated.props(e,(0,DU.toHash)(a),i.props));let o=a.filter(d=>!(0,DU.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,H1e.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};kU.default=lLt});var Y1e=E(LU=>{"use strict";Object.defineProperty(LU,"__esModule",{value:!0});var V1e=di(),PO=Et(),z1e=Kt(),K1e=Kt(),dLt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,V1e.allSchemaProperties)(r),c=o.filter(h=>(0,z1e.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof PO.Name)&&(i.props=(0,K1e.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,z1e.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,PO._)`${(0,V1e.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:K1e.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,PO._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,PO.not)(l),()=>e.break())})})}}};LU.default=dLt});var J1e=E(BU=>{"use strict";Object.defineProperty(BU,"__esModule",{value:!0});var fLt=Kt(),pLt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,fLt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};BU.default=pLt});var X1e=E(MU=>{"use strict";Object.defineProperty(MU,"__esModule",{value:!0});var mLt=di(),hLt={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:mLt.validateUnion,error:{message:"must match a schema in anyOf"}};MU.default=hLt});var Z1e=E(WU=>{"use strict";Object.defineProperty(WU,"__esModule",{value:!0});var DO=Et(),gLt=Kt(),ALt={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,DO._)`{passingSchemas: ${t.passing}}`},yLt={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:ALt,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,gLt.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,DO._)`${c} && ${a}`).assign(a,!1).assign(o,(0,DO._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,DO.Name)})})}}};WU.default=yLt});var e_e=E($U=>{"use strict";Object.defineProperty($U,"__esModule",{value:!0});var xLt=Kt(),bLt={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,xLt.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};$U.default=bLt});var n_e=E(FU=>{"use strict";Object.defineProperty(FU,"__esModule",{value:!0});var kO=Et(),r_e=Kt(),ELt={message:({params:t})=>(0,kO.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,kO._)`{failingKeyword: ${t.ifClause}}`},_Lt={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:ELt,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,r_e.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=t_e(n,"then"),i=t_e(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,kO.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,kO._)`${l}`):t.setParams({ifClause:l})}}}};function t_e(t,e){let r=t.schema[e];return r!==void 0&&!(0,r_e.alwaysValidSchema)(t,r)}FU.default=_Lt});var s_e=E(UU=>{"use strict";Object.defineProperty(UU,"__esModule",{value:!0});var SLt=Kt(),vLt={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,SLt.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};UU.default=vLt});var i_e=E(qU=>{"use strict";Object.defineProperty(qU,"__esModule",{value:!0});var CLt=vU(),ILt=L1e(),TLt=CU(),wLt=M1e(),RLt=W1e(),NLt=U1e(),OLt=j1e(),PLt=PU(),DLt=G1e(),kLt=Y1e(),LLt=J1e(),BLt=X1e(),MLt=Z1e(),WLt=e_e(),$Lt=n_e(),FLt=s_e();function ULt(t=!1){let e=[LLt.default,BLt.default,MLt.default,WLt.default,$Lt.default,FLt.default,OLt.default,PLt.default,NLt.default,DLt.default,kLt.default];return t?e.push(ILt.default,wLt.default):e.push(CLt.default,TLt.default),e.push(RLt.default),e}qU.default=ULt});var a_e=E(jU=>{"use strict";Object.defineProperty(jU,"__esModule",{value:!0});var ls=Et(),qLt={message:({schemaCode:t})=>(0,ls.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ls._)`{format: ${t}}`},jLt={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:qLt,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ls._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,ls._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,ls._)`${h}.type || "string"`).assign(g,(0,ls._)`${h}.validate`),()=>r.assign(A,(0,ls._)`"string"`).assign(g,h)),t.fail$data((0,ls.or)(b(),y()));function b(){return c.strictSchema===!1?ls.nil:(0,ls._)`${a} && !${g}`}function y(){let x=l.$async?(0,ls._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ls._)`${g}(${n})`,v=(0,ls._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,ls._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function y(v){let C=v instanceof RegExp?(0,ls.regexpCode)(v):c.code.formats?(0,ls._)`${c.code.formats}${(0,ls.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:C});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,ls._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ls._)`await ${g}(${n})`}return typeof A=="function"?(0,ls._)`${g}(${n})`:(0,ls._)`${g}.test(${n})`}}}};jU.default=jLt});var o_e=E(HU=>{"use strict";Object.defineProperty(HU,"__esModule",{value:!0});var HLt=a_e(),QLt=[HLt.default];HU.default=QLt});var c_e=E(Ey=>{"use strict";Object.defineProperty(Ey,"__esModule",{value:!0});Ey.contentVocabulary=Ey.metadataVocabulary=void 0;Ey.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ey.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var l_e=E(QU=>{"use strict";Object.defineProperty(QU,"__esModule",{value:!0});var GLt=A1e(),VLt=O1e(),zLt=i_e(),KLt=o_e(),u_e=c_e(),YLt=[GLt.default,VLt.default,(0,zLt.default)(),KLt.default,u_e.metadataVocabulary,u_e.contentVocabulary];QU.default=YLt});var GU=E(LO=>{"use strict";Object.defineProperty(LO,"__esModule",{value:!0});LO.DiscrError=void 0;var d_e;(function(t){t.Tag="tag",t.Mapping="mapping"})(d_e||(LO.DiscrError=d_e={}))});var p_e=E(zU=>{"use strict";Object.defineProperty(zU,"__esModule",{value:!0});var _y=Et(),VU=GU(),f_e=Qm(),JLt=Ed(),XLt=Kt(),ZLt={message:({params:{discrError:t,tagName:e}})=>t===VU.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,_y._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},eBt={keyword:"discriminator",type:"object",schemaType:"object",error:ZLt,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,_y._)`${r}${(0,_y.getProperty)(o)}`);e.if((0,_y._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:VU.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,_y._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:VU.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,_y.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x{tBt.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var g_e=E((Dn,KU)=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.MissingRefError=Dn.ValidationError=Dn.CodeGen=Dn.Name=Dn.nil=Dn.stringify=Dn.str=Dn._=Dn.KeywordCxt=Dn.Ajv=void 0;var rBt=sU(),nBt=l_e(),sBt=p_e(),h_e=m_e(),iBt=["/properties"],BO="http://json-schema.org/draft-07/schema",Sy=class extends rBt.default{_addVocabularies(){super._addVocabularies(),nBt.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(sBt.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(h_e,iBt):h_e;this.addMetaSchema(e,BO,!1),this.refs["http://json-schema.org/schema"]=BO}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(BO)?BO:void 0)}};Dn.Ajv=Sy;KU.exports=Dn=Sy;KU.exports.Ajv=Sy;Object.defineProperty(Dn,"__esModule",{value:!0});Dn.default=Sy;var aBt=Ay();Object.defineProperty(Dn,"KeywordCxt",{enumerable:!0,get:function(){return aBt.KeywordCxt}});var vy=Et();Object.defineProperty(Dn,"_",{enumerable:!0,get:function(){return vy._}});Object.defineProperty(Dn,"str",{enumerable:!0,get:function(){return vy.str}});Object.defineProperty(Dn,"stringify",{enumerable:!0,get:function(){return vy.stringify}});Object.defineProperty(Dn,"nil",{enumerable:!0,get:function(){return vy.nil}});Object.defineProperty(Dn,"Name",{enumerable:!0,get:function(){return vy.Name}});Object.defineProperty(Dn,"CodeGen",{enumerable:!0,get:function(){return vy.CodeGen}});var oBt=y_();Object.defineProperty(Dn,"ValidationError",{enumerable:!0,get:function(){return oBt.default}});var cBt=Ed();Object.defineProperty(Dn,"MissingRefError",{enumerable:!0,get:function(){return cBt.default}})});var Sd=E(P_=>{"use strict";Object.defineProperty(P_,"__esModule",{value:!0});P_.checkMetadata=void 0;var uBt=Kt(),lBt={keyword:"metadata",schemaType:"object",code(t){A_e(t);let{gen:e,schema:r,it:n}=t;if((0,uBt.alwaysValidSchema)(n,r))return;let s=e.name("valid");t.subschema({keyword:"metadata",jtdMetadata:!0},s),t.ok(s)}};function A_e({it:t,keyword:e},r){if(t.jtdMetadata!==r)throw new Error(`JTD: "${e}" cannot be used in this schema location`)}P_.checkMetadata=A_e;P_.default=lBt});var MO=E(k_=>{"use strict";Object.defineProperty(k_,"__esModule",{value:!0});k_.hasRef=void 0;var y_e=Qm(),D_=Et(),dBt=Ed(),x_e=Zo(),b_e=aU(),fBt=Sd(),pBt={keyword:"ref",schemaType:"string",code(t){(0,fBt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{schemaEnv:{root:a}}=i,o=e.name("valid");s.nullable?(e.var(o,(0,D_._)`${r} === null`),e.if((0,D_.not)(o),c)):(e.var(o,!1),c()),t.ok(o);function c(){var d;let f=(d=a.schema.definitions)===null||d===void 0?void 0:d[n];if(!f)throw new dBt.default(i.opts.uriResolver,"",n,`No definition ${n}`);YU(f)||!i.opts.inlineRefs?u(f):l(f)}function u(d){let f=y_e.compileSchema.call(i.self,new y_e.SchemaEnv({schema:d,root:a,schemaPath:`/definitions/${n}`})),p=(0,b_e.getValidate)(t,f),m=e.const("_errs",x_e.default.errors);(0,b_e.callRef)(t,p,f,f.$async),e.assign(o,(0,D_._)`${m} === ${x_e.default.errors}`)}function l(d){let f=e.scopeValue("schema",i.opts.code.source===!0?{ref:d,code:(0,D_.stringify)(d)}:{ref:d});t.subschema({schema:d,dataTypes:[],schemaPath:D_.nil,topSchemaRef:f,errSchemaPath:`/definitions/${n}`},o)}}};function YU(t){for(let e in t){let r;if(e==="ref"||typeof(r=t[e])=="object"&&YU(r))return!0}return!1}k_.hasRef=YU;k_.default=pBt});var XU=E(JU=>{"use strict";Object.defineProperty(JU,"__esModule",{value:!0});var mBt=/t|\s/i,hBt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,gBt=/^(\d\d):(\d\d):(\d\d)(?:\.\d+)?(?:z|([+-]\d\d)(?::?(\d\d))?)$/i,ABt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function __e(t,e){let r=t.split(mBt);return r.length===2&&E_e(r[0])&&yBt(r[1])||e&&r.length===1&&E_e(r[0])}JU.default=__e;function E_e(t){let e=hBt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&(s<=ABt[n]||n===2&&s===29&&(r%100===0?r%400===0:r%4===0))}function yBt(t){let e=gBt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3],i=+(e[4]||0),a=+(e[5]||0);return r<=23&&n<=59&&s<=59||r-i===23&&n-a===59&&s===60}__e.code='require("ajv/dist/runtime/timestamp").default'});var Cy=E(Op=>{"use strict";Object.defineProperty(Op,"__esModule",{value:!0});Op.typeErrorParams=Op.typeErrorMessage=Op.typeError=void 0;var xBt=Et();function bBt(t){return{message:e=>S_e(e,t),params:e=>v_e(e,t)}}Op.typeError=bBt;function S_e({parentSchema:t},e){return t?.nullable?`must be ${e} or null`:`must be ${e}`}Op.typeErrorMessage=S_e;function v_e({parentSchema:t},e){return(0,xBt._)`{type: ${e}, nullable: ${!!t?.nullable}}`}Op.typeErrorParams=v_e});var ZU=E(Iy=>{"use strict";Object.defineProperty(Iy,"__esModule",{value:!0});Iy.intRange=void 0;var bo=Et(),EBt=XU(),_Bt=Kt(),SBt=Sd(),C_e=Cy();Iy.intRange={int8:[-128,127,3],uint8:[0,255,3],int16:[-32768,32767,5],uint16:[0,65535,5],int32:[-2147483648,2147483647,10],uint32:[0,4294967295,10]};var vBt={message:t=>(0,C_e.typeErrorMessage)(t,t.schema),params:t=>(0,C_e.typeErrorParams)(t,t.schema)};function CBt(t){let{gen:e,data:r,it:n}=t,{timestamp:s,allowDate:i}=n.opts;if(s==="date")return(0,bo._)`${r} instanceof Date `;let a=(0,_Bt.useFunc)(e,EBt.default),o=i?(0,bo._)`, true`:bo.nil,c=(0,bo._)`typeof ${r} == "string" && ${a}(${r}${o})`;return s==="string"?c:(0,bo.or)((0,bo._)`${r} instanceof Date`,c)}var IBt={keyword:"type",schemaType:"string",error:vBt,code(t){(0,SBt.checkMetadata)(t);let{data:e,schema:r,parentSchema:n,it:s}=t,i;switch(r){case"boolean":case"string":i=(0,bo._)`typeof ${e} == ${r}`;break;case"timestamp":{i=CBt(t);break}case"float32":case"float64":i=(0,bo._)`typeof ${e} == "number"`;break;default:{let a=r;if(i=(0,bo._)`typeof ${e} == "number" && isFinite(${e}) && !(${e} % 1)`,!s.opts.int32range&&(a==="int32"||a==="uint32"))a==="uint32"&&(i=(0,bo._)`${i} && ${e} >= 0`);else{let[o,c]=Iy.intRange[a];i=(0,bo._)`${i} && ${e} >= ${o} && ${e} <= ${c}`}}}t.pass(n.nullable?(0,bo.or)((0,bo._)`${e} === null`,i):i)}};Iy.default=IBt});var wy=E(Ty=>{"use strict";Object.defineProperty(Ty,"__esModule",{value:!0});Ty.checkNullableObject=Ty.checkNullable=void 0;var WO=Et();function I_e({gen:t,data:e,parentSchema:r},n=WO.nil){let s=t.name("valid");return r.nullable?(t.let(s,(0,WO._)`${e} === null`),n=(0,WO.not)(s)):t.let(s,!1),[s,n]}Ty.checkNullable=I_e;function TBt(t,e){let[r,n]=I_e(t,e);return[r,(0,WO._)`${n} && typeof ${t.data} == "object" && !Array.isArray(${t.data})`]}Ty.checkNullableObject=TBt});var T_e=E(e7=>{"use strict";Object.defineProperty(e7,"__esModule",{value:!0});var Pp=Et(),wBt=Sd(),RBt=wy(),NBt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Pp._)`{allowedValues: ${t}}`},OBt={keyword:"enum",schemaType:"array",error:NBt,code(t){(0,wBt.checkMetadata)(t);let{gen:e,data:r,schema:n,schemaValue:s,parentSchema:i,it:a}=t;if(n.length===0)throw new Error("enum must have non-empty array");if(n.length!==new Set(n).size)throw new Error("enum items must be unique");let o,c=(0,Pp._)`typeof ${r} == "string"`;if(n.length>=a.opts.loopEnum){let l;[o,l]=(0,RBt.checkNullable)(t,c),e.if(l,u)}else{if(!Array.isArray(n))throw new Error("ajv implementation error");o=(0,Pp.and)(c,(0,Pp.or)(...n.map(l=>(0,Pp._)`${r} === ${l}`))),i.nullable&&(o=(0,Pp.or)((0,Pp._)`${r} === null`,o))}t.pass(o);function u(){e.forOf("v",s,l=>e.if((0,Pp._)`${o} = ${r} === ${l}`,()=>e.break()))}}};e7.default=OBt});var R_e=E(t7=>{"use strict";Object.defineProperty(t7,"__esModule",{value:!0});var PBt=Kt(),DBt=di(),w_e=Et(),kBt=Sd(),LBt=wy(),BBt=Cy(),MBt={keyword:"elements",schemaType:"object",error:(0,BBt.typeError)("array"),code(t){(0,kBt.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t;if((0,PBt.alwaysValidSchema)(s,n))return;let[i]=(0,LBt.checkNullable)(t);e.if((0,w_e.not)(i),()=>e.if((0,w_e._)`Array.isArray(${r})`,()=>e.assign(i,(0,DBt.validateArray)(t)),()=>t.error())),t.ok(i)}};t7.default=MBt});var n7=E(Dp=>{"use strict";Object.defineProperty(Dp,"__esModule",{value:!0});Dp.validateProperties=Dp.error=void 0;var r7=di(),N_e=Kt(),vd=Et(),WBt=Sd(),$Bt=wy(),O_e=Cy(),Ry;(function(t){t.Additional="additional",t.Missing="missing"})(Ry||(Ry={}));Dp.error={message:t=>{let{params:e}=t;return e.propError?e.propError===Ry.Additional?"must NOT have additional properties":`must have property '${e.missingProperty}'`:(0,O_e.typeErrorMessage)(t,"object")},params:t=>{let{params:e}=t;return e.propError?e.propError===Ry.Additional?(0,vd._)`{error: ${e.propError}, additionalProperty: ${e.additionalProperty}}`:(0,vd._)`{error: ${e.propError}, missingProperty: ${e.missingProperty}}`:(0,O_e.typeErrorParams)(t,"object")}};var FBt={keyword:"properties",schemaType:"object",error:Dp.error,code:P_e};function P_e(t){(0,WBt.checkMetadata)(t);let{gen:e,data:r,parentSchema:n,it:s}=t,{additionalProperties:i,nullable:a}=n;if(s.jtdDiscriminator&&a)throw new Error("JTD: nullable inside discriminator mapping");if(p())throw new Error("JTD: properties and optionalProperties have common members");let[o,c]=m("properties"),[u,l]=m("optionalProperties");if(c.length===0&&l.length===0&&i)return;let[d,f]=s.jtdDiscriminator===void 0?(0,$Bt.checkNullableObject)(t,r):[e.let("valid",!1),!0];e.if(f,()=>e.assign(d,!0).block(()=>{h(c,"properties",!0),h(l,"optionalProperties"),i||g()})),t.pass(d);function p(){let y=n.properties,x=n.optionalProperties;if(!(y&&x))return!1;for(let v in y)if(Object.prototype.hasOwnProperty.call(x,v))return!0;return!1}function m(y){let x=n[y],v=x?(0,r7.allSchemaProperties)(x):[];if(s.jtdDiscriminator&&v.some(R=>R===s.jtdDiscriminator))throw new Error(`JTD: discriminator tag used in ${y}`);let C=v.filter(R=>!(0,N_e.alwaysValidSchema)(s,x[R]));return[v,C]}function h(y,x,v){let C=e.var("valid");for(let w of y)e.if((0,r7.propertyInData)(e,r,w,s.opts.ownProperties),()=>A(w,x,C),()=>R(w)),t.ok(C);function R(w){v?(e.assign(C,!1),t.error(!1,{propError:Ry.Missing,missingProperty:w},{schemaPath:w})):e.assign(C,!0)}}function A(y,x,v){t.subschema({keyword:x,schemaProp:y,dataProp:y},v)}function g(){e.forIn("key",r,y=>{let x=b(y,o,"properties",s.jtdDiscriminator),v=b(y,u,"optionalProperties"),C=x===!0?v:v===!0?x:(0,vd.and)(x,v);e.if(C,()=>{s.opts.removeAdditional?e.code((0,vd._)`delete ${r}[${y}]`):(t.error(!1,{propError:Ry.Additional,additionalProperty:y},{instancePath:y,parentSchema:!0}),s.opts.allErrors||e.break())})})}function b(y,x,v,C){let R;if(x.length>8){let w=(0,N_e.schemaRefOrVal)(s,n[v],v);R=(0,vd.not)((0,r7.isOwnProperty)(e,w,y)),C!==void 0&&(R=(0,vd.and)(R,(0,vd._)`${y} !== ${C}`))}else if(x.length||C!==void 0){let w=C===void 0?x:[C].concat(x);R=(0,vd.and)(...w.map(N=>(0,vd._)`${y} !== ${N}`))}else R=!0;return R}}Dp.validateProperties=P_e;Dp.default=FBt});var k_e=E(s7=>{"use strict";Object.defineProperty(s7,"__esModule",{value:!0});var D_e=n7(),UBt={keyword:"optionalProperties",schemaType:"object",error:D_e.error,code(t){t.parentSchema.properties||(0,D_e.validateProperties)(t)}};s7.default=UBt});var B_e=E(i7=>{"use strict";Object.defineProperty(i7,"__esModule",{value:!0});var Km=Et(),qBt=Sd(),jBt=wy(),L_e=Cy(),$O=GU(),HBt={message:t=>{let{schema:e,params:r}=t;return r.discrError?r.discrError===$O.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in mapping`:(0,L_e.typeErrorMessage)(t,"object")},params:t=>{let{schema:e,params:r}=t;return r.discrError?(0,Km._)`{error: ${r.discrError}, tag: ${e}, tagValue: ${r.tag}}`:(0,L_e.typeErrorParams)(t,"object")}},QBt={keyword:"discriminator",schemaType:"string",implements:["mapping"],error:HBt,code(t){(0,qBt.checkMetadata)(t);let{gen:e,data:r,schema:n,parentSchema:s}=t,[i,a]=(0,jBt.checkNullableObject)(t,r);e.if(a),o(),e.elseIf((0,Km.not)(i)),t.error(),e.endIf(),t.ok(i);function o(){let l=e.const("tag",(0,Km._)`${r}${(0,Km.getProperty)(n)}`);e.if((0,Km._)`${l} === undefined`),t.error(!1,{discrError:$O.DiscrError.Tag,tag:l}),e.elseIf((0,Km._)`typeof ${l} == "string"`),c(l),e.else(),t.error(!1,{discrError:$O.DiscrError.Tag,tag:l},{instancePath:n}),e.endIf()}function c(l){e.if(!1);for(let d in s.mapping)e.elseIf((0,Km._)`${l} === ${d}`),e.assign(i,u(d));e.else(),t.error(!1,{discrError:$O.DiscrError.Mapping,tag:l},{instancePath:n,schemaPath:"mapping",parentSchema:!0}),e.endIf()}function u(l){let d=e.name("valid");return t.subschema({keyword:"mapping",schemaProp:l,jtdDiscriminator:n},d),d}}};i7.default=QBt});var W_e=E(a7=>{"use strict";Object.defineProperty(a7,"__esModule",{value:!0});var M_e=Kt(),FO=Et(),GBt=Sd(),VBt=wy(),zBt=Cy(),KBt={keyword:"values",schemaType:"object",error:(0,zBt.typeError)("object"),code(t){(0,GBt.checkMetadata)(t);let{gen:e,data:r,schema:n,it:s}=t,[i,a]=(0,VBt.checkNullableObject)(t,r);(0,M_e.alwaysValidSchema)(s,n)?e.if((0,FO.not)((0,FO.or)(a,i)),()=>t.error()):(e.if(a),e.assign(i,o()),e.elseIf((0,FO.not)(i)),t.error(),e.endIf()),t.ok(i);function o(){let c=e.name("valid");if(s.allErrors){let l=e.let("valid",!0);return u(()=>e.assign(l,!1)),l}return e.var(c,!0),u(()=>e.break()),c;function u(l){e.forIn("key",r,d=>{t.subschema({keyword:"values",dataProp:d,dataPropType:M_e.Type.Str},c),e.if((0,FO.not)(c),l)})}}}};a7.default=KBt});var $_e=E(o7=>{"use strict";Object.defineProperty(o7,"__esModule",{value:!0});var YBt=di(),JBt={keyword:"union",schemaType:"array",trackErrors:!0,code:YBt.validateUnion,error:{message:"must match a schema in union"}};o7.default=JBt});var F_e=E(c7=>{"use strict";Object.defineProperty(c7,"__esModule",{value:!0});var XBt=MO(),ZBt=ZU(),e4t=T_e(),t4t=R_e(),r4t=n7(),n4t=k_e(),s4t=B_e(),i4t=W_e(),a4t=$_e(),o4t=Sd(),c4t=["definitions",XBt.default,ZBt.default,e4t.default,t4t.default,r4t.default,n4t.default,s4t.default,i4t.default,a4t.default,o4t.default,{keyword:"additionalProperties",schemaType:"boolean"},{keyword:"nullable",schemaType:"boolean"}];c7.default=c4t});var H_e=E(u7=>{"use strict";Object.defineProperty(u7,"__esModule",{value:!0});var Cd=t=>{let e={nullable:{type:"boolean"},metadata:{optionalProperties:{union:{elements:{ref:"schema"}}},additionalProperties:!0}};return t&&(e.definitions={values:{ref:"schema"}}),e},u4t=t=>({optionalProperties:Cd(t)}),l4t=t=>({properties:{ref:{type:"string"}},optionalProperties:Cd(t)}),d4t=t=>({properties:{type:{enum:["boolean","timestamp","string","float32","float64","int8","uint8","int16","uint16","int32","uint32"]}},optionalProperties:Cd(t)}),f4t=t=>({properties:{enum:{elements:{type:"string"}}},optionalProperties:Cd(t)}),p4t=t=>({properties:{elements:{ref:"schema"}},optionalProperties:Cd(t)}),q_e=t=>({properties:{properties:{values:{ref:"schema"}}},optionalProperties:{optionalProperties:{values:{ref:"schema"}},additionalProperties:{type:"boolean"},...Cd(t)}}),j_e=t=>({properties:{optionalProperties:{values:{ref:"schema"}}},optionalProperties:{additionalProperties:{type:"boolean"},...Cd(t)}}),m4t=t=>({properties:{discriminator:{type:"string"},mapping:{values:{metadata:{union:[q_e(!1),j_e(!1)]}}}},optionalProperties:Cd(t)}),h4t=t=>({properties:{values:{ref:"schema"}},optionalProperties:Cd(t)}),U_e=t=>({metadata:{union:[u4t,l4t,d4t,f4t,p4t,q_e,j_e,m4t,h4t].map(e=>e(t))}}),g4t={definitions:{schema:U_e(!1)},...U_e(!0)};u7.default=g4t});var l7=E(UO=>{"use strict";Object.defineProperty(UO,"__esModule",{value:!0});UO.jtdForms=void 0;UO.jtdForms=["elements","values","discriminator","properties","optionalProperties","enum","type","ref"]});var G_e=E(f7=>{"use strict";Object.defineProperty(f7,"__esModule",{value:!0});var d7=/[\\"\u0000-\u001f\u007f-\u009f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,A4t={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function Q_e(t){return d7.lastIndex=0,'"'+(d7.test(t)?t.replace(d7,e=>{let r=A4t[e];return typeof r=="string"?r:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)}):t)+'"'}f7.default=Q_e;Q_e.code='require("ajv/dist/runtime/quote").default'});var X_e=E(m7=>{"use strict";Object.defineProperty(m7,"__esModule",{value:!0});var y4t=l7(),z_e=Qm(),fr=Et(),x4t=Ed(),En=Zo(),b4t=di(),E4t=MO(),_4t=Kt(),S4t=G_e(),v4t={elements:I4t,values:T4t,discriminator:w4t,properties:V_e,optionalProperties:V_e,enum:L_,type:R4t,ref:O4t};function K_e(t,e){let r=z_e.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new fr.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("serialize"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:En.default.data},u;try{this._compilations.add(t),t.serializeName=o,a.func(o,En.default.data,!1,()=>{a.let(En.default.json,(0,fr.str)``),B_(c),a.return(En.default.json)}),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(En.default.scope)}return ${l}`;let f=new Function(`${En.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.serialize=f}catch(l){throw u&&this.logger.error("Error compiling serializer, function code:",u),delete t.serialize,delete t.serializeName,l}finally{this._compilations.delete(t)}return t}m7.default=K_e;function B_(t){let e;for(let r of y4t.jtdForms)if(r in t.schema){e=r;break}C4t(t,e?v4t[e]:D4t)}function C4t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);r.if((0,fr._)`${s} === undefined || ${s} === null`,()=>r.add(En.default.json,(0,fr._)`"null"`),()=>e(t))}function I4t(t){let{gen:e,schema:r,data:n}=t;e.add(En.default.json,(0,fr.str)`[`);let s=e.let("first",!0);e.forOf("el",n,i=>{p7(t,s),B_({...t,schema:r.elements,data:i})}),e.add(En.default.json,(0,fr.str)`]`)}function T4t(t){let{gen:e,schema:r,data:n}=t;e.add(En.default.json,(0,fr.str)`{`);let s=e.let("first",!0);e.forIn("key",n,i=>Y_e(t,i,r.values,s)),e.add(En.default.json,(0,fr.str)`}`)}function Y_e(t,e,r,n){let{gen:s,data:i}=t;p7(t,n),L_({...t,data:e}),s.add(En.default.json,(0,fr.str)`:`);let a=s.const("value",(0,fr._)`${i}${(0,fr.getProperty)(e)}`);B_({...t,schema:r,data:a})}function w4t(t){let{gen:e,schema:r,data:n}=t,{discriminator:s}=r;e.add(En.default.json,(0,fr.str)`{${JSON.stringify(s)}:`);let i=e.const("tag",(0,fr._)`${n}${(0,fr.getProperty)(s)}`);L_({...t,data:i}),e.if(!1);for(let a in r.mapping){e.elseIf((0,fr._)`${i} === ${a}`);let o=r.mapping[a];J_e({...t,schema:o},s)}e.endIf(),e.add(En.default.json,(0,fr.str)`}`)}function V_e(t){let{gen:e}=t;e.add(En.default.json,(0,fr.str)`{`),J_e(t),e.add(En.default.json,(0,fr.str)`}`)}function J_e(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a}=n,o=f(i),c=f(a),u=p(o.concat(c)),l=!e,d;for(let g of o)l?l=!1:r.add(En.default.json,(0,fr.str)`,`),h(g,i[g],m(g));l&&(d=r.let("first",!0));for(let g of c){let b=m(g);r.if((0,fr.and)((0,fr._)`${b} !== undefined`,(0,b4t.isOwnProperty)(r,s,g)),()=>{p7(t,d),h(g,a[g],b)})}n.additionalProperties&&r.forIn("key",s,g=>r.if(A(g,u),()=>Y_e(t,g,{},d)));function f(g){return g?Object.keys(g):[]}function p(g){if(e&&g.push(e),new Set(g).size!==g.length)throw new Error("JTD: properties/optionalProperties/disciminator overlap");return g}function m(g){return r.const("value",(0,fr._)`${s}${(0,fr.getProperty)(g)}`)}function h(g,b,y){r.add(En.default.json,(0,fr.str)`${JSON.stringify(g)}:`),B_({...t,schema:b,data:y})}function A(g,b){return b.length?(0,fr.and)(...b.map(y=>(0,fr._)`${g} !== ${y}`)):!0}}function R4t(t){let{gen:e,schema:r,data:n}=t;switch(r.type){case"boolean":e.add(En.default.json,(0,fr._)`${n} ? "true" : "false"`);break;case"string":L_(t);break;case"timestamp":e.if((0,fr._)`${n} instanceof Date`,()=>e.add(En.default.json,(0,fr._)`'"' + ${n}.toISOString() + '"'`),()=>L_(t));break;default:N4t(t)}}function L_({gen:t,data:e}){t.add(En.default.json,(0,fr._)`${(0,_4t.useFunc)(t,S4t.default)}(${e})`)}function N4t({gen:t,data:e}){t.add(En.default.json,(0,fr._)`"" + ${e}`)}function O4t(t){let{gen:e,self:r,data:n,definitions:s,schema:i,schemaEnv:a}=t,{ref:o}=i,c=s[o];if(!c)throw new x4t.default(r.opts.uriResolver,"",o,`No definition ${o}`);if(!(0,E4t.hasRef)(c))return B_({...t,schema:c});let{root:u}=a,l=K_e.call(r,new z_e.SchemaEnv({schema:c,root:u}),s);e.add(En.default.json,(0,fr._)`${P4t(e,l)}(${n})`)}function P4t(t,e){return e.serialize?t.scopeValue("serialize",{ref:e.serialize}):(0,fr._)`${t.scopeValue("wrapper",{ref:e})}.serialize`}function D4t({gen:t,data:e}){t.add(En.default.json,(0,fr._)`JSON.stringify(${e})`)}function p7({gen:t},e){e?t.if(e,()=>t.assign(e,!1),()=>t.add(En.default.json,(0,fr.str)`,`)):t.add(En.default.json,(0,fr.str)`,`)}});var eSe=E(Lp=>{"use strict";Object.defineProperty(Lp,"__esModule",{value:!0});Lp.parseJsonString=Lp.parseJsonNumber=Lp.parseJson=void 0;var k4t=/position\s(\d+)(?: \(line \d+ column \d+\))?$/;function Id(t,e){let r;Id.message=void 0;let n;e&&(t=t.slice(e));try{return Id.position=e+t.length,JSON.parse(t)}catch(s){if(n=k4t.exec(s.message),!n){Id.message="unexpected end";return}r=+n[1];let i=t[r];t=t.slice(0,r),Id.position=e+r;try{return JSON.parse(t)}catch{Id.message=`unexpected token ${i}`;return}}}Lp.parseJson=Id;Id.message=void 0;Id.position=0;Id.code='require("ajv/dist/runtime/parseJson").parseJson';function Td(t,e,r){let n="",s;if(Td.message=void 0,t[e]==="-"&&(n+="-",e++),t[e]==="0")n+="0",e++;else if(!i(r)){a();return}if(r)return Td.position=e,+n;if(t[e]==="."&&(n+=".",e++,!i())){a();return}if(s=t[e],(s==="e"||s==="E")&&(n+="e",e++,s=t[e],(s==="+"||s==="-")&&(n+=s,e++),!i())){a();return}return Td.position=e,+n;function i(o){let c=!1;for(;s=t[e],s>="0"&&s<="9"&&(o===void 0||o-- >0);)c=!0,n+=s,e++;return c}function a(){Td.position=e,Td.message=e="a"&&n<="f")a+=n.charCodeAt(0)-L4t+10;else if(n>="0"&&n<="9")a+=n.charCodeAt(0)-B4t;else{s(`unexpected token ${n}`);return}e++}r+=String.fromCharCode(a)}else{s(`unexpected token ${n}`);return}else if(n===void 0){s("unexpected end");return}else if(n.charCodeAt(0)>=32)r+=n;else{s(`unexpected token ${n}`);return}return kp.position=e,r;function s(i){kp.position=e,kp.message=i}}Lp.parseJsonString=kp;kp.message=void 0;kp.position=0;kp.code='require("ajv/dist/runtime/parseJson").parseJsonString'});var dSe=E(_7=>{"use strict";Object.defineProperty(_7,"__esModule",{value:!0});var M4t=l7(),sSe=Qm(),ut=Et(),W4t=Ed(),cr=Zo(),$4t=di(),F4t=MO(),U4t=ZU(),A7=eSe(),iSe=Kt(),q4t=XU(),j4t={elements:V4t,values:z4t,discriminator:Y4t,properties:tSe,optionalProperties:tSe,enum:X4t,type:J4t,ref:Z4t};function aSe(t,e){let r=sSe.getCompilingSchema.call(this,t);if(r)return r;let{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new ut.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o=a.scopeName("parse"),c={self:this,gen:a,schema:t.schema,schemaEnv:t,definitions:e,data:cr.default.data,parseName:o,char:a.name("c")},u;try{this._compilations.add(t),t.parseName=o,H4t(c),a.optimize(this.opts.code.optimize);let l=a.toString();u=`${a.scopeRefs(cr.default.scope)}return ${l}`;let f=new Function(`${cr.default.scope}`,u)(this.scope.get());this.scope.value(o,{ref:f}),t.parse=f}catch(l){throw u&&this.logger.error("Error compiling parser, function code:",u),delete t.parse,delete t.parseName,l}finally{this._compilations.delete(t)}return t}_7.default=aSe;var g7=(0,ut._)`undefined`;function H4t(t){let{gen:e,parseName:r,char:n}=t;e.func(r,(0,ut._)`${cr.default.json}, ${cr.default.jsonPos}, ${cr.default.jsonPart}`,!1,()=>{e.let(cr.default.data),e.let(n),e.assign((0,ut._)`${r}.message`,g7),e.assign((0,ut._)`${r}.position`,g7),e.assign(cr.default.jsonPos,(0,ut._)`${cr.default.jsonPos} || 0`),e.const(cr.default.jsonLen,(0,ut._)`${cr.default.json}.length`),qO(t),E7(t),e.if(cr.default.jsonPart,()=>{e.assign((0,ut._)`${r}.position`,cr.default.jsonPos),e.return(cr.default.data)}),e.if((0,ut._)`${cr.default.jsonPos} === ${cr.default.jsonLen}`,()=>e.return(cr.default.data)),Ny(t)})}function qO(t){let e;for(let r of M4t.jtdForms)if(r in t.schema){e=r;break}e?G4t(t,j4t[e]):x7(t)}var Q4t=nSe(!0,nSe(!1,Ny));function G4t(t,e){let{gen:r,schema:n,data:s}=t;if(!n.nullable)return e(t);M_(t,"null",e,()=>r.assign(s,null))}function V4t(t){let{gen:e,schema:r,data:n}=t;Zu(t,"[");let s=e.let("i",0);e.assign(n,(0,ut._)`[]`),y7(t,"]",()=>{let i=e.let("el");qO({...t,schema:r.elements,data:i}),e.assign((0,ut._)`${n}[${s}++]`,i)})}function z4t(t){let{gen:e,schema:r,data:n}=t;Zu(t,"{"),e.assign(n,(0,ut._)`{}`),y7(t,"}",()=>K4t(t,r.values))}function y7(t,e,r){oSe(t,e,r),Zu(t,e)}function oSe(t,e,r){let{gen:n}=t;n.for((0,ut._)`;${cr.default.jsonPos}<${cr.default.jsonLen} && ${jO(1)}!==${e};`,()=>{r(),M_(t,",",()=>n.break(),s)});function s(){M_(t,e,()=>{},Ny)}}function K4t(t,e){let{gen:r}=t,n=r.let("key");Ym({...t,data:n}),Zu(t,":"),uSe(t,n,e)}function Y4t(t){let{gen:e,data:r,schema:n}=t,{discriminator:s,mapping:i}=n;Zu(t,"{"),e.assign(r,(0,ut._)`{}`);let a=e.const("pos",cr.default.jsonPos),o=e.let("value"),c=e.let("tag");oSe(t,"}",()=>{let u=e.let("key");Ym({...t,data:u}),Zu(t,":"),e.if((0,ut._)`${u} === ${s}`,()=>{Ym({...t,data:c}),e.assign((0,ut._)`${r}[${u}]`,c),e.break()},()=>x7({...t,data:o}))}),e.assign(cr.default.jsonPos,a),e.if((0,ut._)`${c} === undefined`),wd(t,(0,ut.str)`discriminator tag not found`);for(let u in i)e.elseIf((0,ut._)`${c} === ${u}`),cSe({...t,schema:i[u]},s);e.else(),wd(t,(0,ut.str)`discriminator value not in schema`),e.endIf()}function tSe(t){let{gen:e,data:r}=t;Zu(t,"{"),e.assign(r,(0,ut._)`{}`),cSe(t)}function cSe(t,e){let{gen:r,schema:n,data:s}=t,{properties:i,optionalProperties:a,additionalProperties:o}=n;if(y7(t,"}",()=>{let c=r.let("key");if(Ym({...t,data:c}),Zu(t,":"),r.if(!1),rSe(t,c,i),rSe(t,c,a),e){r.elseIf((0,ut._)`${c} === ${e}`);let u=r.let("tag");Ym({...t,data:u})}r.else(),o?x7({...t,data:(0,ut._)`${s}[${c}]`}):wd(t,(0,ut.str)`property ${c} not allowed`),r.endIf()}),i){let c=(0,$4t.hasPropFunc)(r),u=(0,ut.and)(...Object.keys(i).map(l=>(0,ut._)`${c}.call(${s}, ${l})`));r.if((0,ut.not)(u),()=>wd(t,(0,ut.str)`missing required properties`))}}function rSe(t,e,r={}){let{gen:n}=t;for(let s in r)n.elseIf((0,ut._)`${e} === ${s}`),uSe(t,e,r[s])}function uSe(t,e,r){qO({...t,schema:r,data:(0,ut._)`${t.data}[${e}]`})}function J4t(t){let{gen:e,schema:r,data:n,self:s}=t;switch(r.type){case"boolean":Q4t(t);break;case"string":Ym(t);break;case"timestamp":{Ym(t);let i=(0,iSe.useFunc)(e,q4t.default),{allowDate:a,parseDate:o}=s.opts,c=a?(0,ut._)`!${i}(${n}, true)`:(0,ut._)`!${i}(${n})`,u=o?(0,ut.or)(c,(0,ut._)`(${n} = new Date(${n}), false)`,(0,ut._)`isNaN(${n}.valueOf())`):c;e.if(u,()=>wd(t,(0,ut.str)`invalid timestamp`));break}case"float32":case"float64":h7(t);break;default:{let i=r.type;if(!s.opts.int32range&&(i==="int32"||i==="uint32"))h7(t,16),i==="uint32"&&e.if((0,ut._)`${n} < 0`,()=>wd(t,(0,ut.str)`integer out of range`));else{let[a,o,c]=U4t.intRange[i];h7(t,c),e.if((0,ut._)`${n} < ${a} || ${n} > ${o}`,()=>wd(t,(0,ut.str)`integer out of range`))}}}}function Ym(t){Zu(t,'"'),b7(t,A7.parseJsonString)}function X4t(t){let{gen:e,data:r,schema:n}=t,s=n.enum;Zu(t,'"'),e.if(!1);for(let i of s){let a=JSON.stringify(i).slice(1);e.elseIf((0,ut._)`${jO(a.length)} === ${a}`),e.assign(r,(0,ut.str)`${i}`),e.add(cr.default.jsonPos,a.length)}e.else(),Ny(t),e.endIf()}function h7(t,e){let{gen:r}=t;E7(t),r.if((0,ut._)`"-0123456789".indexOf(${jO(1)}) < 0`,()=>Ny(t),()=>b7(t,A7.parseJsonNumber,e))}function nSe(t,e){return r=>{let{gen:n,data:s}=r;M_(r,`${t}`,()=>e(r),()=>n.assign(s,t))}}function Z4t(t){let{gen:e,self:r,definitions:n,schema:s,schemaEnv:i}=t,{ref:a}=s,o=n[a];if(!o)throw new W4t.default(r.opts.uriResolver,"",a,`No definition ${a}`);if(!(0,F4t.hasRef)(o))return qO({...t,schema:o});let{root:c}=i,u=aSe.call(r,new sSe.SchemaEnv({schema:o,root:c}),n);lSe(t,eMt(e,u),!0)}function eMt(t,e){return e.parse?t.scopeValue("parse",{ref:e.parse}):(0,ut._)`${t.scopeValue("wrapper",{ref:e})}.parse`}function x7(t){b7(t,A7.parseJson)}function b7(t,e,r){lSe(t,(0,iSe.useFunc)(t.gen,e),r)}function lSe(t,e,r){let{gen:n,data:s}=t;n.assign(s,(0,ut._)`${e}(${cr.default.json}, ${cr.default.jsonPos}${r?(0,ut._)`, ${r}`:ut.nil})`),n.assign(cr.default.jsonPos,(0,ut._)`${e}.position`),n.if((0,ut._)`${s} === undefined`,()=>wd(t,(0,ut._)`${e}.message`))}function Zu(t,e){M_(t,e,Ny)}function M_(t,e,r,n){let{gen:s}=t,i=e.length;E7(t),s.if((0,ut._)`${jO(i)} === ${e}`,()=>{s.add(cr.default.jsonPos,i),n?.(t)},()=>r(t))}function E7({gen:t,char:e}){t.code((0,ut._)`while((${e}=${cr.default.json}[${cr.default.jsonPos}],${e}===" "||${e}==="\\n"||${e}==="\\r"||${e}==="\\t"))${cr.default.jsonPos}++;`)}function jO(t){return t===1?(0,ut._)`${cr.default.json}[${cr.default.jsonPos}]`:(0,ut._)`${cr.default.json}.slice(${cr.default.jsonPos}, ${cr.default.jsonPos}+${t})`}function Ny(t){wd(t,(0,ut._)`"unexpected token " + ${cr.default.json}[${cr.default.jsonPos}]`)}function wd({gen:t,parseName:e},r){t.assign((0,ut._)`${e}.message`,r),t.assign((0,ut._)`${e}.position`,cr.default.jsonPos),t.return(g7)}});var C7=E((kn,v7)=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});kn.MissingRefError=kn.ValidationError=kn.CodeGen=kn.Name=kn.nil=kn.stringify=kn.str=kn._=kn.KeywordCxt=kn.Ajv=void 0;var tMt=sU(),rMt=F_e(),nMt=H_e(),sMt=X_e(),iMt=dSe(),S7="JTD-meta-schema",Oy=class extends tMt.default{constructor(e={}){super({...e,jtd:!0})}_addVocabularies(){super._addVocabularies(),this.addVocabulary(rMt.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema(),this.opts.meta&&this.addMetaSchema(nMt.default,S7,!1)}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(S7)?S7:void 0)}compileSerializer(e){let r=this._addSchema(e);return r.serialize||this._compileSerializer(r)}compileParser(e){let r=this._addSchema(e);return r.parse||this._compileParser(r)}_compileSerializer(e){if(sMt.default.call(this,e,e.schema.definitions||{}),!e.serialize)throw new Error("ajv implementation error");return e.serialize}_compileParser(e){if(iMt.default.call(this,e,e.schema.definitions||{}),!e.parse)throw new Error("ajv implementation error");return e.parse}};kn.Ajv=Oy;v7.exports=kn=Oy;v7.exports.Ajv=Oy;Object.defineProperty(kn,"__esModule",{value:!0});kn.default=Oy;var aMt=Ay();Object.defineProperty(kn,"KeywordCxt",{enumerable:!0,get:function(){return aMt.KeywordCxt}});var Py=Et();Object.defineProperty(kn,"_",{enumerable:!0,get:function(){return Py._}});Object.defineProperty(kn,"str",{enumerable:!0,get:function(){return Py.str}});Object.defineProperty(kn,"stringify",{enumerable:!0,get:function(){return Py.stringify}});Object.defineProperty(kn,"nil",{enumerable:!0,get:function(){return Py.nil}});Object.defineProperty(kn,"Name",{enumerable:!0,get:function(){return Py.Name}});Object.defineProperty(kn,"CodeGen",{enumerable:!0,get:function(){return Py.CodeGen}});var oMt=y_();Object.defineProperty(kn,"ValidationError",{enumerable:!0,get:function(){return oMt.default}});var cMt=Ed();Object.defineProperty(kn,"MissingRefError",{enumerable:!0,get:function(){return cMt.default}})});var I7=E(($Lr,fSe)=>{"use strict";var uMt=QW();fSe.exports=Object.freeze({coerceTypes:"array",useDefaults:!0,removeAdditional:!0,uriResolver:uMt,addUsedSchema:!1,allErrors:!1})});var ySe=E(el=>{"use strict";Object.defineProperty(el,"__esModule",{value:!0});el.formatNames=el.fastFormats=el.fullFormats=void 0;function Dy(t,e){return{validate:t,compare:e}}el.fullFormats={date:Dy(hSe,R7),time:Dy(gSe,N7),"date-time":Dy(pMt,ASe),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:gMt,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:SMt,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:AMt,int32:{type:"number",validate:bMt},int64:{type:"number",validate:EMt},float:{type:"number",validate:mSe},double:{type:"number",validate:mSe},password:!0,binary:!0};el.fastFormats={...el.fullFormats,date:Dy(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,R7),time:Dy(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,N7),"date-time":Dy(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,ASe),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};el.formatNames=Object.keys(el.fullFormats);function lMt(t){return t%4===0&&(t%100!==0||t%400===0)}var dMt=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,fMt=[0,31,28,31,30,31,30,31,31,30,31,30,31];function hSe(t){let e=dMt.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],s=+e[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&lMt(r)?29:fMt[n])}function R7(t,e){if(t&&e)return t>e?1:te?1:t=yMt}function EMt(t){return Number.isInteger(t)}function mSe(){return!0}var _Mt=/[^\\]\\Z/;function SMt(t){if(_Mt.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var F_=E(Mr=>{"use strict";Object.defineProperty(Mr,"__esModule",{value:!0});Mr.regexpCode=Mr.getEsmExportName=Mr.getProperty=Mr.safeStringify=Mr.stringify=Mr.strConcat=Mr.addCodeArg=Mr.str=Mr._=Mr.nil=Mr._Code=Mr.Name=Mr.IDENTIFIER=Mr._CodeOrName=void 0;var W_=class{};Mr._CodeOrName=W_;Mr.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Jm=class extends W_{constructor(e){if(super(),!Mr.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Mr.Name=Jm;var rc=class extends W_{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Jm&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Mr._Code=rc;Mr.nil=new rc("");function xSe(t,...e){let r=[t[0]],n=0;for(;n{"use strict";Object.defineProperty(Ua,"__esModule",{value:!0});Ua.ValueScope=Ua.ValueScopeName=Ua.Scope=Ua.varKinds=Ua.UsedValueState=void 0;var Fa=F_(),D7=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},HO;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(HO||(Ua.UsedValueState=HO={}));Ua.varKinds={const:new Fa.Name("const"),let:new Fa.Name("let"),var:new Fa.Name("var")};var QO=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Fa.Name?e:this.name(e)}name(e){return new Fa.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ua.Scope=QO;var GO=class extends Fa.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Fa._)`.${new Fa.Name(r)}[${n}]`}};Ua.ValueScopeName=GO;var PMt=(0,Fa._)`\n`,k7=class extends QO{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?PMt:Fa.nil}}get(){return this._scope}name(e){return new GO(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let s=this.toName(e),{prefix:i}=s,a=(n=r.key)!==null&&n!==void 0?n:r.ref,o=this._values[i];if(o){let l=o.get(a);if(l)return l}else o=this._values[i]=new Map;o.set(a,s);let c=this._scope[i]||(this._scope[i]=[]),u=c.length;return c[u]=r.ref,s.setValue(r,{property:i,itemIndex:u}),s}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Fa._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,s=>{if(s.value===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return s.value.code},r,n)}_reduceValues(e,r,n={},s){let i=Fa.nil;for(let a in e){let o=e[a];if(!o)continue;let c=n[a]=n[a]||new Map;o.forEach(u=>{if(c.has(u))return;c.set(u,HO.Started);let l=r(u);if(l){let d=this.opts.es5?Ua.varKinds.var:Ua.varKinds.const;i=(0,Fa._)`${i}${d} ${u} = ${l};${this.opts._n}`}else if(l=s?.(u))i=(0,Fa._)`${i}${l}${this.opts._n}`;else throw new D7(u);c.set(u,HO.Completed)})}return i}};Ua.ValueScope=k7});var Yt=E(er=>{"use strict";Object.defineProperty(er,"__esModule",{value:!0});er.or=er.and=er.not=er.CodeGen=er.operators=er.varKinds=er.ValueScopeName=er.ValueScope=er.Scope=er.Name=er.regexpCode=er.stringify=er.getProperty=er.nil=er.strConcat=er.str=er._=void 0;var xr=F_(),Kc=L7(),Bp=F_();Object.defineProperty(er,"_",{enumerable:!0,get:function(){return Bp._}});Object.defineProperty(er,"str",{enumerable:!0,get:function(){return Bp.str}});Object.defineProperty(er,"strConcat",{enumerable:!0,get:function(){return Bp.strConcat}});Object.defineProperty(er,"nil",{enumerable:!0,get:function(){return Bp.nil}});Object.defineProperty(er,"getProperty",{enumerable:!0,get:function(){return Bp.getProperty}});Object.defineProperty(er,"stringify",{enumerable:!0,get:function(){return Bp.stringify}});Object.defineProperty(er,"regexpCode",{enumerable:!0,get:function(){return Bp.regexpCode}});Object.defineProperty(er,"Name",{enumerable:!0,get:function(){return Bp.Name}});var YO=L7();Object.defineProperty(er,"Scope",{enumerable:!0,get:function(){return YO.Scope}});Object.defineProperty(er,"ValueScope",{enumerable:!0,get:function(){return YO.ValueScope}});Object.defineProperty(er,"ValueScopeName",{enumerable:!0,get:function(){return YO.ValueScopeName}});Object.defineProperty(er,"varKinds",{enumerable:!0,get:function(){return YO.varKinds}});er.operators={GT:new xr._Code(">"),GTE:new xr._Code(">="),LT:new xr._Code("<"),LTE:new xr._Code("<="),EQ:new xr._Code("==="),NEQ:new xr._Code("!=="),NOT:new xr._Code("!"),OR:new xr._Code("||"),AND:new xr._Code("&&"),ADD:new xr._Code("+")};var Rd=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},B7=class extends Rd{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Kc.varKinds.var:this.varKind,s=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${s};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=Ly(this.rhs,e,r)),this}get names(){return this.rhs instanceof xr._CodeOrName?this.rhs.names:{}}},VO=class extends Rd{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof xr.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Ly(this.rhs,e,r),this}get names(){let e=this.lhs instanceof xr.Name?{}:{...this.lhs.names};return KO(e,this.rhs)}},M7=class extends VO{constructor(e,r,n,s){super(e,n,s),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},W7=class extends Rd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},$7=class extends Rd{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},F7=class extends Rd{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},U7=class extends Rd{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=Ly(this.code,e,r),this}get names(){return this.code instanceof xr._CodeOrName?this.code.names:{}}},U_=class extends Rd{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,s=n.length;for(;s--;){let i=n[s];i.optimizeNames(e,r)||(DMt(e,i.names),n.splice(s,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>eh(e,r.names),{})}},Nd=class extends U_{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},q7=class extends U_{},ky=class extends Nd{};ky.kind="else";var Xm=class t extends Nd{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new ky(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(ESe(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=Ly(this.condition,e,r),this}get names(){let e=super.names;return KO(e,this.condition),this.else&&eh(e,this.else.names),e}};Xm.kind="if";var Zm=class extends Nd{};Zm.kind="for";var j7=class extends Zm{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=Ly(this.iteration,e,r),this}get names(){return eh(super.names,this.iteration.names)}},H7=class extends Zm{constructor(e,r,n,s){super(),this.varKind=e,this.name=r,this.from=n,this.to=s}render(e){let r=e.es5?Kc.varKinds.var:this.varKind,{name:n,from:s,to:i}=this;return`for(${r} ${n}=${s}; ${n}<${i}; ${n}++)`+super.render(e)}get names(){let e=KO(super.names,this.from);return KO(e,this.to)}},zO=class extends Zm{constructor(e,r,n,s){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=s}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=Ly(this.iterable,e,r),this}get names(){return eh(super.names,this.iterable.names)}},q_=class extends Nd{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};q_.kind="func";var j_=class extends U_{render(e){return"return "+super.render(e)}};j_.kind="return";var Q7=class extends Nd{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,s;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(s=this.finally)===null||s===void 0||s.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&eh(e,this.catch.names),this.finally&&eh(e,this.finally.names),e}},H_=class extends Nd{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};H_.kind="catch";var Q_=class extends Nd{render(e){return"finally"+super.render(e)}};Q_.kind="finally";var G7=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?` +`:""},this._extScope=e,this._scope=new Kc.Scope({parent:e}),this._nodes=[new q7]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,s){let i=this._scope.toName(r);return n!==void 0&&s&&(this._constants[i.str]=n),this._leafNode(new B7(e,i,n)),i}const(e,r,n){return this._def(Kc.varKinds.const,e,r,n)}let(e,r,n){return this._def(Kc.varKinds.let,e,r,n)}var(e,r,n){return this._def(Kc.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new VO(e,r,n))}add(e,r){return this._leafNode(new M7(e,er.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==xr.nil&&this._leafNode(new U7(e)),this}object(...e){let r=["{"];for(let[n,s]of e)r.length>1&&r.push(","),r.push(n),(n!==s||this.opts.es5)&&(r.push(":"),(0,xr.addCodeArg)(r,s));return r.push("}"),new xr._Code(r)}if(e,r,n){if(this._blockNode(new Xm(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Xm(e))}else(){return this._elseNode(new ky)}endIf(){return this._endBlockNode(Xm,ky)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new j7(e),r)}forRange(e,r,n,s,i=this.opts.es5?Kc.varKinds.var:Kc.varKinds.let){let a=this._scope.toName(e);return this._for(new H7(i,a,r,n),()=>s(a))}forOf(e,r,n,s=Kc.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof xr.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,xr._)`${a}.length`,o=>{this.var(i,(0,xr._)`${a}[${o}]`),n(i)})}return this._for(new zO("of",s,i,r),()=>n(i))}forIn(e,r,n,s=this.opts.es5?Kc.varKinds.var:Kc.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,xr._)`Object.keys(${r})`,n);let i=this._scope.toName(e);return this._for(new zO("in",s,i,r),()=>n(i))}endFor(){return this._endBlockNode(Zm)}label(e){return this._leafNode(new W7(e))}break(e){return this._leafNode(new $7(e))}return(e){let r=new j_;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(j_)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let s=new Q7;if(this._blockNode(s),this.code(e),r){let i=this.name("e");this._currNode=s.catch=new H_(i),r(i)}return n&&(this._currNode=s.finally=new Q_,this.code(n)),this._endBlockNode(H_,Q_)}throw(e){return this._leafNode(new F7(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=xr.nil,n,s){return this._blockNode(new q_(e,r,n)),s&&this.code(s).endFunc(),this}endFunc(){return this._endBlockNode(q_)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Xm))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};er.CodeGen=G7;function eh(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function KO(t,e){return e instanceof xr._CodeOrName?eh(t,e.names):t}function Ly(t,e,r){if(t instanceof xr.Name)return n(t);if(!s(t))return t;return new xr._Code(t._items.reduce((i,a)=>(a instanceof xr.Name&&(a=n(a)),a instanceof xr._Code?i.push(...a._items):i.push(a),i),[]));function n(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function s(i){return i instanceof xr._Code&&i._items.some(a=>a instanceof xr.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function DMt(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function ESe(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,xr._)`!${V7(t)}`}er.not=ESe;var kMt=_Se(er.operators.AND);function LMt(...t){return t.reduce(kMt)}er.and=LMt;var BMt=_Se(er.operators.OR);function MMt(...t){return t.reduce(BMt)}er.or=MMt;function _Se(t){return(e,r)=>e===xr.nil?r:r===xr.nil?e:(0,xr._)`${V7(e)} ${t} ${V7(r)}`}function V7(t){return t instanceof xr.Name?t:(0,xr._)`(${t})`}});var Wr=E(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.checkStrictMode=sr.getErrorPath=sr.Type=sr.useFunc=sr.setEvaluated=sr.evaluatedPropsToName=sr.mergeEvaluated=sr.eachItem=sr.unescapeJsonPointer=sr.escapeJsonPointer=sr.escapeFragment=sr.unescapeFragment=sr.schemaRefOrVal=sr.schemaHasRulesButRef=sr.schemaHasRules=sr.checkUnknownRules=sr.alwaysValidSchema=sr.toHash=void 0;var pn=Yt(),WMt=F_();function $Mt(t){let e={};for(let r of t)e[r]=!0;return e}sr.toHash=$Mt;function FMt(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(CSe(t,e),!ISe(e,t.self.RULES.all))}sr.alwaysValidSchema=FMt;function CSe(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let s=n.RULES.keywords;for(let i in e)s[i]||RSe(t,`unknown keyword: "${i}"`)}sr.checkUnknownRules=CSe;function ISe(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}sr.schemaHasRules=ISe;function UMt(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}sr.schemaHasRulesButRef=UMt;function qMt({topSchemaRef:t,schemaPath:e},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,pn._)`${r}`}return(0,pn._)`${t}${e}${(0,pn.getProperty)(n)}`}sr.schemaRefOrVal=qMt;function jMt(t){return TSe(decodeURIComponent(t))}sr.unescapeFragment=jMt;function HMt(t){return encodeURIComponent(K7(t))}sr.escapeFragment=HMt;function K7(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}sr.escapeJsonPointer=K7;function TSe(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}sr.unescapeJsonPointer=TSe;function QMt(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}sr.eachItem=QMt;function SSe({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(s,i,a,o)=>{let c=a===void 0?i:a instanceof pn.Name?(i instanceof pn.Name?t(s,i,a):e(s,i,a),a):i instanceof pn.Name?(e(s,a,i),i):r(i,a);return o===pn.Name&&!(c instanceof pn.Name)?n(s,c):c}}sr.mergeEvaluated={props:SSe({mergeNames:(t,e,r)=>t.if((0,pn._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,pn._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,pn._)`${r} || {}`).code((0,pn._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,pn._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,pn._)`${r} || {}`),Y7(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:wSe}),items:SSe({mergeNames:(t,e,r)=>t.if((0,pn._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,pn._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,pn._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,pn._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function wSe(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,pn._)`{}`);return e!==void 0&&Y7(t,r,e),r}sr.evaluatedPropsToName=wSe;function Y7(t,e,r){Object.keys(r).forEach(n=>t.assign((0,pn._)`${e}${(0,pn.getProperty)(n)}`,!0))}sr.setEvaluated=Y7;var vSe={};function GMt(t,e){return t.scopeValue("func",{ref:e,code:vSe[e.code]||(vSe[e.code]=new WMt._Code(e.code))})}sr.useFunc=GMt;var z7;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(z7||(sr.Type=z7={}));function VMt(t,e,r){if(t instanceof pn.Name){let n=e===z7.Num;return r?n?(0,pn._)`"[" + ${t} + "]"`:(0,pn._)`"['" + ${t} + "']"`:n?(0,pn._)`"/" + ${t}`:(0,pn._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,pn.getProperty)(t).toString():"/"+K7(t)}sr.getErrorPath=VMt;function RSe(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}sr.checkStrictMode=RSe});var Od=E(J7=>{"use strict";Object.defineProperty(J7,"__esModule",{value:!0});var Li=Yt(),zMt={data:new Li.Name("data"),valCxt:new Li.Name("valCxt"),instancePath:new Li.Name("instancePath"),parentData:new Li.Name("parentData"),parentDataProperty:new Li.Name("parentDataProperty"),rootData:new Li.Name("rootData"),dynamicAnchors:new Li.Name("dynamicAnchors"),vErrors:new Li.Name("vErrors"),errors:new Li.Name("errors"),this:new Li.Name("this"),self:new Li.Name("self"),scope:new Li.Name("scope"),json:new Li.Name("json"),jsonPos:new Li.Name("jsonPos"),jsonLen:new Li.Name("jsonLen"),jsonPart:new Li.Name("jsonPart")};J7.default=zMt});var G_=E(Bi=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});Bi.extendErrors=Bi.resetErrorsCount=Bi.reportExtraError=Bi.reportError=Bi.keyword$DataError=Bi.keywordError=void 0;var Ir=Yt(),JO=Wr(),oa=Od();Bi.keywordError={message:({keyword:t})=>(0,Ir.str)`must pass "${t}" keyword validation`};Bi.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Ir.str)`"${t}" keyword must be ${e} ($data)`:(0,Ir.str)`"${t}" keyword is invalid ($data)`};function KMt(t,e=Bi.keywordError,r,n){let{it:s}=t,{gen:i,compositeRule:a,allErrors:o}=s,c=PSe(t,e,r);n??(a||o)?NSe(i,c):OSe(s,(0,Ir._)`[${c}]`)}Bi.reportError=KMt;function YMt(t,e=Bi.keywordError,r){let{it:n}=t,{gen:s,compositeRule:i,allErrors:a}=n,o=PSe(t,e,r);NSe(s,o),i||a||OSe(n,oa.default.vErrors)}Bi.reportExtraError=YMt;function JMt(t,e){t.assign(oa.default.errors,e),t.if((0,Ir._)`${oa.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Ir._)`${oa.default.vErrors}.length`,e),()=>t.assign(oa.default.vErrors,null)))}Bi.resetErrorsCount=JMt;function XMt({gen:t,keyword:e,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",s,oa.default.errors,o=>{t.const(a,(0,Ir._)`${oa.default.vErrors}[${o}]`),t.if((0,Ir._)`${a}.instancePath === undefined`,()=>t.assign((0,Ir._)`${a}.instancePath`,(0,Ir.strConcat)(oa.default.instancePath,i.errorPath))),t.assign((0,Ir._)`${a}.schemaPath`,(0,Ir.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,Ir._)`${a}.schema`,r),t.assign((0,Ir._)`${a}.data`,n))})}Bi.extendErrors=XMt;function NSe(t,e){let r=t.const("err",e);t.if((0,Ir._)`${oa.default.vErrors} === null`,()=>t.assign(oa.default.vErrors,(0,Ir._)`[${r}]`),(0,Ir._)`${oa.default.vErrors}.push(${r})`),t.code((0,Ir._)`${oa.default.errors}++`)}function OSe(t,e){let{gen:r,validateName:n,schemaEnv:s}=t;s.$async?r.throw((0,Ir._)`new ${t.ValidationError}(${e})`):(r.assign((0,Ir._)`${n}.errors`,e),r.return(!1))}var th={keyword:new Ir.Name("keyword"),schemaPath:new Ir.Name("schemaPath"),params:new Ir.Name("params"),propertyName:new Ir.Name("propertyName"),message:new Ir.Name("message"),schema:new Ir.Name("schema"),parentSchema:new Ir.Name("parentSchema")};function PSe(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Ir._)`{}`:ZMt(t,e,r)}function ZMt(t,e,r={}){let{gen:n,it:s}=t,i=[e6t(s,r),t6t(t,r)];return r6t(t,e,i),n.object(...i)}function e6t({errorPath:t},{instancePath:e}){let r=e?(0,Ir.str)`${t}${(0,JO.getErrorPath)(e,JO.Type.Str)}`:t;return[oa.default.instancePath,(0,Ir.strConcat)(oa.default.instancePath,r)]}function t6t({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let s=n?e:(0,Ir.str)`${e}/${t}`;return r&&(s=(0,Ir.str)`${s}${(0,JO.getErrorPath)(r,JO.Type.Str)}`),[th.schemaPath,s]}function r6t(t,{params:e,message:r},n){let{keyword:s,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=o;n.push([th.keyword,s],[th.params,typeof e=="function"?e(t):e||(0,Ir._)`{}`]),c.messages&&n.push([th.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([th.schema,a],[th.parentSchema,(0,Ir._)`${l}${d}`],[oa.default.data,i]),u&&n.push([th.propertyName,u])}});var kSe=E(By=>{"use strict";Object.defineProperty(By,"__esModule",{value:!0});By.boolOrEmptySchema=By.topBoolOrEmptySchema=void 0;var n6t=G_(),s6t=Yt(),i6t=Od(),a6t={message:"boolean schema is false"};function o6t(t){let{gen:e,schema:r,validateName:n}=t;r===!1?DSe(t,!1):typeof r=="object"&&r.$async===!0?e.return(i6t.default.data):(e.assign((0,s6t._)`${n}.errors`,null),e.return(!0))}By.topBoolOrEmptySchema=o6t;function c6t(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),DSe(t)):r.var(e,!0)}By.boolOrEmptySchema=c6t;function DSe(t,e){let{gen:r,data:n}=t,s={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,n6t.reportError)(s,a6t,void 0,e)}});var X7=E(My=>{"use strict";Object.defineProperty(My,"__esModule",{value:!0});My.getRules=My.isJSONType=void 0;var u6t=["string","number","integer","boolean","null","object","array"],l6t=new Set(u6t);function d6t(t){return typeof t=="string"&&l6t.has(t)}My.isJSONType=d6t;function f6t(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}My.getRules=f6t});var Z7=E(Mp=>{"use strict";Object.defineProperty(Mp,"__esModule",{value:!0});Mp.shouldUseRule=Mp.shouldUseGroup=Mp.schemaHasRulesForType=void 0;function p6t({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&LSe(t,n)}Mp.schemaHasRulesForType=p6t;function LSe(t,e){return e.rules.some(r=>BSe(t,r))}Mp.shouldUseGroup=LSe;function BSe(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}Mp.shouldUseRule=BSe});var V_=E(Mi=>{"use strict";Object.defineProperty(Mi,"__esModule",{value:!0});Mi.reportTypeError=Mi.checkDataTypes=Mi.checkDataType=Mi.coerceAndCheckDataType=Mi.getJSONTypes=Mi.getSchemaTypes=Mi.DataType=void 0;var m6t=X7(),h6t=Z7(),g6t=G_(),Qt=Yt(),MSe=Wr(),Wy;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Wy||(Mi.DataType=Wy={}));function A6t(t){let e=WSe(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Mi.getSchemaTypes=A6t;function WSe(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(m6t.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Mi.getJSONTypes=WSe;function y6t(t,e){let{gen:r,data:n,opts:s}=t,i=x6t(e,s.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,h6t.schemaHasRulesForType)(t,e[0]));if(a){let o=t9(e,n,s.strictNumbers,Wy.Wrong);r.if(o,()=>{i.length?b6t(t,e,i):r9(t)})}return a}Mi.coerceAndCheckDataType=y6t;var $Se=new Set(["string","number","integer","boolean","null"]);function x6t(t,e){return e?t.filter(r=>$Se.has(r)||e==="array"&&r==="array"):[]}function b6t(t,e,r){let{gen:n,data:s,opts:i}=t,a=n.let("dataType",(0,Qt._)`typeof ${s}`),o=n.let("coerced",(0,Qt._)`undefined`);i.coerceTypes==="array"&&n.if((0,Qt._)`${a} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,(0,Qt._)`${s}[0]`).assign(a,(0,Qt._)`typeof ${s}`).if(t9(e,s,i.strictNumbers),()=>n.assign(o,s))),n.if((0,Qt._)`${o} !== undefined`);for(let u of r)($Se.has(u)||u==="array"&&i.coerceTypes==="array")&&c(u);n.else(),r9(t),n.endIf(),n.if((0,Qt._)`${o} !== undefined`,()=>{n.assign(s,o),E6t(t,o)});function c(u){switch(u){case"string":n.elseIf((0,Qt._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,Qt._)`"" + ${s}`).elseIf((0,Qt._)`${s} === null`).assign(o,(0,Qt._)`""`);return;case"number":n.elseIf((0,Qt._)`${a} == "boolean" || ${s} === null + || (${a} == "string" && ${s} && ${s} == +${s})`).assign(o,(0,Qt._)`+${s}`);return;case"integer":n.elseIf((0,Qt._)`${a} === "boolean" || ${s} === null + || (${a} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(o,(0,Qt._)`+${s}`);return;case"boolean":n.elseIf((0,Qt._)`${s} === "false" || ${s} === 0 || ${s} === null`).assign(o,!1).elseIf((0,Qt._)`${s} === "true" || ${s} === 1`).assign(o,!0);return;case"null":n.elseIf((0,Qt._)`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(o,null);return;case"array":n.elseIf((0,Qt._)`${a} === "string" || ${a} === "number" + || ${a} === "boolean" || ${s} === null`).assign(o,(0,Qt._)`[${s}]`)}}}function E6t({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,Qt._)`${e} !== undefined`,()=>t.assign((0,Qt._)`${e}[${r}]`,n))}function e9(t,e,r,n=Wy.Correct){let s=n===Wy.Correct?Qt.operators.EQ:Qt.operators.NEQ,i;switch(t){case"null":return(0,Qt._)`${e} ${s} null`;case"array":i=(0,Qt._)`Array.isArray(${e})`;break;case"object":i=(0,Qt._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,Qt._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,Qt._)`typeof ${e} ${s} ${t}`}return n===Wy.Correct?i:(0,Qt.not)(i);function a(o=Qt.nil){return(0,Qt.and)((0,Qt._)`typeof ${e} == "number"`,o,r?(0,Qt._)`isFinite(${e})`:Qt.nil)}}Mi.checkDataType=e9;function t9(t,e,r,n){if(t.length===1)return e9(t[0],e,r,n);let s,i=(0,MSe.toHash)(t);if(i.array&&i.object){let a=(0,Qt._)`typeof ${e} != "object"`;s=i.null?a:(0,Qt._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else s=Qt.nil;i.number&&delete i.integer;for(let a in i)s=(0,Qt.and)(s,e9(a,e,r,n));return s}Mi.checkDataTypes=t9;var _6t={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,Qt._)`{type: ${t}}`:(0,Qt._)`{type: ${e}}`};function r9(t){let e=S6t(t);(0,g6t.reportError)(e,_6t)}Mi.reportTypeError=r9;function S6t(t){let{gen:e,data:r,schema:n}=t,s=(0,MSe.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:t}}});var USe=E(XO=>{"use strict";Object.defineProperty(XO,"__esModule",{value:!0});XO.assignDefaults=void 0;var $y=Yt(),v6t=Wr();function C6t(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let s in r)FSe(t,s,r[s].default);else e==="array"&&Array.isArray(n)&&n.forEach((s,i)=>FSe(t,i,s.default))}XO.assignDefaults=C6t;function FSe(t,e,r){let{gen:n,compositeRule:s,data:i,opts:a}=t;if(r===void 0)return;let o=(0,$y._)`${i}${(0,$y.getProperty)(e)}`;if(s){(0,v6t.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,$y._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,$y._)`${c} || ${o} === null || ${o} === ""`),n.if(c,(0,$y._)`${o} = ${(0,$y.stringify)(r)}`)}});var nc=E(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.validateUnion=tn.validateArray=tn.usePattern=tn.callValidateCode=tn.schemaProperties=tn.allSchemaProperties=tn.noPropertyInData=tn.propertyInData=tn.isOwnProperty=tn.hasPropFunc=tn.reportMissingProp=tn.checkMissingProp=tn.checkReportMissingProp=void 0;var Ln=Yt(),n9=Wr(),Wp=Od(),I6t=Wr();function T6t(t,e){let{gen:r,data:n,it:s}=t;r.if(i9(r,n,e,s.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Ln._)`${e}`},!0),t.error()})}tn.checkReportMissingProp=T6t;function w6t({gen:t,data:e,it:{opts:r}},n,s){return(0,Ln.or)(...n.map(i=>(0,Ln.and)(i9(t,e,i,r.ownProperties),(0,Ln._)`${s} = ${i}`)))}tn.checkMissingProp=w6t;function R6t(t,e){t.setParams({missingProperty:e},!0),t.error()}tn.reportMissingProp=R6t;function qSe(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Ln._)`Object.prototype.hasOwnProperty`})}tn.hasPropFunc=qSe;function s9(t,e,r){return(0,Ln._)`${qSe(t)}.call(${e}, ${r})`}tn.isOwnProperty=s9;function N6t(t,e,r,n){let s=(0,Ln._)`${e}${(0,Ln.getProperty)(r)} !== undefined`;return n?(0,Ln._)`${s} && ${s9(t,e,r)}`:s}tn.propertyInData=N6t;function i9(t,e,r,n){let s=(0,Ln._)`${e}${(0,Ln.getProperty)(r)} === undefined`;return n?(0,Ln.or)(s,(0,Ln.not)(s9(t,e,r))):s}tn.noPropertyInData=i9;function jSe(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}tn.allSchemaProperties=jSe;function O6t(t,e){return jSe(e).filter(r=>!(0,n9.alwaysValidSchema)(t,e[r]))}tn.schemaProperties=O6t;function P6t({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:a},o,c,u){let l=u?(0,Ln._)`${t}, ${e}, ${n}${s}`:e,d=[[Wp.default.instancePath,(0,Ln.strConcat)(Wp.default.instancePath,i)],[Wp.default.parentData,a.parentData],[Wp.default.parentDataProperty,a.parentDataProperty],[Wp.default.rootData,Wp.default.rootData]];a.opts.dynamicRef&&d.push([Wp.default.dynamicAnchors,Wp.default.dynamicAnchors]);let f=(0,Ln._)`${l}, ${r.object(...d)}`;return c!==Ln.nil?(0,Ln._)`${o}.call(${c}, ${f})`:(0,Ln._)`${o}(${f})`}tn.callValidateCode=P6t;var D6t=(0,Ln._)`new RegExp`;function k6t({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:s}=e.code,i=s(r,n);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,Ln._)`${s.code==="new RegExp"?D6t:(0,I6t.useFunc)(t,s)}(${r}, ${n})`})}tn.usePattern=k6t;function L6t(t){let{gen:e,data:r,keyword:n,it:s}=t,i=e.name("valid");if(s.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,Ln._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:n9.Type.Num},i),e.if((0,Ln.not)(i),o)})}}tn.validateArray=L6t;function B6t(t){let{gen:e,schema:r,keyword:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,n9.alwaysValidSchema)(s,c))&&!s.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},o);e.assign(a,(0,Ln._)`${a} || ${o}`),t.mergeValidEvaluated(l,o)||e.if((0,Ln.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}tn.validateUnion=B6t});var GSe=E(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});tl.validateKeywordUsage=tl.validSchemaType=tl.funcKeywordCode=tl.macroKeywordCode=void 0;var ca=Yt(),rh=Od(),M6t=nc(),W6t=G_();function $6t(t,e){let{gen:r,keyword:n,schema:s,parentSchema:i,it:a}=t,o=e.macro.call(a.self,s,i,a),c=QSe(r,n,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let u=r.name("valid");t.subschema({schema:o,schemaPath:ca.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}tl.macroKeywordCode=$6t;function F6t(t,e){var r;let{gen:n,keyword:s,schema:i,parentSchema:a,$data:o,it:c}=t;q6t(c,e);let u=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,l=QSe(n,s,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&HSe(t),A(()=>t.error());else{let g=e.async?p():m();e.modifying&&HSe(t),A(()=>U6t(t,g))}}function p(){let g=n.let("ruleErrs",null);return n.try(()=>h((0,ca._)`await `),b=>n.assign(d,!1).if((0,ca._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(g,(0,ca._)`${b}.errors`),()=>n.throw(b))),g}function m(){let g=(0,ca._)`${l}.errors`;return n.assign(g,null),h(ca.nil),g}function h(g=e.async?(0,ca._)`await `:ca.nil){let b=c.opts.passContext?rh.default.this:rh.default.self,y=!("compile"in e&&!o||e.schema===!1);n.assign(d,(0,ca._)`${g}${(0,M6t.callValidateCode)(t,l,b,y)}`,e.modifying)}function A(g){var b;n.if((0,ca.not)((b=e.valid)!==null&&b!==void 0?b:d),g)}}tl.funcKeywordCode=F6t;function HSe(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,ca._)`${n.parentData}[${n.parentDataProperty}]`))}function U6t(t,e){let{gen:r}=t;r.if((0,ca._)`Array.isArray(${e})`,()=>{r.assign(rh.default.vErrors,(0,ca._)`${rh.default.vErrors} === null ? ${e} : ${rh.default.vErrors}.concat(${e})`).assign(rh.default.errors,(0,ca._)`${rh.default.vErrors}.length`),(0,W6t.extendErrors)(t)},()=>t.error())}function q6t({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function QSe(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,ca.stringify)(r)})}function j6t(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}tl.validSchemaType=j6t;function H6t({schema:t,opts:e,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw new Error("ajv implementation error");let a=s.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(s.validateSchema&&!s.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}tl.validateKeywordUsage=H6t});var zSe=E($p=>{"use strict";Object.defineProperty($p,"__esModule",{value:!0});$p.extendSubschemaMode=$p.extendSubschemaData=$p.getSubschema=void 0;var rl=Yt(),VSe=Wr();function Q6t(t,{keyword:e,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,rl._)`${t.schemaPath}${(0,rl.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,rl._)`${t.schemaPath}${(0,rl.getProperty)(e)}${(0,rl.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,VSe.escapeFragment)(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}$p.getSubschema=Q6t;function G6t(t,e,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:a}){if(s!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=o.let("data",(0,rl._)`${e.data}${(0,rl.getProperty)(r)}`,!0);c(f),t.errorPath=(0,rl.str)`${u}${(0,VSe.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,rl._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(s!==void 0){let u=s instanceof rl.Name?s:o.let("data",s,!0);c(u),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}$p.extendSubschemaData=G6t;function V6t(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){n!==void 0&&(t.compositeRule=n),s!==void 0&&(t.createErrors=s),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}$p.extendSubschemaMode=V6t});var YSe=E((tBr,KSe)=>{"use strict";var Fp=KSe.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};ZO(e,n,s,t,"",t)};Fp.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Fp.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Fp.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Fp.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function ZO(t,e,r,n,s,i,a,o,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,s,i,a,o,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in Fp.arrayKeywords)for(var f=0;f{"use strict";Object.defineProperty(qa,"__esModule",{value:!0});qa.getSchemaRefs=qa.resolveUrl=qa.normalizeId=qa._getFullPath=qa.getFullPath=qa.inlineRef=void 0;var K6t=Wr(),Y6t=Go(),J6t=YSe(),X6t=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Z6t(t,e=!0){return typeof t=="boolean"?!0:e===!0?!a9(t):e?JSe(t)<=e:!1}qa.inlineRef=Z6t;var e5t=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function a9(t){for(let e in t){if(e5t.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(a9)||typeof r=="object"&&a9(r))return!0}return!1}function JSe(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!X6t.has(r)&&(typeof t[r]=="object"&&(0,K6t.eachItem)(t[r],n=>e+=JSe(n)),e===1/0))return 1/0}return e}function XSe(t,e="",r){r!==!1&&(e=Fy(e));let n=t.parse(e);return ZSe(t,n)}qa.getFullPath=XSe;function ZSe(t,e){return t.serialize(e).split("#")[0]+"#"}qa._getFullPath=ZSe;var t5t=/#\/?$/;function Fy(t){return t?t.replace(t5t,""):""}qa.normalizeId=Fy;function r5t(t,e,r){return r=Fy(r),t.resolve(e,r)}qa.resolveUrl=r5t;var n5t=/^[a-z_][-a-z0-9._]*$/i;function s5t(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=Fy(t[r]||e),i={"":s},a=XSe(n,s,!1),o={},c=new Set;return J6t(t,{allKeys:!0},(d,f,p,m)=>{if(m===void 0)return;let h=a+f,A=i[m];typeof d[r]=="string"&&(A=g.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),i[f]=A;function g(y){let x=this.opts.uriResolver.resolve;if(y=Fy(A?x(A,y):y),c.has(y))throw l(y);c.add(y);let v=this.refs[y];return typeof v=="string"&&(v=this.refs[v]),typeof v=="object"?u(d,v.schema,y):y!==Fy(h)&&(y[0]==="#"?(u(d,o[y],y),o[y]=d):this.refs[y]=h),y}function b(y){if(typeof y=="string"){if(!n5t.test(y))throw new Error(`invalid anchor "${y}"`);g.call(this,`#${y}`)}}}),o;function u(d,f,p){if(f!==void 0&&!Y6t(d,f))throw l(p)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}qa.getSchemaRefs=s5t});var J_=E(Up=>{"use strict";Object.defineProperty(Up,"__esModule",{value:!0});Up.getData=Up.KeywordCxt=Up.validateFunctionCode=void 0;var sve=kSe(),eve=V_(),c9=Z7(),eP=V_(),i5t=USe(),Y_=GSe(),o9=zSe(),ot=Yt(),Ot=Od(),a5t=z_(),Pd=Wr(),K_=G_();function o5t(t){if(ove(t)&&(cve(t),ave(t))){l5t(t);return}ive(t,()=>(0,sve.topBoolOrEmptySchema)(t))}Up.validateFunctionCode=o5t;function ive({gen:t,validateName:e,schema:r,schemaEnv:n,opts:s},i){s.code.es5?t.func(e,(0,ot._)`${Ot.default.data}, ${Ot.default.valCxt}`,n.$async,()=>{t.code((0,ot._)`"use strict"; ${tve(r,s)}`),u5t(t,s),t.code(i)}):t.func(e,(0,ot._)`${Ot.default.data}, ${c5t(s)}`,n.$async,()=>t.code(tve(r,s)).code(i))}function c5t(t){return(0,ot._)`{${Ot.default.instancePath}="", ${Ot.default.parentData}, ${Ot.default.parentDataProperty}, ${Ot.default.rootData}=${Ot.default.data}${t.dynamicRef?(0,ot._)`, ${Ot.default.dynamicAnchors}={}`:ot.nil}}={}`}function u5t(t,e){t.if(Ot.default.valCxt,()=>{t.var(Ot.default.instancePath,(0,ot._)`${Ot.default.valCxt}.${Ot.default.instancePath}`),t.var(Ot.default.parentData,(0,ot._)`${Ot.default.valCxt}.${Ot.default.parentData}`),t.var(Ot.default.parentDataProperty,(0,ot._)`${Ot.default.valCxt}.${Ot.default.parentDataProperty}`),t.var(Ot.default.rootData,(0,ot._)`${Ot.default.valCxt}.${Ot.default.rootData}`),e.dynamicRef&&t.var(Ot.default.dynamicAnchors,(0,ot._)`${Ot.default.valCxt}.${Ot.default.dynamicAnchors}`)},()=>{t.var(Ot.default.instancePath,(0,ot._)`""`),t.var(Ot.default.parentData,(0,ot._)`undefined`),t.var(Ot.default.parentDataProperty,(0,ot._)`undefined`),t.var(Ot.default.rootData,Ot.default.data),e.dynamicRef&&t.var(Ot.default.dynamicAnchors,(0,ot._)`{}`)})}function l5t(t){let{schema:e,opts:r,gen:n}=t;ive(t,()=>{r.$comment&&e.$comment&&lve(t),h5t(t),n.let(Ot.default.vErrors,null),n.let(Ot.default.errors,0),r.unevaluated&&d5t(t),uve(t),y5t(t)})}function d5t(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,ot._)`${r}.evaluated`),e.if((0,ot._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,ot._)`${t.evaluated}.props`,(0,ot._)`undefined`)),e.if((0,ot._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,ot._)`${t.evaluated}.items`,(0,ot._)`undefined`))}function tve(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,ot._)`/*# sourceURL=${r} */`:ot.nil}function f5t(t,e){if(ove(t)&&(cve(t),ave(t))){p5t(t,e);return}(0,sve.boolOrEmptySchema)(t,e)}function ave({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function ove(t){return typeof t.schema!="boolean"}function p5t(t,e){let{schema:r,gen:n,opts:s}=t;s.$comment&&r.$comment&&lve(t),g5t(t),A5t(t);let i=n.const("_errs",Ot.default.errors);uve(t,i),n.var(e,(0,ot._)`${i} === ${Ot.default.errors}`)}function cve(t){(0,Pd.checkUnknownRules)(t),m5t(t)}function uve(t,e){if(t.opts.jtd)return rve(t,[],!1,e);let r=(0,eve.getSchemaTypes)(t.schema),n=(0,eve.coerceAndCheckDataType)(t,r);rve(t,r,!n,e)}function m5t(t){let{schema:e,errSchemaPath:r,opts:n,self:s}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Pd.schemaHasRulesButRef)(e,s.RULES)&&s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function h5t(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Pd.checkStrictMode)(t,"default is ignored in the schema root")}function g5t(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,a5t.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function A5t(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function lve({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)t.code((0,ot._)`${Ot.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let a=(0,ot.str)`${n}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,ot._)`${Ot.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function y5t(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=t;r.$async?e.if((0,ot._)`${Ot.default.errors} === 0`,()=>e.return(Ot.default.data),()=>e.throw((0,ot._)`new ${s}(${Ot.default.vErrors})`)):(e.assign((0,ot._)`${n}.errors`,Ot.default.vErrors),i.unevaluated&&x5t(t),e.return((0,ot._)`${Ot.default.errors} === 0`))}function x5t({gen:t,evaluated:e,props:r,items:n}){r instanceof ot.Name&&t.assign((0,ot._)`${e}.props`,r),n instanceof ot.Name&&t.assign((0,ot._)`${e}.items`,n)}function rve(t,e,r,n){let{gen:s,schema:i,data:a,allErrors:o,opts:c,self:u}=t,{RULES:l}=u;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,Pd.schemaHasRulesButRef)(i,l))){s.block(()=>fve(t,"$ref",l.all.$ref.definition));return}c.jtd||b5t(t,e),s.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,c9.shouldUseGroup)(i,f)&&(f.type?(s.if((0,eP.checkDataType)(f.type,a,c.strictNumbers)),nve(t,f),e.length===1&&e[0]===f.type&&r&&(s.else(),(0,eP.reportTypeError)(t)),s.endIf()):nve(t,f),o||s.if((0,ot._)`${Ot.default.errors} === ${n||0}`))}}function nve(t,e){let{gen:r,schema:n,opts:{useDefaults:s}}=t;s&&(0,i5t.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,c9.shouldUseRule)(n,i)&&fve(t,i.keyword,i.definition,e.type)})}function b5t(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(E5t(t,e),t.opts.allowUnionTypes||_5t(t,e),S5t(t,t.dataTypes))}function E5t(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{dve(t.dataTypes,r)||u9(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),C5t(t,e)}}function _5t(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&u9(t,"use allowUnionTypes to allow union type keyword")}function S5t(t,e){let r=t.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&(0,c9.shouldUseRule)(t.schema,s)){let{type:i}=s.definition;i.length&&!i.some(a=>v5t(e,a))&&u9(t,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function v5t(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function dve(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function C5t(t,e){let r=[];for(let n of t.dataTypes)dve(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function u9(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Pd.checkStrictMode)(t,e,t.opts.strictTypes)}var tP=class{constructor(e,r,n){if((0,Y_.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Pd.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",pve(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Y_.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",Ot.default.errors))}result(e,r,n){this.failResult((0,ot.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,ot.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,ot._)`${r} !== undefined && (${(0,ot.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?K_.reportExtraError:K_.reportError)(this,this.def.error,r)}$dataError(){(0,K_.reportError)(this,this.def.$dataError||K_.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,K_.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=ot.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=ot.nil,r=ot.nil){if(!this.$data)return;let{gen:n,schemaCode:s,schemaType:i,def:a}=this;n.if((0,ot.or)((0,ot._)`${s} === undefined`,r)),e!==ot.nil&&n.assign(e,!0),(i.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==ot.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:s,it:i}=this;return(0,ot.or)(a(),o());function a(){if(n.length){if(!(r instanceof ot.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,ot._)`${(0,eP.checkDataTypes)(c,r,i.opts.strictNumbers,eP.DataType.Wrong)}`}return ot.nil}function o(){if(s.validateSchema){let c=e.scopeValue("validate$data",{ref:s.validateSchema});return(0,ot._)`!${c}(${r})`}return ot.nil}}subschema(e,r){let n=(0,o9.getSubschema)(this.it,e);(0,o9.extendSubschemaData)(n,this.it,e),(0,o9.extendSubschemaMode)(n,e);let s={...this.it,...n,items:void 0,props:void 0};return f5t(s,r),s}mergeEvaluated(e,r){let{it:n,gen:s}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Pd.mergeEvaluated.props(s,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Pd.mergeEvaluated.items(s,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:s}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return s.if(r,()=>this.mergeEvaluated(e,ot.Name)),!0}};Up.KeywordCxt=tP;function fve(t,e,r,n){let s=new tP(t,r,e);"code"in r?r.code(s,n):s.$data&&r.validate?(0,Y_.funcKeywordCode)(s,r):"macro"in r?(0,Y_.macroKeywordCode)(s,r):(r.compile||r.validate)&&(0,Y_.funcKeywordCode)(s,r)}var I5t=/^\/(?:[^~]|~0|~1)*$/,T5t=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function pve(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let s,i;if(t==="")return Ot.default.rootData;if(t[0]==="/"){if(!I5t.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);s=t,i=Ot.default.rootData}else{let u=T5t.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(s=u[2],s==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(i=r[e-l],!s)return i}let a=i,o=s.split("/");for(let u of o)u&&(i=(0,ot._)`${i}${(0,ot.getProperty)((0,Pd.unescapeJsonPointer)(u))}`,a=(0,ot._)`${a} && ${i}`);return a;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}Up.getData=pve});var rP=E(d9=>{"use strict";Object.defineProperty(d9,"__esModule",{value:!0});var l9=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};d9.default=l9});var X_=E(m9=>{"use strict";Object.defineProperty(m9,"__esModule",{value:!0});var f9=z_(),p9=class extends Error{constructor(e,r,n,s){super(s||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,f9.resolveUrl)(e,r,n),this.missingSchema=(0,f9.normalizeId)((0,f9.getFullPath)(e,this.missingRef))}};m9.default=p9});var sP=E(sc=>{"use strict";Object.defineProperty(sc,"__esModule",{value:!0});sc.resolveSchema=sc.getCompilingSchema=sc.resolveRef=sc.compileSchema=sc.SchemaEnv=void 0;var Yc=Yt(),w5t=rP(),nh=Od(),Jc=z_(),mve=Wr(),R5t=J_(),Uy=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Jc.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};sc.SchemaEnv=Uy;function g9(t){let e=hve.call(this,t);if(e)return e;let r=(0,Jc.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,a=new Yc.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:w5t.default,code:(0,Yc._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let u={gen:a,allErrors:this.opts.allErrors,data:nh.default.data,parentData:nh.default.parentData,parentDataProperty:nh.default.parentDataProperty,dataNames:[nh.default.data],dataPathArr:[Yc.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Yc.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Yc.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Yc._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,R5t.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let d=a.toString();l=`${a.scopeRefs(nh.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let p=new Function(`${nh.default.self}`,`${nh.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:h}=u;p.evaluated={props:m instanceof Yc.Name?void 0:m,items:h instanceof Yc.Name?void 0:h,dynamicProps:m instanceof Yc.Name,dynamicItems:h instanceof Yc.Name},p.source&&(p.source.evaluated=(0,Yc.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}sc.compileSchema=g9;function N5t(t,e,r){var n;r=(0,Jc.resolveUrl)(this.opts.uriResolver,e,r);let s=t.refs[r];if(s)return s;let i=D5t.call(this,t,r);if(i===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:o}=this.opts;a&&(i=new Uy({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=O5t.call(this,i)}sc.resolveRef=N5t;function O5t(t){return(0,Jc.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:g9.call(this,t)}function hve(t){for(let e of this._compilations)if(P5t(e,t))return e}sc.getCompilingSchema=hve;function P5t(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function D5t(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||nP.call(this,t,e)}function nP(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Jc._getFullPath)(this.opts.uriResolver,r),s=(0,Jc.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===s)return h9.call(this,r,t);let i=(0,Jc.normalizeId)(n),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=nP.call(this,t,a);return typeof o?.schema!="object"?void 0:h9.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||g9.call(this,a),i===(0,Jc.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,u=o[c];return u&&(s=(0,Jc.resolveUrl)(this.opts.uriResolver,s,u)),new Uy({schema:o,schemaId:c,root:t,baseId:s})}return h9.call(this,r,a)}}sc.resolveSchema=nP;var k5t=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function h9(t,{baseId:e,schema:r,root:n}){var s;if(((s=t.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,mve.unescapeFragment)(o)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!k5t.has(o)&&u&&(e=(0,Jc.resolveUrl)(this.opts.uriResolver,e,u))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,mve.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Jc.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=nP.call(this,n,o)}let{schemaId:a}=this.opts;if(i=i||new Uy({schema:r,schemaId:a,root:n,baseId:e}),i.schema!==i.root.schema)return i}});var gve=E((oBr,L5t)=>{L5t.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var y9=E((cBr,bve)=>{"use strict";var B5t=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),yve=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function A9(t){let e="",r=0,n=0;for(n=0;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var M5t=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Ave(t){return t.length=0,!0}function W5t(t,e,r){if(t.length){let n=A9(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function $5t(t){let e=0,r={error:!1,address:"",zone:""},n=[],s=[],i=!1,a=!1,o=W5t;for(let c=0;c7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),n.push(":");continue}else if(u==="%"){if(!o(s,n,r))break;o=Ave}else{s.push(u);continue}}return s.length&&(o===Ave?r.zone=s.join(""):a?n.push(s.join("")):n.push(A9(s))),r.address=n.join(""),r}function xve(t){if(F5t(t,":")<2)return{host:t,isIPV6:!1};let e=$5t(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function F5t(t,e){let r=0;for(let n=0;n{"use strict";var{isUUID:H5t}=y9(),Q5t=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,G5t=["http","https","ws","wss","urn","urn:uuid"];function V5t(t){return G5t.indexOf(t)!==-1}function x9(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function Eve(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function _ve(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function z5t(t){return t.secure=x9(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function K5t(t){if((t.port===(x9(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function Y5t(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(Q5t);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let s=`${n}:${e.nid||t.nid}`,i=b9(s);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function J5t(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),s=`${r}:${e.nid||n}`,i=b9(s);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${n||e.nid}:${o}`,e.skipEscape=!0,a}function X5t(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!H5t(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function Z5t(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Sve={scheme:"http",domainHost:!0,parse:Eve,serialize:_ve},e8t={scheme:"https",domainHost:Sve.domainHost,parse:Eve,serialize:_ve},iP={scheme:"ws",domainHost:!0,parse:z5t,serialize:K5t},t8t={scheme:"wss",domainHost:iP.domainHost,parse:iP.parse,serialize:iP.serialize},r8t={scheme:"urn",parse:Y5t,serialize:J5t,skipNormalize:!0},n8t={scheme:"urn:uuid",parse:X5t,serialize:Z5t,skipNormalize:!0},aP={http:Sve,https:e8t,ws:iP,wss:t8t,urn:r8t,"urn:uuid":n8t};Object.setPrototypeOf(aP,null);function b9(t){return t&&(aP[t]||aP[t.toLowerCase()])||void 0}vve.exports={wsIsSecure:x9,SCHEMES:aP,isValidSchemeName:V5t,getSchemeHandler:b9}});var wve=E((lBr,cP)=>{"use strict";var{normalizeIPv6:s8t,removeDotSegments:Z_,recomposeAuthority:i8t,normalizeComponentEncoding:oP,isIPv4:a8t,nonSimpleDomain:o8t}=y9(),{SCHEMES:c8t,getSchemeHandler:Ive}=Cve();function u8t(t,e){return typeof t=="string"?t=nl(Dd(t,e),e):typeof t=="object"&&(t=Dd(nl(t,e),e)),t}function l8t(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},s=Tve(Dd(t,n),Dd(e,n),n,!0);return n.skipEscape=!0,nl(s,n)}function Tve(t,e,r,n){let s={};return n||(t=Dd(nl(t,r),r),e=Dd(nl(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(s.scheme=e.scheme,s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=Z_(e.path||""),s.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(s.userinfo=e.userinfo,s.host=e.host,s.port=e.port,s.path=Z_(e.path||""),s.query=e.query):(e.path?(e.path[0]==="/"?s.path=Z_(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?s.path="/"+e.path:t.path?s.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:s.path=e.path,s.path=Z_(s.path)),s.query=e.query):(s.path=t.path,e.query!==void 0?s.query=e.query:s.query=t.query),s.userinfo=t.userinfo,s.host=t.host,s.port=t.port),s.scheme=t.scheme),s.fragment=e.fragment,s}function d8t(t,e,r){return typeof t=="string"?(t=unescape(t),t=nl(oP(Dd(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=nl(oP(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=nl(oP(Dd(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=nl(oP(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function nl(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),s=[],i=Ive(n.scheme||r.scheme);i&&i.serialize&&i.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&s.push(r.scheme,":");let a=i8t(r);if(a!==void 0&&(n.reference!=="suffix"&&s.push("//"),s.push(a),r.path&&r.path[0]!=="/"&&s.push("/")),r.path!==void 0){let o=r.path;!n.absolutePath&&(!i||!i.absolutePath)&&(o=Z_(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),s.push(o)}return r.query!==void 0&&s.push("?",r.query),r.fragment!==void 0&&s.push("#",r.fragment),s.join("")}var f8t=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Dd(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(f8t);if(i){if(n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]),n.host)if(a8t(n.host)===!1){let c=s8t(n.host);n.host=c.host.toLowerCase(),s=c.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let a=Ive(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&s===!1&&o8t(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(o){n.error=n.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var E9={SCHEMES:c8t,normalize:u8t,resolve:l8t,resolveComponent:Tve,equal:d8t,serialize:nl,parse:Dd};cP.exports=E9;cP.exports.default=E9;cP.exports.fastUri=E9});var Nve=E(_9=>{"use strict";Object.defineProperty(_9,"__esModule",{value:!0});var Rve=wve();Rve.code='require("ajv/dist/runtime/uri").default';_9.default=Rve});var Wve=E(mi=>{"use strict";Object.defineProperty(mi,"__esModule",{value:!0});mi.CodeGen=mi.Name=mi.nil=mi.stringify=mi.str=mi._=mi.KeywordCxt=void 0;var p8t=J_();Object.defineProperty(mi,"KeywordCxt",{enumerable:!0,get:function(){return p8t.KeywordCxt}});var qy=Yt();Object.defineProperty(mi,"_",{enumerable:!0,get:function(){return qy._}});Object.defineProperty(mi,"str",{enumerable:!0,get:function(){return qy.str}});Object.defineProperty(mi,"stringify",{enumerable:!0,get:function(){return qy.stringify}});Object.defineProperty(mi,"nil",{enumerable:!0,get:function(){return qy.nil}});Object.defineProperty(mi,"Name",{enumerable:!0,get:function(){return qy.Name}});Object.defineProperty(mi,"CodeGen",{enumerable:!0,get:function(){return qy.CodeGen}});var m8t=rP(),Lve=X_(),h8t=X7(),eS=sP(),g8t=Yt(),tS=z_(),uP=V_(),v9=Wr(),Ove=gve(),A8t=Nve(),Bve=(t,e)=>new RegExp(t,e);Bve.code="new RegExp";var y8t=["removeAdditional","useDefaults","coerceTypes"],x8t=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),b8t={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},E8t={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Pve=200;function _8t(t){var e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b,y,x,v,C,R,w,N;let P=t.strict,L=(e=t.code)===null||e===void 0?void 0:e.optimize,M=L===!0||L===void 0?1:L||0,k=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Bve,B=(s=t.uriResolver)!==null&&s!==void 0?s:A8t.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:P)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:P)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:P)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:P)!==null&&f!==void 0?f:"log",strictRequired:(m=(p=t.strictRequired)!==null&&p!==void 0?p:P)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:M,regExp:k}:{optimize:M,regExp:k},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Pve,loopEnum:(A=t.loopEnum)!==null&&A!==void 0?A:Pve,meta:(g=t.meta)!==null&&g!==void 0?g:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(y=t.inlineRefs)!==null&&y!==void 0?y:!0,schemaId:(x=t.schemaId)!==null&&x!==void 0?x:"$id",addUsedSchema:(v=t.addUsedSchema)!==null&&v!==void 0?v:!0,validateSchema:(C=t.validateSchema)!==null&&C!==void 0?C:!0,validateFormats:(R=t.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(w=t.unicodeRegExp)!==null&&w!==void 0?w:!0,int32range:(N=t.int32range)!==null&&N!==void 0?N:!0,uriResolver:B}}var rS=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,..._8t(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new g8t.ValueScope({scope:{},prefixes:x8t,es5:r,lines:n}),this.logger=w8t(e.logger);let s=e.validateFormats;e.validateFormats=!1,this.RULES=(0,h8t.getRules)(),Dve.call(this,b8t,e,"NOT SUPPORTED"),Dve.call(this,E8t,e,"DEPRECATED","warn"),this._metaOpts=I8t.call(this),e.formats&&v8t.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&C8t.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),S8t.call(this),e.validateFormats=s}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,s=Ove;n==="id"&&(s={...Ove},s.id=s.$id,delete s.$id),r&&e&&this.addMetaSchema(s,s[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let s=n(r);return"$async"in n||(this.errors=n.errors),s}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return s.call(this,e,r);async function s(l,d){await i.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||a.call(this,f)}async function i(l){l&&!this.getSchema(l)&&await s.call(this,{$ref:l},!0)}async function a(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Lve.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,l)}}function o({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await i.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,s=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,s);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,tS.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,s,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let s=this.validate(n,e);if(!s&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return s}getSchema(e){let r;for(;typeof(r=kve.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,s=new eS.SchemaEnv({schema:{},schemaId:n});if(r=eS.resolveSchema.call(this,s,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=kve.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,tS.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(N8t.call(this,n,r),!r)return(0,v9.eachItem)(n,i=>S9.call(this,i)),this;P8t.call(this,r);let s={...r,type:(0,uP.getJSONTypes)(r.type),schemaType:(0,uP.getJSONTypes)(r.schemaType)};return(0,v9.eachItem)(n,s.type.length===0?i=>S9.call(this,i,s):i=>s.type.forEach(a=>S9.call(this,i,s,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let s=n.rules.findIndex(i=>i.keyword===e);s>=0&&n.rules.splice(s,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(s=>`${n}${s.instancePath} ${s.message}`).reduce((s,i)=>s+r+i)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let s of r){let i=s.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in n){let c=n[o];if(typeof c!="object")continue;let{$data:u}=c.definition,l=a[o];u&&l&&(a[o]=Mve(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let s=e[n];(!r||r.test(n))&&(typeof s=="string"?delete e[n]:s&&!s.meta&&(this._cache.delete(s.schema),delete e[n]))}}_addSchema(e,r,n,s=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,tS.normalizeId)(a||n);let u=tS.getSchemaRefs.call(this,e,n);return c=new eS.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),i&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),s&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):eS.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{eS.compileSchema.call(this,e)}finally{this.opts=r}}};rS.ValidationError=m8t.default;rS.MissingRefError=Lve.default;mi.default=rS;function Dve(t,e,r,n="error"){for(let s in t){let i=s;i in e&&this.logger[n](`${r}: option ${s}. ${t[i]}`)}}function kve(t){return t=(0,tS.normalizeId)(t),this.schemas[t]||this.refs[t]}function S8t(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function v8t(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function C8t(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function I8t(){let t={...this.opts};for(let e of y8t)delete t[e];return t}var T8t={log(){},warn(){},error(){}};function w8t(t){if(t===!1)return T8t;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var R8t=/^[a-z_$][a-z0-9_$:-]*$/i;function N8t(t,e){let{RULES:r}=this;if((0,v9.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!R8t.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function S9(t,e,r){var n;let s=e?.post;if(r&&s)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=s?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,uP.getJSONTypes)(e.type),schemaType:(0,uP.getJSONTypes)(e.schemaType)}};e.before?O8t.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function O8t(t,e,r){let n=t.rules.findIndex(s=>s.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function P8t(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Mve(e)),t.validateSchema=this.compile(e,!0))}var D8t={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Mve(t){return{anyOf:[t,D8t]}}});var $ve=E(C9=>{"use strict";Object.defineProperty(C9,"__esModule",{value:!0});var k8t={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};C9.default=k8t});var jve=E(sh=>{"use strict";Object.defineProperty(sh,"__esModule",{value:!0});sh.callRef=sh.getValidate=void 0;var L8t=X_(),Fve=nc(),ja=Yt(),jy=Od(),Uve=sP(),lP=Wr(),B8t={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:s,schemaEnv:i,validateName:a,opts:o,self:c}=n,{root:u}=i;if((r==="#"||r==="#/")&&s===u.baseId)return d();let l=Uve.resolveRef.call(c,u,s,r);if(l===void 0)throw new L8t.default(n.opts.uriResolver,s,r);if(l instanceof Uve.SchemaEnv)return f(l);return p(l);function d(){if(i===u)return dP(t,a,i,i.$async);let m=e.scopeValue("root",{ref:u});return dP(t,(0,ja._)`${m}.validate`,u,u.$async)}function f(m){let h=qve(t,m);dP(t,h,m,m.$async)}function p(m){let h=e.scopeValue("schema",o.code.source===!0?{ref:m,code:(0,ja.stringify)(m)}:{ref:m}),A=e.name("valid"),g=t.subschema({schema:m,dataTypes:[],schemaPath:ja.nil,topSchemaRef:h,errSchemaPath:r},A);t.mergeEvaluated(g),t.ok(A)}}};function qve(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,ja._)`${r.scopeValue("wrapper",{ref:e})}.validate`}sh.getValidate=qve;function dP(t,e,r,n){let{gen:s,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,u=c.passContext?jy.default.this:ja.nil;n?l():d();function l(){if(!o.$async)throw new Error("async schema referenced by sync schema");let m=s.let("valid");s.try(()=>{s.code((0,ja._)`await ${(0,Fve.callValidateCode)(t,e,u)}`),p(e),a||s.assign(m,!0)},h=>{s.if((0,ja._)`!(${h} instanceof ${i.ValidationError})`,()=>s.throw(h)),f(h),a||s.assign(m,!1)}),t.ok(m)}function d(){t.result((0,Fve.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(m){let h=(0,ja._)`${m}.errors`;s.assign(jy.default.vErrors,(0,ja._)`${jy.default.vErrors} === null ? ${h} : ${jy.default.vErrors}.concat(${h})`),s.assign(jy.default.errors,(0,ja._)`${jy.default.vErrors}.length`)}function p(m){var h;if(!i.opts.unevaluated)return;let A=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(i.props!==!0)if(A&&!A.dynamicProps)A.props!==void 0&&(i.props=lP.mergeEvaluated.props(s,A.props,i.props));else{let g=s.var("props",(0,ja._)`${m}.evaluated.props`);i.props=lP.mergeEvaluated.props(s,g,i.props,ja.Name)}if(i.items!==!0)if(A&&!A.dynamicItems)A.items!==void 0&&(i.items=lP.mergeEvaluated.items(s,A.items,i.items));else{let g=s.var("items",(0,ja._)`${m}.evaluated.items`);i.items=lP.mergeEvaluated.items(s,g,i.items,ja.Name)}}}sh.callRef=dP;sh.default=B8t});var Hve=E(I9=>{"use strict";Object.defineProperty(I9,"__esModule",{value:!0});var M8t=$ve(),W8t=jve(),$8t=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",M8t.default,W8t.default];I9.default=$8t});var Qve=E(T9=>{"use strict";Object.defineProperty(T9,"__esModule",{value:!0});var fP=Yt(),qp=fP.operators,pP={maximum:{okStr:"<=",ok:qp.LTE,fail:qp.GT},minimum:{okStr:">=",ok:qp.GTE,fail:qp.LT},exclusiveMaximum:{okStr:"<",ok:qp.LT,fail:qp.GTE},exclusiveMinimum:{okStr:">",ok:qp.GT,fail:qp.LTE}},F8t={message:({keyword:t,schemaCode:e})=>(0,fP.str)`must be ${pP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,fP._)`{comparison: ${pP[t].okStr}, limit: ${e}}`},U8t={keyword:Object.keys(pP),type:"number",schemaType:"number",$data:!0,error:F8t,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,fP._)`${r} ${pP[e].fail} ${n} || isNaN(${r})`)}};T9.default=U8t});var Gve=E(w9=>{"use strict";Object.defineProperty(w9,"__esModule",{value:!0});var nS=Yt(),q8t={message:({schemaCode:t})=>(0,nS.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,nS._)`{multipleOf: ${t}}`},j8t={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:q8t,code(t){let{gen:e,data:r,schemaCode:n,it:s}=t,i=s.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,nS._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,nS._)`${a} !== parseInt(${a})`;t.fail$data((0,nS._)`(${n} === 0 || (${a} = ${r}/${n}, ${o}))`)}};w9.default=j8t});var zve=E(R9=>{"use strict";Object.defineProperty(R9,"__esModule",{value:!0});function Vve(t){let e=t.length,r=0,n=0,s;for(;n=55296&&s<=56319&&n{"use strict";Object.defineProperty(N9,"__esModule",{value:!0});var ih=Yt(),H8t=Wr(),Q8t=zve(),G8t={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,ih.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,ih._)`{limit: ${t}}`},V8t={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:G8t,code(t){let{keyword:e,data:r,schemaCode:n,it:s}=t,i=e==="maxLength"?ih.operators.GT:ih.operators.LT,a=s.opts.unicode===!1?(0,ih._)`${r}.length`:(0,ih._)`${(0,H8t.useFunc)(t.gen,Q8t.default)}(${r})`;t.fail$data((0,ih._)`${a} ${i} ${n}`)}};N9.default=V8t});var Yve=E(O9=>{"use strict";Object.defineProperty(O9,"__esModule",{value:!0});var z8t=nc(),mP=Yt(),K8t={message:({schemaCode:t})=>(0,mP.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,mP._)`{pattern: ${t}}`},Y8t={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:K8t,code(t){let{data:e,$data:r,schema:n,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"",o=r?(0,mP._)`(new RegExp(${s}, ${a}))`:(0,z8t.usePattern)(t,n);t.fail$data((0,mP._)`!${o}.test(${e})`)}};O9.default=Y8t});var Jve=E(P9=>{"use strict";Object.defineProperty(P9,"__esModule",{value:!0});var sS=Yt(),J8t={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,sS.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,sS._)`{limit: ${t}}`},X8t={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:J8t,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxProperties"?sS.operators.GT:sS.operators.LT;t.fail$data((0,sS._)`Object.keys(${r}).length ${s} ${n}`)}};P9.default=X8t});var Xve=E(D9=>{"use strict";Object.defineProperty(D9,"__esModule",{value:!0});var iS=nc(),aS=Yt(),Z8t=Wr(),eWt={message:({params:{missingProperty:t}})=>(0,aS.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,aS._)`{missingProperty: ${t}}`},tWt={keyword:"required",type:"object",schemaType:"array",$data:!0,error:eWt,code(t){let{gen:e,schema:r,schemaCode:n,data:s,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?u():l(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(p?.[h]===void 0&&!m.has(h)){let A=a.schemaEnv.baseId+a.errSchemaPath,g=`required property "${h}" is not defined at "${A}" (strictRequired)`;(0,Z8t.checkStrictMode)(a,g,a.opts.strictRequired)}}function u(){if(c||i)t.block$data(aS.nil,d);else for(let p of r)(0,iS.checkReportMissingProp)(t,p)}function l(){let p=e.let("missing");if(c||i){let m=e.let("valid",!0);t.block$data(m,()=>f(p,m)),t.ok(m)}else e.if((0,iS.checkMissingProp)(t,r,p)),(0,iS.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",n,p=>{t.setParams({missingProperty:p}),e.if((0,iS.noPropertyInData)(e,s,p,o.ownProperties),()=>t.error())})}function f(p,m){t.setParams({missingProperty:p}),e.forOf(p,n,()=>{e.assign(m,(0,iS.propertyInData)(e,s,p,o.ownProperties)),e.if((0,aS.not)(m),()=>{t.error(),e.break()})},aS.nil)}}};D9.default=tWt});var Zve=E(k9=>{"use strict";Object.defineProperty(k9,"__esModule",{value:!0});var oS=Yt(),rWt={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,oS.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,oS._)`{limit: ${t}}`},nWt={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:rWt,code(t){let{keyword:e,data:r,schemaCode:n}=t,s=e==="maxItems"?oS.operators.GT:oS.operators.LT;t.fail$data((0,oS._)`${r}.length ${s} ${n}`)}};k9.default=nWt});var hP=E(L9=>{"use strict";Object.defineProperty(L9,"__esModule",{value:!0});var eCe=Go();eCe.code='require("ajv/dist/runtime/equal").default';L9.default=eCe});var tCe=E(M9=>{"use strict";Object.defineProperty(M9,"__esModule",{value:!0});var B9=V_(),hi=Yt(),sWt=Wr(),iWt=hP(),aWt={message:({params:{i:t,j:e}})=>(0,hi.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,hi._)`{i: ${t}, j: ${e}}`},oWt={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:aWt,code(t){let{gen:e,data:r,$data:n,schema:s,parentSchema:i,schemaCode:a,it:o}=t;if(!n&&!s)return;let c=e.let("valid"),u=i.items?(0,B9.getSchemaTypes)(i.items):[];t.block$data(c,l,(0,hi._)`${a} === false`),t.ok(c);function l(){let m=e.let("i",(0,hi._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,hi._)`${m} > 1`,()=>(d()?f:p)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function f(m,h){let A=e.name("item"),g=(0,B9.checkDataTypes)(u,A,o.opts.strictNumbers,B9.DataType.Wrong),b=e.const("indices",(0,hi._)`{}`);e.for((0,hi._)`;${m}--;`,()=>{e.let(A,(0,hi._)`${r}[${m}]`),e.if(g,(0,hi._)`continue`),u.length>1&&e.if((0,hi._)`typeof ${A} == "string"`,(0,hi._)`${A} += "_"`),e.if((0,hi._)`typeof ${b}[${A}] == "number"`,()=>{e.assign(h,(0,hi._)`${b}[${A}]`),t.error(),e.assign(c,!1).break()}).code((0,hi._)`${b}[${A}] = ${m}`)})}function p(m,h){let A=(0,sWt.useFunc)(e,iWt.default),g=e.name("outer");e.label(g).for((0,hi._)`;${m}--;`,()=>e.for((0,hi._)`${h} = ${m}; ${h}--;`,()=>e.if((0,hi._)`${A}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(g)})))}}};M9.default=oWt});var rCe=E($9=>{"use strict";Object.defineProperty($9,"__esModule",{value:!0});var W9=Yt(),cWt=Wr(),uWt=hP(),lWt={message:"must be equal to constant",params:({schemaCode:t})=>(0,W9._)`{allowedValue: ${t}}`},dWt={keyword:"const",$data:!0,error:lWt,code(t){let{gen:e,data:r,$data:n,schemaCode:s,schema:i}=t;n||i&&typeof i=="object"?t.fail$data((0,W9._)`!${(0,cWt.useFunc)(e,uWt.default)}(${r}, ${s})`):t.fail((0,W9._)`${i} !== ${r}`)}};$9.default=dWt});var nCe=E(F9=>{"use strict";Object.defineProperty(F9,"__esModule",{value:!0});var cS=Yt(),fWt=Wr(),pWt=hP(),mWt={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,cS._)`{allowedValues: ${t}}`},hWt={keyword:"enum",schemaType:"array",$data:!0,error:mWt,code(t){let{gen:e,data:r,$data:n,schema:s,schemaCode:i,it:a}=t;if(!n&&s.length===0)throw new Error("enum must have non-empty array");let o=s.length>=a.opts.loopEnum,c,u=()=>c??(c=(0,fWt.useFunc)(e,pWt.default)),l;if(o||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(s))throw new Error("ajv implementation error");let p=e.const("vSchema",i);l=(0,cS.or)(...s.map((m,h)=>f(p,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",i,p=>e.if((0,cS._)`${u()}(${r}, ${p})`,()=>e.assign(l,!0).break()))}function f(p,m){let h=s[m];return typeof h=="object"&&h!==null?(0,cS._)`${u()}(${r}, ${p}[${m}])`:(0,cS._)`${r} === ${h}`}}};F9.default=hWt});var sCe=E(U9=>{"use strict";Object.defineProperty(U9,"__esModule",{value:!0});var gWt=Qve(),AWt=Gve(),yWt=Kve(),xWt=Yve(),bWt=Jve(),EWt=Xve(),_Wt=Zve(),SWt=tCe(),vWt=rCe(),CWt=nCe(),IWt=[gWt.default,AWt.default,yWt.default,xWt.default,bWt.default,EWt.default,_Wt.default,SWt.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},vWt.default,CWt.default];U9.default=IWt});var j9=E(uS=>{"use strict";Object.defineProperty(uS,"__esModule",{value:!0});uS.validateAdditionalItems=void 0;var ah=Yt(),q9=Wr(),TWt={message:({params:{len:t}})=>(0,ah.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ah._)`{limit: ${t}}`},wWt={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:TWt,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,q9.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}iCe(t,n)}};function iCe(t,e){let{gen:r,schema:n,data:s,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,ah._)`${s}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,ah._)`${o} <= ${e.length}`);else if(typeof n=="object"&&!(0,q9.alwaysValidSchema)(a,n)){let u=r.var("valid",(0,ah._)`${o} <= ${e.length}`);r.if((0,ah.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,o,l=>{t.subschema({keyword:i,dataProp:l,dataPropType:q9.Type.Num},u),a.allErrors||r.if((0,ah.not)(u),()=>r.break())})}}uS.validateAdditionalItems=iCe;uS.default=wWt});var H9=E(lS=>{"use strict";Object.defineProperty(lS,"__esModule",{value:!0});lS.validateTuple=void 0;var aCe=Yt(),gP=Wr(),RWt=nc(),NWt={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return oCe(t,"additionalItems",e);r.items=!0,!(0,gP.alwaysValidSchema)(r,e)&&t.ok((0,RWt.validateArray)(t))}};function oCe(t,e,r=t.schema){let{gen:n,parentSchema:s,data:i,keyword:a,it:o}=t;l(s),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=gP.mergeEvaluated.items(n,r.length,o.items));let c=n.name("valid"),u=n.const("len",(0,aCe._)`${i}.length`);r.forEach((d,f)=>{(0,gP.alwaysValidSchema)(o,d)||(n.if((0,aCe._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:p}=o,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let A=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,gP.checkStrictMode)(o,A,f.strictTuples)}}}lS.validateTuple=oCe;lS.default=NWt});var cCe=E(Q9=>{"use strict";Object.defineProperty(Q9,"__esModule",{value:!0});var OWt=H9(),PWt={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,OWt.validateTuple)(t,"items")};Q9.default=PWt});var lCe=E(G9=>{"use strict";Object.defineProperty(G9,"__esModule",{value:!0});var uCe=Yt(),DWt=Wr(),kWt=nc(),LWt=j9(),BWt={message:({params:{len:t}})=>(0,uCe.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,uCe._)`{limit: ${t}}`},MWt={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:BWt,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:s}=r;n.items=!0,!(0,DWt.alwaysValidSchema)(n,e)&&(s?(0,LWt.validateAdditionalItems)(t,s):t.ok((0,kWt.validateArray)(t)))}};G9.default=MWt});var dCe=E(V9=>{"use strict";Object.defineProperty(V9,"__esModule",{value:!0});var ic=Yt(),AP=Wr(),WWt={message:({params:{min:t,max:e}})=>e===void 0?(0,ic.str)`must contain at least ${t} valid item(s)`:(0,ic.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ic._)`{minContains: ${t}}`:(0,ic._)`{minContains: ${t}, maxContains: ${e}}`},$Wt={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:WWt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t,a,o,{minContains:c,maxContains:u}=n;i.opts.next?(a=c===void 0?1:c,o=u):a=1;let l=e.const("len",(0,ic._)`${s}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,AP.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,AP.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,AP.alwaysValidSchema)(i,r)){let h=(0,ic._)`${l} >= ${a}`;o!==void 0&&(h=(0,ic._)`${h} && ${l} <= ${o}`),t.pass(h);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,ic._)`${s}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),A=e.let("count",0);p(h,()=>e.if(h,()=>m(A)))}function p(h,A){e.forRange("i",0,l,g=>{t.subschema({keyword:"contains",dataProp:g,dataPropType:AP.Type.Num,compositeRule:!0},h),A()})}function m(h){e.code((0,ic._)`${h}++`),o===void 0?e.if((0,ic._)`${h} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,ic._)`${h} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,ic._)`${h} >= ${a}`,()=>e.assign(d,!0)))}}};V9.default=$Wt});var mCe=E(sl=>{"use strict";Object.defineProperty(sl,"__esModule",{value:!0});sl.validateSchemaDeps=sl.validatePropertyDeps=sl.error=void 0;var z9=Yt(),FWt=Wr(),dS=nc();sl.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,z9.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,z9._)`{property: ${t}, + missingProperty: ${n}, + depsCount: ${e}, + deps: ${r}}`};var UWt={keyword:"dependencies",type:"object",schemaType:"object",error:sl.error,code(t){let[e,r]=qWt(t);fCe(t,e),pCe(t,r)}};function qWt({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let s=Array.isArray(t[n])?e:r;s[n]=t[n]}return[e,r]}function fCe(t,e=t.schema){let{gen:r,data:n,it:s}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,dS.propertyInData)(r,n,a,s.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),s.allErrors?r.if(c,()=>{for(let u of o)(0,dS.checkReportMissingProp)(t,u)}):(r.if((0,z9._)`${c} && (${(0,dS.checkMissingProp)(t,o,i)})`),(0,dS.reportMissingProp)(t,i),r.else())}}sl.validatePropertyDeps=fCe;function pCe(t,e=t.schema){let{gen:r,data:n,keyword:s,it:i}=t,a=r.name("valid");for(let o in e)(0,FWt.alwaysValidSchema)(i,e[o])||(r.if((0,dS.propertyInData)(r,n,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:s,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}sl.validateSchemaDeps=pCe;sl.default=UWt});var gCe=E(K9=>{"use strict";Object.defineProperty(K9,"__esModule",{value:!0});var hCe=Yt(),jWt=Wr(),HWt={message:"property name must be valid",params:({params:t})=>(0,hCe._)`{propertyName: ${t.propertyName}}`},QWt={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:HWt,code(t){let{gen:e,schema:r,data:n,it:s}=t;if((0,jWt.alwaysValidSchema)(s,r))return;let i=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,hCe.not)(i),()=>{t.error(!0),s.allErrors||e.break()})}),t.ok(i)}};K9.default=QWt});var J9=E(Y9=>{"use strict";Object.defineProperty(Y9,"__esModule",{value:!0});var yP=nc(),Xc=Yt(),GWt=Od(),xP=Wr(),VWt={message:"must NOT have additional properties",params:({params:t})=>(0,Xc._)`{additionalProperty: ${t.additionalProperty}}`},zWt={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:VWt,code(t){let{gen:e,schema:r,parentSchema:n,data:s,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,xP.alwaysValidSchema)(a,r))return;let u=(0,yP.allSchemaProperties)(n.properties),l=(0,yP.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Xc._)`${i} === ${GWt.default.errors}`);function d(){e.forIn("key",s,A=>{!u.length&&!l.length?m(A):e.if(f(A),()=>m(A))})}function f(A){let g;if(u.length>8){let b=(0,xP.schemaRefOrVal)(a,n.properties,"properties");g=(0,yP.isOwnProperty)(e,b,A)}else u.length?g=(0,Xc.or)(...u.map(b=>(0,Xc._)`${A} === ${b}`)):g=Xc.nil;return l.length&&(g=(0,Xc.or)(g,...l.map(b=>(0,Xc._)`${(0,yP.usePattern)(t,b)}.test(${A})`))),(0,Xc.not)(g)}function p(A){e.code((0,Xc._)`delete ${s}[${A}]`)}function m(A){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(A);return}if(r===!1){t.setParams({additionalProperty:A}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,xP.alwaysValidSchema)(a,r)){let g=e.name("valid");c.removeAdditional==="failing"?(h(A,g,!1),e.if((0,Xc.not)(g),()=>{t.reset(),p(A)})):(h(A,g),o||e.if((0,Xc.not)(g),()=>e.break()))}}function h(A,g,b){let y={keyword:"additionalProperties",dataProp:A,dataPropType:xP.Type.Str};b===!1&&Object.assign(y,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(y,g)}}};Y9.default=zWt});var xCe=E(Z9=>{"use strict";Object.defineProperty(Z9,"__esModule",{value:!0});var KWt=J_(),ACe=nc(),X9=Wr(),yCe=J9(),YWt={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:s,it:i}=t;i.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&yCe.default.code(new KWt.KeywordCxt(i,yCe.default,"additionalProperties"));let a=(0,ACe.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=X9.mergeEvaluated.props(e,(0,X9.toHash)(a),i.props));let o=a.filter(d=>!(0,X9.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)u(d)?l(d):(e.if((0,ACe.propertyInData)(e,s,d,i.opts.ownProperties)),l(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Z9.default=YWt});var SCe=E(eq=>{"use strict";Object.defineProperty(eq,"__esModule",{value:!0});var bCe=nc(),bP=Yt(),ECe=Wr(),_Ce=Wr(),JWt={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:s,it:i}=t,{opts:a}=i,o=(0,bCe.allSchemaProperties)(r),c=o.filter(h=>(0,ECe.alwaysValidSchema)(i,r[h]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&s.properties,l=e.name("valid");i.props!==!0&&!(i.props instanceof bP.Name)&&(i.props=(0,_Ce.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let h of o)u&&p(h),i.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function p(h){for(let A in u)new RegExp(h).test(A)&&(0,ECe.checkStrictMode)(i,`property ${A} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,A=>{e.if((0,bP._)`${(0,bCe.usePattern)(t,h)}.test(${A})`,()=>{let g=c.includes(h);g||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:A,dataPropType:_Ce.Type.Str},l),i.opts.unevaluated&&d!==!0?e.assign((0,bP._)`${d}[${A}]`,!0):!g&&!i.allErrors&&e.if((0,bP.not)(l),()=>e.break())})})}}};eq.default=JWt});var vCe=E(tq=>{"use strict";Object.defineProperty(tq,"__esModule",{value:!0});var XWt=Wr(),ZWt={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,XWt.alwaysValidSchema)(n,r)){t.fail();return}let s=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),t.failResult(s,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};tq.default=ZWt});var CCe=E(rq=>{"use strict";Object.defineProperty(rq,"__esModule",{value:!0});var e$t=nc(),t$t={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:e$t.validateUnion,error:{message:"must match a schema in anyOf"}};rq.default=t$t});var ICe=E(nq=>{"use strict";Object.defineProperty(nq,"__esModule",{value:!0});var EP=Yt(),r$t=Wr(),n$t={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,EP._)`{passingSchemas: ${t.passing}}`},s$t={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:n$t,code(t){let{gen:e,schema:r,parentSchema:n,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){i.forEach((l,d)=>{let f;(0,r$t.alwaysValidSchema)(s,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,EP._)`${c} && ${a}`).assign(a,!1).assign(o,(0,EP._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,EP.Name)})})}}};nq.default=s$t});var TCe=E(sq=>{"use strict";Object.defineProperty(sq,"__esModule",{value:!0});var i$t=Wr(),a$t={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let s=e.name("valid");r.forEach((i,a)=>{if((0,i$t.alwaysValidSchema)(n,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},s);t.ok(s),t.mergeEvaluated(o)})}};sq.default=a$t});var NCe=E(iq=>{"use strict";Object.defineProperty(iq,"__esModule",{value:!0});var _P=Yt(),RCe=Wr(),o$t={message:({params:t})=>(0,_P.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,_P._)`{failingKeyword: ${t.ifClause}}`},c$t={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:o$t,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,RCe.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let s=wCe(n,"then"),i=wCe(n,"else");if(!s&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),s&&i){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(o,u("then",l),u("else",l))}else s?e.if(o,u("then")):e.if((0,_P.not)(o),u("else"));t.pass(a,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,_P._)`${l}`):t.setParams({ifClause:l})}}}};function wCe(t,e){let r=t.schema[e];return r!==void 0&&!(0,RCe.alwaysValidSchema)(t,r)}iq.default=c$t});var OCe=E(aq=>{"use strict";Object.defineProperty(aq,"__esModule",{value:!0});var u$t=Wr(),l$t={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,u$t.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};aq.default=l$t});var PCe=E(oq=>{"use strict";Object.defineProperty(oq,"__esModule",{value:!0});var d$t=j9(),f$t=cCe(),p$t=H9(),m$t=lCe(),h$t=dCe(),g$t=mCe(),A$t=gCe(),y$t=J9(),x$t=xCe(),b$t=SCe(),E$t=vCe(),_$t=CCe(),S$t=ICe(),v$t=TCe(),C$t=NCe(),I$t=OCe();function T$t(t=!1){let e=[E$t.default,_$t.default,S$t.default,v$t.default,C$t.default,I$t.default,A$t.default,y$t.default,g$t.default,x$t.default,b$t.default];return t?e.push(f$t.default,m$t.default):e.push(d$t.default,p$t.default),e.push(h$t.default),e}oq.default=T$t});var DCe=E(cq=>{"use strict";Object.defineProperty(cq,"__esModule",{value:!0});var ds=Yt(),w$t={message:({schemaCode:t})=>(0,ds.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ds._)`{format: ${t}}`},R$t={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:w$t,code(t,e){let{gen:r,data:n,$data:s,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=o;if(!c.validateFormats)return;s?f():p();function f(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,ds._)`${m}[${a}]`),A=r.let("fType"),g=r.let("format");r.if((0,ds._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(A,(0,ds._)`${h}.type || "string"`).assign(g,(0,ds._)`${h}.validate`),()=>r.assign(A,(0,ds._)`"string"`).assign(g,h)),t.fail$data((0,ds.or)(b(),y()));function b(){return c.strictSchema===!1?ds.nil:(0,ds._)`${a} && !${g}`}function y(){let x=l.$async?(0,ds._)`(${h}.async ? await ${g}(${n}) : ${g}(${n}))`:(0,ds._)`${g}(${n})`,v=(0,ds._)`(typeof ${g} == "function" ? ${x} : ${g}.test(${n}))`;return(0,ds._)`${g} && ${g} !== true && ${A} === ${e} && !${v}`}}function p(){let m=d.formats[i];if(!m){b();return}if(m===!0)return;let[h,A,g]=y(m);h===e&&t.pass(x());function b(){if(c.strictSchema===!1){d.logger.warn(v());return}throw new Error(v());function v(){return`unknown format "${i}" ignored in schema at path "${u}"`}}function y(v){let C=v instanceof RegExp?(0,ds.regexpCode)(v):c.code.formats?(0,ds._)`${c.code.formats}${(0,ds.getProperty)(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:v,code:C});return typeof v=="object"&&!(v instanceof RegExp)?[v.type||"string",v.validate,(0,ds._)`${R}.validate`]:["string",v,R]}function x(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ds._)`await ${g}(${n})`}return typeof A=="function"?(0,ds._)`${g}(${n})`:(0,ds._)`${g}.test(${n})`}}}};cq.default=R$t});var kCe=E(uq=>{"use strict";Object.defineProperty(uq,"__esModule",{value:!0});var N$t=DCe(),O$t=[N$t.default];uq.default=O$t});var LCe=E(Hy=>{"use strict";Object.defineProperty(Hy,"__esModule",{value:!0});Hy.contentVocabulary=Hy.metadataVocabulary=void 0;Hy.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Hy.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var MCe=E(lq=>{"use strict";Object.defineProperty(lq,"__esModule",{value:!0});var P$t=Hve(),D$t=sCe(),k$t=PCe(),L$t=kCe(),BCe=LCe(),B$t=[P$t.default,D$t.default,(0,k$t.default)(),L$t.default,BCe.metadataVocabulary,BCe.contentVocabulary];lq.default=B$t});var $Ce=E(SP=>{"use strict";Object.defineProperty(SP,"__esModule",{value:!0});SP.DiscrError=void 0;var WCe;(function(t){t.Tag="tag",t.Mapping="mapping"})(WCe||(SP.DiscrError=WCe={}))});var UCe=E(fq=>{"use strict";Object.defineProperty(fq,"__esModule",{value:!0});var Qy=Yt(),dq=$Ce(),FCe=sP(),M$t=X_(),W$t=Wr(),$$t={message:({params:{discrError:t,tagName:e}})=>t===dq.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Qy._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},F$t={keyword:"discriminator",type:"object",schemaType:"object",error:$$t,code(t){let{gen:e,data:r,schema:n,parentSchema:s,it:i}=t,{oneOf:a}=s;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=n.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,Qy._)`${r}${(0,Qy.getProperty)(o)}`);e.if((0,Qy._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:dq.DiscrError.Tag,tag:u,tagName:o})),t.ok(c);function l(){let p=f();e.if(!1);for(let m in p)e.elseIf((0,Qy._)`${u} === ${m}`),e.assign(c,d(p[m]));e.else(),t.error(!1,{discrError:dq.DiscrError.Mapping,tag:u,tagName:o}),e.endIf()}function d(p){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:p},m);return t.mergeEvaluated(h,Qy.Name),m}function f(){var p;let m={},h=g(s),A=!0;for(let x=0;x{U$t.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var HCe=E((Bn,pq)=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.MissingRefError=Bn.ValidationError=Bn.CodeGen=Bn.Name=Bn.nil=Bn.stringify=Bn.str=Bn._=Bn.KeywordCxt=Bn.Ajv=void 0;var q$t=Wve(),j$t=MCe(),H$t=UCe(),jCe=qCe(),Q$t=["/properties"],vP="http://json-schema.org/draft-07/schema",Gy=class extends q$t.default{_addVocabularies(){super._addVocabularies(),j$t.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(H$t.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(jCe,Q$t):jCe;this.addMetaSchema(e,vP,!1),this.refs["http://json-schema.org/schema"]=vP}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(vP)?vP:void 0)}};Bn.Ajv=Gy;pq.exports=Bn=Gy;pq.exports.Ajv=Gy;Object.defineProperty(Bn,"__esModule",{value:!0});Bn.default=Gy;var G$t=J_();Object.defineProperty(Bn,"KeywordCxt",{enumerable:!0,get:function(){return G$t.KeywordCxt}});var Vy=Yt();Object.defineProperty(Bn,"_",{enumerable:!0,get:function(){return Vy._}});Object.defineProperty(Bn,"str",{enumerable:!0,get:function(){return Vy.str}});Object.defineProperty(Bn,"stringify",{enumerable:!0,get:function(){return Vy.stringify}});Object.defineProperty(Bn,"nil",{enumerable:!0,get:function(){return Vy.nil}});Object.defineProperty(Bn,"Name",{enumerable:!0,get:function(){return Vy.Name}});Object.defineProperty(Bn,"CodeGen",{enumerable:!0,get:function(){return Vy.CodeGen}});var V$t=rP();Object.defineProperty(Bn,"ValidationError",{enumerable:!0,get:function(){return V$t.default}});var z$t=X_();Object.defineProperty(Bn,"MissingRefError",{enumerable:!0,get:function(){return z$t.default}})});var QCe=E(zy=>{"use strict";Object.defineProperty(zy,"__esModule",{value:!0});zy.formatLimitDefinition=void 0;var K$t=HCe(),Zc=Yt(),jp=Zc.operators,CP={formatMaximum:{okStr:"<=",ok:jp.LTE,fail:jp.GT},formatMinimum:{okStr:">=",ok:jp.GTE,fail:jp.LT},formatExclusiveMaximum:{okStr:"<",ok:jp.LT,fail:jp.GTE},formatExclusiveMinimum:{okStr:">",ok:jp.GT,fail:jp.LTE}},Y$t={message:({keyword:t,schemaCode:e})=>Zc.str`should be ${CP[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>Zc._`{comparison: ${CP[t].okStr}, limit: ${e}}`};zy.formatLimitDefinition={keyword:Object.keys(CP),type:"string",schemaType:"string",$data:!0,error:Y$t,code(t){let{gen:e,data:r,schemaCode:n,keyword:s,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new K$t.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",Zc._`${f}[${c.schemaCode}]`);t.fail$data(Zc.or(Zc._`typeof ${p} != "object"`,Zc._`${p} instanceof RegExp`,Zc._`typeof ${p}.compare != "function"`,d(p)))}function l(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${s}": format "${f}" does not define "compare" function`);let m=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?Zc._`${a.code.formats}${Zc.getProperty(f)}`:void 0});t.fail$data(d(m))}function d(f){return Zc._`${f}.compare(${r}, ${n}) ${CP[s].fail} 0`}},dependencies:["format"]};var J$t=t=>(t.addKeyword(zy.formatLimitDefinition),t);zy.default=J$t});var KCe=E((fS,zCe)=>{"use strict";Object.defineProperty(fS,"__esModule",{value:!0});var Ky=ySe(),X$t=QCe(),mq=Yt(),GCe=new mq.Name("fullFormats"),Z$t=new mq.Name("fastFormats"),hq=(t,e={keywords:!0})=>{if(Array.isArray(e))return VCe(t,e,Ky.fullFormats,GCe),t;let[r,n]=e.mode==="fast"?[Ky.fastFormats,Z$t]:[Ky.fullFormats,GCe],s=e.formats||Ky.formatNames;return VCe(t,s,r,n),e.keywords&&X$t.default(t),t};hq.get=(t,e="full")=>{let n=(e==="fast"?Ky.fastFormats:Ky.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function VCe(t,e,r,n){var s,i;(s=(i=t.opts.code).formats)!==null&&s!==void 0||(i.formats=mq._`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}zCe.exports=fS=hq;Object.defineProperty(fS,"__esModule",{value:!0});fS.default=hq});var XCe=E((e4r,JCe)=>{"use strict";var eFt=g_e().default,tFt=C7(),YCe=I7(),gq=class{constructor(e,r){r.mode==="JTD"?this.ajv=new tFt(Object.assign({},YCe,r.customOptions)):this.ajv=new eFt(Object.assign({},YCe,r.customOptions));let n=!0;if(r.plugins&&r.plugins.length>0)for(let i of r.plugins)Array.isArray(i)?(n=n&&i[0].name!=="formatsPlugin",i[0](this.ajv,i[1])):(n=n&&i.name!=="formatsPlugin",i(this.ajv));n&&KCe()(this.ajv),r.onCreate?.(this.ajv);let s=Object.values(e);for(let i of s)this.ajv.addSchema(i)}buildValidatorFunction({schema:e}){if(e.$id){let r=this.ajv.getSchema(e.$id);if(r)return r}return this.ajv.compile(e)}};JCe.exports=gq});var eIe=E((t4r,ZCe)=>{"use strict";var rFt=C7(),nFt=I7(),Aq=class{constructor(e,r){this.ajv=new rFt(Object.assign({},nFt,r))}buildSerializerFunction({schema:e}){return this.ajv.compileSerializer(e)}};ZCe.exports=Aq});var nIe=E((mS,rIe)=>{"use strict";Object.defineProperty(mS,"__esModule",{value:!0});var pS=aO(),eu=uy();function tIe(t,e){if(!t.opts.code.source)throw new Error("moduleCode: ajv instance must have code.source option");let{_n:r}=t.scope.opts;return typeof e=="function"?s(e.source):e!==void 0?i(e,n):i(t.schemas,o=>o.meta?void 0:t.compile(o.schema));function n(o){let c=t.getSchema(o);if(!c)throw new Error(`moduleCode: no schema with id ${o}`);return c}function s(o){let c={},u=o?.validateName,l=a(c,o);return t.opts.code.esm?`"use strict";${r}export const validate = ${u};${r}export default ${u};${r}${l}`:`"use strict";${r}module.exports = ${u};${r}module.exports.default = ${u};${r}${l}`}function i(o,c){var u;let l={},d=(0,eu._)`"use strict";`;for(let f in o){let p=c(o[f]);if(p){let m=a(l,p.source),h=t.opts.code.esm?(0,eu._)`export const ${(0,eu.getEsmExportName)(f)}`:(0,eu._)`exports${(0,eu.getProperty)(f)}`;d=(0,eu._)`${d}${r}${h} = ${(u=p.source)===null||u===void 0?void 0:u.validateName};${r}${m}`}}return`${d}`}function a(o,c){if(!c)throw new Error('moduleCode: function does not have "source" property');if(f(c.validateName)===pS.UsedValueState.Completed)return eu.nil;p(c.validateName,pS.UsedValueState.Started);let u=t.scope.scopeCode(c.scopeValues,o,d),l=new eu._Code(`${u}${r}${c.validateCode}`);return c.evaluated?(0,eu._)`${l}${c.validateName}.evaluated = ${c.evaluated};${r}`:l;function d(m){var h;let A=(h=m.value)===null||h===void 0?void 0:h.ref;if(m.prefix==="validate"&&typeof A=="function")return a(o,A.source);if((m.prefix==="root"||m.prefix==="wrapper")&&typeof A=="object"){let{validate:g,validateName:b}=A;if(!b)throw new Error("ajv internal error");let y=t.opts.code.es5?pS.varKinds.var:pS.varKinds.const,x=(0,eu._)`${y} ${m} = {validate: ${b}};`;if(f(b)===pS.UsedValueState.Started)return x;let v=a(o,g?.source);return(0,eu._)`${x}${r}${v}`}}function f(m){var h;return(h=o[m.prefix])===null||h===void 0?void 0:h.get(m)}function p(m,h){let{prefix:A}=m;(o[A]=o[A]||new Map).set(m,h)}}}rIe.exports=mS=tIe;Object.defineProperty(mS,"__esModule",{value:!0});mS.default=tIe});var aIe=E((r4r,iIe)=>{"use strict";var sIe=yq(),sFt=nIe().default;function iFt(t={readMode:!0}){if(t.readMode===!0&&!t.restoreFunction)throw new Error("You must provide a restoreFunction options when readMode ON");if(t.readMode!==!0&&!t.storeFunction)throw new Error("You must provide a storeFunction options when readMode OFF");if(t.readMode===!0)return function(){return function(n){return t.restoreFunction(n)}};let e=sIe();return function(n,s={}){(!s.customOptions||!s.customOptions.code)&&(s.customOptions=Object.assign({},s.customOptions,{code:{source:!0}}));let i=e(n,s);return function(a){let o=i(a),c=sFt(i[sIe.AjvReference].ajv,o);return t.storeFunction(a,c),o}}}iIe.exports=iFt});var yq=E((n4r,Yy)=>{"use strict";var cIe=Symbol.for("fastify.ajv-compiler.reference"),aFt=XCe(),oFt=eIe();function xq(t){let e=new Map,r=new Map;return t&&t.jtdSerializer===!0?function(s,i){let a=oIe({},i);if(r.has(a))return r.get(a);let o=new oFt(s,i),c=o.buildSerializerFunction.bind(o);return r.set(a,c),c}:function(s,i){let a=oIe(s,i.customOptions);if(e.has(a))return e.get(a);let o=new aFt(s,i),c=o.buildValidatorFunction.bind(o);return e.set(a,c),i.customOptions.code!==void 0&&(c[cIe]=o),c}}function oIe(t,e){let r=JSON.stringify(t),n=JSON.stringify(e);return`${r}${n}`}Yy.exports=xq;Yy.exports.default=xq;Yy.exports.AjvCompiler=xq;Yy.exports.AjvReference=cIe;Yy.exports.StandaloneValidator=aIe()});var bq=E((s4r,uIe)=>{"use strict";var{buildSchemas:cFt}=u1(),uFt=uF(),lFt=yq();function dFt(t,e){if(t)return new Jy(t,e);let r=Object.assign({buildValidator:null,buildSerializer:null},e?.compilersFactory);r.buildValidator||(r.buildValidator=lFt()),r.buildSerializer||(r.buildSerializer=uFt());let n={bucket:e&&e.bucket||cFt,compilersFactory:r,isCustomValidatorCompiler:typeof e?.compilersFactory?.buildValidator=="function",isCustomSerializerCompiler:typeof e?.compilersFactory?.buildValidator=="function"};return new Jy(void 0,n)}var Jy=class{constructor(e,r){this.opts=r||e?.opts,this.addedSchemas=!1,this.compilersFactory=this.opts.compilersFactory,e?(this.schemaBucket=this.opts.bucket(e.getSchemas()),this.validatorCompiler=e.getValidatorCompiler(),this.serializerCompiler=e.getSerializerCompiler(),this.isCustomValidatorCompiler=e.isCustomValidatorCompiler,this.isCustomSerializerCompiler=e.isCustomSerializerCompiler,this.parent=e):(this.schemaBucket=this.opts.bucket(),this.isCustomValidatorCompiler=this.opts.isCustomValidatorCompiler||!1,this.isCustomSerializerCompiler=this.opts.isCustomSerializerCompiler||!1)}add(e){return this.addedSchemas=!0,this.schemaBucket.add(e)}getSchema(e){return this.schemaBucket.getSchema(e)}getSchemas(){return this.schemaBucket.getSchemas()}setValidatorCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildValidator:()=>e}),this.validatorCompiler=e,this.isCustomValidatorCompiler=!0}setSerializerCompiler(e){this.compilersFactory=Object.assign({},this.compilersFactory,{buildSerializer:()=>e}),this.serializerCompiler=e,this.isCustomSerializerCompiler=!0}getValidatorCompiler(){return this.validatorCompiler||this.parent&&this.parent.getValidatorCompiler()}getSerializerCompiler(){return this.serializerCompiler||this.parent&&this.parent.getSerializerCompiler()}getSerializerBuilder(){return this.compilersFactory.buildSerializer||this.parent&&this.parent.getSerializerBuilder()}getValidatorBuilder(){return this.compilersFactory.buildValidator||this.parent&&this.parent.getValidatorBuilder()}setupValidator(e){this.validatorCompiler!==void 0&&!this.addedSchemas||(this.validatorCompiler=this.getValidatorBuilder()(this.schemaBucket.getSchemas(),e.ajv))}setupSerializer(e){this.serializerCompiler!==void 0&&!this.addedSchemas||(this.serializerCompiler=this.getSerializerBuilder()(this.schemaBucket.getSchemas(),e.serializerOpts))}};Jy.buildSchemaController=dFt;uIe.exports=Jy});var Iq=E((i4r,Cq)=>{"use strict";var Eq=O$(),Sq=require("node:assert"),vq=Symbol.for("registered-plugin"),{kTestInternals:fFt}=Qs(),{exist:pFt,existReply:mFt,existRequest:hFt}=U$(),{FST_ERR_PLUGIN_VERSION_MISMATCH:gFt,FST_ERR_PLUGIN_NOT_PRESENT_IN_INSTANCE:AFt}=Ci(),{FSTWRN002:yFt}=cd();function hS(t){return t[Symbol.for("plugin-meta")]}function lIe(t){let e=dIe(t);if(e)return e;let r=require.cache;if(r){let n=Object.keys(r);for(let s=0;se.trim()).join(" -- ")}function dIe(t){return t[Symbol.for("fastify.display-name")]}function fIe(t){return!!t[Symbol.for("skip-override")]}function pIe(t){let e=hS(t);if(!e)return;let r=e.dependencies;r&&(Sq(Array.isArray(r),"The dependencies should be an array of strings"),r.forEach(n=>{Sq(this[vq].indexOf(n)>-1,`The dependency '${n}' of plugin '${e.name}' is not registered`)}))}function mIe(t){let e=hS(t);if(!e)return;let{decorators:r,name:n}=e;r&&(r.fastify&&_q(this,"Fastify",r.fastify,n),r.reply&&_q(this,"Reply",r.reply,n),r.request&&_q(this,"Request",r.request,n))}var bFt={Fastify:pFt,Request:hFt,Reply:mFt};function _q(t,e,r,n){Sq(Array.isArray(r),"The decorators should be an array of strings"),r.forEach(s=>{let i=typeof n=="string"?` required by '${n}'`:"";if(!bFt[e].call(t,s))throw new AFt(s,i,e)})}function EFt(t){let e=hS(t);if(!e)return;let r=e.fastify,n=/-rc.+$/.test(this.version);if(!(n===!0&&Eq.gt(this.version,Eq.coerce(r))===!0)&&r&&Eq.satisfies(this.version,r,{includePrerelease:n})===!1)throw new gFt(e.name,r,this.version)}function _Ft(t){let e=hS(t);if(!e)return;let r=e.name;if(r)return this[vq].push(r),r}function SFt(t,e){t.constructor.name==="AsyncFunction"&&t.length===3&&yFt(e||"anonymous")}function vFt(t){let e=_Ft.call(this,t)||lIe(t);return SFt.call(this,t,e),EFt.call(this,t),mIe.call(this,t),pIe.call(this,t),fIe(t)}Cq.exports={getPluginName:lIe,getFuncPreview:xFt,kRegisteredPlugins:vq,getDisplayName:dIe,registerPlugin:vFt};Cq.exports[fFt]={shouldSkipOverride:fIe,getMeta:hS,checkDecorators:mIe,checkDependencies:pIe}});var IP=E((a4r,hIe)=>{"use strict";function CFt(t,e){let r=e||TFt();return t?wFt(t,r):r}function IFt(t,e){return t.genReqId(e)}function TFt(){let e=0;return function(){return e=e+1&2147483647,`req-${e.toString(36)}`}}function wFt(t,e){return function(r){return r.headers[t]||e(r)}}hIe.exports={getGenReqId:IFt,reqIdGenFactory:CFt}});var xIe=E((o4r,yIe)=>{"use strict";var gIe=12,RFt=0,Tq=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,6,7,7,7,7,7,7,7,7,7,7,7,7,8,7,7,10,9,9,9,11,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,24,36,48,60,72,84,96,0,12,12,12,0,0,0,0,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,0,0,24,24,24,0,0,0,0,0,0,0,0,0,24,24,0,0,0,0,0,0,0,0,0,0,48,48,48,0,0,0,0,0,0,0,0,0,0,48,48,0,0,0,0,0,0,0,0,0,48,0,0,0,0,0,0,0,0,0,0,127,63,63,63,0,31,15,15,15,7,7,7];function NFt(t){var e=t.indexOf("%");if(e===-1)return t;for(var r=t.length,n="",s=0,i=0,a=e,o=gIe;e>-1&&e>10),56320+(i&1023)),i=0,s=e+3,e=a=t.indexOf("%",s);else{if(o===RFt)return null;if(e+=3,e{"use strict";var bIe=xIe(),EIe=/\+/g,_Ie=function(){};_Ie.prototype=Object.create(null);function PFt(t){let e=new _Ie;if(typeof t!="string")return e;let r=t.length,n="",s="",i=-1,a=-1,o=!1,c=!1,u=!1,l=!1,d=!1,f=0;for(let p=0;pi,d||(a=p),n=t.slice(i+1,a),d||n.length>0){u&&(n=n.replace(EIe," ")),o&&(n=bIe(n)||n),d&&(s=t.slice(a+1,p),l&&(s=s.replace(EIe," ")),c&&(s=bIe(s)||s));let m=e[n];m===void 0?e[n]=s:m.pop?m.push(s):e[n]=[m,s]}s="",i=p,a=p,o=!1,c=!1,u=!1,l=!1}else f===61?a<=i?a=p:c=!0:f===43?a>i?l=!0:u=!0:f===37&&(a>i?c=!0:o=!0);return e}SIe.exports=PFt});var IIe=E((u4r,CIe)=>{var il=Array.from({length:256},(t,e)=>"%"+((e<16?"0":"")+e.toString(16)).toUpperCase()),DFt=new Int8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,1,1,1,0,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,0]);function kFt(t){let e=t.length;if(e===0)return"";let r="",n=0,s=0;e:for(;s>6]+il[128|i&63];continue}if(i<55296||i>=57344){n=s+1,r+=il[224|i>>12]+il[128|i>>6&63]+il[128|i&63];continue}if(++s,s>=e)throw new Error("URI malformed");let a=t.charCodeAt(s)&1023;n=s+1,i=65536+((i&1023)<<10|a),r+=il[240|i>>18]+il[128|i>>12&63]+il[128|i>>6&63]+il[128|i&63]}return n===0?t:n{"use strict";var{encodeString:wq}=IIe();function TIe(t){let e=typeof t;return e==="string"?wq(t):e==="bigint"?t.toString():e==="boolean"?t?"true":"false":e==="number"&&Number.isFinite(t)?t<1e21?""+t:wq(""+t):""}function LFt(t){let e="";if(t===null||typeof t!="object")return e;let r="&",n=Object.keys(t),s=n.length,i=0;for(let a=0;a{"use strict";var NIe=vIe(),OIe=RIe(),PIe={parse:NIe,stringify:OIe};gS.exports=PIe;gS.exports.default=PIe;gS.exports.parse=NIe;gS.exports.stringify=OIe});var LIe=E(kIe=>{"use strict";Object.defineProperty(kIe,"__esModule",{value:!0})});var BIe=E(AS=>{"use strict";Object.defineProperty(AS,"__esModule",{value:!0});AS.types=void 0;var BFt;(function(t){t[t.ROOT=0]="ROOT",t[t.GROUP=1]="GROUP",t[t.POSITION=2]="POSITION",t[t.SET=3]="SET",t[t.RANGE=4]="RANGE",t[t.REPETITION=5]="REPETITION",t[t.REFERENCE=6]="REFERENCE",t[t.CHAR=7]="CHAR"})(BFt=AS.types||(AS.types={}))});var WIe=E(MIe=>{"use strict";Object.defineProperty(MIe,"__esModule",{value:!0})});var Ld=E(kd=>{"use strict";var MFt=kd&&kd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Rq=kd&&kd.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&MFt(e,t,r)};Object.defineProperty(kd,"__esModule",{value:!0});Rq(LIe(),kd);Rq(BIe(),kd);Rq(WIe(),kd)});var TP=E(Wi=>{"use strict";Object.defineProperty(Wi,"__esModule",{value:!0});Wi.anyChar=Wi.notWhitespace=Wi.whitespace=Wi.notInts=Wi.ints=Wi.notWords=Wi.words=void 0;var Hr=Ld(),$Ie=()=>[{type:Hr.types.RANGE,from:48,to:57}],FIe=()=>[{type:Hr.types.CHAR,value:95},{type:Hr.types.RANGE,from:97,to:122},{type:Hr.types.RANGE,from:65,to:90},{type:Hr.types.RANGE,from:48,to:57}],UIe=()=>[{type:Hr.types.CHAR,value:9},{type:Hr.types.CHAR,value:10},{type:Hr.types.CHAR,value:11},{type:Hr.types.CHAR,value:12},{type:Hr.types.CHAR,value:13},{type:Hr.types.CHAR,value:32},{type:Hr.types.CHAR,value:160},{type:Hr.types.CHAR,value:5760},{type:Hr.types.RANGE,from:8192,to:8202},{type:Hr.types.CHAR,value:8232},{type:Hr.types.CHAR,value:8233},{type:Hr.types.CHAR,value:8239},{type:Hr.types.CHAR,value:8287},{type:Hr.types.CHAR,value:12288},{type:Hr.types.CHAR,value:65279}],WFt=()=>[{type:Hr.types.CHAR,value:10},{type:Hr.types.CHAR,value:13},{type:Hr.types.CHAR,value:8232},{type:Hr.types.CHAR,value:8233}];Wi.words=()=>({type:Hr.types.SET,set:FIe(),not:!1});Wi.notWords=()=>({type:Hr.types.SET,set:FIe(),not:!0});Wi.ints=()=>({type:Hr.types.SET,set:$Ie(),not:!1});Wi.notInts=()=>({type:Hr.types.SET,set:$Ie(),not:!0});Wi.whitespace=()=>({type:Hr.types.SET,set:UIe(),not:!1});Wi.notWhitespace=()=>({type:Hr.types.SET,set:UIe(),not:!0});Wi.anyChar=()=>({type:Hr.types.SET,set:WFt(),not:!0})});var jIe=E(ac=>{"use strict";var $Ft=ac&&ac.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),FFt=ac&&ac.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),UFt=ac&&ac.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&$Ft(e,t,r);return FFt(e,t),e};Object.defineProperty(ac,"__esModule",{value:!0});ac.tokenizeClass=ac.strToChars=void 0;var qIe=Ld(),Xy=UFt(TP()),qFt="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";ac.strToChars=t=>{let e=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;return t.replace(e,(r,n,s,i,a,o,c)=>{if(s)return r;let u=n?8:i?parseInt(i,16):a?parseInt(a,16):o?qFt.indexOf(o):{0:0,t:9,n:10,v:11,f:12,r:13}[c],l=String.fromCharCode(u);return/[[\]{}^$.|?*+()]/.test(l)?`\\${l}`:l})};ac.tokenizeClass=(t,e)=>{var r,n,s,i,a,o,c;let u=[],l,d,f=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(((?:\\)])|(((?:\\)?([^\]])))))|(\])|(?:\\)?([^])/g;for(;(l=f.exec(t))!==null;){let p=(c=(o=(a=(i=(s=(n=(r=l[1]&&Xy.words())!==null&&r!==void 0?r:l[2]&&Xy.ints())!==null&&n!==void 0?n:l[3]&&Xy.whitespace())!==null&&s!==void 0?s:l[4]&&Xy.notWords())!==null&&i!==void 0?i:l[5]&&Xy.notInts())!==null&&a!==void 0?a:l[6]&&Xy.notWhitespace())!==null&&o!==void 0?o:l[7]&&{type:qIe.types.RANGE,from:(l[8]||l[9]).charCodeAt(0),to:(d=l[10]).charCodeAt(d.length-1)})!==null&&c!==void 0?c:(d=l[16])&&{type:qIe.types.CHAR,value:d.charCodeAt(0)};if(p)u.push(p);else return[u,f.lastIndex]}throw new SyntaxError(`Invalid regular expression: /${e}/: Unterminated character class`)}});var Nq=E(al=>{"use strict";var jFt=al&&al.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),HFt=al&&al.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),QIe=al&&al.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jFt(e,t,r);return HFt(e,t),e};Object.defineProperty(al,"__esModule",{value:!0});al.tokenizer=void 0;var HIe=QIe(jIe()),gi=Ld(),oh=QIe(TP());al.tokenizer=t=>{let e=0,r,n={type:gi.types.ROOT,stack:[]},s=n,i=n.stack,a=[],o=[],c=0,u=d=>{throw new SyntaxError(`Invalid regular expression: /${t}/: Nothing to repeat at column ${d-1}`)},l=HIe.strToChars(t);for(;es){let i=r.stack.splice(r.index+1);for(let a of n.slice(s))r.stack.push({type:gi.types.CHAR,value:a.charCodeAt(0)});r.stack.push(...i)}}}}});var VIe=E($i=>{"use strict";var GFt=$i&&$i.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),VFt=$i&&$i.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),zFt=$i&&$i.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&GFt(e,t,r);return VFt(e,t),e};Object.defineProperty($i,"__esModule",{value:!0});$i.NOTANYCHAR=$i.WHITESPACE=$i.WORDS=$i.INTS=void 0;var wP=zFt(TP()),GIe=Ld();function RP(t){let e={},r=0;for(let n of t)n.type===GIe.types.CHAR&&(e[n.value]=!0),n.type===GIe.types.RANGE&&(e[`${n.from}-${n.to}`]=!0),r+=1;return{lookup:()=>Object.assign({},e),len:r}}$i.INTS=RP(wP.ints().set);$i.WORDS=RP(wP.words().set);$i.WHITESPACE=RP(wP.whitespace().set);$i.NOTANYCHAR=RP(wP.anyChar().set)});var KIe=E(oc=>{"use strict";var KFt=oc&&oc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),YFt=oc&&oc.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),JFt=oc&&oc.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&KFt(e,t,r);return YFt(e,t),e};Object.defineProperty(oc,"__esModule",{value:!0});oc.writeSetTokens=oc.setChar=void 0;var DP=Ld(),NP=JFt(VIe());function PP(t){return t===94?"\\^":t===92?"\\\\":t===93?"\\]":t===45?"\\-":String.fromCharCode(t)}oc.setChar=PP;function OP(t,{lookup:e,len:r}){if(r!==t.length)return!1;let n=e();for(let s of t){if(s.type===DP.types.SET)return!1;let i=s.type===DP.types.CHAR?s.value:`${s.from}-${s.to}`;if(n[i])n[i]=!1;else return!1}return!0}function zIe(t,e=!1){if(OP(t.set,NP.INTS))return t.not?"\\D":"\\d";if(OP(t.set,NP.WORDS))return t.not?"\\W":"\\w";if(t.not&&OP(t.set,NP.NOTANYCHAR))return".";if(OP(t.set,NP.WHITESPACE))return t.not?"\\S":"\\s";let r="";for(let s=0;s{"use strict";Object.defineProperty(Zy,"__esModule",{value:!0});Zy.reconstruct=void 0;var Hp=Ld(),Oq=KIe(),YIe=t=>t.map(Zy.reconstruct).join(""),JIe=t=>{if("options"in t)return t.options.map(YIe).join("|");if("stack"in t)return YIe(t.stack);throw new Error("options or stack must be Root or Group token")};Zy.reconstruct=t=>{switch(t.type){case Hp.types.ROOT:return JIe(t);case Hp.types.CHAR:{let e=String.fromCharCode(t.value);return(/[[\\{}$^.|?*+()]/.test(e)?"\\":"")+e}case Hp.types.POSITION:return t.value==="^"||t.value==="$"?t.value:`\\${t.value}`;case Hp.types.REFERENCE:return`\\${t.value}`;case Hp.types.SET:return Oq.writeSetTokens(t);case Hp.types.GROUP:return`(${t.remember?"":t.followedBy?"?=":t.notFollowedBy?"?!":"?:"}${JIe(t)})`;case Hp.types.REPETITION:{let{min:e,max:r}=t,n;return e===0&&r===1?n="?":e===1&&r===1/0?n="+":e===0&&r===1/0?n="*":r===1/0?n=`{${e},}`:e===r?n=`{${e}}`:n=`{${e},${r}}`,`${Zy.reconstruct(t.value)}${n}`}case Hp.types.RANGE:return`${Oq.setChar(t.from)}-${Oq.setChar(t.to)}`;default:throw new Error(`Invalid token type ${t}`)}}});var eTe=E((cc,kP)=>{"use strict";var ZFt=cc&&cc.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r),Object.defineProperty(t,n,{enumerable:!0,get:function(){return e[r]}})}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Dq=cc&&cc.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&ZFt(e,t,r)};Object.defineProperty(cc,"__esModule",{value:!0});cc.types=void 0;var XIe=Ld();Object.defineProperty(cc,"types",{enumerable:!0,get:function(){return XIe.types}});Dq(Nq(),cc);Dq(Pq(),cc);var ZIe=Nq(),eUt=Pq();Dq(Ld(),cc);cc.default=ZIe.tokenizer;kP.exports=ZIe.tokenizer;kP.exports.types=XIe.types;kP.exports.reconstruct=eUt.reconstruct});var rTe=E((_4r,LP)=>{"use strict";var tTe=eTe(),tUt=tTe.types;function kq(t,e){e||(e={});let r=e.limit===void 0?25:e.limit;rUt(t)?t=t.source:typeof t!="string"&&(t=String(t));try{t=tTe(t)}catch{return!1}let n=0;return function s(i,a){let o,c,u;if(i.type===tUt.REPETITION&&(a++,n++,a>1||n>r))return!1;if(i.options){for(o=0,u=i.options.length;o{"use strict";nTe.exports={name:"__fmw_internal_strategy_merged_tree_http_method__",storage:function(){let t={};return{get:e=>t[e]||null,set:(e,r)=>{t[e]=r}}},deriveConstraint:t=>t.method,mustMatchWhenDerived:!0}});var lTe=E((v4r,uTe)=>{"use strict";var sTe=Go(),iTe=BP(),aTe=Symbol("treeData");function oTe(t,e=""){let r="",n=Object.keys(t);for(let s=0;siTe(e)):typeof t=="symbol"?t.toString():typeof t=="function"?tUt(t):t}function rUt(t,e){if(!e.includeMeta)return{};let r=e.buildPrettyMeta(t),n={},s=e.includeMeta;Array.isArray(s)||(s=Reflect.ownKeys(r));for(let i of s){if(!Object.prototype.hasOwnProperty.call(r,i))continue;let a=i.toString(),o=r[i];if(o!=null){let c=JSON.stringify(iTe(o));n[a]=c}}return n}function nUt(t){let e="";for(let[r,n]of Object.entries(t))e+=` -\u2022 (${r}) ${n}`;return e}function sUt(t){let e={...t.opts.constraints},r=e[rTe.name];return delete e[rTe.name],{...t,method:r,opts:{constraints:e}}}function iUt(t){let e=` (${t.method})`,r=t.opts.constraints||{};return Object.keys(r).length!==0&&(e+=" "+JSON.stringify(r)),e+=nUt(t.metaData),e}function aUt(t){return t.reduce((e,r)=>{for(let n of e)if(tTe(r.opts.constraints,n.opts.constraints)&&tTe(r.metaData,n.metaData))return n.method+=", "+r.method,e;return e.push(r),e},[])}function oUt(t,e,r){let n=t.routes;return r.method===void 0&&(n=n.map(sUt)),n=n.map(s=>(s.metaData=rUt(s,r),s)),r.method===void 0&&(n=aUt(n)),n.map(iUt).join(` -${e}`)}function BP(t,e,r,n){if((t.isLeafNode||n.commonPrefix!==!1)&&(r=r||"(empty root node)",e=e[r]={},t.isLeafNode&&(e[nTe]=oUt(t,r,n)),r=""),t.staticChildren)for(let s of Object.values(t.staticChildren))BP(s,e,r+s.prefix,n);if(t.parametricChildren)for(let s of Object.values(t.parametricChildren)){let i=Array.from(s.nodePaths).join("|");BP(s,e,r+i,n)}t.wildcardChild&&BP(t.wildcardChild,e,"*",n)}function cUt(t,e){let r={};return BP(t,r,t.prefix,e),sTe(r)}aTe.exports={prettyPrintTree:cUt}});var uTe=E((x4r,cTe)=>{"use strict";var uUt=DP(),D9=class{constructor(){this.unconstrainedHandler=null,this.constraints=[],this.handlers=[],this.constrainedHandlerStores=null}getMatchingHandler(e){return e===void 0?this.unconstrainedHandler:this._getHandlerMatchingConstraints(e)}addHandler(e,r){let n=r.params,s=r.opts.constraints||{},i={params:n,constraints:s,handler:r.handler,store:r.store||null,_createParamsObject:this._compileCreateParamsObject(n)},a=Object.keys(s);a.length===0&&(this.unconstrainedHandler=i);for(let c of a)this.constraints.includes(c)||(c==="version"?this.constraints.unshift(c):this.constraints.push(c));let o=a.includes(uUt.name);if(!o&&this.handlers.length>=31)throw new Error("find-my-way supports a maximum of 31 route handlers per node when there are constraints, limit reached");this.handlers.push(i),this.handlers.sort((c,u)=>Object.keys(c.constraints).length-Object.keys(u.constraints).length),o||this._compileGetHandlerMatchingConstraints(e,s)}_compileCreateParamsObject(e){let r=[];for(let n=0;ncTe(e)):typeof t=="symbol"?t.toString():typeof t=="function"?nUt(t):t}function sUt(t,e){if(!e.includeMeta)return{};let r=e.buildPrettyMeta(t),n={},s=e.includeMeta;Array.isArray(s)||(s=Reflect.ownKeys(r));for(let i of s){if(!Object.prototype.hasOwnProperty.call(r,i))continue;let a=i.toString(),o=r[i];if(o!=null){let c=JSON.stringify(cTe(o));n[a]=c}}return n}function iUt(t){let e="";for(let[r,n]of Object.entries(t))e+=` +\u2022 (${r}) ${n}`;return e}function aUt(t){let e={...t.opts.constraints},r=e[iTe.name];return delete e[iTe.name],{...t,method:r,opts:{constraints:e}}}function oUt(t){let e=` (${t.method})`,r=t.opts.constraints||{};return Object.keys(r).length!==0&&(e+=" "+JSON.stringify(r)),e+=iUt(t.metaData),e}function cUt(t){return t.reduce((e,r)=>{for(let n of e)if(sTe(r.opts.constraints,n.opts.constraints)&&sTe(r.metaData,n.metaData))return n.method+=", "+r.method,e;return e.push(r),e},[])}function uUt(t,e,r){let n=t.routes;return r.method===void 0&&(n=n.map(aUt)),n=n.map(s=>(s.metaData=sUt(s,r),s)),r.method===void 0&&(n=cUt(n)),n.map(oUt).join(` +${e}`)}function MP(t,e,r,n){if((t.isLeafNode||n.commonPrefix!==!1)&&(r=r||"(empty root node)",e=e[r]={},t.isLeafNode&&(e[aTe]=uUt(t,r,n)),r=""),t.staticChildren)for(let s of Object.values(t.staticChildren))MP(s,e,r+s.prefix,n);if(t.parametricChildren)for(let s of Object.values(t.parametricChildren)){let i=Array.from(s.nodePaths).join("|");MP(s,e,r+i,n)}t.wildcardChild&&MP(t.wildcardChild,e,"*",n)}function lUt(t,e){let r={};return MP(t,r,t.prefix,e),oTe(r)}uTe.exports={prettyPrintTree:lUt}});var fTe=E((C4r,dTe)=>{"use strict";var dUt=BP(),Lq=class{constructor(){this.unconstrainedHandler=null,this.constraints=[],this.handlers=[],this.constrainedHandlerStores=null}getMatchingHandler(e){return e===void 0?this.unconstrainedHandler:this._getHandlerMatchingConstraints(e)}addHandler(e,r){let n=r.params,s=r.opts.constraints||{},i={params:n,constraints:s,handler:r.handler,store:r.store||null,_createParamsObject:this._compileCreateParamsObject(n)},a=Object.keys(s);a.length===0&&(this.unconstrainedHandler=i);for(let c of a)this.constraints.includes(c)||(c==="version"?this.constraints.unshift(c):this.constraints.push(c));let o=a.includes(dUt.name);if(!o&&this.handlers.length>=31)throw new Error("find-my-way supports a maximum of 31 route handlers per node when there are constraints, limit reached");this.handlers.push(i),this.handlers.sort((c,u)=>Object.keys(c.constraints).length-Object.keys(u.constraints).length),o||this._compileGetHandlerMatchingConstraints(e,s)}_compileCreateParamsObject(e){let r=[];for(let n=0;n{"use strict";var lUt=uTe(),UP={STATIC:0,PARAMETRIC:1,WILDCARD:2},LP=class{constructor(){this.isLeafNode=!1,this.routes=null,this.handlerStorage=null}addRoute(e,r){this.routes===null&&(this.routes=[]),this.handlerStorage===null&&(this.handlerStorage=new lUt),this.isLeafNode=!0,this.routes.push(e),this.handlerStorage.addHandler(r,e)}},MP=class extends LP{constructor(){super(),this.staticChildren={}}findStaticMatchingChild(e,r){let n=this.staticChildren[e.charAt(r)];return n===void 0||!n.matchPrefix(e,r)?null:n}getStaticChild(e,r=0){if(e.length===r)return this;let n=this.findStaticMatchingChild(e,r);return n?n.getStaticChild(e,r+n.prefix.length):null}createStaticChild(e){if(e.length===0)return this;let r=this.staticChildren[e.charAt(0)];if(r){let s=1;for(;s(s.regex&&s.regex.source)===r);return n||null}createParametricChild(e,r,n){let s=this.getParametricChild(e);return s?(s.nodePaths.add(n),s):(s=new $P(e,r,n),this.parametricChildren.push(s),this.parametricChildren.sort((i,a)=>i.isRegex?a.isRegex?i.staticSuffix===null?1:a.staticSuffix===null?-1:a.staticSuffix.endsWith(i.staticSuffix)?1:i.staticSuffix.endsWith(a.staticSuffix)?-1:0:-1:1),s)}getWildcardChild(){return this.wildcardChild}createWildcardChild(){return this.wildcardChild=this.getWildcardChild()||new FP,this.wildcardChild}split(e,r){let n=this.prefix.slice(0,r),s=this.prefix.slice(r);this.prefix=s,this._compilePrefixMatch();let i=new t(n);return i.staticChildren[s.charAt(0)]=this,e.staticChildren[n.charAt(0)]=i,i}getNextNode(e,r,n,s){let i=this.findStaticMatchingChild(e,r),a=0;if(i===null){if(this.parametricChildren.length===0)return this.wildcardChild;i=this.parametricChildren[0],a=1}this.wildcardChild!==null&&n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.wildcardChild});for(let o=this.parametricChildren.length-1;o>=a;o--)n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.parametricChildren[o]});return i}_compilePrefixMatch(){if(this.prefix.length===1){this.matchPrefix=()=>!0;return}let e=[];for(let r=1;r{"use strict";var dUt=require("node:assert");function AS(){if(!(this instanceof AS))return new AS;this.store={},this.maxMajor=0,this.maxMinors={},this.maxPatches={}}AS.prototype.set=function(t,e){if(typeof t!="string")throw new TypeError("Version should be a string");let[r,n,s]=t.split(".");if(isNaN(r))throw new TypeError("Major version must be a numeric value");return r=Number(r),n=Number(n)||0,s=Number(s)||0,r>=this.maxMajor&&(this.maxMajor=r,this.store.x=e,this.store["*"]=e,this.store["x.x"]=e,this.store["x.x.x"]=e),n>=(this.maxMinors[r]||0)&&(this.maxMinors[r]=n,this.store[`${r}.x`]=e,this.store[`${r}.x.x`]=e),s>=(this.maxPatches[`${r}.${n}`]||0)&&(this.maxPatches[`${r}.${n}`]=s,this.store[`${r}.${n}.x`]=e),this.store[`${r}.${n}.${s}`]=e,this};AS.prototype.get=function(t){return this.store[t]};fTe.exports={name:"version",mustMatchWhenDerived:!0,storage:AS,validate(t){dUt(typeof t=="string","Version should be a string")}}});var hTe=E((_4r,mTe)=>{"use strict";var fUt=require("node:assert");function pUt(){let t={},e=[];return{get:r=>{let n=t[r];if(n)return n;for(let s of e)if(s.host.test(r))return s.value},set:(r,n)=>{r instanceof RegExp?e.push({host:r,value:n}):t[r]=n}}}mTe.exports={name:"host",mustMatchWhenDerived:!1,storage:pUt,validate(t){fUt(typeof t=="string"||Object.prototype.toString.call(t)==="[object RegExp]","Host should be a string or a RegExp")}}});var ATe=E((S4r,gTe)=>{"use strict";var mUt=pTe(),hUt=hTe(),B9=require("node:assert"),L9=class{constructor(e){if(this.strategies={version:mUt,host:hUt},this.strategiesInUse=new Set,this.asyncStrategiesInUse=new Set,e)for(let r of Object.values(e))this.addConstraintStrategy(r)}isStrategyUsed(e){return this.strategiesInUse.has(e)||this.asyncStrategiesInUse.has(e)}hasConstraintStrategy(e){let r=this.strategies[e];return r!==void 0?r.isCustom||this.isStrategyUsed(e):!1}addConstraintStrategy(e){if(B9(typeof e.name=="string"&&e.name!=="","strategy.name is required."),B9(e.storage&&typeof e.storage=="function","strategy.storage function is required."),B9(e.deriveConstraint&&typeof e.deriveConstraint=="function","strategy.deriveConstraint function is required."),this.strategies[e.name]&&this.strategies[e.name].isCustom)throw new Error(`There already exists a custom constraint with the name ${e.name}.`);if(this.isStrategyUsed(e.name))throw new Error(`There already exists a route with ${e.name} constraint.`);e.isCustom=!0,e.isAsync=e.deriveConstraint.length===3,this.strategies[e.name]=e,e.mustMatchWhenDerived&&this.noteUsage({[e.name]:e})}deriveConstraints(e,r,n){let s=this.deriveSyncConstraints(e,r);if(n===void 0)return s;this.deriveAsyncConstraints(s,e,r,n)}deriveSyncConstraints(e,r){}noteUsage(e){if(e){let r=this.strategiesInUse.size;for(let n in e)this.strategies[n].isAsync?this.asyncStrategiesInUse.add(n):this.strategiesInUse.add(n);r!==this.strategiesInUse.size&&this._buildDeriveConstraints()}}newStoreForConstraint(e){if(!this.strategies[e])throw new Error(`No strategy registered for constraint key ${e}`);return this.strategies[e].storage()}validateConstraints(e){for(let r in e){let n=e[r];if(typeof n>"u")throw new Error("Can't pass an undefined constraint value, must pass null or no key at all");let s=this.strategies[r];if(!s)throw new Error(`No strategy registered for constraint key ${r}`);s.validate&&s.validate(n)}}deriveAsyncConstraints(e,r,n,s){let i=this.asyncStrategiesInUse.size;if(i===0){s(null,e);return}e=e||{};for(let a of this.asyncStrategiesInUse)this.strategies[a].deriveConstraint(r,n,(c,u)=>{if(c!==null){s(c);return}e[a]=u,--i===0&&s(null,e)})}_buildDeriveConstraints(){if(this.strategiesInUse.size===0)return;let e=["return {"];for(let r of this.strategiesInUse){let n=this.strategies[r];n.isCustom?e.push(` ${n.name}: this.strategies.${r}.deriveConstraint(req, ctx),`):r==="version"?e.push(" version: req.headers['accept-version'],"):e.push(" host: req.headers.host || req.headers[':authority'],")}e.push("}"),this.deriveSyncConstraints=new Function("req","ctx",e.join(` -`)).bind(this)}};gTe.exports=L9});var xTe=E((v4r,yTe)=>{"use strict";var gUt=["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE"];yTe.exports=gUt});var _Te=E((I4r,ETe)=>{"use strict";function bTe(t,e){return t===50?e===53?"%":e===51?"#":e===52?"$":e===54?"&":e===66||e===98?"+":e===67||e===99?",":e===70||e===102?"/":null:t===51?e===65||e===97?":":e===66||e===98?";":e===68||e===100?"=":e===70||e===102?"?":null:t===52&&e===48?"@":null}function AUt(t,e){let r=!1,n=!1,s="";for(let a=1;a{"use strict";var fs=require("node:assert"),xUt=NCe(),qP=ZCe(),W9=Ko(),{prettyPrintTree:bUt}=oTe(),{StaticNode:STe,NODE_TYPES:vTe}=dTe(),EUt=ATe(),ex=xTe(),M9=DP(),{safeDecodeURI:_Ut,safeDecodeURIComponent:ITe}=_Te(),CTe=/^https?:\/\/.*?\//,ch=/(\/:[^/()]*?)\?(\/?)/;if(!qP(CTe))throw new Error("the FULL_PATH_REGEXP is not safe, update this module");if(!qP(ch))throw new Error("the OPTIONAL_PARAM_REGEXP is not safe, update this module");function Vn(t){if(!(this instanceof Vn))return new Vn(t);t=t||{},this._opts=t,t.defaultRoute?(fs(typeof t.defaultRoute=="function","The default route must be a function"),this.defaultRoute=t.defaultRoute):this.defaultRoute=null,t.onBadUrl?(fs(typeof t.onBadUrl=="function","The bad url handler must be a function"),this.onBadUrl=t.onBadUrl):this.onBadUrl=null,t.buildPrettyMeta?(fs(typeof t.buildPrettyMeta=="function","buildPrettyMeta must be a function"),this.buildPrettyMeta=t.buildPrettyMeta):this.buildPrettyMeta=SUt,t.querystringParser?(fs(typeof t.querystringParser=="function","querystringParser must be a function"),this.querystringParser=t.querystringParser):this.querystringParser=e=>e===""?{}:xUt.parse(e),this.caseSensitive=t.caseSensitive===void 0?!0:t.caseSensitive,this.ignoreTrailingSlash=t.ignoreTrailingSlash||!1,this.ignoreDuplicateSlashes=t.ignoreDuplicateSlashes||!1,this.maxParamLength=t.maxParamLength||100,this.allowUnsafeRegex=t.allowUnsafeRegex||!1,this.constrainer=new EUt(t.constraints),this.useSemicolonDelimiter=t.useSemicolonDelimiter||!1,this.routes=[],this.trees={}}Vn.prototype.on=function(e,r,n,s,i){typeof n=="function"&&(s!==void 0&&(i=s),s=n,n={}),fs(typeof r=="string","Path should be a string"),fs(r.length>0,"The path could not be empty"),fs(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),fs(typeof s=="function","Handler should be a function");let a=r.match(ch);if(a){fs(r.length===a.index+a[0].length,"Optional Parameter needs to be the last parameter of the path");let u=r.replace(ch,"$1$2"),l=r.replace(ch,"$2")||"/";this.on(e,u,n,s,i),this.on(e,l,n,s,i);return}let o=r;this.ignoreDuplicateSlashes&&(r=$9(r)),this.ignoreTrailingSlash&&(r=F9(r));let c=Array.isArray(e)?e:[e];for(let u of c)fs(typeof u=="string","Method should be a string"),fs(ex.includes(u),`Method '${u}' is not an http method.`),this._on(u,r,n,s,i,o)};Vn.prototype._on=function(e,r,n,s,i){let a={};n.constraints!==void 0&&(fs(typeof n.constraints=="object"&&n.constraints!==null,"Constraints should be an object"),Object.keys(n.constraints).length!==0&&(a=n.constraints)),this.constrainer.validateConstraints(a),this.constrainer.noteUsage(a),this.trees[e]===void 0&&(this.trees[e]=new STe("/"));let o=r;if(o==="*"&&this.trees[e].prefix.length!==0){let f=this.trees[e];this.trees[e]=new STe(""),this.trees[e].staticChildren["/"]=f}let c=this.trees[e],u=c.prefix.length,l=[];for(let f=0;f<=o.length;f++){if(o.charCodeAt(f)===58&&o.charCodeAt(f+1)===58){f++;continue}let p=o.charCodeAt(f)===58&&o.charCodeAt(f+1)!==58,m=o.charCodeAt(f)===42;if(p||m||f===o.length&&f!==u){let h=o.slice(u,f);this.caseSensitive||(h=h.toLowerCase()),h=h.split("::").join(":"),h=h.split("%").join("%25"),c=c.createStaticChild(h)}if(p){let h=!1,A=!0,g="",b=[],y=f+1;for(let x=y;;x++){let v=o.charCodeAt(x),I=v===40,R=v===45||v===46,w=v===47||x===o.length;if(I||R||w){let N=o.slice(y,x);if(l.push(N),h=h||I||R,I){let M=RTe(o,x),D=o.slice(x,M+1);this.allowUnsafeRegex||fs(qP(new RegExp(D)),`The regex '${D}' is not safe!`),b.push(wTe(D)),x=M+1,A=!0}else b.push(A?"(.*?)":`(${g}|(?:(?!${g}).)*)`),A=!1;let P=x;for(;x0,"The path could not be empty"),fs(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),fs(typeof n>"u"||typeof n=="object"&&!Array.isArray(n)&&n!==null,"Constraints should be an object or undefined.");let s=r.match(ch);if(s){fs(r.length===s.index+s[0].length,"Optional Parameter needs to be the last parameter of the path");let a=r.replace(ch,"$1$2"),o=r.replace(ch,"$2");this.off(e,a,n),this.off(e,o,n);return}this.ignoreDuplicateSlashes&&(r=$9(r)),this.ignoreTrailingSlash&&(r=F9(r));let i=Array.isArray(e)?e:[e];for(let a of i)this._off(a,r,n)};Vn.prototype._off=function(e,r,n){fs(typeof e=="string","Method should be a string"),fs(ex.includes(e),`Method '${e}' is not an http method.`);function s(c){return e!==c.method||r!==c.path}function i(c){return s(c)||!W9(n,c.opts.constraints||{})}let a=n?i:s,o=this.routes.filter(a);this._rebuild(o)};Vn.prototype.lookup=function(e,r,n,s){if(typeof n=="function"&&(s=n,n=void 0),s===void 0){let i=this.constrainer.deriveConstraints(e,n),a=this.find(e.method,e.url,i);return this.callHandler(a,e,r,n)}this.constrainer.deriveConstraints(e,n,(i,a)=>{if(i!==null){s(i);return}try{let o=this.find(e.method,e.url,a),c=this.callHandler(o,e,r,n);s(null,c)}catch(o){s(o)}})};Vn.prototype.callHandler=function(e,r,n,s){return e===null?this._defaultRoute(r,n,s):s===void 0?e.handler(r,n,e.params,e.store,e.searchParams):e.handler.call(s,r,n,e.params,e.store,e.searchParams)};Vn.prototype.find=function(e,r,n){let s=this.trees[e];if(s===void 0)return null;r.charCodeAt(0)!==47&&(r=r.replace(CTe,"/")),this.ignoreDuplicateSlashes&&(r=$9(r));let i,a,o;try{i=_Ut(r,this.useSemicolonDelimiter),r=i.path,a=i.querystring,o=i.shouldDecodeParam}catch{return this._onBadUrl(r)}this.ignoreTrailingSlash&&(r=F9(r));let c=r;this.caseSensitive===!1&&(r=r.toLowerCase());let u=this.maxParamLength,l=s.prefix.length,d=[],f=r.length,p=[];for(;;){if(l===f&&s.isLeafNode){let g=s.handlerStorage.getMatchingHandler(n);if(g!==null)return{handler:g.handler,store:g.store,params:g._createParamsObject(d),searchParams:this.querystringParser(a)}}let m=s.getNextNode(r,l,p,d.length);if(m===null){if(p.length===0)return null;let g=p.pop();l=g.brotherPathIndex,d.splice(g.paramsCount),m=g.brotherNode}if(s=m,s.kind===vTe.STATIC){l+=s.prefix.length;continue}if(s.kind===vTe.WILDCARD){let g=c.slice(l);o&&(g=ITe(g)),d.push(g),l=f;continue}let h=c.indexOf("/",l);h===-1&&(h=f);let A=c.slice(l,h);if(o&&(A=ITe(A)),s.isRegex){let g=s.regex.exec(A);if(g===null)continue;for(let b=1;bu)return null;d.push(y)}}else{if(A.length>u)return null;d.push(A)}l=h}};Vn.prototype._rebuild=function(t){this.reset();for(let e of t){let{method:r,path:n,opts:s,handler:i,store:a}=e;this._on(r,n,s,i,a)}};Vn.prototype._defaultRoute=function(t,e,r){if(this.defaultRoute!==null)return r===void 0?this.defaultRoute(t,e):this.defaultRoute.call(r,t,e);e.statusCode=404,e.end()};Vn.prototype._onBadUrl=function(t){if(this.onBadUrl===null)return null;let e=this.onBadUrl;return{handler:(r,n,s)=>e(t,r,n),params:{},store:null}};Vn.prototype.prettyPrint=function(t={}){let e=t.method;t.buildPrettyMeta=this.buildPrettyMeta.bind(this);let r=null;if(e===void 0){let{version:n,host:s,...i}=this.constrainer.strategies;i[M9.name]=M9;let a=new Vn({...this._opts,constraints:i}),o=this.routes.map(c=>{let u={...c.opts.constraints,[M9.name]:c.method};return{...c,method:"MERGED",opts:{constraints:u}}});a._rebuild(o),r=a.trees.MERGED}else r=this.trees[e];return r==null?"(empty tree)":bUt(r,t)};for(let t in ex){if(!ex.hasOwnProperty(t))continue;let e=ex[t],r=e.toLowerCase();Vn.prototype[r]=function(n,s,i){return this.on(e,n,s,i)}}Vn.prototype.all=function(t,e,r){this.on(ex,t,e,r)};NTe.exports=Vn;function TTe(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function $9(t){return t.replace(/\/\/+/g,"/")}function F9(t){return t.length>1&&t.charCodeAt(t.length-1)===47?t.slice(0,-1):t}function wTe(t){return t.charCodeAt(1)===94&&(t=t.slice(0,1)+t.slice(2)),t.charCodeAt(t.length-2)===36&&(t=t.slice(0,t.length-2)+t.slice(t.length-1)),t}function RTe(t,e){let r=1;for(;e{"use strict";function q9(t,e,r,n){if(r===void 0)return e.header("content-length","0"),n(null,null);if(typeof r.resume=="function")return r.on("error",i=>{e.log.error({err:i},"Error on Stream found for HEAD route")}),r.resume(),n(null,null);let s=""+Buffer.byteLength(r);e.header("content-length",s),n(null,null)}function vUt(t){return t==null?q9:Array.isArray(t)?[...t,q9]:[t,q9]}OTe.exports={parseHeadOnSendHandlers:vUt}});var zTe=E((w4r,VTe)=>{"use strict";var IUt=U9(),CUt=$N(),kTe=n5(),{onRequestAbortHookRunner:TUt,lifecycleHooks:DTe,preParsingHookRunner:wUt,onTimeoutHookRunner:RUt,onRequestHookRunner:NUt}=cp(),{supportedMethods:OUt}=B$(),{normalizeSchema:PUt}=c1(),{parseHeadOnSendHandlers:kUt}=PTe(),{FSTDEP007:DUt,FSTDEP008:BUt,FSTDEP014:BTe}=od(),{compileSchemasForValidation:LUt,compileSchemasForSerialization:MUt}=X6(),{FST_ERR_SCH_VALIDATION_BUILD:WUt,FST_ERR_SCH_SERIALIZATION_BUILD:$Ut,FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:FUt,FST_ERR_DUPLICATED_ROUTE:UUt,FST_ERR_INVALID_URL:qUt,FST_ERR_HOOK_INVALID_HANDLER:LTe,FST_ERR_ROUTE_OPTIONS_NOT_OBJ:jUt,FST_ERR_ROUTE_DUPLICATED_HANDLER:HUt,FST_ERR_ROUTE_HANDLER_NOT_FN:MTe,FST_ERR_ROUTE_MISSING_HANDLER:QUt,FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:GUt,FST_ERR_ROUTE_METHOD_INVALID:KUt,FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:VUt,FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:zUt,FST_ERR_HOOK_INVALID_ASYNC_HANDLER:j9}=Ci(),{kRoutePrefix:YUt,kLogLevel:JUt,kLogSerializers:WTe,kHooks:$Te,kSchemaController:XUt,kOptions:FTe,kReplySerializerDefault:H9,kReplyIsError:ZUt,kRequestPayloadStream:e7t,kDisableRequestLogging:t7t,kSchemaErrorFormatter:r7t,kErrorHandler:UTe,kHasBeenDecorated:qTe,kRequestAcceptVersion:Q9,kRouteByFastify:G9,kRouteContext:jTe}=Gs(),{buildErrorHandler:n7t}=F1(),{createChildLogger:s7t}=o1(),{getGenReqId:i7t}=vP();function a7t(t){let e=IUt(t.config),r,n,s,i,a,o,c,u,l,d,f,p,m,h=!1;return{setup(w,N){r=N.avvio,n=N.fourOhFour,s=N.logger,i=N.hasLogger,a=N.setupResponseListeners,o=N.throwIfAlreadyStarted,p=N.validateHTTPVersion,f=w.exposeHeadRoutes,c=w.disableRequestLogging,u=w.ignoreTrailingSlash,l=w.ignoreDuplicateSlashes,d=Object.prototype.hasOwnProperty.call(w,"return503OnClosing")?w.return503OnClosing:!0,m=N.keepAliveConnections},routing:e.lookup.bind(e),route:I,hasRoute:x,prepareRoute:y,getDefaultRoute:function(){return BTe(),e.defaultRoute},setDefaultRoute:function(w){if(BTe(),typeof w!="function")throw new FUt;e.defaultRoute=w},routeHandler:R,closeRoutes:()=>{h=!0},printRoutes:e.prettyPrint.bind(e),addConstraintStrategy:A,hasConstraintStrategy:g,isAsyncConstraint:b,findRoute:v};function A(w){return o("Cannot add constraint strategy!"),e.addConstraintStrategy(w)}function g(w){return e.hasConstraintStrategy(w)}function b(){return e.constrainer.asyncStrategiesInUse.size>0}function y({method:w,url:N,options:P,handler:B,isFastify:M}){if(typeof N!="string")throw new qUt(typeof N);if(!B&&typeof P=="function")B=P,P={};else if(B&&typeof B=="function"){if(Object.prototype.toString.call(P)!=="[object Object]")throw new jUt(w,N);if(P.handler)throw typeof P.handler=="function"?new HUt(w,N):new MTe(w,N)}return P=Object.assign({},P,{method:w,url:N,path:N,handler:B||P&&P.handler}),I.call(this,{options:P,isFastify:M})}function x({options:w}){return v(w)!==null}function v(w){let N=e.find(w.method,w.url||"",w.constraints);return N?{handler:N.handler,params:N.params,searchParams:N.searchParams}:null}function I({options:w,isFastify:N}){let P={...w},{exposeHeadRoute:B}=P,D=B!=null?B:f,L=P.method==="GET"||Array.isArray(P.method)&&P.method.includes("GET"),Z=P.method==="HEAD"||Array.isArray(P.method)&&P.method.includes("HEAD"),W=D&&L?{...w}:null;o("Cannot add route!");let F=P.url||P.path||"";if(Array.isArray(P.method))for(var K=0;K0&&P.method!=="HEAD")switch(P.prefixTrailingSlash){case"slash":J.call(this,{path:F,isFastify:N});break;case"no-slash":J.call(this,{path:"",isFastify:N});break;case"both":default:J.call(this,{path:"",isFastify:N}),u!==!0&&(l!==!0||!j.endsWith("/"))&&J.call(this,{path:F,prefixing:!0,isFastify:N})}else F[0]==="/"&&j.endsWith("/")?J.call(this,{path:F.slice(1),isFastify:N}):J.call(this,{path:F,isFastify:N});return this;function J({path:se,prefixing:oe=!1,isFastify:ue=!1}){let Ie=j+se;if(P.url=Ie,P.path=Ie,P.routePath=se,P.prefix=j,P.logLevel=P.logLevel||this[JUt],(this[WTe]||P.logSerializers)&&(P.logSerializers=Object.assign(Object.create(this[WTe]),P.logSerializers)),P.attachValidation==null&&(P.attachValidation=!1),oe===!1)for(let G of this[$Te].onRoute)G.call(this,P);for(let G of DTe)if(P&&G in P){if(Array.isArray(P[G]))for(let V of P[G]){if(typeof V!="function")throw new LTe(G,Object.prototype.toString.call(V));if(G==="onSend"||G==="preSerialization"||G==="onError"||G==="preParsing"){if(V.constructor.name==="AsyncFunction"&&V.length===4)throw new j9}else if(G==="onRequestAbort"){if(V.constructor.name==="AsyncFunction"&&V.length!==1)throw new j9}else if(V.constructor.name==="AsyncFunction"&&V.length===3)throw new j9}else if(P[G]!==void 0&&typeof P[G]!="function")throw new LTe(G,Object.prototype.toString.call(P[G]))}let we=P.constraints||{},qe={...P.config,url:Ie,method:P.method},Fe=new CUt({schema:P.schema,handler:P.handler.bind(this),config:qe,errorHandler:P.errorHandler,childLoggerFactory:P.childLoggerFactory,bodyLimit:P.bodyLimit,logLevel:P.logLevel,logSerializers:P.logSerializers,attachValidation:P.attachValidation,schemaErrorFormatter:P.schemaErrorFormatter,replySerializer:this[H9],validatorCompiler:P.validatorCompiler,serializerCompiler:P.serializerCompiler,exposeHeadRoute:D,prefixTrailingSlash:P.prefixTrailingSlash||"both",server:this,isFastify:ue});P.version&&(BUt(),we.version=P.version);let _e=e.findRoute("HEAD",P.url,we),U=_e!==null;Z&&U&&!Fe[G9]&&_e.store[G9]&&e.off("HEAD",P.url,we);try{e.on(P.method,P.url,{constraints:we},R,Fe)}catch(G){if(!Fe[G9])throw G.message.includes(`Method '${P.method}' already declared for route '${P.url}'`)?new UUt(P.method,P.url):G}if(this.after((G,V)=>{Fe.errorHandler=P.errorHandler?n7t(this[UTe],P.errorHandler):this[UTe],Fe._parserOptions.limit=P.bodyLimit||null,Fe.logLevel=P.logLevel,Fe.logSerializers=P.logSerializers,Fe.attachValidation=P.attachValidation,Fe[H9]=this[H9],Fe.schemaErrorFormatter=P.schemaErrorFormatter||this[r7t]||Fe.schemaErrorFormatter,r.once("preReady",()=>{for(let q of DTe){let H=this[$Te][q].concat(P[q]||[]).map(ee=>ee.bind(this));Fe[q]=H.length?H:null}for(;!Fe.Request[qTe]&&Fe.Request.parent;)Fe.Request=Fe.Request.parent;for(;!Fe.Reply[qTe]&&Fe.Reply.parent;)Fe.Reply=Fe.Reply.parent;if(n.setContext(this,Fe),P.schema){Fe.schema=PUt(Fe.schema,this.initialConfig);let q=this[XUt];!P.validatorCompiler&&(P.schema.body||P.schema.headers||P.schema.querystring||P.schema.params)&&q.setupValidator(this[FTe]);try{let H=typeof P?.validatorCompiler=="function"||q.isCustomValidatorCompiler;LUt(Fe,P.validatorCompiler||q.validatorCompiler,H)}catch(H){throw new WUt(P.method,Ie,H.message)}P.schema.response&&!P.serializerCompiler&&q.setupSerializer(this[FTe]);try{MUt(Fe,P.serializerCompiler||q.serializerCompiler)}catch(H){throw new $Ut(P.method,Ie,H.message)}}}),V(G)}),D&&L&&!Z&&!U){let G=kUt(W.onSend);y.call(this,{method:"HEAD",url:se,options:{...W,onSend:G},isFastify:!0})}else U&&B&&DUt()}}function R(w,N,P,B,M){let D=i7t(B.server,w),L={level:B.logLevel};B.logSerializers&&(L.serializers=B.logSerializers);let Z=s7t(B,s,w,D,L);if(Z[t7t]=c,!p(w.httpVersion)){Z.info({res:{statusCode:505}},"request aborted - invalid HTTP version");let j='{"error":"HTTP Version Not Supported","message":"HTTP Version Not Supported","statusCode":505}',J={"Content-Type":"application/json","Content-Length":j.length};N.writeHead(505,J),N.end(j);return}if(h===!0&&(w.httpVersionMajor!==2&&N.setHeader("Connection","close"),d)){let j={"Content-Type":"application/json","Content-Length":"80"};N.writeHead(503,j),N.end('{"error":"Service Unavailable","message":"Service Unavailable","statusCode":503}'),Z.info({res:{statusCode:503}},"request aborted - refusing to accept new requests as server is closing");return}String.prototype.toLowerCase.call(w.headers.connection||"")==="keep-alive"&&m.has(w.socket)===!1&&(m.add(w.socket),w.socket.on("close",u7t.bind({keepAliveConnections:m,socket:w.socket}))),w.headers[Q9]!==void 0&&(w.headers["accept-version"]=w.headers[Q9],w.headers[Q9]=void 0);let F=new B.Request(D,P,w,M,Z,B),K=new B.Reply(N,F,Z);c===!1&&Z.info({req:F},"incoming request"),(i===!0||B.onResponse!==null)&&a(K),B.onRequest!==null?NUt(B.onRequest,F,K,GTe):GTe(null,F,K),B.onRequestAbort!==null&&w.on("close",()=>{w.aborted&&TUt(B.onRequestAbort,F,o7t.bind(null,K))}),B.onTimeout!==null&&(F.raw.socket._meta||F.raw.socket.on("timeout",c7t),F.raw.socket._meta={context:B,request:F,reply:K})}}function o7t(t,e){e&&t.log.error({err:e},"onRequestAborted hook failed")}function c7t(){let{context:t,request:e,reply:r}=this._meta;RUt(t.onTimeout,e,r,l7t)}function HTe(t){if(typeof t!="string")throw new KUt;if(t=t.toUpperCase(),OUt.indexOf(t)===-1)throw new GUt(t);return t}function QTe(t,e,r){if((t==="GET"||t==="HEAD")&&r&&r.body)throw new VUt(t,e)}function KTe(t){if(t!==void 0&&(!Number.isInteger(t)||t<=0))throw new zUt(t)}function GTe(t,e,r){if(r.sent!==!0){if(t!=null){r[ZUt]=!0,r.send(t);return}e[e7t]=e.raw,e[jTe].preParsing!==null?wUt(e[jTe].preParsing,e,r,kTe):kTe(null,e,r)}}function u7t(){this.keepAliveConnections.delete(this.socket)}function l7t(){}VTe.exports={buildRouting:a7t,validateBodyLimitOption:KTe}});var rwe=E((R4r,twe)=>{"use strict";var d7t=U9(),YTe=EN(),JTe=WN(),f7t=$N(),{kRoutePrefix:p7t,kCanSetNotFoundHandler:yS,kFourOhFourLevelInstance:xS,kFourOhFourContext:ol,kHooks:m7t,kErrorHandler:XTe}=Gs(),{lifecycleHooks:h7t}=cp(),{buildErrorHandler:g7t}=F1(),{FST_ERR_NOT_FOUND:A7t}=Ci(),{createChildLogger:ZTe}=o1(),{getGenReqId:ewe}=vP();function y7t(t){let{logger:e}=t,r=d7t({onBadUrl:a(),defaultRoute:l}),n=null;return{router:r,setNotFoundHandler:c,setContext:o,arrange404:s};function s(d){d[xS]=d,d[yS]=!0,r.onBadUrl=r.onBadUrl.bind(d),r.defaultRoute=r.defaultRoute.bind(d)}function i(d,f){let{url:p,method:m}=d.raw,h=`Route ${m}:${p} not found`;d.log.info(h),f.code(404).send({message:h,error:"Not Found",statusCode:404})}function a(){return function(f,p,m){let h=this[xS][ol],A=ewe(h.server,p),g=ZTe(h,e,p,A),b=new JTe(A,null,p,null,g,h),y=new YTe(m,b,g);n(b,y)}}function o(d,f){let p=Object.assign({},d[ol]);p.onSend=f.onSend,f[ol]=p}function c(d,f,p,m){this[yS]===void 0&&(this[yS]=!0),this[ol]===void 0&&(this[ol]=null);let h=this,A=this[p7t]||"/";if(this[yS]===!1)throw new Error(`Not found handler already set for Fastify instance with prefix: '${A}'`);typeof d=="object"&&(d.preHandler&&(Array.isArray(d.preHandler)?d.preHandler=d.preHandler.map(g=>g.bind(h)):d.preHandler=d.preHandler.bind(h)),d.preValidation&&(Array.isArray(d.preValidation)?d.preValidation=d.preValidation.map(g=>g.bind(h)):d.preValidation=d.preValidation.bind(h))),typeof d=="function"&&(f=d,d=void 0),d=d||{},f?(this[xS][yS]=!1,f=f.bind(this),n=f):(f=i,n=i),this.after((g,b)=>{u.call(this,A,d,f,p,m),b(g)})}function u(d,f,p,m,h){let A=new f7t({schema:f.schema,handler:p,config:f.config||{},server:this});if(m.once("preReady",()=>{let g=this[ol];for(let b of h7t){let y=this[m7t][b].concat(f[b]||[]).map(x=>x.bind(this));g[b]=y.length?y:null}g.errorHandler=f.errorHandler?g7t(this[XTe],f.errorHandler):this[XTe]}),this[ol]!==null&&d==="/"){Object.assign(this[ol],A);return}this[xS][ol]=A,r.all(d+(d.endsWith("/")?"*":"/*"),h,A),r.all(d,h,A)}function l(d,f){let p=this[xS][ol],m=ewe(p.server,d),h=ZTe(p,e,d,m);h.info({req:d},"incoming request");let A=new JTe(m,null,d,null,h,p),g=new YTe(f,A,h);A.log.warn("the default handler for 404 did not catch this, this is likely a fastify bug, please report it"),A.log.warn(r.prettyPrint()),g.code(404).send(new A7t)}}twe.exports=y7t});var swe=E((N4r,jP)=>{"use strict";jP.exports=Wr;jP.exports.default=Wr;var nwe={type:"object",additionalProperties:!1,properties:{connectionTimeout:{type:"integer",default:0},keepAliveTimeout:{type:"integer",default:72e3},forceCloseConnections:{oneOf:[{type:"string",pattern:"idle"},{type:"boolean"}]},maxRequestsPerSocket:{type:"integer",default:0,nullable:!0},requestTimeout:{type:"integer",default:0},bodyLimit:{type:"integer",default:1048576},caseSensitive:{type:"boolean",default:!0},allowUnsafeRegex:{type:"boolean",default:!1},http2:{type:"boolean"},https:{if:{not:{oneOf:[{type:"boolean"},{type:"null"},{type:"object",additionalProperties:!1,required:["allowHTTP1"],properties:{allowHTTP1:{type:"boolean"}}}]}},then:{setDefaultValue:!0}},ignoreTrailingSlash:{type:"boolean",default:!1},ignoreDuplicateSlashes:{type:"boolean",default:!1},disableRequestLogging:{type:"boolean",default:!1},jsonShorthand:{type:"boolean",default:!0},maxParamLength:{type:"integer",default:100},onProtoPoisoning:{type:"string",default:"error"},onConstructorPoisoning:{type:"string",default:"error"},pluginTimeout:{type:"integer",default:1e4},requestIdHeader:{anyOf:[{enum:[!1]},{type:"string"}],default:"request-id"},requestIdLogLabel:{type:"string",default:"reqId"},http2SessionTimeout:{type:"integer",default:72e3},exposeHeadRoutes:{type:"boolean",default:!0},useSemicolonDelimiter:{type:"boolean",default:!0},versioning:{type:"object",additionalProperties:!0,required:["storage","deriveVersion"],properties:{storage:{},deriveVersion:{}}},constraints:{type:"object",additionalProperties:{type:"object",required:["name","storage","validate","deriveConstraint"],additionalProperties:!0,properties:{name:{type:"string"},storage:{},validate:{},deriveConstraint:{}}}}}},x7t=Object.prototype.hasOwnProperty,b7t=new RegExp("idle","u");function Wr(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){t.connectionTimeout===void 0&&(t.connectionTimeout=0),t.keepAliveTimeout===void 0&&(t.keepAliveTimeout=72e3),t.maxRequestsPerSocket===void 0&&(t.maxRequestsPerSocket=0),t.requestTimeout===void 0&&(t.requestTimeout=0),t.bodyLimit===void 0&&(t.bodyLimit=1048576),t.caseSensitive===void 0&&(t.caseSensitive=!0),t.allowUnsafeRegex===void 0&&(t.allowUnsafeRegex=!1),t.ignoreTrailingSlash===void 0&&(t.ignoreTrailingSlash=!1),t.ignoreDuplicateSlashes===void 0&&(t.ignoreDuplicateSlashes=!1),t.disableRequestLogging===void 0&&(t.disableRequestLogging=!1),t.jsonShorthand===void 0&&(t.jsonShorthand=!0),t.maxParamLength===void 0&&(t.maxParamLength=100),t.onProtoPoisoning===void 0&&(t.onProtoPoisoning="error"),t.onConstructorPoisoning===void 0&&(t.onConstructorPoisoning="error"),t.pluginTimeout===void 0&&(t.pluginTimeout=1e4),t.requestIdHeader===void 0&&(t.requestIdHeader="request-id"),t.requestIdLogLabel===void 0&&(t.requestIdLogLabel="reqId"),t.http2SessionTimeout===void 0&&(t.http2SessionTimeout=72e3),t.exposeHeadRoutes===void 0&&(t.exposeHeadRoutes=!0),t.useSemicolonDelimiter===void 0&&(t.useSemicolonDelimiter=!0);let m=a;for(let h in t)x7t.call(nwe.properties,h)||delete t[h];if(m===a){let h=t.connectionTimeout,A=a;if(!(typeof h=="number"&&!(h%1)&&!isNaN(h)&&isFinite(h))){let g=typeof h,b;if(b===void 0)if(g==="boolean"||h===null||g==="string"&&h&&h==+h&&!(h%1))b=+h;else return Wr.errors=[{instancePath:e+"/connectionTimeout",schemaPath:"#/properties/connectionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;b!==void 0&&(h=b,t!==void 0&&(t.connectionTimeout=b))}var o=A===a;if(o){let g=t.keepAliveTimeout,b=a;if(!(typeof g=="number"&&!(g%1)&&!isNaN(g)&&isFinite(g))){let x=typeof g,v;if(v===void 0)if(x==="boolean"||g===null||x==="string"&&g&&g==+g&&!(g%1))v=+g;else return Wr.errors=[{instancePath:e+"/keepAliveTimeout",schemaPath:"#/properties/keepAliveTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;v!==void 0&&(g=v,t!==void 0&&(t.keepAliveTimeout=v))}var o=b===a;if(o){if(t.forceCloseConnections!==void 0){let x=t.forceCloseConnections,v=a,I=a,R=!1,w=null,N=a;if(typeof x!="string"){let M=typeof x,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+x;else if(x===null)D="";else{let L={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(x=D,t!==void 0&&(t.forceCloseConnections=D))}if(a===N&&typeof x=="string"&&!b7t.test(x)){let M={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/pattern",keyword:"pattern",params:{pattern:"idle"},message:'must match pattern "idle"'};i===null?i=[M]:i.push(M),a++}var c=N===a;c&&(R=!0,w=0);let P=a;if(typeof x!="boolean"){let M;if(M===void 0)if(x==="false"||x===0||x===null)M=!1;else if(x==="true"||x===1)M=!0;else{let D={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/1/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"};i===null?i=[D]:i.push(D),a++}M!==void 0&&(x=M,t!==void 0&&(t.forceCloseConnections=M))}var c=P===a;if(c&&R?(R=!1,w=[w,1]):c&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let M={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,Wr.errors=i,!1}var o=v===a}else var o=!0;if(o){let x=t.maxRequestsPerSocket,v=a;if(!(typeof x=="number"&&!(x%1)&&!isNaN(x)&&isFinite(x))&&x!==null){let R=typeof x,w;if(w===void 0)if(R==="boolean"||x===null||R==="string"&&x&&x==+x&&!(x%1))w=+x;else if(x===""||x===0||x===!1)w=null;else return Wr.errors=[{instancePath:e+"/maxRequestsPerSocket",schemaPath:"#/properties/maxRequestsPerSocket/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.maxRequestsPerSocket=w))}var o=v===a;if(o){let R=t.requestTimeout,w=a;if(!(typeof R=="number"&&!(R%1)&&!isNaN(R)&&isFinite(R))){let P=typeof R,B;if(B===void 0)if(P==="boolean"||R===null||P==="string"&&R&&R==+R&&!(R%1))B=+R;else return Wr.errors=[{instancePath:e+"/requestTimeout",schemaPath:"#/properties/requestTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;B!==void 0&&(R=B,t!==void 0&&(t.requestTimeout=B))}var o=w===a;if(o){let P=t.bodyLimit,B=a;if(!(typeof P=="number"&&!(P%1)&&!isNaN(P)&&isFinite(P))){let D=typeof P,L;if(L===void 0)if(D==="boolean"||P===null||D==="string"&&P&&P==+P&&!(P%1))L=+P;else return Wr.errors=[{instancePath:e+"/bodyLimit",schemaPath:"#/properties/bodyLimit/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;L!==void 0&&(P=L,t!==void 0&&(t.bodyLimit=L))}var o=B===a;if(o){let D=t.caseSensitive,L=a;if(typeof D!="boolean"){let W;if(W===void 0)if(D==="false"||D===0||D===null)W=!1;else if(D==="true"||D===1)W=!0;else return Wr.errors=[{instancePath:e+"/caseSensitive",schemaPath:"#/properties/caseSensitive/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;W!==void 0&&(D=W,t!==void 0&&(t.caseSensitive=W))}var o=L===a;if(o){let W=t.allowUnsafeRegex,F=a;if(typeof W!="boolean"){let j;if(j===void 0)if(W==="false"||W===0||W===null)j=!1;else if(W==="true"||W===1)j=!0;else return Wr.errors=[{instancePath:e+"/allowUnsafeRegex",schemaPath:"#/properties/allowUnsafeRegex/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;j!==void 0&&(W=j,t!==void 0&&(t.allowUnsafeRegex=j))}var o=F===a;if(o){if(t.http2!==void 0){let j=t.http2,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return Wr.errors=[{instancePath:e+"/http2",schemaPath:"#/properties/http2/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.http2=oe))}var o=J===a}else var o=!0;if(o){if(t.https!==void 0){let j=t.https,J=a,se=a,oe=!0,ue=a,Ie=a,we=a,qe=a,Fe=!1,_e=null,U=a;if(typeof j!="boolean"){let q;if(q===void 0)if(j==="false"||j===0||j===null)q=!1;else if(j==="true"||j===1)q=!0;else{let H={};i===null?i=[H]:i.push(H),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=U===a;u&&(Fe=!0,_e=0);let G=a;if(j!==null){let q;if(q===void 0)if(j===""||j===0||j===!1)q=null;else{let H={};i===null?i=[H]:i.push(H),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=G===a;if(u&&Fe)Fe=!1,_e=[_e,1];else{u&&(Fe=!0,_e=1);let q=a;if(a===q)if(j&&typeof j=="object"&&!Array.isArray(j)){let ee;if(j.allowHTTP1===void 0&&(ee="allowHTTP1")){let ne={};i===null?i=[ne]:i.push(ne),a++}else{let ne=a;for(let re in j)re!=="allowHTTP1"&&delete j[re];if(ne===a&&j.allowHTTP1!==void 0){let re=j.allowHTTP1;if(typeof re!="boolean"){let X;if(X===void 0)if(re==="false"||re===0||re===null)X=!1;else if(re==="true"||re===1)X=!0;else{let ie={};i===null?i=[ie]:i.push(ie),a++}X!==void 0&&(re=X,j!==void 0&&(j.allowHTTP1=X))}}}}else{let ee={};i===null?i=[ee]:i.push(ee),a++}var u=q===a;u&&Fe?(Fe=!1,_e=[_e,2]):u&&(Fe=!0,_e=2)}if(Fe)a=qe,i!==null&&(qe?i.length=qe:i=null);else{let q={};i===null?i=[q]:i.push(q),a++}var l=we===a;if(l){let q={};i===null?i=[q]:i.push(q),a++}else a=Ie,i!==null&&(Ie?i.length=Ie:i=null);var d=ue===a;if(a=se,i!==null&&(se?i.length=se:i=null),d){let q=a;t.https=!0;var d=q===a;oe=d}if(!oe){let q={instancePath:e+"/https",schemaPath:"#/properties/https/if",keyword:"if",params:{failingKeyword:"then"},message:'must match "then" schema'};return i===null?i=[q]:i.push(q),a++,Wr.errors=i,!1}var o=J===a}else var o=!0;if(o){let j=t.ignoreTrailingSlash,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return Wr.errors=[{instancePath:e+"/ignoreTrailingSlash",schemaPath:"#/properties/ignoreTrailingSlash/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.ignoreTrailingSlash=oe))}var o=J===a;if(o){let oe=t.ignoreDuplicateSlashes,ue=a;if(typeof oe!="boolean"){let we;if(we===void 0)if(oe==="false"||oe===0||oe===null)we=!1;else if(oe==="true"||oe===1)we=!0;else return Wr.errors=[{instancePath:e+"/ignoreDuplicateSlashes",schemaPath:"#/properties/ignoreDuplicateSlashes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;we!==void 0&&(oe=we,t!==void 0&&(t.ignoreDuplicateSlashes=we))}var o=ue===a;if(o){let we=t.disableRequestLogging,qe=a;if(typeof we!="boolean"){let _e;if(_e===void 0)if(we==="false"||we===0||we===null)_e=!1;else if(we==="true"||we===1)_e=!0;else return Wr.errors=[{instancePath:e+"/disableRequestLogging",schemaPath:"#/properties/disableRequestLogging/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;_e!==void 0&&(we=_e,t!==void 0&&(t.disableRequestLogging=_e))}var o=qe===a;if(o){let _e=t.jsonShorthand,U=a;if(typeof _e!="boolean"){let V;if(V===void 0)if(_e==="false"||_e===0||_e===null)V=!1;else if(_e==="true"||_e===1)V=!0;else return Wr.errors=[{instancePath:e+"/jsonShorthand",schemaPath:"#/properties/jsonShorthand/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;V!==void 0&&(_e=V,t!==void 0&&(t.jsonShorthand=V))}var o=U===a;if(o){let V=t.maxParamLength,q=a;if(!(typeof V=="number"&&!(V%1)&&!isNaN(V)&&isFinite(V))){let ee=typeof V,ne;if(ne===void 0)if(ee==="boolean"||V===null||ee==="string"&&V&&V==+V&&!(V%1))ne=+V;else return Wr.errors=[{instancePath:e+"/maxParamLength",schemaPath:"#/properties/maxParamLength/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ne!==void 0&&(V=ne,t!==void 0&&(t.maxParamLength=ne))}var o=q===a;if(o){let ee=t.onProtoPoisoning,ne=a;if(typeof ee!="string"){let X=typeof ee,ie;if(ie===void 0)if(X=="number"||X=="boolean")ie=""+ee;else if(ee===null)ie="";else return Wr.errors=[{instancePath:e+"/onProtoPoisoning",schemaPath:"#/properties/onProtoPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;ie!==void 0&&(ee=ie,t!==void 0&&(t.onProtoPoisoning=ie))}var o=ne===a;if(o){let X=t.onConstructorPoisoning,ie=a;if(typeof X!="string"){let fe=typeof X,Ne;if(Ne===void 0)if(fe=="number"||fe=="boolean")Ne=""+X;else if(X===null)Ne="";else return Wr.errors=[{instancePath:e+"/onConstructorPoisoning",schemaPath:"#/properties/onConstructorPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Ne!==void 0&&(X=Ne,t!==void 0&&(t.onConstructorPoisoning=Ne))}var o=ie===a;if(o){let fe=t.pluginTimeout,Ne=a;if(!(typeof fe=="number"&&!(fe%1)&&!isNaN(fe)&&isFinite(fe))){let Ue=typeof fe,ze;if(ze===void 0)if(Ue==="boolean"||fe===null||Ue==="string"&&fe&&fe==+fe&&!(fe%1))ze=+fe;else return Wr.errors=[{instancePath:e+"/pluginTimeout",schemaPath:"#/properties/pluginTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ze!==void 0&&(fe=ze,t!==void 0&&(t.pluginTimeout=ze))}var o=Ne===a;if(o){let Ue=t.requestIdHeader,ze=a,Ye=a,Ze=!1,nt=a;if(Ue!==!1){let tt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/0/enum",keyword:"enum",params:{allowedValues:nwe.properties.requestIdHeader.anyOf[0].enum},message:"must be equal to one of the allowed values"};i===null?i=[tt]:i.push(tt),a++}var f=nt===a;if(Ze=Ze||f,!Ze){let tt=a;if(typeof Ue!="string"){let lt=typeof Ue,ke;if(ke===void 0)if(lt=="number"||lt=="boolean")ke=""+Ue;else if(Ue===null)ke="";else{let Je={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[Je]:i.push(Je),a++}ke!==void 0&&(Ue=ke,t!==void 0&&(t.requestIdHeader=ke))}var f=tt===a;Ze=Ze||f}if(Ze)a=Ye,i!==null&&(Ye?i.length=Ye:i=null);else{let tt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[tt]:i.push(tt),a++,Wr.errors=i,!1}var o=ze===a;if(o){let tt=t.requestIdLogLabel,Pt=a;if(typeof tt!="string"){let ke=typeof tt,Je;if(Je===void 0)if(ke=="number"||ke=="boolean")Je=""+tt;else if(tt===null)Je="";else return Wr.errors=[{instancePath:e+"/requestIdLogLabel",schemaPath:"#/properties/requestIdLogLabel/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Je!==void 0&&(tt=Je,t!==void 0&&(t.requestIdLogLabel=Je))}var o=Pt===a;if(o){let ke=t.http2SessionTimeout,Je=a;if(!(typeof ke=="number"&&!(ke%1)&&!isNaN(ke)&&isFinite(ke))){let rt=typeof ke,bt;if(bt===void 0)if(rt==="boolean"||ke===null||rt==="string"&&ke&&ke==+ke&&!(ke%1))bt=+ke;else return Wr.errors=[{instancePath:e+"/http2SessionTimeout",schemaPath:"#/properties/http2SessionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;bt!==void 0&&(ke=bt,t!==void 0&&(t.http2SessionTimeout=bt))}var o=Je===a;if(o){let rt=t.exposeHeadRoutes,bt=a;if(typeof rt!="boolean"){let vt;if(vt===void 0)if(rt==="false"||rt===0||rt===null)vt=!1;else if(rt==="true"||rt===1)vt=!0;else return Wr.errors=[{instancePath:e+"/exposeHeadRoutes",schemaPath:"#/properties/exposeHeadRoutes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;vt!==void 0&&(rt=vt,t!==void 0&&(t.exposeHeadRoutes=vt))}var o=bt===a;if(o){let vt=t.useSemicolonDelimiter,_r=a;if(typeof vt!="boolean"){let Pr;if(Pr===void 0)if(vt==="false"||vt===0||vt===null)Pr=!1;else if(vt==="true"||vt===1)Pr=!0;else return Wr.errors=[{instancePath:e+"/useSemicolonDelimiter",schemaPath:"#/properties/useSemicolonDelimiter/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Pr!==void 0&&(vt=Pr,t!==void 0&&(t.useSemicolonDelimiter=Pr))}var o=_r===a;if(o){if(t.versioning!==void 0){let Pr=t.versioning,js=a;if(a===js)if(Pr&&typeof Pr=="object"&&!Array.isArray(Pr)){let ys;if(Pr.storage===void 0&&(ys="storage")||Pr.deriveVersion===void 0&&(ys="deriveVersion"))return Wr.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/required",keyword:"required",params:{missingProperty:ys},message:"must have required property '"+ys+"'"}],!1}else return Wr.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=js===a}else var o=!0;if(o)if(t.constraints!==void 0){let Pr=t.constraints,js=a;if(a===js)if(Pr&&typeof Pr=="object"&&!Array.isArray(Pr))for(let ys in Pr){let Qs=Pr[ys],Bu=a;if(a===Bu)if(Qs&&typeof Qs=="object"&&!Array.isArray(Qs)){let Ao;if(Qs.name===void 0&&(Ao="name")||Qs.storage===void 0&&(Ao="storage")||Qs.validate===void 0&&(Ao="validate")||Qs.deriveConstraint===void 0&&(Ao="deriveConstraint"))return Wr.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/required",keyword:"required",params:{missingProperty:Ao},message:"must have required property '"+Ao+"'"}],!1;if(Qs.name!==void 0){let Dc=Qs.name;if(typeof Dc!="string"){let Ta=typeof Dc,yn;if(yn===void 0)if(Ta=="number"||Ta=="boolean")yn=""+Dc;else if(Dc===null)yn="";else return Wr.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1")+"/name",schemaPath:"#/properties/constraints/additionalProperties/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;yn!==void 0&&(Dc=yn,Qs!==void 0&&(Qs.name=yn))}}}else return Wr.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var p=Bu===a;if(!p)break}else return Wr.errors=[{instancePath:e+"/constraints",schemaPath:"#/properties/constraints/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=js===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}else return Wr.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return Wr.errors=i,a===0}jP.exports.defaultInitOptions={connectionTimeout:0,keepAliveTimeout:72e3,maxRequestsPerSocket:0,requestTimeout:0,bodyLimit:1048576,caseSensitive:!0,allowUnsafeRegex:!1,disableRequestLogging:!1,jsonShorthand:!0,ignoreTrailingSlash:!1,ignoreDuplicateSlashes:!1,maxParamLength:100,onProtoPoisoning:"error",onConstructorPoisoning:"error",pluginTimeout:1e4,requestIdHeader:"request-id",requestIdLogLabel:"reqId",http2SessionTimeout:72e3,exposeHeadRoutes:!0,useSemicolonDelimiter:!0}});var iwe=E((O4r,QP)=>{"use strict";var HP=swe(),E7t=wR()({circles:!0,proto:!1}),{FST_ERR_INIT_OPTS_INVALID:_7t}=Ci();function S7t(t){let e=E7t(t);if(!HP(e)){let r=new _7t(JSON.stringify(HP.errors.map(n=>n.message)));throw r.errors=HP.errors,r}return K9(e)}function K9(t){let e=Object.getOwnPropertyNames(t);for(let r of e){let n=t[r];ArrayBuffer.isView(n)&&!(n instanceof DataView)||(t[r]=n&&typeof n=="object"?K9(n):n)}return Object.freeze(t)}QP.exports=S7t;QP.exports.defaultInitOptions=HP.defaultInitOptions;QP.exports.utils={deepFreezeObject:K9}});var mwe=E((P4r,pwe)=>{"use strict";var{kAvvioBoot:v7t,kChildren:awe,kRoutePrefix:owe,kLogLevel:cwe,kLogSerializers:V9,kHooks:z9,kSchemaController:tx,kContentTypeParser:uwe,kReply:lwe,kRequest:dwe,kFourOhFour:I7t,kPluginNameChain:fwe}=Gs(),C7t=EN(),T7t=WN(),w7t=x9(),R7t=z$(),{buildHooks:N7t}=cp(),bS=I9();pwe.exports=function(e,r,n){let s=bS.registerPlugin.call(e,r),i=bS.getPluginName(r)||bS.getFuncPreview(r);if(s)return e[fwe].push(i),e;let a=Object.create(e);e[awe].push(a),a.ready=e[v7t].bind(a),a[awe]=[],a[lwe]=C7t.buildReply(a[lwe]),a[dwe]=T7t.buildRequest(a[dwe]),a[uwe]=R7t.helpers.buildContentTypeParser(a[uwe]),a[z9]=N7t(a[z9]),a[owe]=O7t(a[owe],n.prefix),a[cwe]=n.logLevel||a[cwe],a[tx]=w7t.buildSchemaController(e[tx]),a.getSchema=a[tx].getSchema.bind(a[tx]),a.getSchemas=a[tx].getSchemas.bind(a[tx]),a[bS.kRegisteredPlugins]=Object.create(a[bS.kRegisteredPlugins]),a[fwe]=[i],(a[V9]||n.logSerializers)&&(a[V9]=Object.assign(Object.create(a[V9]),n.logSerializers)),n.prefix&&a[I7t].arrange404(a);for(let o of a[z9].onRegister)o.call(this,a,n);return a};function O7t(t,e){return e?(t.endsWith("/")&&e[0]==="/"?e=e.slice(1):e[0]!=="/"&&(e="/"+e),t+e):t}});var gwe=E((k4r,hwe)=>{"use strict";hwe.exports=function(){return{[Symbol.iterator]:function*(){},add(){},delete(){},has(){return!0}}}});var xwe=E(Y9=>{"use strict";Y9.parse=W7t;Y9.serialize=$7t;var P7t=Object.prototype.toString,k7t=Object.prototype.hasOwnProperty,D7t=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,B7t=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,L7t=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,M7t=/^[\u0020-\u003A\u003D-\u007E]*$/;function W7t(t,e){if(typeof t!="string")throw new TypeError("argument str must be a string");var r={},n=t.length;if(n<2)return r;var s=e&&e.decode||F7t,i=0,a=0,o=0;do{if(a=t.indexOf("=",i),a===-1)break;if(o=t.indexOf(";",i),o===-1)o=n;else if(a>o){i=t.lastIndexOf(";",a-1)+1;continue}var c=Awe(t,i,a),u=ywe(t,a,c),l=t.slice(c,u);if(!k7t.call(r,l)){var d=Awe(t,a+1,o),f=ywe(t,o,d);t.charCodeAt(d)===34&&t.charCodeAt(f-1)===34&&(d++,f--);var p=t.slice(d,f);r[l]=q7t(p,s)}i=o+1}while(ir;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function $7t(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!D7t.test(t))throw new TypeError("argument name is invalid");var s=n(e);if(!B7t.test(s))throw new TypeError("argument val is invalid");var i=t+"="+s;if(!r)return i;if(r.maxAge!=null){var a=Math.floor(r.maxAge);if(!isFinite(a))throw new TypeError("option maxAge is invalid");i+="; Max-Age="+a}if(r.domain){if(!L7t.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!M7t.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){var o=r.expires;if(!U7t(o)||isNaN(o.valueOf()))throw new TypeError("option expires is invalid");i+="; Expires="+o.toUTCString()}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.partitioned&&(i+="; Partitioned"),r.priority){var c=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(c){case"low":i+="; Priority=Low";break;case"medium":i+="; Priority=Medium";break;case"high":i+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var u=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(u){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return i}function F7t(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function U7t(t){return P7t.call(t)==="[object Date]"}function q7t(t,e){try{return e(t)}catch{return t}}});var _we=E((B4r,Ewe)=>{"use strict";var{URL:bwe}=require("node:url"),J9="http://localhost";Ewe.exports=function(e,r){(typeof e=="string"||Object.prototype.toString.call(e)==="[object String]")&&e.startsWith("//")&&(e=J9+e);let n=typeof e=="object"?Object.assign(new bwe(J9),e):new bwe(e,J9);if(typeof r=="string"){r=new URLSearchParams(r);for(let s of r.keys()){n.searchParams.delete(s);for(let i of r.getAll(s))n.searchParams.append(s,i)}}else{let s=Object.assign({},e.query,r);for(let i in s){let a=s[i];if(Array.isArray(a)){n.searchParams.delete(i);for(let o of a)n.searchParams.append(i,o)}else n.searchParams.set(i,a)}}return n}});var Swe=E((L4r,X9)=>{"use strict";var{randomUUID:j7t}=require("node:crypto"),{Readable:H7t}=require("node:stream"),rx;function Q7t(t){return t&&typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&t[Symbol.toStringTag]==="FormData"}function G7t(t){rx=rx??new TextEncoder;let e=`----formdata-${j7t()}`,r=`--${e}\r +`))}};dTe.exports=Lq});var mTe=E((I4r,pTe)=>{"use strict";var fUt=fTe(),jP={STATIC:0,PARAMETRIC:1,WILDCARD:2},WP=class{constructor(){this.isLeafNode=!1,this.routes=null,this.handlerStorage=null}addRoute(e,r){this.routes===null&&(this.routes=[]),this.handlerStorage===null&&(this.handlerStorage=new fUt),this.isLeafNode=!0,this.routes.push(e),this.handlerStorage.addHandler(r,e)}},$P=class extends WP{constructor(){super(),this.staticChildren={}}findStaticMatchingChild(e,r){let n=this.staticChildren[e.charAt(r)];return n===void 0||!n.matchPrefix(e,r)?null:n}getStaticChild(e,r=0){if(e.length===r)return this;let n=this.findStaticMatchingChild(e,r);return n?n.getStaticChild(e,r+n.prefix.length):null}createStaticChild(e){if(e.length===0)return this;let r=this.staticChildren[e.charAt(0)];if(r){let s=1;for(;s(s.regex&&s.regex.source)===r);return n||null}createParametricChild(e,r,n){let s=this.getParametricChild(e);return s?(s.nodePaths.add(n),s):(s=new UP(e,r,n),this.parametricChildren.push(s),this.parametricChildren.sort((i,a)=>i.isRegex?a.isRegex?i.staticSuffix===null?1:a.staticSuffix===null?-1:a.staticSuffix.endsWith(i.staticSuffix)?1:i.staticSuffix.endsWith(a.staticSuffix)?-1:0:-1:1),s)}getWildcardChild(){return this.wildcardChild}createWildcardChild(){return this.wildcardChild=this.getWildcardChild()||new qP,this.wildcardChild}split(e,r){let n=this.prefix.slice(0,r),s=this.prefix.slice(r);this.prefix=s,this._compilePrefixMatch();let i=new t(n);return i.staticChildren[s.charAt(0)]=this,e.staticChildren[n.charAt(0)]=i,i}getNextNode(e,r,n,s){let i=this.findStaticMatchingChild(e,r),a=0;if(i===null){if(this.parametricChildren.length===0)return this.wildcardChild;i=this.parametricChildren[0],a=1}this.wildcardChild!==null&&n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.wildcardChild});for(let o=this.parametricChildren.length-1;o>=a;o--)n.push({paramsCount:s,brotherPathIndex:r,brotherNode:this.parametricChildren[o]});return i}_compilePrefixMatch(){if(this.prefix.length===1){this.matchPrefix=()=>!0;return}let e=[];for(let r=1;r{"use strict";var pUt=require("node:assert");function yS(){if(!(this instanceof yS))return new yS;this.store={},this.maxMajor=0,this.maxMinors={},this.maxPatches={}}yS.prototype.set=function(t,e){if(typeof t!="string")throw new TypeError("Version should be a string");let[r,n,s]=t.split(".");if(isNaN(r))throw new TypeError("Major version must be a numeric value");return r=Number(r),n=Number(n)||0,s=Number(s)||0,r>=this.maxMajor&&(this.maxMajor=r,this.store.x=e,this.store["*"]=e,this.store["x.x"]=e,this.store["x.x.x"]=e),n>=(this.maxMinors[r]||0)&&(this.maxMinors[r]=n,this.store[`${r}.x`]=e,this.store[`${r}.x.x`]=e),s>=(this.maxPatches[`${r}.${n}`]||0)&&(this.maxPatches[`${r}.${n}`]=s,this.store[`${r}.${n}.x`]=e),this.store[`${r}.${n}.${s}`]=e,this};yS.prototype.get=function(t){return this.store[t]};hTe.exports={name:"version",mustMatchWhenDerived:!0,storage:yS,validate(t){pUt(typeof t=="string","Version should be a string")}}});var yTe=E((w4r,ATe)=>{"use strict";var mUt=require("node:assert");function hUt(){let t={},e=[];return{get:r=>{let n=t[r];if(n)return n;for(let s of e)if(s.host.test(r))return s.value},set:(r,n)=>{r instanceof RegExp?e.push({host:r,value:n}):t[r]=n}}}ATe.exports={name:"host",mustMatchWhenDerived:!1,storage:hUt,validate(t){mUt(typeof t=="string"||Object.prototype.toString.call(t)==="[object RegExp]","Host should be a string or a RegExp")}}});var bTe=E((R4r,xTe)=>{"use strict";var gUt=gTe(),AUt=yTe(),Bq=require("node:assert"),Mq=class{constructor(e){if(this.strategies={version:gUt,host:AUt},this.strategiesInUse=new Set,this.asyncStrategiesInUse=new Set,e)for(let r of Object.values(e))this.addConstraintStrategy(r)}isStrategyUsed(e){return this.strategiesInUse.has(e)||this.asyncStrategiesInUse.has(e)}hasConstraintStrategy(e){let r=this.strategies[e];return r!==void 0?r.isCustom||this.isStrategyUsed(e):!1}addConstraintStrategy(e){if(Bq(typeof e.name=="string"&&e.name!=="","strategy.name is required."),Bq(e.storage&&typeof e.storage=="function","strategy.storage function is required."),Bq(e.deriveConstraint&&typeof e.deriveConstraint=="function","strategy.deriveConstraint function is required."),this.strategies[e.name]&&this.strategies[e.name].isCustom)throw new Error(`There already exists a custom constraint with the name ${e.name}.`);if(this.isStrategyUsed(e.name))throw new Error(`There already exists a route with ${e.name} constraint.`);e.isCustom=!0,e.isAsync=e.deriveConstraint.length===3,this.strategies[e.name]=e,e.mustMatchWhenDerived&&this.noteUsage({[e.name]:e})}deriveConstraints(e,r,n){let s=this.deriveSyncConstraints(e,r);if(n===void 0)return s;this.deriveAsyncConstraints(s,e,r,n)}deriveSyncConstraints(e,r){}noteUsage(e){if(e){let r=this.strategiesInUse.size;for(let n in e)this.strategies[n].isAsync?this.asyncStrategiesInUse.add(n):this.strategiesInUse.add(n);r!==this.strategiesInUse.size&&this._buildDeriveConstraints()}}newStoreForConstraint(e){if(!this.strategies[e])throw new Error(`No strategy registered for constraint key ${e}`);return this.strategies[e].storage()}validateConstraints(e){for(let r in e){let n=e[r];if(typeof n>"u")throw new Error("Can't pass an undefined constraint value, must pass null or no key at all");let s=this.strategies[r];if(!s)throw new Error(`No strategy registered for constraint key ${r}`);s.validate&&s.validate(n)}}deriveAsyncConstraints(e,r,n,s){let i=this.asyncStrategiesInUse.size;if(i===0){s(null,e);return}e=e||{};for(let a of this.asyncStrategiesInUse)this.strategies[a].deriveConstraint(r,n,(c,u)=>{if(c!==null){s(c);return}e[a]=u,--i===0&&s(null,e)})}_buildDeriveConstraints(){if(this.strategiesInUse.size===0)return;let e=["return {"];for(let r of this.strategiesInUse){let n=this.strategies[r];n.isCustom?e.push(` ${n.name}: this.strategies.${r}.deriveConstraint(req, ctx),`):r==="version"?e.push(" version: req.headers['accept-version'],"):e.push(" host: req.headers.host || req.headers[':authority'],")}e.push("}"),this.deriveSyncConstraints=new Function("req","ctx",e.join(` +`)).bind(this)}};xTe.exports=Mq});var _Te=E((N4r,ETe)=>{"use strict";var yUt=["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE"];ETe.exports=yUt});var CTe=E((O4r,vTe)=>{"use strict";function STe(t,e){return t===50?e===53?"%":e===51?"#":e===52?"$":e===54?"&":e===66||e===98?"+":e===67||e===99?",":e===70||e===102?"/":null:t===51?e===65||e===97?":":e===66||e===98?";":e===68||e===100?"=":e===70||e===102?"?":null:t===52&&e===48?"@":null}function xUt(t,e){let r=!1,n=!1,s="";for(let a=1;a{"use strict";var fs=require("node:assert"),EUt=DIe(),HP=rTe(),$q=Go(),{prettyPrintTree:_Ut}=lTe(),{StaticNode:ITe,NODE_TYPES:TTe}=mTe(),SUt=bTe(),ex=_Te(),Wq=BP(),{safeDecodeURI:vUt,safeDecodeURIComponent:wTe}=CTe(),RTe=/^https?:\/\/.*?\//,ch=/(\/:[^/()]*?)\?(\/?)/;if(!HP(RTe))throw new Error("the FULL_PATH_REGEXP is not safe, update this module");if(!HP(ch))throw new Error("the OPTIONAL_PARAM_REGEXP is not safe, update this module");function zn(t){if(!(this instanceof zn))return new zn(t);t=t||{},this._opts=t,t.defaultRoute?(fs(typeof t.defaultRoute=="function","The default route must be a function"),this.defaultRoute=t.defaultRoute):this.defaultRoute=null,t.onBadUrl?(fs(typeof t.onBadUrl=="function","The bad url handler must be a function"),this.onBadUrl=t.onBadUrl):this.onBadUrl=null,t.buildPrettyMeta?(fs(typeof t.buildPrettyMeta=="function","buildPrettyMeta must be a function"),this.buildPrettyMeta=t.buildPrettyMeta):this.buildPrettyMeta=CUt,t.querystringParser?(fs(typeof t.querystringParser=="function","querystringParser must be a function"),this.querystringParser=t.querystringParser):this.querystringParser=e=>e===""?{}:EUt.parse(e),this.caseSensitive=t.caseSensitive===void 0?!0:t.caseSensitive,this.ignoreTrailingSlash=t.ignoreTrailingSlash||!1,this.ignoreDuplicateSlashes=t.ignoreDuplicateSlashes||!1,this.maxParamLength=t.maxParamLength||100,this.allowUnsafeRegex=t.allowUnsafeRegex||!1,this.constrainer=new SUt(t.constraints),this.useSemicolonDelimiter=t.useSemicolonDelimiter||!1,this.routes=[],this.trees={}}zn.prototype.on=function(e,r,n,s,i){typeof n=="function"&&(s!==void 0&&(i=s),s=n,n={}),fs(typeof r=="string","Path should be a string"),fs(r.length>0,"The path could not be empty"),fs(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),fs(typeof s=="function","Handler should be a function");let a=r.match(ch);if(a){fs(r.length===a.index+a[0].length,"Optional Parameter needs to be the last parameter of the path");let u=r.replace(ch,"$1$2"),l=r.replace(ch,"$2")||"/";this.on(e,u,n,s,i),this.on(e,l,n,s,i);return}let o=r;this.ignoreDuplicateSlashes&&(r=Fq(r)),this.ignoreTrailingSlash&&(r=Uq(r));let c=Array.isArray(e)?e:[e];for(let u of c)fs(typeof u=="string","Method should be a string"),fs(ex.includes(u),`Method '${u}' is not an http method.`),this._on(u,r,n,s,i,o)};zn.prototype._on=function(e,r,n,s,i){let a={};n.constraints!==void 0&&(fs(typeof n.constraints=="object"&&n.constraints!==null,"Constraints should be an object"),Object.keys(n.constraints).length!==0&&(a=n.constraints)),this.constrainer.validateConstraints(a),this.constrainer.noteUsage(a),this.trees[e]===void 0&&(this.trees[e]=new ITe("/"));let o=r;if(o==="*"&&this.trees[e].prefix.length!==0){let f=this.trees[e];this.trees[e]=new ITe(""),this.trees[e].staticChildren["/"]=f}let c=this.trees[e],u=c.prefix.length,l=[];for(let f=0;f<=o.length;f++){if(o.charCodeAt(f)===58&&o.charCodeAt(f+1)===58){f++;continue}let p=o.charCodeAt(f)===58&&o.charCodeAt(f+1)!==58,m=o.charCodeAt(f)===42;if(p||m||f===o.length&&f!==u){let h=o.slice(u,f);this.caseSensitive||(h=h.toLowerCase()),h=h.split("::").join(":"),h=h.split("%").join("%25"),c=c.createStaticChild(h)}if(p){let h=!1,A=!0,g="",b=[],y=f+1;for(let x=y;;x++){let v=o.charCodeAt(x),C=v===40,R=v===45||v===46,w=v===47||x===o.length;if(C||R||w){let N=o.slice(y,x);if(l.push(N),h=h||C||R,C){let M=PTe(o,x),k=o.slice(x,M+1);this.allowUnsafeRegex||fs(HP(new RegExp(k)),`The regex '${k}' is not safe!`),b.push(OTe(k)),x=M+1,A=!0}else b.push(A?"(.*?)":`(${g}|(?:(?!${g}).)*)`),A=!1;let P=x;for(;x0,"The path could not be empty"),fs(r[0]==="/"||r[0]==="*","The first character of a path should be `/` or `*`"),fs(typeof n>"u"||typeof n=="object"&&!Array.isArray(n)&&n!==null,"Constraints should be an object or undefined.");let s=r.match(ch);if(s){fs(r.length===s.index+s[0].length,"Optional Parameter needs to be the last parameter of the path");let a=r.replace(ch,"$1$2"),o=r.replace(ch,"$2");this.off(e,a,n),this.off(e,o,n);return}this.ignoreDuplicateSlashes&&(r=Fq(r)),this.ignoreTrailingSlash&&(r=Uq(r));let i=Array.isArray(e)?e:[e];for(let a of i)this._off(a,r,n)};zn.prototype._off=function(e,r,n){fs(typeof e=="string","Method should be a string"),fs(ex.includes(e),`Method '${e}' is not an http method.`);function s(c){return e!==c.method||r!==c.path}function i(c){return s(c)||!$q(n,c.opts.constraints||{})}let a=n?i:s,o=this.routes.filter(a);this._rebuild(o)};zn.prototype.lookup=function(e,r,n,s){if(typeof n=="function"&&(s=n,n=void 0),s===void 0){let i=this.constrainer.deriveConstraints(e,n),a=this.find(e.method,e.url,i);return this.callHandler(a,e,r,n)}this.constrainer.deriveConstraints(e,n,(i,a)=>{if(i!==null){s(i);return}try{let o=this.find(e.method,e.url,a),c=this.callHandler(o,e,r,n);s(null,c)}catch(o){s(o)}})};zn.prototype.callHandler=function(e,r,n,s){return e===null?this._defaultRoute(r,n,s):s===void 0?e.handler(r,n,e.params,e.store,e.searchParams):e.handler.call(s,r,n,e.params,e.store,e.searchParams)};zn.prototype.find=function(e,r,n){let s=this.trees[e];if(s===void 0)return null;r.charCodeAt(0)!==47&&(r=r.replace(RTe,"/")),this.ignoreDuplicateSlashes&&(r=Fq(r));let i,a,o;try{i=vUt(r,this.useSemicolonDelimiter),r=i.path,a=i.querystring,o=i.shouldDecodeParam}catch{return this._onBadUrl(r)}this.ignoreTrailingSlash&&(r=Uq(r));let c=r;this.caseSensitive===!1&&(r=r.toLowerCase());let u=this.maxParamLength,l=s.prefix.length,d=[],f=r.length,p=[];for(;;){if(l===f&&s.isLeafNode){let g=s.handlerStorage.getMatchingHandler(n);if(g!==null)return{handler:g.handler,store:g.store,params:g._createParamsObject(d),searchParams:this.querystringParser(a)}}let m=s.getNextNode(r,l,p,d.length);if(m===null){if(p.length===0)return null;let g=p.pop();l=g.brotherPathIndex,d.splice(g.paramsCount),m=g.brotherNode}if(s=m,s.kind===TTe.STATIC){l+=s.prefix.length;continue}if(s.kind===TTe.WILDCARD){let g=c.slice(l);o&&(g=wTe(g)),d.push(g),l=f;continue}let h=c.indexOf("/",l);h===-1&&(h=f);let A=c.slice(l,h);if(o&&(A=wTe(A)),s.isRegex){let g=s.regex.exec(A);if(g===null)continue;for(let b=1;bu)return null;d.push(y)}}else{if(A.length>u)return null;d.push(A)}l=h}};zn.prototype._rebuild=function(t){this.reset();for(let e of t){let{method:r,path:n,opts:s,handler:i,store:a}=e;this._on(r,n,s,i,a)}};zn.prototype._defaultRoute=function(t,e,r){if(this.defaultRoute!==null)return r===void 0?this.defaultRoute(t,e):this.defaultRoute.call(r,t,e);e.statusCode=404,e.end()};zn.prototype._onBadUrl=function(t){if(this.onBadUrl===null)return null;let e=this.onBadUrl;return{handler:(r,n,s)=>e(t,r,n),params:{},store:null}};zn.prototype.prettyPrint=function(t={}){let e=t.method;t.buildPrettyMeta=this.buildPrettyMeta.bind(this);let r=null;if(e===void 0){let{version:n,host:s,...i}=this.constrainer.strategies;i[Wq.name]=Wq;let a=new zn({...this._opts,constraints:i}),o=this.routes.map(c=>{let u={...c.opts.constraints,[Wq.name]:c.method};return{...c,method:"MERGED",opts:{constraints:u}}});a._rebuild(o),r=a.trees.MERGED}else r=this.trees[e];return r==null?"(empty tree)":_Ut(r,t)};for(let t in ex){if(!ex.hasOwnProperty(t))continue;let e=ex[t],r=e.toLowerCase();zn.prototype[r]=function(n,s,i){return this.on(e,n,s,i)}}zn.prototype.all=function(t,e,r){this.on(ex,t,e,r)};DTe.exports=zn;function NTe(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Fq(t){return t.replace(/\/\/+/g,"/")}function Uq(t){return t.length>1&&t.charCodeAt(t.length-1)===47?t.slice(0,-1):t}function OTe(t){return t.charCodeAt(1)===94&&(t=t.slice(0,1)+t.slice(2)),t.charCodeAt(t.length-2)===36&&(t=t.slice(0,t.length-2)+t.slice(t.length-1)),t}function PTe(t,e){let r=1;for(;e{"use strict";function jq(t,e,r,n){if(r===void 0)return e.header("content-length","0"),n(null,null);if(typeof r.resume=="function")return r.on("error",i=>{e.log.error({err:i},"Error on Stream found for HEAD route")}),r.resume(),n(null,null);let s=""+Buffer.byteLength(r);e.header("content-length",s),n(null,null)}function IUt(t){return t==null?jq:Array.isArray(t)?[...t,jq]:[t,jq]}kTe.exports={parseHeadOnSendHandlers:IUt}});var XTe=E((k4r,JTe)=>{"use strict";var TUt=qq(),wUt=UN(),BTe=s5(),{onRequestAbortHookRunner:RUt,lifecycleHooks:MTe,preParsingHookRunner:NUt,onTimeoutHookRunner:OUt,onRequestHookRunner:PUt}=up(),{supportedMethods:DUt}=B$(),{normalizeSchema:kUt}=u1(),{parseHeadOnSendHandlers:LUt}=LTe(),{FSTDEP007:BUt,FSTDEP008:MUt,FSTDEP014:WTe}=cd(),{compileSchemasForValidation:WUt,compileSchemasForSerialization:$Ut}=Z6(),{FST_ERR_SCH_VALIDATION_BUILD:FUt,FST_ERR_SCH_SERIALIZATION_BUILD:UUt,FST_ERR_DEFAULT_ROUTE_INVALID_TYPE:qUt,FST_ERR_DUPLICATED_ROUTE:jUt,FST_ERR_INVALID_URL:HUt,FST_ERR_HOOK_INVALID_HANDLER:$Te,FST_ERR_ROUTE_OPTIONS_NOT_OBJ:QUt,FST_ERR_ROUTE_DUPLICATED_HANDLER:GUt,FST_ERR_ROUTE_HANDLER_NOT_FN:FTe,FST_ERR_ROUTE_MISSING_HANDLER:VUt,FST_ERR_ROUTE_METHOD_NOT_SUPPORTED:zUt,FST_ERR_ROUTE_METHOD_INVALID:KUt,FST_ERR_ROUTE_BODY_VALIDATION_SCHEMA_NOT_SUPPORTED:YUt,FST_ERR_ROUTE_BODY_LIMIT_OPTION_NOT_INT:JUt,FST_ERR_HOOK_INVALID_ASYNC_HANDLER:Hq}=Ci(),{kRoutePrefix:XUt,kLogLevel:ZUt,kLogSerializers:UTe,kHooks:qTe,kSchemaController:e7t,kOptions:jTe,kReplySerializerDefault:Qq,kReplyIsError:t7t,kRequestPayloadStream:r7t,kDisableRequestLogging:n7t,kSchemaErrorFormatter:s7t,kErrorHandler:HTe,kHasBeenDecorated:QTe,kRequestAcceptVersion:Gq,kRouteByFastify:Vq,kRouteContext:GTe}=Qs(),{buildErrorHandler:i7t}=U1(),{createChildLogger:a7t}=c1(),{getGenReqId:o7t}=IP();function c7t(t){let e=TUt(t.config),r,n,s,i,a,o,c,u,l,d,f,p,m,h=!1;return{setup(w,N){r=N.avvio,n=N.fourOhFour,s=N.logger,i=N.hasLogger,a=N.setupResponseListeners,o=N.throwIfAlreadyStarted,p=N.validateHTTPVersion,f=w.exposeHeadRoutes,c=w.disableRequestLogging,u=w.ignoreTrailingSlash,l=w.ignoreDuplicateSlashes,d=Object.prototype.hasOwnProperty.call(w,"return503OnClosing")?w.return503OnClosing:!0,m=N.keepAliveConnections},routing:e.lookup.bind(e),route:C,hasRoute:x,prepareRoute:y,getDefaultRoute:function(){return WTe(),e.defaultRoute},setDefaultRoute:function(w){if(WTe(),typeof w!="function")throw new qUt;e.defaultRoute=w},routeHandler:R,closeRoutes:()=>{h=!0},printRoutes:e.prettyPrint.bind(e),addConstraintStrategy:A,hasConstraintStrategy:g,isAsyncConstraint:b,findRoute:v};function A(w){return o("Cannot add constraint strategy!"),e.addConstraintStrategy(w)}function g(w){return e.hasConstraintStrategy(w)}function b(){return e.constrainer.asyncStrategiesInUse.size>0}function y({method:w,url:N,options:P,handler:L,isFastify:M}){if(typeof N!="string")throw new HUt(typeof N);if(!L&&typeof P=="function")L=P,P={};else if(L&&typeof L=="function"){if(Object.prototype.toString.call(P)!=="[object Object]")throw new QUt(w,N);if(P.handler)throw typeof P.handler=="function"?new GUt(w,N):new FTe(w,N)}return P=Object.assign({},P,{method:w,url:N,path:N,handler:L||P&&P.handler}),C.call(this,{options:P,isFastify:M})}function x({options:w}){return v(w)!==null}function v(w){let N=e.find(w.method,w.url||"",w.constraints);return N?{handler:N.handler,params:N.params,searchParams:N.searchParams}:null}function C({options:w,isFastify:N}){let P={...w},{exposeHeadRoute:L}=P,k=L!=null?L:f,B=P.method==="GET"||Array.isArray(P.method)&&P.method.includes("GET"),Z=P.method==="HEAD"||Array.isArray(P.method)&&P.method.includes("HEAD"),W=k&&B?{...w}:null;o("Cannot add route!");let F=P.url||P.path||"";if(Array.isArray(P.method))for(var V=0;V0&&P.method!=="HEAD")switch(P.prefixTrailingSlash){case"slash":J.call(this,{path:F,isFastify:N});break;case"no-slash":J.call(this,{path:"",isFastify:N});break;case"both":default:J.call(this,{path:"",isFastify:N}),u!==!0&&(l!==!0||!j.endsWith("/"))&&J.call(this,{path:F,prefixing:!0,isFastify:N})}else F[0]==="/"&&j.endsWith("/")?J.call(this,{path:F.slice(1),isFastify:N}):J.call(this,{path:F,isFastify:N});return this;function J({path:se,prefixing:oe=!1,isFastify:ue=!1}){let Ce=j+se;if(P.url=Ce,P.path=Ce,P.routePath=se,P.prefix=j,P.logLevel=P.logLevel||this[ZUt],(this[UTe]||P.logSerializers)&&(P.logSerializers=Object.assign(Object.create(this[UTe]),P.logSerializers)),P.attachValidation==null&&(P.attachValidation=!1),oe===!1)for(let G of this[qTe].onRoute)G.call(this,P);for(let G of MTe)if(P&&G in P){if(Array.isArray(P[G]))for(let z of P[G]){if(typeof z!="function")throw new $Te(G,Object.prototype.toString.call(z));if(G==="onSend"||G==="preSerialization"||G==="onError"||G==="preParsing"){if(z.constructor.name==="AsyncFunction"&&z.length===4)throw new Hq}else if(G==="onRequestAbort"){if(z.constructor.name==="AsyncFunction"&&z.length!==1)throw new Hq}else if(z.constructor.name==="AsyncFunction"&&z.length===3)throw new Hq}else if(P[G]!==void 0&&typeof P[G]!="function")throw new $Te(G,Object.prototype.toString.call(P[G]))}let we=P.constraints||{},qe={...P.config,url:Ce,method:P.method},Fe=new wUt({schema:P.schema,handler:P.handler.bind(this),config:qe,errorHandler:P.errorHandler,childLoggerFactory:P.childLoggerFactory,bodyLimit:P.bodyLimit,logLevel:P.logLevel,logSerializers:P.logSerializers,attachValidation:P.attachValidation,schemaErrorFormatter:P.schemaErrorFormatter,replySerializer:this[Qq],validatorCompiler:P.validatorCompiler,serializerCompiler:P.serializerCompiler,exposeHeadRoute:k,prefixTrailingSlash:P.prefixTrailingSlash||"both",server:this,isFastify:ue});P.version&&(MUt(),we.version=P.version);let _e=e.findRoute("HEAD",P.url,we),U=_e!==null;Z&&U&&!Fe[Vq]&&_e.store[Vq]&&e.off("HEAD",P.url,we);try{e.on(P.method,P.url,{constraints:we},R,Fe)}catch(G){if(!Fe[Vq])throw G.message.includes(`Method '${P.method}' already declared for route '${P.url}'`)?new jUt(P.method,P.url):G}if(this.after((G,z)=>{Fe.errorHandler=P.errorHandler?i7t(this[HTe],P.errorHandler):this[HTe],Fe._parserOptions.limit=P.bodyLimit||null,Fe.logLevel=P.logLevel,Fe.logSerializers=P.logSerializers,Fe.attachValidation=P.attachValidation,Fe[Qq]=this[Qq],Fe.schemaErrorFormatter=P.schemaErrorFormatter||this[s7t]||Fe.schemaErrorFormatter,r.once("preReady",()=>{for(let q of MTe){let H=this[qTe][q].concat(P[q]||[]).map(ee=>ee.bind(this));Fe[q]=H.length?H:null}for(;!Fe.Request[QTe]&&Fe.Request.parent;)Fe.Request=Fe.Request.parent;for(;!Fe.Reply[QTe]&&Fe.Reply.parent;)Fe.Reply=Fe.Reply.parent;if(n.setContext(this,Fe),P.schema){Fe.schema=kUt(Fe.schema,this.initialConfig);let q=this[e7t];!P.validatorCompiler&&(P.schema.body||P.schema.headers||P.schema.querystring||P.schema.params)&&q.setupValidator(this[jTe]);try{let H=typeof P?.validatorCompiler=="function"||q.isCustomValidatorCompiler;WUt(Fe,P.validatorCompiler||q.validatorCompiler,H)}catch(H){throw new FUt(P.method,Ce,H.message)}P.schema.response&&!P.serializerCompiler&&q.setupSerializer(this[jTe]);try{$Ut(Fe,P.serializerCompiler||q.serializerCompiler)}catch(H){throw new UUt(P.method,Ce,H.message)}}}),z(G)}),k&&B&&!Z&&!U){let G=LUt(W.onSend);y.call(this,{method:"HEAD",url:se,options:{...W,onSend:G},isFastify:!0})}else U&&L&&BUt()}}function R(w,N,P,L,M){let k=o7t(L.server,w),B={level:L.logLevel};L.logSerializers&&(B.serializers=L.logSerializers);let Z=a7t(L,s,w,k,B);if(Z[n7t]=c,!p(w.httpVersion)){Z.info({res:{statusCode:505}},"request aborted - invalid HTTP version");let j='{"error":"HTTP Version Not Supported","message":"HTTP Version Not Supported","statusCode":505}',J={"Content-Type":"application/json","Content-Length":j.length};N.writeHead(505,J),N.end(j);return}if(h===!0&&(w.httpVersionMajor!==2&&N.setHeader("Connection","close"),d)){let j={"Content-Type":"application/json","Content-Length":"80"};N.writeHead(503,j),N.end('{"error":"Service Unavailable","message":"Service Unavailable","statusCode":503}'),Z.info({res:{statusCode:503}},"request aborted - refusing to accept new requests as server is closing");return}String.prototype.toLowerCase.call(w.headers.connection||"")==="keep-alive"&&m.has(w.socket)===!1&&(m.add(w.socket),w.socket.on("close",d7t.bind({keepAliveConnections:m,socket:w.socket}))),w.headers[Gq]!==void 0&&(w.headers["accept-version"]=w.headers[Gq],w.headers[Gq]=void 0);let F=new L.Request(k,P,w,M,Z,L),V=new L.Reply(N,F,Z);c===!1&&Z.info({req:F},"incoming request"),(i===!0||L.onResponse!==null)&&a(V),L.onRequest!==null?PUt(L.onRequest,F,V,KTe):KTe(null,F,V),L.onRequestAbort!==null&&w.on("close",()=>{w.aborted&&RUt(L.onRequestAbort,F,u7t.bind(null,V))}),L.onTimeout!==null&&(F.raw.socket._meta||F.raw.socket.on("timeout",l7t),F.raw.socket._meta={context:L,request:F,reply:V})}}function u7t(t,e){e&&t.log.error({err:e},"onRequestAborted hook failed")}function l7t(){let{context:t,request:e,reply:r}=this._meta;OUt(t.onTimeout,e,r,f7t)}function VTe(t){if(typeof t!="string")throw new KUt;if(t=t.toUpperCase(),DUt.indexOf(t)===-1)throw new zUt(t);return t}function zTe(t,e,r){if((t==="GET"||t==="HEAD")&&r&&r.body)throw new YUt(t,e)}function YTe(t){if(t!==void 0&&(!Number.isInteger(t)||t<=0))throw new JUt(t)}function KTe(t,e,r){if(r.sent!==!0){if(t!=null){r[t7t]=!0,r.send(t);return}e[r7t]=e.raw,e[GTe].preParsing!==null?NUt(e[GTe].preParsing,e,r,BTe):BTe(null,e,r)}}function d7t(){this.keepAliveConnections.delete(this.socket)}function f7t(){}JTe.exports={buildRouting:c7t,validateBodyLimitOption:YTe}});var iwe=E((L4r,swe)=>{"use strict";var p7t=qq(),ZTe=SN(),ewe=FN(),m7t=UN(),{kRoutePrefix:h7t,kCanSetNotFoundHandler:xS,kFourOhFourLevelInstance:bS,kFourOhFourContext:ol,kHooks:g7t,kErrorHandler:twe}=Qs(),{lifecycleHooks:A7t}=up(),{buildErrorHandler:y7t}=U1(),{FST_ERR_NOT_FOUND:x7t}=Ci(),{createChildLogger:rwe}=c1(),{getGenReqId:nwe}=IP();function b7t(t){let{logger:e}=t,r=p7t({onBadUrl:a(),defaultRoute:l}),n=null;return{router:r,setNotFoundHandler:c,setContext:o,arrange404:s};function s(d){d[bS]=d,d[xS]=!0,r.onBadUrl=r.onBadUrl.bind(d),r.defaultRoute=r.defaultRoute.bind(d)}function i(d,f){let{url:p,method:m}=d.raw,h=`Route ${m}:${p} not found`;d.log.info(h),f.code(404).send({message:h,error:"Not Found",statusCode:404})}function a(){return function(f,p,m){let h=this[bS][ol],A=nwe(h.server,p),g=rwe(h,e,p,A),b=new ewe(A,null,p,null,g,h),y=new ZTe(m,b,g);n(b,y)}}function o(d,f){let p=Object.assign({},d[ol]);p.onSend=f.onSend,f[ol]=p}function c(d,f,p,m){this[xS]===void 0&&(this[xS]=!0),this[ol]===void 0&&(this[ol]=null);let h=this,A=this[h7t]||"/";if(this[xS]===!1)throw new Error(`Not found handler already set for Fastify instance with prefix: '${A}'`);typeof d=="object"&&(d.preHandler&&(Array.isArray(d.preHandler)?d.preHandler=d.preHandler.map(g=>g.bind(h)):d.preHandler=d.preHandler.bind(h)),d.preValidation&&(Array.isArray(d.preValidation)?d.preValidation=d.preValidation.map(g=>g.bind(h)):d.preValidation=d.preValidation.bind(h))),typeof d=="function"&&(f=d,d=void 0),d=d||{},f?(this[bS][xS]=!1,f=f.bind(this),n=f):(f=i,n=i),this.after((g,b)=>{u.call(this,A,d,f,p,m),b(g)})}function u(d,f,p,m,h){let A=new m7t({schema:f.schema,handler:p,config:f.config||{},server:this});if(m.once("preReady",()=>{let g=this[ol];for(let b of A7t){let y=this[g7t][b].concat(f[b]||[]).map(x=>x.bind(this));g[b]=y.length?y:null}g.errorHandler=f.errorHandler?y7t(this[twe],f.errorHandler):this[twe]}),this[ol]!==null&&d==="/"){Object.assign(this[ol],A);return}this[bS][ol]=A,r.all(d+(d.endsWith("/")?"*":"/*"),h,A),r.all(d,h,A)}function l(d,f){let p=this[bS][ol],m=nwe(p.server,d),h=rwe(p,e,d,m);h.info({req:d},"incoming request");let A=new ewe(m,null,d,null,h,p),g=new ZTe(f,A,h);A.log.warn("the default handler for 404 did not catch this, this is likely a fastify bug, please report it"),A.log.warn(r.prettyPrint()),g.code(404).send(new x7t)}}swe.exports=b7t});var owe=E((B4r,QP)=>{"use strict";QP.exports=$r;QP.exports.default=$r;var awe={type:"object",additionalProperties:!1,properties:{connectionTimeout:{type:"integer",default:0},keepAliveTimeout:{type:"integer",default:72e3},forceCloseConnections:{oneOf:[{type:"string",pattern:"idle"},{type:"boolean"}]},maxRequestsPerSocket:{type:"integer",default:0,nullable:!0},requestTimeout:{type:"integer",default:0},bodyLimit:{type:"integer",default:1048576},caseSensitive:{type:"boolean",default:!0},allowUnsafeRegex:{type:"boolean",default:!1},http2:{type:"boolean"},https:{if:{not:{oneOf:[{type:"boolean"},{type:"null"},{type:"object",additionalProperties:!1,required:["allowHTTP1"],properties:{allowHTTP1:{type:"boolean"}}}]}},then:{setDefaultValue:!0}},ignoreTrailingSlash:{type:"boolean",default:!1},ignoreDuplicateSlashes:{type:"boolean",default:!1},disableRequestLogging:{type:"boolean",default:!1},jsonShorthand:{type:"boolean",default:!0},maxParamLength:{type:"integer",default:100},onProtoPoisoning:{type:"string",default:"error"},onConstructorPoisoning:{type:"string",default:"error"},pluginTimeout:{type:"integer",default:1e4},requestIdHeader:{anyOf:[{enum:[!1]},{type:"string"}],default:"request-id"},requestIdLogLabel:{type:"string",default:"reqId"},http2SessionTimeout:{type:"integer",default:72e3},exposeHeadRoutes:{type:"boolean",default:!0},useSemicolonDelimiter:{type:"boolean",default:!0},versioning:{type:"object",additionalProperties:!0,required:["storage","deriveVersion"],properties:{storage:{},deriveVersion:{}}},constraints:{type:"object",additionalProperties:{type:"object",required:["name","storage","validate","deriveConstraint"],additionalProperties:!0,properties:{name:{type:"string"},storage:{},validate:{},deriveConstraint:{}}}}}},E7t=Object.prototype.hasOwnProperty,_7t=new RegExp("idle","u");function $r(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0;if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){t.connectionTimeout===void 0&&(t.connectionTimeout=0),t.keepAliveTimeout===void 0&&(t.keepAliveTimeout=72e3),t.maxRequestsPerSocket===void 0&&(t.maxRequestsPerSocket=0),t.requestTimeout===void 0&&(t.requestTimeout=0),t.bodyLimit===void 0&&(t.bodyLimit=1048576),t.caseSensitive===void 0&&(t.caseSensitive=!0),t.allowUnsafeRegex===void 0&&(t.allowUnsafeRegex=!1),t.ignoreTrailingSlash===void 0&&(t.ignoreTrailingSlash=!1),t.ignoreDuplicateSlashes===void 0&&(t.ignoreDuplicateSlashes=!1),t.disableRequestLogging===void 0&&(t.disableRequestLogging=!1),t.jsonShorthand===void 0&&(t.jsonShorthand=!0),t.maxParamLength===void 0&&(t.maxParamLength=100),t.onProtoPoisoning===void 0&&(t.onProtoPoisoning="error"),t.onConstructorPoisoning===void 0&&(t.onConstructorPoisoning="error"),t.pluginTimeout===void 0&&(t.pluginTimeout=1e4),t.requestIdHeader===void 0&&(t.requestIdHeader="request-id"),t.requestIdLogLabel===void 0&&(t.requestIdLogLabel="reqId"),t.http2SessionTimeout===void 0&&(t.http2SessionTimeout=72e3),t.exposeHeadRoutes===void 0&&(t.exposeHeadRoutes=!0),t.useSemicolonDelimiter===void 0&&(t.useSemicolonDelimiter=!0);let m=a;for(let h in t)E7t.call(awe.properties,h)||delete t[h];if(m===a){let h=t.connectionTimeout,A=a;if(!(typeof h=="number"&&!(h%1)&&!isNaN(h)&&isFinite(h))){let g=typeof h,b;if(b===void 0)if(g==="boolean"||h===null||g==="string"&&h&&h==+h&&!(h%1))b=+h;else return $r.errors=[{instancePath:e+"/connectionTimeout",schemaPath:"#/properties/connectionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;b!==void 0&&(h=b,t!==void 0&&(t.connectionTimeout=b))}var o=A===a;if(o){let g=t.keepAliveTimeout,b=a;if(!(typeof g=="number"&&!(g%1)&&!isNaN(g)&&isFinite(g))){let x=typeof g,v;if(v===void 0)if(x==="boolean"||g===null||x==="string"&&g&&g==+g&&!(g%1))v=+g;else return $r.errors=[{instancePath:e+"/keepAliveTimeout",schemaPath:"#/properties/keepAliveTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;v!==void 0&&(g=v,t!==void 0&&(t.keepAliveTimeout=v))}var o=b===a;if(o){if(t.forceCloseConnections!==void 0){let x=t.forceCloseConnections,v=a,C=a,R=!1,w=null,N=a;if(typeof x!="string"){let M=typeof x,k;if(k===void 0)if(M=="number"||M=="boolean")k=""+x;else if(x===null)k="";else{let B={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[B]:i.push(B),a++}k!==void 0&&(x=k,t!==void 0&&(t.forceCloseConnections=k))}if(a===N&&typeof x=="string"&&!_7t.test(x)){let M={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/0/pattern",keyword:"pattern",params:{pattern:"idle"},message:'must match pattern "idle"'};i===null?i=[M]:i.push(M),a++}var c=N===a;c&&(R=!0,w=0);let P=a;if(typeof x!="boolean"){let M;if(M===void 0)if(x==="false"||x===0||x===null)M=!1;else if(x==="true"||x===1)M=!0;else{let k={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf/1/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"};i===null?i=[k]:i.push(k),a++}M!==void 0&&(x=M,t!==void 0&&(t.forceCloseConnections=M))}var c=P===a;if(c&&R?(R=!1,w=[w,1]):c&&(R=!0,w=1),R)a=C,i!==null&&(C?i.length=C:i=null);else{let M={instancePath:e+"/forceCloseConnections",schemaPath:"#/properties/forceCloseConnections/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,$r.errors=i,!1}var o=v===a}else var o=!0;if(o){let x=t.maxRequestsPerSocket,v=a;if(!(typeof x=="number"&&!(x%1)&&!isNaN(x)&&isFinite(x))&&x!==null){let R=typeof x,w;if(w===void 0)if(R==="boolean"||x===null||R==="string"&&x&&x==+x&&!(x%1))w=+x;else if(x===""||x===0||x===!1)w=null;else return $r.errors=[{instancePath:e+"/maxRequestsPerSocket",schemaPath:"#/properties/maxRequestsPerSocket/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.maxRequestsPerSocket=w))}var o=v===a;if(o){let R=t.requestTimeout,w=a;if(!(typeof R=="number"&&!(R%1)&&!isNaN(R)&&isFinite(R))){let P=typeof R,L;if(L===void 0)if(P==="boolean"||R===null||P==="string"&&R&&R==+R&&!(R%1))L=+R;else return $r.errors=[{instancePath:e+"/requestTimeout",schemaPath:"#/properties/requestTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;L!==void 0&&(R=L,t!==void 0&&(t.requestTimeout=L))}var o=w===a;if(o){let P=t.bodyLimit,L=a;if(!(typeof P=="number"&&!(P%1)&&!isNaN(P)&&isFinite(P))){let k=typeof P,B;if(B===void 0)if(k==="boolean"||P===null||k==="string"&&P&&P==+P&&!(P%1))B=+P;else return $r.errors=[{instancePath:e+"/bodyLimit",schemaPath:"#/properties/bodyLimit/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;B!==void 0&&(P=B,t!==void 0&&(t.bodyLimit=B))}var o=L===a;if(o){let k=t.caseSensitive,B=a;if(typeof k!="boolean"){let W;if(W===void 0)if(k==="false"||k===0||k===null)W=!1;else if(k==="true"||k===1)W=!0;else return $r.errors=[{instancePath:e+"/caseSensitive",schemaPath:"#/properties/caseSensitive/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;W!==void 0&&(k=W,t!==void 0&&(t.caseSensitive=W))}var o=B===a;if(o){let W=t.allowUnsafeRegex,F=a;if(typeof W!="boolean"){let j;if(j===void 0)if(W==="false"||W===0||W===null)j=!1;else if(W==="true"||W===1)j=!0;else return $r.errors=[{instancePath:e+"/allowUnsafeRegex",schemaPath:"#/properties/allowUnsafeRegex/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;j!==void 0&&(W=j,t!==void 0&&(t.allowUnsafeRegex=j))}var o=F===a;if(o){if(t.http2!==void 0){let j=t.http2,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return $r.errors=[{instancePath:e+"/http2",schemaPath:"#/properties/http2/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.http2=oe))}var o=J===a}else var o=!0;if(o){if(t.https!==void 0){let j=t.https,J=a,se=a,oe=!0,ue=a,Ce=a,we=a,qe=a,Fe=!1,_e=null,U=a;if(typeof j!="boolean"){let q;if(q===void 0)if(j==="false"||j===0||j===null)q=!1;else if(j==="true"||j===1)q=!0;else{let H={};i===null?i=[H]:i.push(H),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=U===a;u&&(Fe=!0,_e=0);let G=a;if(j!==null){let q;if(q===void 0)if(j===""||j===0||j===!1)q=null;else{let H={};i===null?i=[H]:i.push(H),a++}q!==void 0&&(j=q,t!==void 0&&(t.https=q))}var u=G===a;if(u&&Fe)Fe=!1,_e=[_e,1];else{u&&(Fe=!0,_e=1);let q=a;if(a===q)if(j&&typeof j=="object"&&!Array.isArray(j)){let ee;if(j.allowHTTP1===void 0&&(ee="allowHTTP1")){let ne={};i===null?i=[ne]:i.push(ne),a++}else{let ne=a;for(let re in j)re!=="allowHTTP1"&&delete j[re];if(ne===a&&j.allowHTTP1!==void 0){let re=j.allowHTTP1;if(typeof re!="boolean"){let X;if(X===void 0)if(re==="false"||re===0||re===null)X=!1;else if(re==="true"||re===1)X=!0;else{let ie={};i===null?i=[ie]:i.push(ie),a++}X!==void 0&&(re=X,j!==void 0&&(j.allowHTTP1=X))}}}}else{let ee={};i===null?i=[ee]:i.push(ee),a++}var u=q===a;u&&Fe?(Fe=!1,_e=[_e,2]):u&&(Fe=!0,_e=2)}if(Fe)a=qe,i!==null&&(qe?i.length=qe:i=null);else{let q={};i===null?i=[q]:i.push(q),a++}var l=we===a;if(l){let q={};i===null?i=[q]:i.push(q),a++}else a=Ce,i!==null&&(Ce?i.length=Ce:i=null);var d=ue===a;if(a=se,i!==null&&(se?i.length=se:i=null),d){let q=a;t.https=!0;var d=q===a;oe=d}if(!oe){let q={instancePath:e+"/https",schemaPath:"#/properties/https/if",keyword:"if",params:{failingKeyword:"then"},message:'must match "then" schema'};return i===null?i=[q]:i.push(q),a++,$r.errors=i,!1}var o=J===a}else var o=!0;if(o){let j=t.ignoreTrailingSlash,J=a;if(typeof j!="boolean"){let oe;if(oe===void 0)if(j==="false"||j===0||j===null)oe=!1;else if(j==="true"||j===1)oe=!0;else return $r.errors=[{instancePath:e+"/ignoreTrailingSlash",schemaPath:"#/properties/ignoreTrailingSlash/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;oe!==void 0&&(j=oe,t!==void 0&&(t.ignoreTrailingSlash=oe))}var o=J===a;if(o){let oe=t.ignoreDuplicateSlashes,ue=a;if(typeof oe!="boolean"){let we;if(we===void 0)if(oe==="false"||oe===0||oe===null)we=!1;else if(oe==="true"||oe===1)we=!0;else return $r.errors=[{instancePath:e+"/ignoreDuplicateSlashes",schemaPath:"#/properties/ignoreDuplicateSlashes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;we!==void 0&&(oe=we,t!==void 0&&(t.ignoreDuplicateSlashes=we))}var o=ue===a;if(o){let we=t.disableRequestLogging,qe=a;if(typeof we!="boolean"){let _e;if(_e===void 0)if(we==="false"||we===0||we===null)_e=!1;else if(we==="true"||we===1)_e=!0;else return $r.errors=[{instancePath:e+"/disableRequestLogging",schemaPath:"#/properties/disableRequestLogging/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;_e!==void 0&&(we=_e,t!==void 0&&(t.disableRequestLogging=_e))}var o=qe===a;if(o){let _e=t.jsonShorthand,U=a;if(typeof _e!="boolean"){let z;if(z===void 0)if(_e==="false"||_e===0||_e===null)z=!1;else if(_e==="true"||_e===1)z=!0;else return $r.errors=[{instancePath:e+"/jsonShorthand",schemaPath:"#/properties/jsonShorthand/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;z!==void 0&&(_e=z,t!==void 0&&(t.jsonShorthand=z))}var o=U===a;if(o){let z=t.maxParamLength,q=a;if(!(typeof z=="number"&&!(z%1)&&!isNaN(z)&&isFinite(z))){let ee=typeof z,ne;if(ne===void 0)if(ee==="boolean"||z===null||ee==="string"&&z&&z==+z&&!(z%1))ne=+z;else return $r.errors=[{instancePath:e+"/maxParamLength",schemaPath:"#/properties/maxParamLength/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;ne!==void 0&&(z=ne,t!==void 0&&(t.maxParamLength=ne))}var o=q===a;if(o){let ee=t.onProtoPoisoning,ne=a;if(typeof ee!="string"){let X=typeof ee,ie;if(ie===void 0)if(X=="number"||X=="boolean")ie=""+ee;else if(ee===null)ie="";else return $r.errors=[{instancePath:e+"/onProtoPoisoning",schemaPath:"#/properties/onProtoPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;ie!==void 0&&(ee=ie,t!==void 0&&(t.onProtoPoisoning=ie))}var o=ne===a;if(o){let X=t.onConstructorPoisoning,ie=a;if(typeof X!="string"){let fe=typeof X,Ne;if(Ne===void 0)if(fe=="number"||fe=="boolean")Ne=""+X;else if(X===null)Ne="";else return $r.errors=[{instancePath:e+"/onConstructorPoisoning",schemaPath:"#/properties/onConstructorPoisoning/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Ne!==void 0&&(X=Ne,t!==void 0&&(t.onConstructorPoisoning=Ne))}var o=ie===a;if(o){let fe=t.pluginTimeout,Ne=a;if(!(typeof fe=="number"&&!(fe%1)&&!isNaN(fe)&&isFinite(fe))){let Ue=typeof fe,Ke;if(Ke===void 0)if(Ue==="boolean"||fe===null||Ue==="string"&&fe&&fe==+fe&&!(fe%1))Ke=+fe;else return $r.errors=[{instancePath:e+"/pluginTimeout",schemaPath:"#/properties/pluginTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;Ke!==void 0&&(fe=Ke,t!==void 0&&(t.pluginTimeout=Ke))}var o=Ne===a;if(o){let Ue=t.requestIdHeader,Ke=a,Ye=a,Ze=!1,nt=a;if(Ue!==!1){let tt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/0/enum",keyword:"enum",params:{allowedValues:awe.properties.requestIdHeader.anyOf[0].enum},message:"must be equal to one of the allowed values"};i===null?i=[tt]:i.push(tt),a++}var f=nt===a;if(Ze=Ze||f,!Ze){let tt=a;if(typeof Ue!="string"){let lt=typeof Ue,De;if(De===void 0)if(lt=="number"||lt=="boolean")De=""+Ue;else if(Ue===null)De="";else{let Je={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[Je]:i.push(Je),a++}De!==void 0&&(Ue=De,t!==void 0&&(t.requestIdHeader=De))}var f=tt===a;Ze=Ze||f}if(Ze)a=Ye,i!==null&&(Ye?i.length=Ye:i=null);else{let tt={instancePath:e+"/requestIdHeader",schemaPath:"#/properties/requestIdHeader/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[tt]:i.push(tt),a++,$r.errors=i,!1}var o=Ke===a;if(o){let tt=t.requestIdLogLabel,Dt=a;if(typeof tt!="string"){let De=typeof tt,Je;if(Je===void 0)if(De=="number"||De=="boolean")Je=""+tt;else if(tt===null)Je="";else return $r.errors=[{instancePath:e+"/requestIdLogLabel",schemaPath:"#/properties/requestIdLogLabel/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;Je!==void 0&&(tt=Je,t!==void 0&&(t.requestIdLogLabel=Je))}var o=Dt===a;if(o){let De=t.http2SessionTimeout,Je=a;if(!(typeof De=="number"&&!(De%1)&&!isNaN(De)&&isFinite(De))){let rt=typeof De,bt;if(bt===void 0)if(rt==="boolean"||De===null||rt==="string"&&De&&De==+De&&!(De%1))bt=+De;else return $r.errors=[{instancePath:e+"/http2SessionTimeout",schemaPath:"#/properties/http2SessionTimeout/type",keyword:"type",params:{type:"integer"},message:"must be integer"}],!1;bt!==void 0&&(De=bt,t!==void 0&&(t.http2SessionTimeout=bt))}var o=Je===a;if(o){let rt=t.exposeHeadRoutes,bt=a;if(typeof rt!="boolean"){let Ct;if(Ct===void 0)if(rt==="false"||rt===0||rt===null)Ct=!1;else if(rt==="true"||rt===1)Ct=!0;else return $r.errors=[{instancePath:e+"/exposeHeadRoutes",schemaPath:"#/properties/exposeHeadRoutes/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Ct!==void 0&&(rt=Ct,t!==void 0&&(t.exposeHeadRoutes=Ct))}var o=bt===a;if(o){let Ct=t.useSemicolonDelimiter,Sr=a;if(typeof Ct!="boolean"){let Dr;if(Dr===void 0)if(Ct==="false"||Ct===0||Ct===null)Dr=!1;else if(Ct==="true"||Ct===1)Dr=!0;else return $r.errors=[{instancePath:e+"/useSemicolonDelimiter",schemaPath:"#/properties/useSemicolonDelimiter/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;Dr!==void 0&&(Ct=Dr,t!==void 0&&(t.useSemicolonDelimiter=Dr))}var o=Sr===a;if(o){if(t.versioning!==void 0){let Dr=t.versioning,qs=a;if(a===qs)if(Dr&&typeof Dr=="object"&&!Array.isArray(Dr)){let ys;if(Dr.storage===void 0&&(ys="storage")||Dr.deriveVersion===void 0&&(ys="deriveVersion"))return $r.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/required",keyword:"required",params:{missingProperty:ys},message:"must have required property '"+ys+"'"}],!1}else return $r.errors=[{instancePath:e+"/versioning",schemaPath:"#/properties/versioning/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=qs===a}else var o=!0;if(o)if(t.constraints!==void 0){let Dr=t.constraints,qs=a;if(a===qs)if(Dr&&typeof Dr=="object"&&!Array.isArray(Dr))for(let ys in Dr){let Hs=Dr[ys],Lu=a;if(a===Lu)if(Hs&&typeof Hs=="object"&&!Array.isArray(Hs)){let go;if(Hs.name===void 0&&(go="name")||Hs.storage===void 0&&(go="storage")||Hs.validate===void 0&&(go="validate")||Hs.deriveConstraint===void 0&&(go="deriveConstraint"))return $r.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/required",keyword:"required",params:{missingProperty:go},message:"must have required property '"+go+"'"}],!1;if(Hs.name!==void 0){let Dc=Hs.name;if(typeof Dc!="string"){let Ta=typeof Dc,yn;if(yn===void 0)if(Ta=="number"||Ta=="boolean")yn=""+Dc;else if(Dc===null)yn="";else return $r.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1")+"/name",schemaPath:"#/properties/constraints/additionalProperties/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;yn!==void 0&&(Dc=yn,Hs!==void 0&&(Hs.name=yn))}}}else return $r.errors=[{instancePath:e+"/constraints/"+ys.replace(/~/g,"~0").replace(/\//g,"~1"),schemaPath:"#/properties/constraints/additionalProperties/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var p=Lu===a;if(!p)break}else return $r.errors=[{instancePath:e+"/constraints",schemaPath:"#/properties/constraints/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var o=qs===a}else var o=!0}}}}}}}}}}}}}}}}}}}}}}}}}else return $r.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return $r.errors=i,a===0}QP.exports.defaultInitOptions={connectionTimeout:0,keepAliveTimeout:72e3,maxRequestsPerSocket:0,requestTimeout:0,bodyLimit:1048576,caseSensitive:!0,allowUnsafeRegex:!1,disableRequestLogging:!1,jsonShorthand:!0,ignoreTrailingSlash:!1,ignoreDuplicateSlashes:!1,maxParamLength:100,onProtoPoisoning:"error",onConstructorPoisoning:"error",pluginTimeout:1e4,requestIdHeader:"request-id",requestIdLogLabel:"reqId",http2SessionTimeout:72e3,exposeHeadRoutes:!0,useSemicolonDelimiter:!0}});var cwe=E((M4r,VP)=>{"use strict";var GP=owe(),S7t=NR()({circles:!0,proto:!1}),{FST_ERR_INIT_OPTS_INVALID:v7t}=Ci();function C7t(t){let e=S7t(t);if(!GP(e)){let r=new v7t(JSON.stringify(GP.errors.map(n=>n.message)));throw r.errors=GP.errors,r}return zq(e)}function zq(t){let e=Object.getOwnPropertyNames(t);for(let r of e){let n=t[r];ArrayBuffer.isView(n)&&!(n instanceof DataView)||(t[r]=n&&typeof n=="object"?zq(n):n)}return Object.freeze(t)}VP.exports=C7t;VP.exports.defaultInitOptions=GP.defaultInitOptions;VP.exports.utils={deepFreezeObject:zq}});var Awe=E((W4r,gwe)=>{"use strict";var{kAvvioBoot:I7t,kChildren:uwe,kRoutePrefix:lwe,kLogLevel:dwe,kLogSerializers:Kq,kHooks:Yq,kSchemaController:tx,kContentTypeParser:fwe,kReply:pwe,kRequest:mwe,kFourOhFour:T7t,kPluginNameChain:hwe}=Qs(),w7t=SN(),R7t=FN(),N7t=bq(),O7t=Y$(),{buildHooks:P7t}=up(),ES=Iq();gwe.exports=function(e,r,n){let s=ES.registerPlugin.call(e,r),i=ES.getPluginName(r)||ES.getFuncPreview(r);if(s)return e[hwe].push(i),e;let a=Object.create(e);e[uwe].push(a),a.ready=e[I7t].bind(a),a[uwe]=[],a[pwe]=w7t.buildReply(a[pwe]),a[mwe]=R7t.buildRequest(a[mwe]),a[fwe]=O7t.helpers.buildContentTypeParser(a[fwe]),a[Yq]=P7t(a[Yq]),a[lwe]=D7t(a[lwe],n.prefix),a[dwe]=n.logLevel||a[dwe],a[tx]=N7t.buildSchemaController(e[tx]),a.getSchema=a[tx].getSchema.bind(a[tx]),a.getSchemas=a[tx].getSchemas.bind(a[tx]),a[ES.kRegisteredPlugins]=Object.create(a[ES.kRegisteredPlugins]),a[hwe]=[i],(a[Kq]||n.logSerializers)&&(a[Kq]=Object.assign(Object.create(a[Kq]),n.logSerializers)),n.prefix&&a[T7t].arrange404(a);for(let o of a[Yq].onRegister)o.call(this,a,n);return a};function D7t(t,e){return e?(t.endsWith("/")&&e[0]==="/"?e=e.slice(1):e[0]!=="/"&&(e="/"+e),t+e):t}});var xwe=E(($4r,ywe)=>{"use strict";ywe.exports=function(){return{[Symbol.iterator]:function*(){},add(){},delete(){},has(){return!0}}}});var _we=E(Jq=>{"use strict";Jq.parse=F7t;Jq.serialize=U7t;var k7t=Object.prototype.toString,L7t=Object.prototype.hasOwnProperty,B7t=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/,M7t=/^("?)[\u0021\u0023-\u002B\u002D-\u003A\u003C-\u005B\u005D-\u007E]*\1$/,W7t=/^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i,$7t=/^[\u0020-\u003A\u003D-\u007E]*$/;function F7t(t,e){if(typeof t!="string")throw new TypeError("argument str must be a string");var r={},n=t.length;if(n<2)return r;var s=e&&e.decode||q7t,i=0,a=0,o=0;do{if(a=t.indexOf("=",i),a===-1)break;if(o=t.indexOf(";",i),o===-1)o=n;else if(a>o){i=t.lastIndexOf(";",a-1)+1;continue}var c=bwe(t,i,a),u=Ewe(t,a,c),l=t.slice(c,u);if(!L7t.call(r,l)){var d=bwe(t,a+1,o),f=Ewe(t,o,d);t.charCodeAt(d)===34&&t.charCodeAt(f-1)===34&&(d++,f--);var p=t.slice(d,f);r[l]=H7t(p,s)}i=o+1}while(ir;){var n=t.charCodeAt(--e);if(n!==32&&n!==9)return e+1}return r}function U7t(t,e,r){var n=r&&r.encode||encodeURIComponent;if(typeof n!="function")throw new TypeError("option encode is invalid");if(!B7t.test(t))throw new TypeError("argument name is invalid");var s=n(e);if(!M7t.test(s))throw new TypeError("argument val is invalid");var i=t+"="+s;if(!r)return i;if(r.maxAge!=null){var a=Math.floor(r.maxAge);if(!isFinite(a))throw new TypeError("option maxAge is invalid");i+="; Max-Age="+a}if(r.domain){if(!W7t.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!$7t.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){var o=r.expires;if(!j7t(o)||isNaN(o.valueOf()))throw new TypeError("option expires is invalid");i+="; Expires="+o.toUTCString()}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.partitioned&&(i+="; Partitioned"),r.priority){var c=typeof r.priority=="string"?r.priority.toLowerCase():r.priority;switch(c){case"low":i+="; Priority=Low";break;case"medium":i+="; Priority=Medium";break;case"high":i+="; Priority=High";break;default:throw new TypeError("option priority is invalid")}}if(r.sameSite){var u=typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite;switch(u){case!0:i+="; SameSite=Strict";break;case"lax":i+="; SameSite=Lax";break;case"strict":i+="; SameSite=Strict";break;case"none":i+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return i}function q7t(t){return t.indexOf("%")!==-1?decodeURIComponent(t):t}function j7t(t){return k7t.call(t)==="[object Date]"}function H7t(t,e){try{return e(t)}catch{return t}}});var Cwe=E((U4r,vwe)=>{"use strict";var{URL:Swe}=require("node:url"),Xq="http://localhost";vwe.exports=function(e,r){(typeof e=="string"||Object.prototype.toString.call(e)==="[object String]")&&e.startsWith("//")&&(e=Xq+e);let n=typeof e=="object"?Object.assign(new Swe(Xq),e):new Swe(e,Xq);if(typeof r=="string"){r=new URLSearchParams(r);for(let s of r.keys()){n.searchParams.delete(s);for(let i of r.getAll(s))n.searchParams.append(s,i)}}else{let s=Object.assign({},e.query,r);for(let i in s){let a=s[i];if(Array.isArray(a)){n.searchParams.delete(i);for(let o of a)n.searchParams.append(i,o)}else n.searchParams.set(i,a)}}return n}});var Iwe=E((q4r,Zq)=>{"use strict";var{randomUUID:Q7t}=require("node:crypto"),{Readable:G7t}=require("node:stream"),rx;function V7t(t){return t&&typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&t[Symbol.toStringTag]==="FormData"}function z7t(t){rx=rx??new TextEncoder;let e=`----formdata-${Q7t()}`,r=`--${e}\r Content-Disposition: form-data`;let n=c=>c.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),s=c=>c.replace(/\r?\n|\r/g,`\r `),i=new Uint8Array([13,10]);async function*a(){for(let[c,u]of t)if(typeof u=="string")yield rx.encode(`${r}; name="${n(s(c))}"\r \r @@ -398,41 +398,41 @@ Content-Disposition: form-data`;let n=c=>c.replace(/\n/g,"%0A").replace(/\r/g,"% `);else{let l=`${r}; name="${n(s(c))}"`;u.name&&(l+=`; filename="${n(u.name)}"`),l+=`\r Content-Type: ${u.type||"application/octet-stream"}\r \r -`,yield rx.encode(l),u.stream?yield*u.stream():yield u,yield i}yield rx.encode(`--${e}--`)}return{stream:H7t.from(a()),contentType:`multipart/form-data; boundary=${e}`}}X9.exports.isFormDataLike=Q7t;X9.exports.formDataToStream=G7t});var Cwe=E((M4r,GP)=>{"use strict";var{Readable:vwe,addAbortSignal:K7t}=require("node:stream"),ej=require("node:util"),V7t=xwe(),z7t=require("node:assert"),{createDeprecation:Y7t}=G6(),J7t=_we(),{isFormDataLike:X7t,formDataToStream:Z7t}=Swe(),{EventEmitter:eqt}=require("node:events"),tqt=Y7t({name:"FastifyDeprecationLightMyRequest",code:"FST_LIGHTMYREQUEST_DEP01",message:'You are accessing "request.connection", use "request.socket" instead.'});function rqt(t){return t.port?t.host:t.hostname+(t.protocol==="https:"?":443":":80")}var Z9=class extends eqt{constructor(e){super(),this.remoteAddress=e}};function Iwe(t){return new e(this);function e(r){cl.call(r,{...t,Request:void 0}),Object.assign(this,r);for(let n of Object.keys(cl.prototype))this.constructor.prototype[n]=cl.prototype[n];return ej.inherits(this.constructor,t.Request),this}}function cl(t){vwe.call(this,{autoDestroy:!1});let e=J7t(t.url||t.path,t.query);this.url=e.pathname+e.search,this.aborted=!1,this.httpVersionMajor=1,this.httpVersionMinor=1,this.httpVersion="1.1",this.method=t.method?t.method.toUpperCase():"GET",this.headers={},this.rawHeaders=[];let r=t.headers||{};for(let a in r){let o=a.toLowerCase();if((o==="user-agent"||o==="content-type")&&r[a]===void 0){this.headers[o]=void 0;continue}let c=r[a];z7t(c!==void 0,'invalid value "undefined" for header '+a),this.headers[o]=""+c}if("user-agent"in this.headers||(this.headers["user-agent"]="lightMyRequest"),this.headers.host=this.headers.host||t.authority||rqt(e),t.cookies){let{cookies:a}=t,o=Object.keys(a).map(c=>V7t.serialize(c,a[c]));this.headers.cookie&&o.unshift(this.headers.cookie),this.headers.cookie=o.join("; ")}this.socket=new Z9(t.remoteAddress||"127.0.0.1"),Object.defineProperty(this,"connection",{get(){return tqt(),this.socket},configurable:!0});let n=t.payload||t.body||null,s=n&&typeof n.resume=="function";if(X7t(n)){let a=Z7t(n);n=a.stream,s=!0,this.headers["content-type"]=a.contentType}n&&typeof n!="string"&&!s&&!Buffer.isBuffer(n)&&(n=JSON.stringify(n),"content-type"in this.headers||(this.headers["content-type"]="application/json")),n&&!s&&!Object.prototype.hasOwnProperty.call(this.headers,"content-length")&&(this.headers["content-length"]=(Buffer.isBuffer(n)?n.length:Buffer.byteLength(n)).toString());for(let a of Object.keys(this.headers))this.rawHeaders.push(a,this.headers[a]);this._lightMyRequest={payload:n,isDone:!1,simulate:t.simulate||{}};let i=t.signal;return i&&K7t(i,this),this}ej.inherits(cl,vwe);ej.inherits(Iwe,cl);cl.prototype.prepare=function(t){let e=this._lightMyRequest.payload;if(!e||typeof e.resume!="function")return t();let r=[];e.on("data",n=>r.push(Buffer.from(n))),e.on("end",()=>{let n=Buffer.concat(r);return this.headers["content-length"]=this.headers["content-length"]||""+n.length,this._lightMyRequest.payload=n,t()}),e.resume()};cl.prototype._read=function(t){setImmediate(()=>{if(this._lightMyRequest.isDone){this._lightMyRequest.simulate.end!==!1&&this.push(null);return}this._lightMyRequest.isDone=!0,this._lightMyRequest.payload&&(this._lightMyRequest.simulate.split?(this.push(this._lightMyRequest.payload.slice(0,1)),this.push(this._lightMyRequest.payload.slice(1))):this.push(this._lightMyRequest.payload)),this._lightMyRequest.simulate.error&&this.emit("error",new Error("Simulated")),this._lightMyRequest.simulate.close&&this.emit("close"),this._lightMyRequest.simulate.end!==!1&&this.push(null)})};cl.prototype.destroy=function(t){this.destroyed||this._lightMyRequest.isDone||(this.destroyed=!0,t&&(this._error=!0,process.nextTick(()=>this.emit("error",t))),process.nextTick(()=>this.emit("close")))};GP.exports=cl;GP.exports.Request=cl;GP.exports.CustomRequest=Iwe});var wwe=E((W4r,ES)=>{"use strict";var KP={decodeValues:!0,map:!1,silent:!1};function tj(t){return typeof t!="string"||t in{}}function rj(){return Object.create(null)}function nj(t){return typeof t=="string"&&!!t.trim()}function sj(t,e){var r=t.split(";").filter(nj),n=r.shift(),s=nqt(n),i=s.name,a=s.value;if(e=e?Object.assign({},KP,e):KP,tj(i))return null;try{a=e.decodeValues?decodeURIComponent(a):a}catch(c){console.error("set-cookie-parser: failed to decode cookie value. Set options.decodeValues=false to disable decoding.",c)}var o=rj();return o.name=i,o.value=a,r.forEach(function(c){var u=c.split("="),l=u.shift().trimLeft().toLowerCase();if(!tj(l)){var d=u.join("=");if(l==="expires")o.expires=new Date(d);else if(l==="max-age"){var f=parseInt(d,10);Number.isNaN(f)||(o.maxAge=f)}else l==="secure"?o.secure=!0:l==="httponly"?o.httpOnly=!0:l==="samesite"?o.sameSite=d:l==="partitioned"?o.partitioned=!0:l&&(o[l]=d)}}),o}function nqt(t){var e="",r="",n=t.split("=");return n.length>1?(e=n.shift(),r=n.join("=")):r=t,{name:e,value:r}}function Twe(t,e){if(e=e?Object.assign({},KP,e):KP,!t)return e.map?rj():[];if(t.headers)if(typeof t.headers.getSetCookie=="function")t=t.headers.getSetCookie();else if(t.headers["set-cookie"])t=t.headers["set-cookie"];else{var r=t.headers[Object.keys(t.headers).find(function(s){return s.toLowerCase()==="set-cookie"})];!r&&t.headers.cookie&&!e.silent&&console.warn("Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."),t=r}if(Array.isArray(t)||(t=[t]),e.map){var n=rj();return t.filter(nj).reduce(function(s,i){var a=sj(i,e);return a&&!tj(a.name)&&(s[a.name]=a),s},n)}else return t.filter(nj).map(function(s){return sj(s,e)}).filter(Boolean)}function sqt(t){if(Array.isArray(t))return t;if(typeof t!="string")return[];var e=[],r=0,n,s,i,a,o;function c(){for(;r=t.length)&&e.push(t.substring(n,t.length))}return e}ES.exports=Twe;ES.exports.parse=Twe;ES.exports.parseString=sj;ES.exports.splitCookiesString=sqt});var Owe=E(($4r,Nwe)=>{"use strict";var _S=require("node:http"),{Writable:iqt,Readable:aqt}=require("node:stream"),oqt=require("node:util"),cqt=wwe();function Hp(t,e,r){_S.ServerResponse.call(this,t),this._lightMyRequest={headers:null,trailers:{},payloadChunks:[]},this.setHeader("foo","bar"),this.removeHeader("foo"),this.assignSocket(lqt()),this._promiseCallback=typeof r=="function";let n=!1,s=a=>{if(n=!0,this._promiseCallback)return process.nextTick(()=>e(a));process.nextTick(()=>e(null,a))},i=a=>{if(!n){if(n=!0,this._promiseCallback)return process.nextTick(()=>r(a));process.nextTick(()=>e(a,null))}};this.once("finish",()=>{let a=uqt(this);a.raw.req=t,s(a)}),this.connection.once("error",i),this.once("error",i),this.once("close",i)}oqt.inherits(Hp,_S.ServerResponse);Hp.prototype.setTimeout=function(t,e){return this.timeoutHandle=setTimeout(()=>{this.emit("timeout")},t),this.on("timeout",e),this};Hp.prototype.writeHead=function(){let t=_S.ServerResponse.prototype.writeHead.apply(this,arguments);return Rwe(this),t};Hp.prototype.write=function(t,e,r){return this.timeoutHandle&&clearTimeout(this.timeoutHandle),_S.ServerResponse.prototype.write.call(this,t,e,r),this._lightMyRequest.payloadChunks.push(Buffer.from(t,e)),!0};Hp.prototype.end=function(t,e,r){t&&this.write(t,e),_S.ServerResponse.prototype.end.call(this,r),this.emit("finish"),this.destroy()};Hp.prototype.destroy=function(t){this.destroyed||(this.destroyed=!0,t&&process.nextTick(()=>this.emit("error",t)),process.nextTick(()=>this.emit("close")))};Hp.prototype.addTrailers=function(t){for(let e in t)this._lightMyRequest.trailers[e.toLowerCase().trim()]=t[e].toString().trim()};function uqt(t){t._lightMyRequest.headers===null&&Rwe(t),dqt(t);let e={raw:{res:t},headers:t._lightMyRequest.headers,statusCode:t.statusCode,statusMessage:t.statusMessage,trailers:{},get cookies(){return cqt.parse(this)}},r=Buffer.concat(t._lightMyRequest.payloadChunks);return e.rawPayload=r,e.payload=r.toString(),e.body=e.payload,e.trailers=t._lightMyRequest.trailers,e.json=function(){return JSON.parse(e.payload)},e.stream=function(){return aqt.from(t._lightMyRequest.payloadChunks)},e}function lqt(){return new iqt({write(t,e,r){setImmediate(r)}})}function dqt(t){let e=t._lightMyRequest.headers;for(let r of Object.keys(e)){let n=e[r];Array.isArray(n)?e[r]=n.map(s=>""+s):e[r]=""+n}}function Rwe(t){t._lightMyRequest.headers=Object.assign({},t.getHeaders()),["Date","Connection","Transfer-Encoding"].forEach(e=>{let r=new RegExp("\\r\\n"+e+": ([^\\r]*)\\r\\n"),n=t._header.match(r);n&&(t._lightMyRequest.headers[e.toLowerCase()]=n[1])})}Nwe.exports=Hp});var Pwe=E((F4r,ij)=>{"use strict";ij.exports=xs;ij.exports.default=xs;var fqt={type:"object",properties:{url:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},path:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},cookies:{type:"object",additionalProperties:!0},headers:{type:"object",additionalProperties:!0},query:{anyOf:[{type:"object",additionalProperties:!0},{type:"string"}]},simulate:{type:"object",properties:{end:{type:"boolean"},split:{type:"boolean"},error:{type:"boolean"},close:{type:"boolean"}}},authority:{type:"string"},remoteAddress:{type:"string"},method:{type:"string",enum:["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE","acl","bind","checkout","connect","copy","delete","get","head","link","lock","m-search","merge","mkactivity","mkcalendar","mkcol","move","notify","options","patch","post","propfind","proppatch","purge","put","rebind","report","search","source","subscribe","trace","unbind","unlink","unlock","unsubscribe"]},validate:{type:"boolean"}},additionalProperties:!0,oneOf:[{required:["url"]},{required:["path"]}]};function xs(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a,c=!1,u=null,l=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let x;if(t.url===void 0&&(x="url")){let v={instancePath:e,schemaPath:"#/oneOf/0/required",keyword:"required",params:{missingProperty:x},message:"must have required property '"+x+"'"};i===null?i=[v]:i.push(v),a++}}var f=l===a;f&&(c=!0,u=0);let d=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let x;if(t.path===void 0&&(x="path")){let v={instancePath:e,schemaPath:"#/oneOf/1/required",keyword:"required",params:{missingProperty:x},message:"must have required property '"+x+"'"};i===null?i=[v]:i.push(v),a++}}var f=d===a;if(f&&c?(c=!1,u=[u,1]):f&&(c=!0,u=1),c)a=o,i!==null&&(o?i.length=o:i=null);else{let x={instancePath:e,schemaPath:"#/oneOf",keyword:"oneOf",params:{passingSchemas:u},message:"must match exactly one schema in oneOf"};return i===null?i=[x]:i.push(x),a++,xs.errors=i,!1}if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){if(t.url!==void 0){let x=t.url,v=a,I=a,R=!1,w=null,N=a;if(typeof x!="string"){let B=typeof x,M;if(M===void 0)if(B=="number"||B=="boolean")M=""+x;else if(x===null)M="";else{let D={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[D]:i.push(D),a++}M!==void 0&&(x=M,t!==void 0&&(t.url=M))}var m=N===a;m&&(R=!0,w=0);let P=a;if(a===P)if(x&&typeof x=="object"&&!Array.isArray(x)){let B;if(x.pathname===void 0&&(B="pathname")){let M={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/required",keyword:"required",params:{missingProperty:B},message:"must have required property '"+B+"'"};i===null?i=[M]:i.push(M),a++}else{if(x.protocol!==void 0){let M=x.protocol,D=a;if(typeof M!="string"){let L=typeof M,Z;if(Z===void 0)if(L=="number"||L=="boolean")Z=""+M;else if(M===null)Z="";else{let W={instancePath:e+"/url/protocol",schemaPath:"#/properties/url/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[W]:i.push(W),a++}Z!==void 0&&(M=Z,x!==void 0&&(x.protocol=Z))}var p=D===a}else var p=!0;if(p){if(x.hostname!==void 0){let M=x.hostname,D=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let F={instancePath:e+"/url/hostname",schemaPath:"#/properties/url/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(M=W,x!==void 0&&(x.hostname=W))}var p=D===a}else var p=!0;if(p)if(x.pathname!==void 0){let M=x.pathname,D=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let F={instancePath:e+"/url/pathname",schemaPath:"#/properties/url/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(M=W,x!==void 0&&(x.pathname=W))}var p=D===a}else var p=!0}}}else{let B={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[B]:i.push(B),a++}var m=P===a;if(m&&R?(R=!1,w=[w,1]):m&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let B={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[B]:i.push(B),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.path!==void 0){let x=t.path,v=a,I=a,R=!1,w=null,N=a;if(typeof x!="string"){let M=typeof x,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+x;else if(x===null)D="";else{let L={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(x=D,t!==void 0&&(t.path=D))}var g=N===a;g&&(R=!0,w=0);let P=a;if(a===P)if(x&&typeof x=="object"&&!Array.isArray(x)){let M;if(x.pathname===void 0&&(M="pathname")){let D={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/required",keyword:"required",params:{missingProperty:M},message:"must have required property '"+M+"'"};i===null?i=[D]:i.push(D),a++}else{if(x.protocol!==void 0){let D=x.protocol,L=a;if(typeof D!="string"){let Z=typeof D,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+D;else if(D===null)W="";else{let F={instancePath:e+"/path/protocol",schemaPath:"#/properties/path/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(D=W,x!==void 0&&(x.protocol=W))}var A=L===a}else var A=!0;if(A){if(x.hostname!==void 0){let D=x.hostname,L=a;if(typeof D!="string"){let W=typeof D,F;if(F===void 0)if(W=="number"||W=="boolean")F=""+D;else if(D===null)F="";else{let K={instancePath:e+"/path/hostname",schemaPath:"#/properties/path/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[K]:i.push(K),a++}F!==void 0&&(D=F,x!==void 0&&(x.hostname=F))}var A=L===a}else var A=!0;if(A)if(x.pathname!==void 0){let D=x.pathname,L=a;if(typeof D!="string"){let W=typeof D,F;if(F===void 0)if(W=="number"||W=="boolean")F=""+D;else if(D===null)F="";else{let K={instancePath:e+"/path/pathname",schemaPath:"#/properties/path/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[K]:i.push(K),a++}F!==void 0&&(D=F,x!==void 0&&(x.pathname=F))}var A=L===a}else var A=!0}}}else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[M]:i.push(M),a++}var g=P===a;if(g&&R?(R=!1,w=[w,1]):g&&(R=!0,w=1),R)a=I,i!==null&&(I?i.length=I:i=null);else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.cookies!==void 0){let x=t.cookies,v=a;if(a===v&&!(x&&typeof x=="object"&&!Array.isArray(x)))return xs.errors=[{instancePath:e+"/cookies",schemaPath:"#/properties/cookies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.headers!==void 0){let x=t.headers,v=a;if(a===v&&!(x&&typeof x=="object"&&!Array.isArray(x)))return xs.errors=[{instancePath:e+"/headers",schemaPath:"#/properties/headers/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.query!==void 0){let x=t.query,v=a,I=a,R=!1,w=a;if(a===w&&!(x&&typeof x=="object"&&!Array.isArray(x))){let P={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/0/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[P]:i.push(P),a++}var b=w===a;if(R=R||b,!R){let P=a;if(typeof x!="string"){let M=typeof x,D;if(D===void 0)if(M=="number"||M=="boolean")D=""+x;else if(x===null)D="";else{let L={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[L]:i.push(L),a++}D!==void 0&&(x=D,t!==void 0&&(t.query=D))}var b=P===a;R=R||b}if(R)a=I,i!==null&&(I?i.length=I:i=null);else{let P={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[P]:i.push(P),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.simulate!==void 0){let x=t.simulate,v=a;if(a===v)if(x&&typeof x=="object"&&!Array.isArray(x)){if(x.end!==void 0){let R=x.end,w=a;if(typeof R!="boolean"){let N;if(N===void 0)if(R==="false"||R===0||R===null)N=!1;else if(R==="true"||R===1)N=!0;else return xs.errors=[{instancePath:e+"/simulate/end",schemaPath:"#/properties/simulate/properties/end/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;N!==void 0&&(R=N,x!==void 0&&(x.end=N))}var y=w===a}else var y=!0;if(y){if(x.split!==void 0){let R=x.split,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/split",schemaPath:"#/properties/simulate/properties/split/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.split=P))}var y=w===a}else var y=!0;if(y){if(x.error!==void 0){let R=x.error,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/error",schemaPath:"#/properties/simulate/properties/error/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.error=P))}var y=w===a}else var y=!0;if(y)if(x.close!==void 0){let R=x.close,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/close",schemaPath:"#/properties/simulate/properties/close/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.close=P))}var y=w===a}else var y=!0}}}else return xs.errors=[{instancePath:e+"/simulate",schemaPath:"#/properties/simulate/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.authority!==void 0){let x=t.authority,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/authority",schemaPath:"#/properties/authority/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.authority=w))}var h=v===a}else var h=!0;if(h){if(t.remoteAddress!==void 0){let x=t.remoteAddress,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/remoteAddress",schemaPath:"#/properties/remoteAddress/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.remoteAddress=w))}var h=v===a}else var h=!0;if(h){if(t.method!==void 0){let x=t.method,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.method=w))}if(!(x==="ACL"||x==="BIND"||x==="CHECKOUT"||x==="CONNECT"||x==="COPY"||x==="DELETE"||x==="GET"||x==="HEAD"||x==="LINK"||x==="LOCK"||x==="M-SEARCH"||x==="MERGE"||x==="MKACTIVITY"||x==="MKCALENDAR"||x==="MKCOL"||x==="MOVE"||x==="NOTIFY"||x==="OPTIONS"||x==="PATCH"||x==="POST"||x==="PROPFIND"||x==="PROPPATCH"||x==="PURGE"||x==="PUT"||x==="REBIND"||x==="REPORT"||x==="SEARCH"||x==="SOURCE"||x==="SUBSCRIBE"||x==="TRACE"||x==="UNBIND"||x==="UNLINK"||x==="UNLOCK"||x==="UNSUBSCRIBE"||x==="acl"||x==="bind"||x==="checkout"||x==="connect"||x==="copy"||x==="delete"||x==="get"||x==="head"||x==="link"||x==="lock"||x==="m-search"||x==="merge"||x==="mkactivity"||x==="mkcalendar"||x==="mkcol"||x==="move"||x==="notify"||x==="options"||x==="patch"||x==="post"||x==="propfind"||x==="proppatch"||x==="purge"||x==="put"||x==="rebind"||x==="report"||x==="search"||x==="source"||x==="subscribe"||x==="trace"||x==="unbind"||x==="unlink"||x==="unlock"||x==="unsubscribe"))return xs.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/enum",keyword:"enum",params:{allowedValues:fqt.properties.method.enum},message:"must be equal to one of the allowed values"}],!1;var h=v===a}else var h=!0;if(h)if(t.validate!==void 0){let x=t.validate,v=a;if(typeof x!="boolean"){let R;if(R===void 0)if(x==="false"||x===0||x===null)R=!1;else if(x==="true"||x===1)R=!0;else return xs.errors=[{instancePath:e+"/validate",schemaPath:"#/properties/validate/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;R!==void 0&&(x=R,t!==void 0&&(t.validate=R))}var h=v===a}else var h=!0}}}}}}}}}else return xs.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return xs.errors=i,a===0}});var Bwe=E((U4r,vS)=>{"use strict";var pqt=require("node:assert"),aj=Cwe(),VP=Owe(),YP="The dispatch function has already been invoked",kwe=Pwe();function oj(t,e,r){return r===void 0?new SS(t,e):zP(t,e,r)}function Dwe(t,e,r,n){return r.once("error",function(s){this.destroyed&&n.destroy(s)}),r.once("close",function(){this.destroyed&&!this._error&&n.destroy()}),r.prepare(()=>t.call(e,r,n))}function zP(t,e,r){if(e=typeof e=="string"?{url:e}:e,e.validate!==!1&&(pqt(typeof t=="function","dispatchFunc should be a function"),!kwe(e)))throw new Error(kwe.errors.map(a=>a.message));let n=e.server||{},s=e.Request?aj.CustomRequest:aj;if(t.request&&t.request.app===t&&(Object.setPrototypeOf(Object.getPrototypeOf(t.request),s.prototype),Object.setPrototypeOf(Object.getPrototypeOf(t.response),VP.prototype)),typeof r=="function"){let i=new s(e),a=new VP(i,r);return Dwe(t,n,i,a)}else return new Promise((i,a)=>{let o=new s(e),c=new VP(o,i,a);Dwe(t,n,o,c)})}function SS(t,e){typeof e=="string"?this.option={url:e}:this.option=Object.assign({},e),this.dispatch=t,this._hasInvoked=!1,this._promise=null,this.option.autoStart!==!1&&process.nextTick(()=>{this._hasInvoked||this.end()})}var mqt=["delete","get","head","options","patch","post","put","trace"];mqt.forEach(t=>{SS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(YP);return this.option.url=e,this.option.method=t.toUpperCase(),this}});var hqt=["body","cookies","headers","payload","query"];hqt.forEach(t=>{SS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(YP);return this.option[t]=e,this}});SS.prototype.end=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(YP);if(this._hasInvoked=!0,typeof t=="function")zP(this.dispatch,this.option,t);else return this._promise=zP(this.dispatch,this.option),this._promise};Object.getOwnPropertyNames(Promise.prototype).forEach(t=>{t!=="constructor"&&(SS.prototype[t]=function(...e){if(!this._promise){if(this._hasInvoked===!0)throw new Error(YP);this._hasInvoked=!0,this._promise=zP(this.dispatch,this.option)}return this._promise[t](...e)})});function gqt(t){return t instanceof aj||t instanceof VP||t&&t.constructor&&t.constructor.name==="_CustomLMRRequest"}vS.exports=oj;vS.exports.default=oj;vS.exports.inject=oj;vS.exports.isInjection=gqt});var Ywe=E((q4r,ek)=>{"use strict";var Aqt="4.26.0",yqt=ffe(),cj=require("node:http"),IS,{kAvvioBoot:CS,kChildren:uj,kServerBindings:Lwe,kBodyLimit:xqt,kRoutePrefix:Mwe,kLogLevel:bqt,kLogSerializers:Eqt,kHooks:lj,kSchemaController:Qp,kRequestAcceptVersion:_qt,kReplySerializerDefault:Wwe,kContentTypeParser:Sqt,kReply:vqt,kRequest:Iqt,kFourOhFour:Cqt,kState:ps,kOptions:dj,kPluginNameChain:TS,kSchemaErrorFormatter:fj,kErrorHandler:JP,kKeepAliveConnections:pj,kChildLoggerFactory:mj,kGenReqId:hj}=Gs(),{createServer:Tqt,compileValidateHTTPVersion:wqt}=Bfe(),wS=EN(),XP=WN(),Rqt=$N(),{supportedMethods:Nqt}=B$(),nx=F$(),uh=z$(),$we=x9(),{Hooks:Oqt,hookRunnerApplication:Fwe,supportedHooks:gj}=cp(),{createLogger:Pqt,createChildLogger:Uwe,defaultChildLoggerFactory:kqt}=o1(),qwe=I9(),{getGenReqId:jwe,reqIdGenFactory:Hwe}=vP(),{buildRouting:Dqt,validateBodyLimitOption:Bqt}=zTe(),Lqt=rwe(),zwe=iwe(),Mqt=mwe(),{FSTDEP009:Wqt}=od(),$qt=gwe(),{appendStackTrace:Fqt,AVVIO_ERRORS_MAP:Qwe,...lh}=Ci(),{defaultInitOptions:Ha}=zwe,{FST_ERR_ASYNC_CONSTRAINT:Uqt,FST_ERR_BAD_URL:qqt,FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:jqt,FST_ERR_OPTIONS_NOT_OBJ:Hqt,FST_ERR_QSP_NOT_FN:Qqt,FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:Gqt,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:Kqt,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:Vqt,FST_ERR_VERSION_CONSTRAINT_NOT_STR:zqt,FST_ERR_INSTANCE_ALREADY_LISTENING:Yqt,FST_ERR_REOPENED_CLOSE_SERVER:Jqt,FST_ERR_ROUTE_REWRITE_NOT_STR:Xqt,FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:Gwe}=lh,{buildErrorHandler:Kwe}=F1();function Zqt(t){let e={};return["errorHandler","logLevel","logSerializers"].concat(gj).forEach(n=>{e[n]=t.store[n]}),Object.assign({},e)}function ZP(t){if(t=t||{},typeof t!="object")throw new Hqt;if(t.querystringParser&&typeof t.querystringParser!="function")throw new Qqt(typeof t.querystringParser);if(t.schemaController&&t.schemaController.bucket&&typeof t.schemaController.bucket!="function")throw new Gqt(typeof t.schemaController.bucket);Bqt(t.bodyLimit);let e=t.requestIdHeader===!1?!1:(t.requestIdHeader||Ha.requestIdHeader).toLowerCase(),r=Hwe(e,t.genReqId),n=t.requestIdLogLabel||"reqId",s=t.bodyLimit||Ha.bodyLimit,i=t.disableRequestLogging||!1,a=Object.assign({customOptions:{},plugins:[]},t.ajv),o=t.frameworkErrors;if(!a.customOptions||Object.prototype.toString.call(a.customOptions)!=="[object Object]")throw new Kqt(typeof a.customOptions);if(!a.plugins||!Array.isArray(a.plugins))throw new Vqt(typeof a.plugins);let{logger:c,hasLogger:u}=Pqt(t);t.connectionTimeout=t.connectionTimeout||Ha.connectionTimeout,t.keepAliveTimeout=t.keepAliveTimeout||Ha.keepAliveTimeout,t.maxRequestsPerSocket=t.maxRequestsPerSocket||Ha.maxRequestsPerSocket,t.requestTimeout=t.requestTimeout||Ha.requestTimeout,t.logger=c,t.requestIdHeader=e,t.requestIdLogLabel=n,t.disableRequestLogging=i,t.ajv=a,t.clientErrorHandler=t.clientErrorHandler||F;let l=zwe(t);t.exposeHeadRoutes=l.exposeHeadRoutes;let d=t.constraints;t.versioning&&(Wqt(),d={...d,version:{name:"version",mustMatchWhenDerived:!0,storage:t.versioning.storage,deriveConstraint:t.versioning.deriveVersion,validate(q){if(typeof q!="string")throw new zqt}}});let f=Dqt({config:{defaultRoute:K,onBadUrl:j,constraints:d,ignoreTrailingSlash:t.ignoreTrailingSlash||Ha.ignoreTrailingSlash,ignoreDuplicateSlashes:t.ignoreDuplicateSlashes||Ha.ignoreDuplicateSlashes,maxParamLength:t.maxParamLength||Ha.maxParamLength,caseSensitive:t.caseSensitive,allowUnsafeRegex:t.allowUnsafeRegex||Ha.allowUnsafeRegex,buildPrettyMeta:Zqt,querystringParser:t.querystringParser,useSemicolonDelimiter:t.useSemicolonDelimiter??Ha.useSemicolonDelimiter}}),p=Lqt(t),m=G(f,t);t.http2SessionTimeout=l.http2SessionTimeout;let{server:h,listen:A}=Tqt(t,m),g=typeof h.closeAllConnections=="function",b=typeof h.closeIdleConnections=="function",y=t.forceCloseConnections;if(y==="idle"&&!b)throw new jqt;typeof y!="boolean"&&(y=b?"idle":!1);let x=!g&&y===!0?new Set:$qt(),v=wS.setupResponseListeners,I=$we.buildSchemaController(null,t.schemaController),R={[ps]:{listening:!1,closing:!1,started:!1,ready:!1,booting:!1,readyPromise:null},[pj]:x,[dj]:t,[uj]:[],[Lwe]:[],[xqt]:s,[Mwe]:"",[bqt]:"",[Eqt]:null,[lj]:new Oqt,[Qp]:I,[fj]:null,[JP]:Kwe(),[mj]:kqt,[Wwe]:null,[Sqt]:new uh(s,t.onProtoPoisoning||Ha.onProtoPoisoning,t.onConstructorPoisoning||Ha.onConstructorPoisoning),[vqt]:wS.buildReply(wS),[Iqt]:XP.buildRequest(XP,t.trustProxy),[Cqt]:p,[qwe.kRegisteredPlugins]:[],[TS]:["fastify"],[CS]:null,[hj]:r,routing:m,getDefaultRoute:f.getDefaultRoute.bind(f),setDefaultRoute:f.setDefaultRoute.bind(f),delete:function(H,ee,ne){return f.prepareRoute.call(this,{method:"DELETE",url:H,options:ee,handler:ne})},get:function(H,ee,ne){return f.prepareRoute.call(this,{method:"GET",url:H,options:ee,handler:ne})},head:function(H,ee,ne){return f.prepareRoute.call(this,{method:"HEAD",url:H,options:ee,handler:ne})},patch:function(H,ee,ne){return f.prepareRoute.call(this,{method:"PATCH",url:H,options:ee,handler:ne})},post:function(H,ee,ne){return f.prepareRoute.call(this,{method:"POST",url:H,options:ee,handler:ne})},put:function(H,ee,ne){return f.prepareRoute.call(this,{method:"PUT",url:H,options:ee,handler:ne})},options:function(H,ee,ne){return f.prepareRoute.call(this,{method:"OPTIONS",url:H,options:ee,handler:ne})},all:function(H,ee,ne){return f.prepareRoute.call(this,{method:Nqt,url:H,options:ee,handler:ne})},route:function(H){return f.route.call(this,{options:H})},hasRoute:function(H){return f.hasRoute.call(this,{options:H})},findRoute:function(H){return f.findRoute(H)},log:c,withTypeProvider:L,addHook:Z,addSchema:W,getSchema:I.getSchema.bind(I),getSchemas:I.getSchemas.bind(I),setValidatorCompiler:oe,setSerializerCompiler:Ie,setSchemaController:we,setReplySerializer:qe,setSchemaErrorFormatter:ue,setGenReqId:V,addContentTypeParser:uh.helpers.addContentTypeParser,hasContentTypeParser:uh.helpers.hasContentTypeParser,getDefaultJsonParser:uh.defaultParsers.getDefaultJsonParser,defaultTextParser:uh.defaultParsers.defaultTextParser,removeContentTypeParser:uh.helpers.removeContentTypeParser,removeAllContentTypeParsers:uh.helpers.removeAllContentTypeParsers,register:null,after:null,ready:null,onClose:null,close:null,printPlugins:null,hasPlugin:function(q){return this[qwe.kRegisteredPlugins].includes(q)||this[TS].includes(q)},listen:A,server:h,addresses:function(){let q=this[Lwe].map(H=>H.address());return q.push(this.server.address()),q.filter(H=>H)},decorate:nx.add,hasDecorator:nx.exist,decorateReply:nx.decorateReply,decorateRequest:nx.decorateRequest,hasRequestDecorator:nx.existRequest,hasReplyDecorator:nx.existReply,inject:M,printRoutes:U,setNotFoundHandler:se,setErrorHandler:Fe,setChildLoggerFactory:_e,initialConfig:l,addConstraintStrategy:f.addConstraintStrategy.bind(f),hasConstraintStrategy:f.hasConstraintStrategy.bind(f)};Object.defineProperties(R,{listeningOrigin:{get(){let q=this.addresses().slice(-1).pop();if(typeof q=="string")return q;let H=q.family==="IPv6"?`[${q.address}]`:q.address;return`${this[dj].https?"https":"http"}://${H}:${q.port}`}},pluginName:{configurable:!0,get(){return this[TS].length>1?this[TS].join(" -> "):this[TS][0]}},prefix:{configurable:!0,get(){return this[Mwe]}},validatorCompiler:{configurable:!0,get(){return this[Qp].getValidatorCompiler()}},serializerCompiler:{configurable:!0,get(){return this[Qp].getSerializerCompiler()}},childLoggerFactory:{configurable:!0,get(){return this[mj]}},version:{configurable:!0,get(){return Aqt}},errorHandler:{configurable:!0,get(){return this[JP].func}},genReqId:{configurable:!0,get(){return this[hj]}}}),t.schemaErrorFormatter&&(Vwe(t.schemaErrorFormatter),R[fj]=t.schemaErrorFormatter.bind(R));let w=Number(t.pluginTimeout),N=yqt(R,{autostart:!1,timeout:isNaN(w)===!1?w:Ha.pluginTimeout,expose:{use:"register"}});N.override=Mqt,N.on("start",()=>R[ps].started=!0),R[CS]=R.ready,R.ready=D,R.printPlugins=N.prettyPrint.bind(N),N.once("preReady",()=>{R.onClose((q,H)=>{R[ps].closing=!0,f.closeRoutes(),Fwe("preClose",R[CS],R,function(){if(R[ps].listening){if(y==="idle")q.server.closeIdleConnections();else if(g&&y)q.server.closeAllConnections();else if(y===!0)for(let ee of R[pj])ee.destroy(),R[pj].delete(ee)}!t.serverFactory||R[ps].listening?q.server.close(function(ee){ee&&ee.code!=="ERR_SERVER_NOT_RUNNING"?H(null):H()}):process.nextTick(H,null)})})});let P=new Rqt({server:R,config:{}});R.setNotFoundHandler(),p.arrange404(R),f.setup(t,{avvio:N,fourOhFour:p,logger:c,hasLogger:u,setupResponseListeners:v,throwIfAlreadyStarted:B,validateHTTPVersion:wqt(t),keepAliveConnections:x}),h.on("clientError",t.clientErrorHandler.bind(R));try{let H=require("node:diagnostics_channel").channel("fastify.initialization");H.hasSubscribers&&H.publish({fastify:R})}catch{}return"asyncDispose"in Symbol&&(R[Symbol.asyncDispose]=function(){return R.close()}),R;function B(q){if(R[ps].started)throw new Yqt(q)}function M(q,H){if(IS===void 0&&(IS=Bwe()),R[ps].started){if(R[ps].closing){let ee=new Jqt;if(H){H(ee);return}else return Promise.reject(ee)}return IS(m,q,H)}if(H)this.ready(ee=>{ee?H(ee,null):IS(m,q,H)});else return IS((ee,ne)=>{this.ready(function(re){if(re){ne.emit("error",re);return}m(ee,ne)})},q)}function D(q){if(this[ps].readyPromise!==null){if(q!=null){this[ps].readyPromise.then(()=>q(null,R),q);return}return this[ps].readyPromise}let H,ee;if(process.nextTick(ne),this[ps].readyPromise=new Promise(function(X,ie){H=X,ee=ie}),q)this[ps].readyPromise.then(()=>q(null,R),q);else return this[ps].readyPromise;function ne(){R[CS]((X,ie)=>{X||R[ps].started||R[ps].ready||R[ps].booting?re(X):(R[ps].booting=!0,Fwe("onReady",R[CS],R,re)),ie()})}function re(X){if(X=X!=null&&Qwe[X.code]!=null?Fqt(X,new Qwe[X.code](X.message)):X,X)return ee(X);H(R),R[ps].booting=!1,R[ps].ready=!0,R[ps].promise=null}}function L(){return this}function Z(q,H){if(B('Cannot call "addHook"!'),H==null)throw new lh.FST_ERR_HOOK_INVALID_HANDLER(q,H);if(q==="onSend"||q==="preSerialization"||q==="onError"||q==="preParsing"){if(H.constructor.name==="AsyncFunction"&&H.length===4)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onReady"||q==="onListen"){if(H.constructor.name==="AsyncFunction"&&H.length!==0)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onRequestAbort"){if(H.constructor.name==="AsyncFunction"&&H.length!==1)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(H.constructor.name==="AsyncFunction"&&H.length===3)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER;return q==="onClose"?this.onClose(H):q==="onReady"||q==="onListen"||q==="onRoute"?this[lj].add(q,H):this.after((ne,re)=>{ee.call(this,q,H),re(ne)}),this;function ee(ne,re){this[lj].add(ne,re),this[uj].forEach(X=>ee.call(X,ne,re))}}function W(q){return B('Cannot call "addSchema"!'),this[Qp].add(q),this[uj].forEach(H=>H.addSchema(q)),this}function F(q,H){if(q.code==="ECONNRESET"||H.destroyed)return;let ee,ne,re,X;q.code==="ERR_HTTP_REQUEST_TIMEOUT"?(ne="408",re=cj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Timeout","statusCode":408}`,X="timeout"):q.code==="HPE_HEADER_OVERFLOW"?(ne="431",re=cj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Exceeded maximum allowed HTTP header size","statusCode":431}`,X="header_overflow"):(ne="400",re=cj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Error","statusCode":400}`,X="error"),this.log.trace({err:q},`client ${X}`),H.writable&&H.write(`HTTP/1.1 ${ne} ${re}\r +`,yield rx.encode(l),u.stream?yield*u.stream():yield u,yield i}yield rx.encode(`--${e}--`)}return{stream:G7t.from(a()),contentType:`multipart/form-data; boundary=${e}`}}Zq.exports.isFormDataLike=V7t;Zq.exports.formDataToStream=z7t});var Rwe=E((j4r,zP)=>{"use strict";var{Readable:Twe,addAbortSignal:K7t}=require("node:stream"),tj=require("node:util"),Y7t=_we(),J7t=require("node:assert"),{createDeprecation:X7t}=V6(),Z7t=Cwe(),{isFormDataLike:e9t,formDataToStream:t9t}=Iwe(),{EventEmitter:r9t}=require("node:events"),n9t=X7t({name:"FastifyDeprecationLightMyRequest",code:"FST_LIGHTMYREQUEST_DEP01",message:'You are accessing "request.connection", use "request.socket" instead.'});function s9t(t){return t.port?t.host:t.hostname+(t.protocol==="https:"?":443":":80")}var ej=class extends r9t{constructor(e){super(),this.remoteAddress=e}};function wwe(t){return new e(this);function e(r){cl.call(r,{...t,Request:void 0}),Object.assign(this,r);for(let n of Object.keys(cl.prototype))this.constructor.prototype[n]=cl.prototype[n];return tj.inherits(this.constructor,t.Request),this}}function cl(t){Twe.call(this,{autoDestroy:!1});let e=Z7t(t.url||t.path,t.query);this.url=e.pathname+e.search,this.aborted=!1,this.httpVersionMajor=1,this.httpVersionMinor=1,this.httpVersion="1.1",this.method=t.method?t.method.toUpperCase():"GET",this.headers={},this.rawHeaders=[];let r=t.headers||{};for(let a in r){let o=a.toLowerCase();if((o==="user-agent"||o==="content-type")&&r[a]===void 0){this.headers[o]=void 0;continue}let c=r[a];J7t(c!==void 0,'invalid value "undefined" for header '+a),this.headers[o]=""+c}if("user-agent"in this.headers||(this.headers["user-agent"]="lightMyRequest"),this.headers.host=this.headers.host||t.authority||s9t(e),t.cookies){let{cookies:a}=t,o=Object.keys(a).map(c=>Y7t.serialize(c,a[c]));this.headers.cookie&&o.unshift(this.headers.cookie),this.headers.cookie=o.join("; ")}this.socket=new ej(t.remoteAddress||"127.0.0.1"),Object.defineProperty(this,"connection",{get(){return n9t(),this.socket},configurable:!0});let n=t.payload||t.body||null,s=n&&typeof n.resume=="function";if(e9t(n)){let a=t9t(n);n=a.stream,s=!0,this.headers["content-type"]=a.contentType}n&&typeof n!="string"&&!s&&!Buffer.isBuffer(n)&&(n=JSON.stringify(n),"content-type"in this.headers||(this.headers["content-type"]="application/json")),n&&!s&&!Object.prototype.hasOwnProperty.call(this.headers,"content-length")&&(this.headers["content-length"]=(Buffer.isBuffer(n)?n.length:Buffer.byteLength(n)).toString());for(let a of Object.keys(this.headers))this.rawHeaders.push(a,this.headers[a]);this._lightMyRequest={payload:n,isDone:!1,simulate:t.simulate||{}};let i=t.signal;return i&&K7t(i,this),this}tj.inherits(cl,Twe);tj.inherits(wwe,cl);cl.prototype.prepare=function(t){let e=this._lightMyRequest.payload;if(!e||typeof e.resume!="function")return t();let r=[];e.on("data",n=>r.push(Buffer.from(n))),e.on("end",()=>{let n=Buffer.concat(r);return this.headers["content-length"]=this.headers["content-length"]||""+n.length,this._lightMyRequest.payload=n,t()}),e.resume()};cl.prototype._read=function(t){setImmediate(()=>{if(this._lightMyRequest.isDone){this._lightMyRequest.simulate.end!==!1&&this.push(null);return}this._lightMyRequest.isDone=!0,this._lightMyRequest.payload&&(this._lightMyRequest.simulate.split?(this.push(this._lightMyRequest.payload.slice(0,1)),this.push(this._lightMyRequest.payload.slice(1))):this.push(this._lightMyRequest.payload)),this._lightMyRequest.simulate.error&&this.emit("error",new Error("Simulated")),this._lightMyRequest.simulate.close&&this.emit("close"),this._lightMyRequest.simulate.end!==!1&&this.push(null)})};cl.prototype.destroy=function(t){this.destroyed||this._lightMyRequest.isDone||(this.destroyed=!0,t&&(this._error=!0,process.nextTick(()=>this.emit("error",t))),process.nextTick(()=>this.emit("close")))};zP.exports=cl;zP.exports.Request=cl;zP.exports.CustomRequest=wwe});var Owe=E((H4r,_S)=>{"use strict";var KP={decodeValues:!0,map:!1,silent:!1};function rj(t){return typeof t!="string"||t in{}}function nj(){return Object.create(null)}function sj(t){return typeof t=="string"&&!!t.trim()}function ij(t,e){var r=t.split(";").filter(sj),n=r.shift(),s=i9t(n),i=s.name,a=s.value;if(e=e?Object.assign({},KP,e):KP,rj(i))return null;try{a=e.decodeValues?decodeURIComponent(a):a}catch(c){console.error("set-cookie-parser: failed to decode cookie value. Set options.decodeValues=false to disable decoding.",c)}var o=nj();return o.name=i,o.value=a,r.forEach(function(c){var u=c.split("="),l=u.shift().trimLeft().toLowerCase();if(!rj(l)){var d=u.join("=");if(l==="expires")o.expires=new Date(d);else if(l==="max-age"){var f=parseInt(d,10);Number.isNaN(f)||(o.maxAge=f)}else l==="secure"?o.secure=!0:l==="httponly"?o.httpOnly=!0:l==="samesite"?o.sameSite=d:l==="partitioned"?o.partitioned=!0:l&&(o[l]=d)}}),o}function i9t(t){var e="",r="",n=t.split("=");return n.length>1?(e=n.shift(),r=n.join("=")):r=t,{name:e,value:r}}function Nwe(t,e){if(e=e?Object.assign({},KP,e):KP,!t)return e.map?nj():[];if(t.headers)if(typeof t.headers.getSetCookie=="function")t=t.headers.getSetCookie();else if(t.headers["set-cookie"])t=t.headers["set-cookie"];else{var r=t.headers[Object.keys(t.headers).find(function(s){return s.toLowerCase()==="set-cookie"})];!r&&t.headers.cookie&&!e.silent&&console.warn("Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."),t=r}if(Array.isArray(t)||(t=[t]),e.map){var n=nj();return t.filter(sj).reduce(function(s,i){var a=ij(i,e);return a&&!rj(a.name)&&(s[a.name]=a),s},n)}else return t.filter(sj).map(function(s){return ij(s,e)}).filter(Boolean)}function a9t(t){if(Array.isArray(t))return t;if(typeof t!="string")return[];var e=[],r=0,n,s,i,a,o;function c(){for(;r=t.length)&&e.push(t.substring(n,t.length))}return e}_S.exports=Nwe;_S.exports.parse=Nwe;_S.exports.parseString=ij;_S.exports.splitCookiesString=a9t});var kwe=E((Q4r,Dwe)=>{"use strict";var SS=require("node:http"),{Writable:o9t,Readable:c9t}=require("node:stream"),u9t=require("node:util"),l9t=Owe();function Qp(t,e,r){SS.ServerResponse.call(this,t),this._lightMyRequest={headers:null,trailers:{},payloadChunks:[]},this.setHeader("foo","bar"),this.removeHeader("foo"),this.assignSocket(f9t()),this._promiseCallback=typeof r=="function";let n=!1,s=a=>{if(n=!0,this._promiseCallback)return process.nextTick(()=>e(a));process.nextTick(()=>e(null,a))},i=a=>{if(!n){if(n=!0,this._promiseCallback)return process.nextTick(()=>r(a));process.nextTick(()=>e(a,null))}};this.once("finish",()=>{let a=d9t(this);a.raw.req=t,s(a)}),this.connection.once("error",i),this.once("error",i),this.once("close",i)}u9t.inherits(Qp,SS.ServerResponse);Qp.prototype.setTimeout=function(t,e){return this.timeoutHandle=setTimeout(()=>{this.emit("timeout")},t),this.on("timeout",e),this};Qp.prototype.writeHead=function(){let t=SS.ServerResponse.prototype.writeHead.apply(this,arguments);return Pwe(this),t};Qp.prototype.write=function(t,e,r){return this.timeoutHandle&&clearTimeout(this.timeoutHandle),SS.ServerResponse.prototype.write.call(this,t,e,r),this._lightMyRequest.payloadChunks.push(Buffer.from(t,e)),!0};Qp.prototype.end=function(t,e,r){t&&this.write(t,e),SS.ServerResponse.prototype.end.call(this,r),this.emit("finish"),this.destroy()};Qp.prototype.destroy=function(t){this.destroyed||(this.destroyed=!0,t&&process.nextTick(()=>this.emit("error",t)),process.nextTick(()=>this.emit("close")))};Qp.prototype.addTrailers=function(t){for(let e in t)this._lightMyRequest.trailers[e.toLowerCase().trim()]=t[e].toString().trim()};function d9t(t){t._lightMyRequest.headers===null&&Pwe(t),p9t(t);let e={raw:{res:t},headers:t._lightMyRequest.headers,statusCode:t.statusCode,statusMessage:t.statusMessage,trailers:{},get cookies(){return l9t.parse(this)}},r=Buffer.concat(t._lightMyRequest.payloadChunks);return e.rawPayload=r,e.payload=r.toString(),e.body=e.payload,e.trailers=t._lightMyRequest.trailers,e.json=function(){return JSON.parse(e.payload)},e.stream=function(){return c9t.from(t._lightMyRequest.payloadChunks)},e}function f9t(){return new o9t({write(t,e,r){setImmediate(r)}})}function p9t(t){let e=t._lightMyRequest.headers;for(let r of Object.keys(e)){let n=e[r];Array.isArray(n)?e[r]=n.map(s=>""+s):e[r]=""+n}}function Pwe(t){t._lightMyRequest.headers=Object.assign({},t.getHeaders()),["Date","Connection","Transfer-Encoding"].forEach(e=>{let r=new RegExp("\\r\\n"+e+": ([^\\r]*)\\r\\n"),n=t._header.match(r);n&&(t._lightMyRequest.headers[e.toLowerCase()]=n[1])})}Dwe.exports=Qp});var Lwe=E((G4r,aj)=>{"use strict";aj.exports=xs;aj.exports.default=xs;var m9t={type:"object",properties:{url:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},path:{oneOf:[{type:"string"},{type:"object",properties:{protocol:{type:"string"},hostname:{type:"string"},pathname:{type:"string"}},additionalProperties:!0,required:["pathname"]}]},cookies:{type:"object",additionalProperties:!0},headers:{type:"object",additionalProperties:!0},query:{anyOf:[{type:"object",additionalProperties:!0},{type:"string"}]},simulate:{type:"object",properties:{end:{type:"boolean"},split:{type:"boolean"},error:{type:"boolean"},close:{type:"boolean"}}},authority:{type:"string"},remoteAddress:{type:"string"},method:{type:"string",enum:["ACL","BIND","CHECKOUT","CONNECT","COPY","DELETE","GET","HEAD","LINK","LOCK","M-SEARCH","MERGE","MKACTIVITY","MKCALENDAR","MKCOL","MOVE","NOTIFY","OPTIONS","PATCH","POST","PROPFIND","PROPPATCH","PURGE","PUT","REBIND","REPORT","SEARCH","SOURCE","SUBSCRIBE","TRACE","UNBIND","UNLINK","UNLOCK","UNSUBSCRIBE","acl","bind","checkout","connect","copy","delete","get","head","link","lock","m-search","merge","mkactivity","mkcalendar","mkcol","move","notify","options","patch","post","propfind","proppatch","purge","put","rebind","report","search","source","subscribe","trace","unbind","unlink","unlock","unsubscribe"]},validate:{type:"boolean"}},additionalProperties:!0,oneOf:[{required:["url"]},{required:["path"]}]};function xs(t,{instancePath:e="",parentData:r,parentDataProperty:n,rootData:s=t}={}){let i=null,a=0,o=a,c=!1,u=null,l=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let x;if(t.url===void 0&&(x="url")){let v={instancePath:e,schemaPath:"#/oneOf/0/required",keyword:"required",params:{missingProperty:x},message:"must have required property '"+x+"'"};i===null?i=[v]:i.push(v),a++}}var f=l===a;f&&(c=!0,u=0);let d=a;if(t&&typeof t=="object"&&!Array.isArray(t)){let x;if(t.path===void 0&&(x="path")){let v={instancePath:e,schemaPath:"#/oneOf/1/required",keyword:"required",params:{missingProperty:x},message:"must have required property '"+x+"'"};i===null?i=[v]:i.push(v),a++}}var f=d===a;if(f&&c?(c=!1,u=[u,1]):f&&(c=!0,u=1),c)a=o,i!==null&&(o?i.length=o:i=null);else{let x={instancePath:e,schemaPath:"#/oneOf",keyword:"oneOf",params:{passingSchemas:u},message:"must match exactly one schema in oneOf"};return i===null?i=[x]:i.push(x),a++,xs.errors=i,!1}if(a===0)if(t&&typeof t=="object"&&!Array.isArray(t)){if(t.url!==void 0){let x=t.url,v=a,C=a,R=!1,w=null,N=a;if(typeof x!="string"){let L=typeof x,M;if(M===void 0)if(L=="number"||L=="boolean")M=""+x;else if(x===null)M="";else{let k={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[k]:i.push(k),a++}M!==void 0&&(x=M,t!==void 0&&(t.url=M))}var m=N===a;m&&(R=!0,w=0);let P=a;if(a===P)if(x&&typeof x=="object"&&!Array.isArray(x)){let L;if(x.pathname===void 0&&(L="pathname")){let M={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/required",keyword:"required",params:{missingProperty:L},message:"must have required property '"+L+"'"};i===null?i=[M]:i.push(M),a++}else{if(x.protocol!==void 0){let M=x.protocol,k=a;if(typeof M!="string"){let B=typeof M,Z;if(Z===void 0)if(B=="number"||B=="boolean")Z=""+M;else if(M===null)Z="";else{let W={instancePath:e+"/url/protocol",schemaPath:"#/properties/url/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[W]:i.push(W),a++}Z!==void 0&&(M=Z,x!==void 0&&(x.protocol=Z))}var p=k===a}else var p=!0;if(p){if(x.hostname!==void 0){let M=x.hostname,k=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let F={instancePath:e+"/url/hostname",schemaPath:"#/properties/url/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(M=W,x!==void 0&&(x.hostname=W))}var p=k===a}else var p=!0;if(p)if(x.pathname!==void 0){let M=x.pathname,k=a;if(typeof M!="string"){let Z=typeof M,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+M;else if(M===null)W="";else{let F={instancePath:e+"/url/pathname",schemaPath:"#/properties/url/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(M=W,x!==void 0&&(x.pathname=W))}var p=k===a}else var p=!0}}}else{let L={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[L]:i.push(L),a++}var m=P===a;if(m&&R?(R=!1,w=[w,1]):m&&(R=!0,w=1),R)a=C,i!==null&&(C?i.length=C:i=null);else{let L={instancePath:e+"/url",schemaPath:"#/properties/url/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[L]:i.push(L),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.path!==void 0){let x=t.path,v=a,C=a,R=!1,w=null,N=a;if(typeof x!="string"){let M=typeof x,k;if(k===void 0)if(M=="number"||M=="boolean")k=""+x;else if(x===null)k="";else{let B={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/0/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[B]:i.push(B),a++}k!==void 0&&(x=k,t!==void 0&&(t.path=k))}var g=N===a;g&&(R=!0,w=0);let P=a;if(a===P)if(x&&typeof x=="object"&&!Array.isArray(x)){let M;if(x.pathname===void 0&&(M="pathname")){let k={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/required",keyword:"required",params:{missingProperty:M},message:"must have required property '"+M+"'"};i===null?i=[k]:i.push(k),a++}else{if(x.protocol!==void 0){let k=x.protocol,B=a;if(typeof k!="string"){let Z=typeof k,W;if(W===void 0)if(Z=="number"||Z=="boolean")W=""+k;else if(k===null)W="";else{let F={instancePath:e+"/path/protocol",schemaPath:"#/properties/path/oneOf/1/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[F]:i.push(F),a++}W!==void 0&&(k=W,x!==void 0&&(x.protocol=W))}var A=B===a}else var A=!0;if(A){if(x.hostname!==void 0){let k=x.hostname,B=a;if(typeof k!="string"){let W=typeof k,F;if(F===void 0)if(W=="number"||W=="boolean")F=""+k;else if(k===null)F="";else{let V={instancePath:e+"/path/hostname",schemaPath:"#/properties/path/oneOf/1/properties/hostname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[V]:i.push(V),a++}F!==void 0&&(k=F,x!==void 0&&(x.hostname=F))}var A=B===a}else var A=!0;if(A)if(x.pathname!==void 0){let k=x.pathname,B=a;if(typeof k!="string"){let W=typeof k,F;if(F===void 0)if(W=="number"||W=="boolean")F=""+k;else if(k===null)F="";else{let V={instancePath:e+"/path/pathname",schemaPath:"#/properties/path/oneOf/1/properties/pathname/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[V]:i.push(V),a++}F!==void 0&&(k=F,x!==void 0&&(x.pathname=F))}var A=B===a}else var A=!0}}}else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf/1/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[M]:i.push(M),a++}var g=P===a;if(g&&R?(R=!1,w=[w,1]):g&&(R=!0,w=1),R)a=C,i!==null&&(C?i.length=C:i=null);else{let M={instancePath:e+"/path",schemaPath:"#/properties/path/oneOf",keyword:"oneOf",params:{passingSchemas:w},message:"must match exactly one schema in oneOf"};return i===null?i=[M]:i.push(M),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.cookies!==void 0){let x=t.cookies,v=a;if(a===v&&!(x&&typeof x=="object"&&!Array.isArray(x)))return xs.errors=[{instancePath:e+"/cookies",schemaPath:"#/properties/cookies/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.headers!==void 0){let x=t.headers,v=a;if(a===v&&!(x&&typeof x=="object"&&!Array.isArray(x)))return xs.errors=[{instancePath:e+"/headers",schemaPath:"#/properties/headers/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.query!==void 0){let x=t.query,v=a,C=a,R=!1,w=a;if(a===w&&!(x&&typeof x=="object"&&!Array.isArray(x))){let P={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/0/type",keyword:"type",params:{type:"object"},message:"must be object"};i===null?i=[P]:i.push(P),a++}var b=w===a;if(R=R||b,!R){let P=a;if(typeof x!="string"){let M=typeof x,k;if(k===void 0)if(M=="number"||M=="boolean")k=""+x;else if(x===null)k="";else{let B={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf/1/type",keyword:"type",params:{type:"string"},message:"must be string"};i===null?i=[B]:i.push(B),a++}k!==void 0&&(x=k,t!==void 0&&(t.query=k))}var b=P===a;R=R||b}if(R)a=C,i!==null&&(C?i.length=C:i=null);else{let P={instancePath:e+"/query",schemaPath:"#/properties/query/anyOf",keyword:"anyOf",params:{},message:"must match a schema in anyOf"};return i===null?i=[P]:i.push(P),a++,xs.errors=i,!1}var h=v===a}else var h=!0;if(h){if(t.simulate!==void 0){let x=t.simulate,v=a;if(a===v)if(x&&typeof x=="object"&&!Array.isArray(x)){if(x.end!==void 0){let R=x.end,w=a;if(typeof R!="boolean"){let N;if(N===void 0)if(R==="false"||R===0||R===null)N=!1;else if(R==="true"||R===1)N=!0;else return xs.errors=[{instancePath:e+"/simulate/end",schemaPath:"#/properties/simulate/properties/end/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;N!==void 0&&(R=N,x!==void 0&&(x.end=N))}var y=w===a}else var y=!0;if(y){if(x.split!==void 0){let R=x.split,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/split",schemaPath:"#/properties/simulate/properties/split/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.split=P))}var y=w===a}else var y=!0;if(y){if(x.error!==void 0){let R=x.error,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/error",schemaPath:"#/properties/simulate/properties/error/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.error=P))}var y=w===a}else var y=!0;if(y)if(x.close!==void 0){let R=x.close,w=a;if(typeof R!="boolean"){let P;if(P===void 0)if(R==="false"||R===0||R===null)P=!1;else if(R==="true"||R===1)P=!0;else return xs.errors=[{instancePath:e+"/simulate/close",schemaPath:"#/properties/simulate/properties/close/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;P!==void 0&&(R=P,x!==void 0&&(x.close=P))}var y=w===a}else var y=!0}}}else return xs.errors=[{instancePath:e+"/simulate",schemaPath:"#/properties/simulate/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var h=v===a}else var h=!0;if(h){if(t.authority!==void 0){let x=t.authority,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/authority",schemaPath:"#/properties/authority/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.authority=w))}var h=v===a}else var h=!0;if(h){if(t.remoteAddress!==void 0){let x=t.remoteAddress,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/remoteAddress",schemaPath:"#/properties/remoteAddress/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.remoteAddress=w))}var h=v===a}else var h=!0;if(h){if(t.method!==void 0){let x=t.method,v=a;if(typeof x!="string"){let R=typeof x,w;if(w===void 0)if(R=="number"||R=="boolean")w=""+x;else if(x===null)w="";else return xs.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;w!==void 0&&(x=w,t!==void 0&&(t.method=w))}if(!(x==="ACL"||x==="BIND"||x==="CHECKOUT"||x==="CONNECT"||x==="COPY"||x==="DELETE"||x==="GET"||x==="HEAD"||x==="LINK"||x==="LOCK"||x==="M-SEARCH"||x==="MERGE"||x==="MKACTIVITY"||x==="MKCALENDAR"||x==="MKCOL"||x==="MOVE"||x==="NOTIFY"||x==="OPTIONS"||x==="PATCH"||x==="POST"||x==="PROPFIND"||x==="PROPPATCH"||x==="PURGE"||x==="PUT"||x==="REBIND"||x==="REPORT"||x==="SEARCH"||x==="SOURCE"||x==="SUBSCRIBE"||x==="TRACE"||x==="UNBIND"||x==="UNLINK"||x==="UNLOCK"||x==="UNSUBSCRIBE"||x==="acl"||x==="bind"||x==="checkout"||x==="connect"||x==="copy"||x==="delete"||x==="get"||x==="head"||x==="link"||x==="lock"||x==="m-search"||x==="merge"||x==="mkactivity"||x==="mkcalendar"||x==="mkcol"||x==="move"||x==="notify"||x==="options"||x==="patch"||x==="post"||x==="propfind"||x==="proppatch"||x==="purge"||x==="put"||x==="rebind"||x==="report"||x==="search"||x==="source"||x==="subscribe"||x==="trace"||x==="unbind"||x==="unlink"||x==="unlock"||x==="unsubscribe"))return xs.errors=[{instancePath:e+"/method",schemaPath:"#/properties/method/enum",keyword:"enum",params:{allowedValues:m9t.properties.method.enum},message:"must be equal to one of the allowed values"}],!1;var h=v===a}else var h=!0;if(h)if(t.validate!==void 0){let x=t.validate,v=a;if(typeof x!="boolean"){let R;if(R===void 0)if(x==="false"||x===0||x===null)R=!1;else if(x==="true"||x===1)R=!0;else return xs.errors=[{instancePath:e+"/validate",schemaPath:"#/properties/validate/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;R!==void 0&&(x=R,t!==void 0&&(t.validate=R))}var h=v===a}else var h=!0}}}}}}}}}else return xs.errors=[{instancePath:e,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return xs.errors=i,a===0}});var Wwe=E((V4r,CS)=>{"use strict";var h9t=require("node:assert"),oj=Rwe(),YP=kwe(),XP="The dispatch function has already been invoked",Bwe=Lwe();function cj(t,e,r){return r===void 0?new vS(t,e):JP(t,e,r)}function Mwe(t,e,r,n){return r.once("error",function(s){this.destroyed&&n.destroy(s)}),r.once("close",function(){this.destroyed&&!this._error&&n.destroy()}),r.prepare(()=>t.call(e,r,n))}function JP(t,e,r){if(e=typeof e=="string"?{url:e}:e,e.validate!==!1&&(h9t(typeof t=="function","dispatchFunc should be a function"),!Bwe(e)))throw new Error(Bwe.errors.map(a=>a.message));let n=e.server||{},s=e.Request?oj.CustomRequest:oj;if(t.request&&t.request.app===t&&(Object.setPrototypeOf(Object.getPrototypeOf(t.request),s.prototype),Object.setPrototypeOf(Object.getPrototypeOf(t.response),YP.prototype)),typeof r=="function"){let i=new s(e),a=new YP(i,r);return Mwe(t,n,i,a)}else return new Promise((i,a)=>{let o=new s(e),c=new YP(o,i,a);Mwe(t,n,o,c)})}function vS(t,e){typeof e=="string"?this.option={url:e}:this.option=Object.assign({},e),this.dispatch=t,this._hasInvoked=!1,this._promise=null,this.option.autoStart!==!1&&process.nextTick(()=>{this._hasInvoked||this.end()})}var g9t=["delete","get","head","options","patch","post","put","trace"];g9t.forEach(t=>{vS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(XP);return this.option.url=e,this.option.method=t.toUpperCase(),this}});var A9t=["body","cookies","headers","payload","query"];A9t.forEach(t=>{vS.prototype[t]=function(e){if(this._hasInvoked===!0||this._promise)throw new Error(XP);return this.option[t]=e,this}});vS.prototype.end=function(t){if(this._hasInvoked===!0||this._promise)throw new Error(XP);if(this._hasInvoked=!0,typeof t=="function")JP(this.dispatch,this.option,t);else return this._promise=JP(this.dispatch,this.option),this._promise};Object.getOwnPropertyNames(Promise.prototype).forEach(t=>{t!=="constructor"&&(vS.prototype[t]=function(...e){if(!this._promise){if(this._hasInvoked===!0)throw new Error(XP);this._hasInvoked=!0,this._promise=JP(this.dispatch,this.option)}return this._promise[t](...e)})});function y9t(t){return t instanceof oj||t instanceof YP||t&&t.constructor&&t.constructor.name==="_CustomLMRRequest"}CS.exports=cj;CS.exports.default=cj;CS.exports.inject=cj;CS.exports.isInjection=y9t});var Zwe=E((z4r,r3)=>{"use strict";var x9t="4.26.0",b9t=hfe(),uj=require("node:http"),IS,{kAvvioBoot:TS,kChildren:lj,kServerBindings:$we,kBodyLimit:E9t,kRoutePrefix:Fwe,kLogLevel:_9t,kLogSerializers:S9t,kHooks:dj,kSchemaController:Gp,kRequestAcceptVersion:v9t,kReplySerializerDefault:Uwe,kContentTypeParser:C9t,kReply:I9t,kRequest:T9t,kFourOhFour:w9t,kState:ps,kOptions:fj,kPluginNameChain:wS,kSchemaErrorFormatter:pj,kErrorHandler:ZP,kKeepAliveConnections:mj,kChildLoggerFactory:hj,kGenReqId:gj}=Qs(),{createServer:R9t,compileValidateHTTPVersion:N9t}=Wfe(),RS=SN(),e3=FN(),O9t=UN(),{supportedMethods:P9t}=B$(),nx=U$(),uh=Y$(),qwe=bq(),{Hooks:D9t,hookRunnerApplication:jwe,supportedHooks:Aj}=up(),{createLogger:k9t,createChildLogger:Hwe,defaultChildLoggerFactory:L9t}=c1(),Qwe=Iq(),{getGenReqId:Gwe,reqIdGenFactory:Vwe}=IP(),{buildRouting:B9t,validateBodyLimitOption:M9t}=XTe(),W9t=iwe(),Xwe=cwe(),$9t=Awe(),{FSTDEP009:F9t}=cd(),U9t=xwe(),{appendStackTrace:q9t,AVVIO_ERRORS_MAP:zwe,...lh}=Ci(),{defaultInitOptions:Ha}=Xwe,{FST_ERR_ASYNC_CONSTRAINT:j9t,FST_ERR_BAD_URL:H9t,FST_ERR_FORCE_CLOSE_CONNECTIONS_IDLE_NOT_AVAILABLE:Q9t,FST_ERR_OPTIONS_NOT_OBJ:G9t,FST_ERR_QSP_NOT_FN:V9t,FST_ERR_SCHEMA_CONTROLLER_BUCKET_OPT_NOT_FN:z9t,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_OBJ:K9t,FST_ERR_AJV_CUSTOM_OPTIONS_OPT_NOT_ARR:Y9t,FST_ERR_VERSION_CONSTRAINT_NOT_STR:J9t,FST_ERR_INSTANCE_ALREADY_LISTENING:X9t,FST_ERR_REOPENED_CLOSE_SERVER:Z9t,FST_ERR_ROUTE_REWRITE_NOT_STR:eqt,FST_ERR_SCHEMA_ERROR_FORMATTER_NOT_FN:Kwe}=lh,{buildErrorHandler:Ywe}=U1();function tqt(t){let e={};return["errorHandler","logLevel","logSerializers"].concat(Aj).forEach(n=>{e[n]=t.store[n]}),Object.assign({},e)}function t3(t){if(t=t||{},typeof t!="object")throw new G9t;if(t.querystringParser&&typeof t.querystringParser!="function")throw new V9t(typeof t.querystringParser);if(t.schemaController&&t.schemaController.bucket&&typeof t.schemaController.bucket!="function")throw new z9t(typeof t.schemaController.bucket);M9t(t.bodyLimit);let e=t.requestIdHeader===!1?!1:(t.requestIdHeader||Ha.requestIdHeader).toLowerCase(),r=Vwe(e,t.genReqId),n=t.requestIdLogLabel||"reqId",s=t.bodyLimit||Ha.bodyLimit,i=t.disableRequestLogging||!1,a=Object.assign({customOptions:{},plugins:[]},t.ajv),o=t.frameworkErrors;if(!a.customOptions||Object.prototype.toString.call(a.customOptions)!=="[object Object]")throw new K9t(typeof a.customOptions);if(!a.plugins||!Array.isArray(a.plugins))throw new Y9t(typeof a.plugins);let{logger:c,hasLogger:u}=k9t(t);t.connectionTimeout=t.connectionTimeout||Ha.connectionTimeout,t.keepAliveTimeout=t.keepAliveTimeout||Ha.keepAliveTimeout,t.maxRequestsPerSocket=t.maxRequestsPerSocket||Ha.maxRequestsPerSocket,t.requestTimeout=t.requestTimeout||Ha.requestTimeout,t.logger=c,t.requestIdHeader=e,t.requestIdLogLabel=n,t.disableRequestLogging=i,t.ajv=a,t.clientErrorHandler=t.clientErrorHandler||F;let l=Xwe(t);t.exposeHeadRoutes=l.exposeHeadRoutes;let d=t.constraints;t.versioning&&(F9t(),d={...d,version:{name:"version",mustMatchWhenDerived:!0,storage:t.versioning.storage,deriveConstraint:t.versioning.deriveVersion,validate(q){if(typeof q!="string")throw new J9t}}});let f=B9t({config:{defaultRoute:V,onBadUrl:j,constraints:d,ignoreTrailingSlash:t.ignoreTrailingSlash||Ha.ignoreTrailingSlash,ignoreDuplicateSlashes:t.ignoreDuplicateSlashes||Ha.ignoreDuplicateSlashes,maxParamLength:t.maxParamLength||Ha.maxParamLength,caseSensitive:t.caseSensitive,allowUnsafeRegex:t.allowUnsafeRegex||Ha.allowUnsafeRegex,buildPrettyMeta:tqt,querystringParser:t.querystringParser,useSemicolonDelimiter:t.useSemicolonDelimiter??Ha.useSemicolonDelimiter}}),p=W9t(t),m=G(f,t);t.http2SessionTimeout=l.http2SessionTimeout;let{server:h,listen:A}=R9t(t,m),g=typeof h.closeAllConnections=="function",b=typeof h.closeIdleConnections=="function",y=t.forceCloseConnections;if(y==="idle"&&!b)throw new Q9t;typeof y!="boolean"&&(y=b?"idle":!1);let x=!g&&y===!0?new Set:U9t(),v=RS.setupResponseListeners,C=qwe.buildSchemaController(null,t.schemaController),R={[ps]:{listening:!1,closing:!1,started:!1,ready:!1,booting:!1,readyPromise:null},[mj]:x,[fj]:t,[lj]:[],[$we]:[],[E9t]:s,[Fwe]:"",[_9t]:"",[S9t]:null,[dj]:new D9t,[Gp]:C,[pj]:null,[ZP]:Ywe(),[hj]:L9t,[Uwe]:null,[C9t]:new uh(s,t.onProtoPoisoning||Ha.onProtoPoisoning,t.onConstructorPoisoning||Ha.onConstructorPoisoning),[I9t]:RS.buildReply(RS),[T9t]:e3.buildRequest(e3,t.trustProxy),[w9t]:p,[Qwe.kRegisteredPlugins]:[],[wS]:["fastify"],[TS]:null,[gj]:r,routing:m,getDefaultRoute:f.getDefaultRoute.bind(f),setDefaultRoute:f.setDefaultRoute.bind(f),delete:function(H,ee,ne){return f.prepareRoute.call(this,{method:"DELETE",url:H,options:ee,handler:ne})},get:function(H,ee,ne){return f.prepareRoute.call(this,{method:"GET",url:H,options:ee,handler:ne})},head:function(H,ee,ne){return f.prepareRoute.call(this,{method:"HEAD",url:H,options:ee,handler:ne})},patch:function(H,ee,ne){return f.prepareRoute.call(this,{method:"PATCH",url:H,options:ee,handler:ne})},post:function(H,ee,ne){return f.prepareRoute.call(this,{method:"POST",url:H,options:ee,handler:ne})},put:function(H,ee,ne){return f.prepareRoute.call(this,{method:"PUT",url:H,options:ee,handler:ne})},options:function(H,ee,ne){return f.prepareRoute.call(this,{method:"OPTIONS",url:H,options:ee,handler:ne})},all:function(H,ee,ne){return f.prepareRoute.call(this,{method:P9t,url:H,options:ee,handler:ne})},route:function(H){return f.route.call(this,{options:H})},hasRoute:function(H){return f.hasRoute.call(this,{options:H})},findRoute:function(H){return f.findRoute(H)},log:c,withTypeProvider:B,addHook:Z,addSchema:W,getSchema:C.getSchema.bind(C),getSchemas:C.getSchemas.bind(C),setValidatorCompiler:oe,setSerializerCompiler:Ce,setSchemaController:we,setReplySerializer:qe,setSchemaErrorFormatter:ue,setGenReqId:z,addContentTypeParser:uh.helpers.addContentTypeParser,hasContentTypeParser:uh.helpers.hasContentTypeParser,getDefaultJsonParser:uh.defaultParsers.getDefaultJsonParser,defaultTextParser:uh.defaultParsers.defaultTextParser,removeContentTypeParser:uh.helpers.removeContentTypeParser,removeAllContentTypeParsers:uh.helpers.removeAllContentTypeParsers,register:null,after:null,ready:null,onClose:null,close:null,printPlugins:null,hasPlugin:function(q){return this[Qwe.kRegisteredPlugins].includes(q)||this[wS].includes(q)},listen:A,server:h,addresses:function(){let q=this[$we].map(H=>H.address());return q.push(this.server.address()),q.filter(H=>H)},decorate:nx.add,hasDecorator:nx.exist,decorateReply:nx.decorateReply,decorateRequest:nx.decorateRequest,hasRequestDecorator:nx.existRequest,hasReplyDecorator:nx.existReply,inject:M,printRoutes:U,setNotFoundHandler:se,setErrorHandler:Fe,setChildLoggerFactory:_e,initialConfig:l,addConstraintStrategy:f.addConstraintStrategy.bind(f),hasConstraintStrategy:f.hasConstraintStrategy.bind(f)};Object.defineProperties(R,{listeningOrigin:{get(){let q=this.addresses().slice(-1).pop();if(typeof q=="string")return q;let H=q.family==="IPv6"?`[${q.address}]`:q.address;return`${this[fj].https?"https":"http"}://${H}:${q.port}`}},pluginName:{configurable:!0,get(){return this[wS].length>1?this[wS].join(" -> "):this[wS][0]}},prefix:{configurable:!0,get(){return this[Fwe]}},validatorCompiler:{configurable:!0,get(){return this[Gp].getValidatorCompiler()}},serializerCompiler:{configurable:!0,get(){return this[Gp].getSerializerCompiler()}},childLoggerFactory:{configurable:!0,get(){return this[hj]}},version:{configurable:!0,get(){return x9t}},errorHandler:{configurable:!0,get(){return this[ZP].func}},genReqId:{configurable:!0,get(){return this[gj]}}}),t.schemaErrorFormatter&&(Jwe(t.schemaErrorFormatter),R[pj]=t.schemaErrorFormatter.bind(R));let w=Number(t.pluginTimeout),N=b9t(R,{autostart:!1,timeout:isNaN(w)===!1?w:Ha.pluginTimeout,expose:{use:"register"}});N.override=$9t,N.on("start",()=>R[ps].started=!0),R[TS]=R.ready,R.ready=k,R.printPlugins=N.prettyPrint.bind(N),N.once("preReady",()=>{R.onClose((q,H)=>{R[ps].closing=!0,f.closeRoutes(),jwe("preClose",R[TS],R,function(){if(R[ps].listening){if(y==="idle")q.server.closeIdleConnections();else if(g&&y)q.server.closeAllConnections();else if(y===!0)for(let ee of R[mj])ee.destroy(),R[mj].delete(ee)}!t.serverFactory||R[ps].listening?q.server.close(function(ee){ee&&ee.code!=="ERR_SERVER_NOT_RUNNING"?H(null):H()}):process.nextTick(H,null)})})});let P=new O9t({server:R,config:{}});R.setNotFoundHandler(),p.arrange404(R),f.setup(t,{avvio:N,fourOhFour:p,logger:c,hasLogger:u,setupResponseListeners:v,throwIfAlreadyStarted:L,validateHTTPVersion:N9t(t),keepAliveConnections:x}),h.on("clientError",t.clientErrorHandler.bind(R));try{let H=require("node:diagnostics_channel").channel("fastify.initialization");H.hasSubscribers&&H.publish({fastify:R})}catch{}return"asyncDispose"in Symbol&&(R[Symbol.asyncDispose]=function(){return R.close()}),R;function L(q){if(R[ps].started)throw new X9t(q)}function M(q,H){if(IS===void 0&&(IS=Wwe()),R[ps].started){if(R[ps].closing){let ee=new Z9t;if(H){H(ee);return}else return Promise.reject(ee)}return IS(m,q,H)}if(H)this.ready(ee=>{ee?H(ee,null):IS(m,q,H)});else return IS((ee,ne)=>{this.ready(function(re){if(re){ne.emit("error",re);return}m(ee,ne)})},q)}function k(q){if(this[ps].readyPromise!==null){if(q!=null){this[ps].readyPromise.then(()=>q(null,R),q);return}return this[ps].readyPromise}let H,ee;if(process.nextTick(ne),this[ps].readyPromise=new Promise(function(X,ie){H=X,ee=ie}),q)this[ps].readyPromise.then(()=>q(null,R),q);else return this[ps].readyPromise;function ne(){R[TS]((X,ie)=>{X||R[ps].started||R[ps].ready||R[ps].booting?re(X):(R[ps].booting=!0,jwe("onReady",R[TS],R,re)),ie()})}function re(X){if(X=X!=null&&zwe[X.code]!=null?q9t(X,new zwe[X.code](X.message)):X,X)return ee(X);H(R),R[ps].booting=!1,R[ps].ready=!0,R[ps].promise=null}}function B(){return this}function Z(q,H){if(L('Cannot call "addHook"!'),H==null)throw new lh.FST_ERR_HOOK_INVALID_HANDLER(q,H);if(q==="onSend"||q==="preSerialization"||q==="onError"||q==="preParsing"){if(H.constructor.name==="AsyncFunction"&&H.length===4)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onReady"||q==="onListen"){if(H.constructor.name==="AsyncFunction"&&H.length!==0)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(q==="onRequestAbort"){if(H.constructor.name==="AsyncFunction"&&H.length!==1)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER}else if(H.constructor.name==="AsyncFunction"&&H.length===3)throw new lh.FST_ERR_HOOK_INVALID_ASYNC_HANDLER;return q==="onClose"?this.onClose(H):q==="onReady"||q==="onListen"||q==="onRoute"?this[dj].add(q,H):this.after((ne,re)=>{ee.call(this,q,H),re(ne)}),this;function ee(ne,re){this[dj].add(ne,re),this[lj].forEach(X=>ee.call(X,ne,re))}}function W(q){return L('Cannot call "addSchema"!'),this[Gp].add(q),this[lj].forEach(H=>H.addSchema(q)),this}function F(q,H){if(q.code==="ECONNRESET"||H.destroyed)return;let ee,ne,re,X;q.code==="ERR_HTTP_REQUEST_TIMEOUT"?(ne="408",re=uj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Timeout","statusCode":408}`,X="timeout"):q.code==="HPE_HEADER_OVERFLOW"?(ne="431",re=uj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Exceeded maximum allowed HTTP header size","statusCode":431}`,X="header_overflow"):(ne="400",re=uj.STATUS_CODES[ne],ee=`{"error":"${re}","message":"Client Error","statusCode":400}`,X="error"),this.log.trace({err:q},`client ${X}`),H.writable&&H.write(`HTTP/1.1 ${ne} ${re}\r Content-Length: ${ee.length}\r Content-Type: application/json\r \r -${ee}`),H.destroy(q)}function K(q,H){q.headers["accept-version"]!==void 0&&(q.headers[_qt]=q.headers["accept-version"],q.headers["accept-version"]=void 0),p.router.lookup(q,H)}function j(q,H,ee){if(o){let re=jwe(P.server,H),X=Uwe(P,c,H,re),ie=new XP(re,null,H,null,X,P),ce=new wS(ee,ie,X);return i===!1&&X.info({req:ie},"incoming request"),o(new qqt(q),ie,ce)}let ne=`{"error":"Bad Request","code":"FST_ERR_BAD_URL","message":"'${q}' is not a valid url component","statusCode":400}`;ee.writeHead(400,{"Content-Type":"application/json","Content-Length":ne.length}),ee.end(ne)}function J(q,H,ee){if(q!==!1)return function(re){if(re){if(o){let ie=jwe(P.server,H),ce=Uwe(P,c,H,ie),fe=new XP(ie,null,H,null,ce,P),Ne=new wS(ee,fe,ce);return i===!1&&ce.info({req:fe},"incoming request"),o(new Uqt,fe,Ne)}let X='{"error":"Internal Server Error","message":"Unexpected error from async constraint","statusCode":500}';ee.writeHead(500,{"Content-Type":"application/json","Content-Length":X.length}),ee.end(X)}}}function se(q,H){return B('Cannot call "setNotFoundHandler"!'),p.setNotFoundHandler.call(this,q,H,N,f.routeHandler),this}function oe(q){return B('Cannot call "setValidatorCompiler"!'),this[Qp].setValidatorCompiler(q),this}function ue(q){return B('Cannot call "setSchemaErrorFormatter"!'),Vwe(q),this[fj]=q.bind(this),this}function Ie(q){return B('Cannot call "setSerializerCompiler"!'),this[Qp].setSerializerCompiler(q),this}function we(q){B('Cannot call "setSchemaController"!');let H=this[Qp],ee=$we.buildSchemaController(H,Object.assign({},H.opts,q));return this[Qp]=ee,this.getSchema=ee.getSchema.bind(ee),this.getSchemas=ee.getSchemas.bind(ee),this}function qe(q){return B('Cannot call "setReplySerializer"!'),this[Wwe]=q,this}function Fe(q){return B('Cannot call "setErrorHandler"!'),this[JP]=Kwe(this[JP],q.bind(this)),this}function _e(q){return B('Cannot call "setChildLoggerFactory"!'),this[mj]=q,this}function U(q={}){return q.includeMeta=q.includeHooks?q.includeMeta?gj.concat(q.includeMeta):gj:q.includeMeta,f.printRoutes(q)}function G(q,{rewriteUrl:H,logger:ee}){let ne;return function(X,ie){if(ne===void 0&&(ne=q.isAsyncConstraint()),H){X.originalUrl=X.url;let ce=H.call(R,X);if(typeof ce=="string")X.url=ce;else{let fe=new Xqt(X.url,typeof ce);X.destroy(fe)}}q.routing(X,ie,J(ne,X,ie))}}function V(q){return B('Cannot call "setGenReqId"!'),this[hj]=Hwe(this[dj].requestIdHeader,q),this}}ZP.errorCodes=lh;function Vwe(t){if(typeof t!="function")throw new Gwe(typeof t);if(t.constructor.name==="AsyncFunction")throw new Gwe("AsyncFunction")}ek.exports=ZP;ek.exports.fastify=ZP;ek.exports.default=ZP});var l2e=E((V4r,u2e)=>{var c2e=require("stream").Stream,D9t=require("util");u2e.exports=ru;function ru(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}D9t.inherits(ru,c2e);ru.create=function(t,e){var r=new this;e=e||{};for(var n in e)r[n]=e[n];r.source=t;var s=t.emit;return t.emit=function(){return r._handleEmit(arguments),s.apply(t,arguments)},t.on("error",function(){}),r.pauseStream&&t.pause(),r};Object.defineProperty(ru.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});ru.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};ru.prototype.resume=function(){this._released||this.release(),this.source.resume()};ru.prototype.pause=function(){this.source.pause()};ru.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(t){this.emit.apply(this,t)}.bind(this)),this._bufferedEvents=[]};ru.prototype.pipe=function(){var t=c2e.prototype.pipe.apply(this,arguments);return this.resume(),t};ru.prototype._handleEmit=function(t){if(this._released){this.emit.apply(this,t);return}t[0]==="data"&&(this.dataSize+=t[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(t)};ru.prototype._checkIfMaxDataSizeExceeded=function(){if(!this._maxDataSizeExceeded&&!(this.dataSize<=this.maxDataSize)){this._maxDataSizeExceeded=!0;var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(t))}}});var m2e=E((z4r,p2e)=>{var B9t=require("util"),f2e=require("stream").Stream,d2e=l2e();p2e.exports=zn;function zn(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2*1024*1024,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}B9t.inherits(zn,f2e);zn.create=function(t){var e=new this;t=t||{};for(var r in t)e[r]=t[r];return e};zn.isStreamLike=function(t){return typeof t!="function"&&typeof t!="string"&&typeof t!="boolean"&&typeof t!="number"&&!Buffer.isBuffer(t)};zn.prototype.append=function(t){var e=zn.isStreamLike(t);if(e){if(!(t instanceof d2e)){var r=d2e.create(t,{maxDataSize:1/0,pauseStream:this.pauseStreams});t.on("data",this._checkDataSize.bind(this)),t=r}this._handleErrors(t),this.pauseStreams&&t.pause()}return this._streams.push(t),this};zn.prototype.pipe=function(t,e){return f2e.prototype.pipe.call(this,t,e),this.resume(),t};zn.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop){this._pendingNext=!0;return}this._insideLoop=!0;try{do this._pendingNext=!1,this._realGetNext();while(this._pendingNext)}finally{this._insideLoop=!1}};zn.prototype._realGetNext=function(){var t=this._streams.shift();if(typeof t>"u"){this.end();return}if(typeof t!="function"){this._pipeNext(t);return}var e=t;e(function(r){var n=zn.isStreamLike(r);n&&(r.on("data",this._checkDataSize.bind(this)),this._handleErrors(r)),this._pipeNext(r)}.bind(this))};zn.prototype._pipeNext=function(t){this._currentStream=t;var e=zn.isStreamLike(t);if(e){t.on("end",this._getNext.bind(this)),t.pipe(this,{end:!1});return}var r=t;this.write(r),this._getNext()};zn.prototype._handleErrors=function(t){var e=this;t.on("error",function(r){e._emitError(r)})};zn.prototype.write=function(t){this.emit("data",t)};zn.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};zn.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&typeof this._currentStream.resume=="function"&&this._currentStream.resume(),this.emit("resume")};zn.prototype.end=function(){this._reset(),this.emit("end")};zn.prototype.destroy=function(){this._reset(),this.emit("close")};zn.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};zn.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(t))}};zn.prototype._updateDataSize=function(){this.dataSize=0;var t=this;this._streams.forEach(function(e){e.dataSize&&(t.dataSize+=e.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)};zn.prototype._emitError=function(t){this._reset(),this.emit("error",t)}});var h2e=E((Y4r,L9t)=>{L9t.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var A2e=E((J4r,g2e)=>{g2e.exports=h2e()});var b2e=E(Qa=>{"use strict";var ik=A2e(),M9t=require("path").extname,y2e=/^\s*([^;\s]*)(?:;|\s|$)/,W9t=/^text\//i;Qa.charset=x2e;Qa.charsets={lookup:x2e};Qa.contentType=$9t;Qa.extension=F9t;Qa.extensions=Object.create(null);Qa.lookup=U9t;Qa.types=Object.create(null);q9t(Qa.extensions,Qa.types);function x2e(t){if(!t||typeof t!="string")return!1;var e=y2e.exec(t),r=e&&ik[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&W9t.test(e[1])?"UTF-8":!1}function $9t(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?Qa.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=Qa.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function F9t(t){if(!t||typeof t!="string")return!1;var e=y2e.exec(t),r=e&&Qa.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function U9t(t){if(!t||typeof t!="string")return!1;var e=M9t("x."+t).toLowerCase().substr(1);return e&&Qa.types[e]||!1}function q9t(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(ik).forEach(function(s){var i=ik[s],a=i.extensions;if(!(!a||!a.length)){t[s]=a;for(var o=0;ol||u===l&&e[c].substr(0,12)==="application/"))continue}e[c]=s}}})}});var _2e=E((Z4r,E2e)=>{E2e.exports=j9t;function j9t(t){var e=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;e?e(t):setTimeout(t,0)}});var bj=E((eMr,v2e)=>{var S2e=_2e();v2e.exports=H9t;function H9t(t){var e=!1;return S2e(function(){e=!0}),function(n,s){e?t(n,s):S2e(function(){t(n,s)})}}});var Ej=E((tMr,I2e)=>{I2e.exports=Q9t;function Q9t(t){Object.keys(t.jobs).forEach(G9t.bind(t)),t.jobs={}}function G9t(t){typeof this.jobs[t]=="function"&&this.jobs[t]()}});var _j=E((rMr,T2e)=>{var C2e=bj(),K9t=Ej();T2e.exports=V9t;function V9t(t,e,r,n){var s=r.keyedList?r.keyedList[r.index]:r.index;r.jobs[s]=z9t(e,s,t[s],function(i,a){s in r.jobs&&(delete r.jobs[s],i?K9t(r):r.results[s]=a,n(i,r.results))})}function z9t(t,e,r,n){var s;return t.length==2?s=t(r,C2e(n)):s=t(r,e,C2e(n)),s}});var Sj=E((nMr,w2e)=>{w2e.exports=Y9t;function Y9t(t,e){var r=!Array.isArray(t),n={index:0,keyedList:r||e?Object.keys(t):null,jobs:{},results:r?{}:[],size:r?Object.keys(t).length:t.length};return e&&n.keyedList.sort(r?e:function(s,i){return e(t[s],t[i])}),n}});var vj=E((sMr,R2e)=>{var J9t=Ej(),X9t=bj();R2e.exports=Z9t;function Z9t(t){Object.keys(this.jobs).length&&(this.index=this.size,J9t(this),X9t(t)(null,this.results))}});var O2e=E((iMr,N2e)=>{var ejt=_j(),tjt=Sj(),rjt=vj();N2e.exports=njt;function njt(t,e,r){for(var n=tjt(t);n.index<(n.keyedList||t).length;)ejt(t,e,n,function(s,i){if(s){r(s,i);return}if(Object.keys(n.jobs).length===0){r(null,n.results);return}}),n.index++;return rjt.bind(n,r)}});var Ij=E((aMr,ak)=>{var P2e=_j(),sjt=Sj(),ijt=vj();ak.exports=ajt;ak.exports.ascending=k2e;ak.exports.descending=ojt;function ajt(t,e,r,n){var s=sjt(t,r);return P2e(t,e,s,function i(a,o){if(a){n(a,o);return}if(s.index++,s.index<(s.keyedList||t).length){P2e(t,e,s,i);return}n(null,s.results)}),ijt.bind(s,n)}function k2e(t,e){return te?1:0}function ojt(t,e){return-1*k2e(t,e)}});var B2e=E((oMr,D2e)=>{var cjt=Ij();D2e.exports=ujt;function ujt(t,e,r){return cjt(t,e,null,r)}});var M2e=E((cMr,L2e)=>{L2e.exports={parallel:O2e(),serial:B2e(),serialOrdered:Ij()}});var Cj=E((uMr,W2e)=>{"use strict";W2e.exports=Object});var F2e=E((lMr,$2e)=>{"use strict";$2e.exports=Error});var q2e=E((dMr,U2e)=>{"use strict";U2e.exports=EvalError});var H2e=E((fMr,j2e)=>{"use strict";j2e.exports=RangeError});var G2e=E((pMr,Q2e)=>{"use strict";Q2e.exports=ReferenceError});var V2e=E((mMr,K2e)=>{"use strict";K2e.exports=SyntaxError});var Gp=E((hMr,z2e)=>{"use strict";z2e.exports=TypeError});var J2e=E((gMr,Y2e)=>{"use strict";Y2e.exports=URIError});var Z2e=E((AMr,X2e)=>{"use strict";X2e.exports=Math.abs});var tRe=E((yMr,eRe)=>{"use strict";eRe.exports=Math.floor});var nRe=E((xMr,rRe)=>{"use strict";rRe.exports=Math.max});var iRe=E((bMr,sRe)=>{"use strict";sRe.exports=Math.min});var oRe=E((EMr,aRe)=>{"use strict";aRe.exports=Math.pow});var uRe=E((_Mr,cRe)=>{"use strict";cRe.exports=Math.round});var dRe=E((SMr,lRe)=>{"use strict";lRe.exports=Number.isNaN||function(e){return e!==e}});var pRe=E((vMr,fRe)=>{"use strict";var ljt=dRe();fRe.exports=function(e){return ljt(e)||e===0?e:e<0?-1:1}});var hRe=E((IMr,mRe)=>{"use strict";mRe.exports=Object.getOwnPropertyDescriptor});var Tj=E((CMr,gRe)=>{"use strict";var ok=hRe();if(ok)try{ok([],"length")}catch{ok=null}gRe.exports=ok});var yRe=E((TMr,ARe)=>{"use strict";var ck=Object.defineProperty||!1;if(ck)try{ck({},"a",{value:1})}catch{ck=!1}ARe.exports=ck});var wj=E((wMr,xRe)=>{"use strict";xRe.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var s=42;e[r]=s;for(var i in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var a=Object.getOwnPropertySymbols(e);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(e,r);if(o.value!==s||o.enumerable!==!0)return!1}return!0}});var _Re=E((RMr,ERe)=>{"use strict";var bRe=typeof Symbol<"u"&&Symbol,djt=wj();ERe.exports=function(){return typeof bRe!="function"||typeof Symbol!="function"||typeof bRe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:djt()}});var Rj=E((NMr,SRe)=>{"use strict";SRe.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var Nj=E((OMr,vRe)=>{"use strict";var fjt=Cj();vRe.exports=fjt.getPrototypeOf||null});var TRe=E((PMr,CRe)=>{"use strict";var pjt="Function.prototype.bind called on incompatible ",mjt=Object.prototype.toString,hjt=Math.max,gjt="[object Function]",IRe=function(e,r){for(var n=[],s=0;s{"use strict";var xjt=TRe();wRe.exports=Function.prototype.bind||xjt});var uk=E((DMr,RRe)=>{"use strict";RRe.exports=Function.prototype.call});var Oj=E((BMr,NRe)=>{"use strict";NRe.exports=Function.prototype.apply});var PRe=E((LMr,ORe)=>{"use strict";ORe.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var DRe=E((MMr,kRe)=>{"use strict";var bjt=PS(),Ejt=Oj(),_jt=uk(),Sjt=PRe();kRe.exports=Sjt||bjt.call(_jt,Ejt)});var Pj=E((WMr,BRe)=>{"use strict";var vjt=PS(),Ijt=Gp(),Cjt=uk(),Tjt=DRe();BRe.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new Ijt("a function is required");return Tjt(vjt,Cjt,e)}});var URe=E(($Mr,FRe)=>{"use strict";var wjt=Pj(),LRe=Tj(),WRe;try{WRe=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var kj=!!WRe&&LRe&&LRe(Object.prototype,"__proto__"),$Re=Object,MRe=$Re.getPrototypeOf;FRe.exports=kj&&typeof kj.get=="function"?wjt([kj.get]):typeof MRe=="function"?function(e){return MRe(e==null?e:$Re(e))}:!1});var GRe=E((FMr,QRe)=>{"use strict";var qRe=Rj(),jRe=Nj(),HRe=URe();QRe.exports=qRe?function(e){return qRe(e)}:jRe?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return jRe(e)}:HRe?function(e){return HRe(e)}:null});var lk=E((UMr,KRe)=>{"use strict";var Rjt=Function.prototype.call,Njt=Object.prototype.hasOwnProperty,Ojt=PS();KRe.exports=Ojt.call(Rjt,Njt)});var LS=E((qMr,ZRe)=>{"use strict";var cr,Pjt=Cj(),kjt=F2e(),Djt=q2e(),Bjt=H2e(),Ljt=G2e(),ux=V2e(),cx=Gp(),Mjt=J2e(),Wjt=Z2e(),$jt=tRe(),Fjt=nRe(),Ujt=iRe(),qjt=oRe(),jjt=uRe(),Hjt=pRe(),JRe=Function,Dj=function(t){try{return JRe('"use strict"; return ('+t+").constructor;")()}catch{}},kS=Tj(),Qjt=yRe(),Bj=function(){throw new cx},Gjt=kS?function(){try{return arguments.callee,Bj}catch{try{return kS(arguments,"callee").get}catch{return Bj}}}():Bj,ax=_Re()(),Vs=GRe(),Kjt=Nj(),Vjt=Rj(),XRe=Oj(),DS=uk(),ox={},zjt=typeof Uint8Array>"u"||!Vs?cr:Vs(Uint8Array),dh={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?cr:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?cr:ArrayBuffer,"%ArrayIteratorPrototype%":ax&&Vs?Vs([][Symbol.iterator]()):cr,"%AsyncFromSyncIteratorPrototype%":cr,"%AsyncFunction%":ox,"%AsyncGenerator%":ox,"%AsyncGeneratorFunction%":ox,"%AsyncIteratorPrototype%":ox,"%Atomics%":typeof Atomics>"u"?cr:Atomics,"%BigInt%":typeof BigInt>"u"?cr:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?cr:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?cr:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?cr:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":kjt,"%eval%":eval,"%EvalError%":Djt,"%Float16Array%":typeof Float16Array>"u"?cr:Float16Array,"%Float32Array%":typeof Float32Array>"u"?cr:Float32Array,"%Float64Array%":typeof Float64Array>"u"?cr:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?cr:FinalizationRegistry,"%Function%":JRe,"%GeneratorFunction%":ox,"%Int8Array%":typeof Int8Array>"u"?cr:Int8Array,"%Int16Array%":typeof Int16Array>"u"?cr:Int16Array,"%Int32Array%":typeof Int32Array>"u"?cr:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":ax&&Vs?Vs(Vs([][Symbol.iterator]())):cr,"%JSON%":typeof JSON=="object"?JSON:cr,"%Map%":typeof Map>"u"?cr:Map,"%MapIteratorPrototype%":typeof Map>"u"||!ax||!Vs?cr:Vs(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Pjt,"%Object.getOwnPropertyDescriptor%":kS,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?cr:Promise,"%Proxy%":typeof Proxy>"u"?cr:Proxy,"%RangeError%":Bjt,"%ReferenceError%":Ljt,"%Reflect%":typeof Reflect>"u"?cr:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?cr:Set,"%SetIteratorPrototype%":typeof Set>"u"||!ax||!Vs?cr:Vs(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?cr:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":ax&&Vs?Vs(""[Symbol.iterator]()):cr,"%Symbol%":ax?Symbol:cr,"%SyntaxError%":ux,"%ThrowTypeError%":Gjt,"%TypedArray%":zjt,"%TypeError%":cx,"%Uint8Array%":typeof Uint8Array>"u"?cr:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?cr:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?cr:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?cr:Uint32Array,"%URIError%":Mjt,"%WeakMap%":typeof WeakMap>"u"?cr:WeakMap,"%WeakRef%":typeof WeakRef>"u"?cr:WeakRef,"%WeakSet%":typeof WeakSet>"u"?cr:WeakSet,"%Function.prototype.call%":DS,"%Function.prototype.apply%":XRe,"%Object.defineProperty%":Qjt,"%Object.getPrototypeOf%":Kjt,"%Math.abs%":Wjt,"%Math.floor%":$jt,"%Math.max%":Fjt,"%Math.min%":Ujt,"%Math.pow%":qjt,"%Math.round%":jjt,"%Math.sign%":Hjt,"%Reflect.getPrototypeOf%":Vjt};if(Vs)try{null.error}catch(t){VRe=Vs(Vs(t)),dh["%Error.prototype%"]=VRe}var VRe,Yjt=function t(e){var r;if(e==="%AsyncFunction%")r=Dj("async function () {}");else if(e==="%GeneratorFunction%")r=Dj("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=Dj("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var s=t("%AsyncGenerator%");s&&Vs&&(r=Vs(s.prototype))}return dh[e]=r,r},zRe={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},BS=PS(),dk=lk(),Jjt=BS.call(DS,Array.prototype.concat),Xjt=BS.call(XRe,Array.prototype.splice),YRe=BS.call(DS,String.prototype.replace),fk=BS.call(DS,String.prototype.slice),Zjt=BS.call(DS,RegExp.prototype.exec),eHt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,tHt=/\\(\\)?/g,rHt=function(e){var r=fk(e,0,1),n=fk(e,-1);if(r==="%"&&n!=="%")throw new ux("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new ux("invalid intrinsic syntax, expected opening `%`");var s=[];return YRe(e,eHt,function(i,a,o,c){s[s.length]=o?YRe(c,tHt,"$1"):a||i}),s},nHt=function(e,r){var n=e,s;if(dk(zRe,n)&&(s=zRe[n],n="%"+s[0]+"%"),dk(dh,n)){var i=dh[n];if(i===ox&&(i=Yjt(n)),typeof i>"u"&&!r)throw new cx("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new ux("intrinsic "+e+" does not exist!")};ZRe.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new cx("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new cx('"allowMissing" argument must be a boolean');if(Zjt(/^%?[^%]*%?$/,e)===null)throw new ux("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=rHt(e),s=n.length>0?n[0]:"",i=nHt("%"+s+"%",r),a=i.name,o=i.value,c=!1,u=i.alias;u&&(s=u[0],Xjt(n,Jjt([0,1],u)));for(var l=1,d=!0;l=n.length){var h=kS(o,f);d=!!h,d&&"get"in h&&!("originalValue"in h.get)?o=h.get:o=o[f]}else d=dk(o,f),o=o[f];d&&!c&&(dh[a]=o)}}return o}});var tNe=E((jMr,eNe)=>{"use strict";var sHt=wj();eNe.exports=function(){return sHt()&&!!Symbol.toStringTag}});var sNe=E((HMr,nNe)=>{"use strict";var iHt=LS(),rNe=iHt("%Object.defineProperty%",!0),aHt=tNe()(),oHt=lk(),cHt=Gp(),pk=aHt?Symbol.toStringTag:null;nNe.exports=function(e,r){var n=arguments.length>2&&!!arguments[2]&&arguments[2].force,s=arguments.length>2&&!!arguments[2]&&arguments[2].nonConfigurable;if(typeof n<"u"&&typeof n!="boolean"||typeof s<"u"&&typeof s!="boolean")throw new cHt("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");pk&&(n||!oHt(e,pk))&&(rNe?rNe(e,pk,{configurable:!s,enumerable:!1,value:r,writable:!1}):e[pk]=r)}});var aNe=E((QMr,iNe)=>{"use strict";iNe.exports=function(t,e){return Object.keys(e).forEach(function(r){t[r]=t[r]||e[r]}),t}});var cNe=E((GMr,oNe)=>{"use strict";var $j=m2e(),uHt=require("util"),Lj=require("path"),lHt=require("http"),dHt=require("https"),fHt=require("url").parse,pHt=require("fs"),mHt=require("stream").Stream,hHt=require("crypto"),Mj=b2e(),gHt=M2e(),AHt=sNe(),Kp=lk(),Wj=aNe();function Cr(t){if(!(this instanceof Cr))return new Cr(t);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],$j.call(this),t=t||{};for(var e in t)this[e]=t[e]}uHt.inherits(Cr,$j);Cr.LINE_BREAK=`\r -`;Cr.DEFAULT_CONTENT_TYPE="application/octet-stream";Cr.prototype.append=function(t,e,r){r=r||{},typeof r=="string"&&(r={filename:r});var n=$j.prototype.append.bind(this);if((typeof e=="number"||e==null)&&(e=String(e)),Array.isArray(e)){this._error(new Error("Arrays are not supported."));return}var s=this._multiPartHeader(t,e,r),i=this._multiPartFooter();n(s),n(e),n(i),this._trackLength(s,e,r)};Cr.prototype._trackLength=function(t,e,r){var n=0;r.knownLength!=null?n+=Number(r.knownLength):Buffer.isBuffer(e)?n=e.length:typeof e=="string"&&(n=Buffer.byteLength(e)),this._valueLength+=n,this._overheadLength+=Buffer.byteLength(t)+Cr.LINE_BREAK.length,!(!e||!e.path&&!(e.readable&&Kp(e,"httpVersion"))&&!(e instanceof mHt))&&(r.knownLength||this._valuesToMeasure.push(e))};Cr.prototype._lengthRetriever=function(t,e){Kp(t,"fd")?t.end!=null&&t.end!=1/0&&t.start!=null?e(null,t.end+1-(t.start?t.start:0)):pHt.stat(t.path,function(r,n){if(r){e(r);return}var s=n.size-(t.start?t.start:0);e(null,s)}):Kp(t,"httpVersion")?e(null,Number(t.headers["content-length"])):Kp(t,"httpModule")?(t.on("response",function(r){t.pause(),e(null,Number(r.headers["content-length"]))}),t.resume()):e("Unknown stream")};Cr.prototype._multiPartHeader=function(t,e,r){if(typeof r.header=="string")return r.header;var n=this._getContentDisposition(e,r),s=this._getContentType(e,r),i="",a={"Content-Disposition":["form-data",'name="'+t+'"'].concat(n||[]),"Content-Type":[].concat(s||[])};typeof r.header=="object"&&Wj(a,r.header);var o;for(var c in a)if(Kp(a,c)){if(o=a[c],o==null)continue;Array.isArray(o)||(o=[o]),o.length&&(i+=c+": "+o.join("; ")+Cr.LINE_BREAK)}return"--"+this.getBoundary()+Cr.LINE_BREAK+i+Cr.LINE_BREAK};Cr.prototype._getContentDisposition=function(t,e){var r;if(typeof e.filepath=="string"?r=Lj.normalize(e.filepath).replace(/\\/g,"/"):e.filename||t&&(t.name||t.path)?r=Lj.basename(e.filename||t&&(t.name||t.path)):t&&t.readable&&Kp(t,"httpVersion")&&(r=Lj.basename(t.client._httpMessage.path||"")),r)return'filename="'+r+'"'};Cr.prototype._getContentType=function(t,e){var r=e.contentType;return!r&&t&&t.name&&(r=Mj.lookup(t.name)),!r&&t&&t.path&&(r=Mj.lookup(t.path)),!r&&t&&t.readable&&Kp(t,"httpVersion")&&(r=t.headers["content-type"]),!r&&(e.filepath||e.filename)&&(r=Mj.lookup(e.filepath||e.filename)),!r&&t&&typeof t=="object"&&(r=Cr.DEFAULT_CONTENT_TYPE),r};Cr.prototype._multiPartFooter=function(){return function(t){var e=Cr.LINE_BREAK,r=this._streams.length===0;r&&(e+=this._lastBoundary()),t(e)}.bind(this)};Cr.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+Cr.LINE_BREAK};Cr.prototype.getHeaders=function(t){var e,r={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(e in t)Kp(t,e)&&(r[e.toLowerCase()]=t[e]);return r};Cr.prototype.setBoundary=function(t){if(typeof t!="string")throw new TypeError("FormData boundary must be a string");this._boundary=t};Cr.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};Cr.prototype.getBuffer=function(){for(var t=new Buffer.alloc(0),e=this.getBoundary(),r=0,n=this._streams.length;r{"use strict";var kHt=require("url").parse,DHt={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},BHt=String.prototype.endsWith||function(t){return t.length<=this.length&&this.indexOf(t,this.length-t.length)!==-1};function LHt(t){var e=typeof t=="string"?kHt(t):t||{},r=e.protocol,n=e.host,s=e.port;if(typeof n!="string"||!n||typeof r!="string"||(r=r.split(":",1)[0],n=n.replace(/:\d*$/,""),s=parseInt(s)||DHt[r]||0,!MHt(n,s)))return"";var i=px("npm_config_"+r+"_proxy")||px(r+"_proxy")||px("npm_config_proxy")||px("all_proxy");return i&&i.indexOf("://")===-1&&(i=r+"://"+i),i}function MHt(t,e){var r=(px("npm_config_no_proxy")||px("no_proxy")).toLowerCase();return r?r==="*"?!1:r.split(/[,\s]/).every(function(n){if(!n)return!0;var s=n.match(/^(.+):(\d+)$/),i=s?s[1]:n,a=s?parseInt(s[2]):0;return a&&a!==e?!0:/^[.*]/.test(i)?(i.charAt(0)==="*"&&(i=i.slice(1)),!BHt.call(t,i)):t!==i}):!0}function px(t){return process.env[t.toLowerCase()]||process.env[t.toUpperCase()]||""}SNe.getProxyForUrl=LHt});var CNe=E((K6r,INe)=>{var mx=1e3,hx=mx*60,gx=hx*60,mh=gx*24,WHt=mh*7,$Ht=mh*365.25;INe.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return FHt(t);if(r==="number"&&isFinite(t))return e.long?qHt(t):UHt(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function FHt(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*$Ht;case"weeks":case"week":case"w":return r*WHt;case"days":case"day":case"d":return r*mh;case"hours":case"hour":case"hrs":case"hr":case"h":return r*gx;case"minutes":case"minute":case"mins":case"min":case"m":return r*hx;case"seconds":case"second":case"secs":case"sec":case"s":return r*mx;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function UHt(t){var e=Math.abs(t);return e>=mh?Math.round(t/mh)+"d":e>=gx?Math.round(t/gx)+"h":e>=hx?Math.round(t/hx)+"m":e>=mx?Math.round(t/mx)+"s":t+"ms"}function qHt(t){var e=Math.abs(t);return e>=mh?Ak(t,e,mh,"day"):e>=gx?Ak(t,e,gx,"hour"):e>=hx?Ak(t,e,hx,"minute"):e>=mx?Ak(t,e,mx,"second"):t+" ms"}function Ak(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var zj=E((V6r,TNe)=>{function jHt(t){r.debug=r,r.default=r,r.coerce=c,r.disable=a,r.enable=s,r.enabled=o,r.humanize=CNe(),r.destroy=u,Object.keys(t).forEach(l=>{r[l]=t[l]}),r.names=[],r.skips=[],r.formatters={};function e(l){let d=0;for(let f=0;f{if(I==="%%")return"%";x++;let w=r.formatters[R];if(typeof w=="function"){let N=A[x];I=w.call(g,N),A.splice(x,1),x--}return I}),r.formatArgs.call(g,A),(g.log||r.log).apply(g,A)}return h.namespace=l,h.useColors=r.useColors(),h.color=r.selectColor(l),h.extend=n,h.destroy=r.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(p!==r.namespaces&&(p=r.namespaces,m=r.enabled(l)),m),set:A=>{f=A}}),typeof r.init=="function"&&r.init(h),h}function n(l,d){let f=r(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function s(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let d=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?r.skips.push(f.slice(1)):r.names.push(f)}function i(l,d){let f=0,p=0,m=-1,h=0;for(;f"-"+d)].join(",");return r.enable(""),l}function o(l){for(let d of r.skips)if(i(l,d))return!1;for(let d of r.names)if(i(l,d))return!0;return!1}function c(l){return l instanceof Error?l.stack||l.message:l}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}TNe.exports=jHt});var wNe=E((Ga,yk)=>{Ga.formatArgs=QHt;Ga.save=GHt;Ga.load=KHt;Ga.useColors=HHt;Ga.storage=VHt();Ga.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Ga.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function HHt(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function QHt(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+yk.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),t.splice(n,0,e)}Ga.log=console.debug||console.log||(()=>{});function GHt(t){try{t?Ga.storage.setItem("debug",t):Ga.storage.removeItem("debug")}catch{}}function KHt(){let t;try{t=Ga.storage.getItem("debug")||Ga.storage.getItem("DEBUG")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function VHt(){try{return localStorage}catch{}}yk.exports=zj()(Ga);var{formatters:zHt}=yk.exports;zHt.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var NNe=E((z6r,RNe)=>{"use strict";RNe.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),s=e.indexOf("--");return n!==-1&&(s===-1||n{"use strict";var YHt=require("os"),ONe=require("tty"),dc=NNe(),{env:zs}=process,Yp;dc("no-color")||dc("no-colors")||dc("color=false")||dc("color=never")?Yp=0:(dc("color")||dc("colors")||dc("color=true")||dc("color=always"))&&(Yp=1);"FORCE_COLOR"in zs&&(zs.FORCE_COLOR==="true"?Yp=1:zs.FORCE_COLOR==="false"?Yp=0:Yp=zs.FORCE_COLOR.length===0?1:Math.min(parseInt(zs.FORCE_COLOR,10),3));function Yj(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function Jj(t,e){if(Yp===0)return 0;if(dc("color=16m")||dc("color=full")||dc("color=truecolor"))return 3;if(dc("color=256"))return 2;if(t&&!e&&Yp===void 0)return 0;let r=Yp||0;if(zs.TERM==="dumb")return r;if(process.platform==="win32"){let n=YHt.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in zs)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in zs)||zs.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in zs)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(zs.TEAMCITY_VERSION)?1:0;if(zs.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in zs){let n=parseInt((zs.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(zs.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(zs.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(zs.TERM)||"COLORTERM"in zs?1:r}function JHt(t){let e=Jj(t,t&&t.isTTY);return Yj(e)}PNe.exports={supportsColor:JHt,stdout:Yj(Jj(!0,ONe.isatty(1))),stderr:Yj(Jj(!0,ONe.isatty(2)))}});var BNe=E((Ys,bk)=>{var XHt=require("tty"),xk=require("util");Ys.init=iQt;Ys.log=rQt;Ys.formatArgs=eQt;Ys.save=nQt;Ys.load=sQt;Ys.useColors=ZHt;Ys.destroy=xk.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Ys.colors=[6,2,3,4,5,1];try{let t=kNe();t&&(t.stderr||t).level>=2&&(Ys.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Ys.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});function ZHt(){return"colors"in Ys.inspectOpts?!!Ys.inspectOpts.colors:XHt.isatty(process.stderr.fd)}function eQt(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${e} \x1B[0m`;t[0]=i+t[0].split(` +${ee}`),H.destroy(q)}function V(q,H){q.headers["accept-version"]!==void 0&&(q.headers[v9t]=q.headers["accept-version"],q.headers["accept-version"]=void 0),p.router.lookup(q,H)}function j(q,H,ee){if(o){let re=Gwe(P.server,H),X=Hwe(P,c,H,re),ie=new e3(re,null,H,null,X,P),ce=new RS(ee,ie,X);return i===!1&&X.info({req:ie},"incoming request"),o(new H9t(q),ie,ce)}let ne=`{"error":"Bad Request","code":"FST_ERR_BAD_URL","message":"'${q}' is not a valid url component","statusCode":400}`;ee.writeHead(400,{"Content-Type":"application/json","Content-Length":ne.length}),ee.end(ne)}function J(q,H,ee){if(q!==!1)return function(re){if(re){if(o){let ie=Gwe(P.server,H),ce=Hwe(P,c,H,ie),fe=new e3(ie,null,H,null,ce,P),Ne=new RS(ee,fe,ce);return i===!1&&ce.info({req:fe},"incoming request"),o(new j9t,fe,Ne)}let X='{"error":"Internal Server Error","message":"Unexpected error from async constraint","statusCode":500}';ee.writeHead(500,{"Content-Type":"application/json","Content-Length":X.length}),ee.end(X)}}}function se(q,H){return L('Cannot call "setNotFoundHandler"!'),p.setNotFoundHandler.call(this,q,H,N,f.routeHandler),this}function oe(q){return L('Cannot call "setValidatorCompiler"!'),this[Gp].setValidatorCompiler(q),this}function ue(q){return L('Cannot call "setSchemaErrorFormatter"!'),Jwe(q),this[pj]=q.bind(this),this}function Ce(q){return L('Cannot call "setSerializerCompiler"!'),this[Gp].setSerializerCompiler(q),this}function we(q){L('Cannot call "setSchemaController"!');let H=this[Gp],ee=qwe.buildSchemaController(H,Object.assign({},H.opts,q));return this[Gp]=ee,this.getSchema=ee.getSchema.bind(ee),this.getSchemas=ee.getSchemas.bind(ee),this}function qe(q){return L('Cannot call "setReplySerializer"!'),this[Uwe]=q,this}function Fe(q){return L('Cannot call "setErrorHandler"!'),this[ZP]=Ywe(this[ZP],q.bind(this)),this}function _e(q){return L('Cannot call "setChildLoggerFactory"!'),this[hj]=q,this}function U(q={}){return q.includeMeta=q.includeHooks?q.includeMeta?Aj.concat(q.includeMeta):Aj:q.includeMeta,f.printRoutes(q)}function G(q,{rewriteUrl:H,logger:ee}){let ne;return function(X,ie){if(ne===void 0&&(ne=q.isAsyncConstraint()),H){X.originalUrl=X.url;let ce=H.call(R,X);if(typeof ce=="string")X.url=ce;else{let fe=new eqt(X.url,typeof ce);X.destroy(fe)}}q.routing(X,ie,J(ne,X,ie))}}function z(q){return L('Cannot call "setGenReqId"!'),this[gj]=Vwe(this[fj].requestIdHeader,q),this}}t3.errorCodes=lh;function Jwe(t){if(typeof t!="function")throw new Kwe(typeof t);if(t.constructor.name==="AsyncFunction")throw new Kwe("AsyncFunction")}r3.exports=t3;r3.exports.fastify=t3;r3.exports.default=t3});var p2e=E((eMr,f2e)=>{var d2e=require("stream").Stream,Bqt=require("util");f2e.exports=tu;function tu(){this.source=null,this.dataSize=0,this.maxDataSize=1024*1024,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}Bqt.inherits(tu,d2e);tu.create=function(t,e){var r=new this;e=e||{};for(var n in e)r[n]=e[n];r.source=t;var s=t.emit;return t.emit=function(){return r._handleEmit(arguments),s.apply(t,arguments)},t.on("error",function(){}),r.pauseStream&&t.pause(),r};Object.defineProperty(tu.prototype,"readable",{configurable:!0,enumerable:!0,get:function(){return this.source.readable}});tu.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)};tu.prototype.resume=function(){this._released||this.release(),this.source.resume()};tu.prototype.pause=function(){this.source.pause()};tu.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(t){this.emit.apply(this,t)}.bind(this)),this._bufferedEvents=[]};tu.prototype.pipe=function(){var t=d2e.prototype.pipe.apply(this,arguments);return this.resume(),t};tu.prototype._handleEmit=function(t){if(this._released){this.emit.apply(this,t);return}t[0]==="data"&&(this.dataSize+=t[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(t)};tu.prototype._checkIfMaxDataSizeExceeded=function(){if(!this._maxDataSizeExceeded&&!(this.dataSize<=this.maxDataSize)){this._maxDataSizeExceeded=!0;var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this.emit("error",new Error(t))}}});var A2e=E((tMr,g2e)=>{var Mqt=require("util"),h2e=require("stream").Stream,m2e=p2e();g2e.exports=Kn;function Kn(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2*1024*1024,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}Mqt.inherits(Kn,h2e);Kn.create=function(t){var e=new this;t=t||{};for(var r in t)e[r]=t[r];return e};Kn.isStreamLike=function(t){return typeof t!="function"&&typeof t!="string"&&typeof t!="boolean"&&typeof t!="number"&&!Buffer.isBuffer(t)};Kn.prototype.append=function(t){var e=Kn.isStreamLike(t);if(e){if(!(t instanceof m2e)){var r=m2e.create(t,{maxDataSize:1/0,pauseStream:this.pauseStreams});t.on("data",this._checkDataSize.bind(this)),t=r}this._handleErrors(t),this.pauseStreams&&t.pause()}return this._streams.push(t),this};Kn.prototype.pipe=function(t,e){return h2e.prototype.pipe.call(this,t,e),this.resume(),t};Kn.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop){this._pendingNext=!0;return}this._insideLoop=!0;try{do this._pendingNext=!1,this._realGetNext();while(this._pendingNext)}finally{this._insideLoop=!1}};Kn.prototype._realGetNext=function(){var t=this._streams.shift();if(typeof t>"u"){this.end();return}if(typeof t!="function"){this._pipeNext(t);return}var e=t;e(function(r){var n=Kn.isStreamLike(r);n&&(r.on("data",this._checkDataSize.bind(this)),this._handleErrors(r)),this._pipeNext(r)}.bind(this))};Kn.prototype._pipeNext=function(t){this._currentStream=t;var e=Kn.isStreamLike(t);if(e){t.on("end",this._getNext.bind(this)),t.pipe(this,{end:!1});return}var r=t;this.write(r),this._getNext()};Kn.prototype._handleErrors=function(t){var e=this;t.on("error",function(r){e._emitError(r)})};Kn.prototype.write=function(t){this.emit("data",t)};Kn.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&typeof this._currentStream.pause=="function"&&this._currentStream.pause(),this.emit("pause"))};Kn.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&typeof this._currentStream.resume=="function"&&this._currentStream.resume(),this.emit("resume")};Kn.prototype.end=function(){this._reset(),this.emit("end")};Kn.prototype.destroy=function(){this._reset(),this.emit("close")};Kn.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null};Kn.prototype._checkDataSize=function(){if(this._updateDataSize(),!(this.dataSize<=this.maxDataSize)){var t="DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.";this._emitError(new Error(t))}};Kn.prototype._updateDataSize=function(){this.dataSize=0;var t=this;this._streams.forEach(function(e){e.dataSize&&(t.dataSize+=e.dataSize)}),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)};Kn.prototype._emitError=function(t){this._reset(),this.emit("error",t)}});var y2e=E((rMr,Wqt)=>{Wqt.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}});var b2e=E((nMr,x2e)=>{x2e.exports=y2e()});var S2e=E(Qa=>{"use strict";var o3=b2e(),$qt=require("path").extname,E2e=/^\s*([^;\s]*)(?:;|\s|$)/,Fqt=/^text\//i;Qa.charset=_2e;Qa.charsets={lookup:_2e};Qa.contentType=Uqt;Qa.extension=qqt;Qa.extensions=Object.create(null);Qa.lookup=jqt;Qa.types=Object.create(null);Hqt(Qa.extensions,Qa.types);function _2e(t){if(!t||typeof t!="string")return!1;var e=E2e.exec(t),r=e&&o3[e[1].toLowerCase()];return r&&r.charset?r.charset:e&&Fqt.test(e[1])?"UTF-8":!1}function Uqt(t){if(!t||typeof t!="string")return!1;var e=t.indexOf("/")===-1?Qa.lookup(t):t;if(!e)return!1;if(e.indexOf("charset")===-1){var r=Qa.charset(e);r&&(e+="; charset="+r.toLowerCase())}return e}function qqt(t){if(!t||typeof t!="string")return!1;var e=E2e.exec(t),r=e&&Qa.extensions[e[1].toLowerCase()];return!r||!r.length?!1:r[0]}function jqt(t){if(!t||typeof t!="string")return!1;var e=$qt("x."+t).toLowerCase().substr(1);return e&&Qa.types[e]||!1}function Hqt(t,e){var r=["nginx","apache",void 0,"iana"];Object.keys(o3).forEach(function(s){var i=o3[s],a=i.extensions;if(!(!a||!a.length)){t[s]=a;for(var o=0;ol||u===l&&e[c].substr(0,12)==="application/"))continue}e[c]=s}}})}});var C2e=E((iMr,v2e)=>{v2e.exports=Qqt;function Qqt(t){var e=typeof setImmediate=="function"?setImmediate:typeof process=="object"&&typeof process.nextTick=="function"?process.nextTick:null;e?e(t):setTimeout(t,0)}});var Ej=E((aMr,T2e)=>{var I2e=C2e();T2e.exports=Gqt;function Gqt(t){var e=!1;return I2e(function(){e=!0}),function(n,s){e?t(n,s):I2e(function(){t(n,s)})}}});var _j=E((oMr,w2e)=>{w2e.exports=Vqt;function Vqt(t){Object.keys(t.jobs).forEach(zqt.bind(t)),t.jobs={}}function zqt(t){typeof this.jobs[t]=="function"&&this.jobs[t]()}});var Sj=E((cMr,N2e)=>{var R2e=Ej(),Kqt=_j();N2e.exports=Yqt;function Yqt(t,e,r,n){var s=r.keyedList?r.keyedList[r.index]:r.index;r.jobs[s]=Jqt(e,s,t[s],function(i,a){s in r.jobs&&(delete r.jobs[s],i?Kqt(r):r.results[s]=a,n(i,r.results))})}function Jqt(t,e,r,n){var s;return t.length==2?s=t(r,R2e(n)):s=t(r,e,R2e(n)),s}});var vj=E((uMr,O2e)=>{O2e.exports=Xqt;function Xqt(t,e){var r=!Array.isArray(t),n={index:0,keyedList:r||e?Object.keys(t):null,jobs:{},results:r?{}:[],size:r?Object.keys(t).length:t.length};return e&&n.keyedList.sort(r?e:function(s,i){return e(t[s],t[i])}),n}});var Cj=E((lMr,P2e)=>{var Zqt=_j(),ejt=Ej();P2e.exports=tjt;function tjt(t){Object.keys(this.jobs).length&&(this.index=this.size,Zqt(this),ejt(t)(null,this.results))}});var k2e=E((dMr,D2e)=>{var rjt=Sj(),njt=vj(),sjt=Cj();D2e.exports=ijt;function ijt(t,e,r){for(var n=njt(t);n.index<(n.keyedList||t).length;)rjt(t,e,n,function(s,i){if(s){r(s,i);return}if(Object.keys(n.jobs).length===0){r(null,n.results);return}}),n.index++;return sjt.bind(n,r)}});var Ij=E((fMr,c3)=>{var L2e=Sj(),ajt=vj(),ojt=Cj();c3.exports=cjt;c3.exports.ascending=B2e;c3.exports.descending=ujt;function cjt(t,e,r,n){var s=ajt(t,r);return L2e(t,e,s,function i(a,o){if(a){n(a,o);return}if(s.index++,s.index<(s.keyedList||t).length){L2e(t,e,s,i);return}n(null,s.results)}),ojt.bind(s,n)}function B2e(t,e){return te?1:0}function ujt(t,e){return-1*B2e(t,e)}});var W2e=E((pMr,M2e)=>{var ljt=Ij();M2e.exports=djt;function djt(t,e,r){return ljt(t,e,null,r)}});var F2e=E((mMr,$2e)=>{$2e.exports={parallel:k2e(),serial:W2e(),serialOrdered:Ij()}});var Tj=E((hMr,U2e)=>{"use strict";U2e.exports=Object});var j2e=E((gMr,q2e)=>{"use strict";q2e.exports=Error});var Q2e=E((AMr,H2e)=>{"use strict";H2e.exports=EvalError});var V2e=E((yMr,G2e)=>{"use strict";G2e.exports=RangeError});var K2e=E((xMr,z2e)=>{"use strict";z2e.exports=ReferenceError});var J2e=E((bMr,Y2e)=>{"use strict";Y2e.exports=SyntaxError});var Vp=E((EMr,X2e)=>{"use strict";X2e.exports=TypeError});var eRe=E((_Mr,Z2e)=>{"use strict";Z2e.exports=URIError});var rRe=E((SMr,tRe)=>{"use strict";tRe.exports=Math.abs});var sRe=E((vMr,nRe)=>{"use strict";nRe.exports=Math.floor});var aRe=E((CMr,iRe)=>{"use strict";iRe.exports=Math.max});var cRe=E((IMr,oRe)=>{"use strict";oRe.exports=Math.min});var lRe=E((TMr,uRe)=>{"use strict";uRe.exports=Math.pow});var fRe=E((wMr,dRe)=>{"use strict";dRe.exports=Math.round});var mRe=E((RMr,pRe)=>{"use strict";pRe.exports=Number.isNaN||function(e){return e!==e}});var gRe=E((NMr,hRe)=>{"use strict";var fjt=mRe();hRe.exports=function(e){return fjt(e)||e===0?e:e<0?-1:1}});var yRe=E((OMr,ARe)=>{"use strict";ARe.exports=Object.getOwnPropertyDescriptor});var wj=E((PMr,xRe)=>{"use strict";var u3=yRe();if(u3)try{u3([],"length")}catch{u3=null}xRe.exports=u3});var ERe=E((DMr,bRe)=>{"use strict";var l3=Object.defineProperty||!1;if(l3)try{l3({},"a",{value:1})}catch{l3=!1}bRe.exports=l3});var Rj=E((kMr,_Re)=>{"use strict";_Re.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var e={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var s=42;e[r]=s;for(var i in e)return!1;if(typeof Object.keys=="function"&&Object.keys(e).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(e).length!==0)return!1;var a=Object.getOwnPropertySymbols(e);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(e,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(e,r);if(o.value!==s||o.enumerable!==!0)return!1}return!0}});var CRe=E((LMr,vRe)=>{"use strict";var SRe=typeof Symbol<"u"&&Symbol,pjt=Rj();vRe.exports=function(){return typeof SRe!="function"||typeof Symbol!="function"||typeof SRe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:pjt()}});var Nj=E((BMr,IRe)=>{"use strict";IRe.exports=typeof Reflect<"u"&&Reflect.getPrototypeOf||null});var Oj=E((MMr,TRe)=>{"use strict";var mjt=Tj();TRe.exports=mjt.getPrototypeOf||null});var NRe=E((WMr,RRe)=>{"use strict";var hjt="Function.prototype.bind called on incompatible ",gjt=Object.prototype.toString,Ajt=Math.max,yjt="[object Function]",wRe=function(e,r){for(var n=[],s=0;s{"use strict";var Ejt=NRe();ORe.exports=Function.prototype.bind||Ejt});var d3=E((FMr,PRe)=>{"use strict";PRe.exports=Function.prototype.call});var Pj=E((UMr,DRe)=>{"use strict";DRe.exports=Function.prototype.apply});var LRe=E((qMr,kRe)=>{"use strict";kRe.exports=typeof Reflect<"u"&&Reflect&&Reflect.apply});var MRe=E((jMr,BRe)=>{"use strict";var _jt=DS(),Sjt=Pj(),vjt=d3(),Cjt=LRe();BRe.exports=Cjt||_jt.call(vjt,Sjt)});var Dj=E((HMr,WRe)=>{"use strict";var Ijt=DS(),Tjt=Vp(),wjt=d3(),Rjt=MRe();WRe.exports=function(e){if(e.length<1||typeof e[0]!="function")throw new Tjt("a function is required");return Rjt(Ijt,wjt,e)}});var HRe=E((QMr,jRe)=>{"use strict";var Njt=Dj(),$Re=wj(),URe;try{URe=[].__proto__===Array.prototype}catch(t){if(!t||typeof t!="object"||!("code"in t)||t.code!=="ERR_PROTO_ACCESS")throw t}var kj=!!URe&&$Re&&$Re(Object.prototype,"__proto__"),qRe=Object,FRe=qRe.getPrototypeOf;jRe.exports=kj&&typeof kj.get=="function"?Njt([kj.get]):typeof FRe=="function"?function(e){return FRe(e==null?e:qRe(e))}:!1});var KRe=E((GMr,zRe)=>{"use strict";var QRe=Nj(),GRe=Oj(),VRe=HRe();zRe.exports=QRe?function(e){return QRe(e)}:GRe?function(e){if(!e||typeof e!="object"&&typeof e!="function")throw new TypeError("getProto: not an object");return GRe(e)}:VRe?function(e){return VRe(e)}:null});var f3=E((VMr,YRe)=>{"use strict";var Ojt=Function.prototype.call,Pjt=Object.prototype.hasOwnProperty,Djt=DS();YRe.exports=Djt.call(Ojt,Pjt)});var MS=E((zMr,rNe)=>{"use strict";var ur,kjt=Tj(),Ljt=j2e(),Bjt=Q2e(),Mjt=V2e(),Wjt=K2e(),ux=J2e(),cx=Vp(),$jt=eRe(),Fjt=rRe(),Ujt=sRe(),qjt=aRe(),jjt=cRe(),Hjt=lRe(),Qjt=fRe(),Gjt=gRe(),eNe=Function,Lj=function(t){try{return eNe('"use strict"; return ('+t+").constructor;")()}catch{}},kS=wj(),Vjt=ERe(),Bj=function(){throw new cx},zjt=kS?function(){try{return arguments.callee,Bj}catch{try{return kS(arguments,"callee").get}catch{return Bj}}}():Bj,ax=CRe()(),Vs=KRe(),Kjt=Oj(),Yjt=Nj(),tNe=Pj(),LS=d3(),ox={},Jjt=typeof Uint8Array>"u"||!Vs?ur:Vs(Uint8Array),dh={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?ur:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?ur:ArrayBuffer,"%ArrayIteratorPrototype%":ax&&Vs?Vs([][Symbol.iterator]()):ur,"%AsyncFromSyncIteratorPrototype%":ur,"%AsyncFunction%":ox,"%AsyncGenerator%":ox,"%AsyncGeneratorFunction%":ox,"%AsyncIteratorPrototype%":ox,"%Atomics%":typeof Atomics>"u"?ur:Atomics,"%BigInt%":typeof BigInt>"u"?ur:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?ur:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?ur:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?ur:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Ljt,"%eval%":eval,"%EvalError%":Bjt,"%Float16Array%":typeof Float16Array>"u"?ur:Float16Array,"%Float32Array%":typeof Float32Array>"u"?ur:Float32Array,"%Float64Array%":typeof Float64Array>"u"?ur:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?ur:FinalizationRegistry,"%Function%":eNe,"%GeneratorFunction%":ox,"%Int8Array%":typeof Int8Array>"u"?ur:Int8Array,"%Int16Array%":typeof Int16Array>"u"?ur:Int16Array,"%Int32Array%":typeof Int32Array>"u"?ur:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":ax&&Vs?Vs(Vs([][Symbol.iterator]())):ur,"%JSON%":typeof JSON=="object"?JSON:ur,"%Map%":typeof Map>"u"?ur:Map,"%MapIteratorPrototype%":typeof Map>"u"||!ax||!Vs?ur:Vs(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":kjt,"%Object.getOwnPropertyDescriptor%":kS,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?ur:Promise,"%Proxy%":typeof Proxy>"u"?ur:Proxy,"%RangeError%":Mjt,"%ReferenceError%":Wjt,"%Reflect%":typeof Reflect>"u"?ur:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?ur:Set,"%SetIteratorPrototype%":typeof Set>"u"||!ax||!Vs?ur:Vs(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?ur:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":ax&&Vs?Vs(""[Symbol.iterator]()):ur,"%Symbol%":ax?Symbol:ur,"%SyntaxError%":ux,"%ThrowTypeError%":zjt,"%TypedArray%":Jjt,"%TypeError%":cx,"%Uint8Array%":typeof Uint8Array>"u"?ur:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?ur:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?ur:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?ur:Uint32Array,"%URIError%":$jt,"%WeakMap%":typeof WeakMap>"u"?ur:WeakMap,"%WeakRef%":typeof WeakRef>"u"?ur:WeakRef,"%WeakSet%":typeof WeakSet>"u"?ur:WeakSet,"%Function.prototype.call%":LS,"%Function.prototype.apply%":tNe,"%Object.defineProperty%":Vjt,"%Object.getPrototypeOf%":Kjt,"%Math.abs%":Fjt,"%Math.floor%":Ujt,"%Math.max%":qjt,"%Math.min%":jjt,"%Math.pow%":Hjt,"%Math.round%":Qjt,"%Math.sign%":Gjt,"%Reflect.getPrototypeOf%":Yjt};if(Vs)try{null.error}catch(t){JRe=Vs(Vs(t)),dh["%Error.prototype%"]=JRe}var JRe,Xjt=function t(e){var r;if(e==="%AsyncFunction%")r=Lj("async function () {}");else if(e==="%GeneratorFunction%")r=Lj("function* () {}");else if(e==="%AsyncGeneratorFunction%")r=Lj("async function* () {}");else if(e==="%AsyncGenerator%"){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(e==="%AsyncIteratorPrototype%"){var s=t("%AsyncGenerator%");s&&Vs&&(r=Vs(s.prototype))}return dh[e]=r,r},XRe={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},BS=DS(),p3=f3(),Zjt=BS.call(LS,Array.prototype.concat),eHt=BS.call(tNe,Array.prototype.splice),ZRe=BS.call(LS,String.prototype.replace),m3=BS.call(LS,String.prototype.slice),tHt=BS.call(LS,RegExp.prototype.exec),rHt=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,nHt=/\\(\\)?/g,sHt=function(e){var r=m3(e,0,1),n=m3(e,-1);if(r==="%"&&n!=="%")throw new ux("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new ux("invalid intrinsic syntax, expected opening `%`");var s=[];return ZRe(e,rHt,function(i,a,o,c){s[s.length]=o?ZRe(c,nHt,"$1"):a||i}),s},iHt=function(e,r){var n=e,s;if(p3(XRe,n)&&(s=XRe[n],n="%"+s[0]+"%"),p3(dh,n)){var i=dh[n];if(i===ox&&(i=Xjt(n)),typeof i>"u"&&!r)throw new cx("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:s,name:n,value:i}}throw new ux("intrinsic "+e+" does not exist!")};rNe.exports=function(e,r){if(typeof e!="string"||e.length===0)throw new cx("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new cx('"allowMissing" argument must be a boolean');if(tHt(/^%?[^%]*%?$/,e)===null)throw new ux("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=sHt(e),s=n.length>0?n[0]:"",i=iHt("%"+s+"%",r),a=i.name,o=i.value,c=!1,u=i.alias;u&&(s=u[0],eHt(n,Zjt([0,1],u)));for(var l=1,d=!0;l=n.length){var h=kS(o,f);d=!!h,d&&"get"in h&&!("originalValue"in h.get)?o=h.get:o=o[f]}else d=p3(o,f),o=o[f];d&&!c&&(dh[a]=o)}}return o}});var sNe=E((KMr,nNe)=>{"use strict";var aHt=Rj();nNe.exports=function(){return aHt()&&!!Symbol.toStringTag}});var oNe=E((YMr,aNe)=>{"use strict";var oHt=MS(),iNe=oHt("%Object.defineProperty%",!0),cHt=sNe()(),uHt=f3(),lHt=Vp(),h3=cHt?Symbol.toStringTag:null;aNe.exports=function(e,r){var n=arguments.length>2&&!!arguments[2]&&arguments[2].force,s=arguments.length>2&&!!arguments[2]&&arguments[2].nonConfigurable;if(typeof n<"u"&&typeof n!="boolean"||typeof s<"u"&&typeof s!="boolean")throw new lHt("if provided, the `overrideIfSet` and `nonConfigurable` options must be booleans");h3&&(n||!uHt(e,h3))&&(iNe?iNe(e,h3,{configurable:!s,enumerable:!1,value:r,writable:!1}):e[h3]=r)}});var uNe=E((JMr,cNe)=>{"use strict";cNe.exports=function(t,e){return Object.keys(e).forEach(function(r){t[r]=t[r]||e[r]}),t}});var dNe=E((XMr,lNe)=>{"use strict";var Fj=A2e(),dHt=require("util"),Mj=require("path"),fHt=require("http"),pHt=require("https"),mHt=require("url").parse,hHt=require("fs"),gHt=require("stream").Stream,AHt=require("crypto"),Wj=S2e(),yHt=F2e(),xHt=oNe(),zp=f3(),$j=uNe();function Tr(t){if(!(this instanceof Tr))return new Tr(t);this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],Fj.call(this),t=t||{};for(var e in t)this[e]=t[e]}dHt.inherits(Tr,Fj);Tr.LINE_BREAK=`\r +`;Tr.DEFAULT_CONTENT_TYPE="application/octet-stream";Tr.prototype.append=function(t,e,r){r=r||{},typeof r=="string"&&(r={filename:r});var n=Fj.prototype.append.bind(this);if((typeof e=="number"||e==null)&&(e=String(e)),Array.isArray(e)){this._error(new Error("Arrays are not supported."));return}var s=this._multiPartHeader(t,e,r),i=this._multiPartFooter();n(s),n(e),n(i),this._trackLength(s,e,r)};Tr.prototype._trackLength=function(t,e,r){var n=0;r.knownLength!=null?n+=Number(r.knownLength):Buffer.isBuffer(e)?n=e.length:typeof e=="string"&&(n=Buffer.byteLength(e)),this._valueLength+=n,this._overheadLength+=Buffer.byteLength(t)+Tr.LINE_BREAK.length,!(!e||!e.path&&!(e.readable&&zp(e,"httpVersion"))&&!(e instanceof gHt))&&(r.knownLength||this._valuesToMeasure.push(e))};Tr.prototype._lengthRetriever=function(t,e){zp(t,"fd")?t.end!=null&&t.end!=1/0&&t.start!=null?e(null,t.end+1-(t.start?t.start:0)):hHt.stat(t.path,function(r,n){if(r){e(r);return}var s=n.size-(t.start?t.start:0);e(null,s)}):zp(t,"httpVersion")?e(null,Number(t.headers["content-length"])):zp(t,"httpModule")?(t.on("response",function(r){t.pause(),e(null,Number(r.headers["content-length"]))}),t.resume()):e("Unknown stream")};Tr.prototype._multiPartHeader=function(t,e,r){if(typeof r.header=="string")return r.header;var n=this._getContentDisposition(e,r),s=this._getContentType(e,r),i="",a={"Content-Disposition":["form-data",'name="'+t+'"'].concat(n||[]),"Content-Type":[].concat(s||[])};typeof r.header=="object"&&$j(a,r.header);var o;for(var c in a)if(zp(a,c)){if(o=a[c],o==null)continue;Array.isArray(o)||(o=[o]),o.length&&(i+=c+": "+o.join("; ")+Tr.LINE_BREAK)}return"--"+this.getBoundary()+Tr.LINE_BREAK+i+Tr.LINE_BREAK};Tr.prototype._getContentDisposition=function(t,e){var r;if(typeof e.filepath=="string"?r=Mj.normalize(e.filepath).replace(/\\/g,"/"):e.filename||t&&(t.name||t.path)?r=Mj.basename(e.filename||t&&(t.name||t.path)):t&&t.readable&&zp(t,"httpVersion")&&(r=Mj.basename(t.client._httpMessage.path||"")),r)return'filename="'+r+'"'};Tr.prototype._getContentType=function(t,e){var r=e.contentType;return!r&&t&&t.name&&(r=Wj.lookup(t.name)),!r&&t&&t.path&&(r=Wj.lookup(t.path)),!r&&t&&t.readable&&zp(t,"httpVersion")&&(r=t.headers["content-type"]),!r&&(e.filepath||e.filename)&&(r=Wj.lookup(e.filepath||e.filename)),!r&&t&&typeof t=="object"&&(r=Tr.DEFAULT_CONTENT_TYPE),r};Tr.prototype._multiPartFooter=function(){return function(t){var e=Tr.LINE_BREAK,r=this._streams.length===0;r&&(e+=this._lastBoundary()),t(e)}.bind(this)};Tr.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+Tr.LINE_BREAK};Tr.prototype.getHeaders=function(t){var e,r={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(e in t)zp(t,e)&&(r[e.toLowerCase()]=t[e]);return r};Tr.prototype.setBoundary=function(t){if(typeof t!="string")throw new TypeError("FormData boundary must be a string");this._boundary=t};Tr.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary};Tr.prototype.getBuffer=function(){for(var t=new Buffer.alloc(0),e=this.getBoundary(),r=0,n=this._streams.length;r{"use strict";var LHt=require("url").parse,BHt={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},MHt=String.prototype.endsWith||function(t){return t.length<=this.length&&this.indexOf(t,this.length-t.length)!==-1};function WHt(t){var e=typeof t=="string"?LHt(t):t||{},r=e.protocol,n=e.host,s=e.port;if(typeof n!="string"||!n||typeof r!="string"||(r=r.split(":",1)[0],n=n.replace(/:\d*$/,""),s=parseInt(s)||BHt[r]||0,!$Ht(n,s)))return"";var i=px("npm_config_"+r+"_proxy")||px(r+"_proxy")||px("npm_config_proxy")||px("all_proxy");return i&&i.indexOf("://")===-1&&(i=r+"://"+i),i}function $Ht(t,e){var r=(px("npm_config_no_proxy")||px("no_proxy")).toLowerCase();return r?r==="*"?!1:r.split(/[,\s]/).every(function(n){if(!n)return!0;var s=n.match(/^(.+):(\d+)$/),i=s?s[1]:n,a=s?parseInt(s[2]):0;return a&&a!==e?!0:/^[.*]/.test(i)?(i.charAt(0)==="*"&&(i=i.slice(1)),!MHt.call(t,i)):t!==i}):!0}function px(t){return process.env[t.toLowerCase()]||process.env[t.toUpperCase()]||""}INe.getProxyForUrl=WHt});var RNe=E((Z6r,wNe)=>{var mx=1e3,hx=mx*60,gx=hx*60,mh=gx*24,FHt=mh*7,UHt=mh*365.25;wNe.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return qHt(t);if(r==="number"&&isFinite(t))return e.long?HHt(t):jHt(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function qHt(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*UHt;case"weeks":case"week":case"w":return r*FHt;case"days":case"day":case"d":return r*mh;case"hours":case"hour":case"hrs":case"hr":case"h":return r*gx;case"minutes":case"minute":case"mins":case"min":case"m":return r*hx;case"seconds":case"second":case"secs":case"sec":case"s":return r*mx;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function jHt(t){var e=Math.abs(t);return e>=mh?Math.round(t/mh)+"d":e>=gx?Math.round(t/gx)+"h":e>=hx?Math.round(t/hx)+"m":e>=mx?Math.round(t/mx)+"s":t+"ms"}function HHt(t){var e=Math.abs(t);return e>=mh?x3(t,e,mh,"day"):e>=gx?x3(t,e,gx,"hour"):e>=hx?x3(t,e,hx,"minute"):e>=mx?x3(t,e,mx,"second"):t+" ms"}function x3(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var Yj=E((e5r,NNe)=>{function QHt(t){r.debug=r,r.default=r,r.coerce=c,r.disable=a,r.enable=s,r.enabled=o,r.humanize=RNe(),r.destroy=u,Object.keys(t).forEach(l=>{r[l]=t[l]}),r.names=[],r.skips=[],r.formatters={};function e(l){let d=0;for(let f=0;f{if(C==="%%")return"%";x++;let w=r.formatters[R];if(typeof w=="function"){let N=A[x];C=w.call(g,N),A.splice(x,1),x--}return C}),r.formatArgs.call(g,A),(g.log||r.log).apply(g,A)}return h.namespace=l,h.useColors=r.useColors(),h.color=r.selectColor(l),h.extend=n,h.destroy=r.destroy,Object.defineProperty(h,"enabled",{enumerable:!0,configurable:!1,get:()=>f!==null?f:(p!==r.namespaces&&(p=r.namespaces,m=r.enabled(l)),m),set:A=>{f=A}}),typeof r.init=="function"&&r.init(h),h}function n(l,d){let f=r(this.namespace+(typeof d>"u"?":":d)+l);return f.log=this.log,f}function s(l){r.save(l),r.namespaces=l,r.names=[],r.skips=[];let d=(typeof l=="string"?l:"").trim().replace(/\s+/g,",").split(",").filter(Boolean);for(let f of d)f[0]==="-"?r.skips.push(f.slice(1)):r.names.push(f)}function i(l,d){let f=0,p=0,m=-1,h=0;for(;f"-"+d)].join(",");return r.enable(""),l}function o(l){for(let d of r.skips)if(i(l,d))return!1;for(let d of r.names)if(i(l,d))return!0;return!1}function c(l){return l instanceof Error?l.stack||l.message:l}function u(){console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.")}return r.enable(r.load()),r}NNe.exports=QHt});var ONe=E((Ga,b3)=>{Ga.formatArgs=VHt;Ga.save=zHt;Ga.load=KHt;Ga.useColors=GHt;Ga.storage=YHt();Ga.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Ga.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function GHt(){if(typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs))return!0;if(typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;let t;return typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&(t=navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/))&&parseInt(t[1],10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function VHt(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+b3.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),t.splice(n,0,e)}Ga.log=console.debug||console.log||(()=>{});function zHt(t){try{t?Ga.storage.setItem("debug",t):Ga.storage.removeItem("debug")}catch{}}function KHt(){let t;try{t=Ga.storage.getItem("debug")||Ga.storage.getItem("DEBUG")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function YHt(){try{return localStorage}catch{}}b3.exports=Yj()(Ga);var{formatters:JHt}=b3.exports;JHt.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var DNe=E((t5r,PNe)=>{"use strict";PNe.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),s=e.indexOf("--");return n!==-1&&(s===-1||n{"use strict";var XHt=require("os"),kNe=require("tty"),lc=DNe(),{env:zs}=process,Jp;lc("no-color")||lc("no-colors")||lc("color=false")||lc("color=never")?Jp=0:(lc("color")||lc("colors")||lc("color=true")||lc("color=always"))&&(Jp=1);"FORCE_COLOR"in zs&&(zs.FORCE_COLOR==="true"?Jp=1:zs.FORCE_COLOR==="false"?Jp=0:Jp=zs.FORCE_COLOR.length===0?1:Math.min(parseInt(zs.FORCE_COLOR,10),3));function Jj(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function Xj(t,e){if(Jp===0)return 0;if(lc("color=16m")||lc("color=full")||lc("color=truecolor"))return 3;if(lc("color=256"))return 2;if(t&&!e&&Jp===void 0)return 0;let r=Jp||0;if(zs.TERM==="dumb")return r;if(process.platform==="win32"){let n=XHt.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in zs)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in zs)||zs.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in zs)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(zs.TEAMCITY_VERSION)?1:0;if(zs.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in zs){let n=parseInt((zs.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(zs.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(zs.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(zs.TERM)||"COLORTERM"in zs?1:r}function ZHt(t){let e=Xj(t,t&&t.isTTY);return Jj(e)}LNe.exports={supportsColor:ZHt,stdout:Jj(Xj(!0,kNe.isatty(1))),stderr:Jj(Xj(!0,kNe.isatty(2)))}});var WNe=E((Ks,_3)=>{var eQt=require("tty"),E3=require("util");Ks.init=oQt;Ks.log=sQt;Ks.formatArgs=rQt;Ks.save=iQt;Ks.load=aQt;Ks.useColors=tQt;Ks.destroy=E3.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Ks.colors=[6,2,3,4,5,1];try{let t=BNe();t&&(t.stderr||t).level>=2&&(Ks.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Ks.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(s,i)=>i.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});function tQt(){return"colors"in Ks.inspectOpts?!!Ks.inspectOpts.colors:eQt.isatty(process.stderr.fd)}function rQt(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),i=` ${s};1m${e} \x1B[0m`;t[0]=i+t[0].split(` `).join(` -`+i),t.push(s+"m+"+bk.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=tQt()+e+" "+t[0]}function tQt(){return Ys.inspectOpts.hideDate?"":new Date().toISOString()+" "}function rQt(...t){return process.stderr.write(xk.formatWithOptions(Ys.inspectOpts,...t)+` -`)}function nQt(t){t?process.env.DEBUG=t:delete process.env.DEBUG}function sQt(){return process.env.DEBUG}function iQt(t){t.inspectOpts={};let e=Object.keys(Ys.inspectOpts);for(let r=0;re.trim()).join(" ")};DNe.O=function(t){return this.inspectOpts.colors=this.useColors,xk.inspect(t,this.inspectOpts)}});var LNe=E((J6r,Xj)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Xj.exports=wNe():Xj.exports=BNe()});var WNe=E((X6r,MNe)=>{var FS;MNe.exports=function(){if(!FS){try{FS=LNe()("follow-redirects")}catch{}typeof FS!="function"&&(FS=function(){})}FS.apply(null,arguments)}});var jNe=E((Z6r,lH)=>{var qS=require("url"),US=qS.URL,aQt=require("http"),oQt=require("https"),nH=require("stream").Writable,sH=require("assert"),$Ne=WNe();(function(){var e=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=gh(Error.captureStackTrace);!e&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var iH=!1;try{sH(new US(""))}catch(t){iH=t.code==="ERR_INVALID_URL"}var cQt=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],aH=["abort","aborted","connect","error","socket","timeout"],oH=Object.create(null);aH.forEach(function(t){oH[t]=function(e,r,n){this._redirectable.emit(t,e,r,n)}});var eH=jS("ERR_INVALID_URL","Invalid URL",TypeError),tH=jS("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),uQt=jS("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",tH),lQt=jS("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),dQt=jS("ERR_STREAM_WRITE_AFTER_END","write after end"),fQt=nH.prototype.destroy||UNe;function Ka(t,e){nH.call(this),this._sanitizeOptions(t),this._options=t,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],e&&this.on("response",e);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(s){r.emit("error",s instanceof tH?s:new tH({cause:s}))}},this._performRequest()}Ka.prototype=Object.create(nH.prototype);Ka.prototype.abort=function(){uH(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};Ka.prototype.destroy=function(t){return uH(this._currentRequest,t),fQt.call(this,t),this};Ka.prototype.write=function(t,e,r){if(this._ending)throw new dQt;if(!hh(t)&&!hQt(t))throw new TypeError("data should be a string, Buffer or Uint8Array");if(gh(e)&&(r=e,e=null),t.length===0){r&&r();return}this._requestBodyLength+t.length<=this._options.maxBodyLength?(this._requestBodyLength+=t.length,this._requestBodyBuffers.push({data:t,encoding:e}),this._currentRequest.write(t,e,r)):(this.emit("error",new lQt),this.abort())};Ka.prototype.end=function(t,e,r){if(gh(t)?(r=t,t=e=null):gh(e)&&(r=e,e=null),!t)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,s=this._currentRequest;this.write(t,e,function(){n._ended=!0,s.end(null,null,r)}),this._ending=!0}};Ka.prototype.setHeader=function(t,e){this._options.headers[t]=e,this._currentRequest.setHeader(t,e)};Ka.prototype.removeHeader=function(t){delete this._options.headers[t],this._currentRequest.removeHeader(t)};Ka.prototype.setTimeout=function(t,e){var r=this;function n(a){a.setTimeout(t),a.removeListener("timeout",a.destroy),a.addListener("timeout",a.destroy)}function s(a){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),i()},t),n(a)}function i(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",i),r.removeListener("error",i),r.removeListener("response",i),r.removeListener("close",i),e&&r.removeListener("timeout",e),r.socket||r._currentRequest.removeListener("socket",s)}return e&&this.on("timeout",e),this.socket?s(this.socket):this._currentRequest.once("socket",s),this.on("socket",n),this.on("abort",i),this.on("error",i),this.on("response",i),this.on("close",i),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(t){Ka.prototype[t]=function(e,r){return this._currentRequest[t](e,r)}});["aborted","connection","socket"].forEach(function(t){Object.defineProperty(Ka.prototype,t,{get:function(){return this._currentRequest[t]}})});Ka.prototype._sanitizeOptions=function(t){if(t.headers||(t.headers={}),t.host&&(t.hostname||(t.hostname=t.host),delete t.host),!t.pathname&&t.path){var e=t.path.indexOf("?");e<0?t.pathname=t.path:(t.pathname=t.path.substring(0,e),t.search=t.path.substring(e))}};Ka.prototype._performRequest=function(){var t=this._options.protocol,e=this._options.nativeProtocols[t];if(!e)throw new TypeError("Unsupported protocol "+t);if(this._options.agents){var r=t.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=e.request(this._options,this._onNativeResponse);n._redirectable=this;for(var s of aH)n.on(s,oH[s]);if(this._currentUrl=/^\//.test(this._options.path)?qS.format(this._options):this._options.path,this._isRedirect){var i=0,a=this,o=this._requestBodyBuffers;(function c(u){if(n===a._currentRequest)if(u)a.emit("error",u);else if(i=400){t.responseUrl=this._currentUrl,t.redirects=this._redirects,this.emit("response",t),this._requestBodyBuffers=[];return}if(uH(this._currentRequest),t.destroy(),++this._redirectCount>this._options.maxRedirects)throw new uQt;var n,s=this._options.beforeRedirect;s&&(n=Object.assign({Host:t.req.getHeader("host")},this._options.headers));var i=this._options.method;((e===301||e===302)&&this._options.method==="POST"||e===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],Zj(/^content-/i,this._options.headers));var a=Zj(/^host$/i,this._options.headers),o=cH(this._currentUrl),c=a||o.host,u=/^\w+:/.test(r)?this._currentUrl:qS.format(Object.assign(o,{host:c})),l=pQt(r,u);if($Ne("redirecting to",l.href),this._isRedirect=!0,rH(l,this._options),(l.protocol!==o.protocol&&l.protocol!=="https:"||l.host!==c&&!mQt(l.host,c))&&Zj(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),gh(s)){var d={headers:t.headers,statusCode:e},f={url:u,method:i,headers:n};s(this._options,d,f),this._sanitizeOptions(this._options)}this._performRequest()};function FNe(t){var e={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(t).forEach(function(n){var s=n+":",i=r[s]=t[n],a=e[n]=Object.create(i);function o(u,l,d){return gQt(u)?u=rH(u):hh(u)?u=rH(cH(u)):(d=l,l=qNe(u),u={protocol:s}),gh(l)&&(d=l,l=null),l=Object.assign({maxRedirects:e.maxRedirects,maxBodyLength:e.maxBodyLength},u,l),l.nativeProtocols=r,!hh(l.host)&&!hh(l.hostname)&&(l.hostname="::1"),sH.equal(l.protocol,s,"protocol mismatch"),$Ne("options",l),new Ka(l,d)}function c(u,l,d){var f=a.request(u,l,d);return f.end(),f}Object.defineProperties(a,{request:{value:o,configurable:!0,enumerable:!0,writable:!0},get:{value:c,configurable:!0,enumerable:!0,writable:!0}})}),e}function UNe(){}function cH(t){var e;if(iH)e=new US(t);else if(e=qNe(qS.parse(t)),!hh(e.protocol))throw new eH({input:t});return e}function pQt(t,e){return iH?new US(t,e):cH(qS.resolve(e,t))}function qNe(t){if(/^\[/.test(t.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(t.hostname))throw new eH({input:t.href||t});if(/^\[/.test(t.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(t.host))throw new eH({input:t.href||t});return t}function rH(t,e){var r=e||{};for(var n of cQt)r[n]=t[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function Zj(t,e){var r;for(var n in e)t.test(n)&&(r=e[n],delete e[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function jS(t,e,r){function n(s){gh(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,s||{}),this.code=t,this.message=this.cause?e+": "+this.cause.message:e}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+t+"]",enumerable:!1}}),n}function uH(t,e){for(var r of aH)t.removeListener(r,oH[r]);t.on("error",UNe),t.destroy(e)}function mQt(t,e){sH(hh(t)&&hh(e));var r=t.length-e.length-1;return r>0&&t[r]==="."&&t.endsWith(e)}function hh(t){return typeof t=="string"||t instanceof String}function gh(t){return typeof t=="function"}function hQt(t){return typeof t=="object"&&"length"in t}function gQt(t){return US&&t instanceof US}lH.exports=FNe({http:aQt,https:oQt});lH.exports.wrap=FNe});var Gk=E(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});dl.AttributeAction=dl.IgnoreCaseMode=dl.SelectorType=void 0;var WGt;(function(t){t.Attribute="attribute",t.Pseudo="pseudo",t.PseudoElement="pseudo-element",t.Tag="tag",t.Universal="universal",t.Adjacent="adjacent",t.Child="child",t.Descendant="descendant",t.Parent="parent",t.Sibling="sibling",t.ColumnCombinator="column-combinator"})(WGt=dl.SelectorType||(dl.SelectorType={}));dl.IgnoreCaseMode={Unknown:null,QuirksMode:"quirks",IgnoreCase:!0,CaseSensitive:!1};var $Gt;(function(t){t.Any="any",t.Element="element",t.End="end",t.Equals="equals",t.Exists="exists",t.Hyphen="hyphen",t.Not="not",t.Start="start"})($Gt=dl.AttributeAction||(dl.AttributeAction={}))});var hPe=E(Ix=>{"use strict";Object.defineProperty(Ix,"__esModule",{value:!0});Ix.parse=Ix.isTraversal=void 0;var Qr=Gk(),dPe=/^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/,FGt=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,UGt=new Map([[126,Qr.AttributeAction.Element],[94,Qr.AttributeAction.Start],[36,Qr.AttributeAction.End],[42,Qr.AttributeAction.Any],[33,Qr.AttributeAction.Not],[124,Qr.AttributeAction.Hyphen]]),qGt=new Set(["has","not","matches","is","where","host","host-context"]);function pPe(t){switch(t.type){case Qr.SelectorType.Adjacent:case Qr.SelectorType.Child:case Qr.SelectorType.Descendant:case Qr.SelectorType.Parent:case Qr.SelectorType.Sibling:case Qr.SelectorType.ColumnCombinator:return!0;default:return!1}}Ix.isTraversal=pPe;var jGt=new Set(["contains","icontains"]);function HGt(t,e,r){var n=parseInt(e,16)-65536;return n!==n||r?e:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,n&1023|56320)}function sv(t){return t.replace(FGt,HGt)}function qH(t){return t===39||t===34}function fPe(t){return t===32||t===9||t===10||t===12||t===13}function QGt(t){var e=[],r=mPe(e,"".concat(t),0);if(r0&&r0&&pPe(n[n.length-1]))throw new Error("Did not expect successive traversals.")}function u(D){if(n.length>0&&n[n.length-1].type===Qr.SelectorType.Descendant){n[n.length-1].type=D;return}c(),n.push({type:D})}function l(D,L){n.push({type:Qr.SelectorType.Attribute,name:D,action:L,value:s(1),namespace:null,ignoreCase:"quirks"})}function d(){if(n.length&&n[n.length-1].type===Qr.SelectorType.Descendant&&n.pop(),n.length===0)throw new Error("Empty sub-selector");t.push(n)}if(i(0),e.length===r)return r;e:for(;r{"use strict";var Kk=Tx&&Tx.__spreadArray||function(t,e,r){if(r||arguments.length===2)for(var n=0,s=e.length,i;n ":" > ";case Yn.SelectorType.Parent:return e===0?"< ":" < ";case Yn.SelectorType.Sibling:return e===0?"~ ":" ~ ";case Yn.SelectorType.Adjacent:return e===0?"+ ":" + ";case Yn.SelectorType.Descendant:return" ";case Yn.SelectorType.ColumnCombinator:return e===0?"|| ":" || ";case Yn.SelectorType.Universal:return t.namespace==="*"&&e+10?n+t.slice(r):t}});var wx=E(vo=>{"use strict";var zGt=vo&&vo.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),YGt=vo&&vo.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&zGt(e,t,r)};Object.defineProperty(vo,"__esModule",{value:!0});vo.stringify=vo.parse=vo.isTraversal=void 0;YGt(Gk(),vo);var SPe=hPe();Object.defineProperty(vo,"isTraversal",{enumerable:!0,get:function(){return SPe.isTraversal}});Object.defineProperty(vo,"parse",{enumerable:!0,get:function(){return SPe.parse}});var JGt=_Pe();Object.defineProperty(vo,"stringify",{enumerable:!0,get:function(){return JGt.stringify}})});var n0=E((W$r,vPe)=>{vPe.exports={trueFunc:function(){return!0},falseFunc:function(){return!1}}});var vv=E((NQ,OQ)=>{(function(t,e){typeof NQ=="object"&&typeof OQ<"u"?OQ.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(NQ,function(){"use strict";var t=1e3,e=6e4,r=36e5,n="millisecond",s="second",i="minute",a="hour",o="day",c="week",u="month",l="quarter",d="year",f="date",p="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,h=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,A={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(M){var D=["th","st","nd","rd"],L=M%100;return"["+M+(D[(L-20)%10]||D[L]||D[0])+"]"}},g=function(M,D,L){var Z=String(M);return!Z||Z.length>=D?M:""+Array(D+1-Z.length).join(L)+M},b={s:g,z:function(M){var D=-M.utcOffset(),L=Math.abs(D),Z=Math.floor(L/60),W=L%60;return(D<=0?"+":"-")+g(Z,2,"0")+":"+g(W,2,"0")},m:function M(D,L){if(D.date()1)return M(K[0])}else{var j=D.name;x[j]=D,W=j}return!Z&&W&&(y=W),W||!Z&&y},w=function(M,D){if(I(M))return M.clone();var L=typeof D=="object"?D:{};return L.date=M,L.args=arguments,new P(L)},N=b;N.l=R,N.i=I,N.w=function(M,D){return w(M,{locale:D.$L,utc:D.$u,x:D.$x,$offset:D.$offset})};var P=function(){function M(L){this.$L=R(L.locale,null,!0),this.parse(L),this.$x=this.$x||L.x||{},this[v]=!0}var D=M.prototype;return D.parse=function(L){this.$d=function(Z){var W=Z.date,F=Z.utc;if(W===null)return new Date(NaN);if(N.u(W))return new Date;if(W instanceof Date)return new Date(W);if(typeof W=="string"&&!/Z$/i.test(W)){var K=W.match(m);if(K){var j=K[2]-1||0,J=(K[7]||"0").substring(0,3);return F?new Date(Date.UTC(K[1],j,K[3]||1,K[4]||0,K[5]||0,K[6]||0,J)):new Date(K[1],j,K[3]||1,K[4]||0,K[5]||0,K[6]||0,J)}}return new Date(W)}(L),this.init()},D.init=function(){var L=this.$d;this.$y=L.getFullYear(),this.$M=L.getMonth(),this.$D=L.getDate(),this.$W=L.getDay(),this.$H=L.getHours(),this.$m=L.getMinutes(),this.$s=L.getSeconds(),this.$ms=L.getMilliseconds()},D.$utils=function(){return N},D.isValid=function(){return this.$d.toString()!==p},D.isSame=function(L,Z){var W=w(L);return this.startOf(Z)<=W&&W<=this.endOf(Z)},D.isAfter=function(L,Z){return w(L){(function(t,e){typeof ID=="object"?aDe.exports=ID=e():typeof define=="function"&&define.amd?define([],e):t.CryptoJS=e()})(ID,function(){var t=t||function(e,r){var n;if(typeof window<"u"&&window.crypto&&(n=window.crypto),typeof self<"u"&&self.crypto&&(n=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(n=globalThis.crypto),!n&&typeof window<"u"&&window.msCrypto&&(n=window.msCrypto),!n&&typeof global<"u"&&global.crypto&&(n=global.crypto),!n&&typeof require=="function")try{n=require("crypto")}catch{}var s=function(){if(n){if(typeof n.getRandomValues=="function")try{return n.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof n.randomBytes=="function")try{return n.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},i=Object.create||function(){function g(){}return function(b){var y;return g.prototype=b,y=new g,g.prototype=null,y}}(),a={},o=a.lib={},c=o.Base=function(){return{extend:function(g){var b=i(this);return g&&b.mixIn(g),(!b.hasOwnProperty("init")||this.init===b.init)&&(b.init=function(){b.$super.init.apply(this,arguments)}),b.init.prototype=b,b.$super=this,b},create:function(){var g=this.extend();return g.init.apply(g,arguments),g},init:function(){},mixIn:function(g){for(var b in g)g.hasOwnProperty(b)&&(this[b]=g[b]);g.hasOwnProperty("toString")&&(this.toString=g.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),u=o.WordArray=c.extend({init:function(g,b){g=this.words=g||[],b!=r?this.sigBytes=b:this.sigBytes=g.length*4},toString:function(g){return(g||d).stringify(this)},concat:function(g){var b=this.words,y=g.words,x=this.sigBytes,v=g.sigBytes;if(this.clamp(),x%4)for(var I=0;I>>2]>>>24-I%4*8&255;b[x+I>>>2]|=R<<24-(x+I)%4*8}else for(var w=0;w>>2]=y[w>>>2];return this.sigBytes+=v,this},clamp:function(){var g=this.words,b=this.sigBytes;g[b>>>2]&=4294967295<<32-b%4*8,g.length=e.ceil(b/4)},clone:function(){var g=c.clone.call(this);return g.words=this.words.slice(0),g},random:function(g){for(var b=[],y=0;y>>2]>>>24-v%4*8&255;x.push((I>>>4).toString(16)),x.push((I&15).toString(16))}return x.join("")},parse:function(g){for(var b=g.length,y=[],x=0;x>>3]|=parseInt(g.substr(x,2),16)<<24-x%8*4;return new u.init(y,b/2)}},f=l.Latin1={stringify:function(g){for(var b=g.words,y=g.sigBytes,x=[],v=0;v>>2]>>>24-v%4*8&255;x.push(String.fromCharCode(I))}return x.join("")},parse:function(g){for(var b=g.length,y=[],x=0;x>>2]|=(g.charCodeAt(x)&255)<<24-x%4*8;return new u.init(y,b)}},p=l.Utf8={stringify:function(g){try{return decodeURIComponent(escape(f.stringify(g)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(g){return f.parse(unescape(encodeURIComponent(g)))}},m=o.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(g){typeof g=="string"&&(g=p.parse(g)),this._data.concat(g),this._nDataBytes+=g.sigBytes},_process:function(g){var b,y=this._data,x=y.words,v=y.sigBytes,I=this.blockSize,R=I*4,w=v/R;g?w=e.ceil(w):w=e.max((w|0)-this._minBufferSize,0);var N=w*I,P=e.min(N*4,v);if(N){for(var B=0;B{(function(t,e){typeof CD=="object"?oDe.exports=CD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(CD,function(t){return function(e){var r=t,n=r.lib,s=n.Base,i=n.WordArray,a=r.x64={},o=a.Word=s.extend({init:function(u,l){this.high=u,this.low=l}}),c=a.WordArray=s.extend({init:function(u,l){u=this.words=u||[],l!=e?this.sigBytes=l:this.sigBytes=u.length*8},toX32:function(){for(var u=this.words,l=u.length,d=[],f=0;f{(function(t,e){typeof TD=="object"?cDe.exports=TD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(TD,function(t){return function(){if(typeof ArrayBuffer=="function"){var e=t,r=e.lib,n=r.WordArray,s=n.init,i=n.init=function(a){if(a instanceof ArrayBuffer&&(a=new Uint8Array(a)),(a instanceof Int8Array||typeof Uint8ClampedArray<"u"&&a instanceof Uint8ClampedArray||a instanceof Int16Array||a instanceof Uint16Array||a instanceof Int32Array||a instanceof Uint32Array||a instanceof Float32Array||a instanceof Float64Array)&&(a=new Uint8Array(a.buffer,a.byteOffset,a.byteLength)),a instanceof Uint8Array){for(var o=a.byteLength,c=[],u=0;u>>2]|=a[u]<<24-u%4*8;s.call(this,c,o)}else s.apply(this,arguments)};i.prototype=n}}(),t.lib.WordArray})});var dDe=E((wD,lDe)=>{(function(t,e){typeof wD=="object"?lDe.exports=wD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(wD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Utf16=s.Utf16BE={stringify:function(o){for(var c=o.words,u=o.sigBytes,l=[],d=0;d>>2]>>>16-d%4*8&65535;l.push(String.fromCharCode(f))}return l.join("")},parse:function(o){for(var c=o.length,u=[],l=0;l>>1]|=o.charCodeAt(l)<<16-l%2*16;return n.create(u,c*2)}};s.Utf16LE={stringify:function(o){for(var c=o.words,u=o.sigBytes,l=[],d=0;d>>2]>>>16-d%4*8&65535);l.push(String.fromCharCode(f))}return l.join("")},parse:function(o){for(var c=o.length,u=[],l=0;l>>1]|=a(o.charCodeAt(l)<<16-l%2*16);return n.create(u,c*2)}};function a(o){return o<<8&4278255360|o>>>8&16711935}}(),t.enc.Utf16})});var d0=E((RD,fDe)=>{(function(t,e){typeof RD=="object"?fDe.exports=RD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(RD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Base64={stringify:function(o){var c=o.words,u=o.sigBytes,l=this._map;o.clamp();for(var d=[],f=0;f>>2]>>>24-f%4*8&255,m=c[f+1>>>2]>>>24-(f+1)%4*8&255,h=c[f+2>>>2]>>>24-(f+2)%4*8&255,A=p<<16|m<<8|h,g=0;g<4&&f+g*.75>>6*(3-g)&63));var b=l.charAt(64);if(b)for(;d.length%4;)d.push(b);return d.join("")},parse:function(o){var c=o.length,u=this._map,l=this._reverseMap;if(!l){l=this._reverseMap=[];for(var d=0;d>>6-f%4*2,h=p|m;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64})});var mDe=E((ND,pDe)=>{(function(t,e){typeof ND=="object"?pDe.exports=ND=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(ND,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Base64url={stringify:function(o,c){c===void 0&&(c=!0);var u=o.words,l=o.sigBytes,d=c?this._safe_map:this._map;o.clamp();for(var f=[],p=0;p>>2]>>>24-p%4*8&255,h=u[p+1>>>2]>>>24-(p+1)%4*8&255,A=u[p+2>>>2]>>>24-(p+2)%4*8&255,g=m<<16|h<<8|A,b=0;b<4&&p+b*.75>>6*(3-b)&63));var y=d.charAt(64);if(y)for(;f.length%4;)f.push(y);return f.join("")},parse:function(o,c){c===void 0&&(c=!0);var u=o.length,l=c?this._safe_map:this._map,d=this._reverseMap;if(!d){d=this._reverseMap=[];for(var f=0;f>>6-f%4*2,h=p|m;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64url})});var f0=E((OD,hDe)=>{(function(t,e){typeof OD=="object"?hDe.exports=OD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(OD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[];(function(){for(var p=0;p<64;p++)o[p]=e.abs(e.sin(p+1))*4294967296|0})();var c=a.MD5=i.extend({_doReset:function(){this._hash=new s.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(p,m){for(var h=0;h<16;h++){var A=m+h,g=p[A];p[A]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360}var b=this._hash.words,y=p[m+0],x=p[m+1],v=p[m+2],I=p[m+3],R=p[m+4],w=p[m+5],N=p[m+6],P=p[m+7],B=p[m+8],M=p[m+9],D=p[m+10],L=p[m+11],Z=p[m+12],W=p[m+13],F=p[m+14],K=p[m+15],j=b[0],J=b[1],se=b[2],oe=b[3];j=u(j,J,se,oe,y,7,o[0]),oe=u(oe,j,J,se,x,12,o[1]),se=u(se,oe,j,J,v,17,o[2]),J=u(J,se,oe,j,I,22,o[3]),j=u(j,J,se,oe,R,7,o[4]),oe=u(oe,j,J,se,w,12,o[5]),se=u(se,oe,j,J,N,17,o[6]),J=u(J,se,oe,j,P,22,o[7]),j=u(j,J,se,oe,B,7,o[8]),oe=u(oe,j,J,se,M,12,o[9]),se=u(se,oe,j,J,D,17,o[10]),J=u(J,se,oe,j,L,22,o[11]),j=u(j,J,se,oe,Z,7,o[12]),oe=u(oe,j,J,se,W,12,o[13]),se=u(se,oe,j,J,F,17,o[14]),J=u(J,se,oe,j,K,22,o[15]),j=l(j,J,se,oe,x,5,o[16]),oe=l(oe,j,J,se,N,9,o[17]),se=l(se,oe,j,J,L,14,o[18]),J=l(J,se,oe,j,y,20,o[19]),j=l(j,J,se,oe,w,5,o[20]),oe=l(oe,j,J,se,D,9,o[21]),se=l(se,oe,j,J,K,14,o[22]),J=l(J,se,oe,j,R,20,o[23]),j=l(j,J,se,oe,M,5,o[24]),oe=l(oe,j,J,se,F,9,o[25]),se=l(se,oe,j,J,I,14,o[26]),J=l(J,se,oe,j,B,20,o[27]),j=l(j,J,se,oe,W,5,o[28]),oe=l(oe,j,J,se,v,9,o[29]),se=l(se,oe,j,J,P,14,o[30]),J=l(J,se,oe,j,Z,20,o[31]),j=d(j,J,se,oe,w,4,o[32]),oe=d(oe,j,J,se,B,11,o[33]),se=d(se,oe,j,J,L,16,o[34]),J=d(J,se,oe,j,F,23,o[35]),j=d(j,J,se,oe,x,4,o[36]),oe=d(oe,j,J,se,R,11,o[37]),se=d(se,oe,j,J,P,16,o[38]),J=d(J,se,oe,j,D,23,o[39]),j=d(j,J,se,oe,W,4,o[40]),oe=d(oe,j,J,se,y,11,o[41]),se=d(se,oe,j,J,I,16,o[42]),J=d(J,se,oe,j,N,23,o[43]),j=d(j,J,se,oe,M,4,o[44]),oe=d(oe,j,J,se,Z,11,o[45]),se=d(se,oe,j,J,K,16,o[46]),J=d(J,se,oe,j,v,23,o[47]),j=f(j,J,se,oe,y,6,o[48]),oe=f(oe,j,J,se,P,10,o[49]),se=f(se,oe,j,J,F,15,o[50]),J=f(J,se,oe,j,w,21,o[51]),j=f(j,J,se,oe,Z,6,o[52]),oe=f(oe,j,J,se,I,10,o[53]),se=f(se,oe,j,J,D,15,o[54]),J=f(J,se,oe,j,x,21,o[55]),j=f(j,J,se,oe,B,6,o[56]),oe=f(oe,j,J,se,K,10,o[57]),se=f(se,oe,j,J,N,15,o[58]),J=f(J,se,oe,j,W,21,o[59]),j=f(j,J,se,oe,R,6,o[60]),oe=f(oe,j,J,se,L,10,o[61]),se=f(se,oe,j,J,v,15,o[62]),J=f(J,se,oe,j,M,21,o[63]),b[0]=b[0]+j|0,b[1]=b[1]+J|0,b[2]=b[2]+se|0,b[3]=b[3]+oe|0},_doFinalize:function(){var p=this._data,m=p.words,h=this._nDataBytes*8,A=p.sigBytes*8;m[A>>>5]|=128<<24-A%32;var g=e.floor(h/4294967296),b=h;m[(A+64>>>9<<4)+15]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,m[(A+64>>>9<<4)+14]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360,p.sigBytes=(m.length+1)*4,this._process();for(var y=this._hash,x=y.words,v=0;v<4;v++){var I=x[v];x[v]=(I<<8|I>>>24)&16711935|(I<<24|I>>>8)&4278255360}return y},clone:function(){var p=i.clone.call(this);return p._hash=this._hash.clone(),p}});function u(p,m,h,A,g,b,y){var x=p+(m&h|~m&A)+g+y;return(x<>>32-b)+m}function l(p,m,h,A,g,b,y){var x=p+(m&A|h&~A)+g+y;return(x<>>32-b)+m}function d(p,m,h,A,g,b,y){var x=p+(m^h^A)+g+y;return(x<>>32-b)+m}function f(p,m,h,A,g,b,y){var x=p+(h^(m|~A))+g+y;return(x<>>32-b)+m}r.MD5=i._createHelper(c),r.HmacMD5=i._createHmacHelper(c)}(Math),t.MD5})});var PQ=E((PD,gDe)=>{(function(t,e){typeof PD=="object"?gDe.exports=PD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(PD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.Hasher,i=e.algo,a=[],o=i.SHA1=s.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(c,u){for(var l=this._hash.words,d=l[0],f=l[1],p=l[2],m=l[3],h=l[4],A=0;A<80;A++){if(A<16)a[A]=c[u+A]|0;else{var g=a[A-3]^a[A-8]^a[A-14]^a[A-16];a[A]=g<<1|g>>>31}var b=(d<<5|d>>>27)+h+a[A];A<20?b+=(f&p|~f&m)+1518500249:A<40?b+=(f^p^m)+1859775393:A<60?b+=(f&p|f&m|p&m)-1894007588:b+=(f^p^m)-899497514,h=m,m=p,p=f<<30|f>>>2,f=d,d=b}l[0]=l[0]+d|0,l[1]=l[1]+f|0,l[2]=l[2]+p|0,l[3]=l[3]+m|0,l[4]=l[4]+h|0},_doFinalize:function(){var c=this._data,u=c.words,l=this._nDataBytes*8,d=c.sigBytes*8;return u[d>>>5]|=128<<24-d%32,u[(d+64>>>9<<4)+14]=Math.floor(l/4294967296),u[(d+64>>>9<<4)+15]=l,c.sigBytes=u.length*4,this._process(),this._hash},clone:function(){var c=s.clone.call(this);return c._hash=this._hash.clone(),c}});e.SHA1=s._createHelper(o),e.HmacSHA1=s._createHmacHelper(o)}(),t.SHA1})});var DD=E((kD,ADe)=>{(function(t,e){typeof kD=="object"?ADe.exports=kD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(kD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[],c=[];(function(){function d(h){for(var A=e.sqrt(h),g=2;g<=A;g++)if(!(h%g))return!1;return!0}function f(h){return(h-(h|0))*4294967296|0}for(var p=2,m=0;m<64;)d(p)&&(m<8&&(o[m]=f(e.pow(p,1/2))),c[m]=f(e.pow(p,1/3)),m++),p++})();var u=[],l=a.SHA256=i.extend({_doReset:function(){this._hash=new s.init(o.slice(0))},_doProcessBlock:function(d,f){for(var p=this._hash.words,m=p[0],h=p[1],A=p[2],g=p[3],b=p[4],y=p[5],x=p[6],v=p[7],I=0;I<64;I++){if(I<16)u[I]=d[f+I]|0;else{var R=u[I-15],w=(R<<25|R>>>7)^(R<<14|R>>>18)^R>>>3,N=u[I-2],P=(N<<15|N>>>17)^(N<<13|N>>>19)^N>>>10;u[I]=w+u[I-7]+P+u[I-16]}var B=b&y^~b&x,M=m&h^m&A^h&A,D=(m<<30|m>>>2)^(m<<19|m>>>13)^(m<<10|m>>>22),L=(b<<26|b>>>6)^(b<<21|b>>>11)^(b<<7|b>>>25),Z=v+L+B+c[I]+u[I],W=D+M;v=x,x=y,y=b,b=g+Z|0,g=A,A=h,h=m,m=Z+W|0}p[0]=p[0]+m|0,p[1]=p[1]+h|0,p[2]=p[2]+A|0,p[3]=p[3]+g|0,p[4]=p[4]+b|0,p[5]=p[5]+y|0,p[6]=p[6]+x|0,p[7]=p[7]+v|0},_doFinalize:function(){var d=this._data,f=d.words,p=this._nDataBytes*8,m=d.sigBytes*8;return f[m>>>5]|=128<<24-m%32,f[(m+64>>>9<<4)+14]=e.floor(p/4294967296),f[(m+64>>>9<<4)+15]=p,d.sigBytes=f.length*4,this._process(),this._hash},clone:function(){var d=i.clone.call(this);return d._hash=this._hash.clone(),d}});r.SHA256=i._createHelper(l),r.HmacSHA256=i._createHmacHelper(l)}(Math),t.SHA256})});var xDe=E((BD,yDe)=>{(function(t,e,r){typeof BD=="object"?yDe.exports=BD=e(fr(),DD()):typeof define=="function"&&define.amd?define(["./core","./sha256"],e):e(t.CryptoJS)})(BD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.algo,i=s.SHA256,a=s.SHA224=i.extend({_doReset:function(){this._hash=new n.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var o=i._doFinalize.call(this);return o.sigBytes-=4,o}});e.SHA224=i._createHelper(a),e.HmacSHA224=i._createHmacHelper(a)}(),t.SHA224})});var kQ=E((LD,bDe)=>{(function(t,e,r){typeof LD=="object"?bDe.exports=LD=e(fr(),Iv()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(LD,function(t){return function(){var e=t,r=e.lib,n=r.Hasher,s=e.x64,i=s.Word,a=s.WordArray,o=e.algo;function c(){return i.create.apply(i,arguments)}var u=[c(1116352408,3609767458),c(1899447441,602891725),c(3049323471,3964484399),c(3921009573,2173295548),c(961987163,4081628472),c(1508970993,3053834265),c(2453635748,2937671579),c(2870763221,3664609560),c(3624381080,2734883394),c(310598401,1164996542),c(607225278,1323610764),c(1426881987,3590304994),c(1925078388,4068182383),c(2162078206,991336113),c(2614888103,633803317),c(3248222580,3479774868),c(3835390401,2666613458),c(4022224774,944711139),c(264347078,2341262773),c(604807628,2007800933),c(770255983,1495990901),c(1249150122,1856431235),c(1555081692,3175218132),c(1996064986,2198950837),c(2554220882,3999719339),c(2821834349,766784016),c(2952996808,2566594879),c(3210313671,3203337956),c(3336571891,1034457026),c(3584528711,2466948901),c(113926993,3758326383),c(338241895,168717936),c(666307205,1188179964),c(773529912,1546045734),c(1294757372,1522805485),c(1396182291,2643833823),c(1695183700,2343527390),c(1986661051,1014477480),c(2177026350,1206759142),c(2456956037,344077627),c(2730485921,1290863460),c(2820302411,3158454273),c(3259730800,3505952657),c(3345764771,106217008),c(3516065817,3606008344),c(3600352804,1432725776),c(4094571909,1467031594),c(275423344,851169720),c(430227734,3100823752),c(506948616,1363258195),c(659060556,3750685593),c(883997877,3785050280),c(958139571,3318307427),c(1322822218,3812723403),c(1537002063,2003034995),c(1747873779,3602036899),c(1955562222,1575990012),c(2024104815,1125592928),c(2227730452,2716904306),c(2361852424,442776044),c(2428436474,593698344),c(2756734187,3733110249),c(3204031479,2999351573),c(3329325298,3815920427),c(3391569614,3928383900),c(3515267271,566280711),c(3940187606,3454069534),c(4118630271,4000239992),c(116418474,1914138554),c(174292421,2731055270),c(289380356,3203993006),c(460393269,320620315),c(685471733,587496836),c(852142971,1086792851),c(1017036298,365543100),c(1126000580,2618297676),c(1288033470,3409855158),c(1501505948,4234509866),c(1607167915,987167468),c(1816402316,1246189591)],l=[];(function(){for(var f=0;f<80;f++)l[f]=c()})();var d=o.SHA512=n.extend({_doReset:function(){this._hash=new a.init([new i.init(1779033703,4089235720),new i.init(3144134277,2227873595),new i.init(1013904242,4271175723),new i.init(2773480762,1595750129),new i.init(1359893119,2917565137),new i.init(2600822924,725511199),new i.init(528734635,4215389547),new i.init(1541459225,327033209)])},_doProcessBlock:function(f,p){for(var m=this._hash.words,h=m[0],A=m[1],g=m[2],b=m[3],y=m[4],x=m[5],v=m[6],I=m[7],R=h.high,w=h.low,N=A.high,P=A.low,B=g.high,M=g.low,D=b.high,L=b.low,Z=y.high,W=y.low,F=x.high,K=x.low,j=v.high,J=v.low,se=I.high,oe=I.low,ue=R,Ie=w,we=N,qe=P,Fe=B,_e=M,U=D,G=L,V=Z,q=W,H=F,ee=K,ne=j,re=J,X=se,ie=oe,ce=0;ce<80;ce++){var fe,Ne,Pe=l[ce];if(ce<16)Ne=Pe.high=f[p+ce*2]|0,fe=Pe.low=f[p+ce*2+1]|0;else{var Ue=l[ce-15],ze=Ue.high,Ye=Ue.low,Ze=(ze>>>1|Ye<<31)^(ze>>>8|Ye<<24)^ze>>>7,nt=(Ye>>>1|ze<<31)^(Ye>>>8|ze<<24)^(Ye>>>7|ze<<25),ct=l[ce-2],tt=ct.high,Pt=ct.low,lt=(tt>>>19|Pt<<13)^(tt<<3|Pt>>>29)^tt>>>6,ke=(Pt>>>19|tt<<13)^(Pt<<3|tt>>>29)^(Pt>>>6|tt<<26),Je=l[ce-7],ft=Je.high,rt=Je.low,bt=l[ce-16],An=bt.high,vt=bt.low;fe=nt+rt,Ne=Ze+ft+(fe>>>0>>0?1:0),fe=fe+ke,Ne=Ne+lt+(fe>>>0>>0?1:0),fe=fe+vt,Ne=Ne+An+(fe>>>0>>0?1:0),Pe.high=Ne,Pe.low=fe}var _r=V&H^~V&ne,qs=q&ee^~q&re,Pr=ue&we^ue&Fe^we&Fe,js=Ie&qe^Ie&_e^qe&_e,Hs=(ue>>>28|Ie<<4)^(ue<<30|Ie>>>2)^(ue<<25|Ie>>>7),ys=(Ie>>>28|ue<<4)^(Ie<<30|ue>>>2)^(Ie<<25|ue>>>7),Qs=(V>>>14|q<<18)^(V>>>18|q<<14)^(V<<23|q>>>9),Bu=(q>>>14|V<<18)^(q>>>18|V<<14)^(q<<23|V>>>9),Ao=u[ce],Dc=Ao.high,Ta=Ao.low,yn=ie+Bu,wa=X+Qs+(yn>>>0>>0?1:0),yn=yn+qs,wa=wa+_r+(yn>>>0>>0?1:0),yn=yn+Ta,wa=wa+Dc+(yn>>>0>>0?1:0),yn=yn+fe,wa=wa+Ne+(yn>>>0>>0?1:0),td=ys+js,yo=Hs+Pr+(td>>>0>>0?1:0);X=ne,ie=re,ne=H,re=ee,H=V,ee=q,q=G+yn|0,V=U+wa+(q>>>0>>0?1:0)|0,U=Fe,G=_e,Fe=we,_e=qe,we=ue,qe=Ie,Ie=yn+td|0,ue=wa+yo+(Ie>>>0>>0?1:0)|0}w=h.low=w+Ie,h.high=R+ue+(w>>>0>>0?1:0),P=A.low=P+qe,A.high=N+we+(P>>>0>>0?1:0),M=g.low=M+_e,g.high=B+Fe+(M>>>0<_e>>>0?1:0),L=b.low=L+G,b.high=D+U+(L>>>0>>0?1:0),W=y.low=W+q,y.high=Z+V+(W>>>0>>0?1:0),K=x.low=K+ee,x.high=F+H+(K>>>0>>0?1:0),J=v.low=J+re,v.high=j+ne+(J>>>0>>0?1:0),oe=I.low=oe+ie,I.high=se+X+(oe>>>0>>0?1:0)},_doFinalize:function(){var f=this._data,p=f.words,m=this._nDataBytes*8,h=f.sigBytes*8;p[h>>>5]|=128<<24-h%32,p[(h+128>>>10<<5)+30]=Math.floor(m/4294967296),p[(h+128>>>10<<5)+31]=m,f.sigBytes=p.length*4,this._process();var A=this._hash.toX32();return A},clone:function(){var f=n.clone.call(this);return f._hash=this._hash.clone(),f},blockSize:1024/32});e.SHA512=n._createHelper(d),e.HmacSHA512=n._createHmacHelper(d)}(),t.SHA512})});var _De=E((MD,EDe)=>{(function(t,e,r){typeof MD=="object"?EDe.exports=MD=e(fr(),Iv(),kQ()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./sha512"],e):e(t.CryptoJS)})(MD,function(t){return function(){var e=t,r=e.x64,n=r.Word,s=r.WordArray,i=e.algo,a=i.SHA512,o=i.SHA384=a.extend({_doReset:function(){this._hash=new s.init([new n.init(3418070365,3238371032),new n.init(1654270250,914150663),new n.init(2438529370,812702999),new n.init(355462360,4144912697),new n.init(1731405415,4290775857),new n.init(2394180231,1750603025),new n.init(3675008525,1694076839),new n.init(1203062813,3204075428)])},_doFinalize:function(){var c=a._doFinalize.call(this);return c.sigBytes-=16,c}});e.SHA384=a._createHelper(o),e.HmacSHA384=a._createHmacHelper(o)}(),t.SHA384})});var vDe=E((WD,SDe)=>{(function(t,e,r){typeof WD=="object"?SDe.exports=WD=e(fr(),Iv()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(WD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.x64,o=a.Word,c=r.algo,u=[],l=[],d=[];(function(){for(var m=1,h=0,A=0;A<24;A++){u[m+5*h]=(A+1)*(A+2)/2%64;var g=h%5,b=(2*m+3*h)%5;m=g,h=b}for(var m=0;m<5;m++)for(var h=0;h<5;h++)l[m+5*h]=h+(2*m+3*h)%5*5;for(var y=1,x=0;x<24;x++){for(var v=0,I=0,R=0;R<7;R++){if(y&1){var w=(1<>>24)&16711935|(y<<24|y>>>8)&4278255360,x=(x<<8|x>>>24)&16711935|(x<<24|x>>>8)&4278255360;var v=A[b];v.high^=x,v.low^=y}for(var I=0;I<24;I++){for(var R=0;R<5;R++){for(var w=0,N=0,P=0;P<5;P++){var v=A[R+5*P];w^=v.high,N^=v.low}var B=f[R];B.high=w,B.low=N}for(var R=0;R<5;R++)for(var M=f[(R+4)%5],D=f[(R+1)%5],L=D.high,Z=D.low,w=M.high^(L<<1|Z>>>31),N=M.low^(Z<<1|L>>>31),P=0;P<5;P++){var v=A[R+5*P];v.high^=w,v.low^=N}for(var W=1;W<25;W++){var w,N,v=A[W],F=v.high,K=v.low,j=u[W];j<32?(w=F<>>32-j,N=K<>>32-j):(w=K<>>64-j,N=F<>>64-j);var J=f[l[W]];J.high=w,J.low=N}var se=f[0],oe=A[0];se.high=oe.high,se.low=oe.low;for(var R=0;R<5;R++)for(var P=0;P<5;P++){var W=R+5*P,v=A[W],ue=f[W],Ie=f[(R+1)%5+5*P],we=f[(R+2)%5+5*P];v.high=ue.high^~Ie.high&we.high,v.low=ue.low^~Ie.low&we.low}var v=A[0],qe=d[I];v.high^=qe.high,v.low^=qe.low}},_doFinalize:function(){var m=this._data,h=m.words,A=this._nDataBytes*8,g=m.sigBytes*8,b=this.blockSize*32;h[g>>>5]|=1<<24-g%32,h[(e.ceil((g+1)/b)*b>>>5)-1]|=128,m.sigBytes=h.length*4,this._process();for(var y=this._state,x=this.cfg.outputLength/8,v=x/8,I=[],R=0;R>>24)&16711935|(N<<24|N>>>8)&4278255360,P=(P<<8|P>>>24)&16711935|(P<<24|P>>>8)&4278255360,I.push(P),I.push(N)}return new s.init(I,x)},clone:function(){for(var m=i.clone.call(this),h=m._state=this._state.slice(0),A=0;A<25;A++)h[A]=h[A].clone();return m}});r.SHA3=i._createHelper(p),r.HmacSHA3=i._createHmacHelper(p)}(Math),t.SHA3})});var CDe=E(($D,IDe)=>{(function(t,e){typeof $D=="object"?IDe.exports=$D=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})($D,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=s.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),c=s.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),u=s.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),l=s.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),d=s.create([0,1518500249,1859775393,2400959708,2840853838]),f=s.create([1352829926,1548603684,1836072691,2053994217,0]),p=a.RIPEMD160=i.extend({_doReset:function(){this._hash=s.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(x,v){for(var I=0;I<16;I++){var R=v+I,w=x[R];x[R]=(w<<8|w>>>24)&16711935|(w<<24|w>>>8)&4278255360}var N=this._hash.words,P=d.words,B=f.words,M=o.words,D=c.words,L=u.words,Z=l.words,W,F,K,j,J,se,oe,ue,Ie,we;se=W=N[0],oe=F=N[1],ue=K=N[2],Ie=j=N[3],we=J=N[4];for(var qe,I=0;I<80;I+=1)qe=W+x[v+M[I]]|0,I<16?qe+=m(F,K,j)+P[0]:I<32?qe+=h(F,K,j)+P[1]:I<48?qe+=A(F,K,j)+P[2]:I<64?qe+=g(F,K,j)+P[3]:qe+=b(F,K,j)+P[4],qe=qe|0,qe=y(qe,L[I]),qe=qe+J|0,W=J,J=j,j=y(K,10),K=F,F=qe,qe=se+x[v+D[I]]|0,I<16?qe+=b(oe,ue,Ie)+B[0]:I<32?qe+=g(oe,ue,Ie)+B[1]:I<48?qe+=A(oe,ue,Ie)+B[2]:I<64?qe+=h(oe,ue,Ie)+B[3]:qe+=m(oe,ue,Ie)+B[4],qe=qe|0,qe=y(qe,Z[I]),qe=qe+we|0,se=we,we=Ie,Ie=y(ue,10),ue=oe,oe=qe;qe=N[1]+K+Ie|0,N[1]=N[2]+j+we|0,N[2]=N[3]+J+se|0,N[3]=N[4]+W+oe|0,N[4]=N[0]+F+ue|0,N[0]=qe},_doFinalize:function(){var x=this._data,v=x.words,I=this._nDataBytes*8,R=x.sigBytes*8;v[R>>>5]|=128<<24-R%32,v[(R+64>>>9<<4)+14]=(I<<8|I>>>24)&16711935|(I<<24|I>>>8)&4278255360,x.sigBytes=(v.length+1)*4,this._process();for(var w=this._hash,N=w.words,P=0;P<5;P++){var B=N[P];N[P]=(B<<8|B>>>24)&16711935|(B<<24|B>>>8)&4278255360}return w},clone:function(){var x=i.clone.call(this);return x._hash=this._hash.clone(),x}});function m(x,v,I){return x^v^I}function h(x,v,I){return x&v|~x&I}function A(x,v,I){return(x|~v)^I}function g(x,v,I){return x&I|v&~I}function b(x,v,I){return x^(v|~I)}function y(x,v){return x<>>32-v}r.RIPEMD160=i._createHelper(p),r.HmacRIPEMD160=i._createHmacHelper(p)}(Math),t.RIPEMD160})});var UD=E((FD,TDe)=>{(function(t,e){typeof FD=="object"?TDe.exports=FD=e(fr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(FD,function(t){(function(){var e=t,r=e.lib,n=r.Base,s=e.enc,i=s.Utf8,a=e.algo,o=a.HMAC=n.extend({init:function(c,u){c=this._hasher=new c.init,typeof u=="string"&&(u=i.parse(u));var l=c.blockSize,d=l*4;u.sigBytes>d&&(u=c.finalize(u)),u.clamp();for(var f=this._oKey=u.clone(),p=this._iKey=u.clone(),m=f.words,h=p.words,A=0;A{(function(t,e,r){typeof qD=="object"?wDe.exports=qD=e(fr(),DD(),UD()):typeof define=="function"&&define.amd?define(["./core","./sha256","./hmac"],e):e(t.CryptoJS)})(qD,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.algo,a=i.SHA256,o=i.HMAC,c=i.PBKDF2=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:25e4}),init:function(u){this.cfg=this.cfg.extend(u)},compute:function(u,l){for(var d=this.cfg,f=o.create(d.hasher,u),p=s.create(),m=s.create([1]),h=p.words,A=m.words,g=d.keySize,b=d.iterations;h.length{(function(t,e,r){typeof jD=="object"?NDe.exports=jD=e(fr(),PQ(),UD()):typeof define=="function"&&define.amd?define(["./core","./sha1","./hmac"],e):e(t.CryptoJS)})(jD,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.algo,a=i.MD5,o=i.EvpKDF=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:1}),init:function(c){this.cfg=this.cfg.extend(c)},compute:function(c,u){for(var l,d=this.cfg,f=d.hasher.create(),p=s.create(),m=p.words,h=d.keySize,A=d.iterations;m.length{(function(t,e,r){typeof HD=="object"?ODe.exports=HD=e(fr(),Gd()):typeof define=="function"&&define.amd?define(["./core","./evpkdf"],e):e(t.CryptoJS)})(HD,function(t){t.lib.Cipher||function(e){var r=t,n=r.lib,s=n.Base,i=n.WordArray,a=n.BufferedBlockAlgorithm,o=r.enc,c=o.Utf8,u=o.Base64,l=r.algo,d=l.EvpKDF,f=n.Cipher=a.extend({cfg:s.extend(),createEncryptor:function(B,M){return this.create(this._ENC_XFORM_MODE,B,M)},createDecryptor:function(B,M){return this.create(this._DEC_XFORM_MODE,B,M)},init:function(B,M,D){this.cfg=this.cfg.extend(D),this._xformMode=B,this._key=M,this.reset()},reset:function(){a.reset.call(this),this._doReset()},process:function(B){return this._append(B),this._process()},finalize:function(B){B&&this._append(B);var M=this._doFinalize();return M},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function B(M){return typeof M=="string"?P:R}return function(M){return{encrypt:function(D,L,Z){return B(L).encrypt(M,D,L,Z)},decrypt:function(D,L,Z){return B(L).decrypt(M,D,L,Z)}}}}()}),p=n.StreamCipher=f.extend({_doFinalize:function(){var B=this._process(!0);return B},blockSize:1}),m=r.mode={},h=n.BlockCipherMode=s.extend({createEncryptor:function(B,M){return this.Encryptor.create(B,M)},createDecryptor:function(B,M){return this.Decryptor.create(B,M)},init:function(B,M){this._cipher=B,this._iv=M}}),A=m.CBC=function(){var B=h.extend();B.Encryptor=B.extend({processBlock:function(D,L){var Z=this._cipher,W=Z.blockSize;M.call(this,D,L,W),Z.encryptBlock(D,L),this._prevBlock=D.slice(L,L+W)}}),B.Decryptor=B.extend({processBlock:function(D,L){var Z=this._cipher,W=Z.blockSize,F=D.slice(L,L+W);Z.decryptBlock(D,L),M.call(this,D,L,W),this._prevBlock=F}});function M(D,L,Z){var W,F=this._iv;F?(W=F,this._iv=e):W=this._prevBlock;for(var K=0;K>>2]&255;B.sigBytes-=M}},y=n.BlockCipher=f.extend({cfg:f.cfg.extend({mode:A,padding:b}),reset:function(){var B;f.reset.call(this);var M=this.cfg,D=M.iv,L=M.mode;this._xformMode==this._ENC_XFORM_MODE?B=L.createEncryptor:(B=L.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==B?this._mode.init(this,D&&D.words):(this._mode=B.call(L,this,D&&D.words),this._mode.__creator=B)},_doProcessBlock:function(B,M){this._mode.processBlock(B,M)},_doFinalize:function(){var B,M=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(M.pad(this._data,this.blockSize),B=this._process(!0)):(B=this._process(!0),M.unpad(B)),B},blockSize:128/32}),x=n.CipherParams=s.extend({init:function(B){this.mixIn(B)},toString:function(B){return(B||this.formatter).stringify(this)}}),v=r.format={},I=v.OpenSSL={stringify:function(B){var M,D=B.ciphertext,L=B.salt;return L?M=i.create([1398893684,1701076831]).concat(L).concat(D):M=D,M.toString(u)},parse:function(B){var M,D=u.parse(B),L=D.words;return L[0]==1398893684&&L[1]==1701076831&&(M=i.create(L.slice(2,4)),L.splice(0,4),D.sigBytes-=16),x.create({ciphertext:D,salt:M})}},R=n.SerializableCipher=s.extend({cfg:s.extend({format:I}),encrypt:function(B,M,D,L){L=this.cfg.extend(L);var Z=B.createEncryptor(D,L),W=Z.finalize(M),F=Z.cfg;return x.create({ciphertext:W,key:D,iv:F.iv,algorithm:B,mode:F.mode,padding:F.padding,blockSize:B.blockSize,formatter:L.format})},decrypt:function(B,M,D,L){L=this.cfg.extend(L),M=this._parse(M,L.format);var Z=B.createDecryptor(D,L).finalize(M.ciphertext);return Z},_parse:function(B,M){return typeof B=="string"?M.parse(B,this):B}}),w=r.kdf={},N=w.OpenSSL={execute:function(B,M,D,L,Z){if(L||(L=i.random(64/8)),Z)var W=d.create({keySize:M+D,hasher:Z}).compute(B,L);else var W=d.create({keySize:M+D}).compute(B,L);var F=i.create(W.words.slice(M),D*4);return W.sigBytes=M*4,x.create({key:W,iv:F,salt:L})}},P=n.PasswordBasedCipher=R.extend({cfg:R.cfg.extend({kdf:N}),encrypt:function(B,M,D,L){L=this.cfg.extend(L);var Z=L.kdf.execute(D,B.keySize,B.ivSize,L.salt,L.hasher);L.iv=Z.iv;var W=R.encrypt.call(this,B,M,Z.key,L);return W.mixIn(Z),W},decrypt:function(B,M,D,L){L=this.cfg.extend(L),M=this._parse(M,L.format);var Z=L.kdf.execute(D,B.keySize,B.ivSize,M.salt,L.hasher);L.iv=Z.iv;var W=R.decrypt.call(this,B,M,Z.key,L);return W}})}()})});var kDe=E((QD,PDe)=>{(function(t,e,r){typeof QD=="object"?PDe.exports=QD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(QD,function(t){return t.mode.CFB=function(){var e=t.lib.BlockCipherMode.extend();e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize;r.call(this,n,s,a,i),this._prevBlock=n.slice(s,s+a)}}),e.Decryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=n.slice(s,s+a);r.call(this,n,s,a,i),this._prevBlock=o}});function r(n,s,i,a){var o,c=this._iv;c?(o=c.slice(0),this._iv=void 0):o=this._prevBlock,a.encryptBlock(o,0);for(var u=0;u{(function(t,e,r){typeof GD=="object"?DDe.exports=GD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(GD,function(t){return t.mode.CTR=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._counter;o&&(c=this._counter=o.slice(0),this._iv=void 0);var u=c.slice(0);i.encryptBlock(u,0),c[a-1]=c[a-1]+1|0;for(var l=0;l{(function(t,e,r){typeof KD=="object"?LDe.exports=KD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(KD,function(t){return t.mode.CTRGladman=function(){var e=t.lib.BlockCipherMode.extend();function r(i){if((i>>24&255)===255){var a=i>>16&255,o=i>>8&255,c=i&255;a===255?(a=0,o===255?(o=0,c===255?c=0:++c):++o):++a,i=0,i+=a<<16,i+=o<<8,i+=c}else i+=1<<24;return i}function n(i){return(i[0]=r(i[0]))===0&&(i[1]=r(i[1])),i}var s=e.Encryptor=e.extend({processBlock:function(i,a){var o=this._cipher,c=o.blockSize,u=this._iv,l=this._counter;u&&(l=this._counter=u.slice(0),this._iv=void 0),n(l);var d=l.slice(0);o.encryptBlock(d,0);for(var f=0;f{(function(t,e,r){typeof VD=="object"?WDe.exports=VD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(VD,function(t){return t.mode.OFB=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._keystream;o&&(c=this._keystream=o.slice(0),this._iv=void 0),i.encryptBlock(c,0);for(var u=0;u{(function(t,e,r){typeof zD=="object"?FDe.exports=zD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(zD,function(t){return t.mode.ECB=function(){var e=t.lib.BlockCipherMode.extend();return e.Encryptor=e.extend({processBlock:function(r,n){this._cipher.encryptBlock(r,n)}}),e.Decryptor=e.extend({processBlock:function(r,n){this._cipher.decryptBlock(r,n)}}),e}(),t.mode.ECB})});var jDe=E((YD,qDe)=>{(function(t,e,r){typeof YD=="object"?qDe.exports=YD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(YD,function(t){return t.pad.AnsiX923={pad:function(e,r){var n=e.sigBytes,s=r*4,i=s-n%s,a=n+i-1;e.clamp(),e.words[a>>>2]|=i<<24-a%4*8,e.sigBytes+=i},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Ansix923})});var QDe=E((JD,HDe)=>{(function(t,e,r){typeof JD=="object"?HDe.exports=JD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(JD,function(t){return t.pad.Iso10126={pad:function(e,r){var n=r*4,s=n-e.sigBytes%n;e.concat(t.lib.WordArray.random(s-1)).concat(t.lib.WordArray.create([s<<24],1))},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Iso10126})});var KDe=E((XD,GDe)=>{(function(t,e,r){typeof XD=="object"?GDe.exports=XD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(XD,function(t){return t.pad.Iso97971={pad:function(e,r){e.concat(t.lib.WordArray.create([2147483648],1)),t.pad.ZeroPadding.pad(e,r)},unpad:function(e){t.pad.ZeroPadding.unpad(e),e.sigBytes--}},t.pad.Iso97971})});var zDe=E((ZD,VDe)=>{(function(t,e,r){typeof ZD=="object"?VDe.exports=ZD=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(ZD,function(t){return t.pad.ZeroPadding={pad:function(e,r){var n=r*4;e.clamp(),e.sigBytes+=n-(e.sigBytes%n||n)},unpad:function(e){for(var r=e.words,n=e.sigBytes-1,n=e.sigBytes-1;n>=0;n--)if(r[n>>>2]>>>24-n%4*8&255){e.sigBytes=n+1;break}}},t.pad.ZeroPadding})});var JDe=E((e3,YDe)=>{(function(t,e,r){typeof e3=="object"?YDe.exports=e3=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(e3,function(t){return t.pad.NoPadding={pad:function(){},unpad:function(){}},t.pad.NoPadding})});var ZDe=E((t3,XDe)=>{(function(t,e,r){typeof t3=="object"?XDe.exports=t3=e(fr(),Os()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(t3,function(t){return function(e){var r=t,n=r.lib,s=n.CipherParams,i=r.enc,a=i.Hex,o=r.format,c=o.Hex={stringify:function(u){return u.ciphertext.toString(a)},parse:function(u){var l=a.parse(u);return s.create({ciphertext:l})}}}(),t.format.Hex})});var t3e=E((r3,e3e)=>{(function(t,e,r){typeof r3=="object"?e3e.exports=r3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(r3,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.algo,i=[],a=[],o=[],c=[],u=[],l=[],d=[],f=[],p=[],m=[];(function(){for(var g=[],b=0;b<256;b++)b<128?g[b]=b<<1:g[b]=b<<1^283;for(var y=0,x=0,b=0;b<256;b++){var v=x^x<<1^x<<2^x<<3^x<<4;v=v>>>8^v&255^99,i[y]=v,a[v]=y;var I=g[y],R=g[I],w=g[R],N=g[v]*257^v*16843008;o[y]=N<<24|N>>>8,c[y]=N<<16|N>>>16,u[y]=N<<8|N>>>24,l[y]=N;var N=w*16843009^R*65537^I*257^y*16843008;d[v]=N<<24|N>>>8,f[v]=N<<16|N>>>16,p[v]=N<<8|N>>>24,m[v]=N,y?(y=I^g[g[g[w^I]]],x^=g[g[x]]):y=x=1}})();var h=[0,1,2,4,8,16,32,64,128,27,54],A=s.AES=n.extend({_doReset:function(){var g;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var b=this._keyPriorReset=this._key,y=b.words,x=b.sigBytes/4,v=this._nRounds=x+6,I=(v+1)*4,R=this._keySchedule=[],w=0;w6&&w%x==4&&(g=i[g>>>24]<<24|i[g>>>16&255]<<16|i[g>>>8&255]<<8|i[g&255]):(g=g<<8|g>>>24,g=i[g>>>24]<<24|i[g>>>16&255]<<16|i[g>>>8&255]<<8|i[g&255],g^=h[w/x|0]<<24),R[w]=R[w-x]^g);for(var N=this._invKeySchedule=[],P=0;P>>24]]^f[i[g>>>16&255]]^p[i[g>>>8&255]]^m[i[g&255]]}}},encryptBlock:function(g,b){this._doCryptBlock(g,b,this._keySchedule,o,c,u,l,i)},decryptBlock:function(g,b){var y=g[b+1];g[b+1]=g[b+3],g[b+3]=y,this._doCryptBlock(g,b,this._invKeySchedule,d,f,p,m,a);var y=g[b+1];g[b+1]=g[b+3],g[b+3]=y},_doCryptBlock:function(g,b,y,x,v,I,R,w){for(var N=this._nRounds,P=g[b]^y[0],B=g[b+1]^y[1],M=g[b+2]^y[2],D=g[b+3]^y[3],L=4,Z=1;Z>>24]^v[B>>>16&255]^I[M>>>8&255]^R[D&255]^y[L++],F=x[B>>>24]^v[M>>>16&255]^I[D>>>8&255]^R[P&255]^y[L++],K=x[M>>>24]^v[D>>>16&255]^I[P>>>8&255]^R[B&255]^y[L++],j=x[D>>>24]^v[P>>>16&255]^I[B>>>8&255]^R[M&255]^y[L++];P=W,B=F,M=K,D=j}var W=(w[P>>>24]<<24|w[B>>>16&255]<<16|w[M>>>8&255]<<8|w[D&255])^y[L++],F=(w[B>>>24]<<24|w[M>>>16&255]<<16|w[D>>>8&255]<<8|w[P&255])^y[L++],K=(w[M>>>24]<<24|w[D>>>16&255]<<16|w[P>>>8&255]<<8|w[B&255])^y[L++],j=(w[D>>>24]<<24|w[P>>>16&255]<<16|w[B>>>8&255]<<8|w[M&255])^y[L++];g[b]=W,g[b+1]=F,g[b+2]=K,g[b+3]=j},keySize:256/32});e.AES=n._createHelper(A)}(),t.AES})});var n3e=E((n3,r3e)=>{(function(t,e,r){typeof n3=="object"?r3e.exports=n3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(n3,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.BlockCipher,i=e.algo,a=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],o=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],c=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],u=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],l=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],d=i.DES=s.extend({_doReset:function(){for(var h=this._key,A=h.words,g=[],b=0;b<56;b++){var y=a[b]-1;g[b]=A[y>>>5]>>>31-y%32&1}for(var x=this._subKeys=[],v=0;v<16;v++){for(var I=x[v]=[],R=c[v],b=0;b<24;b++)I[b/6|0]|=g[(o[b]-1+R)%28]<<31-b%6,I[4+(b/6|0)]|=g[28+(o[b+24]-1+R)%28]<<31-b%6;I[0]=I[0]<<1|I[0]>>>31;for(var b=1;b<7;b++)I[b]=I[b]>>>(b-1)*4+3;I[7]=I[7]<<5|I[7]>>>27}for(var w=this._invSubKeys=[],b=0;b<16;b++)w[b]=x[15-b]},encryptBlock:function(h,A){this._doCryptBlock(h,A,this._subKeys)},decryptBlock:function(h,A){this._doCryptBlock(h,A,this._invSubKeys)},_doCryptBlock:function(h,A,g){this._lBlock=h[A],this._rBlock=h[A+1],f.call(this,4,252645135),f.call(this,16,65535),p.call(this,2,858993459),p.call(this,8,16711935),f.call(this,1,1431655765);for(var b=0;b<16;b++){for(var y=g[b],x=this._lBlock,v=this._rBlock,I=0,R=0;R<8;R++)I|=u[R][((v^y[R])&l[R])>>>0];this._lBlock=v,this._rBlock=x^I}var w=this._lBlock;this._lBlock=this._rBlock,this._rBlock=w,f.call(this,1,1431655765),p.call(this,8,16711935),p.call(this,2,858993459),f.call(this,16,65535),f.call(this,4,252645135),h[A]=this._lBlock,h[A+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function f(h,A){var g=(this._lBlock>>>h^this._rBlock)&A;this._rBlock^=g,this._lBlock^=g<>>h^this._lBlock)&A;this._lBlock^=g,this._rBlock^=g<192.");var g=A.slice(0,2),b=A.length<4?A.slice(0,2):A.slice(2,4),y=A.length<6?A.slice(0,2):A.slice(4,6);this._des1=d.createEncryptor(n.create(g)),this._des2=d.createEncryptor(n.create(b)),this._des3=d.createEncryptor(n.create(y))},encryptBlock:function(h,A){this._des1.encryptBlock(h,A),this._des2.decryptBlock(h,A),this._des3.encryptBlock(h,A)},decryptBlock:function(h,A){this._des3.decryptBlock(h,A),this._des2.encryptBlock(h,A),this._des1.decryptBlock(h,A)},keySize:192/32,ivSize:64/32,blockSize:64/32});e.TripleDES=s._createHelper(m)}(),t.TripleDES})});var i3e=E((s3,s3e)=>{(function(t,e,r){typeof s3=="object"?s3e.exports=s3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(s3,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=s.RC4=n.extend({_doReset:function(){for(var c=this._key,u=c.words,l=c.sigBytes,d=this._S=[],f=0;f<256;f++)d[f]=f;for(var f=0,p=0;f<256;f++){var m=f%l,h=u[m>>>2]>>>24-m%4*8&255;p=(p+d[f]+h)%256;var A=d[f];d[f]=d[p],d[p]=A}this._i=this._j=0},_doProcessBlock:function(c,u){c[u]^=a.call(this)},keySize:256/32,ivSize:0});function a(){for(var c=this._S,u=this._i,l=this._j,d=0,f=0;f<4;f++){u=(u+1)%256,l=(l+c[u])%256;var p=c[u];c[u]=c[l],c[l]=p,d|=c[(c[u]+c[l])%256]<<24-f*8}return this._i=u,this._j=l,d}e.RC4=n._createHelper(i);var o=s.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var c=this.cfg.drop;c>0;c--)a.call(this)}});e.RC4Drop=n._createHelper(o)}(),t.RC4})});var o3e=E((i3,a3e)=>{(function(t,e,r){typeof i3=="object"?a3e.exports=i3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(i3,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=[],a=[],o=[],c=s.Rabbit=n.extend({_doReset:function(){for(var l=this._key.words,d=this.cfg.iv,f=0;f<4;f++)l[f]=(l[f]<<8|l[f]>>>24)&16711935|(l[f]<<24|l[f]>>>8)&4278255360;var p=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],m=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var f=0;f<4;f++)u.call(this);for(var f=0;f<8;f++)m[f]^=p[f+4&7];if(d){var h=d.words,A=h[0],g=h[1],b=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360,y=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,x=b>>>16|y&4294901760,v=y<<16|b&65535;m[0]^=b,m[1]^=x,m[2]^=y,m[3]^=v,m[4]^=b,m[5]^=x,m[6]^=y,m[7]^=v;for(var f=0;f<4;f++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0>>0?1:0)|0,this._b=d[7]>>>0>>0?1:0;for(var f=0;f<8;f++){var p=l[f]+d[f],m=p&65535,h=p>>>16,A=((m*m>>>17)+m*h>>>15)+h*h,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=A^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}e.Rabbit=n._createHelper(c)}(),t.Rabbit})});var u3e=E((a3,c3e)=>{(function(t,e,r){typeof a3=="object"?c3e.exports=a3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(a3,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=[],a=[],o=[],c=s.RabbitLegacy=n.extend({_doReset:function(){var l=this._key.words,d=this.cfg.iv,f=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],p=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var m=0;m<4;m++)u.call(this);for(var m=0;m<8;m++)p[m]^=f[m+4&7];if(d){var h=d.words,A=h[0],g=h[1],b=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360,y=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,x=b>>>16|y&4294901760,v=y<<16|b&65535;p[0]^=b,p[1]^=x,p[2]^=y,p[3]^=v,p[4]^=b,p[5]^=x,p[6]^=y,p[7]^=v;for(var m=0;m<4;m++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0>>0?1:0)|0,this._b=d[7]>>>0>>0?1:0;for(var f=0;f<8;f++){var p=l[f]+d[f],m=p&65535,h=p>>>16,A=((m*m>>>17)+m*h>>>15)+h*h,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=A^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}e.RabbitLegacy=n._createHelper(c)}(),t.RabbitLegacy})});var d3e=E((o3,l3e)=>{(function(t,e,r){typeof o3=="object"?l3e.exports=o3=e(fr(),d0(),f0(),Gd(),Os()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(o3,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.algo;let i=16,a=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],o=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];var c={pbox:[],sbox:[]};function u(m,h){let A=h>>24&255,g=h>>16&255,b=h>>8&255,y=h&255,x=m.sbox[0][A]+m.sbox[1][g];return x=x^m.sbox[2][b],x=x+m.sbox[3][y],x}function l(m,h,A){let g=h,b=A,y;for(let x=0;x1;--x)g=g^m.pbox[x],b=u(m,g)^b,y=g,g=b,b=y;return y=g,g=b,b=y,b=b^m.pbox[1],g=g^m.pbox[0],{left:g,right:b}}function f(m,h,A){for(let v=0;v<4;v++){m.sbox[v]=[];for(let I=0;I<256;I++)m.sbox[v][I]=o[v][I]}let g=0;for(let v=0;v=A&&(g=0);let b=0,y=0,x=0;for(let v=0;v{(function(t,e,r){typeof c3=="object"?f3e.exports=c3=e(fr(),Iv(),uDe(),dDe(),d0(),mDe(),f0(),PQ(),DD(),xDe(),kQ(),_De(),vDe(),CDe(),UD(),RDe(),Gd(),Os(),kDe(),BDe(),MDe(),$De(),UDe(),jDe(),QDe(),KDe(),zDe(),JDe(),ZDe(),t3e(),n3e(),i3e(),o3e(),u3e(),d3e()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./lib-typedarrays","./enc-utf16","./enc-base64","./enc-base64url","./md5","./sha1","./sha256","./sha224","./sha512","./sha384","./sha3","./ripemd160","./hmac","./pbkdf2","./evpkdf","./cipher-core","./mode-cfb","./mode-ctr","./mode-ctr-gladman","./mode-ofb","./mode-ecb","./pad-ansix923","./pad-iso10126","./pad-iso97971","./pad-zeropadding","./pad-nopadding","./format-hex","./aes","./tripledes","./rc4","./rabbit","./rabbit-legacy","./blowfish"],e):t.CryptoJS=e(t.CryptoJS)})(c3,function(t){return t})});var wv=E(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.getOptions=sr.setOptions=sr.hasOwnProp=sr.formatDate=sr.camelify=sr.splitByCommaWithPreservingQuotes=sr.trim=sr.splitAt=sr.tryCatch=sr.byteSequenceToHex=sr.hexToByteSequence=sr.toNumber=sr.INVALIDPLAYLIST=sr.CONDITIONALPARAMCHECK=sr.PARAMCHECK=sr.CONDITIONALASSERT=sr.ASSERT=sr.THROW=void 0;var Tv={};function Nh(t){if(!Tv.strictMode){Tv.silent||console.error(t.message);return}throw t}sr.THROW=Nh;function lJt(t,...e){for(let[r,n]of e.entries())n||Nh(new Error(`${t} : Failed at [${r}]`))}sr.ASSERT=lJt;function dJt(...t){for(let[e,[r,n]]of t.entries())r&&(n||Nh(new Error(`Conditional Assert : Failed at [${e}]`)))}sr.CONDITIONALASSERT=dJt;function fJt(...t){for(let[e,r]of t.entries())r===void 0&&Nh(new Error(`Param Check : Failed at [${e}]`))}sr.PARAMCHECK=fJt;function pJt(...t){for(let[e,[r,n]]of t.entries())r&&n===void 0&&Nh(new Error(`Conditional Param Check : Failed at [${e}]`))}sr.CONDITIONALPARAMCHECK=pJt;function mJt(t){Nh(new Error(`Invalid Playlist : ${t}`))}sr.INVALIDPLAYLIST=mJt;function g3e(t,e=10){if(typeof t=="number")return t;let r=e===10?Number.parseFloat(t):Number.parseInt(t,e);return Number.isNaN(r)?0:r}sr.toNumber=g3e;function hJt(t){(t.startsWith("0x")||t.startsWith("0X"))&&(t=t.slice(2));let e=[];for(let r=0;r{"use strict";var CJt=pr&&pr.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),TJt=pr&&pr.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),wJt=pr&&pr.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&CJt(e,t,r);return TJt(e,t),e};Object.defineProperty(pr,"__esModule",{value:!0});pr.RenditionReport=pr.PrefetchSegment=pr.PartialSegment=pr.Segment=pr.MediaPlaylist=pr.MasterPlaylist=pr.Playlist=pr.SpliceInfo=pr.DateRange=pr.MediaInitializationSection=pr.Key=pr.SessionData=pr.Variant=pr.Rendition=void 0;var Es=wJt(wv()),BQ=class{constructor({type:e,uri:r,groupId:n,language:s,assocLanguage:i,name:a,isDefault:o,autoselect:c,forced:u,instreamId:l,characteristics:d,channels:f}){Es.PARAMCHECK(e,n,a),Es.CONDITIONALASSERT([e==="SUBTITLES",r],[e==="CLOSED-CAPTIONS",l],[e==="CLOSED-CAPTIONS",!r],[u,e==="SUBTITLES"]),this.type=e,this.uri=r,this.groupId=n,this.language=s,this.assocLanguage=i,this.name=a,this.isDefault=o,this.autoselect=c,this.forced=u,this.instreamId=l,this.characteristics=d,this.channels=f}};pr.Rendition=BQ;var LQ=class{constructor({uri:e,isIFrameOnly:r=!1,bandwidth:n,averageBandwidth:s,score:i,codecs:a,resolution:o,frameRate:c,hdcpLevel:u,allowedCpc:l,videoRange:d,stableVariantId:f,programId:p,audio:m=[],video:h=[],subtitles:A=[],closedCaptions:g=[],currentRenditions:b={audio:0,video:0,subtitles:0,closedCaptions:0}}){Es.PARAMCHECK(e,n),this.uri=e,this.isIFrameOnly=r,this.bandwidth=n,this.averageBandwidth=s,this.score=i,this.codecs=a,this.resolution=o,this.frameRate=c,this.hdcpLevel=u,this.allowedCpc=l,this.videoRange=d,this.stableVariantId=f,this.programId=p,this.audio=m,this.video=h,this.subtitles=A,this.closedCaptions=g,this.currentRenditions=b}};pr.Variant=LQ;var MQ=class{constructor({id:e,value:r,uri:n,language:s}){Es.PARAMCHECK(e,r||n),Es.ASSERT("SessionData cannot have both value and uri, shoud be either.",!(r&&n)),this.id=e,this.value=r,this.uri=n,this.language=s}};pr.SessionData=MQ;var WQ=class{constructor({method:e,uri:r,iv:n,format:s,formatVersion:i}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([e!=="NONE",r]),Es.CONDITIONALASSERT([e==="NONE",!(r||n||s||i)]),this.method=e,this.uri=r,this.iv=n,this.format=s,this.formatVersion=i}};pr.Key=WQ;var $Q=class{constructor({hint:e=!1,uri:r,mimeType:n,byterange:s}){Es.PARAMCHECK(r),this.hint=e,this.uri=r,this.mimeType=n,this.byterange=s}};pr.MediaInitializationSection=$Q;var FQ=class{constructor({id:e,classId:r,start:n,end:s,duration:i,plannedDuration:a,endOnNext:o,attributes:c={}}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([o===!0,r]),Es.CONDITIONALASSERT([s,n],[s,n<=s],[i,i>=0],[a,a>=0]),this.id=e,this.classId=r,this.start=n,this.end=s,this.duration=i,this.plannedDuration=a,this.endOnNext=o,this.attributes=c}};pr.DateRange=FQ;var UQ=class{constructor({type:e,duration:r,tagName:n,value:s}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([e==="OUT",r]),Es.CONDITIONALPARAMCHECK([e==="RAW",n]),this.type=e,this.duration=r,this.tagName=n,this.value=s}};pr.SpliceInfo=UQ;var $x=class{constructor(e){Es.PARAMCHECK(e),this.type=e}},Rv=class extends $x{constructor({isMasterPlaylist:e,uri:r,version:n,independentSegments:s=!1,start:i,source:a}){super("playlist"),Es.PARAMCHECK(e),this.isMasterPlaylist=e,this.uri=r,this.version=n,this.independentSegments=s,this.start=i,this.source=a}};pr.Playlist=Rv;var qQ=class extends Rv{constructor(e={}){super({...e,isMasterPlaylist:!0});let{variants:r=[],currentVariant:n,sessionDataList:s=[],sessionKeyList:i=[]}=e;this.variants=r,this.currentVariant=n,this.sessionDataList=s,this.sessionKeyList=i}};pr.MasterPlaylist=qQ;var jQ=class extends Rv{constructor(e={}){super({...e,isMasterPlaylist:!1});let{targetDuration:r,mediaSequenceBase:n=0,discontinuitySequenceBase:s=0,endlist:i=!1,playlistType:a,isIFrame:o,segments:c=[],prefetchSegments:u=[],lowLatencyCompatibility:l,partTargetDuration:d,renditionReports:f=[],skip:p=0,hash:m}=e;this.targetDuration=r,this.mediaSequenceBase=n,this.discontinuitySequenceBase=s,this.endlist=i,this.playlistType=a,this.isIFrame=o,this.segments=c,this.prefetchSegments=u,this.lowLatencyCompatibility=l,this.partTargetDuration=d,this.renditionReports=f,this.skip=p,this.hash=m}};pr.MediaPlaylist=jQ;var HQ=class extends $x{constructor({uri:e,mimeType:r,data:n,duration:s,title:i,byterange:a,discontinuity:o,mediaSequenceNumber:c=0,discontinuitySequence:u=0,key:l,map:d,programDateTime:f,dateRange:p,markers:m=[],parts:h=[]}){super("segment"),this.uri=e,this.mimeType=r,this.data=n,this.duration=s,this.title=i,this.byterange=a,this.discontinuity=o,this.mediaSequenceNumber=c,this.discontinuitySequence=u,this.key=l,this.map=d,this.programDateTime=f,this.dateRange=p,this.markers=m,this.parts=h}};pr.Segment=HQ;var QQ=class extends $x{constructor({hint:e=!1,uri:r,duration:n,independent:s,byterange:i,gap:a}){super("part"),Es.PARAMCHECK(r),this.hint=e,this.uri=r,this.duration=n,this.independent=s,this.duration=n,this.byterange=i,this.gap=a}};pr.PartialSegment=QQ;var GQ=class extends $x{constructor({uri:e,discontinuity:r,mediaSequenceNumber:n=0,discontinuitySequence:s=0,key:i}){super("prefetch"),Es.PARAMCHECK(e),this.uri=e,this.discontinuity=r,this.mediaSequenceNumber=n,this.discontinuitySequence=s,this.key=i}};pr.PrefetchSegment=GQ;var KQ=class{constructor({uri:e,lastMSN:r,lastPart:n}){Es.PARAMCHECK(e),this.uri=e,this.lastMSN=r,this.lastPart=n}};pr.RenditionReport=KQ});var v3e=E(Kd=>{"use strict";var RJt=Kd&&Kd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),NJt=Kd&&Kd.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),OJt=Kd&&Kd.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&RJt(e,t,r);return NJt(e,t),e};Object.defineProperty(Kd,"__esModule",{value:!0});var We=OJt(wv()),ti=VQ();function _3e(t){return We.trim(t,'"')}function PJt(t){switch(t){case"EXTM3U":case"EXT-X-VERSION":return"Basic";case"EXTINF":case"EXT-X-BYTERANGE":case"EXT-X-DISCONTINUITY":case"EXT-X-PREFETCH-DISCONTINUITY":case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-PROGRAM-DATE-TIME":case"EXT-X-DATERANGE":case"EXT-X-CUE-OUT":case"EXT-X-CUE-IN":case"EXT-X-CUE-OUT-CONT":case"EXT-X-CUE":case"EXT-OATCLS-SCTE35":case"EXT-X-ASSET":case"EXT-X-SCTE35":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":return"Segment";case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":case"EXT-X-ENDLIST":case"EXT-X-PLAYLIST-TYPE":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PREFETCH":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return"MediaPlaylist";case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":return"MasterPlaylist";case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-START":return"MediaorMasterPlaylist";default:return"Unknown"}}function kJt(t){let e=We.splitAt(t,",");return{duration:We.toNumber(e[0]),title:decodeURIComponent(escape(e[1]))}}function S3e(t){let e=We.splitAt(t,"@");return{length:We.toNumber(e[0]),offset:e[1]?We.toNumber(e[1]):-1}}function DJt(t){let e=We.splitAt(t,"x");return{width:We.toNumber(e[0]),height:We.toNumber(e[1])}}function BJt(t){let e="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",r=t.split(",");r.length===0&&We.INVALIDPLAYLIST(e);let n=[];for(let s of r){let[i,a]=We.splitAt(s,":");if(!i||!a){We.INVALIDPLAYLIST(e);continue}n.push({format:i,cpcList:a.split("/")})}return n}function LJt(t){let e=We.hexToByteSequence(t);return e.length!==16&&We.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),e}function MJt(t){return t.startsWith('"')?_3e(t):t.startsWith("0x")||t.startsWith("0X")?We.hexToByteSequence(t):We.toNumber(t)}function zQ(t,e){e.IV&&t.compatibleVersion<2&&(t.compatibleVersion=2),(e.KEYFORMAT||e.KEYFORMATVERSIONS)&&t.compatibleVersion<5&&(t.compatibleVersion=5)}function A3e(t){let e={};for(let r of We.splitByCommaWithPreservingQuotes(t)){let[n,s]=We.splitAt(r,"="),i=_3e(s);switch(n){case"URI":e[n]=i;break;case"START-DATE":case"END-DATE":e[n]=new Date(i);break;case"IV":e[n]=LJt(i);break;case"BYTERANGE":e[n]=S3e(i);break;case"RESOLUTION":e[n]=DJt(i);break;case"ALLOWED-CPC":e[n]=BJt(i);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":e[n]=i==="YES";break;case"DURATION":case"PLANNED-DURATION":case"BANDWIDTH":case"AVERAGE-BANDWIDTH":case"FRAME-RATE":case"TIME-OFFSET":case"CAN-SKIP-UNTIL":case"HOLD-BACK":case"PART-HOLD-BACK":case"PART-TARGET":case"BYTERANGE-START":case"BYTERANGE-LENGTH":case"LAST-MSN":case"LAST-PART":case"SKIPPED-SEGMENTS":case"SCORE":case"PROGRAM-ID":e[n]=We.toNumber(i);break;default:n.startsWith("SCTE35-")?e[n]=We.hexToByteSequence(i):n.startsWith("X-")?e[n]=MJt(s):(n==="VIDEO-RANGE"&&i!=="SDR"&&i!=="HLG"&&i!=="PQ"&&We.INVALIDPLAYLIST(`VIDEO-RANGE: unknown value "${i}"`),e[n]=i)}}return e}function WJt(t,e){switch(t){case"EXTM3U":case"EXT-X-DISCONTINUITY":case"EXT-X-ENDLIST":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-CUE-IN":return[null,null];case"EXT-X-VERSION":case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":return[We.toNumber(e),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(e))?[null,A3e(e)]:[We.toNumber(e),null];case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-DATERANGE":case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":case"EXT-X-START":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return[null,A3e(e)];case"EXTINF":return[kJt(e),null];case"EXT-X-BYTERANGE":return[S3e(e),null];case"EXT-X-PROGRAM-DATE-TIME":return[new Date(e),null];case"EXT-X-PLAYLIST-TYPE":return[e,null];default:return[e,null]}}function y3e(){We.INVALIDPLAYLIST("The file contains both media and master playlist tags.")}function $Jt(t){let e=t.indexOf(":");return e===-1?[t.slice(1).trim(),null]:[t.slice(1,e).trim(),t.slice(e+1).trim()]}function FJt({attributes:t}){return new ti.Rendition({type:t.TYPE,uri:t.URI,groupId:t["GROUP-ID"],language:t.LANGUAGE,assocLanguage:t["ASSOC-LANGUAGE"],name:t.NAME,isDefault:t.DEFAULT,autoselect:t.AUTOSELECT,forced:t.FORCED,instreamId:t["INSTREAM-ID"],characteristics:t.CHARACTERISTICS,channels:t.CHANNELS})}function UJt(t,e){let r=!1;for(let n of t){if(n.name===e.name)return"All EXT-X-MEDIA tags in the same Group MUST have different NAME attributes.";n.isDefault&&(r=!0)}return r&&e.isDefault?"EXT-X-MEDIA A Group MUST NOT have more than one member with a DEFAULT attribute of YES.":""}function qJt(t,e,r){let n=FJt(e),s=t[We.camelify(r)],i=UJt(s,n);i&&We.INVALIDPLAYLIST(i),s.push(n),n.isDefault&&(t.currentRenditions[We.camelify(r)]=s.length-1)}function jJt(t,e,r){for(let n of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])n==="CLOSED-CAPTIONS"&&t[n]==="NONE"?(r.isClosedCaptionsNone=!0,e.closedCaptions=[]):t[n]&&!e[We.camelify(n)].some(s=>s.groupId===t[n])&&We.INVALIDPLAYLIST(`${n} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${n}.`)}function x3e(t,e,r,n,s){let i=new ti.Variant({uri:r,bandwidth:e.BANDWIDTH,averageBandwidth:e["AVERAGE-BANDWIDTH"],score:e.SCORE,codecs:e.CODECS,resolution:e.RESOLUTION,frameRate:e["FRAME-RATE"],hdcpLevel:e["HDCP-LEVEL"],allowedCpc:e["ALLOWED-CPC"],videoRange:e["VIDEO-RANGE"],stableVariantId:e["STABLE-VARIANT-ID"],programId:e["PROGRAM-ID"]});for(let a of t)if(a.name==="EXT-X-MEDIA"){let o=a.attributes,c=o.TYPE;if((!c||!o["GROUP-ID"])&&We.INVALIDPLAYLIST("EXT-X-MEDIA TYPE attribute is REQUIRED."),e[c]===o["GROUP-ID"]&&(qJt(i,a,c),c==="CLOSED-CAPTIONS")){for(let{instreamId:u}of i.closedCaptions)if(u&&u.startsWith("SERVICE")&&s.compatibleVersion<7){s.compatibleVersion=7;break}}}return jJt(e,i,s),i.isIFrameOnly=n,i}function HJt(t,e){if(t.method!==e.method||t.uri!==e.uri)return!1;if(t.iv){if(!e.iv||t.iv.length!==e.iv.length)return!1;for(let r=0;ru.id===c.id&&u.language===c.language)&&We.INVALIDPLAYLIST("A Playlist MUST NOT contain more than one EXT-X-SESSION-DATA tag with the same DATA-ID attribute and the same LANGUAGE attribute."),r.sessionDataList.push(c)}else if(i==="EXT-X-SESSION-KEY"){o.METHOD==="NONE"&&We.INVALIDPLAYLIST("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE");let c=new ti.Key({method:o.METHOD,uri:o.URI,iv:o.IV,format:o.KEYFORMAT,formatVersion:o.KEYFORMATVERSIONS});r.sessionKeyList.some(u=>HJt(u,c))&&We.INVALIDPLAYLIST("A Master Playlist MUST NOT contain more than one EXT-X-SESSION-KEY tag with the same METHOD, URI, IV, KEYFORMAT, and KEYFORMATVERSIONS attribute values."),zQ(e,o),r.sessionKeyList.push(c)}else i==="EXT-X-INDEPENDENT-SEGMENTS"?(r.independentSegments&&We.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0):i==="EXT-X-START"&&(r.start&&We.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof o["TIME-OFFSET"]!="number"&&We.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:o["TIME-OFFSET"],precise:o.PRECISE||!1});if(n)for(let s of r.variants)typeof s.score!="number"&&We.INVALIDPLAYLIST("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute");if(e.isClosedCaptionsNone)for(let s of r.variants)s.closedCaptions.length>0&&We.INVALIDPLAYLIST("If there is a variant with CLOSED-CAPTIONS attribute of NONE, all EXT-X-STREAM-INF tags MUST have this attribute with a value of NONE");return r}function b3e(t,e,r,n,s,i,a){let o=new ti.Segment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i}),c=!1,u=!1;for(let l=r;l<=n;l++){let{name:d,value:f,attributes:p}=t[l];if(d==="EXTINF")!Number.isInteger(f.duration)&&a.compatibleVersion<3&&(a.compatibleVersion=3),Math.round(f.duration)>a.targetDuration&&We.INVALIDPLAYLIST("EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration"),o.duration=f.duration,o.title=f.title;else if(d==="EXT-X-BYTERANGE")a.compatibleVersion<4&&(a.compatibleVersion=4),o.byterange=f;else if(d==="EXT-X-DISCONTINUITY")o.parts.length>0&&We.INVALIDPLAYLIST("EXT-X-DISCONTINUITY must appear before the first EXT-X-PART tag of the Parent Segment."),o.discontinuity=!0;else if(d==="EXT-X-KEY")o.parts.length>0&&We.INVALIDPLAYLIST("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment."),zQ(a,p),o.key=new ti.Key({method:p.METHOD,uri:p.URI,iv:p.IV,format:p.KEYFORMAT,formatVersion:p.KEYFORMATVERSIONS});else if(d==="EXT-X-MAP")o.parts.length>0&&We.INVALIDPLAYLIST("EXT-X-MAP must appear before the first EXT-X-PART tag of the Parent Segment."),a.compatibleVersion<5&&(a.compatibleVersion=5),a.hasMap=!0,o.map=new ti.MediaInitializationSection({uri:p.URI,byterange:p.BYTERANGE});else if(d==="EXT-X-PROGRAM-DATE-TIME")o.programDateTime=f;else if(d==="EXT-X-DATERANGE"){let m={};for(let h of Object.keys(p))(h.startsWith("SCTE35-")||h.startsWith("X-"))&&(m[h]=p[h]);o.dateRange=new ti.DateRange({id:p.ID,classId:p.CLASS,start:p["START-DATE"],end:p["END-DATE"],duration:p.DURATION,plannedDuration:p["PLANNED-DURATION"],endOnNext:p["END-ON-NEXT"],attributes:m})}else if(d==="EXT-X-CUE-OUT")o.markers.push(new ti.SpliceInfo({type:"OUT",duration:p&&p.DURATION||f}));else if(d==="EXT-X-CUE-IN")o.markers.push(new ti.SpliceInfo({type:"IN"}));else if(d==="EXT-X-CUE-OUT-CONT"||d==="EXT-X-CUE"||d==="EXT-OATCLS-SCTE35"||d==="EXT-X-ASSET"||d==="EXT-X-SCTE35")o.markers.push(new ti.SpliceInfo({type:"RAW",tagName:d,value:f}));else if(d==="EXT-X-PRELOAD-HINT"&&!p.TYPE)We.INVALIDPLAYLIST("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"&&u)We.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist.");else if((d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT")&&!p.URI)We.INVALIDPLAYLIST("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="MAP")c&&We.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist."),c=!0,a.hasMap=!0,o.map=new ti.MediaInitializationSection({hint:!0,uri:p.URI,byterange:{length:p["BYTERANGE-LENGTH"],offset:p["BYTERANGE-START"]||0}});else if(d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"){d==="EXT-X-PART"&&!p.DURATION&&We.INVALIDPLAYLIST("EXT-X-PART: DURATION attribute is mandatory"),d==="EXT-X-PRELOAD-HINT"&&(u=!0);let m=new ti.PartialSegment({hint:d==="EXT-X-PRELOAD-HINT",uri:p.URI,byterange:d==="EXT-X-PART"?p.BYTERANGE:{length:p["BYTERANGE-LENGTH"],offset:p["BYTERANGE-START"]||0},duration:p.DURATION,independent:p.INDEPENDENT,gap:p.GAP});o.parts.push(m)}}return o}function GJt(t,e,r,n,s,i,a){let o=new ti.PrefetchSegment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i});for(let c=r;c<=n;c++){let{name:u,attributes:l}=t[c];u==="EXTINF"?We.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXTINF tag."):u==="EXT-X-DISCONTINUITY"?We.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXT-X-DISCONTINUITY tag."):u==="EXT-X-PREFETCH-DISCONTINUITY"?o.discontinuity=!0:u==="EXT-X-KEY"?(zQ(a,l),o.key=new ti.Key({method:l.METHOD,uri:l.URI,iv:l.IV,format:l.KEYFORMAT,formatVersion:l.KEYFORMATVERSIONS})):u==="EXT-X-MAP"&&We.INVALIDPLAYLIST("Prefetch segments must not be advertised with an EXT-X-MAP tag.")}return o}function KJt(t,e){let r=new ti.MediaPlaylist,n=-1,s=0,i=!1,a=!1,o=0,c=null,u=null,l=!1;for(let[d,f]of t.entries()){let{name:p,value:m,attributes:h,category:A}=f;if(A==="Segment"){n===-1&&(n=d),p==="EXT-X-DISCONTINUITY"&&(i=!0);continue}if(p==="EXT-X-VERSION")r.version===void 0?r.version=m:We.INVALIDPLAYLIST("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.");else if(p==="EXT-X-TARGETDURATION")r.targetDuration=e.targetDuration=m;else if(p==="EXT-X-MEDIA-SEQUENCE")r.segments.length>0&&We.INVALIDPLAYLIST("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),r.mediaSequenceBase=s=m;else if(p==="EXT-X-DISCONTINUITY-SEQUENCE")r.segments.length>0&&We.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),i&&We.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag."),r.discontinuitySequenceBase=o=m;else if(p==="EXT-X-ENDLIST")r.endlist=!0;else if(p==="EXT-X-PLAYLIST-TYPE")r.playlistType=m;else if(p==="EXT-X-I-FRAMES-ONLY")e.compatibleVersion<4&&(e.compatibleVersion=4),r.isIFrame=!0;else if(p==="EXT-X-INDEPENDENT-SEGMENTS")r.independentSegments&&We.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0;else if(p==="EXT-X-START")r.start&&We.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof h["TIME-OFFSET"]!="number"&&We.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:h["TIME-OFFSET"],precise:h.PRECISE||!1};else if(p==="EXT-X-SERVER-CONTROL")h["CAN-BLOCK-RELOAD"]||We.INVALIDPLAYLIST("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS"),r.lowLatencyCompatibility={canBlockReload:h["CAN-BLOCK-RELOAD"],canSkipUntil:h["CAN-SKIP-UNTIL"],holdBack:h["HOLD-BACK"],partHoldBack:h["PART-HOLD-BACK"]};else if(p==="EXT-X-PART-INF")h["PART-TARGET"]||We.INVALIDPLAYLIST("EXT-X-PART-INF: PART-TARGET attribute is mandatory"),r.partTargetDuration=h["PART-TARGET"];else if(p==="EXT-X-RENDITION-REPORT")h.URI||We.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI attribute is mandatory"),h.URI.search(/^[a-z]+:/)===0&&We.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri"),r.renditionReports.push(new ti.RenditionReport({uri:h.URI,lastMSN:h["LAST-MSN"],lastPart:h["LAST-PART"]}));else if(p==="EXT-X-SKIP")h["SKIPPED-SEGMENTS"]||We.INVALIDPLAYLIST("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory"),e.compatibleVersion<9&&(e.compatibleVersion=9),r.skip=h["SKIPPED-SEGMENTS"],s+=r.skip;else if(p==="EXT-X-PREFETCH"){let g=GJt(t,m,n===-1?d:n,d-1,s++,o,e);g&&(g.discontinuity&&(g.discontinuitySequence++,o=g.discontinuitySequence),g.key?c=g.key:g.key=c,r.prefetchSegments.push(g)),a=!0,n=-1}else if(typeof f=="string"){n===-1&&We.INVALIDPLAYLIST("A URI line is not preceded by any segment tags"),r.targetDuration||We.INVALIDPLAYLIST("The EXT-X-TARGETDURATION tag is REQUIRED"),a&&We.INVALIDPLAYLIST("These segments must appear after all complete segments.");let g=b3e(t,f,n,d-1,s++,o,e);g&&([o,c,u]=E3e(r,g,o,c,u),!l&&g.parts.length>0&&(l=!0)),n=-1}}if(n!==-1){let d=b3e(t,"",n,t.length-1,s++,o,e);if(d){let{parts:f}=d;f.length>0&&!r.endlist&&!f.at(-1)?.hint&&We.INVALIDPLAYLIST("If the Playlist contains EXT-X-PART tags and does not contain an EXT-X-ENDLIST tag, the Playlist must contain an EXT-X-PRELOAD-HINT tag with a TYPE=PART attribute"),E3e(r,d,c,u),!l&&d.parts.length>0&&(l=!0)}}return VJt(r.segments),r.lowLatencyCompatibility&&zJt(r,l),r}function E3e(t,e,r,n,s){let{discontinuity:i,key:a,map:o,byterange:c,uri:u}=e;if(i&&(e.discontinuitySequence=r+1),a||(e.key=n),o||(e.map=s),c&&c.offset===-1){let{segments:l}=t;if(l.length>0){let d=l.at(-1);d.byterange&&d.uri===u?c.offset=d.byterange.offset+d.byterange.length:We.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST be a sub-range of the same media resource")}else We.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file")}return t.segments.push(e),[e.discontinuitySequence,e.key,e.map]}function VJt(t){let e=new Map,r=new Map,n=!1,s=!1;for(let i=t.length-1;i>=0;i--){let{programDateTime:a,dateRange:o}=t[i];if(a&&(s=!0),o&&o.start){n=!0,o.endOnNext&&(o.end||o.duration)&&We.INVALIDPLAYLIST("An EXT-X-DATERANGE tag with an END-ON-NEXT=YES attribute MUST NOT contain DURATION or END-DATE attributes.");let c=o.start.getTime(),u=o.duration||0;o.end&&o.duration&&c+u*1e3!==o.end.getTime()&&We.INVALIDPLAYLIST("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION"),o.endOnNext&&(o.end=e.get(o.classId)),e.set(o.classId,o.start);let l=o.end?o.end.getTime():o.start.getTime()+(o.duration||0)*1e3,d=r.get(o.classId);if(d){for(let f of d)(f.start<=c&&f.end>c||f.start>=c&&f.start0&&ur&&We.INVALIDPLAYLIST("PART-TARGET is the maximum duration of any Partial Segment"),d0&&(u.lastPart=l.parts.length-1)}}function YJt(t,e){if(t==="Segment"||t==="MediaPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!1;return}e.isMasterPlaylist&&y3e();return}if(t==="MasterPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!0;return}e.isMasterPlaylist===!1&&y3e()}}function JJt(t,e){let[r,n]=$Jt(t),s=PJt(r);if(YJt(s,e),s==="Unknown")return null;s==="MediaPlaylist"&&r!=="EXT-X-RENDITION-REPORT"&&r!=="EXT-X-PREFETCH"&&(e.hash[r]&&We.INVALIDPLAYLIST("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist"),e.hash[r]=!0);let[i,a]=WJt(r,n);return{name:r,category:s,value:i,attributes:a}}function XJt(t,e){let r=[];for(let n of t.split(` -`)){let s=Buffer.from(n.trim()).toString();if(s){if(s.startsWith("#")){if(s.startsWith("#EXT")){let i=JJt(s,e);i&&r.push(i)}continue}r.push(s)}}return(r.length===0||r[0].name!=="EXTM3U")&&We.INVALIDPLAYLIST("The EXTM3U tag MUST be the first line."),r}function ZJt(t,e){let r;return e.isMasterPlaylist?r=QJt(t,e):(r=KJt(t,e),!r.isIFrame&&e.hasMap&&e.compatibleVersion<6&&(e.compatibleVersion=6)),e.compatibleVersion>1&&(!r.version||r.version{"use strict";var tXt=Vd&&Vd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),rXt=Vd&&Vd.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),nXt=Vd&&Vd.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&tXt(e,t,r);return rXt(e,t),e};Object.defineProperty(Vd,"__esModule",{value:!0});var uu=nXt(wv()),sXt=["#EXTINF","#EXT-X-BYTERANGE","#EXT-X-DISCONTINUITY","#EXT-X-STREAM-INF","#EXT-X-CUE-OUT","#EXT-X-CUE-IN","#EXT-X-KEY","#EXT-X-MAP"],iXt=["#EXT-X-MEDIA"],YQ=class extends Array{constructor(e){super(),this.baseUri=e}push(...e){for(let r of e){if(!r.startsWith("#")){super.push(r);continue}if(sXt.some(n=>r.startsWith(n))){super.push(r);continue}if(this.includes(r)){if(iXt.some(n=>r.startsWith(n)))continue;uu.INVALIDPLAYLIST(`Redundant item (${r})`)}super.push(r)}return this.length}};function JQ(t,e){let r=1e3;e&&(r=10**e);let n=Math.round(t*r)/r;return e?n.toFixed(e):n}function aXt(t){let e=t.toString(10),r=e.indexOf(".");return r===-1?0:e.length-r-1}function oXt(t,e){for(let r of e.sessionDataList)t.push(cXt(r));for(let r of e.sessionKeyList)t.push(I3e(r,!0));for(let r of e.variants)uXt(t,r)}function cXt(t){let e=[`DATA-ID="${t.id}"`];return t.language&&e.push(`LANGUAGE="${t.language}"`),t.value?e.push(`VALUE="${t.value}"`):t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-SESSION-DATA:${e.join(",")}`}function I3e(t,e){let r=e?"#EXT-X-SESSION-KEY":"#EXT-X-KEY",n=[`METHOD=${t.method}`];return t.uri&&n.push(`URI="${t.uri}"`),t.iv&&(t.iv.length!==16&&uu.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),n.push(`IV=${uu.byteSequenceToHex(t.iv)}`)),t.format&&n.push(`KEYFORMAT="${t.format}"`),t.formatVersion&&n.push(`KEYFORMATVERSIONS="${t.formatVersion}"`),`${r}:${n.join(",")}`}function uXt(t,e){let r=e.isIFrameOnly?"#EXT-X-I-FRAME-STREAM-INF":"#EXT-X-STREAM-INF",n=[`BANDWIDTH=${e.bandwidth}`];if(e.averageBandwidth&&n.push(`AVERAGE-BANDWIDTH=${e.averageBandwidth}`),e.isIFrameOnly&&n.push(`URI="${e.uri}"`),e.codecs&&n.push(`CODECS="${e.codecs}"`),e.resolution&&n.push(`RESOLUTION=${e.resolution.width}x${e.resolution.height}`),e.frameRate&&n.push(`FRAME-RATE=${JQ(e.frameRate,3)}`),e.hdcpLevel&&n.push(`HDCP-LEVEL=${e.hdcpLevel}`),e.audio.length>0){n.push(`AUDIO="${e.audio[0].groupId}"`);for(let s of e.audio)t.push(u3(s))}if(e.video.length>0){n.push(`VIDEO="${e.video[0].groupId}"`);for(let s of e.video)t.push(u3(s))}if(e.subtitles.length>0){n.push(`SUBTITLES="${e.subtitles[0].groupId}"`);for(let s of e.subtitles)t.push(u3(s))}if(uu.getOptions().allowClosedCaptionsNone&&e.closedCaptions.length===0)n.push("CLOSED-CAPTIONS=NONE");else if(e.closedCaptions.length>0){n.push(`CLOSED-CAPTIONS="${e.closedCaptions[0].groupId}"`);for(let s of e.closedCaptions)t.push(u3(s))}if(e.score&&n.push(`SCORE=${e.score}`),e.allowedCpc){let s=[];for(let{format:i,cpcList:a}of e.allowedCpc)s.push(`${i}:${a.join("/")}`);n.push(`ALLOWED-CPC="${s.join(",")}"`)}e.videoRange&&n.push(`VIDEO-RANGE=${e.videoRange}`),e.stableVariantId&&n.push(`STABLE-VARIANT-ID="${e.stableVariantId}"`),e.programId&&n.push(`PROGRAM-ID=${e.programId}`),t.push(`${r}:${n.join(",")}`),e.isIFrameOnly||t.push(`${e.uri}`)}function u3(t){let e=[`TYPE=${t.type}`,`GROUP-ID="${t.groupId}"`,`NAME="${t.name}"`];return t.isDefault!==void 0&&e.push(`DEFAULT=${t.isDefault?"YES":"NO"}`),t.autoselect!==void 0&&e.push(`AUTOSELECT=${t.autoselect?"YES":"NO"}`),t.forced!==void 0&&e.push(`FORCED=${t.forced?"YES":"NO"}`),t.language&&e.push(`LANGUAGE="${t.language}"`),t.assocLanguage&&e.push(`ASSOC-LANGUAGE="${t.assocLanguage}"`),t.instreamId&&e.push(`INSTREAM-ID="${t.instreamId}"`),t.characteristics&&e.push(`CHARACTERISTICS="${t.characteristics}"`),t.channels&&e.push(`CHANNELS="${t.channels}"`),t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-MEDIA:${e.join(",")}`}function lXt(t,e){let r="",n="",s=!1;if(e.targetDuration&&t.push(`#EXT-X-TARGETDURATION:${e.targetDuration}`),e.lowLatencyCompatibility){let{canBlockReload:i,canSkipUntil:a,holdBack:o,partHoldBack:c}=e.lowLatencyCompatibility,u=[];u.push(`CAN-BLOCK-RELOAD=${i?"YES":"NO"}`),a!==void 0&&u.push(`CAN-SKIP-UNTIL=${a}`),o!==void 0&&u.push(`HOLD-BACK=${o}`),c!==void 0&&u.push(`PART-HOLD-BACK=${c}`),t.push(`#EXT-X-SERVER-CONTROL:${u.join(",")}`)}e.partTargetDuration&&t.push(`#EXT-X-PART-INF:PART-TARGET=${e.partTargetDuration}`),e.mediaSequenceBase&&t.push(`#EXT-X-MEDIA-SEQUENCE:${e.mediaSequenceBase}`),e.discontinuitySequenceBase&&t.push(`#EXT-X-DISCONTINUITY-SEQUENCE:${e.discontinuitySequenceBase}`),e.playlistType&&t.push(`#EXT-X-PLAYLIST-TYPE:${e.playlistType}`),e.isIFrame&&t.push("#EXT-X-I-FRAMES-ONLY"),e.skip>0&&t.push(`#EXT-X-SKIP:SKIPPED-SEGMENTS=${e.skip}`);for(let i of e.segments){let a="";[r,n,a]=dXt(t,i,r,n,e.version),a==="OUT"?s=!0:a==="IN"&&s&&(s=!1)}e.playlistType==="VOD"&&s&&t.push("#EXT-X-CUE-IN"),e.prefetchSegments.length>2&&uu.INVALIDPLAYLIST("The server must deliver no more than two prefetch segments");for(let i of e.prefetchSegments)i.discontinuity&&t.push("#EXT-X-PREFETCH-DISCONTINUITY"),t.push(`#EXT-X-PREFETCH:${i.uri}`);e.endlist&&t.push("#EXT-X-ENDLIST");for(let i of e.renditionReports){let a=[];a.push(`URI="${i.uri}"`,`LAST-MSN=${i.lastMSN}`),i.lastPart!==void 0&&a.push(`LAST-PART=${i.lastPart}`),t.push(`#EXT-X-RENDITION-REPORT:${a.join(",")}`)}}function dXt(t,e,r,n,s=1){let i=!1,a="";if(e.discontinuity&&t.push("#EXT-X-DISCONTINUITY"),e.key){let c=I3e(e.key);c!==r&&(t.push(c),r=c)}if(e.map){let c=fXt(e.map);c!==n&&(t.push(c),n=c)}if(e.programDateTime&&t.push(`#EXT-X-PROGRAM-DATE-TIME:${uu.formatDate(e.programDateTime)}`),e.dateRange&&t.push(pXt(e.dateRange)),e.markers.length>0&&(a=mXt(t,e.markers)),e.parts.length>0&&(i=hXt(t,e.parts)),i)return[r,n];let o=s<3?Math.round(e.duration):JQ(e.duration,aXt(e.duration));return t.push(`#EXTINF:${o},${unescape(encodeURIComponent(e.title||""))}`),e.byterange&&t.push(`#EXT-X-BYTERANGE:${XQ(e.byterange)}`),Array.prototype.push.call(t,`${e.uri}`),[r,n,a]}function fXt(t){let e=[`URI="${t.uri}"`];return t.byterange&&e.push(`BYTERANGE="${XQ(t.byterange)}"`),`#EXT-X-MAP:${e.join(",")}`}function XQ({offset:t,length:e}){return`${e}@${t}`}function pXt(t){let e=[`ID="${t.id}"`];t.start&&e.push(`START-DATE="${uu.formatDate(t.start)}"`),t.end&&e.push(`END-DATE="${uu.formatDate(t.end)}"`),t.duration&&e.push(`DURATION=${t.duration}`),t.plannedDuration&&e.push(`PLANNED-DURATION=${t.plannedDuration}`),t.classId&&e.push(`CLASS="${t.classId}"`),t.endOnNext&&e.push("END-ON-NEXT=YES");for(let r of Object.keys(t.attributes))r.startsWith("X-")?typeof t.attributes[r]=="number"?e.push(`${r}=${t.attributes[r]}`):e.push(`${r}="${t.attributes[r]}"`):r.startsWith("SCTE35-")&&e.push(`${r}=${uu.byteSequenceToHex(t.attributes[r])}`);return`#EXT-X-DATERANGE:${e.join(",")}`}function mXt(t,e){let r="";for(let n of e)if(n.type==="OUT")r="OUT",t.push(`#EXT-X-CUE-OUT:DURATION=${n.duration}`);else if(n.type==="IN")r="IN",t.push("#EXT-X-CUE-IN");else if(n.type==="RAW"){let s=n.value?`:${n.value}`:"";t.push(`#${n.tagName}${s}`)}return r}function hXt(t,e){let r=!1;for(let n of e)if(n.hint){let s=[];if(s.push("TYPE=PART",`URI="${n.uri}"`),n.byterange){let{offset:i,length:a}=n.byterange;s.push(`BYTERANGE-START=${i}`),a&&s.push(`BYTERANGE-LENGTH=${a}`)}t.push(`#EXT-X-PRELOAD-HINT:${s.join(",")}`),r=!0}else{let s=[];s.push(`DURATION=${n.duration}`,`URI="${n.uri}"`),n.byterange&&s.push(`BYTERANGE=${XQ(n.byterange)}`),n.independent&&s.push("INDEPENDENT=YES"),n.gap&&s.push("GAP=YES"),t.push(`#EXT-X-PART:${s.join(",")}`)}return r}function gXt(t){uu.PARAMCHECK(t),uu.ASSERT("Not a playlist",t.type==="playlist");let e=new YQ(t.uri);return e.push("#EXTM3U"),t.version&&e.push(`#EXT-X-VERSION:${t.version}`),t.independentSegments&&e.push("#EXT-X-INDEPENDENT-SEGMENTS"),t.start&&e.push(`#EXT-X-START:TIME-OFFSET=${JQ(t.start.offset)}${t.start.precise?",PRECISE=YES":""}`),t.isMasterPlaylist?oXt(e,t):lXt(e,t),e.join(` -`)}Vd.default=gXt});var R3e=E(_s=>{"use strict";var AXt=_s&&_s.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),yXt=_s&&_s.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),xXt=_s&&_s.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&AXt(e,t,r);return yXt(e,t),e},T3e=_s&&_s.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_s,"__esModule",{value:!0});_s.setOptions=_s.getOptions=_s.types=_s.stringify=_s.parse=void 0;var w3e=wv();Object.defineProperty(_s,"getOptions",{enumerable:!0,get:function(){return w3e.getOptions}});Object.defineProperty(_s,"setOptions",{enumerable:!0,get:function(){return w3e.setOptions}});var bXt=T3e(v3e());_s.parse=bXt.default;var EXt=T3e(C3e());_s.stringify=EXt.default;var _Xt=xXt(VQ());_s.types=_Xt});var fG=E((M7r,ABe)=>{ABe.exports=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}});var g0=E(Lh=>{var pG,tZt=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];Lh.getSymbolSize=function(e){if(!e)throw new Error('"version" cannot be null or undefined');if(e<1||e>40)throw new Error('"version" should be in range from 1 to 40');return e*4+17};Lh.getSymbolTotalCodewords=function(e){return tZt[e]};Lh.getBCHDigit=function(t){let e=0;for(;t!==0;)e++,t>>>=1;return e};Lh.setToSJISFunction=function(e){if(typeof e!="function")throw new Error('"toSJISFunc" is not a valid function.');pG=e};Lh.isKanjiModeEnabled=function(){return typeof pG<"u"};Lh.toSJIS=function(e){return pG(e)}});var S3=E(xc=>{xc.L={bit:1};xc.M={bit:0};xc.Q={bit:3};xc.H={bit:2};function rZt(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return xc.L;case"m":case"medium":return xc.M;case"q":case"quartile":return xc.Q;case"h":case"high":return xc.H;default:throw new Error("Unknown EC Level: "+t)}}xc.isValid=function(e){return e&&typeof e.bit<"u"&&e.bit>=0&&e.bit<4};xc.from=function(e,r){if(xc.isValid(e))return e;try{return rZt(e)}catch{return r}}});var bBe=E((F7r,xBe)=>{function yBe(){this.buffer=[],this.length=0}yBe.prototype={get:function(t){let e=Math.floor(t/8);return(this.buffer[e]>>>7-t%8&1)===1},put:function(t,e){for(let r=0;r>>e-r-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(t){let e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}};xBe.exports=yBe});var _Be=E((U7r,EBe)=>{function Dv(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new Uint8Array(t*t),this.reservedBit=new Uint8Array(t*t)}Dv.prototype.set=function(t,e,r,n){let s=t*this.size+e;this.data[s]=r,n&&(this.reservedBit[s]=!0)};Dv.prototype.get=function(t,e){return this.data[t*this.size+e]};Dv.prototype.xor=function(t,e,r){this.data[t*this.size+e]^=r};Dv.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]};EBe.exports=Dv});var SBe=E(v3=>{var nZt=g0().getSymbolSize;v3.getRowColCoords=function(e){if(e===1)return[];let r=Math.floor(e/7)+2,n=nZt(e),s=n===145?26:Math.ceil((n-13)/(2*r-2))*2,i=[n-7];for(let a=1;a{var sZt=g0().getSymbolSize,vBe=7;IBe.getPositions=function(e){let r=sZt(e);return[[0,0],[r-vBe,0],[0,r-vBe]]}});var TBe=E(Sn=>{Sn.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var Mh={N1:3,N2:3,N3:40,N4:10};Sn.isValid=function(e){return e!=null&&e!==""&&!isNaN(e)&&e>=0&&e<=7};Sn.from=function(e){return Sn.isValid(e)?parseInt(e,10):void 0};Sn.getPenaltyN1=function(e){let r=e.size,n=0,s=0,i=0,a=null,o=null;for(let c=0;c=5&&(n+=Mh.N1+(s-5)),a=l,s=1),l=e.get(u,c),l===o?i++:(i>=5&&(n+=Mh.N1+(i-5)),o=l,i=1)}s>=5&&(n+=Mh.N1+(s-5)),i>=5&&(n+=Mh.N1+(i-5))}return n};Sn.getPenaltyN2=function(e){let r=e.size,n=0;for(let s=0;s=10&&(s===1488||s===93)&&n++,i=i<<1&2047|e.get(o,a),o>=10&&(i===1488||i===93)&&n++}return n*Mh.N3};Sn.getPenaltyN4=function(e){let r=0,n=e.data.length;for(let i=0;i{var A0=S3(),I3=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],C3=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];mG.getBlocksCount=function(e,r){switch(r){case A0.L:return I3[(e-1)*4+0];case A0.M:return I3[(e-1)*4+1];case A0.Q:return I3[(e-1)*4+2];case A0.H:return I3[(e-1)*4+3];default:return}};mG.getTotalCodewordsCount=function(e,r){switch(r){case A0.L:return C3[(e-1)*4+0];case A0.M:return C3[(e-1)*4+1];case A0.Q:return C3[(e-1)*4+2];case A0.H:return C3[(e-1)*4+3];default:return}}});var wBe=E(w3=>{var Bv=new Uint8Array(512),T3=new Uint8Array(256);(function(){let e=1;for(let r=0;r<255;r++)Bv[r]=e,T3[e]=r,e<<=1,e&256&&(e^=285);for(let r=255;r<512;r++)Bv[r]=Bv[r-255]})();w3.log=function(e){if(e<1)throw new Error("log("+e+")");return T3[e]};w3.exp=function(e){return Bv[e]};w3.mul=function(e,r){return e===0||r===0?0:Bv[T3[e]+T3[r]]}});var RBe=E(Lv=>{var gG=wBe();Lv.mul=function(e,r){let n=new Uint8Array(e.length+r.length-1);for(let s=0;s=0;){let s=n[0];for(let a=0;a{var NBe=RBe();function AG(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}AG.prototype.initialize=function(e){this.degree=e,this.genPoly=NBe.generateECPolynomial(this.degree)};AG.prototype.encode=function(e){if(!this.genPoly)throw new Error("Encoder not initialized");let r=new Uint8Array(e.length+this.degree);r.set(e);let n=NBe.mod(r,this.genPoly),s=this.degree-n.length;if(s>0){let i=new Uint8Array(this.degree);return i.set(n,s),i}return n};OBe.exports=AG});var yG=E(kBe=>{kBe.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}});var xG=E(Yd=>{var DBe="[0-9]+",aZt="[A-Z $%*+\\-./:]+",Mv="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";Mv=Mv.replace(/u/g,"\\u");var oZt="(?:(?![A-Z0-9 $%*+\\-./:]|"+Mv+`)(?:.|[\r -]))+`;Yd.KANJI=new RegExp(Mv,"g");Yd.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");Yd.BYTE=new RegExp(oZt,"g");Yd.NUMERIC=new RegExp(DBe,"g");Yd.ALPHANUMERIC=new RegExp(aZt,"g");var cZt=new RegExp("^"+Mv+"$"),uZt=new RegExp("^"+DBe+"$"),lZt=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");Yd.testKanji=function(e){return cZt.test(e)};Yd.testNumeric=function(e){return uZt.test(e)};Yd.testAlphanumeric=function(e){return lZt.test(e)}});var y0=E(vs=>{var dZt=yG(),bG=xG();vs.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]};vs.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]};vs.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]};vs.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]};vs.MIXED={bit:-1};vs.getCharCountIndicator=function(e,r){if(!e.ccBits)throw new Error("Invalid mode: "+e);if(!dZt.isValid(r))throw new Error("Invalid version: "+r);return r>=1&&r<10?e.ccBits[0]:r<27?e.ccBits[1]:e.ccBits[2]};vs.getBestModeForData=function(e){return bG.testNumeric(e)?vs.NUMERIC:bG.testAlphanumeric(e)?vs.ALPHANUMERIC:bG.testKanji(e)?vs.KANJI:vs.BYTE};vs.toString=function(e){if(e&&e.id)return e.id;throw new Error("Invalid mode")};vs.isValid=function(e){return e&&e.bit&&e.ccBits};function fZt(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return vs.NUMERIC;case"alphanumeric":return vs.ALPHANUMERIC;case"kanji":return vs.KANJI;case"byte":return vs.BYTE;default:throw new Error("Unknown mode: "+t)}}vs.from=function(e,r){if(vs.isValid(e))return e;try{return fZt(e)}catch{return r}}});var $Be=E(Wh=>{var R3=g0(),pZt=hG(),BBe=S3(),x0=y0(),EG=yG(),MBe=7973,LBe=R3.getBCHDigit(MBe);function mZt(t,e,r){for(let n=1;n<=40;n++)if(e<=Wh.getCapacity(n,r,t))return n}function WBe(t,e){return x0.getCharCountIndicator(t,e)+4}function hZt(t,e){let r=0;return t.forEach(function(n){let s=WBe(n.mode,e);r+=s+n.getBitsLength()}),r}function gZt(t,e){for(let r=1;r<=40;r++)if(hZt(t,r)<=Wh.getCapacity(r,e,x0.MIXED))return r}Wh.from=function(e,r){return EG.isValid(e)?parseInt(e,10):r};Wh.getCapacity=function(e,r,n){if(!EG.isValid(e))throw new Error("Invalid QR Code version");typeof n>"u"&&(n=x0.BYTE);let s=R3.getSymbolTotalCodewords(e),i=pZt.getTotalCodewordsCount(e,r),a=(s-i)*8;if(n===x0.MIXED)return a;let o=a-WBe(n,e);switch(n){case x0.NUMERIC:return Math.floor(o/10*3);case x0.ALPHANUMERIC:return Math.floor(o/11*2);case x0.KANJI:return Math.floor(o/13);case x0.BYTE:default:return Math.floor(o/8)}};Wh.getBestVersionForData=function(e,r){let n,s=BBe.from(r,BBe.M);if(Array.isArray(e)){if(e.length>1)return gZt(e,s);if(e.length===0)return 1;n=e[0]}else n=e;return mZt(n.mode,n.getLength(),s)};Wh.getEncodedBits=function(e){if(!EG.isValid(e)||e<7)throw new Error("Invalid QR Code version");let r=e<<12;for(;R3.getBCHDigit(r)-LBe>=0;)r^=MBe<{var _G=g0(),UBe=1335,AZt=21522,FBe=_G.getBCHDigit(UBe);qBe.getEncodedBits=function(e,r){let n=e.bit<<3|r,s=n<<10;for(;_G.getBCHDigit(s)-FBe>=0;)s^=UBe<<_G.getBCHDigit(s)-FBe;return(n<<10|s)^AZt}});var QBe=E((eqr,HBe)=>{var yZt=y0();function jx(t){this.mode=yZt.NUMERIC,this.data=t.toString()}jx.getBitsLength=function(e){return 10*Math.floor(e/3)+(e%3?e%3*3+1:0)};jx.prototype.getLength=function(){return this.data.length};jx.prototype.getBitsLength=function(){return jx.getBitsLength(this.data.length)};jx.prototype.write=function(e){let r,n,s;for(r=0;r+3<=this.data.length;r+=3)n=this.data.substr(r,3),s=parseInt(n,10),e.put(s,10);let i=this.data.length-r;i>0&&(n=this.data.substr(r),s=parseInt(n,10),e.put(s,i*3+1))};HBe.exports=jx});var KBe=E((tqr,GBe)=>{var xZt=y0(),SG=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function Hx(t){this.mode=xZt.ALPHANUMERIC,this.data=t}Hx.getBitsLength=function(e){return 11*Math.floor(e/2)+6*(e%2)};Hx.prototype.getLength=function(){return this.data.length};Hx.prototype.getBitsLength=function(){return Hx.getBitsLength(this.data.length)};Hx.prototype.write=function(e){let r;for(r=0;r+2<=this.data.length;r+=2){let n=SG.indexOf(this.data[r])*45;n+=SG.indexOf(this.data[r+1]),e.put(n,11)}this.data.length%2&&e.put(SG.indexOf(this.data[r]),6)};GBe.exports=Hx});var zBe=E((rqr,VBe)=>{var bZt=y0();function Qx(t){this.mode=bZt.BYTE,typeof t=="string"?this.data=new TextEncoder().encode(t):this.data=new Uint8Array(t)}Qx.getBitsLength=function(e){return e*8};Qx.prototype.getLength=function(){return this.data.length};Qx.prototype.getBitsLength=function(){return Qx.getBitsLength(this.data.length)};Qx.prototype.write=function(t){for(let e=0,r=this.data.length;e{var EZt=y0(),_Zt=g0();function Gx(t){this.mode=EZt.KANJI,this.data=t}Gx.getBitsLength=function(e){return e*13};Gx.prototype.getLength=function(){return this.data.length};Gx.prototype.getBitsLength=function(){return Gx.getBitsLength(this.data.length)};Gx.prototype.write=function(t){let e;for(e=0;e=33088&&r<=40956)r-=33088;else if(r>=57408&&r<=60351)r-=49472;else throw new Error("Invalid SJIS character: "+this.data[e]+` -Make sure your charset is UTF-8`);r=(r>>>8&255)*192+(r&255),t.put(r,13)}};YBe.exports=Gx});var XBe=E((sqr,vG)=>{"use strict";var Wv={single_source_shortest_paths:function(t,e,r){var n={},s={};s[e]=0;var i=Wv.PriorityQueue.make();i.push(e,0);for(var a,o,c,u,l,d,f,p,m;!i.empty();){a=i.pop(),o=a.value,u=a.cost,l=t[o]||{};for(c in l)l.hasOwnProperty(c)&&(d=l[c],f=u+d,p=s[c],m=typeof s[c]>"u",(m||p>f)&&(s[c]=f,i.push(c,f),n[c]=o))}if(typeof r<"u"&&typeof s[r]>"u"){var h=["Could not find a path from ",e," to ",r,"."].join("");throw new Error(h)}return n},extract_shortest_path_from_predecessor_list:function(t,e){for(var r=[],n=e,s;n;)r.push(n),s=t[n],n=t[n];return r.reverse(),r},find_path:function(t,e,r){var n=Wv.single_source_shortest_paths(t,e,r);return Wv.extract_shortest_path_from_predecessor_list(n,r)},PriorityQueue:{make:function(t){var e=Wv.PriorityQueue,r={},n;t=t||{};for(n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return r.queue=[],r.sorter=t.sorter||e.default_sorter,r},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var r={value:t,cost:e};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};typeof vG<"u"&&(vG.exports=Wv)});var aLe=E(Kx=>{var Vr=y0(),tLe=QBe(),rLe=KBe(),nLe=zBe(),sLe=JBe(),$v=xG(),N3=g0(),SZt=XBe();function ZBe(t){return unescape(encodeURIComponent(t)).length}function Fv(t,e,r){let n=[],s;for(;(s=t.exec(r))!==null;)n.push({data:s[0],index:s.index,mode:e,length:s[0].length});return n}function iLe(t){let e=Fv($v.NUMERIC,Vr.NUMERIC,t),r=Fv($v.ALPHANUMERIC,Vr.ALPHANUMERIC,t),n,s;return N3.isKanjiModeEnabled()?(n=Fv($v.BYTE,Vr.BYTE,t),s=Fv($v.KANJI,Vr.KANJI,t)):(n=Fv($v.BYTE_KANJI,Vr.BYTE,t),s=[]),e.concat(r,n,s).sort(function(a,o){return a.index-o.index}).map(function(a){return{data:a.data,mode:a.mode,length:a.length}})}function IG(t,e){switch(e){case Vr.NUMERIC:return tLe.getBitsLength(t);case Vr.ALPHANUMERIC:return rLe.getBitsLength(t);case Vr.KANJI:return sLe.getBitsLength(t);case Vr.BYTE:return nLe.getBitsLength(t)}}function vZt(t){return t.reduce(function(e,r){let n=e.length-1>=0?e[e.length-1]:null;return n&&n.mode===r.mode?(e[e.length-1].data+=r.data,e):(e.push(r),e)},[])}function IZt(t){let e=[];for(let r=0;r{var P3=g0(),CG=S3(),TZt=bBe(),wZt=_Be(),RZt=SBe(),NZt=CBe(),RG=TBe(),NG=hG(),OZt=PBe(),O3=$Be(),PZt=jBe(),kZt=y0(),TG=aLe();function DZt(t,e){let r=t.size,n=NZt.getPositions(e);for(let s=0;s=0&&o<=6&&(c===0||c===6)||c>=0&&c<=6&&(o===0||o===6)||o>=2&&o<=4&&c>=2&&c<=4?t.set(i+o,a+c,!0,!0):t.set(i+o,a+c,!1,!0))}}function BZt(t){let e=t.size;for(let r=8;r>o&1)===1,t.set(s,i,a,!0),t.set(i,s,a,!0)}function wG(t,e,r){let n=t.size,s=PZt.getEncodedBits(e,r),i,a;for(i=0;i<15;i++)a=(s>>i&1)===1,i<6?t.set(i,8,a,!0):i<8?t.set(i+1,8,a,!0):t.set(n-15+i,8,a,!0),i<8?t.set(8,n-i-1,a,!0):i<9?t.set(8,15-i-1+1,a,!0):t.set(8,15-i-1,a,!0);t.set(n-8,8,1,!0)}function WZt(t,e){let r=t.size,n=-1,s=r-1,i=7,a=0;for(let o=r-1;o>0;o-=2)for(o===6&&o--;;){for(let c=0;c<2;c++)if(!t.isReserved(s,o-c)){let u=!1;a>>i&1)===1),t.set(s,o-c,u),i--,i===-1&&(a++,i=7)}if(s+=n,s<0||r<=s){s-=n,n=-n;break}}}function $Zt(t,e,r){let n=new TZt;r.forEach(function(c){n.put(c.mode.bit,4),n.put(c.getLength(),kZt.getCharCountIndicator(c.mode,t)),c.write(n)});let s=P3.getSymbolTotalCodewords(t),i=NG.getTotalCodewordsCount(t,e),a=(s-i)*8;for(n.getLengthInBits()+4<=a&&n.put(0,4);n.getLengthInBits()%8!==0;)n.putBit(0);let o=(a-n.getLengthInBits())/8;for(let c=0;ce.trim()).join(" ")};MNe.O=function(t){return this.inspectOpts.colors=this.useColors,E3.inspect(t,this.inspectOpts)}});var $Ne=E((n5r,Zj)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?Zj.exports=ONe():Zj.exports=WNe()});var UNe=E((s5r,FNe)=>{var US;FNe.exports=function(){if(!US){try{US=$Ne()("follow-redirects")}catch{}typeof US!="function"&&(US=function(){})}US.apply(null,arguments)}});var GNe=E((i5r,dH)=>{var jS=require("url"),qS=jS.URL,cQt=require("http"),uQt=require("https"),sH=require("stream").Writable,iH=require("assert"),qNe=UNe();(function(){var e=typeof process<"u",r=typeof window<"u"&&typeof document<"u",n=gh(Error.captureStackTrace);!e&&(r||!n)&&console.warn("The follow-redirects package should be excluded from browser builds.")})();var aH=!1;try{iH(new qS(""))}catch(t){aH=t.code==="ERR_INVALID_URL"}var lQt=["auth","host","hostname","href","path","pathname","port","protocol","query","search","hash"],oH=["abort","aborted","connect","error","socket","timeout"],cH=Object.create(null);oH.forEach(function(t){cH[t]=function(e,r,n){this._redirectable.emit(t,e,r,n)}});var tH=HS("ERR_INVALID_URL","Invalid URL",TypeError),rH=HS("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),dQt=HS("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded",rH),fQt=HS("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),pQt=HS("ERR_STREAM_WRITE_AFTER_END","write after end"),mQt=sH.prototype.destroy||HNe;function Va(t,e){sH.call(this),this._sanitizeOptions(t),this._options=t,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],e&&this.on("response",e);var r=this;this._onNativeResponse=function(n){try{r._processResponse(n)}catch(s){r.emit("error",s instanceof rH?s:new rH({cause:s}))}},this._performRequest()}Va.prototype=Object.create(sH.prototype);Va.prototype.abort=function(){lH(this._currentRequest),this._currentRequest.abort(),this.emit("abort")};Va.prototype.destroy=function(t){return lH(this._currentRequest,t),mQt.call(this,t),this};Va.prototype.write=function(t,e,r){if(this._ending)throw new pQt;if(!hh(t)&&!AQt(t))throw new TypeError("data should be a string, Buffer or Uint8Array");if(gh(e)&&(r=e,e=null),t.length===0){r&&r();return}this._requestBodyLength+t.length<=this._options.maxBodyLength?(this._requestBodyLength+=t.length,this._requestBodyBuffers.push({data:t,encoding:e}),this._currentRequest.write(t,e,r)):(this.emit("error",new fQt),this.abort())};Va.prototype.end=function(t,e,r){if(gh(t)?(r=t,t=e=null):gh(e)&&(r=e,e=null),!t)this._ended=this._ending=!0,this._currentRequest.end(null,null,r);else{var n=this,s=this._currentRequest;this.write(t,e,function(){n._ended=!0,s.end(null,null,r)}),this._ending=!0}};Va.prototype.setHeader=function(t,e){this._options.headers[t]=e,this._currentRequest.setHeader(t,e)};Va.prototype.removeHeader=function(t){delete this._options.headers[t],this._currentRequest.removeHeader(t)};Va.prototype.setTimeout=function(t,e){var r=this;function n(a){a.setTimeout(t),a.removeListener("timeout",a.destroy),a.addListener("timeout",a.destroy)}function s(a){r._timeout&&clearTimeout(r._timeout),r._timeout=setTimeout(function(){r.emit("timeout"),i()},t),n(a)}function i(){r._timeout&&(clearTimeout(r._timeout),r._timeout=null),r.removeListener("abort",i),r.removeListener("error",i),r.removeListener("response",i),r.removeListener("close",i),e&&r.removeListener("timeout",e),r.socket||r._currentRequest.removeListener("socket",s)}return e&&this.on("timeout",e),this.socket?s(this.socket):this._currentRequest.once("socket",s),this.on("socket",n),this.on("abort",i),this.on("error",i),this.on("response",i),this.on("close",i),this};["flushHeaders","getHeader","setNoDelay","setSocketKeepAlive"].forEach(function(t){Va.prototype[t]=function(e,r){return this._currentRequest[t](e,r)}});["aborted","connection","socket"].forEach(function(t){Object.defineProperty(Va.prototype,t,{get:function(){return this._currentRequest[t]}})});Va.prototype._sanitizeOptions=function(t){if(t.headers||(t.headers={}),t.host&&(t.hostname||(t.hostname=t.host),delete t.host),!t.pathname&&t.path){var e=t.path.indexOf("?");e<0?t.pathname=t.path:(t.pathname=t.path.substring(0,e),t.search=t.path.substring(e))}};Va.prototype._performRequest=function(){var t=this._options.protocol,e=this._options.nativeProtocols[t];if(!e)throw new TypeError("Unsupported protocol "+t);if(this._options.agents){var r=t.slice(0,-1);this._options.agent=this._options.agents[r]}var n=this._currentRequest=e.request(this._options,this._onNativeResponse);n._redirectable=this;for(var s of oH)n.on(s,cH[s]);if(this._currentUrl=/^\//.test(this._options.path)?jS.format(this._options):this._options.path,this._isRedirect){var i=0,a=this,o=this._requestBodyBuffers;(function c(u){if(n===a._currentRequest)if(u)a.emit("error",u);else if(i=400){t.responseUrl=this._currentUrl,t.redirects=this._redirects,this.emit("response",t),this._requestBodyBuffers=[];return}if(lH(this._currentRequest),t.destroy(),++this._redirectCount>this._options.maxRedirects)throw new dQt;var n,s=this._options.beforeRedirect;s&&(n=Object.assign({Host:t.req.getHeader("host")},this._options.headers));var i=this._options.method;((e===301||e===302)&&this._options.method==="POST"||e===303&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],eH(/^content-/i,this._options.headers));var a=eH(/^host$/i,this._options.headers),o=uH(this._currentUrl),c=a||o.host,u=/^\w+:/.test(r)?this._currentUrl:jS.format(Object.assign(o,{host:c})),l=hQt(r,u);if(qNe("redirecting to",l.href),this._isRedirect=!0,nH(l,this._options),(l.protocol!==o.protocol&&l.protocol!=="https:"||l.host!==c&&!gQt(l.host,c))&&eH(/^(?:(?:proxy-)?authorization|cookie)$/i,this._options.headers),gh(s)){var d={headers:t.headers,statusCode:e},f={url:u,method:i,headers:n};s(this._options,d,f),this._sanitizeOptions(this._options)}this._performRequest()};function jNe(t){var e={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(t).forEach(function(n){var s=n+":",i=r[s]=t[n],a=e[n]=Object.create(i);function o(u,l,d){return yQt(u)?u=nH(u):hh(u)?u=nH(uH(u)):(d=l,l=QNe(u),u={protocol:s}),gh(l)&&(d=l,l=null),l=Object.assign({maxRedirects:e.maxRedirects,maxBodyLength:e.maxBodyLength},u,l),l.nativeProtocols=r,!hh(l.host)&&!hh(l.hostname)&&(l.hostname="::1"),iH.equal(l.protocol,s,"protocol mismatch"),qNe("options",l),new Va(l,d)}function c(u,l,d){var f=a.request(u,l,d);return f.end(),f}Object.defineProperties(a,{request:{value:o,configurable:!0,enumerable:!0,writable:!0},get:{value:c,configurable:!0,enumerable:!0,writable:!0}})}),e}function HNe(){}function uH(t){var e;if(aH)e=new qS(t);else if(e=QNe(jS.parse(t)),!hh(e.protocol))throw new tH({input:t});return e}function hQt(t,e){return aH?new qS(t,e):uH(jS.resolve(e,t))}function QNe(t){if(/^\[/.test(t.hostname)&&!/^\[[:0-9a-f]+\]$/i.test(t.hostname))throw new tH({input:t.href||t});if(/^\[/.test(t.host)&&!/^\[[:0-9a-f]+\](:\d+)?$/i.test(t.host))throw new tH({input:t.href||t});return t}function nH(t,e){var r=e||{};for(var n of lQt)r[n]=t[n];return r.hostname.startsWith("[")&&(r.hostname=r.hostname.slice(1,-1)),r.port!==""&&(r.port=Number(r.port)),r.path=r.search?r.pathname+r.search:r.pathname,r}function eH(t,e){var r;for(var n in e)t.test(n)&&(r=e[n],delete e[n]);return r===null||typeof r>"u"?void 0:String(r).trim()}function HS(t,e,r){function n(s){gh(Error.captureStackTrace)&&Error.captureStackTrace(this,this.constructor),Object.assign(this,s||{}),this.code=t,this.message=this.cause?e+": "+this.cause.message:e}return n.prototype=new(r||Error),Object.defineProperties(n.prototype,{constructor:{value:n,enumerable:!1},name:{value:"Error ["+t+"]",enumerable:!1}}),n}function lH(t,e){for(var r of oH)t.removeListener(r,cH[r]);t.on("error",HNe),t.destroy(e)}function gQt(t,e){iH(hh(t)&&hh(e));var r=t.length-e.length-1;return r>0&&t[r]==="."&&t.endsWith(e)}function hh(t){return typeof t=="string"||t instanceof String}function gh(t){return typeof t=="function"}function AQt(t){return typeof t=="object"&&"length"in t}function yQt(t){return qS&&t instanceof qS}dH.exports=jNe({http:cQt,https:uQt});dH.exports.wrap=jNe});var z3=E(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});dl.AttributeAction=dl.IgnoreCaseMode=dl.SelectorType=void 0;var FGt;(function(t){t.Attribute="attribute",t.Pseudo="pseudo",t.PseudoElement="pseudo-element",t.Tag="tag",t.Universal="universal",t.Adjacent="adjacent",t.Child="child",t.Descendant="descendant",t.Parent="parent",t.Sibling="sibling",t.ColumnCombinator="column-combinator"})(FGt=dl.SelectorType||(dl.SelectorType={}));dl.IgnoreCaseMode={Unknown:null,QuirksMode:"quirks",IgnoreCase:!0,CaseSensitive:!1};var UGt;(function(t){t.Any="any",t.Element="element",t.End="end",t.Equals="equals",t.Exists="exists",t.Hyphen="hyphen",t.Not="not",t.Start="start"})(UGt=dl.AttributeAction||(dl.AttributeAction={}))});var yPe=E(Cx=>{"use strict";Object.defineProperty(Cx,"__esModule",{value:!0});Cx.parse=Cx.isTraversal=void 0;var Qr=z3(),mPe=/^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/,qGt=/\\([\da-f]{1,6}\s?|(\s)|.)/gi,jGt=new Map([[126,Qr.AttributeAction.Element],[94,Qr.AttributeAction.Start],[36,Qr.AttributeAction.End],[42,Qr.AttributeAction.Any],[33,Qr.AttributeAction.Not],[124,Qr.AttributeAction.Hyphen]]),HGt=new Set(["has","not","matches","is","where","host","host-context"]);function gPe(t){switch(t.type){case Qr.SelectorType.Adjacent:case Qr.SelectorType.Child:case Qr.SelectorType.Descendant:case Qr.SelectorType.Parent:case Qr.SelectorType.Sibling:case Qr.SelectorType.ColumnCombinator:return!0;default:return!1}}Cx.isTraversal=gPe;var QGt=new Set(["contains","icontains"]);function GGt(t,e,r){var n=parseInt(e,16)-65536;return n!==n||r?e:n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,n&1023|56320)}function iv(t){return t.replace(qGt,GGt)}function jH(t){return t===39||t===34}function hPe(t){return t===32||t===9||t===10||t===12||t===13}function VGt(t){var e=[],r=APe(e,"".concat(t),0);if(r0&&r0&&gPe(n[n.length-1]))throw new Error("Did not expect successive traversals.")}function u(k){if(n.length>0&&n[n.length-1].type===Qr.SelectorType.Descendant){n[n.length-1].type=k;return}c(),n.push({type:k})}function l(k,B){n.push({type:Qr.SelectorType.Attribute,name:k,action:B,value:s(1),namespace:null,ignoreCase:"quirks"})}function d(){if(n.length&&n[n.length-1].type===Qr.SelectorType.Descendant&&n.pop(),n.length===0)throw new Error("Empty sub-selector");t.push(n)}if(i(0),e.length===r)return r;e:for(;r{"use strict";var K3=Tx&&Tx.__spreadArray||function(t,e,r){if(r||arguments.length===2)for(var n=0,s=e.length,i;n ":" > ";case Yn.SelectorType.Parent:return e===0?"< ":" < ";case Yn.SelectorType.Sibling:return e===0?"~ ":" ~ ";case Yn.SelectorType.Adjacent:return e===0?"+ ":" + ";case Yn.SelectorType.Descendant:return" ";case Yn.SelectorType.ColumnCombinator:return e===0?"|| ":" || ";case Yn.SelectorType.Universal:return t.namespace==="*"&&e+10?n+t.slice(r):t}});var wx=E(So=>{"use strict";var JGt=So&&So.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),XGt=So&&So.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&JGt(e,t,r)};Object.defineProperty(So,"__esModule",{value:!0});So.stringify=So.parse=So.isTraversal=void 0;XGt(z3(),So);var IPe=yPe();Object.defineProperty(So,"isTraversal",{enumerable:!0,get:function(){return IPe.isTraversal}});Object.defineProperty(So,"parse",{enumerable:!0,get:function(){return IPe.parse}});var ZGt=CPe();Object.defineProperty(So,"stringify",{enumerable:!0,get:function(){return ZGt.stringify}})});var s0=E((H$r,TPe)=>{TPe.exports={trueFunc:function(){return!0},falseFunc:function(){return!1}}});var Cv=E((OQ,PQ)=>{(function(t,e){typeof OQ=="object"&&typeof PQ<"u"?PQ.exports=e():typeof define=="function"&&define.amd?define(e):(t=typeof globalThis<"u"?globalThis:t||self).dayjs=e()})(OQ,function(){"use strict";var t=1e3,e=6e4,r=36e5,n="millisecond",s="second",i="minute",a="hour",o="day",c="week",u="month",l="quarter",d="year",f="date",p="Invalid Date",m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,h=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,A={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(M){var k=["th","st","nd","rd"],B=M%100;return"["+M+(k[(B-20)%10]||k[B]||k[0])+"]"}},g=function(M,k,B){var Z=String(M);return!Z||Z.length>=k?M:""+Array(k+1-Z.length).join(B)+M},b={s:g,z:function(M){var k=-M.utcOffset(),B=Math.abs(k),Z=Math.floor(B/60),W=B%60;return(k<=0?"+":"-")+g(Z,2,"0")+":"+g(W,2,"0")},m:function M(k,B){if(k.date()1)return M(V[0])}else{var j=k.name;x[j]=k,W=j}return!Z&&W&&(y=W),W||!Z&&y},w=function(M,k){if(C(M))return M.clone();var B=typeof k=="object"?k:{};return B.date=M,B.args=arguments,new P(B)},N=b;N.l=R,N.i=C,N.w=function(M,k){return w(M,{locale:k.$L,utc:k.$u,x:k.$x,$offset:k.$offset})};var P=function(){function M(B){this.$L=R(B.locale,null,!0),this.parse(B),this.$x=this.$x||B.x||{},this[v]=!0}var k=M.prototype;return k.parse=function(B){this.$d=function(Z){var W=Z.date,F=Z.utc;if(W===null)return new Date(NaN);if(N.u(W))return new Date;if(W instanceof Date)return new Date(W);if(typeof W=="string"&&!/Z$/i.test(W)){var V=W.match(m);if(V){var j=V[2]-1||0,J=(V[7]||"0").substring(0,3);return F?new Date(Date.UTC(V[1],j,V[3]||1,V[4]||0,V[5]||0,V[6]||0,J)):new Date(V[1],j,V[3]||1,V[4]||0,V[5]||0,V[6]||0,J)}}return new Date(W)}(B),this.init()},k.init=function(){var B=this.$d;this.$y=B.getFullYear(),this.$M=B.getMonth(),this.$D=B.getDate(),this.$W=B.getDay(),this.$H=B.getHours(),this.$m=B.getMinutes(),this.$s=B.getSeconds(),this.$ms=B.getMilliseconds()},k.$utils=function(){return N},k.isValid=function(){return this.$d.toString()!==p},k.isSame=function(B,Z){var W=w(B);return this.startOf(Z)<=W&&W<=this.endOf(Z)},k.isAfter=function(B,Z){return w(B){(function(t,e){typeof TD=="object"?uDe.exports=TD=e():typeof define=="function"&&define.amd?define([],e):t.CryptoJS=e()})(TD,function(){var t=t||function(e,r){var n;if(typeof window<"u"&&window.crypto&&(n=window.crypto),typeof self<"u"&&self.crypto&&(n=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(n=globalThis.crypto),!n&&typeof window<"u"&&window.msCrypto&&(n=window.msCrypto),!n&&typeof global<"u"&&global.crypto&&(n=global.crypto),!n&&typeof require=="function")try{n=require("crypto")}catch{}var s=function(){if(n){if(typeof n.getRandomValues=="function")try{return n.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof n.randomBytes=="function")try{return n.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},i=Object.create||function(){function g(){}return function(b){var y;return g.prototype=b,y=new g,g.prototype=null,y}}(),a={},o=a.lib={},c=o.Base=function(){return{extend:function(g){var b=i(this);return g&&b.mixIn(g),(!b.hasOwnProperty("init")||this.init===b.init)&&(b.init=function(){b.$super.init.apply(this,arguments)}),b.init.prototype=b,b.$super=this,b},create:function(){var g=this.extend();return g.init.apply(g,arguments),g},init:function(){},mixIn:function(g){for(var b in g)g.hasOwnProperty(b)&&(this[b]=g[b]);g.hasOwnProperty("toString")&&(this.toString=g.toString)},clone:function(){return this.init.prototype.extend(this)}}}(),u=o.WordArray=c.extend({init:function(g,b){g=this.words=g||[],b!=r?this.sigBytes=b:this.sigBytes=g.length*4},toString:function(g){return(g||d).stringify(this)},concat:function(g){var b=this.words,y=g.words,x=this.sigBytes,v=g.sigBytes;if(this.clamp(),x%4)for(var C=0;C>>2]>>>24-C%4*8&255;b[x+C>>>2]|=R<<24-(x+C)%4*8}else for(var w=0;w>>2]=y[w>>>2];return this.sigBytes+=v,this},clamp:function(){var g=this.words,b=this.sigBytes;g[b>>>2]&=4294967295<<32-b%4*8,g.length=e.ceil(b/4)},clone:function(){var g=c.clone.call(this);return g.words=this.words.slice(0),g},random:function(g){for(var b=[],y=0;y>>2]>>>24-v%4*8&255;x.push((C>>>4).toString(16)),x.push((C&15).toString(16))}return x.join("")},parse:function(g){for(var b=g.length,y=[],x=0;x>>3]|=parseInt(g.substr(x,2),16)<<24-x%8*4;return new u.init(y,b/2)}},f=l.Latin1={stringify:function(g){for(var b=g.words,y=g.sigBytes,x=[],v=0;v>>2]>>>24-v%4*8&255;x.push(String.fromCharCode(C))}return x.join("")},parse:function(g){for(var b=g.length,y=[],x=0;x>>2]|=(g.charCodeAt(x)&255)<<24-x%4*8;return new u.init(y,b)}},p=l.Utf8={stringify:function(g){try{return decodeURIComponent(escape(f.stringify(g)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(g){return f.parse(unescape(encodeURIComponent(g)))}},m=o.BufferedBlockAlgorithm=c.extend({reset:function(){this._data=new u.init,this._nDataBytes=0},_append:function(g){typeof g=="string"&&(g=p.parse(g)),this._data.concat(g),this._nDataBytes+=g.sigBytes},_process:function(g){var b,y=this._data,x=y.words,v=y.sigBytes,C=this.blockSize,R=C*4,w=v/R;g?w=e.ceil(w):w=e.max((w|0)-this._minBufferSize,0);var N=w*C,P=e.min(N*4,v);if(N){for(var L=0;L{(function(t,e){typeof wD=="object"?lDe.exports=wD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(wD,function(t){return function(e){var r=t,n=r.lib,s=n.Base,i=n.WordArray,a=r.x64={},o=a.Word=s.extend({init:function(u,l){this.high=u,this.low=l}}),c=a.WordArray=s.extend({init:function(u,l){u=this.words=u||[],l!=e?this.sigBytes=l:this.sigBytes=u.length*8},toX32:function(){for(var u=this.words,l=u.length,d=[],f=0;f{(function(t,e){typeof RD=="object"?dDe.exports=RD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(RD,function(t){return function(){if(typeof ArrayBuffer=="function"){var e=t,r=e.lib,n=r.WordArray,s=n.init,i=n.init=function(a){if(a instanceof ArrayBuffer&&(a=new Uint8Array(a)),(a instanceof Int8Array||typeof Uint8ClampedArray<"u"&&a instanceof Uint8ClampedArray||a instanceof Int16Array||a instanceof Uint16Array||a instanceof Int32Array||a instanceof Uint32Array||a instanceof Float32Array||a instanceof Float64Array)&&(a=new Uint8Array(a.buffer,a.byteOffset,a.byteLength)),a instanceof Uint8Array){for(var o=a.byteLength,c=[],u=0;u>>2]|=a[u]<<24-u%4*8;s.call(this,c,o)}else s.apply(this,arguments)};i.prototype=n}}(),t.lib.WordArray})});var mDe=E((ND,pDe)=>{(function(t,e){typeof ND=="object"?pDe.exports=ND=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(ND,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Utf16=s.Utf16BE={stringify:function(o){for(var c=o.words,u=o.sigBytes,l=[],d=0;d>>2]>>>16-d%4*8&65535;l.push(String.fromCharCode(f))}return l.join("")},parse:function(o){for(var c=o.length,u=[],l=0;l>>1]|=o.charCodeAt(l)<<16-l%2*16;return n.create(u,c*2)}};s.Utf16LE={stringify:function(o){for(var c=o.words,u=o.sigBytes,l=[],d=0;d>>2]>>>16-d%4*8&65535);l.push(String.fromCharCode(f))}return l.join("")},parse:function(o){for(var c=o.length,u=[],l=0;l>>1]|=a(o.charCodeAt(l)<<16-l%2*16);return n.create(u,c*2)}};function a(o){return o<<8&4278255360|o>>>8&16711935}}(),t.enc.Utf16})});var f0=E((OD,hDe)=>{(function(t,e){typeof OD=="object"?hDe.exports=OD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(OD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Base64={stringify:function(o){var c=o.words,u=o.sigBytes,l=this._map;o.clamp();for(var d=[],f=0;f>>2]>>>24-f%4*8&255,m=c[f+1>>>2]>>>24-(f+1)%4*8&255,h=c[f+2>>>2]>>>24-(f+2)%4*8&255,A=p<<16|m<<8|h,g=0;g<4&&f+g*.75>>6*(3-g)&63));var b=l.charAt(64);if(b)for(;d.length%4;)d.push(b);return d.join("")},parse:function(o){var c=o.length,u=this._map,l=this._reverseMap;if(!l){l=this._reverseMap=[];for(var d=0;d>>6-f%4*2,h=p|m;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64})});var ADe=E((PD,gDe)=>{(function(t,e){typeof PD=="object"?gDe.exports=PD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(PD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.enc,i=s.Base64url={stringify:function(o,c){c===void 0&&(c=!0);var u=o.words,l=o.sigBytes,d=c?this._safe_map:this._map;o.clamp();for(var f=[],p=0;p>>2]>>>24-p%4*8&255,h=u[p+1>>>2]>>>24-(p+1)%4*8&255,A=u[p+2>>>2]>>>24-(p+2)%4*8&255,g=m<<16|h<<8|A,b=0;b<4&&p+b*.75>>6*(3-b)&63));var y=d.charAt(64);if(y)for(;f.length%4;)f.push(y);return f.join("")},parse:function(o,c){c===void 0&&(c=!0);var u=o.length,l=c?this._safe_map:this._map,d=this._reverseMap;if(!d){d=this._reverseMap=[];for(var f=0;f>>6-f%4*2,h=p|m;l[d>>>2]|=h<<24-d%4*8,d++}return n.create(l,d)}}(),t.enc.Base64url})});var p0=E((DD,yDe)=>{(function(t,e){typeof DD=="object"?yDe.exports=DD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(DD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[];(function(){for(var p=0;p<64;p++)o[p]=e.abs(e.sin(p+1))*4294967296|0})();var c=a.MD5=i.extend({_doReset:function(){this._hash=new s.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(p,m){for(var h=0;h<16;h++){var A=m+h,g=p[A];p[A]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360}var b=this._hash.words,y=p[m+0],x=p[m+1],v=p[m+2],C=p[m+3],R=p[m+4],w=p[m+5],N=p[m+6],P=p[m+7],L=p[m+8],M=p[m+9],k=p[m+10],B=p[m+11],Z=p[m+12],W=p[m+13],F=p[m+14],V=p[m+15],j=b[0],J=b[1],se=b[2],oe=b[3];j=u(j,J,se,oe,y,7,o[0]),oe=u(oe,j,J,se,x,12,o[1]),se=u(se,oe,j,J,v,17,o[2]),J=u(J,se,oe,j,C,22,o[3]),j=u(j,J,se,oe,R,7,o[4]),oe=u(oe,j,J,se,w,12,o[5]),se=u(se,oe,j,J,N,17,o[6]),J=u(J,se,oe,j,P,22,o[7]),j=u(j,J,se,oe,L,7,o[8]),oe=u(oe,j,J,se,M,12,o[9]),se=u(se,oe,j,J,k,17,o[10]),J=u(J,se,oe,j,B,22,o[11]),j=u(j,J,se,oe,Z,7,o[12]),oe=u(oe,j,J,se,W,12,o[13]),se=u(se,oe,j,J,F,17,o[14]),J=u(J,se,oe,j,V,22,o[15]),j=l(j,J,se,oe,x,5,o[16]),oe=l(oe,j,J,se,N,9,o[17]),se=l(se,oe,j,J,B,14,o[18]),J=l(J,se,oe,j,y,20,o[19]),j=l(j,J,se,oe,w,5,o[20]),oe=l(oe,j,J,se,k,9,o[21]),se=l(se,oe,j,J,V,14,o[22]),J=l(J,se,oe,j,R,20,o[23]),j=l(j,J,se,oe,M,5,o[24]),oe=l(oe,j,J,se,F,9,o[25]),se=l(se,oe,j,J,C,14,o[26]),J=l(J,se,oe,j,L,20,o[27]),j=l(j,J,se,oe,W,5,o[28]),oe=l(oe,j,J,se,v,9,o[29]),se=l(se,oe,j,J,P,14,o[30]),J=l(J,se,oe,j,Z,20,o[31]),j=d(j,J,se,oe,w,4,o[32]),oe=d(oe,j,J,se,L,11,o[33]),se=d(se,oe,j,J,B,16,o[34]),J=d(J,se,oe,j,F,23,o[35]),j=d(j,J,se,oe,x,4,o[36]),oe=d(oe,j,J,se,R,11,o[37]),se=d(se,oe,j,J,P,16,o[38]),J=d(J,se,oe,j,k,23,o[39]),j=d(j,J,se,oe,W,4,o[40]),oe=d(oe,j,J,se,y,11,o[41]),se=d(se,oe,j,J,C,16,o[42]),J=d(J,se,oe,j,N,23,o[43]),j=d(j,J,se,oe,M,4,o[44]),oe=d(oe,j,J,se,Z,11,o[45]),se=d(se,oe,j,J,V,16,o[46]),J=d(J,se,oe,j,v,23,o[47]),j=f(j,J,se,oe,y,6,o[48]),oe=f(oe,j,J,se,P,10,o[49]),se=f(se,oe,j,J,F,15,o[50]),J=f(J,se,oe,j,w,21,o[51]),j=f(j,J,se,oe,Z,6,o[52]),oe=f(oe,j,J,se,C,10,o[53]),se=f(se,oe,j,J,k,15,o[54]),J=f(J,se,oe,j,x,21,o[55]),j=f(j,J,se,oe,L,6,o[56]),oe=f(oe,j,J,se,V,10,o[57]),se=f(se,oe,j,J,N,15,o[58]),J=f(J,se,oe,j,W,21,o[59]),j=f(j,J,se,oe,R,6,o[60]),oe=f(oe,j,J,se,B,10,o[61]),se=f(se,oe,j,J,v,15,o[62]),J=f(J,se,oe,j,M,21,o[63]),b[0]=b[0]+j|0,b[1]=b[1]+J|0,b[2]=b[2]+se|0,b[3]=b[3]+oe|0},_doFinalize:function(){var p=this._data,m=p.words,h=this._nDataBytes*8,A=p.sigBytes*8;m[A>>>5]|=128<<24-A%32;var g=e.floor(h/4294967296),b=h;m[(A+64>>>9<<4)+15]=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,m[(A+64>>>9<<4)+14]=(b<<8|b>>>24)&16711935|(b<<24|b>>>8)&4278255360,p.sigBytes=(m.length+1)*4,this._process();for(var y=this._hash,x=y.words,v=0;v<4;v++){var C=x[v];x[v]=(C<<8|C>>>24)&16711935|(C<<24|C>>>8)&4278255360}return y},clone:function(){var p=i.clone.call(this);return p._hash=this._hash.clone(),p}});function u(p,m,h,A,g,b,y){var x=p+(m&h|~m&A)+g+y;return(x<>>32-b)+m}function l(p,m,h,A,g,b,y){var x=p+(m&A|h&~A)+g+y;return(x<>>32-b)+m}function d(p,m,h,A,g,b,y){var x=p+(m^h^A)+g+y;return(x<>>32-b)+m}function f(p,m,h,A,g,b,y){var x=p+(h^(m|~A))+g+y;return(x<>>32-b)+m}r.MD5=i._createHelper(c),r.HmacMD5=i._createHmacHelper(c)}(Math),t.MD5})});var DQ=E((kD,xDe)=>{(function(t,e){typeof kD=="object"?xDe.exports=kD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(kD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.Hasher,i=e.algo,a=[],o=i.SHA1=s.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(c,u){for(var l=this._hash.words,d=l[0],f=l[1],p=l[2],m=l[3],h=l[4],A=0;A<80;A++){if(A<16)a[A]=c[u+A]|0;else{var g=a[A-3]^a[A-8]^a[A-14]^a[A-16];a[A]=g<<1|g>>>31}var b=(d<<5|d>>>27)+h+a[A];A<20?b+=(f&p|~f&m)+1518500249:A<40?b+=(f^p^m)+1859775393:A<60?b+=(f&p|f&m|p&m)-1894007588:b+=(f^p^m)-899497514,h=m,m=p,p=f<<30|f>>>2,f=d,d=b}l[0]=l[0]+d|0,l[1]=l[1]+f|0,l[2]=l[2]+p|0,l[3]=l[3]+m|0,l[4]=l[4]+h|0},_doFinalize:function(){var c=this._data,u=c.words,l=this._nDataBytes*8,d=c.sigBytes*8;return u[d>>>5]|=128<<24-d%32,u[(d+64>>>9<<4)+14]=Math.floor(l/4294967296),u[(d+64>>>9<<4)+15]=l,c.sigBytes=u.length*4,this._process(),this._hash},clone:function(){var c=s.clone.call(this);return c._hash=this._hash.clone(),c}});e.SHA1=s._createHelper(o),e.HmacSHA1=s._createHmacHelper(o)}(),t.SHA1})});var BD=E((LD,bDe)=>{(function(t,e){typeof LD=="object"?bDe.exports=LD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(LD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=[],c=[];(function(){function d(h){for(var A=e.sqrt(h),g=2;g<=A;g++)if(!(h%g))return!1;return!0}function f(h){return(h-(h|0))*4294967296|0}for(var p=2,m=0;m<64;)d(p)&&(m<8&&(o[m]=f(e.pow(p,1/2))),c[m]=f(e.pow(p,1/3)),m++),p++})();var u=[],l=a.SHA256=i.extend({_doReset:function(){this._hash=new s.init(o.slice(0))},_doProcessBlock:function(d,f){for(var p=this._hash.words,m=p[0],h=p[1],A=p[2],g=p[3],b=p[4],y=p[5],x=p[6],v=p[7],C=0;C<64;C++){if(C<16)u[C]=d[f+C]|0;else{var R=u[C-15],w=(R<<25|R>>>7)^(R<<14|R>>>18)^R>>>3,N=u[C-2],P=(N<<15|N>>>17)^(N<<13|N>>>19)^N>>>10;u[C]=w+u[C-7]+P+u[C-16]}var L=b&y^~b&x,M=m&h^m&A^h&A,k=(m<<30|m>>>2)^(m<<19|m>>>13)^(m<<10|m>>>22),B=(b<<26|b>>>6)^(b<<21|b>>>11)^(b<<7|b>>>25),Z=v+B+L+c[C]+u[C],W=k+M;v=x,x=y,y=b,b=g+Z|0,g=A,A=h,h=m,m=Z+W|0}p[0]=p[0]+m|0,p[1]=p[1]+h|0,p[2]=p[2]+A|0,p[3]=p[3]+g|0,p[4]=p[4]+b|0,p[5]=p[5]+y|0,p[6]=p[6]+x|0,p[7]=p[7]+v|0},_doFinalize:function(){var d=this._data,f=d.words,p=this._nDataBytes*8,m=d.sigBytes*8;return f[m>>>5]|=128<<24-m%32,f[(m+64>>>9<<4)+14]=e.floor(p/4294967296),f[(m+64>>>9<<4)+15]=p,d.sigBytes=f.length*4,this._process(),this._hash},clone:function(){var d=i.clone.call(this);return d._hash=this._hash.clone(),d}});r.SHA256=i._createHelper(l),r.HmacSHA256=i._createHmacHelper(l)}(Math),t.SHA256})});var _De=E((MD,EDe)=>{(function(t,e,r){typeof MD=="object"?EDe.exports=MD=e(pr(),BD()):typeof define=="function"&&define.amd?define(["./core","./sha256"],e):e(t.CryptoJS)})(MD,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=e.algo,i=s.SHA256,a=s.SHA224=i.extend({_doReset:function(){this._hash=new n.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var o=i._doFinalize.call(this);return o.sigBytes-=4,o}});e.SHA224=i._createHelper(a),e.HmacSHA224=i._createHmacHelper(a)}(),t.SHA224})});var kQ=E((WD,SDe)=>{(function(t,e,r){typeof WD=="object"?SDe.exports=WD=e(pr(),Iv()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(WD,function(t){return function(){var e=t,r=e.lib,n=r.Hasher,s=e.x64,i=s.Word,a=s.WordArray,o=e.algo;function c(){return i.create.apply(i,arguments)}var u=[c(1116352408,3609767458),c(1899447441,602891725),c(3049323471,3964484399),c(3921009573,2173295548),c(961987163,4081628472),c(1508970993,3053834265),c(2453635748,2937671579),c(2870763221,3664609560),c(3624381080,2734883394),c(310598401,1164996542),c(607225278,1323610764),c(1426881987,3590304994),c(1925078388,4068182383),c(2162078206,991336113),c(2614888103,633803317),c(3248222580,3479774868),c(3835390401,2666613458),c(4022224774,944711139),c(264347078,2341262773),c(604807628,2007800933),c(770255983,1495990901),c(1249150122,1856431235),c(1555081692,3175218132),c(1996064986,2198950837),c(2554220882,3999719339),c(2821834349,766784016),c(2952996808,2566594879),c(3210313671,3203337956),c(3336571891,1034457026),c(3584528711,2466948901),c(113926993,3758326383),c(338241895,168717936),c(666307205,1188179964),c(773529912,1546045734),c(1294757372,1522805485),c(1396182291,2643833823),c(1695183700,2343527390),c(1986661051,1014477480),c(2177026350,1206759142),c(2456956037,344077627),c(2730485921,1290863460),c(2820302411,3158454273),c(3259730800,3505952657),c(3345764771,106217008),c(3516065817,3606008344),c(3600352804,1432725776),c(4094571909,1467031594),c(275423344,851169720),c(430227734,3100823752),c(506948616,1363258195),c(659060556,3750685593),c(883997877,3785050280),c(958139571,3318307427),c(1322822218,3812723403),c(1537002063,2003034995),c(1747873779,3602036899),c(1955562222,1575990012),c(2024104815,1125592928),c(2227730452,2716904306),c(2361852424,442776044),c(2428436474,593698344),c(2756734187,3733110249),c(3204031479,2999351573),c(3329325298,3815920427),c(3391569614,3928383900),c(3515267271,566280711),c(3940187606,3454069534),c(4118630271,4000239992),c(116418474,1914138554),c(174292421,2731055270),c(289380356,3203993006),c(460393269,320620315),c(685471733,587496836),c(852142971,1086792851),c(1017036298,365543100),c(1126000580,2618297676),c(1288033470,3409855158),c(1501505948,4234509866),c(1607167915,987167468),c(1816402316,1246189591)],l=[];(function(){for(var f=0;f<80;f++)l[f]=c()})();var d=o.SHA512=n.extend({_doReset:function(){this._hash=new a.init([new i.init(1779033703,4089235720),new i.init(3144134277,2227873595),new i.init(1013904242,4271175723),new i.init(2773480762,1595750129),new i.init(1359893119,2917565137),new i.init(2600822924,725511199),new i.init(528734635,4215389547),new i.init(1541459225,327033209)])},_doProcessBlock:function(f,p){for(var m=this._hash.words,h=m[0],A=m[1],g=m[2],b=m[3],y=m[4],x=m[5],v=m[6],C=m[7],R=h.high,w=h.low,N=A.high,P=A.low,L=g.high,M=g.low,k=b.high,B=b.low,Z=y.high,W=y.low,F=x.high,V=x.low,j=v.high,J=v.low,se=C.high,oe=C.low,ue=R,Ce=w,we=N,qe=P,Fe=L,_e=M,U=k,G=B,z=Z,q=W,H=F,ee=V,ne=j,re=J,X=se,ie=oe,ce=0;ce<80;ce++){var fe,Ne,Pe=l[ce];if(ce<16)Ne=Pe.high=f[p+ce*2]|0,fe=Pe.low=f[p+ce*2+1]|0;else{var Ue=l[ce-15],Ke=Ue.high,Ye=Ue.low,Ze=(Ke>>>1|Ye<<31)^(Ke>>>8|Ye<<24)^Ke>>>7,nt=(Ye>>>1|Ke<<31)^(Ye>>>8|Ke<<24)^(Ye>>>7|Ke<<25),ct=l[ce-2],tt=ct.high,Dt=ct.low,lt=(tt>>>19|Dt<<13)^(tt<<3|Dt>>>29)^tt>>>6,De=(Dt>>>19|tt<<13)^(Dt<<3|tt>>>29)^(Dt>>>6|tt<<26),Je=l[ce-7],ft=Je.high,rt=Je.low,bt=l[ce-16],An=bt.high,Ct=bt.low;fe=nt+rt,Ne=Ze+ft+(fe>>>0>>0?1:0),fe=fe+De,Ne=Ne+lt+(fe>>>0>>0?1:0),fe=fe+Ct,Ne=Ne+An+(fe>>>0>>0?1:0),Pe.high=Ne,Pe.low=fe}var Sr=z&H^~z&ne,Us=q&ee^~q&re,Dr=ue&we^ue&Fe^we&Fe,qs=Ce&qe^Ce&_e^qe&_e,js=(ue>>>28|Ce<<4)^(ue<<30|Ce>>>2)^(ue<<25|Ce>>>7),ys=(Ce>>>28|ue<<4)^(Ce<<30|ue>>>2)^(Ce<<25|ue>>>7),Hs=(z>>>14|q<<18)^(z>>>18|q<<14)^(z<<23|q>>>9),Lu=(q>>>14|z<<18)^(q>>>18|z<<14)^(q<<23|z>>>9),go=u[ce],Dc=go.high,Ta=go.low,yn=ie+Lu,wa=X+Hs+(yn>>>0>>0?1:0),yn=yn+Us,wa=wa+Sr+(yn>>>0>>0?1:0),yn=yn+Ta,wa=wa+Dc+(yn>>>0>>0?1:0),yn=yn+fe,wa=wa+Ne+(yn>>>0>>0?1:0),rd=ys+qs,Ao=js+Dr+(rd>>>0>>0?1:0);X=ne,ie=re,ne=H,re=ee,H=z,ee=q,q=G+yn|0,z=U+wa+(q>>>0>>0?1:0)|0,U=Fe,G=_e,Fe=we,_e=qe,we=ue,qe=Ce,Ce=yn+rd|0,ue=wa+Ao+(Ce>>>0>>0?1:0)|0}w=h.low=w+Ce,h.high=R+ue+(w>>>0>>0?1:0),P=A.low=P+qe,A.high=N+we+(P>>>0>>0?1:0),M=g.low=M+_e,g.high=L+Fe+(M>>>0<_e>>>0?1:0),B=b.low=B+G,b.high=k+U+(B>>>0>>0?1:0),W=y.low=W+q,y.high=Z+z+(W>>>0>>0?1:0),V=x.low=V+ee,x.high=F+H+(V>>>0>>0?1:0),J=v.low=J+re,v.high=j+ne+(J>>>0>>0?1:0),oe=C.low=oe+ie,C.high=se+X+(oe>>>0>>0?1:0)},_doFinalize:function(){var f=this._data,p=f.words,m=this._nDataBytes*8,h=f.sigBytes*8;p[h>>>5]|=128<<24-h%32,p[(h+128>>>10<<5)+30]=Math.floor(m/4294967296),p[(h+128>>>10<<5)+31]=m,f.sigBytes=p.length*4,this._process();var A=this._hash.toX32();return A},clone:function(){var f=n.clone.call(this);return f._hash=this._hash.clone(),f},blockSize:1024/32});e.SHA512=n._createHelper(d),e.HmacSHA512=n._createHmacHelper(d)}(),t.SHA512})});var CDe=E(($D,vDe)=>{(function(t,e,r){typeof $D=="object"?vDe.exports=$D=e(pr(),Iv(),kQ()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./sha512"],e):e(t.CryptoJS)})($D,function(t){return function(){var e=t,r=e.x64,n=r.Word,s=r.WordArray,i=e.algo,a=i.SHA512,o=i.SHA384=a.extend({_doReset:function(){this._hash=new s.init([new n.init(3418070365,3238371032),new n.init(1654270250,914150663),new n.init(2438529370,812702999),new n.init(355462360,4144912697),new n.init(1731405415,4290775857),new n.init(2394180231,1750603025),new n.init(3675008525,1694076839),new n.init(1203062813,3204075428)])},_doFinalize:function(){var c=a._doFinalize.call(this);return c.sigBytes-=16,c}});e.SHA384=a._createHelper(o),e.HmacSHA384=a._createHmacHelper(o)}(),t.SHA384})});var TDe=E((FD,IDe)=>{(function(t,e,r){typeof FD=="object"?IDe.exports=FD=e(pr(),Iv()):typeof define=="function"&&define.amd?define(["./core","./x64-core"],e):e(t.CryptoJS)})(FD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.x64,o=a.Word,c=r.algo,u=[],l=[],d=[];(function(){for(var m=1,h=0,A=0;A<24;A++){u[m+5*h]=(A+1)*(A+2)/2%64;var g=h%5,b=(2*m+3*h)%5;m=g,h=b}for(var m=0;m<5;m++)for(var h=0;h<5;h++)l[m+5*h]=h+(2*m+3*h)%5*5;for(var y=1,x=0;x<24;x++){for(var v=0,C=0,R=0;R<7;R++){if(y&1){var w=(1<>>24)&16711935|(y<<24|y>>>8)&4278255360,x=(x<<8|x>>>24)&16711935|(x<<24|x>>>8)&4278255360;var v=A[b];v.high^=x,v.low^=y}for(var C=0;C<24;C++){for(var R=0;R<5;R++){for(var w=0,N=0,P=0;P<5;P++){var v=A[R+5*P];w^=v.high,N^=v.low}var L=f[R];L.high=w,L.low=N}for(var R=0;R<5;R++)for(var M=f[(R+4)%5],k=f[(R+1)%5],B=k.high,Z=k.low,w=M.high^(B<<1|Z>>>31),N=M.low^(Z<<1|B>>>31),P=0;P<5;P++){var v=A[R+5*P];v.high^=w,v.low^=N}for(var W=1;W<25;W++){var w,N,v=A[W],F=v.high,V=v.low,j=u[W];j<32?(w=F<>>32-j,N=V<>>32-j):(w=V<>>64-j,N=F<>>64-j);var J=f[l[W]];J.high=w,J.low=N}var se=f[0],oe=A[0];se.high=oe.high,se.low=oe.low;for(var R=0;R<5;R++)for(var P=0;P<5;P++){var W=R+5*P,v=A[W],ue=f[W],Ce=f[(R+1)%5+5*P],we=f[(R+2)%5+5*P];v.high=ue.high^~Ce.high&we.high,v.low=ue.low^~Ce.low&we.low}var v=A[0],qe=d[C];v.high^=qe.high,v.low^=qe.low}},_doFinalize:function(){var m=this._data,h=m.words,A=this._nDataBytes*8,g=m.sigBytes*8,b=this.blockSize*32;h[g>>>5]|=1<<24-g%32,h[(e.ceil((g+1)/b)*b>>>5)-1]|=128,m.sigBytes=h.length*4,this._process();for(var y=this._state,x=this.cfg.outputLength/8,v=x/8,C=[],R=0;R>>24)&16711935|(N<<24|N>>>8)&4278255360,P=(P<<8|P>>>24)&16711935|(P<<24|P>>>8)&4278255360,C.push(P),C.push(N)}return new s.init(C,x)},clone:function(){for(var m=i.clone.call(this),h=m._state=this._state.slice(0),A=0;A<25;A++)h[A]=h[A].clone();return m}});r.SHA3=i._createHelper(p),r.HmacSHA3=i._createHmacHelper(p)}(Math),t.SHA3})});var RDe=E((UD,wDe)=>{(function(t,e){typeof UD=="object"?wDe.exports=UD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(UD,function(t){return function(e){var r=t,n=r.lib,s=n.WordArray,i=n.Hasher,a=r.algo,o=s.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),c=s.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),u=s.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),l=s.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),d=s.create([0,1518500249,1859775393,2400959708,2840853838]),f=s.create([1352829926,1548603684,1836072691,2053994217,0]),p=a.RIPEMD160=i.extend({_doReset:function(){this._hash=s.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(x,v){for(var C=0;C<16;C++){var R=v+C,w=x[R];x[R]=(w<<8|w>>>24)&16711935|(w<<24|w>>>8)&4278255360}var N=this._hash.words,P=d.words,L=f.words,M=o.words,k=c.words,B=u.words,Z=l.words,W,F,V,j,J,se,oe,ue,Ce,we;se=W=N[0],oe=F=N[1],ue=V=N[2],Ce=j=N[3],we=J=N[4];for(var qe,C=0;C<80;C+=1)qe=W+x[v+M[C]]|0,C<16?qe+=m(F,V,j)+P[0]:C<32?qe+=h(F,V,j)+P[1]:C<48?qe+=A(F,V,j)+P[2]:C<64?qe+=g(F,V,j)+P[3]:qe+=b(F,V,j)+P[4],qe=qe|0,qe=y(qe,B[C]),qe=qe+J|0,W=J,J=j,j=y(V,10),V=F,F=qe,qe=se+x[v+k[C]]|0,C<16?qe+=b(oe,ue,Ce)+L[0]:C<32?qe+=g(oe,ue,Ce)+L[1]:C<48?qe+=A(oe,ue,Ce)+L[2]:C<64?qe+=h(oe,ue,Ce)+L[3]:qe+=m(oe,ue,Ce)+L[4],qe=qe|0,qe=y(qe,Z[C]),qe=qe+we|0,se=we,we=Ce,Ce=y(ue,10),ue=oe,oe=qe;qe=N[1]+V+Ce|0,N[1]=N[2]+j+we|0,N[2]=N[3]+J+se|0,N[3]=N[4]+W+oe|0,N[4]=N[0]+F+ue|0,N[0]=qe},_doFinalize:function(){var x=this._data,v=x.words,C=this._nDataBytes*8,R=x.sigBytes*8;v[R>>>5]|=128<<24-R%32,v[(R+64>>>9<<4)+14]=(C<<8|C>>>24)&16711935|(C<<24|C>>>8)&4278255360,x.sigBytes=(v.length+1)*4,this._process();for(var w=this._hash,N=w.words,P=0;P<5;P++){var L=N[P];N[P]=(L<<8|L>>>24)&16711935|(L<<24|L>>>8)&4278255360}return w},clone:function(){var x=i.clone.call(this);return x._hash=this._hash.clone(),x}});function m(x,v,C){return x^v^C}function h(x,v,C){return x&v|~x&C}function A(x,v,C){return(x|~v)^C}function g(x,v,C){return x&C|v&~C}function b(x,v,C){return x^(v|~C)}function y(x,v){return x<>>32-v}r.RIPEMD160=i._createHelper(p),r.HmacRIPEMD160=i._createHmacHelper(p)}(Math),t.RIPEMD160})});var jD=E((qD,NDe)=>{(function(t,e){typeof qD=="object"?NDe.exports=qD=e(pr()):typeof define=="function"&&define.amd?define(["./core"],e):e(t.CryptoJS)})(qD,function(t){(function(){var e=t,r=e.lib,n=r.Base,s=e.enc,i=s.Utf8,a=e.algo,o=a.HMAC=n.extend({init:function(c,u){c=this._hasher=new c.init,typeof u=="string"&&(u=i.parse(u));var l=c.blockSize,d=l*4;u.sigBytes>d&&(u=c.finalize(u)),u.clamp();for(var f=this._oKey=u.clone(),p=this._iKey=u.clone(),m=f.words,h=p.words,A=0;A{(function(t,e,r){typeof HD=="object"?ODe.exports=HD=e(pr(),BD(),jD()):typeof define=="function"&&define.amd?define(["./core","./sha256","./hmac"],e):e(t.CryptoJS)})(HD,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.algo,a=i.SHA256,o=i.HMAC,c=i.PBKDF2=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:25e4}),init:function(u){this.cfg=this.cfg.extend(u)},compute:function(u,l){for(var d=this.cfg,f=o.create(d.hasher,u),p=s.create(),m=s.create([1]),h=p.words,A=m.words,g=d.keySize,b=d.iterations;h.length{(function(t,e,r){typeof QD=="object"?DDe.exports=QD=e(pr(),DQ(),jD()):typeof define=="function"&&define.amd?define(["./core","./sha1","./hmac"],e):e(t.CryptoJS)})(QD,function(t){return function(){var e=t,r=e.lib,n=r.Base,s=r.WordArray,i=e.algo,a=i.MD5,o=i.EvpKDF=n.extend({cfg:n.extend({keySize:128/32,hasher:a,iterations:1}),init:function(c){this.cfg=this.cfg.extend(c)},compute:function(c,u){for(var l,d=this.cfg,f=d.hasher.create(),p=s.create(),m=p.words,h=d.keySize,A=d.iterations;m.length{(function(t,e,r){typeof GD=="object"?kDe.exports=GD=e(pr(),Vd()):typeof define=="function"&&define.amd?define(["./core","./evpkdf"],e):e(t.CryptoJS)})(GD,function(t){t.lib.Cipher||function(e){var r=t,n=r.lib,s=n.Base,i=n.WordArray,a=n.BufferedBlockAlgorithm,o=r.enc,c=o.Utf8,u=o.Base64,l=r.algo,d=l.EvpKDF,f=n.Cipher=a.extend({cfg:s.extend(),createEncryptor:function(L,M){return this.create(this._ENC_XFORM_MODE,L,M)},createDecryptor:function(L,M){return this.create(this._DEC_XFORM_MODE,L,M)},init:function(L,M,k){this.cfg=this.cfg.extend(k),this._xformMode=L,this._key=M,this.reset()},reset:function(){a.reset.call(this),this._doReset()},process:function(L){return this._append(L),this._process()},finalize:function(L){L&&this._append(L);var M=this._doFinalize();return M},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function L(M){return typeof M=="string"?P:R}return function(M){return{encrypt:function(k,B,Z){return L(B).encrypt(M,k,B,Z)},decrypt:function(k,B,Z){return L(B).decrypt(M,k,B,Z)}}}}()}),p=n.StreamCipher=f.extend({_doFinalize:function(){var L=this._process(!0);return L},blockSize:1}),m=r.mode={},h=n.BlockCipherMode=s.extend({createEncryptor:function(L,M){return this.Encryptor.create(L,M)},createDecryptor:function(L,M){return this.Decryptor.create(L,M)},init:function(L,M){this._cipher=L,this._iv=M}}),A=m.CBC=function(){var L=h.extend();L.Encryptor=L.extend({processBlock:function(k,B){var Z=this._cipher,W=Z.blockSize;M.call(this,k,B,W),Z.encryptBlock(k,B),this._prevBlock=k.slice(B,B+W)}}),L.Decryptor=L.extend({processBlock:function(k,B){var Z=this._cipher,W=Z.blockSize,F=k.slice(B,B+W);Z.decryptBlock(k,B),M.call(this,k,B,W),this._prevBlock=F}});function M(k,B,Z){var W,F=this._iv;F?(W=F,this._iv=e):W=this._prevBlock;for(var V=0;V>>2]&255;L.sigBytes-=M}},y=n.BlockCipher=f.extend({cfg:f.cfg.extend({mode:A,padding:b}),reset:function(){var L;f.reset.call(this);var M=this.cfg,k=M.iv,B=M.mode;this._xformMode==this._ENC_XFORM_MODE?L=B.createEncryptor:(L=B.createDecryptor,this._minBufferSize=1),this._mode&&this._mode.__creator==L?this._mode.init(this,k&&k.words):(this._mode=L.call(B,this,k&&k.words),this._mode.__creator=L)},_doProcessBlock:function(L,M){this._mode.processBlock(L,M)},_doFinalize:function(){var L,M=this.cfg.padding;return this._xformMode==this._ENC_XFORM_MODE?(M.pad(this._data,this.blockSize),L=this._process(!0)):(L=this._process(!0),M.unpad(L)),L},blockSize:128/32}),x=n.CipherParams=s.extend({init:function(L){this.mixIn(L)},toString:function(L){return(L||this.formatter).stringify(this)}}),v=r.format={},C=v.OpenSSL={stringify:function(L){var M,k=L.ciphertext,B=L.salt;return B?M=i.create([1398893684,1701076831]).concat(B).concat(k):M=k,M.toString(u)},parse:function(L){var M,k=u.parse(L),B=k.words;return B[0]==1398893684&&B[1]==1701076831&&(M=i.create(B.slice(2,4)),B.splice(0,4),k.sigBytes-=16),x.create({ciphertext:k,salt:M})}},R=n.SerializableCipher=s.extend({cfg:s.extend({format:C}),encrypt:function(L,M,k,B){B=this.cfg.extend(B);var Z=L.createEncryptor(k,B),W=Z.finalize(M),F=Z.cfg;return x.create({ciphertext:W,key:k,iv:F.iv,algorithm:L,mode:F.mode,padding:F.padding,blockSize:L.blockSize,formatter:B.format})},decrypt:function(L,M,k,B){B=this.cfg.extend(B),M=this._parse(M,B.format);var Z=L.createDecryptor(k,B).finalize(M.ciphertext);return Z},_parse:function(L,M){return typeof L=="string"?M.parse(L,this):L}}),w=r.kdf={},N=w.OpenSSL={execute:function(L,M,k,B,Z){if(B||(B=i.random(64/8)),Z)var W=d.create({keySize:M+k,hasher:Z}).compute(L,B);else var W=d.create({keySize:M+k}).compute(L,B);var F=i.create(W.words.slice(M),k*4);return W.sigBytes=M*4,x.create({key:W,iv:F,salt:B})}},P=n.PasswordBasedCipher=R.extend({cfg:R.cfg.extend({kdf:N}),encrypt:function(L,M,k,B){B=this.cfg.extend(B);var Z=B.kdf.execute(k,L.keySize,L.ivSize,B.salt,B.hasher);B.iv=Z.iv;var W=R.encrypt.call(this,L,M,Z.key,B);return W.mixIn(Z),W},decrypt:function(L,M,k,B){B=this.cfg.extend(B),M=this._parse(M,B.format);var Z=B.kdf.execute(k,L.keySize,L.ivSize,M.salt,B.hasher);B.iv=Z.iv;var W=R.decrypt.call(this,L,M,Z.key,B);return W}})}()})});var BDe=E((VD,LDe)=>{(function(t,e,r){typeof VD=="object"?LDe.exports=VD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(VD,function(t){return t.mode.CFB=function(){var e=t.lib.BlockCipherMode.extend();e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize;r.call(this,n,s,a,i),this._prevBlock=n.slice(s,s+a)}}),e.Decryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=n.slice(s,s+a);r.call(this,n,s,a,i),this._prevBlock=o}});function r(n,s,i,a){var o,c=this._iv;c?(o=c.slice(0),this._iv=void 0):o=this._prevBlock,a.encryptBlock(o,0);for(var u=0;u{(function(t,e,r){typeof zD=="object"?MDe.exports=zD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(zD,function(t){return t.mode.CTR=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._counter;o&&(c=this._counter=o.slice(0),this._iv=void 0);var u=c.slice(0);i.encryptBlock(u,0),c[a-1]=c[a-1]+1|0;for(var l=0;l{(function(t,e,r){typeof KD=="object"?$De.exports=KD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(KD,function(t){return t.mode.CTRGladman=function(){var e=t.lib.BlockCipherMode.extend();function r(i){if((i>>24&255)===255){var a=i>>16&255,o=i>>8&255,c=i&255;a===255?(a=0,o===255?(o=0,c===255?c=0:++c):++o):++a,i=0,i+=a<<16,i+=o<<8,i+=c}else i+=1<<24;return i}function n(i){return(i[0]=r(i[0]))===0&&(i[1]=r(i[1])),i}var s=e.Encryptor=e.extend({processBlock:function(i,a){var o=this._cipher,c=o.blockSize,u=this._iv,l=this._counter;u&&(l=this._counter=u.slice(0),this._iv=void 0),n(l);var d=l.slice(0);o.encryptBlock(d,0);for(var f=0;f{(function(t,e,r){typeof YD=="object"?UDe.exports=YD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(YD,function(t){return t.mode.OFB=function(){var e=t.lib.BlockCipherMode.extend(),r=e.Encryptor=e.extend({processBlock:function(n,s){var i=this._cipher,a=i.blockSize,o=this._iv,c=this._keystream;o&&(c=this._keystream=o.slice(0),this._iv=void 0),i.encryptBlock(c,0);for(var u=0;u{(function(t,e,r){typeof JD=="object"?jDe.exports=JD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(JD,function(t){return t.mode.ECB=function(){var e=t.lib.BlockCipherMode.extend();return e.Encryptor=e.extend({processBlock:function(r,n){this._cipher.encryptBlock(r,n)}}),e.Decryptor=e.extend({processBlock:function(r,n){this._cipher.decryptBlock(r,n)}}),e}(),t.mode.ECB})});var GDe=E((XD,QDe)=>{(function(t,e,r){typeof XD=="object"?QDe.exports=XD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(XD,function(t){return t.pad.AnsiX923={pad:function(e,r){var n=e.sigBytes,s=r*4,i=s-n%s,a=n+i-1;e.clamp(),e.words[a>>>2]|=i<<24-a%4*8,e.sigBytes+=i},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Ansix923})});var zDe=E((ZD,VDe)=>{(function(t,e,r){typeof ZD=="object"?VDe.exports=ZD=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(ZD,function(t){return t.pad.Iso10126={pad:function(e,r){var n=r*4,s=n-e.sigBytes%n;e.concat(t.lib.WordArray.random(s-1)).concat(t.lib.WordArray.create([s<<24],1))},unpad:function(e){var r=e.words[e.sigBytes-1>>>2]&255;e.sigBytes-=r}},t.pad.Iso10126})});var YDe=E((ek,KDe)=>{(function(t,e,r){typeof ek=="object"?KDe.exports=ek=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(ek,function(t){return t.pad.Iso97971={pad:function(e,r){e.concat(t.lib.WordArray.create([2147483648],1)),t.pad.ZeroPadding.pad(e,r)},unpad:function(e){t.pad.ZeroPadding.unpad(e),e.sigBytes--}},t.pad.Iso97971})});var XDe=E((tk,JDe)=>{(function(t,e,r){typeof tk=="object"?JDe.exports=tk=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(tk,function(t){return t.pad.ZeroPadding={pad:function(e,r){var n=r*4;e.clamp(),e.sigBytes+=n-(e.sigBytes%n||n)},unpad:function(e){for(var r=e.words,n=e.sigBytes-1,n=e.sigBytes-1;n>=0;n--)if(r[n>>>2]>>>24-n%4*8&255){e.sigBytes=n+1;break}}},t.pad.ZeroPadding})});var eke=E((rk,ZDe)=>{(function(t,e,r){typeof rk=="object"?ZDe.exports=rk=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(rk,function(t){return t.pad.NoPadding={pad:function(){},unpad:function(){}},t.pad.NoPadding})});var rke=E((nk,tke)=>{(function(t,e,r){typeof nk=="object"?tke.exports=nk=e(pr(),Ns()):typeof define=="function"&&define.amd?define(["./core","./cipher-core"],e):e(t.CryptoJS)})(nk,function(t){return function(e){var r=t,n=r.lib,s=n.CipherParams,i=r.enc,a=i.Hex,o=r.format,c=o.Hex={stringify:function(u){return u.ciphertext.toString(a)},parse:function(u){var l=a.parse(u);return s.create({ciphertext:l})}}}(),t.format.Hex})});var ske=E((sk,nke)=>{(function(t,e,r){typeof sk=="object"?nke.exports=sk=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(sk,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.algo,i=[],a=[],o=[],c=[],u=[],l=[],d=[],f=[],p=[],m=[];(function(){for(var g=[],b=0;b<256;b++)b<128?g[b]=b<<1:g[b]=b<<1^283;for(var y=0,x=0,b=0;b<256;b++){var v=x^x<<1^x<<2^x<<3^x<<4;v=v>>>8^v&255^99,i[y]=v,a[v]=y;var C=g[y],R=g[C],w=g[R],N=g[v]*257^v*16843008;o[y]=N<<24|N>>>8,c[y]=N<<16|N>>>16,u[y]=N<<8|N>>>24,l[y]=N;var N=w*16843009^R*65537^C*257^y*16843008;d[v]=N<<24|N>>>8,f[v]=N<<16|N>>>16,p[v]=N<<8|N>>>24,m[v]=N,y?(y=C^g[g[g[w^C]]],x^=g[g[x]]):y=x=1}})();var h=[0,1,2,4,8,16,32,64,128,27,54],A=s.AES=n.extend({_doReset:function(){var g;if(!(this._nRounds&&this._keyPriorReset===this._key)){for(var b=this._keyPriorReset=this._key,y=b.words,x=b.sigBytes/4,v=this._nRounds=x+6,C=(v+1)*4,R=this._keySchedule=[],w=0;w6&&w%x==4&&(g=i[g>>>24]<<24|i[g>>>16&255]<<16|i[g>>>8&255]<<8|i[g&255]):(g=g<<8|g>>>24,g=i[g>>>24]<<24|i[g>>>16&255]<<16|i[g>>>8&255]<<8|i[g&255],g^=h[w/x|0]<<24),R[w]=R[w-x]^g);for(var N=this._invKeySchedule=[],P=0;P>>24]]^f[i[g>>>16&255]]^p[i[g>>>8&255]]^m[i[g&255]]}}},encryptBlock:function(g,b){this._doCryptBlock(g,b,this._keySchedule,o,c,u,l,i)},decryptBlock:function(g,b){var y=g[b+1];g[b+1]=g[b+3],g[b+3]=y,this._doCryptBlock(g,b,this._invKeySchedule,d,f,p,m,a);var y=g[b+1];g[b+1]=g[b+3],g[b+3]=y},_doCryptBlock:function(g,b,y,x,v,C,R,w){for(var N=this._nRounds,P=g[b]^y[0],L=g[b+1]^y[1],M=g[b+2]^y[2],k=g[b+3]^y[3],B=4,Z=1;Z>>24]^v[L>>>16&255]^C[M>>>8&255]^R[k&255]^y[B++],F=x[L>>>24]^v[M>>>16&255]^C[k>>>8&255]^R[P&255]^y[B++],V=x[M>>>24]^v[k>>>16&255]^C[P>>>8&255]^R[L&255]^y[B++],j=x[k>>>24]^v[P>>>16&255]^C[L>>>8&255]^R[M&255]^y[B++];P=W,L=F,M=V,k=j}var W=(w[P>>>24]<<24|w[L>>>16&255]<<16|w[M>>>8&255]<<8|w[k&255])^y[B++],F=(w[L>>>24]<<24|w[M>>>16&255]<<16|w[k>>>8&255]<<8|w[P&255])^y[B++],V=(w[M>>>24]<<24|w[k>>>16&255]<<16|w[P>>>8&255]<<8|w[L&255])^y[B++],j=(w[k>>>24]<<24|w[P>>>16&255]<<16|w[L>>>8&255]<<8|w[M&255])^y[B++];g[b]=W,g[b+1]=F,g[b+2]=V,g[b+3]=j},keySize:256/32});e.AES=n._createHelper(A)}(),t.AES})});var ake=E((ik,ike)=>{(function(t,e,r){typeof ik=="object"?ike.exports=ik=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(ik,function(t){return function(){var e=t,r=e.lib,n=r.WordArray,s=r.BlockCipher,i=e.algo,a=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],o=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],c=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],u=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],l=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],d=i.DES=s.extend({_doReset:function(){for(var h=this._key,A=h.words,g=[],b=0;b<56;b++){var y=a[b]-1;g[b]=A[y>>>5]>>>31-y%32&1}for(var x=this._subKeys=[],v=0;v<16;v++){for(var C=x[v]=[],R=c[v],b=0;b<24;b++)C[b/6|0]|=g[(o[b]-1+R)%28]<<31-b%6,C[4+(b/6|0)]|=g[28+(o[b+24]-1+R)%28]<<31-b%6;C[0]=C[0]<<1|C[0]>>>31;for(var b=1;b<7;b++)C[b]=C[b]>>>(b-1)*4+3;C[7]=C[7]<<5|C[7]>>>27}for(var w=this._invSubKeys=[],b=0;b<16;b++)w[b]=x[15-b]},encryptBlock:function(h,A){this._doCryptBlock(h,A,this._subKeys)},decryptBlock:function(h,A){this._doCryptBlock(h,A,this._invSubKeys)},_doCryptBlock:function(h,A,g){this._lBlock=h[A],this._rBlock=h[A+1],f.call(this,4,252645135),f.call(this,16,65535),p.call(this,2,858993459),p.call(this,8,16711935),f.call(this,1,1431655765);for(var b=0;b<16;b++){for(var y=g[b],x=this._lBlock,v=this._rBlock,C=0,R=0;R<8;R++)C|=u[R][((v^y[R])&l[R])>>>0];this._lBlock=v,this._rBlock=x^C}var w=this._lBlock;this._lBlock=this._rBlock,this._rBlock=w,f.call(this,1,1431655765),p.call(this,8,16711935),p.call(this,2,858993459),f.call(this,16,65535),f.call(this,4,252645135),h[A]=this._lBlock,h[A+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function f(h,A){var g=(this._lBlock>>>h^this._rBlock)&A;this._rBlock^=g,this._lBlock^=g<>>h^this._lBlock)&A;this._lBlock^=g,this._rBlock^=g<192.");var g=A.slice(0,2),b=A.length<4?A.slice(0,2):A.slice(2,4),y=A.length<6?A.slice(0,2):A.slice(4,6);this._des1=d.createEncryptor(n.create(g)),this._des2=d.createEncryptor(n.create(b)),this._des3=d.createEncryptor(n.create(y))},encryptBlock:function(h,A){this._des1.encryptBlock(h,A),this._des2.decryptBlock(h,A),this._des3.encryptBlock(h,A)},decryptBlock:function(h,A){this._des3.decryptBlock(h,A),this._des2.encryptBlock(h,A),this._des1.decryptBlock(h,A)},keySize:192/32,ivSize:64/32,blockSize:64/32});e.TripleDES=s._createHelper(m)}(),t.TripleDES})});var cke=E((ak,oke)=>{(function(t,e,r){typeof ak=="object"?oke.exports=ak=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(ak,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=s.RC4=n.extend({_doReset:function(){for(var c=this._key,u=c.words,l=c.sigBytes,d=this._S=[],f=0;f<256;f++)d[f]=f;for(var f=0,p=0;f<256;f++){var m=f%l,h=u[m>>>2]>>>24-m%4*8&255;p=(p+d[f]+h)%256;var A=d[f];d[f]=d[p],d[p]=A}this._i=this._j=0},_doProcessBlock:function(c,u){c[u]^=a.call(this)},keySize:256/32,ivSize:0});function a(){for(var c=this._S,u=this._i,l=this._j,d=0,f=0;f<4;f++){u=(u+1)%256,l=(l+c[u])%256;var p=c[u];c[u]=c[l],c[l]=p,d|=c[(c[u]+c[l])%256]<<24-f*8}return this._i=u,this._j=l,d}e.RC4=n._createHelper(i);var o=s.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var c=this.cfg.drop;c>0;c--)a.call(this)}});e.RC4Drop=n._createHelper(o)}(),t.RC4})});var lke=E((ok,uke)=>{(function(t,e,r){typeof ok=="object"?uke.exports=ok=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(ok,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=[],a=[],o=[],c=s.Rabbit=n.extend({_doReset:function(){for(var l=this._key.words,d=this.cfg.iv,f=0;f<4;f++)l[f]=(l[f]<<8|l[f]>>>24)&16711935|(l[f]<<24|l[f]>>>8)&4278255360;var p=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],m=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var f=0;f<4;f++)u.call(this);for(var f=0;f<8;f++)m[f]^=p[f+4&7];if(d){var h=d.words,A=h[0],g=h[1],b=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360,y=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,x=b>>>16|y&4294901760,v=y<<16|b&65535;m[0]^=b,m[1]^=x,m[2]^=y,m[3]^=v,m[4]^=b,m[5]^=x,m[6]^=y,m[7]^=v;for(var f=0;f<4;f++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0>>0?1:0)|0,this._b=d[7]>>>0>>0?1:0;for(var f=0;f<8;f++){var p=l[f]+d[f],m=p&65535,h=p>>>16,A=((m*m>>>17)+m*h>>>15)+h*h,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=A^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}e.Rabbit=n._createHelper(c)}(),t.Rabbit})});var fke=E((ck,dke)=>{(function(t,e,r){typeof ck=="object"?dke.exports=ck=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(ck,function(t){return function(){var e=t,r=e.lib,n=r.StreamCipher,s=e.algo,i=[],a=[],o=[],c=s.RabbitLegacy=n.extend({_doReset:function(){var l=this._key.words,d=this.cfg.iv,f=this._X=[l[0],l[3]<<16|l[2]>>>16,l[1],l[0]<<16|l[3]>>>16,l[2],l[1]<<16|l[0]>>>16,l[3],l[2]<<16|l[1]>>>16],p=this._C=[l[2]<<16|l[2]>>>16,l[0]&4294901760|l[1]&65535,l[3]<<16|l[3]>>>16,l[1]&4294901760|l[2]&65535,l[0]<<16|l[0]>>>16,l[2]&4294901760|l[3]&65535,l[1]<<16|l[1]>>>16,l[3]&4294901760|l[0]&65535];this._b=0;for(var m=0;m<4;m++)u.call(this);for(var m=0;m<8;m++)p[m]^=f[m+4&7];if(d){var h=d.words,A=h[0],g=h[1],b=(A<<8|A>>>24)&16711935|(A<<24|A>>>8)&4278255360,y=(g<<8|g>>>24)&16711935|(g<<24|g>>>8)&4278255360,x=b>>>16|y&4294901760,v=y<<16|b&65535;p[0]^=b,p[1]^=x,p[2]^=y,p[3]^=v,p[4]^=b,p[5]^=x,p[6]^=y,p[7]^=v;for(var m=0;m<4;m++)u.call(this)}},_doProcessBlock:function(l,d){var f=this._X;u.call(this),i[0]=f[0]^f[5]>>>16^f[3]<<16,i[1]=f[2]^f[7]>>>16^f[5]<<16,i[2]=f[4]^f[1]>>>16^f[7]<<16,i[3]=f[6]^f[3]>>>16^f[1]<<16;for(var p=0;p<4;p++)i[p]=(i[p]<<8|i[p]>>>24)&16711935|(i[p]<<24|i[p]>>>8)&4278255360,l[d+p]^=i[p]},blockSize:128/32,ivSize:64/32});function u(){for(var l=this._X,d=this._C,f=0;f<8;f++)a[f]=d[f];d[0]=d[0]+1295307597+this._b|0,d[1]=d[1]+3545052371+(d[0]>>>0>>0?1:0)|0,d[2]=d[2]+886263092+(d[1]>>>0>>0?1:0)|0,d[3]=d[3]+1295307597+(d[2]>>>0>>0?1:0)|0,d[4]=d[4]+3545052371+(d[3]>>>0>>0?1:0)|0,d[5]=d[5]+886263092+(d[4]>>>0>>0?1:0)|0,d[6]=d[6]+1295307597+(d[5]>>>0>>0?1:0)|0,d[7]=d[7]+3545052371+(d[6]>>>0>>0?1:0)|0,this._b=d[7]>>>0>>0?1:0;for(var f=0;f<8;f++){var p=l[f]+d[f],m=p&65535,h=p>>>16,A=((m*m>>>17)+m*h>>>15)+h*h,g=((p&4294901760)*p|0)+((p&65535)*p|0);o[f]=A^g}l[0]=o[0]+(o[7]<<16|o[7]>>>16)+(o[6]<<16|o[6]>>>16)|0,l[1]=o[1]+(o[0]<<8|o[0]>>>24)+o[7]|0,l[2]=o[2]+(o[1]<<16|o[1]>>>16)+(o[0]<<16|o[0]>>>16)|0,l[3]=o[3]+(o[2]<<8|o[2]>>>24)+o[1]|0,l[4]=o[4]+(o[3]<<16|o[3]>>>16)+(o[2]<<16|o[2]>>>16)|0,l[5]=o[5]+(o[4]<<8|o[4]>>>24)+o[3]|0,l[6]=o[6]+(o[5]<<16|o[5]>>>16)+(o[4]<<16|o[4]>>>16)|0,l[7]=o[7]+(o[6]<<8|o[6]>>>24)+o[5]|0}e.RabbitLegacy=n._createHelper(c)}(),t.RabbitLegacy})});var mke=E((uk,pke)=>{(function(t,e,r){typeof uk=="object"?pke.exports=uk=e(pr(),f0(),p0(),Vd(),Ns()):typeof define=="function"&&define.amd?define(["./core","./enc-base64","./md5","./evpkdf","./cipher-core"],e):e(t.CryptoJS)})(uk,function(t){return function(){var e=t,r=e.lib,n=r.BlockCipher,s=e.algo;let i=16,a=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],o=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];var c={pbox:[],sbox:[]};function u(m,h){let A=h>>24&255,g=h>>16&255,b=h>>8&255,y=h&255,x=m.sbox[0][A]+m.sbox[1][g];return x=x^m.sbox[2][b],x=x+m.sbox[3][y],x}function l(m,h,A){let g=h,b=A,y;for(let x=0;x1;--x)g=g^m.pbox[x],b=u(m,g)^b,y=g,g=b,b=y;return y=g,g=b,b=y,b=b^m.pbox[1],g=g^m.pbox[0],{left:g,right:b}}function f(m,h,A){for(let v=0;v<4;v++){m.sbox[v]=[];for(let C=0;C<256;C++)m.sbox[v][C]=o[v][C]}let g=0;for(let v=0;v=A&&(g=0);let b=0,y=0,x=0;for(let v=0;v{(function(t,e,r){typeof lk=="object"?hke.exports=lk=e(pr(),Iv(),fDe(),mDe(),f0(),ADe(),p0(),DQ(),BD(),_De(),kQ(),CDe(),TDe(),RDe(),jD(),PDe(),Vd(),Ns(),BDe(),WDe(),FDe(),qDe(),HDe(),GDe(),zDe(),YDe(),XDe(),eke(),rke(),ske(),ake(),cke(),lke(),fke(),mke()):typeof define=="function"&&define.amd?define(["./core","./x64-core","./lib-typedarrays","./enc-utf16","./enc-base64","./enc-base64url","./md5","./sha1","./sha256","./sha224","./sha512","./sha384","./sha3","./ripemd160","./hmac","./pbkdf2","./evpkdf","./cipher-core","./mode-cfb","./mode-ctr","./mode-ctr-gladman","./mode-ofb","./mode-ecb","./pad-ansix923","./pad-iso10126","./pad-iso97971","./pad-zeropadding","./pad-nopadding","./format-hex","./aes","./tripledes","./rc4","./rabbit","./rabbit-legacy","./blowfish"],e):t.CryptoJS=e(t.CryptoJS)})(lk,function(t){return t})});var Rv=E(ir=>{"use strict";Object.defineProperty(ir,"__esModule",{value:!0});ir.getOptions=ir.setOptions=ir.hasOwnProp=ir.formatDate=ir.camelify=ir.splitByCommaWithPreservingQuotes=ir.trim=ir.splitAt=ir.tryCatch=ir.byteSequenceToHex=ir.hexToByteSequence=ir.toNumber=ir.INVALIDPLAYLIST=ir.CONDITIONALPARAMCHECK=ir.PARAMCHECK=ir.CONDITIONALASSERT=ir.ASSERT=ir.THROW=void 0;var wv={};function Nh(t){if(!wv.strictMode){wv.silent||console.error(t.message);return}throw t}ir.THROW=Nh;function fJt(t,...e){for(let[r,n]of e.entries())n||Nh(new Error(`${t} : Failed at [${r}]`))}ir.ASSERT=fJt;function pJt(...t){for(let[e,[r,n]]of t.entries())r&&(n||Nh(new Error(`Conditional Assert : Failed at [${e}]`)))}ir.CONDITIONALASSERT=pJt;function mJt(...t){for(let[e,r]of t.entries())r===void 0&&Nh(new Error(`Param Check : Failed at [${e}]`))}ir.PARAMCHECK=mJt;function hJt(...t){for(let[e,[r,n]]of t.entries())r&&n===void 0&&Nh(new Error(`Conditional Param Check : Failed at [${e}]`))}ir.CONDITIONALPARAMCHECK=hJt;function gJt(t){Nh(new Error(`Invalid Playlist : ${t}`))}ir.INVALIDPLAYLIST=gJt;function xke(t,e=10){if(typeof t=="number")return t;let r=e===10?Number.parseFloat(t):Number.parseInt(t,e);return Number.isNaN(r)?0:r}ir.toNumber=xke;function AJt(t){(t.startsWith("0x")||t.startsWith("0X"))&&(t=t.slice(2));let e=[];for(let r=0;r{"use strict";var wJt=mr&&mr.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),RJt=mr&&mr.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),NJt=mr&&mr.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&wJt(e,t,r);return RJt(e,t),e};Object.defineProperty(mr,"__esModule",{value:!0});mr.RenditionReport=mr.PrefetchSegment=mr.PartialSegment=mr.Segment=mr.MediaPlaylist=mr.MasterPlaylist=mr.Playlist=mr.SpliceInfo=mr.DateRange=mr.MediaInitializationSection=mr.Key=mr.SessionData=mr.Variant=mr.Rendition=void 0;var Es=NJt(Rv()),BQ=class{constructor({type:e,uri:r,groupId:n,language:s,assocLanguage:i,name:a,isDefault:o,autoselect:c,forced:u,instreamId:l,characteristics:d,channels:f}){Es.PARAMCHECK(e,n,a),Es.CONDITIONALASSERT([e==="SUBTITLES",r],[e==="CLOSED-CAPTIONS",l],[e==="CLOSED-CAPTIONS",!r],[u,e==="SUBTITLES"]),this.type=e,this.uri=r,this.groupId=n,this.language=s,this.assocLanguage=i,this.name=a,this.isDefault=o,this.autoselect=c,this.forced=u,this.instreamId=l,this.characteristics=d,this.channels=f}};mr.Rendition=BQ;var MQ=class{constructor({uri:e,isIFrameOnly:r=!1,bandwidth:n,averageBandwidth:s,score:i,codecs:a,resolution:o,frameRate:c,hdcpLevel:u,allowedCpc:l,videoRange:d,stableVariantId:f,programId:p,audio:m=[],video:h=[],subtitles:A=[],closedCaptions:g=[],currentRenditions:b={audio:0,video:0,subtitles:0,closedCaptions:0}}){Es.PARAMCHECK(e,n),this.uri=e,this.isIFrameOnly=r,this.bandwidth=n,this.averageBandwidth=s,this.score=i,this.codecs=a,this.resolution=o,this.frameRate=c,this.hdcpLevel=u,this.allowedCpc=l,this.videoRange=d,this.stableVariantId=f,this.programId=p,this.audio=m,this.video=h,this.subtitles=A,this.closedCaptions=g,this.currentRenditions=b}};mr.Variant=MQ;var WQ=class{constructor({id:e,value:r,uri:n,language:s}){Es.PARAMCHECK(e,r||n),Es.ASSERT("SessionData cannot have both value and uri, shoud be either.",!(r&&n)),this.id=e,this.value=r,this.uri=n,this.language=s}};mr.SessionData=WQ;var $Q=class{constructor({method:e,uri:r,iv:n,format:s,formatVersion:i}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([e!=="NONE",r]),Es.CONDITIONALASSERT([e==="NONE",!(r||n||s||i)]),this.method=e,this.uri=r,this.iv=n,this.format=s,this.formatVersion=i}};mr.Key=$Q;var FQ=class{constructor({hint:e=!1,uri:r,mimeType:n,byterange:s}){Es.PARAMCHECK(r),this.hint=e,this.uri=r,this.mimeType=n,this.byterange=s}};mr.MediaInitializationSection=FQ;var UQ=class{constructor({id:e,classId:r,start:n,end:s,duration:i,plannedDuration:a,endOnNext:o,attributes:c={}}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([o===!0,r]),Es.CONDITIONALASSERT([s,n],[s,n<=s],[i,i>=0],[a,a>=0]),this.id=e,this.classId=r,this.start=n,this.end=s,this.duration=i,this.plannedDuration=a,this.endOnNext=o,this.attributes=c}};mr.DateRange=UQ;var qQ=class{constructor({type:e,duration:r,tagName:n,value:s}){Es.PARAMCHECK(e),Es.CONDITIONALPARAMCHECK([e==="OUT",r]),Es.CONDITIONALPARAMCHECK([e==="RAW",n]),this.type=e,this.duration=r,this.tagName=n,this.value=s}};mr.SpliceInfo=qQ;var $x=class{constructor(e){Es.PARAMCHECK(e),this.type=e}},Nv=class extends $x{constructor({isMasterPlaylist:e,uri:r,version:n,independentSegments:s=!1,start:i,source:a}){super("playlist"),Es.PARAMCHECK(e),this.isMasterPlaylist=e,this.uri=r,this.version=n,this.independentSegments=s,this.start=i,this.source=a}};mr.Playlist=Nv;var jQ=class extends Nv{constructor(e={}){super({...e,isMasterPlaylist:!0});let{variants:r=[],currentVariant:n,sessionDataList:s=[],sessionKeyList:i=[]}=e;this.variants=r,this.currentVariant=n,this.sessionDataList=s,this.sessionKeyList=i}};mr.MasterPlaylist=jQ;var HQ=class extends Nv{constructor(e={}){super({...e,isMasterPlaylist:!1});let{targetDuration:r,mediaSequenceBase:n=0,discontinuitySequenceBase:s=0,endlist:i=!1,playlistType:a,isIFrame:o,segments:c=[],prefetchSegments:u=[],lowLatencyCompatibility:l,partTargetDuration:d,renditionReports:f=[],skip:p=0,hash:m}=e;this.targetDuration=r,this.mediaSequenceBase=n,this.discontinuitySequenceBase=s,this.endlist=i,this.playlistType=a,this.isIFrame=o,this.segments=c,this.prefetchSegments=u,this.lowLatencyCompatibility=l,this.partTargetDuration=d,this.renditionReports=f,this.skip=p,this.hash=m}};mr.MediaPlaylist=HQ;var QQ=class extends $x{constructor({uri:e,mimeType:r,data:n,duration:s,title:i,byterange:a,discontinuity:o,mediaSequenceNumber:c=0,discontinuitySequence:u=0,key:l,map:d,programDateTime:f,dateRange:p,markers:m=[],parts:h=[]}){super("segment"),this.uri=e,this.mimeType=r,this.data=n,this.duration=s,this.title=i,this.byterange=a,this.discontinuity=o,this.mediaSequenceNumber=c,this.discontinuitySequence=u,this.key=l,this.map=d,this.programDateTime=f,this.dateRange=p,this.markers=m,this.parts=h}};mr.Segment=QQ;var GQ=class extends $x{constructor({hint:e=!1,uri:r,duration:n,independent:s,byterange:i,gap:a}){super("part"),Es.PARAMCHECK(r),this.hint=e,this.uri=r,this.duration=n,this.independent=s,this.duration=n,this.byterange=i,this.gap=a}};mr.PartialSegment=GQ;var VQ=class extends $x{constructor({uri:e,discontinuity:r,mediaSequenceNumber:n=0,discontinuitySequence:s=0,key:i}){super("prefetch"),Es.PARAMCHECK(e),this.uri=e,this.discontinuity=r,this.mediaSequenceNumber=n,this.discontinuitySequence=s,this.key=i}};mr.PrefetchSegment=VQ;var zQ=class{constructor({uri:e,lastMSN:r,lastPart:n}){Es.PARAMCHECK(e),this.uri=e,this.lastMSN=r,this.lastPart=n}};mr.RenditionReport=zQ});var Tke=E(zd=>{"use strict";var OJt=zd&&zd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),PJt=zd&&zd.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),DJt=zd&&zd.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&OJt(e,t,r);return PJt(e,t),e};Object.defineProperty(zd,"__esModule",{value:!0});var We=DJt(Rv()),ei=KQ();function Cke(t){return We.trim(t,'"')}function kJt(t){switch(t){case"EXTM3U":case"EXT-X-VERSION":return"Basic";case"EXTINF":case"EXT-X-BYTERANGE":case"EXT-X-DISCONTINUITY":case"EXT-X-PREFETCH-DISCONTINUITY":case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-PROGRAM-DATE-TIME":case"EXT-X-DATERANGE":case"EXT-X-CUE-OUT":case"EXT-X-CUE-IN":case"EXT-X-CUE-OUT-CONT":case"EXT-X-CUE":case"EXT-OATCLS-SCTE35":case"EXT-X-ASSET":case"EXT-X-SCTE35":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":return"Segment";case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":case"EXT-X-ENDLIST":case"EXT-X-PLAYLIST-TYPE":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PREFETCH":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return"MediaPlaylist";case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":return"MasterPlaylist";case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-START":return"MediaorMasterPlaylist";default:return"Unknown"}}function LJt(t){let e=We.splitAt(t,",");return{duration:We.toNumber(e[0]),title:decodeURIComponent(escape(e[1]))}}function Ike(t){let e=We.splitAt(t,"@");return{length:We.toNumber(e[0]),offset:e[1]?We.toNumber(e[1]):-1}}function BJt(t){let e=We.splitAt(t,"x");return{width:We.toNumber(e[0]),height:We.toNumber(e[1])}}function MJt(t){let e="ALLOWED-CPC: Each entry must consit of KEYFORMAT and Content Protection Configuration",r=t.split(",");r.length===0&&We.INVALIDPLAYLIST(e);let n=[];for(let s of r){let[i,a]=We.splitAt(s,":");if(!i||!a){We.INVALIDPLAYLIST(e);continue}n.push({format:i,cpcList:a.split("/")})}return n}function WJt(t){let e=We.hexToByteSequence(t);return e.length!==16&&We.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),e}function $Jt(t){return t.startsWith('"')?Cke(t):t.startsWith("0x")||t.startsWith("0X")?We.hexToByteSequence(t):We.toNumber(t)}function YQ(t,e){e.IV&&t.compatibleVersion<2&&(t.compatibleVersion=2),(e.KEYFORMAT||e.KEYFORMATVERSIONS)&&t.compatibleVersion<5&&(t.compatibleVersion=5)}function bke(t){let e={};for(let r of We.splitByCommaWithPreservingQuotes(t)){let[n,s]=We.splitAt(r,"="),i=Cke(s);switch(n){case"URI":e[n]=i;break;case"START-DATE":case"END-DATE":e[n]=new Date(i);break;case"IV":e[n]=WJt(i);break;case"BYTERANGE":e[n]=Ike(i);break;case"RESOLUTION":e[n]=BJt(i);break;case"ALLOWED-CPC":e[n]=MJt(i);break;case"END-ON-NEXT":case"DEFAULT":case"AUTOSELECT":case"FORCED":case"PRECISE":case"CAN-BLOCK-RELOAD":case"INDEPENDENT":case"GAP":e[n]=i==="YES";break;case"DURATION":case"PLANNED-DURATION":case"BANDWIDTH":case"AVERAGE-BANDWIDTH":case"FRAME-RATE":case"TIME-OFFSET":case"CAN-SKIP-UNTIL":case"HOLD-BACK":case"PART-HOLD-BACK":case"PART-TARGET":case"BYTERANGE-START":case"BYTERANGE-LENGTH":case"LAST-MSN":case"LAST-PART":case"SKIPPED-SEGMENTS":case"SCORE":case"PROGRAM-ID":e[n]=We.toNumber(i);break;default:n.startsWith("SCTE35-")?e[n]=We.hexToByteSequence(i):n.startsWith("X-")?e[n]=$Jt(s):(n==="VIDEO-RANGE"&&i!=="SDR"&&i!=="HLG"&&i!=="PQ"&&We.INVALIDPLAYLIST(`VIDEO-RANGE: unknown value "${i}"`),e[n]=i)}}return e}function FJt(t,e){switch(t){case"EXTM3U":case"EXT-X-DISCONTINUITY":case"EXT-X-ENDLIST":case"EXT-X-I-FRAMES-ONLY":case"EXT-X-INDEPENDENT-SEGMENTS":case"EXT-X-CUE-IN":return[null,null];case"EXT-X-VERSION":case"EXT-X-TARGETDURATION":case"EXT-X-MEDIA-SEQUENCE":case"EXT-X-DISCONTINUITY-SEQUENCE":return[We.toNumber(e),null];case"EXT-X-CUE-OUT":return Number.isNaN(Number(e))?[null,bke(e)]:[We.toNumber(e),null];case"EXT-X-KEY":case"EXT-X-MAP":case"EXT-X-DATERANGE":case"EXT-X-MEDIA":case"EXT-X-STREAM-INF":case"EXT-X-I-FRAME-STREAM-INF":case"EXT-X-SESSION-DATA":case"EXT-X-SESSION-KEY":case"EXT-X-START":case"EXT-X-SERVER-CONTROL":case"EXT-X-PART-INF":case"EXT-X-PART":case"EXT-X-PRELOAD-HINT":case"EXT-X-RENDITION-REPORT":case"EXT-X-SKIP":return[null,bke(e)];case"EXTINF":return[LJt(e),null];case"EXT-X-BYTERANGE":return[Ike(e),null];case"EXT-X-PROGRAM-DATE-TIME":return[new Date(e),null];case"EXT-X-PLAYLIST-TYPE":return[e,null];default:return[e,null]}}function Eke(){We.INVALIDPLAYLIST("The file contains both media and master playlist tags.")}function UJt(t){let e=t.indexOf(":");return e===-1?[t.slice(1).trim(),null]:[t.slice(1,e).trim(),t.slice(e+1).trim()]}function qJt({attributes:t}){return new ei.Rendition({type:t.TYPE,uri:t.URI,groupId:t["GROUP-ID"],language:t.LANGUAGE,assocLanguage:t["ASSOC-LANGUAGE"],name:t.NAME,isDefault:t.DEFAULT,autoselect:t.AUTOSELECT,forced:t.FORCED,instreamId:t["INSTREAM-ID"],characteristics:t.CHARACTERISTICS,channels:t.CHANNELS})}function jJt(t,e){let r=!1;for(let n of t){if(n.name===e.name)return"All EXT-X-MEDIA tags in the same Group MUST have different NAME attributes.";n.isDefault&&(r=!0)}return r&&e.isDefault?"EXT-X-MEDIA A Group MUST NOT have more than one member with a DEFAULT attribute of YES.":""}function HJt(t,e,r){let n=qJt(e),s=t[We.camelify(r)],i=jJt(s,n);i&&We.INVALIDPLAYLIST(i),s.push(n),n.isDefault&&(t.currentRenditions[We.camelify(r)]=s.length-1)}function QJt(t,e,r){for(let n of["AUDIO","VIDEO","SUBTITLES","CLOSED-CAPTIONS"])n==="CLOSED-CAPTIONS"&&t[n]==="NONE"?(r.isClosedCaptionsNone=!0,e.closedCaptions=[]):t[n]&&!e[We.camelify(n)].some(s=>s.groupId===t[n])&&We.INVALIDPLAYLIST(`${n} attribute MUST match the value of the GROUP-ID attribute of an EXT-X-MEDIA tag whose TYPE attribute is ${n}.`)}function _ke(t,e,r,n,s){let i=new ei.Variant({uri:r,bandwidth:e.BANDWIDTH,averageBandwidth:e["AVERAGE-BANDWIDTH"],score:e.SCORE,codecs:e.CODECS,resolution:e.RESOLUTION,frameRate:e["FRAME-RATE"],hdcpLevel:e["HDCP-LEVEL"],allowedCpc:e["ALLOWED-CPC"],videoRange:e["VIDEO-RANGE"],stableVariantId:e["STABLE-VARIANT-ID"],programId:e["PROGRAM-ID"]});for(let a of t)if(a.name==="EXT-X-MEDIA"){let o=a.attributes,c=o.TYPE;if((!c||!o["GROUP-ID"])&&We.INVALIDPLAYLIST("EXT-X-MEDIA TYPE attribute is REQUIRED."),e[c]===o["GROUP-ID"]&&(HJt(i,a,c),c==="CLOSED-CAPTIONS")){for(let{instreamId:u}of i.closedCaptions)if(u&&u.startsWith("SERVICE")&&s.compatibleVersion<7){s.compatibleVersion=7;break}}}return QJt(e,i,s),i.isIFrameOnly=n,i}function GJt(t,e){if(t.method!==e.method||t.uri!==e.uri)return!1;if(t.iv){if(!e.iv||t.iv.length!==e.iv.length)return!1;for(let r=0;ru.id===c.id&&u.language===c.language)&&We.INVALIDPLAYLIST("A Playlist MUST NOT contain more than one EXT-X-SESSION-DATA tag with the same DATA-ID attribute and the same LANGUAGE attribute."),r.sessionDataList.push(c)}else if(i==="EXT-X-SESSION-KEY"){o.METHOD==="NONE"&&We.INVALIDPLAYLIST("EXT-X-SESSION-KEY: The value of the METHOD attribute MUST NOT be NONE");let c=new ei.Key({method:o.METHOD,uri:o.URI,iv:o.IV,format:o.KEYFORMAT,formatVersion:o.KEYFORMATVERSIONS});r.sessionKeyList.some(u=>GJt(u,c))&&We.INVALIDPLAYLIST("A Master Playlist MUST NOT contain more than one EXT-X-SESSION-KEY tag with the same METHOD, URI, IV, KEYFORMAT, and KEYFORMATVERSIONS attribute values."),YQ(e,o),r.sessionKeyList.push(c)}else i==="EXT-X-INDEPENDENT-SEGMENTS"?(r.independentSegments&&We.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0):i==="EXT-X-START"&&(r.start&&We.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof o["TIME-OFFSET"]!="number"&&We.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:o["TIME-OFFSET"],precise:o.PRECISE||!1});if(n)for(let s of r.variants)typeof s.score!="number"&&We.INVALIDPLAYLIST("If any Variant Stream contains the SCORE attribute, then all Variant Streams in the Master Playlist SHOULD have a SCORE attribute");if(e.isClosedCaptionsNone)for(let s of r.variants)s.closedCaptions.length>0&&We.INVALIDPLAYLIST("If there is a variant with CLOSED-CAPTIONS attribute of NONE, all EXT-X-STREAM-INF tags MUST have this attribute with a value of NONE");return r}function Ske(t,e,r,n,s,i,a){let o=new ei.Segment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i}),c=!1,u=!1;for(let l=r;l<=n;l++){let{name:d,value:f,attributes:p}=t[l];if(d==="EXTINF")!Number.isInteger(f.duration)&&a.compatibleVersion<3&&(a.compatibleVersion=3),Math.round(f.duration)>a.targetDuration&&We.INVALIDPLAYLIST("EXTINF duration, when rounded to the nearest integer, MUST be less than or equal to the target duration"),o.duration=f.duration,o.title=f.title;else if(d==="EXT-X-BYTERANGE")a.compatibleVersion<4&&(a.compatibleVersion=4),o.byterange=f;else if(d==="EXT-X-DISCONTINUITY")o.parts.length>0&&We.INVALIDPLAYLIST("EXT-X-DISCONTINUITY must appear before the first EXT-X-PART tag of the Parent Segment."),o.discontinuity=!0;else if(d==="EXT-X-KEY")o.parts.length>0&&We.INVALIDPLAYLIST("EXT-X-KEY must appear before the first EXT-X-PART tag of the Parent Segment."),YQ(a,p),o.key=new ei.Key({method:p.METHOD,uri:p.URI,iv:p.IV,format:p.KEYFORMAT,formatVersion:p.KEYFORMATVERSIONS});else if(d==="EXT-X-MAP")o.parts.length>0&&We.INVALIDPLAYLIST("EXT-X-MAP must appear before the first EXT-X-PART tag of the Parent Segment."),a.compatibleVersion<5&&(a.compatibleVersion=5),a.hasMap=!0,o.map=new ei.MediaInitializationSection({uri:p.URI,byterange:p.BYTERANGE});else if(d==="EXT-X-PROGRAM-DATE-TIME")o.programDateTime=f;else if(d==="EXT-X-DATERANGE"){let m={};for(let h of Object.keys(p))(h.startsWith("SCTE35-")||h.startsWith("X-"))&&(m[h]=p[h]);o.dateRange=new ei.DateRange({id:p.ID,classId:p.CLASS,start:p["START-DATE"],end:p["END-DATE"],duration:p.DURATION,plannedDuration:p["PLANNED-DURATION"],endOnNext:p["END-ON-NEXT"],attributes:m})}else if(d==="EXT-X-CUE-OUT")o.markers.push(new ei.SpliceInfo({type:"OUT",duration:p&&p.DURATION||f}));else if(d==="EXT-X-CUE-IN")o.markers.push(new ei.SpliceInfo({type:"IN"}));else if(d==="EXT-X-CUE-OUT-CONT"||d==="EXT-X-CUE"||d==="EXT-OATCLS-SCTE35"||d==="EXT-X-ASSET"||d==="EXT-X-SCTE35")o.markers.push(new ei.SpliceInfo({type:"RAW",tagName:d,value:f}));else if(d==="EXT-X-PRELOAD-HINT"&&!p.TYPE)We.INVALIDPLAYLIST("EXT-X-PRELOAD-HINT: TYPE attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"&&u)We.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist.");else if((d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT")&&!p.URI)We.INVALIDPLAYLIST("EXT-X-PART / EXT-X-PRELOAD-HINT: URI attribute is mandatory");else if(d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="MAP")c&&We.INVALIDPLAYLIST("Servers should not add more than one EXT-X-PRELOAD-HINT tag with the same TYPE attribute to a Playlist."),c=!0,a.hasMap=!0,o.map=new ei.MediaInitializationSection({hint:!0,uri:p.URI,byterange:{length:p["BYTERANGE-LENGTH"],offset:p["BYTERANGE-START"]||0}});else if(d==="EXT-X-PART"||d==="EXT-X-PRELOAD-HINT"&&p.TYPE==="PART"){d==="EXT-X-PART"&&!p.DURATION&&We.INVALIDPLAYLIST("EXT-X-PART: DURATION attribute is mandatory"),d==="EXT-X-PRELOAD-HINT"&&(u=!0);let m=new ei.PartialSegment({hint:d==="EXT-X-PRELOAD-HINT",uri:p.URI,byterange:d==="EXT-X-PART"?p.BYTERANGE:{length:p["BYTERANGE-LENGTH"],offset:p["BYTERANGE-START"]||0},duration:p.DURATION,independent:p.INDEPENDENT,gap:p.GAP});o.parts.push(m)}}return o}function zJt(t,e,r,n,s,i,a){let o=new ei.PrefetchSegment({uri:e,mediaSequenceNumber:s,discontinuitySequence:i});for(let c=r;c<=n;c++){let{name:u,attributes:l}=t[c];u==="EXTINF"?We.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXTINF tag."):u==="EXT-X-DISCONTINUITY"?We.INVALIDPLAYLIST("A prefetch segment must not be advertised with an EXT-X-DISCONTINUITY tag."):u==="EXT-X-PREFETCH-DISCONTINUITY"?o.discontinuity=!0:u==="EXT-X-KEY"?(YQ(a,l),o.key=new ei.Key({method:l.METHOD,uri:l.URI,iv:l.IV,format:l.KEYFORMAT,formatVersion:l.KEYFORMATVERSIONS})):u==="EXT-X-MAP"&&We.INVALIDPLAYLIST("Prefetch segments must not be advertised with an EXT-X-MAP tag.")}return o}function KJt(t,e){let r=new ei.MediaPlaylist,n=-1,s=0,i=!1,a=!1,o=0,c=null,u=null,l=!1;for(let[d,f]of t.entries()){let{name:p,value:m,attributes:h,category:A}=f;if(A==="Segment"){n===-1&&(n=d),p==="EXT-X-DISCONTINUITY"&&(i=!0);continue}if(p==="EXT-X-VERSION")r.version===void 0?r.version=m:We.INVALIDPLAYLIST("A Playlist file MUST NOT contain more than one EXT-X-VERSION tag.");else if(p==="EXT-X-TARGETDURATION")r.targetDuration=e.targetDuration=m;else if(p==="EXT-X-MEDIA-SEQUENCE")r.segments.length>0&&We.INVALIDPLAYLIST("The EXT-X-MEDIA-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),r.mediaSequenceBase=s=m;else if(p==="EXT-X-DISCONTINUITY-SEQUENCE")r.segments.length>0&&We.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before the first Media Segment in the Playlist."),i&&We.INVALIDPLAYLIST("The EXT-X-DISCONTINUITY-SEQUENCE tag MUST appear before any EXT-X-DISCONTINUITY tag."),r.discontinuitySequenceBase=o=m;else if(p==="EXT-X-ENDLIST")r.endlist=!0;else if(p==="EXT-X-PLAYLIST-TYPE")r.playlistType=m;else if(p==="EXT-X-I-FRAMES-ONLY")e.compatibleVersion<4&&(e.compatibleVersion=4),r.isIFrame=!0;else if(p==="EXT-X-INDEPENDENT-SEGMENTS")r.independentSegments&&We.INVALIDPLAYLIST("EXT-X-INDEPENDENT-SEGMENTS tag MUST NOT appear more than once in a Playlist"),r.independentSegments=!0;else if(p==="EXT-X-START")r.start&&We.INVALIDPLAYLIST("EXT-X-START tag MUST NOT appear more than once in a Playlist"),typeof h["TIME-OFFSET"]!="number"&&We.INVALIDPLAYLIST("EXT-X-START: TIME-OFFSET attribute is REQUIRED"),r.start={offset:h["TIME-OFFSET"],precise:h.PRECISE||!1};else if(p==="EXT-X-SERVER-CONTROL")h["CAN-BLOCK-RELOAD"]||We.INVALIDPLAYLIST("EXT-X-SERVER-CONTROL: CAN-BLOCK-RELOAD=YES is mandatory for Low-Latency HLS"),r.lowLatencyCompatibility={canBlockReload:h["CAN-BLOCK-RELOAD"],canSkipUntil:h["CAN-SKIP-UNTIL"],holdBack:h["HOLD-BACK"],partHoldBack:h["PART-HOLD-BACK"]};else if(p==="EXT-X-PART-INF")h["PART-TARGET"]||We.INVALIDPLAYLIST("EXT-X-PART-INF: PART-TARGET attribute is mandatory"),r.partTargetDuration=h["PART-TARGET"];else if(p==="EXT-X-RENDITION-REPORT")h.URI||We.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI attribute is mandatory"),h.URI.search(/^[a-z]+:/)===0&&We.INVALIDPLAYLIST("EXT-X-RENDITION-REPORT: URI must be relative to the playlist uri"),r.renditionReports.push(new ei.RenditionReport({uri:h.URI,lastMSN:h["LAST-MSN"],lastPart:h["LAST-PART"]}));else if(p==="EXT-X-SKIP")h["SKIPPED-SEGMENTS"]||We.INVALIDPLAYLIST("EXT-X-SKIP: SKIPPED-SEGMENTS attribute is mandatory"),e.compatibleVersion<9&&(e.compatibleVersion=9),r.skip=h["SKIPPED-SEGMENTS"],s+=r.skip;else if(p==="EXT-X-PREFETCH"){let g=zJt(t,m,n===-1?d:n,d-1,s++,o,e);g&&(g.discontinuity&&(g.discontinuitySequence++,o=g.discontinuitySequence),g.key?c=g.key:g.key=c,r.prefetchSegments.push(g)),a=!0,n=-1}else if(typeof f=="string"){n===-1&&We.INVALIDPLAYLIST("A URI line is not preceded by any segment tags"),r.targetDuration||We.INVALIDPLAYLIST("The EXT-X-TARGETDURATION tag is REQUIRED"),a&&We.INVALIDPLAYLIST("These segments must appear after all complete segments.");let g=Ske(t,f,n,d-1,s++,o,e);g&&([o,c,u]=vke(r,g,o,c,u),!l&&g.parts.length>0&&(l=!0)),n=-1}}if(n!==-1){let d=Ske(t,"",n,t.length-1,s++,o,e);if(d){let{parts:f}=d;f.length>0&&!r.endlist&&!f.at(-1)?.hint&&We.INVALIDPLAYLIST("If the Playlist contains EXT-X-PART tags and does not contain an EXT-X-ENDLIST tag, the Playlist must contain an EXT-X-PRELOAD-HINT tag with a TYPE=PART attribute"),vke(r,d,c,u),!l&&d.parts.length>0&&(l=!0)}}return YJt(r.segments),r.lowLatencyCompatibility&&JJt(r,l),r}function vke(t,e,r,n,s){let{discontinuity:i,key:a,map:o,byterange:c,uri:u}=e;if(i&&(e.discontinuitySequence=r+1),a||(e.key=n),o||(e.map=s),c&&c.offset===-1){let{segments:l}=t;if(l.length>0){let d=l.at(-1);d.byterange&&d.uri===u?c.offset=d.byterange.offset+d.byterange.length:We.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST be a sub-range of the same media resource")}else We.INVALIDPLAYLIST("If offset of EXT-X-BYTERANGE is not present, a previous Media Segment MUST appear in the Playlist file")}return t.segments.push(e),[e.discontinuitySequence,e.key,e.map]}function YJt(t){let e=new Map,r=new Map,n=!1,s=!1;for(let i=t.length-1;i>=0;i--){let{programDateTime:a,dateRange:o}=t[i];if(a&&(s=!0),o&&o.start){n=!0,o.endOnNext&&(o.end||o.duration)&&We.INVALIDPLAYLIST("An EXT-X-DATERANGE tag with an END-ON-NEXT=YES attribute MUST NOT contain DURATION or END-DATE attributes.");let c=o.start.getTime(),u=o.duration||0;o.end&&o.duration&&c+u*1e3!==o.end.getTime()&&We.INVALIDPLAYLIST("END-DATE MUST be equal to the value of the START-DATE attribute plus the value of the DURATION"),o.endOnNext&&(o.end=e.get(o.classId)),e.set(o.classId,o.start);let l=o.end?o.end.getTime():o.start.getTime()+(o.duration||0)*1e3,d=r.get(o.classId);if(d){for(let f of d)(f.start<=c&&f.end>c||f.start>=c&&f.start0&&ur&&We.INVALIDPLAYLIST("PART-TARGET is the maximum duration of any Partial Segment"),d0&&(u.lastPart=l.parts.length-1)}}function XJt(t,e){if(t==="Segment"||t==="MediaPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!1;return}e.isMasterPlaylist&&Eke();return}if(t==="MasterPlaylist"){if(e.isMasterPlaylist===void 0){e.isMasterPlaylist=!0;return}e.isMasterPlaylist===!1&&Eke()}}function ZJt(t,e){let[r,n]=UJt(t),s=kJt(r);if(XJt(s,e),s==="Unknown")return null;s==="MediaPlaylist"&&r!=="EXT-X-RENDITION-REPORT"&&r!=="EXT-X-PREFETCH"&&(e.hash[r]&&We.INVALIDPLAYLIST("There MUST NOT be more than one Media Playlist tag of each type in any Media Playlist"),e.hash[r]=!0);let[i,a]=FJt(r,n);return{name:r,category:s,value:i,attributes:a}}function eXt(t,e){let r=[];for(let n of t.split(` +`)){let s=Buffer.from(n.trim()).toString();if(s){if(s.startsWith("#")){if(s.startsWith("#EXT")){let i=ZJt(s,e);i&&r.push(i)}continue}r.push(s)}}return(r.length===0||r[0].name!=="EXTM3U")&&We.INVALIDPLAYLIST("The EXTM3U tag MUST be the first line."),r}function tXt(t,e){let r;return e.isMasterPlaylist?r=VJt(t,e):(r=KJt(t,e),!r.isIFrame&&e.hasMap&&e.compatibleVersion<6&&(e.compatibleVersion=6)),e.compatibleVersion>1&&(!r.version||r.version{"use strict";var nXt=Kd&&Kd.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),sXt=Kd&&Kd.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),iXt=Kd&&Kd.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&nXt(e,t,r);return sXt(e,t),e};Object.defineProperty(Kd,"__esModule",{value:!0});var cu=iXt(Rv()),aXt=["#EXTINF","#EXT-X-BYTERANGE","#EXT-X-DISCONTINUITY","#EXT-X-STREAM-INF","#EXT-X-CUE-OUT","#EXT-X-CUE-IN","#EXT-X-KEY","#EXT-X-MAP"],oXt=["#EXT-X-MEDIA"],JQ=class extends Array{constructor(e){super(),this.baseUri=e}push(...e){for(let r of e){if(!r.startsWith("#")){super.push(r);continue}if(aXt.some(n=>r.startsWith(n))){super.push(r);continue}if(this.includes(r)){if(oXt.some(n=>r.startsWith(n)))continue;cu.INVALIDPLAYLIST(`Redundant item (${r})`)}super.push(r)}return this.length}};function XQ(t,e){let r=1e3;e&&(r=10**e);let n=Math.round(t*r)/r;return e?n.toFixed(e):n}function cXt(t){let e=t.toString(10),r=e.indexOf(".");return r===-1?0:e.length-r-1}function uXt(t,e){for(let r of e.sessionDataList)t.push(lXt(r));for(let r of e.sessionKeyList)t.push(wke(r,!0));for(let r of e.variants)dXt(t,r)}function lXt(t){let e=[`DATA-ID="${t.id}"`];return t.language&&e.push(`LANGUAGE="${t.language}"`),t.value?e.push(`VALUE="${t.value}"`):t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-SESSION-DATA:${e.join(",")}`}function wke(t,e){let r=e?"#EXT-X-SESSION-KEY":"#EXT-X-KEY",n=[`METHOD=${t.method}`];return t.uri&&n.push(`URI="${t.uri}"`),t.iv&&(t.iv.length!==16&&cu.INVALIDPLAYLIST("IV must be a 128-bit unsigned integer"),n.push(`IV=${cu.byteSequenceToHex(t.iv)}`)),t.format&&n.push(`KEYFORMAT="${t.format}"`),t.formatVersion&&n.push(`KEYFORMATVERSIONS="${t.formatVersion}"`),`${r}:${n.join(",")}`}function dXt(t,e){let r=e.isIFrameOnly?"#EXT-X-I-FRAME-STREAM-INF":"#EXT-X-STREAM-INF",n=[`BANDWIDTH=${e.bandwidth}`];if(e.averageBandwidth&&n.push(`AVERAGE-BANDWIDTH=${e.averageBandwidth}`),e.isIFrameOnly&&n.push(`URI="${e.uri}"`),e.codecs&&n.push(`CODECS="${e.codecs}"`),e.resolution&&n.push(`RESOLUTION=${e.resolution.width}x${e.resolution.height}`),e.frameRate&&n.push(`FRAME-RATE=${XQ(e.frameRate,3)}`),e.hdcpLevel&&n.push(`HDCP-LEVEL=${e.hdcpLevel}`),e.audio.length>0){n.push(`AUDIO="${e.audio[0].groupId}"`);for(let s of e.audio)t.push(dk(s))}if(e.video.length>0){n.push(`VIDEO="${e.video[0].groupId}"`);for(let s of e.video)t.push(dk(s))}if(e.subtitles.length>0){n.push(`SUBTITLES="${e.subtitles[0].groupId}"`);for(let s of e.subtitles)t.push(dk(s))}if(cu.getOptions().allowClosedCaptionsNone&&e.closedCaptions.length===0)n.push("CLOSED-CAPTIONS=NONE");else if(e.closedCaptions.length>0){n.push(`CLOSED-CAPTIONS="${e.closedCaptions[0].groupId}"`);for(let s of e.closedCaptions)t.push(dk(s))}if(e.score&&n.push(`SCORE=${e.score}`),e.allowedCpc){let s=[];for(let{format:i,cpcList:a}of e.allowedCpc)s.push(`${i}:${a.join("/")}`);n.push(`ALLOWED-CPC="${s.join(",")}"`)}e.videoRange&&n.push(`VIDEO-RANGE=${e.videoRange}`),e.stableVariantId&&n.push(`STABLE-VARIANT-ID="${e.stableVariantId}"`),e.programId&&n.push(`PROGRAM-ID=${e.programId}`),t.push(`${r}:${n.join(",")}`),e.isIFrameOnly||t.push(`${e.uri}`)}function dk(t){let e=[`TYPE=${t.type}`,`GROUP-ID="${t.groupId}"`,`NAME="${t.name}"`];return t.isDefault!==void 0&&e.push(`DEFAULT=${t.isDefault?"YES":"NO"}`),t.autoselect!==void 0&&e.push(`AUTOSELECT=${t.autoselect?"YES":"NO"}`),t.forced!==void 0&&e.push(`FORCED=${t.forced?"YES":"NO"}`),t.language&&e.push(`LANGUAGE="${t.language}"`),t.assocLanguage&&e.push(`ASSOC-LANGUAGE="${t.assocLanguage}"`),t.instreamId&&e.push(`INSTREAM-ID="${t.instreamId}"`),t.characteristics&&e.push(`CHARACTERISTICS="${t.characteristics}"`),t.channels&&e.push(`CHANNELS="${t.channels}"`),t.uri&&e.push(`URI="${t.uri}"`),`#EXT-X-MEDIA:${e.join(",")}`}function fXt(t,e){let r="",n="",s=!1;if(e.targetDuration&&t.push(`#EXT-X-TARGETDURATION:${e.targetDuration}`),e.lowLatencyCompatibility){let{canBlockReload:i,canSkipUntil:a,holdBack:o,partHoldBack:c}=e.lowLatencyCompatibility,u=[];u.push(`CAN-BLOCK-RELOAD=${i?"YES":"NO"}`),a!==void 0&&u.push(`CAN-SKIP-UNTIL=${a}`),o!==void 0&&u.push(`HOLD-BACK=${o}`),c!==void 0&&u.push(`PART-HOLD-BACK=${c}`),t.push(`#EXT-X-SERVER-CONTROL:${u.join(",")}`)}e.partTargetDuration&&t.push(`#EXT-X-PART-INF:PART-TARGET=${e.partTargetDuration}`),e.mediaSequenceBase&&t.push(`#EXT-X-MEDIA-SEQUENCE:${e.mediaSequenceBase}`),e.discontinuitySequenceBase&&t.push(`#EXT-X-DISCONTINUITY-SEQUENCE:${e.discontinuitySequenceBase}`),e.playlistType&&t.push(`#EXT-X-PLAYLIST-TYPE:${e.playlistType}`),e.isIFrame&&t.push("#EXT-X-I-FRAMES-ONLY"),e.skip>0&&t.push(`#EXT-X-SKIP:SKIPPED-SEGMENTS=${e.skip}`);for(let i of e.segments){let a="";[r,n,a]=pXt(t,i,r,n,e.version),a==="OUT"?s=!0:a==="IN"&&s&&(s=!1)}e.playlistType==="VOD"&&s&&t.push("#EXT-X-CUE-IN"),e.prefetchSegments.length>2&&cu.INVALIDPLAYLIST("The server must deliver no more than two prefetch segments");for(let i of e.prefetchSegments)i.discontinuity&&t.push("#EXT-X-PREFETCH-DISCONTINUITY"),t.push(`#EXT-X-PREFETCH:${i.uri}`);e.endlist&&t.push("#EXT-X-ENDLIST");for(let i of e.renditionReports){let a=[];a.push(`URI="${i.uri}"`,`LAST-MSN=${i.lastMSN}`),i.lastPart!==void 0&&a.push(`LAST-PART=${i.lastPart}`),t.push(`#EXT-X-RENDITION-REPORT:${a.join(",")}`)}}function pXt(t,e,r,n,s=1){let i=!1,a="";if(e.discontinuity&&t.push("#EXT-X-DISCONTINUITY"),e.key){let c=wke(e.key);c!==r&&(t.push(c),r=c)}if(e.map){let c=mXt(e.map);c!==n&&(t.push(c),n=c)}if(e.programDateTime&&t.push(`#EXT-X-PROGRAM-DATE-TIME:${cu.formatDate(e.programDateTime)}`),e.dateRange&&t.push(hXt(e.dateRange)),e.markers.length>0&&(a=gXt(t,e.markers)),e.parts.length>0&&(i=AXt(t,e.parts)),i)return[r,n];let o=s<3?Math.round(e.duration):XQ(e.duration,cXt(e.duration));return t.push(`#EXTINF:${o},${unescape(encodeURIComponent(e.title||""))}`),e.byterange&&t.push(`#EXT-X-BYTERANGE:${ZQ(e.byterange)}`),Array.prototype.push.call(t,`${e.uri}`),[r,n,a]}function mXt(t){let e=[`URI="${t.uri}"`];return t.byterange&&e.push(`BYTERANGE="${ZQ(t.byterange)}"`),`#EXT-X-MAP:${e.join(",")}`}function ZQ({offset:t,length:e}){return`${e}@${t}`}function hXt(t){let e=[`ID="${t.id}"`];t.start&&e.push(`START-DATE="${cu.formatDate(t.start)}"`),t.end&&e.push(`END-DATE="${cu.formatDate(t.end)}"`),t.duration&&e.push(`DURATION=${t.duration}`),t.plannedDuration&&e.push(`PLANNED-DURATION=${t.plannedDuration}`),t.classId&&e.push(`CLASS="${t.classId}"`),t.endOnNext&&e.push("END-ON-NEXT=YES");for(let r of Object.keys(t.attributes))r.startsWith("X-")?typeof t.attributes[r]=="number"?e.push(`${r}=${t.attributes[r]}`):e.push(`${r}="${t.attributes[r]}"`):r.startsWith("SCTE35-")&&e.push(`${r}=${cu.byteSequenceToHex(t.attributes[r])}`);return`#EXT-X-DATERANGE:${e.join(",")}`}function gXt(t,e){let r="";for(let n of e)if(n.type==="OUT")r="OUT",t.push(`#EXT-X-CUE-OUT:DURATION=${n.duration}`);else if(n.type==="IN")r="IN",t.push("#EXT-X-CUE-IN");else if(n.type==="RAW"){let s=n.value?`:${n.value}`:"";t.push(`#${n.tagName}${s}`)}return r}function AXt(t,e){let r=!1;for(let n of e)if(n.hint){let s=[];if(s.push("TYPE=PART",`URI="${n.uri}"`),n.byterange){let{offset:i,length:a}=n.byterange;s.push(`BYTERANGE-START=${i}`),a&&s.push(`BYTERANGE-LENGTH=${a}`)}t.push(`#EXT-X-PRELOAD-HINT:${s.join(",")}`),r=!0}else{let s=[];s.push(`DURATION=${n.duration}`,`URI="${n.uri}"`),n.byterange&&s.push(`BYTERANGE=${ZQ(n.byterange)}`),n.independent&&s.push("INDEPENDENT=YES"),n.gap&&s.push("GAP=YES"),t.push(`#EXT-X-PART:${s.join(",")}`)}return r}function yXt(t){cu.PARAMCHECK(t),cu.ASSERT("Not a playlist",t.type==="playlist");let e=new JQ(t.uri);return e.push("#EXTM3U"),t.version&&e.push(`#EXT-X-VERSION:${t.version}`),t.independentSegments&&e.push("#EXT-X-INDEPENDENT-SEGMENTS"),t.start&&e.push(`#EXT-X-START:TIME-OFFSET=${XQ(t.start.offset)}${t.start.precise?",PRECISE=YES":""}`),t.isMasterPlaylist?uXt(e,t):fXt(e,t),e.join(` +`)}Kd.default=yXt});var Pke=E(_s=>{"use strict";var xXt=_s&&_s.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),bXt=_s&&_s.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),EXt=_s&&_s.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&xXt(e,t,r);return bXt(e,t),e},Nke=_s&&_s.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_s,"__esModule",{value:!0});_s.setOptions=_s.getOptions=_s.types=_s.stringify=_s.parse=void 0;var Oke=Rv();Object.defineProperty(_s,"getOptions",{enumerable:!0,get:function(){return Oke.getOptions}});Object.defineProperty(_s,"setOptions",{enumerable:!0,get:function(){return Oke.setOptions}});var _Xt=Nke(Tke());_s.parse=_Xt.default;var SXt=Nke(Rke());_s.stringify=SXt.default;var vXt=EXt(KQ());_s.types=vXt});var pG=E((j7r,bLe)=>{bLe.exports=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}});var A0=E(Bh=>{var mG,nZt=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];Bh.getSymbolSize=function(e){if(!e)throw new Error('"version" cannot be null or undefined');if(e<1||e>40)throw new Error('"version" should be in range from 1 to 40');return e*4+17};Bh.getSymbolTotalCodewords=function(e){return nZt[e]};Bh.getBCHDigit=function(t){let e=0;for(;t!==0;)e++,t>>>=1;return e};Bh.setToSJISFunction=function(e){if(typeof e!="function")throw new Error('"toSJISFunc" is not a valid function.');mG=e};Bh.isKanjiModeEnabled=function(){return typeof mG<"u"};Bh.toSJIS=function(e){return mG(e)}});var Ck=E(yc=>{yc.L={bit:1};yc.M={bit:0};yc.Q={bit:3};yc.H={bit:2};function sZt(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"l":case"low":return yc.L;case"m":case"medium":return yc.M;case"q":case"quartile":return yc.Q;case"h":case"high":return yc.H;default:throw new Error("Unknown EC Level: "+t)}}yc.isValid=function(e){return e&&typeof e.bit<"u"&&e.bit>=0&&e.bit<4};yc.from=function(e,r){if(yc.isValid(e))return e;try{return sZt(e)}catch{return r}}});var SLe=E((G7r,_Le)=>{function ELe(){this.buffer=[],this.length=0}ELe.prototype={get:function(t){let e=Math.floor(t/8);return(this.buffer[e]>>>7-t%8&1)===1},put:function(t,e){for(let r=0;r>>e-r-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(t){let e=Math.floor(this.length/8);this.buffer.length<=e&&this.buffer.push(0),t&&(this.buffer[e]|=128>>>this.length%8),this.length++}};_Le.exports=ELe});var CLe=E((V7r,vLe)=>{function Lv(t){if(!t||t<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=t,this.data=new Uint8Array(t*t),this.reservedBit=new Uint8Array(t*t)}Lv.prototype.set=function(t,e,r,n){let s=t*this.size+e;this.data[s]=r,n&&(this.reservedBit[s]=!0)};Lv.prototype.get=function(t,e){return this.data[t*this.size+e]};Lv.prototype.xor=function(t,e,r){this.data[t*this.size+e]^=r};Lv.prototype.isReserved=function(t,e){return this.reservedBit[t*this.size+e]};vLe.exports=Lv});var ILe=E(Ik=>{var iZt=A0().getSymbolSize;Ik.getRowColCoords=function(e){if(e===1)return[];let r=Math.floor(e/7)+2,n=iZt(e),s=n===145?26:Math.ceil((n-13)/(2*r-2))*2,i=[n-7];for(let a=1;a{var aZt=A0().getSymbolSize,TLe=7;wLe.getPositions=function(e){let r=aZt(e);return[[0,0],[r-TLe,0],[0,r-TLe]]}});var NLe=E(Sn=>{Sn.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};var Mh={N1:3,N2:3,N3:40,N4:10};Sn.isValid=function(e){return e!=null&&e!==""&&!isNaN(e)&&e>=0&&e<=7};Sn.from=function(e){return Sn.isValid(e)?parseInt(e,10):void 0};Sn.getPenaltyN1=function(e){let r=e.size,n=0,s=0,i=0,a=null,o=null;for(let c=0;c=5&&(n+=Mh.N1+(s-5)),a=l,s=1),l=e.get(u,c),l===o?i++:(i>=5&&(n+=Mh.N1+(i-5)),o=l,i=1)}s>=5&&(n+=Mh.N1+(s-5)),i>=5&&(n+=Mh.N1+(i-5))}return n};Sn.getPenaltyN2=function(e){let r=e.size,n=0;for(let s=0;s=10&&(s===1488||s===93)&&n++,i=i<<1&2047|e.get(o,a),o>=10&&(i===1488||i===93)&&n++}return n*Mh.N3};Sn.getPenaltyN4=function(e){let r=0,n=e.data.length;for(let i=0;i{var y0=Ck(),Tk=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],wk=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];hG.getBlocksCount=function(e,r){switch(r){case y0.L:return Tk[(e-1)*4+0];case y0.M:return Tk[(e-1)*4+1];case y0.Q:return Tk[(e-1)*4+2];case y0.H:return Tk[(e-1)*4+3];default:return}};hG.getTotalCodewordsCount=function(e,r){switch(r){case y0.L:return wk[(e-1)*4+0];case y0.M:return wk[(e-1)*4+1];case y0.Q:return wk[(e-1)*4+2];case y0.H:return wk[(e-1)*4+3];default:return}}});var OLe=E(Nk=>{var Bv=new Uint8Array(512),Rk=new Uint8Array(256);(function(){let e=1;for(let r=0;r<255;r++)Bv[r]=e,Rk[e]=r,e<<=1,e&256&&(e^=285);for(let r=255;r<512;r++)Bv[r]=Bv[r-255]})();Nk.log=function(e){if(e<1)throw new Error("log("+e+")");return Rk[e]};Nk.exp=function(e){return Bv[e]};Nk.mul=function(e,r){return e===0||r===0?0:Bv[Rk[e]+Rk[r]]}});var PLe=E(Mv=>{var AG=OLe();Mv.mul=function(e,r){let n=new Uint8Array(e.length+r.length-1);for(let s=0;s=0;){let s=n[0];for(let a=0;a{var DLe=PLe();function yG(t){this.genPoly=void 0,this.degree=t,this.degree&&this.initialize(this.degree)}yG.prototype.initialize=function(e){this.degree=e,this.genPoly=DLe.generateECPolynomial(this.degree)};yG.prototype.encode=function(e){if(!this.genPoly)throw new Error("Encoder not initialized");let r=new Uint8Array(e.length+this.degree);r.set(e);let n=DLe.mod(r,this.genPoly),s=this.degree-n.length;if(s>0){let i=new Uint8Array(this.degree);return i.set(n,s),i}return n};kLe.exports=yG});var xG=E(BLe=>{BLe.isValid=function(e){return!isNaN(e)&&e>=1&&e<=40}});var bG=E(Jd=>{var MLe="[0-9]+",cZt="[A-Z $%*+\\-./:]+",Wv="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";Wv=Wv.replace(/u/g,"\\u");var uZt="(?:(?![A-Z0-9 $%*+\\-./:]|"+Wv+`)(?:.|[\r +]))+`;Jd.KANJI=new RegExp(Wv,"g");Jd.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g");Jd.BYTE=new RegExp(uZt,"g");Jd.NUMERIC=new RegExp(MLe,"g");Jd.ALPHANUMERIC=new RegExp(cZt,"g");var lZt=new RegExp("^"+Wv+"$"),dZt=new RegExp("^"+MLe+"$"),fZt=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");Jd.testKanji=function(e){return lZt.test(e)};Jd.testNumeric=function(e){return dZt.test(e)};Jd.testAlphanumeric=function(e){return fZt.test(e)}});var x0=E(vs=>{var pZt=xG(),EG=bG();vs.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]};vs.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]};vs.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]};vs.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]};vs.MIXED={bit:-1};vs.getCharCountIndicator=function(e,r){if(!e.ccBits)throw new Error("Invalid mode: "+e);if(!pZt.isValid(r))throw new Error("Invalid version: "+r);return r>=1&&r<10?e.ccBits[0]:r<27?e.ccBits[1]:e.ccBits[2]};vs.getBestModeForData=function(e){return EG.testNumeric(e)?vs.NUMERIC:EG.testAlphanumeric(e)?vs.ALPHANUMERIC:EG.testKanji(e)?vs.KANJI:vs.BYTE};vs.toString=function(e){if(e&&e.id)return e.id;throw new Error("Invalid mode")};vs.isValid=function(e){return e&&e.bit&&e.ccBits};function mZt(t){if(typeof t!="string")throw new Error("Param is not a string");switch(t.toLowerCase()){case"numeric":return vs.NUMERIC;case"alphanumeric":return vs.ALPHANUMERIC;case"kanji":return vs.KANJI;case"byte":return vs.BYTE;default:throw new Error("Unknown mode: "+t)}}vs.from=function(e,r){if(vs.isValid(e))return e;try{return mZt(e)}catch{return r}}});var qLe=E(Wh=>{var Ok=A0(),hZt=gG(),WLe=Ck(),b0=x0(),_G=xG(),FLe=7973,$Le=Ok.getBCHDigit(FLe);function gZt(t,e,r){for(let n=1;n<=40;n++)if(e<=Wh.getCapacity(n,r,t))return n}function ULe(t,e){return b0.getCharCountIndicator(t,e)+4}function AZt(t,e){let r=0;return t.forEach(function(n){let s=ULe(n.mode,e);r+=s+n.getBitsLength()}),r}function yZt(t,e){for(let r=1;r<=40;r++)if(AZt(t,r)<=Wh.getCapacity(r,e,b0.MIXED))return r}Wh.from=function(e,r){return _G.isValid(e)?parseInt(e,10):r};Wh.getCapacity=function(e,r,n){if(!_G.isValid(e))throw new Error("Invalid QR Code version");typeof n>"u"&&(n=b0.BYTE);let s=Ok.getSymbolTotalCodewords(e),i=hZt.getTotalCodewordsCount(e,r),a=(s-i)*8;if(n===b0.MIXED)return a;let o=a-ULe(n,e);switch(n){case b0.NUMERIC:return Math.floor(o/10*3);case b0.ALPHANUMERIC:return Math.floor(o/11*2);case b0.KANJI:return Math.floor(o/13);case b0.BYTE:default:return Math.floor(o/8)}};Wh.getBestVersionForData=function(e,r){let n,s=WLe.from(r,WLe.M);if(Array.isArray(e)){if(e.length>1)return yZt(e,s);if(e.length===0)return 1;n=e[0]}else n=e;return gZt(n.mode,n.getLength(),s)};Wh.getEncodedBits=function(e){if(!_G.isValid(e)||e<7)throw new Error("Invalid QR Code version");let r=e<<12;for(;Ok.getBCHDigit(r)-$Le>=0;)r^=FLe<{var SG=A0(),HLe=1335,xZt=21522,jLe=SG.getBCHDigit(HLe);QLe.getEncodedBits=function(e,r){let n=e.bit<<3|r,s=n<<10;for(;SG.getBCHDigit(s)-jLe>=0;)s^=HLe<{var bZt=x0();function jx(t){this.mode=bZt.NUMERIC,this.data=t.toString()}jx.getBitsLength=function(e){return 10*Math.floor(e/3)+(e%3?e%3*3+1:0)};jx.prototype.getLength=function(){return this.data.length};jx.prototype.getBitsLength=function(){return jx.getBitsLength(this.data.length)};jx.prototype.write=function(e){let r,n,s;for(r=0;r+3<=this.data.length;r+=3)n=this.data.substr(r,3),s=parseInt(n,10),e.put(s,10);let i=this.data.length-r;i>0&&(n=this.data.substr(r),s=parseInt(n,10),e.put(s,i*3+1))};VLe.exports=jx});var YLe=E((o9r,KLe)=>{var EZt=x0(),vG=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function Hx(t){this.mode=EZt.ALPHANUMERIC,this.data=t}Hx.getBitsLength=function(e){return 11*Math.floor(e/2)+6*(e%2)};Hx.prototype.getLength=function(){return this.data.length};Hx.prototype.getBitsLength=function(){return Hx.getBitsLength(this.data.length)};Hx.prototype.write=function(e){let r;for(r=0;r+2<=this.data.length;r+=2){let n=vG.indexOf(this.data[r])*45;n+=vG.indexOf(this.data[r+1]),e.put(n,11)}this.data.length%2&&e.put(vG.indexOf(this.data[r]),6)};KLe.exports=Hx});var XLe=E((c9r,JLe)=>{var _Zt=x0();function Qx(t){this.mode=_Zt.BYTE,typeof t=="string"?this.data=new TextEncoder().encode(t):this.data=new Uint8Array(t)}Qx.getBitsLength=function(e){return e*8};Qx.prototype.getLength=function(){return this.data.length};Qx.prototype.getBitsLength=function(){return Qx.getBitsLength(this.data.length)};Qx.prototype.write=function(t){for(let e=0,r=this.data.length;e{var SZt=x0(),vZt=A0();function Gx(t){this.mode=SZt.KANJI,this.data=t}Gx.getBitsLength=function(e){return e*13};Gx.prototype.getLength=function(){return this.data.length};Gx.prototype.getBitsLength=function(){return Gx.getBitsLength(this.data.length)};Gx.prototype.write=function(t){let e;for(e=0;e=33088&&r<=40956)r-=33088;else if(r>=57408&&r<=60351)r-=49472;else throw new Error("Invalid SJIS character: "+this.data[e]+` +Make sure your charset is UTF-8`);r=(r>>>8&255)*192+(r&255),t.put(r,13)}};ZLe.exports=Gx});var tBe=E((l9r,CG)=>{"use strict";var $v={single_source_shortest_paths:function(t,e,r){var n={},s={};s[e]=0;var i=$v.PriorityQueue.make();i.push(e,0);for(var a,o,c,u,l,d,f,p,m;!i.empty();){a=i.pop(),o=a.value,u=a.cost,l=t[o]||{};for(c in l)l.hasOwnProperty(c)&&(d=l[c],f=u+d,p=s[c],m=typeof s[c]>"u",(m||p>f)&&(s[c]=f,i.push(c,f),n[c]=o))}if(typeof r<"u"&&typeof s[r]>"u"){var h=["Could not find a path from ",e," to ",r,"."].join("");throw new Error(h)}return n},extract_shortest_path_from_predecessor_list:function(t,e){for(var r=[],n=e,s;n;)r.push(n),s=t[n],n=t[n];return r.reverse(),r},find_path:function(t,e,r){var n=$v.single_source_shortest_paths(t,e,r);return $v.extract_shortest_path_from_predecessor_list(n,r)},PriorityQueue:{make:function(t){var e=$v.PriorityQueue,r={},n;t=t||{};for(n in e)e.hasOwnProperty(n)&&(r[n]=e[n]);return r.queue=[],r.sorter=t.sorter||e.default_sorter,r},default_sorter:function(t,e){return t.cost-e.cost},push:function(t,e){var r={value:t,cost:e};this.queue.push(r),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};typeof CG<"u"&&(CG.exports=$v)});var uBe=E(Vx=>{var zr=x0(),sBe=zLe(),iBe=YLe(),aBe=XLe(),oBe=eBe(),Fv=bG(),Pk=A0(),CZt=tBe();function rBe(t){return unescape(encodeURIComponent(t)).length}function Uv(t,e,r){let n=[],s;for(;(s=t.exec(r))!==null;)n.push({data:s[0],index:s.index,mode:e,length:s[0].length});return n}function cBe(t){let e=Uv(Fv.NUMERIC,zr.NUMERIC,t),r=Uv(Fv.ALPHANUMERIC,zr.ALPHANUMERIC,t),n,s;return Pk.isKanjiModeEnabled()?(n=Uv(Fv.BYTE,zr.BYTE,t),s=Uv(Fv.KANJI,zr.KANJI,t)):(n=Uv(Fv.BYTE_KANJI,zr.BYTE,t),s=[]),e.concat(r,n,s).sort(function(a,o){return a.index-o.index}).map(function(a){return{data:a.data,mode:a.mode,length:a.length}})}function IG(t,e){switch(e){case zr.NUMERIC:return sBe.getBitsLength(t);case zr.ALPHANUMERIC:return iBe.getBitsLength(t);case zr.KANJI:return oBe.getBitsLength(t);case zr.BYTE:return aBe.getBitsLength(t)}}function IZt(t){return t.reduce(function(e,r){let n=e.length-1>=0?e[e.length-1]:null;return n&&n.mode===r.mode?(e[e.length-1].data+=r.data,e):(e.push(r),e)},[])}function TZt(t){let e=[];for(let r=0;r{var kk=A0(),TG=Ck(),RZt=SLe(),NZt=CLe(),OZt=ILe(),PZt=RLe(),NG=NLe(),OG=gG(),DZt=LLe(),Dk=qLe(),kZt=GLe(),LZt=x0(),wG=uBe();function BZt(t,e){let r=t.size,n=PZt.getPositions(e);for(let s=0;s=0&&o<=6&&(c===0||c===6)||c>=0&&c<=6&&(o===0||o===6)||o>=2&&o<=4&&c>=2&&c<=4?t.set(i+o,a+c,!0,!0):t.set(i+o,a+c,!1,!0))}}function MZt(t){let e=t.size;for(let r=8;r>o&1)===1,t.set(s,i,a,!0),t.set(i,s,a,!0)}function RG(t,e,r){let n=t.size,s=kZt.getEncodedBits(e,r),i,a;for(i=0;i<15;i++)a=(s>>i&1)===1,i<6?t.set(i,8,a,!0):i<8?t.set(i+1,8,a,!0):t.set(n-15+i,8,a,!0),i<8?t.set(8,n-i-1,a,!0):i<9?t.set(8,15-i-1+1,a,!0):t.set(8,15-i-1,a,!0);t.set(n-8,8,1,!0)}function FZt(t,e){let r=t.size,n=-1,s=r-1,i=7,a=0;for(let o=r-1;o>0;o-=2)for(o===6&&o--;;){for(let c=0;c<2;c++)if(!t.isReserved(s,o-c)){let u=!1;a>>i&1)===1),t.set(s,o-c,u),i--,i===-1&&(a++,i=7)}if(s+=n,s<0||r<=s){s-=n,n=-n;break}}}function UZt(t,e,r){let n=new RZt;r.forEach(function(c){n.put(c.mode.bit,4),n.put(c.getLength(),LZt.getCharCountIndicator(c.mode,t)),c.write(n)});let s=kk.getSymbolTotalCodewords(t),i=OG.getTotalCodewordsCount(t,e),a=(s-i)*8;for(n.getLengthInBits()+4<=a&&n.put(0,4);n.getLengthInBits()%8!==0;)n.putBit(0);let o=(a-n.getLengthInBits())/8;for(let c=0;c=7&&MZt(c,e),WZt(c,a),isNaN(n)&&(n=RG.getBestMask(c,wG.bind(null,c,r))),RG.applyMask(n,c),wG(c,r,n),{modules:c,version:e,errorCorrectionLevel:r,maskPattern:n,segments:s}}oLe.create=function(e,r){if(typeof e>"u"||e==="")throw new Error("No input text");let n=CG.M,s,i;return typeof r<"u"&&(n=CG.from(r.errorCorrectionLevel,CG.M),s=O3.from(r.version),i=RG.from(r.maskPattern),r.toSJISFunc&&P3.setToSJISFunction(r.toSJISFunc)),UZt(e,s,n,i)}});var PG=E((oqr,uLe)=>{"use strict";var qZt=require("util"),cLe=require("stream"),fu=uLe.exports=function(){cLe.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};qZt.inherits(fu,cLe);fu.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))};fu.prototype.write=function(t,e){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let r;return Buffer.isBuffer(t)?r=t:r=Buffer.from(t,e||this._encoding),this._buffers.push(r),this._buffered+=r.length,this._process(),this._reads&&this._reads.length===0&&(this._paused=!0),this.writable&&!this._paused};fu.prototype.end=function(t,e){t&&this.write(t,e),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))};fu.prototype.destroySoon=fu.prototype.end;fu.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};fu.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};fu.prototype._processReadAllowingLess=function(t){this._reads.shift();let e=this._buffers[0];e.length>t.length?(this._buffered-=t.length,this._buffers[0]=e.slice(t.length),t.func.call(this,e.slice(0,t.length))):(this._buffered-=e.length,this._buffers.shift(),t.func.call(this,e))};fu.prototype._processRead=function(t){this._reads.shift();let e=0,r=0,n=Buffer.alloc(t.length);for(;e0&&this._buffers.splice(0,r),this._buffered-=t.length,t.func.call(this,n)};fu.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let t=this._reads[0];if(t.allowLess)this._processReadAllowingLess(t);else if(this._buffered>=t.length)this._processRead(t);else break}this._buffers&&!this.writable&&this._end()}catch(t){this.emit("error",t)}}});var DG=E(kG=>{"use strict";var b0=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];kG.getImagePasses=function(t,e){let r=[],n=t%8,s=e%8,i=(t-n)/8,a=(e-s)/8;for(let o=0;o0&&l>0&&r.push({width:u,height:l,index:o})}return r};kG.getInterlaceIterator=function(t){return function(e,r,n){let s=e%b0[n].x.length,i=(e-s)/b0[n].x.length*8+b0[n].x[s],a=r%b0[n].y.length,o=(r-a)/b0[n].y.length*8+b0[n].y[a];return i*4+o*t*4}}});var BG=E((uqr,lLe)=>{"use strict";lLe.exports=function(e,r,n){let s=e+r-n,i=Math.abs(s-e),a=Math.abs(s-r),o=Math.abs(s-n);return i<=a&&i<=o?e:a<=o?r:n}});var LG=E((lqr,fLe)=>{"use strict";var jZt=DG(),HZt=BG();function dLe(t,e,r){let n=t*e;return r!==8&&(n=Math.ceil(n/(8/r))),n}var Vx=fLe.exports=function(t,e){let r=t.width,n=t.height,s=t.interlace,i=t.bpp,a=t.depth;if(this.read=e.read,this.write=e.write,this.complete=e.complete,this._imageIndex=0,this._images=[],s){let o=jZt.getImagePasses(r,n);for(let c=0;cs?e[i-n]:0;e[i]=a+o}};Vx.prototype._unFilterType2=function(t,e,r){let n=this._lastLine;for(let s=0;ss?e[a-n]:0,l=Math.floor((u+c)/2);e[a]=o+l}};Vx.prototype._unFilterType4=function(t,e,r){let n=this._xComparison,s=n-1,i=this._lastLine;for(let a=0;as?e[a-n]:0,l=a>s&&i?i[a-n]:0,d=HZt(u,c,l);e[a]=o+d}};Vx.prototype._reverseFilterLine=function(t){let e=t[0],r,n=this._images[this._imageIndex],s=n.byteWidth;if(e===0)r=t.slice(1,s+1);else switch(r=Buffer.alloc(s),e){case 1:this._unFilterType1(t,r,s);break;case 2:this._unFilterType2(t,r,s);break;case 3:this._unFilterType3(t,r,s);break;case 4:this._unFilterType4(t,r,s);break;default:throw new Error("Unrecognised filter type - "+e)}this.write(r),n.lineIndex++,n.lineIndex>=n.height?(this._lastLine=null,this._imageIndex++,n=this._images[this._imageIndex]):this._lastLine=r,n?this.read(n.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}});var hLe=E((dqr,mLe)=>{"use strict";var QZt=require("util"),pLe=PG(),GZt=LG(),KZt=mLe.exports=function(t){pLe.call(this);let e=[],r=this;this._filter=new GZt(t,{read:this.read.bind(this),write:function(n){e.push(n)},complete:function(){r.emit("complete",Buffer.concat(e))}}),this._filter.start()};QZt.inherits(KZt,pLe)});var zx=E((fqr,gLe)=>{"use strict";gLe.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var $G=E((pqr,ALe)=>{"use strict";var MG=[];(function(){for(let t=0;t<256;t++){let e=t;for(let r=0;r<8;r++)e&1?e=3988292384^e>>>1:e=e>>>1;MG[t]=e}})();var WG=ALe.exports=function(){this._crc=-1};WG.prototype.write=function(t){for(let e=0;e>>8;return!0};WG.prototype.crc32=function(){return this._crc^-1};WG.crc32=function(t){let e=-1;for(let r=0;r>>8;return e^-1}});var FG=E((mqr,yLe)=>{"use strict";var ks=zx(),VZt=$G(),ri=yLe.exports=function(t,e){this._options=t,t.checkCRC=t.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[ks.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[ks.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[ks.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[ks.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[ks.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[ks.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=e.read,this.error=e.error,this.metadata=e.metadata,this.gamma=e.gamma,this.transColor=e.transColor,this.palette=e.palette,this.parsed=e.parsed,this.inflateData=e.inflateData,this.finished=e.finished,this.simpleTransparency=e.simpleTransparency,this.headersFinished=e.headersFinished||function(){}};ri.prototype.start=function(){this.read(ks.PNG_SIGNATURE.length,this._parseSignature.bind(this))};ri.prototype._parseSignature=function(t){let e=ks.PNG_SIGNATURE;for(let r=0;rthis._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let e=0;e0?this._handleIDAT(r):this._handleChunkEnd()};ri.prototype._handleIEND=function(t){this.read(t,this._parseIEND.bind(this))};ri.prototype._parseIEND=function(t){this._crc.write(t),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var UG=E(bLe=>{"use strict";var xLe=DG(),zZt=[function(){},function(t,e,r,n){if(n===e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=255},function(t,e,r,n){if(n+1>=e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=e[n+1]},function(t,e,r,n){if(n+2>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=255},function(t,e,r,n){if(n+3>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=e[n+3]}],YZt=[function(){},function(t,e,r,n){let s=e[0];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=n},function(t,e,r){let n=e[0];t[r]=n,t[r+1]=n,t[r+2]=n,t[r+3]=e[1]},function(t,e,r,n){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=n},function(t,e,r){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=e[3]}];function JZt(t,e){let r=[],n=0;function s(){if(n===t.length)throw new Error("Ran out of data");let i=t[n];n++;let a,o,c,u,l,d,f,p;switch(e){default:throw new Error("unrecognised depth");case 16:f=t[n],n++,r.push((i<<8)+f);break;case 4:f=i&15,p=i>>4,r.push(p,f);break;case 2:l=i&3,d=i>>2&3,f=i>>4&3,p=i>>6&3,r.push(p,f,d,l);break;case 1:a=i&1,o=i>>1&1,c=i>>2&1,u=i>>3&1,l=i>>4&1,d=i>>5&1,f=i>>6&1,p=i>>7&1,r.push(p,f,d,l,u,c,o,a);break}}return{get:function(i){for(;r.length{"use strict";function eer(t,e,r,n,s){let i=0;for(let a=0;a{"use strict";var ner=require("util"),jG=require("zlib"),_Le=PG(),ser=hLe(),ier=FG(),aer=UG(),oer=qG(),yl=SLe.exports=function(t){_Le.call(this),this._parser=new ier(t,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=t,this.writable=!0,this._parser.start()};ner.inherits(yl,_Le);yl.prototype._handleError=function(t){this.emit("error",t),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0};yl.prototype._inflateData=function(t){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=jG.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let r=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,n=Math.max(r,jG.Z_MIN_CHUNK);this._inflate=jG.createInflate({chunkSize:n});let s=r,i=this.emit.bind(this,"error");this._inflate.on("error",function(o){s&&i(o)}),this._filter.on("complete",this._complete.bind(this));let a=this._filter.write.bind(this._filter);this._inflate.on("data",function(o){s&&(o.length>s&&(o=o.slice(0,s)),s-=o.length,a(o))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(t)};yl.prototype._handleMetaData=function(t){this._metaData=t,this._bitmapInfo=Object.create(t),this._filter=new ser(this._bitmapInfo)};yl.prototype._handleTransColor=function(t){this._bitmapInfo.transColor=t};yl.prototype._handlePalette=function(t){this._bitmapInfo.palette=t};yl.prototype._simpleTransparency=function(){this._metaData.alpha=!0};yl.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};yl.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};yl.prototype._complete=function(t){if(this.errord)return;let e;try{let r=aer.dataToBitMap(t,this._bitmapInfo);e=oer(r,this._bitmapInfo),r=null}catch(r){this._handleError(r);return}this.emit("parsed",e)}});var CLe=E((yqr,ILe)=>{"use strict";var bc=zx();ILe.exports=function(t,e,r,n){let s=[bc.COLORTYPE_COLOR_ALPHA,bc.COLORTYPE_ALPHA].indexOf(n.colorType)!==-1;if(n.colorType===n.inputColorType){let m=function(){let h=new ArrayBuffer(2);return new DataView(h).setInt16(0,256,!0),new Int16Array(h)[0]!==256}();if(n.bitDepth===8||n.bitDepth===16&&m)return t}let i=n.bitDepth!==16?t:new Uint16Array(t.buffer),a=255,o=bc.COLORTYPE_TO_BPP_MAP[n.inputColorType];o===4&&!n.inputHasAlpha&&(o=3);let c=bc.COLORTYPE_TO_BPP_MAP[n.colorType];n.bitDepth===16&&(a=65535,c*=2);let u=Buffer.alloc(e*r*c),l=0,d=0,f=n.bgColor||{};f.red===void 0&&(f.red=a),f.green===void 0&&(f.green=a),f.blue===void 0&&(f.blue=a);function p(){let m,h,A,g=a;switch(n.inputColorType){case bc.COLORTYPE_COLOR_ALPHA:g=i[l+3],m=i[l],h=i[l+1],A=i[l+2];break;case bc.COLORTYPE_COLOR:m=i[l],h=i[l+1],A=i[l+2];break;case bc.COLORTYPE_ALPHA:g=i[l+1],m=i[l],h=m,A=m;break;case bc.COLORTYPE_GRAYSCALE:m=i[l],h=m,A=m;break;default:throw new Error("input color type:"+n.inputColorType+" is not supported at present")}return n.inputHasAlpha&&(s||(g/=a,m=Math.min(Math.max(Math.round((1-g)*f.red+g*m),0),a),h=Math.min(Math.max(Math.round((1-g)*f.green+g*h),0),a),A=Math.min(Math.max(Math.round((1-g)*f.blue+g*A),0),a))),{red:m,green:h,blue:A,alpha:g}}for(let m=0;m{"use strict";var TLe=BG();function cer(t,e,r,n,s){for(let i=0;i=i?t[e+a-i]:0,c=t[e+a]-o;n[s+a]=c}}function der(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=t[e+i]-a;s+=Math.abs(o)}return s}function fer(t,e,r,n,s){for(let i=0;i0?t[e+i-r]:0,o=t[e+i]-a;n[s+i]=o}}function per(t,e,r){let n=0,s=e+r;for(let i=e;i0?t[i-r]:0,o=t[i]-a;n+=Math.abs(o)}return n}function mer(t,e,r,n,s,i){for(let a=0;a=i?t[e+a-i]:0,c=e>0?t[e+a-r]:0,u=t[e+a]-(o+c>>1);n[s+a]=u}}function her(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=e>0?t[e+i-r]:0,c=t[e+i]-(a+o>>1);s+=Math.abs(c)}return s}function ger(t,e,r,n,s,i){for(let a=0;a=i?t[e+a-i]:0,c=e>0?t[e+a-r]:0,u=e>0&&a>=i?t[e+a-(r+i)]:0,l=t[e+a]-TLe(o,c,u);n[s+a]=l}}function Aer(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=e>0?t[e+i-r]:0,c=e>0&&i>=n?t[e+i-(r+n)]:0,u=t[e+i]-TLe(a,o,c);s+=Math.abs(u)}return s}var yer={0:cer,1:ler,2:fer,3:mer,4:ger},xer={0:uer,1:der,2:per,3:her,4:Aer};wLe.exports=function(t,e,r,n,s){let i;if(!("filterType"in n)||n.filterType===-1)i=[0,1,2,3,4];else if(typeof n.filterType=="number")i=[n.filterType];else throw new Error("unrecognised filter types");n.bitDepth===16&&(s*=2);let a=e*s,o=0,c=0,u=Buffer.alloc((a+1)*r),l=i[0];for(let d=0;d1){let f=1/0;for(let p=0;p{"use strict";var Qi=zx(),ber=$G(),Eer=CLe(),_er=RLe(),Ser=require("zlib"),E0=NLe.exports=function(t){if(this._options=t,t.deflateChunkSize=t.deflateChunkSize||32*1024,t.deflateLevel=t.deflateLevel!=null?t.deflateLevel:9,t.deflateStrategy=t.deflateStrategy!=null?t.deflateStrategy:3,t.inputHasAlpha=t.inputHasAlpha!=null?t.inputHasAlpha:!0,t.deflateFactory=t.deflateFactory||Ser.createDeflate,t.bitDepth=t.bitDepth||8,t.colorType=typeof t.colorType=="number"?t.colorType:Qi.COLORTYPE_COLOR_ALPHA,t.inputColorType=typeof t.inputColorType=="number"?t.inputColorType:Qi.COLORTYPE_COLOR_ALPHA,[Qi.COLORTYPE_GRAYSCALE,Qi.COLORTYPE_COLOR,Qi.COLORTYPE_COLOR_ALPHA,Qi.COLORTYPE_ALPHA].indexOf(t.colorType)===-1)throw new Error("option color type:"+t.colorType+" is not supported at present");if([Qi.COLORTYPE_GRAYSCALE,Qi.COLORTYPE_COLOR,Qi.COLORTYPE_COLOR_ALPHA,Qi.COLORTYPE_ALPHA].indexOf(t.inputColorType)===-1)throw new Error("option input color type:"+t.inputColorType+" is not supported at present");if(t.bitDepth!==8&&t.bitDepth!==16)throw new Error("option bit depth:"+t.bitDepth+" is not supported at present")};E0.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};E0.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};E0.prototype.filterData=function(t,e,r){let n=Eer(t,e,r,this._options),s=Qi.COLORTYPE_TO_BPP_MAP[this._options.colorType];return _er(n,e,r,this._options,s)};E0.prototype._packChunk=function(t,e){let r=e?e.length:0,n=Buffer.alloc(r+12);return n.writeUInt32BE(r,0),n.writeUInt32BE(t,4),e&&e.copy(n,8),n.writeInt32BE(ber.crc32(n.slice(4,n.length-4)),n.length-4),n};E0.prototype.packGAMA=function(t){let e=Buffer.alloc(4);return e.writeUInt32BE(Math.floor(t*Qi.GAMMA_DIVISION),0),this._packChunk(Qi.TYPE_gAMA,e)};E0.prototype.packIHDR=function(t,e){let r=Buffer.alloc(13);return r.writeUInt32BE(t,0),r.writeUInt32BE(e,4),r[8]=this._options.bitDepth,r[9]=this._options.colorType,r[10]=0,r[11]=0,r[12]=0,this._packChunk(Qi.TYPE_IHDR,r)};E0.prototype.packIDAT=function(t){return this._packChunk(Qi.TYPE_IDAT,t)};E0.prototype.packIEND=function(){return this._packChunk(Qi.TYPE_IEND,null)}});var DLe=E((Eqr,kLe)=>{"use strict";var ver=require("util"),OLe=require("stream"),Ier=zx(),Cer=HG(),PLe=kLe.exports=function(t){OLe.call(this);let e=t||{};this._packer=new Cer(e),this._deflate=this._packer.createDeflate(),this.readable=!0};ver.inherits(PLe,OLe);PLe.prototype.pack=function(t,e,r,n){this.emit("data",Buffer.from(Ier.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(e,r)),n&&this.emit("data",this._packer.packGAMA(n));let s=this._packer.filterData(t,e,r);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(i){this.emit("data",this._packer.packIDAT(i))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(s)}});var FLe=E((Uv,$Le)=>{"use strict";var BLe=require("assert").ok,Yx=require("zlib"),Ter=require("util"),LLe=require("buffer").kMaxLength;function $h(t){if(!(this instanceof $h))return new $h(t);t&&t.chunkSize=0,"have should not go down"),A>0){let g=n._buffer.slice(n._offset,n._offset+A);if(n._offset+=A,g.length>a&&(g=g.slice(0,a)),c.push(g),u+=g.length,a-=g.length,a===0)return!1}return(h===0||n._offset>=n._chunkSize)&&(i=n._chunkSize,n._offset=0,n._buffer=Buffer.allocUnsafe(n._chunkSize)),h===0?(o+=s-m,s=m,!0):!1}BLe(this._handle,"zlib binding closed");let f;do f=this._handle.writeSync(e,t,o,s,this._buffer,this._offset,i),f=f||this._writeState;while(!this._hadError&&d(f[0],f[1]));if(this._hadError)throw l;if(u>=LLe)throw MLe(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+LLe.toString(16)+" bytes");let p=Buffer.concat(c,u);return MLe(this),p};Ter.inherits($h,Yx.Inflate);function Rer(t,e){if(typeof e=="string"&&(e=Buffer.from(e)),!(e instanceof Buffer))throw new TypeError("Not a string or buffer");let r=t._finishFlushFlag;return r==null&&(r=Yx.Z_FINISH),t._processChunk(e,r)}function WLe(t,e){return Rer(new $h(e),t)}$Le.exports=Uv=WLe;Uv.Inflate=$h;Uv.createInflate=wer;Uv.inflateSync=WLe});var QG=E((_qr,qLe)=>{"use strict";var ULe=qLe.exports=function(t){this._buffer=t,this._reads=[]};ULe.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e})};ULe.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let t=this._reads[0];if(this._buffer.length&&(this._buffer.length>=t.length||t.allowLess)){this._reads.shift();let e=this._buffer;this._buffer=e.slice(t.length),t.func.call(this,e.slice(0,t.length))}else break}if(this._reads.length>0)return new Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)return new Error("unrecognised content at end of stream")}});var HLe=E(jLe=>{"use strict";var Ner=QG(),Oer=LG();jLe.process=function(t,e){let r=[],n=new Ner(t);return new Oer(e,{read:n.read.bind(n),write:function(i){r.push(i)},complete:function(){}}).start(),n.process(),Buffer.concat(r)}});var VLe=E((vqr,KLe)=>{"use strict";var QLe=!0,GLe=require("zlib"),Per=FLe();GLe.deflateSync||(QLe=!1);var ker=QG(),Der=HLe(),Ber=FG(),Ler=UG(),Mer=qG();KLe.exports=function(t,e){if(!QLe)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r;function n(x){r=x}let s;function i(x){s=x}function a(x){s.transColor=x}function o(x){s.palette=x}function c(){s.alpha=!0}let u;function l(x){u=x}let d=[];function f(x){d.push(x)}let p=new ker(t);if(new Ber(e,{read:p.read.bind(p),error:n,metadata:i,gamma:l,palette:o,transColor:a,inflateData:f,simpleTransparency:c}).start(),p.process(),r)throw r;let h=Buffer.concat(d);d.length=0;let A;if(s.interlace)A=GLe.inflateSync(h);else{let v=((s.width*s.bpp*s.depth+7>>3)+1)*s.height;A=Per(h,{chunkSize:v,maxLength:v})}if(h=null,!A||!A.length)throw new Error("bad png - invalid inflate data response");let g=Der.process(A,s);h=null;let b=Ler.dataToBitMap(g,s);g=null;let y=Mer(b,s);return s.data=y,s.gamma=u||0,s}});var XLe=E((Iqr,JLe)=>{"use strict";var zLe=!0,YLe=require("zlib");YLe.deflateSync||(zLe=!1);var Wer=zx(),$er=HG();JLe.exports=function(t,e){if(!zLe)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r=e||{},n=new $er(r),s=[];s.push(Buffer.from(Wer.PNG_SIGNATURE)),s.push(n.packIHDR(t.width,t.height)),t.gamma&&s.push(n.packGAMA(t.gamma));let i=n.filterData(t.data,t.width,t.height),a=YLe.deflateSync(i,n.getDeflateOptions());if(i=null,!a||!a.length)throw new Error("bad png - invalid compressed data response");return s.push(n.packIDAT(a)),s.push(n.packIEND()),Buffer.concat(s)}});var ZLe=E(GG=>{"use strict";var Fer=VLe(),Uer=XLe();GG.read=function(t,e){return Fer(t,e||{})};GG.write=function(t,e){return Uer(t,e)}});var r4e=E(t4e=>{"use strict";var qer=require("util"),e4e=require("stream"),jer=vLe(),Her=DLe(),Qer=ZLe(),da=t4e.PNG=function(t){e4e.call(this),t=t||{},this.width=t.width|0,this.height=t.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,t.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new jer(t),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(e){this.data=e,this.emit("parsed",e)}.bind(this)),this._packer=new Her(t),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};qer.inherits(da,e4e);da.sync=Qer;da.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)};da.prototype.parse=function(t,e){if(e){let r,n;r=function(s){this.removeListener("error",n),this.data=s,e(null,this)}.bind(this),n=function(s){this.removeListener("parsed",r),e(s,null)}.bind(this),this.once("parsed",r),this.once("error",n)}return this.end(t),this};da.prototype.write=function(t){return this._parser.write(t),!0};da.prototype.end=function(t){this._parser.end(t)};da.prototype._metadata=function(t){this.width=t.width,this.height=t.height,this.emit("metadata",t)};da.prototype._gamma=function(t){this.gamma=t};da.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};da.bitblt=function(t,e,r,n,s,i,a,o){if(r|=0,n|=0,s|=0,i|=0,a|=0,o|=0,r>t.width||n>t.height||r+s>t.width||n+i>t.height)throw new Error("bitblt reading outside image");if(a>e.width||o>e.height||a+s>e.width||o+i>e.height)throw new Error("bitblt writing outside image");for(let c=0;c{function n4e(t){if(typeof t=="number"&&(t=t.toString()),typeof t!="string")throw new Error("Color should be defined as hex string");let e=t.slice().replace("#","").split("");if(e.length<3||e.length===5||e.length>8)throw new Error("Invalid hex color: "+t);(e.length===3||e.length===4)&&(e=Array.prototype.concat.apply([],e.map(function(n){return[n,n]}))),e.length===6&&e.push("F","F");let r=parseInt(e.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+e.slice(0,6).join("")}}Fh.getOptions=function(e){e||(e={}),e.color||(e.color={});let r=typeof e.margin>"u"||e.margin===null||e.margin<0?4:e.margin,n=e.width&&e.width>=21?e.width:void 0,s=e.scale||4;return{width:n,scale:n?4:s,margin:r,color:{dark:n4e(e.color.dark||"#000000ff"),light:n4e(e.color.light||"#ffffffff")},type:e.type,rendererOpts:e.rendererOpts||{}}};Fh.getScale=function(e,r){return r.width&&r.width>=e+r.margin*2?r.width/(e+r.margin*2):r.scale};Fh.getImageWidth=function(e,r){let n=Fh.getScale(e,r);return Math.floor((e+r.margin*2)*n)};Fh.qrToImageData=function(e,r,n){let s=r.modules.size,i=r.modules.data,a=Fh.getScale(s,n),o=Math.floor((s+n.margin*2)*a),c=n.margin*a,u=[n.color.light,n.color.dark];for(let l=0;l=c&&d>=c&&l{var Ger=require("fs"),Ker=r4e().PNG,KG=qv();xl.render=function(e,r){let n=KG.getOptions(r),s=n.rendererOpts,i=KG.getImageWidth(e.modules.size,n);s.width=i,s.height=i;let a=new Ker(s);return KG.qrToImageData(a.data,e,n),a};xl.renderToDataURL=function(e,r,n){typeof n>"u"&&(n=r,r=void 0),xl.renderToBuffer(e,r,function(s,i){s&&n(s);let a="data:image/png;base64,";a+=i.toString("base64"),n(null,a)})};xl.renderToBuffer=function(e,r,n){typeof n>"u"&&(n=r,r=void 0);let s=xl.render(e,r),i=[];s.on("error",n),s.on("data",function(a){i.push(a)}),s.on("end",function(){n(null,Buffer.concat(i))}),s.pack()};xl.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=!1,a=(...c)=>{i||(i=!0,s.apply(null,c))},o=Ger.createWriteStream(e);o.on("error",a),o.on("close",a),xl.renderToFileStream(o,r,n)};xl.renderToFileStream=function(e,r,n){xl.render(r,n).pack().pipe(e)}});var i4e=E(k3=>{var Ver=qv(),zer={WW:" ",WB:"\u2584",BB:"\u2588",BW:"\u2580"},Yer={BB:" ",BW:"\u2584",WW:"\u2588",WB:"\u2580"};function Jer(t,e,r){return t&&e?r.BB:t&&!e?r.BW:!t&&e?r.WB:r.WW}k3.render=function(t,e,r){let n=Ver.getOptions(e),s=zer;(n.color.dark.hex==="#ffffff"||n.color.light.hex==="#000000")&&(s=Yer);let i=t.modules.size,a=t.modules.data,o="",c=Array(i+n.margin*2+1).join(s.WW);c=Array(n.margin/2+1).join(c+` -`);let u=Array(n.margin+1).join(s.WW);o+=c;for(let l=0;l"u"&&(s=n,n=void 0);let i=require("fs"),a=k3.render(r,n);i.writeFile(e,a,s)}});var o4e=E(a4e=>{a4e.render=function(t,e,r){let n=t.modules.size,s=t.modules.data,i="\x1B[40m \x1B[0m",a="\x1B[47m \x1B[0m",o="",c=Array(n+3).join(a),u=Array(2).join(a);o+=c+` +`);let a=UZt(e,r,s),o=kk.getSymbolSize(e),c=new NZt(o);return BZt(c,e),MZt(c),WZt(c,e),RG(c,r,0),e>=7&&$Zt(c,e),FZt(c,a),isNaN(n)&&(n=NG.getBestMask(c,RG.bind(null,c,r))),NG.applyMask(n,c),RG(c,r,n),{modules:c,version:e,errorCorrectionLevel:r,maskPattern:n,segments:s}}lBe.create=function(e,r){if(typeof e>"u"||e==="")throw new Error("No input text");let n=TG.M,s,i;return typeof r<"u"&&(n=TG.from(r.errorCorrectionLevel,TG.M),s=Dk.from(r.version),i=NG.from(r.maskPattern),r.toSJISFunc&&kk.setToSJISFunction(r.toSJISFunc)),jZt(e,s,n,i)}});var DG=E((p9r,fBe)=>{"use strict";var HZt=require("util"),dBe=require("stream"),du=fBe.exports=function(){dBe.call(this),this._buffers=[],this._buffered=0,this._reads=[],this._paused=!1,this._encoding="utf8",this.writable=!0};HZt.inherits(du,dBe);du.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e}),process.nextTick(function(){this._process(),this._paused&&this._reads&&this._reads.length>0&&(this._paused=!1,this.emit("drain"))}.bind(this))};du.prototype.write=function(t,e){if(!this.writable)return this.emit("error",new Error("Stream not writable")),!1;let r;return Buffer.isBuffer(t)?r=t:r=Buffer.from(t,e||this._encoding),this._buffers.push(r),this._buffered+=r.length,this._process(),this._reads&&this._reads.length===0&&(this._paused=!0),this.writable&&!this._paused};du.prototype.end=function(t,e){t&&this.write(t,e),this.writable=!1,this._buffers&&(this._buffers.length===0?this._end():(this._buffers.push(null),this._process()))};du.prototype.destroySoon=du.prototype.end;du.prototype._end=function(){this._reads.length>0&&this.emit("error",new Error("Unexpected end of input")),this.destroy()};du.prototype.destroy=function(){this._buffers&&(this.writable=!1,this._reads=null,this._buffers=null,this.emit("close"))};du.prototype._processReadAllowingLess=function(t){this._reads.shift();let e=this._buffers[0];e.length>t.length?(this._buffered-=t.length,this._buffers[0]=e.slice(t.length),t.func.call(this,e.slice(0,t.length))):(this._buffered-=e.length,this._buffers.shift(),t.func.call(this,e))};du.prototype._processRead=function(t){this._reads.shift();let e=0,r=0,n=Buffer.alloc(t.length);for(;e0&&this._buffers.splice(0,r),this._buffered-=t.length,t.func.call(this,n)};du.prototype._process=function(){try{for(;this._buffered>0&&this._reads&&this._reads.length>0;){let t=this._reads[0];if(t.allowLess)this._processReadAllowingLess(t);else if(this._buffered>=t.length)this._processRead(t);else break}this._buffers&&!this.writable&&this._end()}catch(t){this.emit("error",t)}}});var LG=E(kG=>{"use strict";var E0=[{x:[0],y:[0]},{x:[4],y:[0]},{x:[0,4],y:[4]},{x:[2,6],y:[0,4]},{x:[0,2,4,6],y:[2,6]},{x:[1,3,5,7],y:[0,2,4,6]},{x:[0,1,2,3,4,5,6,7],y:[1,3,5,7]}];kG.getImagePasses=function(t,e){let r=[],n=t%8,s=e%8,i=(t-n)/8,a=(e-s)/8;for(let o=0;o0&&l>0&&r.push({width:u,height:l,index:o})}return r};kG.getInterlaceIterator=function(t){return function(e,r,n){let s=e%E0[n].x.length,i=(e-s)/E0[n].x.length*8+E0[n].x[s],a=r%E0[n].y.length,o=(r-a)/E0[n].y.length*8+E0[n].y[a];return i*4+o*t*4}}});var BG=E((h9r,pBe)=>{"use strict";pBe.exports=function(e,r,n){let s=e+r-n,i=Math.abs(s-e),a=Math.abs(s-r),o=Math.abs(s-n);return i<=a&&i<=o?e:a<=o?r:n}});var MG=E((g9r,hBe)=>{"use strict";var QZt=LG(),GZt=BG();function mBe(t,e,r){let n=t*e;return r!==8&&(n=Math.ceil(n/(8/r))),n}var zx=hBe.exports=function(t,e){let r=t.width,n=t.height,s=t.interlace,i=t.bpp,a=t.depth;if(this.read=e.read,this.write=e.write,this.complete=e.complete,this._imageIndex=0,this._images=[],s){let o=QZt.getImagePasses(r,n);for(let c=0;cs?e[i-n]:0;e[i]=a+o}};zx.prototype._unFilterType2=function(t,e,r){let n=this._lastLine;for(let s=0;ss?e[a-n]:0,l=Math.floor((u+c)/2);e[a]=o+l}};zx.prototype._unFilterType4=function(t,e,r){let n=this._xComparison,s=n-1,i=this._lastLine;for(let a=0;as?e[a-n]:0,l=a>s&&i?i[a-n]:0,d=GZt(u,c,l);e[a]=o+d}};zx.prototype._reverseFilterLine=function(t){let e=t[0],r,n=this._images[this._imageIndex],s=n.byteWidth;if(e===0)r=t.slice(1,s+1);else switch(r=Buffer.alloc(s),e){case 1:this._unFilterType1(t,r,s);break;case 2:this._unFilterType2(t,r,s);break;case 3:this._unFilterType3(t,r,s);break;case 4:this._unFilterType4(t,r,s);break;default:throw new Error("Unrecognised filter type - "+e)}this.write(r),n.lineIndex++,n.lineIndex>=n.height?(this._lastLine=null,this._imageIndex++,n=this._images[this._imageIndex]):this._lastLine=r,n?this.read(n.byteWidth+1,this._reverseFilterLine.bind(this)):(this._lastLine=null,this.complete())}});var yBe=E((A9r,ABe)=>{"use strict";var VZt=require("util"),gBe=DG(),zZt=MG(),KZt=ABe.exports=function(t){gBe.call(this);let e=[],r=this;this._filter=new zZt(t,{read:this.read.bind(this),write:function(n){e.push(n)},complete:function(){r.emit("complete",Buffer.concat(e))}}),this._filter.start()};VZt.inherits(KZt,gBe)});var Kx=E((y9r,xBe)=>{"use strict";xBe.exports={PNG_SIGNATURE:[137,80,78,71,13,10,26,10],TYPE_IHDR:1229472850,TYPE_IEND:1229278788,TYPE_IDAT:1229209940,TYPE_PLTE:1347179589,TYPE_tRNS:1951551059,TYPE_gAMA:1732332865,COLORTYPE_GRAYSCALE:0,COLORTYPE_PALETTE:1,COLORTYPE_COLOR:2,COLORTYPE_ALPHA:4,COLORTYPE_PALETTE_COLOR:3,COLORTYPE_COLOR_ALPHA:6,COLORTYPE_TO_BPP_MAP:{0:1,2:3,3:1,4:2,6:4},GAMMA_DIVISION:1e5}});var FG=E((x9r,bBe)=>{"use strict";var WG=[];(function(){for(let t=0;t<256;t++){let e=t;for(let r=0;r<8;r++)e&1?e=3988292384^e>>>1:e=e>>>1;WG[t]=e}})();var $G=bBe.exports=function(){this._crc=-1};$G.prototype.write=function(t){for(let e=0;e>>8;return!0};$G.prototype.crc32=function(){return this._crc^-1};$G.crc32=function(t){let e=-1;for(let r=0;r>>8;return e^-1}});var UG=E((b9r,EBe)=>{"use strict";var Ps=Kx(),YZt=FG(),ti=EBe.exports=function(t,e){this._options=t,t.checkCRC=t.checkCRC!==!1,this._hasIHDR=!1,this._hasIEND=!1,this._emittedHeadersFinished=!1,this._palette=[],this._colorType=0,this._chunks={},this._chunks[Ps.TYPE_IHDR]=this._handleIHDR.bind(this),this._chunks[Ps.TYPE_IEND]=this._handleIEND.bind(this),this._chunks[Ps.TYPE_IDAT]=this._handleIDAT.bind(this),this._chunks[Ps.TYPE_PLTE]=this._handlePLTE.bind(this),this._chunks[Ps.TYPE_tRNS]=this._handleTRNS.bind(this),this._chunks[Ps.TYPE_gAMA]=this._handleGAMA.bind(this),this.read=e.read,this.error=e.error,this.metadata=e.metadata,this.gamma=e.gamma,this.transColor=e.transColor,this.palette=e.palette,this.parsed=e.parsed,this.inflateData=e.inflateData,this.finished=e.finished,this.simpleTransparency=e.simpleTransparency,this.headersFinished=e.headersFinished||function(){}};ti.prototype.start=function(){this.read(Ps.PNG_SIGNATURE.length,this._parseSignature.bind(this))};ti.prototype._parseSignature=function(t){let e=Ps.PNG_SIGNATURE;for(let r=0;rthis._palette.length){this.error(new Error("More transparent colors than palette size"));return}for(let e=0;e0?this._handleIDAT(r):this._handleChunkEnd()};ti.prototype._handleIEND=function(t){this.read(t,this._parseIEND.bind(this))};ti.prototype._parseIEND=function(t){this._crc.write(t),this._hasIEND=!0,this._handleChunkEnd(),this.finished&&this.finished()}});var qG=E(SBe=>{"use strict";var _Be=LG(),JZt=[function(){},function(t,e,r,n){if(n===e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=255},function(t,e,r,n){if(n+1>=e.length)throw new Error("Ran out of data");let s=e[n];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=e[n+1]},function(t,e,r,n){if(n+2>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=255},function(t,e,r,n){if(n+3>=e.length)throw new Error("Ran out of data");t[r]=e[n],t[r+1]=e[n+1],t[r+2]=e[n+2],t[r+3]=e[n+3]}],XZt=[function(){},function(t,e,r,n){let s=e[0];t[r]=s,t[r+1]=s,t[r+2]=s,t[r+3]=n},function(t,e,r){let n=e[0];t[r]=n,t[r+1]=n,t[r+2]=n,t[r+3]=e[1]},function(t,e,r,n){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=n},function(t,e,r){t[r]=e[0],t[r+1]=e[1],t[r+2]=e[2],t[r+3]=e[3]}];function ZZt(t,e){let r=[],n=0;function s(){if(n===t.length)throw new Error("Ran out of data");let i=t[n];n++;let a,o,c,u,l,d,f,p;switch(e){default:throw new Error("unrecognised depth");case 16:f=t[n],n++,r.push((i<<8)+f);break;case 4:f=i&15,p=i>>4,r.push(p,f);break;case 2:l=i&3,d=i>>2&3,f=i>>4&3,p=i>>6&3,r.push(p,f,d,l);break;case 1:a=i&1,o=i>>1&1,c=i>>2&1,u=i>>3&1,l=i>>4&1,d=i>>5&1,f=i>>6&1,p=i>>7&1,r.push(p,f,d,l,u,c,o,a);break}}return{get:function(i){for(;r.length{"use strict";function rer(t,e,r,n,s){let i=0;for(let a=0;a{"use strict";var ier=require("util"),HG=require("zlib"),CBe=DG(),aer=yBe(),oer=UG(),cer=qG(),uer=jG(),yl=IBe.exports=function(t){CBe.call(this),this._parser=new oer(t,{read:this.read.bind(this),error:this._handleError.bind(this),metadata:this._handleMetaData.bind(this),gamma:this.emit.bind(this,"gamma"),palette:this._handlePalette.bind(this),transColor:this._handleTransColor.bind(this),finished:this._finished.bind(this),inflateData:this._inflateData.bind(this),simpleTransparency:this._simpleTransparency.bind(this),headersFinished:this._headersFinished.bind(this)}),this._options=t,this.writable=!0,this._parser.start()};ier.inherits(yl,CBe);yl.prototype._handleError=function(t){this.emit("error",t),this.writable=!1,this.destroy(),this._inflate&&this._inflate.destroy&&this._inflate.destroy(),this._filter&&(this._filter.destroy(),this._filter.on("error",function(){})),this.errord=!0};yl.prototype._inflateData=function(t){if(!this._inflate)if(this._bitmapInfo.interlace)this._inflate=HG.createInflate(),this._inflate.on("error",this.emit.bind(this,"error")),this._filter.on("complete",this._complete.bind(this)),this._inflate.pipe(this._filter);else{let r=((this._bitmapInfo.width*this._bitmapInfo.bpp*this._bitmapInfo.depth+7>>3)+1)*this._bitmapInfo.height,n=Math.max(r,HG.Z_MIN_CHUNK);this._inflate=HG.createInflate({chunkSize:n});let s=r,i=this.emit.bind(this,"error");this._inflate.on("error",function(o){s&&i(o)}),this._filter.on("complete",this._complete.bind(this));let a=this._filter.write.bind(this._filter);this._inflate.on("data",function(o){s&&(o.length>s&&(o=o.slice(0,s)),s-=o.length,a(o))}),this._inflate.on("end",this._filter.end.bind(this._filter))}this._inflate.write(t)};yl.prototype._handleMetaData=function(t){this._metaData=t,this._bitmapInfo=Object.create(t),this._filter=new aer(this._bitmapInfo)};yl.prototype._handleTransColor=function(t){this._bitmapInfo.transColor=t};yl.prototype._handlePalette=function(t){this._bitmapInfo.palette=t};yl.prototype._simpleTransparency=function(){this._metaData.alpha=!0};yl.prototype._headersFinished=function(){this.emit("metadata",this._metaData)};yl.prototype._finished=function(){this.errord||(this._inflate?this._inflate.end():this.emit("error","No Inflate block"))};yl.prototype._complete=function(t){if(this.errord)return;let e;try{let r=cer.dataToBitMap(t,this._bitmapInfo);e=uer(r,this._bitmapInfo),r=null}catch(r){this._handleError(r);return}this.emit("parsed",e)}});var RBe=E((v9r,wBe)=>{"use strict";var xc=Kx();wBe.exports=function(t,e,r,n){let s=[xc.COLORTYPE_COLOR_ALPHA,xc.COLORTYPE_ALPHA].indexOf(n.colorType)!==-1;if(n.colorType===n.inputColorType){let m=function(){let h=new ArrayBuffer(2);return new DataView(h).setInt16(0,256,!0),new Int16Array(h)[0]!==256}();if(n.bitDepth===8||n.bitDepth===16&&m)return t}let i=n.bitDepth!==16?t:new Uint16Array(t.buffer),a=255,o=xc.COLORTYPE_TO_BPP_MAP[n.inputColorType];o===4&&!n.inputHasAlpha&&(o=3);let c=xc.COLORTYPE_TO_BPP_MAP[n.colorType];n.bitDepth===16&&(a=65535,c*=2);let u=Buffer.alloc(e*r*c),l=0,d=0,f=n.bgColor||{};f.red===void 0&&(f.red=a),f.green===void 0&&(f.green=a),f.blue===void 0&&(f.blue=a);function p(){let m,h,A,g=a;switch(n.inputColorType){case xc.COLORTYPE_COLOR_ALPHA:g=i[l+3],m=i[l],h=i[l+1],A=i[l+2];break;case xc.COLORTYPE_COLOR:m=i[l],h=i[l+1],A=i[l+2];break;case xc.COLORTYPE_ALPHA:g=i[l+1],m=i[l],h=m,A=m;break;case xc.COLORTYPE_GRAYSCALE:m=i[l],h=m,A=m;break;default:throw new Error("input color type:"+n.inputColorType+" is not supported at present")}return n.inputHasAlpha&&(s||(g/=a,m=Math.min(Math.max(Math.round((1-g)*f.red+g*m),0),a),h=Math.min(Math.max(Math.round((1-g)*f.green+g*h),0),a),A=Math.min(Math.max(Math.round((1-g)*f.blue+g*A),0),a))),{red:m,green:h,blue:A,alpha:g}}for(let m=0;m{"use strict";var NBe=BG();function ler(t,e,r,n,s){for(let i=0;i=i?t[e+a-i]:0,c=t[e+a]-o;n[s+a]=c}}function per(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=t[e+i]-a;s+=Math.abs(o)}return s}function mer(t,e,r,n,s){for(let i=0;i0?t[e+i-r]:0,o=t[e+i]-a;n[s+i]=o}}function her(t,e,r){let n=0,s=e+r;for(let i=e;i0?t[i-r]:0,o=t[i]-a;n+=Math.abs(o)}return n}function ger(t,e,r,n,s,i){for(let a=0;a=i?t[e+a-i]:0,c=e>0?t[e+a-r]:0,u=t[e+a]-(o+c>>1);n[s+a]=u}}function Aer(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=e>0?t[e+i-r]:0,c=t[e+i]-(a+o>>1);s+=Math.abs(c)}return s}function yer(t,e,r,n,s,i){for(let a=0;a=i?t[e+a-i]:0,c=e>0?t[e+a-r]:0,u=e>0&&a>=i?t[e+a-(r+i)]:0,l=t[e+a]-NBe(o,c,u);n[s+a]=l}}function xer(t,e,r,n){let s=0;for(let i=0;i=n?t[e+i-n]:0,o=e>0?t[e+i-r]:0,c=e>0&&i>=n?t[e+i-(r+n)]:0,u=t[e+i]-NBe(a,o,c);s+=Math.abs(u)}return s}var ber={0:ler,1:fer,2:mer,3:ger,4:yer},Eer={0:der,1:per,2:her,3:Aer,4:xer};OBe.exports=function(t,e,r,n,s){let i;if(!("filterType"in n)||n.filterType===-1)i=[0,1,2,3,4];else if(typeof n.filterType=="number")i=[n.filterType];else throw new Error("unrecognised filter types");n.bitDepth===16&&(s*=2);let a=e*s,o=0,c=0,u=Buffer.alloc((a+1)*r),l=i[0];for(let d=0;d1){let f=1/0;for(let p=0;p{"use strict";var Hi=Kx(),_er=FG(),Ser=RBe(),ver=PBe(),Cer=require("zlib"),_0=DBe.exports=function(t){if(this._options=t,t.deflateChunkSize=t.deflateChunkSize||32*1024,t.deflateLevel=t.deflateLevel!=null?t.deflateLevel:9,t.deflateStrategy=t.deflateStrategy!=null?t.deflateStrategy:3,t.inputHasAlpha=t.inputHasAlpha!=null?t.inputHasAlpha:!0,t.deflateFactory=t.deflateFactory||Cer.createDeflate,t.bitDepth=t.bitDepth||8,t.colorType=typeof t.colorType=="number"?t.colorType:Hi.COLORTYPE_COLOR_ALPHA,t.inputColorType=typeof t.inputColorType=="number"?t.inputColorType:Hi.COLORTYPE_COLOR_ALPHA,[Hi.COLORTYPE_GRAYSCALE,Hi.COLORTYPE_COLOR,Hi.COLORTYPE_COLOR_ALPHA,Hi.COLORTYPE_ALPHA].indexOf(t.colorType)===-1)throw new Error("option color type:"+t.colorType+" is not supported at present");if([Hi.COLORTYPE_GRAYSCALE,Hi.COLORTYPE_COLOR,Hi.COLORTYPE_COLOR_ALPHA,Hi.COLORTYPE_ALPHA].indexOf(t.inputColorType)===-1)throw new Error("option input color type:"+t.inputColorType+" is not supported at present");if(t.bitDepth!==8&&t.bitDepth!==16)throw new Error("option bit depth:"+t.bitDepth+" is not supported at present")};_0.prototype.getDeflateOptions=function(){return{chunkSize:this._options.deflateChunkSize,level:this._options.deflateLevel,strategy:this._options.deflateStrategy}};_0.prototype.createDeflate=function(){return this._options.deflateFactory(this.getDeflateOptions())};_0.prototype.filterData=function(t,e,r){let n=Ser(t,e,r,this._options),s=Hi.COLORTYPE_TO_BPP_MAP[this._options.colorType];return ver(n,e,r,this._options,s)};_0.prototype._packChunk=function(t,e){let r=e?e.length:0,n=Buffer.alloc(r+12);return n.writeUInt32BE(r,0),n.writeUInt32BE(t,4),e&&e.copy(n,8),n.writeInt32BE(_er.crc32(n.slice(4,n.length-4)),n.length-4),n};_0.prototype.packGAMA=function(t){let e=Buffer.alloc(4);return e.writeUInt32BE(Math.floor(t*Hi.GAMMA_DIVISION),0),this._packChunk(Hi.TYPE_gAMA,e)};_0.prototype.packIHDR=function(t,e){let r=Buffer.alloc(13);return r.writeUInt32BE(t,0),r.writeUInt32BE(e,4),r[8]=this._options.bitDepth,r[9]=this._options.colorType,r[10]=0,r[11]=0,r[12]=0,this._packChunk(Hi.TYPE_IHDR,r)};_0.prototype.packIDAT=function(t){return this._packChunk(Hi.TYPE_IDAT,t)};_0.prototype.packIEND=function(){return this._packChunk(Hi.TYPE_IEND,null)}});var MBe=E((T9r,BBe)=>{"use strict";var Ier=require("util"),kBe=require("stream"),Ter=Kx(),wer=QG(),LBe=BBe.exports=function(t){kBe.call(this);let e=t||{};this._packer=new wer(e),this._deflate=this._packer.createDeflate(),this.readable=!0};Ier.inherits(LBe,kBe);LBe.prototype.pack=function(t,e,r,n){this.emit("data",Buffer.from(Ter.PNG_SIGNATURE)),this.emit("data",this._packer.packIHDR(e,r)),n&&this.emit("data",this._packer.packGAMA(n));let s=this._packer.filterData(t,e,r);this._deflate.on("error",this.emit.bind(this,"error")),this._deflate.on("data",function(i){this.emit("data",this._packer.packIDAT(i))}.bind(this)),this._deflate.on("end",function(){this.emit("data",this._packer.packIEND()),this.emit("end")}.bind(this)),this._deflate.end(s)}});var jBe=E((qv,qBe)=>{"use strict";var WBe=require("assert").ok,Yx=require("zlib"),Rer=require("util"),$Be=require("buffer").kMaxLength;function $h(t){if(!(this instanceof $h))return new $h(t);t&&t.chunkSize=0,"have should not go down"),A>0){let g=n._buffer.slice(n._offset,n._offset+A);if(n._offset+=A,g.length>a&&(g=g.slice(0,a)),c.push(g),u+=g.length,a-=g.length,a===0)return!1}return(h===0||n._offset>=n._chunkSize)&&(i=n._chunkSize,n._offset=0,n._buffer=Buffer.allocUnsafe(n._chunkSize)),h===0?(o+=s-m,s=m,!0):!1}WBe(this._handle,"zlib binding closed");let f;do f=this._handle.writeSync(e,t,o,s,this._buffer,this._offset,i),f=f||this._writeState;while(!this._hadError&&d(f[0],f[1]));if(this._hadError)throw l;if(u>=$Be)throw FBe(this),new RangeError("Cannot create final Buffer. It would be larger than 0x"+$Be.toString(16)+" bytes");let p=Buffer.concat(c,u);return FBe(this),p};Rer.inherits($h,Yx.Inflate);function Oer(t,e){if(typeof e=="string"&&(e=Buffer.from(e)),!(e instanceof Buffer))throw new TypeError("Not a string or buffer");let r=t._finishFlushFlag;return r==null&&(r=Yx.Z_FINISH),t._processChunk(e,r)}function UBe(t,e){return Oer(new $h(e),t)}qBe.exports=qv=UBe;qv.Inflate=$h;qv.createInflate=Ner;qv.inflateSync=UBe});var GG=E((w9r,QBe)=>{"use strict";var HBe=QBe.exports=function(t){this._buffer=t,this._reads=[]};HBe.prototype.read=function(t,e){this._reads.push({length:Math.abs(t),allowLess:t<0,func:e})};HBe.prototype.process=function(){for(;this._reads.length>0&&this._buffer.length;){let t=this._reads[0];if(this._buffer.length&&(this._buffer.length>=t.length||t.allowLess)){this._reads.shift();let e=this._buffer;this._buffer=e.slice(t.length),t.func.call(this,e.slice(0,t.length))}else break}if(this._reads.length>0)return new Error("There are some read requests waitng on finished stream");if(this._buffer.length>0)return new Error("unrecognised content at end of stream")}});var VBe=E(GBe=>{"use strict";var Per=GG(),Der=MG();GBe.process=function(t,e){let r=[],n=new Per(t);return new Der(e,{read:n.read.bind(n),write:function(i){r.push(i)},complete:function(){}}).start(),n.process(),Buffer.concat(r)}});var JBe=E((N9r,YBe)=>{"use strict";var zBe=!0,KBe=require("zlib"),ker=jBe();KBe.deflateSync||(zBe=!1);var Ler=GG(),Ber=VBe(),Mer=UG(),Wer=qG(),$er=jG();YBe.exports=function(t,e){if(!zBe)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r;function n(x){r=x}let s;function i(x){s=x}function a(x){s.transColor=x}function o(x){s.palette=x}function c(){s.alpha=!0}let u;function l(x){u=x}let d=[];function f(x){d.push(x)}let p=new Ler(t);if(new Mer(e,{read:p.read.bind(p),error:n,metadata:i,gamma:l,palette:o,transColor:a,inflateData:f,simpleTransparency:c}).start(),p.process(),r)throw r;let h=Buffer.concat(d);d.length=0;let A;if(s.interlace)A=KBe.inflateSync(h);else{let v=((s.width*s.bpp*s.depth+7>>3)+1)*s.height;A=ker(h,{chunkSize:v,maxLength:v})}if(h=null,!A||!A.length)throw new Error("bad png - invalid inflate data response");let g=Ber.process(A,s);h=null;let b=Wer.dataToBitMap(g,s);g=null;let y=$er(b,s);return s.data=y,s.gamma=u||0,s}});var t4e=E((O9r,e4e)=>{"use strict";var XBe=!0,ZBe=require("zlib");ZBe.deflateSync||(XBe=!1);var Fer=Kx(),Uer=QG();e4e.exports=function(t,e){if(!XBe)throw new Error("To use the sync capability of this library in old node versions, please pin pngjs to v2.3.0");let r=e||{},n=new Uer(r),s=[];s.push(Buffer.from(Fer.PNG_SIGNATURE)),s.push(n.packIHDR(t.width,t.height)),t.gamma&&s.push(n.packGAMA(t.gamma));let i=n.filterData(t.data,t.width,t.height),a=ZBe.deflateSync(i,n.getDeflateOptions());if(i=null,!a||!a.length)throw new Error("bad png - invalid compressed data response");return s.push(n.packIDAT(a)),s.push(n.packIEND()),Buffer.concat(s)}});var r4e=E(VG=>{"use strict";var qer=JBe(),jer=t4e();VG.read=function(t,e){return qer(t,e||{})};VG.write=function(t,e){return jer(t,e)}});var i4e=E(s4e=>{"use strict";var Her=require("util"),n4e=require("stream"),Qer=TBe(),Ger=MBe(),Ver=r4e(),da=s4e.PNG=function(t){n4e.call(this),t=t||{},this.width=t.width|0,this.height=t.height|0,this.data=this.width>0&&this.height>0?Buffer.alloc(4*this.width*this.height):null,t.fill&&this.data&&this.data.fill(0),this.gamma=0,this.readable=this.writable=!0,this._parser=new Qer(t),this._parser.on("error",this.emit.bind(this,"error")),this._parser.on("close",this._handleClose.bind(this)),this._parser.on("metadata",this._metadata.bind(this)),this._parser.on("gamma",this._gamma.bind(this)),this._parser.on("parsed",function(e){this.data=e,this.emit("parsed",e)}.bind(this)),this._packer=new Ger(t),this._packer.on("data",this.emit.bind(this,"data")),this._packer.on("end",this.emit.bind(this,"end")),this._parser.on("close",this._handleClose.bind(this)),this._packer.on("error",this.emit.bind(this,"error"))};Her.inherits(da,n4e);da.sync=Ver;da.prototype.pack=function(){return!this.data||!this.data.length?(this.emit("error","No data provided"),this):(process.nextTick(function(){this._packer.pack(this.data,this.width,this.height,this.gamma)}.bind(this)),this)};da.prototype.parse=function(t,e){if(e){let r,n;r=function(s){this.removeListener("error",n),this.data=s,e(null,this)}.bind(this),n=function(s){this.removeListener("parsed",r),e(s,null)}.bind(this),this.once("parsed",r),this.once("error",n)}return this.end(t),this};da.prototype.write=function(t){return this._parser.write(t),!0};da.prototype.end=function(t){this._parser.end(t)};da.prototype._metadata=function(t){this.width=t.width,this.height=t.height,this.emit("metadata",t)};da.prototype._gamma=function(t){this.gamma=t};da.prototype._handleClose=function(){!this._parser.writable&&!this._packer.readable&&this.emit("close")};da.bitblt=function(t,e,r,n,s,i,a,o){if(r|=0,n|=0,s|=0,i|=0,a|=0,o|=0,r>t.width||n>t.height||r+s>t.width||n+i>t.height)throw new Error("bitblt reading outside image");if(a>e.width||o>e.height||a+s>e.width||o+i>e.height)throw new Error("bitblt writing outside image");for(let c=0;c{function a4e(t){if(typeof t=="number"&&(t=t.toString()),typeof t!="string")throw new Error("Color should be defined as hex string");let e=t.slice().replace("#","").split("");if(e.length<3||e.length===5||e.length>8)throw new Error("Invalid hex color: "+t);(e.length===3||e.length===4)&&(e=Array.prototype.concat.apply([],e.map(function(n){return[n,n]}))),e.length===6&&e.push("F","F");let r=parseInt(e.join(""),16);return{r:r>>24&255,g:r>>16&255,b:r>>8&255,a:r&255,hex:"#"+e.slice(0,6).join("")}}Fh.getOptions=function(e){e||(e={}),e.color||(e.color={});let r=typeof e.margin>"u"||e.margin===null||e.margin<0?4:e.margin,n=e.width&&e.width>=21?e.width:void 0,s=e.scale||4;return{width:n,scale:n?4:s,margin:r,color:{dark:a4e(e.color.dark||"#000000ff"),light:a4e(e.color.light||"#ffffffff")},type:e.type,rendererOpts:e.rendererOpts||{}}};Fh.getScale=function(e,r){return r.width&&r.width>=e+r.margin*2?r.width/(e+r.margin*2):r.scale};Fh.getImageWidth=function(e,r){let n=Fh.getScale(e,r);return Math.floor((e+r.margin*2)*n)};Fh.qrToImageData=function(e,r,n){let s=r.modules.size,i=r.modules.data,a=Fh.getScale(s,n),o=Math.floor((s+n.margin*2)*a),c=n.margin*a,u=[n.color.light,n.color.dark];for(let l=0;l=c&&d>=c&&l{var zer=require("fs"),Ker=i4e().PNG,zG=jv();xl.render=function(e,r){let n=zG.getOptions(r),s=n.rendererOpts,i=zG.getImageWidth(e.modules.size,n);s.width=i,s.height=i;let a=new Ker(s);return zG.qrToImageData(a.data,e,n),a};xl.renderToDataURL=function(e,r,n){typeof n>"u"&&(n=r,r=void 0),xl.renderToBuffer(e,r,function(s,i){s&&n(s);let a="data:image/png;base64,";a+=i.toString("base64"),n(null,a)})};xl.renderToBuffer=function(e,r,n){typeof n>"u"&&(n=r,r=void 0);let s=xl.render(e,r),i=[];s.on("error",n),s.on("data",function(a){i.push(a)}),s.on("end",function(){n(null,Buffer.concat(i))}),s.pack()};xl.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=!1,a=(...c)=>{i||(i=!0,s.apply(null,c))},o=zer.createWriteStream(e);o.on("error",a),o.on("close",a),xl.renderToFileStream(o,r,n)};xl.renderToFileStream=function(e,r,n){xl.render(r,n).pack().pipe(e)}});var c4e=E(Lk=>{var Yer=jv(),Jer={WW:" ",WB:"\u2584",BB:"\u2588",BW:"\u2580"},Xer={BB:" ",BW:"\u2584",WW:"\u2588",WB:"\u2580"};function Zer(t,e,r){return t&&e?r.BB:t&&!e?r.BW:!t&&e?r.WB:r.WW}Lk.render=function(t,e,r){let n=Yer.getOptions(e),s=Jer;(n.color.dark.hex==="#ffffff"||n.color.light.hex==="#000000")&&(s=Xer);let i=t.modules.size,a=t.modules.data,o="",c=Array(i+n.margin*2+1).join(s.WW);c=Array(n.margin/2+1).join(c+` +`);let u=Array(n.margin+1).join(s.WW);o+=c;for(let l=0;l"u"&&(s=n,n=void 0);let i=require("fs"),a=Lk.render(r,n);i.writeFile(e,a,s)}});var l4e=E(u4e=>{u4e.render=function(t,e,r){let n=t.modules.size,s=t.modules.data,i="\x1B[40m \x1B[0m",a="\x1B[47m \x1B[0m",o="",c=Array(n+3).join(a),u=Array(2).join(a);o+=c+` `;for(let l=0;l{var Xer="\x1B[47m",Zer="\x1B[40m",VG="\x1B[37m",zG="\x1B[30m",Uh="\x1B[0m",etr=Xer+zG,ttr=Zer+VG,rtr=function(t,e,r){return{"00":Uh+" "+t,"01":Uh+e+"\u2584"+t,"02":Uh+r+"\u2584"+t,10:Uh+e+"\u2580"+t,11:" ",12:"\u2584",20:Uh+r+"\u2580"+t,21:"\u2580",22:"\u2588"}},c4e=function(t,e,r,n){let s=e+1;if(r>=s||n>=s||n<-1||r<-1)return"0";if(r>=e||n>=e||n<0||r<0)return"1";let i=n*e+r;return t[i]?"2":"1"},u4e=function(t,e,r,n){return c4e(t,e,r,n)+c4e(t,e,r,n+1)};l4e.render=function(t,e,r){let n=t.modules.size,s=t.modules.data,i=!!(e&&e.inverse),a=e&&e.inverse?ttr:etr,u=rtr(a,i?zG:VG,i?VG:zG),l=Uh+` -`+a,d=a;for(let f=-1;f{var ntr=o4e(),str=d4e();f4e.render=function(t,e,r){return e&&e.small?str.render(t,e,r):ntr.render(t,e,r)}});var JG=E(h4e=>{var itr=qv();function m4e(t,e){let r=t.a/255,n=e+'="'+t.hex+'"';return r<1?n+" "+e+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function YG(t,e,r){let n=t+e;return typeof r<"u"&&(n+=" "+r),n}function atr(t,e,r){let n="",s=0,i=!1,a=0;for(let o=0;o0&&c>0&&t[o-1]||(n+=i?YG("M",c+r,.5+u+r):YG("m",s,0),s=0,i=!1),c+1':"",u="',l='viewBox="0 0 '+o+" "+o+'"',f=''+c+u+` -`;return typeof n=="function"&&n(null,f),f}});var g4e=E(D3=>{var otr=JG();D3.render=otr.render;D3.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),o=''+D3.render(r,n);i.writeFile(e,o,s)}});var A4e=E(B3=>{var XG=qv();function ctr(t,e,r){t.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=r,e.width=r,e.style.height=r+"px",e.style.width=r+"px"}function utr(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}B3.render=function(e,r,n){let s=n,i=r;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),r||(i=utr()),s=XG.getOptions(s);let a=XG.getImageWidth(e.modules.size,s),o=i.getContext("2d"),c=o.createImageData(a,a);return XG.qrToImageData(c.data,e,s),ctr(o,i,a),o.putImageData(c,0,0),i};B3.renderToDataURL=function(e,r,n){let s=n;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),s||(s={});let i=B3.render(e,r,s),a=s.type||"image/png",o=s.rendererOpts||{};return i.toDataURL(a,o.quality)}});var x4e=E(jv=>{var ltr=fG(),ZG=OG(),y4e=A4e(),dtr=JG();function eK(t,e,r,n,s){let i=[].slice.call(arguments,1),a=i.length,o=typeof i[a-1]=="function";if(!o&&!ltr())throw new Error("Callback required as last argument");if(o){if(a<2)throw new Error("Too few arguments provided");a===2?(s=r,r=e,e=n=void 0):a===3&&(e.getContext&&typeof s>"u"?(s=n,n=void 0):(s=n,n=r,r=e,e=void 0))}else{if(a<1)throw new Error("Too few arguments provided");return a===1?(r=e,e=n=void 0):a===2&&!e.getContext&&(n=r,r=e,e=void 0),new Promise(function(c,u){try{let l=ZG.create(r,n);c(t(l,e,n))}catch(l){u(l)}})}try{let c=ZG.create(r,n);s(null,t(c,e,n))}catch(c){s(c)}}jv.create=ZG.create;jv.toCanvas=eK.bind(null,y4e.render);jv.toDataURL=eK.bind(null,y4e.renderToDataURL);jv.toString=eK.bind(null,function(t,e,r){return dtr.render(t,r)})});var S4e=E(_0=>{var b4e=fG(),tK=OG(),ftr=s4e(),E4e=i4e(),ptr=p4e(),_4e=g4e();function Hv(t,e,r){if(typeof t>"u")throw new Error("String required as first argument");if(typeof r>"u"&&(r=e,e={}),typeof r!="function")if(b4e())e=r||{},r=null;else throw new Error("Callback required as last argument");return{opts:e,cb:r}}function mtr(t){return t.slice((t.lastIndexOf(".")-1>>>0)+2).toLowerCase()}function L3(t){switch(t){case"svg":return _4e;case"txt":case"utf8":return E4e;case"png":case"image/png":default:return ftr}}function htr(t){switch(t){case"svg":return _4e;case"terminal":return ptr;case"utf8":default:return E4e}}function Qv(t,e,r){if(!r.cb)return new Promise(function(n,s){try{let i=tK.create(e,r.opts);return t(i,r.opts,function(a,o){return a?s(a):n(o)})}catch(i){s(i)}});try{let n=tK.create(e,r.opts);return t(n,r.opts,r.cb)}catch(n){r.cb(n)}}_0.create=tK.create;_0.toCanvas=x4e().toCanvas;_0.toString=function(e,r,n){let s=Hv(e,r,n),i=s.opts?s.opts.type:void 0,a=htr(i);return Qv(a.render,e,s)};_0.toDataURL=function(e,r,n){let s=Hv(e,r,n),i=L3(s.opts.type);return Qv(i.renderToDataURL,e,s)};_0.toBuffer=function(e,r,n){let s=Hv(e,r,n),i=L3(s.opts.type);return Qv(i.renderToBuffer,e,s)};_0.toFile=function(e,r,n,s){if(typeof e!="string"||!(typeof r=="string"||typeof r=="object"))throw new Error("Invalid argument");if(arguments.length<3&&!b4e())throw new Error("Too few arguments provided");let i=Hv(r,n,s),a=i.opts.type||mtr(e),c=L3(a).renderToFile.bind(null,e);return Qv(c,r,i)};_0.toFileStream=function(e,r,n){if(arguments.length<2)throw new Error("Too few arguments provided");let s=Hv(r,n,e.emit.bind(e,"error")),a=L3("png").renderToFileStream.bind(null,e);Qv(a,r,s)}});var S0=E(($qr,v4e)=>{v4e.exports=S4e()});var U4e=E((Yqr,F4e)=>{F4e.exports=require("util").inspect});var Zv=E((Jqr,oMe)=>{var yK=typeof Map=="function"&&Map.prototype,uK=Object.getOwnPropertyDescriptor&&yK?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,j3=yK&&uK&&typeof uK.get=="function"?uK.get:null,q4e=yK&&Map.prototype.forEach,xK=typeof Set=="function"&&Set.prototype,lK=Object.getOwnPropertyDescriptor&&xK?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,H3=xK&&lK&&typeof lK.get=="function"?lK.get:null,j4e=xK&&Set.prototype.forEach,Itr=typeof WeakMap=="function"&&WeakMap.prototype,Yv=Itr?WeakMap.prototype.has:null,Ctr=typeof WeakSet=="function"&&WeakSet.prototype,Jv=Ctr?WeakSet.prototype.has:null,Ttr=typeof WeakRef=="function"&&WeakRef.prototype,H4e=Ttr?WeakRef.prototype.deref:null,wtr=Boolean.prototype.valueOf,Rtr=Object.prototype.toString,Ntr=Function.prototype.toString,Otr=String.prototype.match,bK=String.prototype.slice,I0=String.prototype.replace,Ptr=String.prototype.toUpperCase,Q4e=String.prototype.toLowerCase,eMe=RegExp.prototype.test,G4e=Array.prototype.concat,_l=Array.prototype.join,ktr=Array.prototype.slice,K4e=Math.floor,pK=typeof BigInt=="function"?BigInt.prototype.valueOf:null,dK=Object.getOwnPropertySymbols,mK=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,Jx=typeof Symbol=="function"&&typeof Symbol.iterator=="object",Xv=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===Jx||!0)?Symbol.toStringTag:null,tMe=Object.prototype.propertyIsEnumerable,V4e=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function z4e(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||eMe.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-K4e(-t):K4e(t);if(n!==t){var s=String(n),i=bK.call(e,s.length+1);return I0.call(s,r,"$&_")+"."+I0.call(I0.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return I0.call(e,r,"$&_")}var hK=U4e(),Y4e=hK.custom,J4e=sMe(Y4e)?Y4e:null,rMe={__proto__:null,double:'"',single:"'"},Dtr={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};oMe.exports=function t(e,r,n,s){var i=r||{};if(ef(i,"quoteStyle")&&!ef(rMe,i.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(ef(i,"maxStringLength")&&(typeof i.maxStringLength=="number"?i.maxStringLength<0&&i.maxStringLength!==1/0:i.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var a=ef(i,"customInspect")?i.customInspect:!0;if(typeof a!="boolean"&&a!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(ef(i,"indent")&&i.indent!==null&&i.indent!==" "&&!(parseInt(i.indent,10)===i.indent&&i.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(ef(i,"numericSeparator")&&typeof i.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var o=i.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return aMe(e,i);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return o?z4e(e,c):c}if(typeof e=="bigint"){var u=String(e)+"n";return o?z4e(e,u):u}var l=typeof i.depth>"u"?5:i.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof e=="object")return gK(e)?"[Array]":"[Object]";var d=Xtr(i,n);if(typeof s>"u")s=[];else if(iMe(s,e)>=0)return"[Circular]";function f(D,L,Z){if(L&&(s=ktr.call(s),s.push(L)),Z){var W={depth:i.depth};return ef(i,"quoteStyle")&&(W.quoteStyle=i.quoteStyle),t(D,W,n+1,s)}return t(D,i,n+1,s)}if(typeof e=="function"&&!X4e(e)){var p=jtr(e),m=q3(e,f);return"[Function"+(p?": "+p:" (anonymous)")+"]"+(m.length>0?" { "+_l.call(m,", ")+" }":"")}if(sMe(e)){var h=Jx?I0.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):mK.call(e);return typeof e=="object"&&!Jx?zv(h):h}if(ztr(e)){for(var A="<"+Q4e.call(String(e.nodeName)),g=e.attributes||[],b=0;b",A}if(gK(e)){if(e.length===0)return"[]";var y=q3(e,f);return d&&!Jtr(y)?"["+AK(y,d)+"]":"[ "+_l.call(y,", ")+" ]"}if(Mtr(e)){var x=q3(e,f);return!("cause"in Error.prototype)&&"cause"in e&&!tMe.call(e,"cause")?"{ ["+String(e)+"] "+_l.call(G4e.call("[cause]: "+f(e.cause),x),", ")+" }":x.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+_l.call(x,", ")+" }"}if(typeof e=="object"&&a){if(J4e&&typeof e[J4e]=="function"&&hK)return hK(e,{depth:l-n});if(a!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(Htr(e)){var v=[];return q4e&&q4e.call(e,function(D,L){v.push(f(L,e,!0)+" => "+f(D,e))}),Z4e("Map",j3.call(e),v,d)}if(Ktr(e)){var I=[];return j4e&&j4e.call(e,function(D){I.push(f(D,e))}),Z4e("Set",H3.call(e),I,d)}if(Qtr(e))return fK("WeakMap");if(Vtr(e))return fK("WeakSet");if(Gtr(e))return fK("WeakRef");if($tr(e))return zv(f(Number(e)));if(Utr(e))return zv(f(pK.call(e)));if(Ftr(e))return zv(wtr.call(e));if(Wtr(e))return zv(f(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(typeof globalThis<"u"&&e===globalThis||typeof global<"u"&&e===global)return"{ [object globalThis] }";if(!Ltr(e)&&!X4e(e)){var R=q3(e,f),w=V4e?V4e(e)===Object.prototype:e instanceof Object||e.constructor===Object,N=e instanceof Object?"":"null prototype",P=!w&&Xv&&Object(e)===e&&Xv in e?bK.call(C0(e),8,-1):N?"Object":"",B=w||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",M=B+(P||N?"["+_l.call(G4e.call([],P||[],N||[]),": ")+"] ":"");return R.length===0?M+"{}":d?M+"{"+AK(R,d)+"}":M+"{ "+_l.call(R,", ")+" }"}return String(e)};function nMe(t,e,r){var n=r.quoteStyle||e,s=rMe[n];return s+t+s}function Btr(t){return I0.call(String(t),/"/g,""")}function jh(t){return!Xv||!(typeof t=="object"&&(Xv in t||typeof t[Xv]<"u"))}function gK(t){return C0(t)==="[object Array]"&&jh(t)}function Ltr(t){return C0(t)==="[object Date]"&&jh(t)}function X4e(t){return C0(t)==="[object RegExp]"&&jh(t)}function Mtr(t){return C0(t)==="[object Error]"&&jh(t)}function Wtr(t){return C0(t)==="[object String]"&&jh(t)}function $tr(t){return C0(t)==="[object Number]"&&jh(t)}function Ftr(t){return C0(t)==="[object Boolean]"&&jh(t)}function sMe(t){if(Jx)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!mK)return!1;try{return mK.call(t),!0}catch{}return!1}function Utr(t){if(!t||typeof t!="object"||!pK)return!1;try{return pK.call(t),!0}catch{}return!1}var qtr=Object.prototype.hasOwnProperty||function(t){return t in this};function ef(t,e){return qtr.call(t,e)}function C0(t){return Rtr.call(t)}function jtr(t){if(t.name)return t.name;var e=Otr.call(Ntr.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function iMe(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;re.maxStringLength){var r=t.length-e.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return aMe(bK.call(t,0,e.maxStringLength),e)+n}var s=Dtr[e.quoteStyle||"single"];s.lastIndex=0;var i=I0.call(I0.call(t,s,"\\$1"),/[\x00-\x1f]/g,Ytr);return nMe(i,"single",e)}function Ytr(t){var e=t.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return r?"\\"+r:"\\x"+(e<16?"0":"")+Ptr.call(e.toString(16))}function zv(t){return"Object("+t+")"}function fK(t){return t+" { ? }"}function Z4e(t,e,r,n){var s=n?AK(r,n):_l.call(r,", ");return t+" ("+e+") {"+s+"}"}function Jtr(t){for(var e=0;e=0)return!1;return!0}function Xtr(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=_l.call(Array(t.indent+1)," ");else return null;return{base:r,prev:_l.call(Array(e+1),r)}}function AK(t,e){if(t.length===0)return"";var r=` +`,typeof r=="function"&&r(null,o),o}});var m4e=E(p4e=>{var etr="\x1B[47m",ttr="\x1B[40m",KG="\x1B[37m",YG="\x1B[30m",Uh="\x1B[0m",rtr=etr+YG,ntr=ttr+KG,str=function(t,e,r){return{"00":Uh+" "+t,"01":Uh+e+"\u2584"+t,"02":Uh+r+"\u2584"+t,10:Uh+e+"\u2580"+t,11:" ",12:"\u2584",20:Uh+r+"\u2580"+t,21:"\u2580",22:"\u2588"}},d4e=function(t,e,r,n){let s=e+1;if(r>=s||n>=s||n<-1||r<-1)return"0";if(r>=e||n>=e||n<0||r<0)return"1";let i=n*e+r;return t[i]?"2":"1"},f4e=function(t,e,r,n){return d4e(t,e,r,n)+d4e(t,e,r,n+1)};p4e.render=function(t,e,r){let n=t.modules.size,s=t.modules.data,i=!!(e&&e.inverse),a=e&&e.inverse?ntr:rtr,u=str(a,i?YG:KG,i?KG:YG),l=Uh+` +`+a,d=a;for(let f=-1;f{var itr=l4e(),atr=m4e();h4e.render=function(t,e,r){return e&&e.small?atr.render(t,e,r):itr.render(t,e,r)}});var XG=E(y4e=>{var otr=jv();function A4e(t,e){let r=t.a/255,n=e+'="'+t.hex+'"';return r<1?n+" "+e+'-opacity="'+r.toFixed(2).slice(1)+'"':n}function JG(t,e,r){let n=t+e;return typeof r<"u"&&(n+=" "+r),n}function ctr(t,e,r){let n="",s=0,i=!1,a=0;for(let o=0;o0&&c>0&&t[o-1]||(n+=i?JG("M",c+r,.5+u+r):JG("m",s,0),s=0,i=!1),c+1':"",u="',l='viewBox="0 0 '+o+" "+o+'"',f=''+c+u+` +`;return typeof n=="function"&&n(null,f),f}});var x4e=E(Bk=>{var utr=XG();Bk.render=utr.render;Bk.renderToFile=function(e,r,n,s){typeof s>"u"&&(s=n,n=void 0);let i=require("fs"),o=''+Bk.render(r,n);i.writeFile(e,o,s)}});var b4e=E(Mk=>{var ZG=jv();function ltr(t,e,r){t.clearRect(0,0,e.width,e.height),e.style||(e.style={}),e.height=r,e.width=r,e.style.height=r+"px",e.style.width=r+"px"}function dtr(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}Mk.render=function(e,r,n){let s=n,i=r;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),r||(i=dtr()),s=ZG.getOptions(s);let a=ZG.getImageWidth(e.modules.size,s),o=i.getContext("2d"),c=o.createImageData(a,a);return ZG.qrToImageData(c.data,e,s),ltr(o,i,a),o.putImageData(c,0,0),i};Mk.renderToDataURL=function(e,r,n){let s=n;typeof s>"u"&&(!r||!r.getContext)&&(s=r,r=void 0),s||(s={});let i=Mk.render(e,r,s),a=s.type||"image/png",o=s.rendererOpts||{};return i.toDataURL(a,o.quality)}});var _4e=E(Hv=>{var ftr=pG(),eV=PG(),E4e=b4e(),ptr=XG();function tV(t,e,r,n,s){let i=[].slice.call(arguments,1),a=i.length,o=typeof i[a-1]=="function";if(!o&&!ftr())throw new Error("Callback required as last argument");if(o){if(a<2)throw new Error("Too few arguments provided");a===2?(s=r,r=e,e=n=void 0):a===3&&(e.getContext&&typeof s>"u"?(s=n,n=void 0):(s=n,n=r,r=e,e=void 0))}else{if(a<1)throw new Error("Too few arguments provided");return a===1?(r=e,e=n=void 0):a===2&&!e.getContext&&(n=r,r=e,e=void 0),new Promise(function(c,u){try{let l=eV.create(r,n);c(t(l,e,n))}catch(l){u(l)}})}try{let c=eV.create(r,n);s(null,t(c,e,n))}catch(c){s(c)}}Hv.create=eV.create;Hv.toCanvas=tV.bind(null,E4e.render);Hv.toDataURL=tV.bind(null,E4e.renderToDataURL);Hv.toString=tV.bind(null,function(t,e,r){return ptr.render(t,r)})});var I4e=E(S0=>{var S4e=pG(),rV=PG(),mtr=o4e(),v4e=c4e(),htr=g4e(),C4e=x4e();function Qv(t,e,r){if(typeof t>"u")throw new Error("String required as first argument");if(typeof r>"u"&&(r=e,e={}),typeof r!="function")if(S4e())e=r||{},r=null;else throw new Error("Callback required as last argument");return{opts:e,cb:r}}function gtr(t){return t.slice((t.lastIndexOf(".")-1>>>0)+2).toLowerCase()}function Wk(t){switch(t){case"svg":return C4e;case"txt":case"utf8":return v4e;case"png":case"image/png":default:return mtr}}function Atr(t){switch(t){case"svg":return C4e;case"terminal":return htr;case"utf8":default:return v4e}}function Gv(t,e,r){if(!r.cb)return new Promise(function(n,s){try{let i=rV.create(e,r.opts);return t(i,r.opts,function(a,o){return a?s(a):n(o)})}catch(i){s(i)}});try{let n=rV.create(e,r.opts);return t(n,r.opts,r.cb)}catch(n){r.cb(n)}}S0.create=rV.create;S0.toCanvas=_4e().toCanvas;S0.toString=function(e,r,n){let s=Qv(e,r,n),i=s.opts?s.opts.type:void 0,a=Atr(i);return Gv(a.render,e,s)};S0.toDataURL=function(e,r,n){let s=Qv(e,r,n),i=Wk(s.opts.type);return Gv(i.renderToDataURL,e,s)};S0.toBuffer=function(e,r,n){let s=Qv(e,r,n),i=Wk(s.opts.type);return Gv(i.renderToBuffer,e,s)};S0.toFile=function(e,r,n,s){if(typeof e!="string"||!(typeof r=="string"||typeof r=="object"))throw new Error("Invalid argument");if(arguments.length<3&&!S4e())throw new Error("Too few arguments provided");let i=Qv(r,n,s),a=i.opts.type||gtr(e),c=Wk(a).renderToFile.bind(null,e);return Gv(c,r,i)};S0.toFileStream=function(e,r,n){if(arguments.length<2)throw new Error("Too few arguments provided");let s=Qv(r,n,e.emit.bind(e,"error")),a=Wk("png").renderToFileStream.bind(null,e);Gv(a,r,s)}});var v0=E((Q9r,T4e)=>{T4e.exports=I4e()});var H4e=E((rqr,j4e)=>{j4e.exports=require("util").inspect});var eC=E((nqr,lMe)=>{var xV=typeof Map=="function"&&Map.prototype,lV=Object.getOwnPropertyDescriptor&&xV?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,Qk=xV&&lV&&typeof lV.get=="function"?lV.get:null,Q4e=xV&&Map.prototype.forEach,bV=typeof Set=="function"&&Set.prototype,dV=Object.getOwnPropertyDescriptor&&bV?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,Gk=bV&&dV&&typeof dV.get=="function"?dV.get:null,G4e=bV&&Set.prototype.forEach,Ttr=typeof WeakMap=="function"&&WeakMap.prototype,Jv=Ttr?WeakMap.prototype.has:null,wtr=typeof WeakSet=="function"&&WeakSet.prototype,Xv=wtr?WeakSet.prototype.has:null,Rtr=typeof WeakRef=="function"&&WeakRef.prototype,V4e=Rtr?WeakRef.prototype.deref:null,Ntr=Boolean.prototype.valueOf,Otr=Object.prototype.toString,Ptr=Function.prototype.toString,Dtr=String.prototype.match,EV=String.prototype.slice,I0=String.prototype.replace,ktr=String.prototype.toUpperCase,z4e=String.prototype.toLowerCase,nMe=RegExp.prototype.test,K4e=Array.prototype.concat,_l=Array.prototype.join,Ltr=Array.prototype.slice,Y4e=Math.floor,mV=typeof BigInt=="function"?BigInt.prototype.valueOf:null,fV=Object.getOwnPropertySymbols,hV=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?Symbol.prototype.toString:null,Jx=typeof Symbol=="function"&&typeof Symbol.iterator=="object",Zv=typeof Symbol=="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===Jx||!0)?Symbol.toStringTag:null,sMe=Object.prototype.propertyIsEnumerable,J4e=(typeof Reflect=="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(t){return t.__proto__}:null);function X4e(t,e){if(t===1/0||t===-1/0||t!==t||t&&t>-1e3&&t<1e3||nMe.call(/e/,e))return e;var r=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof t=="number"){var n=t<0?-Y4e(-t):Y4e(t);if(n!==t){var s=String(n),i=EV.call(e,s.length+1);return I0.call(s,r,"$&_")+"."+I0.call(I0.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return I0.call(e,r,"$&_")}var gV=H4e(),Z4e=gV.custom,eMe=oMe(Z4e)?Z4e:null,iMe={__proto__:null,double:'"',single:"'"},Btr={__proto__:null,double:/(["\\])/g,single:/(['\\])/g};lMe.exports=function t(e,r,n,s){var i=r||{};if(tf(i,"quoteStyle")&&!tf(iMe,i.quoteStyle))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(tf(i,"maxStringLength")&&(typeof i.maxStringLength=="number"?i.maxStringLength<0&&i.maxStringLength!==1/0:i.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var a=tf(i,"customInspect")?i.customInspect:!0;if(typeof a!="boolean"&&a!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(tf(i,"indent")&&i.indent!==null&&i.indent!==" "&&!(parseInt(i.indent,10)===i.indent&&i.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(tf(i,"numericSeparator")&&typeof i.numericSeparator!="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var o=i.numericSeparator;if(typeof e>"u")return"undefined";if(e===null)return"null";if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return uMe(e,i);if(typeof e=="number"){if(e===0)return 1/0/e>0?"0":"-0";var c=String(e);return o?X4e(e,c):c}if(typeof e=="bigint"){var u=String(e)+"n";return o?X4e(e,u):u}var l=typeof i.depth>"u"?5:i.depth;if(typeof n>"u"&&(n=0),n>=l&&l>0&&typeof e=="object")return AV(e)?"[Array]":"[Object]";var d=err(i,n);if(typeof s>"u")s=[];else if(cMe(s,e)>=0)return"[Circular]";function f(k,B,Z){if(B&&(s=Ltr.call(s),s.push(B)),Z){var W={depth:i.depth};return tf(i,"quoteStyle")&&(W.quoteStyle=i.quoteStyle),t(k,W,n+1,s)}return t(k,i,n+1,s)}if(typeof e=="function"&&!tMe(e)){var p=Qtr(e),m=Hk(e,f);return"[Function"+(p?": "+p:" (anonymous)")+"]"+(m.length>0?" { "+_l.call(m,", ")+" }":"")}if(oMe(e)){var h=Jx?I0.call(String(e),/^(Symbol\(.*\))_[^)]*$/,"$1"):hV.call(e);return typeof e=="object"&&!Jx?Yv(h):h}if(Jtr(e)){for(var A="<"+z4e.call(String(e.nodeName)),g=e.attributes||[],b=0;b",A}if(AV(e)){if(e.length===0)return"[]";var y=Hk(e,f);return d&&!Ztr(y)?"["+yV(y,d)+"]":"[ "+_l.call(y,", ")+" ]"}if($tr(e)){var x=Hk(e,f);return!("cause"in Error.prototype)&&"cause"in e&&!sMe.call(e,"cause")?"{ ["+String(e)+"] "+_l.call(K4e.call("[cause]: "+f(e.cause),x),", ")+" }":x.length===0?"["+String(e)+"]":"{ ["+String(e)+"] "+_l.call(x,", ")+" }"}if(typeof e=="object"&&a){if(eMe&&typeof e[eMe]=="function"&&gV)return gV(e,{depth:l-n});if(a!=="symbol"&&typeof e.inspect=="function")return e.inspect()}if(Gtr(e)){var v=[];return Q4e&&Q4e.call(e,function(k,B){v.push(f(B,e,!0)+" => "+f(k,e))}),rMe("Map",Qk.call(e),v,d)}if(Ktr(e)){var C=[];return G4e&&G4e.call(e,function(k){C.push(f(k,e))}),rMe("Set",Gk.call(e),C,d)}if(Vtr(e))return pV("WeakMap");if(Ytr(e))return pV("WeakSet");if(ztr(e))return pV("WeakRef");if(Utr(e))return Yv(f(Number(e)));if(jtr(e))return Yv(f(mV.call(e)));if(qtr(e))return Yv(Ntr.call(e));if(Ftr(e))return Yv(f(String(e)));if(typeof window<"u"&&e===window)return"{ [object Window] }";if(typeof globalThis<"u"&&e===globalThis||typeof global<"u"&&e===global)return"{ [object globalThis] }";if(!Wtr(e)&&!tMe(e)){var R=Hk(e,f),w=J4e?J4e(e)===Object.prototype:e instanceof Object||e.constructor===Object,N=e instanceof Object?"":"null prototype",P=!w&&Zv&&Object(e)===e&&Zv in e?EV.call(T0(e),8,-1):N?"Object":"",L=w||typeof e.constructor!="function"?"":e.constructor.name?e.constructor.name+" ":"",M=L+(P||N?"["+_l.call(K4e.call([],P||[],N||[]),": ")+"] ":"");return R.length===0?M+"{}":d?M+"{"+yV(R,d)+"}":M+"{ "+_l.call(R,", ")+" }"}return String(e)};function aMe(t,e,r){var n=r.quoteStyle||e,s=iMe[n];return s+t+s}function Mtr(t){return I0.call(String(t),/"/g,""")}function jh(t){return!Zv||!(typeof t=="object"&&(Zv in t||typeof t[Zv]<"u"))}function AV(t){return T0(t)==="[object Array]"&&jh(t)}function Wtr(t){return T0(t)==="[object Date]"&&jh(t)}function tMe(t){return T0(t)==="[object RegExp]"&&jh(t)}function $tr(t){return T0(t)==="[object Error]"&&jh(t)}function Ftr(t){return T0(t)==="[object String]"&&jh(t)}function Utr(t){return T0(t)==="[object Number]"&&jh(t)}function qtr(t){return T0(t)==="[object Boolean]"&&jh(t)}function oMe(t){if(Jx)return t&&typeof t=="object"&&t instanceof Symbol;if(typeof t=="symbol")return!0;if(!t||typeof t!="object"||!hV)return!1;try{return hV.call(t),!0}catch{}return!1}function jtr(t){if(!t||typeof t!="object"||!mV)return!1;try{return mV.call(t),!0}catch{}return!1}var Htr=Object.prototype.hasOwnProperty||function(t){return t in this};function tf(t,e){return Htr.call(t,e)}function T0(t){return Otr.call(t)}function Qtr(t){if(t.name)return t.name;var e=Dtr.call(Ptr.call(t),/^function\s*([\w$]+)/);return e?e[1]:null}function cMe(t,e){if(t.indexOf)return t.indexOf(e);for(var r=0,n=t.length;re.maxStringLength){var r=t.length-e.maxStringLength,n="... "+r+" more character"+(r>1?"s":"");return uMe(EV.call(t,0,e.maxStringLength),e)+n}var s=Btr[e.quoteStyle||"single"];s.lastIndex=0;var i=I0.call(I0.call(t,s,"\\$1"),/[\x00-\x1f]/g,Xtr);return aMe(i,"single",e)}function Xtr(t){var e=t.charCodeAt(0),r={8:"b",9:"t",10:"n",12:"f",13:"r"}[e];return r?"\\"+r:"\\x"+(e<16?"0":"")+ktr.call(e.toString(16))}function Yv(t){return"Object("+t+")"}function pV(t){return t+" { ? }"}function rMe(t,e,r,n){var s=n?yV(r,n):_l.call(r,", ");return t+" ("+e+") {"+s+"}"}function Ztr(t){for(var e=0;e=0)return!1;return!0}function err(t,e){var r;if(t.indent===" ")r=" ";else if(typeof t.indent=="number"&&t.indent>0)r=_l.call(Array(t.indent+1)," ");else return null;return{base:r,prev:_l.call(Array(e+1),r)}}function yV(t,e){if(t.length===0)return"";var r=` `+e.prev+e.base;return r+_l.call(t,","+r)+` -`+e.prev}function q3(t,e){var r=gK(t),n=[];if(r){n.length=t.length;for(var s=0;s{"use strict";var Ztr=Zv(),err=Gp(),Q3=function(t,e,r){for(var n=t,s;(s=n.next)!=null;n=s)if(s.key===e)return n.next=s.next,r||(s.next=t.next,t.next=s),s},trr=function(t,e){if(t){var r=Q3(t,e);return r&&r.value}},rrr=function(t,e,r){var n=Q3(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},nrr=function(t,e){return t?!!Q3(t,e):!1},srr=function(t,e){if(t)return Q3(t,e,!0)};cMe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new err("Side channel does not contain "+Ztr(n))},delete:function(n){var s=e&&e.next,i=srr(e,n);return i&&s&&s===i&&(e=void 0),!!i},get:function(n){return trr(e,n)},has:function(n){return nrr(e,n)},set:function(n,s){e||(e={next:void 0}),rrr(e,n,s)}};return r}});var EK=E((Zqr,fMe)=>{"use strict";var lMe=LS(),dMe=Pj(),irr=dMe([lMe("%String.prototype.indexOf%")]);fMe.exports=function(e,r){var n=lMe(e,!!r);return typeof n=="function"&&irr(e,".prototype.")>-1?dMe([n]):n}});var _K=E((e9r,mMe)=>{"use strict";var arr=LS(),eI=EK(),orr=Zv(),crr=Gp(),pMe=arr("%Map%",!0),urr=eI("Map.prototype.get",!0),lrr=eI("Map.prototype.set",!0),drr=eI("Map.prototype.has",!0),frr=eI("Map.prototype.delete",!0),prr=eI("Map.prototype.size",!0);mMe.exports=!!pMe&&function(){var e,r={assert:function(n){if(!r.has(n))throw new crr("Side channel does not contain "+orr(n))},delete:function(n){if(e){var s=frr(e,n);return prr(e)===0&&(e=void 0),s}return!1},get:function(n){if(e)return urr(e,n)},has:function(n){return e?drr(e,n):!1},set:function(n,s){e||(e=new pMe),lrr(e,n,s)}};return r}});var gMe=E((t9r,hMe)=>{"use strict";var mrr=LS(),K3=EK(),hrr=Zv(),G3=_K(),grr=Gp(),Xx=mrr("%WeakMap%",!0),Arr=K3("WeakMap.prototype.get",!0),yrr=K3("WeakMap.prototype.set",!0),xrr=K3("WeakMap.prototype.has",!0),brr=K3("WeakMap.prototype.delete",!0);hMe.exports=Xx?function(){var e,r,n={assert:function(s){if(!n.has(s))throw new grr("Side channel does not contain "+hrr(s))},delete:function(s){if(Xx&&s&&(typeof s=="object"||typeof s=="function")){if(e)return brr(e,s)}else if(G3&&r)return r.delete(s);return!1},get:function(s){return Xx&&s&&(typeof s=="object"||typeof s=="function")&&e?Arr(e,s):r&&r.get(s)},has:function(s){return Xx&&s&&(typeof s=="object"||typeof s=="function")&&e?xrr(e,s):!!r&&r.has(s)},set:function(s,i){Xx&&s&&(typeof s=="object"||typeof s=="function")?(e||(e=new Xx),yrr(e,s,i)):G3&&(r||(r=G3()),r.set(s,i))}};return n}:G3});var yMe=E((r9r,AMe)=>{"use strict";var Err=Gp(),_rr=Zv(),Srr=uMe(),vrr=_K(),Irr=gMe(),Crr=Irr||vrr||Srr;AMe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new Err("Side channel does not contain "+_rr(n))},delete:function(n){return!!e&&e.delete(n)},get:function(n){return e&&e.get(n)},has:function(n){return!!e&&e.has(n)},set:function(n,s){e||(e=Crr()),e.set(n,s)}};return r}});var V3=E((n9r,xMe)=>{"use strict";var Trr=String.prototype.replace,wrr=/%20/g,SK={RFC1738:"RFC1738",RFC3986:"RFC3986"};xMe.exports={default:SK.RFC3986,formatters:{RFC1738:function(t){return Trr.call(t,wrr,"+")},RFC3986:function(t){return String(t)}},RFC1738:SK.RFC1738,RFC3986:SK.RFC3986}});var CK=E((s9r,EMe)=>{"use strict";var Rrr=V3(),vK=Object.prototype.hasOwnProperty,Hh=Array.isArray,Sl=function(){for(var t=[],e=0;e<256;++e)t.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return t}(),Nrr=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(Hh(n)){for(var s=[],i=0;i=IK?a.slice(c,c+IK):a,l=[],d=0;d=48&&f<=57||f>=65&&f<=90||f>=97&&f<=122||i===Rrr.RFC1738&&(f===40||f===41)){l[l.length]=u.charAt(d);continue}if(f<128){l[l.length]=Sl[f];continue}if(f<2048){l[l.length]=Sl[192|f>>6]+Sl[128|f&63];continue}if(f<55296||f>=57344){l[l.length]=Sl[224|f>>12]+Sl[128|f>>6&63]+Sl[128|f&63];continue}d+=1,f=65536+((f&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=Sl[240|f>>18]+Sl[128|f>>12&63]+Sl[128|f>>6&63]+Sl[128|f&63]}o+=l.join("")}return o},Brr=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],s=0;s{"use strict";var SMe=yMe(),z3=CK(),tI=V3(),Frr=Object.prototype.hasOwnProperty,vMe={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},vl=Array.isArray,Urr=Array.prototype.push,IMe=function(t,e){Urr.apply(t,vl(e)?e:[e])},qrr=Date.prototype.toISOString,_Me=tI.default,Ds={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:z3.encode,encodeValuesOnly:!1,filter:void 0,format:_Me,formatter:tI.formatters[_Me],indices:!1,serializeDate:function(e){return qrr.call(e)},skipNulls:!1,strictNullHandling:!1},jrr=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},TK={},Hrr=function t(e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b){for(var y=e,x=b,v=0,I=!1;(x=x.get(TK))!==void 0&&!I;){var R=x.get(e);if(v+=1,typeof R<"u"){if(R===v)throw new RangeError("Cyclic object value");I=!0}typeof x.get(TK)>"u"&&(v=0)}if(typeof l=="function"?y=l(r,y):y instanceof Date?y=p(y):n==="comma"&&vl(y)&&(y=z3.maybeMap(y,function(J){return J instanceof Date?p(J):J})),y===null){if(a)return u&&!A?u(r,Ds.encoder,g,"key",m):r;y=""}if(jrr(y)||z3.isBuffer(y)){if(u){var w=A?r:u(r,Ds.encoder,g,"key",m);return[h(w)+"="+h(u(y,Ds.encoder,g,"value",m))]}return[h(r)+"="+h(String(y))]}var N=[];if(typeof y>"u")return N;var P;if(n==="comma"&&vl(y))A&&u&&(y=z3.maybeMap(y,u)),P=[{value:y.length>0?y.join(",")||null:void 0}];else if(vl(l))P=l;else{var B=Object.keys(y);P=d?B.sort(d):B}var M=c?String(r).replace(/\./g,"%2E"):String(r),D=s&&vl(y)&&y.length===1?M+"[]":M;if(i&&vl(y)&&y.length===0)return D+"[]";for(var L=0;L"u"?e.encodeDotInKeys===!0?!0:Ds.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:Ds.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Ds.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Ds.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?Ds.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:Ds.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:Ds.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:Ds.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:Ds.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:Ds.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:Ds.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Ds.strictNullHandling}};CMe.exports=function(t,e){var r=t,n=Qrr(e),s,i;typeof n.filter=="function"?(i=n.filter,r=i("",r)):vl(n.filter)&&(i=n.filter,s=i);var a=[];if(typeof r!="object"||r===null)return"";var o=vMe[n.arrayFormat],c=o==="comma"&&n.commaRoundTrip;s||(s=Object.keys(r)),n.sort&&s.sort(n.sort);for(var u=SMe(),l=0;l0?m+p:""}});var OMe=E((a9r,NMe)=>{"use strict";var Qh=CK(),wK=Object.prototype.hasOwnProperty,wMe=Array.isArray,Zn={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Qh.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},Grr=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},RMe=function(t,e,r){if(t&&typeof t=="string"&&e.comma&&t.indexOf(",")>-1)return t.split(",");if(e.throwOnLimitExceeded&&r>=e.arrayLimit)throw new RangeError("Array limit exceeded. Only "+e.arrayLimit+" element"+(e.arrayLimit===1?"":"s")+" allowed in an array.");return t},Krr="utf8=%26%2310003%3B",Vrr="utf8=%E2%9C%93",zrr=function(e,r){var n={__proto__:null},s=r.ignoreQueryPrefix?e.replace(/^\?/,""):e;s=s.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var i=r.parameterLimit===1/0?void 0:r.parameterLimit,a=s.split(r.delimiter,r.throwOnLimitExceeded?i+1:i);if(r.throwOnLimitExceeded&&a.length>i)throw new RangeError("Parameter limit exceeded. Only "+i+" parameter"+(i===1?"":"s")+" allowed.");var o=-1,c,u=r.charset;if(r.charsetSentinel)for(c=0;c-1&&(m=wMe(m)?[m]:m);var h=wK.call(n,p);h&&r.duplicates==="combine"?n[p]=Qh.combine(n[p],m):(!h||r.duplicates==="last")&&(n[p]=m)}return n},Yrr=function(t,e,r,n){var s=0;if(t.length>0&&t[t.length-1]==="[]"){var i=t.slice(0,-1).join("");s=Array.isArray(e)&&e[i]?e[i].length:0}for(var a=n?e:RMe(e,r,s),o=t.length-1;o>=0;--o){var c,u=t[o];if(u==="[]"&&r.parseArrays)c=r.allowEmptyArrays&&(a===""||r.strictNullHandling&&a===null)?[]:Qh.combine([],a);else{c=r.plainObjects?{__proto__:null}:{};var l=u.charAt(0)==="["&&u.charAt(u.length-1)==="]"?u.slice(1,-1):u,d=r.decodeDotInKeys?l.replace(/%2E/g,"."):l,f=parseInt(d,10);!r.parseArrays&&d===""?c={0:a}:!isNaN(f)&&u!==d&&String(f)===d&&f>=0&&r.parseArrays&&f<=r.arrayLimit?(c=[],c[f]=a):d!=="__proto__"&&(c[d]=a)}a=c}return a},Jrr=function(e,r,n,s){if(e){var i=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,a=/(\[[^[\]]*])/,o=/(\[[^[\]]*])/g,c=n.depth>0&&a.exec(i),u=c?i.slice(0,c.index):i,l=[];if(u){if(!n.plainObjects&&wK.call(Object.prototype,u)&&!n.allowPrototypes)return;l.push(u)}for(var d=0;n.depth>0&&(c=o.exec(i))!==null&&d"u"?Zn.charset:e.charset,n=typeof e.duplicates>"u"?Zn.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var s=typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:Zn.allowDots:!!e.allowDots;return{allowDots:s,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Zn.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:Zn.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:Zn.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:Zn.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Zn.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:Zn.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:Zn.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:Zn.decoder,delimiter:typeof e.delimiter=="string"||Qh.isRegExp(e.delimiter)?e.delimiter:Zn.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:Zn.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:Zn.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:Zn.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:Zn.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:Zn.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Zn.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};NMe.exports=function(t,e){var r=Xrr(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?zrr(t,r):t,s=r.plainObjects?{__proto__:null}:{},i=Object.keys(n),a=0;a{"use strict";var Zrr=TMe(),enr=OMe(),tnr=V3();PMe.exports={formats:tnr,parse:enr,stringify:Zrr}});var RK=E((kMe,Y3)=>{(function(t){"use strict";var e,r=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,n=Math.ceil,s=Math.floor,i="[BigNumber Error] ",a=i+"Number primitive has more than 15 significant digits: ",o=1e14,c=14,u=9007199254740991,l=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],d=1e7,f=1e9;function p(v){var I,R,w,N=ue.prototype={constructor:ue,toString:null,valueOf:null},P=new ue(1),B=20,M=4,D=-7,L=21,Z=-1e7,W=1e7,F=!1,K=1,j=0,J={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},se="0123456789abcdefghijklmnopqrstuvwxyz",oe=!0;function ue(U,G){var V,q,H,ee,ne,re,X,ie,ce=this;if(!(ce instanceof ue))return new ue(U,G);if(G==null){if(U&&U._isBigNumber===!0){ce.s=U.s,!U.c||U.e>W?ce.c=ce.e=null:U.e=10;ne/=10,ee++);ee>W?ce.c=ce.e=null:(ce.e=ee,ce.c=[U]);return}ie=String(U)}else{if(!r.test(ie=String(U)))return w(ce,ie,re);ce.s=ie.charCodeAt(0)==45?(ie=ie.slice(1),-1):1}(ee=ie.indexOf("."))>-1&&(ie=ie.replace(".","")),(ne=ie.search(/e/i))>0?(ee<0&&(ee=ne),ee+=+ie.slice(ne+1),ie=ie.substring(0,ne)):ee<0&&(ee=ie.length)}else{if(g(G,2,se.length,"Base"),G==10&&oe)return ce=new ue(U),Fe(ce,B+ce.e+1,M);if(ie=String(U),re=typeof U=="number"){if(U*0!=0)return w(ce,ie,re,G);if(ce.s=1/U<0?(ie=ie.slice(1),-1):1,ue.DEBUG&&ie.replace(/^0\.0*|\./,"").length>15)throw Error(a+U)}else ce.s=ie.charCodeAt(0)===45?(ie=ie.slice(1),-1):1;for(V=se.slice(0,G),ee=ne=0,X=ie.length;neee){ee=X;continue}}else if(!H&&(ie==ie.toUpperCase()&&(ie=ie.toLowerCase())||ie==ie.toLowerCase()&&(ie=ie.toUpperCase()))){H=!0,ne=-1,ee=0;continue}return w(ce,String(U),re,G)}re=!1,ie=R(ie,G,10,ce.s),(ee=ie.indexOf("."))>-1?ie=ie.replace(".",""):ee=ie.length}for(ne=0;ie.charCodeAt(ne)===48;ne++);for(X=ie.length;ie.charCodeAt(--X)===48;);if(ie=ie.slice(ne,++X)){if(X-=ne,re&&ue.DEBUG&&X>15&&(U>u||U!==s(U)))throw Error(a+ce.s*U);if((ee=ee-ne-1)>W)ce.c=ce.e=null;else if(ee=-f&&H<=f&&H===s(H)){if(q[0]===0){if(H===0&&q.length===1)return!0;break e}if(G=(H+1)%c,G<1&&(G+=c),String(q[0]).length==G){for(G=0;G=o||V!==s(V))break e;if(V!==0)return!0}}}else if(q===null&&H===null&&(ee===null||ee===1||ee===-1))return!0;throw Error(i+"Invalid BigNumber: "+U)},ue.maximum=ue.max=function(){return we(arguments,-1)},ue.minimum=ue.min=function(){return we(arguments,1)},ue.random=function(){var U=9007199254740992,G=Math.random()*U&2097151?function(){return s(Math.random()*U)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(V){var q,H,ee,ne,re,X=0,ie=[],ce=new ue(P);if(V==null?V=B:g(V,0,f),ne=n(V/c),F)if(crypto.getRandomValues){for(q=crypto.getRandomValues(new Uint32Array(ne*=2));X>>11),re>=9e15?(H=crypto.getRandomValues(new Uint32Array(2)),q[X]=H[0],q[X+1]=H[1]):(ie.push(re%1e14),X+=2);X=ne/2}else if(crypto.randomBytes){for(q=crypto.randomBytes(ne*=7);X=9e15?crypto.randomBytes(7).copy(q,X):(ie.push(re%1e14),X+=7);X=ne/7}else throw F=!1,Error(i+"crypto unavailable");if(!F)for(;X=10;re/=10,X++);XH-1&&(re[ne+1]==null&&(re[ne+1]=0),re[ne+1]+=re[ne]/H|0,re[ne]%=H)}return re.reverse()}return function(V,q,H,ee,ne){var re,X,ie,ce,fe,Ne,Pe,Ue,ze=V.indexOf("."),Ye=B,Ze=M;for(ze>=0&&(ce=j,j=0,V=V.replace(".",""),Ue=new ue(q),Ne=Ue.pow(V.length-ze),j=ce,Ue.c=G(x(h(Ne.c),Ne.e,"0"),10,H,U),Ue.e=Ue.c.length),Pe=G(V,q,H,ne?(re=se,U):(re=U,se)),ie=ce=Pe.length;Pe[--ce]==0;Pe.pop());if(!Pe[0])return re.charAt(0);if(ze<0?--ie:(Ne.c=Pe,Ne.e=ie,Ne.s=ee,Ne=I(Ne,Ue,Ye,Ze,H),Pe=Ne.c,fe=Ne.r,ie=Ne.e),X=ie+Ye+1,ze=Pe[X],ce=H/2,fe=fe||X<0||Pe[X+1]!=null,fe=Ze<4?(ze!=null||fe)&&(Ze==0||Ze==(Ne.s<0?3:2)):ze>ce||ze==ce&&(Ze==4||fe||Ze==6&&Pe[X-1]&1||Ze==(Ne.s<0?8:7)),X<1||!Pe[0])V=fe?x(re.charAt(1),-Ye,re.charAt(0)):re.charAt(0);else{if(Pe.length=X,fe)for(--H;++Pe[--X]>H;)Pe[X]=0,X||(++ie,Pe=[1].concat(Pe));for(ce=Pe.length;!Pe[--ce];);for(ze=0,V="";ze<=ce;V+=re.charAt(Pe[ze++]));V=x(V,ie,re.charAt(0))}return V}}(),I=function(){function U(q,H,ee){var ne,re,X,ie,ce=0,fe=q.length,Ne=H%d,Pe=H/d|0;for(q=q.slice();fe--;)X=q[fe]%d,ie=q[fe]/d|0,ne=Pe*X+ie*Ne,re=Ne*X+ne%d*d+ce,ce=(re/ee|0)+(ne/d|0)+Pe*ie,q[fe]=re%ee;return ce&&(q=[ce].concat(q)),q}function G(q,H,ee,ne){var re,X;if(ee!=ne)X=ee>ne?1:-1;else for(re=X=0;reH[re]?1:-1;break}return X}function V(q,H,ee,ne){for(var re=0;ee--;)q[ee]-=re,re=q[ee]1;q.splice(0,1));}return function(q,H,ee,ne,re){var X,ie,ce,fe,Ne,Pe,Ue,ze,Ye,Ze,nt,ct,tt,Pt,lt,ke,Je,ft=q.s==H.s?1:-1,rt=q.c,bt=H.c;if(!rt||!rt[0]||!bt||!bt[0])return new ue(!q.s||!H.s||(rt?bt&&rt[0]==bt[0]:!bt)?NaN:rt&&rt[0]==0||!bt?ft*0:ft/0);for(ze=new ue(ft),Ye=ze.c=[],ie=q.e-H.e,ft=ee+ie+1,re||(re=o,ie=m(q.e/c)-m(H.e/c),ft=ft/c|0),ce=0;bt[ce]==(rt[ce]||0);ce++);if(bt[ce]>(rt[ce]||0)&&ie--,ft<0)Ye.push(1),fe=!0;else{for(Pt=rt.length,ke=bt.length,ce=0,ft+=2,Ne=s(re/(bt[0]+1)),Ne>1&&(bt=U(bt,Ne,re),rt=U(rt,Ne,re),ke=bt.length,Pt=rt.length),tt=ke,Ze=rt.slice(0,ke),nt=Ze.length;nt=re/2&<++;do{if(Ne=0,X=G(bt,Ze,ke,nt),X<0){if(ct=Ze[0],ke!=nt&&(ct=ct*re+(Ze[1]||0)),Ne=s(ct/lt),Ne>1)for(Ne>=re&&(Ne=re-1),Pe=U(bt,Ne,re),Ue=Pe.length,nt=Ze.length;G(Pe,Ze,Ue,nt)==1;)Ne--,V(Pe,ke=10;ft/=10,ce++);Fe(ze,ee+(ze.e=ce+ie*c-1)+1,ne,fe)}else ze.e=ie,ze.r=+fe;return ze}}();function Ie(U,G,V,q){var H,ee,ne,re,X;if(V==null?V=M:g(V,0,8),!U.c)return U.toString();if(H=U.c[0],ne=U.e,G==null)X=h(U.c),X=q==1||q==2&&(ne<=D||ne>=L)?y(X,ne):x(X,ne,"0");else if(U=Fe(new ue(U),G,V),ee=U.e,X=h(U.c),re=X.length,q==1||q==2&&(G<=ee||ee<=D)){for(;rene),X=x(X,ee,"0"),ee+1>re){if(--G>0)for(X+=".";G--;X+="0");}else if(G+=ee-re,G>0)for(ee+1==re&&(X+=".");G--;X+="0");return U.s<0&&H?"-"+X:X}function we(U,G){for(var V,q,H=1,ee=new ue(U[0]);H=10;H/=10,q++);return(V=q+V*c-1)>W?U.c=U.e=null:V=10;re/=10,H++);if(ee=G-H,ee<0)ee+=c,ne=G,X=fe[ie=0],ce=s(X/Ne[H-ne-1]%10);else if(ie=n((ee+1)/c),ie>=fe.length)if(q){for(;fe.length<=ie;fe.push(0));X=ce=0,H=1,ee%=c,ne=ee-c+1}else break e;else{for(X=re=fe[ie],H=1;re>=10;re/=10,H++);ee%=c,ne=ee-c+H,ce=ne<0?0:s(X/Ne[H-ne-1]%10)}if(q=q||G<0||fe[ie+1]!=null||(ne<0?X:X%Ne[H-ne-1]),q=V<4?(ce||q)&&(V==0||V==(U.s<0?3:2)):ce>5||ce==5&&(V==4||q||V==6&&(ee>0?ne>0?X/Ne[H-ne]:0:fe[ie-1])%10&1||V==(U.s<0?8:7)),G<1||!fe[0])return fe.length=0,q?(G-=U.e+1,fe[0]=Ne[(c-G%c)%c],U.e=-G||0):fe[0]=U.e=0,U;if(ee==0?(fe.length=ie,re=1,ie--):(fe.length=ie+1,re=Ne[c-ee],fe[ie]=ne>0?s(X/Ne[H-ne]%Ne[ne])*re:0),q)for(;;)if(ie==0){for(ee=1,ne=fe[0];ne>=10;ne/=10,ee++);for(ne=fe[0]+=re,re=1;ne>=10;ne/=10,re++);ee!=re&&(U.e++,fe[0]==o&&(fe[0]=1));break}else{if(fe[ie]+=re,fe[ie]!=o)break;fe[ie--]=0,re=1}for(ee=fe.length;fe[--ee]===0;fe.pop());}U.e>W?U.c=U.e=null:U.e=L?y(G,V):x(G,V,"0"),U.s<0?"-"+G:G)}return N.absoluteValue=N.abs=function(){var U=new ue(this);return U.s<0&&(U.s=1),U},N.comparedTo=function(U,G){return A(this,new ue(U,G))},N.decimalPlaces=N.dp=function(U,G){var V,q,H,ee=this;if(U!=null)return g(U,0,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),U+ee.e+1,G);if(!(V=ee.c))return null;if(q=((H=V.length-1)-m(this.e/c))*c,H=V[H])for(;H%10==0;H/=10,q--);return q<0&&(q=0),q},N.dividedBy=N.div=function(U,G){return I(this,new ue(U,G),B,M)},N.dividedToIntegerBy=N.idiv=function(U,G){return I(this,new ue(U,G),0,1)},N.exponentiatedBy=N.pow=function(U,G){var V,q,H,ee,ne,re,X,ie,ce,fe=this;if(U=new ue(U),U.c&&!U.isInteger())throw Error(i+"Exponent not an integer: "+_e(U));if(G!=null&&(G=new ue(G)),re=U.e>14,!fe.c||!fe.c[0]||fe.c[0]==1&&!fe.e&&fe.c.length==1||!U.c||!U.c[0])return ce=new ue(Math.pow(+_e(fe),re?U.s*(2-b(U)):+_e(U))),G?ce.mod(G):ce;if(X=U.s<0,G){if(G.c?!G.c[0]:!G.s)return new ue(NaN);q=!X&&fe.isInteger()&&G.isInteger(),q&&(fe=fe.mod(G))}else{if(U.e>9&&(fe.e>0||fe.e<-1||(fe.e==0?fe.c[0]>1||re&&fe.c[1]>=24e7:fe.c[0]<8e13||re&&fe.c[0]<=9999975e7)))return ee=fe.s<0&&b(U)?-0:0,fe.e>-1&&(ee=1/ee),new ue(X?1/ee:ee);j&&(ee=n(j/c+2))}for(re?(V=new ue(.5),X&&(U.s=1),ie=b(U)):(H=Math.abs(+_e(U)),ie=H%2),ce=new ue(P);;){if(ie){if(ce=ce.times(fe),!ce.c)break;ee?ce.c.length>ee&&(ce.c.length=ee):q&&(ce=ce.mod(G))}if(H){if(H=s(H/2),H===0)break;ie=H%2}else if(U=U.times(V),Fe(U,U.e+1,1),U.e>14)ie=b(U);else{if(H=+_e(U),H===0)break;ie=H%2}fe=fe.times(fe),ee?fe.c&&fe.c.length>ee&&(fe.c.length=ee):q&&(fe=fe.mod(G))}return q?ce:(X&&(ce=P.div(ce)),G?ce.mod(G):ee?Fe(ce,j,M,ne):ce)},N.integerValue=function(U){var G=new ue(this);return U==null?U=M:g(U,0,8),Fe(G,G.e+1,U)},N.isEqualTo=N.eq=function(U,G){return A(this,new ue(U,G))===0},N.isFinite=function(){return!!this.c},N.isGreaterThan=N.gt=function(U,G){return A(this,new ue(U,G))>0},N.isGreaterThanOrEqualTo=N.gte=function(U,G){return(G=A(this,new ue(U,G)))===1||G===0},N.isInteger=function(){return!!this.c&&m(this.e/c)>this.c.length-2},N.isLessThan=N.lt=function(U,G){return A(this,new ue(U,G))<0},N.isLessThanOrEqualTo=N.lte=function(U,G){return(G=A(this,new ue(U,G)))===-1||G===0},N.isNaN=function(){return!this.s},N.isNegative=function(){return this.s<0},N.isPositive=function(){return this.s>0},N.isZero=function(){return!!this.c&&this.c[0]==0},N.minus=function(U,G){var V,q,H,ee,ne=this,re=ne.s;if(U=new ue(U,G),G=U.s,!re||!G)return new ue(NaN);if(re!=G)return U.s=-G,ne.plus(U);var X=ne.e/c,ie=U.e/c,ce=ne.c,fe=U.c;if(!X||!ie){if(!ce||!fe)return ce?(U.s=-G,U):new ue(fe?ne:NaN);if(!ce[0]||!fe[0])return fe[0]?(U.s=-G,U):new ue(ce[0]?ne:M==3?-0:0)}if(X=m(X),ie=m(ie),ce=ce.slice(),re=X-ie){for((ee=re<0)?(re=-re,H=ce):(ie=X,H=fe),H.reverse(),G=re;G--;H.push(0));H.reverse()}else for(q=(ee=(re=ce.length)<(G=fe.length))?re:G,re=G=0;G0)for(;G--;ce[V++]=0);for(G=o-1;q>re;){if(ce[--q]=0;){for(V=0,Ne=ct[H]%Ye,Pe=ct[H]/Ye|0,ne=X,ee=H+ne;ee>H;)ie=nt[--ne]%Ye,ce=nt[ne]/Ye|0,re=Pe*ie+ce*Ne,ie=Ne*ie+re%Ye*Ye+Ue[ee]+V,V=(ie/ze|0)+(re/Ye|0)+Pe*ce,Ue[ee--]=ie%ze;Ue[ee]=V}return V?++q:Ue.splice(0,1),qe(U,Ue,q)},N.negated=function(){var U=new ue(this);return U.s=-U.s||null,U},N.plus=function(U,G){var V,q=this,H=q.s;if(U=new ue(U,G),G=U.s,!H||!G)return new ue(NaN);if(H!=G)return U.s=-G,q.minus(U);var ee=q.e/c,ne=U.e/c,re=q.c,X=U.c;if(!ee||!ne){if(!re||!X)return new ue(H/0);if(!re[0]||!X[0])return X[0]?U:new ue(re[0]?q:H*0)}if(ee=m(ee),ne=m(ne),re=re.slice(),H=ee-ne){for(H>0?(ne=ee,V=X):(H=-H,V=re),V.reverse();H--;V.push(0));V.reverse()}for(H=re.length,G=X.length,H-G<0&&(V=X,X=re,re=V,G=H),H=0;G;)H=(re[--G]=re[G]+X[G]+H)/o|0,re[G]=o===re[G]?0:re[G]%o;return H&&(re=[H].concat(re),++ne),qe(U,re,ne)},N.precision=N.sd=function(U,G){var V,q,H,ee=this;if(U!=null&&U!==!!U)return g(U,1,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),U,G);if(!(V=ee.c))return null;if(H=V.length-1,q=H*c+1,H=V[H]){for(;H%10==0;H/=10,q--);for(H=V[0];H>=10;H/=10,q++);}return U&&ee.e+1>q&&(q=ee.e+1),q},N.shiftedBy=function(U){return g(U,-u,u),this.times("1e"+U)},N.squareRoot=N.sqrt=function(){var U,G,V,q,H,ee=this,ne=ee.c,re=ee.s,X=ee.e,ie=B+4,ce=new ue("0.5");if(re!==1||!ne||!ne[0])return new ue(!re||re<0&&(!ne||ne[0])?NaN:ne?ee:1/0);if(re=Math.sqrt(+_e(ee)),re==0||re==1/0?(G=h(ne),(G.length+X)%2==0&&(G+="0"),re=Math.sqrt(+G),X=m((X+1)/2)-(X<0||X%2),re==1/0?G="5e"+X:(G=re.toExponential(),G=G.slice(0,G.indexOf("e")+1)+X),V=new ue(G)):V=new ue(re+""),V.c[0]){for(X=V.e,re=X+ie,re<3&&(re=0);;)if(H=V,V=ce.times(H.plus(I(ee,H,ie,1))),h(H.c).slice(0,re)===(G=h(V.c)).slice(0,re))if(V.e0&&Ue>0){for(ee=Ue%re||re,ce=Pe.substr(0,ee);ee0&&(ce+=ie+Pe.slice(ee)),Ne&&(ce="-"+ce)}q=fe?ce+(V.decimalSeparator||"")+((X=+V.fractionGroupSize)?fe.replace(new RegExp("\\d{"+X+"}\\B","g"),"$&"+(V.fractionGroupSeparator||"")):fe):ce}return(V.prefix||"")+q+(V.suffix||"")},N.toFraction=function(U){var G,V,q,H,ee,ne,re,X,ie,ce,fe,Ne,Pe=this,Ue=Pe.c;if(U!=null&&(re=new ue(U),!re.isInteger()&&(re.c||re.s!==1)||re.lt(P)))throw Error(i+"Argument "+(re.isInteger()?"out of range: ":"not an integer: ")+_e(re));if(!Ue)return new ue(Pe);for(G=new ue(P),ie=V=new ue(P),q=X=new ue(P),Ne=h(Ue),ee=G.e=Ne.length-Pe.e-1,G.c[0]=l[(ne=ee%c)<0?c+ne:ne],U=!U||re.comparedTo(G)>0?ee>0?G:ie:re,ne=W,W=1/0,re=new ue(Ne),X.c[0]=0;ce=I(re,G,0,1),H=V.plus(ce.times(q)),H.comparedTo(U)!=1;)V=q,q=H,ie=X.plus(ce.times(H=ie)),X=H,G=re.minus(ce.times(H=G)),re=H;return H=I(U.minus(V),q,0,1),X=X.plus(H.times(ie)),V=V.plus(H.times(q)),X.s=ie.s=Pe.s,ee=ee*2,fe=I(ie,q,ee,M).minus(Pe).abs().comparedTo(I(X,V,ee,M).minus(Pe).abs())<1?[ie,q]:[X,V],W=ne,fe},N.toNumber=function(){return+_e(this)},N.toPrecision=function(U,G){return U!=null&&g(U,1,f),Ie(this,U,G,2)},N.toString=function(U){var G,V=this,q=V.s,H=V.e;return H===null?q?(G="Infinity",q<0&&(G="-"+G)):G="NaN":(U==null?G=H<=D||H>=L?y(h(V.c),H):x(h(V.c),H,"0"):U===10&&oe?(V=Fe(new ue(V),B+H+1,M),G=x(h(V.c),V.e,"0")):(g(U,2,se.length,"Base"),G=R(x(h(V.c),H,"0"),10,U,q,!0)),q<0&&V.c[0]&&(G="-"+G)),G},N.valueOf=N.toJSON=function(){return _e(this)},N._isBigNumber=!0,v!=null&&ue.set(v),ue}function m(v){var I=v|0;return v>0||v===I?I:I-1}function h(v){for(var I,R,w=1,N=v.length,P=v[0]+"";wL^R?1:-1;for(M=(D=N.length)<(L=P.length)?D:L,B=0;BP[B]^R?1:-1;return D==L?0:D>L^R?1:-1}function g(v,I,R,w){if(vR||v!==s(v))throw Error(i+(w||"Argument")+(typeof v=="number"?vR?" out of range: ":" not an integer: ":" not a primitive number: ")+String(v))}function b(v){var I=v.c.length-1;return m(v.e/c)==I&&v.c[I]%2!=0}function y(v,I){return(v.length>1?v.charAt(0)+"."+v.slice(1):v)+(I<0?"e":"e+")+I}function x(v,I,R){var w,N;if(I<0){for(N=R+".";++I;N+=R);v=N+v}else if(w=v.length,++I>w){for(N=R,I-=w;--I;N+=R);v+=N}else I{var DMe=RK(),BMe=LMe.exports;(function(){"use strict";function t(u){return u<10?"0"+u:u}var e=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,r=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,n,s,i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},a;function o(u){return r.lastIndex=0,r.test(u)?'"'+u.replace(r,function(l){var d=i[l];return typeof d=="string"?d:"\\u"+("0000"+l.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+u+'"'}function c(u,l){var d,f,p,m,h=n,A,g=l[u],b=g!=null&&(g instanceof DMe||DMe.isBigNumber(g));switch(g&&typeof g=="object"&&typeof g.toJSON=="function"&&(g=g.toJSON(u)),typeof a=="function"&&(g=a.call(l,u,g)),typeof g){case"string":return b?g:o(g);case"number":return isFinite(g)?String(g):"null";case"boolean":case"null":case"bigint":return String(g);case"object":if(!g)return"null";if(n+=s,A=[],Object.prototype.toString.apply(g)==="[object Array]"){for(m=g.length,d=0;d{"use strict";var trr=eC(),rrr=Vp(),Vk=function(t,e,r){for(var n=t,s;(s=n.next)!=null;n=s)if(s.key===e)return n.next=s.next,r||(s.next=t.next,t.next=s),s},nrr=function(t,e){if(t){var r=Vk(t,e);return r&&r.value}},srr=function(t,e,r){var n=Vk(t,e);n?n.value=r:t.next={key:e,next:t.next,value:r}},irr=function(t,e){return t?!!Vk(t,e):!1},arr=function(t,e){if(t)return Vk(t,e,!0)};dMe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new rrr("Side channel does not contain "+trr(n))},delete:function(n){var s=e&&e.next,i=arr(e,n);return i&&s&&s===i&&(e=void 0),!!i},get:function(n){return nrr(e,n)},has:function(n){return irr(e,n)},set:function(n,s){e||(e={next:void 0}),srr(e,n,s)}};return r}});var _V=E((iqr,hMe)=>{"use strict";var pMe=MS(),mMe=Dj(),orr=mMe([pMe("%String.prototype.indexOf%")]);hMe.exports=function(e,r){var n=pMe(e,!!r);return typeof n=="function"&&orr(e,".prototype.")>-1?mMe([n]):n}});var SV=E((aqr,AMe)=>{"use strict";var crr=MS(),tC=_V(),urr=eC(),lrr=Vp(),gMe=crr("%Map%",!0),drr=tC("Map.prototype.get",!0),frr=tC("Map.prototype.set",!0),prr=tC("Map.prototype.has",!0),mrr=tC("Map.prototype.delete",!0),hrr=tC("Map.prototype.size",!0);AMe.exports=!!gMe&&function(){var e,r={assert:function(n){if(!r.has(n))throw new lrr("Side channel does not contain "+urr(n))},delete:function(n){if(e){var s=mrr(e,n);return hrr(e)===0&&(e=void 0),s}return!1},get:function(n){if(e)return drr(e,n)},has:function(n){return e?prr(e,n):!1},set:function(n,s){e||(e=new gMe),frr(e,n,s)}};return r}});var xMe=E((oqr,yMe)=>{"use strict";var grr=MS(),Kk=_V(),Arr=eC(),zk=SV(),yrr=Vp(),Xx=grr("%WeakMap%",!0),xrr=Kk("WeakMap.prototype.get",!0),brr=Kk("WeakMap.prototype.set",!0),Err=Kk("WeakMap.prototype.has",!0),_rr=Kk("WeakMap.prototype.delete",!0);yMe.exports=Xx?function(){var e,r,n={assert:function(s){if(!n.has(s))throw new yrr("Side channel does not contain "+Arr(s))},delete:function(s){if(Xx&&s&&(typeof s=="object"||typeof s=="function")){if(e)return _rr(e,s)}else if(zk&&r)return r.delete(s);return!1},get:function(s){return Xx&&s&&(typeof s=="object"||typeof s=="function")&&e?xrr(e,s):r&&r.get(s)},has:function(s){return Xx&&s&&(typeof s=="object"||typeof s=="function")&&e?Err(e,s):!!r&&r.has(s)},set:function(s,i){Xx&&s&&(typeof s=="object"||typeof s=="function")?(e||(e=new Xx),brr(e,s,i)):zk&&(r||(r=zk()),r.set(s,i))}};return n}:zk});var EMe=E((cqr,bMe)=>{"use strict";var Srr=Vp(),vrr=eC(),Crr=fMe(),Irr=SV(),Trr=xMe(),wrr=Trr||Irr||Crr;bMe.exports=function(){var e,r={assert:function(n){if(!r.has(n))throw new Srr("Side channel does not contain "+vrr(n))},delete:function(n){return!!e&&e.delete(n)},get:function(n){return e&&e.get(n)},has:function(n){return!!e&&e.has(n)},set:function(n,s){e||(e=wrr()),e.set(n,s)}};return r}});var Yk=E((uqr,_Me)=>{"use strict";var Rrr=String.prototype.replace,Nrr=/%20/g,vV={RFC1738:"RFC1738",RFC3986:"RFC3986"};_Me.exports={default:vV.RFC3986,formatters:{RFC1738:function(t){return Rrr.call(t,Nrr,"+")},RFC3986:function(t){return String(t)}},RFC1738:vV.RFC1738,RFC3986:vV.RFC3986}});var TV=E((lqr,vMe)=>{"use strict";var Orr=Yk(),CV=Object.prototype.hasOwnProperty,Hh=Array.isArray,Sl=function(){for(var t=[],e=0;e<256;++e)t.push("%"+((e<16?"0":"")+e.toString(16)).toUpperCase());return t}(),Prr=function(e){for(;e.length>1;){var r=e.pop(),n=r.obj[r.prop];if(Hh(n)){for(var s=[],i=0;i=IV?a.slice(c,c+IV):a,l=[],d=0;d=48&&f<=57||f>=65&&f<=90||f>=97&&f<=122||i===Orr.RFC1738&&(f===40||f===41)){l[l.length]=u.charAt(d);continue}if(f<128){l[l.length]=Sl[f];continue}if(f<2048){l[l.length]=Sl[192|f>>6]+Sl[128|f&63];continue}if(f<55296||f>=57344){l[l.length]=Sl[224|f>>12]+Sl[128|f>>6&63]+Sl[128|f&63];continue}d+=1,f=65536+((f&1023)<<10|u.charCodeAt(d)&1023),l[l.length]=Sl[240|f>>18]+Sl[128|f>>12&63]+Sl[128|f>>6&63]+Sl[128|f&63]}o+=l.join("")}return o},Mrr=function(e){for(var r=[{obj:{o:e},prop:"o"}],n=[],s=0;s{"use strict";var IMe=EMe(),Jk=TV(),rC=Yk(),qrr=Object.prototype.hasOwnProperty,TMe={brackets:function(e){return e+"[]"},comma:"comma",indices:function(e,r){return e+"["+r+"]"},repeat:function(e){return e}},vl=Array.isArray,jrr=Array.prototype.push,wMe=function(t,e){jrr.apply(t,vl(e)?e:[e])},Hrr=Date.prototype.toISOString,CMe=rC.default,Ds={addQueryPrefix:!1,allowDots:!1,allowEmptyArrays:!1,arrayFormat:"indices",charset:"utf-8",charsetSentinel:!1,commaRoundTrip:!1,delimiter:"&",encode:!0,encodeDotInKeys:!1,encoder:Jk.encode,encodeValuesOnly:!1,filter:void 0,format:CMe,formatter:rC.formatters[CMe],indices:!1,serializeDate:function(e){return Hrr.call(e)},skipNulls:!1,strictNullHandling:!1},Qrr=function(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="symbol"||typeof e=="bigint"},wV={},Grr=function t(e,r,n,s,i,a,o,c,u,l,d,f,p,m,h,A,g,b){for(var y=e,x=b,v=0,C=!1;(x=x.get(wV))!==void 0&&!C;){var R=x.get(e);if(v+=1,typeof R<"u"){if(R===v)throw new RangeError("Cyclic object value");C=!0}typeof x.get(wV)>"u"&&(v=0)}if(typeof l=="function"?y=l(r,y):y instanceof Date?y=p(y):n==="comma"&&vl(y)&&(y=Jk.maybeMap(y,function(J){return J instanceof Date?p(J):J})),y===null){if(a)return u&&!A?u(r,Ds.encoder,g,"key",m):r;y=""}if(Qrr(y)||Jk.isBuffer(y)){if(u){var w=A?r:u(r,Ds.encoder,g,"key",m);return[h(w)+"="+h(u(y,Ds.encoder,g,"value",m))]}return[h(r)+"="+h(String(y))]}var N=[];if(typeof y>"u")return N;var P;if(n==="comma"&&vl(y))A&&u&&(y=Jk.maybeMap(y,u)),P=[{value:y.length>0?y.join(",")||null:void 0}];else if(vl(l))P=l;else{var L=Object.keys(y);P=d?L.sort(d):L}var M=c?String(r).replace(/\./g,"%2E"):String(r),k=s&&vl(y)&&y.length===1?M+"[]":M;if(i&&vl(y)&&y.length===0)return k+"[]";for(var B=0;B"u"?e.encodeDotInKeys===!0?!0:Ds.allowDots:!!e.allowDots;return{addQueryPrefix:typeof e.addQueryPrefix=="boolean"?e.addQueryPrefix:Ds.addQueryPrefix,allowDots:o,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Ds.allowEmptyArrays,arrayFormat:a,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Ds.charsetSentinel,commaRoundTrip:!!e.commaRoundTrip,delimiter:typeof e.delimiter>"u"?Ds.delimiter:e.delimiter,encode:typeof e.encode=="boolean"?e.encode:Ds.encode,encodeDotInKeys:typeof e.encodeDotInKeys=="boolean"?e.encodeDotInKeys:Ds.encodeDotInKeys,encoder:typeof e.encoder=="function"?e.encoder:Ds.encoder,encodeValuesOnly:typeof e.encodeValuesOnly=="boolean"?e.encodeValuesOnly:Ds.encodeValuesOnly,filter:i,format:n,formatter:s,serializeDate:typeof e.serializeDate=="function"?e.serializeDate:Ds.serializeDate,skipNulls:typeof e.skipNulls=="boolean"?e.skipNulls:Ds.skipNulls,sort:typeof e.sort=="function"?e.sort:null,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Ds.strictNullHandling}};RMe.exports=function(t,e){var r=t,n=Vrr(e),s,i;typeof n.filter=="function"?(i=n.filter,r=i("",r)):vl(n.filter)&&(i=n.filter,s=i);var a=[];if(typeof r!="object"||r===null)return"";var o=TMe[n.arrayFormat],c=o==="comma"&&n.commaRoundTrip;s||(s=Object.keys(r)),n.sort&&s.sort(n.sort);for(var u=IMe(),l=0;l0?m+p:""}});var kMe=E((fqr,DMe)=>{"use strict";var Qh=TV(),RV=Object.prototype.hasOwnProperty,OMe=Array.isArray,Zn={allowDots:!1,allowEmptyArrays:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decodeDotInKeys:!1,decoder:Qh.decode,delimiter:"&",depth:5,duplicates:"combine",ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1e3,parseArrays:!0,plainObjects:!1,strictDepth:!1,strictNullHandling:!1,throwOnLimitExceeded:!1},zrr=function(t){return t.replace(/&#(\d+);/g,function(e,r){return String.fromCharCode(parseInt(r,10))})},PMe=function(t,e,r){if(t&&typeof t=="string"&&e.comma&&t.indexOf(",")>-1)return t.split(",");if(e.throwOnLimitExceeded&&r>=e.arrayLimit)throw new RangeError("Array limit exceeded. Only "+e.arrayLimit+" element"+(e.arrayLimit===1?"":"s")+" allowed in an array.");return t},Krr="utf8=%26%2310003%3B",Yrr="utf8=%E2%9C%93",Jrr=function(e,r){var n={__proto__:null},s=r.ignoreQueryPrefix?e.replace(/^\?/,""):e;s=s.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var i=r.parameterLimit===1/0?void 0:r.parameterLimit,a=s.split(r.delimiter,r.throwOnLimitExceeded?i+1:i);if(r.throwOnLimitExceeded&&a.length>i)throw new RangeError("Parameter limit exceeded. Only "+i+" parameter"+(i===1?"":"s")+" allowed.");var o=-1,c,u=r.charset;if(r.charsetSentinel)for(c=0;c-1&&(m=OMe(m)?[m]:m);var h=RV.call(n,p);h&&r.duplicates==="combine"?n[p]=Qh.combine(n[p],m):(!h||r.duplicates==="last")&&(n[p]=m)}return n},Xrr=function(t,e,r,n){var s=0;if(t.length>0&&t[t.length-1]==="[]"){var i=t.slice(0,-1).join("");s=Array.isArray(e)&&e[i]?e[i].length:0}for(var a=n?e:PMe(e,r,s),o=t.length-1;o>=0;--o){var c,u=t[o];if(u==="[]"&&r.parseArrays)c=r.allowEmptyArrays&&(a===""||r.strictNullHandling&&a===null)?[]:Qh.combine([],a);else{c=r.plainObjects?{__proto__:null}:{};var l=u.charAt(0)==="["&&u.charAt(u.length-1)==="]"?u.slice(1,-1):u,d=r.decodeDotInKeys?l.replace(/%2E/g,"."):l,f=parseInt(d,10);!r.parseArrays&&d===""?c={0:a}:!isNaN(f)&&u!==d&&String(f)===d&&f>=0&&r.parseArrays&&f<=r.arrayLimit?(c=[],c[f]=a):d!=="__proto__"&&(c[d]=a)}a=c}return a},Zrr=function(e,r,n,s){if(e){var i=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,a=/(\[[^[\]]*])/,o=/(\[[^[\]]*])/g,c=n.depth>0&&a.exec(i),u=c?i.slice(0,c.index):i,l=[];if(u){if(!n.plainObjects&&RV.call(Object.prototype,u)&&!n.allowPrototypes)return;l.push(u)}for(var d=0;n.depth>0&&(c=o.exec(i))!==null&&d"u"?Zn.charset:e.charset,n=typeof e.duplicates>"u"?Zn.duplicates:e.duplicates;if(n!=="combine"&&n!=="first"&&n!=="last")throw new TypeError("The duplicates option must be either combine, first, or last");var s=typeof e.allowDots>"u"?e.decodeDotInKeys===!0?!0:Zn.allowDots:!!e.allowDots;return{allowDots:s,allowEmptyArrays:typeof e.allowEmptyArrays=="boolean"?!!e.allowEmptyArrays:Zn.allowEmptyArrays,allowPrototypes:typeof e.allowPrototypes=="boolean"?e.allowPrototypes:Zn.allowPrototypes,allowSparse:typeof e.allowSparse=="boolean"?e.allowSparse:Zn.allowSparse,arrayLimit:typeof e.arrayLimit=="number"?e.arrayLimit:Zn.arrayLimit,charset:r,charsetSentinel:typeof e.charsetSentinel=="boolean"?e.charsetSentinel:Zn.charsetSentinel,comma:typeof e.comma=="boolean"?e.comma:Zn.comma,decodeDotInKeys:typeof e.decodeDotInKeys=="boolean"?e.decodeDotInKeys:Zn.decodeDotInKeys,decoder:typeof e.decoder=="function"?e.decoder:Zn.decoder,delimiter:typeof e.delimiter=="string"||Qh.isRegExp(e.delimiter)?e.delimiter:Zn.delimiter,depth:typeof e.depth=="number"||e.depth===!1?+e.depth:Zn.depth,duplicates:n,ignoreQueryPrefix:e.ignoreQueryPrefix===!0,interpretNumericEntities:typeof e.interpretNumericEntities=="boolean"?e.interpretNumericEntities:Zn.interpretNumericEntities,parameterLimit:typeof e.parameterLimit=="number"?e.parameterLimit:Zn.parameterLimit,parseArrays:e.parseArrays!==!1,plainObjects:typeof e.plainObjects=="boolean"?e.plainObjects:Zn.plainObjects,strictDepth:typeof e.strictDepth=="boolean"?!!e.strictDepth:Zn.strictDepth,strictNullHandling:typeof e.strictNullHandling=="boolean"?e.strictNullHandling:Zn.strictNullHandling,throwOnLimitExceeded:typeof e.throwOnLimitExceeded=="boolean"?e.throwOnLimitExceeded:!1}};DMe.exports=function(t,e){var r=enr(e);if(t===""||t===null||typeof t>"u")return r.plainObjects?{__proto__:null}:{};for(var n=typeof t=="string"?Jrr(t,r):t,s=r.plainObjects?{__proto__:null}:{},i=Object.keys(n),a=0;a{"use strict";var tnr=NMe(),rnr=kMe(),nnr=Yk();LMe.exports={formats:nnr,parse:rnr,stringify:tnr}});var NV=E((BMe,Xk)=>{(function(t){"use strict";var e,r=/^-?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,n=Math.ceil,s=Math.floor,i="[BigNumber Error] ",a=i+"Number primitive has more than 15 significant digits: ",o=1e14,c=14,u=9007199254740991,l=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8,1e9,1e10,1e11,1e12,1e13],d=1e7,f=1e9;function p(v){var C,R,w,N=ue.prototype={constructor:ue,toString:null,valueOf:null},P=new ue(1),L=20,M=4,k=-7,B=21,Z=-1e7,W=1e7,F=!1,V=1,j=0,J={prefix:"",groupSize:3,secondaryGroupSize:0,groupSeparator:",",decimalSeparator:".",fractionGroupSize:0,fractionGroupSeparator:"\xA0",suffix:""},se="0123456789abcdefghijklmnopqrstuvwxyz",oe=!0;function ue(U,G){var z,q,H,ee,ne,re,X,ie,ce=this;if(!(ce instanceof ue))return new ue(U,G);if(G==null){if(U&&U._isBigNumber===!0){ce.s=U.s,!U.c||U.e>W?ce.c=ce.e=null:U.e=10;ne/=10,ee++);ee>W?ce.c=ce.e=null:(ce.e=ee,ce.c=[U]);return}ie=String(U)}else{if(!r.test(ie=String(U)))return w(ce,ie,re);ce.s=ie.charCodeAt(0)==45?(ie=ie.slice(1),-1):1}(ee=ie.indexOf("."))>-1&&(ie=ie.replace(".","")),(ne=ie.search(/e/i))>0?(ee<0&&(ee=ne),ee+=+ie.slice(ne+1),ie=ie.substring(0,ne)):ee<0&&(ee=ie.length)}else{if(g(G,2,se.length,"Base"),G==10&&oe)return ce=new ue(U),Fe(ce,L+ce.e+1,M);if(ie=String(U),re=typeof U=="number"){if(U*0!=0)return w(ce,ie,re,G);if(ce.s=1/U<0?(ie=ie.slice(1),-1):1,ue.DEBUG&&ie.replace(/^0\.0*|\./,"").length>15)throw Error(a+U)}else ce.s=ie.charCodeAt(0)===45?(ie=ie.slice(1),-1):1;for(z=se.slice(0,G),ee=ne=0,X=ie.length;neee){ee=X;continue}}else if(!H&&(ie==ie.toUpperCase()&&(ie=ie.toLowerCase())||ie==ie.toLowerCase()&&(ie=ie.toUpperCase()))){H=!0,ne=-1,ee=0;continue}return w(ce,String(U),re,G)}re=!1,ie=R(ie,G,10,ce.s),(ee=ie.indexOf("."))>-1?ie=ie.replace(".",""):ee=ie.length}for(ne=0;ie.charCodeAt(ne)===48;ne++);for(X=ie.length;ie.charCodeAt(--X)===48;);if(ie=ie.slice(ne,++X)){if(X-=ne,re&&ue.DEBUG&&X>15&&(U>u||U!==s(U)))throw Error(a+ce.s*U);if((ee=ee-ne-1)>W)ce.c=ce.e=null;else if(ee=-f&&H<=f&&H===s(H)){if(q[0]===0){if(H===0&&q.length===1)return!0;break e}if(G=(H+1)%c,G<1&&(G+=c),String(q[0]).length==G){for(G=0;G=o||z!==s(z))break e;if(z!==0)return!0}}}else if(q===null&&H===null&&(ee===null||ee===1||ee===-1))return!0;throw Error(i+"Invalid BigNumber: "+U)},ue.maximum=ue.max=function(){return we(arguments,-1)},ue.minimum=ue.min=function(){return we(arguments,1)},ue.random=function(){var U=9007199254740992,G=Math.random()*U&2097151?function(){return s(Math.random()*U)}:function(){return(Math.random()*1073741824|0)*8388608+(Math.random()*8388608|0)};return function(z){var q,H,ee,ne,re,X=0,ie=[],ce=new ue(P);if(z==null?z=L:g(z,0,f),ne=n(z/c),F)if(crypto.getRandomValues){for(q=crypto.getRandomValues(new Uint32Array(ne*=2));X>>11),re>=9e15?(H=crypto.getRandomValues(new Uint32Array(2)),q[X]=H[0],q[X+1]=H[1]):(ie.push(re%1e14),X+=2);X=ne/2}else if(crypto.randomBytes){for(q=crypto.randomBytes(ne*=7);X=9e15?crypto.randomBytes(7).copy(q,X):(ie.push(re%1e14),X+=7);X=ne/7}else throw F=!1,Error(i+"crypto unavailable");if(!F)for(;X=10;re/=10,X++);XH-1&&(re[ne+1]==null&&(re[ne+1]=0),re[ne+1]+=re[ne]/H|0,re[ne]%=H)}return re.reverse()}return function(z,q,H,ee,ne){var re,X,ie,ce,fe,Ne,Pe,Ue,Ke=z.indexOf("."),Ye=L,Ze=M;for(Ke>=0&&(ce=j,j=0,z=z.replace(".",""),Ue=new ue(q),Ne=Ue.pow(z.length-Ke),j=ce,Ue.c=G(x(h(Ne.c),Ne.e,"0"),10,H,U),Ue.e=Ue.c.length),Pe=G(z,q,H,ne?(re=se,U):(re=U,se)),ie=ce=Pe.length;Pe[--ce]==0;Pe.pop());if(!Pe[0])return re.charAt(0);if(Ke<0?--ie:(Ne.c=Pe,Ne.e=ie,Ne.s=ee,Ne=C(Ne,Ue,Ye,Ze,H),Pe=Ne.c,fe=Ne.r,ie=Ne.e),X=ie+Ye+1,Ke=Pe[X],ce=H/2,fe=fe||X<0||Pe[X+1]!=null,fe=Ze<4?(Ke!=null||fe)&&(Ze==0||Ze==(Ne.s<0?3:2)):Ke>ce||Ke==ce&&(Ze==4||fe||Ze==6&&Pe[X-1]&1||Ze==(Ne.s<0?8:7)),X<1||!Pe[0])z=fe?x(re.charAt(1),-Ye,re.charAt(0)):re.charAt(0);else{if(Pe.length=X,fe)for(--H;++Pe[--X]>H;)Pe[X]=0,X||(++ie,Pe=[1].concat(Pe));for(ce=Pe.length;!Pe[--ce];);for(Ke=0,z="";Ke<=ce;z+=re.charAt(Pe[Ke++]));z=x(z,ie,re.charAt(0))}return z}}(),C=function(){function U(q,H,ee){var ne,re,X,ie,ce=0,fe=q.length,Ne=H%d,Pe=H/d|0;for(q=q.slice();fe--;)X=q[fe]%d,ie=q[fe]/d|0,ne=Pe*X+ie*Ne,re=Ne*X+ne%d*d+ce,ce=(re/ee|0)+(ne/d|0)+Pe*ie,q[fe]=re%ee;return ce&&(q=[ce].concat(q)),q}function G(q,H,ee,ne){var re,X;if(ee!=ne)X=ee>ne?1:-1;else for(re=X=0;reH[re]?1:-1;break}return X}function z(q,H,ee,ne){for(var re=0;ee--;)q[ee]-=re,re=q[ee]1;q.splice(0,1));}return function(q,H,ee,ne,re){var X,ie,ce,fe,Ne,Pe,Ue,Ke,Ye,Ze,nt,ct,tt,Dt,lt,De,Je,ft=q.s==H.s?1:-1,rt=q.c,bt=H.c;if(!rt||!rt[0]||!bt||!bt[0])return new ue(!q.s||!H.s||(rt?bt&&rt[0]==bt[0]:!bt)?NaN:rt&&rt[0]==0||!bt?ft*0:ft/0);for(Ke=new ue(ft),Ye=Ke.c=[],ie=q.e-H.e,ft=ee+ie+1,re||(re=o,ie=m(q.e/c)-m(H.e/c),ft=ft/c|0),ce=0;bt[ce]==(rt[ce]||0);ce++);if(bt[ce]>(rt[ce]||0)&&ie--,ft<0)Ye.push(1),fe=!0;else{for(Dt=rt.length,De=bt.length,ce=0,ft+=2,Ne=s(re/(bt[0]+1)),Ne>1&&(bt=U(bt,Ne,re),rt=U(rt,Ne,re),De=bt.length,Dt=rt.length),tt=De,Ze=rt.slice(0,De),nt=Ze.length;nt=re/2&<++;do{if(Ne=0,X=G(bt,Ze,De,nt),X<0){if(ct=Ze[0],De!=nt&&(ct=ct*re+(Ze[1]||0)),Ne=s(ct/lt),Ne>1)for(Ne>=re&&(Ne=re-1),Pe=U(bt,Ne,re),Ue=Pe.length,nt=Ze.length;G(Pe,Ze,Ue,nt)==1;)Ne--,z(Pe,De=10;ft/=10,ce++);Fe(Ke,ee+(Ke.e=ce+ie*c-1)+1,ne,fe)}else Ke.e=ie,Ke.r=+fe;return Ke}}();function Ce(U,G,z,q){var H,ee,ne,re,X;if(z==null?z=M:g(z,0,8),!U.c)return U.toString();if(H=U.c[0],ne=U.e,G==null)X=h(U.c),X=q==1||q==2&&(ne<=k||ne>=B)?y(X,ne):x(X,ne,"0");else if(U=Fe(new ue(U),G,z),ee=U.e,X=h(U.c),re=X.length,q==1||q==2&&(G<=ee||ee<=k)){for(;rene),X=x(X,ee,"0"),ee+1>re){if(--G>0)for(X+=".";G--;X+="0");}else if(G+=ee-re,G>0)for(ee+1==re&&(X+=".");G--;X+="0");return U.s<0&&H?"-"+X:X}function we(U,G){for(var z,q,H=1,ee=new ue(U[0]);H=10;H/=10,q++);return(z=q+z*c-1)>W?U.c=U.e=null:z=10;re/=10,H++);if(ee=G-H,ee<0)ee+=c,ne=G,X=fe[ie=0],ce=s(X/Ne[H-ne-1]%10);else if(ie=n((ee+1)/c),ie>=fe.length)if(q){for(;fe.length<=ie;fe.push(0));X=ce=0,H=1,ee%=c,ne=ee-c+1}else break e;else{for(X=re=fe[ie],H=1;re>=10;re/=10,H++);ee%=c,ne=ee-c+H,ce=ne<0?0:s(X/Ne[H-ne-1]%10)}if(q=q||G<0||fe[ie+1]!=null||(ne<0?X:X%Ne[H-ne-1]),q=z<4?(ce||q)&&(z==0||z==(U.s<0?3:2)):ce>5||ce==5&&(z==4||q||z==6&&(ee>0?ne>0?X/Ne[H-ne]:0:fe[ie-1])%10&1||z==(U.s<0?8:7)),G<1||!fe[0])return fe.length=0,q?(G-=U.e+1,fe[0]=Ne[(c-G%c)%c],U.e=-G||0):fe[0]=U.e=0,U;if(ee==0?(fe.length=ie,re=1,ie--):(fe.length=ie+1,re=Ne[c-ee],fe[ie]=ne>0?s(X/Ne[H-ne]%Ne[ne])*re:0),q)for(;;)if(ie==0){for(ee=1,ne=fe[0];ne>=10;ne/=10,ee++);for(ne=fe[0]+=re,re=1;ne>=10;ne/=10,re++);ee!=re&&(U.e++,fe[0]==o&&(fe[0]=1));break}else{if(fe[ie]+=re,fe[ie]!=o)break;fe[ie--]=0,re=1}for(ee=fe.length;fe[--ee]===0;fe.pop());}U.e>W?U.c=U.e=null:U.e=B?y(G,z):x(G,z,"0"),U.s<0?"-"+G:G)}return N.absoluteValue=N.abs=function(){var U=new ue(this);return U.s<0&&(U.s=1),U},N.comparedTo=function(U,G){return A(this,new ue(U,G))},N.decimalPlaces=N.dp=function(U,G){var z,q,H,ee=this;if(U!=null)return g(U,0,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),U+ee.e+1,G);if(!(z=ee.c))return null;if(q=((H=z.length-1)-m(this.e/c))*c,H=z[H])for(;H%10==0;H/=10,q--);return q<0&&(q=0),q},N.dividedBy=N.div=function(U,G){return C(this,new ue(U,G),L,M)},N.dividedToIntegerBy=N.idiv=function(U,G){return C(this,new ue(U,G),0,1)},N.exponentiatedBy=N.pow=function(U,G){var z,q,H,ee,ne,re,X,ie,ce,fe=this;if(U=new ue(U),U.c&&!U.isInteger())throw Error(i+"Exponent not an integer: "+_e(U));if(G!=null&&(G=new ue(G)),re=U.e>14,!fe.c||!fe.c[0]||fe.c[0]==1&&!fe.e&&fe.c.length==1||!U.c||!U.c[0])return ce=new ue(Math.pow(+_e(fe),re?U.s*(2-b(U)):+_e(U))),G?ce.mod(G):ce;if(X=U.s<0,G){if(G.c?!G.c[0]:!G.s)return new ue(NaN);q=!X&&fe.isInteger()&&G.isInteger(),q&&(fe=fe.mod(G))}else{if(U.e>9&&(fe.e>0||fe.e<-1||(fe.e==0?fe.c[0]>1||re&&fe.c[1]>=24e7:fe.c[0]<8e13||re&&fe.c[0]<=9999975e7)))return ee=fe.s<0&&b(U)?-0:0,fe.e>-1&&(ee=1/ee),new ue(X?1/ee:ee);j&&(ee=n(j/c+2))}for(re?(z=new ue(.5),X&&(U.s=1),ie=b(U)):(H=Math.abs(+_e(U)),ie=H%2),ce=new ue(P);;){if(ie){if(ce=ce.times(fe),!ce.c)break;ee?ce.c.length>ee&&(ce.c.length=ee):q&&(ce=ce.mod(G))}if(H){if(H=s(H/2),H===0)break;ie=H%2}else if(U=U.times(z),Fe(U,U.e+1,1),U.e>14)ie=b(U);else{if(H=+_e(U),H===0)break;ie=H%2}fe=fe.times(fe),ee?fe.c&&fe.c.length>ee&&(fe.c.length=ee):q&&(fe=fe.mod(G))}return q?ce:(X&&(ce=P.div(ce)),G?ce.mod(G):ee?Fe(ce,j,M,ne):ce)},N.integerValue=function(U){var G=new ue(this);return U==null?U=M:g(U,0,8),Fe(G,G.e+1,U)},N.isEqualTo=N.eq=function(U,G){return A(this,new ue(U,G))===0},N.isFinite=function(){return!!this.c},N.isGreaterThan=N.gt=function(U,G){return A(this,new ue(U,G))>0},N.isGreaterThanOrEqualTo=N.gte=function(U,G){return(G=A(this,new ue(U,G)))===1||G===0},N.isInteger=function(){return!!this.c&&m(this.e/c)>this.c.length-2},N.isLessThan=N.lt=function(U,G){return A(this,new ue(U,G))<0},N.isLessThanOrEqualTo=N.lte=function(U,G){return(G=A(this,new ue(U,G)))===-1||G===0},N.isNaN=function(){return!this.s},N.isNegative=function(){return this.s<0},N.isPositive=function(){return this.s>0},N.isZero=function(){return!!this.c&&this.c[0]==0},N.minus=function(U,G){var z,q,H,ee,ne=this,re=ne.s;if(U=new ue(U,G),G=U.s,!re||!G)return new ue(NaN);if(re!=G)return U.s=-G,ne.plus(U);var X=ne.e/c,ie=U.e/c,ce=ne.c,fe=U.c;if(!X||!ie){if(!ce||!fe)return ce?(U.s=-G,U):new ue(fe?ne:NaN);if(!ce[0]||!fe[0])return fe[0]?(U.s=-G,U):new ue(ce[0]?ne:M==3?-0:0)}if(X=m(X),ie=m(ie),ce=ce.slice(),re=X-ie){for((ee=re<0)?(re=-re,H=ce):(ie=X,H=fe),H.reverse(),G=re;G--;H.push(0));H.reverse()}else for(q=(ee=(re=ce.length)<(G=fe.length))?re:G,re=G=0;G0)for(;G--;ce[z++]=0);for(G=o-1;q>re;){if(ce[--q]=0;){for(z=0,Ne=ct[H]%Ye,Pe=ct[H]/Ye|0,ne=X,ee=H+ne;ee>H;)ie=nt[--ne]%Ye,ce=nt[ne]/Ye|0,re=Pe*ie+ce*Ne,ie=Ne*ie+re%Ye*Ye+Ue[ee]+z,z=(ie/Ke|0)+(re/Ye|0)+Pe*ce,Ue[ee--]=ie%Ke;Ue[ee]=z}return z?++q:Ue.splice(0,1),qe(U,Ue,q)},N.negated=function(){var U=new ue(this);return U.s=-U.s||null,U},N.plus=function(U,G){var z,q=this,H=q.s;if(U=new ue(U,G),G=U.s,!H||!G)return new ue(NaN);if(H!=G)return U.s=-G,q.minus(U);var ee=q.e/c,ne=U.e/c,re=q.c,X=U.c;if(!ee||!ne){if(!re||!X)return new ue(H/0);if(!re[0]||!X[0])return X[0]?U:new ue(re[0]?q:H*0)}if(ee=m(ee),ne=m(ne),re=re.slice(),H=ee-ne){for(H>0?(ne=ee,z=X):(H=-H,z=re),z.reverse();H--;z.push(0));z.reverse()}for(H=re.length,G=X.length,H-G<0&&(z=X,X=re,re=z,G=H),H=0;G;)H=(re[--G]=re[G]+X[G]+H)/o|0,re[G]=o===re[G]?0:re[G]%o;return H&&(re=[H].concat(re),++ne),qe(U,re,ne)},N.precision=N.sd=function(U,G){var z,q,H,ee=this;if(U!=null&&U!==!!U)return g(U,1,f),G==null?G=M:g(G,0,8),Fe(new ue(ee),U,G);if(!(z=ee.c))return null;if(H=z.length-1,q=H*c+1,H=z[H]){for(;H%10==0;H/=10,q--);for(H=z[0];H>=10;H/=10,q++);}return U&&ee.e+1>q&&(q=ee.e+1),q},N.shiftedBy=function(U){return g(U,-u,u),this.times("1e"+U)},N.squareRoot=N.sqrt=function(){var U,G,z,q,H,ee=this,ne=ee.c,re=ee.s,X=ee.e,ie=L+4,ce=new ue("0.5");if(re!==1||!ne||!ne[0])return new ue(!re||re<0&&(!ne||ne[0])?NaN:ne?ee:1/0);if(re=Math.sqrt(+_e(ee)),re==0||re==1/0?(G=h(ne),(G.length+X)%2==0&&(G+="0"),re=Math.sqrt(+G),X=m((X+1)/2)-(X<0||X%2),re==1/0?G="5e"+X:(G=re.toExponential(),G=G.slice(0,G.indexOf("e")+1)+X),z=new ue(G)):z=new ue(re+""),z.c[0]){for(X=z.e,re=X+ie,re<3&&(re=0);;)if(H=z,z=ce.times(H.plus(C(ee,H,ie,1))),h(H.c).slice(0,re)===(G=h(z.c)).slice(0,re))if(z.e0&&Ue>0){for(ee=Ue%re||re,ce=Pe.substr(0,ee);ee0&&(ce+=ie+Pe.slice(ee)),Ne&&(ce="-"+ce)}q=fe?ce+(z.decimalSeparator||"")+((X=+z.fractionGroupSize)?fe.replace(new RegExp("\\d{"+X+"}\\B","g"),"$&"+(z.fractionGroupSeparator||"")):fe):ce}return(z.prefix||"")+q+(z.suffix||"")},N.toFraction=function(U){var G,z,q,H,ee,ne,re,X,ie,ce,fe,Ne,Pe=this,Ue=Pe.c;if(U!=null&&(re=new ue(U),!re.isInteger()&&(re.c||re.s!==1)||re.lt(P)))throw Error(i+"Argument "+(re.isInteger()?"out of range: ":"not an integer: ")+_e(re));if(!Ue)return new ue(Pe);for(G=new ue(P),ie=z=new ue(P),q=X=new ue(P),Ne=h(Ue),ee=G.e=Ne.length-Pe.e-1,G.c[0]=l[(ne=ee%c)<0?c+ne:ne],U=!U||re.comparedTo(G)>0?ee>0?G:ie:re,ne=W,W=1/0,re=new ue(Ne),X.c[0]=0;ce=C(re,G,0,1),H=z.plus(ce.times(q)),H.comparedTo(U)!=1;)z=q,q=H,ie=X.plus(ce.times(H=ie)),X=H,G=re.minus(ce.times(H=G)),re=H;return H=C(U.minus(z),q,0,1),X=X.plus(H.times(ie)),z=z.plus(H.times(q)),X.s=ie.s=Pe.s,ee=ee*2,fe=C(ie,q,ee,M).minus(Pe).abs().comparedTo(C(X,z,ee,M).minus(Pe).abs())<1?[ie,q]:[X,z],W=ne,fe},N.toNumber=function(){return+_e(this)},N.toPrecision=function(U,G){return U!=null&&g(U,1,f),Ce(this,U,G,2)},N.toString=function(U){var G,z=this,q=z.s,H=z.e;return H===null?q?(G="Infinity",q<0&&(G="-"+G)):G="NaN":(U==null?G=H<=k||H>=B?y(h(z.c),H):x(h(z.c),H,"0"):U===10&&oe?(z=Fe(new ue(z),L+H+1,M),G=x(h(z.c),z.e,"0")):(g(U,2,se.length,"Base"),G=R(x(h(z.c),H,"0"),10,U,q,!0)),q<0&&z.c[0]&&(G="-"+G)),G},N.valueOf=N.toJSON=function(){return _e(this)},N._isBigNumber=!0,v!=null&&ue.set(v),ue}function m(v){var C=v|0;return v>0||v===C?C:C-1}function h(v){for(var C,R,w=1,N=v.length,P=v[0]+"";wB^R?1:-1;for(M=(k=N.length)<(B=P.length)?k:B,L=0;LP[L]^R?1:-1;return k==B?0:k>B^R?1:-1}function g(v,C,R,w){if(vR||v!==s(v))throw Error(i+(w||"Argument")+(typeof v=="number"?vR?" out of range: ":" not an integer: ":" not a primitive number: ")+String(v))}function b(v){var C=v.c.length-1;return m(v.e/c)==C&&v.c[C]%2!=0}function y(v,C){return(v.length>1?v.charAt(0)+"."+v.slice(1):v)+(C<0?"e":"e+")+C}function x(v,C,R){var w,N;if(C<0){for(N=R+".";++C;N+=R);v=N+v}else if(w=v.length,++C>w){for(N=R,C-=w;--C;N+=R);v+=N}else C{var MMe=NV(),WMe=$Me.exports;(function(){"use strict";function t(u){return u<10?"0"+u:u}var e=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,r=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,n,s,i={"\b":"\\b"," ":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},a;function o(u){return r.lastIndex=0,r.test(u)?'"'+u.replace(r,function(l){var d=i[l];return typeof d=="string"?d:"\\u"+("0000"+l.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+u+'"'}function c(u,l){var d,f,p,m,h=n,A,g=l[u],b=g!=null&&(g instanceof MMe||MMe.isBigNumber(g));switch(g&&typeof g=="object"&&typeof g.toJSON=="function"&&(g=g.toJSON(u)),typeof a=="function"&&(g=a.call(l,u,g)),typeof g){case"string":return b?g:o(g);case"number":return isFinite(g)?String(g):"null";case"boolean":case"null":case"bigint":return String(g);case"object":if(!g)return"null";if(n+=s,A=[],Object.prototype.toString.apply(g)==="[object Array]"){for(m=g.length,d=0;d{var J3=null,rnr=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,nnr=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/,snr=function(t){"use strict";var e={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(t!=null){if(t.strict===!0&&(e.strict=!0),t.storeAsString===!0&&(e.storeAsString=!0),e.alwaysParseAsBig=t.alwaysParseAsBig===!0?t.alwaysParseAsBig:!1,e.useNativeBigInt=t.useNativeBigInt===!0?t.useNativeBigInt:!1,typeof t.constructorAction<"u")if(t.constructorAction==="error"||t.constructorAction==="ignore"||t.constructorAction==="preserve")e.constructorAction=t.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${t.constructorAction}`);if(typeof t.protoAction<"u")if(t.protoAction==="error"||t.protoAction==="ignore"||t.protoAction==="preserve")e.protoAction=t.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${t.protoAction}`)}var r,n,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` -`,r:"\r",t:" "},i,a=function(h){throw{name:"SyntaxError",message:h,at:r,text:i}},o=function(h){return h&&h!==n&&a("Expected '"+h+"' instead of '"+n+"'"),n=i.charAt(r),r+=1,n},c=function(){var h,A="";for(n==="-"&&(A="-",o("-"));n>="0"&&n<="9";)A+=n,o();if(n===".")for(A+=".";o()&&n>="0"&&n<="9";)A+=n;if(n==="e"||n==="E")for(A+=n,o(),(n==="-"||n==="+")&&(A+=n,o());n>="0"&&n<="9";)A+=n,o();if(h=+A,!isFinite(h))a("Bad number");else return J3==null&&(J3=RK()),A.length>15?e.storeAsString?A:e.useNativeBigInt?BigInt(A):new J3(A):e.alwaysParseAsBig?e.useNativeBigInt?BigInt(h):new J3(h):h},u=function(){var h,A,g="",b;if(n==='"')for(var y=r;o();){if(n==='"')return r-1>y&&(g+=i.substring(y,r-1)),o(),g;if(n==="\\"){if(r-1>y&&(g+=i.substring(y,r-1)),o(),n==="u"){for(b=0,A=0;A<4&&(h=parseInt(o(),16),!!isFinite(h));A+=1)b=b*16+h;g+=String.fromCharCode(b)}else if(typeof s[n]=="string")g+=s[n];else break;y=r}}a("Bad string")},l=function(){for(;n&&n<=" ";)o()},d=function(){switch(n){case"t":return o("t"),o("r"),o("u"),o("e"),!0;case"f":return o("f"),o("a"),o("l"),o("s"),o("e"),!1;case"n":return o("n"),o("u"),o("l"),o("l"),null}a("Unexpected '"+n+"'")},f,p=function(){var h=[];if(n==="["){if(o("["),l(),n==="]")return o("]"),h;for(;n;){if(h.push(f()),l(),n==="]")return o("]"),h;o(","),l()}}a("Bad array")},m=function(){var h,A=Object.create(null);if(n==="{"){if(o("{"),l(),n==="}")return o("}"),A;for(;n;){if(h=u(),l(),o(":"),e.strict===!0&&Object.hasOwnProperty.call(A,h)&&a('Duplicate key "'+h+'"'),rnr.test(h)===!0?e.protoAction==="error"?a("Object contains forbidden prototype property"):e.protoAction==="ignore"?f():A[h]=f():nnr.test(h)===!0?e.constructorAction==="error"?a("Object contains forbidden constructor property"):e.constructorAction==="ignore"?f():A[h]=f():A[h]=f(),l(),n==="}")return o("}"),A;o(","),l()}}a("Bad object")};return f=function(){switch(l(),n){case"{":return m();case"[":return p();case'"':return u();case"-":return c();default:return n>="0"&&n<="9"?c():d()}},function(h,A){var g;return i=h+"",r=0,n=" ",g=f(),l(),n&&a("Syntax error"),typeof A=="function"?function b(y,x){var v,I,R=y[x];return R&&typeof R=="object"&&Object.keys(R).forEach(function(w){I=b(R,w),I!==void 0?R[w]=I:delete R[w]}),A.call(y,x,R)}({"":g},""):g}};WMe.exports=snr});var qMe=E((l9r,X3)=>{var FMe=MMe().stringify,UMe=$Me();X3.exports=function(t){return{parse:UMe(t),stringify:FMe}};X3.exports.parse=UMe();X3.exports.stringify=FMe});function _5e(t){let e=t.match(/^S(\d+)$/i);if(e)return`S${String(parseInt(e[1])).padStart(2,"0")}`;let r=t.match(/^E(\d+)$/i);return r?`E${String(parseInt(r[1])).padStart(2,"0")}`:t}function S5e(t){return!t||typeof t!="string"?[]:t.split(",").map(e=>{let r=e.trim(),n=r.lastIndexOf(":");if(n===-1)return null;let s=r.substring(0,n),i=r.substring(n+1);if(!s||i==="")return null;let a=parseFloat(i);if(!Number.isFinite(a))return null;let o=!1,c=s.trim();c.endsWith("%")&&(o=!0,c=c.slice(0,-1).trim());let u=c.lastIndexOf("@"),l,d,f;if(u!==-1){l=c.substring(0,u);let g=c.substring(u+1).trim().toLowerCase();if(g==="all"||g==="*")d=null,f=!0;else if(d=g.split("&").map(b=>b.trim()).filter(Boolean),f=!1,d.length===0)return null}else l=c,d=null,f=!1;let p=l.trim().split("/"),m=p[0]||null;if(!m)return null;let h=p[1]?_5e(p[1]):null,A=p[2]?_5e(p[2]):null;return{anime:m,season:h,episode:A,sources:d,all:f,offset:a,usePercent:o}}).filter(Boolean)}function bV(t,{anime:e,season:r,episode:n,source:s}){if(!Array.isArray(t)||t.length===0||!e)return null;let i=new Set;if(s)for(let o of s.split("&")){let c=o.trim().toLowerCase();c&&(i.add(c),E5e[c]&&i.add(E5e[c]))}let a=[{matchSeason:!0,matchEpisode:!0},{matchSeason:!0,matchEpisode:!1},{matchSeason:!1,matchEpisode:!1}];for(let o of a){let c=null,u=null,l=null;for(let d of t)if(d.anime===e){if(o.matchEpisode){if(!d.season||!d.episode||d.season!==r||d.episode!==n)continue}else if(o.matchSeason){if(!d.season||d.episode||d.season!==r)continue}else if(d.season||d.episode)continue;d.sources?i.size>0&&d.sources.some(f=>i.has(f))&&(c=d):d.all?u=d:l=d}if(c!==null)return c;if(u!==null)return u;if(l!==null)return l}return null}function EV(t,e,r={}){let n=Number(e);if(!n||!Array.isArray(t)||t.length===0)return t;let s=r?.usePercent===!0,i=Number(r?.videoDuration||0),a=m=>{if(!m||typeof m!="object")return null;if(typeof m.p=="string"){let h=m.p.split(","),A=parseFloat(h[0]);if(Number.isFinite(A))return A}if(m.t!==void 0&&m.t!==null){let h=Number(m.t);if(Number.isFinite(h))return h}if(m.progress!==void 0&&m.progress!==null){let h=Number(m.progress);if(Number.isFinite(h))return h/1e3}if(m.timepoint!==void 0&&m.timepoint!==null){let h=Number(m.timepoint);if(Number.isFinite(h))return h}return null},o=i>0?i:a(t[t.length-1])||0,c=s&&Number.isFinite(o)&&o>0?(o+n)/o:null;if(s&&c===null)return t;let u=n*1e3,l=m=>Math.max(0,m),d=(m,h=2)=>Number(m.toFixed(h)),f=m=>{let h=l(c!==null?m*c:m+n);return c!==null?d(h,2):h},p=m=>{let h=l(c!==null?m*c:m+u);return c!==null?Math.round(h):h};return t.map(m=>{if(!m||typeof m!="object")return m;let h={...m};if(typeof h.p=="string"){let A=h.p.split(","),g=parseFloat(A[0]);Number.isFinite(g)&&(A[0]=f(g).toFixed(2),h.p=A.join(","))}if(h.t!==void 0&&h.t!==null){let A=Number(h.t);Number.isFinite(A)&&(h.t=f(A))}if(h.progress!==void 0&&h.progress!==null){let A=Number(h.progress);Number.isFinite(A)&&(h.progress=p(A))}if(h.timepoint!==void 0&&h.timepoint!==null){let A=Number(h.timepoint);Number.isFinite(A)&&(h.timepoint=f(A))}return h})}var E5e,_V=lr(()=>{E5e={tencent:"qq",iqiyi:"qiyi",bilibili:"bilibili1"}});var nf,v5e=lr(()=>{_V();nf=class{static env;static originalEnvVars=new Map;static accessedEnvVars=new Map;static VOD_ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","sohu","leshi","xigua","maiduidui","aiyifan"];static ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static ALLOWED_SOURCES=["360","vod","tmdb","douban","tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static MERGE_ALLOWED_SOURCES=["tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko"];static DEFAULT_AI_MATCH_PROMPT=`\u4F60\u662F\u4E00\u4E2A\u4E13\u4E1A\u7684\u5F71\u89C6\u5339\u914D\u4E13\u5BB6\uFF0C\u4F60\u7684\u7684\u4EFB\u52A1\u662F\u6839\u636E\u7528\u6237\u63D0\u4F9B\u7684 JSON \u6570\u636E\uFF0C\u4ECE\u5019\u9009\u52A8\u6F2B\u5217\u8868\u4E2D\u5339\u914D\u6700\u7B26\u5408\u6761\u4EF6\u7684\u52A8\u6F2B\u53CA\u96C6\u6570\u3002 +`+h+"}":"{"+A.join(",")+"}",n=h,p}}typeof WMe.stringify!="function"&&(WMe.stringify=function(u,l,d){var f;if(n="",s="",typeof d=="number")for(f=0;f{var Zk=null,snr=/(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])/,inr=/(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)/,anr=function(t){"use strict";var e={strict:!1,storeAsString:!1,alwaysParseAsBig:!1,useNativeBigInt:!1,protoAction:"error",constructorAction:"error"};if(t!=null){if(t.strict===!0&&(e.strict=!0),t.storeAsString===!0&&(e.storeAsString=!0),e.alwaysParseAsBig=t.alwaysParseAsBig===!0?t.alwaysParseAsBig:!1,e.useNativeBigInt=t.useNativeBigInt===!0?t.useNativeBigInt:!1,typeof t.constructorAction<"u")if(t.constructorAction==="error"||t.constructorAction==="ignore"||t.constructorAction==="preserve")e.constructorAction=t.constructorAction;else throw new Error(`Incorrect value for constructorAction option, must be "error", "ignore" or undefined but passed ${t.constructorAction}`);if(typeof t.protoAction<"u")if(t.protoAction==="error"||t.protoAction==="ignore"||t.protoAction==="preserve")e.protoAction=t.protoAction;else throw new Error(`Incorrect value for protoAction option, must be "error", "ignore" or undefined but passed ${t.protoAction}`)}var r,n,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:` +`,r:"\r",t:" "},i,a=function(h){throw{name:"SyntaxError",message:h,at:r,text:i}},o=function(h){return h&&h!==n&&a("Expected '"+h+"' instead of '"+n+"'"),n=i.charAt(r),r+=1,n},c=function(){var h,A="";for(n==="-"&&(A="-",o("-"));n>="0"&&n<="9";)A+=n,o();if(n===".")for(A+=".";o()&&n>="0"&&n<="9";)A+=n;if(n==="e"||n==="E")for(A+=n,o(),(n==="-"||n==="+")&&(A+=n,o());n>="0"&&n<="9";)A+=n,o();if(h=+A,!isFinite(h))a("Bad number");else return Zk==null&&(Zk=NV()),A.length>15?e.storeAsString?A:e.useNativeBigInt?BigInt(A):new Zk(A):e.alwaysParseAsBig?e.useNativeBigInt?BigInt(h):new Zk(h):h},u=function(){var h,A,g="",b;if(n==='"')for(var y=r;o();){if(n==='"')return r-1>y&&(g+=i.substring(y,r-1)),o(),g;if(n==="\\"){if(r-1>y&&(g+=i.substring(y,r-1)),o(),n==="u"){for(b=0,A=0;A<4&&(h=parseInt(o(),16),!!isFinite(h));A+=1)b=b*16+h;g+=String.fromCharCode(b)}else if(typeof s[n]=="string")g+=s[n];else break;y=r}}a("Bad string")},l=function(){for(;n&&n<=" ";)o()},d=function(){switch(n){case"t":return o("t"),o("r"),o("u"),o("e"),!0;case"f":return o("f"),o("a"),o("l"),o("s"),o("e"),!1;case"n":return o("n"),o("u"),o("l"),o("l"),null}a("Unexpected '"+n+"'")},f,p=function(){var h=[];if(n==="["){if(o("["),l(),n==="]")return o("]"),h;for(;n;){if(h.push(f()),l(),n==="]")return o("]"),h;o(","),l()}}a("Bad array")},m=function(){var h,A=Object.create(null);if(n==="{"){if(o("{"),l(),n==="}")return o("}"),A;for(;n;){if(h=u(),l(),o(":"),e.strict===!0&&Object.hasOwnProperty.call(A,h)&&a('Duplicate key "'+h+'"'),snr.test(h)===!0?e.protoAction==="error"?a("Object contains forbidden prototype property"):e.protoAction==="ignore"?f():A[h]=f():inr.test(h)===!0?e.constructorAction==="error"?a("Object contains forbidden constructor property"):e.constructorAction==="ignore"?f():A[h]=f():A[h]=f(),l(),n==="}")return o("}"),A;o(","),l()}}a("Bad object")};return f=function(){switch(l(),n){case"{":return m();case"[":return p();case'"':return u();case"-":return c();default:return n>="0"&&n<="9"?c():d()}},function(h,A){var g;return i=h+"",r=0,n=" ",g=f(),l(),n&&a("Syntax error"),typeof A=="function"?function b(y,x){var v,C,R=y[x];return R&&typeof R=="object"&&Object.keys(R).forEach(function(w){C=b(R,w),C!==void 0?R[w]=C:delete R[w]}),A.call(y,x,R)}({"":g},""):g}};UMe.exports=anr});var QMe=E((gqr,eL)=>{var jMe=FMe().stringify,HMe=qMe();eL.exports=function(t){return{parse:HMe(t),stringify:jMe}};eL.exports.parse=HMe();eL.exports.stringify=jMe});function I5e(t){let e=t.match(/^S(\d+)$/i);if(e)return`S${String(parseInt(e[1])).padStart(2,"0")}`;let r=t.match(/^E(\d+)$/i);return r?`E${String(parseInt(r[1])).padStart(2,"0")}`:t}function T5e(t){return!t||typeof t!="string"?[]:t.split(",").map(e=>{let r=e.trim(),n=r.lastIndexOf(":");if(n===-1)return null;let s=r.substring(0,n),i=r.substring(n+1);if(!s||i==="")return null;let a=parseFloat(i);if(!Number.isFinite(a))return null;let o=!1,c=s.trim();c.endsWith("%")&&(o=!0,c=c.slice(0,-1).trim());let u=c.lastIndexOf("@"),l,d,f;if(u!==-1){l=c.substring(0,u);let g=c.substring(u+1).trim().toLowerCase();if(g==="all"||g==="*")d=null,f=!0;else if(d=g.split("&").map(b=>b.trim()).filter(Boolean),f=!1,d.length===0)return null}else l=c,d=null,f=!1;let p=l.trim().split("/"),m=p[0]||null;if(!m)return null;let h=p[1]?I5e(p[1]):null,A=p[2]?I5e(p[2]):null;return{anime:m,season:h,episode:A,sources:d,all:f,offset:a,usePercent:o}}).filter(Boolean)}function Ez(t,{anime:e,season:r,episode:n,source:s}){if(!Array.isArray(t)||t.length===0||!e)return null;let i=new Set;if(s)for(let o of s.split("&")){let c=o.trim().toLowerCase();c&&(i.add(c),C5e[c]&&i.add(C5e[c]))}let a=[{matchSeason:!0,matchEpisode:!0},{matchSeason:!0,matchEpisode:!1},{matchSeason:!1,matchEpisode:!1}];for(let o of a){let c=null,u=null,l=null;for(let d of t)if(d.anime===e){if(o.matchEpisode){if(!d.season||!d.episode||d.season!==r||d.episode!==n)continue}else if(o.matchSeason){if(!d.season||d.episode||d.season!==r)continue}else if(d.season||d.episode)continue;d.sources?i.size>0&&d.sources.some(f=>i.has(f))&&(c=d):d.all?u=d:l=d}if(c!==null)return c;if(u!==null)return u;if(l!==null)return l}return null}function _z(t,e,r={}){let n=Number(e);if(!n||!Array.isArray(t)||t.length===0)return t;let s=r?.usePercent===!0,i=Number(r?.videoDuration||0),a=m=>{if(!m||typeof m!="object")return null;if(typeof m.p=="string"){let h=m.p.split(","),A=parseFloat(h[0]);if(Number.isFinite(A))return A}if(m.t!==void 0&&m.t!==null){let h=Number(m.t);if(Number.isFinite(h))return h}if(m.progress!==void 0&&m.progress!==null){let h=Number(m.progress);if(Number.isFinite(h))return h/1e3}if(m.timepoint!==void 0&&m.timepoint!==null){let h=Number(m.timepoint);if(Number.isFinite(h))return h}return null},o=i>0?i:a(t[t.length-1])||0,c=s&&Number.isFinite(o)&&o>0?(o+n)/o:null;if(s&&c===null)return t;let u=n*1e3,l=m=>Math.max(0,m),d=(m,h=2)=>Number(m.toFixed(h)),f=m=>{let h=l(c!==null?m*c:m+n);return c!==null?d(h,2):h},p=m=>{let h=l(c!==null?m*c:m+u);return c!==null?Math.round(h):h};return t.map(m=>{if(!m||typeof m!="object")return m;let h={...m};if(typeof h.p=="string"){let A=h.p.split(","),g=parseFloat(A[0]);Number.isFinite(g)&&(A[0]=f(g).toFixed(2),h.p=A.join(","))}if(h.t!==void 0&&h.t!==null){let A=Number(h.t);Number.isFinite(A)&&(h.t=f(A))}if(h.progress!==void 0&&h.progress!==null){let A=Number(h.progress);Number.isFinite(A)&&(h.progress=p(A))}if(h.timepoint!==void 0&&h.timepoint!==null){let A=Number(h.timepoint);Number.isFinite(A)&&(h.timepoint=f(A))}return h})}var C5e,Sz=dr(()=>{C5e={tencent:"qq",iqiyi:"qiyi",bilibili:"bilibili1"}});var sf,w5e=dr(()=>{Sz();sf=class{static env;static originalEnvVars=new Map;static accessedEnvVars=new Map;static VOD_ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","sohu","leshi","xigua","maiduidui","aiyifan"];static ALLOWED_PLATFORMS=["qiyi","bilibili1","imgo","youku","qq","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static ALLOWED_SOURCES=["360","vod","tmdb","douban","tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko","custom"];static MERGE_ALLOWED_SOURCES=["tencent","youku","iqiyi","imgo","bilibili","migu","renren","hanjutv","bahamut","dandan","sohu","leshi","xigua","maiduidui","aiyifan","animeko"];static DEFAULT_AI_MATCH_PROMPT=`\u4F60\u662F\u4E00\u4E2A\u4E13\u4E1A\u7684\u5F71\u89C6\u5339\u914D\u4E13\u5BB6\uFF0C\u4F60\u7684\u7684\u4EFB\u52A1\u662F\u6839\u636E\u7528\u6237\u63D0\u4F9B\u7684 JSON \u6570\u636E\uFF0C\u4ECE\u5019\u9009\u52A8\u6F2B\u5217\u8868\u4E2D\u5339\u914D\u6700\u7B26\u5408\u6761\u4EF6\u7684\u52A8\u6F2B\u53CA\u96C6\u6570\u3002 \u8F93\u5165\u5B57\u6BB5\u8BF4\u660E\uFF1A - title: \u67E5\u8BE2\u6807\u9898 @@ -468,7 +468,7 @@ Minimum version required to store current data is: `+i+`. \u5982\u679C\u6CA1\u6709\u627E\u5230\u5408\u9002\u7684\u5339\u914D\uFF0C\u8FD4\u56DE\uFF1A { "animeIndex": null -}`;static get(e,r,n="string",s=!1){let i;typeof this.env<"u"&&this.env[e]?(i=this.env[e],this.originalEnvVars.set(e,i)):typeof process<"u"&&process.env?.[e]?(i=process.env[e],this.originalEnvVars.set(e,i)):(i=r,this.originalEnvVars.set(e,""));let a;switch(n){case"number":if(a=Number(i),isNaN(a))throw new Error(`Environment variable ${e} must be a valid number`);break;case"boolean":a=i===!0||i==="true"||i===1||i==="1";break;case"string":default:a=String(i);break}let o=s?this.encryptStr(a):a;return this.accessedEnvVars.set(e,o),a}static set(e,r){typeof process<"u"&&(process.env[e]=String(r)),this.accessedEnvVars.set(e,r)}static encryptStr(e){return"*".repeat(e.length)}static resolveVodServers(){let r=this.get("VOD_SERVERS","\u91D1\u8749@https://zy.jinchancaiji.com,789@https://www.caiji.cyou,\u542C\u98CE@https://gctf.tfdh.top","string");return!r||r.trim()===""?[]:r.split(",").map(n=>n.trim()).filter(n=>n.length>0).map((n,s)=>{if(n.includes("@")){let[i,a]=n.split("@").map(o=>o.trim());return{name:i||`vod-${s+1}`,url:a}}return{name:`vod-${s+1}`,url:n}}).filter(n=>n.url&&n.url.length>0)}static resolveSourceOrder(){let r=this.get("SOURCE_ORDER","douban,360,renren,hanjutv","string").split(",").map(n=>n.trim()).filter(n=>this.ALLOWED_SOURCES.includes(n));return this.accessedEnvVars.set("SOURCE_ORDER",r),r.length>0?r:["douban","360","renren","hanjutv"]}static resolvePlatformOrder(){let r=this.get("PLATFORM_ORDER","","string").split(",").map(n=>n.trim()).filter(n=>n?n.includes("&")?n.split("&").map(i=>i.trim()).every(i=>this.ALLOWED_PLATFORMS.includes(i)):this.ALLOWED_PLATFORMS.includes(n):!1);return this.accessedEnvVars.set("PLATFORM_ORDER",r),r.length>0?[...r,null]:[null]}static resolveMergeSourcePairs(){let e=this.get("MERGE_SOURCE_PAIRS","","string");return e?e.split(/[,;]/).map(r=>{if(!r)return null;let n=r.split("&").map(o=>o.trim()).filter(o=>o);if(n.length<1)return null;let s=n[0],i=n.slice(1);if(!this.MERGE_ALLOWED_SOURCES.includes(s))return null;let a=i.filter(o=>o!==s&&this.MERGE_ALLOWED_SOURCES.includes(o));return{primary:s,secondaries:a}}).filter(Boolean):[]}static resolveCustomMergeRules(){let e=this.get("CUSTOM_MERGE_RULES","","string").trim();if(!e)return[];let r=[],n=e.split(";");for(let s of n)if(s.trim())try{let i=s.split("|"),a=i[0],o=i[1]||"",c,u,l="merge";if(a.includes("->"))[c,u]=a.split("->").map(A=>A.trim());else if(a.includes("\xD7"))[c,u]=a.split("\xD7").map(A=>A.trim()),l="block";else continue;if(!c||!u)continue;let d=A=>{let g=A.match(/^(.+?)(?:\/S(\d+))?@([a-zA-Z0-9_&]+)$/i);return g?{title:g[1].trim(),season:g[2]?parseInt(g[2],10):null,source:g[3].toLowerCase()}:null},f=d(c),p=d(u);if(!f||!p)continue;let m=[],h=!1;if(l==="merge"&&o.trim()){h=!0;let A=o.split(",");for(let g of A){if(!g.trim())continue;let[b,y]=g.split(">").map(R=>R.trim());if(!b||!y)continue;let x=R=>{let w=R.match(/^E(\d+)(?:~E(\d+))?$/i);return w?{start:parseInt(w[1],10),end:w[2]?parseInt(w[2],10):parseInt(w[1],10)}:null},v=x(b),I=x(y);v&&I&&m.push({sec:v,prim:I})}}r.push({action:l,secondary:f,primary:p,routes:m,hasRoutes:h})}catch(i){console.warn(`[Envs] \u89E3\u6790\u5408\u5E76\u6620\u5C04\u8868\u89C4\u5219\u5931\u8D25: ${s}`,i)}return this.accessedEnvVars.set("CUSTOM_MERGE_RULES",e),r}static resolveEpisodeTitleFilter(){let e="(\u7279\u522B|\u60CA\u559C|\u7EB3\u51C9)?\u4F01\u5212(?!(\u4E66|\u6848|\u90E8))|\u5408\u4F19\u4EBA\u624B\u8BB0|\u8D85\u524D(\u8425\u4E1A|vlog)?|\u901F\u89C8|vlog|(?s.trim()).filter(Boolean),n=[];for(let s of r)try{if(s.startsWith("/")&&s.lastIndexOf("/")>0){let a=s.lastIndexOf("/"),o=s.slice(1,a),c=s.slice(a+1);n.push({type:"regex",value:new RegExp(o,c)});continue}if(s.includes("/")){let[a,o]=s.split("/").map(d=>d.trim()),c=Number(o),u=this.isValidIpv4(a),l=this.isValidIpv6(a);if(Number.isInteger(c)){if(u&&c>=0&&c<=32){n.push({type:"cidr",ip:a,prefix:c});continue}if(l&&c>=0&&c<=128){n.push({type:"cidr",ip:a,prefix:c});continue}}}if(this.isValidIpv4(s)||this.isValidIpv6(s)){n.push({type:"exact",value:s});continue}let i=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");n.push({type:"regex",value:new RegExp(`^${i}$`)})}catch{console.warn(`Invalid IP_BLACKLIST entry: ${s}, skipped.`)}return this.accessedEnvVars.set("IP_BLACKLIST",r),n}static isValidIpv4(e){if(!e||typeof e!="string")return!1;let r=e.split(".");return r.length!==4?!1:r.every(n=>{if(!/^(\d{1,3})$/.test(n))return!1;let s=Number(n);return s>=0&&s<=255})}static isValidIpv6(e){if(!e||typeof e!="string")return!1;let r=e.trim();if(!r.includes(":"))return!1;let[n,s]=r.split("::");if(r.split("::").length>2)return!1;let i=n?n.split(":").filter(Boolean):[],a=s?s.split(":").filter(Boolean):[],o=d=>{if(d.length===0)return d;let f=d[d.length-1];if(!f.includes("."))return d;if(!this.isValidIpv4(f))return null;let p=f.split(".").map(A=>Number(A)),m=(p[0]<<8|p[1]).toString(16),h=(p[2]<<8|p[3]).toString(16);return[...d.slice(0,-1),m,h]},c=o(i);if(!c||(a=o(a),!a)||c.length+a.length>8)return!1;let l=d=>/^[0-9a-fA-F]{1,4}$/.test(d);return!(!c.every(l)||!a.every(l))}static resolveAnimeTitleFilter(){let e=this.get("ANIME_TITLE_FILTER","","string",!1).trim();if(!e)return this.accessedEnvVars.set("ANIME_TITLE_FILTER",""),null;this.accessedEnvVars.set("ANIME_TITLE_FILTER",e);try{return new RegExp(`^(.*?)(?:${e})(.*?)$`,"i")}catch{return console.warn("Invalid ANIME_TITLE_FILTER format, returning null."),null}}static getOriginalEnvVars(){return this.originalEnvVars}static resolveTitleMappingTable(){let e=this.get("TITLE_MAPPING_TABLE","","string").trim(),r=new Map;if(!e)return r;let n=e.split(";");for(let s of n)if(s.includes("->")){let[i,a]=s.split("->").map(o=>o.trim());i&&a&&r.set(i,a)}return r}static getAccessedEnvVars(){return this.accessedEnvVars}static load(e={}){this.env=e;let r={TOKEN:{category:"api",type:"text",description:"API\u8BBF\u95EE\u4EE4\u724C"},ADMIN_TOKEN:{category:"api",type:"text",description:"\u7CFB\u7EDF\u7BA1\u7406\u8BBF\u95EE\u4EE4\u724C"},RATE_LIMIT_MAX_REQUESTS:{category:"api",type:"number",description:"\u9650\u6D41\u914D\u7F6E\uFF1A1\u5206\u949F\u5185\u6700\u5927\u8BF7\u6C42\u6B21\u6570\uFF0C0\u8868\u793A\u4E0D\u9650\u6D41\uFF0C\u9ED8\u8BA43",min:0,max:50},SOURCE_ORDER:{category:"source",type:"multi-select",options:this.ALLOWED_SOURCES,description:"\u6E90\u6392\u5E8F\u914D\u7F6E\uFF0C\u9ED8\u8BA4douban,360,renren,hanjutv"},MERGE_SOURCE_PAIRS:{category:"source",type:"multi-select",options:this.MERGE_ALLOWED_SOURCES,description:`\u6E90\u5408\u5E76\u914D\u7F6E\uFF0C\u914D\u7F6E\u540E\u5C06\u5BF9\u5E94\u6E90\u5408\u5E76\u540C\u65F6\u4E00\u8D77\u83B7\u53D6\u5F39\u5E55\u8FD4\u56DE\uFF0C\u5141\u8BB8\u591A\u7EC4\uFF0C\u5141\u8BB8\u591A\u6E90\uFF0C\u5141\u8BB8\u586B\u5355\u6E90\u8868\u793A\u4FDD\u7559\u539F\u7ED3\u679C\uFF0C\u4E00\u7EC4\u4E2D\u7B2C\u4E00\u4E2A\u4E3A\u4E3B\u6E90\u5176\u4F59\u4E3A\u526F\u6E90\uFF0C\u526F\u6E90\u5F80\u4E3B\u6E90\u5408\u5E76\uFF0C\u4E3B\u6E90\u5982\u679C\u6CA1\u6709\u7ED3\u679C\u4F1A\u8F6E\u66FF\u4E0B\u4E00\u4E2A\u4F5C\u4E3A\u4E3B\u6E90\u3002 +}`;static get(e,r,n="string",s=!1){let i;typeof this.env<"u"&&this.env[e]?(i=this.env[e],this.originalEnvVars.set(e,i)):typeof process<"u"&&process.env?.[e]?(i=process.env[e],this.originalEnvVars.set(e,i)):(i=r,this.originalEnvVars.set(e,""));let a;switch(n){case"number":if(a=Number(i),isNaN(a))throw new Error(`Environment variable ${e} must be a valid number`);break;case"boolean":a=i===!0||i==="true"||i===1||i==="1";break;case"string":default:a=String(i);break}let o=s?this.encryptStr(a):a;return this.accessedEnvVars.set(e,o),a}static set(e,r){typeof process<"u"&&(process.env[e]=String(r)),this.accessedEnvVars.set(e,r)}static encryptStr(e){return"*".repeat(e.length)}static resolveVodServers(){let r=this.get("VOD_SERVERS","\u91D1\u8749@https://zy.jinchancaiji.com,789@https://www.caiji.cyou,\u542C\u98CE@https://gctf.tfdh.top","string");return!r||r.trim()===""?[]:r.split(",").map(n=>n.trim()).filter(n=>n.length>0).map((n,s)=>{if(n.includes("@")){let[i,a]=n.split("@").map(o=>o.trim());return{name:i||`vod-${s+1}`,url:a}}return{name:`vod-${s+1}`,url:n}}).filter(n=>n.url&&n.url.length>0)}static resolveSourceOrder(){let r=this.get("SOURCE_ORDER","douban,360,renren,hanjutv","string").split(",").map(n=>n.trim()).filter(n=>this.ALLOWED_SOURCES.includes(n));return this.accessedEnvVars.set("SOURCE_ORDER",r),r.length>0?r:["douban","360","renren","hanjutv"]}static resolvePlatformOrder(){let r=this.get("PLATFORM_ORDER","","string").split(",").map(n=>n.trim()).filter(n=>n?n.includes("&")?n.split("&").map(i=>i.trim()).every(i=>this.ALLOWED_PLATFORMS.includes(i)):this.ALLOWED_PLATFORMS.includes(n):!1);return this.accessedEnvVars.set("PLATFORM_ORDER",r),r.length>0?[...r,null]:[null]}static resolveMergeSourcePairs(){let e=this.get("MERGE_SOURCE_PAIRS","","string");return e?e.split(/[,;]/).map(r=>{if(!r)return null;let n=r.split("&").map(o=>o.trim()).filter(o=>o);if(n.length<1)return null;let s=n[0],i=n.slice(1);if(!this.MERGE_ALLOWED_SOURCES.includes(s))return null;let a=i.filter(o=>o!==s&&this.MERGE_ALLOWED_SOURCES.includes(o));return{primary:s,secondaries:a}}).filter(Boolean):[]}static resolveCustomMergeRules(){let e=this.get("CUSTOM_MERGE_RULES","","string").trim();if(!e)return[];let r=[],n=e.split(";");for(let s of n)if(s.trim())try{let i=s.split("|"),a=i[0],o=i[1]||"",c,u,l="merge";if(a.includes("->"))[c,u]=a.split("->").map(A=>A.trim());else if(a.includes("\xD7"))[c,u]=a.split("\xD7").map(A=>A.trim()),l="block";else continue;if(!c||!u)continue;let d=A=>{let g=A.match(/^(.+?)(?:\/S(\d+))?@([a-zA-Z0-9_&]+)$/i);return g?{title:g[1].trim(),season:g[2]?parseInt(g[2],10):null,source:g[3].toLowerCase()}:null},f=d(c),p=d(u);if(!f||!p)continue;let m=[],h=!1;if(l==="merge"&&o.trim()){h=!0;let A=o.split(",");for(let g of A){if(!g.trim())continue;let[b,y]=g.split(">").map(R=>R.trim());if(!b||!y)continue;let x=R=>{let w=R.match(/^E(\d+)(?:~E(\d+))?$/i);return w?{start:parseInt(w[1],10),end:w[2]?parseInt(w[2],10):parseInt(w[1],10)}:null},v=x(b),C=x(y);v&&C&&m.push({sec:v,prim:C})}}r.push({action:l,secondary:f,primary:p,routes:m,hasRoutes:h})}catch(i){console.warn(`[Envs] \u89E3\u6790\u5408\u5E76\u6620\u5C04\u8868\u89C4\u5219\u5931\u8D25: ${s}`,i)}return this.accessedEnvVars.set("CUSTOM_MERGE_RULES",e),r}static resolveEpisodeTitleFilter(){let e="(\u7279\u522B|\u60CA\u559C|\u7EB3\u51C9)?\u4F01\u5212(?!(\u4E66|\u6848|\u90E8))|\u5408\u4F19\u4EBA\u624B\u8BB0|\u8D85\u524D(\u8425\u4E1A|vlog)?|\u901F\u89C8|vlog|(?s.trim()).filter(Boolean),n=[];for(let s of r)try{if(s.startsWith("/")&&s.lastIndexOf("/")>0){let a=s.lastIndexOf("/"),o=s.slice(1,a),c=s.slice(a+1);n.push({type:"regex",value:new RegExp(o,c)});continue}if(s.includes("/")){let[a,o]=s.split("/").map(d=>d.trim()),c=Number(o),u=this.isValidIpv4(a),l=this.isValidIpv6(a);if(Number.isInteger(c)){if(u&&c>=0&&c<=32){n.push({type:"cidr",ip:a,prefix:c});continue}if(l&&c>=0&&c<=128){n.push({type:"cidr",ip:a,prefix:c});continue}}}if(this.isValidIpv4(s)||this.isValidIpv6(s)){n.push({type:"exact",value:s});continue}let i=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");n.push({type:"regex",value:new RegExp(`^${i}$`)})}catch{console.warn(`Invalid IP_BLACKLIST entry: ${s}, skipped.`)}return this.accessedEnvVars.set("IP_BLACKLIST",r),n}static isValidIpv4(e){if(!e||typeof e!="string")return!1;let r=e.split(".");return r.length!==4?!1:r.every(n=>{if(!/^(\d{1,3})$/.test(n))return!1;let s=Number(n);return s>=0&&s<=255})}static isValidIpv6(e){if(!e||typeof e!="string")return!1;let r=e.trim();if(!r.includes(":"))return!1;let[n,s]=r.split("::");if(r.split("::").length>2)return!1;let i=n?n.split(":").filter(Boolean):[],a=s?s.split(":").filter(Boolean):[],o=d=>{if(d.length===0)return d;let f=d[d.length-1];if(!f.includes("."))return d;if(!this.isValidIpv4(f))return null;let p=f.split(".").map(A=>Number(A)),m=(p[0]<<8|p[1]).toString(16),h=(p[2]<<8|p[3]).toString(16);return[...d.slice(0,-1),m,h]},c=o(i);if(!c||(a=o(a),!a)||c.length+a.length>8)return!1;let l=d=>/^[0-9a-fA-F]{1,4}$/.test(d);return!(!c.every(l)||!a.every(l))}static resolveAnimeTitleFilter(){let e=this.get("ANIME_TITLE_FILTER","","string",!1).trim();if(!e)return this.accessedEnvVars.set("ANIME_TITLE_FILTER",""),null;this.accessedEnvVars.set("ANIME_TITLE_FILTER",e);try{return new RegExp(`^(.*?)(?:${e})(.*?)$`,"i")}catch{return console.warn("Invalid ANIME_TITLE_FILTER format, returning null."),null}}static getOriginalEnvVars(){return this.originalEnvVars}static resolveTitleMappingTable(){let e=this.get("TITLE_MAPPING_TABLE","","string").trim(),r=new Map;if(!e)return r;let n=e.split(";");for(let s of n)if(s.includes("->")){let[i,a]=s.split("->").map(o=>o.trim());i&&a&&r.set(i,a)}return r}static getAccessedEnvVars(){return this.accessedEnvVars}static load(e={}){this.env=e;let r={TOKEN:{category:"api",type:"text",description:"API\u8BBF\u95EE\u4EE4\u724C"},ADMIN_TOKEN:{category:"api",type:"text",description:"\u7CFB\u7EDF\u7BA1\u7406\u8BBF\u95EE\u4EE4\u724C"},RATE_LIMIT_MAX_REQUESTS:{category:"api",type:"number",description:"\u9650\u6D41\u914D\u7F6E\uFF1A1\u5206\u949F\u5185\u6700\u5927\u8BF7\u6C42\u6B21\u6570\uFF0C0\u8868\u793A\u4E0D\u9650\u6D41\uFF0C\u9ED8\u8BA43",min:0,max:50},SOURCE_ORDER:{category:"source",type:"multi-select",options:this.ALLOWED_SOURCES,description:"\u6E90\u6392\u5E8F\u914D\u7F6E\uFF0C\u9ED8\u8BA4douban,360,renren,hanjutv"},MERGE_SOURCE_PAIRS:{category:"source",type:"multi-select",options:this.MERGE_ALLOWED_SOURCES,description:`\u6E90\u5408\u5E76\u914D\u7F6E\uFF0C\u914D\u7F6E\u540E\u5C06\u5BF9\u5E94\u6E90\u5408\u5E76\u540C\u65F6\u4E00\u8D77\u83B7\u53D6\u5F39\u5E55\u8FD4\u56DE\uFF0C\u5141\u8BB8\u591A\u7EC4\uFF0C\u5141\u8BB8\u591A\u6E90\uFF0C\u5141\u8BB8\u586B\u5355\u6E90\u8868\u793A\u4FDD\u7559\u539F\u7ED3\u679C\uFF0C\u4E00\u7EC4\u4E2D\u7B2C\u4E00\u4E2A\u4E3A\u4E3B\u6E90\u5176\u4F59\u4E3A\u526F\u6E90\uFF0C\u526F\u6E90\u5F80\u4E3B\u6E90\u5408\u5E76\uFF0C\u4E3B\u6E90\u5982\u679C\u6CA1\u6709\u7ED3\u679C\u4F1A\u8F6E\u66FF\u4E0B\u4E00\u4E2A\u4F5C\u4E3A\u4E3B\u6E90\u3002 \u683C\u5F0F\uFF1A\u6E901&\u6E902&\u6E903 \uFF0C\u591A\u7EC4\u7528\u9017\u53F7\u5206\u9694\u3002 \u793A\u4F8B\uFF1Adandan&animeko&bahamut,bilibili&animeko,dandan`},CUSTOM_MERGE_RULES:{category:"source",type:"text",sources:this.MERGE_ALLOWED_SOURCES,description:`\u5408\u5E76\u6620\u5C04\u8868\uFF0C\u7528\u4E8E\u81EA\u5B9A\u4E49\u6E90\u5408\u5E76\u884C\u4E3A\u3002 \u683C\u5F0F1(\u5408\u5E76)\uFF1A\u526F\u6E90\u5267\u540D/S\u5B63\u6570@\u6765\u6E90 -> \u4E3B\u6E90\u5267\u540D/S\u5B63\u6570@\u6765\u6E90 | E\u526F\u6E90\u96C6\u6570>E\u4E3B\u6E90\u96C6\u6570 @@ -482,61 +482,61 @@ Minimum version required to store current data is: `+i+`. \u793A\u4F8B\uFF1A\u4E00\u4E2A\u7ED3\u679C\u8FD4\u56DE\u4E86"dandan&bilibili1&animeko"\u548C"youku"\u65F6\uFF0C \u5F53\u914D\u7F6E"youku"\u65F6\u8FD4\u56DE"youku" \u5F53\u914D\u7F6E"dandan&animeko"\u65F6\u8FD4\u56DE"dandan&bilibili1&animeko"`},ANIME_TITLE_FILTER:{category:"match",type:"text",description:"\u5267\u540D\u8FC7\u6EE4\u89C4\u5219"},EPISODE_TITLE_FILTER:{category:"match",type:"text",description:"\u5267\u96C6\u6807\u9898\u8FC7\u6EE4\u89C4\u5219"},ENABLE_ANIME_EPISODE_FILTER:{category:"match",type:"boolean",description:"\u63A7\u5236\u624B\u52A8\u641C\u7D22\u7684\u65F6\u5019\u662F\u5426\u6839\u636EANIME_TITLE_FILTER\u8FDB\u884C\u5267\u540D\u8FC7\u6EE4\u4EE5\u53CA\u6839\u636EEPISODE_TITLE_FILTER\u8FDB\u884C\u96C6\u6807\u9898\u8FC7\u6EE4"},STRICT_TITLE_MATCH:{category:"match",type:"boolean",description:"\u4E25\u683C\u6807\u9898\u5339\u914D\u6A21\u5F0F"},TITLE_TO_CHINESE:{category:"match",type:"boolean",description:"\u5916\u8BED\u6807\u9898\u8F6C\u6362\u4E2D\u6587\u5F00\u5173"},ANIME_TITLE_SIMPLIFIED:{category:"match",type:"boolean",description:"\u641C\u7D22\u7684\u5267\u540D\u6807\u9898\u81EA\u52A8\u7E41\u8F6C\u7B80"},TITLE_MAPPING_TABLE:{category:"match",type:"map",description:'\u5267\u540D\u6620\u5C04\u8868\uFF0C\u7528\u4E8E\u81EA\u52A8\u5339\u914D\u65F6\u66FF\u6362\u6807\u9898\u8FDB\u884C\u641C\u7D22\uFF0C\u683C\u5F0F\uFF1A\u539F\u59CB\u6807\u9898->\u6620\u5C04\u6807\u9898;\u539F\u59CB\u6807\u9898->\u6620\u5C04\u6807\u9898;... \uFF0C\u4F8B\u5982\uFF1A"\u5510\u671D\u8BE1\u4E8B\u5F55->\u5510\u671D\u8BE1\u4E8B\u5F55\u4E4B\u897F\u884C;\u56FD\u8272\u82B3\u534E->\u9526\u7EE3\u82B3\u534E"'},AI_BASE_URL:{category:"match",type:"text",description:"AI\u670D\u52A1\u57FA\u7840URL\uFF0C\u4E0D\u586B\u9ED8\u8BA4\u4E3Ahttps://api.openai.com/v1"},AI_MODEL:{category:"match",type:"text",description:"AI\u6A21\u578B\u540D\u79F0\uFF0C\u4E0D\u586B\u9ED8\u8BA4\u4E3Agpt-4o"},AI_API_KEY:{category:"match",type:"text",description:"AI\u670D\u52A1API\u5BC6\u94A5\uFF0C\u9ED8\u8BA4\u4E3A\u7A7A\uFF0C\u9700\u624B\u52A8\u586B\u5199"},AI_MATCH_PROMPT:{category:"match",type:"text",description:"AI\u81EA\u52A8\u5339\u914D\u63D0\u793A\u8BCD\u6A21\u677F\uFF0C\u4E0D\u586B\u63D0\u4F9B\u9ED8\u8BA4\u63D0\u793A\u8BCD\uFF0C\u9ED8\u8BA4\u63D0\u793A\u8BCD\u8BF7\u67E5\u770BREADME"},USE_BANGUMI_DATA:{category:"match",type:"boolean",description:`Bangumi Data \u52A0\u901F\u5339\u914D\u5F00\u5173\uFF0C\u5F00\u542F\u540E\u5C06\u52A8\u753B\u5143\u6570\u636E\u7F13\u5B58\u81F3\u672C\u5730\u6216\u5185\u5B58\u4E2D\u7ED9\u6E90\u8C03\u7528\uFF0C\u63D0\u5347\u52A8\u753B\u6E90\u7684\u68C0\u7D22\u4E0E\u5339\u914D\u901F\u5EA6\u5E76\u89E3\u9501\u9690\u85CF/\u533A\u57DF\u756A\u5267\u3002 -\u672C\u5730\u548CDocker\u90E8\u7F72\u4F7F\u7528\u65F6\u8BF7\u5148\u6302\u8F7D.cache\u76EE\u5F55\u83B7\u5F97\u6700\u4F73\u4F53\u9A8C\uFF0C\u4E91\u90E8\u7F72\u4F7F\u7528\u65F6\u4F1A\u5C06\u6570\u636E\u7F13\u5B58\u81F3\u4E34\u65F6\u5185\u5B58\u4E2D\u5982\u679C\u4F53\u9A8C\u4E0D\u4F73\u8BF7\u5173\u95ED\u3002`},BLOCKED_WORDS:{category:"danmu",type:"text",description:"\u5C4F\u853D\u8BCD\u5217\u8868"},GROUP_MINUTE:{category:"danmu",type:"number",description:"\u5206\u949F\u5185\u5408\u5E76\u53BB\u91CD\uFF080\u8868\u793A\u4E0D\u53BB\u91CD\uFF09\uFF0C\u9ED8\u8BA41",min:0,max:30},DANMU_LIMIT:{category:"danmu",type:"number",description:"\u5F39\u5E55\u6570\u91CF\u9650\u5236\uFF0C\u5355\u4F4D\u4E3Ak\uFF0C\u5373\u5343\uFF1A\u9ED8\u8BA4 0\uFF0C\u8868\u793A\u4E0D\u9650\u5236\u5F39\u5E55\u6570",min:0,max:100},DANMU_SIMPLIFIED_TRADITIONAL:{category:"danmu",type:"select",options:["default","simplified","traditional"],description:"\u5F39\u5E55\u7B80\u7E41\u4F53\u8F6C\u6362\u8BBE\u7F6E\uFF1Adefault\uFF08\u9ED8\u8BA4\u4E0D\u8F6C\u6362\uFF09\u3001simplified\uFF08\u7E41\u8F6C\u7B80\uFF09\u3001traditional\uFF08\u7B80\u8F6C\u7E41\uFF09"},CONVERT_TOP_BOTTOM_TO_SCROLL:{category:"danmu",type:"boolean",description:"\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u8F6C\u6362\u4E3A\u6D6E\u52A8\u5F39\u5E55"},CONVERT_COLOR:{category:"danmu",type:"select",options:["default","white","color"],description:"\u5F39\u5E55\u8F6C\u6362\u989C\u8272\u914D\u7F6E"},COLOR_POOL:{category:"danmu",type:"text",description:"\u81EA\u5B9A\u4E49\u989C\u8272\u6C60\uFF08CONVERT_COLOR\u4E3Acolor\u65F6\u751F\u6548\uFF09\uFF0C\u4E0D\u914D\u7F6E\u4F7F\u7528\u9ED8\u8BA4\u989C\u8272\u6C60\uFF0C\u683C\u5F0F\uFF1A\u5341\u8FDB\u5236\u989C\u8272\u503C\u9017\u53F7\u5206\u9694"},DANMU_OUTPUT_FORMAT:{category:"danmu",type:"select",options:["json","xml"],description:"\u5F39\u5E55\u8F93\u51FA\u683C\u5F0F\uFF0C\u9ED8\u8BA4json"},DANMU_PUSH_URL:{category:"danmu",type:"text",description:"\u5F39\u5E55\u63A8\u9001\u5730\u5740\uFF0C\u793A\u4F8B http://127.0.0.1:9978/action?do=refresh&type=danmaku&path= "},LIKE_SWITCH:{category:"danmu",type:"boolean",description:"\u5F39\u5E55\u70B9\u8D5E\u6570\u663E\u793A\u5F00\u5173\uFF0C\u9ED8\u8BA4\u5F00\u542F"},DANMU_OFFSET:{category:"danmu",type:"text",sources:this.ALLOWED_SOURCES,description:"\u5F39\u5E55\u65F6\u95F4\u504F\u79FB\u914D\u7F6E\uFF0C\u683C\u5F0F\uFF1A\u5267\u540D:\u79D2 \u6216 \u5267\u540D/\u5B63:\u79D2 \u6216 \u5267\u540D/\u5B63/\u96C6:\u79D2\uFF0C\u652F\u6301\u6307\u5B9A\u6765\u6E90\uFF1A\u5267\u540D@\u6765\u6E90:\u79D2 \u6216 \u5267\u540D/\u5B63@\u6765\u6E901&\u6765\u6E902:\u79D2\uFF0C\u591A\u6761\u7528\u9017\u53F7\u5206\u9694\uFF0C\u6B63\u6570\u8868\u793A\u5F39\u5E55\u5EF6\u540E\uFF08\u5411\u53F3\uFF09\uFF0C\u8D1F\u6570\u8868\u793A\u5F39\u5E55\u63D0\u524D\uFF08\u5411\u5DE6\uFF09\u3002\u652F\u6301\u767E\u5206\u6BD4\u6A21\u5F0F\uFF1A\u5728\u8DEF\u5F84\u6216\u6765\u6E90\u672B\u5C3E\u8FFD\u52A0 %\uFF0C\u5982 \u4E1C\u65B9/S03/E02@tencent%:11\uFF0C\u6309\u516C\u5F0F \u539F\u65F6\u95F4 * (\u89C6\u9891\u65F6\u957F + \u504F\u79FB\u79D2\u6570) / \u89C6\u9891\u65F6\u957F \u7F29\u653E\u5168\u90E8\u5F39\u5E55\u65F6\u95F4\u3002\u793A\u4F8B\uFF1Aoverlord/S01:90,re-zero/S02@bilibili:120,re-zero/S02/E03@dandan&bilibili:10,\u4E1C\u65B9/S03/E02@tencent%:11"},SEARCH_CACHE_MINUTES:{category:"cache",type:"number",description:"\u641C\u7D22\u7ED3\u679C\u7F13\u5B58\u65F6\u95F4(\u5206\u949F)\uFF0C\u9ED8\u8BA43",min:1,max:120},COMMENT_CACHE_MINUTES:{category:"cache",type:"number",description:"\u5F39\u5E55\u7F13\u5B58\u65F6\u95F4(\u5206\u949F)\uFF0C\u9ED8\u8BA43",min:1,max:120},REMEMBER_LAST_SELECT:{category:"cache",type:"boolean",description:"\u8BB0\u4F4F\u624B\u52A8\u9009\u62E9\u7ED3\u679C"},MAX_LAST_SELECT_MAP:{category:"cache",type:"number",description:"\u8BB0\u4F4F\u4E0A\u6B21\u9009\u62E9\u6620\u5C04\u7F13\u5B58\u5927\u5C0F\u9650\u5236\uFF0C\u9ED8\u8BA4100",min:10,max:1e3},MAX_ANIMES:{category:"cache",type:"number",description:"\u52A8\u6F2B\u6807\u9898\u7F13\u5B58\u6700\u5927\u6570\u91CF\uFF0C\u9ED8\u8BA4100",min:100,max:1e3},UPSTASH_REDIS_REST_URL:{category:"cache",type:"text",description:"Upstash Redis\u8BF7\u6C42\u94FE\u63A5"},UPSTASH_REDIS_REST_TOKEN:{category:"cache",type:"text",description:"Upstash Redis\u8BBF\u95EE\u4EE4\u724C"},LOCAL_REDIS_URL:{category:"cache",type:"text",description:"\u672C\u5730 Redis \u8FDE\u63A5URL\uFF0C\u793A\u4F8B\uFF1Aredis://:password@127.0.0.1:6379/0\uFF0C\u53EA\u652F\u6301\u672C\u5730\u90E8\u7F72\u548Cdocker\u90E8\u7F72"},BANGUMI_DATA_CACHE_DAYS:{category:"cache",type:"number",description:"Bangumi Data \u7F13\u5B58\u6709\u6548\u671F(\u5929)\uFF0C\u8BBE\u7F6E0\u5219\u6BCF\u6B21\u8BF7\u6C42\u65F6\u5F3A\u5236\u5F02\u6B65\u66F4\u65B0\uFF0C\u9ED8\u8BA47\u5929",min:0,max:30},PROXY_URL:{category:"system",type:"text",description:"\u4EE3\u7406/\u53CD\u4EE3\u5730\u5740"},TMDB_API_KEY:{category:"system",type:"text",description:"TMDB API\u5BC6\u94A5"},LOG_LEVEL:{category:"system",type:"select",options:["debug","info","warn","error"],description:"\u65E5\u5FD7\u7EA7\u522B\u914D\u7F6E"},DEPLOY_PLATFROM_ACCOUNT:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u8D26\u53F7ID"},DEPLOY_PLATFROM_PROJECT:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u9879\u76EE\u540D\u79F0"},DEPLOY_PLATFROM_TOKEN:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u8BBF\u95EE\u4EE4\u724C"},NODE_TLS_REJECT_UNAUTHORIZED:{category:"system",type:"number",description:"\u5728\u5EFA\u7ACB HTTPS \u8FDE\u63A5\u65F6\u662F\u5426\u9A8C\u8BC1\u670D\u52A1\u5668\u7684 SSL/TLS \u8BC1\u4E66\uFF0C0\u8868\u793A\u5FFD\u7565\uFF0C\u9ED8\u8BA4\u4E3A1",min:0,max:1},IP_BLACKLIST:{category:"system",type:"text",description:"IP \u9ED1\u540D\u5355\u5217\u8868\uFF0C\u652F\u6301\u9017\u53F7/\u5206\u53F7/\u6362\u884C\u5206\u9694\uFF0C\u652F\u6301 /regex/ \u6216 /regex/i \u6B63\u5219\uFF0C\u652F\u6301 IPv4/IPv6 CIDR\uFF08\u5982 10.0.0.0/4\u30012001:db8::/64\uFF09\u3002\u547D\u4E2D\u5219\u62D2\u7EDD\u8BF7\u6C42"}};return{vodAllowedPlatforms:this.VOD_ALLOWED_PLATFORMS,allowedPlatforms:this.ALLOWED_PLATFORMS,token:this.get("TOKEN","87654321","string",!0),adminToken:this.get("ADMIN_TOKEN","","string",!0),sourceOrderArr:this.resolveSourceOrder(),mergeSourcePairs:this.resolveMergeSourcePairs(),customMergeRules:this.resolveCustomMergeRules(),otherServer:this.get("OTHER_SERVER","https://api.danmu.icu","string"),customSourceApiUrl:this.get("CUSTOM_SOURCE_API_URL","","string",!0),vodServers:this.resolveVodServers(),vodReturnMode:this.get("VOD_RETURN_MODE","fastest","string").toLowerCase(),vodRequestTimeout:this.get("VOD_REQUEST_TIMEOUT","10000","string"),bilibliCookie:this.get("BILIBILI_COOKIE","","string",!0),doubanCookie:this.get("DOUBAN_COOKIE","","string",!0),youkuConcurrency:Math.min(this.get("YOUKU_CONCURRENCY",8,"number"),16),platformOrderArr:this.resolvePlatformOrder(),animeTitleFilter:this.resolveAnimeTitleFilter(),episodeTitleFilter:this.resolveEpisodeTitleFilter(),blockedWords:this.get("BLOCKED_WORDS","","string"),groupMinute:Math.min(this.get("GROUP_MINUTE",1,"number"),30),danmuLimit:this.get("DANMU_LIMIT",0,"number"),proxyUrl:this.get("PROXY_URL","","string",!0),danmuSimplifiedTraditional:this.get("DANMU_SIMPLIFIED_TRADITIONAL","default","string"),danmuPushUrl:this.get("DANMU_PUSH_URL","","string"),likeSwitch:this.get("LIKE_SWITCH",!0,"boolean"),danmuOffset:this.get("DANMU_OFFSET","","string"),danmuOffsetRules:S5e(this.get("DANMU_OFFSET","","string")),tmdbApiKey:this.get("TMDB_API_KEY","","string",!0),redisUrl:this.get("UPSTASH_REDIS_REST_URL","","string",!0),redisToken:this.get("UPSTASH_REDIS_REST_TOKEN","","string",!0),localRedisUrl:this.get("LOCAL_REDIS_URL","","string",!0),rateLimitMaxRequests:this.get("RATE_LIMIT_MAX_REQUESTS",3,"number"),enableAnimeEpisodeFilter:this.get("ENABLE_ANIME_EPISODE_FILTER",!1,"boolean"),logLevel:this.get("LOG_LEVEL","info","string"),searchCacheMinutes:this.get("SEARCH_CACHE_MINUTES",3,"number"),commentCacheMinutes:this.get("COMMENT_CACHE_MINUTES",3,"number"),convertTopBottomToScroll:this.get("CONVERT_TOP_BOTTOM_TO_SCROLL",!1,"boolean"),convertColor:this.get("CONVERT_COLOR","default","string"),colorPool:this.get("COLOR_POOL","16777215,16777215,16777215,16777215,16777215,16777215,16777215,16777215,16744319,16752762,16774799,9498256,8388564,8900346,14204888,16758465","string"),danmuOutputFormat:this.get("DANMU_OUTPUT_FORMAT","json","string"),strictTitleMatch:this.get("STRICT_TITLE_MATCH",!1,"boolean"),titleToChinese:this.get("TITLE_TO_CHINESE",!1,"boolean"),animeTitleSimplified:this.get("ANIME_TITLE_SIMPLIFIED",!1,"boolean"),titleMappingTable:this.resolveTitleMappingTable(),ipBlacklist:this.resolveIpBlacklist(),aiBaseUrl:this.get("AI_BASE_URL","https://api.openai.com/v1","string"),aiModel:this.get("AI_MODEL","gpt-4o","string"),aiApiKey:this.get("AI_API_KEY","","string",!0),aiMatchPrompt:this.get("AI_MATCH_PROMPT",this.DEFAULT_AI_MATCH_PROMPT,"string"),useBangumiData:this.get("USE_BANGUMI_DATA",!1,"boolean"),rememberLastSelect:this.get("REMEMBER_LAST_SELECT",!0,"boolean"),MAX_LAST_SELECT_MAP:this.get("MAX_LAST_SELECT_MAP",100,"number"),MAX_ANIMES:this.get("MAX_ANIMES",100,"number"),bangumiDataCacheDays:this.get("BANGUMI_DATA_CACHE_DAYS",7,"number"),deployPlatformAccount:this.get("DEPLOY_PLATFROM_ACCOUNT","","string",!0),deployPlatformProject:this.get("DEPLOY_PLATFROM_PROJECT","","string",!0),deployPlatformToken:this.get("DEPLOY_PLATFROM_TOKEN","","string",!0),NODE_TLS_REJECT_UNAUTHORIZED:this.get("NODE_TLS_REJECT_UNAUTHORIZED",1,"number"),envVarConfig:r}}}});var zh,O,Ot=lr(()=>{v5e();zh={env:{},envs:{},originalEnvVars:{},accessedEnvVars:{},VERSION:"1.19.13",MAX_LOGS:1e3,MAX_RECORDS:100,animes:[],episodeIds:[],episodeNum:10001,logBuffer:[],requestHistory:new Map,localCacheValid:!1,localCacheInitialized:!1,redisValid:!1,localRedisValid:!1,aiValid:!1,redisCacheInitialized:!1,lastSelectMap:new Map,reqRecords:[],todayReqNum:0,lastHashes:{animes:null,episodeIds:null,episodeNum:null,lastSelectMap:null,reqRecords:null,todayReqNum:null},searchCache:new Map,commentCache:new Map,deployPlatform:"",currentToken:"",init(t={}){return this.env=t,this.envs=nf.load(this.env),this.originalEnvVars=Object.fromEntries(nf.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(nf.getAccessedEnvVars()),this.getConfig()},reInit(){return this.envs=nf.load(this.env),this.originalEnvVars=Object.fromEntries(nf.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(nf.getAccessedEnvVars()),this.getConfig()},makeProxyUrl(t){let e=this.envs.proxyUrl||"";if(!e||!t)return t;let r=e.split(",").map(c=>c.trim()).filter(c=>c),n=null,s=null,i=null,a;try{a=new URL(t)}catch{return t}let o=a.hostname;for(let c of r)if(c.startsWith("bahamut@")&&o.includes("gamer.com.tw")){s=c.substring(8);break}else if(c.startsWith("tmdb@")&&o.includes("tmdb")){s=c.substring(5);break}else if(c.startsWith("bilibili@")&&o.includes("bilibili")){s=c.substring(9);break}else if(c.startsWith("animeko@")&&(o.includes("animeko")||o.includes("bgm.tv"))){s=c.substring(8);break}else c.startsWith("@")&&!i?i=c.substring(1):!c.includes("@")&&!n&&(n=c);if(s)try{let c=new URL(s);return a.protocol=c.protocol,a.host=c.host,a.port=c.port,c.pathname!=="/"&&(a.pathname=c.pathname.replace(/\/$/,"")+a.pathname),a.toString()}catch{return t}return i?`${i.replace(/\/$/,"")}/${t}`:n?`http://127.0.0.1:5321/proxy?url=${encodeURIComponent(t)}`:t},getConfig(){if(this._configProxy)return this._configProxy;let t=this;return this._configProxy=new Proxy({},{get(e,r){return r in t.envs?t.envs[r]:r==="version"?t.VERSION:r==="maxLogs"?t.MAX_LOGS:r==="maxAnimes"?t.envs.MAX_ANIMES:r==="maxRecords"?t.MAX_RECORDS:r==="maxLastSelectMap"?t.MAX_LAST_SELECT_MAP:r==="makeProxyUrl"?t.makeProxyUrl.bind(t):t[r]},set(e,r,n){return r in t.envs?t.envs[r]=n:t[r]=n,!0}}),this._configProxy}},O=new Proxy({},{get(t,e){return zh.getConfig()[e]},set(t,e,r){return zh.getConfig()[e]=r,!0},has(t,e){return e in zh.getConfig()},ownKeys(t){return Reflect.ownKeys(zh.getConfig())},getOwnPropertyDescriptor(t,e){return Object.getOwnPropertyDescriptor(zh.getConfig(),e)}})});function _(t,...e){let r={error:0,warn:1,info:2},n=r[O.logLevel]!==void 0?r[O.logLevel]:1;if((r[t]||0)>n)return;let s=e.map(u=>{if(typeof u=="object"){let l=JSON.stringify(u);return I5e(l)}else return typeof u=="string"?I5e(u):u}),i=s.map(u=>typeof u=="object"?JSON.stringify(u):u).join(" "),a=new Date,c=new Date(a.getTime()+8*60*60*1e3).toISOString().replace("Z","+08:00");O.logBuffer.push({timestamp:c,level:t,message:i}),O.logBuffer.length>O.MAX_LOGS&&O.logBuffer.shift(),console[t](...s)}function I5e(t){let e=t;if(O.originalEnvVars&&O.accessedEnvVars)for(let[r,n]of Object.entries(O.originalEnvVars)){let s=O.accessedEnvVars[r];if(n&&typeof n=="string"&&n.length>0&&s&&typeof s=="string"&&s.match(/^\*+$/)&&s.length===n.length){let i="*".repeat(n.length),a=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g");e=e.replace(a,i)}}return e}function C5e(t){try{let e=JSON.parse(t);return JSON.stringify(e,null,2).replace(/\n/g,` - `)}catch{return t}}var _t=lr(()=>{Ot()});function zsr(t){if(!/^data:/i.test(t))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');t=t.replace(/\r?\n/g,"");let e=t.indexOf(",");if(e===-1||e<=4)throw new TypeError("malformed data: URI");let r=t.substring(5,e).split(";"),n="",s=!1,i=r[0]||"text/plain",a=i;for(let l=1;l{T5e=zsr});var N5e=E((hB,R5e)=>{(function(t,e){typeof hB=="object"&&typeof R5e<"u"?e(hB):typeof define=="function"&&define.amd?define(["exports"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t.WebStreamsPolyfill={}))})(hB,function(t){"use strict";function e(){}function r(S){return typeof S=="object"&&S!==null||typeof S=="function"}let n=e;function s(S,T){try{Object.defineProperty(S,"name",{value:T,configurable:!0})}catch{}}let i=Promise,a=Promise.prototype.then,o=Promise.reject.bind(i);function c(S){return new i(S)}function u(S){return c(T=>T(S))}function l(S){return o(S)}function d(S,T,k){return a.call(S,T,k)}function f(S,T,k){d(d(S,T,k),void 0,n)}function p(S,T){f(S,T)}function m(S,T){f(S,void 0,T)}function h(S,T,k){return d(S,T,k)}function A(S){d(S,void 0,n)}let g=S=>{if(typeof queueMicrotask=="function")g=queueMicrotask;else{let T=u(void 0);g=k=>d(T,k)}return g(S)};function b(S,T,k){if(typeof S!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(S,T,k)}function y(S,T,k){try{return u(b(S,T,k))}catch(z){return l(z)}}let x=16384;class v{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(T){let k=this._back,z=k;k._elements.length===x-1&&(z={_elements:[],_next:void 0}),k._elements.push(T),z!==k&&(this._back=z,k._next=z),++this._size}shift(){let T=this._front,k=T,z=this._cursor,ae=z+1,pe=T._elements,xe=pe[z];return ae===x&&(k=T._next,ae=0),--this._size,this._cursor=ae,T!==k&&(this._front=k),pe[z]=void 0,xe}forEach(T){let k=this._cursor,z=this._front,ae=z._elements;for(;(k!==ae.length||z._next!==void 0)&&!(k===ae.length&&(z=z._next,ae=z._elements,k=0,ae.length===0));)T(ae[k]),++k}peek(){let T=this._front,k=this._cursor;return T._elements[k]}}let I=Symbol("[[AbortSteps]]"),R=Symbol("[[ErrorSteps]]"),w=Symbol("[[CancelSteps]]"),N=Symbol("[[PullSteps]]"),P=Symbol("[[ReleaseSteps]]");function B(S,T){S._ownerReadableStream=T,T._reader=S,T._state==="readable"?Z(S):T._state==="closed"?F(S):W(S,T._storedError)}function M(S,T){let k=S._ownerReadableStream;return Lc(k,T)}function D(S){let T=S._ownerReadableStream;T._state==="readable"?K(S,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):j(S,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),T._readableStreamController[P](),T._reader=void 0,S._ownerReadableStream=void 0}function L(S){return new TypeError("Cannot "+S+" a stream using a released reader")}function Z(S){S._closedPromise=c((T,k)=>{S._closedPromise_resolve=T,S._closedPromise_reject=k})}function W(S,T){Z(S),K(S,T)}function F(S){Z(S),J(S)}function K(S,T){S._closedPromise_reject!==void 0&&(A(S._closedPromise),S._closedPromise_reject(T),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0)}function j(S,T){W(S,T)}function J(S){S._closedPromise_resolve!==void 0&&(S._closedPromise_resolve(void 0),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0)}let se=Number.isFinite||function(S){return typeof S=="number"&&isFinite(S)},oe=Math.trunc||function(S){return S<0?Math.ceil(S):Math.floor(S)};function ue(S){return typeof S=="object"||typeof S=="function"}function Ie(S,T){if(S!==void 0&&!ue(S))throw new TypeError(`${T} is not an object.`)}function we(S,T){if(typeof S!="function")throw new TypeError(`${T} is not a function.`)}function qe(S){return typeof S=="object"&&S!==null||typeof S=="function"}function Fe(S,T){if(!qe(S))throw new TypeError(`${T} is not an object.`)}function _e(S,T,k){if(S===void 0)throw new TypeError(`Parameter ${T} is required in '${k}'.`)}function U(S,T,k){if(S===void 0)throw new TypeError(`${T} is required in '${k}'.`)}function G(S){return Number(S)}function V(S){return S===0?0:S}function q(S){return V(oe(S))}function H(S,T){let z=Number.MAX_SAFE_INTEGER,ae=Number(S);if(ae=V(ae),!se(ae))throw new TypeError(`${T} is not a finite number`);if(ae=q(ae),ae<0||ae>z)throw new TypeError(`${T} is outside the accepted range of 0 to ${z}, inclusive`);return!se(ae)||ae===0?0:ae}function ee(S,T){if(!np(S))throw new TypeError(`${T} is not a ReadableStream.`)}function ne(S){return new fe(S)}function re(S,T){S._reader._readRequests.push(T)}function X(S,T,k){let ae=S._reader._readRequests.shift();k?ae._closeSteps():ae._chunkSteps(T)}function ie(S){return S._reader._readRequests.length}function ce(S){let T=S._reader;return!(T===void 0||!Ne(T))}class fe{constructor(T){if(_e(T,1,"ReadableStreamDefaultReader"),ee(T,"First parameter"),sp(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");B(this,T),this._readRequests=new v}get closed(){return Ne(this)?this._closedPromise:l(Ye("closed"))}cancel(T=void 0){return Ne(this)?this._ownerReadableStream===void 0?l(L("cancel")):M(this,T):l(Ye("cancel"))}read(){if(!Ne(this))return l(Ye("read"));if(this._ownerReadableStream===void 0)return l(L("read from"));let T,k,z=c((pe,xe)=>{T=pe,k=xe});return Pe(this,{_chunkSteps:pe=>T({value:pe,done:!1}),_closeSteps:()=>T({value:void 0,done:!0}),_errorSteps:pe=>k(pe)}),z}releaseLock(){if(!Ne(this))throw Ye("releaseLock");this._ownerReadableStream!==void 0&&Ue(this)}}Object.defineProperties(fe.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(fe.prototype.cancel,"cancel"),s(fe.prototype.read,"read"),s(fe.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(fe.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function Ne(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readRequests")?!1:S instanceof fe}function Pe(S,T){let k=S._ownerReadableStream;k._disturbed=!0,k._state==="closed"?T._closeSteps():k._state==="errored"?T._errorSteps(k._storedError):k._readableStreamController[N](T)}function Ue(S){D(S);let T=new TypeError("Reader was released");ze(S,T)}function ze(S,T){let k=S._readRequests;S._readRequests=new v,k.forEach(z=>{z._errorSteps(T)})}function Ye(S){return new TypeError(`ReadableStreamDefaultReader.prototype.${S} can only be used on a ReadableStreamDefaultReader`)}let Ze=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class nt{constructor(T,k){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=T,this._preventCancel=k}next(){let T=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?h(this._ongoingPromise,T,T):T(),this._ongoingPromise}return(T){let k=()=>this._returnSteps(T);return this._ongoingPromise?h(this._ongoingPromise,k,k):k()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let T=this._reader,k,z,ae=c((xe,Qe)=>{k=xe,z=Qe});return Pe(T,{_chunkSteps:xe=>{this._ongoingPromise=void 0,g(()=>k({value:xe,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,D(T),k({value:void 0,done:!0})},_errorSteps:xe=>{this._ongoingPromise=void 0,this._isFinished=!0,D(T),z(xe)}}),ae}_returnSteps(T){if(this._isFinished)return Promise.resolve({value:T,done:!0});this._isFinished=!0;let k=this._reader;if(!this._preventCancel){let z=M(k,T);return D(k),h(z,()=>({value:T,done:!0}))}return D(k),u({value:T,done:!0})}}let ct={next(){return Pt(this)?this._asyncIteratorImpl.next():l(lt("next"))},return(S){return Pt(this)?this._asyncIteratorImpl.return(S):l(lt("return"))}};Object.setPrototypeOf(ct,Ze);function tt(S,T){let k=ne(S),z=new nt(k,T),ae=Object.create(ct);return ae._asyncIteratorImpl=z,ae}function Pt(S){if(!r(S)||!Object.prototype.hasOwnProperty.call(S,"_asyncIteratorImpl"))return!1;try{return S._asyncIteratorImpl instanceof nt}catch{return!1}}function lt(S){return new TypeError(`ReadableStreamAsyncIterator.${S} can only be used on a ReadableSteamAsyncIterator`)}let ke=Number.isNaN||function(S){return S!==S};var Je,ft,rt;function bt(S){return S.slice()}function An(S,T,k,z,ae){new Uint8Array(S).set(new Uint8Array(k,z,ae),T)}let vt=S=>(typeof S.transfer=="function"?vt=T=>T.transfer():typeof structuredClone=="function"?vt=T=>structuredClone(T,{transfer:[T]}):vt=T=>T,vt(S)),_r=S=>(typeof S.detached=="boolean"?_r=T=>T.detached:_r=T=>T.byteLength===0,_r(S));function qs(S,T,k){if(S.slice)return S.slice(T,k);let z=k-T,ae=new ArrayBuffer(z);return An(ae,0,S,T,z),ae}function Pr(S,T){let k=S[T];if(k!=null){if(typeof k!="function")throw new TypeError(`${String(T)} is not a function`);return k}}function js(S){let T={[Symbol.iterator]:()=>S.iterator},k=async function*(){return yield*T}(),z=k.next;return{iterator:k,nextMethod:z,done:!1}}let Hs=(rt=(Je=Symbol.asyncIterator)!==null&&Je!==void 0?Je:(ft=Symbol.for)===null||ft===void 0?void 0:ft.call(Symbol,"Symbol.asyncIterator"))!==null&&rt!==void 0?rt:"@@asyncIterator";function ys(S,T="sync",k){if(k===void 0)if(T==="async"){if(k=Pr(S,Hs),k===void 0){let pe=Pr(S,Symbol.iterator),xe=ys(S,"sync",pe);return js(xe)}}else k=Pr(S,Symbol.iterator);if(k===void 0)throw new TypeError("The object is not iterable");let z=b(k,S,[]);if(!r(z))throw new TypeError("The iterator method must return an object");let ae=z.next;return{iterator:z,nextMethod:ae,done:!1}}function Qs(S){let T=b(S.nextMethod,S.iterator,[]);if(!r(T))throw new TypeError("The iterator.next() method must return an object");return T}function Bu(S){return!!S.done}function Ao(S){return S.value}function Dc(S){return!(typeof S!="number"||ke(S)||S<0)}function Ta(S){let T=qs(S.buffer,S.byteOffset,S.byteOffset+S.byteLength);return new Uint8Array(T)}function yn(S){let T=S._queue.shift();return S._queueTotalSize-=T.size,S._queueTotalSize<0&&(S._queueTotalSize=0),T.value}function wa(S,T,k){if(!Dc(k)||k===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");S._queue.push({value:T,size:k}),S._queueTotalSize+=k}function td(S){return S._queue.peek().value}function yo(S){S._queue=new v,S._queueTotalSize=0}function bA(S){return S===DataView}function u6(S){return bA(S.constructor)}function mpt(S){return bA(S)?1:S.BYTES_PER_ELEMENT}class dm{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!l6(this))throw h6("view");return this._view}respond(T){if(!l6(this))throw h6("respond");if(_e(T,1,"respond"),T=H(T,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(_r(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");C2(this._associatedReadableByteStreamController,T)}respondWithNewView(T){if(!l6(this))throw h6("respondWithNewView");if(_e(T,1,"respondWithNewView"),!ArrayBuffer.isView(T))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(_r(T.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");T2(this._associatedReadableByteStreamController,T)}}Object.defineProperties(dm.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),s(dm.prototype.respond,"respond"),s(dm.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(dm.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class rd{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!fm(this))throw GE("byobRequest");return m6(this)}get desiredSize(){if(!fm(this))throw GE("desiredSize");return Fle(this)}close(){if(!fm(this))throw GE("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let T=this._controlledReadableByteStream._state;if(T!=="readable")throw new TypeError(`The stream (in ${T} state) is not in the readable state and cannot be closed`);QE(this)}enqueue(T){if(!fm(this))throw GE("enqueue");if(_e(T,1,"enqueue"),!ArrayBuffer.isView(T))throw new TypeError("chunk must be an array buffer view");if(T.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(T.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let k=this._controlledReadableByteStream._state;if(k!=="readable")throw new TypeError(`The stream (in ${k} state) is not in the readable state and cannot be enqueued to`);I2(this,T)}error(T=void 0){if(!fm(this))throw GE("error");qo(this,T)}[w](T){Ole(this),yo(this);let k=this._cancelAlgorithm(T);return v2(this),k}[N](T){let k=this._controlledReadableByteStream;if(this._queueTotalSize>0){$le(this,T);return}let z=this._autoAllocateChunkSize;if(z!==void 0){let ae;try{ae=new ArrayBuffer(z)}catch(xe){T._errorSteps(xe);return}let pe={buffer:ae,bufferByteLength:z,byteOffset:0,byteLength:z,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(pe)}re(k,T),pm(this)}[P](){if(this._pendingPullIntos.length>0){let T=this._pendingPullIntos.peek();T.readerType="none",this._pendingPullIntos=new v,this._pendingPullIntos.push(T)}}}Object.defineProperties(rd.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),s(rd.prototype.close,"close"),s(rd.prototype.enqueue,"enqueue"),s(rd.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(rd.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function fm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledReadableByteStream")?!1:S instanceof rd}function l6(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_associatedReadableByteStreamController")?!1:S instanceof dm}function pm(S){if(!xpt(S))return;if(S._pulling){S._pullAgain=!0;return}S._pulling=!0;let k=S._pullAlgorithm();f(k,()=>(S._pulling=!1,S._pullAgain&&(S._pullAgain=!1,pm(S)),null),z=>(qo(S,z),null))}function Ole(S){f6(S),S._pendingPullIntos=new v}function d6(S,T){let k=!1;S._state==="closed"&&(k=!0);let z=Ple(T);T.readerType==="default"?X(S,z,k):Ipt(S,z,k)}function Ple(S){let T=S.bytesFilled,k=S.elementSize;return new S.viewConstructor(S.buffer,S.byteOffset,T/k)}function S2(S,T,k,z){S._queue.push({buffer:T,byteOffset:k,byteLength:z}),S._queueTotalSize+=z}function kle(S,T,k,z){let ae;try{ae=qs(T,k,k+z)}catch(pe){throw qo(S,pe),pe}S2(S,ae,0,z)}function Dle(S,T){T.bytesFilled>0&&kle(S,T.buffer,T.byteOffset,T.bytesFilled),EA(S)}function Ble(S,T){let k=Math.min(S._queueTotalSize,T.byteLength-T.bytesFilled),z=T.bytesFilled+k,ae=k,pe=!1,xe=z%T.elementSize,Qe=z-xe;Qe>=T.minimumFill&&(ae=Qe-T.bytesFilled,pe=!0);let It=S._queue;for(;ae>0;){let dt=It.peek(),Bt=Math.min(ae,dt.byteLength),Yt=T.byteOffset+T.bytesFilled;An(T.buffer,Yt,dt.buffer,dt.byteOffset,Bt),dt.byteLength===Bt?It.shift():(dt.byteOffset+=Bt,dt.byteLength-=Bt),S._queueTotalSize-=Bt,Lle(S,Bt,T),ae-=Bt}return pe}function Lle(S,T,k){k.bytesFilled+=T}function Mle(S){S._queueTotalSize===0&&S._closeRequested?(v2(S),XE(S._controlledReadableByteStream)):pm(S)}function f6(S){S._byobRequest!==null&&(S._byobRequest._associatedReadableByteStreamController=void 0,S._byobRequest._view=null,S._byobRequest=null)}function p6(S){for(;S._pendingPullIntos.length>0;){if(S._queueTotalSize===0)return;let T=S._pendingPullIntos.peek();Ble(S,T)&&(EA(S),d6(S._controlledReadableByteStream,T))}}function hpt(S){let T=S._controlledReadableByteStream._reader;for(;T._readRequests.length>0;){if(S._queueTotalSize===0)return;let k=T._readRequests.shift();$le(S,k)}}function gpt(S,T,k,z){let ae=S._controlledReadableByteStream,pe=T.constructor,xe=mpt(pe),{byteOffset:Qe,byteLength:It}=T,dt=k*xe,Bt;try{Bt=vt(T.buffer)}catch(un){z._errorSteps(un);return}let Yt={buffer:Bt,bufferByteLength:Bt.byteLength,byteOffset:Qe,byteLength:It,bytesFilled:0,minimumFill:dt,elementSize:xe,viewConstructor:pe,readerType:"byob"};if(S._pendingPullIntos.length>0){S._pendingPullIntos.push(Yt),jle(ae,z);return}if(ae._state==="closed"){let un=new pe(Yt.buffer,Yt.byteOffset,0);z._closeSteps(un);return}if(S._queueTotalSize>0){if(Ble(S,Yt)){let un=Ple(Yt);Mle(S),z._chunkSteps(un);return}if(S._closeRequested){let un=new TypeError("Insufficient bytes to fill elements in the given buffer");qo(S,un),z._errorSteps(un);return}}S._pendingPullIntos.push(Yt),jle(ae,z),pm(S)}function Apt(S,T){T.readerType==="none"&&EA(S);let k=S._controlledReadableByteStream;if(g6(k))for(;Hle(k)>0;){let z=EA(S);d6(k,z)}}function ypt(S,T,k){if(Lle(S,T,k),k.readerType==="none"){Dle(S,k),p6(S);return}if(k.bytesFilled0){let ae=k.byteOffset+k.bytesFilled;kle(S,k.buffer,ae-z,z)}k.bytesFilled-=z,d6(S._controlledReadableByteStream,k),p6(S)}function Wle(S,T){let k=S._pendingPullIntos.peek();f6(S),S._controlledReadableByteStream._state==="closed"?Apt(S,k):ypt(S,T,k),pm(S)}function EA(S){return S._pendingPullIntos.shift()}function xpt(S){let T=S._controlledReadableByteStream;return T._state!=="readable"||S._closeRequested||!S._started?!1:!!(ce(T)&&ie(T)>0||g6(T)&&Hle(T)>0||Fle(S)>0)}function v2(S){S._pullAlgorithm=void 0,S._cancelAlgorithm=void 0}function QE(S){let T=S._controlledReadableByteStream;if(!(S._closeRequested||T._state!=="readable")){if(S._queueTotalSize>0){S._closeRequested=!0;return}if(S._pendingPullIntos.length>0){let k=S._pendingPullIntos.peek();if(k.bytesFilled%k.elementSize!==0){let z=new TypeError("Insufficient bytes to fill elements in the given buffer");throw qo(S,z),z}}v2(S),XE(T)}}function I2(S,T){let k=S._controlledReadableByteStream;if(S._closeRequested||k._state!=="readable")return;let{buffer:z,byteOffset:ae,byteLength:pe}=T;if(_r(z))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let xe=vt(z);if(S._pendingPullIntos.length>0){let Qe=S._pendingPullIntos.peek();if(_r(Qe.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");f6(S),Qe.buffer=vt(Qe.buffer),Qe.readerType==="none"&&Dle(S,Qe)}if(ce(k))if(hpt(S),ie(k)===0)S2(S,xe,ae,pe);else{S._pendingPullIntos.length>0&&EA(S);let Qe=new Uint8Array(xe,ae,pe);X(k,Qe,!1)}else g6(k)?(S2(S,xe,ae,pe),p6(S)):S2(S,xe,ae,pe);pm(S)}function qo(S,T){let k=S._controlledReadableByteStream;k._state==="readable"&&(Ole(S),yo(S),v2(S),mde(k,T))}function $le(S,T){let k=S._queue.shift();S._queueTotalSize-=k.byteLength,Mle(S);let z=new Uint8Array(k.buffer,k.byteOffset,k.byteLength);T._chunkSteps(z)}function m6(S){if(S._byobRequest===null&&S._pendingPullIntos.length>0){let T=S._pendingPullIntos.peek(),k=new Uint8Array(T.buffer,T.byteOffset+T.bytesFilled,T.byteLength-T.bytesFilled),z=Object.create(dm.prototype);Ept(z,S,k),S._byobRequest=z}return S._byobRequest}function Fle(S){let T=S._controlledReadableByteStream._state;return T==="errored"?null:T==="closed"?0:S._strategyHWM-S._queueTotalSize}function C2(S,T){let k=S._pendingPullIntos.peek();if(S._controlledReadableByteStream._state==="closed"){if(T!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(T===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(k.bytesFilled+T>k.byteLength)throw new RangeError("bytesWritten out of range")}k.buffer=vt(k.buffer),Wle(S,T)}function T2(S,T){let k=S._pendingPullIntos.peek();if(S._controlledReadableByteStream._state==="closed"){if(T.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(T.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(k.byteOffset+k.bytesFilled!==T.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(k.bufferByteLength!==T.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(k.bytesFilled+T.byteLength>k.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let ae=T.byteLength;k.buffer=vt(T.buffer),Wle(S,ae)}function Ule(S,T,k,z,ae,pe,xe){T._controlledReadableByteStream=S,T._pullAgain=!1,T._pulling=!1,T._byobRequest=null,T._queue=T._queueTotalSize=void 0,yo(T),T._closeRequested=!1,T._started=!1,T._strategyHWM=pe,T._pullAlgorithm=z,T._cancelAlgorithm=ae,T._autoAllocateChunkSize=xe,T._pendingPullIntos=new v,S._readableStreamController=T;let Qe=k();f(u(Qe),()=>(T._started=!0,pm(T),null),It=>(qo(T,It),null))}function bpt(S,T,k){let z=Object.create(rd.prototype),ae,pe,xe;T.start!==void 0?ae=()=>T.start(z):ae=()=>{},T.pull!==void 0?pe=()=>T.pull(z):pe=()=>u(void 0),T.cancel!==void 0?xe=It=>T.cancel(It):xe=()=>u(void 0);let Qe=T.autoAllocateChunkSize;if(Qe===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");Ule(S,z,ae,pe,xe,k,Qe)}function Ept(S,T,k){S._associatedReadableByteStreamController=T,S._view=k}function h6(S){return new TypeError(`ReadableStreamBYOBRequest.prototype.${S} can only be used on a ReadableStreamBYOBRequest`)}function GE(S){return new TypeError(`ReadableByteStreamController.prototype.${S} can only be used on a ReadableByteStreamController`)}function _pt(S,T){Ie(S,T);let k=S?.mode;return{mode:k===void 0?void 0:Spt(k,`${T} has member 'mode' that`)}}function Spt(S,T){if(S=`${S}`,S!=="byob")throw new TypeError(`${T} '${S}' is not a valid enumeration value for ReadableStreamReaderMode`);return S}function vpt(S,T){var k;Ie(S,T);let z=(k=S?.min)!==null&&k!==void 0?k:1;return{min:H(z,`${T} has member 'min' that`)}}function qle(S){return new tp(S)}function jle(S,T){S._reader._readIntoRequests.push(T)}function Ipt(S,T,k){let ae=S._reader._readIntoRequests.shift();k?ae._closeSteps(T):ae._chunkSteps(T)}function Hle(S){return S._reader._readIntoRequests.length}function g6(S){let T=S._reader;return!(T===void 0||!mm(T))}class tp{constructor(T){if(_e(T,1,"ReadableStreamBYOBReader"),ee(T,"First parameter"),sp(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!fm(T._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");B(this,T),this._readIntoRequests=new v}get closed(){return mm(this)?this._closedPromise:l(w2("closed"))}cancel(T=void 0){return mm(this)?this._ownerReadableStream===void 0?l(L("cancel")):M(this,T):l(w2("cancel"))}read(T,k={}){if(!mm(this))return l(w2("read"));if(!ArrayBuffer.isView(T))return l(new TypeError("view must be an array buffer view"));if(T.byteLength===0)return l(new TypeError("view must have non-zero byteLength"));if(T.buffer.byteLength===0)return l(new TypeError("view's buffer must have non-zero byteLength"));if(_r(T.buffer))return l(new TypeError("view's buffer has been detached"));let z;try{z=vpt(k,"options")}catch(dt){return l(dt)}let ae=z.min;if(ae===0)return l(new TypeError("options.min must be greater than 0"));if(u6(T)){if(ae>T.byteLength)return l(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(ae>T.length)return l(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return l(L("read from"));let pe,xe,Qe=c((dt,Bt)=>{pe=dt,xe=Bt});return Qle(this,T,ae,{_chunkSteps:dt=>pe({value:dt,done:!1}),_closeSteps:dt=>pe({value:dt,done:!0}),_errorSteps:dt=>xe(dt)}),Qe}releaseLock(){if(!mm(this))throw w2("releaseLock");this._ownerReadableStream!==void 0&&Cpt(this)}}Object.defineProperties(tp.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(tp.prototype.cancel,"cancel"),s(tp.prototype.read,"read"),s(tp.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(tp.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function mm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readIntoRequests")?!1:S instanceof tp}function Qle(S,T,k,z){let ae=S._ownerReadableStream;ae._disturbed=!0,ae._state==="errored"?z._errorSteps(ae._storedError):gpt(ae._readableStreamController,T,k,z)}function Cpt(S){D(S);let T=new TypeError("Reader was released");Gle(S,T)}function Gle(S,T){let k=S._readIntoRequests;S._readIntoRequests=new v,k.forEach(z=>{z._errorSteps(T)})}function w2(S){return new TypeError(`ReadableStreamBYOBReader.prototype.${S} can only be used on a ReadableStreamBYOBReader`)}function KE(S,T){let{highWaterMark:k}=S;if(k===void 0)return T;if(ke(k)||k<0)throw new RangeError("Invalid highWaterMark");return k}function R2(S){let{size:T}=S;return T||(()=>1)}function N2(S,T){Ie(S,T);let k=S?.highWaterMark,z=S?.size;return{highWaterMark:k===void 0?void 0:G(k),size:z===void 0?void 0:Tpt(z,`${T} has member 'size' that`)}}function Tpt(S,T){return we(S,T),k=>G(S(k))}function wpt(S,T){Ie(S,T);let k=S?.abort,z=S?.close,ae=S?.start,pe=S?.type,xe=S?.write;return{abort:k===void 0?void 0:Rpt(k,S,`${T} has member 'abort' that`),close:z===void 0?void 0:Npt(z,S,`${T} has member 'close' that`),start:ae===void 0?void 0:Opt(ae,S,`${T} has member 'start' that`),write:xe===void 0?void 0:Ppt(xe,S,`${T} has member 'write' that`),type:pe}}function Rpt(S,T,k){return we(S,k),z=>y(S,T,[z])}function Npt(S,T,k){return we(S,k),()=>y(S,T,[])}function Opt(S,T,k){return we(S,k),z=>b(S,T,[z])}function Ppt(S,T,k){return we(S,k),(z,ae)=>y(S,T,[z,ae])}function Kle(S,T){if(!_A(S))throw new TypeError(`${T} is not a WritableStream.`)}function kpt(S){if(typeof S!="object"||S===null)return!1;try{return typeof S.aborted=="boolean"}catch{return!1}}let Dpt=typeof AbortController=="function";function Bpt(){if(Dpt)return new AbortController}class rp{constructor(T={},k={}){T===void 0?T=null:Fe(T,"First parameter");let z=N2(k,"Second parameter"),ae=wpt(T,"First parameter");if(zle(this),ae.type!==void 0)throw new RangeError("Invalid type is specified");let xe=R2(z),Qe=KE(z,1);zpt(this,ae,Qe,xe)}get locked(){if(!_A(this))throw B2("locked");return SA(this)}abort(T=void 0){return _A(this)?SA(this)?l(new TypeError("Cannot abort a stream that already has a writer")):O2(this,T):l(B2("abort"))}close(){return _A(this)?SA(this)?l(new TypeError("Cannot close a stream that already has a writer")):Lu(this)?l(new TypeError("Cannot close an already-closing stream")):Yle(this):l(B2("close"))}getWriter(){if(!_A(this))throw B2("getWriter");return Vle(this)}}Object.defineProperties(rp.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),s(rp.prototype.abort,"abort"),s(rp.prototype.close,"close"),s(rp.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(rp.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function Vle(S){return new nd(S)}function Lpt(S,T,k,z,ae=1,pe=()=>1){let xe=Object.create(rp.prototype);zle(xe);let Qe=Object.create(vA.prototype);return rde(xe,Qe,S,T,k,z,ae,pe),xe}function zle(S){S._state="writable",S._storedError=void 0,S._writer=void 0,S._writableStreamController=void 0,S._writeRequests=new v,S._inFlightWriteRequest=void 0,S._closeRequest=void 0,S._inFlightCloseRequest=void 0,S._pendingAbortRequest=void 0,S._backpressure=!1}function _A(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_writableStreamController")?!1:S instanceof rp}function SA(S){return S._writer!==void 0}function O2(S,T){var k;if(S._state==="closed"||S._state==="errored")return u(void 0);S._writableStreamController._abortReason=T,(k=S._writableStreamController._abortController)===null||k===void 0||k.abort(T);let z=S._state;if(z==="closed"||z==="errored")return u(void 0);if(S._pendingAbortRequest!==void 0)return S._pendingAbortRequest._promise;let ae=!1;z==="erroring"&&(ae=!0,T=void 0);let pe=c((xe,Qe)=>{S._pendingAbortRequest={_promise:void 0,_resolve:xe,_reject:Qe,_reason:T,_wasAlreadyErroring:ae}});return S._pendingAbortRequest._promise=pe,ae||y6(S,T),pe}function Yle(S){let T=S._state;if(T==="closed"||T==="errored")return l(new TypeError(`The stream (in ${T} state) is not in the writable state and cannot be closed`));let k=c((ae,pe)=>{let xe={_resolve:ae,_reject:pe};S._closeRequest=xe}),z=S._writer;return z!==void 0&&S._backpressure&&T==="writable"&&C6(z),Ypt(S._writableStreamController),k}function Mpt(S){return c((k,z)=>{let ae={_resolve:k,_reject:z};S._writeRequests.push(ae)})}function A6(S,T){if(S._state==="writable"){y6(S,T);return}x6(S)}function y6(S,T){let k=S._writableStreamController;S._state="erroring",S._storedError=T;let z=S._writer;z!==void 0&&Xle(z,T),!qpt(S)&&k._started&&x6(S)}function x6(S){S._state="errored",S._writableStreamController[R]();let T=S._storedError;if(S._writeRequests.forEach(ae=>{ae._reject(T)}),S._writeRequests=new v,S._pendingAbortRequest===void 0){P2(S);return}let k=S._pendingAbortRequest;if(S._pendingAbortRequest=void 0,k._wasAlreadyErroring){k._reject(T),P2(S);return}let z=S._writableStreamController[I](k._reason);f(z,()=>(k._resolve(),P2(S),null),ae=>(k._reject(ae),P2(S),null))}function Wpt(S){S._inFlightWriteRequest._resolve(void 0),S._inFlightWriteRequest=void 0}function $pt(S,T){S._inFlightWriteRequest._reject(T),S._inFlightWriteRequest=void 0,A6(S,T)}function Fpt(S){S._inFlightCloseRequest._resolve(void 0),S._inFlightCloseRequest=void 0,S._state==="erroring"&&(S._storedError=void 0,S._pendingAbortRequest!==void 0&&(S._pendingAbortRequest._resolve(),S._pendingAbortRequest=void 0)),S._state="closed";let k=S._writer;k!==void 0&&ade(k)}function Upt(S,T){S._inFlightCloseRequest._reject(T),S._inFlightCloseRequest=void 0,S._pendingAbortRequest!==void 0&&(S._pendingAbortRequest._reject(T),S._pendingAbortRequest=void 0),A6(S,T)}function Lu(S){return!(S._closeRequest===void 0&&S._inFlightCloseRequest===void 0)}function qpt(S){return!(S._inFlightWriteRequest===void 0&&S._inFlightCloseRequest===void 0)}function jpt(S){S._inFlightCloseRequest=S._closeRequest,S._closeRequest=void 0}function Hpt(S){S._inFlightWriteRequest=S._writeRequests.shift()}function P2(S){S._closeRequest!==void 0&&(S._closeRequest._reject(S._storedError),S._closeRequest=void 0);let T=S._writer;T!==void 0&&v6(T,S._storedError)}function b6(S,T){let k=S._writer;k!==void 0&&T!==S._backpressure&&(T?n0t(k):C6(k)),S._backpressure=T}class nd{constructor(T){if(_e(T,1,"WritableStreamDefaultWriter"),Kle(T,"First parameter"),SA(T))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=T,T._writer=this;let k=T._state;if(k==="writable")!Lu(T)&&T._backpressure?M2(this):ode(this),L2(this);else if(k==="erroring")I6(this,T._storedError),L2(this);else if(k==="closed")ode(this),t0t(this);else{let z=T._storedError;I6(this,z),ide(this,z)}}get closed(){return hm(this)?this._closedPromise:l(gm("closed"))}get desiredSize(){if(!hm(this))throw gm("desiredSize");if(this._ownerWritableStream===void 0)throw zE("desiredSize");return Vpt(this)}get ready(){return hm(this)?this._readyPromise:l(gm("ready"))}abort(T=void 0){return hm(this)?this._ownerWritableStream===void 0?l(zE("abort")):Qpt(this,T):l(gm("abort"))}close(){if(!hm(this))return l(gm("close"));let T=this._ownerWritableStream;return T===void 0?l(zE("close")):Lu(T)?l(new TypeError("Cannot close an already-closing stream")):Jle(this)}releaseLock(){if(!hm(this))throw gm("releaseLock");this._ownerWritableStream!==void 0&&Zle(this)}write(T=void 0){return hm(this)?this._ownerWritableStream===void 0?l(zE("write to")):ede(this,T):l(gm("write"))}}Object.defineProperties(nd.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),s(nd.prototype.abort,"abort"),s(nd.prototype.close,"close"),s(nd.prototype.releaseLock,"releaseLock"),s(nd.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(nd.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function hm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_ownerWritableStream")?!1:S instanceof nd}function Qpt(S,T){let k=S._ownerWritableStream;return O2(k,T)}function Jle(S){let T=S._ownerWritableStream;return Yle(T)}function Gpt(S){let T=S._ownerWritableStream,k=T._state;return Lu(T)||k==="closed"?u(void 0):k==="errored"?l(T._storedError):Jle(S)}function Kpt(S,T){S._closedPromiseState==="pending"?v6(S,T):r0t(S,T)}function Xle(S,T){S._readyPromiseState==="pending"?cde(S,T):s0t(S,T)}function Vpt(S){let T=S._ownerWritableStream,k=T._state;return k==="errored"||k==="erroring"?null:k==="closed"?0:nde(T._writableStreamController)}function Zle(S){let T=S._ownerWritableStream,k=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");Xle(S,k),Kpt(S,k),T._writer=void 0,S._ownerWritableStream=void 0}function ede(S,T){let k=S._ownerWritableStream,z=k._writableStreamController,ae=Jpt(z,T);if(k!==S._ownerWritableStream)return l(zE("write to"));let pe=k._state;if(pe==="errored")return l(k._storedError);if(Lu(k)||pe==="closed")return l(new TypeError("The stream is closing or closed and cannot be written to"));if(pe==="erroring")return l(k._storedError);let xe=Mpt(k);return Xpt(z,T,ae),xe}let tde={};class vA{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!E6(this))throw S6("abortReason");return this._abortReason}get signal(){if(!E6(this))throw S6("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(T=void 0){if(!E6(this))throw S6("error");this._controlledWritableStream._state==="writable"&&sde(this,T)}[I](T){let k=this._abortAlgorithm(T);return k2(this),k}[R](){yo(this)}}Object.defineProperties(vA.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vA.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function E6(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledWritableStream")?!1:S instanceof vA}function rde(S,T,k,z,ae,pe,xe,Qe){T._controlledWritableStream=S,S._writableStreamController=T,T._queue=void 0,T._queueTotalSize=void 0,yo(T),T._abortReason=void 0,T._abortController=Bpt(),T._started=!1,T._strategySizeAlgorithm=Qe,T._strategyHWM=xe,T._writeAlgorithm=z,T._closeAlgorithm=ae,T._abortAlgorithm=pe;let It=_6(T);b6(S,It);let dt=k(),Bt=u(dt);f(Bt,()=>(T._started=!0,D2(T),null),Yt=>(T._started=!0,A6(S,Yt),null))}function zpt(S,T,k,z){let ae=Object.create(vA.prototype),pe,xe,Qe,It;T.start!==void 0?pe=()=>T.start(ae):pe=()=>{},T.write!==void 0?xe=dt=>T.write(dt,ae):xe=()=>u(void 0),T.close!==void 0?Qe=()=>T.close():Qe=()=>u(void 0),T.abort!==void 0?It=dt=>T.abort(dt):It=()=>u(void 0),rde(S,ae,pe,xe,Qe,It,k,z)}function k2(S){S._writeAlgorithm=void 0,S._closeAlgorithm=void 0,S._abortAlgorithm=void 0,S._strategySizeAlgorithm=void 0}function Ypt(S){wa(S,tde,0),D2(S)}function Jpt(S,T){try{return S._strategySizeAlgorithm(T)}catch(k){return VE(S,k),1}}function nde(S){return S._strategyHWM-S._queueTotalSize}function Xpt(S,T,k){try{wa(S,T,k)}catch(ae){VE(S,ae);return}let z=S._controlledWritableStream;if(!Lu(z)&&z._state==="writable"){let ae=_6(S);b6(z,ae)}D2(S)}function D2(S){let T=S._controlledWritableStream;if(!S._started||T._inFlightWriteRequest!==void 0)return;if(T._state==="erroring"){x6(T);return}if(S._queue.length===0)return;let z=td(S);z===tde?Zpt(S):e0t(S,z)}function VE(S,T){S._controlledWritableStream._state==="writable"&&sde(S,T)}function Zpt(S){let T=S._controlledWritableStream;jpt(T),yn(S);let k=S._closeAlgorithm();k2(S),f(k,()=>(Fpt(T),null),z=>(Upt(T,z),null))}function e0t(S,T){let k=S._controlledWritableStream;Hpt(k);let z=S._writeAlgorithm(T);f(z,()=>{Wpt(k);let ae=k._state;if(yn(S),!Lu(k)&&ae==="writable"){let pe=_6(S);b6(k,pe)}return D2(S),null},ae=>(k._state==="writable"&&k2(S),$pt(k,ae),null))}function _6(S){return nde(S)<=0}function sde(S,T){let k=S._controlledWritableStream;k2(S),y6(k,T)}function B2(S){return new TypeError(`WritableStream.prototype.${S} can only be used on a WritableStream`)}function S6(S){return new TypeError(`WritableStreamDefaultController.prototype.${S} can only be used on a WritableStreamDefaultController`)}function gm(S){return new TypeError(`WritableStreamDefaultWriter.prototype.${S} can only be used on a WritableStreamDefaultWriter`)}function zE(S){return new TypeError("Cannot "+S+" a stream using a released writer")}function L2(S){S._closedPromise=c((T,k)=>{S._closedPromise_resolve=T,S._closedPromise_reject=k,S._closedPromiseState="pending"})}function ide(S,T){L2(S),v6(S,T)}function t0t(S){L2(S),ade(S)}function v6(S,T){S._closedPromise_reject!==void 0&&(A(S._closedPromise),S._closedPromise_reject(T),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0,S._closedPromiseState="rejected")}function r0t(S,T){ide(S,T)}function ade(S){S._closedPromise_resolve!==void 0&&(S._closedPromise_resolve(void 0),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0,S._closedPromiseState="resolved")}function M2(S){S._readyPromise=c((T,k)=>{S._readyPromise_resolve=T,S._readyPromise_reject=k}),S._readyPromiseState="pending"}function I6(S,T){M2(S),cde(S,T)}function ode(S){M2(S),C6(S)}function cde(S,T){S._readyPromise_reject!==void 0&&(A(S._readyPromise),S._readyPromise_reject(T),S._readyPromise_resolve=void 0,S._readyPromise_reject=void 0,S._readyPromiseState="rejected")}function n0t(S){M2(S)}function s0t(S,T){I6(S,T)}function C6(S){S._readyPromise_resolve!==void 0&&(S._readyPromise_resolve(void 0),S._readyPromise_resolve=void 0,S._readyPromise_reject=void 0,S._readyPromiseState="fulfilled")}function i0t(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let T6=i0t();function a0t(S){if(!(typeof S=="function"||typeof S=="object")||S.name!=="DOMException")return!1;try{return new S,!0}catch{return!1}}function o0t(){let S=T6?.DOMException;return a0t(S)?S:void 0}function c0t(){let S=function(k,z){this.message=k||"",this.name=z||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return s(S,"DOMException"),S.prototype=Object.create(Error.prototype),Object.defineProperty(S.prototype,"constructor",{value:S,writable:!0,configurable:!0}),S}let u0t=o0t()||c0t();function ude(S,T,k,z,ae,pe){let xe=ne(S),Qe=Vle(T);S._disturbed=!0;let It=!1,dt=u(void 0);return c((Bt,Yt)=>{let un;if(pe!==void 0){if(un=()=>{let ht=pe.reason!==void 0?pe.reason:new u0t("Aborted","AbortError"),ur=[];z||ur.push(()=>T._state==="writable"?O2(T,ht):u(void 0)),ae||ur.push(()=>S._state==="readable"?Lc(S,ht):u(void 0)),Ra(()=>Promise.all(ur.map(xn=>xn())),!0,ht)},pe.aborted){un();return}pe.addEventListener("abort",un)}function Mc(){return c((ht,ur)=>{function xn(xo){xo?ht():d(wA(),xn,ur)}xn(!1)})}function wA(){return It?u(!0):d(Qe._readyPromise,()=>c((ht,ur)=>{Pe(xe,{_chunkSteps:xn=>{dt=d(ede(Qe,xn),void 0,e),ht(!1)},_closeSteps:()=>ht(!0),_errorSteps:ur})}))}if(id(S,xe._closedPromise,ht=>(z?jo(!0,ht):Ra(()=>O2(T,ht),!0,ht),null)),id(T,Qe._closedPromise,ht=>(ae?jo(!0,ht):Ra(()=>Lc(S,ht),!0,ht),null)),Zi(S,xe._closedPromise,()=>(k?jo():Ra(()=>Gpt(Qe)),null)),Lu(T)||T._state==="closed"){let ht=new TypeError("the destination writable stream closed before all data could be piped to it");ae?jo(!0,ht):Ra(()=>Lc(S,ht),!0,ht)}A(Mc());function ap(){let ht=dt;return d(dt,()=>ht!==dt?ap():void 0)}function id(ht,ur,xn){ht._state==="errored"?xn(ht._storedError):m(ur,xn)}function Zi(ht,ur,xn){ht._state==="closed"?xn():p(ur,xn)}function Ra(ht,ur,xn){if(It)return;It=!0,T._state==="writable"&&!Lu(T)?p(ap(),xo):xo();function xo(){return f(ht(),()=>ad(ur,xn),RA=>ad(!0,RA)),null}}function jo(ht,ur){It||(It=!0,T._state==="writable"&&!Lu(T)?p(ap(),()=>ad(ht,ur)):ad(ht,ur))}function ad(ht,ur){return Zle(Qe),D(xe),pe!==void 0&&pe.removeEventListener("abort",un),ht?Yt(ur):Bt(void 0),null}})}class sd{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!W2(this))throw F2("desiredSize");return w6(this)}close(){if(!W2(this))throw F2("close");if(!CA(this))throw new TypeError("The stream is not in a state that permits close");Am(this)}enqueue(T=void 0){if(!W2(this))throw F2("enqueue");if(!CA(this))throw new TypeError("The stream is not in a state that permits enqueue");return IA(this,T)}error(T=void 0){if(!W2(this))throw F2("error");Bc(this,T)}[w](T){yo(this);let k=this._cancelAlgorithm(T);return $2(this),k}[N](T){let k=this._controlledReadableStream;if(this._queue.length>0){let z=yn(this);this._closeRequested&&this._queue.length===0?($2(this),XE(k)):YE(this),T._chunkSteps(z)}else re(k,T),YE(this)}[P](){}}Object.defineProperties(sd.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),s(sd.prototype.close,"close"),s(sd.prototype.enqueue,"enqueue"),s(sd.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(sd.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function W2(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledReadableStream")?!1:S instanceof sd}function YE(S){if(!lde(S))return;if(S._pulling){S._pullAgain=!0;return}S._pulling=!0;let k=S._pullAlgorithm();f(k,()=>(S._pulling=!1,S._pullAgain&&(S._pullAgain=!1,YE(S)),null),z=>(Bc(S,z),null))}function lde(S){let T=S._controlledReadableStream;return!CA(S)||!S._started?!1:!!(sp(T)&&ie(T)>0||w6(S)>0)}function $2(S){S._pullAlgorithm=void 0,S._cancelAlgorithm=void 0,S._strategySizeAlgorithm=void 0}function Am(S){if(!CA(S))return;let T=S._controlledReadableStream;S._closeRequested=!0,S._queue.length===0&&($2(S),XE(T))}function IA(S,T){if(!CA(S))return;let k=S._controlledReadableStream;if(sp(k)&&ie(k)>0)X(k,T,!1);else{let z;try{z=S._strategySizeAlgorithm(T)}catch(ae){throw Bc(S,ae),ae}try{wa(S,T,z)}catch(ae){throw Bc(S,ae),ae}}YE(S)}function Bc(S,T){let k=S._controlledReadableStream;k._state==="readable"&&(yo(S),$2(S),mde(k,T))}function w6(S){let T=S._controlledReadableStream._state;return T==="errored"?null:T==="closed"?0:S._strategyHWM-S._queueTotalSize}function l0t(S){return!lde(S)}function CA(S){let T=S._controlledReadableStream._state;return!S._closeRequested&&T==="readable"}function dde(S,T,k,z,ae,pe,xe){T._controlledReadableStream=S,T._queue=void 0,T._queueTotalSize=void 0,yo(T),T._started=!1,T._closeRequested=!1,T._pullAgain=!1,T._pulling=!1,T._strategySizeAlgorithm=xe,T._strategyHWM=pe,T._pullAlgorithm=z,T._cancelAlgorithm=ae,S._readableStreamController=T;let Qe=k();f(u(Qe),()=>(T._started=!0,YE(T),null),It=>(Bc(T,It),null))}function d0t(S,T,k,z){let ae=Object.create(sd.prototype),pe,xe,Qe;T.start!==void 0?pe=()=>T.start(ae):pe=()=>{},T.pull!==void 0?xe=()=>T.pull(ae):xe=()=>u(void 0),T.cancel!==void 0?Qe=It=>T.cancel(It):Qe=()=>u(void 0),dde(S,ae,pe,xe,Qe,k,z)}function F2(S){return new TypeError(`ReadableStreamDefaultController.prototype.${S} can only be used on a ReadableStreamDefaultController`)}function f0t(S,T){return fm(S._readableStreamController)?m0t(S):p0t(S)}function p0t(S,T){let k=ne(S),z=!1,ae=!1,pe=!1,xe=!1,Qe,It,dt,Bt,Yt,un=c(Zi=>{Yt=Zi});function Mc(){return z?(ae=!0,u(void 0)):(z=!0,Pe(k,{_chunkSteps:Ra=>{g(()=>{ae=!1;let jo=Ra,ad=Ra;pe||IA(dt._readableStreamController,jo),xe||IA(Bt._readableStreamController,ad),z=!1,ae&&Mc()})},_closeSteps:()=>{z=!1,pe||Am(dt._readableStreamController),xe||Am(Bt._readableStreamController),(!pe||!xe)&&Yt(void 0)},_errorSteps:()=>{z=!1}}),u(void 0))}function wA(Zi){if(pe=!0,Qe=Zi,xe){let Ra=bt([Qe,It]),jo=Lc(S,Ra);Yt(jo)}return un}function ap(Zi){if(xe=!0,It=Zi,pe){let Ra=bt([Qe,It]),jo=Lc(S,Ra);Yt(jo)}return un}function id(){}return dt=JE(id,Mc,wA),Bt=JE(id,Mc,ap),m(k._closedPromise,Zi=>(Bc(dt._readableStreamController,Zi),Bc(Bt._readableStreamController,Zi),(!pe||!xe)&&Yt(void 0),null)),[dt,Bt]}function m0t(S){let T=ne(S),k=!1,z=!1,ae=!1,pe=!1,xe=!1,Qe,It,dt,Bt,Yt,un=c(ht=>{Yt=ht});function Mc(ht){m(ht._closedPromise,ur=>(ht!==T||(qo(dt._readableStreamController,ur),qo(Bt._readableStreamController,ur),(!pe||!xe)&&Yt(void 0)),null))}function wA(){mm(T)&&(D(T),T=ne(S),Mc(T)),Pe(T,{_chunkSteps:ur=>{g(()=>{z=!1,ae=!1;let xn=ur,xo=ur;if(!pe&&!xe)try{xo=Ta(ur)}catch(RA){qo(dt._readableStreamController,RA),qo(Bt._readableStreamController,RA),Yt(Lc(S,RA));return}pe||I2(dt._readableStreamController,xn),xe||I2(Bt._readableStreamController,xo),k=!1,z?id():ae&&Zi()})},_closeSteps:()=>{k=!1,pe||QE(dt._readableStreamController),xe||QE(Bt._readableStreamController),dt._readableStreamController._pendingPullIntos.length>0&&C2(dt._readableStreamController,0),Bt._readableStreamController._pendingPullIntos.length>0&&C2(Bt._readableStreamController,0),(!pe||!xe)&&Yt(void 0)},_errorSteps:()=>{k=!1}})}function ap(ht,ur){Ne(T)&&(D(T),T=qle(S),Mc(T));let xn=ur?Bt:dt,xo=ur?dt:Bt;Qle(T,ht,1,{_chunkSteps:NA=>{g(()=>{z=!1,ae=!1;let OA=ur?xe:pe;if(ur?pe:xe)OA||T2(xn._readableStreamController,NA);else{let Tde;try{Tde=Ta(NA)}catch(k6){qo(xn._readableStreamController,k6),qo(xo._readableStreamController,k6),Yt(Lc(S,k6));return}OA||T2(xn._readableStreamController,NA),I2(xo._readableStreamController,Tde)}k=!1,z?id():ae&&Zi()})},_closeSteps:NA=>{k=!1;let OA=ur?xe:pe,V2=ur?pe:xe;OA||QE(xn._readableStreamController),V2||QE(xo._readableStreamController),NA!==void 0&&(OA||T2(xn._readableStreamController,NA),!V2&&xo._readableStreamController._pendingPullIntos.length>0&&C2(xo._readableStreamController,0)),(!OA||!V2)&&Yt(void 0)},_errorSteps:()=>{k=!1}})}function id(){if(k)return z=!0,u(void 0);k=!0;let ht=m6(dt._readableStreamController);return ht===null?wA():ap(ht._view,!1),u(void 0)}function Zi(){if(k)return ae=!0,u(void 0);k=!0;let ht=m6(Bt._readableStreamController);return ht===null?wA():ap(ht._view,!0),u(void 0)}function Ra(ht){if(pe=!0,Qe=ht,xe){let ur=bt([Qe,It]),xn=Lc(S,ur);Yt(xn)}return un}function jo(ht){if(xe=!0,It=ht,pe){let ur=bt([Qe,It]),xn=Lc(S,ur);Yt(xn)}return un}function ad(){}return dt=pde(ad,id,Ra),Bt=pde(ad,Zi,jo),Mc(T),[dt,Bt]}function h0t(S){return r(S)&&typeof S.getReader<"u"}function g0t(S){return h0t(S)?y0t(S.getReader()):A0t(S)}function A0t(S){let T,k=ys(S,"async"),z=e;function ae(){let xe;try{xe=Qs(k)}catch(It){return l(It)}let Qe=u(xe);return h(Qe,It=>{if(!r(It))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(Bu(It))Am(T._readableStreamController);else{let Bt=Ao(It);IA(T._readableStreamController,Bt)}})}function pe(xe){let Qe=k.iterator,It;try{It=Pr(Qe,"return")}catch(Yt){return l(Yt)}if(It===void 0)return u(void 0);let dt;try{dt=b(It,Qe,[xe])}catch(Yt){return l(Yt)}let Bt=u(dt);return h(Bt,Yt=>{if(!r(Yt))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return T=JE(z,ae,pe,0),T}function y0t(S){let T,k=e;function z(){let pe;try{pe=S.read()}catch(xe){return l(xe)}return h(pe,xe=>{if(!r(xe))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(xe.done)Am(T._readableStreamController);else{let Qe=xe.value;IA(T._readableStreamController,Qe)}})}function ae(pe){try{return u(S.cancel(pe))}catch(xe){return l(xe)}}return T=JE(k,z,ae,0),T}function x0t(S,T){Ie(S,T);let k=S,z=k?.autoAllocateChunkSize,ae=k?.cancel,pe=k?.pull,xe=k?.start,Qe=k?.type;return{autoAllocateChunkSize:z===void 0?void 0:H(z,`${T} has member 'autoAllocateChunkSize' that`),cancel:ae===void 0?void 0:b0t(ae,k,`${T} has member 'cancel' that`),pull:pe===void 0?void 0:E0t(pe,k,`${T} has member 'pull' that`),start:xe===void 0?void 0:_0t(xe,k,`${T} has member 'start' that`),type:Qe===void 0?void 0:S0t(Qe,`${T} has member 'type' that`)}}function b0t(S,T,k){return we(S,k),z=>y(S,T,[z])}function E0t(S,T,k){return we(S,k),z=>y(S,T,[z])}function _0t(S,T,k){return we(S,k),z=>b(S,T,[z])}function S0t(S,T){if(S=`${S}`,S!=="bytes")throw new TypeError(`${T} '${S}' is not a valid enumeration value for ReadableStreamType`);return S}function v0t(S,T){return Ie(S,T),{preventCancel:!!S?.preventCancel}}function fde(S,T){Ie(S,T);let k=S?.preventAbort,z=S?.preventCancel,ae=S?.preventClose,pe=S?.signal;return pe!==void 0&&I0t(pe,`${T} has member 'signal' that`),{preventAbort:!!k,preventCancel:!!z,preventClose:!!ae,signal:pe}}function I0t(S,T){if(!kpt(S))throw new TypeError(`${T} is not an AbortSignal.`)}function C0t(S,T){Ie(S,T);let k=S?.readable;U(k,"readable","ReadableWritablePair"),ee(k,`${T} has member 'readable' that`);let z=S?.writable;return U(z,"writable","ReadableWritablePair"),Kle(z,`${T} has member 'writable' that`),{readable:k,writable:z}}class vi{constructor(T={},k={}){T===void 0?T=null:Fe(T,"First parameter");let z=N2(k,"Second parameter"),ae=x0t(T,"First parameter");if(R6(this),ae.type==="bytes"){if(z.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let pe=KE(z,0);bpt(this,ae,pe)}else{let pe=R2(z),xe=KE(z,1);d0t(this,ae,xe,pe)}}get locked(){if(!np(this))throw ym("locked");return sp(this)}cancel(T=void 0){return np(this)?sp(this)?l(new TypeError("Cannot cancel a stream that already has a reader")):Lc(this,T):l(ym("cancel"))}getReader(T=void 0){if(!np(this))throw ym("getReader");return _pt(T,"First parameter").mode===void 0?ne(this):qle(this)}pipeThrough(T,k={}){if(!np(this))throw ym("pipeThrough");_e(T,1,"pipeThrough");let z=C0t(T,"First parameter"),ae=fde(k,"Second parameter");if(sp(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(SA(z.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let pe=ude(this,z.writable,ae.preventClose,ae.preventAbort,ae.preventCancel,ae.signal);return A(pe),z.readable}pipeTo(T,k={}){if(!np(this))return l(ym("pipeTo"));if(T===void 0)return l("Parameter 1 is required in 'pipeTo'.");if(!_A(T))return l(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let z;try{z=fde(k,"Second parameter")}catch(ae){return l(ae)}return sp(this)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):SA(T)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):ude(this,T,z.preventClose,z.preventAbort,z.preventCancel,z.signal)}tee(){if(!np(this))throw ym("tee");let T=f0t(this);return bt(T)}values(T=void 0){if(!np(this))throw ym("values");let k=v0t(T,"First parameter");return tt(this,k.preventCancel)}[Hs](T){return this.values(T)}static from(T){return g0t(T)}}Object.defineProperties(vi,{from:{enumerable:!0}}),Object.defineProperties(vi.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),s(vi.from,"from"),s(vi.prototype.cancel,"cancel"),s(vi.prototype.getReader,"getReader"),s(vi.prototype.pipeThrough,"pipeThrough"),s(vi.prototype.pipeTo,"pipeTo"),s(vi.prototype.tee,"tee"),s(vi.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vi.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(vi.prototype,Hs,{value:vi.prototype.values,writable:!0,configurable:!0});function JE(S,T,k,z=1,ae=()=>1){let pe=Object.create(vi.prototype);R6(pe);let xe=Object.create(sd.prototype);return dde(pe,xe,S,T,k,z,ae),pe}function pde(S,T,k){let z=Object.create(vi.prototype);R6(z);let ae=Object.create(rd.prototype);return Ule(z,ae,S,T,k,0,void 0),z}function R6(S){S._state="readable",S._reader=void 0,S._storedError=void 0,S._disturbed=!1}function np(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readableStreamController")?!1:S instanceof vi}function sp(S){return S._reader!==void 0}function Lc(S,T){if(S._disturbed=!0,S._state==="closed")return u(void 0);if(S._state==="errored")return l(S._storedError);XE(S);let k=S._reader;if(k!==void 0&&mm(k)){let ae=k._readIntoRequests;k._readIntoRequests=new v,ae.forEach(pe=>{pe._closeSteps(void 0)})}let z=S._readableStreamController[w](T);return h(z,e)}function XE(S){S._state="closed";let T=S._reader;if(T!==void 0&&(J(T),Ne(T))){let k=T._readRequests;T._readRequests=new v,k.forEach(z=>{z._closeSteps()})}}function mde(S,T){S._state="errored",S._storedError=T;let k=S._reader;k!==void 0&&(K(k,T),Ne(k)?ze(k,T):Gle(k,T))}function ym(S){return new TypeError(`ReadableStream.prototype.${S} can only be used on a ReadableStream`)}function hde(S,T){Ie(S,T);let k=S?.highWaterMark;return U(k,"highWaterMark","QueuingStrategyInit"),{highWaterMark:G(k)}}let gde=S=>S.byteLength;s(gde,"size");class U2{constructor(T){_e(T,1,"ByteLengthQueuingStrategy"),T=hde(T,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!yde(this))throw Ade("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!yde(this))throw Ade("size");return gde}}Object.defineProperties(U2.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(U2.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function Ade(S){return new TypeError(`ByteLengthQueuingStrategy.prototype.${S} can only be used on a ByteLengthQueuingStrategy`)}function yde(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_byteLengthQueuingStrategyHighWaterMark")?!1:S instanceof U2}let xde=()=>1;s(xde,"size");class q2{constructor(T){_e(T,1,"CountQueuingStrategy"),T=hde(T,"First parameter"),this._countQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!Ede(this))throw bde("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!Ede(this))throw bde("size");return xde}}Object.defineProperties(q2.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(q2.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function bde(S){return new TypeError(`CountQueuingStrategy.prototype.${S} can only be used on a CountQueuingStrategy`)}function Ede(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_countQueuingStrategyHighWaterMark")?!1:S instanceof q2}function T0t(S,T){Ie(S,T);let k=S?.cancel,z=S?.flush,ae=S?.readableType,pe=S?.start,xe=S?.transform,Qe=S?.writableType;return{cancel:k===void 0?void 0:O0t(k,S,`${T} has member 'cancel' that`),flush:z===void 0?void 0:w0t(z,S,`${T} has member 'flush' that`),readableType:ae,start:pe===void 0?void 0:R0t(pe,S,`${T} has member 'start' that`),transform:xe===void 0?void 0:N0t(xe,S,`${T} has member 'transform' that`),writableType:Qe}}function w0t(S,T,k){return we(S,k),z=>y(S,T,[z])}function R0t(S,T,k){return we(S,k),z=>b(S,T,[z])}function N0t(S,T,k){return we(S,k),(z,ae)=>y(S,T,[z,ae])}function O0t(S,T,k){return we(S,k),z=>y(S,T,[z])}class j2{constructor(T={},k={},z={}){T===void 0&&(T=null);let ae=N2(k,"Second parameter"),pe=N2(z,"Third parameter"),xe=T0t(T,"First parameter");if(xe.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(xe.writableType!==void 0)throw new RangeError("Invalid writableType specified");let Qe=KE(pe,0),It=R2(pe),dt=KE(ae,1),Bt=R2(ae),Yt,un=c(Mc=>{Yt=Mc});P0t(this,un,dt,Bt,Qe,It),D0t(this,xe),xe.start!==void 0?Yt(xe.start(this._transformStreamController)):Yt(void 0)}get readable(){if(!_de(this))throw Cde("readable");return this._readable}get writable(){if(!_de(this))throw Cde("writable");return this._writable}}Object.defineProperties(j2.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(j2.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function P0t(S,T,k,z,ae,pe){function xe(){return T}function Qe(un){return M0t(S,un)}function It(un){return W0t(S,un)}function dt(){return $0t(S)}S._writable=Lpt(xe,Qe,dt,It,k,z);function Bt(){return F0t(S)}function Yt(un){return U0t(S,un)}S._readable=JE(xe,Bt,Yt,ae,pe),S._backpressure=void 0,S._backpressureChangePromise=void 0,S._backpressureChangePromise_resolve=void 0,H2(S,!0),S._transformStreamController=void 0}function _de(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_transformStreamController")?!1:S instanceof j2}function Sde(S,T){Bc(S._readable._readableStreamController,T),N6(S,T)}function N6(S,T){G2(S._transformStreamController),VE(S._writable._writableStreamController,T),O6(S)}function O6(S){S._backpressure&&H2(S,!1)}function H2(S,T){S._backpressureChangePromise!==void 0&&S._backpressureChangePromise_resolve(),S._backpressureChangePromise=c(k=>{S._backpressureChangePromise_resolve=k}),S._backpressure=T}class ip{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!Q2(this))throw K2("desiredSize");let T=this._controlledTransformStream._readable._readableStreamController;return w6(T)}enqueue(T=void 0){if(!Q2(this))throw K2("enqueue");vde(this,T)}error(T=void 0){if(!Q2(this))throw K2("error");B0t(this,T)}terminate(){if(!Q2(this))throw K2("terminate");L0t(this)}}Object.defineProperties(ip.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),s(ip.prototype.enqueue,"enqueue"),s(ip.prototype.error,"error"),s(ip.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(ip.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function Q2(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledTransformStream")?!1:S instanceof ip}function k0t(S,T,k,z,ae){T._controlledTransformStream=S,S._transformStreamController=T,T._transformAlgorithm=k,T._flushAlgorithm=z,T._cancelAlgorithm=ae,T._finishPromise=void 0,T._finishPromise_resolve=void 0,T._finishPromise_reject=void 0}function D0t(S,T){let k=Object.create(ip.prototype),z,ae,pe;T.transform!==void 0?z=xe=>T.transform(xe,k):z=xe=>{try{return vde(k,xe),u(void 0)}catch(Qe){return l(Qe)}},T.flush!==void 0?ae=()=>T.flush(k):ae=()=>u(void 0),T.cancel!==void 0?pe=xe=>T.cancel(xe):pe=()=>u(void 0),k0t(S,k,z,ae,pe)}function G2(S){S._transformAlgorithm=void 0,S._flushAlgorithm=void 0,S._cancelAlgorithm=void 0}function vde(S,T){let k=S._controlledTransformStream,z=k._readable._readableStreamController;if(!CA(z))throw new TypeError("Readable side is not in a state that permits enqueue");try{IA(z,T)}catch(pe){throw N6(k,pe),k._readable._storedError}l0t(z)!==k._backpressure&&H2(k,!0)}function B0t(S,T){Sde(S._controlledTransformStream,T)}function Ide(S,T){let k=S._transformAlgorithm(T);return h(k,void 0,z=>{throw Sde(S._controlledTransformStream,z),z})}function L0t(S){let T=S._controlledTransformStream,k=T._readable._readableStreamController;Am(k);let z=new TypeError("TransformStream terminated");N6(T,z)}function M0t(S,T){let k=S._transformStreamController;if(S._backpressure){let z=S._backpressureChangePromise;return h(z,()=>{let ae=S._writable;if(ae._state==="erroring")throw ae._storedError;return Ide(k,T)})}return Ide(k,T)}function W0t(S,T){let k=S._transformStreamController;if(k._finishPromise!==void 0)return k._finishPromise;let z=S._readable;k._finishPromise=c((pe,xe)=>{k._finishPromise_resolve=pe,k._finishPromise_reject=xe});let ae=k._cancelAlgorithm(T);return G2(k),f(ae,()=>(z._state==="errored"?TA(k,z._storedError):(Bc(z._readableStreamController,T),P6(k)),null),pe=>(Bc(z._readableStreamController,pe),TA(k,pe),null)),k._finishPromise}function $0t(S){let T=S._transformStreamController;if(T._finishPromise!==void 0)return T._finishPromise;let k=S._readable;T._finishPromise=c((ae,pe)=>{T._finishPromise_resolve=ae,T._finishPromise_reject=pe});let z=T._flushAlgorithm();return G2(T),f(z,()=>(k._state==="errored"?TA(T,k._storedError):(Am(k._readableStreamController),P6(T)),null),ae=>(Bc(k._readableStreamController,ae),TA(T,ae),null)),T._finishPromise}function F0t(S){return H2(S,!1),S._backpressureChangePromise}function U0t(S,T){let k=S._transformStreamController;if(k._finishPromise!==void 0)return k._finishPromise;let z=S._writable;k._finishPromise=c((pe,xe)=>{k._finishPromise_resolve=pe,k._finishPromise_reject=xe});let ae=k._cancelAlgorithm(T);return G2(k),f(ae,()=>(z._state==="errored"?TA(k,z._storedError):(VE(z._writableStreamController,T),O6(S),P6(k)),null),pe=>(VE(z._writableStreamController,pe),O6(S),TA(k,pe),null)),k._finishPromise}function K2(S){return new TypeError(`TransformStreamDefaultController.prototype.${S} can only be used on a TransformStreamDefaultController`)}function P6(S){S._finishPromise_resolve!==void 0&&(S._finishPromise_resolve(),S._finishPromise_resolve=void 0,S._finishPromise_reject=void 0)}function TA(S,T){S._finishPromise_reject!==void 0&&(A(S._finishPromise),S._finishPromise_reject(T),S._finishPromise_resolve=void 0,S._finishPromise_reject=void 0)}function Cde(S){return new TypeError(`TransformStream.prototype.${S} can only be used on a TransformStream`)}t.ByteLengthQueuingStrategy=U2,t.CountQueuingStrategy=q2,t.ReadableByteStreamController=rd,t.ReadableStream=vi,t.ReadableStreamBYOBReader=tp,t.ReadableStreamBYOBRequest=dm,t.ReadableStreamDefaultController=sd,t.ReadableStreamDefaultReader=fe,t.TransformStream=j2,t.TransformStreamDefaultController=ip,t.WritableStream=rp,t.WritableStreamDefaultController=vA,t.WritableStreamDefaultWriter=nd})});var O5e=E(()=>{if(!globalThis.ReadableStream)try{let t=require("node:process"),{emitWarning:e}=t;try{t.emitWarning=()=>{},Object.assign(globalThis,require("node:stream/web")),t.emitWarning=e}catch(r){throw t.emitWarning=e,r}}catch{Object.assign(globalThis,N5e())}try{let{Blob:t}=require("buffer");t&&!t.prototype.stream&&(t.prototype.stream=function(r){let n=0,s=this;return new ReadableStream({type:"bytes",async pull(i){let o=await s.slice(n,Math.min(s.size,n+65536)).arrayBuffer();n+=o.byteLength,i.enqueue(new Uint8Array(o)),n===s.size&&i.close()}})})}catch{}});async function*SV(t,e=!0){for(let r of t)if("stream"in r)yield*r.stream();else if(ArrayBuffer.isView(r))if(e){let n=r.byteOffset,s=r.byteOffset+r.byteLength;for(;n!==s;){let i=Math.min(s-n,P5e),a=r.buffer.slice(n,n+i);n+=a.byteLength,yield new Uint8Array(a)}}else yield r;else{let n=0,s=r;for(;n!==s.size;){let a=await s.slice(n,Math.min(s.size,n+P5e)).arrayBuffer();n+=a.byteLength,yield new Uint8Array(a)}}}var sjr,P5e,k5e,Ysr,hu,dI=lr(()=>{sjr=Re(O5e(),1);P5e=65536;k5e=class vV{#e=[];#t="";#r=0;#n="transparent";constructor(e=[],r={}){if(typeof e!="object"||e===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof e[Symbol.iterator]!="function")throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof r!="object"&&typeof r!="function")throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");r===null&&(r={});let n=new TextEncoder;for(let i of e){let a;ArrayBuffer.isView(i)?a=new Uint8Array(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):i instanceof ArrayBuffer?a=new Uint8Array(i.slice(0)):i instanceof vV?a=i:a=n.encode(`${i}`),this.#r+=ArrayBuffer.isView(a)?a.byteLength:a.size,this.#e.push(a)}this.#n=`${r.endings===void 0?"transparent":r.endings}`;let s=r.type===void 0?"":String(r.type);this.#t=/^[\x20-\x7E]*$/.test(s)?s:""}get size(){return this.#r}get type(){return this.#t}async text(){let e=new TextDecoder,r="";for await(let n of SV(this.#e,!1))r+=e.decode(n,{stream:!0});return r+=e.decode(),r}async arrayBuffer(){let e=new Uint8Array(this.size),r=0;for await(let n of SV(this.#e,!1))e.set(n,r),r+=n.length;return e.buffer}stream(){let e=SV(this.#e,!0);return new globalThis.ReadableStream({type:"bytes",async pull(r){let n=await e.next();n.done?r.close():r.enqueue(n.value)},async cancel(){await e.return()}})}slice(e=0,r=this.size,n=""){let{size:s}=this,i=e<0?Math.max(s+e,0):Math.min(e,s),a=r<0?Math.max(s+r,0):Math.min(r,s),o=Math.max(a-i,0),c=this.#e,u=[],l=0;for(let f of c){if(l>=o)break;let p=ArrayBuffer.isView(f)?f.byteLength:f.size;if(i&&p<=i)i-=p,a-=p;else{let m;ArrayBuffer.isView(f)?(m=f.subarray(i,Math.min(p,a)),l+=m.byteLength):(m=f.slice(i,Math.min(p,a)),l+=m.size),a-=p,u.push(m),i=0}}let d=new vV([],{type:String(n).toLowerCase()});return d.#r=o,d.#e=u,d}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](e){return e&&typeof e=="object"&&typeof e.constructor=="function"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}};Object.defineProperties(k5e.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});Ysr=k5e,hu=Ysr});var Jsr,Xsr,D0,IV=lr(()=>{dI();Jsr=class extends hu{#e=0;#t="";constructor(e,r,n={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(e,n),n===null&&(n={});let s=n.lastModified===void 0?Date.now():Number(n.lastModified);Number.isNaN(s)||(this.#e=s),this.#t=String(r)}get name(){return this.#t}get lastModified(){return this.#e}get[Symbol.toStringTag](){return"File"}static[Symbol.hasInstance](e){return!!e&&e instanceof hu&&/^(File)$/.test(e[Symbol.toStringTag])}},Xsr=Jsr,D0=Xsr});function L5e(t,e=hu){var r=`${D5e()}${D5e()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),n=[],s=`--${r}\r -Content-Disposition: form-data; name="`;return t.forEach((i,a)=>typeof i=="string"?n.push(s+CV(a)+`"\r +\u672C\u5730\u548CDocker\u90E8\u7F72\u4F7F\u7528\u65F6\u8BF7\u5148\u6302\u8F7D.cache\u76EE\u5F55\u83B7\u5F97\u6700\u4F73\u4F53\u9A8C\uFF0C\u4E91\u90E8\u7F72\u4F7F\u7528\u65F6\u4F1A\u5C06\u6570\u636E\u7F13\u5B58\u81F3\u4E34\u65F6\u5185\u5B58\u4E2D\u5982\u679C\u4F53\u9A8C\u4E0D\u4F73\u8BF7\u5173\u95ED\u3002`},BLOCKED_WORDS:{category:"danmu",type:"text",description:"\u5C4F\u853D\u8BCD\u5217\u8868"},GROUP_MINUTE:{category:"danmu",type:"number",description:"\u5206\u949F\u5185\u5408\u5E76\u53BB\u91CD\uFF080\u8868\u793A\u4E0D\u53BB\u91CD\uFF09\uFF0C\u9ED8\u8BA41",min:0,max:30},DANMU_LIMIT:{category:"danmu",type:"number",description:"\u5F39\u5E55\u6570\u91CF\u9650\u5236\uFF0C\u5355\u4F4D\u4E3Ak\uFF0C\u5373\u5343\uFF1A\u9ED8\u8BA4 0\uFF0C\u8868\u793A\u4E0D\u9650\u5236\u5F39\u5E55\u6570",min:0,max:100},DANMU_SIMPLIFIED_TRADITIONAL:{category:"danmu",type:"select",options:["default","simplified","traditional"],description:"\u5F39\u5E55\u7B80\u7E41\u4F53\u8F6C\u6362\u8BBE\u7F6E\uFF1Adefault\uFF08\u9ED8\u8BA4\u4E0D\u8F6C\u6362\uFF09\u3001simplified\uFF08\u7E41\u8F6C\u7B80\uFF09\u3001traditional\uFF08\u7B80\u8F6C\u7E41\uFF09"},CONVERT_TOP_BOTTOM_TO_SCROLL:{category:"danmu",type:"boolean",description:"\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u8F6C\u6362\u4E3A\u6D6E\u52A8\u5F39\u5E55"},CONVERT_COLOR:{category:"danmu",type:"select",options:["default","white","color"],description:"\u5F39\u5E55\u8F6C\u6362\u989C\u8272\u914D\u7F6E"},COLOR_POOL:{category:"danmu",type:"text",description:"\u81EA\u5B9A\u4E49\u989C\u8272\u6C60\uFF08CONVERT_COLOR\u4E3Acolor\u65F6\u751F\u6548\uFF09\uFF0C\u4E0D\u914D\u7F6E\u4F7F\u7528\u9ED8\u8BA4\u989C\u8272\u6C60\uFF0C\u683C\u5F0F\uFF1A\u5341\u8FDB\u5236\u989C\u8272\u503C\u9017\u53F7\u5206\u9694"},DANMU_OUTPUT_FORMAT:{category:"danmu",type:"select",options:["json","xml"],description:"\u5F39\u5E55\u8F93\u51FA\u683C\u5F0F\uFF0C\u9ED8\u8BA4json"},DANMU_PUSH_URL:{category:"danmu",type:"text",description:"\u5F39\u5E55\u63A8\u9001\u5730\u5740\uFF0C\u793A\u4F8B http://127.0.0.1:9978/action?do=refresh&type=danmaku&path= "},LIKE_SWITCH:{category:"danmu",type:"boolean",description:"\u5F39\u5E55\u70B9\u8D5E\u6570\u663E\u793A\u5F00\u5173\uFF0C\u9ED8\u8BA4\u5F00\u542F"},DANMU_OFFSET:{category:"danmu",type:"text",sources:this.ALLOWED_SOURCES,description:"\u5F39\u5E55\u65F6\u95F4\u504F\u79FB\u914D\u7F6E\uFF0C\u683C\u5F0F\uFF1A\u5267\u540D:\u79D2 \u6216 \u5267\u540D/\u5B63:\u79D2 \u6216 \u5267\u540D/\u5B63/\u96C6:\u79D2\uFF0C\u652F\u6301\u6307\u5B9A\u6765\u6E90\uFF1A\u5267\u540D@\u6765\u6E90:\u79D2 \u6216 \u5267\u540D/\u5B63@\u6765\u6E901&\u6765\u6E902:\u79D2\uFF0C\u591A\u6761\u7528\u9017\u53F7\u5206\u9694\uFF0C\u6B63\u6570\u8868\u793A\u5F39\u5E55\u5EF6\u540E\uFF08\u5411\u53F3\uFF09\uFF0C\u8D1F\u6570\u8868\u793A\u5F39\u5E55\u63D0\u524D\uFF08\u5411\u5DE6\uFF09\u3002\u652F\u6301\u767E\u5206\u6BD4\u6A21\u5F0F\uFF1A\u5728\u8DEF\u5F84\u6216\u6765\u6E90\u672B\u5C3E\u8FFD\u52A0 %\uFF0C\u5982 \u4E1C\u65B9/S03/E02@tencent%:11\uFF0C\u6309\u516C\u5F0F \u539F\u65F6\u95F4 * (\u89C6\u9891\u65F6\u957F + \u504F\u79FB\u79D2\u6570) / \u89C6\u9891\u65F6\u957F \u7F29\u653E\u5168\u90E8\u5F39\u5E55\u65F6\u95F4\u3002\u793A\u4F8B\uFF1Aoverlord/S01:90,re-zero/S02@bilibili:120,re-zero/S02/E03@dandan&bilibili:10,\u4E1C\u65B9/S03/E02@tencent%:11"},SEARCH_CACHE_MINUTES:{category:"cache",type:"number",description:"\u641C\u7D22\u7ED3\u679C\u7F13\u5B58\u65F6\u95F4(\u5206\u949F)\uFF0C\u9ED8\u8BA43",min:1,max:120},COMMENT_CACHE_MINUTES:{category:"cache",type:"number",description:"\u5F39\u5E55\u7F13\u5B58\u65F6\u95F4(\u5206\u949F)\uFF0C\u9ED8\u8BA43",min:1,max:120},REMEMBER_LAST_SELECT:{category:"cache",type:"boolean",description:"\u8BB0\u4F4F\u624B\u52A8\u9009\u62E9\u7ED3\u679C"},MAX_LAST_SELECT_MAP:{category:"cache",type:"number",description:"\u8BB0\u4F4F\u4E0A\u6B21\u9009\u62E9\u6620\u5C04\u7F13\u5B58\u5927\u5C0F\u9650\u5236\uFF0C\u9ED8\u8BA4100",min:10,max:1e3},MAX_ANIMES:{category:"cache",type:"number",description:"\u52A8\u6F2B\u6807\u9898\u7F13\u5B58\u6700\u5927\u6570\u91CF\uFF0C\u9ED8\u8BA4100",min:100,max:1e3},UPSTASH_REDIS_REST_URL:{category:"cache",type:"text",description:"Upstash Redis\u8BF7\u6C42\u94FE\u63A5"},UPSTASH_REDIS_REST_TOKEN:{category:"cache",type:"text",description:"Upstash Redis\u8BBF\u95EE\u4EE4\u724C"},LOCAL_REDIS_URL:{category:"cache",type:"text",description:"\u672C\u5730 Redis \u8FDE\u63A5URL\uFF0C\u793A\u4F8B\uFF1Aredis://:password@127.0.0.1:6379/0\uFF0C\u53EA\u652F\u6301\u672C\u5730\u90E8\u7F72\u548Cdocker\u90E8\u7F72"},BANGUMI_DATA_CACHE_DAYS:{category:"cache",type:"number",description:"Bangumi Data \u7F13\u5B58\u6709\u6548\u671F(\u5929)\uFF0C\u8BBE\u7F6E0\u5219\u6BCF\u6B21\u8BF7\u6C42\u65F6\u5F3A\u5236\u5F02\u6B65\u66F4\u65B0\uFF0C\u9ED8\u8BA47\u5929",min:0,max:30},PROXY_URL:{category:"system",type:"text",description:"\u4EE3\u7406/\u53CD\u4EE3\u5730\u5740"},TMDB_API_KEY:{category:"system",type:"text",description:"TMDB API\u5BC6\u94A5"},LOG_LEVEL:{category:"system",type:"select",options:["debug","info","warn","error"],description:"\u65E5\u5FD7\u7EA7\u522B\u914D\u7F6E"},DEPLOY_PLATFROM_ACCOUNT:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u8D26\u53F7ID"},DEPLOY_PLATFROM_PROJECT:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u9879\u76EE\u540D\u79F0"},DEPLOY_PLATFROM_TOKEN:{category:"system",type:"text",description:"\u90E8\u7F72\u5E73\u53F0\u8BBF\u95EE\u4EE4\u724C"},NODE_TLS_REJECT_UNAUTHORIZED:{category:"system",type:"number",description:"\u5728\u5EFA\u7ACB HTTPS \u8FDE\u63A5\u65F6\u662F\u5426\u9A8C\u8BC1\u670D\u52A1\u5668\u7684 SSL/TLS \u8BC1\u4E66\uFF0C0\u8868\u793A\u5FFD\u7565\uFF0C\u9ED8\u8BA4\u4E3A1",min:0,max:1},IP_BLACKLIST:{category:"system",type:"text",description:"IP \u9ED1\u540D\u5355\u5217\u8868\uFF0C\u652F\u6301\u9017\u53F7/\u5206\u53F7/\u6362\u884C\u5206\u9694\uFF0C\u652F\u6301 /regex/ \u6216 /regex/i \u6B63\u5219\uFF0C\u652F\u6301 IPv4/IPv6 CIDR\uFF08\u5982 10.0.0.0/4\u30012001:db8::/64\uFF09\u3002\u547D\u4E2D\u5219\u62D2\u7EDD\u8BF7\u6C42"}};return{vodAllowedPlatforms:this.VOD_ALLOWED_PLATFORMS,allowedPlatforms:this.ALLOWED_PLATFORMS,token:this.get("TOKEN","87654321","string",!0),adminToken:this.get("ADMIN_TOKEN","","string",!0),sourceOrderArr:this.resolveSourceOrder(),mergeSourcePairs:this.resolveMergeSourcePairs(),customMergeRules:this.resolveCustomMergeRules(),otherServer:this.get("OTHER_SERVER","https://api.danmu.icu","string"),customSourceApiUrl:this.get("CUSTOM_SOURCE_API_URL","","string",!0),vodServers:this.resolveVodServers(),vodReturnMode:this.get("VOD_RETURN_MODE","fastest","string").toLowerCase(),vodRequestTimeout:this.get("VOD_REQUEST_TIMEOUT","10000","string"),bilibliCookie:this.get("BILIBILI_COOKIE","","string",!0),doubanCookie:this.get("DOUBAN_COOKIE","","string",!0),youkuConcurrency:Math.min(this.get("YOUKU_CONCURRENCY",8,"number"),16),platformOrderArr:this.resolvePlatformOrder(),animeTitleFilter:this.resolveAnimeTitleFilter(),episodeTitleFilter:this.resolveEpisodeTitleFilter(),blockedWords:this.get("BLOCKED_WORDS","","string"),groupMinute:Math.min(this.get("GROUP_MINUTE",1,"number"),30),danmuLimit:this.get("DANMU_LIMIT",0,"number"),proxyUrl:this.get("PROXY_URL","","string",!0),danmuSimplifiedTraditional:this.get("DANMU_SIMPLIFIED_TRADITIONAL","default","string"),danmuPushUrl:this.get("DANMU_PUSH_URL","","string"),likeSwitch:this.get("LIKE_SWITCH",!0,"boolean"),danmuOffset:this.get("DANMU_OFFSET","","string"),danmuOffsetRules:T5e(this.get("DANMU_OFFSET","","string")),tmdbApiKey:this.get("TMDB_API_KEY","","string",!0),redisUrl:this.get("UPSTASH_REDIS_REST_URL","","string",!0),redisToken:this.get("UPSTASH_REDIS_REST_TOKEN","","string",!0),localRedisUrl:this.get("LOCAL_REDIS_URL","","string",!0),rateLimitMaxRequests:this.get("RATE_LIMIT_MAX_REQUESTS",3,"number"),enableAnimeEpisodeFilter:this.get("ENABLE_ANIME_EPISODE_FILTER",!1,"boolean"),logLevel:this.get("LOG_LEVEL","info","string"),searchCacheMinutes:this.get("SEARCH_CACHE_MINUTES",3,"number"),commentCacheMinutes:this.get("COMMENT_CACHE_MINUTES",3,"number"),convertTopBottomToScroll:this.get("CONVERT_TOP_BOTTOM_TO_SCROLL",!1,"boolean"),convertColor:this.get("CONVERT_COLOR","default","string"),colorPool:this.get("COLOR_POOL","16777215,16777215,16777215,16777215,16777215,16777215,16777215,16777215,16744319,16752762,16774799,9498256,8388564,8900346,14204888,16758465","string"),danmuOutputFormat:this.get("DANMU_OUTPUT_FORMAT","json","string"),strictTitleMatch:this.get("STRICT_TITLE_MATCH",!1,"boolean"),titleToChinese:this.get("TITLE_TO_CHINESE",!1,"boolean"),animeTitleSimplified:this.get("ANIME_TITLE_SIMPLIFIED",!1,"boolean"),titleMappingTable:this.resolveTitleMappingTable(),ipBlacklist:this.resolveIpBlacklist(),aiBaseUrl:this.get("AI_BASE_URL","https://api.openai.com/v1","string"),aiModel:this.get("AI_MODEL","gpt-4o","string"),aiApiKey:this.get("AI_API_KEY","","string",!0),aiMatchPrompt:this.get("AI_MATCH_PROMPT",this.DEFAULT_AI_MATCH_PROMPT,"string"),useBangumiData:this.get("USE_BANGUMI_DATA",!1,"boolean"),rememberLastSelect:this.get("REMEMBER_LAST_SELECT",!0,"boolean"),MAX_LAST_SELECT_MAP:this.get("MAX_LAST_SELECT_MAP",100,"number"),MAX_ANIMES:this.get("MAX_ANIMES",100,"number"),bangumiDataCacheDays:this.get("BANGUMI_DATA_CACHE_DAYS",7,"number"),deployPlatformAccount:this.get("DEPLOY_PLATFROM_ACCOUNT","","string",!0),deployPlatformProject:this.get("DEPLOY_PLATFROM_PROJECT","","string",!0),deployPlatformToken:this.get("DEPLOY_PLATFROM_TOKEN","","string",!0),NODE_TLS_REJECT_UNAUTHORIZED:this.get("NODE_TLS_REJECT_UNAUTHORIZED",1,"number"),envVarConfig:r}}}});var Kh,O,Pt=dr(()=>{w5e();Kh={env:{},envs:{},originalEnvVars:{},accessedEnvVars:{},VERSION:"1.19.13",MAX_LOGS:1e3,MAX_RECORDS:100,animes:[],episodeIds:[],episodeNum:10001,logBuffer:[],requestHistory:new Map,localCacheValid:!1,localCacheInitialized:!1,redisValid:!1,localRedisValid:!1,aiValid:!1,redisCacheInitialized:!1,lastSelectMap:new Map,reqRecords:[],todayReqNum:0,lastHashes:{animes:null,episodeIds:null,episodeNum:null,lastSelectMap:null,reqRecords:null,todayReqNum:null},searchCache:new Map,commentCache:new Map,deployPlatform:"",currentToken:"",init(t={}){return this.env=t,this.envs=sf.load(this.env),this.originalEnvVars=Object.fromEntries(sf.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(sf.getAccessedEnvVars()),this.getConfig()},reInit(){return this.envs=sf.load(this.env),this.originalEnvVars=Object.fromEntries(sf.getOriginalEnvVars()),this.accessedEnvVars=Object.fromEntries(sf.getAccessedEnvVars()),this.getConfig()},makeProxyUrl(t){let e=this.envs.proxyUrl||"";if(!e||!t)return t;let r=e.split(",").map(c=>c.trim()).filter(c=>c),n=null,s=null,i=null,a;try{a=new URL(t)}catch{return t}let o=a.hostname;for(let c of r)if(c.startsWith("bahamut@")&&o.includes("gamer.com.tw")){s=c.substring(8);break}else if(c.startsWith("tmdb@")&&o.includes("tmdb")){s=c.substring(5);break}else if(c.startsWith("bilibili@")&&o.includes("bilibili")){s=c.substring(9);break}else if(c.startsWith("animeko@")&&(o.includes("animeko")||o.includes("bgm.tv"))){s=c.substring(8);break}else c.startsWith("@")&&!i?i=c.substring(1):!c.includes("@")&&!n&&(n=c);if(s)try{let c=new URL(s);return a.protocol=c.protocol,a.host=c.host,a.port=c.port,c.pathname!=="/"&&(a.pathname=c.pathname.replace(/\/$/,"")+a.pathname),a.toString()}catch{return t}return i?`${i.replace(/\/$/,"")}/${t}`:n?`http://127.0.0.1:5321/proxy?url=${encodeURIComponent(t)}`:t},getConfig(){if(this._configProxy)return this._configProxy;let t=this;return this._configProxy=new Proxy({},{get(e,r){return r in t.envs?t.envs[r]:r==="version"?t.VERSION:r==="maxLogs"?t.MAX_LOGS:r==="maxAnimes"?t.envs.MAX_ANIMES:r==="maxRecords"?t.MAX_RECORDS:r==="maxLastSelectMap"?t.MAX_LAST_SELECT_MAP:r==="makeProxyUrl"?t.makeProxyUrl.bind(t):t[r]},set(e,r,n){return r in t.envs?t.envs[r]=n:t[r]=n,!0}}),this._configProxy}},O=new Proxy({},{get(t,e){return Kh.getConfig()[e]},set(t,e,r){return Kh.getConfig()[e]=r,!0},has(t,e){return e in Kh.getConfig()},ownKeys(t){return Reflect.ownKeys(Kh.getConfig())},getOwnPropertyDescriptor(t,e){return Object.getOwnPropertyDescriptor(Kh.getConfig(),e)}})});function _(t,...e){let r={error:0,warn:1,info:2},n=r[O.logLevel]!==void 0?r[O.logLevel]:1;if((r[t]||0)>n)return;let s=e.map(u=>{if(typeof u=="object"){let l=JSON.stringify(u);return R5e(l)}else return typeof u=="string"?R5e(u):u}),i=s.map(u=>typeof u=="object"?JSON.stringify(u):u).join(" "),a=new Date,c=new Date(a.getTime()+8*60*60*1e3).toISOString().replace("Z","+08:00");O.logBuffer.push({timestamp:c,level:t,message:i}),O.logBuffer.length>O.MAX_LOGS&&O.logBuffer.shift(),console[t](...s)}function R5e(t){let e=t;if(O.originalEnvVars&&O.accessedEnvVars)for(let[r,n]of Object.entries(O.originalEnvVars)){let s=O.accessedEnvVars[r];if(n&&typeof n=="string"&&n.length>0&&s&&typeof s=="string"&&s.match(/^\*+$/)&&s.length===n.length){let i="*".repeat(n.length),a=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g");e=e.replace(a,i)}}return e}function N5e(t){try{let e=JSON.parse(t);return JSON.stringify(e,null,2).replace(/\n/g,` + `)}catch{return t}}var St=dr(()=>{Pt()});function eir(t){if(!/^data:/i.test(t))throw new TypeError('`uri` does not appear to be a Data URI (must begin with "data:")');t=t.replace(/\r?\n/g,"");let e=t.indexOf(",");if(e===-1||e<=4)throw new TypeError("malformed data: URI");let r=t.substring(5,e).split(";"),n="",s=!1,i=r[0]||"text/plain",a=i;for(let l=1;l{O5e=eir});var k5e=E((gL,D5e)=>{(function(t,e){typeof gL=="object"&&typeof D5e<"u"?e(gL):typeof define=="function"&&define.amd?define(["exports"],e):(t=typeof globalThis<"u"?globalThis:t||self,e(t.WebStreamsPolyfill={}))})(gL,function(t){"use strict";function e(){}function r(S){return typeof S=="object"&&S!==null||typeof S=="function"}let n=e;function s(S,T){try{Object.defineProperty(S,"name",{value:T,configurable:!0})}catch{}}let i=Promise,a=Promise.prototype.then,o=Promise.reject.bind(i);function c(S){return new i(S)}function u(S){return c(T=>T(S))}function l(S){return o(S)}function d(S,T,D){return a.call(S,T,D)}function f(S,T,D){d(d(S,T,D),void 0,n)}function p(S,T){f(S,T)}function m(S,T){f(S,void 0,T)}function h(S,T,D){return d(S,T,D)}function A(S){d(S,void 0,n)}let g=S=>{if(typeof queueMicrotask=="function")g=queueMicrotask;else{let T=u(void 0);g=D=>d(T,D)}return g(S)};function b(S,T,D){if(typeof S!="function")throw new TypeError("Argument is not a function");return Function.prototype.apply.call(S,T,D)}function y(S,T,D){try{return u(b(S,T,D))}catch(K){return l(K)}}let x=16384;class v{constructor(){this._cursor=0,this._size=0,this._front={_elements:[],_next:void 0},this._back=this._front,this._cursor=0,this._size=0}get length(){return this._size}push(T){let D=this._back,K=D;D._elements.length===x-1&&(K={_elements:[],_next:void 0}),D._elements.push(T),K!==D&&(this._back=K,D._next=K),++this._size}shift(){let T=this._front,D=T,K=this._cursor,ae=K+1,pe=T._elements,xe=pe[K];return ae===x&&(D=T._next,ae=0),--this._size,this._cursor=ae,T!==D&&(this._front=D),pe[K]=void 0,xe}forEach(T){let D=this._cursor,K=this._front,ae=K._elements;for(;(D!==ae.length||K._next!==void 0)&&!(D===ae.length&&(K=K._next,ae=K._elements,D=0,ae.length===0));)T(ae[D]),++D}peek(){let T=this._front,D=this._cursor;return T._elements[D]}}let C=Symbol("[[AbortSteps]]"),R=Symbol("[[ErrorSteps]]"),w=Symbol("[[CancelSteps]]"),N=Symbol("[[PullSteps]]"),P=Symbol("[[ReleaseSteps]]");function L(S,T){S._ownerReadableStream=T,T._reader=S,T._state==="readable"?Z(S):T._state==="closed"?F(S):W(S,T._storedError)}function M(S,T){let D=S._ownerReadableStream;return Lc(D,T)}function k(S){let T=S._ownerReadableStream;T._state==="readable"?V(S,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")):j(S,new TypeError("Reader was released and can no longer be used to monitor the stream's closedness")),T._readableStreamController[P](),T._reader=void 0,S._ownerReadableStream=void 0}function B(S){return new TypeError("Cannot "+S+" a stream using a released reader")}function Z(S){S._closedPromise=c((T,D)=>{S._closedPromise_resolve=T,S._closedPromise_reject=D})}function W(S,T){Z(S),V(S,T)}function F(S){Z(S),J(S)}function V(S,T){S._closedPromise_reject!==void 0&&(A(S._closedPromise),S._closedPromise_reject(T),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0)}function j(S,T){W(S,T)}function J(S){S._closedPromise_resolve!==void 0&&(S._closedPromise_resolve(void 0),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0)}let se=Number.isFinite||function(S){return typeof S=="number"&&isFinite(S)},oe=Math.trunc||function(S){return S<0?Math.ceil(S):Math.floor(S)};function ue(S){return typeof S=="object"||typeof S=="function"}function Ce(S,T){if(S!==void 0&&!ue(S))throw new TypeError(`${T} is not an object.`)}function we(S,T){if(typeof S!="function")throw new TypeError(`${T} is not a function.`)}function qe(S){return typeof S=="object"&&S!==null||typeof S=="function"}function Fe(S,T){if(!qe(S))throw new TypeError(`${T} is not an object.`)}function _e(S,T,D){if(S===void 0)throw new TypeError(`Parameter ${T} is required in '${D}'.`)}function U(S,T,D){if(S===void 0)throw new TypeError(`${T} is required in '${D}'.`)}function G(S){return Number(S)}function z(S){return S===0?0:S}function q(S){return z(oe(S))}function H(S,T){let K=Number.MAX_SAFE_INTEGER,ae=Number(S);if(ae=z(ae),!se(ae))throw new TypeError(`${T} is not a finite number`);if(ae=q(ae),ae<0||ae>K)throw new TypeError(`${T} is outside the accepted range of 0 to ${K}, inclusive`);return!se(ae)||ae===0?0:ae}function ee(S,T){if(!sp(S))throw new TypeError(`${T} is not a ReadableStream.`)}function ne(S){return new fe(S)}function re(S,T){S._reader._readRequests.push(T)}function X(S,T,D){let ae=S._reader._readRequests.shift();D?ae._closeSteps():ae._chunkSteps(T)}function ie(S){return S._reader._readRequests.length}function ce(S){let T=S._reader;return!(T===void 0||!Ne(T))}class fe{constructor(T){if(_e(T,1,"ReadableStreamDefaultReader"),ee(T,"First parameter"),ip(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");L(this,T),this._readRequests=new v}get closed(){return Ne(this)?this._closedPromise:l(Ye("closed"))}cancel(T=void 0){return Ne(this)?this._ownerReadableStream===void 0?l(B("cancel")):M(this,T):l(Ye("cancel"))}read(){if(!Ne(this))return l(Ye("read"));if(this._ownerReadableStream===void 0)return l(B("read from"));let T,D,K=c((pe,xe)=>{T=pe,D=xe});return Pe(this,{_chunkSteps:pe=>T({value:pe,done:!1}),_closeSteps:()=>T({value:void 0,done:!0}),_errorSteps:pe=>D(pe)}),K}releaseLock(){if(!Ne(this))throw Ye("releaseLock");this._ownerReadableStream!==void 0&&Ue(this)}}Object.defineProperties(fe.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(fe.prototype.cancel,"cancel"),s(fe.prototype.read,"read"),s(fe.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(fe.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultReader",configurable:!0});function Ne(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readRequests")?!1:S instanceof fe}function Pe(S,T){let D=S._ownerReadableStream;D._disturbed=!0,D._state==="closed"?T._closeSteps():D._state==="errored"?T._errorSteps(D._storedError):D._readableStreamController[N](T)}function Ue(S){k(S);let T=new TypeError("Reader was released");Ke(S,T)}function Ke(S,T){let D=S._readRequests;S._readRequests=new v,D.forEach(K=>{K._errorSteps(T)})}function Ye(S){return new TypeError(`ReadableStreamDefaultReader.prototype.${S} can only be used on a ReadableStreamDefaultReader`)}let Ze=Object.getPrototypeOf(Object.getPrototypeOf(async function*(){}).prototype);class nt{constructor(T,D){this._ongoingPromise=void 0,this._isFinished=!1,this._reader=T,this._preventCancel=D}next(){let T=()=>this._nextSteps();return this._ongoingPromise=this._ongoingPromise?h(this._ongoingPromise,T,T):T(),this._ongoingPromise}return(T){let D=()=>this._returnSteps(T);return this._ongoingPromise?h(this._ongoingPromise,D,D):D()}_nextSteps(){if(this._isFinished)return Promise.resolve({value:void 0,done:!0});let T=this._reader,D,K,ae=c((xe,Qe)=>{D=xe,K=Qe});return Pe(T,{_chunkSteps:xe=>{this._ongoingPromise=void 0,g(()=>D({value:xe,done:!1}))},_closeSteps:()=>{this._ongoingPromise=void 0,this._isFinished=!0,k(T),D({value:void 0,done:!0})},_errorSteps:xe=>{this._ongoingPromise=void 0,this._isFinished=!0,k(T),K(xe)}}),ae}_returnSteps(T){if(this._isFinished)return Promise.resolve({value:T,done:!0});this._isFinished=!0;let D=this._reader;if(!this._preventCancel){let K=M(D,T);return k(D),h(K,()=>({value:T,done:!0}))}return k(D),u({value:T,done:!0})}}let ct={next(){return Dt(this)?this._asyncIteratorImpl.next():l(lt("next"))},return(S){return Dt(this)?this._asyncIteratorImpl.return(S):l(lt("return"))}};Object.setPrototypeOf(ct,Ze);function tt(S,T){let D=ne(S),K=new nt(D,T),ae=Object.create(ct);return ae._asyncIteratorImpl=K,ae}function Dt(S){if(!r(S)||!Object.prototype.hasOwnProperty.call(S,"_asyncIteratorImpl"))return!1;try{return S._asyncIteratorImpl instanceof nt}catch{return!1}}function lt(S){return new TypeError(`ReadableStreamAsyncIterator.${S} can only be used on a ReadableSteamAsyncIterator`)}let De=Number.isNaN||function(S){return S!==S};var Je,ft,rt;function bt(S){return S.slice()}function An(S,T,D,K,ae){new Uint8Array(S).set(new Uint8Array(D,K,ae),T)}let Ct=S=>(typeof S.transfer=="function"?Ct=T=>T.transfer():typeof structuredClone=="function"?Ct=T=>structuredClone(T,{transfer:[T]}):Ct=T=>T,Ct(S)),Sr=S=>(typeof S.detached=="boolean"?Sr=T=>T.detached:Sr=T=>T.byteLength===0,Sr(S));function Us(S,T,D){if(S.slice)return S.slice(T,D);let K=D-T,ae=new ArrayBuffer(K);return An(ae,0,S,T,K),ae}function Dr(S,T){let D=S[T];if(D!=null){if(typeof D!="function")throw new TypeError(`${String(T)} is not a function`);return D}}function qs(S){let T={[Symbol.iterator]:()=>S.iterator},D=async function*(){return yield*T}(),K=D.next;return{iterator:D,nextMethod:K,done:!1}}let js=(rt=(Je=Symbol.asyncIterator)!==null&&Je!==void 0?Je:(ft=Symbol.for)===null||ft===void 0?void 0:ft.call(Symbol,"Symbol.asyncIterator"))!==null&&rt!==void 0?rt:"@@asyncIterator";function ys(S,T="sync",D){if(D===void 0)if(T==="async"){if(D=Dr(S,js),D===void 0){let pe=Dr(S,Symbol.iterator),xe=ys(S,"sync",pe);return qs(xe)}}else D=Dr(S,Symbol.iterator);if(D===void 0)throw new TypeError("The object is not iterable");let K=b(D,S,[]);if(!r(K))throw new TypeError("The iterator method must return an object");let ae=K.next;return{iterator:K,nextMethod:ae,done:!1}}function Hs(S){let T=b(S.nextMethod,S.iterator,[]);if(!r(T))throw new TypeError("The iterator.next() method must return an object");return T}function Lu(S){return!!S.done}function go(S){return S.value}function Dc(S){return!(typeof S!="number"||De(S)||S<0)}function Ta(S){let T=Us(S.buffer,S.byteOffset,S.byteOffset+S.byteLength);return new Uint8Array(T)}function yn(S){let T=S._queue.shift();return S._queueTotalSize-=T.size,S._queueTotalSize<0&&(S._queueTotalSize=0),T.value}function wa(S,T,D){if(!Dc(D)||D===1/0)throw new RangeError("Size must be a finite, non-NaN, non-negative number.");S._queue.push({value:T,size:D}),S._queueTotalSize+=D}function rd(S){return S._queue.peek().value}function Ao(S){S._queue=new v,S._queueTotalSize=0}function bA(S){return S===DataView}function l6(S){return bA(S.constructor)}function gpt(S){return bA(S)?1:S.BYTES_PER_ELEMENT}class dm{constructor(){throw new TypeError("Illegal constructor")}get view(){if(!d6(this))throw g6("view");return this._view}respond(T){if(!d6(this))throw g6("respond");if(_e(T,1,"respond"),T=H(T,"First parameter"),this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(Sr(this._view.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be used as a response");w2(this._associatedReadableByteStreamController,T)}respondWithNewView(T){if(!d6(this))throw g6("respondWithNewView");if(_e(T,1,"respondWithNewView"),!ArrayBuffer.isView(T))throw new TypeError("You can only respond with array buffer views");if(this._associatedReadableByteStreamController===void 0)throw new TypeError("This BYOB request has been invalidated");if(Sr(T.buffer))throw new TypeError("The given view's buffer has been detached and so cannot be used as a response");R2(this._associatedReadableByteStreamController,T)}}Object.defineProperties(dm.prototype,{respond:{enumerable:!0},respondWithNewView:{enumerable:!0},view:{enumerable:!0}}),s(dm.prototype.respond,"respond"),s(dm.prototype.respondWithNewView,"respondWithNewView"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(dm.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBRequest",configurable:!0});class nd{constructor(){throw new TypeError("Illegal constructor")}get byobRequest(){if(!fm(this))throw VE("byobRequest");return h6(this)}get desiredSize(){if(!fm(this))throw VE("desiredSize");return jle(this)}close(){if(!fm(this))throw VE("close");if(this._closeRequested)throw new TypeError("The stream has already been closed; do not close it again!");let T=this._controlledReadableByteStream._state;if(T!=="readable")throw new TypeError(`The stream (in ${T} state) is not in the readable state and cannot be closed`);GE(this)}enqueue(T){if(!fm(this))throw VE("enqueue");if(_e(T,1,"enqueue"),!ArrayBuffer.isView(T))throw new TypeError("chunk must be an array buffer view");if(T.byteLength===0)throw new TypeError("chunk must have non-zero byteLength");if(T.buffer.byteLength===0)throw new TypeError("chunk's buffer must have non-zero byteLength");if(this._closeRequested)throw new TypeError("stream is closed or draining");let D=this._controlledReadableByteStream._state;if(D!=="readable")throw new TypeError(`The stream (in ${D} state) is not in the readable state and cannot be enqueued to`);T2(this,T)}error(T=void 0){if(!fm(this))throw VE("error");Uo(this,T)}[w](T){kle(this),Ao(this);let D=this._cancelAlgorithm(T);return I2(this),D}[N](T){let D=this._controlledReadableByteStream;if(this._queueTotalSize>0){qle(this,T);return}let K=this._autoAllocateChunkSize;if(K!==void 0){let ae;try{ae=new ArrayBuffer(K)}catch(xe){T._errorSteps(xe);return}let pe={buffer:ae,bufferByteLength:K,byteOffset:0,byteLength:K,bytesFilled:0,minimumFill:1,elementSize:1,viewConstructor:Uint8Array,readerType:"default"};this._pendingPullIntos.push(pe)}re(D,T),pm(this)}[P](){if(this._pendingPullIntos.length>0){let T=this._pendingPullIntos.peek();T.readerType="none",this._pendingPullIntos=new v,this._pendingPullIntos.push(T)}}}Object.defineProperties(nd.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},byobRequest:{enumerable:!0},desiredSize:{enumerable:!0}}),s(nd.prototype.close,"close"),s(nd.prototype.enqueue,"enqueue"),s(nd.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(nd.prototype,Symbol.toStringTag,{value:"ReadableByteStreamController",configurable:!0});function fm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledReadableByteStream")?!1:S instanceof nd}function d6(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_associatedReadableByteStreamController")?!1:S instanceof dm}function pm(S){if(!Ept(S))return;if(S._pulling){S._pullAgain=!0;return}S._pulling=!0;let D=S._pullAlgorithm();f(D,()=>(S._pulling=!1,S._pullAgain&&(S._pullAgain=!1,pm(S)),null),K=>(Uo(S,K),null))}function kle(S){p6(S),S._pendingPullIntos=new v}function f6(S,T){let D=!1;S._state==="closed"&&(D=!0);let K=Lle(T);T.readerType==="default"?X(S,K,D):Tpt(S,K,D)}function Lle(S){let T=S.bytesFilled,D=S.elementSize;return new S.viewConstructor(S.buffer,S.byteOffset,T/D)}function C2(S,T,D,K){S._queue.push({buffer:T,byteOffset:D,byteLength:K}),S._queueTotalSize+=K}function Ble(S,T,D,K){let ae;try{ae=Us(T,D,D+K)}catch(pe){throw Uo(S,pe),pe}C2(S,ae,0,K)}function Mle(S,T){T.bytesFilled>0&&Ble(S,T.buffer,T.byteOffset,T.bytesFilled),EA(S)}function Wle(S,T){let D=Math.min(S._queueTotalSize,T.byteLength-T.bytesFilled),K=T.bytesFilled+D,ae=D,pe=!1,xe=K%T.elementSize,Qe=K-xe;Qe>=T.minimumFill&&(ae=Qe-T.bytesFilled,pe=!0);let It=S._queue;for(;ae>0;){let dt=It.peek(),Bt=Math.min(ae,dt.byteLength),Jt=T.byteOffset+T.bytesFilled;An(T.buffer,Jt,dt.buffer,dt.byteOffset,Bt),dt.byteLength===Bt?It.shift():(dt.byteOffset+=Bt,dt.byteLength-=Bt),S._queueTotalSize-=Bt,$le(S,Bt,T),ae-=Bt}return pe}function $le(S,T,D){D.bytesFilled+=T}function Fle(S){S._queueTotalSize===0&&S._closeRequested?(I2(S),ZE(S._controlledReadableByteStream)):pm(S)}function p6(S){S._byobRequest!==null&&(S._byobRequest._associatedReadableByteStreamController=void 0,S._byobRequest._view=null,S._byobRequest=null)}function m6(S){for(;S._pendingPullIntos.length>0;){if(S._queueTotalSize===0)return;let T=S._pendingPullIntos.peek();Wle(S,T)&&(EA(S),f6(S._controlledReadableByteStream,T))}}function Apt(S){let T=S._controlledReadableByteStream._reader;for(;T._readRequests.length>0;){if(S._queueTotalSize===0)return;let D=T._readRequests.shift();qle(S,D)}}function ypt(S,T,D,K){let ae=S._controlledReadableByteStream,pe=T.constructor,xe=gpt(pe),{byteOffset:Qe,byteLength:It}=T,dt=D*xe,Bt;try{Bt=Ct(T.buffer)}catch(un){K._errorSteps(un);return}let Jt={buffer:Bt,bufferByteLength:Bt.byteLength,byteOffset:Qe,byteLength:It,bytesFilled:0,minimumFill:dt,elementSize:xe,viewConstructor:pe,readerType:"byob"};if(S._pendingPullIntos.length>0){S._pendingPullIntos.push(Jt),Gle(ae,K);return}if(ae._state==="closed"){let un=new pe(Jt.buffer,Jt.byteOffset,0);K._closeSteps(un);return}if(S._queueTotalSize>0){if(Wle(S,Jt)){let un=Lle(Jt);Fle(S),K._chunkSteps(un);return}if(S._closeRequested){let un=new TypeError("Insufficient bytes to fill elements in the given buffer");Uo(S,un),K._errorSteps(un);return}}S._pendingPullIntos.push(Jt),Gle(ae,K),pm(S)}function xpt(S,T){T.readerType==="none"&&EA(S);let D=S._controlledReadableByteStream;if(A6(D))for(;Vle(D)>0;){let K=EA(S);f6(D,K)}}function bpt(S,T,D){if($le(S,T,D),D.readerType==="none"){Mle(S,D),m6(S);return}if(D.bytesFilled0){let ae=D.byteOffset+D.bytesFilled;Ble(S,D.buffer,ae-K,K)}D.bytesFilled-=K,f6(S._controlledReadableByteStream,D),m6(S)}function Ule(S,T){let D=S._pendingPullIntos.peek();p6(S),S._controlledReadableByteStream._state==="closed"?xpt(S,D):bpt(S,T,D),pm(S)}function EA(S){return S._pendingPullIntos.shift()}function Ept(S){let T=S._controlledReadableByteStream;return T._state!=="readable"||S._closeRequested||!S._started?!1:!!(ce(T)&&ie(T)>0||A6(T)&&Vle(T)>0||jle(S)>0)}function I2(S){S._pullAlgorithm=void 0,S._cancelAlgorithm=void 0}function GE(S){let T=S._controlledReadableByteStream;if(!(S._closeRequested||T._state!=="readable")){if(S._queueTotalSize>0){S._closeRequested=!0;return}if(S._pendingPullIntos.length>0){let D=S._pendingPullIntos.peek();if(D.bytesFilled%D.elementSize!==0){let K=new TypeError("Insufficient bytes to fill elements in the given buffer");throw Uo(S,K),K}}I2(S),ZE(T)}}function T2(S,T){let D=S._controlledReadableByteStream;if(S._closeRequested||D._state!=="readable")return;let{buffer:K,byteOffset:ae,byteLength:pe}=T;if(Sr(K))throw new TypeError("chunk's buffer is detached and so cannot be enqueued");let xe=Ct(K);if(S._pendingPullIntos.length>0){let Qe=S._pendingPullIntos.peek();if(Sr(Qe.buffer))throw new TypeError("The BYOB request's buffer has been detached and so cannot be filled with an enqueued chunk");p6(S),Qe.buffer=Ct(Qe.buffer),Qe.readerType==="none"&&Mle(S,Qe)}if(ce(D))if(Apt(S),ie(D)===0)C2(S,xe,ae,pe);else{S._pendingPullIntos.length>0&&EA(S);let Qe=new Uint8Array(xe,ae,pe);X(D,Qe,!1)}else A6(D)?(C2(S,xe,ae,pe),m6(S)):C2(S,xe,ae,pe);pm(S)}function Uo(S,T){let D=S._controlledReadableByteStream;D._state==="readable"&&(kle(S),Ao(S),I2(S),Ade(D,T))}function qle(S,T){let D=S._queue.shift();S._queueTotalSize-=D.byteLength,Fle(S);let K=new Uint8Array(D.buffer,D.byteOffset,D.byteLength);T._chunkSteps(K)}function h6(S){if(S._byobRequest===null&&S._pendingPullIntos.length>0){let T=S._pendingPullIntos.peek(),D=new Uint8Array(T.buffer,T.byteOffset+T.bytesFilled,T.byteLength-T.bytesFilled),K=Object.create(dm.prototype);Spt(K,S,D),S._byobRequest=K}return S._byobRequest}function jle(S){let T=S._controlledReadableByteStream._state;return T==="errored"?null:T==="closed"?0:S._strategyHWM-S._queueTotalSize}function w2(S,T){let D=S._pendingPullIntos.peek();if(S._controlledReadableByteStream._state==="closed"){if(T!==0)throw new TypeError("bytesWritten must be 0 when calling respond() on a closed stream")}else{if(T===0)throw new TypeError("bytesWritten must be greater than 0 when calling respond() on a readable stream");if(D.bytesFilled+T>D.byteLength)throw new RangeError("bytesWritten out of range")}D.buffer=Ct(D.buffer),Ule(S,T)}function R2(S,T){let D=S._pendingPullIntos.peek();if(S._controlledReadableByteStream._state==="closed"){if(T.byteLength!==0)throw new TypeError("The view's length must be 0 when calling respondWithNewView() on a closed stream")}else if(T.byteLength===0)throw new TypeError("The view's length must be greater than 0 when calling respondWithNewView() on a readable stream");if(D.byteOffset+D.bytesFilled!==T.byteOffset)throw new RangeError("The region specified by view does not match byobRequest");if(D.bufferByteLength!==T.buffer.byteLength)throw new RangeError("The buffer of view has different capacity than byobRequest");if(D.bytesFilled+T.byteLength>D.byteLength)throw new RangeError("The region specified by view is larger than byobRequest");let ae=T.byteLength;D.buffer=Ct(T.buffer),Ule(S,ae)}function Hle(S,T,D,K,ae,pe,xe){T._controlledReadableByteStream=S,T._pullAgain=!1,T._pulling=!1,T._byobRequest=null,T._queue=T._queueTotalSize=void 0,Ao(T),T._closeRequested=!1,T._started=!1,T._strategyHWM=pe,T._pullAlgorithm=K,T._cancelAlgorithm=ae,T._autoAllocateChunkSize=xe,T._pendingPullIntos=new v,S._readableStreamController=T;let Qe=D();f(u(Qe),()=>(T._started=!0,pm(T),null),It=>(Uo(T,It),null))}function _pt(S,T,D){let K=Object.create(nd.prototype),ae,pe,xe;T.start!==void 0?ae=()=>T.start(K):ae=()=>{},T.pull!==void 0?pe=()=>T.pull(K):pe=()=>u(void 0),T.cancel!==void 0?xe=It=>T.cancel(It):xe=()=>u(void 0);let Qe=T.autoAllocateChunkSize;if(Qe===0)throw new TypeError("autoAllocateChunkSize must be greater than 0");Hle(S,K,ae,pe,xe,D,Qe)}function Spt(S,T,D){S._associatedReadableByteStreamController=T,S._view=D}function g6(S){return new TypeError(`ReadableStreamBYOBRequest.prototype.${S} can only be used on a ReadableStreamBYOBRequest`)}function VE(S){return new TypeError(`ReadableByteStreamController.prototype.${S} can only be used on a ReadableByteStreamController`)}function vpt(S,T){Ce(S,T);let D=S?.mode;return{mode:D===void 0?void 0:Cpt(D,`${T} has member 'mode' that`)}}function Cpt(S,T){if(S=`${S}`,S!=="byob")throw new TypeError(`${T} '${S}' is not a valid enumeration value for ReadableStreamReaderMode`);return S}function Ipt(S,T){var D;Ce(S,T);let K=(D=S?.min)!==null&&D!==void 0?D:1;return{min:H(K,`${T} has member 'min' that`)}}function Qle(S){return new rp(S)}function Gle(S,T){S._reader._readIntoRequests.push(T)}function Tpt(S,T,D){let ae=S._reader._readIntoRequests.shift();D?ae._closeSteps(T):ae._chunkSteps(T)}function Vle(S){return S._reader._readIntoRequests.length}function A6(S){let T=S._reader;return!(T===void 0||!mm(T))}class rp{constructor(T){if(_e(T,1,"ReadableStreamBYOBReader"),ee(T,"First parameter"),ip(T))throw new TypeError("This stream has already been locked for exclusive reading by another reader");if(!fm(T._readableStreamController))throw new TypeError("Cannot construct a ReadableStreamBYOBReader for a stream not constructed with a byte source");L(this,T),this._readIntoRequests=new v}get closed(){return mm(this)?this._closedPromise:l(N2("closed"))}cancel(T=void 0){return mm(this)?this._ownerReadableStream===void 0?l(B("cancel")):M(this,T):l(N2("cancel"))}read(T,D={}){if(!mm(this))return l(N2("read"));if(!ArrayBuffer.isView(T))return l(new TypeError("view must be an array buffer view"));if(T.byteLength===0)return l(new TypeError("view must have non-zero byteLength"));if(T.buffer.byteLength===0)return l(new TypeError("view's buffer must have non-zero byteLength"));if(Sr(T.buffer))return l(new TypeError("view's buffer has been detached"));let K;try{K=Ipt(D,"options")}catch(dt){return l(dt)}let ae=K.min;if(ae===0)return l(new TypeError("options.min must be greater than 0"));if(l6(T)){if(ae>T.byteLength)return l(new RangeError("options.min must be less than or equal to view's byteLength"))}else if(ae>T.length)return l(new RangeError("options.min must be less than or equal to view's length"));if(this._ownerReadableStream===void 0)return l(B("read from"));let pe,xe,Qe=c((dt,Bt)=>{pe=dt,xe=Bt});return zle(this,T,ae,{_chunkSteps:dt=>pe({value:dt,done:!1}),_closeSteps:dt=>pe({value:dt,done:!0}),_errorSteps:dt=>xe(dt)}),Qe}releaseLock(){if(!mm(this))throw N2("releaseLock");this._ownerReadableStream!==void 0&&wpt(this)}}Object.defineProperties(rp.prototype,{cancel:{enumerable:!0},read:{enumerable:!0},releaseLock:{enumerable:!0},closed:{enumerable:!0}}),s(rp.prototype.cancel,"cancel"),s(rp.prototype.read,"read"),s(rp.prototype.releaseLock,"releaseLock"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(rp.prototype,Symbol.toStringTag,{value:"ReadableStreamBYOBReader",configurable:!0});function mm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readIntoRequests")?!1:S instanceof rp}function zle(S,T,D,K){let ae=S._ownerReadableStream;ae._disturbed=!0,ae._state==="errored"?K._errorSteps(ae._storedError):ypt(ae._readableStreamController,T,D,K)}function wpt(S){k(S);let T=new TypeError("Reader was released");Kle(S,T)}function Kle(S,T){let D=S._readIntoRequests;S._readIntoRequests=new v,D.forEach(K=>{K._errorSteps(T)})}function N2(S){return new TypeError(`ReadableStreamBYOBReader.prototype.${S} can only be used on a ReadableStreamBYOBReader`)}function zE(S,T){let{highWaterMark:D}=S;if(D===void 0)return T;if(De(D)||D<0)throw new RangeError("Invalid highWaterMark");return D}function O2(S){let{size:T}=S;return T||(()=>1)}function P2(S,T){Ce(S,T);let D=S?.highWaterMark,K=S?.size;return{highWaterMark:D===void 0?void 0:G(D),size:K===void 0?void 0:Rpt(K,`${T} has member 'size' that`)}}function Rpt(S,T){return we(S,T),D=>G(S(D))}function Npt(S,T){Ce(S,T);let D=S?.abort,K=S?.close,ae=S?.start,pe=S?.type,xe=S?.write;return{abort:D===void 0?void 0:Opt(D,S,`${T} has member 'abort' that`),close:K===void 0?void 0:Ppt(K,S,`${T} has member 'close' that`),start:ae===void 0?void 0:Dpt(ae,S,`${T} has member 'start' that`),write:xe===void 0?void 0:kpt(xe,S,`${T} has member 'write' that`),type:pe}}function Opt(S,T,D){return we(S,D),K=>y(S,T,[K])}function Ppt(S,T,D){return we(S,D),()=>y(S,T,[])}function Dpt(S,T,D){return we(S,D),K=>b(S,T,[K])}function kpt(S,T,D){return we(S,D),(K,ae)=>y(S,T,[K,ae])}function Yle(S,T){if(!_A(S))throw new TypeError(`${T} is not a WritableStream.`)}function Lpt(S){if(typeof S!="object"||S===null)return!1;try{return typeof S.aborted=="boolean"}catch{return!1}}let Bpt=typeof AbortController=="function";function Mpt(){if(Bpt)return new AbortController}class np{constructor(T={},D={}){T===void 0?T=null:Fe(T,"First parameter");let K=P2(D,"Second parameter"),ae=Npt(T,"First parameter");if(Xle(this),ae.type!==void 0)throw new RangeError("Invalid type is specified");let xe=O2(K),Qe=zE(K,1);Jpt(this,ae,Qe,xe)}get locked(){if(!_A(this))throw M2("locked");return SA(this)}abort(T=void 0){return _A(this)?SA(this)?l(new TypeError("Cannot abort a stream that already has a writer")):D2(this,T):l(M2("abort"))}close(){return _A(this)?SA(this)?l(new TypeError("Cannot close a stream that already has a writer")):Bu(this)?l(new TypeError("Cannot close an already-closing stream")):Zle(this):l(M2("close"))}getWriter(){if(!_A(this))throw M2("getWriter");return Jle(this)}}Object.defineProperties(np.prototype,{abort:{enumerable:!0},close:{enumerable:!0},getWriter:{enumerable:!0},locked:{enumerable:!0}}),s(np.prototype.abort,"abort"),s(np.prototype.close,"close"),s(np.prototype.getWriter,"getWriter"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(np.prototype,Symbol.toStringTag,{value:"WritableStream",configurable:!0});function Jle(S){return new sd(S)}function Wpt(S,T,D,K,ae=1,pe=()=>1){let xe=Object.create(np.prototype);Xle(xe);let Qe=Object.create(vA.prototype);return ide(xe,Qe,S,T,D,K,ae,pe),xe}function Xle(S){S._state="writable",S._storedError=void 0,S._writer=void 0,S._writableStreamController=void 0,S._writeRequests=new v,S._inFlightWriteRequest=void 0,S._closeRequest=void 0,S._inFlightCloseRequest=void 0,S._pendingAbortRequest=void 0,S._backpressure=!1}function _A(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_writableStreamController")?!1:S instanceof np}function SA(S){return S._writer!==void 0}function D2(S,T){var D;if(S._state==="closed"||S._state==="errored")return u(void 0);S._writableStreamController._abortReason=T,(D=S._writableStreamController._abortController)===null||D===void 0||D.abort(T);let K=S._state;if(K==="closed"||K==="errored")return u(void 0);if(S._pendingAbortRequest!==void 0)return S._pendingAbortRequest._promise;let ae=!1;K==="erroring"&&(ae=!0,T=void 0);let pe=c((xe,Qe)=>{S._pendingAbortRequest={_promise:void 0,_resolve:xe,_reject:Qe,_reason:T,_wasAlreadyErroring:ae}});return S._pendingAbortRequest._promise=pe,ae||x6(S,T),pe}function Zle(S){let T=S._state;if(T==="closed"||T==="errored")return l(new TypeError(`The stream (in ${T} state) is not in the writable state and cannot be closed`));let D=c((ae,pe)=>{let xe={_resolve:ae,_reject:pe};S._closeRequest=xe}),K=S._writer;return K!==void 0&&S._backpressure&&T==="writable"&&T6(K),Xpt(S._writableStreamController),D}function $pt(S){return c((D,K)=>{let ae={_resolve:D,_reject:K};S._writeRequests.push(ae)})}function y6(S,T){if(S._state==="writable"){x6(S,T);return}b6(S)}function x6(S,T){let D=S._writableStreamController;S._state="erroring",S._storedError=T;let K=S._writer;K!==void 0&&tde(K,T),!Hpt(S)&&D._started&&b6(S)}function b6(S){S._state="errored",S._writableStreamController[R]();let T=S._storedError;if(S._writeRequests.forEach(ae=>{ae._reject(T)}),S._writeRequests=new v,S._pendingAbortRequest===void 0){k2(S);return}let D=S._pendingAbortRequest;if(S._pendingAbortRequest=void 0,D._wasAlreadyErroring){D._reject(T),k2(S);return}let K=S._writableStreamController[C](D._reason);f(K,()=>(D._resolve(),k2(S),null),ae=>(D._reject(ae),k2(S),null))}function Fpt(S){S._inFlightWriteRequest._resolve(void 0),S._inFlightWriteRequest=void 0}function Upt(S,T){S._inFlightWriteRequest._reject(T),S._inFlightWriteRequest=void 0,y6(S,T)}function qpt(S){S._inFlightCloseRequest._resolve(void 0),S._inFlightCloseRequest=void 0,S._state==="erroring"&&(S._storedError=void 0,S._pendingAbortRequest!==void 0&&(S._pendingAbortRequest._resolve(),S._pendingAbortRequest=void 0)),S._state="closed";let D=S._writer;D!==void 0&&ude(D)}function jpt(S,T){S._inFlightCloseRequest._reject(T),S._inFlightCloseRequest=void 0,S._pendingAbortRequest!==void 0&&(S._pendingAbortRequest._reject(T),S._pendingAbortRequest=void 0),y6(S,T)}function Bu(S){return!(S._closeRequest===void 0&&S._inFlightCloseRequest===void 0)}function Hpt(S){return!(S._inFlightWriteRequest===void 0&&S._inFlightCloseRequest===void 0)}function Qpt(S){S._inFlightCloseRequest=S._closeRequest,S._closeRequest=void 0}function Gpt(S){S._inFlightWriteRequest=S._writeRequests.shift()}function k2(S){S._closeRequest!==void 0&&(S._closeRequest._reject(S._storedError),S._closeRequest=void 0);let T=S._writer;T!==void 0&&C6(T,S._storedError)}function E6(S,T){let D=S._writer;D!==void 0&&T!==S._backpressure&&(T?i0t(D):T6(D)),S._backpressure=T}class sd{constructor(T){if(_e(T,1,"WritableStreamDefaultWriter"),Yle(T,"First parameter"),SA(T))throw new TypeError("This stream has already been locked for exclusive writing by another writer");this._ownerWritableStream=T,T._writer=this;let D=T._state;if(D==="writable")!Bu(T)&&T._backpressure?$2(this):lde(this),W2(this);else if(D==="erroring")I6(this,T._storedError),W2(this);else if(D==="closed")lde(this),n0t(this);else{let K=T._storedError;I6(this,K),cde(this,K)}}get closed(){return hm(this)?this._closedPromise:l(gm("closed"))}get desiredSize(){if(!hm(this))throw gm("desiredSize");if(this._ownerWritableStream===void 0)throw YE("desiredSize");return Ypt(this)}get ready(){return hm(this)?this._readyPromise:l(gm("ready"))}abort(T=void 0){return hm(this)?this._ownerWritableStream===void 0?l(YE("abort")):Vpt(this,T):l(gm("abort"))}close(){if(!hm(this))return l(gm("close"));let T=this._ownerWritableStream;return T===void 0?l(YE("close")):Bu(T)?l(new TypeError("Cannot close an already-closing stream")):ede(this)}releaseLock(){if(!hm(this))throw gm("releaseLock");this._ownerWritableStream!==void 0&&rde(this)}write(T=void 0){return hm(this)?this._ownerWritableStream===void 0?l(YE("write to")):nde(this,T):l(gm("write"))}}Object.defineProperties(sd.prototype,{abort:{enumerable:!0},close:{enumerable:!0},releaseLock:{enumerable:!0},write:{enumerable:!0},closed:{enumerable:!0},desiredSize:{enumerable:!0},ready:{enumerable:!0}}),s(sd.prototype.abort,"abort"),s(sd.prototype.close,"close"),s(sd.prototype.releaseLock,"releaseLock"),s(sd.prototype.write,"write"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(sd.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultWriter",configurable:!0});function hm(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_ownerWritableStream")?!1:S instanceof sd}function Vpt(S,T){let D=S._ownerWritableStream;return D2(D,T)}function ede(S){let T=S._ownerWritableStream;return Zle(T)}function zpt(S){let T=S._ownerWritableStream,D=T._state;return Bu(T)||D==="closed"?u(void 0):D==="errored"?l(T._storedError):ede(S)}function Kpt(S,T){S._closedPromiseState==="pending"?C6(S,T):s0t(S,T)}function tde(S,T){S._readyPromiseState==="pending"?dde(S,T):a0t(S,T)}function Ypt(S){let T=S._ownerWritableStream,D=T._state;return D==="errored"||D==="erroring"?null:D==="closed"?0:ade(T._writableStreamController)}function rde(S){let T=S._ownerWritableStream,D=new TypeError("Writer was released and can no longer be used to monitor the stream's closedness");tde(S,D),Kpt(S,D),T._writer=void 0,S._ownerWritableStream=void 0}function nde(S,T){let D=S._ownerWritableStream,K=D._writableStreamController,ae=Zpt(K,T);if(D!==S._ownerWritableStream)return l(YE("write to"));let pe=D._state;if(pe==="errored")return l(D._storedError);if(Bu(D)||pe==="closed")return l(new TypeError("The stream is closing or closed and cannot be written to"));if(pe==="erroring")return l(D._storedError);let xe=$pt(D);return e0t(K,T,ae),xe}let sde={};class vA{constructor(){throw new TypeError("Illegal constructor")}get abortReason(){if(!_6(this))throw v6("abortReason");return this._abortReason}get signal(){if(!_6(this))throw v6("signal");if(this._abortController===void 0)throw new TypeError("WritableStreamDefaultController.prototype.signal is not supported");return this._abortController.signal}error(T=void 0){if(!_6(this))throw v6("error");this._controlledWritableStream._state==="writable"&&ode(this,T)}[C](T){let D=this._abortAlgorithm(T);return L2(this),D}[R](){Ao(this)}}Object.defineProperties(vA.prototype,{abortReason:{enumerable:!0},signal:{enumerable:!0},error:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(vA.prototype,Symbol.toStringTag,{value:"WritableStreamDefaultController",configurable:!0});function _6(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledWritableStream")?!1:S instanceof vA}function ide(S,T,D,K,ae,pe,xe,Qe){T._controlledWritableStream=S,S._writableStreamController=T,T._queue=void 0,T._queueTotalSize=void 0,Ao(T),T._abortReason=void 0,T._abortController=Mpt(),T._started=!1,T._strategySizeAlgorithm=Qe,T._strategyHWM=xe,T._writeAlgorithm=K,T._closeAlgorithm=ae,T._abortAlgorithm=pe;let It=S6(T);E6(S,It);let dt=D(),Bt=u(dt);f(Bt,()=>(T._started=!0,B2(T),null),Jt=>(T._started=!0,y6(S,Jt),null))}function Jpt(S,T,D,K){let ae=Object.create(vA.prototype),pe,xe,Qe,It;T.start!==void 0?pe=()=>T.start(ae):pe=()=>{},T.write!==void 0?xe=dt=>T.write(dt,ae):xe=()=>u(void 0),T.close!==void 0?Qe=()=>T.close():Qe=()=>u(void 0),T.abort!==void 0?It=dt=>T.abort(dt):It=()=>u(void 0),ide(S,ae,pe,xe,Qe,It,D,K)}function L2(S){S._writeAlgorithm=void 0,S._closeAlgorithm=void 0,S._abortAlgorithm=void 0,S._strategySizeAlgorithm=void 0}function Xpt(S){wa(S,sde,0),B2(S)}function Zpt(S,T){try{return S._strategySizeAlgorithm(T)}catch(D){return KE(S,D),1}}function ade(S){return S._strategyHWM-S._queueTotalSize}function e0t(S,T,D){try{wa(S,T,D)}catch(ae){KE(S,ae);return}let K=S._controlledWritableStream;if(!Bu(K)&&K._state==="writable"){let ae=S6(S);E6(K,ae)}B2(S)}function B2(S){let T=S._controlledWritableStream;if(!S._started||T._inFlightWriteRequest!==void 0)return;if(T._state==="erroring"){b6(T);return}if(S._queue.length===0)return;let K=rd(S);K===sde?t0t(S):r0t(S,K)}function KE(S,T){S._controlledWritableStream._state==="writable"&&ode(S,T)}function t0t(S){let T=S._controlledWritableStream;Qpt(T),yn(S);let D=S._closeAlgorithm();L2(S),f(D,()=>(qpt(T),null),K=>(jpt(T,K),null))}function r0t(S,T){let D=S._controlledWritableStream;Gpt(D);let K=S._writeAlgorithm(T);f(K,()=>{Fpt(D);let ae=D._state;if(yn(S),!Bu(D)&&ae==="writable"){let pe=S6(S);E6(D,pe)}return B2(S),null},ae=>(D._state==="writable"&&L2(S),Upt(D,ae),null))}function S6(S){return ade(S)<=0}function ode(S,T){let D=S._controlledWritableStream;L2(S),x6(D,T)}function M2(S){return new TypeError(`WritableStream.prototype.${S} can only be used on a WritableStream`)}function v6(S){return new TypeError(`WritableStreamDefaultController.prototype.${S} can only be used on a WritableStreamDefaultController`)}function gm(S){return new TypeError(`WritableStreamDefaultWriter.prototype.${S} can only be used on a WritableStreamDefaultWriter`)}function YE(S){return new TypeError("Cannot "+S+" a stream using a released writer")}function W2(S){S._closedPromise=c((T,D)=>{S._closedPromise_resolve=T,S._closedPromise_reject=D,S._closedPromiseState="pending"})}function cde(S,T){W2(S),C6(S,T)}function n0t(S){W2(S),ude(S)}function C6(S,T){S._closedPromise_reject!==void 0&&(A(S._closedPromise),S._closedPromise_reject(T),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0,S._closedPromiseState="rejected")}function s0t(S,T){cde(S,T)}function ude(S){S._closedPromise_resolve!==void 0&&(S._closedPromise_resolve(void 0),S._closedPromise_resolve=void 0,S._closedPromise_reject=void 0,S._closedPromiseState="resolved")}function $2(S){S._readyPromise=c((T,D)=>{S._readyPromise_resolve=T,S._readyPromise_reject=D}),S._readyPromiseState="pending"}function I6(S,T){$2(S),dde(S,T)}function lde(S){$2(S),T6(S)}function dde(S,T){S._readyPromise_reject!==void 0&&(A(S._readyPromise),S._readyPromise_reject(T),S._readyPromise_resolve=void 0,S._readyPromise_reject=void 0,S._readyPromiseState="rejected")}function i0t(S){$2(S)}function a0t(S,T){I6(S,T)}function T6(S){S._readyPromise_resolve!==void 0&&(S._readyPromise_resolve(void 0),S._readyPromise_resolve=void 0,S._readyPromise_reject=void 0,S._readyPromiseState="fulfilled")}function o0t(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof global<"u")return global}let w6=o0t();function c0t(S){if(!(typeof S=="function"||typeof S=="object")||S.name!=="DOMException")return!1;try{return new S,!0}catch{return!1}}function u0t(){let S=w6?.DOMException;return c0t(S)?S:void 0}function l0t(){let S=function(D,K){this.message=D||"",this.name=K||"Error",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)};return s(S,"DOMException"),S.prototype=Object.create(Error.prototype),Object.defineProperty(S.prototype,"constructor",{value:S,writable:!0,configurable:!0}),S}let d0t=u0t()||l0t();function fde(S,T,D,K,ae,pe){let xe=ne(S),Qe=Jle(T);S._disturbed=!0;let It=!1,dt=u(void 0);return c((Bt,Jt)=>{let un;if(pe!==void 0){if(un=()=>{let ht=pe.reason!==void 0?pe.reason:new d0t("Aborted","AbortError"),lr=[];K||lr.push(()=>T._state==="writable"?D2(T,ht):u(void 0)),ae||lr.push(()=>S._state==="readable"?Lc(S,ht):u(void 0)),Ra(()=>Promise.all(lr.map(xn=>xn())),!0,ht)},pe.aborted){un();return}pe.addEventListener("abort",un)}function Bc(){return c((ht,lr)=>{function xn(yo){yo?ht():d(wA(),xn,lr)}xn(!1)})}function wA(){return It?u(!0):d(Qe._readyPromise,()=>c((ht,lr)=>{Pe(xe,{_chunkSteps:xn=>{dt=d(nde(Qe,xn),void 0,e),ht(!1)},_closeSteps:()=>ht(!0),_errorSteps:lr})}))}if(ad(S,xe._closedPromise,ht=>(K?qo(!0,ht):Ra(()=>D2(T,ht),!0,ht),null)),ad(T,Qe._closedPromise,ht=>(ae?qo(!0,ht):Ra(()=>Lc(S,ht),!0,ht),null)),Zi(S,xe._closedPromise,()=>(D?qo():Ra(()=>zpt(Qe)),null)),Bu(T)||T._state==="closed"){let ht=new TypeError("the destination writable stream closed before all data could be piped to it");ae?qo(!0,ht):Ra(()=>Lc(S,ht),!0,ht)}A(Bc());function op(){let ht=dt;return d(dt,()=>ht!==dt?op():void 0)}function ad(ht,lr,xn){ht._state==="errored"?xn(ht._storedError):m(lr,xn)}function Zi(ht,lr,xn){ht._state==="closed"?xn():p(lr,xn)}function Ra(ht,lr,xn){if(It)return;It=!0,T._state==="writable"&&!Bu(T)?p(op(),yo):yo();function yo(){return f(ht(),()=>od(lr,xn),RA=>od(!0,RA)),null}}function qo(ht,lr){It||(It=!0,T._state==="writable"&&!Bu(T)?p(op(),()=>od(ht,lr)):od(ht,lr))}function od(ht,lr){return rde(Qe),k(xe),pe!==void 0&&pe.removeEventListener("abort",un),ht?Jt(lr):Bt(void 0),null}})}class id{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!F2(this))throw q2("desiredSize");return R6(this)}close(){if(!F2(this))throw q2("close");if(!IA(this))throw new TypeError("The stream is not in a state that permits close");Am(this)}enqueue(T=void 0){if(!F2(this))throw q2("enqueue");if(!IA(this))throw new TypeError("The stream is not in a state that permits enqueue");return CA(this,T)}error(T=void 0){if(!F2(this))throw q2("error");kc(this,T)}[w](T){Ao(this);let D=this._cancelAlgorithm(T);return U2(this),D}[N](T){let D=this._controlledReadableStream;if(this._queue.length>0){let K=yn(this);this._closeRequested&&this._queue.length===0?(U2(this),ZE(D)):JE(this),T._chunkSteps(K)}else re(D,T),JE(this)}[P](){}}Object.defineProperties(id.prototype,{close:{enumerable:!0},enqueue:{enumerable:!0},error:{enumerable:!0},desiredSize:{enumerable:!0}}),s(id.prototype.close,"close"),s(id.prototype.enqueue,"enqueue"),s(id.prototype.error,"error"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(id.prototype,Symbol.toStringTag,{value:"ReadableStreamDefaultController",configurable:!0});function F2(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledReadableStream")?!1:S instanceof id}function JE(S){if(!pde(S))return;if(S._pulling){S._pullAgain=!0;return}S._pulling=!0;let D=S._pullAlgorithm();f(D,()=>(S._pulling=!1,S._pullAgain&&(S._pullAgain=!1,JE(S)),null),K=>(kc(S,K),null))}function pde(S){let T=S._controlledReadableStream;return!IA(S)||!S._started?!1:!!(ip(T)&&ie(T)>0||R6(S)>0)}function U2(S){S._pullAlgorithm=void 0,S._cancelAlgorithm=void 0,S._strategySizeAlgorithm=void 0}function Am(S){if(!IA(S))return;let T=S._controlledReadableStream;S._closeRequested=!0,S._queue.length===0&&(U2(S),ZE(T))}function CA(S,T){if(!IA(S))return;let D=S._controlledReadableStream;if(ip(D)&&ie(D)>0)X(D,T,!1);else{let K;try{K=S._strategySizeAlgorithm(T)}catch(ae){throw kc(S,ae),ae}try{wa(S,T,K)}catch(ae){throw kc(S,ae),ae}}JE(S)}function kc(S,T){let D=S._controlledReadableStream;D._state==="readable"&&(Ao(S),U2(S),Ade(D,T))}function R6(S){let T=S._controlledReadableStream._state;return T==="errored"?null:T==="closed"?0:S._strategyHWM-S._queueTotalSize}function f0t(S){return!pde(S)}function IA(S){let T=S._controlledReadableStream._state;return!S._closeRequested&&T==="readable"}function mde(S,T,D,K,ae,pe,xe){T._controlledReadableStream=S,T._queue=void 0,T._queueTotalSize=void 0,Ao(T),T._started=!1,T._closeRequested=!1,T._pullAgain=!1,T._pulling=!1,T._strategySizeAlgorithm=xe,T._strategyHWM=pe,T._pullAlgorithm=K,T._cancelAlgorithm=ae,S._readableStreamController=T;let Qe=D();f(u(Qe),()=>(T._started=!0,JE(T),null),It=>(kc(T,It),null))}function p0t(S,T,D,K){let ae=Object.create(id.prototype),pe,xe,Qe;T.start!==void 0?pe=()=>T.start(ae):pe=()=>{},T.pull!==void 0?xe=()=>T.pull(ae):xe=()=>u(void 0),T.cancel!==void 0?Qe=It=>T.cancel(It):Qe=()=>u(void 0),mde(S,ae,pe,xe,Qe,D,K)}function q2(S){return new TypeError(`ReadableStreamDefaultController.prototype.${S} can only be used on a ReadableStreamDefaultController`)}function m0t(S,T){return fm(S._readableStreamController)?g0t(S):h0t(S)}function h0t(S,T){let D=ne(S),K=!1,ae=!1,pe=!1,xe=!1,Qe,It,dt,Bt,Jt,un=c(Zi=>{Jt=Zi});function Bc(){return K?(ae=!0,u(void 0)):(K=!0,Pe(D,{_chunkSteps:Ra=>{g(()=>{ae=!1;let qo=Ra,od=Ra;pe||CA(dt._readableStreamController,qo),xe||CA(Bt._readableStreamController,od),K=!1,ae&&Bc()})},_closeSteps:()=>{K=!1,pe||Am(dt._readableStreamController),xe||Am(Bt._readableStreamController),(!pe||!xe)&&Jt(void 0)},_errorSteps:()=>{K=!1}}),u(void 0))}function wA(Zi){if(pe=!0,Qe=Zi,xe){let Ra=bt([Qe,It]),qo=Lc(S,Ra);Jt(qo)}return un}function op(Zi){if(xe=!0,It=Zi,pe){let Ra=bt([Qe,It]),qo=Lc(S,Ra);Jt(qo)}return un}function ad(){}return dt=XE(ad,Bc,wA),Bt=XE(ad,Bc,op),m(D._closedPromise,Zi=>(kc(dt._readableStreamController,Zi),kc(Bt._readableStreamController,Zi),(!pe||!xe)&&Jt(void 0),null)),[dt,Bt]}function g0t(S){let T=ne(S),D=!1,K=!1,ae=!1,pe=!1,xe=!1,Qe,It,dt,Bt,Jt,un=c(ht=>{Jt=ht});function Bc(ht){m(ht._closedPromise,lr=>(ht!==T||(Uo(dt._readableStreamController,lr),Uo(Bt._readableStreamController,lr),(!pe||!xe)&&Jt(void 0)),null))}function wA(){mm(T)&&(k(T),T=ne(S),Bc(T)),Pe(T,{_chunkSteps:lr=>{g(()=>{K=!1,ae=!1;let xn=lr,yo=lr;if(!pe&&!xe)try{yo=Ta(lr)}catch(RA){Uo(dt._readableStreamController,RA),Uo(Bt._readableStreamController,RA),Jt(Lc(S,RA));return}pe||T2(dt._readableStreamController,xn),xe||T2(Bt._readableStreamController,yo),D=!1,K?ad():ae&&Zi()})},_closeSteps:()=>{D=!1,pe||GE(dt._readableStreamController),xe||GE(Bt._readableStreamController),dt._readableStreamController._pendingPullIntos.length>0&&w2(dt._readableStreamController,0),Bt._readableStreamController._pendingPullIntos.length>0&&w2(Bt._readableStreamController,0),(!pe||!xe)&&Jt(void 0)},_errorSteps:()=>{D=!1}})}function op(ht,lr){Ne(T)&&(k(T),T=Qle(S),Bc(T));let xn=lr?Bt:dt,yo=lr?dt:Bt;zle(T,ht,1,{_chunkSteps:NA=>{g(()=>{K=!1,ae=!1;let OA=lr?xe:pe;if(lr?pe:xe)OA||R2(xn._readableStreamController,NA);else{let Nde;try{Nde=Ta(NA)}catch(k6){Uo(xn._readableStreamController,k6),Uo(yo._readableStreamController,k6),Jt(Lc(S,k6));return}OA||R2(xn._readableStreamController,NA),T2(yo._readableStreamController,Nde)}D=!1,K?ad():ae&&Zi()})},_closeSteps:NA=>{D=!1;let OA=lr?xe:pe,Y2=lr?pe:xe;OA||GE(xn._readableStreamController),Y2||GE(yo._readableStreamController),NA!==void 0&&(OA||R2(xn._readableStreamController,NA),!Y2&&yo._readableStreamController._pendingPullIntos.length>0&&w2(yo._readableStreamController,0)),(!OA||!Y2)&&Jt(void 0)},_errorSteps:()=>{D=!1}})}function ad(){if(D)return K=!0,u(void 0);D=!0;let ht=h6(dt._readableStreamController);return ht===null?wA():op(ht._view,!1),u(void 0)}function Zi(){if(D)return ae=!0,u(void 0);D=!0;let ht=h6(Bt._readableStreamController);return ht===null?wA():op(ht._view,!0),u(void 0)}function Ra(ht){if(pe=!0,Qe=ht,xe){let lr=bt([Qe,It]),xn=Lc(S,lr);Jt(xn)}return un}function qo(ht){if(xe=!0,It=ht,pe){let lr=bt([Qe,It]),xn=Lc(S,lr);Jt(xn)}return un}function od(){}return dt=gde(od,ad,Ra),Bt=gde(od,Zi,qo),Bc(T),[dt,Bt]}function A0t(S){return r(S)&&typeof S.getReader<"u"}function y0t(S){return A0t(S)?b0t(S.getReader()):x0t(S)}function x0t(S){let T,D=ys(S,"async"),K=e;function ae(){let xe;try{xe=Hs(D)}catch(It){return l(It)}let Qe=u(xe);return h(Qe,It=>{if(!r(It))throw new TypeError("The promise returned by the iterator.next() method must fulfill with an object");if(Lu(It))Am(T._readableStreamController);else{let Bt=go(It);CA(T._readableStreamController,Bt)}})}function pe(xe){let Qe=D.iterator,It;try{It=Dr(Qe,"return")}catch(Jt){return l(Jt)}if(It===void 0)return u(void 0);let dt;try{dt=b(It,Qe,[xe])}catch(Jt){return l(Jt)}let Bt=u(dt);return h(Bt,Jt=>{if(!r(Jt))throw new TypeError("The promise returned by the iterator.return() method must fulfill with an object")})}return T=XE(K,ae,pe,0),T}function b0t(S){let T,D=e;function K(){let pe;try{pe=S.read()}catch(xe){return l(xe)}return h(pe,xe=>{if(!r(xe))throw new TypeError("The promise returned by the reader.read() method must fulfill with an object");if(xe.done)Am(T._readableStreamController);else{let Qe=xe.value;CA(T._readableStreamController,Qe)}})}function ae(pe){try{return u(S.cancel(pe))}catch(xe){return l(xe)}}return T=XE(D,K,ae,0),T}function E0t(S,T){Ce(S,T);let D=S,K=D?.autoAllocateChunkSize,ae=D?.cancel,pe=D?.pull,xe=D?.start,Qe=D?.type;return{autoAllocateChunkSize:K===void 0?void 0:H(K,`${T} has member 'autoAllocateChunkSize' that`),cancel:ae===void 0?void 0:_0t(ae,D,`${T} has member 'cancel' that`),pull:pe===void 0?void 0:S0t(pe,D,`${T} has member 'pull' that`),start:xe===void 0?void 0:v0t(xe,D,`${T} has member 'start' that`),type:Qe===void 0?void 0:C0t(Qe,`${T} has member 'type' that`)}}function _0t(S,T,D){return we(S,D),K=>y(S,T,[K])}function S0t(S,T,D){return we(S,D),K=>y(S,T,[K])}function v0t(S,T,D){return we(S,D),K=>b(S,T,[K])}function C0t(S,T){if(S=`${S}`,S!=="bytes")throw new TypeError(`${T} '${S}' is not a valid enumeration value for ReadableStreamType`);return S}function I0t(S,T){return Ce(S,T),{preventCancel:!!S?.preventCancel}}function hde(S,T){Ce(S,T);let D=S?.preventAbort,K=S?.preventCancel,ae=S?.preventClose,pe=S?.signal;return pe!==void 0&&T0t(pe,`${T} has member 'signal' that`),{preventAbort:!!D,preventCancel:!!K,preventClose:!!ae,signal:pe}}function T0t(S,T){if(!Lpt(S))throw new TypeError(`${T} is not an AbortSignal.`)}function w0t(S,T){Ce(S,T);let D=S?.readable;U(D,"readable","ReadableWritablePair"),ee(D,`${T} has member 'readable' that`);let K=S?.writable;return U(K,"writable","ReadableWritablePair"),Yle(K,`${T} has member 'writable' that`),{readable:D,writable:K}}class Si{constructor(T={},D={}){T===void 0?T=null:Fe(T,"First parameter");let K=P2(D,"Second parameter"),ae=E0t(T,"First parameter");if(N6(this),ae.type==="bytes"){if(K.size!==void 0)throw new RangeError("The strategy for a byte stream cannot have a size function");let pe=zE(K,0);_pt(this,ae,pe)}else{let pe=O2(K),xe=zE(K,1);p0t(this,ae,xe,pe)}}get locked(){if(!sp(this))throw ym("locked");return ip(this)}cancel(T=void 0){return sp(this)?ip(this)?l(new TypeError("Cannot cancel a stream that already has a reader")):Lc(this,T):l(ym("cancel"))}getReader(T=void 0){if(!sp(this))throw ym("getReader");return vpt(T,"First parameter").mode===void 0?ne(this):Qle(this)}pipeThrough(T,D={}){if(!sp(this))throw ym("pipeThrough");_e(T,1,"pipeThrough");let K=w0t(T,"First parameter"),ae=hde(D,"Second parameter");if(ip(this))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked ReadableStream");if(SA(K.writable))throw new TypeError("ReadableStream.prototype.pipeThrough cannot be used on a locked WritableStream");let pe=fde(this,K.writable,ae.preventClose,ae.preventAbort,ae.preventCancel,ae.signal);return A(pe),K.readable}pipeTo(T,D={}){if(!sp(this))return l(ym("pipeTo"));if(T===void 0)return l("Parameter 1 is required in 'pipeTo'.");if(!_A(T))return l(new TypeError("ReadableStream.prototype.pipeTo's first argument must be a WritableStream"));let K;try{K=hde(D,"Second parameter")}catch(ae){return l(ae)}return ip(this)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked ReadableStream")):SA(T)?l(new TypeError("ReadableStream.prototype.pipeTo cannot be used on a locked WritableStream")):fde(this,T,K.preventClose,K.preventAbort,K.preventCancel,K.signal)}tee(){if(!sp(this))throw ym("tee");let T=m0t(this);return bt(T)}values(T=void 0){if(!sp(this))throw ym("values");let D=I0t(T,"First parameter");return tt(this,D.preventCancel)}[js](T){return this.values(T)}static from(T){return y0t(T)}}Object.defineProperties(Si,{from:{enumerable:!0}}),Object.defineProperties(Si.prototype,{cancel:{enumerable:!0},getReader:{enumerable:!0},pipeThrough:{enumerable:!0},pipeTo:{enumerable:!0},tee:{enumerable:!0},values:{enumerable:!0},locked:{enumerable:!0}}),s(Si.from,"from"),s(Si.prototype.cancel,"cancel"),s(Si.prototype.getReader,"getReader"),s(Si.prototype.pipeThrough,"pipeThrough"),s(Si.prototype.pipeTo,"pipeTo"),s(Si.prototype.tee,"tee"),s(Si.prototype.values,"values"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Si.prototype,Symbol.toStringTag,{value:"ReadableStream",configurable:!0}),Object.defineProperty(Si.prototype,js,{value:Si.prototype.values,writable:!0,configurable:!0});function XE(S,T,D,K=1,ae=()=>1){let pe=Object.create(Si.prototype);N6(pe);let xe=Object.create(id.prototype);return mde(pe,xe,S,T,D,K,ae),pe}function gde(S,T,D){let K=Object.create(Si.prototype);N6(K);let ae=Object.create(nd.prototype);return Hle(K,ae,S,T,D,0,void 0),K}function N6(S){S._state="readable",S._reader=void 0,S._storedError=void 0,S._disturbed=!1}function sp(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_readableStreamController")?!1:S instanceof Si}function ip(S){return S._reader!==void 0}function Lc(S,T){if(S._disturbed=!0,S._state==="closed")return u(void 0);if(S._state==="errored")return l(S._storedError);ZE(S);let D=S._reader;if(D!==void 0&&mm(D)){let ae=D._readIntoRequests;D._readIntoRequests=new v,ae.forEach(pe=>{pe._closeSteps(void 0)})}let K=S._readableStreamController[w](T);return h(K,e)}function ZE(S){S._state="closed";let T=S._reader;if(T!==void 0&&(J(T),Ne(T))){let D=T._readRequests;T._readRequests=new v,D.forEach(K=>{K._closeSteps()})}}function Ade(S,T){S._state="errored",S._storedError=T;let D=S._reader;D!==void 0&&(V(D,T),Ne(D)?Ke(D,T):Kle(D,T))}function ym(S){return new TypeError(`ReadableStream.prototype.${S} can only be used on a ReadableStream`)}function yde(S,T){Ce(S,T);let D=S?.highWaterMark;return U(D,"highWaterMark","QueuingStrategyInit"),{highWaterMark:G(D)}}let xde=S=>S.byteLength;s(xde,"size");class j2{constructor(T){_e(T,1,"ByteLengthQueuingStrategy"),T=yde(T,"First parameter"),this._byteLengthQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!Ede(this))throw bde("highWaterMark");return this._byteLengthQueuingStrategyHighWaterMark}get size(){if(!Ede(this))throw bde("size");return xde}}Object.defineProperties(j2.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(j2.prototype,Symbol.toStringTag,{value:"ByteLengthQueuingStrategy",configurable:!0});function bde(S){return new TypeError(`ByteLengthQueuingStrategy.prototype.${S} can only be used on a ByteLengthQueuingStrategy`)}function Ede(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_byteLengthQueuingStrategyHighWaterMark")?!1:S instanceof j2}let _de=()=>1;s(_de,"size");class H2{constructor(T){_e(T,1,"CountQueuingStrategy"),T=yde(T,"First parameter"),this._countQueuingStrategyHighWaterMark=T.highWaterMark}get highWaterMark(){if(!vde(this))throw Sde("highWaterMark");return this._countQueuingStrategyHighWaterMark}get size(){if(!vde(this))throw Sde("size");return _de}}Object.defineProperties(H2.prototype,{highWaterMark:{enumerable:!0},size:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(H2.prototype,Symbol.toStringTag,{value:"CountQueuingStrategy",configurable:!0});function Sde(S){return new TypeError(`CountQueuingStrategy.prototype.${S} can only be used on a CountQueuingStrategy`)}function vde(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_countQueuingStrategyHighWaterMark")?!1:S instanceof H2}function R0t(S,T){Ce(S,T);let D=S?.cancel,K=S?.flush,ae=S?.readableType,pe=S?.start,xe=S?.transform,Qe=S?.writableType;return{cancel:D===void 0?void 0:D0t(D,S,`${T} has member 'cancel' that`),flush:K===void 0?void 0:N0t(K,S,`${T} has member 'flush' that`),readableType:ae,start:pe===void 0?void 0:O0t(pe,S,`${T} has member 'start' that`),transform:xe===void 0?void 0:P0t(xe,S,`${T} has member 'transform' that`),writableType:Qe}}function N0t(S,T,D){return we(S,D),K=>y(S,T,[K])}function O0t(S,T,D){return we(S,D),K=>b(S,T,[K])}function P0t(S,T,D){return we(S,D),(K,ae)=>y(S,T,[K,ae])}function D0t(S,T,D){return we(S,D),K=>y(S,T,[K])}class Q2{constructor(T={},D={},K={}){T===void 0&&(T=null);let ae=P2(D,"Second parameter"),pe=P2(K,"Third parameter"),xe=R0t(T,"First parameter");if(xe.readableType!==void 0)throw new RangeError("Invalid readableType specified");if(xe.writableType!==void 0)throw new RangeError("Invalid writableType specified");let Qe=zE(pe,0),It=O2(pe),dt=zE(ae,1),Bt=O2(ae),Jt,un=c(Bc=>{Jt=Bc});k0t(this,un,dt,Bt,Qe,It),B0t(this,xe),xe.start!==void 0?Jt(xe.start(this._transformStreamController)):Jt(void 0)}get readable(){if(!Cde(this))throw Rde("readable");return this._readable}get writable(){if(!Cde(this))throw Rde("writable");return this._writable}}Object.defineProperties(Q2.prototype,{readable:{enumerable:!0},writable:{enumerable:!0}}),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(Q2.prototype,Symbol.toStringTag,{value:"TransformStream",configurable:!0});function k0t(S,T,D,K,ae,pe){function xe(){return T}function Qe(un){return $0t(S,un)}function It(un){return F0t(S,un)}function dt(){return U0t(S)}S._writable=Wpt(xe,Qe,dt,It,D,K);function Bt(){return q0t(S)}function Jt(un){return j0t(S,un)}S._readable=XE(xe,Bt,Jt,ae,pe),S._backpressure=void 0,S._backpressureChangePromise=void 0,S._backpressureChangePromise_resolve=void 0,G2(S,!0),S._transformStreamController=void 0}function Cde(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_transformStreamController")?!1:S instanceof Q2}function Ide(S,T){kc(S._readable._readableStreamController,T),O6(S,T)}function O6(S,T){z2(S._transformStreamController),KE(S._writable._writableStreamController,T),P6(S)}function P6(S){S._backpressure&&G2(S,!1)}function G2(S,T){S._backpressureChangePromise!==void 0&&S._backpressureChangePromise_resolve(),S._backpressureChangePromise=c(D=>{S._backpressureChangePromise_resolve=D}),S._backpressure=T}class ap{constructor(){throw new TypeError("Illegal constructor")}get desiredSize(){if(!V2(this))throw K2("desiredSize");let T=this._controlledTransformStream._readable._readableStreamController;return R6(T)}enqueue(T=void 0){if(!V2(this))throw K2("enqueue");Tde(this,T)}error(T=void 0){if(!V2(this))throw K2("error");M0t(this,T)}terminate(){if(!V2(this))throw K2("terminate");W0t(this)}}Object.defineProperties(ap.prototype,{enqueue:{enumerable:!0},error:{enumerable:!0},terminate:{enumerable:!0},desiredSize:{enumerable:!0}}),s(ap.prototype.enqueue,"enqueue"),s(ap.prototype.error,"error"),s(ap.prototype.terminate,"terminate"),typeof Symbol.toStringTag=="symbol"&&Object.defineProperty(ap.prototype,Symbol.toStringTag,{value:"TransformStreamDefaultController",configurable:!0});function V2(S){return!r(S)||!Object.prototype.hasOwnProperty.call(S,"_controlledTransformStream")?!1:S instanceof ap}function L0t(S,T,D,K,ae){T._controlledTransformStream=S,S._transformStreamController=T,T._transformAlgorithm=D,T._flushAlgorithm=K,T._cancelAlgorithm=ae,T._finishPromise=void 0,T._finishPromise_resolve=void 0,T._finishPromise_reject=void 0}function B0t(S,T){let D=Object.create(ap.prototype),K,ae,pe;T.transform!==void 0?K=xe=>T.transform(xe,D):K=xe=>{try{return Tde(D,xe),u(void 0)}catch(Qe){return l(Qe)}},T.flush!==void 0?ae=()=>T.flush(D):ae=()=>u(void 0),T.cancel!==void 0?pe=xe=>T.cancel(xe):pe=()=>u(void 0),L0t(S,D,K,ae,pe)}function z2(S){S._transformAlgorithm=void 0,S._flushAlgorithm=void 0,S._cancelAlgorithm=void 0}function Tde(S,T){let D=S._controlledTransformStream,K=D._readable._readableStreamController;if(!IA(K))throw new TypeError("Readable side is not in a state that permits enqueue");try{CA(K,T)}catch(pe){throw O6(D,pe),D._readable._storedError}f0t(K)!==D._backpressure&&G2(D,!0)}function M0t(S,T){Ide(S._controlledTransformStream,T)}function wde(S,T){let D=S._transformAlgorithm(T);return h(D,void 0,K=>{throw Ide(S._controlledTransformStream,K),K})}function W0t(S){let T=S._controlledTransformStream,D=T._readable._readableStreamController;Am(D);let K=new TypeError("TransformStream terminated");O6(T,K)}function $0t(S,T){let D=S._transformStreamController;if(S._backpressure){let K=S._backpressureChangePromise;return h(K,()=>{let ae=S._writable;if(ae._state==="erroring")throw ae._storedError;return wde(D,T)})}return wde(D,T)}function F0t(S,T){let D=S._transformStreamController;if(D._finishPromise!==void 0)return D._finishPromise;let K=S._readable;D._finishPromise=c((pe,xe)=>{D._finishPromise_resolve=pe,D._finishPromise_reject=xe});let ae=D._cancelAlgorithm(T);return z2(D),f(ae,()=>(K._state==="errored"?TA(D,K._storedError):(kc(K._readableStreamController,T),D6(D)),null),pe=>(kc(K._readableStreamController,pe),TA(D,pe),null)),D._finishPromise}function U0t(S){let T=S._transformStreamController;if(T._finishPromise!==void 0)return T._finishPromise;let D=S._readable;T._finishPromise=c((ae,pe)=>{T._finishPromise_resolve=ae,T._finishPromise_reject=pe});let K=T._flushAlgorithm();return z2(T),f(K,()=>(D._state==="errored"?TA(T,D._storedError):(Am(D._readableStreamController),D6(T)),null),ae=>(kc(D._readableStreamController,ae),TA(T,ae),null)),T._finishPromise}function q0t(S){return G2(S,!1),S._backpressureChangePromise}function j0t(S,T){let D=S._transformStreamController;if(D._finishPromise!==void 0)return D._finishPromise;let K=S._writable;D._finishPromise=c((pe,xe)=>{D._finishPromise_resolve=pe,D._finishPromise_reject=xe});let ae=D._cancelAlgorithm(T);return z2(D),f(ae,()=>(K._state==="errored"?TA(D,K._storedError):(KE(K._writableStreamController,T),P6(S),D6(D)),null),pe=>(KE(K._writableStreamController,pe),P6(S),TA(D,pe),null)),D._finishPromise}function K2(S){return new TypeError(`TransformStreamDefaultController.prototype.${S} can only be used on a TransformStreamDefaultController`)}function D6(S){S._finishPromise_resolve!==void 0&&(S._finishPromise_resolve(),S._finishPromise_resolve=void 0,S._finishPromise_reject=void 0)}function TA(S,T){S._finishPromise_reject!==void 0&&(A(S._finishPromise),S._finishPromise_reject(T),S._finishPromise_resolve=void 0,S._finishPromise_reject=void 0)}function Rde(S){return new TypeError(`TransformStream.prototype.${S} can only be used on a TransformStream`)}t.ByteLengthQueuingStrategy=j2,t.CountQueuingStrategy=H2,t.ReadableByteStreamController=nd,t.ReadableStream=Si,t.ReadableStreamBYOBReader=rp,t.ReadableStreamBYOBRequest=dm,t.ReadableStreamDefaultController=id,t.ReadableStreamDefaultReader=fe,t.TransformStream=Q2,t.TransformStreamDefaultController=ap,t.WritableStream=np,t.WritableStreamDefaultController=vA,t.WritableStreamDefaultWriter=sd})});var L5e=E(()=>{if(!globalThis.ReadableStream)try{let t=require("node:process"),{emitWarning:e}=t;try{t.emitWarning=()=>{},Object.assign(globalThis,require("node:stream/web")),t.emitWarning=e}catch(r){throw t.emitWarning=e,r}}catch{Object.assign(globalThis,k5e())}try{let{Blob:t}=require("buffer");t&&!t.prototype.stream&&(t.prototype.stream=function(r){let n=0,s=this;return new ReadableStream({type:"bytes",async pull(i){let o=await s.slice(n,Math.min(s.size,n+65536)).arrayBuffer();n+=o.byteLength,i.enqueue(new Uint8Array(o)),n===s.size&&i.close()}})})}catch{}});async function*vz(t,e=!0){for(let r of t)if("stream"in r)yield*r.stream();else if(ArrayBuffer.isView(r))if(e){let n=r.byteOffset,s=r.byteOffset+r.byteLength;for(;n!==s;){let i=Math.min(s-n,B5e),a=r.buffer.slice(n,n+i);n+=a.byteLength,yield new Uint8Array(a)}}else yield r;else{let n=0,s=r;for(;n!==s.size;){let a=await s.slice(n,Math.min(s.size,n+B5e)).arrayBuffer();n+=a.byteLength,yield new Uint8Array(a)}}}var ljr,B5e,M5e,tir,hu,pC=dr(()=>{ljr=Re(L5e(),1);B5e=65536;M5e=class Cz{#e=[];#t="";#r=0;#n="transparent";constructor(e=[],r={}){if(typeof e!="object"||e===null)throw new TypeError("Failed to construct 'Blob': The provided value cannot be converted to a sequence.");if(typeof e[Symbol.iterator]!="function")throw new TypeError("Failed to construct 'Blob': The object must have a callable @@iterator property.");if(typeof r!="object"&&typeof r!="function")throw new TypeError("Failed to construct 'Blob': parameter 2 cannot convert to dictionary.");r===null&&(r={});let n=new TextEncoder;for(let i of e){let a;ArrayBuffer.isView(i)?a=new Uint8Array(i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength)):i instanceof ArrayBuffer?a=new Uint8Array(i.slice(0)):i instanceof Cz?a=i:a=n.encode(`${i}`),this.#r+=ArrayBuffer.isView(a)?a.byteLength:a.size,this.#e.push(a)}this.#n=`${r.endings===void 0?"transparent":r.endings}`;let s=r.type===void 0?"":String(r.type);this.#t=/^[\x20-\x7E]*$/.test(s)?s:""}get size(){return this.#r}get type(){return this.#t}async text(){let e=new TextDecoder,r="";for await(let n of vz(this.#e,!1))r+=e.decode(n,{stream:!0});return r+=e.decode(),r}async arrayBuffer(){let e=new Uint8Array(this.size),r=0;for await(let n of vz(this.#e,!1))e.set(n,r),r+=n.length;return e.buffer}stream(){let e=vz(this.#e,!0);return new globalThis.ReadableStream({type:"bytes",async pull(r){let n=await e.next();n.done?r.close():r.enqueue(n.value)},async cancel(){await e.return()}})}slice(e=0,r=this.size,n=""){let{size:s}=this,i=e<0?Math.max(s+e,0):Math.min(e,s),a=r<0?Math.max(s+r,0):Math.min(r,s),o=Math.max(a-i,0),c=this.#e,u=[],l=0;for(let f of c){if(l>=o)break;let p=ArrayBuffer.isView(f)?f.byteLength:f.size;if(i&&p<=i)i-=p,a-=p;else{let m;ArrayBuffer.isView(f)?(m=f.subarray(i,Math.min(p,a)),l+=m.byteLength):(m=f.slice(i,Math.min(p,a)),l+=m.size),a-=p,u.push(m),i=0}}let d=new Cz([],{type:String(n).toLowerCase()});return d.#r=o,d.#e=u,d}get[Symbol.toStringTag](){return"Blob"}static[Symbol.hasInstance](e){return e&&typeof e=="object"&&typeof e.constructor=="function"&&(typeof e.stream=="function"||typeof e.arrayBuffer=="function")&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}};Object.defineProperties(M5e.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}});tir=M5e,hu=tir});var rir,nir,k0,Iz=dr(()=>{pC();rir=class extends hu{#e=0;#t="";constructor(e,r,n={}){if(arguments.length<2)throw new TypeError(`Failed to construct 'File': 2 arguments required, but only ${arguments.length} present.`);super(e,n),n===null&&(n={});let s=n.lastModified===void 0?Date.now():Number(n.lastModified);Number.isNaN(s)||(this.#e=s),this.#t=String(r)}get name(){return this.#t}get lastModified(){return this.#e}get[Symbol.toStringTag](){return"File"}static[Symbol.hasInstance](e){return!!e&&e instanceof hu&&/^(File)$/.test(e[Symbol.toStringTag])}},nir=rir,k0=nir});function F5e(t,e=hu){var r=`${W5e()}${W5e()}`.replace(/\./g,"").slice(-28).padStart(32,"-"),n=[],s=`--${r}\r +Content-Disposition: form-data; name="`;return t.forEach((i,a)=>typeof i=="string"?n.push(s+Tz(a)+`"\r \r ${i.replace(/\r(?!\n)|(?{dI();IV();({toStringTag:fI,iterator:Zsr,hasInstance:eir}=Symbol),D5e=Math.random,tir="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),B5e=(t,e,r)=>(t+="",/^(Blob|File)$/.test(e&&e[fI])?[(r=r!==void 0?r+"":e[fI]=="File"?e.name:"blob",t),e.name!==r||e[fI]=="blob"?new D0([e],r,e):e]:[t,e+""]),CV=(t,e)=>(e?t:t.replace(/\r?\n|\r/g,`\r -`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),Yh=(t,e,r)=>{if(e.lengthtypeof e[r]!="function")}append(...e){Yh("append",arguments,2),this.#e.push(B5e(...e))}delete(e){Yh("delete",arguments,1),e+="",this.#e=this.#e.filter(([r])=>r!==e)}get(e){Yh("get",arguments,1),e+="";for(var r=this.#e,n=r.length,s=0;sn[0]===e&&r.push(n[1])),r}has(e){return Yh("has",arguments,1),e+="",this.#e.some(r=>r[0]===e)}forEach(e,r){Yh("forEach",arguments,1);for(var[n,s]of this)e.call(r,s,n,this)}set(...e){Yh("set",arguments,2);var r=[],n=!0;e=B5e(...e),this.#e.forEach(s=>{s[0]===e[0]?n&&(n=!r.push(e)):r.push(s)}),n&&r.push(e),this.#e=r}*entries(){yield*this.#e}*keys(){for(var[e]of this)yield e}*values(){for(var[,e]of this)yield e}}});var sf,AB=lr(()=>{sf=class extends Error{constructor(e,r){super(e),Error.captureStackTrace(this,this.constructor),this.type=r}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var ha,TV=lr(()=>{AB();ha=class extends sf{constructor(e,r,n){super(e,r),n&&(this.code=this.errno=n.code,this.erroredSysCall=n.syscall)}}});var yB,wV,pI,M5e,W5e,$5e,xB=lr(()=>{yB=Symbol.toStringTag,wV=t=>typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&typeof t.sort=="function"&&t[yB]==="URLSearchParams",pI=t=>t&&typeof t=="object"&&typeof t.arrayBuffer=="function"&&typeof t.type=="string"&&typeof t.stream=="function"&&typeof t.constructor=="function"&&/^(Blob|File)$/.test(t[yB]),M5e=t=>typeof t=="object"&&(t[yB]==="AbortSignal"||t[yB]==="EventTarget"),W5e=(t,e)=>{let r=new URL(e).hostname,n=new URL(t).hostname;return r===n||r.endsWith(`.${n}`)},$5e=(t,e)=>{let r=new URL(e).protocol,n=new URL(t).protocol;return r===n}});var U5e=E((Ajr,F5e)=>{if(!globalThis.DOMException)try{let{MessageChannel:t}=require("worker_threads"),e=new t().port1,r=new ArrayBuffer;e.postMessage(r,[r,r])}catch(t){t.constructor.name==="DOMException"&&(globalThis.DOMException=t.constructor)}F5e.exports=globalThis.DOMException});var Jh,q5e,j5e,RV,H5e,Q5e,G5e,K5e,V5e,z5e,bB,NV=lr(()=>{Jh=require("node:fs"),q5e=require("node:path"),j5e=Re(U5e(),1);IV();dI();({stat:RV}=Jh.promises),H5e=(t,e)=>V5e((0,Jh.statSync)(t),t,e),Q5e=(t,e)=>RV(t).then(r=>V5e(r,t,e)),G5e=(t,e)=>RV(t).then(r=>z5e(r,t,e)),K5e=(t,e)=>z5e((0,Jh.statSync)(t),t,e),V5e=(t,e,r="")=>new hu([new bB({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],{type:r}),z5e=(t,e,r="")=>new D0([new bB({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],(0,q5e.basename)(e),{type:r,lastModified:t.mtimeMs}),bB=class t{#e;#t;constructor(e){this.#e=e.path,this.#t=e.start,this.size=e.size,this.lastModified=e.lastModified}slice(e,r){return new t({path:this.#e,lastModified:this.lastModified,size:r-e,start:this.#t+e})}async*stream(){let{mtimeMs:e}=await RV(this.#e);if(e>this.lastModified)throw new j5e.default("The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.","NotReadableError");yield*(0,Jh.createReadStream)(this.#e,{start:this.#t,end:this.#t+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var J5e={};is(J5e,{toFormData:()=>cir});function oir(t){let e=t.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!e)return;let r=e[2]||e[3]||"",n=r.slice(r.lastIndexOf("\\")+1);return n=n.replace(/%22/g,'"'),n=n.replace(/&#(\d{4});/g,(s,i)=>String.fromCharCode(i)),n}async function cir(t,e){if(!/multipart/i.test(e))throw new TypeError("Failed to fetch");let r=e.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!r)throw new TypeError("no or bad content-type header, no multipart boundary");let n=new OV(r[1]||r[2]),s,i,a,o,c,u,l=[],d=new B0,f=g=>{a+=A.decode(g,{stream:!0})},p=g=>{l.push(g)},m=()=>{let g=new D0(l,u,{type:c});d.append(o,g)},h=()=>{d.append(o,a)},A=new TextDecoder("utf-8");A.decode(),n.onPartBegin=function(){n.onPartData=f,n.onPartEnd=h,s="",i="",a="",o="",c="",u=null,l.length=0},n.onHeaderField=function(g){s+=A.decode(g,{stream:!0})},n.onHeaderValue=function(g){i+=A.decode(g,{stream:!0})},n.onHeaderEnd=function(){if(i+=A.decode(),s=s.toLowerCase(),s==="content-disposition"){let g=i.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);g&&(o=g[2]||g[3]||""),u=oir(i),u&&(n.onPartData=p,n.onPartEnd=m)}else s==="content-type"&&(c=i);i="",s=""};for await(let g of t)n.write(g);return n.end(),d}var Rl,vn,Y5e,L0,EB,_B,rir,mI,nir,sir,iir,air,Xh,OV,X5e=lr(()=>{NV();gB();Rl=0,vn={START_BOUNDARY:Rl++,HEADER_FIELD_START:Rl++,HEADER_FIELD:Rl++,HEADER_VALUE_START:Rl++,HEADER_VALUE:Rl++,HEADER_VALUE_ALMOST_DONE:Rl++,HEADERS_ALMOST_DONE:Rl++,PART_DATA_START:Rl++,PART_DATA:Rl++,END:Rl++},Y5e=1,L0={PART_BOUNDARY:Y5e,LAST_BOUNDARY:Y5e*=2},EB=10,_B=13,rir=32,mI=45,nir=58,sir=97,iir=122,air=t=>t|32,Xh=()=>{},OV=class{constructor(e){this.index=0,this.flags=0,this.onHeaderEnd=Xh,this.onHeaderField=Xh,this.onHeadersEnd=Xh,this.onHeaderValue=Xh,this.onPartBegin=Xh,this.onPartData=Xh,this.onPartEnd=Xh,this.boundaryChars={},e=`\r ---`+e;let r=new Uint8Array(e.length);for(let n=0;n{this[x+"Mark"]=r},g=x=>{delete this[x+"Mark"]},b=(x,v,I,R)=>{(v===void 0||v!==I)&&this[x](R&&R.subarray(v,I))},y=(x,v)=>{let I=x+"Mark";I in this&&(v?(b(x,this[I],r,e),delete this[I]):(b(x,this[I],e.length,e),this[I]=0))};for(r=0;riir)return;break;case vn.HEADER_VALUE_START:if(m===rir)break;A("onHeaderValue"),u=vn.HEADER_VALUE;case vn.HEADER_VALUE:m===_B&&(y("onHeaderValue",!0),b("onHeaderEnd"),u=vn.HEADER_VALUE_ALMOST_DONE);break;case vn.HEADER_VALUE_ALMOST_DONE:if(m!==EB)return;u=vn.HEADER_FIELD_START;break;case vn.HEADERS_ALMOST_DONE:if(m!==EB)return;b("onHeadersEnd"),u=vn.PART_DATA_START;break;case vn.PART_DATA_START:u=vn.PART_DATA,A("onPartData");case vn.PART_DATA:if(s=c,c===0){for(r+=f;r0)i[c-1]=m;else if(s>0){let x=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);b("onPartData",0,s,x),s=0,A("onPartData"),r--}break;case vn.END:break;default:throw new Error(`Unexpected state entered: ${u}`)}y("onHeaderField"),y("onHeaderValue"),y("onPartData"),this.index=c,this.state=u,this.flags=l}end(){if(this.state===vn.HEADER_FIELD_START&&this.index===0||this.state===vn.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==vn.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function PV(t){if(t[ro].disturbed)throw new TypeError(`body used already for: ${t.url}`);if(t[ro].disturbed=!0,t[ro].error)throw t[ro].error;let{body:e}=t;if(e===null)return To.Buffer.alloc(0);if(!(e instanceof Ic.default))return To.Buffer.alloc(0);let r=[],n=0;try{for await(let s of e){if(t.size>0&&n+s.length>t.size){let i=new ha(`content size at ${t.url} over limit: ${t.size}`,"max-size");throw e.destroy(i),i}n+=s.length,r.push(s)}}catch(s){throw s instanceof sf?s:new ha(`Invalid response body while trying to fetch ${t.url}: ${s.message}`,"system",s)}if(e.readableEnded===!0||e._readableState.ended===!0)try{return r.every(s=>typeof s=="string")?To.Buffer.from(r.join("")):To.Buffer.concat(r,n)}catch(s){throw new ha(`Could not create Buffer from response body for ${t.url}: ${s.message}`,"system",s)}else throw new ha(`Premature close of server response while trying to fetch ${t.url}`)}var Ic,af,To,uir,ro,Nl,ab,lir,SB,Z5e,e8e,vB=lr(()=>{Ic=Re(require("node:stream"),1),af=require("node:util"),To=require("node:buffer");dI();gB();TV();AB();xB();uir=(0,af.promisify)(Ic.default.pipeline),ro=Symbol("Body internals"),Nl=class{constructor(e,{size:r=0}={}){let n=null;e===null?e=null:wV(e)?e=To.Buffer.from(e.toString()):pI(e)||To.Buffer.isBuffer(e)||(af.types.isAnyArrayBuffer(e)?e=To.Buffer.from(e):ArrayBuffer.isView(e)?e=To.Buffer.from(e.buffer,e.byteOffset,e.byteLength):e instanceof Ic.default||(e instanceof B0?(e=L5e(e),n=e.type.split("=")[1]):e=To.Buffer.from(String(e))));let s=e;To.Buffer.isBuffer(e)?s=Ic.default.Readable.from(e):pI(e)&&(s=Ic.default.Readable.from(e.stream())),this[ro]={body:e,stream:s,boundary:n,disturbed:!1,error:null},this.size=r,e instanceof Ic.default&&e.on("error",i=>{let a=i instanceof sf?i:new ha(`Invalid response body while trying to fetch ${this.url}: ${i.message}`,"system",i);this[ro].error=a})}get body(){return this[ro].stream}get bodyUsed(){return this[ro].disturbed}async arrayBuffer(){let{buffer:e,byteOffset:r,byteLength:n}=await PV(this);return e.slice(r,r+n)}async formData(){let e=this.headers.get("content-type");if(e.startsWith("application/x-www-form-urlencoded")){let n=new B0,s=new URLSearchParams(await this.text());for(let[i,a]of s)n.append(i,a);return n}let{toFormData:r}=await Promise.resolve().then(()=>(X5e(),J5e));return r(this.body,e)}async blob(){let e=this.headers&&this.headers.get("content-type")||this[ro].body&&this[ro].body.type||"",r=await this.arrayBuffer();return new hu([r],{type:e})}async json(){let e=await this.text();return JSON.parse(e)}async text(){let e=await PV(this);return new TextDecoder().decode(e)}buffer(){return PV(this)}};Nl.prototype.buffer=(0,af.deprecate)(Nl.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Nl.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,af.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});ab=(t,e)=>{let r,n,{body:s}=t[ro];if(t.bodyUsed)throw new Error("cannot clone body after it is used");return s instanceof Ic.default&&typeof s.getBoundary!="function"&&(r=new Ic.PassThrough({highWaterMark:e}),n=new Ic.PassThrough({highWaterMark:e}),s.pipe(r),s.pipe(n),t[ro].stream=r,s=n),s},lir=(0,af.deprecate)(t=>t.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),SB=(t,e)=>t===null?null:typeof t=="string"?"text/plain;charset=UTF-8":wV(t)?"application/x-www-form-urlencoded;charset=UTF-8":pI(t)?t.type||null:To.Buffer.isBuffer(t)||af.types.isAnyArrayBuffer(t)||ArrayBuffer.isView(t)?null:t instanceof B0?`multipart/form-data; boundary=${e[ro].boundary}`:t&&typeof t.getBoundary=="function"?`multipart/form-data;boundary=${lir(t)}`:t instanceof Ic.default?null:"text/plain;charset=UTF-8",Z5e=t=>{let{body:e}=t[ro];return e===null?0:pI(e)?e.size:To.Buffer.isBuffer(e)?e.length:e&&typeof e.getLengthSync=="function"&&e.hasKnownLength&&e.hasKnownLength()?e.getLengthSync():null},e8e=async(t,{body:e})=>{e===null?t.end():await uir(e,t)}});function t8e(t=[]){return new no(t.reduce((e,r,n,s)=>(n%2===0&&e.push(s.slice(n,n+2)),e),[]).filter(([e,r])=>{try{return IB(e),DV(e,String(r)),!0}catch{return!1}}))}var kV,hI,IB,DV,no,CB=lr(()=>{kV=require("node:util"),hI=Re(require("node:http"),1),IB=typeof hI.default.validateHeaderName=="function"?hI.default.validateHeaderName:t=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(t)){let e=new TypeError(`Header name must be a valid HTTP token [${t}]`);throw Object.defineProperty(e,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),e}},DV=typeof hI.default.validateHeaderValue=="function"?hI.default.validateHeaderValue:(t,e)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(e)){let r=new TypeError(`Invalid character in header content ["${t}"]`);throw Object.defineProperty(r,"code",{value:"ERR_INVALID_CHAR"}),r}},no=class t extends URLSearchParams{constructor(e){let r=[];if(e instanceof t){let n=e.raw();for(let[s,i]of Object.entries(n))r.push(...i.map(a=>[s,a]))}else if(e!=null)if(typeof e=="object"&&!kV.types.isBoxedPrimitive(e)){let n=e[Symbol.iterator];if(n==null)r.push(...Object.entries(e));else{if(typeof n!="function")throw new TypeError("Header pairs must be iterable");r=[...e].map(s=>{if(typeof s!="object"||kV.types.isBoxedPrimitive(s))throw new TypeError("Each header pair must be an iterable object");return[...s]}).map(s=>{if(s.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return[...s]})}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence> or record)");return r=r.length>0?r.map(([n,s])=>(IB(n),DV(n,String(s)),[String(n).toLowerCase(),String(s)])):void 0,super(r),new Proxy(this,{get(n,s,i){switch(s){case"append":case"set":return(a,o)=>(IB(a),DV(a,String(o)),URLSearchParams.prototype[s].call(n,String(a).toLowerCase(),String(o)));case"delete":case"has":case"getAll":return a=>(IB(a),URLSearchParams.prototype[s].call(n,String(a).toLowerCase()));case"keys":return()=>(n.sort(),new Set(URLSearchParams.prototype.keys.call(n)).keys());default:return Reflect.get(n,s,i)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(e){let r=this.getAll(e);if(r.length===0)return null;let n=r.join(", ");return/^content-encoding$/i.test(e)&&(n=n.toLowerCase()),n}forEach(e,r=void 0){for(let n of this.keys())Reflect.apply(e,r,[this.get(n),n,this])}*values(){for(let e of this.keys())yield this.get(e)}*entries(){for(let e of this.keys())yield[e,this.get(e)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((e,r)=>(e[r]=this.getAll(r),e),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((e,r)=>{let n=this.getAll(r);return r==="host"?e[r]=n[0]:e[r]=n.length>1?n:n[0],e},{})}};Object.defineProperties(no.prototype,["get","entries","forEach","values"].reduce((t,e)=>(t[e]={enumerable:!0},t),{}))});var dir,gI,BV=lr(()=>{dir=new Set([301,302,303,307,308]),gI=t=>dir.has(t)});var gu,wo,r8e=lr(()=>{CB();vB();BV();gu=Symbol("Response internals"),wo=class t extends Nl{constructor(e=null,r={}){super(e,r);let n=r.status!=null?r.status:200,s=new no(r.headers);if(e!==null&&!s.has("Content-Type")){let i=SB(e,this);i&&s.append("Content-Type",i)}this[gu]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:s,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[gu].type}get url(){return this[gu].url||""}get status(){return this[gu].status}get ok(){return this[gu].status>=200&&this[gu].status<300}get redirected(){return this[gu].counter>0}get statusText(){return this[gu].statusText}get headers(){return this[gu].headers}get highWaterMark(){return this[gu].highWaterMark}clone(){return new t(ab(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(e,r=302){if(!gI(r))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new t(null,{headers:{location:new URL(e).toString()},status:r})}static error(){let e=new t(null,{status:0,statusText:""});return e[gu].type="error",e}static json(e=void 0,r={}){let n=JSON.stringify(e);if(n===void 0)throw new TypeError("data is not JSON serializable");let s=new no(r&&r.headers);return s.has("content-type")||s.set("content-type","application/json"),new t(n,{...r,headers:s})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(wo.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var n8e,s8e=lr(()=>{n8e=t=>{if(t.search)return t.search;let e=t.href.length-1,r=t.hash||(t.href[e]==="#"?"#":"");return t.href[e-r.length]==="?"?"?":""}});function i8e(t,e=!1){return t==null||(t=new URL(t),/^(about|blob|data):$/.test(t.protocol))?"no-referrer":(t.username="",t.password="",t.hash="",e&&(t.pathname="",t.search=""),t)}function u8e(t){if(!o8e.has(t))throw new TypeError(`Invalid referrerPolicy: ${t}`);return t}function fir(t){if(/^(http|ws)s:$/.test(t.protocol))return!0;let e=t.host.replace(/(^\[)|(]$)/g,""),r=(0,a8e.isIP)(e);return r===4&&/^127\./.test(e)||r===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(e)?!0:t.host==="localhost"||t.host.endsWith(".localhost")?!1:t.protocol==="file:"}function ob(t){return/^about:(blank|srcdoc)$/.test(t)||t.protocol==="data:"||/^(blob|filesystem):$/.test(t.protocol)?!0:fir(t)}function l8e(t,{referrerURLCallback:e,referrerOriginCallback:r}={}){if(t.referrer==="no-referrer"||t.referrerPolicy==="")return null;let n=t.referrerPolicy;if(t.referrer==="about:client")return"no-referrer";let s=t.referrer,i=i8e(s),a=i8e(s,!0);i.toString().length>4096&&(i=a),e&&(i=e(i)),r&&(a=r(a));let o=new URL(t.url);switch(n){case"no-referrer":return"no-referrer";case"origin":return a;case"unsafe-url":return i;case"strict-origin":return ob(i)&&!ob(o)?"no-referrer":a.toString();case"strict-origin-when-cross-origin":return i.origin===o.origin?i:ob(i)&&!ob(o)?"no-referrer":a;case"same-origin":return i.origin===o.origin?i:"no-referrer";case"origin-when-cross-origin":return i.origin===o.origin?i:a;case"no-referrer-when-downgrade":return ob(i)&&!ob(o)?"no-referrer":i;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function d8e(t){let e=(t.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of e)n&&o8e.has(n)&&(r=n);return r}var a8e,o8e,c8e,LV=lr(()=>{a8e=require("node:net");o8e=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),c8e="strict-origin-when-cross-origin"});var f8e,p8e,ni,AI,pir,M0,m8e,h8e=lr(()=>{f8e=require("node:url"),p8e=require("node:util");CB();vB();xB();s8e();LV();ni=Symbol("Request internals"),AI=t=>typeof t=="object"&&typeof t[ni]=="object",pir=(0,p8e.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),M0=class t extends Nl{constructor(e,r={}){let n;if(AI(e)?n=new URL(e.url):(n=new URL(e),e={}),n.username!==""||n.password!=="")throw new TypeError(`${n} is an url with embedded credentials.`);let s=r.method||e.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(s)&&(s=s.toUpperCase()),!AI(r)&&"data"in r&&pir(),(r.body!=null||AI(e)&&e.body!==null)&&(s==="GET"||s==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let i=r.body?r.body:AI(e)&&e.body!==null?ab(e):null;super(i,{size:r.size||e.size||0});let a=new no(r.headers||e.headers||{});if(i!==null&&!a.has("Content-Type")){let u=SB(i,this);u&&a.set("Content-Type",u)}let o=AI(e)?e.signal:null;if("signal"in r&&(o=r.signal),o!=null&&!M5e(o))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let c=r.referrer==null?e.referrer:r.referrer;if(c==="")c="no-referrer";else if(c){let u=new URL(c);c=/^about:(\/\/)?client$/.test(u)?"client":u}else c=void 0;this[ni]={method:s,redirect:r.redirect||e.redirect||"follow",headers:a,parsedURL:n,signal:o,referrer:c},this.follow=r.follow===void 0?e.follow===void 0?20:e.follow:r.follow,this.compress=r.compress===void 0?e.compress===void 0?!0:e.compress:r.compress,this.counter=r.counter||e.counter||0,this.agent=r.agent||e.agent,this.highWaterMark=r.highWaterMark||e.highWaterMark||16384,this.insecureHTTPParser=r.insecureHTTPParser||e.insecureHTTPParser||!1,this.referrerPolicy=r.referrerPolicy||e.referrerPolicy||""}get method(){return this[ni].method}get url(){return(0,f8e.format)(this[ni].parsedURL)}get headers(){return this[ni].headers}get redirect(){return this[ni].redirect}get signal(){return this[ni].signal}get referrer(){if(this[ni].referrer==="no-referrer")return"";if(this[ni].referrer==="client")return"about:client";if(this[ni].referrer)return this[ni].referrer.toString()}get referrerPolicy(){return this[ni].referrerPolicy}set referrerPolicy(e){this[ni].referrerPolicy=u8e(e)}clone(){return new t(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(M0.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});m8e=t=>{let{parsedURL:e}=t[ni],r=new no(t[ni].headers);r.has("Accept")||r.set("Accept","*/*");let n=null;if(t.body===null&&/^(post|put)$/i.test(t.method)&&(n="0"),t.body!==null){let o=Z5e(t);typeof o=="number"&&!Number.isNaN(o)&&(n=String(o))}n&&r.set("Content-Length",n),t.referrerPolicy===""&&(t.referrerPolicy=c8e),t.referrer&&t.referrer!=="no-referrer"?t[ni].referrer=l8e(t):t[ni].referrer="no-referrer",t[ni].referrer instanceof URL&&r.set("Referer",t.referrer),r.has("User-Agent")||r.set("User-Agent","node-fetch"),t.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip, deflate, br");let{agent:s}=t;typeof s=="function"&&(s=s(e));let i=n8e(e),a={path:e.pathname+i,method:t.method,headers:r[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:t.insecureHTTPParser,agent:s};return{parsedURL:e,options:a}}});var yI,g8e=lr(()=>{AB();yI=class extends sf{constructor(e,r="aborted"){super(e,r)}}});var TB={};is(TB,{AbortError:()=>yI,Blob:()=>hu,FetchError:()=>ha,File:()=>D0,FormData:()=>B0,Headers:()=>no,Request:()=>M0,Response:()=>wo,blobFrom:()=>Q5e,blobFromSync:()=>H5e,default:()=>cb,fileFrom:()=>G5e,fileFromSync:()=>K5e,isRedirect:()=>gI});async function cb(t,e){return new Promise((r,n)=>{let s=new M0(t,e),{parsedURL:i,options:a}=m8e(s);if(!mir.has(i.protocol))throw new TypeError(`node-fetch cannot load ${t}. URL scheme "${i.protocol.replace(/:$/,"")}" is not supported.`);if(i.protocol==="data:"){let m=T5e(s.url),h=new wo(m,{headers:{"Content-Type":m.typeFull}});r(h);return}let o=(i.protocol==="https:"?y8e.default:A8e.default).request,{signal:c}=s,u=null,l=()=>{let m=new yI("The operation was aborted.");n(m),s.body&&s.body instanceof Ro.default.Readable&&s.body.destroy(m),!(!u||!u.body)&&u.body.emit("error",m)};if(c&&c.aborted){l();return}let d=()=>{l(),p()},f=o(i.toString(),a);c&&c.addEventListener("abort",d);let p=()=>{f.abort(),c&&c.removeEventListener("abort",d)};f.on("error",m=>{n(new ha(`request to ${s.url} failed, reason: ${m.message}`,"system",m)),p()}),hir(f,m=>{u&&u.body&&u.body.destroy(m)}),process.version<"v14"&&f.on("socket",m=>{let h;m.prependListener("end",()=>{h=m._eventsCount}),m.prependListener("close",A=>{if(u&&h{f.setTimeout(0);let h=t8e(m.rawHeaders);if(gI(m.statusCode)){let x=h.get("Location"),v=null;try{v=x===null?null:new URL(x,s.url)}catch{if(s.redirect!=="manual"){n(new ha(`uri requested responds with an invalid redirect URL: ${x}`,"invalid-redirect")),p();return}}switch(s.redirect){case"error":n(new ha(`uri requested responds with a redirect, redirect mode is set to error: ${s.url}`,"no-redirect")),p();return;case"manual":break;case"follow":{if(v===null)break;if(s.counter>=s.follow){n(new ha(`maximum redirect reached at: ${s.url}`,"max-redirect")),p();return}let I={headers:new no(s.headers),follow:s.follow,counter:s.counter+1,agent:s.agent,compress:s.compress,method:s.method,body:ab(s),signal:s.signal,size:s.size,referrer:s.referrer,referrerPolicy:s.referrerPolicy};if(!W5e(s.url,v)||!$5e(s.url,v))for(let w of["authorization","www-authenticate","cookie","cookie2"])I.headers.delete(w);if(m.statusCode!==303&&s.body&&e.body instanceof Ro.default.Readable){n(new ha("Cannot follow redirect with body being a readable stream","unsupported-redirect")),p();return}(m.statusCode===303||(m.statusCode===301||m.statusCode===302)&&s.method==="POST")&&(I.method="GET",I.body=void 0,I.headers.delete("content-length"));let R=d8e(h);R&&(I.referrerPolicy=R),r(cb(new M0(v,I))),p();return}default:return n(new TypeError(`Redirect option '${s.redirect}' is not a valid value of RequestRedirect`))}}c&&m.once("end",()=>{c.removeEventListener("abort",d)});let A=(0,Ro.pipeline)(m,new Ro.PassThrough,x=>{x&&n(x)});process.version<"v12.10"&&m.on("aborted",d);let g={url:s.url,status:m.statusCode,statusText:m.statusMessage,headers:h,size:s.size,counter:s.counter,highWaterMark:s.highWaterMark},b=h.get("Content-Encoding");if(!s.compress||s.method==="HEAD"||b===null||m.statusCode===204||m.statusCode===304){u=new wo(A,g),r(u);return}let y={flush:Zh.default.Z_SYNC_FLUSH,finishFlush:Zh.default.Z_SYNC_FLUSH};if(b==="gzip"||b==="x-gzip"){A=(0,Ro.pipeline)(A,Zh.default.createGunzip(y),x=>{x&&n(x)}),u=new wo(A,g),r(u);return}if(b==="deflate"||b==="x-deflate"){let x=(0,Ro.pipeline)(m,new Ro.PassThrough,v=>{v&&n(v)});x.once("data",v=>{(v[0]&15)===8?A=(0,Ro.pipeline)(A,Zh.default.createInflate(),I=>{I&&n(I)}):A=(0,Ro.pipeline)(A,Zh.default.createInflateRaw(),I=>{I&&n(I)}),u=new wo(A,g),r(u)}),x.once("end",()=>{u||(u=new wo(A,g),r(u))});return}if(b==="br"){A=(0,Ro.pipeline)(A,Zh.default.createBrotliDecompress(),x=>{x&&n(x)}),u=new wo(A,g),r(u);return}u=new wo(A,g),r(u)}),e8e(f,s).catch(n)})}function hir(t,e){let r=xI.Buffer.from(`0\r +`)),n.push(`--${r}--`),new e(n,{type:"multipart/form-data; boundary="+r})}var mC,sir,iir,W5e,air,$5e,Tz,Yh,L0,AL=dr(()=>{pC();Iz();({toStringTag:mC,iterator:sir,hasInstance:iir}=Symbol),W5e=Math.random,air="append,set,get,getAll,delete,keys,values,entries,forEach,constructor".split(","),$5e=(t,e,r)=>(t+="",/^(Blob|File)$/.test(e&&e[mC])?[(r=r!==void 0?r+"":e[mC]=="File"?e.name:"blob",t),e.name!==r||e[mC]=="blob"?new k0([e],r,e):e]:[t,e+""]),Tz=(t,e)=>(e?t:t.replace(/\r?\n|\r/g,`\r +`)).replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),Yh=(t,e,r)=>{if(e.lengthtypeof e[r]!="function")}append(...e){Yh("append",arguments,2),this.#e.push($5e(...e))}delete(e){Yh("delete",arguments,1),e+="",this.#e=this.#e.filter(([r])=>r!==e)}get(e){Yh("get",arguments,1),e+="";for(var r=this.#e,n=r.length,s=0;sn[0]===e&&r.push(n[1])),r}has(e){return Yh("has",arguments,1),e+="",this.#e.some(r=>r[0]===e)}forEach(e,r){Yh("forEach",arguments,1);for(var[n,s]of this)e.call(r,s,n,this)}set(...e){Yh("set",arguments,2);var r=[],n=!0;e=$5e(...e),this.#e.forEach(s=>{s[0]===e[0]?n&&(n=!r.push(e)):r.push(s)}),n&&r.push(e),this.#e=r}*entries(){yield*this.#e}*keys(){for(var[e]of this)yield e}*values(){for(var[,e]of this)yield e}}});var af,yL=dr(()=>{af=class extends Error{constructor(e,r){super(e),Error.captureStackTrace(this,this.constructor),this.type=r}get name(){return this.constructor.name}get[Symbol.toStringTag](){return this.constructor.name}}});var ha,wz=dr(()=>{yL();ha=class extends af{constructor(e,r,n){super(e,r),n&&(this.code=this.errno=n.code,this.erroredSysCall=n.syscall)}}});var xL,Rz,hC,U5e,q5e,j5e,bL=dr(()=>{xL=Symbol.toStringTag,Rz=t=>typeof t=="object"&&typeof t.append=="function"&&typeof t.delete=="function"&&typeof t.get=="function"&&typeof t.getAll=="function"&&typeof t.has=="function"&&typeof t.set=="function"&&typeof t.sort=="function"&&t[xL]==="URLSearchParams",hC=t=>t&&typeof t=="object"&&typeof t.arrayBuffer=="function"&&typeof t.type=="string"&&typeof t.stream=="function"&&typeof t.constructor=="function"&&/^(Blob|File)$/.test(t[xL]),U5e=t=>typeof t=="object"&&(t[xL]==="AbortSignal"||t[xL]==="EventTarget"),q5e=(t,e)=>{let r=new URL(e).hostname,n=new URL(t).hostname;return r===n||r.endsWith(`.${n}`)},j5e=(t,e)=>{let r=new URL(e).protocol,n=new URL(t).protocol;return r===n}});var Q5e=E((Sjr,H5e)=>{if(!globalThis.DOMException)try{let{MessageChannel:t}=require("worker_threads"),e=new t().port1,r=new ArrayBuffer;e.postMessage(r,[r,r])}catch(t){t.constructor.name==="DOMException"&&(globalThis.DOMException=t.constructor)}H5e.exports=globalThis.DOMException});var Jh,G5e,V5e,Nz,z5e,K5e,Y5e,J5e,X5e,Z5e,EL,Oz=dr(()=>{Jh=require("node:fs"),G5e=require("node:path"),V5e=Re(Q5e(),1);Iz();pC();({stat:Nz}=Jh.promises),z5e=(t,e)=>X5e((0,Jh.statSync)(t),t,e),K5e=(t,e)=>Nz(t).then(r=>X5e(r,t,e)),Y5e=(t,e)=>Nz(t).then(r=>Z5e(r,t,e)),J5e=(t,e)=>Z5e((0,Jh.statSync)(t),t,e),X5e=(t,e,r="")=>new hu([new EL({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],{type:r}),Z5e=(t,e,r="")=>new k0([new EL({path:e,size:t.size,lastModified:t.mtimeMs,start:0})],(0,G5e.basename)(e),{type:r,lastModified:t.mtimeMs}),EL=class t{#e;#t;constructor(e){this.#e=e.path,this.#t=e.start,this.size=e.size,this.lastModified=e.lastModified}slice(e,r){return new t({path:this.#e,lastModified:this.lastModified,size:r-e,start:this.#t+e})}async*stream(){let{mtimeMs:e}=await Nz(this.#e);if(e>this.lastModified)throw new V5e.default("The requested file could not be read, typically due to permission problems that have occurred after a reference to a file was acquired.","NotReadableError");yield*(0,Jh.createReadStream)(this.#e,{start:this.#t,end:this.#t+this.size-1})}get[Symbol.toStringTag](){return"Blob"}}});var t8e={};is(t8e,{toFormData:()=>pir});function fir(t){let e=t.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);if(!e)return;let r=e[2]||e[3]||"",n=r.slice(r.lastIndexOf("\\")+1);return n=n.replace(/%22/g,'"'),n=n.replace(/&#(\d{4});/g,(s,i)=>String.fromCharCode(i)),n}async function pir(t,e){if(!/multipart/i.test(e))throw new TypeError("Failed to fetch");let r=e.match(/boundary=(?:"([^"]+)"|([^;]+))/i);if(!r)throw new TypeError("no or bad content-type header, no multipart boundary");let n=new Pz(r[1]||r[2]),s,i,a,o,c,u,l=[],d=new L0,f=g=>{a+=A.decode(g,{stream:!0})},p=g=>{l.push(g)},m=()=>{let g=new k0(l,u,{type:c});d.append(o,g)},h=()=>{d.append(o,a)},A=new TextDecoder("utf-8");A.decode(),n.onPartBegin=function(){n.onPartData=f,n.onPartEnd=h,s="",i="",a="",o="",c="",u=null,l.length=0},n.onHeaderField=function(g){s+=A.decode(g,{stream:!0})},n.onHeaderValue=function(g){i+=A.decode(g,{stream:!0})},n.onHeaderEnd=function(){if(i+=A.decode(),s=s.toLowerCase(),s==="content-disposition"){let g=i.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);g&&(o=g[2]||g[3]||""),u=fir(i),u&&(n.onPartData=p,n.onPartEnd=m)}else s==="content-type"&&(c=i);i="",s=""};for await(let g of t)n.write(g);return n.end(),d}var Nl,vn,e8e,B0,_L,SL,oir,gC,cir,uir,lir,dir,Xh,Pz,r8e=dr(()=>{Oz();AL();Nl=0,vn={START_BOUNDARY:Nl++,HEADER_FIELD_START:Nl++,HEADER_FIELD:Nl++,HEADER_VALUE_START:Nl++,HEADER_VALUE:Nl++,HEADER_VALUE_ALMOST_DONE:Nl++,HEADERS_ALMOST_DONE:Nl++,PART_DATA_START:Nl++,PART_DATA:Nl++,END:Nl++},e8e=1,B0={PART_BOUNDARY:e8e,LAST_BOUNDARY:e8e*=2},_L=10,SL=13,oir=32,gC=45,cir=58,uir=97,lir=122,dir=t=>t|32,Xh=()=>{},Pz=class{constructor(e){this.index=0,this.flags=0,this.onHeaderEnd=Xh,this.onHeaderField=Xh,this.onHeadersEnd=Xh,this.onHeaderValue=Xh,this.onPartBegin=Xh,this.onPartData=Xh,this.onPartEnd=Xh,this.boundaryChars={},e=`\r +--`+e;let r=new Uint8Array(e.length);for(let n=0;n{this[x+"Mark"]=r},g=x=>{delete this[x+"Mark"]},b=(x,v,C,R)=>{(v===void 0||v!==C)&&this[x](R&&R.subarray(v,C))},y=(x,v)=>{let C=x+"Mark";C in this&&(v?(b(x,this[C],r,e),delete this[C]):(b(x,this[C],e.length,e),this[C]=0))};for(r=0;rlir)return;break;case vn.HEADER_VALUE_START:if(m===oir)break;A("onHeaderValue"),u=vn.HEADER_VALUE;case vn.HEADER_VALUE:m===SL&&(y("onHeaderValue",!0),b("onHeaderEnd"),u=vn.HEADER_VALUE_ALMOST_DONE);break;case vn.HEADER_VALUE_ALMOST_DONE:if(m!==_L)return;u=vn.HEADER_FIELD_START;break;case vn.HEADERS_ALMOST_DONE:if(m!==_L)return;b("onHeadersEnd"),u=vn.PART_DATA_START;break;case vn.PART_DATA_START:u=vn.PART_DATA,A("onPartData");case vn.PART_DATA:if(s=c,c===0){for(r+=f;r0)i[c-1]=m;else if(s>0){let x=new Uint8Array(i.buffer,i.byteOffset,i.byteLength);b("onPartData",0,s,x),s=0,A("onPartData"),r--}break;case vn.END:break;default:throw new Error(`Unexpected state entered: ${u}`)}y("onHeaderField"),y("onHeaderValue"),y("onPartData"),this.index=c,this.state=u,this.flags=l}end(){if(this.state===vn.HEADER_FIELD_START&&this.index===0||this.state===vn.PART_DATA&&this.index===this.boundary.length)this.onPartEnd();else if(this.state!==vn.END)throw new Error("MultipartParser.end(): stream ended unexpectedly")}}});async function Dz(t){if(t[to].disturbed)throw new TypeError(`body used already for: ${t.url}`);if(t[to].disturbed=!0,t[to].error)throw t[to].error;let{body:e}=t;if(e===null)return Io.Buffer.alloc(0);if(!(e instanceof vc.default))return Io.Buffer.alloc(0);let r=[],n=0;try{for await(let s of e){if(t.size>0&&n+s.length>t.size){let i=new ha(`content size at ${t.url} over limit: ${t.size}`,"max-size");throw e.destroy(i),i}n+=s.length,r.push(s)}}catch(s){throw s instanceof af?s:new ha(`Invalid response body while trying to fetch ${t.url}: ${s.message}`,"system",s)}if(e.readableEnded===!0||e._readableState.ended===!0)try{return r.every(s=>typeof s=="string")?Io.Buffer.from(r.join("")):Io.Buffer.concat(r,n)}catch(s){throw new ha(`Could not create Buffer from response body for ${t.url}: ${s.message}`,"system",s)}else throw new ha(`Premature close of server response while trying to fetch ${t.url}`)}var vc,of,Io,mir,to,Ol,ob,hir,vL,n8e,s8e,CL=dr(()=>{vc=Re(require("node:stream"),1),of=require("node:util"),Io=require("node:buffer");pC();AL();wz();yL();bL();mir=(0,of.promisify)(vc.default.pipeline),to=Symbol("Body internals"),Ol=class{constructor(e,{size:r=0}={}){let n=null;e===null?e=null:Rz(e)?e=Io.Buffer.from(e.toString()):hC(e)||Io.Buffer.isBuffer(e)||(of.types.isAnyArrayBuffer(e)?e=Io.Buffer.from(e):ArrayBuffer.isView(e)?e=Io.Buffer.from(e.buffer,e.byteOffset,e.byteLength):e instanceof vc.default||(e instanceof L0?(e=F5e(e),n=e.type.split("=")[1]):e=Io.Buffer.from(String(e))));let s=e;Io.Buffer.isBuffer(e)?s=vc.default.Readable.from(e):hC(e)&&(s=vc.default.Readable.from(e.stream())),this[to]={body:e,stream:s,boundary:n,disturbed:!1,error:null},this.size=r,e instanceof vc.default&&e.on("error",i=>{let a=i instanceof af?i:new ha(`Invalid response body while trying to fetch ${this.url}: ${i.message}`,"system",i);this[to].error=a})}get body(){return this[to].stream}get bodyUsed(){return this[to].disturbed}async arrayBuffer(){let{buffer:e,byteOffset:r,byteLength:n}=await Dz(this);return e.slice(r,r+n)}async formData(){let e=this.headers.get("content-type");if(e.startsWith("application/x-www-form-urlencoded")){let n=new L0,s=new URLSearchParams(await this.text());for(let[i,a]of s)n.append(i,a);return n}let{toFormData:r}=await Promise.resolve().then(()=>(r8e(),t8e));return r(this.body,e)}async blob(){let e=this.headers&&this.headers.get("content-type")||this[to].body&&this[to].body.type||"",r=await this.arrayBuffer();return new hu([r],{type:e})}async json(){let e=await this.text();return JSON.parse(e)}async text(){let e=await Dz(this);return new TextDecoder().decode(e)}buffer(){return Dz(this)}};Ol.prototype.buffer=(0,of.deprecate)(Ol.prototype.buffer,"Please use 'response.arrayBuffer()' instead of 'response.buffer()'","node-fetch#buffer");Object.defineProperties(Ol.prototype,{body:{enumerable:!0},bodyUsed:{enumerable:!0},arrayBuffer:{enumerable:!0},blob:{enumerable:!0},json:{enumerable:!0},text:{enumerable:!0},data:{get:(0,of.deprecate)(()=>{},"data doesn't exist, use json(), text(), arrayBuffer(), or body instead","https://github.com/node-fetch/node-fetch/issues/1000 (response)")}});ob=(t,e)=>{let r,n,{body:s}=t[to];if(t.bodyUsed)throw new Error("cannot clone body after it is used");return s instanceof vc.default&&typeof s.getBoundary!="function"&&(r=new vc.PassThrough({highWaterMark:e}),n=new vc.PassThrough({highWaterMark:e}),s.pipe(r),s.pipe(n),t[to].stream=r,s=n),s},hir=(0,of.deprecate)(t=>t.getBoundary(),"form-data doesn't follow the spec and requires special treatment. Use alternative package","https://github.com/node-fetch/node-fetch/issues/1167"),vL=(t,e)=>t===null?null:typeof t=="string"?"text/plain;charset=UTF-8":Rz(t)?"application/x-www-form-urlencoded;charset=UTF-8":hC(t)?t.type||null:Io.Buffer.isBuffer(t)||of.types.isAnyArrayBuffer(t)||ArrayBuffer.isView(t)?null:t instanceof L0?`multipart/form-data; boundary=${e[to].boundary}`:t&&typeof t.getBoundary=="function"?`multipart/form-data;boundary=${hir(t)}`:t instanceof vc.default?null:"text/plain;charset=UTF-8",n8e=t=>{let{body:e}=t[to];return e===null?0:hC(e)?e.size:Io.Buffer.isBuffer(e)?e.length:e&&typeof e.getLengthSync=="function"&&e.hasKnownLength&&e.hasKnownLength()?e.getLengthSync():null},s8e=async(t,{body:e})=>{e===null?t.end():await mir(e,t)}});function i8e(t=[]){return new ro(t.reduce((e,r,n,s)=>(n%2===0&&e.push(s.slice(n,n+2)),e),[]).filter(([e,r])=>{try{return IL(e),Lz(e,String(r)),!0}catch{return!1}}))}var kz,AC,IL,Lz,ro,TL=dr(()=>{kz=require("node:util"),AC=Re(require("node:http"),1),IL=typeof AC.default.validateHeaderName=="function"?AC.default.validateHeaderName:t=>{if(!/^[\^`\-\w!#$%&'*+.|~]+$/.test(t)){let e=new TypeError(`Header name must be a valid HTTP token [${t}]`);throw Object.defineProperty(e,"code",{value:"ERR_INVALID_HTTP_TOKEN"}),e}},Lz=typeof AC.default.validateHeaderValue=="function"?AC.default.validateHeaderValue:(t,e)=>{if(/[^\t\u0020-\u007E\u0080-\u00FF]/.test(e)){let r=new TypeError(`Invalid character in header content ["${t}"]`);throw Object.defineProperty(r,"code",{value:"ERR_INVALID_CHAR"}),r}},ro=class t extends URLSearchParams{constructor(e){let r=[];if(e instanceof t){let n=e.raw();for(let[s,i]of Object.entries(n))r.push(...i.map(a=>[s,a]))}else if(e!=null)if(typeof e=="object"&&!kz.types.isBoxedPrimitive(e)){let n=e[Symbol.iterator];if(n==null)r.push(...Object.entries(e));else{if(typeof n!="function")throw new TypeError("Header pairs must be iterable");r=[...e].map(s=>{if(typeof s!="object"||kz.types.isBoxedPrimitive(s))throw new TypeError("Each header pair must be an iterable object");return[...s]}).map(s=>{if(s.length!==2)throw new TypeError("Each header pair must be a name/value tuple");return[...s]})}}else throw new TypeError("Failed to construct 'Headers': The provided value is not of type '(sequence> or record)");return r=r.length>0?r.map(([n,s])=>(IL(n),Lz(n,String(s)),[String(n).toLowerCase(),String(s)])):void 0,super(r),new Proxy(this,{get(n,s,i){switch(s){case"append":case"set":return(a,o)=>(IL(a),Lz(a,String(o)),URLSearchParams.prototype[s].call(n,String(a).toLowerCase(),String(o)));case"delete":case"has":case"getAll":return a=>(IL(a),URLSearchParams.prototype[s].call(n,String(a).toLowerCase()));case"keys":return()=>(n.sort(),new Set(URLSearchParams.prototype.keys.call(n)).keys());default:return Reflect.get(n,s,i)}}})}get[Symbol.toStringTag](){return this.constructor.name}toString(){return Object.prototype.toString.call(this)}get(e){let r=this.getAll(e);if(r.length===0)return null;let n=r.join(", ");return/^content-encoding$/i.test(e)&&(n=n.toLowerCase()),n}forEach(e,r=void 0){for(let n of this.keys())Reflect.apply(e,r,[this.get(n),n,this])}*values(){for(let e of this.keys())yield this.get(e)}*entries(){for(let e of this.keys())yield[e,this.get(e)]}[Symbol.iterator](){return this.entries()}raw(){return[...this.keys()].reduce((e,r)=>(e[r]=this.getAll(r),e),{})}[Symbol.for("nodejs.util.inspect.custom")](){return[...this.keys()].reduce((e,r)=>{let n=this.getAll(r);return r==="host"?e[r]=n[0]:e[r]=n.length>1?n:n[0],e},{})}};Object.defineProperties(ro.prototype,["get","entries","forEach","values"].reduce((t,e)=>(t[e]={enumerable:!0},t),{}))});var gir,yC,Bz=dr(()=>{gir=new Set([301,302,303,307,308]),yC=t=>gir.has(t)});var gu,To,a8e=dr(()=>{TL();CL();Bz();gu=Symbol("Response internals"),To=class t extends Ol{constructor(e=null,r={}){super(e,r);let n=r.status!=null?r.status:200,s=new ro(r.headers);if(e!==null&&!s.has("Content-Type")){let i=vL(e,this);i&&s.append("Content-Type",i)}this[gu]={type:"default",url:r.url,status:n,statusText:r.statusText||"",headers:s,counter:r.counter,highWaterMark:r.highWaterMark}}get type(){return this[gu].type}get url(){return this[gu].url||""}get status(){return this[gu].status}get ok(){return this[gu].status>=200&&this[gu].status<300}get redirected(){return this[gu].counter>0}get statusText(){return this[gu].statusText}get headers(){return this[gu].headers}get highWaterMark(){return this[gu].highWaterMark}clone(){return new t(ob(this,this.highWaterMark),{type:this.type,url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected,size:this.size,highWaterMark:this.highWaterMark})}static redirect(e,r=302){if(!yC(r))throw new RangeError('Failed to execute "redirect" on "response": Invalid status code');return new t(null,{headers:{location:new URL(e).toString()},status:r})}static error(){let e=new t(null,{status:0,statusText:""});return e[gu].type="error",e}static json(e=void 0,r={}){let n=JSON.stringify(e);if(n===void 0)throw new TypeError("data is not JSON serializable");let s=new ro(r&&r.headers);return s.has("content-type")||s.set("content-type","application/json"),new t(n,{...r,headers:s})}get[Symbol.toStringTag](){return"Response"}};Object.defineProperties(To.prototype,{type:{enumerable:!0},url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}})});var o8e,c8e=dr(()=>{o8e=t=>{if(t.search)return t.search;let e=t.href.length-1,r=t.hash||(t.href[e]==="#"?"#":"");return t.href[e-r.length]==="?"?"?":""}});function u8e(t,e=!1){return t==null||(t=new URL(t),/^(about|blob|data):$/.test(t.protocol))?"no-referrer":(t.username="",t.password="",t.hash="",e&&(t.pathname="",t.search=""),t)}function p8e(t){if(!d8e.has(t))throw new TypeError(`Invalid referrerPolicy: ${t}`);return t}function Air(t){if(/^(http|ws)s:$/.test(t.protocol))return!0;let e=t.host.replace(/(^\[)|(]$)/g,""),r=(0,l8e.isIP)(e);return r===4&&/^127\./.test(e)||r===6&&/^(((0+:){7})|(::(0+:){0,6}))0*1$/.test(e)?!0:t.host==="localhost"||t.host.endsWith(".localhost")?!1:t.protocol==="file:"}function cb(t){return/^about:(blank|srcdoc)$/.test(t)||t.protocol==="data:"||/^(blob|filesystem):$/.test(t.protocol)?!0:Air(t)}function m8e(t,{referrerURLCallback:e,referrerOriginCallback:r}={}){if(t.referrer==="no-referrer"||t.referrerPolicy==="")return null;let n=t.referrerPolicy;if(t.referrer==="about:client")return"no-referrer";let s=t.referrer,i=u8e(s),a=u8e(s,!0);i.toString().length>4096&&(i=a),e&&(i=e(i)),r&&(a=r(a));let o=new URL(t.url);switch(n){case"no-referrer":return"no-referrer";case"origin":return a;case"unsafe-url":return i;case"strict-origin":return cb(i)&&!cb(o)?"no-referrer":a.toString();case"strict-origin-when-cross-origin":return i.origin===o.origin?i:cb(i)&&!cb(o)?"no-referrer":a;case"same-origin":return i.origin===o.origin?i:"no-referrer";case"origin-when-cross-origin":return i.origin===o.origin?i:a;case"no-referrer-when-downgrade":return cb(i)&&!cb(o)?"no-referrer":i;default:throw new TypeError(`Invalid referrerPolicy: ${n}`)}}function h8e(t){let e=(t.get("referrer-policy")||"").split(/[,\s]+/),r="";for(let n of e)n&&d8e.has(n)&&(r=n);return r}var l8e,d8e,f8e,Mz=dr(()=>{l8e=require("node:net");d8e=new Set(["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"]),f8e="strict-origin-when-cross-origin"});var g8e,A8e,ri,xC,yir,M0,y8e,x8e=dr(()=>{g8e=require("node:url"),A8e=require("node:util");TL();CL();bL();c8e();Mz();ri=Symbol("Request internals"),xC=t=>typeof t=="object"&&typeof t[ri]=="object",yir=(0,A8e.deprecate)(()=>{},".data is not a valid RequestInit property, use .body instead","https://github.com/node-fetch/node-fetch/issues/1000 (request)"),M0=class t extends Ol{constructor(e,r={}){let n;if(xC(e)?n=new URL(e.url):(n=new URL(e),e={}),n.username!==""||n.password!=="")throw new TypeError(`${n} is an url with embedded credentials.`);let s=r.method||e.method||"GET";if(/^(delete|get|head|options|post|put)$/i.test(s)&&(s=s.toUpperCase()),!xC(r)&&"data"in r&&yir(),(r.body!=null||xC(e)&&e.body!==null)&&(s==="GET"||s==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body");let i=r.body?r.body:xC(e)&&e.body!==null?ob(e):null;super(i,{size:r.size||e.size||0});let a=new ro(r.headers||e.headers||{});if(i!==null&&!a.has("Content-Type")){let u=vL(i,this);u&&a.set("Content-Type",u)}let o=xC(e)?e.signal:null;if("signal"in r&&(o=r.signal),o!=null&&!U5e(o))throw new TypeError("Expected signal to be an instanceof AbortSignal or EventTarget");let c=r.referrer==null?e.referrer:r.referrer;if(c==="")c="no-referrer";else if(c){let u=new URL(c);c=/^about:(\/\/)?client$/.test(u)?"client":u}else c=void 0;this[ri]={method:s,redirect:r.redirect||e.redirect||"follow",headers:a,parsedURL:n,signal:o,referrer:c},this.follow=r.follow===void 0?e.follow===void 0?20:e.follow:r.follow,this.compress=r.compress===void 0?e.compress===void 0?!0:e.compress:r.compress,this.counter=r.counter||e.counter||0,this.agent=r.agent||e.agent,this.highWaterMark=r.highWaterMark||e.highWaterMark||16384,this.insecureHTTPParser=r.insecureHTTPParser||e.insecureHTTPParser||!1,this.referrerPolicy=r.referrerPolicy||e.referrerPolicy||""}get method(){return this[ri].method}get url(){return(0,g8e.format)(this[ri].parsedURL)}get headers(){return this[ri].headers}get redirect(){return this[ri].redirect}get signal(){return this[ri].signal}get referrer(){if(this[ri].referrer==="no-referrer")return"";if(this[ri].referrer==="client")return"about:client";if(this[ri].referrer)return this[ri].referrer.toString()}get referrerPolicy(){return this[ri].referrerPolicy}set referrerPolicy(e){this[ri].referrerPolicy=p8e(e)}clone(){return new t(this)}get[Symbol.toStringTag](){return"Request"}};Object.defineProperties(M0.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0},referrer:{enumerable:!0},referrerPolicy:{enumerable:!0}});y8e=t=>{let{parsedURL:e}=t[ri],r=new ro(t[ri].headers);r.has("Accept")||r.set("Accept","*/*");let n=null;if(t.body===null&&/^(post|put)$/i.test(t.method)&&(n="0"),t.body!==null){let o=n8e(t);typeof o=="number"&&!Number.isNaN(o)&&(n=String(o))}n&&r.set("Content-Length",n),t.referrerPolicy===""&&(t.referrerPolicy=f8e),t.referrer&&t.referrer!=="no-referrer"?t[ri].referrer=m8e(t):t[ri].referrer="no-referrer",t[ri].referrer instanceof URL&&r.set("Referer",t.referrer),r.has("User-Agent")||r.set("User-Agent","node-fetch"),t.compress&&!r.has("Accept-Encoding")&&r.set("Accept-Encoding","gzip, deflate, br");let{agent:s}=t;typeof s=="function"&&(s=s(e));let i=o8e(e),a={path:e.pathname+i,method:t.method,headers:r[Symbol.for("nodejs.util.inspect.custom")](),insecureHTTPParser:t.insecureHTTPParser,agent:s};return{parsedURL:e,options:a}}});var bC,b8e=dr(()=>{yL();bC=class extends af{constructor(e,r="aborted"){super(e,r)}}});var wL={};is(wL,{AbortError:()=>bC,Blob:()=>hu,FetchError:()=>ha,File:()=>k0,FormData:()=>L0,Headers:()=>ro,Request:()=>M0,Response:()=>To,blobFrom:()=>K5e,blobFromSync:()=>z5e,default:()=>ub,fileFrom:()=>Y5e,fileFromSync:()=>J5e,isRedirect:()=>yC});async function ub(t,e){return new Promise((r,n)=>{let s=new M0(t,e),{parsedURL:i,options:a}=y8e(s);if(!xir.has(i.protocol))throw new TypeError(`node-fetch cannot load ${t}. URL scheme "${i.protocol.replace(/:$/,"")}" is not supported.`);if(i.protocol==="data:"){let m=O5e(s.url),h=new To(m,{headers:{"Content-Type":m.typeFull}});r(h);return}let o=(i.protocol==="https:"?_8e.default:E8e.default).request,{signal:c}=s,u=null,l=()=>{let m=new bC("The operation was aborted.");n(m),s.body&&s.body instanceof wo.default.Readable&&s.body.destroy(m),!(!u||!u.body)&&u.body.emit("error",m)};if(c&&c.aborted){l();return}let d=()=>{l(),p()},f=o(i.toString(),a);c&&c.addEventListener("abort",d);let p=()=>{f.abort(),c&&c.removeEventListener("abort",d)};f.on("error",m=>{n(new ha(`request to ${s.url} failed, reason: ${m.message}`,"system",m)),p()}),bir(f,m=>{u&&u.body&&u.body.destroy(m)}),process.version<"v14"&&f.on("socket",m=>{let h;m.prependListener("end",()=>{h=m._eventsCount}),m.prependListener("close",A=>{if(u&&h{f.setTimeout(0);let h=i8e(m.rawHeaders);if(yC(m.statusCode)){let x=h.get("Location"),v=null;try{v=x===null?null:new URL(x,s.url)}catch{if(s.redirect!=="manual"){n(new ha(`uri requested responds with an invalid redirect URL: ${x}`,"invalid-redirect")),p();return}}switch(s.redirect){case"error":n(new ha(`uri requested responds with a redirect, redirect mode is set to error: ${s.url}`,"no-redirect")),p();return;case"manual":break;case"follow":{if(v===null)break;if(s.counter>=s.follow){n(new ha(`maximum redirect reached at: ${s.url}`,"max-redirect")),p();return}let C={headers:new ro(s.headers),follow:s.follow,counter:s.counter+1,agent:s.agent,compress:s.compress,method:s.method,body:ob(s),signal:s.signal,size:s.size,referrer:s.referrer,referrerPolicy:s.referrerPolicy};if(!q5e(s.url,v)||!j5e(s.url,v))for(let w of["authorization","www-authenticate","cookie","cookie2"])C.headers.delete(w);if(m.statusCode!==303&&s.body&&e.body instanceof wo.default.Readable){n(new ha("Cannot follow redirect with body being a readable stream","unsupported-redirect")),p();return}(m.statusCode===303||(m.statusCode===301||m.statusCode===302)&&s.method==="POST")&&(C.method="GET",C.body=void 0,C.headers.delete("content-length"));let R=h8e(h);R&&(C.referrerPolicy=R),r(ub(new M0(v,C))),p();return}default:return n(new TypeError(`Redirect option '${s.redirect}' is not a valid value of RequestRedirect`))}}c&&m.once("end",()=>{c.removeEventListener("abort",d)});let A=(0,wo.pipeline)(m,new wo.PassThrough,x=>{x&&n(x)});process.version<"v12.10"&&m.on("aborted",d);let g={url:s.url,status:m.statusCode,statusText:m.statusMessage,headers:h,size:s.size,counter:s.counter,highWaterMark:s.highWaterMark},b=h.get("Content-Encoding");if(!s.compress||s.method==="HEAD"||b===null||m.statusCode===204||m.statusCode===304){u=new To(A,g),r(u);return}let y={flush:Zh.default.Z_SYNC_FLUSH,finishFlush:Zh.default.Z_SYNC_FLUSH};if(b==="gzip"||b==="x-gzip"){A=(0,wo.pipeline)(A,Zh.default.createGunzip(y),x=>{x&&n(x)}),u=new To(A,g),r(u);return}if(b==="deflate"||b==="x-deflate"){let x=(0,wo.pipeline)(m,new wo.PassThrough,v=>{v&&n(v)});x.once("data",v=>{(v[0]&15)===8?A=(0,wo.pipeline)(A,Zh.default.createInflate(),C=>{C&&n(C)}):A=(0,wo.pipeline)(A,Zh.default.createInflateRaw(),C=>{C&&n(C)}),u=new To(A,g),r(u)}),x.once("end",()=>{u||(u=new To(A,g),r(u))});return}if(b==="br"){A=(0,wo.pipeline)(A,Zh.default.createBrotliDecompress(),x=>{x&&n(x)}),u=new To(A,g),r(u);return}u=new To(A,g),r(u)}),s8e(f,s).catch(n)})}function bir(t,e){let r=EC.Buffer.from(`0\r \r -`),n=!1,s=!1,i;t.on("response",a=>{let{headers:o}=a;n=o["transfer-encoding"]==="chunked"&&!o["content-length"]}),t.on("socket",a=>{let o=()=>{if(n&&!s){let u=new Error("Premature close");u.code="ERR_STREAM_PREMATURE_CLOSE",e(u)}},c=u=>{s=xI.Buffer.compare(u.slice(-5),r)===0,!s&&i&&(s=xI.Buffer.compare(i.slice(-3),r.slice(0,3))===0&&xI.Buffer.compare(u.slice(-2),r.slice(3))===0),i=u};a.prependListener("close",o),a.on("data",c),t.on("close",()=>{a.removeListener("close",o),a.removeListener("data",c)})})}var A8e,y8e,Zh,Ro,xI,mir,bI=lr(()=>{A8e=Re(require("node:http"),1),y8e=Re(require("node:https"),1),Zh=Re(require("node:zlib"),1),Ro=Re(require("node:stream"),1),xI=require("node:buffer");w5e();vB();r8e();CB();h8e();TV();g8e();BV();gB();xB();LV();NV();mir=new Set(["data:","http:","https:"])});function In(t){return gir[t]||t}function MV(t,e){if(!t)return()=>{};if(t.aborted)return e.abort(),()=>{};let r=()=>{e.abort()};return t.addEventListener("abort",r,{once:!0}),()=>{t.removeEventListener("abort",r)}}async function ge(t,e={}){let r=parseInt(e.retries||"0",10)||0,n=Array.isArray(e.validStatusCodes)?e.validStatusCodes:[],s;for(let a=0;a<=r;a++){let o=be.getStore()||"system";a>0?(_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${a} \u6B21\u91CD\u8BD5: ${t}`),s&&(s.cause?.code==="ETIMEDOUT"||s.cause?.code==="ECONNRESET"||s.name==="AbortError")?await new Promise(f=>setTimeout(f,100)):await new Promise(f=>setTimeout(f,Math.min(1e3*Math.pow(2,a-1),5e3)))):_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${t}`);let c=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,u=new AbortController,l=setTimeout(()=>u.abort(),c),d=MV(e.signal,u);try{let f;if(typeof WebAssembly>"u"){_("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let g=(await Promise.resolve().then(()=>(bI(),TB))).default;f=await g(t,{method:"GET",headers:{...e.headers},signal:u.signal})}else f=await fetch(t,{method:"GET",headers:{...e.headers},signal:u.signal});if(clearTimeout(l),!f.ok&&!n.includes(f.status))throw new Error(`HTTP error! status: ${f.status}`);let p;if(e.base64Data){_("info","[Utils] [HTTP] base64\u6A21\u5F0F");let g=await f.arrayBuffer(),b=new Uint8Array(g),y="",x=32768;for(let v=0;v0&&(h["set-cookie"]=A.join(";")),a>0&&_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:m,status:f.status,headers:h}}catch(f){clearTimeout(l),s=f;let p=be.getStore()||"system";if(e.signal?.aborted)throw f;if(f.name==="AbortError"?(_("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,f.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u8D85\u65F6\u65F6\u95F4:",`${c}ms`),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`)):(_("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,f.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u9519\u8BEF\u7C7B\u578B:",f.name),_("error","- \u6D88\u606F:",f.message),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`),f.cause&&(_("error","- \u7801:",f.cause.code),_("error","- \u539F\u56E0:",f.cause.message))),a0?(_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${o} \u6B21\u91CD\u8BD5: ${t}`),i&&(i.cause?.code==="ETIMEDOUT"||i.cause?.code==="ECONNRESET"||i.name==="AbortError")?await new Promise(g=>setTimeout(g,100)):await new Promise(g=>setTimeout(g,Math.min(1e3*Math.pow(2,o-1),5e3)))):_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] HTTP POST: ${t}`);let u=parseInt(r.timeout||O.vodRequestTimeout||"5000",10)||5e3,l=new AbortController,d=setTimeout(()=>l.abort(),u),f=MV(r.signal,l),{headers:p={},params:m,allow_redirects:h=!0}=r,A={method:"POST",headers:{...p},body:e,signal:l.signal};h||(A.redirect="manual");try{let g;if(typeof WebAssembly>"u"){_("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let x=(await Promise.resolve().then(()=>(bI(),TB))).default;g=await x(t,A)}else g=await fetch(t,A);clearTimeout(d);let b=await g.text();if(!g.ok&&!s.includes(g.status))throw _("error",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] response data: `,b),new Error(`HTTP error! status: ${g.status}`);let y;try{y=JSON.parse(b)}catch{y=b}return o>0&&_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:y,status:g.status,headers:Object.fromEntries(g.headers.entries())}}catch(g){clearTimeout(d),i=g;let b=be.getStore()||"system";if(r.signal?.aborted)throw g;if(g.name==="AbortError"?(_("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,g.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u8D85\u65F6\u65F6\u95F4:",`${u}ms`),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`)):(_("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,g.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u9519\u8BEF\u7C7B\u578B:",g.name),_("error","- \u6D88\u606F:",g.message),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`),g.cause&&(_("error","- \u7801:",g.cause.code),_("error","- \u539F\u56E0:",g.cause.message))),o]*>(.*?)<\/title>/i);return n&&n[1]?n[1].replace(/ /g," ").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").trim():t}catch(e){let r=be.getStore()||"system";return _("error",`[${r}] \u83B7\u53D6\u6807\u9898\u5931\u8D25: ${e.message}`),t}}function Le(t,e=200){return new Response(JSON.stringify(t),{status:e,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}function _8e(t,e=200){if(typeof t!="string"||!t.trim().startsWith("s,n="";for(let s in t)t.hasOwnProperty(s)&&(n.length>0&&(n+="&"),n+=r(s)+"="+r(t[s]));return n}function EI(t={}){let e={};for(let[s,i]of Object.entries(t))typeof i=="boolean"?e[s]=i?"true":"false":i==null?e[s]="":e[s]=String(i);let r=[];for(let s in e)Object.prototype.hasOwnProperty.call(e,s)&&r.push(s);r.sort();let n=[];for(let s of r){let i=encodeURIComponent(s),a=encodeURIComponent(e[s]);n.push(`${i}=${a}`)}return n.join("&")}function lb(t,e){let r=t,n="",s=t.indexOf("#"),i="";s!==-1&&(r=t.substring(0,s),i=t.substring(s));let a=r.indexOf("?");a!==-1&&(n=r.substring(a+1),r=r.substring(0,a));let o={};if(n){let u=n.split("&");for(let l of u)if(l){let[d,f=""]=l.split("=").map(decodeURIComponent);o[d]=f}}for(let u in e)Object.prototype.hasOwnProperty.call(e,u)&&(o[u]=e[u]);let c=[];for(let u in o)Object.prototype.hasOwnProperty.call(o,u)&&c.push(`${encodeURIComponent(u)}=${encodeURIComponent(o[u])}`);return r+(c.length?"?"+c.join("&"):"")+i}function S8e(t){let e=t.indexOf("//")+2;e===1&&(e=0);let r=t.indexOf("/",e);if(r===-1)return"/";let n=t.indexOf("?",r),s=t.indexOf("#",r),i=n!==-1?n:s!==-1?s:t.length;return t.substring(r,i)||"/"}async function $V(t,e={},r){let{headers:n={},sniffLimit:s}=e,i=parseInt(s||"32768",10)||32768,a=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,o=new AbortController,c=setTimeout(()=>o.abort(),a),u=MV(e.signal,o);try{let l=be.getStore()||"system";_("info",`[${l}] [\u6D41\u5F0F\u8BF7\u6C42] HTTP GET: ${t}`);let d=await fetch(t,{method:"GET",headers:n,signal:o.signal});if(!d.ok)throw new Error(`HTTP error! status: ${d.status}`);let f=d.body.getReader?d.body.getReader():null;if(!f){let v=be.getStore()||"system";_("warn",`[${v}] [\u6D41\u5F0F\u8BF7\u6C42] \u73AF\u5883\u4E0D\u652F\u6301\u6D41\u5F0F\u8BFB\u53D6,\u56DE\u9000\u5230\u666E\u901A\u8BF7\u6C42`);let I=await d.text();if(clearTimeout(c),r&&!r(I.slice(0,i)))return _("info",`[${v}] [\u6D41\u5F0F\u8BF7\u6C42] \u68C0\u6D4B\u5230\u65E0\u6548\u6570\u636E(\u56DE\u9000\u6A21\u5F0F),\u4E22\u5F03\u7ED3\u679C`),null;try{return JSON.parse(I)}catch{return I}}let p=0,m=[],h=!1,A="",g=!1;for(;;){let{done:v,value:I}=await f.read();if(v)break;if(p+=I.length,!g&&r){let R=new TextDecoder("utf-8").decode(I,{stream:!0});if(A+=R,!r(A)){let w=be.getStore()||"system";_("info",`[${w}] [\u6D41\u5F0F\u8BF7\u6C42] \u55C5\u63A2\u5230\u65E0\u6548\u7279\u5F81(\u5DF2\u8BFB${p}\u5B57\u8282),\u7ACB\u5373\u7194\u65AD`),o.abort(),h=!0;break}p>i&&(g=!0,A=null)}m.push(I)}if(clearTimeout(c),h)return null;let b=new Uint8Array(p),y=0;for(let v of m)b.set(v,y),y+=v.length;let x=new TextDecoder("utf-8").decode(b);try{return JSON.parse(x)}catch{return x}}catch(l){let d=be.getStore()||"system";return clearTimeout(c),l.name==="AbortError"||_("error",`[${d}] [\u6D41\u5F0F\u8BF7\u6C42] \u5931\u8D25: ${l.message}`),null}finally{u()}}var x8e,be,gir,ir=lr(()=>{Ot();_t();x8e=require("node:async_hooks"),be=new x8e.AsyncLocalStorage,gir={360:"360kan",imgo:"mango"}});function an(t){let e=0;for(let r=0;r>>0}return e.toString(16)}function db(t,e){return t==="lastSelectMap"&&e instanceof Map?JSON.stringify(Object.fromEntries(e)):JSON.stringify(e)}function Ls(t){function e(y){let x="";for(let v=0;v>6),x+=String.fromCharCode(128|I&63)):(x+=String.fromCharCode(224|I>>12),x+=String.fromCharCode(128|I>>6&63),x+=String.fromCharCode(128|I&63))}return x}t=e(t);function r(y,x){return y<>>32-x}function n(y,x){let v=y&1073741824,I=x&1073741824,R=y&2147483648,w=x&2147483648,N=(y&1073741823)+(x&1073741823);return v&I?N^2147483648^R^w:v|I?N&1073741824?N^3221225472^R^w:N^1073741824^R^w:N^R^w}function s(y,x,v){return y&x|~y&v}function i(y,x,v){return y&v|x&~v}function a(y,x,v){return y^x^v}function o(y,x,v){return x^(y|~v)}function c(y,x,v,I,R,w,N){return y=n(y,n(n(s(x,v,I),R),N)),n(r(y,w),x)}function u(y,x,v,I,R,w,N){return y=n(y,n(n(i(x,v,I),R),N)),n(r(y,w),x)}function l(y,x,v,I,R,w,N){return y=n(y,n(n(a(x,v,I),R),N)),n(r(y,w),x)}function d(y,x,v,I,R,w,N){return y=n(y,n(n(o(x,v,I),R),N)),n(r(y,w),x)}function f(y){let x=y.length,v=((x+8>>>6)+1)*16,I=new Array(v).fill(0);for(let R=0;R>2]|=y.charCodeAt(R)<>2]|=128<>>v*8&255).toString(16);x+=R.substr(R.length-2,2)}return x}let m=f(t),h=1732584193,A=4023233417,g=2562383102,b=271733878;for(let y=0;y>3,d=u&7;if(d===0){let[f,p]=qV(i,o);switch(o=p,l){case 1:c.id=f;break;case 2:c.progress=f;break;case 3:c.mode=f;break;case 4:c.fontsize=f;break;case 5:c.color=f;break;case 8:c.ctime=f;break;case 9:c.weight=f;break;case 11:c.pool=f;break;case 13:c.attr=f;break;case 15:c.like_num=f;break;case 17:c.dm_type_v2=f;break}}else if(d===2){let[f,p]=v8e(i,o);switch(o=p,l){case 6:c.midHash=Cc(f);break;case 7:c.content=Cc(f);break;case 10:c.action=Cc(f);break;case 12:c.idStr=Cc(f);break;case 14:c.animation=Cc(f);break;case 16:c.color_v2=Cc(f);break}}else{let[f,p]=qV(i,o);o=p}}r.push(c)}return r}function qV(t,e){let r=0n,n=0n,s=e;for(;;){let i=t[s++];if(r|=BigInt(i&127)<>>0)%9999999,e<1e4?e+1e4:e}function I8e(t,e){let r=new Uint8Array(t.length);for(let n=0;nw8e[e]))}function NB(t){let s=new Array(44);for(let i=0;i<4;i++)s[i]=t.slice(4*i,4*i+4);for(let i=4;i<4*11;i++){let a=s[i-1];i%4===0&&(a=I8e(RB(yir(a)),Uint8Array.from([Air[i/4],0,0,0]))),s[i]=I8e(s[i-4],a)}return s}function xir(t,e){let s=new Uint8Array(t);s=FV(s,e.slice(10*4,11*4));for(let i=9;i>=1;i--)s=SI(s),s=_I(s),s=FV(s,e.slice(i*4,(i+1)*4)),s=bir(s);return s=SI(s),s=_I(s),s=FV(s,e.slice(0,4)),s}function FV(t,e){let r=new Uint8Array(16);for(let n=0;n<4;n++)for(let s=0;s<4;s++)r[s+4*n]=t[s+4*n]^e[n][s];return r}function _I(t){let e=new Array(256);for(let r=0;r<256;r++)e[w8e[r]]=r;return Uint8Array.from(t.map(r=>e[r]))}function SI(t){let e=new Uint8Array(16);for(let r=0;r<4;r++)for(let n=0;n<4;n++)e[r+4*n]=t[r+4*((n-r+4)%4)];return e}function bir(t){function e(n,s){let i=0;for(let a=0;a<8;a++){s&1&&(i^=n);let o=n&128;n=n<<1&255,o&&(n^=27),s>>=1}return i}let r=new Uint8Array(16);for(let n=0;n<4;n++){let s=t.slice(4*n,4*n+4);r[4*n+0]=e(s[0],14)^e(s[1],11)^e(s[2],13)^e(s[3],9),r[4*n+1]=e(s[0],9)^e(s[1],14)^e(s[2],11)^e(s[3],13),r[4*n+2]=e(s[0],13)^e(s[1],9)^e(s[2],14)^e(s[3],11),r[4*n+3]=e(s[0],11)^e(s[1],13)^e(s[2],9)^e(s[3],14)}return r}function Eir(t,e){let r=NB(e),n=16,s=new Uint8Array(t.length);for(let i=0;i=8&&(s-=8,r+=String.fromCharCode(n>>s&255))}return r}function Cc(t){let e="",r=0;for(;r=192&&n<224){let s=t[r++];e+=String.fromCharCode((n&31)<<6|s&63)}else if(n>=224&&n<240){let s=t[r++],i=t[r++];e+=String.fromCharCode((n&15)<<12|(s&63)<<6|i&63)}else if(n>=240){let s=t[r++],i=t[r++],a=t[r++],c=((n&7)<<18|(s&63)<<12|(i&63)<<6|a&63)-65536;e+=String.fromCharCode(55296+(c>>10),56320+(c&1023))}}return e}function eg(t){let e=[];for(let r=0;r>6),e.push(128|n&63);else if(n<55296||n>=57344)e.push(224|n>>12),e.push(128|n>>6&63),e.push(128|n&63);else{r++;let s=t.charCodeAt(r),i=65536+((n&1023)<<10|s&1023);e.push(240|i>>18),e.push(128|i>>12&63),e.push(128|i>>6&63),e.push(128|i&63)}}return new Uint8Array(e)}function vir(t,e){try{let r=vI(t),n=eg(e),s=Eir(r,n),i=_ir(s);return Cc(i)}catch(r){return _("error","[Utils] [Codec]",r),null}}function II(t){let e=typeof t=="string"?t.trim():JSON.stringify(t??"");try{return JSON.parse(e)}catch{}let n=vir(e,"3b744389882a4067");if(n!=null)try{return JSON.parse(n)}catch{return n}return e}function Iir(t){let e=[];for(let r=0;r>6),e.push(128|n&63)):n<65536&&(e.push(224|n>>12),e.push(128|n>>6&63),e.push(128|n&63))}return e}function OB(t){let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",n;for(n=0;n+2>2],r+=e[(t[n]&3)<<4|t[n+1]>>4],r+=e[(t[n+1]&15)<<2|t[n+2]>>6],r+=e[t[n+2]&63];return n>2],n+1>4],r+=e[(t[n+1]&15)<<2],r+="="):(r+=e[(t[n]&3)<<4],r+="==")),r}function UV(t){function e(u,l){return l>>>u|l<<32-u}let r=Math.pow(2,32),n=[],s=t.length*8;for(let u=0;u>2]|=t.charCodeAt(u)<<(3-u)%4*8;n[t.length>>2]|=128<<(3-t.length%4)*8,n[(t.length+8>>6)*16+15]=s;let i=new Array(64),a=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],o=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];for(let u=0;u>>3,P=e(17,i[b-2])^e(19,i[b-2])^i[b-2]>>>10;i[b]=i[b-16]+N+i[b-7]+P|0}let y=e(6,m)^e(11,m)^e(25,m),x=m&h^~m&A,v=g+y+x+o[b]+i[b]|0,I=e(2,l)^e(13,l)^e(22,l),R=l&d^l&f^d&f,w=I+R|0;g=A,A=h,h=m,m=p+v|0,p=f,f=d,d=l,l=v+w|0}a[0]=a[0]+l|0,a[1]=a[1]+d|0,a[2]=a[2]+f|0,a[3]=a[3]+p|0,a[4]=a[4]+m|0,a[5]=a[5]+h|0,a[6]=a[6]+A|0,a[7]=a[7]+g|0}let c=[];for(let u of a)c.push(u>>24&255),c.push(u>>16&255),c.push(u>>8&255),c.push(u&255);return c}function R8e(t,e){let n=Iir(t);n.length>64&&(n=UV(t)),n.length<64&&(n=n.concat(Array(64-n.length).fill(0)));let s=n.map(c=>c^92),i=n.map(c=>c^54),a=UV(String.fromCharCode(...i)+e),o=UV(String.fromCharCode(...s)+String.fromCharCode(...a));return OB(o)}function CI(t,e,r,n){let s=t+"t"+e;return r&&Object.keys(r).sort().forEach(a=>{s+=a+r[a]}),s+=n,Ls(s)}function C8e(t){if(t<=65535)return String.fromCharCode(t);t-=65536;let e=(t>>10)+55296,r=(t&1023)+56320;return String.fromCharCode(e,r)}function of(t){if(!t)return t;let e={"<":"<",">":">","&":"&",""":'"',"'":"'"};return t.replace(/&[a-zA-Z]+;/g,r=>e[r]||r).replace(/&#(\d+);/g,(r,n)=>C8e(parseInt(n,10))).replace(/&#x([0-9a-fA-F]+);/g,(r,n)=>C8e(parseInt(n,16)))}var w8e,Air,Ts=lr(()=>{_t();w8e=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],Air=[0,1,2,4,8,16,32,64,128,27,54]});var O8e={};is(O8e,{getRedisCaches:()=>QV,getRedisKey:()=>Cir,judgeRedisValid:()=>GV,pingRedis:()=>N8e,runPipeline:()=>HV,setRedisKey:()=>jV,setRedisKeyWithExpiry:()=>Tir,updateRedisCaches:()=>PB});async function N8e(){let t=`${O.redisUrl}/ping`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PING \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(e){_("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",e.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",e.name),e.cause&&(_("error","- [Utils] [Redis] \u7801:",e.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",e.cause.message))}}async function Cir(t){let e=`${O.redisUrl}/get/${t}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 GET \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(r){_("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",r.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(_("error","- [Utils] [Redis] \u7801:",r.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function jV(t,e){let r=db(t,e),n=an(r);if(O.lastHashes[t]===n)return _("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};let s=`${O.redisUrl}/set/${t}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SET \u8BF7\u6C42:",s);try{let a=await(await fetch(s,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:r})).json();return O.lastHashes[t]=n,_("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),a}catch(i){_("error","[Utils] [Redis] SET \u8BF7\u6C42\u5931\u8D25:",i.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",i.name),i.cause&&(_("error","- [Utils] [Redis] \u7801:",i.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",i.cause.message))}}async function Tir(t,e,r){let n=db(t,e),s=an(n);if(O.lastHashes[t]===s)return _("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};let i=`${O.redisUrl}/set/${t}?EX=${r}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SETEX \u8BF7\u6C42:",i);try{let o=await(await fetch(i,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:n})).json();return O.lastHashes[t]=s,_("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),o}catch(a){_("error","[Utils] [Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",a.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",a.name),a.cause&&(_("error","- [Utils] [Redis] \u7801:",a.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",a.cause.message))}}async function HV(t){let e=`${O.redisUrl}/pipeline`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PIPELINE \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:JSON.stringify(t)})).json()}catch(r){_("error","[Utils] [Redis] Pipeline \u8BF7\u6C42\u5931\u8D25:",r.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(_("error","- [Utils] [Redis] \u7801:",r.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function QV(){if(!O.redisCacheInitialized)try{_("info","[Utils] [Redis] getRedisCaches start.");let e=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"].map(s=>["GET",s]),r=await HV(e);O.animes=r[0].result?JSON.parse(r[0].result):O.animes,O.episodeIds=r[1].result?JSON.parse(r[1].result):O.episodeIds,O.episodeNum=r[2].result?JSON.parse(r[2].result):O.episodeNum,O.reqRecords=r[3].result?JSON.parse(r[3].result):O.reqRecords;let n=r[4].result?JSON.parse(r[4].result):null;n&&typeof n=="object"&&(O.lastSelectMap=new Map(Object.entries(n)),_("info",`[Utils] [Redis] Restored lastSelectMap from Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=r[5].result?parseInt(r[5].result,10):O.todayReqNum,O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.redisCacheInitialized=!0,_("info","[Utils] [Redis] getRedisCaches completed successfully.")}catch(t){_("error",`[Utils] [Redis] getRedisCaches failed: ${t.message}`,t.stack),O.redisCacheInitialized=!0}}async function PB(){try{_("info","[Utils] [Redis] updateCaches start.");let t=[],e=[],r=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:n,value:s}of r){let i=JSON.stringify(n==="lastSelectMap"?Object.fromEntries(s):s),a=an(i);a!==O.lastHashes[n]&&(t.push(["SET",n,i]),e.push({key:n,hash:a}))}if(t.length>0){_("info",`[Utils] [Redis] Updating ${t.length} changed keys: ${e.map(a=>a.key).join(", ")}`);let n=await HV(t),s=0,i=0;Array.isArray(n)&&n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,_("warn",`[Utils] [Redis] Failed to update Redis key: ${e[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(e.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),_("info",`[Utils] [Redis] Redis update completed successfully: ${s} keys updated`)):_("warn",`[Utils] [Redis] Redis update partially failed: ${s} succeeded, ${i} failed`)}else _("info","[Utils] [Redis] No changes detected, skipping Redis update.")}catch(t){_("error",`[Utils] [Redis] updateRedisCaches failed: ${t.message}`,t.stack),_("error",`[Utils] [Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function GV(t){if(!O.redisValid&&O.redisUrl&&O.redisToken&&t!=="/favicon.ico"&&t!=="/robots.txt"){let e=await N8e();e&&e.result&&e.result==="PONG"&&(O.redisValid=!0)}}var kB=lr(()=>{Ot();_t();Ts()});function P8e(){return"\u9515\u7691\u853C\u788D\u7231\u55F3\u5AD2\u7477\u66A7\u972D\u8C19\u94F5\u9E4C\u80AE\u8884\u5965\u5AAA\u9A9C\u9CCC\u575D\u7F62\u94AF\u6446\u8D25\u5457\u9881\u529E\u7ECA\u94A3\u5E2E\u7ED1\u9551\u8C24\u5265\u9971\u5B9D\u62A5\u9C8D\u9E28\u9F85\u8F88\u8D1D\u94A1\u72C8\u5907\u60EB\u9E4E\u8D32\u951B\u7EF7\u7B14\u6BD5\u6BD9\u5E01\u95ED\u835C\u54D4\u6ED7\u94CB\u7B5A\u8DF8\u8FB9\u7F16\u8D2C\u53D8\u8FA9\u8FAB\u82C4\u7F0F\u7B3E\u6807\u9AA0\u98D1\u98D9\u9556\u9573\u9CD4\u9CD6\u522B\u762A\u6FD2\u6EE8\u5BBE\u6448\u50A7\u7F24\u69DF\u6BA1\u8191\u9554\u9ACC\u9B13\u997C\u7980\u62E8\u94B5\u94C2\u9A73\u997D\u94B9\u9E41\u8865\u94B8\u8D22\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u9A96\u9EEA\u82CD\u8231\u4ED3\u6CA7\u5395\u4FA7\u518C\u6D4B\u607B\u5C42\u8BE7\u9538\u4FAA\u9497\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u5181\u8C04\u8C36\u8487\u5FCF\u5A75\u9AA3\u89C7\u7985\u9561\u573A\u5C1D\u957F\u507F\u80A0\u5382\u7545\u4F25\u82CC\u6005\u960A\u9CB3\u949E\u8F66\u5F7B\u7817\u5C18\u9648\u886C\u4F27\u8C0C\u6987\u789C\u9F80\u6491\u79F0\u60E9\u8BDA\u9A8B\u67A8\u67FD\u94D6\u94DB\u75F4\u8FDF\u9A70\u803B\u9F7F\u70BD\u996C\u9E31\u51B2\u51B2\u866B\u5BA0\u94F3\u7574\u8E0C\u7B79\u7EF8\u4FE6\u5E31\u96E0\u6A71\u53A8\u9504\u96CF\u7840\u50A8\u89E6\u5904\u520D\u7ECC\u8E70\u4F20\u948F\u75AE\u95EF\u521B\u6006\u9524\u7F0D\u7EAF\u9E51\u7EF0\u8F8D\u9F8A\u8F9E\u8BCD\u8D50\u9E5A\u806A\u8471\u56F1\u4ECE\u4E1B\u82C1\u9AA2\u679E\u51D1\u8F8F\u8E7F\u7A9C\u64BA\u9519\u9509\u9E7E\u8FBE\u54D2\u9791\u5E26\u8D37\u9A80\u7ED0\u62C5\u5355\u90F8\u63B8\u80C6\u60EE\u8BDE\u5F39\u6B9A\u8D55\u7605\u7BAA\u5F53\u6321\u515A\u8361\u6863\u8C20\u7800\u88C6\u6363\u5C9B\u7977\u5BFC\u76D7\u7118\u706F\u9093\u956B\u654C\u6DA4\u9012\u7F14\u7C74\u8BCB\u8C1B\u7EE8\u89CC\u955D\u98A0\u70B9\u57AB\u7535\u5DC5\u94BF\u766B\u9493\u8C03\u94EB\u9CB7\u8C0D\u53E0\u9CBD\u9489\u9876\u952D\u8BA2\u94E4\u4E22\u94E5\u4E1C\u52A8\u680B\u51BB\u5CBD\u9E2B\u7AA6\u728A\u72EC\u8BFB\u8D4C\u9540\u6E0E\u691F\u724D\u7B03\u9EE9\u953B\u65AD\u7F0E\u7C16\u5151\u961F\u5BF9\u603C\u9566\u5428\u987F\u949D\u7096\u8DB8\u593A\u5815\u94CE\u9E45\u989D\u8BB9\u6076\u997F\u8C14\u57A9\u960F\u8F6D\u9507\u9537\u9E57\u989A\u989B\u9CC4\u8BF6\u513F\u5C14\u9975\u8D30\u8FE9\u94D2\u9E38\u9C95\u53D1\u7F5A\u9600\u73D0\u77FE\u9492\u70E6\u8D29\u996D\u8BBF\u7EBA\u94AB\u9C82\u98DE\u8BFD\u5E9F\u8D39\u7EEF\u9544\u9CB1\u7EB7\u575F\u594B\u6124\u7CAA\u507E\u4E30\u67AB\u950B\u98CE\u75AF\u51AF\u7F1D\u8BBD\u51E4\u6CA3\u80A4\u8F90\u629A\u8F85\u8D4B\u590D\u8D1F\u8BA3\u5987\u7F1A\u51EB\u9A78\u7EC2\u7ECB\u8D59\u9EB8\u9C8B\u9CC6\u9486\u8BE5\u9499\u76D6\u8D45\u6746\u8D76\u79C6\u8D63\u5C34\u64C0\u7EC0\u5188\u521A\u94A2\u7EB2\u5C97\u6206\u9550\u777E\u8BF0\u7F1F\u9506\u6401\u9E3D\u9601\u94EC\u4E2A\u7EA5\u9549\u988D\u7ED9\u4E98\u8D53\u7EE0\u9CA0\u9F9A\u5BAB\u5DE9\u8D21\u94A9\u6C9F\u82DF\u6784\u8D2D\u591F\u8BDF\u7F11\u89CF\u86CA\u987E\u8BC2\u6BC2\u94B4\u9522\u9E2A\u9E44\u9E58\u5250\u6302\u9E39\u63B4\u5173\u89C2\u9986\u60EF\u8D2F\u8BD6\u63BC\u9E73\u9CCF\u5E7F\u72B7\u89C4\u5F52\u9F9F\u95FA\u8F68\u8BE1\u8D35\u523D\u5326\u523F\u59AB\u6867\u9C91\u9CDC\u8F8A\u6EDA\u886E\u7EF2\u9CA7\u9505\u56FD\u8FC7\u57DA\u5459\u5E3C\u6901\u8748\u94EA\u9A87\u97E9\u6C49\u961A\u7ED7\u9889\u53F7\u704F\u98A2\u9602\u9E64\u8D3A\u8BC3\u9616\u86CE\u6A2A\u8F70\u9E3F\u7EA2\u9EC9\u8BA7\u836D\u95F3\u9C8E\u58F6\u62A4\u6CAA\u6237\u6D52\u9E55\u54D7\u534E\u753B\u5212\u8BDD\u9A85\u6866\u94E7\u6000\u574F\u6B22\u73AF\u8FD8\u7F13\u6362\u5524\u75EA\u7115\u6DA3\u5942\u7F33\u953E\u9CA9\u9EC4\u8C0E\u9CC7\u6325\u8F89\u6BC1\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8BD9\u835F\u54D5\u6D4D\u7F0B\u73F2\u6656\u8364\u6D51\u8BE8\u9984\u960D\u83B7\u8D27\u7978\u94AC\u956C\u51FB\u673A\u79EF\u9965\u8FF9\u8BA5\u9E21\u7EE9\u7F09\u6781\u8F91\u7EA7\u6324\u51E0\u84DF\u5242\u6D4E\u8BA1\u8BB0\u9645\u7EE7\u7EAA\u8BA6\u8BD8\u8360\u53FD\u54DC\u9AA5\u7391\u89CA\u9F51\u77F6\u7F81\u867F\u8DFB\u9701\u9C9A\u9CAB\u5939\u835A\u988A\u8D3E\u94BE\u4EF7\u9A7E\u90CF\u6D43\u94D7\u9553\u86F2\u6B7C\u76D1\u575A\u7B3A\u95F4\u8270\u7F04\u8327\u68C0\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u8C0F\u7F23\u620B\u622C\u7751\u9E63\u7B15\u9CA3\u97AF\u5C06\u6D46\u848B\u6868\u5956\u8BB2\u9171\u7EDB\u7F30\u80F6\u6D47\u9A84\u5A07\u6405\u94F0\u77EB\u4FA5\u811A\u997A\u7F34\u7EDE\u8F7F\u8F83\u6322\u5CE4\u9E6A\u9C9B\u9636\u8282\u6D01\u7ED3\u8BEB\u5C4A\u7596\u988C\u9C92\u7D27\u9526\u4EC5\u8C28\u8FDB\u664B\u70EC\u5C3D\u52B2\u8346\u830E\u537A\u8369\u9991\u7F19\u8D46\u89D0\u9CB8\u60CA\u7ECF\u9888\u9759\u955C\u5F84\u75C9\u7ADE\u51C0\u522D\u6CFE\u8FF3\u5F2A\u80EB\u9753\u7EA0\u53A9\u65E7\u9604\u9E20\u9E6B\u9A79\u4E3E\u636E\u952F\u60E7\u5267\u8BB5\u5C66\u6989\u98D3\u949C\u9514\u7AAD\u9F83\u9E43\u7EE2\u9529\u954C\u96BD\u89C9\u51B3\u7EDD\u8C32\u73CF\u94A7\u519B\u9A8F\u76B2\u5F00\u51EF\u5240\u57B2\u5FFE\u607A\u94E0\u9534\u9F9B\u95F6\u94AA\u94D0\u9897\u58F3\u8BFE\u9A92\u7F02\u8F72\u94B6\u951E\u9894\u57A6\u6073\u9F88\u94FF\u62A0\u5E93\u88E4\u55BE\u5757\u4FA9\u90D0\u54D9\u810D\u5BBD\u72EF\u9ACB\u77FF\u65F7\u51B5\u8BD3\u8BF3\u909D\u5739\u7EA9\u8D36\u4E8F\u5CBF\u7AA5\u9988\u6E83\u532E\u8489\u6126\u8069\u7BD1\u9603\u951F\u9CB2\u6269\u9614\u86F4\u8721\u814A\u83B1\u6765\u8D56\u5D03\u5F95\u6D9E\u6FD1\u8D49\u7750\u94FC\u765E\u7C41\u84DD\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u5C9A\u6984\u6593\u9567\u8934\u7405\u9606\u9512\u635E\u52B3\u6D9D\u5520\u5D02\u94D1\u94F9\u75E8\u4E50\u9CD3\u956D\u5792\u7C7B\u6CEA\u8BD4\u7F27\u7BF1\u72F8\u79BB\u9CA4\u793C\u4E3D\u5389\u52B1\u783E\u5386\u6CA5\u96B6\u4FEA\u90E6\u575C\u82C8\u8385\u84E0\u5456\u9026\u9A8A\u7F21\u67A5\u680E\u8F79\u783A\u9502\u9E42\u75A0\u7C9D\u8DDE\u96F3\u9CA1\u9CE2\u4FE9\u8054\u83B2\u8FDE\u9570\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u8539\u5941\u6F4B\u740F\u6B93\u88E2\u88E3\u9CA2\u7CAE\u51C9\u4E24\u8F86\u8C05\u9B49\u7597\u8FBD\u9563\u7F2D\u948C\u9E69\u730E\u4E34\u90BB\u9CDE\u51DB\u8D41\u853A\u5EEA\u6AA9\u8F9A\u8E8F\u9F84\u94C3\u7075\u5CAD\u9886\u7EEB\u68C2\u86CF\u9CAE\u998F\u5218\u6D4F\u9A9D\u7EFA\u954F\u9E68\u9F99\u804B\u5499\u7B3C\u5784\u62E2\u9647\u830F\u6CF7\u73D1\u680A\u80E7\u783B\u697C\u5A04\u6402\u7BD3\u507B\u848C\u55BD\u5D5D\u9542\u7618\u8027\u877C\u9AC5\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u8D42\u7984\u5F55\u9646\u5786\u64B8\u565C\u95FE\u6CF8\u6E0C\u680C\u6A79\u8F73\u8F82\u8F98\u6C07\u80EA\u9E2C\u9E6D\u823B\u9C88\u5CE6\u631B\u5B6A\u6EE6\u4E71\u8114\u5A08\u683E\u9E3E\u92AE\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u56F5\u841D\u7F57\u903B\u9523\u7BA9\u9AA1\u9A86\u7EDC\u8366\u7321\u6CFA\u6924\u8136\u9559\u9A74\u5415\u94DD\u4FA3\u5C61\u7F15\u8651\u6EE4\u7EFF\u6988\u891B\u950A\u5452\u5988\u739B\u7801\u8682\u9A6C\u9A82\u5417\u551B\u5B37\u6769\u4E70\u9EA6\u5356\u8FC8\u8109\u52A2\u7792\u9992\u86EE\u6EE1\u8C29\u7F26\u9558\u98A1\u9CD7\u732B\u951A\u94C6\u8D38\u4E48\u6CA1\u9541\u95E8\u95F7\u4EEC\u626A\u7116\u61D1\u9494\u9530\u68A6\u772F\u8C1C\u5F25\u89C5\u5E42\u8288\u8C27\u7315\u7962\u7EF5\u7F05\u6E11\u817C\u9EFE\u5E99\u7F08\u7F2A\u706D\u60AF\u95FD\u95F5\u7F17\u9E23\u94ED\u8C2C\u8C1F\u84E6\u998D\u6B81\u9546\u8C0B\u4EA9\u94BC\u5450\u94A0\u7EB3\u96BE\u6320\u8111\u607C\u95F9\u94D9\u8BB7\u9981\u5185\u62DF\u817B\u94CC\u9CB5\u64B5\u8F87\u9CB6\u917F\u9E1F\u8311\u8885\u8042\u556E\u954A\u954D\u9667\u8616\u55EB\u989F\u8E51\u67E0\u72DE\u5B81\u62E7\u6CDE\u82CE\u549B\u804D\u94AE\u7EBD\u8113\u6D53\u519C\u4FAC\u54DD\u9A7D\u9495\u8BFA\u50A9\u759F\u6B27\u9E25\u6BB4\u5455\u6CA4\u8BB4\u6004\u74EF\u76D8\u8E52\u5E9E\u629B\u75B1\u8D54\u8F94\u55B7\u9E4F\u7EB0\u7F74\u94CD\u9A97\u8C1D\u9A88\u98D8\u7F25\u9891\u8D2B\u5AD4\u82F9\u51ED\u8BC4\u6CFC\u9887\u948B\u6251\u94FA\u6734\u8C31\u9564\u9568\u6816\u8110\u9F50\u9A91\u5C82\u542F\u6C14\u5F03\u8BAB\u8572\u9A90\u7EEE\u6864\u789B\u9880\u9883\u9CCD\u7275\u948E\u94C5\u8FC1\u7B7E\u8C26\u94B1\u94B3\u6F5C\u6D45\u8C34\u5811\u4F65\u8368\u60AD\u9A9E\u7F31\u6920\u94A4\u67AA\u545B\u5899\u8537\u5F3A\u62A2\u5AF1\u6A2F\u6217\u709D\u9516\u9535\u956A\u7F9F\u8DC4\u9539\u6865\u4E54\u4FA8\u7FD8\u7A8D\u8BEE\u8C2F\u835E\u7F32\u7857\u8DF7\u7A83\u60EC\u9532\u7BA7\u94A6\u4EB2\u5BDD\u9513\u8F7B\u6C22\u503E\u9877\u8BF7\u5E86\u63FF\u9CAD\u743C\u7A77\u8315\u86F1\u5DEF\u8D47\u866E\u9CC5\u8D8B\u533A\u8EAF\u9A71\u9F8B\u8BCE\u5C96\u9612\u89D1\u9E32\u98A7\u6743\u529D\u8BE0\u7EFB\u8F81\u94E8\u5374\u9E4A\u786E\u9615\u9619\u60AB\u8BA9\u9976\u6270\u7ED5\u835B\u5A06\u6861\u70ED\u97E7\u8BA4\u7EAB\u996A\u8F6B\u8363\u7ED2\u5D58\u877E\u7F1B\u94F7\u98A6\u8F6F\u9510\u86AC\u95F0\u6DA6\u6D12\u8428\u98D2\u9CC3\u8D5B\u4F1E\u6BF5\u7CC1\u4E27\u9A9A\u626B\u7F2B\u6DA9\u556C\u94EF\u7A51\u6740\u5239\u7EB1\u94E9\u9CA8\u7B5B\u6652\u917E\u5220\u95EA\u9655\u8D61\u7F2E\u8BAA\u59D7\u9A9F\u9490\u9CDD\u5892\u4F24\u8D4F\u57A7\u6B87\u89DE\u70E7\u7ECD\u8D4A\u6444\u6151\u8BBE\u538D\u6EE0\u7572\u7EC5\u5BA1\u5A76\u80BE\u6E17\u8BDC\u8C02\u6E16\u58F0\u7EF3\u80DC\u5E08\u72EE\u6E7F\u8BD7\u65F6\u8680\u5B9E\u8BC6\u9A76\u52BF\u9002\u91CA\u9970\u89C6\u8BD5\u8C25\u57D8\u83B3\u5F11\u8F7C\u8D33\u94C8\u9CA5\u5BFF\u517D\u7EF6\u67A2\u8F93\u4E66\u8D4E\u5C5E\u672F\u6811\u7AD6\u6570\u6445\u7EBE\u5E05\u95E9\u53CC\u8C01\u7A0E\u987A\u8BF4\u7855\u70C1\u94C4\u4E1D\u9972\u53AE\u9A77\u7F0C\u9536\u9E36\u8038\u6002\u9882\u8BBC\u8BF5\u64DE\u85AE\u998A\u98D5\u953C\u82CF\u8BC9\u8083\u8C21\u7A23\u867D\u968F\u7EE5\u5C81\u8C07\u5B59\u635F\u7B0B\u836A\u72F2\u7F29\u7410\u9501\u5522\u7743\u736D\u631E\u95FC\u94CA\u9CCE\u53F0\u6001\u949B\u9C90\u644A\u8D2A\u762B\u6EE9\u575B\u8C2D\u8C08\u53F9\u6619\u94BD\u952C\u9878\u6C64\u70EB\u50A5\u9967\u94F4\u9557\u6D9B\u7EE6\u8BA8\u97EC\u94FD\u817E\u8A8A\u9511\u9898\u4F53\u5C49\u7F07\u9E48\u9617\u6761\u7C9C\u9F86\u9CA6\u8D34\u94C1\u5385\u542C\u70C3\u94DC\u7EDF\u6078\u5934\u94AD\u79C3\u56FE\u948D\u56E2\u629F\u9893\u8715\u9968\u8131\u9E35\u9A6E\u9A7C\u692D\u7BA8\u9F0D\u889C\u5A32\u817D\u5F2F\u6E7E\u987D\u4E07\u7EA8\u7EFE\u7F51\u8F8B\u97E6\u8FDD\u56F4\u4E3A\u6F4D\u7EF4\u82C7\u4F1F\u4F2A\u7EAC\u8C13\u536B\u8BFF\u5E0F\u95F1\u6CA9\u6DA0\u73AE\u97EA\u709C\u9C94\u6E29\u95FB\u7EB9\u7A33\u95EE\u960C\u74EE\u631D\u8717\u6DA1\u7A9D\u5367\u83B4\u9F8C\u545C\u94A8\u4E4C\u8BEC\u65E0\u829C\u5434\u575E\u96FE\u52A1\u8BEF\u90AC\u5E91\u6003\u59A9\u9A9B\u9E49\u9E5C\u9521\u727A\u88AD\u4E60\u94E3\u620F\u7EC6\u9969\u960B\u73BA\u89CB\u867E\u8F96\u5CE1\u4FA0\u72ED\u53A6\u5413\u7856\u9C9C\u7EA4\u8D24\u8854\u95F2\u663E\u9669\u73B0\u732E\u53BF\u9985\u7FA1\u5BAA\u7EBF\u82CB\u83B6\u85D3\u5C98\u7303\u5A34\u9E47\u75EB\u869D\u7C7C\u8DF9\u53A2\u9576\u4E61\u8BE6\u54CD\u9879\u8297\u9977\u9AA7\u7F03\u98E8\u8427\u56A3\u9500\u6653\u5578\u54D3\u6F47\u9A81\u7EE1\u67AD\u7BAB\u534F\u631F\u643A\u80C1\u8C10\u5199\u6CFB\u8C22\u4EB5\u64B7\u7EC1\u7F2C\u950C\u8845\u5174\u9649\u8365\u51F6\u6C79\u9508\u7EE3\u9990\u9E3A\u865A\u5618\u987B\u8BB8\u53D9\u7EEA\u7EED\u8BE9\u987C\u8F69\u60AC\u9009\u7663\u7EDA\u8C16\u94C9\u955F\u5B66\u8C11\u6CF6\u9CD5\u52CB\u8BE2\u5BFB\u9A6F\u8BAD\u8BAF\u900A\u57D9\u6D54\u9C9F\u538B\u9E26\u9E2D\u54D1\u4E9A\u8BB6\u57AD\u5A05\u6860\u6C29\u9609\u70DF\u76D0\u4E25\u5CA9\u989C\u960E\u8273\u538C\u781A\u5F66\u8C1A\u9A8C\u53A3\u8D5D\u4FE8\u5156\u8C33\u6079\u95EB\u917D\u9B47\u990D\u9F39\u9E2F\u6768\u626C\u75A1\u9633\u75D2\u517B\u6837\u7080\u7476\u6447\u5C27\u9065\u7A91\u8C23\u836F\u8F7A\u9E5E\u9CD0\u7237\u9875\u4E1A\u53F6\u9765\u8C12\u90BA\u6654\u70E8\u533B\u94F1\u9890\u9057\u4EEA\u8681\u827A\u4EBF\u5FC6\u4E49\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7ECE\u8BD2\u5453\u5CC4\u9974\u603F\u9A7F\u7F22\u8F76\u8D3B\u9487\u9552\u9571\u7617\u8223\u836B\u9634\u94F6\u996E\u9690\u94DF\u763E\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8D62\u9896\u8314\u83BA\u8426\u84E5\u6484\u5624\u6EE2\u6F46\u748E\u9E66\u763F\u988F\u7F42\u54DF\u62E5\u4F63\u75C8\u8E0A\u548F\u955B\u4F18\u5FE7\u90AE\u94C0\u72B9\u8BF1\u83B8\u94D5\u9C7F\u8206\u9C7C\u6E14\u5A31\u4E0E\u5C7F\u8BED\u72F1\u8A89\u9884\u9A6D\u4F1B\u4FE3\u8C00\u8C15\u84E3\u5D5B\u996B\u9608\u59AA\u7EA1\u89CE\u6B24\u94B0\u9E46\u9E6C\u9F89\u9E33\u6E0A\u8F95\u56ED\u5458\u5706\u7F18\u8FDC\u6A7C\u9E22\u9F0B\u7EA6\u8DC3\u94A5\u7CA4\u60A6\u9605\u94BA\u90E7\u5300\u9668\u8FD0\u8574\u915D\u6655\u97F5\u90D3\u82B8\u607D\u6120\u7EAD\u97EB\u6B92\u6C32\u6742\u707E\u8F7D\u6512\u6682\u8D5E\u74D2\u8DB1\u933E\u8D43\u810F\u9A75\u51FF\u67A3\u8D23\u62E9\u5219\u6CFD\u8D5C\u5567\u5E3B\u7BA6\u8D3C\u8C2E\u8D60\u7EFC\u7F2F\u8F67\u94E1\u95F8\u6805\u8BC8\u658B\u503A\u6BE1\u76CF\u65A9\u8F97\u5D2D\u6808\u6218\u7EFD\u8C35\u5F20\u6DA8\u5E10\u8D26\u80C0\u8D75\u8BCF\u948A\u86F0\u8F99\u9517\u8FD9\u8C2A\u8F84\u9E67\u8D1E\u9488\u4FA6\u8BCA\u9547\u9635\u6D48\u7F1C\u6862\u8F78\u8D48\u796F\u9E29\u6323\u7741\u72F0\u4E89\u5E27\u75C7\u90D1\u8BC1\u8BE4\u5CE5\u94B2\u94EE\u7B5D\u7EC7\u804C\u6267\u7EB8\u631A\u63B7\u5E1C\u8D28\u6EDE\u9A98\u6809\u6800\u8F75\u8F7E\u8D3D\u9E37\u86F3\u7D77\u8E2C\u8E2F\u89EF\u949F\u7EC8\u79CD\u80BF\u4F17\u953A\u8BCC\u8F74\u76B1\u663C\u9AA4\u7EA3\u7EC9\u732A\u8BF8\u8BDB\u70DB\u77A9\u5631\u8D2E\u94F8\u9A7B\u4F2B\u69E0\u94E2\u4E13\u7816\u8F6C\u8D5A\u556D\u9994\u989E\u6869\u5E84\u88C5\u5986\u58EE\u72B6\u9525\u8D58\u5760\u7F00\u9A93\u7F12\u8C06\u51C6\u7740\u6D4A\u8BFC\u956F\u5179\u8D44\u6E0D\u8C18\u7F01\u8F8E\u8D40\u7726\u9531\u9F87\u9CBB\u8E2A\u603B\u7EB5\u506C\u90B9\u8BF9\u9A7A\u9CB0\u8BC5\u7EC4\u955E\u94BB\u7F35\u8E9C\u9CDF\u7FF1\u5E76\u535C\u6C89\u4E11\u6DC0\u8FED\u6597\u8303\u5E72\u768B\u7845\u67DC\u540E\u4F19\u79F8\u6770\u8BC0\u5938\u91CC\u91CC\u51CC\u4E48\u9709\u637B\u51C4\u6266\u5723\u5C38\u62AC\u6D82\u6D3C\u5582\u6C61\u9528\u54B8\u874E\u5F5D\u6D8C\u6E38\u5401\u5FA1\u613F\u5CB3\u4E91\u7076\u624E\u672D\u7B51\u4E8E\u5FD7\u6CE8\u51CB\u8BA0\u8C2B\u90C4\u52D0\u51FC\u5742\u5785\u57B4\u57EF\u57DD\u82D8\u836C\u836E\u839C\u83BC\u83F0\u85C1\u63F8\u5412\u5423\u5494\u549D\u54B4\u5658\u567C\u56AF\u5E5E\u5C99\u5D74\u5F77\u5FBC\u72B8\u72CD\u9980\u9987\u9993\u9995\u6123\u61B7\u61D4\u4E2C\u6E86\u6EDF\u6EB7\u6F24\u6F74\u6FB9\u752F\u7E9F\u7ED4\u7EF1\u73C9\u67A7\u684A\u6849\u69D4\u6A65\u8F71\u8F77\u8D4D\u80B7\u80E8\u98DA\u7173\u7145\u7198\u610D\u6DFC\u781C\u78D9\u770D\u949A\u94B7\u94D8\u94DE\u9503\u950D\u950E\u950F\u9518\u951D\u952A\u952B\u953F\u9545\u954E\u9562\u9565\u9569\u9572\u7A06\u9E4B\u9E5B\u9E71\u75AC\u75B4\u75D6\u766F\u88E5\u8941\u8022\u98A5\u87A8\u9EB4\u9C85\u9C86\u9C87\u9C9E\u9CB4\u9CBA\u9CBC\u9CCA\u9CCB\u9CD8\u9CD9\u9792\u97B4\u9F44\u4E2C\u4E3A\u4EB8\u4F17\u4F2A\u4F59\u51A2\u51C0\u51CC\u51FC\u522C\u52CB\u52D0\u52DA\u5364\u53C6\u53C7\u542F\u5494\u54A4\u54B4\u54CC\u54D7\u551D\u5521\u5523\u553F\u556E\u5570\u5574\u5475\u567C\u56AF\u5785\u57A7\u57AF\u57B1\u57D9\u57DD\u5846\u5899\u58F8\u59AB\u59DC\u5A34\u5A73\u5C43\u5CBD\u5CC3\u5CE3\u5D04\u5D5A\u5D5B\u5D74\u5EBC\u5F5F\u5FA1\u610D\u616D\u61B7\u624E\u6266\u631C\u6326\u637B\u63F8\u65F8\u663D\u672D\u684A\u68BC\u68BE\u68C2\u69DA\u6A90\u6C61\u6C93\u6CA8\u6CA9\u6CB5\u6D49\u6D50\u6D55\u6D8C\u6DA2\u6E7F\u6E87\u6EEA\u6F24\u7145\u7173\u7198\u7266\u729F\u72CD\u72DD\u732C\u7399\u739A\u73B1\u73C9\u73CF\u73F0\u740E\u7487\u7572\u75B4\u7606\u7618\u766F\u772C\u7740\u7841\u7845\u7859\u785A\u7877\u78B9\u78D9\u794E\u79FE\u7B5C\u7B7E\u7B93\u7CC7\u7E9F\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EE6\u7EEC\u7EF1\u7EF9\u7F0A\u7F10\u7F1E\u7F30\u7FD9\u7FDA\u80B7\u810F\u814C\u8158\u816D\u81DC\u8273\u8279\u8359\u839C\u83BC\u841A\u85C1\u866C\u8780\u87CF\u8885\u8886\u88AF\u88C8\u88E5\u8941\u8955\u89C3\u89CD\u8A5F\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C1E\u8C25\u8C37\u8C6E\u8D20\u8D4D\u8D51\u8D52\u8D57\u8D5F\u8D6A\u8DD6\u8DF6\u8E0A\u8F6A\u8F80\u8F8C\u8F92\u90C1\u90C4\u9166\u9245\u9274\u948E\u9491\u9496\u9498\u94B5\u94BB\u94CF\u94DA\u94E6\u94FB\u9508\u950F\u951C\u9520\u9528\u9533\u953D\u9543\u9548\u9555\u955A\u9560\u9562\u956E\u9574\u95EC\u95F2\u95FF\u9607\u9613\u9618\u961B\u9655\u97B4\u97E8\u988B\u988E\u9892\u9895\u9899\u98A3\u98CF\u98D0\u98D4\u98D6\u98D7\u9964\u9965\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u998C\u998E\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9C7D\u9C7E\u9C80\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE\u9CBF\u9CC0\u9CC1\u9CC2\u9CC8\u9CC9\u9CD1\u9CD2\u9CDB\u9CE0\u9CE1\u9CE3\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E47\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6F\u9E72\u9E74\u9EE1\u9F0C\u9F17\u9F81\u9F82\u5FD7\u5236\u54A8\u53EA\u7CFB\u677E\u5C1D\u9762\u5E72\u62FC\u6076\u8D5E\u53D1\u50F5\u81F4\u5978\u83B7\u7EC3\u56DE\u7CFB\u8FF9\u53EA\u8F9F\u677F\u4F60"}function KV(){return"\u9312\u769A\u85F9\u7919\u611B\u566F\u5B21\u74A6\u66D6\u9744\u8AF3\u92A8\u9D6A\u9AAF\u8956\u5967\u5ABC\u9A41\u9C32\u58E9\u7F77\u9200\u64FA\u6557\u5504\u9812\u8FA6\u7D46\u9211\u5E6B\u7D81\u938A\u8B17\u525D\u98FD\u5BF6\u5831\u9B91\u9D07\u9F59\u8F29\u8C9D\u92C7\u72FD\u5099\u618A\u9D6F\u8CC1\u931B\u7E43\u7B46\u7562\u6583\u5E63\u9589\u84FD\u55F6\u6F77\u924D\u7BF3\u8E55\u908A\u7DE8\u8CB6\u8B8A\u8FAF\u8FAE\u8290\u7DF6\u7C69\u6A19\u9A43\u98AE\u98C6\u93E2\u9463\u9C3E\u9C49\u5225\u765F\u7015\u6FF1\u8CD3\u64EF\u5110\u7E7D\u6AB3\u6BAF\u81CF\u944C\u9AD5\u9B22\u9905\u7A1F\u64A5\u7F3D\u9251\u99C1\u9911\u9238\u9D53\u88DC\u923D\u8CA1\u53C3\u8836\u6B98\u615A\u6158\u71E6\u9A42\u9EF2\u84BC\u8259\u5009\u6EC4\u5EC1\u5074\u518A\u6E2C\u60FB\u5C64\u8A6B\u9364\u5115\u91F5\u6519\u647B\u87EC\u995E\u8B92\u7E8F\u93DF\u7522\u95E1\u986B\u56C5\u8AC2\u8B96\u8546\u61FA\u5B0B\u9A4F\u8998\u79AA\u9414\u5834\u5617\u9577\u511F\u8178\u5EE0\u66A2\u5000\u8407\u60B5\u95B6\u9BE7\u9214\u8ECA\u5FB9\u7868\u5875\u9673\u896F\u5096\u8AF6\u6AEC\u78E3\u9F54\u6490\u7A31\u61F2\u8AA0\u9A01\u68D6\u6A89\u92EE\u943A\u7661\u9072\u99B3\u6065\u9F52\u71BE\u98ED\u9D1F\u6C96\u885D\u87F2\u5BF5\u9283\u7587\u8E8A\u7C4C\u7DA2\u5114\u5E6C\u8B8E\u6AE5\u5EDA\u92E4\u96DB\u790E\u5132\u89F8\u8655\u82BB\u7D40\u8E95\u50B3\u91E7\u7621\u95D6\u5275\u6134\u9318\u7D9E\u7D14\u9D89\u7DBD\u8F1F\u9F6A\u8FAD\u8A5E\u8CDC\u9DBF\u8070\u8525\u56EA\u5F9E\u53E2\u84EF\u9A44\u6A05\u6E4A\u8F33\u8EA5\u7AC4\u651B\u932F\u92BC\u9E7A\u9054\u5660\u97C3\u5E36\u8CB8\u99D8\u7D3F\u64D4\u55AE\u9132\u64A3\u81BD\u619A\u8A95\u5F48\u6BAB\u8CE7\u7649\u7C1E\u7576\u64CB\u9EE8\u8569\u6A94\u8B9C\u78AD\u8960\u6417\u5CF6\u79B1\u5C0E\u76DC\u71FE\u71C8\u9127\u9419\u6575\u6ECC\u905E\u7DE0\u7CF4\u8A46\u8AE6\u7D88\u89BF\u93D1\u985B\u9EDE\u588A\u96FB\u5DD4\u923F\u7672\u91E3\u8ABF\u929A\u9BDB\u8ADC\u758A\u9C08\u91D8\u9802\u9320\u8A02\u92CC\u4E1F\u92A9\u6771\u52D5\u68DF\u51CD\u5D20\u9D87\u7AC7\u72A2\u7368\u8B80\u8CED\u934D\u7006\u6ADD\u7258\u7BE4\u9EF7\u935B\u65B7\u7DDE\u7C6A\u514C\u968A\u5C0D\u61DF\u9413\u5678\u9813\u920D\u71C9\u8E89\u596A\u58AE\u9438\u9D5D\u984D\u8A1B\u60E1\u9913\u8AE4\u580A\u95BC\u8EDB\u92E8\u9354\u9D9A\u984E\u9853\u9C77\u8A92\u5152\u723E\u990C\u8CB3\u9087\u927A\u9D2F\u9B9E\u767C\u7F70\u95A5\u743A\u792C\u91E9\u7169\u8CA9\u98EF\u8A2A\u7D21\u9201\u9B74\u98DB\u8AB9\u5EE2\u8CBB\u7DCB\u9428\u9BE1\u7D1B\u58B3\u596E\u61A4\u7CDE\u50E8\u8C50\u6953\u92D2\u98A8\u760B\u99AE\u7E2B\u8AF7\u9CF3\u7043\u819A\u8F3B\u64AB\u8F14\u8CE6\u5FA9\u8CA0\u8A03\u5A66\u7E1B\u9CE7\u99D9\u7D31\u7D3C\u8CFB\u9EA9\u9B92\u9C12\u91D3\u8A72\u9223\u84CB\u8CC5\u687F\u8D95\u7A08\u8D1B\u5C37\u641F\u7D3A\u5CA1\u525B\u92FC\u7DB1\u5D17\u6207\u93AC\u776A\u8AA5\u7E1E\u92EF\u64F1\u9D3F\u95A3\u927B\u500B\u7D07\u9398\u6F41\u7D66\u4E99\u8CE1\u7D86\u9BC1\u9F94\u5BAE\u978F\u8CA2\u9264\u6E9D\u830D\u69CB\u8CFC\u5920\u8A6C\u7DF1\u89AF\u8831\u9867\u8A41\u8F42\u9237\u932E\u9D23\u9D60\u9DBB\u526E\u639B\u9D30\u6451\u95DC\u89C0\u9928\u6163\u8CAB\u8A7F\u645C\u9E1B\u9C25\u5EE3\u7377\u898F\u6B78\u9F9C\u95A8\u8ECC\u8A6D\u8CB4\u528A\u532D\u528C\u5AAF\u6A9C\u9BAD\u9C56\u8F25\u6EFE\u889E\u7DC4\u9BC0\u934B\u570B\u904E\u581D\u54BC\u5E57\u69E8\u87C8\u927F\u99ED\u97D3\u6F22\u95DE\u7D4E\u9821\u865F\u705D\u9865\u95A1\u9DB4\u8CC0\u8A36\u95D4\u8823\u6A6B\u8F5F\u9D3B\u7D05\u9ECC\u8A0C\u8452\u958E\u9C5F\u58FA\u8B77\u6EEC\u6236\u6EF8\u9D98\u5629\u83EF\u756B\u5283\u8A71\u9A4A\u6A3A\u93F5\u61F7\u58DE\u6B61\u74B0\u9084\u7DE9\u63DB\u559A\u7613\u7165\u6E19\u5950\u7E6F\u9370\u9BC7\u9EC3\u8B0A\u9C09\u63EE\u8F1D\u6BC0\u8CC4\u7A62\u6703\u71F4\u532F\u8AF1\u8AA8\u7E6A\u8A7C\u8588\u5666\u6FAE\u7E62\u743F\u6689\u8477\u6E3E\u8AE2\u991B\u95BD\u7372\u8CA8\u798D\u9225\u944A\u64CA\u6A5F\u7A4D\u9951\u8DE1\u8B4F\u96DE\u7E3E\u7DDD\u6975\u8F2F\u7D1A\u64E0\u5E7E\u858A\u5291\u6FDF\u8A08\u8A18\u969B\u7E7C\u7D00\u8A10\u8A70\u85BA\u5630\u568C\u9A65\u74A3\u89AC\u9F4F\u78EF\u7F88\u8806\u8E8B\u973D\u9C6D\u9BFD\u593E\u83A2\u9830\u8CC8\u9240\u50F9\u99D5\u90DF\u6D79\u92CF\u93B5\u87EF\u6BB2\u76E3\u5805\u7B8B\u9593\u8271\u7DD8\u7E6D\u6AA2\u583F\u9E7C\u63C0\u64BF\u7C21\u5109\u6E1B\u85A6\u6ABB\u9452\u8E10\u8CE4\u898B\u9375\u8266\u528D\u991E\u6F38\u6FFA\u6F97\u8AEB\u7E11\u6214\u6229\u77BC\u9DBC\u7B67\u9C39\u97C9\u5C07\u6F3F\u8523\u69F3\u734E\u8B1B\u91AC\u7D73\u97C1\u81A0\u6F86\u9A55\u5B0C\u652A\u9278\u77EF\u50E5\u8173\u9903\u7E73\u7D5E\u8F4E\u8F03\u649F\u5DA0\u9DE6\u9BAB\u968E\u7BC0\u6F54\u7D50\u8AA1\u5C46\u7664\u981C\u9B9A\u7DCA\u9326\u50C5\u8B39\u9032\u6649\u71FC\u76E1\u52C1\u834A\u8396\u5DF9\u85CE\u9949\u7E09\u8D10\u89B2\u9BE8\u9A5A\u7D93\u9838\u975C\u93E1\u5F91\u75D9\u7AF6\u51C8\u5244\u6D87\u9015\u5F33\u811B\u975A\u7CFE\u5EC4\u820A\u9B2E\u9CE9\u9DF2\u99D2\u8209\u64DA\u92F8\u61FC\u5287\u8A4E\u5C68\u6AF8\u98B6\u9245\u92E6\u7AB6\u9F5F\u9D51\u7D79\u9308\u942B\u96CB\u89BA\u6C7A\u7D55\u8B4E\u73A8\u921E\u8ECD\u99FF\u76B8\u958B\u51F1\u5274\u584F\u613E\u6137\u93A7\u9347\u9F95\u958C\u9227\u92AC\u9846\u6BBC\u8AB2\u9A0D\u7DD9\u8EFB\u9233\u9301\u9837\u58BE\u61C7\u9F66\u93D7\u6473\u5EAB\u8932\u56B3\u584A\u5108\u9136\u5672\u81BE\u5BEC\u736A\u9AD6\u7926\u66E0\u6CC1\u8A86\u8A91\u913A\u58D9\u7E8A\u8CBA\u8667\u5DCB\u7ABA\u994B\u6F70\u5331\u8562\u6192\u8075\u7C23\u95AB\u9315\u9BE4\u64F4\u95CA\u8810\u881F\u81D8\u840A\u4F86\u8CF4\u5D0D\u5FA0\u6DF6\u7028\u8CDA\u775E\u9338\u7669\u7C5F\u85CD\u6B04\u6514\u7C43\u95CC\u862D\u703E\u8B95\u652C\u89BD\u61F6\u7E9C\u721B\u6FEB\u5D50\u6B16\u6595\u946D\u8964\u746F\u95AC\u92C3\u6488\u52DE\u6F87\u562E\u5D97\u92A0\u9412\u7646\u6A02\u9C33\u9433\u58D8\u985E\u6DDA\u8A84\u7E32\u7C6C\u8C8D\u96E2\u9BC9\u79AE\u9E97\u53B2\u52F5\u792B\u6B77\u701D\u96B8\u5137\u9148\u58E2\u85F6\u849E\u863A\u56A6\u9090\u9A6A\u7E2D\u6AEA\u6ADF\u8F62\u792A\u92F0\u9E1D\u7658\u7CF2\u8E92\u9742\u9C7A\u9C67\u5006\u806F\u84EE\u9023\u942E\u6190\u6F23\u7C3E\u6582\u81C9\u93C8\u6200\u7149\u7DF4\u861E\u5969\u7032\u7489\u6BAE\u8933\u895D\u9C31\u7CE7\u6DBC\u5169\u8F1B\u8AD2\u9B4E\u7642\u907C\u9410\u7E5A\u91D5\u9DEF\u7375\u81E8\u9130\u9C57\u51DC\u8CC3\u85FA\u5EE9\u6A81\u8F54\u8EAA\u9F61\u9234\u9748\u5DBA\u9818\u7DBE\u6B1E\u87F6\u9BEA\u993E\u5289\u700F\u9A2E\u7DB9\u93A6\u9DDA\u9F8D\u807E\u56A8\u7C60\u58DF\u650F\u96B4\u8622\u7027\u74CF\u6AF3\u6727\u7931\u6A13\u5A41\u645F\u7C0D\u50C2\u851E\u560D\u5D81\u93E4\u763A\u802C\u87BB\u9ACF\u8606\u76E7\u9871\u5EEC\u7210\u64C4\u9E75\u865C\u9B6F\u8CC2\u797F\u9304\u9678\u58DA\u64FC\u5695\u95AD\u7018\u6DE5\u6AE8\u6AD3\u8F64\u8F05\u8F46\u6C0C\u81DA\u9E15\u9DFA\u826B\u9C78\u5DD2\u6523\u5B7F\u7064\u4E82\u81E0\u5B4C\u6B12\u9E1E\u947E\u6384\u8F2A\u502B\u4F96\u6DEA\u7DB8\u8AD6\u5707\u863F\u7F85\u908F\u947C\u7C6E\u9A3E\u99F1\u7D61\u7296\u7380\u6FFC\u6B0F\u8161\u93CD\u9A62\u5442\u92C1\u4FB6\u5C62\u7E37\u616E\u6FFE\u7DA0\u6ADA\u8938\u92DD\u5638\u5ABD\u746A\u78BC\u879E\u99AC\u7F75\u55CE\u561C\u5B24\u69AA\u8CB7\u9EA5\u8CE3\u9081\u8108\u52F1\u779E\u9945\u883B\u6EFF\u8B3E\u7E35\u93DD\u9859\u9C3B\u8C93\u9328\u925A\u8CBF\u9EBC\u6C92\u9382\u9580\u60B6\u5011\u636B\u71DC\u61E3\u9346\u9333\u5922\u7787\u8B0E\u5F4C\u8993\u51AA\u7F8B\u8B10\u737C\u79B0\u7DBF\u7DEC\u6FA0\u9766\u9EFD\u5EDF\u7DF2\u7E46\u6EC5\u61AB\u95A9\u9594\u7DE1\u9CF4\u9298\u8B2C\u8B28\u9A40\u9943\u6B7F\u93CC\u8B00\u755D\u926C\u5436\u9209\u7D0D\u96E3\u6493\u8166\u60F1\u9B27\u9403\u8A25\u9912\u5167\u64EC\u81A9\u922E\u9BE2\u6506\u8F26\u9BF0\u91C0\u9CE5\u8526\u88CA\u8076\u5699\u9477\u93B3\u9689\u8617\u56C1\u9862\u8EA1\u6AB8\u7370\u5BE7\u64F0\u6FD8\u82E7\u5680\u8079\u9215\u7D10\u81BF\u6FC3\u8FB2\u5102\u5665\u99D1\u91F9\u8AFE\u513A\u7627\u6B50\u9DD7\u6BC6\u5614\u6F1A\u8B33\u616A\u750C\u76E4\u8E63\u9F90\u62CB\u76B0\u8CE0\u8F61\u5674\u9D6C\u7D15\u7F86\u9239\u9A19\u8ADE\u99E2\u98C4\u7E39\u983B\u8CA7\u5B2A\u860B\u6191\u8A55\u6F51\u9817\u91D9\u64B2\u92EA\u6A38\u8B5C\u93F7\u9420\u68F2\u81CD\u9F4A\u9A0E\u8C48\u555F\u6C23\u68C4\u8A16\u8604\u9A0F\u7DBA\u69BF\u78E7\u980E\u980F\u9C2D\u727D\u91EC\u925B\u9077\u7C3D\u8B19\u9322\u9257\u6F5B\u6DFA\u8B74\u5879\u50C9\u8541\u6173\u9A2B\u7E7E\u69E7\u9210\u69CD\u55C6\u58BB\u8594\u5F37\u6436\u5B19\u6AA3\u6227\u7197\u9306\u93D8\u93F9\u7FA5\u8E4C\u936C\u6A4B\u55AC\u50D1\u7FF9\u7AC5\u8A9A\u8B59\u854E\u7E70\u78FD\u8E7A\u7ACA\u611C\u9365\u7BCB\u6B3D\u89AA\u5BE2\u92DF\u8F15\u6C2B\u50BE\u9803\u8ACB\u6176\u64B3\u9BD6\u74CA\u7AAE\u7162\u86FA\u5DF0\u8CD5\u87E3\u9C0D\u8DA8\u5340\u8EC0\u9A45\u9F72\u8A58\u5D87\u95C3\u89B7\u9D1D\u9874\u6B0A\u52F8\u8A6E\u7DA3\u8F07\u9293\u537B\u9D72\u78BA\u95CB\u95D5\u6128\u8B93\u9952\u64FE\u7E5E\u8558\u5B08\u6A48\u71B1\u97CC\u8A8D\u7D09\u98EA\u8ED4\u69AE\u7D68\u5DB8\u8811\u7E1F\u92A3\u9870\u8EDF\u92B3\u8706\u958F\u6F64\u7051\u85A9\u98AF\u9C13\u8CFD\u5098\u6BFF\u7CDD\u55AA\u9A37\u6383\u7E45\u6F80\u55C7\u92AB\u7A61\u6BBA\u524E\u7D17\u93A9\u9BCA\u7BE9\u66EC\u91C3\u522A\u9583\u965C\u8D0D\u7E55\u8A15\u59CD\u9A38\u91E4\u9C54\u5891\u50B7\u8CDE\u5770\u6BA4\u89F4\u71D2\u7D39\u8CD2\u651D\u61FE\u8A2D\u5399\u7044\u756C\u7D33\u5BE9\u5B38\u814E\u6EF2\u8A75\u8AD7\u700B\u8072\u7E69\u52DD\u5E2B\u7345\u6FD5\u8A69\u6642\u8755\u5BE6\u8B58\u99DB\u52E2\u9069\u91CB\u98FE\u8996\u8A66\u8B1A\u5852\u8494\u5F12\u8EFE\u8CB0\u9230\u9C23\u58FD\u7378\u7DAC\u6A1E\u8F38\u66F8\u8D16\u5C6C\u8853\u6A39\u8C4E\u6578\u6504\u7D13\u5E25\u9582\u96D9\u8AB0\u7A05\u9806\u8AAA\u78A9\u720D\u9460\u7D72\u98FC\u5EDD\u99DF\u7DE6\u9376\u9DE5\u8073\u616B\u980C\u8A1F\u8AA6\u64FB\u85EA\u993F\u98BC\u93AA\u8607\u8A34\u8085\u8B16\u7A4C\u96D6\u96A8\u7D8F\u6B72\u8AB6\u5B6B\u640D\u7B4D\u84C0\u733B\u7E2E\u7463\u9396\u55E9\u8127\u737A\u64BB\u95E5\u9248\u9C28\u81FA\u614B\u9226\u9B90\u6524\u8CAA\u7671\u7058\u58C7\u8B5A\u8AC7\u5606\u66C7\u926D\u931F\u9807\u6E6F\u71D9\u513B\u9933\u940B\u93DC\u6FE4\u7D73\u8A0E\u97DC\u92F1\u9A30\u8B04\u92BB\u984C\u9AD4\u5C5C\u7DF9\u9D5C\u95D0\u689D\u7CF6\u9F60\u9C37\u8CBC\u9435\u5EF3\u807D\u70F4\u9285\u7D71\u615F\u982D\u9204\u79BF\u5716\u91F7\u5718\u6476\u9839\u86FB\u98E9\u812B\u9D15\u99B1\u99DD\u6A62\u7C5C\u9F09\u896A\u5AA7\u8183\u5F4E\u7063\u9811\u842C\u7D08\u7DB0\u7DB2\u8F1E\u97CB\u9055\u570D\u70BA\u6FF0\u7DAD\u8466\u5049\u507D\u7DEF\u8B02\u885B\u8AC9\u5E43\u95C8\u6E88\u6F7F\u744B\u97D9\u7152\u9BAA\u6EAB\u805E\u7D0B\u7A69\u554F\u95BF\u7515\u64BE\u8778\u6E26\u7AA9\u81E5\u8435\u9F77\u55DA\u93A2\u70CF\u8AA3\u7121\u856A\u5433\u5862\u9727\u52D9\u8AA4\u9114\u5EE1\u61AE\u5AF5\u9A16\u9D61\u9DA9\u932B\u72A7\u8972\u7FD2\u9291\u6232\u7D30\u993C\u9B29\u74BD\u89A1\u8766\u8F44\u5CFD\u4FE0\u72F9\u5EC8\u5687\u7864\u9BAE\u7E96\u8CE2\u929C\u9591\u986F\u96AA\u73FE\u737B\u7E23\u9921\u7FA8\u61B2\u7DDA\u83A7\u859F\u861A\u5CF4\u736B\u5AFB\u9DF4\u7647\u8814\u79C8\u8E9A\u5EC2\u9472\u9109\u8A73\u97FF\u9805\u858C\u9909\u9A64\u7DD7\u9957\u856D\u56C2\u92B7\u66C9\u562F\u5635\u701F\u9A4D\u7D83\u689F\u7C2B\u5354\u633E\u651C\u8105\u8AE7\u5BEB\u7009\u8B1D\u893B\u64F7\u7D32\u7E88\u92C5\u91C1\u8208\u9658\u6ECE\u5147\u6D36\u92B9\u7E61\u9948\u9D42\u865B\u5653\u9808\u8A31\u6558\u7DD2\u7E8C\u8A61\u980A\u8ED2\u61F8\u9078\u766C\u7D62\u8AFC\u9249\u93C7\u5B78\u8B14\u6FA9\u9C48\u52DB\u8A62\u5C0B\u99B4\u8A13\u8A0A\u905C\u5864\u6F6F\u9C58\u58D3\u9D09\u9D28\u555E\u4E9E\u8A1D\u57E1\u5A6D\u690F\u6C2C\u95B9\u7159\u9E7D\u56B4\u5DD6\u984F\u95BB\u8277\u53AD\u786F\u5F65\u8AFA\u9A57\u53B4\u8D17\u513C\u5157\u8B9E\u61E8\u9586\u91C5\u9B58\u995C\u9F34\u9D26\u694A\u63DA\u760D\u967D\u7662\u990A\u6A23\u716C\u7464\u6416\u582F\u9059\u7AAF\u8B20\u85E5\u8EFA\u9DC2\u9C29\u723A\u9801\u696D\u8449\u9768\u8B01\u9134\u66C4\u71C1\u91AB\u92A5\u9824\u907A\u5100\u87FB\u85DD\u5104\u61B6\u7FA9\u8A63\u8B70\u8ABC\u8B6F\u7570\u7E79\u8A52\u56C8\u5DA7\u98F4\u61CC\u9A5B\u7E0A\u8EFC\u8CBD\u91D4\u93B0\u943F\u761E\u8264\u852D\u9670\u9280\u98F2\u96B1\u92A6\u766E\u6AFB\u5B30\u9DF9\u61C9\u7E93\u7469\u87A2\u71DF\u7192\u8805\u8D0F\u7A4E\u584B\u9DAF\u7E08\u93A3\u6516\u56B6\u7005\u7020\u74D4\u9E1A\u766D\u9826\u7F4C\u55B2\u64C1\u50AD\u7670\u8E34\u8A60\u93DE\u512A\u6182\u90F5\u923E\u7336\u8A98\u8555\u92AA\u9B77\u8F3F\u9B5A\u6F01\u5A1B\u8207\u5DBC\u8A9E\u7344\u8B7D\u9810\u99AD\u50B4\u4FC1\u8ADB\u8AED\u8577\u5D33\u98EB\u95BE\u5AD7\u7D06\u89A6\u6B5F\u923A\u9D52\u9DF8\u9F6C\u9D1B\u6DF5\u8F45\u5712\u54E1\u5713\u7DE3\u9060\u6ADE\u9CF6\u9EFF\u7D04\u8E8D\u9470\u7CB5\u6085\u95B1\u925E\u9116\u52FB\u9695\u904B\u860A\u919E\u6688\u97FB\u9106\u8553\u60F2\u614D\u7D1C\u97DE\u6B9E\u6C33\u96DC\u707D\u8F09\u6522\u66AB\u8D0A\u74DA\u8DB2\u93E8\u8D13\u81DF\u99D4\u947F\u68D7\u8CAC\u64C7\u5247\u6FA4\u8CFE\u5616\u5E58\u7C00\u8CCA\u8B56\u8D08\u7D9C\u7E52\u8ECB\u9358\u9598\u67F5\u8A50\u9F4B\u50B5\u6C08\u76DE\u65AC\u8F3E\u5D84\u68E7\u6230\u7DBB\u8B6B\u5F35\u6F32\u5E33\u8CEC\u8139\u8D99\u8A54\u91D7\u87C4\u8F4D\u937A\u9019\u8B2B\u8F12\u9DD3\u8C9E\u91DD\u5075\u8A3A\u93AE\u9663\u6E5E\u7E1D\u6968\u8EEB\u8CD1\u798E\u9D06\u6399\u775C\u7319\u722D\u5E40\u7665\u912D\u8B49\u8ACD\u5D22\u9266\u931A\u7B8F\u7E54\u8077\u57F7\u7D19\u646F\u64F2\u5E5F\u8CEA\u6EEF\u9A2D\u6ADB\u6894\u8EF9\u8F0A\u8D04\u9DD9\u8784\u7E36\u8E93\u8E91\u89F6\u9418\u7D42\u7A2E\u816B\u773E\u937E\u8B05\u8EF8\u76BA\u665D\u9A5F\u7D02\u7E10\u8C6C\u8AF8\u8A85\u71ED\u77DA\u56D1\u8CAF\u9444\u99D0\u4F47\u6AE7\u9296\u5C08\u78DA\u8F49\u8CFA\u56C0\u994C\u9873\u6A01\u838A\u88DD\u599D\u58EF\u72C0\u9310\u8D05\u589C\u7DB4\u9A05\u7E0B\u8AC4\u6E96\u8457\u6FC1\u8AD1\u9432\u8332\u8CC7\u6F2C\u8AEE\u7DC7\u8F1C\u8CB2\u7725\u9319\u9F5C\u9BD4\u8E64\u7E3D\u7E31\u50AF\u9112\u8ACF\u9A36\u9BEB\u8A5B\u7D44\u93C3\u9246\u7E98\u8EA6\u9C52\u7FFA\u4E26\u8514\u6C88\u919C\u6FB1\u53E0\u9B25\u7BC4\u5E79\u81EF\u77FD\u6AC3\u5F8C\u5925\u7A2D\u5091\u8A23\u8A87\u88E1\u88CF\u6DE9\u9EBD\u9EF4\u649A\u6DD2\u6261\u8056\u5C4D\u64E1\u5857\u7AAA\u9935\u6C59\u9341\u9E79\u880D\u5F5C\u6E67\u904A\u7C72\u79A6\u9858\u5DBD\u96F2\u7AC8\u7D2E\u5284\u7BC9\u65BC\u8A8C\u8A3B\u96D5\u8A01\u8B7E\u90E4\u731B\u6C39\u962A\u58DF\u5816\u57B5\u588A\u6ABE\u8552\u8464\u84E7\u8493\u83C7\u69C1\u6463\u54A4\u551A\u54E2\u565D\u5645\u6485\u5288\u8B14\u8946\u5DB4\u810A\u4EFF\u50E5\u7341\u9E85\u9918\u9937\u994A\u9962\u695E\u6035\u61CD\u723F\u6F35\u7069\u6DF7\u6FEB\u7026\u6DE1\u5BE7\u7CF8\u7D5D\u7DD4\u7449\u6898\u68EC\u6848\u6A70\u6AEB\u8EF2\u8EE4\u8CEB\u8181\u8156\u98C8\u7CCA\u7146\u6E9C\u6E63\u6E3A\u78B8\u6EFE\u7798\u9208\u9255\u92E3\u92B1\u92E5\u92F6\u9426\u9427\u9369\u9340\u9343\u9307\u9384\u9387\u93BF\u941D\u9465\u9479\u9454\u7A6D\u9D93\u9DA5\u9E0C\u7667\u5C59\u7602\u81D2\u8947\u7E48\u802E\u986C\u87CE\u9EAF\u9B81\u9B83\u9B8E\u9BD7\u9BDD\u9BF4\u9C5D\u9BFF\u9C20\u9C35\u9C45\u97BD\u97DD\u9F47\u4E2C\u7232\u56B2\u8846\u50DE\u9918\u51A2\u6DE8\u51CC\u51FC\u5257\u52F3\u52D0\u52E9\u6EF7\u9749\u9746\u5553\u5494\u5412\u54B4\u54CC\u8B41\u55CA\u5562\u5523\u553F\u9F67\u56C9\u563D\u5475\u567C\u56AF\u58E0\u57A7\u58B6\u58CB\u58CE\u57DD\u58EA\u7246\u58FC\u5B00\u59DC\u5AFA\u5AFF\u5C53\u5D2C\u5DA8\u5DA2\u5DAE\u5D94\u5D5B\u5D74\u5ECE\u5F60\u5FA1\u610D\u6196\u61B7\u624E\u6266\u6397\u648F\u637B\u63F8\u6698\u66E8\u672D\u684A\u6AAE\u68F6\u6AFA\u6A9F\u6A90\u6C61\u6C93\u6E22\u6F59\u6CB5\u6EAE\u6EFB\u6FDC\u6D8C\u6EB3\u6EBC\u6F0A\u6FA6\u6F24\u7145\u7173\u7198\u729B\u729F\u72CD\u736E\u875F\u74B5\u7452\u7472\u73C9\u73CF\u74AB\u74A1\u7487\u7572\u75FE\u762E\u763B\u766F\u77D3\u7740\u785C\u7845\u78D1\u7904\u7906\u78B9\u78D9\u7995\u7A60\u7C39\u7C64\u7C59\u9931\u7CF9\u7D18\u7D1D\u7D35\u7D16\u7D70\u7D8C\u7D5B\u7DD3\u979D\u7DAF\u7E15\u7DDA\u7E17\u7E6E\u7FFD\u7FEC\u80B7\u9AD2\u9183\u8195\u9F76\u81E2\u8C54\u8279\u8598\u839C\u84F4\u8600\u85C1\u866F\u87BF\u8828\u5ACB\u8918\u894F\u890C\u8949\u8941\u8974\u898E\u89A5\u8B8B\u8A12\u8A29\u8A57\u8A56\u8B78\u8ADD\u8AE1\u8C37\u8C76\u8C9F\u9F4E\u8D14\u8CD9\u8CF5\u8D07\u8D6C\u8DD6\u8E82\u8E0A\u8ED1\u8F08\u8F2C\u8F40\u9B31\u90C4\u91B1\u9245\u9451\u91FA\u9212\u935A\u9203\u9262\u947D\u9276\u928D\u929B\u92D9\u93FD\u9417\u9321\u9329\u6774\u9348\u9360\u93A1\u939B\u9394\u93F0\u93D0\u9481\u9436\u945E\u9588\u9592\u95D3\u95CD\u95E0\u95D2\u95E4\u965D\u97B4\u97CD\u9832\u71B2\u982E\u9834\u9852\u7E87\u98BA\u98AD\u98B8\u98BB\u98C0\u98E3\u98E2\u98E5\u98FF\u9904\u990E\u990F\u9916\u9915\u991C\u9936\u9941\u993A\u99B9\u99F0\u9A6B\u9A02\u99F8\u9A0C\u9A4C\u9A24\u9A66\u9B5B\u9B62\u9B68\u9B7A\u9B8B\u9B93\u9B8A\u9B8D\u9BB3\u9BA6\u9C02\u9B9C\u9C60\u9BBA\u9BB6\u9BD2\u9BD5\u9C3A\u9C0F\u9C68\u9BF7\u9C2E\u9C03\u9C01\u9C42\u9C1F\u9C1C\u9C3C\u9C6F\u9C64\u9C63\u9CF2\u9DAC\u9D1E\u9D12\u9DFD\u9D34\u9D43\u9D50\u9DF3\u9D7E\u9D6E\u9D8A\u9D77\u9DEB\u9DA1\u9DCA\u9DB2\u9DB9\u9DBA\u9DC1\u9DD6\u9E07\u9E0F\u9E18\u9EF6\u9F02\u9780\u9F55\u9F57\u5FD7\u5236\u8AEE\u53EA\u7CFB\u9B06\u5690\u9762\u4E7E\u62FC\u5641\u8B9A\u9AEE\u6BAD\u7DFB\u59E6\u7A6B\u934A\u8FF4\u4FC2\u8E5F\u96BB\u95E2\u95C6\u59B3"}function No(t){let e="";for(let r=0;r{wir=new Map([["\u5403","\u5403"],["\u6CE8","\u6CE8"]])});function ts(t){let e;if(typeof t=="string")e=t;else if(Array.isArray(t))e=JSON.stringify(t);else if(typeof t=="object")e=JSON.stringify(t);else{_("error","[Utils] [Common] Unsupported data type");return}_("info","[Utils] [Common]",e.slice(0,200))}function W0(t){let e=t.match(/\((\d{4})\)/);return e?parseInt(e[1]):null}function tg(t){if(/^\d+$/.test(t))return Number(t);let e={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u58F9:1,\u8CB3:2,\u53C3:3,\u8086:4,\u4F0D:5,\u9678:6,\u67D2:7,\u634C:8,\u7396:9},r={\u5341:10,\u767E:100,\u5343:1e3,\u62FE:10,\u4F70:100,\u4EDF:1e3},n=0,s=0,i=1;for(let a=0;a=i?n=s*c:n+=s*c,i=c,s=0}}return s>0&&(n+=s),n}function k8e(t){if(!t||typeof t!="string")return{cleanFileName:"",preferredPlatform:""};let e=t.indexOf("@");if(e===-1)return{cleanFileName:t.trim(),preferredPlatform:""};let r=t.substring(0,e).trim(),n=t.substring(e+1).trim(),s=n.match(/^(\w+)\s+(S\d+E\d+)$/);if(s){let i=s[1],a=s[2];return{cleanFileName:`${r} ${a}`,preferredPlatform:VV(i)}}else{let i=r.match(/^(.+?)\s+(S\d+E\d+)$/);if(i){let a=i[1],o=i[2];return{cleanFileName:`${a} ${o}`,preferredPlatform:VV(n)}}else return{cleanFileName:r,preferredPlatform:VV(n)}}}function VV(t){if(!t||typeof t!="string")return"";let e=t.trim();return O.allowedPlatforms.includes(e)?e:""}function D8e(t){if(!t)return[...O.platformOrderArr];if(!O.allowedPlatforms.includes(t))return _("warn",`[Utils] [Common] Invalid platform: ${t}, using default order`),[...O.platformOrderArr];let e=[t];for(let r of O.platformOrderArr)r!==t&&r!==null&&e.push(r);return e.push(null),e}function B8e(t){return t?String(t).replace(/[\u200B-\u200F\uFEFF]/g,"").trim():""}function Fr(t){return t?String(t).replace(/[^\u4e00-\u9fa5\u3400-\u4DBF\u{20000}-\u{2EE5F}\u{30000}-\u{323AF}\u3040-\u30ff\uFF65-\uFF9F\uAC00-\uD7AFa-zA-Z0-9\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\u2160-\u217F\u0400-\u04FF\u00C0-\u024F\u0370-\u03FF]/gu,""):""}function $0(t,e){if(!t||!e)return!1;let r=Fr(t),n=Fr(e);if(r===n)return!0;let s=[" ","(","\uFF08",":","\uFF1A","-","\u2014","\xB7","\u7B2C","S","s","\u5E74\u756A","\u5408\u96C6"];for(let i of s)if(r.startsWith(n+i))return!0;return!1}function Wt(t){if(!t)return null;let e=t.match(/(?:第\s*([0-9一二三四五六七八九十百千万]+)\s*[季期部])|(?:S(?:eason)?\s*(\d+))|(?:Part\s*(\d+))/i);if(e){let r=e[1]||e[2]||e[3];if(r)return tg(r)}return null}function yt(t,e,r=null){if(O.strictTitleMatch)return $0(t,e);let n=Fr(t).toLowerCase(),i=[Fr(e).toLowerCase()];try{i=[...new Set([e,Qt(e),No(e)])].map(o=>Fr(o).toLowerCase()).filter(Boolean)}catch{}if(i.some(o=>n.includes(o)))return!0;let a=r!==null?r:Wt(e);if(a!==null){let o=Wt(t);if(a>1){if((o||1)!==a)return!1}else if(a===1&&o!==null&&o!==1)return!1}return i.some(o=>{if(Math.abs(n.length-o.length)>Math.max(n.length,o.length)*.7||/^[a-zA-Z0-9]+$/.test(o))return!1;let c=0,u=0;for(let l of o){let d=n.indexOf(l,u);d!==-1&&(c++,u=d+1)}return c/o.length>.8})}function et(t,e){let r=t?.constructor?.name;if(e==="array"){if(!Array.isArray(t))throw new TypeError(`${t} \u5FC5\u987B\u662F\u4E00\u4E2A\u6570\u7EC4\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(e==="boolean"){if(typeof t!="boolean"&&typeof t!="number")throw new TypeError(`${t} \u5FC5\u987B\u662F boolean \u6216 number\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(typeof t!==e)throw new TypeError(`${t} \u5FC5\u987B\u662F ${e}\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}function Ct(t){if(!t)return{season:null,baseTitle:null};let e=t.match(/^(.*?)\(\d{4}\)/),r=e?e[1].trim():t.split("(")[0].trim(),n=Fr(r),s=n.match(/第\s*([0-9一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)\s*[季期部]/);if(s)return{season:tg(s[1]),baseTitle:n.replace(s[0],"").trim()};let i=n.match(/(?:S(?:eason)?|Season)\s*(\d+)/i);if(i)return{season:parseInt(i[1],10),baseTitle:n.replace(i[0],"").trim()};let a=n.match(/Part\s*(\d+)/i);if(a)return{season:parseInt(a[1],10),baseTitle:n.replace(a[0],"").trim()};let o=n.match(/(?:^|\s|[^\d])(\d{1,2})$/);if(o)return{season:parseInt(o[1],10),baseTitle:n.slice(0,n.lastIndexOf(o[1])).trim()};let c=n.match(/([一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)$/);return c?{season:tg(c[1]),baseTitle:n.replace(c[0],"").trim()}:{season:null,baseTitle:n}}function uf(t){if(!t)return null;let e=t.match(/第(\d+)集/);if(e)return parseInt(e[1],10);let r=t.match(/[Ee][Pp]?(\d+)/);if(r)return parseInt(r[1],10);let n=t.match(/(?:^|\s)(\d+)(?:\s|$)/);return n?parseInt(n[1],10):null}function YV(t,e){let{season:r,baseTitle:n}=Ct(t),s=uf(e);return{baseTitle:n,season:r,episode:s}}var rg,zV,hn=lr(()=>{Ot();_t();so();rg=t=>{let e=t.match(/【(.*?)】/);return e?e[1]:null},zV=t=>t.split("(")[0].trim()});var F0,DB,BB,LB,MB,JV,XV,WB,St,fb,hs=lr(()=>{hn();F0=class t{constructor({animeId:e=111,bangumiId:r="",animeTitle:n="",type:s="",typeDescription:i="",imageUrl:a="",startDate:o="",episodeCount:c=1,rating:u=0,isFavorited:l=!0,source:d="",links:f=[],mergedChildren:p=[],isHiddenChild:m=!1}={}){et(e,"number"),et(r,"string"),et(n,"string"),et(s,"string","type"),et(i,"string"),et(a,"string"),et(o,"string"),et(c,"number"),et(u,"number"),et(l,"boolean"),et(d,"string"),et(f,"array"),et(p,"array"),et(m,"boolean"),this.links=f.map(h=>DB.fromJson(h)),Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,type:s,typeDescription:i,imageUrl:a,startDate:o,episodeCount:c,rating:u,isFavorited:l,source:d,mergedChildren:p,isHiddenChild:m})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.links||[]).map(n=>DB.fromJson(n));return new t({...e,links:r})}toJson(){return{...this,links:this.links.map(e=>e.toJson())}}},DB=class t{constructor({name:e="",url:r="",title:n="",id:s=10001}={}){et(e,"string"),et(r,"string"),et(n,"string"),et(s,"number"),Object.assign(this,{name:e,url:r,title:n,id:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},BB=class t{constructor({episodeId:e=10001,animeId:r=111,animeTitle:n="",episodeTitle:s="",type:i="",typeDescription:a="",shift:o=1,imageUrl:c=""}={}){et(e,"number"),et(r,"number"),et(n,"string"),et(s,"string"),et(i,"string","type"),et(a,"string"),et(o,"number"),et(c,"string"),Object.assign(this,{episodeId:e,animeId:r,animeTitle:n,episodeTitle:s,type:i,typeDescription:a,shift:o,imageUrl:c})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},LB=class{constructor({episodeId:e="",episodeTitle:r=""}={}){this.episodeId=e,this.episodeTitle=r}};LB.prototype.toJson=function(){return{episodeId:this.episodeId,episodeTitle:this.episodeTitle}};MB=class t{constructor({animeId:e=111,animeTitle:r="",type:n="",typeDescription:s="",episodes:i=[]}={}){et(e,"number"),et(r,"string"),et(n,"string"),et(s,"string"),et(i,"array"),Object.assign(this,{animeId:e,animeTitle:r,type:n,typeDescription:s,episodes:i.map(a=>new LB(a))})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this,episodes:this.episodes.map(e=>e.toJson())}}},JV=class t{constructor({id:e="",airDate:r="",name:n="",episodeCount:s=0}={}){et(e,"string"),et(r,"string"),et(n,"string"),et(s,"number"),Object.assign(this,{id:e,airDate:r,name:n,episodeCount:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},XV=class t{constructor({seasonId:e="",episodeId:r=10001,episodeTitle:n="",episodeNumber:s="",airDate:i=""}={}){et(e,"string"),et(r,"number"),et(n,"string"),et(s,"string"),et(i,"string"),Object.assign(this,{seasonId:e,episodeId:r,episodeTitle:n,episodeNumber:s,airDate:i})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},WB=class t{constructor({animeId:e=111,bangumiId:r="",animeTitle:n="",imageUrl:s="",isOnAir:i=!0,airDay:a=1,isFavorited:o=!0,rating:c=0,type:u="",typeDescription:l="",seasons:d=[],episodes:f=[]}={}){et(e,"number"),et(r,"string"),et(n,"string"),et(s,"string"),et(i,"boolean"),et(a,"number"),et(o,"boolean"),et(c,"number"),et(u,"string"),et(l,"string"),et(d,"array"),et(f,"array");let p=d.map(m=>JV.fromJson(m));Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,imageUrl:s,isOnAir:i,airDay:a,isFavorited:o,rating:c,type:u,typeDescription:l,seasons:p,episodes:f})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=e.episodes.map(n=>XV.fromJson(n));return new t({...e,episodes:r})}toJson(){return{...this,seasons:this.seasons.map(e=>e.toJson()),episodes:this.episodes.map(e=>e.toJson())}}},St=class t{constructor({type:e="",segmentList:r=[],duration:n=0}={}){et(e,"string"),et(r,"array"),et(n,"number"),this.segmentList=r.map(s=>fb.fromJson(s)),Object.assign(this,{type:e,duration:n})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.segmentList||[]).map(n=>fb.fromJson(n));return new t({...e,segmentList:r})}toJson(){return{...this,segmentList:this.segmentList.map(e=>e.toJson())}}},fb=class t{constructor({type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o}={}){et(e,"string","type"),et(r,"number","segment_start"),et(n,"number","segment_end"),et(s,"string","url"),i!==void 0&&et(i,"string","data"),a!==void 0&&et(a,"string","_m_h5_tk"),o!==void 0&&et(o,"string","_m_h5_tk_enc"),Object.assign(this,{type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}}});var j8e={};is(j8e,{addAnime:()=>Dt,addEpisode:()=>U8e,cleanupExpiredIPs:()=>qB,findAnimeIdByCommentId:()=>UB,findAnimeTitleById:()=>rz,findIndexById:()=>FB,findTitleById:()=>tz,findUrlById:()=>DI,getCommentCache:()=>lf,getDirname:()=>jB,getLastSearch:()=>ez,getLocalCaches:()=>az,getPreferAnimeId:()=>iz,getSearchCache:()=>OI,isCommentCacheValid:()=>F8e,isSearchCacheValid:()=>$8e,judgeLocalCacheValid:()=>oz,readCacheFromFile:()=>ng,removeEarliestAnime:()=>$t,removeEpisodeByUrl:()=>q8e,resolveAnimeById:()=>sg,resolveAnimeByIdFromDetailStore:()=>ig,resolveEpisodeContextById:()=>mb,setCommentCache:()=>kI,setLastSearch:()=>ZV,setPreferByAnimeId:()=>sz,setSearchCache:()=>PI,storeAnimeIdsToMap:()=>nz,updateLocalCaches:()=>QB,writeCacheToFile:()=>HB});function ZV(t,e){if(TI.set(t,{...e,timestamp:Date.now()}),TI.size>200)for(let[r,n]of TI)Date.now()-n.timestamp>3600*1e3&&TI.delete(r)}function ez(t){return TI.get(t)}function pb(t){if(!t||typeof t!="object")return"";let e=t.source?String(t.source)+":":"";return t.bangumiId!==void 0&&t.bangumiId!==null&&String(t.bangumiId)!==""?"bangumi:"+e+String(t.bangumiId):t.animeId!==void 0&&t.animeId!==null&&String(t.animeId)!==""?"anime:"+e+String(t.animeId):""}function L8e(t,e){if(!(t instanceof Map)||!e)return;let r=pb(e);r&&t.set(r,e)}function*NI(t){if(!(t instanceof Map))return;let e=new Set;for(let r of t.values()){let n=pb(r);n&&e.has(n)||(n&&e.add(n),yield r)}}function Rir(t){let e=[];for(let r of NI(t))e.push(r);return e}function Nir(){let t=Date.now(),e=[];for(let[r,n]of O.searchCache.entries()){let s=(t-n.timestamp)/6e4;if(s>O.searchCacheMinutes){O.searchCache.delete(r),_("info",`[Cache] Search cache for "${r}" expired after ${s.toFixed(2)} minutes`);continue}e.push(n)}return e.sort((r,n)=>(n.timestamp||0)-(r.timestamp||0)),e}function M8e(t,e,r){let n=Date.now(),s=0;for(let[i,a]of t.entries())(n-a.timestamp)/6e4>e&&(t.delete(i),s++);s>0&&_("info",`[Cache] ${r} TTL \u626B\u63CF\u5B8C\u6BD5\uFF0C\u5DF2\u79FB\u9664 ${s} \u4E2A\u8FC7\u671F\u6761\u76EE\uFF0C\u5269\u4F59 ${t.size} \u4E2A`)}function Oir(t,e){return String(t?.animeId)===e||String(t?.bangumiId)===e}function $B(t,e,r=null){let n=null;for(let s of t)if(Oir(s,e)){if(r&&s?.source===r)return s;n||(n=s)}return n}function*W8e(){let t=new Set;for(let e of Nir())if(Array.isArray(e.details))for(let r of e.details){let n=pb(r);n&&t.has(n)||(n&&t.add(n),yield r)}}function sg(t,e=null,r=null){let n=String(t),s=$B(O.animes,n,r);return s||(s=$B(NI(e),n,r),s)?s:$B(W8e(),n,r)}function ig(t,e=null,r=null){let n=String(t);return $B(NI(e),n,r)}function mb(t,e=null){let r=Number(t);if(!Number.isFinite(r))return null;let n=i=>{if(!i?.links||!Array.isArray(i.links))return null;let a=i.links.findIndex(o=>o.id===r);return a===-1?null:{anime:i,link:i.links[a],index:a}};for(let i of O.animes){let a=n(i);if(a)return a}for(let i of NI(e)){let a=n(i);if(a)return a}let s=new Set;for(let i of O.animes){let a=pb(i);a&&s.add(a)}for(let i of NI(e)){let a=pb(i);a&&s.add(a)}for(let i of W8e()){let a=pb(i);if(a&&s.has(a))continue;a&&s.add(a);let o=n(i);if(o)return o}return null}function $8e(t){if(!O.searchCache.has(t))return!1;let e=O.searchCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.searchCacheMinutes?(O.searchCache.delete(t),_("info",`[Cache] Search cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function OI(t,e=null){if($8e(t)){_("info",`[Cache] Using search cache for "${t}"`);let r=O.searchCache.get(t);return e instanceof Map&&Array.isArray(r.details)&&r.details.forEach(n=>{L8e(e,n)}),r.results}return null}function PI(t,e,r=null){let n=Rir(r);if(M8e(O.searchCache,O.searchCacheMinutes,"searchCache"),O.searchCache.set(t,{results:e,details:n,timestamp:Date.now()}),O.searchCache.size>500){let s=O.searchCache.keys().next().value;O.searchCache.delete(s),_("info",`[Cache] searchCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${s}`)}_("info",`[Cache] Cached search results for "${t}" (${e.length} animes)`)}function F8e(t){if(!O.commentCache.has(t))return!1;let e=O.commentCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.commentCacheMinutes?(O.commentCache.delete(t),_("info",`[Cache] Comment cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function lf(t){return F8e(t)?(_("info",`[Cache] Using comment cache for "${t}"`),O.commentCache.get(t).comments):null}function kI(t,e){if(M8e(O.commentCache,O.commentCacheMinutes,"commentCache"),O.commentCache.set(t,{comments:e,timestamp:Date.now()}),O.commentCache.size>500){let r=O.commentCache.keys().next().value;O.commentCache.delete(r),_("info",`[Cache] commentCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${r}`)}_("info",`[Cache] Cached comments for "${t}" (${e.length} comments)`)}function U8e(t,e){let r=O.episodeIds.find(s=>s.url===t&&s.title===e);if(r)return _("info",`[Cache] Episode with URL ${t} and title ${e} already exists in episodeIds, returning existing episode.`),r;O.episodeNum++;let n={id:O.episodeNum,url:t,title:e};return O.episodeIds.push(n),_("info",`[Cache] Added to episodeIds: ${JSON.stringify(n)}`),n}function q8e(t){let e=O.episodeIds.length;O.episodeIds=O.episodeIds.filter(n=>n.url!==t);let r=e-O.episodeIds.length;return r>0?(_("info",`[Cache] Removed ${r} episode(s) from episodeIds with URL: ${t}`),!0):(_("error",`[Cache] No episode found in episodeIds with URL: ${t}`),!1)}function DI(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return _("info",`[Cache] Found URL for ID ${t}: ${e.url}`),e.url;let r=mb(t);return r?.link?.url?(_("info",`[Cache] Found URL for ID ${t} via cached anime details: ${r.link.url}`),r.link.url):(_("error",`[Cache] No URL found for ID: ${t}`),null)}function FB(t){let e=O.episodeIds.findIndex(n=>n.id===t);if(e!==-1)return _("info",`[Cache] Found index for ID ${t}: ${e}`),e;let r=mb(t);return r?(_("info",`[Cache] Found index for ID ${t} via cached anime details: ${r.index}`),r.index):(_("error",`[Cache] No index found for ID: ${t}`),-1)}function tz(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return _("info",`[Cache] Found TITLE for ID ${t}: ${e.title}`),e.title;let r=mb(t);return r?.link?.title?(_("info",`[Cache] Found TITLE for ID ${t} via cached anime details: ${r.link.title}`),r.link.title):(_("error",`[Cache] No TITLE found for ID: ${t}`),null)}function rz(t){let e=mb(t);return e?.anime?.animeTitle?(_("info",`[Cache] Found animeTitle for ID ${t}: ${e.anime.animeTitle}`),e.anime.animeTitle):(_("error",`[Cache] No animeTitle found for ID: ${t}`),null)}function Dt(t,e=null){t=F0.fromJson(t);try{if(!t.links||!Array.isArray(t.links))return _("error",`[Cache] Invalid or missing links in anime: ${JSON.stringify(t)}`),!1;let r=[];t.links.forEach(i=>{if(i.url){let a=U8e(i.url,i.title);a&&r.push(a)}else _("error",`[Cache] Invalid link in anime, missing url: ${JSON.stringify(i)}`)});let n=F0.fromJson({...t,links:r});L8e(e,n);let s=O.animes.findIndex(i=>i.animeId===t.animeId);return s!==-1&&(O.animes.splice(s,1),_("info",`[Cache] Removed old anime at index: ${s}`)),O.animes.push(n),_("info",`[Cache] Added anime to latest position: ${t.animeId}`),O.animes.length>O.MAX_ANIMES&&($t()||_("error","[Cache] Failed to remove earliest anime, but continuing")),_("info",`[Cache] animes: ${JSON.stringify(O.animes.map(i=>({links:i.links,animeId:i.animeId,bangumiId:i.bangumiId,animeTitle:i.animeTitle})),(i,a)=>i==="links"?a.length:a)}`),!0}catch(r){return _("error",`[Cache] addAnime failed: ${r.message}`),!1}}function $t(){if(O.animes.length===0)return _("error","[Cache] No animes to remove."),!1;let t=O.animes.shift();return _("info",`[Cache] Removed earliest anime: ${JSON.stringify(t)}`),t.links&&Array.isArray(t.links)&&t.links.forEach(e=>{e.url&&q8e(e.url)}),!0}function nz(t,e){let r=new Set,n=O.lastSelectMap.get(e);if(n&&Array.isArray(n.animeIds))for(let d of n.animeIds)r.add(d);for(let d of t)r.add(d.animeId);let s=n?.prefer,i=n?.source,a=n?.preferBySeason,o=n?.sourceBySeason,c=n?.offsets,u=a?{...a}:{},l=o?{...o}:{};if(s!==void 0&&(u.default=s),i!==void 0&&(l.default=i),O.lastSelectMap.has(e)&&O.lastSelectMap.delete(e),O.lastSelectMap.set(e,{animeIds:[...r],...Object.keys(u).length>0&&{preferBySeason:u},...Object.keys(l).length>0&&{sourceBySeason:l},...c!==void 0&&{offsets:c}}),O.lastSelectMap.size>O.MAX_LAST_SELECT_MAP){let d=O.lastSelectMap.keys().next().value;O.lastSelectMap.delete(d),_("info",`[Cache] Removed earliest entry from lastSelectMap: ${d}`)}}function UB(t){let e=mb(t);return e?[e.anime.animeId,e.anime.source,e.link.title,e.anime.aliases||[]]:[null,null,null,[]]}function sz(t,e,r=null,n=null){for(let[s,i]of O.lastSelectMap.entries())if(i.animeIds&&i.animeIds.includes(t)){let a=r===null?"default":String(r);return i.preferBySeason=i.preferBySeason||{},i.sourceBySeason=i.sourceBySeason||{},i.preferBySeason[a]=t,i.sourceBySeason[a]=e,r!==null&&n!==null&&(i.offsets=i.offsets||{},i.offsets[a]=n),O.lastSelectMap.set(s,i),s}return null}function iz(t,e=null){let r=O.lastSelectMap.get(t);if(!r)return[null,null,null];let n=e===null?"default":String(e),s=r.preferBySeason||{},i=r.sourceBySeason||{},a=s[n]??s.default??r.prefer??null,o=i[n]??i.default??r.source??null,c=r.offsets||null;return[a,o,c]}function qB(t){let r=0;for(let[n,s]of O.requestHistory.entries()){let i=s.filter(a=>t-a<=6e4);i.length===0?(O.requestHistory.delete(n),r++,_("info",`[Utils] [Rate Limit] Cleaned up expired IP record: ${n}`)):i.length0&&_("info",`[Utils] [Rate Limit] Cleanup completed: removed ${r} expired IP records`)}function jB(){return typeof __dirname<"u"?__dirname:RI.join(process.cwd(),"danmu_api","utils")}function ng(t){let e=RI.join(jB(),"..","..",".cache",`${t}`);if(wI.existsSync(e)){let r=wI.readFileSync(e,"utf8");return JSON.parse(r)}return null}function HB(t,e){let r=RI.join(jB(),"..","..",".cache",`${t}`);wI.writeFileSync(r,JSON.stringify(e),"utf8")}async function az(){if(!O.localCacheInitialized)try{_("info","[Cache] getLocalCaches start."),O.animes=JSON.parse(ng("animes"))||O.animes,O.episodeIds=JSON.parse(ng("episodeIds"))||O.episodeIds,O.episodeNum=JSON.parse(ng("episodeNum"))||O.episodeNum,O.reqRecords=JSON.parse(ng("reqRecords"))||O.reqRecords,O.todayReqNum=JSON.parse(ng("todayReqNum"))||O.todayReqNum;let t=ng("lastSelectMap");t&&(O.lastSelectMap=new Map(Object.entries(JSON.parse(t))),_("info",`[Cache] Restored lastSelectMap from local cache with ${O.lastSelectMap.size} entries`)),O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.localCacheInitialized=!0,_("info","[Cache] getLocalCaches completed successfully.")}catch(t){_("error",`[Cache] getLocalCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function QB(){try{_("info","[Cache] updateLocalCaches start.");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=an(s);i!==O.lastHashes[r]&&(HB(r,s),t.push({key:r,hash:i}))}t.length>0?(_("info",`[Cache] Updated local caches for keys: ${t.map(r=>r.key).join(", ")}`),t.forEach(({key:r,hash:n})=>{O.lastHashes[r]=n})):_("info","[Cache] No changes detected, skipping local cache update.")}catch(t){_("error",`[Cache] updateLocalCaches failed: ${t.message}`,t.stack),_("error",`[Cache] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function oz(t,e){if(e==="node")try{if(wI=await import("fs"),RI=await import("path"),!O.localCacheValid&&t!=="/favicon.ico"&&t!=="/robots.txt"){let r=RI.join(jB(),"..","..",".cache");wI.existsSync(r)?O.localCacheValid=!0:O.localCacheValid=!1}}catch(r){_("warn","[Cache] Node.js modules not available:",r.message),O.localCacheValid=!1}}var wI,RI,TI,$n=lr(()=>{Ot();_t();hs();Ts();TI=new Map});var fz=E(JB=>{"use strict";Object.defineProperty(JB,"__esModule",{value:!0});JB.VerbatimString=void 0;var dz=class extends String{format;constructor(e,r){super(r),this.format=e}};JB.VerbatimString=dz});var Ol=E(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.MultiErrorReply=mr.CommandTimeoutDuringMaintenanceError=mr.SocketTimeoutDuringMaintenanceError=mr.TimeoutError=mr.BlobError=mr.SimpleError=mr.ErrorReply=mr.ReconnectStrategyError=mr.RootNodesUnavailableError=mr.SocketClosedUnexpectedlyError=mr.DisconnectsClientError=mr.ClientOfflineError=mr.ClientClosedError=mr.SocketTimeoutError=mr.ConnectionTimeoutError=mr.WatchError=mr.AbortError=void 0;var pz=class extends Error{constructor(){super("The command was aborted")}};mr.AbortError=pz;var mz=class extends Error{constructor(e="One (or more) of the watched keys has been changed"){super(e)}};mr.WatchError=mz;var hz=class extends Error{constructor(){super("Connection timeout")}};mr.ConnectionTimeoutError=hz;var gz=class extends Error{constructor(e){super(`Socket timeout timeout. Expecting data, but didn't receive any in ${e}ms.`)}};mr.SocketTimeoutError=gz;var Az=class extends Error{constructor(){super("The client is closed")}};mr.ClientClosedError=Az;var yz=class extends Error{constructor(){super("The client is offline")}};mr.ClientOfflineError=yz;var xz=class extends Error{constructor(){super("Disconnects client")}};mr.DisconnectsClientError=xz;var bz=class extends Error{constructor(){super("Socket closed unexpectedly")}};mr.SocketClosedUnexpectedlyError=bz;var Ez=class extends Error{constructor(){super("All the root nodes are unavailable")}};mr.RootNodesUnavailableError=Ez;var _z=class extends Error{originalError;socketError;constructor(e,r){super(e.message),this.originalError=e,this.socketError=r}};mr.ReconnectStrategyError=_z;var Ab=class extends Error{};mr.ErrorReply=Ab;var Sz=class extends Ab{};mr.SimpleError=Sz;var vz=class extends Ab{};mr.BlobError=vz;var MI=class extends Error{};mr.TimeoutError=MI;var Iz=class extends MI{constructor(e){super(`Socket timeout during maintenance. Expecting data, but didn't receive any in ${e}ms.`)}};mr.SocketTimeoutDuringMaintenanceError=Iz;var Cz=class extends MI{constructor(e){super(`Command timeout during maintenance. Waited to write command for more than ${e}ms.`)}};mr.CommandTimeoutDuringMaintenanceError=Cz;var Tz=class extends Ab{replies;errorIndexes;constructor(e,r){super(`${r.length} commands failed, see .replies and .errorIndexes for more information`),this.replies=e,this.errorIndexes=r}*errors(){for(let e of this.errorIndexes)yield this.replies[e]}};mr.MultiErrorReply=Tz});var eL=E(pt=>{"use strict";var wz;Object.defineProperty(pt,"__esModule",{value:!0});pt.Decoder=pt.PUSH_TYPE_MAPPING=pt.RESP_TYPES=void 0;var eWe=fz(),XB=Ol();pt.RESP_TYPES={NULL:95,BOOLEAN:35,NUMBER:58,BIG_NUMBER:40,DOUBLE:44,SIMPLE_STRING:43,BLOB_STRING:36,VERBATIM_STRING:61,SIMPLE_ERROR:45,BLOB_ERROR:33,ARRAY:42,SET:126,MAP:37,PUSH:62};var Jr={"\r":13,t:116,"+":43,"-":45,0:48,".":46,i:105,n:110,E:69,e:101};pt.PUSH_TYPE_MAPPING={[pt.RESP_TYPES.BLOB_STRING]:Buffer};var ZB=class{onReply;onErrorReply;onPush;getTypeMapping;#e=0;#t;constructor(e){this.onReply=e.onReply,this.onErrorReply=e.onErrorReply,this.onPush=e.onPush,this.getTypeMapping=e.getTypeMapping}reset(){this.#e=0,this.#t=void 0}write(e){if(this.#e>=e.length){this.#e-=e.length;return}if(this.#t&&(this.#t(e)||this.#e>=e.length)){this.#e-=e.length;return}do{let r=e[this.#e];if(++this.#e===e.length){this.#t=this.#r.bind(this,r);break}if(this.#n(r,e))break}while(this.#e=r.length?this.#R.bind(this,n,e):this.#R(n,e,r)}#C(e,r,n){let s=e(n);return typeof s=="function"?this.#C.bind(this,s,r):this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n)}#N(e,r,n,s){let i=this.#e+e;if(i>=s.length){let o=s.subarray(this.#e);return this.#e=s.length,this.#M.bind(this,e-o.length,[o],r,n)}let a=s.subarray(this.#e,i);return this.#e=i+r,n===Buffer?a:a.toString()}#M(e,r,n,s,i){let a=this.#e+e;if(a>=i.length){let c=i.subarray(this.#e);return r.push(c),this.#e=i.length,this.#M.bind(this,e-c.length,r,n,s)}r.push(i.subarray(this.#e,a)),this.#e=a+n;let o=Buffer.concat(r);return s===Buffer?o:o.toString()}#R(e,r,n){return this.#N(e,2,r,n)}#O(e,r){return this.#k(this.#p.bind(this,0),e,r)}#k(e,r,n){let s=e(n);return typeof s=="function"?this.#k.bind(this,s,r):this.#ce(s,r,n)}#ce(e,r,n){let s=e-4;return r===eWe.VerbatimString?this.#ue(s,n):(this.#e+=4,this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n))}#ue(e,r){let n=this.#N.bind(this,3,1,String);return this.#e>=r.length?this.#F.bind(this,e,n):this.#F(e,n,r)}#F(e,r,n){let s=r(n);return typeof s=="function"?this.#F.bind(this,e,s):this.#le(e,s,n)}#le(e,r,n){return this.#H(r,this.#R.bind(this,e,String),n)}#H(e,r,n){let s=r(n);return typeof s=="function"?this.#H.bind(this,e,s):new eWe.VerbatimString(e,s)}#Q(e){let r=this.#x(String,e);return typeof r=="function"?this.#G.bind(this,r):new XB.SimpleError(r)}#G(e,r){let n=e(r);return typeof n=="function"?this.#G.bind(this,n):new XB.SimpleError(n)}#K(e){let r=this.#T(String,e);return typeof r=="function"?this.#V.bind(this,r):new XB.BlobError(r)}#V(e,r){let n=e(r);return typeof n=="function"?this.#V.bind(this,n):new XB.BlobError(n)}#w(e,r){let n=r[this.#e];return++this.#e===r.length?this.#U.bind(this,n,e):this.#U(n,e,r)}#U(e,r,n){switch(e){case pt.RESP_TYPES.NULL:return this.#s();case pt.RESP_TYPES.BOOLEAN:return this.#i(n);case pt.RESP_TYPES.NUMBER:return this.#c(r[pt.RESP_TYPES.NUMBER],n);case pt.RESP_TYPES.BIG_NUMBER:return this.#d(r[pt.RESP_TYPES.BIG_NUMBER],n);case pt.RESP_TYPES.DOUBLE:return this.#g(r[pt.RESP_TYPES.DOUBLE],n);case pt.RESP_TYPES.SIMPLE_STRING:return this.#x(r[pt.RESP_TYPES.SIMPLE_STRING],n);case pt.RESP_TYPES.BLOB_STRING:return this.#T(r[pt.RESP_TYPES.BLOB_STRING],n);case pt.RESP_TYPES.VERBATIM_STRING:return this.#O(r[pt.RESP_TYPES.VERBATIM_STRING],n);case pt.RESP_TYPES.SIMPLE_ERROR:return this.#Q(n);case pt.RESP_TYPES.BLOB_ERROR:return this.#K(n);case pt.RESP_TYPES.ARRAY:return this.#q(r,n);case pt.RESP_TYPES.SET:return this.#J(r,n);case pt.RESP_TYPES.MAP:return this.#te(r,n);default:throw new Error(`Unknown RESP type ${e} "${String.fromCharCode(e)}"`)}}#q(e,r){return r[this.#e]===Jr["-"]?(this.#e+=4,null):this.#z(this.#p(0,r),e,r)}#z(e,r,n){return typeof e=="function"?this.#de.bind(this,e,r):this.#D(new Array(e),0,r,n)}#de(e,r,n){return this.#z(e(n),r,n)}#D(e,r,n,s){for(let i=r;i=s.length)return this.#D.bind(this,e,i,n);let a=this.#w(n,s);if(typeof a=="function")return this.#Y.bind(this,e,i,a,n);e[i]=a}return e}#Y(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#Y.bind(this,e,r,a,s):(e[r++]=a,this.#D(e,r,s,i))}#J(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#X.bind(this,n,e):this.#Z(n,e,r)}#X(e,r,n){let s=e(n);return typeof s=="function"?this.#X.bind(this,s,r):this.#Z(s,r,n)}#Z(e,r,n){return r[pt.RESP_TYPES.SET]===Set?this.#j(new Set,e,r,n):this.#D(new Array(e),0,r,n)}#j(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#j.bind(this,e,r,n);let i=this.#w(n,s);if(typeof i=="function")return this.#ee.bind(this,e,r,i,n);e.add(i),--r}return e}#ee(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#ee.bind(this,e,r,a,s):(e.add(a),this.#j(e,r-1,s,i))}#te(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#re.bind(this,n,e):this.#ne(n,e,r)}#re(e,r,n){let s=e(n);return typeof s=="function"?this.#re.bind(this,s,r):this.#ne(s,r,n)}#ne(e,r,n){switch(r[pt.RESP_TYPES.MAP]){case Map:return this.#W(new Map,e,r,n);case Array:return this.#D(new Array(e*2),0,r,n);default:return this.#$(Object.create(null),e,r,n)}}#W(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#W.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#ae.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#B.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#B.bind(this,e,r,i,a,n);e.set(i,a),--r}return e}#se(e,r){let n=r[this.#e];return++this.#e===r.length?this.#ie.bind(this,n,e):this.#ie(n,e,r)}#ie(e,r,n){switch(e){case pt.RESP_TYPES.SIMPLE_STRING:return this.#x(String,n);case pt.RESP_TYPES.BLOB_STRING:return this.#T(String,n);default:return this.#U(e,r,n)}}#ae(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#ae.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#B.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#B.bind(this,e,r,a,o,s):(e.set(a,o),this.#W(e,r-1,s,i))}#B(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#B.bind(this,e,r,n,o,i):(e.set(n,o),this.#W(e,r-1,i,a))}#$(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#$.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#oe.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#L.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#L.bind(this,e,r,i,a,n);e[i]=a,--r}return e}#oe(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#oe.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#L.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#L.bind(this,e,r,a,o,s):(e[a]=o,this.#$(e,r-1,s,i))}#L(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#L.bind(this,e,r,n,o,i):(e[n]=o,this.#$(e,r-1,i,a))}};pt.Decoder=ZB;wz=ZB});var rWe=E(yb=>{"use strict";Object.defineProperty(yb,"__esModule",{value:!0});yb.scriptSha1=yb.defineScript=void 0;var Yir=require("node:crypto");function Jir(t){return{...t,SHA1:tWe(t.SCRIPT)}}yb.defineScript=Jir;function tWe(t){return(0,Yir.createHash)("sha1").update(t).digest("hex")}yb.scriptSha1=tWe});var nWe=E(tL=>{"use strict";Object.defineProperty(tL,"__esModule",{value:!0});tL.digest=void 0;var Rz=null;async function Xir(){if(!Rz)try{Rz=(await import("@node-rs/xxhash")).xxh3}catch{throw new Error('The "digest" function requires the "@node-rs/xxhash" package, but it was not found.')}return Rz}async function Zir(t){let e=await Xir(),r=typeof t=="string"?t:new Uint8Array(t);return e.xxh64(r).toString(16).padStart(16,"0")}tL.digest=Zir});var sWe=E(Nz=>{"use strict";Object.defineProperty(Nz,"__esModule",{value:!0});Nz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","CAT"),e&&t.push(e)},transformReply:void 0}});var iWe=E(Oz=>{"use strict";Object.defineProperty(Oz,"__esModule",{value:!0});Oz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","DELUSER"),t.pushVariadic(e)},transformReply:void 0}});var aWe=E(Pz=>{"use strict";Object.defineProperty(Pz,"__esModule",{value:!0});Pz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","DRYRUN",e,...r)},transformReply:void 0}});var oWe=E(kz=>{"use strict";Object.defineProperty(kz,"__esModule",{value:!0});kz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GENPASS"),e&&t.push(e.toString())},transformReply:void 0}});var cWe=E(Dz=>{"use strict";Object.defineProperty(Dz,"__esModule",{value:!0});Dz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GETUSER",e)},transformReply:{2:t=>({flags:t[1],passwords:t[3],commands:t[5],keys:t[7],channels:t[9],selectors:t[11]?.map(e=>{let r=e;return{commands:r[1],keys:r[3],channels:r[5]}})}),3:void 0}}});var uWe=E(Bz=>{"use strict";Object.defineProperty(Bz,"__esModule",{value:!0});Bz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LIST")},transformReply:void 0}});var lWe=E(Lz=>{"use strict";Object.defineProperty(Lz,"__esModule",{value:!0});Lz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LOAD")},transformReply:void 0}});var Pl=E(rL=>{"use strict";Object.defineProperty(rL,"__esModule",{value:!0});rL.BasicCommandParser=void 0;var Mz=class{#e=[];#t=[];preserve;get redisArgs(){return this.#e}get keys(){return this.#t}get firstKey(){return this.#t[0]}get cacheKey(){let e=new Array(this.#e.length*2);for(let r=0;r{"use strict";Object.defineProperty(Be,"__esModule",{value:!0});Be.transformRedisJsonNullReply=Be.transformRedisJsonReply=Be.transformRedisJsonArgument=Be.transformStreamsMessagesReplyResp3=Be.transformStreamsMessagesReplyResp2=Be.transformStreamMessagesReply=Be.transformStreamMessageNullReply=Be.transformStreamMessageReply=Be.parseArgs=Be.parseZKeysArguments=Be.transformRangeReply=Be.parseSlotRangesArguments=Be.transformFunctionListItemReply=Be.RedisFunctionFlags=Be.transformCommandReply=Be.CommandCategories=Be.CommandFlags=Be.parseOptionalVariadicArgument=Be.pushVariadicArgument=Be.pushVariadicNumberArguments=Be.pushVariadicArguments=Be.pushEvalArguments=Be.evalFirstKeyIndex=Be.transformPXAT=Be.transformEXAT=Be.transformSortedSetReply=Be.transformTuplesReply=Be.createTransformTuplesReplyFunc=Be.transformTuplesToMap=Be.transformNullableDoubleReply=Be.createTransformNullableDoubleReplyResp2Func=Be.transformDoubleArrayReply=Be.createTransformDoubleReplyResp2Func=Be.transformDoubleReply=Be.transformStringDoubleArgument=Be.transformDoubleArgument=Be.transformBooleanArrayReply=Be.transformBooleanReply=Be.isArrayReply=Be.isNullReply=void 0;var ear=Pl(),Wz=eL();function $z(t){return t===null}Be.isNullReply=$z;function tar(t){return Array.isArray(t)}Be.isArrayReply=tar;Be.transformBooleanReply={2:t=>t===1,3:void 0};Be.transformBooleanArrayReply={2:t=>t.map(Be.transformBooleanReply[2]),3:void 0};function nL(t){switch(t){case 1/0:return"+inf";case-1/0:return"-inf";default:return t.toString()}}Be.transformDoubleArgument=nL;function rar(t){return typeof t!="number"?t:nL(t)}Be.transformStringDoubleArgument=rar;Be.transformDoubleReply={2:(t,e,r)=>{switch(r?r[Wz.RESP_TYPES.DOUBLE]:void 0){case String:return t;default:{let s;switch(t.toString()){case"inf":case"+inf":s=1/0;case"-inf":s=-1/0;case"nan":s=NaN;default:s=Number(t)}return s}}},3:void 0};function hWe(t,e){return r=>Be.transformDoubleReply[2](r,t,e)}Be.createTransformDoubleReplyResp2Func=hWe;Be.transformDoubleArrayReply={2:(t,e,r)=>t.map(hWe(e,r)),3:void 0};function nar(t,e){return r=>Be.transformNullableDoubleReply[2](r,t,e)}Be.createTransformNullableDoubleReplyResp2Func=nar;Be.transformNullableDoubleReply={2:(t,e,r)=>t===null?null:Be.transformDoubleReply[2](t,e,r),3:void 0};function sar(t,e){let r=Object.create(null);for(let n=0;nFz(r,t,e)}Be.createTransformTuplesReplyFunc=iar;function Fz(t,e,r){let n=r?r[Wz.RESP_TYPES.MAP]:void 0,s=t;switch(n){case Array:return t;case Map:{let i=new Map;for(let a=0;a{let n=t,s=[];for(let i=0;it.map(e=>{let[r,n]=e;return{value:r,score:n}})};function aar(t){return(typeof t=="number"?t:Math.floor(t.getTime()/1e3)).toString()}Be.transformEXAT=aar;function oar(t){return(typeof t=="number"?t:t.getTime()).toString()}Be.transformPXAT=oar;function car(t){return t?.keys?.[0]}Be.evalFirstKeyIndex=car;function uar(t,e){return e?.keys?t.push(e.keys.length.toString(),...e.keys):t.push("0"),e?.arguments&&t.push(...e.arguments),t}Be.pushEvalArguments=uar;function lar(t,e){return Array.isArray(e)?t=t.concat(e):t.push(e),t}Be.pushVariadicArguments=lar;function dar(t,e){if(Array.isArray(e))for(let r of e)t.push(r.toString());else t.push(e.toString());return t}Be.pushVariadicNumberArguments=dar;function far(t,e){return Array.isArray(e)?t.push(e.length.toString(),...e):t.push("1",e),t}Be.pushVariadicArgument=far;function par(t,e,r){r!==void 0&&(t.push(e),t.pushVariadicWithLength(r))}Be.parseOptionalVariadicArgument=par;var dWe;(function(t){t.WRITE="write",t.READONLY="readonly",t.DENYOOM="denyoom",t.ADMIN="admin",t.PUBSUB="pubsub",t.NOSCRIPT="noscript",t.RANDOM="random",t.SORT_FOR_SCRIPT="sort_for_script",t.LOADING="loading",t.STALE="stale",t.SKIP_MONITOR="skip_monitor",t.ASKING="asking",t.FAST="fast",t.MOVABLEKEYS="movablekeys"})(dWe||(Be.CommandFlags=dWe={}));var fWe;(function(t){t.KEYSPACE="@keyspace",t.READ="@read",t.WRITE="@write",t.SET="@set",t.SORTEDSET="@sortedset",t.LIST="@list",t.HASH="@hash",t.STRING="@string",t.BITMAP="@bitmap",t.HYPERLOGLOG="@hyperloglog",t.GEO="@geo",t.STREAM="@stream",t.PUBSUB="@pubsub",t.ADMIN="@admin",t.FAST="@fast",t.SLOW="@slow",t.BLOCKING="@blocking",t.DANGEROUS="@dangerous",t.CONNECTION="@connection",t.TRANSACTION="@transaction",t.SCRIPTING="@scripting"})(fWe||(Be.CommandCategories=fWe={}));function mar([t,e,r,n,s,i,a]){return{name:t,arity:e,flags:new Set(r),firstKeyIndex:n,lastKeyIndex:s,step:i,categories:new Set(a)}}Be.transformCommandReply=mar;var pWe;(function(t){t.NO_WRITES="no-writes",t.ALLOW_OOM="allow-oom",t.ALLOW_STALE="allow-stale",t.NO_CLUSTER="no-cluster"})(pWe||(Be.RedisFunctionFlags=pWe={}));function har(t){return{libraryName:t[1],engine:t[3],functions:t[5].map(e=>({name:e[1],description:e[3],flags:e[5]}))}}Be.transformFunctionListItemReply=har;function mWe(t,e){t.push(e.start.toString(),e.end.toString())}function gar(t,e){if(Array.isArray(e))for(let r of e)mWe(t,r);else mWe(t,e)}Be.parseSlotRangesArguments=gar;function Aar([t,e]){return{start:t,end:e}}Be.transformRangeReply=Aar;function yar(t,e){if(Array.isArray(e)){if(t.push(e.length.toString()),e.length)if(xar(e))t.pushKeys(e);else{for(let r=0;r{"use strict";Object.defineProperty(qz,"__esModule",{value:!0});var Tar=Ce();qz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","LOG"),e!=null&&t.push(e.toString())},transformReply:{2:(t,e,r)=>t.map(n=>{let s=n;return{count:s[1],reason:s[3],context:s[5],object:s[7],username:s[9],"age-seconds":Tar.transformDoubleReply[2](s[11],e,r),"client-info":s[13],"entry-id":s[15],"timestamp-created":s[17],"timestamp-last-updated":s[19]}}),3:void 0}}});var yWe=E($I=>{"use strict";var war=$I&&$I.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($I,"__esModule",{value:!0});var Rar=war(jz());$I.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:Rar.default.IS_READ_ONLY,parseCommand(t){t.push("ACL","LOG","RESET")},transformReply:void 0}});var xWe=E(Hz=>{"use strict";Object.defineProperty(Hz,"__esModule",{value:!0});Hz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","SAVE")},transformReply:void 0}});var bWe=E(Qz=>{"use strict";Object.defineProperty(Qz,"__esModule",{value:!0});Qz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","SETUSER",e),t.pushVariadic(r)},transformReply:void 0}});var EWe=E(Gz=>{"use strict";Object.defineProperty(Gz,"__esModule",{value:!0});Gz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","USERS")},transformReply:void 0}});var _We=E(Kz=>{"use strict";Object.defineProperty(Kz,"__esModule",{value:!0});Kz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","WHOAMI")},transformReply:void 0}});var SWe=E(Vz=>{"use strict";Object.defineProperty(Vz,"__esModule",{value:!0});Vz.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("APPEND",e,r)},transformReply:void 0}});var zz=E(xb=>{"use strict";Object.defineProperty(xb,"__esModule",{value:!0});xb.ASKING_CMD=void 0;xb.ASKING_CMD="ASKING";xb.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push(xb.ASKING_CMD)},transformReply:void 0}});var vWe=E(Yz=>{"use strict";Object.defineProperty(Yz,"__esModule",{value:!0});Yz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,{username:e,password:r}){t.push("AUTH"),e!==void 0&&t.push(e),t.push(r)},transformReply:void 0}});var IWe=E(Jz=>{"use strict";Object.defineProperty(Jz,"__esModule",{value:!0});Jz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("BGREWRITEAOF")},transformReply:void 0}});var CWe=E(Xz=>{"use strict";Object.defineProperty(Xz,"__esModule",{value:!0});Xz.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("BGSAVE"),e?.SCHEDULE&&t.push("SCHEDULE")},transformReply:void 0}});var TWe=E(Zz=>{"use strict";Object.defineProperty(Zz,"__esModule",{value:!0});Zz.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITCOUNT"),t.pushKey(e),r&&(t.push(r.start.toString()),t.push(r.end.toString()),r.mode&&t.push(r.mode))},transformReply:void 0}});var wWe=E(eY=>{"use strict";Object.defineProperty(eY,"__esModule",{value:!0});eY.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITFIELD_RO"),t.pushKey(e);for(let n of r)t.push("GET"),t.push(n.encoding),t.push(n.offset.toString())},transformReply:void 0}});var RWe=E(tY=>{"use strict";Object.defineProperty(tY,"__esModule",{value:!0});tY.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BITFIELD"),t.pushKey(e);for(let n of r)switch(n.operation){case"GET":t.push("GET",n.encoding,n.offset.toString());break;case"SET":t.push("SET",n.encoding,n.offset.toString(),n.value.toString());break;case"INCRBY":t.push("INCRBY",n.encoding,n.offset.toString(),n.increment.toString());break;case"OVERFLOW":t.push("OVERFLOW",n.behavior);break}},transformReply:void 0}});var NWe=E(rY=>{"use strict";Object.defineProperty(rY,"__esModule",{value:!0});rY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BITOP",e),t.pushKey(r),t.pushKeys(n)},transformReply:void 0}});var OWe=E(nY=>{"use strict";Object.defineProperty(nY,"__esModule",{value:!0});nY.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i){t.push("BITPOS"),t.pushKey(e),t.push(r.toString()),n!==void 0&&t.push(n.toString()),s!==void 0&&t.push(s.toString()),i&&t.push(i)},transformReply:void 0}});var PWe=E(sY=>{"use strict";Object.defineProperty(sY,"__esModule",{value:!0});sY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("BLMOVE"),t.pushKeys([e,r]),t.push(n,s,i.toString())},transformReply:void 0}});var iY=E(FI=>{"use strict";Object.defineProperty(FI,"__esModule",{value:!0});FI.parseLMPopArguments=void 0;function kWe(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())}FI.parseLMPopArguments=kWe;FI.default={IS_READ_ONLY:!1,parseCommand(t,...e){t.push("LMPOP"),kWe(t,...e)},transformReply:void 0}});var BWe=E(ff=>{"use strict";var Nar=ff&&ff.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Oar=ff&&ff.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Par=ff&&ff.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Nar(e,t,r);return Oar(e,t),e};Object.defineProperty(ff,"__esModule",{value:!0});var DWe=Par(iY());ff.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BLMPOP",e.toString()),(0,DWe.parseLMPopArguments)(t,...r)},transformReply:DWe.default.transformReply}});var oY=E(aY=>{"use strict";Object.defineProperty(aY,"__esModule",{value:!0});aY.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BLPOP"),t.pushKeys(e),t.push(r.toString())},transformReply(t){return t===null?null:{key:t[0],element:t[1]}}}});var LWe=E(UI=>{"use strict";var kar=UI&&UI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(UI,"__esModule",{value:!0});var Dar=kar(oY());UI.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BRPOP"),t.pushKeys(e),t.push(r.toString())},transformReply:Dar.default.transformReply}});var MWe=E(cY=>{"use strict";Object.defineProperty(cY,"__esModule",{value:!0});cY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BRPOPLPUSH"),t.pushKeys([e,r]),t.push(n.toString())},transformReply:void 0}});var uY=E(qI=>{"use strict";Object.defineProperty(qI,"__esModule",{value:!0});qI.parseZMPopArguments=void 0;var WWe=Ce();function $We(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT&&t.push("COUNT",n.COUNT.toString())}qI.parseZMPopArguments=$We;qI.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZMPOP"),$We(t,e,r,n)},transformReply:{2(t,e,r){return t===null?null:{key:t[0],members:t[1].map(n=>{let[s,i]=n;return{value:s,score:WWe.transformDoubleReply[2](i,e,r)}})}},3(t){return t===null?null:{key:t[0],members:WWe.transformSortedSetReply[3](t[1])}}}}});var UWe=E(pf=>{"use strict";var Bar=pf&&pf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Lar=pf&&pf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Mar=pf&&pf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Bar(e,t,r);return Lar(e,t),e};Object.defineProperty(pf,"__esModule",{value:!0});var FWe=Mar(uY());pf.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BZMPOP",e.toString()),(0,FWe.parseZMPopArguments)(t,...r)},transformReply:FWe.default.transformReply}});var dY=E(lY=>{"use strict";Object.defineProperty(lY,"__esModule",{value:!0});var War=Ce();lY.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BZPOPMAX"),t.pushKeys(e),t.push(r.toString())},transformReply:{2(t,e,r){return t===null?null:{key:t[0],value:t[1],score:War.transformDoubleReply[2](t[2],e,r)}},3(t){return t===null?null:{key:t[0],value:t[1],score:t[2]}}}}});var jWe=E(jI=>{"use strict";var $ar=jI&&jI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jI,"__esModule",{value:!0});var qWe=$ar(dY());jI.default={IS_READ_ONLY:qWe.default.IS_READ_ONLY,parseCommand(t,e,r){t.push("BZPOPMIN"),t.pushKeys(e),t.push(r.toString())},transformReply:qWe.default.transformReply}});var HWe=E(fY=>{"use strict";Object.defineProperty(fY,"__esModule",{value:!0});fY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","CACHING",e?"YES":"NO")},transformReply:void 0}});var QWe=E(pY=>{"use strict";Object.defineProperty(pY,"__esModule",{value:!0});pY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETNAME")},transformReply:void 0}});var GWe=E(mY=>{"use strict";Object.defineProperty(mY,"__esModule",{value:!0});mY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETREDIR")},transformReply:void 0}});var KWe=E(hY=>{"use strict";Object.defineProperty(hY,"__esModule",{value:!0});hY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","ID")},transformReply:void 0}});var AY=E(gY=>{"use strict";Object.defineProperty(gY,"__esModule",{value:!0});var Far=/([^\s=]+)=([^\s]*)/g;gY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","INFO")},transformReply(t){let e={};for(let n of t.toString().matchAll(Far))e[n[1]]=n[2];let r={id:Number(e.id),addr:e.addr,fd:Number(e.fd),name:e.name,age:Number(e.age),idle:Number(e.idle),flags:e.flags,db:Number(e.db),sub:Number(e.sub),psub:Number(e.psub),multi:Number(e.multi),qbuf:Number(e.qbuf),qbufFree:Number(e["qbuf-free"]),argvMem:Number(e["argv-mem"]),obl:Number(e.obl),oll:Number(e.oll),omem:Number(e.omem),totMem:Number(e["tot-mem"]),events:e.events,cmd:e.cmd,user:e.user,libName:e["lib-name"],libVer:e["lib-ver"]};return e.laddr!==void 0&&(r.laddr=e.laddr),e.redir!==void 0&&(r.redir=Number(e.redir)),e.ssub!==void 0&&(r.ssub=Number(e.ssub)),e["multi-mem"]!==void 0&&(r.multiMem=Number(e["multi-mem"])),e.resp!==void 0&&(r.resp=Number(e.resp)),r}}});var zWe=E(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});Po.CLIENT_KILL_FILTERS=void 0;Po.CLIENT_KILL_FILTERS={ADDRESS:"ADDR",LOCAL_ADDRESS:"LADDR",ID:"ID",TYPE:"TYPE",USER:"USER",SKIP_ME:"SKIPME",MAXAGE:"MAXAGE"};Po.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){if(t.push("CLIENT","KILL"),Array.isArray(e))for(let r of e)VWe(t,r);else VWe(t,e)},transformReply:void 0};function VWe(t,e){if(e===Po.CLIENT_KILL_FILTERS.SKIP_ME){t.push("SKIPME");return}switch(t.push(e.filter),e.filter){case Po.CLIENT_KILL_FILTERS.ADDRESS:t.push(e.address);break;case Po.CLIENT_KILL_FILTERS.LOCAL_ADDRESS:t.push(e.localAddress);break;case Po.CLIENT_KILL_FILTERS.ID:t.push(typeof e.id=="number"?e.id.toString():e.id);break;case Po.CLIENT_KILL_FILTERS.TYPE:t.push(e.type);break;case Po.CLIENT_KILL_FILTERS.USER:t.push(e.username);break;case Po.CLIENT_KILL_FILTERS.SKIP_ME:t.push(e.skipMe?"yes":"no");break;case Po.CLIENT_KILL_FILTERS.MAXAGE:t.push(e.maxAge.toString());break}}});var YWe=E(HI=>{"use strict";var Uar=HI&&HI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(HI,"__esModule",{value:!0});var qar=Uar(AY());HI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","LIST"),e&&(e.TYPE!==void 0?t.push("TYPE",e.TYPE):(t.push("ID"),t.pushVariadic(e.ID)))},transformReply(t){let e=t.toString().split(` -`),r=e.length-1,n=[];for(let s=0;s{"use strict";Object.defineProperty(yY,"__esModule",{value:!0});yY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-EVICT",e?"ON":"OFF")},transformReply:void 0}});var XWe=E(xY=>{"use strict";Object.defineProperty(xY,"__esModule",{value:!0});xY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-TOUCH",e?"ON":"OFF")},transformReply:void 0}});var ZWe=E(bY=>{"use strict";Object.defineProperty(bY,"__esModule",{value:!0});bY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLIENT","PAUSE",e.toString()),r&&t.push(r)},transformReply:void 0}});var e$e=E(EY=>{"use strict";Object.defineProperty(EY,"__esModule",{value:!0});EY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","SETNAME",e)},transformReply:void 0}});var t$e=E(_Y=>{"use strict";Object.defineProperty(_Y,"__esModule",{value:!0});_Y.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("CLIENT","TRACKING",e?"ON":"OFF"),e){if(r?.REDIRECT&&t.push("REDIRECT",r.REDIRECT.toString()),jar(r)){if(t.push("BCAST"),r?.PREFIX)if(Array.isArray(r.PREFIX))for(let n of r.PREFIX)t.push("PREFIX",n);else t.push("PREFIX",r.PREFIX)}else Har(r)?t.push("OPTIN"):Qar(r)&&t.push("OPTOUT");r?.NOLOOP&&t.push("NOLOOP")}},transformReply:void 0};function jar(t){return t?.BCAST===!0}function Har(t){return t?.OPTIN===!0}function Qar(t){return t?.OPTOUT===!0}});var r$e=E(SY=>{"use strict";Object.defineProperty(SY,"__esModule",{value:!0});SY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","TRACKINGINFO")},transformReply:{2:t=>({flags:t[1],redirect:t[3],prefixes:t[5]}),3:void 0}}});var n$e=E(vY=>{"use strict";Object.defineProperty(vY,"__esModule",{value:!0});vY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","UNPAUSE")},transformReply:void 0}});var s$e=E(IY=>{"use strict";Object.defineProperty(IY,"__esModule",{value:!0});IY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var i$e=E(CY=>{"use strict";Object.defineProperty(CY,"__esModule",{value:!0});var Gar=Ce();CY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTSRANGE"),(0,Gar.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var a$e=E(TY=>{"use strict";Object.defineProperty(TY,"__esModule",{value:!0});TY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","BUMPEPOCH")},transformReply:void 0}});var o$e=E(wY=>{"use strict";Object.defineProperty(wY,"__esModule",{value:!0});wY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNT-FAILURE-REPORTS",e)},transformReply:void 0}});var c$e=E(RY=>{"use strict";Object.defineProperty(RY,"__esModule",{value:!0});RY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNTKEYSINSLOT",e.toString())},transformReply:void 0}});var u$e=E(NY=>{"use strict";Object.defineProperty(NY,"__esModule",{value:!0});NY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var l$e=E(OY=>{"use strict";Object.defineProperty(OY,"__esModule",{value:!0});var Kar=Ce();OY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTSRANGE"),(0,Kar.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var d$e=E(QI=>{"use strict";Object.defineProperty(QI,"__esModule",{value:!0});QI.FAILOVER_MODES=void 0;QI.FAILOVER_MODES={FORCE:"FORCE",TAKEOVER:"TAKEOVER"};QI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FAILOVER"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var f$e=E(PY=>{"use strict";Object.defineProperty(PY,"__esModule",{value:!0});PY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","FLUSHSLOTS")},transformReply:void 0}});var p$e=E(kY=>{"use strict";Object.defineProperty(kY,"__esModule",{value:!0});kY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FORGET",e)},transformReply:void 0}});var m$e=E(DY=>{"use strict";Object.defineProperty(DY,"__esModule",{value:!0});DY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","GETKEYSINSLOT",e.toString(),r.toString())},transformReply:void 0}});var h$e=E(BY=>{"use strict";Object.defineProperty(BY,"__esModule",{value:!0});BY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","INFO")},transformReply:void 0}});var g$e=E(LY=>{"use strict";Object.defineProperty(LY,"__esModule",{value:!0});LY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","KEYSLOT",e)},transformReply:void 0}});var A$e=E(MY=>{"use strict";Object.defineProperty(MY,"__esModule",{value:!0});MY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","LINKS")},transformReply:{2:t=>t.map(e=>{let r=e;return{direction:r[1],node:r[3],"create-time":r[5],events:r[7],"send-buffer-allocated":r[9],"send-buffer-used":r[11]}}),3:void 0}}});var y$e=E(WY=>{"use strict";Object.defineProperty(WY,"__esModule",{value:!0});WY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","MEET",e,r.toString())},transformReply:void 0}});var x$e=E($Y=>{"use strict";Object.defineProperty($Y,"__esModule",{value:!0});$Y.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYID")},transformReply:void 0}});var b$e=E(FY=>{"use strict";Object.defineProperty(FY,"__esModule",{value:!0});FY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYSHARDID")},transformReply:void 0}});var E$e=E(UY=>{"use strict";Object.defineProperty(UY,"__esModule",{value:!0});UY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","NODES")},transformReply:void 0}});var _$e=E(qY=>{"use strict";Object.defineProperty(qY,"__esModule",{value:!0});qY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICAS",e)},transformReply:void 0}});var S$e=E(jY=>{"use strict";Object.defineProperty(jY,"__esModule",{value:!0});jY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICATE",e)},transformReply:void 0}});var v$e=E(HY=>{"use strict";Object.defineProperty(HY,"__esModule",{value:!0});HY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","RESET"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var I$e=E(QY=>{"use strict";Object.defineProperty(QY,"__esModule",{value:!0});QY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SAVECONFIG")},transformReply:void 0}});var C$e=E(GY=>{"use strict";Object.defineProperty(GY,"__esModule",{value:!0});GY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","SET-CONFIG-EPOCH",e.toString())},transformReply:void 0}});var T$e=E(GI=>{"use strict";Object.defineProperty(GI,"__esModule",{value:!0});GI.CLUSTER_SLOT_STATES=void 0;GI.CLUSTER_SLOT_STATES={IMPORTING:"IMPORTING",MIGRATING:"MIGRATING",STABLE:"STABLE",NODE:"NODE"};GI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("CLUSTER","SETSLOT",e.toString(),r),n&&t.push(n)},transformReply:void 0}});var R$e=E(KY=>{"use strict";Object.defineProperty(KY,"__esModule",{value:!0});KY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SLOTS")},transformReply(t){return t.map(([e,r,n,...s])=>({from:e,to:r,master:w$e(n),replicas:s.map(w$e)}))}};function w$e(t){let[e,r,n]=t;return{host:e,port:r,id:n}}});var N$e=E(VY=>{"use strict";Object.defineProperty(VY,"__esModule",{value:!0});VY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND","COUNT")},transformReply:void 0}});var O$e=E(zY=>{"use strict";Object.defineProperty(zY,"__esModule",{value:!0});zY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYS"),t.push(...e)},transformReply:void 0}});var P$e=E(YY=>{"use strict";Object.defineProperty(YY,"__esModule",{value:!0});YY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYSANDFLAGS"),t.push(...e)},transformReply(t){return t.map(e=>{let[r,n]=e;return{key:r,flags:n}})}}});var k$e=E(JY=>{"use strict";Object.defineProperty(JY,"__esModule",{value:!0});var Var=Ce();JY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","INFO",...e)},transformReply(t){return t.map(e=>e?(0,Var.transformCommandReply)(e):null)}}});var D$e=E(KI=>{"use strict";Object.defineProperty(KI,"__esModule",{value:!0});KI.COMMAND_LIST_FILTER_BY=void 0;KI.COMMAND_LIST_FILTER_BY={MODULE:"MODULE",ACLCAT:"ACLCAT",PATTERN:"PATTERN"};KI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","LIST"),e?.FILTERBY&&t.push("FILTERBY",e.FILTERBY.type,e.FILTERBY.value)},transformReply:void 0}});var B$e=E(XY=>{"use strict";Object.defineProperty(XY,"__esModule",{value:!0});var zar=Ce();XY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND")},transformReply(t){return t.map(zar.transformCommandReply)}}});var L$e=E(ZY=>{"use strict";Object.defineProperty(ZY,"__esModule",{value:!0});var Yar=Ce();ZY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CONFIG","GET"),t.pushVariadic(e)},transformReply:{2:Yar.transformTuplesReply,3:void 0}}});var M$e=E(eJ=>{"use strict";Object.defineProperty(eJ,"__esModule",{value:!0});eJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","RESETSTAT")},transformReply:void 0}});var W$e=E(tJ=>{"use strict";Object.defineProperty(tJ,"__esModule",{value:!0});tJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","REWRITE")},transformReply:void 0}});var $$e=E(rJ=>{"use strict";Object.defineProperty(rJ,"__esModule",{value:!0});rJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,...[e,r]){if(t.push("CONFIG","SET"),typeof e=="string"||e instanceof Buffer)t.push(e,r);else for(let[n,s]of Object.entries(e))t.push(n,s)},transformReply:void 0}});var F$e=E(nJ=>{"use strict";Object.defineProperty(nJ,"__esModule",{value:!0});nJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("COPY"),t.pushKeys([e,r]),n?.DB&&t.push("DB",n.DB.toString()),n?.REPLACE&&t.push("REPLACE")},transformReply:void 0}});var U$e=E(sJ=>{"use strict";Object.defineProperty(sJ,"__esModule",{value:!0});sJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("DBSIZE")},transformReply:void 0}});var q$e=E(iJ=>{"use strict";Object.defineProperty(iJ,"__esModule",{value:!0});iJ.default={parseCommand(t,e){t.push("DECR"),t.pushKey(e)},transformReply:void 0}});var j$e=E(aJ=>{"use strict";Object.defineProperty(aJ,"__esModule",{value:!0});aJ.default={parseCommand(t,e,r){t.push("DECRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var H$e=E(oJ=>{"use strict";Object.defineProperty(oJ,"__esModule",{value:!0});oJ.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("DEL"),t.pushKeys(e)},transformReply:void 0}});var Q$e=E(VI=>{"use strict";Object.defineProperty(VI,"__esModule",{value:!0});VI.DelexCondition=void 0;VI.DelexCondition={IFEQ:"IFEQ",IFNE:"IFNE",IFDEQ:"IFDEQ",IFDNE:"IFDNE"};VI.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("DELEX"),t.pushKey(e),r&&(t.push(r.condition),t.push(r.matchValue))},transformReply:void 0}});var G$e=E(cJ=>{"use strict";Object.defineProperty(cJ,"__esModule",{value:!0});cJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DIGEST"),t.pushKey(e)},transformReply:void 0}});var K$e=E(uJ=>{"use strict";Object.defineProperty(uJ,"__esModule",{value:!0});uJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DUMP"),t.pushKey(e)},transformReply:void 0}});var V$e=E(lJ=>{"use strict";Object.defineProperty(lJ,"__esModule",{value:!0});lJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ECHO",e)},transformReply:void 0}});var cg=E(zI=>{"use strict";Object.defineProperty(zI,"__esModule",{value:!0});zI.parseEvalArguments=void 0;function z$e(t,e,r){t.push(e),r?.keys?t.pushKeysLength(r.keys):t.push("0"),r?.arguments&&t.push(...r.arguments)}zI.parseEvalArguments=z$e;zI.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVAL"),z$e(...t)},transformReply:void 0}});var J$e=E(mf=>{"use strict";var Jar=mf&&mf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Xar=mf&&mf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Zar=mf&&mf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Jar(e,t,r);return Xar(e,t),e};Object.defineProperty(mf,"__esModule",{value:!0});var Y$e=Zar(cg());mf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVAL_RO"),(0,Y$e.parseEvalArguments)(...t)},transformReply:Y$e.default.transformReply}});var Z$e=E(hf=>{"use strict";var eor=hf&&hf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),tor=hf&&hf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),ror=hf&&hf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&eor(e,t,r);return tor(e,t),e};Object.defineProperty(hf,"__esModule",{value:!0});var X$e=ror(cg());hf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVALSHA_RO"),(0,X$e.parseEvalArguments)(...t)},transformReply:X$e.default.transformReply}});var tFe=E(gf=>{"use strict";var nor=gf&&gf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),sor=gf&&gf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),ior=gf&&gf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&nor(e,t,r);return sor(e,t),e};Object.defineProperty(gf,"__esModule",{value:!0});var eFe=ior(cg());gf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVALSHA"),(0,eFe.parseEvalArguments)(...t)},transformReply:eFe.default.transformReply}});var nFe=E(dJ=>{"use strict";Object.defineProperty(dJ,"__esModule",{value:!0});dJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){if(t.push("GEOADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.CH&&t.push("CH"),Array.isArray(r))for(let s of r)rFe(t,s);else rFe(t,r)},transformReply:void 0};function rFe(t,{longitude:e,latitude:r,member:n}){t.push(e.toString(),r.toString(),n)}});var sFe=E(fJ=>{"use strict";Object.defineProperty(fJ,"__esModule",{value:!0});fJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEODIST"),t.pushKey(e),t.push(r,n),s&&t.push(s)},transformReply(t){return t===null?null:Number(t)}}});var iFe=E(pJ=>{"use strict";Object.defineProperty(pJ,"__esModule",{value:!0});pJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOHASH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var aFe=E(mJ=>{"use strict";Object.defineProperty(mJ,"__esModule",{value:!0});mJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOPOS"),t.pushKey(e),t.pushVariadic(r)},transformReply(t){return t.map(e=>{let r=e;return r===null?null:{longitude:r[0],latitude:r[1]}})}}});var lg=E(ug=>{"use strict";Object.defineProperty(ug,"__esModule",{value:!0});ug.parseGeoSearchOptions=ug.parseGeoSearchArguments=void 0;function oFe(t,e,r,n,s){t.pushKey(e),typeof r=="string"||r instanceof Buffer?t.push("FROMMEMBER",r):t.push("FROMLONLAT",r.longitude.toString(),r.latitude.toString()),"radius"in n?t.push("BYRADIUS",n.radius.toString(),n.unit):t.push("BYBOX",n.width.toString(),n.height.toString(),n.unit),cFe(t,s)}ug.parseGeoSearchArguments=oFe;function cFe(t,e){e?.SORT&&t.push(e.SORT),e?.COUNT&&(typeof e.COUNT=="number"?t.push("COUNT",e.COUNT.toString()):(t.push("COUNT",e.COUNT.value.toString()),e.COUNT.ANY&&t.push("ANY")))}ug.parseGeoSearchOptions=cFe;ug.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEOSEARCH"),oFe(t,e,r,n,s)},transformReply:void 0}});var JI=E(YI=>{"use strict";Object.defineProperty(YI,"__esModule",{value:!0});YI.parseGeoRadiusArguments=void 0;var aor=lg();function uFe(t,e,r,n,s,i){t.pushKey(e),t.push(r.longitude.toString(),r.latitude.toString(),n.toString(),s),(0,aor.parseGeoSearchOptions)(t,i)}YI.parseGeoRadiusArguments=uFe;YI.default={IS_READ_ONLY:!1,parseCommand(...t){return t[0].push("GEORADIUS"),uFe(...t)},transformReply:void 0}});var XI=E(kl=>{"use strict";var oor=kl&&kl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kl,"__esModule",{value:!0});kl.GEO_REPLY_WITH=void 0;var lFe=oor(lg());kl.GEO_REPLY_WITH={DISTANCE:"WITHDIST",HASH:"WITHHASH",COORDINATES:"WITHCOORD"};kl.default={IS_READ_ONLY:lFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i){lFe.default.parseCommand(t,e,r,n,i),t.push(...s),t.preserve=s},transformReply(t,e){let r=new Set(e),n=0,s=r.has(kl.GEO_REPLY_WITH.DISTANCE)&&++n,i=r.has(kl.GEO_REPLY_WITH.HASH)&&++n,a=r.has(kl.GEO_REPLY_WITH.COORDINATES)&&++n;return t.map(o=>{let c=o,u={member:c[0]};if(s&&(u.distance=c[s]),i&&(u.hash=c[i]),a){let[l,d]=c[a];u.coordinates={longitude:l,latitude:d}}return u})}}});var sL=E(ko=>{"use strict";var cor=ko&&ko.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),uor=ko&&ko.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),lor=ko&&ko.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&cor(e,t,r);return uor(e,t),e},dor=ko&&ko.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ko,"__esModule",{value:!0});ko.parseGeoRadiusWithArguments=void 0;var dFe=lor(JI()),por=dor(XI());function fFe(t,e,r,n,s,i,a){(0,dFe.parseGeoRadiusArguments)(t,e,r,n,s,a),t.pushVariadic(i),t.preserve=i}ko.parseGeoRadiusWithArguments=fFe;ko.default={IS_READ_ONLY:dFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),fFe(t,e,r,n,s,i,a)},transformReply:por.default.transformReply}});var pFe=E(ZI=>{"use strict";var mor=ZI&&ZI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ZI,"__esModule",{value:!0});var hor=sL(),gor=mor(sL());ZI.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,hor.parseGeoRadiusWithArguments)(...t)},transformReply:gor.default.transformReply}});var hFe=E(Af=>{"use strict";var Aor=Af&&Af.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),yor=Af&&Af.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),xor=Af&&Af.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Aor(e,t,r);return yor(e,t),e};Object.defineProperty(Af,"__esModule",{value:!0});var mFe=xor(JI());Af.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,mFe.parseGeoRadiusArguments)(...t)},transformReply:mFe.default.transformReply}});var AFe=E(yf=>{"use strict";var bor=yf&&yf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Eor=yf&&yf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),_or=yf&&yf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&bor(e,t,r);return Eor(e,t),e};Object.defineProperty(yf,"__esModule",{value:!0});var gFe=_or(JI());yf.default={IS_READ_ONLY:gFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),(0,gFe.parseGeoRadiusArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var tC=E(eC=>{"use strict";Object.defineProperty(eC,"__esModule",{value:!0});eC.parseGeoRadiusByMemberArguments=void 0;var Sor=lg();function yFe(t,e,r,n,s,i){t.pushKey(e),t.push(r,n.toString(),s),(0,Sor.parseGeoSearchOptions)(t,i)}eC.parseGeoRadiusByMemberArguments=yFe;eC.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEORADIUSBYMEMBER"),yFe(t,e,r,n,s,i)},transformReply:void 0}});var hJ=E(dg=>{"use strict";var xFe=dg&&dg.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(dg,"__esModule",{value:!0});dg.parseGeoRadiusByMemberWithArguments=void 0;var vor=xFe(tC()),Ior=lg(),Cor=xFe(XI());function bFe(t,e,r,n,s,i,a){t.pushKey(e),t.push(r,n.toString(),s),(0,Ior.parseGeoSearchOptions)(t,a),t.push(...i),t.preserve=i}dg.parseGeoRadiusByMemberWithArguments=bFe;dg.default={IS_READ_ONLY:vor.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),bFe(t,e,r,n,s,i,a)},transformReply:Cor.default.transformReply}});var _Fe=E(xf=>{"use strict";var Tor=xf&&xf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),wor=xf&&xf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ror=xf&&xf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Tor(e,t,r);return wor(e,t),e};Object.defineProperty(xf,"__esModule",{value:!0});var EFe=Ror(hJ());xf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,EFe.parseGeoRadiusByMemberWithArguments)(...t)},transformReply:EFe.default.transformReply}});var vFe=E(bf=>{"use strict";var Nor=bf&&bf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Oor=bf&&bf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Por=bf&&bf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Nor(e,t,r);return Oor(e,t),e};Object.defineProperty(bf,"__esModule",{value:!0});var SFe=Por(tC());bf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,SFe.parseGeoRadiusByMemberArguments)(...t)},transformReply:SFe.default.transformReply}});var CFe=E(Ef=>{"use strict";var kor=Ef&&Ef.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Dor=Ef&&Ef.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Bor=Ef&&Ef.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&kor(e,t,r);return Dor(e,t),e};Object.defineProperty(Ef,"__esModule",{value:!0});var IFe=Bor(tC());Ef.default={IS_READ_ONLY:IFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),(0,IFe.parseGeoRadiusByMemberArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var TFe=E(gJ=>{"use strict";Object.defineProperty(gJ,"__esModule",{value:!0});var Lor=lg();gJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEOSEARCHSTORE"),e!==void 0&&t.pushKey(e),(0,Lor.parseGeoSearchArguments)(t,r,n,s,i),i?.STOREDIST&&t.push("STOREDIST")},transformReply:void 0}});var wFe=E(AJ=>{"use strict";Object.defineProperty(AJ,"__esModule",{value:!0});AJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("GET"),t.pushKey(e)},transformReply:void 0}});var RFe=E(yJ=>{"use strict";Object.defineProperty(yJ,"__esModule",{value:!0});yJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETBIT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var NFe=E(xJ=>{"use strict";Object.defineProperty(xJ,"__esModule",{value:!0});xJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("GETDEL"),t.pushKey(e)},transformReply:void 0}});var OFe=E(EJ=>{"use strict";Object.defineProperty(EJ,"__esModule",{value:!0});var bJ=Ce();EJ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("GETEX"),t.pushKey(e),"type"in r)switch(r.type){case"EX":case"PX":t.push(r.type,r.value.toString());break;case"EXAT":case"PXAT":t.push(r.type,(0,bJ.transformEXAT)(r.value));break;case"PERSIST":t.push("PERSIST");break}else"EX"in r?t.push("EX",r.EX.toString()):"PX"in r?t.push("PX",r.PX.toString()):"EXAT"in r?t.push("EXAT",(0,bJ.transformEXAT)(r.EXAT)):"PXAT"in r?t.push("PXAT",(0,bJ.transformPXAT)(r.PXAT)):t.push("PERSIST")},transformReply:void 0}});var PFe=E(_J=>{"use strict";Object.defineProperty(_J,"__esModule",{value:!0});_J.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("GETRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var kFe=E(SJ=>{"use strict";Object.defineProperty(SJ,"__esModule",{value:!0});SJ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETSET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var DFe=E(vJ=>{"use strict";Object.defineProperty(vJ,"__esModule",{value:!0});vJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXISTS"),t.pushKeys(e)},transformReply:void 0}});var BFe=E(IJ=>{"use strict";Object.defineProperty(IJ,"__esModule",{value:!0});IJ.default={parseCommand(t,e,r,n){t.push("EXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var LFe=E(CJ=>{"use strict";Object.defineProperty(CJ,"__esModule",{value:!0});var Mor=Ce();CJ.default={parseCommand(t,e,r,n){t.push("EXPIREAT"),t.pushKey(e),t.push((0,Mor.transformEXAT)(r)),n&&t.push(n)},transformReply:void 0}});var MFe=E(TJ=>{"use strict";Object.defineProperty(TJ,"__esModule",{value:!0});TJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var WFe=E(rC=>{"use strict";Object.defineProperty(rC,"__esModule",{value:!0});rC.REDIS_FLUSH_MODES=void 0;rC.REDIS_FLUSH_MODES={ASYNC:"ASYNC",SYNC:"SYNC"};rC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHALL"),e&&t.push(e)},transformReply:void 0}});var $Fe=E(wJ=>{"use strict";Object.defineProperty(wJ,"__esModule",{value:!0});wJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHDB"),e&&t.push(e)},transformReply:void 0}});var UFe=E(_f=>{"use strict";var Wor=_f&&_f.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),$or=_f&&_f.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),For=_f&&_f.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Wor(e,t,r);return $or(e,t),e};Object.defineProperty(_f,"__esModule",{value:!0});var FFe=For(cg());_f.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL"),(0,FFe.parseEvalArguments)(...t)},transformReply:FFe.default.transformReply}});var jFe=E(Sf=>{"use strict";var Uor=Sf&&Sf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),qor=Sf&&Sf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),jor=Sf&&Sf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Uor(e,t,r);return qor(e,t),e};Object.defineProperty(Sf,"__esModule",{value:!0});var qFe=jor(cg());Sf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL_RO"),(0,qFe.parseEvalArguments)(...t)},transformReply:qFe.default.transformReply}});var HFe=E(RJ=>{"use strict";Object.defineProperty(RJ,"__esModule",{value:!0});RJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","DELETE",e)},transformReply:void 0}});var QFe=E(NJ=>{"use strict";Object.defineProperty(NJ,"__esModule",{value:!0});NJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","DUMP")},transformReply:void 0}});var GFe=E(OJ=>{"use strict";Object.defineProperty(OJ,"__esModule",{value:!0});OJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","FLUSH"),e&&t.push(e)},transformReply:void 0}});var KFe=E(PJ=>{"use strict";Object.defineProperty(PJ,"__esModule",{value:!0});PJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","KILL")},transformReply:void 0}});var DJ=E(kJ=>{"use strict";Object.defineProperty(kJ,"__esModule",{value:!0});kJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","LIST"),e?.LIBRARYNAME&&t.push("LIBRARYNAME",e.LIBRARYNAME)},transformReply:{2:t=>t.map(e=>{let r=e;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}})}}),3:void 0}}});var VFe=E(nC=>{"use strict";var Hor=nC&&nC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(nC,"__esModule",{value:!0});var BJ=Hor(DJ());nC.default={NOT_KEYED_COMMAND:BJ.default.NOT_KEYED_COMMAND,IS_READ_ONLY:BJ.default.IS_READ_ONLY,parseCommand(...t){BJ.default.parseCommand(...t),t[0].push("WITHCODE")},transformReply:{2:t=>t.map(e=>{let r=e;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}}),library_code:r[7]}}),3:void 0}}});var zFe=E(LJ=>{"use strict";Object.defineProperty(LJ,"__esModule",{value:!0});LJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","LOAD"),r?.REPLACE&&t.push("REPLACE"),t.push(e)},transformReply:void 0}});var YFe=E(MJ=>{"use strict";Object.defineProperty(MJ,"__esModule",{value:!0});MJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","RESTORE",e),r?.mode&&t.push(r.mode)},transformReply:void 0}});var JFe=E(WJ=>{"use strict";Object.defineProperty(WJ,"__esModule",{value:!0});var Qor=Ce();WJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","STATS")},transformReply:{2:t=>({running_script:Gor(t[1]),engines:Kor(t[3])}),3:void 0}};function Gor(t){if((0,Qor.isNullReply)(t))return null;let e=t;return{name:e[1],command:e[3],duration_ms:e[5]}}function Kor(t){let e=t,r=Object.create(null);for(let n=0;n{"use strict";Object.defineProperty($J,"__esModule",{value:!0});$J.default={parseCommand(t,e,r){t.push("HDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var UJ=E(FJ=>{"use strict";Object.defineProperty(FJ,"__esModule",{value:!0});FJ.default={parseCommand(t,e,r){t.push("HELLO"),e&&(t.push(e.toString()),r?.AUTH&&t.push("AUTH",r.AUTH.username,r.AUTH.password),r?.SETNAME&&t.push("SETNAME",r.SETNAME))},transformReply:{2:t=>({server:t[1],version:t[3],proto:t[5],id:t[7],mode:t[9],role:t[11],modules:t[13]}),3:void 0}}});var ZFe=E(qJ=>{"use strict";Object.defineProperty(qJ,"__esModule",{value:!0});qJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXISTS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var eUe=E(sC=>{"use strict";Object.defineProperty(sC,"__esModule",{value:!0});sC.HASH_EXPIRATION=void 0;sC.HASH_EXPIRATION={FIELD_NOT_EXISTS:-2,CONDITION_NOT_MET:0,UPDATED:1,DELETED:2};sC.default={parseCommand(t,e,r,n,s){t.push("HEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var tUe=E(jJ=>{"use strict";Object.defineProperty(jJ,"__esModule",{value:!0});var Vor=Ce();jJ.default={parseCommand(t,e,r,n,s){t.push("HEXPIREAT"),t.pushKey(e),t.push((0,Vor.transformEXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var rUe=E(iC=>{"use strict";Object.defineProperty(iC,"__esModule",{value:!0});iC.HASH_EXPIRATION_TIME=void 0;iC.HASH_EXPIRATION_TIME={FIELD_NOT_EXISTS:-2,NO_EXPIRATION:-1};iC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var nUe=E(HJ=>{"use strict";Object.defineProperty(HJ,"__esModule",{value:!0});HJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HGET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var sUe=E(QJ=>{"use strict";Object.defineProperty(QJ,"__esModule",{value:!0});var zor=Ce();QJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HGETALL"),t.pushKey(e)},TRANSFORM_LEGACY_REPLY:!0,transformReply:{2:zor.transformTuplesReply,3:void 0}}});var iUe=E(GJ=>{"use strict";Object.defineProperty(GJ,"__esModule",{value:!0});GJ.default={parseCommand(t,e,r){t.push("HGETDEL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var aUe=E(KJ=>{"use strict";Object.defineProperty(KJ,"__esModule",{value:!0});KJ.default={parseCommand(t,e,r,n){t.push("HGETEX"),t.pushKey(e),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="PERSIST"?t.push("PERSIST"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var oUe=E(VJ=>{"use strict";Object.defineProperty(VJ,"__esModule",{value:!0});VJ.default={parseCommand(t,e,r,n){t.push("HINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var cUe=E(zJ=>{"use strict";Object.defineProperty(zJ,"__esModule",{value:!0});zJ.default={parseCommand(t,e,r,n){t.push("HINCRBYFLOAT"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var uUe=E(YJ=>{"use strict";Object.defineProperty(YJ,"__esModule",{value:!0});YJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HKEYS"),t.pushKey(e)},transformReply:void 0}});var lUe=E(JJ=>{"use strict";Object.defineProperty(JJ,"__esModule",{value:!0});JJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HLEN"),t.pushKey(e)},transformReply:void 0}});var dUe=E(XJ=>{"use strict";Object.defineProperty(XJ,"__esModule",{value:!0});XJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HMGET"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var fUe=E(ZJ=>{"use strict";Object.defineProperty(ZJ,"__esModule",{value:!0});ZJ.default={parseCommand(t,e,r){t.push("HPERSIST"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var pUe=E(eX=>{"use strict";Object.defineProperty(eX,"__esModule",{value:!0});eX.default={parseCommand(t,e,r,n,s){t.push("HPEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var mUe=E(tX=>{"use strict";Object.defineProperty(tX,"__esModule",{value:!0});var Yor=Ce();tX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("HPEXPIREAT"),t.pushKey(e),t.push((0,Yor.transformPXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var hUe=E(rX=>{"use strict";Object.defineProperty(rX,"__esModule",{value:!0});rX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var gUe=E(nX=>{"use strict";Object.defineProperty(nX,"__esModule",{value:!0});nX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var AUe=E(sX=>{"use strict";Object.defineProperty(sX,"__esModule",{value:!0});sX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString(),"WITHVALUES")},transformReply:{2:t=>{let e=[],r=0;for(;rt.map(e=>{let[r,n]=e;return{field:r,value:n}})}}});var yUe=E(iX=>{"use strict";Object.defineProperty(iX,"__esModule",{value:!0});iX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var xUe=E(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});aX.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("HRANDFIELD"),t.pushKey(e)},transformReply:void 0}});var aC=E(fg=>{"use strict";Object.defineProperty(fg,"__esModule",{value:!0});fg.pushScanArguments=fg.parseScanArguments=void 0;function bUe(t,e,r){t.push(e),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString())}fg.parseScanArguments=bUe;function Jor(t,e,r){return t.push(e.toString()),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString()),t}fg.pushScanArguments=Jor;fg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SCAN"),bUe(t,e,r),r?.TYPE&&t.push("TYPE",r.TYPE)},transformReply([t,e]){return{cursor:t,keys:e}}}});var cX=E(oX=>{"use strict";Object.defineProperty(oX,"__esModule",{value:!0});var Xor=aC();oX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSCAN"),t.pushKey(e),(0,Xor.parseScanArguments)(t,r,n)},transformReply([t,e]){let r=[],n=0;for(;n{"use strict";var Zor=oC&&oC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(oC,"__esModule",{value:!0});var ecr=Zor(cX());oC.default={IS_READ_ONLY:!0,parseCommand(...t){let e=t[0];ecr.default.parseCommand(...t),e.push("NOVALUES")},transformReply([t,e]){return{cursor:t,fields:e}}}});var SUe=E(uX=>{"use strict";Object.defineProperty(uX,"__esModule",{value:!0});uX.default={parseCommand(t,...[e,r,n]){t.push("HSET"),t.pushKey(e),typeof r=="string"||typeof r=="number"||r instanceof Buffer?t.push(pg(r),pg(n)):r instanceof Map?tcr(t,r):Array.isArray(r)?_Ue(t,r):rcr(t,r)},transformReply:void 0};function tcr(t,e){for(let[r,n]of e.entries())t.push(pg(r),pg(n))}function _Ue(t,e){for(let r of e){if(Array.isArray(r)){_Ue(t,r);continue}t.push(pg(r))}}function rcr(t,e){for(let r of Object.keys(e))t.push(pg(r),pg(e[r]))}function pg(t){return typeof t=="number"?t.toString():t}});var IUe=E(lX=>{"use strict";Object.defineProperty(lX,"__esModule",{value:!0});var ncr=Pl();lX.default={parseCommand(t,e,r,n){t.push("HSETEX"),t.pushKey(e),n?.mode&&t.push(n.mode),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),r instanceof Map?scr(t,r):Array.isArray(r)?icr(t,r):acr(t,r)},transformReply:void 0};function scr(t,e){t.push(e.size.toString());for(let[r,n]of e.entries())t.push(cC(r),cC(n))}function icr(t,e){let r=new ncr.BasicCommandParser;if(vUe(r,e),r.redisArgs.length%2!=0)throw Error("invalid number of arguments, expected key value ....[key value] pairs, got key without value");t.push((r.redisArgs.length/2).toString()),t.push(...r.redisArgs)}function vUe(t,e){for(let r of e){if(Array.isArray(r)){vUe(t,r);continue}t.push(cC(r))}}function acr(t,e){let r=Object.keys(e).length;if(r==0)throw Error("object without keys");t.push(r.toString());for(let n of Object.keys(e))t.push(cC(n),cC(e[n]))}function cC(t){return typeof t=="number"?t.toString():t}});var CUe=E(dX=>{"use strict";Object.defineProperty(dX,"__esModule",{value:!0});dX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSETNX"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var TUe=E(fX=>{"use strict";Object.defineProperty(fX,"__esModule",{value:!0});fX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HSTRLEN"),t.pushKey(e),t.push(r)},transformReply:void 0}});var wUe=E(pX=>{"use strict";Object.defineProperty(pX,"__esModule",{value:!0});pX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var RUe=E(mX=>{"use strict";Object.defineProperty(mX,"__esModule",{value:!0});mX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HVALS"),t.pushKey(e)},transformReply:void 0}});var OUe=E(hX=>{"use strict";Object.defineProperty(hX,"__esModule",{value:!0});function NUe(t){let e=[];for(let r=0;r{let r=e;return r.length===1?{start:Number(r[0]),end:Number(r[0])}:{start:Number(r[0]),end:Number(r[1])}})}function ccr(t){let e={},r=t[0];for(let n=0;nt===null?null:ccr(t),3:void 0},unstableResp3:!0}});var PUe=E(gX=>{"use strict";Object.defineProperty(gX,"__esModule",{value:!0});gX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","RESET")},transformReply:void 0}});var kUe=E(uC=>{"use strict";Object.defineProperty(uC,"__esModule",{value:!0});uC.HOTKEYS_METRICS=void 0;uC.HOTKEYS_METRICS={CPU:"CPU",NET:"NET"};uC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){if(t.push("HOTKEYS","START"),t.push("METRICS",e.METRICS.count.toString()),e.METRICS.CPU&&t.push("CPU"),e.METRICS.NET&&t.push("NET"),e.COUNT!==void 0&&t.push("COUNT",e.COUNT.toString()),e.DURATION!==void 0&&t.push("DURATION",e.DURATION.toString()),e.SAMPLE!==void 0&&t.push("SAMPLE",e.SAMPLE.toString()),e.SLOTS!==void 0){t.push("SLOTS",e.SLOTS.count.toString());for(let r of e.SLOTS.slots)t.push(r.toString())}},transformReply:void 0}});var DUe=E(AX=>{"use strict";Object.defineProperty(AX,"__esModule",{value:!0});AX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","STOP")},transformReply:void 0}});var BUe=E(yX=>{"use strict";Object.defineProperty(yX,"__esModule",{value:!0});yX.default={parseCommand(t,e){t.push("INCR"),t.pushKey(e)},transformReply:void 0}});var LUe=E(xX=>{"use strict";Object.defineProperty(xX,"__esModule",{value:!0});xX.default={parseCommand(t,e,r){t.push("INCRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var MUe=E(bX=>{"use strict";Object.defineProperty(bX,"__esModule",{value:!0});bX.default={parseCommand(t,e,r){t.push("INCRBYFLOAT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var WUe=E(EX=>{"use strict";Object.defineProperty(EX,"__esModule",{value:!0});EX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("INFO"),e&&t.push(e)},transformReply:void 0}});var $Ue=E(_X=>{"use strict";Object.defineProperty(_X,"__esModule",{value:!0});_X.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("KEYS",e)},transformReply:void 0}});var FUe=E(SX=>{"use strict";Object.defineProperty(SX,"__esModule",{value:!0});SX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LASTSAVE")},transformReply:void 0}});var UUe=E(vX=>{"use strict";Object.defineProperty(vX,"__esModule",{value:!0});vX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","DOCTOR")},transformReply:void 0}});var IX=E(lC=>{"use strict";Object.defineProperty(lC,"__esModule",{value:!0});lC.LATENCY_EVENTS=void 0;lC.LATENCY_EVENTS={ACTIVE_DEFRAG_CYCLE:"active-defrag-cycle",AOF_FSYNC_ALWAYS:"aof-fsync-always",AOF_STAT:"aof-stat",AOF_REWRITE_DIFF_WRITE:"aof-rewrite-diff-write",AOF_RENAME:"aof-rename",AOF_WRITE:"aof-write",AOF_WRITE_ACTIVE_CHILD:"aof-write-active-child",AOF_WRITE_ALONE:"aof-write-alone",AOF_WRITE_PENDING_FSYNC:"aof-write-pending-fsync",COMMAND:"command",EXPIRE_CYCLE:"expire-cycle",EVICTION_CYCLE:"eviction-cycle",EVICTION_DEL:"eviction-del",FAST_COMMAND:"fast-command",FORK:"fork",RDB_UNLINK_TEMP_FILE:"rdb-unlink-temp-file"};lC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","GRAPH",e)},transformReply:void 0}});var qUe=E(CX=>{"use strict";Object.defineProperty(CX,"__esModule",{value:!0});CX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","HISTORY",e)},transformReply:void 0}});var jUe=E(TX=>{"use strict";Object.defineProperty(TX,"__esModule",{value:!0});TX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","LATEST")},transformReply:void 0}});var HUe=E(dC=>{"use strict";Object.defineProperty(dC,"__esModule",{value:!0});dC.LATENCY_EVENTS=void 0;var ucr=IX();Object.defineProperty(dC,"LATENCY_EVENTS",{enumerable:!0,get:function(){return ucr.LATENCY_EVENTS}});dC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,...e){let r=["LATENCY","RESET"];e.length>0&&r.push(...e),t.push(...r)},transformReply:void 0}});var iL=E(wX=>{"use strict";Object.defineProperty(wX,"__esModule",{value:!0});wX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LCS"),t.pushKeys([e,r])},transformReply:void 0}});var RX=E(fC=>{"use strict";var lcr=fC&&fC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(fC,"__esModule",{value:!0});var QUe=lcr(iL());fC.default={IS_READ_ONLY:QUe.default.IS_READ_ONLY,parseCommand(t,e,r,n){QUe.default.parseCommand(t,e,r),t.push("IDX"),n?.MINMATCHLEN&&t.push("MINMATCHLEN",n.MINMATCHLEN.toString())},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var KUe=E(pC=>{"use strict";var dcr=pC&&pC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(pC,"__esModule",{value:!0});var GUe=dcr(RX());pC.default={IS_READ_ONLY:GUe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];GUe.default.parseCommand(...t),e.push("WITHMATCHLEN")},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var zUe=E(mC=>{"use strict";var fcr=mC&&mC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mC,"__esModule",{value:!0});var VUe=fcr(iL());mC.default={IS_READ_ONLY:VUe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];VUe.default.parseCommand(...t),e.push("LEN")},transformReply:void 0}});var YUe=E(NX=>{"use strict";Object.defineProperty(NX,"__esModule",{value:!0});NX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LINDEX"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var JUe=E(OX=>{"use strict";Object.defineProperty(OX,"__esModule",{value:!0});OX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("LINSERT"),t.pushKey(e),t.push(r,n,s)},transformReply:void 0}});var XUe=E(PX=>{"use strict";Object.defineProperty(PX,"__esModule",{value:!0});PX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LLEN"),t.pushKey(e)},transformReply:void 0}});var ZUe=E(kX=>{"use strict";Object.defineProperty(kX,"__esModule",{value:!0});kX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("LMOVE"),t.pushKeys([e,r]),t.push(n,s)},transformReply:void 0}});var e7e=E(DX=>{"use strict";Object.defineProperty(DX,"__esModule",{value:!0});DX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("LOLWUT"),e&&(t.push("VERSION",e.toString()),t.pushVariadic(r.map(String)))},transformReply:void 0}});var LX=E(BX=>{"use strict";Object.defineProperty(BX,"__esModule",{value:!0});BX.default={parseCommand(t,e){t.push("LPOP"),t.pushKey(e)},transformReply:void 0}});var t7e=E(hC=>{"use strict";var pcr=hC&&hC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hC,"__esModule",{value:!0});var mcr=pcr(LX());hC.default={IS_READ_ONLY:!1,parseCommand(t,e,r){mcr.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var WX=E(MX=>{"use strict";Object.defineProperty(MX,"__esModule",{value:!0});MX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LPOS"),t.pushKey(e),t.push(r),n?.RANK!==void 0&&t.push("RANK",n.RANK.toString()),n?.MAXLEN!==void 0&&t.push("MAXLEN",n.MAXLEN.toString())},transformReply:void 0}});var r7e=E(gC=>{"use strict";var hcr=gC&&gC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gC,"__esModule",{value:!0});var $X=hcr(WX());gC.default={CACHEABLE:$X.default.CACHEABLE,IS_READ_ONLY:$X.default.IS_READ_ONLY,parseCommand(t,e,r,n,s){$X.default.parseCommand(t,e,r,s),t.push("COUNT",n.toString())},transformReply:void 0}});var n7e=E(FX=>{"use strict";Object.defineProperty(FX,"__esModule",{value:!0});FX.default={parseCommand(t,e,r){t.push("LPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var s7e=E(UX=>{"use strict";Object.defineProperty(UX,"__esModule",{value:!0});UX.default={parseCommand(t,e,r){t.push("LPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var i7e=E(qX=>{"use strict";Object.defineProperty(qX,"__esModule",{value:!0});qX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var a7e=E(jX=>{"use strict";Object.defineProperty(jX,"__esModule",{value:!0});jX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LREM"),t.pushKey(e),t.push(r.toString()),t.push(n)},transformReply:void 0}});var o7e=E(HX=>{"use strict";Object.defineProperty(HX,"__esModule",{value:!0});HX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LSET"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var c7e=E(QX=>{"use strict";Object.defineProperty(QX,"__esModule",{value:!0});QX.default={parseCommand(t,e,r,n){t.push("LTRIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var u7e=E(GX=>{"use strict";Object.defineProperty(GX,"__esModule",{value:!0});GX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","DOCTOR")},transformReply:void 0}});var l7e=E(KX=>{"use strict";Object.defineProperty(KX,"__esModule",{value:!0});KX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","MALLOC-STATS")},transformReply:void 0}});var d7e=E(VX=>{"use strict";Object.defineProperty(VX,"__esModule",{value:!0});VX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("MEMORY","PURGE")},transformReply:void 0}});var f7e=E(zX=>{"use strict";Object.defineProperty(zX,"__esModule",{value:!0});var gcr=Ce();zX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","STATS")},transformReply:{2:(t,e,r)=>{let n={},s=0;for(;s{"use strict";Object.defineProperty(YX,"__esModule",{value:!0});YX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MEMORY","USAGE"),t.pushKey(e),r?.SAMPLES&&t.push("SAMPLES",r.SAMPLES.toString())},transformReply:void 0}});var m7e=E(JX=>{"use strict";Object.defineProperty(JX,"__esModule",{value:!0});JX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MGET"),t.pushKeys(e)},transformReply:void 0}});var h7e=E(XX=>{"use strict";Object.defineProperty(XX,"__esModule",{value:!0});XX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("MIGRATE",e,r.toString());let o=Array.isArray(n);o?t.push(""):t.push(n),t.push(s.toString(),i.toString()),a?.COPY&&t.push("COPY"),a?.REPLACE&&t.push("REPLACE"),a?.AUTH&&(a.AUTH.username?t.push("AUTH2",a.AUTH.username,a.AUTH.password):t.push("AUTH",a.AUTH.password)),o&&(t.push("KEYS"),t.pushVariadic(n))},transformReply:void 0}});var g7e=E(ZX=>{"use strict";Object.defineProperty(ZX,"__esModule",{value:!0});ZX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MODULE","LIST")},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],ver:r[3]}}),3:void 0}}});var A7e=E(eZ=>{"use strict";Object.defineProperty(eZ,"__esModule",{value:!0});eZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MODULE","LOAD",e),r&&t.push(...r)},transformReply:void 0}});var y7e=E(tZ=>{"use strict";Object.defineProperty(tZ,"__esModule",{value:!0});tZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MODULE","UNLOAD",e)},transformReply:void 0}});var x7e=E(rZ=>{"use strict";Object.defineProperty(rZ,"__esModule",{value:!0});rZ.default={parseCommand(t,e,r){t.push("MOVE"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var nZ=E(AC=>{"use strict";Object.defineProperty(AC,"__esModule",{value:!0});AC.parseMSetArguments=void 0;function b7e(t,e){if(Array.isArray(e)){if(e.length==0)throw new Error("empty toSet Argument");if(Array.isArray(e[0]))for(let r of e)t.pushKey(r[0]),t.push(r[1]);else{let r=e;for(let n=0;n{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.parseMSetExArguments=xi.ExpirationMode=xi.SetMode=void 0;var E7e=Ce();xi.SetMode={XX:"XX",NX:"NX"};xi.ExpirationMode={EX:"EX",PX:"PX",EXAT:"EXAT",PXAT:"PXAT",KEEPTTL:"KEEPTTL"};function _7e(t,e){let r=[];if(Array.isArray(e)){if(e.length==0)throw new Error("empty keyValuePairs Argument");if(Array.isArray(e[0]))r=e;else{let n=e;for(let s=0;s{"use strict";Object.defineProperty(sZ,"__esModule",{value:!0});var Acr=nZ();sZ.default={IS_READ_ONLY:!0,parseCommand(t,e){return t.push("MSETNX"),(0,Acr.parseMSetArguments)(t,e)},transformReply:void 0}});var I7e=E(iZ=>{"use strict";Object.defineProperty(iZ,"__esModule",{value:!0});iZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","ENCODING"),t.pushKey(e)},transformReply:void 0}});var C7e=E(aZ=>{"use strict";Object.defineProperty(aZ,"__esModule",{value:!0});aZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","FREQ"),t.pushKey(e)},transformReply:void 0}});var T7e=E(oZ=>{"use strict";Object.defineProperty(oZ,"__esModule",{value:!0});oZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","IDLETIME"),t.pushKey(e)},transformReply:void 0}});var w7e=E(cZ=>{"use strict";Object.defineProperty(cZ,"__esModule",{value:!0});cZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","REFCOUNT"),t.pushKey(e)},transformReply:void 0}});var R7e=E(uZ=>{"use strict";Object.defineProperty(uZ,"__esModule",{value:!0});uZ.default={parseCommand(t,e){t.push("PERSIST"),t.pushKey(e)},transformReply:void 0}});var N7e=E(lZ=>{"use strict";Object.defineProperty(lZ,"__esModule",{value:!0});lZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var O7e=E(dZ=>{"use strict";Object.defineProperty(dZ,"__esModule",{value:!0});var ycr=Ce();dZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIREAT"),t.pushKey(e),t.push((0,ycr.transformPXAT)(r)),n&&t.push(n)},transformReply:void 0}});var P7e=E(fZ=>{"use strict";Object.defineProperty(fZ,"__esModule",{value:!0});fZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PEXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var k7e=E(pZ=>{"use strict";Object.defineProperty(pZ,"__esModule",{value:!0});pZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("PFADD"),t.pushKey(e),r&&t.pushVariadic(r)},transformReply:void 0}});var D7e=E(mZ=>{"use strict";Object.defineProperty(mZ,"__esModule",{value:!0});mZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PFCOUNT"),t.pushKeys(e)},transformReply:void 0}});var B7e=E(hZ=>{"use strict";Object.defineProperty(hZ,"__esModule",{value:!0});hZ.default={parseCommand(t,e,r){t.push("PFMERGE"),t.pushKey(e),r&&t.pushKeys(r)},transformReply:void 0}});var L7e=E(gZ=>{"use strict";Object.defineProperty(gZ,"__esModule",{value:!0});gZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PING"),e&&t.push(e)},transformReply:void 0}});var M7e=E(AZ=>{"use strict";Object.defineProperty(AZ,"__esModule",{value:!0});AZ.default={parseCommand(t,e,r,n){t.push("PSETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var W7e=E(yZ=>{"use strict";Object.defineProperty(yZ,"__esModule",{value:!0});yZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PTTL"),t.pushKey(e)},transformReply:void 0}});var $7e=E(xZ=>{"use strict";Object.defineProperty(xZ,"__esModule",{value:!0});xZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,IS_FORWARD_COMMAND:!0,parseCommand(t,e,r){t.push("PUBLISH",e,r)},transformReply:void 0}});var F7e=E(bZ=>{"use strict";Object.defineProperty(bZ,"__esModule",{value:!0});bZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","CHANNELS"),e&&t.push(e)},transformReply:void 0}});var U7e=E(EZ=>{"use strict";Object.defineProperty(EZ,"__esModule",{value:!0});EZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("PUBSUB","NUMPAT")},transformReply:void 0}});var q7e=E(_Z=>{"use strict";Object.defineProperty(_Z,"__esModule",{value:!0});_Z.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","NUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null),r=0;for(;r{"use strict";Object.defineProperty(SZ,"__esModule",{value:!0});SZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDNUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(vZ,"__esModule",{value:!0});vZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDCHANNELS"),e&&t.push(e)},transformReply:void 0}});var Q7e=E(IZ=>{"use strict";Object.defineProperty(IZ,"__esModule",{value:!0});IZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RANDOMKEY")},transformReply:void 0}});var G7e=E(CZ=>{"use strict";Object.defineProperty(CZ,"__esModule",{value:!0});CZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("READONLY")},transformReply:void 0}});var K7e=E(TZ=>{"use strict";Object.defineProperty(TZ,"__esModule",{value:!0});TZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAME"),t.pushKeys([e,r])},transformReply:void 0}});var V7e=E(wZ=>{"use strict";Object.defineProperty(wZ,"__esModule",{value:!0});wZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAMENX"),t.pushKeys([e,r])},transformReply:void 0}});var z7e=E(RZ=>{"use strict";Object.defineProperty(RZ,"__esModule",{value:!0});RZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("REPLICAOF",e,r.toString())},transformReply:void 0}});var Y7e=E(NZ=>{"use strict";Object.defineProperty(NZ,"__esModule",{value:!0});NZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RESTORE-ASKING")},transformReply:void 0}});var J7e=E(OZ=>{"use strict";Object.defineProperty(OZ,"__esModule",{value:!0});OZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("RESTORE"),t.pushKey(e),t.push(r.toString(),n),s?.REPLACE&&t.push("REPLACE"),s?.ABSTTL&&t.push("ABSTTL"),s?.IDLETIME&&t.push("IDLETIME",s.IDLETIME.toString()),s?.FREQ&&t.push("FREQ",s.FREQ.toString())},transformReply:void 0}});var X7e=E(PZ=>{"use strict";Object.defineProperty(PZ,"__esModule",{value:!0});PZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ROLE")},transformReply(t){switch(t[0]){case"master":{let[e,r,n]=t;return{role:e,replicationOffest:r,replicas:n.map(s=>{let[i,a,o]=s;return{host:i,port:Number(a),replicationOffest:Number(o)}})}}case"slave":{let[e,r,n,s,i]=t;return{role:e,master:{host:r,port:n},state:s,dataReceived:i}}case"sentinel":{let[e,r]=t;return{role:e,masterNames:r}}}}}});var Z7e=E(kZ=>{"use strict";Object.defineProperty(kZ,"__esModule",{value:!0});kZ.default={parseCommand(t,e,r){t.push("RPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var eqe=E(DZ=>{"use strict";Object.defineProperty(DZ,"__esModule",{value:!0});DZ.default={parseCommand(t,e){t.push("RPOP"),t.pushKey(e)},transformReply:void 0}});var tqe=E(BZ=>{"use strict";Object.defineProperty(BZ,"__esModule",{value:!0});BZ.default={parseCommand(t,e,r){t.push("RPOPLPUSH"),t.pushKeys([e,r])},transformReply:void 0}});var rqe=E(LZ=>{"use strict";Object.defineProperty(LZ,"__esModule",{value:!0});LZ.default={parseCommand(t,e,r){t.push("RPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var nqe=E(MZ=>{"use strict";Object.defineProperty(MZ,"__esModule",{value:!0});MZ.default={parseCommand(t,e,r){t.push("RPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var sqe=E(WZ=>{"use strict";Object.defineProperty(WZ,"__esModule",{value:!0});WZ.default={parseCommand(t,e,r){t.push("SADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var iqe=E($Z=>{"use strict";Object.defineProperty($Z,"__esModule",{value:!0});$Z.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCARD"),t.pushKey(e)},transformReply:void 0}});var aqe=E(FZ=>{"use strict";Object.defineProperty(FZ,"__esModule",{value:!0});FZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","DEBUG",e)},transformReply:void 0}});var oqe=E(UZ=>{"use strict";Object.defineProperty(UZ,"__esModule",{value:!0});UZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","EXISTS"),t.pushVariadic(e)},transformReply:void 0}});var cqe=E(qZ=>{"use strict";Object.defineProperty(qZ,"__esModule",{value:!0});qZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","FLUSH"),e&&t.push(e)},transformReply:void 0}});var uqe=E(jZ=>{"use strict";Object.defineProperty(jZ,"__esModule",{value:!0});jZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("SCRIPT","KILL")},transformReply:void 0}});var lqe=E(HZ=>{"use strict";Object.defineProperty(HZ,"__esModule",{value:!0});HZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","LOAD",e)},transformReply:void 0}});var dqe=E(QZ=>{"use strict";Object.defineProperty(QZ,"__esModule",{value:!0});QZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SDIFF"),t.pushKeys(e)},transformReply:void 0}});var fqe=E(GZ=>{"use strict";Object.defineProperty(GZ,"__esModule",{value:!0});GZ.default={parseCommand(t,e,r){t.push("SDIFFSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var pqe=E(KZ=>{"use strict";Object.defineProperty(KZ,"__esModule",{value:!0});KZ.default={parseCommand(t,e,r,n){t.push("SET"),t.pushKey(e),t.push(typeof r=="number"?r.toString():r),n?.expiration?typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString()):n?.EX!==void 0?t.push("EX",n.EX.toString()):n?.PX!==void 0?t.push("PX",n.PX.toString()):n?.EXAT!==void 0?t.push("EXAT",n.EXAT.toString()):n?.PXAT!==void 0?t.push("PXAT",n.PXAT.toString()):n?.KEEPTTL&&t.push("KEEPTTL"),n?.condition?(t.push(n.condition),n?.matchValue!==void 0&&t.push(n.matchValue)):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.GET&&t.push("GET")},transformReply:void 0}});var mqe=E(VZ=>{"use strict";Object.defineProperty(VZ,"__esModule",{value:!0});VZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SETBIT"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var hqe=E(zZ=>{"use strict";Object.defineProperty(zZ,"__esModule",{value:!0});zZ.default={parseCommand(t,e,r,n){t.push("SETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var gqe=E(YZ=>{"use strict";Object.defineProperty(YZ,"__esModule",{value:!0});YZ.default={parseCommand(t,e,r){t.push("SETNX"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Aqe=E(JZ=>{"use strict";Object.defineProperty(JZ,"__esModule",{value:!0});JZ.default={parseCommand(t,e,r,n){t.push("SETRANGE"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var yqe=E(XZ=>{"use strict";Object.defineProperty(XZ,"__esModule",{value:!0});XZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SINTER"),t.pushKeys(e)},transformReply:void 0}});var xqe=E(ZZ=>{"use strict";Object.defineProperty(ZZ,"__esModule",{value:!0});ZZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT!==void 0&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var bqe=E(eee=>{"use strict";Object.defineProperty(eee,"__esModule",{value:!0});eee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SINTERSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var Eqe=E(tee=>{"use strict";Object.defineProperty(tee,"__esModule",{value:!0});tee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SISMEMBER"),t.pushKey(e),t.push(r)},transformReply:void 0}});var _qe=E(ree=>{"use strict";Object.defineProperty(ree,"__esModule",{value:!0});ree.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SMEMBERS"),t.pushKey(e)},transformReply:{2:void 0,3:void 0}}});var Sqe=E(nee=>{"use strict";Object.defineProperty(nee,"__esModule",{value:!0});nee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SMISMEMBER"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var vqe=E(see=>{"use strict";Object.defineProperty(see,"__esModule",{value:!0});see.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SMOVE"),t.pushKeys([e,r]),t.push(n)},transformReply:void 0}});var aL=E(yC=>{"use strict";Object.defineProperty(yC,"__esModule",{value:!0});yC.parseSortArguments=void 0;function Iqe(t,e,r){if(t.pushKey(e),r?.BY&&t.push("BY",r.BY),r?.LIMIT&&t.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),r?.GET)if(Array.isArray(r.GET))for(let n of r.GET)t.push("GET",n);else t.push("GET",r.GET);r?.DIRECTION&&t.push(r.DIRECTION),r?.ALPHA&&t.push("ALPHA")}yC.parseSortArguments=Iqe;yC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SORT"),Iqe(t,e,r)},transformReply:void 0}});var Tqe=E(vf=>{"use strict";var xcr=vf&&vf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),bcr=vf&&vf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ecr=vf&&vf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&xcr(e,t,r);return bcr(e,t),e};Object.defineProperty(vf,"__esModule",{value:!0});var Cqe=Ecr(aL());vf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("SORT_RO"),(0,Cqe.parseSortArguments)(...t)},transformReply:Cqe.default.transformReply}});var wqe=E(xC=>{"use strict";var _cr=xC&&xC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(xC,"__esModule",{value:!0});var Scr=_cr(aL());xC.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){Scr.default.parseCommand(t,e,n),t.push("STORE",r)},transformReply:void 0}});var Rqe=E(iee=>{"use strict";Object.defineProperty(iee,"__esModule",{value:!0});iee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var Nqe=E(aee=>{"use strict";Object.defineProperty(aee,"__esModule",{value:!0});aee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("SPOP"),t.pushKey(e)},transformReply:void 0}});var Oqe=E(oee=>{"use strict";Object.defineProperty(oee,"__esModule",{value:!0});oee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SPUBLISH"),t.pushKey(e),t.push(r)},transformReply:void 0}});var uee=E(cee=>{"use strict";Object.defineProperty(cee,"__esModule",{value:!0});cee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("SRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var kqe=E(bC=>{"use strict";var vcr=bC&&bC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(bC,"__esModule",{value:!0});var Pqe=vcr(uee());bC.default={IS_READ_ONLY:Pqe.default.IS_READ_ONLY,parseCommand(t,e,r){Pqe.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var Dqe=E(lee=>{"use strict";Object.defineProperty(lee,"__esModule",{value:!0});lee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var Bqe=E(dee=>{"use strict";Object.defineProperty(dee,"__esModule",{value:!0});var Icr=aC();dee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("SSCAN"),t.pushKey(e),(0,Icr.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:e}}}});var Lqe=E(fee=>{"use strict";Object.defineProperty(fee,"__esModule",{value:!0});fee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("STRLEN"),t.pushKey(e)},transformReply:void 0}});var Mqe=E(pee=>{"use strict";Object.defineProperty(pee,"__esModule",{value:!0});pee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SUNION"),t.pushKeys(e)},transformReply:void 0}});var Wqe=E(mee=>{"use strict";Object.defineProperty(mee,"__esModule",{value:!0});mee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SUNIONSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var $qe=E(hee=>{"use strict";Object.defineProperty(hee,"__esModule",{value:!0});hee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SWAPDB",e.toString(),r.toString())},transformReply:void 0}});var Fqe=E(gee=>{"use strict";Object.defineProperty(gee,"__esModule",{value:!0});gee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("TIME")},transformReply:void 0}});var Uqe=E(Aee=>{"use strict";Object.defineProperty(Aee,"__esModule",{value:!0});Aee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TOUCH"),t.pushKeys(e)},transformReply:void 0}});var qqe=E(yee=>{"use strict";Object.defineProperty(yee,"__esModule",{value:!0});yee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TTL"),t.pushKey(e)},transformReply:void 0}});var jqe=E(xee=>{"use strict";Object.defineProperty(xee,"__esModule",{value:!0});xee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TYPE"),t.pushKey(e)},transformReply:void 0}});var Hqe=E(bee=>{"use strict";Object.defineProperty(bee,"__esModule",{value:!0});bee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("UNLINK"),t.pushKeys(e)},transformReply:void 0}});var Qqe=E(Eee=>{"use strict";Object.defineProperty(Eee,"__esModule",{value:!0});Eee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("WAIT",e.toString(),r.toString())},transformReply:void 0}});var Gqe=E(_ee=>{"use strict";Object.defineProperty(_ee,"__esModule",{value:!0});_ee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XACK"),t.pushKey(e),t.push(r),t.pushVariadic(n)},transformReply:void 0}});var Kqe=E(See=>{"use strict";Object.defineProperty(See,"__esModule",{value:!0});See.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XACKDEL"),t.pushKey(e),t.push(r),s&&t.push(s),t.push("IDS"),t.pushVariadicWithLength(n)},transformReply:void 0}});var vee=E(EC=>{"use strict";Object.defineProperty(EC,"__esModule",{value:!0});EC.parseXAddArguments=void 0;function Vqe(t,e,r,n,s,i){e.push("XADD"),e.pushKey(r),t&&e.push(t),i?.policy&&e.push(i.policy),i?.IDMPAUTO?e.push("IDMPAUTO",i.IDMPAUTO.pid):i?.IDMP&&e.push("IDMP",i.IDMP.pid,i.IDMP.iid),i?.TRIM&&(i.TRIM.strategy&&e.push(i.TRIM.strategy),i.TRIM.strategyModifier&&e.push(i.TRIM.strategyModifier),e.push(i.TRIM.threshold.toString()),i.TRIM.limit&&e.push("LIMIT",i.TRIM.limit.toString()),i.TRIM.policy&&e.push(i.TRIM.policy)),e.push(n);for(let[a,o]of Object.entries(s))e.push(a,o)}EC.parseXAddArguments=Vqe;EC.default={IS_READ_ONLY:!1,parseCommand(...t){return Vqe(void 0,...t)},transformReply:void 0}});var zqe=E(Iee=>{"use strict";Object.defineProperty(Iee,"__esModule",{value:!0});var Ccr=vee();Iee.default={IS_READ_ONLY:!1,parseCommand(...t){return(0,Ccr.parseXAddArguments)("NOMKSTREAM",...t)},transformReply:void 0}});var Tee=E(Cee=>{"use strict";Object.defineProperty(Cee,"__esModule",{value:!0});var Tcr=Ce();Cee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XAUTOCLAIM"),t.pushKey(e),t.push(r,n,s.toString(),i),a?.COUNT&&t.push("COUNT",a.COUNT.toString())},transformReply(t,e,r){return{nextId:t[0],messages:t[1].map(Tcr.transformStreamMessageNullReply.bind(void 0,r)),deletedMessages:t[2]}}}});var Jqe=E(_C=>{"use strict";var wcr=_C&&_C.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_C,"__esModule",{value:!0});var Yqe=wcr(Tee());_C.default={IS_READ_ONLY:Yqe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Yqe.default.parseCommand(...t),e.push("JUSTID")},transformReply(t){return{nextId:t[0],messages:t[1],deletedMessages:t[2]}}}});var Ree=E(wee=>{"use strict";Object.defineProperty(wee,"__esModule",{value:!0});var Rcr=Ce();wee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XCLAIM"),t.pushKey(e),t.push(r,n,s.toString()),t.pushVariadic(i),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),a?.TIME!==void 0&&t.push("TIME",(a.TIME instanceof Date?a.TIME.getTime():a.TIME).toString()),a?.RETRYCOUNT!==void 0&&t.push("RETRYCOUNT",a.RETRYCOUNT.toString()),a?.FORCE&&t.push("FORCE"),a?.LASTID!==void 0&&t.push("LASTID",a.LASTID)},transformReply(t,e,r){return t.map(Rcr.transformStreamMessageNullReply.bind(void 0,r))}}});var Zqe=E(SC=>{"use strict";var Ncr=SC&&SC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(SC,"__esModule",{value:!0});var Xqe=Ncr(Ree());SC.default={IS_READ_ONLY:Xqe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Xqe.default.parseCommand(...t),e.push("JUSTID")},transformReply:void 0}});var e9e=E(Nee=>{"use strict";Object.defineProperty(Nee,"__esModule",{value:!0});Nee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XCFGSET"),t.pushKey(e),r?.IDMP_DURATION!==void 0&&t.push("IDMP-DURATION",r.IDMP_DURATION.toString()),r?.IDMP_MAXSIZE!==void 0&&t.push("IDMP-MAXSIZE",r.IDMP_MAXSIZE.toString())},transformReply:void 0}});var t9e=E(Oee=>{"use strict";Object.defineProperty(Oee,"__esModule",{value:!0});Oee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var r9e=E(Pee=>{"use strict";Object.defineProperty(Pee,"__esModule",{value:!0});Pee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XDELEX"),t.pushKey(e),n&&t.push(n),t.push("IDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var n9e=E(kee=>{"use strict";Object.defineProperty(kee,"__esModule",{value:!0});kee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","CREATE"),t.pushKey(e),t.push(r,n),s?.MKSTREAM&&t.push("MKSTREAM"),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var s9e=E(Dee=>{"use strict";Object.defineProperty(Dee,"__esModule",{value:!0});Dee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","CREATECONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var i9e=E(Bee=>{"use strict";Object.defineProperty(Bee,"__esModule",{value:!0});Bee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","DELCONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var a9e=E(Lee=>{"use strict";Object.defineProperty(Lee,"__esModule",{value:!0});Lee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XGROUP","DESTROY"),t.pushKey(e),t.push(r)},transformReply:void 0}});var o9e=E(Mee=>{"use strict";Object.defineProperty(Mee,"__esModule",{value:!0});Mee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","SETID"),t.pushKey(e),t.push(r,n),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var c9e=E(Wee=>{"use strict";Object.defineProperty(Wee,"__esModule",{value:!0});Wee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XINFO","CONSUMERS"),t.pushKey(e),t.push(r)},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],pending:r[3],idle:r[5],inactive:r[7]}}),3:void 0}}});var u9e=E($ee=>{"use strict";Object.defineProperty($ee,"__esModule",{value:!0});$ee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","GROUPS"),t.pushKey(e)},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],consumers:r[3],pending:r[5],"last-delivered-id":r[7],"entries-read":r[9],lag:r[11]}}),3:void 0}}});var d9e=E(Fee=>{"use strict";Object.defineProperty(Fee,"__esModule",{value:!0});var l9e=Ce();Fee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","STREAM"),t.pushKey(e)},transformReply:{2(t){let e={};for(let r=0;r{"use strict";Object.defineProperty(Uee,"__esModule",{value:!0});Uee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("XLEN"),t.pushKey(e)},transformReply:void 0}});var p9e=E(qee=>{"use strict";Object.defineProperty(qee,"__esModule",{value:!0});qee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i,a){t.push("XPENDING"),t.pushKey(e),t.push(r),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),t.push(n,s,i.toString()),a?.consumer&&t.push(a.consumer)},transformReply(t){return t.map(e=>{let r=e;return{id:r[0],consumer:r[1],millisecondsSinceLastDelivery:r[2],deliveriesCounter:r[3]}})}}});var m9e=E(jee=>{"use strict";Object.defineProperty(jee,"__esModule",{value:!0});jee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XPENDING"),t.pushKey(e),t.push(r)},transformReply(t){let e=t[3];return{pending:t[0],firstId:t[1],lastId:t[2],consumers:e===null?null:e.map(r=>{let[n,s]=r;return{name:n,deliveriesCounter:Number(s)}})}}}});var Hee=E(vC=>{"use strict";Object.defineProperty(vC,"__esModule",{value:!0});vC.xRangeArguments=void 0;var Ocr=Ce();function h9e(t,e,r){let n=[t,e];return r?.COUNT&&n.push("COUNT",r.COUNT.toString()),n}vC.xRangeArguments=h9e;vC.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("XRANGE"),t.pushKey(e),t.pushVariadic(h9e(r[0],r[1],r[2]))},transformReply(t,e,r){return t.map(Ocr.transformStreamMessageReply.bind(void 0,r))}}});var Qee=E(IC=>{"use strict";Object.defineProperty(IC,"__esModule",{value:!0});IC.pushXReadStreams=void 0;var Pcr=Ce();function g9e(t,e){if(t.push("STREAMS"),Array.isArray(e)){for(let r=0;r{"use strict";Object.defineProperty(Gee,"__esModule",{value:!0});var kcr=Qee(),Dcr=Ce();Gee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("XREADGROUP","GROUP",e,r),s?.COUNT!==void 0&&t.push("COUNT",s.COUNT.toString()),s?.BLOCK!==void 0&&t.push("BLOCK",s.BLOCK.toString()),s?.NOACK&&t.push("NOACK"),s?.CLAIM!==void 0&&t.push("CLAIM",s.CLAIM.toString()),(0,kcr.pushXReadStreams)(t,n)},transformReply:{2:Dcr.transformStreamsMessagesReplyResp2,3:void 0}}});var y9e=E(If=>{"use strict";var Bcr=If&&If.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Lcr=If&&If.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Mcr=If&&If.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Bcr(e,t,r);return Lcr(e,t),e};Object.defineProperty(If,"__esModule",{value:!0});var oL=Mcr(Hee());If.default={CACHEABLE:oL.default.CACHEABLE,IS_READ_ONLY:oL.default.IS_READ_ONLY,parseCommand(t,e,...r){t.push("XREVRANGE"),t.pushKey(e),t.pushVariadic((0,oL.xRangeArguments)(r[0],r[1],r[2]))},transformReply:oL.default.transformReply}});var x9e=E(Kee=>{"use strict";Object.defineProperty(Kee,"__esModule",{value:!0});Kee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XSETID"),t.pushKey(e),t.push(r),n?.ENTRIESADDED&&t.push("ENTRIESADDED",n.ENTRIESADDED.toString()),n?.MAXDELETEDID&&t.push("MAXDELETEDID",n.MAXDELETEDID)},transformReply:void 0}});var b9e=E(Vee=>{"use strict";Object.defineProperty(Vee,"__esModule",{value:!0});Vee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XTRIM"),t.pushKey(e),t.push(r),s?.strategyModifier&&t.push(s.strategyModifier),t.push(n.toString()),s?.LIMIT&&t.push("LIMIT",s.LIMIT.toString()),s?.policy&&t.push(s.policy)},transformReply:void 0}});var zee=E(CC=>{"use strict";Object.defineProperty(CC,"__esModule",{value:!0});CC.pushMembers=void 0;var _9e=Ce();CC.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.comparison?t.push(n.comparison):n?.LT?t.push("LT"):n?.GT&&t.push("GT"),n?.CH&&t.push("CH"),S9e(t,r)},transformReply:_9e.transformDoubleReply};function S9e(t,e){if(Array.isArray(e))for(let r of e)E9e(t,r);else E9e(t,e)}CC.pushMembers=S9e;function E9e(t,e){t.push((0,_9e.transformDoubleArgument)(e.score),e.value)}});var v9e=E(Yee=>{"use strict";Object.defineProperty(Yee,"__esModule",{value:!0});var Wcr=zee(),$cr=Ce();Yee.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition&&t.push(n.condition),n?.comparison&&t.push(n.comparison),n?.CH&&t.push("CH"),t.push("INCR"),(0,Wcr.pushMembers)(t,r)},transformReply:$cr.transformNullableDoubleReply}});var I9e=E(Jee=>{"use strict";Object.defineProperty(Jee,"__esModule",{value:!0});Jee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZCARD"),t.pushKey(e)},transformReply:void 0}});var T9e=E(Xee=>{"use strict";Object.defineProperty(Xee,"__esModule",{value:!0});var C9e=Ce();Xee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZCOUNT"),t.pushKey(e),t.push((0,C9e.transformStringDoubleArgument)(r),(0,C9e.transformStringDoubleArgument)(n))},transformReply:void 0}});var ete=E(Zee=>{"use strict";Object.defineProperty(Zee,"__esModule",{value:!0});Zee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZDIFF"),t.pushKeysLength(e)},transformReply:void 0}});var R9e=E(TC=>{"use strict";var Fcr=TC&&TC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(TC,"__esModule",{value:!0});var Ucr=Ce(),w9e=Fcr(ete());TC.default={IS_READ_ONLY:w9e.default.IS_READ_ONLY,parseCommand(t,e){w9e.default.parseCommand(t,e),t.push("WITHSCORES")},transformReply:Ucr.transformSortedSetReply}});var N9e=E(tte=>{"use strict";Object.defineProperty(tte,"__esModule",{value:!0});tte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZDIFFSTORE"),t.pushKey(e),t.pushKeysLength(r)},transformReply:void 0}});var P9e=E(rte=>{"use strict";Object.defineProperty(rte,"__esModule",{value:!0});var O9e=Ce();rte.default={parseCommand(t,e,r,n){t.push("ZINCRBY"),t.pushKey(e),t.push((0,O9e.transformDoubleArgument)(r),n)},transformReply:O9e.transformDoubleReply}});var cL=E(wC=>{"use strict";Object.defineProperty(wC,"__esModule",{value:!0});wC.parseZInterArguments=void 0;var qcr=Ce();function k9e(t,e,r){(0,qcr.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)}wC.parseZInterArguments=k9e;wC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTER"),k9e(t,e,r)},transformReply:void 0}});var B9e=E(RC=>{"use strict";var jcr=RC&&RC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(RC,"__esModule",{value:!0});var Hcr=Ce(),D9e=jcr(cL());RC.default={IS_READ_ONLY:D9e.default.IS_READ_ONLY,parseCommand(...t){D9e.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:Hcr.transformSortedSetReply}});var L9e=E(nte=>{"use strict";Object.defineProperty(nte,"__esModule",{value:!0});nte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var M9e=E(ste=>{"use strict";Object.defineProperty(ste,"__esModule",{value:!0});var Qcr=cL();ste.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZINTERSTORE"),t.pushKey(e),(0,Qcr.parseZInterArguments)(t,r,n)},transformReply:void 0}});var W9e=E(ite=>{"use strict";Object.defineProperty(ite,"__esModule",{value:!0});ite.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZLEXCOUNT"),t.pushKey(e),t.push(r),t.push(n)},transformReply:void 0}});var $9e=E(ate=>{"use strict";Object.defineProperty(ate,"__esModule",{value:!0});var Gcr=Ce();ate.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZMSCORE"),t.pushKey(e),t.pushVariadic(r)},transformReply:{2:(t,e,r)=>t.map((0,Gcr.createTransformNullableDoubleReplyResp2Func)(e,r)),3:void 0}}});var F9e=E(ote=>{"use strict";Object.defineProperty(ote,"__esModule",{value:!0});var Kcr=Ce();ote.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMAX"),t.pushKey(e),t.push(r.toString())},transformReply:Kcr.transformSortedSetReply}});var ute=E(cte=>{"use strict";Object.defineProperty(cte,"__esModule",{value:!0});var Vcr=Ce();cte.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMAX"),t.pushKey(e)},transformReply:{2:(t,e,r)=>t.length===0?null:{value:t[0],score:Vcr.transformDoubleReply[2](t[1],e,r)},3:t=>t.length===0?null:{value:t[0],score:t[1]}}}});var U9e=E(lte=>{"use strict";Object.defineProperty(lte,"__esModule",{value:!0});var zcr=Ce();lte.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMIN"),t.pushKey(e),t.push(r.toString())},transformReply:zcr.transformSortedSetReply}});var q9e=E(NC=>{"use strict";var Ycr=NC&&NC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(NC,"__esModule",{value:!0});var Jcr=Ycr(ute());NC.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMIN"),t.pushKey(e)},transformReply:Jcr.default.transformReply}});var fte=E(dte=>{"use strict";Object.defineProperty(dte,"__esModule",{value:!0});dte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var pte=E(OC=>{"use strict";var Xcr=OC&&OC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(OC,"__esModule",{value:!0});var j9e=Xcr(fte());OC.default={IS_READ_ONLY:j9e.default.IS_READ_ONLY,parseCommand(t,e,r){j9e.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var Q9e=E(PC=>{"use strict";var Zcr=PC&&PC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(PC,"__esModule",{value:!0});var eur=Ce(),H9e=Zcr(pte());PC.default={IS_READ_ONLY:H9e.default.IS_READ_ONLY,parseCommand(t,e,r){H9e.default.parseCommand(t,e,r),t.push("WITHSCORES")},transformReply:eur.transformSortedSetReply}});var mte=E(kC=>{"use strict";Object.defineProperty(kC,"__esModule",{value:!0});kC.zRangeArgument=void 0;var G9e=Ce();function K9e(t,e,r){let n=[(0,G9e.transformStringDoubleArgument)(t),(0,G9e.transformStringDoubleArgument)(e)];switch(r?.BY){case"SCORE":n.push("BYSCORE");break;case"LEX":n.push("BYLEX");break}return r?.REV&&n.push("REV"),r?.LIMIT&&n.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),n}kC.zRangeArgument=K9e;kC.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGE"),t.pushKey(e),t.pushVariadic(K9e(r,n,s))},transformReply:void 0}});var V9e=E(DC=>{"use strict";var tur=DC&&DC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(DC,"__esModule",{value:!0});var rur=Ce(),hte=tur(mte());DC.default={CACHEABLE:hte.default.CACHEABLE,IS_READ_ONLY:hte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];hte.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:rur.transformSortedSetReply}});var Y9e=E(gte=>{"use strict";Object.defineProperty(gte,"__esModule",{value:!0});var z9e=Ce();gte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYLEX"),t.pushKey(e),t.push((0,z9e.transformStringDoubleArgument)(r),(0,z9e.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var yte=E(Ate=>{"use strict";Object.defineProperty(Ate,"__esModule",{value:!0});var J9e=Ce();Ate.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYSCORE"),t.pushKey(e),t.push((0,J9e.transformStringDoubleArgument)(r),(0,J9e.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var X9e=E(BC=>{"use strict";var nur=BC&&BC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(BC,"__esModule",{value:!0});var sur=Ce(),xte=nur(yte());BC.default={CACHEABLE:xte.default.CACHEABLE,IS_READ_ONLY:xte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];xte.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:sur.transformSortedSetReply}});var eje=E(bte=>{"use strict";Object.defineProperty(bte,"__esModule",{value:!0});var Z9e=Ce();bte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){switch(t.push("ZRANGESTORE"),t.pushKey(e),t.pushKey(r),t.push((0,Z9e.transformStringDoubleArgument)(n),(0,Z9e.transformStringDoubleArgument)(s)),i?.BY){case"SCORE":t.push("BYSCORE");break;case"LEX":t.push("BYLEX");break}i?.REV&&t.push("REV"),i?.LIMIT&&t.push("LIMIT",i.LIMIT.offset.toString(),i.LIMIT.count.toString())},transformReply:void 0}});var rje=E(Ete=>{"use strict";Object.defineProperty(Ete,"__esModule",{value:!0});var tje=Ce();Ete.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYSCORE"),t.pushKey(e),t.push((0,tje.transformStringDoubleArgument)(r),(0,tje.transformStringDoubleArgument)(n))},transformReply:void 0}});var Ste=E(_te=>{"use strict";Object.defineProperty(_te,"__esModule",{value:!0});_te.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var nje=E(LC=>{"use strict";var iur=LC&&LC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(LC,"__esModule",{value:!0});var vte=iur(Ste());LC.default={CACHEABLE:vte.default.CACHEABLE,IS_READ_ONLY:vte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];vte.default.parseCommand(...t),e.push("WITHSCORE")},transformReply:{2:t=>t===null?null:{rank:t[0],score:Number(t[1])},3:t=>t===null?null:{rank:t[0],score:t[1]}}}});var sje=E(Ite=>{"use strict";Object.defineProperty(Ite,"__esModule",{value:!0});Ite.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var aje=E(Cte=>{"use strict";Object.defineProperty(Cte,"__esModule",{value:!0});var ije=Ce();Cte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYLEX"),t.pushKey(e),t.push((0,ije.transformStringDoubleArgument)(r),(0,ije.transformStringDoubleArgument)(n))},transformReply:void 0}});var oje=E(Tte=>{"use strict";Object.defineProperty(Tte,"__esModule",{value:!0});Tte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYRANK"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var cje=E(wte=>{"use strict";Object.defineProperty(wte,"__esModule",{value:!0});wte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZREVRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var uje=E(Rte=>{"use strict";Object.defineProperty(Rte,"__esModule",{value:!0});var aur=aC(),our=Ce();Rte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZSCAN"),t.pushKey(e),(0,aur.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:our.transformSortedSetReply[2](e)}}}});var lje=E(Nte=>{"use strict";Object.defineProperty(Nte,"__esModule",{value:!0});var cur=Ce();Nte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZSCORE"),t.pushKey(e),t.push(r)},transformReply:cur.transformNullableDoubleReply}});var Pte=E(Ote=>{"use strict";Object.defineProperty(Ote,"__esModule",{value:!0});var uur=Ce();Ote.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZUNION"),(0,uur.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)},transformReply:void 0}});var fje=E(MC=>{"use strict";var lur=MC&&MC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(MC,"__esModule",{value:!0});var dur=Ce(),dje=lur(Pte());MC.default={IS_READ_ONLY:dje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];dje.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:dur.transformSortedSetReply}});var pje=E(kte=>{"use strict";Object.defineProperty(kte,"__esModule",{value:!0});var fur=Ce();kte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZUNIONSTORE"),t.pushKey(e),(0,fur.parseZKeysArguments)(t,r),n?.AGGREGATE&&t.push("AGGREGATE",n.AGGREGATE)},transformReply:void 0}});var hje=E(Dte=>{"use strict";Object.defineProperty(Dte,"__esModule",{value:!0});var mje=Ce();Dte.default={parseCommand(t,e,r,n,s){t.push("VADD"),t.pushKey(e),s?.REDUCE!==void 0&&t.push("REDUCE",s.REDUCE.toString()),t.push("VALUES",r.length.toString());for(let i of r)t.push((0,mje.transformDoubleArgument)(i));t.push(n),s?.CAS&&t.push("CAS"),s?.QUANT&&t.push(s.QUANT),s?.EF!==void 0&&t.push("EF",s.EF.toString()),s?.SETATTR&&t.push("SETATTR",JSON.stringify(s.SETATTR)),s?.M!==void 0&&t.push("M",s.M.toString())},transformReply:mje.transformBooleanReply}});var gje=E(Bte=>{"use strict";Object.defineProperty(Bte,"__esModule",{value:!0});Bte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VCARD"),t.pushKey(e)},transformReply:void 0}});var Aje=E(Lte=>{"use strict";Object.defineProperty(Lte,"__esModule",{value:!0});Lte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VDIM"),t.pushKey(e)},transformReply:void 0}});var Wte=E(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});var pur=Ce();Mte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VEMB"),t.pushKey(e),t.push(r)},transformReply:pur.transformDoubleArrayReply}});var xje=E(WC=>{"use strict";var mur=WC&&WC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(WC,"__esModule",{value:!0});var yje=Ce(),hur=mur(Wte()),gur={2:t=>({quantization:t[0],raw:t[1],l2Norm:yje.transformDoubleReply[2](t[2]),...t[3]!==void 0&&{quantizationRange:yje.transformDoubleReply[2](t[3])}}),3:t=>({quantization:t[0],raw:t[1],l2Norm:t[2],quantizationRange:t[3]})};WC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){hur.default.parseCommand(t,e,r),t.push("RAW")},transformReply:gur}});var bje=E($te=>{"use strict";Object.defineProperty($te,"__esModule",{value:!0});var Aur=Ce();$te.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VGETATTR"),t.pushKey(e),t.push(r)},transformReply:Aur.transformRedisJsonNullReply}});var Eje=E(Fte=>{"use strict";Object.defineProperty(Fte,"__esModule",{value:!0});Fte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VINFO"),t.pushKey(e)},transformReply:{2:t=>{let e=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(Ute,"__esModule",{value:!0});Ute.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VLINKS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Sje=E($C=>{"use strict";var yur=$C&&$C.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($C,"__esModule",{value:!0});var xur=Ce(),_je=yur(qte());function bur(t){let e=[];for(let r of t){let n=Object.create(null);for(let s=0;s{"use strict";Object.defineProperty(jte,"__esModule",{value:!0});jte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VRANDMEMBER"),t.pushKey(e),r!==void 0&&t.push(r.toString())},transformReply:void 0}});var Ije=E(Hte=>{"use strict";Object.defineProperty(Hte,"__esModule",{value:!0});Hte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("VRANGE"),t.pushKey(e),t.push(r,n),s!==void 0&&t.push(s.toString())},transformReply:void 0}});var Cje=E(Qte=>{"use strict";Object.defineProperty(Qte,"__esModule",{value:!0});var Eur=Ce();Qte.default={parseCommand(t,e,r){t.push("VREM"),t.pushKey(e),t.push(r)},transformReply:Eur.transformBooleanReply}});var Tje=E(Gte=>{"use strict";Object.defineProperty(Gte,"__esModule",{value:!0});var _ur=Ce();Gte.default={parseCommand(t,e,r,n){t.push("VSETATTR"),t.pushKey(e),t.push(r),typeof n=="object"&&n!==null?t.push(JSON.stringify(n)):t.push(n)},transformReply:_ur.transformBooleanReply}});var Vte=E(Kte=>{"use strict";Object.defineProperty(Kte,"__esModule",{value:!0});var Sur=Ce();Kte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("VSIM"),t.pushKey(e),Array.isArray(r)){t.push("VALUES",r.length.toString());for(let s of r)t.push((0,Sur.transformDoubleArgument)(s))}else t.push("ELE",r);n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.EPSILON!==void 0&&t.push("EPSILON",n.EPSILON.toString()),n?.EF!==void 0&&t.push("EF",n.EF.toString()),n?.FILTER&&t.push("FILTER",n.FILTER),n?.["FILTER-EF"]!==void 0&&t.push("FILTER-EF",n["FILTER-EF"].toString()),n?.TRUTH&&t.push("TRUTH"),n?.NOTHREAD&&t.push("NOTHREAD")},transformReply:void 0}});var Rje=E(FC=>{"use strict";var vur=FC&&FC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(FC,"__esModule",{value:!0});var Iur=Ce(),wje=vur(Vte());FC.default={IS_READ_ONLY:wje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];wje.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:{2:t=>{let e=t,r={};for(let n=0;n{"use strict";Object.defineProperty(zte,"__esModule",{value:!0});var Cur=Ce(),Tur=t=>t;zte.default={CACHEABLE:!1,IS_READ_ONLY:!0,parseCommand(t,...e){let r=["LATENCY","HISTOGRAM"];e.length!==0&&r.push(...e),t.push(...r)},transformReply:{2:t=>{let e={};if(t.length===0)return e;for(let r=1;r{"use strict";var wur=Qn&&Qn.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Rur=Qn&&Qn.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),UC=Qn&&Qn.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&wur(e,t,r);return Rur(e,t),e},$=Qn&&Qn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Qn,"__esModule",{value:!0});Qn.NON_STICKY_COMMANDS=Qn.REDIS_FLUSH_MODES=Qn.COMMAND_LIST_FILTER_BY=Qn.CLUSTER_SLOT_STATES=Qn.FAILOVER_MODES=Qn.CLIENT_KILL_FILTERS=void 0;var Oje=$(sWe()),Pje=$(iWe()),kje=$(aWe()),Dje=$(oWe()),Bje=$(cWe()),Lje=$(uWe()),Mje=$(lWe()),Wje=$(yWe()),$je=$(jz()),Fje=$(xWe()),Uje=$(bWe()),qje=$(EWe()),jje=$(_We()),Hje=$(SWe()),Qje=$(zz()),Gje=$(vWe()),Kje=$(IWe()),Vje=$(CWe()),zje=$(TWe()),Yje=$(wWe()),Jje=$(RWe()),Xje=$(NWe()),Zje=$(OWe()),eHe=$(PWe()),tHe=$(BWe()),rHe=$(oY()),nHe=$(LWe()),sHe=$(MWe()),iHe=$(UWe()),aHe=$(dY()),oHe=$(jWe()),cHe=$(HWe()),uHe=$(QWe()),lHe=$(GWe()),dHe=$(KWe()),fHe=$(AY()),Yte=UC(zWe());Object.defineProperty(Qn,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return Yte.CLIENT_KILL_FILTERS}});var pHe=$(YWe()),mHe=$(JWe()),hHe=$(XWe()),gHe=$(ZWe()),AHe=$(e$e()),yHe=$(t$e()),xHe=$(r$e()),bHe=$(n$e()),EHe=$(s$e()),_He=$(i$e()),SHe=$(a$e()),vHe=$(o$e()),IHe=$(c$e()),CHe=$(u$e()),THe=$(l$e()),Jte=UC(d$e());Object.defineProperty(Qn,"FAILOVER_MODES",{enumerable:!0,get:function(){return Jte.FAILOVER_MODES}});var wHe=$(f$e()),RHe=$(p$e()),NHe=$(m$e()),OHe=$(h$e()),PHe=$(g$e()),kHe=$(A$e()),DHe=$(y$e()),BHe=$(x$e()),LHe=$(b$e()),MHe=$(E$e()),WHe=$(_$e()),$He=$(S$e()),FHe=$(v$e()),UHe=$(I$e()),qHe=$(C$e()),Xte=UC(T$e());Object.defineProperty(Qn,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return Xte.CLUSTER_SLOT_STATES}});var jHe=$(R$e()),HHe=$(N$e()),QHe=$(O$e()),GHe=$(P$e()),KHe=$(k$e()),Zte=UC(D$e());Object.defineProperty(Qn,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return Zte.COMMAND_LIST_FILTER_BY}});var VHe=$(B$e()),zHe=$(L$e()),YHe=$(M$e()),JHe=$(W$e()),XHe=$($$e()),ZHe=$(F$e()),eQe=$(U$e()),tQe=$(q$e()),rQe=$(j$e()),nQe=$(H$e()),sQe=$(Q$e()),iQe=$(G$e()),aQe=$(K$e()),oQe=$(V$e()),cQe=$(J$e()),uQe=$(cg()),lQe=$(Z$e()),dQe=$(tFe()),fQe=$(nFe()),pQe=$(sFe()),mQe=$(iFe()),hQe=$(aFe()),gQe=$(pFe()),AQe=$(hFe()),yQe=$(AFe()),xQe=$(sL()),bQe=$(JI()),EQe=$(_Fe()),_Qe=$(vFe()),SQe=$(CFe()),vQe=$(hJ()),IQe=$(tC()),CQe=$(XI()),TQe=$(lg()),wQe=$(TFe()),RQe=$(wFe()),NQe=$(RFe()),OQe=$(NFe()),PQe=$(OFe()),kQe=$(PFe()),DQe=$(kFe()),BQe=$(DFe()),LQe=$(BFe()),MQe=$(LFe()),WQe=$(MFe()),ere=UC(WFe());Object.defineProperty(Qn,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return ere.REDIS_FLUSH_MODES}});var $Qe=$($Fe()),FQe=$(UFe()),UQe=$(jFe()),qQe=$(HFe()),jQe=$(QFe()),HQe=$(GFe()),QQe=$(KFe()),GQe=$(VFe()),KQe=$(DJ()),VQe=$(zFe()),zQe=$(YFe()),YQe=$(JFe()),JQe=$(XFe()),XQe=$(UJ()),ZQe=$(ZFe()),eGe=$(eUe()),tGe=$(tUe()),rGe=$(rUe()),nGe=$(nUe()),sGe=$(sUe()),iGe=$(iUe()),aGe=$(aUe()),oGe=$(oUe()),cGe=$(cUe()),uGe=$(uUe()),lGe=$(lUe()),dGe=$(dUe()),fGe=$(fUe()),pGe=$(pUe()),mGe=$(mUe()),hGe=$(hUe()),gGe=$(gUe()),AGe=$(AUe()),yGe=$(yUe()),xGe=$(xUe()),bGe=$(cX()),EGe=$(EUe()),_Ge=$(SUe()),SGe=$(IUe()),vGe=$(CUe()),IGe=$(TUe()),CGe=$(wUe()),TGe=$(RUe()),wGe=$(OUe()),RGe=$(PUe()),NGe=$(kUe()),OGe=$(DUe()),PGe=$(BUe()),kGe=$(LUe()),DGe=$(MUe()),BGe=$(WUe()),LGe=$($Ue()),MGe=$(FUe()),WGe=$(UUe()),$Ge=$(IX()),FGe=$(qUe()),UGe=$(jUe()),qGe=$(HUe()),jGe=$(KUe()),HGe=$(RX()),QGe=$(zUe()),GGe=$(iL()),KGe=$(YUe()),VGe=$(JUe()),zGe=$(XUe()),YGe=$(ZUe()),JGe=$(iY()),Nur=$(e7e()),XGe=$(t7e()),ZGe=$(LX()),eKe=$(r7e()),tKe=$(WX()),rKe=$(n7e()),nKe=$(s7e()),sKe=$(i7e()),iKe=$(a7e()),aKe=$(o7e()),oKe=$(c7e()),cKe=$(u7e()),uKe=$(l7e()),lKe=$(d7e()),dKe=$(f7e()),fKe=$(p7e()),pKe=$(m7e()),mKe=$(h7e()),hKe=$(g7e()),gKe=$(A7e()),AKe=$(y7e()),yKe=$(x7e()),xKe=$(nZ()),bKe=$(S7e()),EKe=$(v7e()),_Ke=$(I7e()),SKe=$(C7e()),vKe=$(T7e()),IKe=$(w7e()),CKe=$(R7e()),TKe=$(N7e()),wKe=$(O7e()),RKe=$(P7e()),NKe=$(k7e()),OKe=$(D7e()),PKe=$(B7e()),kKe=$(L7e()),DKe=$(M7e()),BKe=$(W7e()),LKe=$($7e()),MKe=$(F7e()),WKe=$(U7e()),$Ke=$(q7e()),FKe=$(j7e()),UKe=$(H7e()),qKe=$(Q7e()),jKe=$(G7e()),HKe=$(K7e()),QKe=$(V7e()),GKe=$(z7e()),KKe=$(Y7e()),VKe=$(J7e()),zKe=$(X7e()),YKe=$(Z7e()),JKe=$(eqe()),XKe=$(tqe()),ZKe=$(rqe()),eVe=$(nqe()),tVe=$(sqe()),rVe=$(aC()),nVe=$(iqe()),sVe=$(aqe()),iVe=$(oqe()),aVe=$(cqe()),oVe=$(uqe()),cVe=$(lqe()),uVe=$(dqe()),lVe=$(fqe()),dVe=$(pqe()),fVe=$(mqe()),pVe=$(hqe()),mVe=$(gqe()),hVe=$(Aqe()),gVe=$(yqe()),AVe=$(xqe()),yVe=$(bqe()),xVe=$(Eqe()),bVe=$(_qe()),EVe=$(Sqe()),_Ve=$(vqe()),SVe=$(Tqe()),vVe=$(wqe()),IVe=$(aL()),CVe=$(Rqe()),TVe=$(Nqe()),wVe=$(Oqe()),RVe=$(kqe()),NVe=$(uee()),OVe=$(Dqe()),PVe=$(Bqe()),kVe=$(Lqe()),DVe=$(Mqe()),BVe=$(Wqe()),LVe=$($qe()),MVe=$(Fqe()),WVe=$(Uqe()),$Ve=$(qqe()),FVe=$(jqe()),UVe=$(Hqe()),qVe=$(Qqe()),jVe=$(Gqe()),HVe=$(Kqe()),QVe=$(zqe()),GVe=$(vee()),KVe=$(Jqe()),VVe=$(Tee()),zVe=$(Zqe()),YVe=$(Ree()),JVe=$(e9e()),XVe=$(t9e()),ZVe=$(r9e()),eze=$(n9e()),tze=$(s9e()),rze=$(i9e()),nze=$(a9e()),sze=$(o9e()),ize=$(c9e()),aze=$(u9e()),oze=$(d9e()),cze=$(f9e()),uze=$(p9e()),lze=$(m9e()),dze=$(Hee()),fze=$(Qee()),pze=$(A9e()),mze=$(y9e()),hze=$(x9e()),gze=$(b9e()),Aze=$(v9e()),yze=$(zee()),xze=$(I9e()),bze=$(T9e()),Eze=$(R9e()),_ze=$(ete()),Sze=$(N9e()),vze=$(P9e()),Ize=$(B9e()),Cze=$(cL()),Tze=$(L9e()),wze=$(M9e()),Rze=$(W9e()),Nze=$(uY()),Oze=$($9e()),Pze=$(F9e()),kze=$(ute()),Dze=$(U9e()),Bze=$(q9e()),Lze=$(Q9e()),Mze=$(pte()),Wze=$(fte()),$ze=$(V9e()),Fze=$(mte()),Uze=$(Y9e()),qze=$(X9e()),jze=$(yte()),Hze=$(eje()),Qze=$(rje()),Gze=$(nje()),Kze=$(Ste()),Vze=$(sje()),zze=$(aje()),Yze=$(oje()),Jze=$(cje()),Xze=$(uje()),Zze=$(lje()),eYe=$(fje()),tYe=$(Pte()),rYe=$(pje()),nYe=$(hje()),sYe=$(gje()),iYe=$(Aje()),aYe=$(Wte()),oYe=$(xje()),cYe=$(bje()),uYe=$(Eje()),lYe=$(qte()),dYe=$(Sje()),fYe=$(vje()),pYe=$(Ije()),mYe=$(Cje()),hYe=$(Tje()),gYe=$(Vte()),AYe=$(Rje()),yYe=$(Nje());Qn.default={ACL_CAT:Oje.default,aclCat:Oje.default,ACL_DELUSER:Pje.default,aclDelUser:Pje.default,ACL_DRYRUN:kje.default,aclDryRun:kje.default,ACL_GENPASS:Dje.default,aclGenPass:Dje.default,ACL_GETUSER:Bje.default,aclGetUser:Bje.default,ACL_LIST:Lje.default,aclList:Lje.default,ACL_LOAD:Mje.default,aclLoad:Mje.default,ACL_LOG_RESET:Wje.default,aclLogReset:Wje.default,ACL_LOG:$je.default,aclLog:$je.default,ACL_SAVE:Fje.default,aclSave:Fje.default,ACL_SETUSER:Uje.default,aclSetUser:Uje.default,ACL_USERS:qje.default,aclUsers:qje.default,ACL_WHOAMI:jje.default,aclWhoAmI:jje.default,APPEND:Hje.default,append:Hje.default,ASKING:Qje.default,asking:Qje.default,AUTH:Gje.default,auth:Gje.default,BGREWRITEAOF:Kje.default,bgRewriteAof:Kje.default,BGSAVE:Vje.default,bgSave:Vje.default,BITCOUNT:zje.default,bitCount:zje.default,BITFIELD_RO:Yje.default,bitFieldRo:Yje.default,BITFIELD:Jje.default,bitField:Jje.default,BITOP:Xje.default,bitOp:Xje.default,BITPOS:Zje.default,bitPos:Zje.default,BLMOVE:eHe.default,blMove:eHe.default,BLMPOP:tHe.default,blmPop:tHe.default,BLPOP:rHe.default,blPop:rHe.default,BRPOP:nHe.default,brPop:nHe.default,BRPOPLPUSH:sHe.default,brPopLPush:sHe.default,BZMPOP:iHe.default,bzmPop:iHe.default,BZPOPMAX:aHe.default,bzPopMax:aHe.default,BZPOPMIN:oHe.default,bzPopMin:oHe.default,CLIENT_CACHING:cHe.default,clientCaching:cHe.default,CLIENT_GETNAME:uHe.default,clientGetName:uHe.default,CLIENT_GETREDIR:lHe.default,clientGetRedir:lHe.default,CLIENT_ID:dHe.default,clientId:dHe.default,CLIENT_INFO:fHe.default,clientInfo:fHe.default,CLIENT_KILL:Yte.default,clientKill:Yte.default,CLIENT_LIST:pHe.default,clientList:pHe.default,"CLIENT_NO-EVICT":mHe.default,clientNoEvict:mHe.default,"CLIENT_NO-TOUCH":hHe.default,clientNoTouch:hHe.default,CLIENT_PAUSE:gHe.default,clientPause:gHe.default,CLIENT_SETNAME:AHe.default,clientSetName:AHe.default,CLIENT_TRACKING:yHe.default,clientTracking:yHe.default,CLIENT_TRACKINGINFO:xHe.default,clientTrackingInfo:xHe.default,CLIENT_UNPAUSE:bHe.default,clientUnpause:bHe.default,CLUSTER_ADDSLOTS:EHe.default,clusterAddSlots:EHe.default,CLUSTER_ADDSLOTSRANGE:_He.default,clusterAddSlotsRange:_He.default,CLUSTER_BUMPEPOCH:SHe.default,clusterBumpEpoch:SHe.default,"CLUSTER_COUNT-FAILURE-REPORTS":vHe.default,clusterCountFailureReports:vHe.default,CLUSTER_COUNTKEYSINSLOT:IHe.default,clusterCountKeysInSlot:IHe.default,CLUSTER_DELSLOTS:CHe.default,clusterDelSlots:CHe.default,CLUSTER_DELSLOTSRANGE:THe.default,clusterDelSlotsRange:THe.default,CLUSTER_FAILOVER:Jte.default,clusterFailover:Jte.default,CLUSTER_FLUSHSLOTS:wHe.default,clusterFlushSlots:wHe.default,CLUSTER_FORGET:RHe.default,clusterForget:RHe.default,CLUSTER_GETKEYSINSLOT:NHe.default,clusterGetKeysInSlot:NHe.default,CLUSTER_INFO:OHe.default,clusterInfo:OHe.default,CLUSTER_KEYSLOT:PHe.default,clusterKeySlot:PHe.default,CLUSTER_LINKS:kHe.default,clusterLinks:kHe.default,CLUSTER_MEET:DHe.default,clusterMeet:DHe.default,CLUSTER_MYID:BHe.default,clusterMyId:BHe.default,CLUSTER_MYSHARDID:LHe.default,clusterMyShardId:LHe.default,CLUSTER_NODES:MHe.default,clusterNodes:MHe.default,CLUSTER_REPLICAS:WHe.default,clusterReplicas:WHe.default,CLUSTER_REPLICATE:$He.default,clusterReplicate:$He.default,CLUSTER_RESET:FHe.default,clusterReset:FHe.default,CLUSTER_SAVECONFIG:UHe.default,clusterSaveConfig:UHe.default,"CLUSTER_SET-CONFIG-EPOCH":qHe.default,clusterSetConfigEpoch:qHe.default,CLUSTER_SETSLOT:Xte.default,clusterSetSlot:Xte.default,CLUSTER_SLOTS:jHe.default,clusterSlots:jHe.default,COMMAND_COUNT:HHe.default,commandCount:HHe.default,COMMAND_GETKEYS:QHe.default,commandGetKeys:QHe.default,COMMAND_GETKEYSANDFLAGS:GHe.default,commandGetKeysAndFlags:GHe.default,COMMAND_INFO:KHe.default,commandInfo:KHe.default,COMMAND_LIST:Zte.default,commandList:Zte.default,COMMAND:VHe.default,command:VHe.default,CONFIG_GET:zHe.default,configGet:zHe.default,CONFIG_RESETASTAT:YHe.default,configResetStat:YHe.default,CONFIG_REWRITE:JHe.default,configRewrite:JHe.default,CONFIG_SET:XHe.default,configSet:XHe.default,COPY:ZHe.default,copy:ZHe.default,DBSIZE:eQe.default,dbSize:eQe.default,DECR:tQe.default,decr:tQe.default,DECRBY:rQe.default,decrBy:rQe.default,DEL:nQe.default,del:nQe.default,DELEX:sQe.default,delEx:sQe.default,DIGEST:iQe.default,digest:iQe.default,DUMP:aQe.default,dump:aQe.default,ECHO:oQe.default,echo:oQe.default,EVAL_RO:cQe.default,evalRo:cQe.default,EVAL:uQe.default,eval:uQe.default,EVALSHA_RO:lQe.default,evalShaRo:lQe.default,EVALSHA:dQe.default,evalSha:dQe.default,EXISTS:BQe.default,exists:BQe.default,EXPIRE:LQe.default,expire:LQe.default,EXPIREAT:MQe.default,expireAt:MQe.default,EXPIRETIME:WQe.default,expireTime:WQe.default,FLUSHALL:ere.default,flushAll:ere.default,FLUSHDB:$Qe.default,flushDb:$Qe.default,FCALL:FQe.default,fCall:FQe.default,FCALL_RO:UQe.default,fCallRo:UQe.default,FUNCTION_DELETE:qQe.default,functionDelete:qQe.default,FUNCTION_DUMP:jQe.default,functionDump:jQe.default,FUNCTION_FLUSH:HQe.default,functionFlush:HQe.default,FUNCTION_KILL:QQe.default,functionKill:QQe.default,FUNCTION_LIST_WITHCODE:GQe.default,functionListWithCode:GQe.default,FUNCTION_LIST:KQe.default,functionList:KQe.default,FUNCTION_LOAD:VQe.default,functionLoad:VQe.default,FUNCTION_RESTORE:zQe.default,functionRestore:zQe.default,FUNCTION_STATS:YQe.default,functionStats:YQe.default,GEOADD:fQe.default,geoAdd:fQe.default,GEODIST:pQe.default,geoDist:pQe.default,GEOHASH:mQe.default,geoHash:mQe.default,GEOPOS:hQe.default,geoPos:hQe.default,GEORADIUS_RO_WITH:gQe.default,geoRadiusRoWith:gQe.default,GEORADIUS_RO:AQe.default,geoRadiusRo:AQe.default,GEORADIUS_STORE:yQe.default,geoRadiusStore:yQe.default,GEORADIUS_WITH:xQe.default,geoRadiusWith:xQe.default,GEORADIUS:bQe.default,geoRadius:bQe.default,GEORADIUSBYMEMBER_RO_WITH:EQe.default,geoRadiusByMemberRoWith:EQe.default,GEORADIUSBYMEMBER_RO:_Qe.default,geoRadiusByMemberRo:_Qe.default,GEORADIUSBYMEMBER_STORE:SQe.default,geoRadiusByMemberStore:SQe.default,GEORADIUSBYMEMBER_WITH:vQe.default,geoRadiusByMemberWith:vQe.default,GEORADIUSBYMEMBER:IQe.default,geoRadiusByMember:IQe.default,GEOSEARCH_WITH:CQe.default,geoSearchWith:CQe.default,GEOSEARCH:TQe.default,geoSearch:TQe.default,GEOSEARCHSTORE:wQe.default,geoSearchStore:wQe.default,GET:RQe.default,get:RQe.default,GETBIT:NQe.default,getBit:NQe.default,GETDEL:OQe.default,getDel:OQe.default,GETEX:PQe.default,getEx:PQe.default,GETRANGE:kQe.default,getRange:kQe.default,GETSET:DQe.default,getSet:DQe.default,HDEL:JQe.default,hDel:JQe.default,HELLO:XQe.default,hello:XQe.default,HEXISTS:ZQe.default,hExists:ZQe.default,HEXPIRE:eGe.default,hExpire:eGe.default,HEXPIREAT:tGe.default,hExpireAt:tGe.default,HEXPIRETIME:rGe.default,hExpireTime:rGe.default,HGET:nGe.default,hGet:nGe.default,HGETALL:sGe.default,hGetAll:sGe.default,HGETDEL:iGe.default,hGetDel:iGe.default,HGETEX:aGe.default,hGetEx:aGe.default,HINCRBY:oGe.default,hIncrBy:oGe.default,HINCRBYFLOAT:cGe.default,hIncrByFloat:cGe.default,HKEYS:uGe.default,hKeys:uGe.default,HLEN:lGe.default,hLen:lGe.default,HMGET:dGe.default,hmGet:dGe.default,HPERSIST:fGe.default,hPersist:fGe.default,HPEXPIRE:pGe.default,hpExpire:pGe.default,HPEXPIREAT:mGe.default,hpExpireAt:mGe.default,HPEXPIRETIME:hGe.default,hpExpireTime:hGe.default,HPTTL:gGe.default,hpTTL:gGe.default,HRANDFIELD_COUNT_WITHVALUES:AGe.default,hRandFieldCountWithValues:AGe.default,HRANDFIELD_COUNT:yGe.default,hRandFieldCount:yGe.default,HRANDFIELD:xGe.default,hRandField:xGe.default,HSCAN:bGe.default,hScan:bGe.default,HSCAN_NOVALUES:EGe.default,hScanNoValues:EGe.default,HSET:_Ge.default,hSet:_Ge.default,HSETEX:SGe.default,hSetEx:SGe.default,HSETNX:vGe.default,hSetNX:vGe.default,HSTRLEN:IGe.default,hStrLen:IGe.default,HTTL:CGe.default,hTTL:CGe.default,HVALS:TGe.default,hVals:TGe.default,HOTKEYS_GET:wGe.default,hotkeysGet:wGe.default,HOTKEYS_RESET:RGe.default,hotkeysReset:RGe.default,HOTKEYS_START:NGe.default,hotkeysStart:NGe.default,HOTKEYS_STOP:OGe.default,hotkeysStop:OGe.default,INCR:PGe.default,incr:PGe.default,INCRBY:kGe.default,incrBy:kGe.default,INCRBYFLOAT:DGe.default,incrByFloat:DGe.default,INFO:BGe.default,info:BGe.default,KEYS:LGe.default,keys:LGe.default,LASTSAVE:MGe.default,lastSave:MGe.default,LATENCY_DOCTOR:WGe.default,latencyDoctor:WGe.default,LATENCY_GRAPH:$Ge.default,latencyGraph:$Ge.default,LATENCY_HISTORY:FGe.default,latencyHistory:FGe.default,LATENCY_HISTOGRAM:yYe.default,latencyHistogram:yYe.default,LATENCY_LATEST:UGe.default,latencyLatest:UGe.default,LATENCY_RESET:qGe.default,latencyReset:qGe.default,LCS_IDX_WITHMATCHLEN:jGe.default,lcsIdxWithMatchLen:jGe.default,LCS_IDX:HGe.default,lcsIdx:HGe.default,LCS_LEN:QGe.default,lcsLen:QGe.default,LCS:GGe.default,lcs:GGe.default,LINDEX:KGe.default,lIndex:KGe.default,LINSERT:VGe.default,lInsert:VGe.default,LLEN:zGe.default,lLen:zGe.default,LMOVE:YGe.default,lMove:YGe.default,LMPOP:JGe.default,lmPop:JGe.default,LOLWUT:Nur.default,LPOP_COUNT:XGe.default,lPopCount:XGe.default,LPOP:ZGe.default,lPop:ZGe.default,LPOS_COUNT:eKe.default,lPosCount:eKe.default,LPOS:tKe.default,lPos:tKe.default,LPUSH:rKe.default,lPush:rKe.default,LPUSHX:nKe.default,lPushX:nKe.default,LRANGE:sKe.default,lRange:sKe.default,LREM:iKe.default,lRem:iKe.default,LSET:aKe.default,lSet:aKe.default,LTRIM:oKe.default,lTrim:oKe.default,MEMORY_DOCTOR:cKe.default,memoryDoctor:cKe.default,"MEMORY_MALLOC-STATS":uKe.default,memoryMallocStats:uKe.default,MEMORY_PURGE:lKe.default,memoryPurge:lKe.default,MEMORY_STATS:dKe.default,memoryStats:dKe.default,MEMORY_USAGE:fKe.default,memoryUsage:fKe.default,MGET:pKe.default,mGet:pKe.default,MIGRATE:mKe.default,migrate:mKe.default,MODULE_LIST:hKe.default,moduleList:hKe.default,MODULE_LOAD:gKe.default,moduleLoad:gKe.default,MODULE_UNLOAD:AKe.default,moduleUnload:AKe.default,MOVE:yKe.default,move:yKe.default,MSET:xKe.default,mSet:xKe.default,MSETEX:bKe.default,mSetEx:bKe.default,MSETNX:EKe.default,mSetNX:EKe.default,OBJECT_ENCODING:_Ke.default,objectEncoding:_Ke.default,OBJECT_FREQ:SKe.default,objectFreq:SKe.default,OBJECT_IDLETIME:vKe.default,objectIdleTime:vKe.default,OBJECT_REFCOUNT:IKe.default,objectRefCount:IKe.default,PERSIST:CKe.default,persist:CKe.default,PEXPIRE:TKe.default,pExpire:TKe.default,PEXPIREAT:wKe.default,pExpireAt:wKe.default,PEXPIRETIME:RKe.default,pExpireTime:RKe.default,PFADD:NKe.default,pfAdd:NKe.default,PFCOUNT:OKe.default,pfCount:OKe.default,PFMERGE:PKe.default,pfMerge:PKe.default,PING:kKe.default,ping:kKe.default,PSETEX:DKe.default,pSetEx:DKe.default,PTTL:BKe.default,pTTL:BKe.default,PUBLISH:LKe.default,publish:LKe.default,PUBSUB_CHANNELS:MKe.default,pubSubChannels:MKe.default,PUBSUB_NUMPAT:WKe.default,pubSubNumPat:WKe.default,PUBSUB_NUMSUB:$Ke.default,pubSubNumSub:$Ke.default,PUBSUB_SHARDNUMSUB:FKe.default,pubSubShardNumSub:FKe.default,PUBSUB_SHARDCHANNELS:UKe.default,pubSubShardChannels:UKe.default,RANDOMKEY:qKe.default,randomKey:qKe.default,READONLY:jKe.default,readonly:jKe.default,RENAME:HKe.default,rename:HKe.default,RENAMENX:QKe.default,renameNX:QKe.default,REPLICAOF:GKe.default,replicaOf:GKe.default,"RESTORE-ASKING":KKe.default,restoreAsking:KKe.default,RESTORE:VKe.default,restore:VKe.default,RPOP_COUNT:YKe.default,rPopCount:YKe.default,ROLE:zKe.default,role:zKe.default,RPOP:JKe.default,rPop:JKe.default,RPOPLPUSH:XKe.default,rPopLPush:XKe.default,RPUSH:ZKe.default,rPush:ZKe.default,RPUSHX:eVe.default,rPushX:eVe.default,SADD:tVe.default,sAdd:tVe.default,SCAN:rVe.default,scan:rVe.default,SCARD:nVe.default,sCard:nVe.default,SCRIPT_DEBUG:sVe.default,scriptDebug:sVe.default,SCRIPT_EXISTS:iVe.default,scriptExists:iVe.default,SCRIPT_FLUSH:aVe.default,scriptFlush:aVe.default,SCRIPT_KILL:oVe.default,scriptKill:oVe.default,SCRIPT_LOAD:cVe.default,scriptLoad:cVe.default,SDIFF:uVe.default,sDiff:uVe.default,SDIFFSTORE:lVe.default,sDiffStore:lVe.default,SET:dVe.default,set:dVe.default,SETBIT:fVe.default,setBit:fVe.default,SETEX:pVe.default,setEx:pVe.default,SETNX:mVe.default,setNX:mVe.default,SETRANGE:hVe.default,setRange:hVe.default,SINTER:gVe.default,sInter:gVe.default,SINTERCARD:AVe.default,sInterCard:AVe.default,SINTERSTORE:yVe.default,sInterStore:yVe.default,SISMEMBER:xVe.default,sIsMember:xVe.default,SMEMBERS:bVe.default,sMembers:bVe.default,SMISMEMBER:EVe.default,smIsMember:EVe.default,SMOVE:_Ve.default,sMove:_Ve.default,SORT_RO:SVe.default,sortRo:SVe.default,SORT_STORE:vVe.default,sortStore:vVe.default,SORT:IVe.default,sort:IVe.default,SPOP_COUNT:CVe.default,sPopCount:CVe.default,SPOP:TVe.default,sPop:TVe.default,SPUBLISH:wVe.default,sPublish:wVe.default,SRANDMEMBER_COUNT:RVe.default,sRandMemberCount:RVe.default,SRANDMEMBER:NVe.default,sRandMember:NVe.default,SREM:OVe.default,sRem:OVe.default,SSCAN:PVe.default,sScan:PVe.default,STRLEN:kVe.default,strLen:kVe.default,SUNION:DVe.default,sUnion:DVe.default,SUNIONSTORE:BVe.default,sUnionStore:BVe.default,SWAPDB:LVe.default,swapDb:LVe.default,TIME:MVe.default,time:MVe.default,TOUCH:WVe.default,touch:WVe.default,TTL:$Ve.default,ttl:$Ve.default,TYPE:FVe.default,type:FVe.default,UNLINK:UVe.default,unlink:UVe.default,WAIT:qVe.default,wait:qVe.default,XACK:jVe.default,xAck:jVe.default,XACKDEL:HVe.default,xAckDel:HVe.default,XADD_NOMKSTREAM:QVe.default,xAddNoMkStream:QVe.default,XADD:GVe.default,xAdd:GVe.default,XAUTOCLAIM_JUSTID:KVe.default,xAutoClaimJustId:KVe.default,XAUTOCLAIM:VVe.default,xAutoClaim:VVe.default,XCLAIM_JUSTID:zVe.default,xClaimJustId:zVe.default,XCLAIM:YVe.default,xClaim:YVe.default,XCFGSET:JVe.default,xCfgSet:JVe.default,XDEL:XVe.default,xDel:XVe.default,XDELEX:ZVe.default,xDelEx:ZVe.default,XGROUP_CREATE:eze.default,xGroupCreate:eze.default,XGROUP_CREATECONSUMER:tze.default,xGroupCreateConsumer:tze.default,XGROUP_DELCONSUMER:rze.default,xGroupDelConsumer:rze.default,XGROUP_DESTROY:nze.default,xGroupDestroy:nze.default,XGROUP_SETID:sze.default,xGroupSetId:sze.default,XINFO_CONSUMERS:ize.default,xInfoConsumers:ize.default,XINFO_GROUPS:aze.default,xInfoGroups:aze.default,XINFO_STREAM:oze.default,xInfoStream:oze.default,XLEN:cze.default,xLen:cze.default,XPENDING_RANGE:uze.default,xPendingRange:uze.default,XPENDING:lze.default,xPending:lze.default,XRANGE:dze.default,xRange:dze.default,XREAD:fze.default,xRead:fze.default,XREADGROUP:pze.default,xReadGroup:pze.default,XREVRANGE:mze.default,xRevRange:mze.default,XSETID:hze.default,xSetId:hze.default,XTRIM:gze.default,xTrim:gze.default,ZADD_INCR:Aze.default,zAddIncr:Aze.default,ZADD:yze.default,zAdd:yze.default,ZCARD:xze.default,zCard:xze.default,ZCOUNT:bze.default,zCount:bze.default,ZDIFF_WITHSCORES:Eze.default,zDiffWithScores:Eze.default,ZDIFF:_ze.default,zDiff:_ze.default,ZDIFFSTORE:Sze.default,zDiffStore:Sze.default,ZINCRBY:vze.default,zIncrBy:vze.default,ZINTER_WITHSCORES:Ize.default,zInterWithScores:Ize.default,ZINTER:Cze.default,zInter:Cze.default,ZINTERCARD:Tze.default,zInterCard:Tze.default,ZINTERSTORE:wze.default,zInterStore:wze.default,ZLEXCOUNT:Rze.default,zLexCount:Rze.default,ZMPOP:Nze.default,zmPop:Nze.default,ZMSCORE:Oze.default,zmScore:Oze.default,ZPOPMAX_COUNT:Pze.default,zPopMaxCount:Pze.default,ZPOPMAX:kze.default,zPopMax:kze.default,ZPOPMIN_COUNT:Dze.default,zPopMinCount:Dze.default,ZPOPMIN:Bze.default,zPopMin:Bze.default,ZRANDMEMBER_COUNT_WITHSCORES:Lze.default,zRandMemberCountWithScores:Lze.default,ZRANDMEMBER_COUNT:Mze.default,zRandMemberCount:Mze.default,ZRANDMEMBER:Wze.default,zRandMember:Wze.default,ZRANGE_WITHSCORES:$ze.default,zRangeWithScores:$ze.default,ZRANGE:Fze.default,zRange:Fze.default,ZRANGEBYLEX:Uze.default,zRangeByLex:Uze.default,ZRANGEBYSCORE_WITHSCORES:qze.default,zRangeByScoreWithScores:qze.default,ZRANGEBYSCORE:jze.default,zRangeByScore:jze.default,ZRANGESTORE:Hze.default,zRangeStore:Hze.default,ZRANK_WITHSCORE:Gze.default,zRankWithScore:Gze.default,ZRANK:Kze.default,zRank:Kze.default,ZREM:Vze.default,zRem:Vze.default,ZREMRANGEBYLEX:zze.default,zRemRangeByLex:zze.default,ZREMRANGEBYRANK:Yze.default,zRemRangeByRank:Yze.default,ZREMRANGEBYSCORE:Qze.default,zRemRangeByScore:Qze.default,ZREVRANK:Jze.default,zRevRank:Jze.default,ZSCAN:Xze.default,zScan:Xze.default,ZSCORE:Zze.default,zScore:Zze.default,ZUNION_WITHSCORES:eYe.default,zUnionWithScores:eYe.default,ZUNION:tYe.default,zUnion:tYe.default,ZUNIONSTORE:rYe.default,zUnionStore:rYe.default,VADD:nYe.default,vAdd:nYe.default,VCARD:sYe.default,vCard:sYe.default,VDIM:iYe.default,vDim:iYe.default,VEMB:aYe.default,vEmb:aYe.default,VEMB_RAW:oYe.default,vEmbRaw:oYe.default,VGETATTR:cYe.default,vGetAttr:cYe.default,VINFO:uYe.default,vInfo:uYe.default,VLINKS:lYe.default,vLinks:lYe.default,VLINKS_WITHSCORES:dYe.default,vLinksWithScores:dYe.default,VRANDMEMBER:fYe.default,vRandMember:fYe.default,VRANGE:pYe.default,vRange:pYe.default,VREM:mYe.default,vRem:mYe.default,VSETATTR:hYe.default,vSetAttr:hYe.default,VSIM:gYe.default,vSim:gYe.default,VSIM_WITHSCORES:AYe.default,vSimWithScores:AYe.default};var Our=$(yu()),{HOTKEYS_GET:LJr,hotkeysGet:MJr,HOTKEYS_RESET:WJr,hotkeysReset:$Jr,HOTKEYS_START:FJr,hotkeysStart:UJr,HOTKEYS_STOP:qJr,hotkeysStop:jJr,...Pur}=Our.default;Qn.NON_STICKY_COMMANDS=Pur});var qC=E(ar=>{"use strict";var xYe=ar&&ar.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},bYe;Object.defineProperty(ar,"__esModule",{value:!0});ar.emitDiagnostics=ar.dbgMaintenance=ar.MAINTENANCE_EVENTS=ar.SMIGRATED_EVENT=void 0;var EYe=require("net"),kur=require("dns/promises"),Eb=xYe(require("node:assert")),Dur=require("node:timers/promises"),Bur=xYe(require("node:diagnostics_channel"));ar.SMIGRATED_EVENT="__SMIGRATED";ar.MAINTENANCE_EVENTS={PAUSE_WRITING:"pause-writing",RESUME_WRITING:"resume-writing",TIMEOUTS_UPDATE:"timeouts-update"};var q0={MOVING:"MOVING",MIGRATING:"MIGRATING",MIGRATED:"MIGRATED",FAILING_OVER:"FAILING_OVER",FAILED_OVER:"FAILED_OVER",SMIGRATING:"SMIGRATING",SMIGRATED:"SMIGRATED"},Lur=(...t)=>{if(process.env.REDIS_DEBUG_MAINTENANCE)return console.log(new Date().toISOString().slice(11,23),"[MNT]",...t)};ar.dbgMaintenance=Lur;var Mur=t=>{if(!process.env.REDIS_EMIT_DIAGNOSTICS)return;Bur.default.channel("redis.maintenance").publish(t)};ar.emitDiagnostics=Mur;var uL=class{#e;#t;#r=0;#n;static setupDefaultMaintOptions(e){e.maintNotifications===void 0&&(e.maintNotifications=e?.RESP===3?"auto":"disabled"),e.maintEndpointType===void 0&&(e.maintEndpointType="auto"),e.maintRelaxedSocketTimeout===void 0&&(e.maintRelaxedSocketTimeout=1e4),e.maintRelaxedCommandTimeout===void 0&&(e.maintRelaxedCommandTimeout=1e4)}static async getHandshakeCommand(e){if(e.maintNotifications==="disabled")return;let r=e.url?new URL(e.url).hostname:e.socket?.host;if(!r)return;let n=e.socket?.tls??!1;return{cmd:["CLIENT","MAINT_NOTIFICATIONS","ON","moving-endpoint-type",await $ur(n,r,e)],errorHandler:i=>{if((0,ar.dbgMaintenance)("handshake failed:",i),e.maintNotifications==="enabled")throw i}}}constructor(e,r,n){this.#e=e,this.#t=n,this.#n=r,this.#e.addPushHandler(this.#a)}#a=e=>{if((0,ar.dbgMaintenance)("ONPUSH:",e.map(String)),!Array.isArray(e)||!Object.values(q0).includes(String(e[0])))return!1;let r=String(e[0]);switch((0,ar.emitDiagnostics)({type:r,timestamp:Date.now(),data:{push:e.map(String)}}),r){case q0.MOVING:{let n=e[2],s=e[3]?String(e[3]):null;return(0,ar.dbgMaintenance)("Received MOVING:",n,s),this.#o(n,s),!0}case q0.MIGRATING:case q0.SMIGRATING:case q0.FAILING_OVER:return(0,ar.dbgMaintenance)("Received MIGRATING|SMIGRATING|FAILING_OVER"),this.#s(),!0;case q0.MIGRATED:case q0.FAILED_OVER:return(0,ar.dbgMaintenance)("Received MIGRATED|FAILED_OVER"),this.#i(),!0;case q0.SMIGRATED:return(0,ar.dbgMaintenance)("Received SMIGRATED"),this.#c(e),this.#i(),!0}return!1};#o=async(e,r)=>{this.#s();let n,s;if(r===null){(0,Eb.default)(this.#t.maintEndpointType==="none");let{host:u,port:l}=this.#l();n=u,s=l;let d=e*1e3/2;(0,ar.dbgMaintenance)(`Wait for ${d}ms`),await(0,Dur.setTimeout)(d)}else{let u=r.split(":");n=u[0],s=Number(u[1])}(0,ar.dbgMaintenance)("Pausing writing of new commands to old socket"),this.#n._pause(),(0,ar.dbgMaintenance)("Creating new tmp client");let i=performance.now();if(this.#t.url){let u=new URL(this.#t.url);u.hostname=n,u.port=String(s),this.#t.url=u.toString()}else this.#t.socket={...this.#t.socket,host:n,port:s};let a=this.#n.duplicate();a.on("error",u=>{(0,ar.dbgMaintenance)("[ERR]",u)}),(0,ar.dbgMaintenance)(`Tmp client created in ${(performance.now()-i).toFixed(2)}ms`),(0,ar.dbgMaintenance)(`Set timeout for tmp client to ${this.#t.maintRelaxedSocketTimeout}`),a._maintenanceUpdate({relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout}),(0,ar.dbgMaintenance)(`Connecting tmp client: ${n}:${s}`),i=performance.now(),await a.connect(),(0,ar.dbgMaintenance)(`Connected to tmp client in ${(performance.now()-i).toFixed(2)}ms`),(0,ar.dbgMaintenance)("Wait for all in-flight commands to complete"),await this.#e.waitForInflightCommandsToComplete(),(0,ar.dbgMaintenance)("In-flight commands completed"),(0,ar.dbgMaintenance)("Swap client sockets...");let o=this.#n._ejectSocket(),c=a._ejectSocket();this.#n._insertSocket(c),a._insertSocket(o),a.destroy(),(0,ar.dbgMaintenance)("Swap client sockets done."),(0,ar.dbgMaintenance)("Resume writing"),this.#n._unpause(),this.#i()};#s=()=>{if(this.#r++,this.#r>1){(0,ar.dbgMaintenance)("Timeout relaxation already done");return}let e={relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout};this.#n._maintenanceUpdate(e)};#i=()=>{if(this.#r=Math.max(this.#r-1,0),this.#r>0){(0,ar.dbgMaintenance)("Not ready to unrelax timeouts yet");return}let e={relaxedCommandTimeout:void 0,relaxedSocketTimeout:void 0};this.#n._maintenanceUpdate(e)};#c=e=>{let r=bYe.parseSMigratedPush(e);(0,ar.dbgMaintenance)("emit smigratedEvent",r),this.#n._handleSmigrated(r)};static parseSMigratedPush(e){let r=new Map;for(let[s,i,a]of e[2]){let o=String(s),[c,u]=String(i).split(":"),l=String(a).split(",").map(p=>{let m=p.indexOf("-");return m===-1?Number(p):[Number(p.substring(0,m)),Number(p.substring(m+1))]}),d=r.get(o)??[],f=d.find(p=>p.addr.host===c&&p.addr.port===Number(u));f?f.slots=f.slots.concat(l):d.push({addr:{host:c,port:Number(u)},slots:l}),r.set(o,d)}let n=[];for(let[s,i]of r.entries()){let[a,o]=s.split(":");n.push({source:{host:a,port:Number(o)},destinations:i})}return{seqId:e[1],entries:n}}#l(){(0,Eb.default)(this.#t.socket!==void 0),(0,Eb.default)("host"in this.#t.socket),(0,Eb.default)(typeof this.#t.socket.host=="string");let e=this.#t.socket.host;(0,Eb.default)(typeof this.#t.socket.port=="number");let r=this.#t.socket.port;return{host:e,port:r}}};bYe=uL;ar.default=uL;function Wur(t){let e=(0,EYe.isIP)(t);if(e===4){let r=t.split(".").map(Number);return r[0]===10||r[0]===172&&r[1]>=16&&r[1]<=31||r[0]===192&&r[1]===168}return e===6?t.startsWith("fc")||t.startsWith("fd")||t==="::1"||t.startsWith("fe80"):!1}async function $ur(t,e,r){if((0,Eb.default)(r.maintEndpointType!==void 0),r.maintEndpointType!=="auto")return(0,ar.dbgMaintenance)(`Determine endpoint type: ${r.maintEndpointType}`),r.maintEndpointType;let n=(0,EYe.isIP)(e)?e:(await(0,kur.lookup)(e,{family:0})).address,s=Wur(n),i;return t?i=s?"internal-fqdn":"external-fqdn":i=s?"internal-ip":"external-ip",(0,ar.dbgMaintenance)(`Determine endpoint type: ${i}`),i}});var TYe=E(jC=>{"use strict";var CYe=jC&&jC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jC,"__esModule",{value:!0});var _Ye=require("node:events"),SYe=CYe(require("node:net")),Fur=CYe(require("node:tls")),Dl=Ol(),vYe=require("node:timers/promises"),IYe=qC(),tre=class extends _Ye.EventEmitter{#e;#t;#r;#n;#a;#o;#s;#i=!1;get isOpen(){return this.#i}#c=!1;get isReady(){return this.#c}#l=!1;#h=0;get socketEpoch(){return this.#h}constructor(e,r){super(),this.#e=e,this.#t=r?.connectTimeout??5e3,this.#r=this.#p(r),this.#n=this.#d(r),this.#a=r?.socketTimeout}#p(e){let r=e?.reconnectStrategy;return r===!1||typeof r=="number"?()=>r:r?(n,s)=>{try{let i=r(n,s);if(i!==!1&&!(i instanceof Error)&&typeof i!="number")throw new TypeError(`Reconnect strategy should return \`false | Error | number\`, got ${i} instead`);return i}catch(i){return this.emit("error",i),this.defaultReconnectStrategy(n,i)}}:this.defaultReconnectStrategy}#d(e){if(e?.tls===!0){let n={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return Fur.default.connect(n)},event:"secureConnect"}}if(e&&"path"in e){let n={...e,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return SYe.default.createConnection(n)},event:"connect"}}let r={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return SYe.default.createConnection(r)},event:"connect"}}#f(e,r){let n=this.#r(e,r);return n===!1?(this.#i=!1,this.emit("error",r),r):n instanceof Error?(this.#i=!1,this.emit("error",r),new Dl.ReconnectStrategyError(n,r)):n}async connect(){if(this.#i)throw new Error("Socket already opened");return this.#i=!0,this.#m()}async#m(){let e=0;do try{this.#s=await this.#y(),this.emit("connect");try{if(await this.#e(),!this.#s||this.#s.destroyed||!this.#s.readable||!this.#s.writable){let r=this.#f(e++,new Dl.SocketClosedUnexpectedlyError);if(typeof r!="number")throw r;await(0,vYe.setTimeout)(r),this.emit("reconnecting");continue}}catch(r){throw this.#s.destroy(),this.#s=void 0,r}this.#c=!0,this.#h++,this.emit("ready")}catch(r){let n=this.#f(e++,r);if(typeof n!="number")throw n;this.emit("error",r),await(0,vYe.setTimeout)(n),this.emit("reconnecting")}while(this.#i&&!this.#c)}setMaintenanceTimeout(e){if((0,IYe.dbgMaintenance)(`Set socket timeout to ${e}`),this.#o===e){(0,IYe.dbgMaintenance)(`Socket already set maintenanceCommandTimeout to ${e}, skipping`);return}this.#o=e,e!==void 0?this.#s?.setTimeout(e):this.#s?.setTimeout(this.#a??0)}async#y(){let e=this.#n.create(),r;return this.#t!==void 0&&(r=()=>e.destroy(new Dl.ConnectionTimeoutError),e.once("timeout",r),e.setTimeout(this.#t)),this.#l&&e.unref(),await(0,_Ye.once)(e,this.#n.event),r&&e.removeListener("timeout",r),this.#a&&(e.once("timeout",()=>{let n=this.#o?new Dl.SocketTimeoutDuringMaintenanceError(this.#o):new Dl.SocketTimeoutError(this.#a);e.destroy(n)}),e.setTimeout(this.#a)),e.once("error",n=>this.#g(n)).once("close",n=>{n||!this.#i||this.#s!==e||this.#g(new Dl.SocketClosedUnexpectedlyError)}).on("drain",()=>this.emit("drain")).on("data",n=>this.emit("data",n)),e}#g(e){let r=this.#c;this.#c=!1,this.emit("error",e),!(!r||!this.#i||typeof this.#f(0,e)!="number")&&(this.emit("reconnecting"),this.#m().catch(()=>{}))}write(e){if(this.#s){this.#s.cork();for(let r of e){for(let n of r)this.#s.write(n);if(this.#s.writableNeedDrain)break}this.#s.uncork()}}async quit(e){if(!this.#i)throw new Dl.ClientClosedError;this.#i=!1;let r=await e();return this.destroySocket(),r}close(){if(!this.#i)throw new Dl.ClientClosedError;this.#i=!1}destroy(){if(!this.#i)throw new Dl.ClientClosedError;this.#i=!1,this.destroySocket()}destroySocket(){this.#c=!1,this.#s&&(this.#s.destroy(),this.#s=void 0),this.emit("end")}ref(){this.#l=!1,this.#s?.ref()}unref(){this.#l=!0,this.#s?.unref()}defaultReconnectStrategy(e,r){if(r instanceof Dl.SocketTimeoutError)return!1;let n=Math.floor(Math.random()*200);return Math.min(Math.pow(2,e)*50,2e3)+n}};jC.default=tre});var nre=E(lL=>{"use strict";Object.defineProperty(lL,"__esModule",{value:!0});lL.Token=void 0;var rre=class{value;expiresAtMs;receivedAtMs;constructor(e,r,n){this.value=e,this.expiresAtMs=r,this.receivedAtMs=n}getTtlMs(e){return this.expiresAtMs{"use strict";Object.defineProperty(_b,"__esModule",{value:!0});_b.TokenManager=_b.IDPError=void 0;var Uur=nre(),dL=class extends Error{message;isRetryable;constructor(e,r){super(e),this.message=e,this.isRetryable=r,this.name="IDPError"}};_b.IDPError=dL;var sre=class{identityProvider;config;currentToken=null;refreshTimeout=null;listener=null;retryAttempt=0;constructor(e,r){if(this.identityProvider=e,this.config=r,this.config.expirationRefreshRatio>1)throw new Error("expirationRefreshRatio must be less than or equal to 1");if(this.config.expirationRefreshRatio<0)throw new Error("expirationRefreshRatio must be greater or equal to 0")}start(e,r=0){return this.listener&&this.stop(),this.listener=e,this.retryAttempt=0,this.scheduleNextRefresh(r),{dispose:()=>this.stop()}}calculateRetryDelay(){if(!this.config.retry)return 0;let{initialDelayMs:e,maxDelayMs:r,backoffMultiplier:n,jitterPercentage:s}=this.config.retry,i=e*Math.pow(n,this.retryAttempt-1);if(i=Math.min(i,r),s){let o=i*(s/100),c=Math.random()*o-o/2;i+=c}return Math.max(0,Math.floor(i))}shouldRetry(e){if(!this.config.retry)return!1;let{maxAttempts:r,isRetryable:n}=this.config.retry;return this.retryAttempt>=r?!1:n?n(e,this.retryAttempt):!1}isRunning(){return this.listener!==null}async refresh(){if(!this.listener)throw new Error("TokenManager is not running, but refresh was called");try{await this.identityProvider.requestToken().then(this.handleNewToken),this.retryAttempt=0}catch(e){if(this.shouldRetry(e)){this.retryAttempt++;let r=this.calculateRetryDelay();this.notifyError(`Token refresh failed (attempt ${this.retryAttempt}), retrying in ${r}ms: ${e}`,!0),this.scheduleNextRefresh(r)}else this.notifyError(e,!1),this.stop()}}handleNewToken=async({token:e,ttlMs:r})=>{if(!this.listener)throw new Error("TokenManager is not running, but a new token was received");let n=this.wrapAndSetCurrentToken(e,r);this.listener.onNext(n),this.scheduleNextRefresh(this.calculateRefreshTime(n))};wrapAndSetCurrentToken(e,r){let n=Date.now(),s=new Uur.Token(e,n+r,n);return this.currentToken=s,s}scheduleNextRefresh(e){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),e===0?this.refresh():this.refreshTimeout=setTimeout(()=>this.refresh(),e)}calculateRefreshTime(e,r=Date.now()){let n=e.getTtlMs(r);return Math.floor(n*this.config.expirationRefreshRatio)}stop(){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),this.listener=null,this.currentToken=null,this.retryAttempt=0}getCurrentToken(){return this.currentToken}notifyError(e,r){let n=e instanceof Error?e.message:String(e);if(!this.listener)throw new Error(`TokenManager is not running but received an error: ${n}`);this.listener.onError(new dL(n,r))}};_b.TokenManager=sre});var RYe=E(Sb=>{"use strict";Object.defineProperty(Sb,"__esModule",{value:!0});Sb.UnableToObtainNewCredentialsError=Sb.CredentialsError=void 0;var ire=class extends Error{constructor(e){super(`Re-authentication with latest credentials failed: ${e}`),this.name="CredentialsError"}};Sb.CredentialsError=ire;var are=class extends Error{constructor(e){super(`Unable to obtain new credentials : ${e}`),this.name="UnableToObtainNewCredentialsError"}};Sb.UnableToObtainNewCredentialsError=are});var PYe=E(Tc=>{"use strict";Object.defineProperty(Tc,"__esModule",{value:!0});Tc.Token=Tc.CredentialsError=Tc.UnableToObtainNewCredentialsError=Tc.IDPError=Tc.TokenManager=void 0;var NYe=wYe();Object.defineProperty(Tc,"TokenManager",{enumerable:!0,get:function(){return NYe.TokenManager}});Object.defineProperty(Tc,"IDPError",{enumerable:!0,get:function(){return NYe.IDPError}});var OYe=RYe();Object.defineProperty(Tc,"UnableToObtainNewCredentialsError",{enumerable:!0,get:function(){return OYe.UnableToObtainNewCredentialsError}});Object.defineProperty(Tc,"CredentialsError",{enumerable:!0,get:function(){return OYe.CredentialsError}});var qur=nre();Object.defineProperty(Tc,"Token",{enumerable:!0,get:function(){return qur.Token}})});var pL=E(Bl=>{"use strict";var jur=Bl&&Bl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Bl,"__esModule",{value:!0});Bl.EmptyAwareSinglyLinkedList=Bl.SinglyLinkedList=Bl.DoublyLinkedList=void 0;var Hur=jur(require("events")),ore=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){return++this.#e,this.#r===void 0?this.#t=this.#r={previous:this.#t,next:void 0,value:e}:this.#r=this.#r.next={previous:this.#r,next:void 0,value:e}}unshift(e){return++this.#e,this.#t===void 0?this.#t=this.#r={previous:void 0,next:void 0,value:e}:this.#t=this.#t.previous={previous:void 0,next:this.#t,value:e}}add(e,r=!1){return r?this.unshift(e):this.push(e)}shift(){if(this.#t===void 0)return;--this.#e;let e=this.#t;return e.next?(e.next.previous=void 0,this.#t=e.next,e.next=void 0):this.#t=this.#r=void 0,e.value}remove(e){this.#e!==0&&(--this.#e,this.#r===e&&(this.#r=e.previous),this.#t===e?this.#t=e.next:(e.previous&&(e.previous.next=e.next),e.next&&(e.next.previous=e.previous)),e.previous=void 0,e.next=void 0)}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}*nodes(){let e=this.#t;for(;e;){let r=e.next;yield e,e=r}}};Bl.DoublyLinkedList=ore;var fL=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){++this.#e;let r={value:e,next:void 0,removed:!1};return this.#t===void 0?this.#t=this.#r=r:this.#r.next=this.#r=r}remove(e,r){if(e.removed)throw new Error("node already removed");--this.#e,this.#t===e?this.#r===e?this.#t=this.#r=void 0:this.#t=e.next:this.#r===e?(this.#r=r,r.next=void 0):r.next=e.next,e.removed=!0}shift(){if(this.#t===void 0)return;let e=this.#t;return--this.#e===0?this.#t=this.#r=void 0:this.#t=e.next,e.removed=!0,e.value}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}};Bl.SinglyLinkedList=fL;var cre=class extends fL{events=new Hur.default;reset(){let e=this.length;super.reset(),e!==this.length&&this.length===0&&this.events.emit("empty")}shift(){let e=this.length,r=super.shift();return e!==this.length&&this.length===0&&this.events.emit("empty"),r}remove(e,r){let n=this.length;super.remove(e,r),n!==this.length&&this.length===0&&this.events.emit("empty")}};Bl.EmptyAwareSinglyLinkedList=cre});var kYe=E(ure=>{"use strict";Object.defineProperty(ure,"__esModule",{value:!0});var HC=`\r -`;function Qur(t){let e=[],r="*"+t.length+HC;for(let n=0;n{var DYe=[0,4129,8258,12387,16516,20645,24774,28903,33032,37161,41290,45419,49548,53677,57806,61935,4657,528,12915,8786,21173,17044,29431,25302,37689,33560,45947,41818,54205,50076,62463,58334,9314,13379,1056,5121,25830,29895,17572,21637,42346,46411,34088,38153,58862,62927,50604,54669,13907,9842,5649,1584,30423,26358,22165,18100,46939,42874,38681,34616,63455,59390,55197,51132,18628,22757,26758,30887,2112,6241,10242,14371,51660,55789,59790,63919,35144,39273,43274,47403,23285,19156,31415,27286,6769,2640,14899,10770,56317,52188,64447,60318,39801,35672,47931,43802,27814,31879,19684,23749,11298,15363,3168,7233,60846,64911,52716,56781,44330,48395,36200,40265,32407,28342,24277,20212,15891,11826,7761,3696,65439,61374,57309,53244,48923,44858,40793,36728,37256,33193,45514,41451,53516,49453,61774,57711,4224,161,12482,8419,20484,16421,28742,24679,33721,37784,41979,46042,49981,54044,58239,62302,689,4752,8947,13010,16949,21012,25207,29270,46570,42443,38312,34185,62830,58703,54572,50445,13538,9411,5280,1153,29798,25671,21540,17413,42971,47098,34713,38840,59231,63358,50973,55100,9939,14066,1681,5808,26199,30326,17941,22068,55628,51565,63758,59695,39368,35305,47498,43435,22596,18533,30726,26663,6336,2273,14466,10403,52093,56156,60223,64286,35833,39896,43963,48026,19061,23124,27191,31254,2801,6864,10931,14994,64814,60687,56684,52557,48554,44427,40424,36297,31782,27655,23652,19525,15522,11395,7392,3265,61215,65342,53085,57212,44955,49082,36825,40952,28183,32310,20053,24180,11923,16050,3793,7920],Gur=function(e){for(var r,n=0,s=0,i=[],a=e.length;n>6|192,i[s++]=r&63|128):(r&64512)===55296&&n+1>18|240,i[s++]=r>>12&63|128,i[s++]=r>>6&63|128,i[s++]=r&63|128):(i[s++]=r>>12|224,i[s++]=r>>6&63|128,i[s++]=r&63|128);return i},BYe=lre.exports=function(e){for(var r,n=0,s=-1,i=0,a=0,o=typeof e=="string"?Gur(e):e,c=o.length;n>8)&255]^a<<8;else if(n-1!==s)return a&16383;i=DYe[(r^i>>8)&255]^i<<8}return i&16383};lre.exports.generateMulti=function(e){for(var r=1,n=e.length,s=BYe(e[0]);r{"use strict";var Kur=kt&&kt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kt,"__esModule",{value:!0});kt.PubSub=kt.PUBSUB_TYPE=void 0;var Vur=Kur(dre());kt.PUBSUB_TYPE={CHANNELS:"CHANNELS",PATTERNS:"PATTERNS",SHARDED:"SHARDED"};var bi={[kt.PUBSUB_TYPE.CHANNELS]:{subscribe:Buffer.from("subscribe"),unsubscribe:Buffer.from("unsubscribe"),message:Buffer.from("message")},[kt.PUBSUB_TYPE.PATTERNS]:{subscribe:Buffer.from("psubscribe"),unsubscribe:Buffer.from("punsubscribe"),message:Buffer.from("pmessage")},[kt.PUBSUB_TYPE.SHARDED]:{subscribe:Buffer.from("ssubscribe"),unsubscribe:Buffer.from("sunsubscribe"),message:Buffer.from("smessage")}},fre=class t{static isStatusReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return bi[kt.PUBSUB_TYPE.CHANNELS].subscribe.equals(r)||bi[kt.PUBSUB_TYPE.CHANNELS].unsubscribe.equals(r)||bi[kt.PUBSUB_TYPE.PATTERNS].subscribe.equals(r)||bi[kt.PUBSUB_TYPE.PATTERNS].unsubscribe.equals(r)||bi[kt.PUBSUB_TYPE.SHARDED].subscribe.equals(r)}static isShardedUnsubscribe(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return bi[kt.PUBSUB_TYPE.SHARDED].unsubscribe.equals(r)}static#e(e){return Array.isArray(e)?e:[e]}static#t(e,r){return r?e.buffers:e.strings}#r=0;#n=!1;get isActive(){return this.#n}listeners={[kt.PUBSUB_TYPE.CHANNELS]:new Map,[kt.PUBSUB_TYPE.PATTERNS]:new Map,[kt.PUBSUB_TYPE.SHARDED]:new Map};subscribe(e,r,n,s){let i=[bi[e].subscribe],a=t.#e(r);for(let o of a){let c=this.listeners[e].get(o);(!c||c.unsubscribing)&&i.push(o)}if(i.length===1){for(let o of a)t.#t(this.listeners[e].get(o),s).add(n);return}return this.#n=!0,this.#r++,{args:i,channelsCounter:i.length-1,resolve:()=>{this.#r--;for(let o of a){let c=this.listeners[e].get(o);c||(c={unsubscribing:!1,buffers:new Set,strings:new Set},this.listeners[e].set(o,c)),t.#t(c,s).add(n)}},reject:()=>{this.#r--,this.#s()}}}extendChannelListeners(e,r,n){if(this.#a(e,r,n))return this.#n=!0,this.#r++,{args:[bi[e].subscribe,r],channelsCounter:1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}#a(e,r,n){let s=this.listeners[e].get(r);if(!s)return this.listeners[e].set(r,n),!0;for(let i of n.buffers)s.buffers.add(i);for(let i of n.strings)s.strings.add(i);return!1}extendTypeListeners(e,r){let n=[bi[e].subscribe];for(let[s,i]of r)this.#a(e,s,i)&&n.push(s);if(n.length!==1)return this.#n=!0,this.#r++,{args:n,channelsCounter:n.length-1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}unsubscribe(e,r,n,s){let i=this.listeners[e];if(!r)return this.#o([bi[e].unsubscribe],NaN,()=>i.clear());let a=t.#e(r);if(!n)return this.#o([bi[e].unsubscribe,...a],a.length,()=>{for(let c of a)i.delete(c)});let o=[bi[e].unsubscribe];for(let c of a){let u=i.get(c);if(u){let l,d;if(s?(l=u.buffers,d=u.strings):(l=u.strings,d=u.buffers),(l.has(n)?l.size-1:l.size)!==0||d.size!==0)continue;u.unsubscribing=!0}o.push(c)}if(o.length===1){for(let c of a)t.#t(i.get(c),s).delete(n);return}return this.#o(o,o.length-1,()=>{for(let c of a){let u=i.get(c);u&&((s?u.buffers:u.strings).delete(n),u.buffers.size===0&&u.strings.size===0&&i.delete(c))}})}#o(e,r,n){return{args:e,channelsCounter:r,resolve:()=>{n(),this.#s()},reject:void 0}}#s(){this.#n=this.listeners[kt.PUBSUB_TYPE.CHANNELS].size!==0||this.listeners[kt.PUBSUB_TYPE.PATTERNS].size!==0||this.listeners[kt.PUBSUB_TYPE.SHARDED].size!==0||this.#r!==0}reset(){this.#n=!1,this.#r=0}resubscribe(){let e=[];for(let[r,n]of Object.entries(this.listeners))n.size&&(this.#n=!0,r===kt.PUBSUB_TYPE.SHARDED?this.#c(e,n):this.#i(e,r,n));return e}#i(e,r,n){this.#r++;let s=()=>this.#r--;e.push({args:[bi[r].subscribe,...n.keys()],channelsCounter:n.size,resolve:s,reject:s})}#c(e,r){let n=()=>this.#r--;for(let s of r.keys())this.#r++,e.push({args:[bi[kt.PUBSUB_TYPE.SHARDED].subscribe,s],channelsCounter:1,resolve:n,reject:n})}handleMessageReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return bi[kt.PUBSUB_TYPE.CHANNELS].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.CHANNELS,e[2],e[1]),!0):bi[kt.PUBSUB_TYPE.PATTERNS].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.PATTERNS,e[3],e[2],e[1]),!0):bi[kt.PUBSUB_TYPE.SHARDED].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.SHARDED,e[2],e[1]),!0):!1}removeShardedListeners(e){let r=this.listeners[kt.PUBSUB_TYPE.SHARDED].get(e);return this.listeners[kt.PUBSUB_TYPE.SHARDED].delete(e),this.#s(),r}removeAllListeners(){let e={[kt.PUBSUB_TYPE.CHANNELS]:this.listeners[kt.PUBSUB_TYPE.CHANNELS],[kt.PUBSUB_TYPE.PATTERNS]:this.listeners[kt.PUBSUB_TYPE.PATTERNS],[kt.PUBSUB_TYPE.SHARDED]:this.listeners[kt.PUBSUB_TYPE.SHARDED]};return this.#s(),this.listeners[kt.PUBSUB_TYPE.CHANNELS]=new Map,this.listeners[kt.PUBSUB_TYPE.PATTERNS]=new Map,this.listeners[kt.PUBSUB_TYPE.SHARDED]=new Map,e}removeShardedPubSubListenersForSlots(e){let r=new Map;for(let[n,s]of this.listeners[kt.PUBSUB_TYPE.SHARDED])e.has((0,Vur.default)(n))&&(r.set(n,s),this.listeners[kt.PUBSUB_TYPE.SHARDED].delete(n));return this.#s(),{[kt.PUBSUB_TYPE.SHARDED]:r}}#l(e,r,n,s){let i=(s??n).toString(),a=this.listeners[e].get(i);if(!a)return;for(let u of a.buffers)u(r,n);if(!a.strings.size)return;let o=s?n.toString():i,c=o==="__redis__:invalidate"?r===null?null:r.map(u=>u.toString()):r.toString();for(let u of a.strings)u(c,o)}};kt.PubSub=fre});var MYe=E(KC=>{"use strict";var zur=KC&&KC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(KC,"__esModule",{value:!0});var LYe=pL(),Yur=zur(kYe()),GC=eL(),pre=QC(),vb=Ol(),Ib=qC(),Jur=Buffer.from("pong"),Xur=Buffer.from("RESET"),Zur={...GC.PUSH_TYPE_MAPPING,[GC.RESP_TYPES.SIMPLE_STRING]:Buffer},mre=class t{#e;#t;#r=new LYe.DoublyLinkedList;#n=new LYe.EmptyAwareSinglyLinkedList;#a;#o;decoder;#s=new pre.PubSub;#i=[this.#p.bind(this)];#c;setMaintenanceCommandTimeout(e){if(this.#c===e){(0,Ib.dbgMaintenance)(`Queue already set maintenanceCommandTimeout to ${e}, skipping`);return}if((0,Ib.dbgMaintenance)(`Setting maintenance command timeout to ${e}`),this.#c=e,this.#c===void 0){(0,Ib.dbgMaintenance)("Queue will keep maintenanceCommandTimeout for exisitng commands, just to be on the safe side. New commands will receive normal timeouts");return}let r=0,n=this.#r.length;for(let s of this.#r.nodes()){let i=s.value;t.#I(i),r++;let a=this.#c,o=AbortSignal.timeout(a);i.timeout={signal:o,listener:()=>{this.#r.remove(s),i.reject(new vb.CommandTimeoutDuringMaintenanceError(a))},originalTimeout:i.timeout?.originalTimeout},o.addEventListener("abort",i.timeout.listener,{once:!0})}(0,Ib.dbgMaintenance)(`Total of ${r} of ${n} timeouts reset to ${e}`)}get isPubSubActive(){return this.#s.isActive}constructor(e,r,n){this.#e=e,this.#t=r,this.#a=n,this.decoder=this.#f()}#l(e){this.#n.shift().resolve(e)}#h(e){this.#n.shift().reject(e)}#p(e){if(this.#s.handleMessageReply(e))return!0;let r=pre.PubSub.isShardedUnsubscribe(e);if(r&&!this.#n.length){let n=e[1].toString();return this.#a(n,this.#s.removeShardedListeners(n)),!0}else if(r||pre.PubSub.isStatusReply(e)){let n=this.#n.head.value;return(Number.isNaN(n.channelsCounter)&&e[2]===0||--n.channelsCounter===0)&&this.#n.shift().resolve(),!0}return!1}#d(){return this.#n.head.value.typeMapping??{}}#f(){return new GC.Decoder({onReply:e=>this.#l(e),onErrorReply:e=>this.#h(e),onPush:e=>{for(let r of this.#i)if(r(e))return},getTypeMapping:()=>this.#d()})}addPushHandler(e){this.#i.push(e)}async waitForInflightCommandsToComplete(e){if(this.#n.length!==0)return new Promise(r=>{let n=()=>{s&&clearTimeout(s),r()},s,i=e?.timeoutMs;i!==void 0&&i>0&&(s=setTimeout(()=>{this.#n.events.off("empty",n);let a=this.#n.length;(0,Ib.dbgMaintenance)(`waitForInflightCommandsToComplete timed out after ${i}ms with ${a} commands still waiting`),e?.flushOnTimeout&&a>0&&((0,Ib.dbgMaintenance)(`Flushing ${a} commands that timed out waiting for reply`),this.#S(new vb.TimeoutError)),r()},i)),this.#n.events.once("empty",n)})}addCommand(e,r){return this.#t&&this.#r.length+this.#n.length>=this.#t?Promise.reject(new Error("The queue is full")):r?.abortSignal?.aborted?Promise.reject(new vb.AbortError):new Promise((n,s)=>{let i,a={args:e,chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r?.typeMapping};a.slotNumber=r?.slotNumber;let o=this.#c??r?.timeout,c=this.#c!==void 0;if(o){let l=AbortSignal.timeout(o);a.timeout={signal:l,listener:()=>{this.#r.remove(i),a.reject(c?new vb.CommandTimeoutDuringMaintenanceError(o):new vb.TimeoutError)},originalTimeout:r?.timeout},l.addEventListener("abort",a.timeout.listener,{once:!0})}let u=r?.abortSignal;u&&(a.abort={signal:u,listener:()=>{this.#r.remove(i),a.reject(new vb.AbortError)}},u.addEventListener("abort",a.abort.listener,{once:!0})),i=this.#r.add(a,r?.asap)})}#m(e,r=!1,n){return new Promise((s,i)=>{this.#r.add({args:e.args,chainId:n,abort:void 0,timeout:void 0,resolve(){e.resolve(),s()},reject(a){e.reject?.(),i(a)},channelsCounter:e.channelsCounter,typeMapping:GC.PUSH_TYPE_MAPPING},r)})}#y(){this.#e===2&&(this.decoder.onReply=e=>{if(Array.isArray(e)){if(this.#p(e))return;let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];if(Jur.equals(r)){let{resolve:n,typeMapping:s}=this.#n.shift(),i=e[1].length===0?e[0]:e[1];n(s?.[GC.RESP_TYPES.SIMPLE_STRING]===Buffer?i:i.toString());return}}return this.#l(e)},this.decoder.getTypeMapping=()=>Zur)}subscribe(e,r,n,s){let i=this.#s.subscribe(e,r,n,s);if(i)return this.#y(),this.#m(i)}#g(){this.decoder.onReply=e=>this.#l(e),this.decoder.getTypeMapping=()=>this.#d()}unsubscribe(e,r,n,s){let i=this.#s.unsubscribe(e,r,n,s);if(i){if(i&&this.#e===2){let{resolve:a}=i;i.resolve=()=>{this.#s.isActive||this.#g(),a()}}return this.#m(i)}}removeAllPubSubListeners(){return this.#s.removeAllListeners()}removeShardedPubSubListenersForSlots(e){return this.#s.removeShardedPubSubListenersForSlots(e)}resubscribe(e){let r=this.#s.resubscribe();if(r.length)return this.#y(),Promise.all(r.map(n=>this.#m(n,!0,e)))}extendPubSubChannelListeners(e,r,n){let s=this.#s.extendChannelListeners(e,r,n);if(s)return this.#y(),this.#m(s)}extendPubSubListeners(e,r){let n=this.#s.extendTypeListeners(e,r);if(n)return this.#y(),this.#m(n)}getPubSubListeners(e){return this.#s.listeners[e]}monitor(e,r){return new Promise((n,s)=>{let i=r?.typeMapping??{};this.#r.add({args:["MONITOR"],chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:()=>{this.#E?this.#E=e:this.decoder.onReply=e,this.decoder.getTypeMapping=()=>i,n()},reject:s,channelsCounter:void 0,typeMapping:i},r?.asap)})}resetDecoder(){this.#g(),this.decoder.reset()}#E;async reset(e,r){return new Promise((n,s)=>{this.#E=this.decoder.onReply,this.decoder.onReply=i=>{if(typeof i=="string"&&i==="RESET"||i instanceof Buffer&&Xur.equals(i)){this.#g(),this.#E=void 0,this.#s.reset(),this.#n.shift().resolve(i);return}this.#E(i)},this.#r.push({args:["RESET"],chainId:e,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r})})}isWaitingToWrite(){return this.#r.length>0}*commandsToWrite(){let e=this.#r.shift();for(;e;){let r;try{r=(0,Yur.default)(e.args)}catch(n){e.reject(n),e=this.#r.shift();continue}e.args=void 0,e.abort&&(t.#A(e),e.abort=void 0),e.timeout&&(t.#I(e),e.timeout=void 0),this.#o=e.chainId,e.chainId=void 0,this.#n.push(e),yield r,e=this.#r.shift()}}#S(e){for(let r of this.#n)r.reject(e);this.#n.reset()}static#A(e){e.abort.signal.removeEventListener("abort",e.abort.listener)}static#I(e){e.timeout?.signal.removeEventListener("abort",e.timeout.listener)}static#_(e,r){e.abort&&t.#A(e),e.timeout&&t.#I(e),e.reject(r)}flushWaitingForReply(e){if(this.resetDecoder(),this.#s.reset(),this.#S(e),!!this.#o){for(;this.#r.head?.value.chainId===this.#o;)t.#_(this.#r.shift(),e);this.#o=void 0}}flushAll(e){this.resetDecoder(),this.#s.reset(),this.#S(e);for(let r of this.#r)t.#_(r,e);this.#r.reset()}isEmpty(){return this.#r.length===0&&this.#n.length===0}extractCommandsForSlots(e){let r=[],n=this.#r.head;for(;n!==void 0;)if(n.value.slotNumber!==void 0&&e.has(n.value.slotNumber)){r.push(n.value);let s=n;n=n.next,this.#r.remove(s)}else n=n.next;return r}extractAllCommands(){let e=[],r=this.#r.head;for(;r;)e.push(r.value),this.#r.remove(r),r=r.next;return e}prependCommandsToWrite(e){if(e.length)for(let r=e.length-1;r>=0;r--)this.#r.unshift(e[r])}};KC.default=mre});var Ml=E(Ll=>{"use strict";Object.defineProperty(Ll,"__esModule",{value:!0});Ll.scriptArgumentsPrefix=Ll.functionArgumentsPrefix=Ll.getTransformReply=Ll.attachConfig=void 0;function WYe(){throw new Error("Some RESP3 results for Redis Query Engine responses may change. Refer to the readme for guidance")}function elr({BaseClass:t,commands:e,createCommand:r,createModuleCommand:n,createFunctionCommand:s,createScriptCommand:i,config:a}){let o=a?.RESP??2,c=class extends t{};for(let[u,l]of Object.entries(e))a?.RESP==3&&l.unstableResp3&&!a.unstableResp3?c.prototype[u]=WYe:c.prototype[u]=r(l,o);if(a?.modules)for(let[u,l]of Object.entries(a.modules)){let d=Object.create(null);for(let[f,p]of Object.entries(l))a.RESP==3&&p.unstableResp3&&!a.unstableResp3?d[f]=WYe:d[f]=n(p,o);$Ye(c.prototype,u,d)}if(a?.functions)for(let[u,l]of Object.entries(a.functions)){let d=Object.create(null);for(let[f,p]of Object.entries(l))d[f]=s(f,p,o);$Ye(c.prototype,u,d)}if(a?.scripts)for(let[u,l]of Object.entries(a.scripts))c.prototype[u]=i(l,o);return c}Ll.attachConfig=elr;function $Ye(t,e,r){Object.defineProperty(t,e,{get(){let n=Object.create(r);return n._self=this,Object.defineProperty(this,e,{value:n}),n}})}function tlr(t,e){switch(typeof t.transformReply){case"function":return t.transformReply;case"object":return t.transformReply[e]}}Ll.getTransformReply=tlr;function rlr(t,e){let r=[e.IS_READ_ONLY?"FCALL_RO":"FCALL",t];return e.NUMBER_OF_KEYS!==void 0&&r.push(e.NUMBER_OF_KEYS.toString()),r}Ll.functionArgumentsPrefix=rlr;function nlr(t){let e=[t.IS_READ_ONLY?"EVALSHA_RO":"EVALSHA",t.SHA1];return t.NUMBER_OF_KEYS!==void 0&&e.push(t.NUMBER_OF_KEYS.toString()),e}Ll.scriptArgumentsPrefix=nlr});var VC=E(gre=>{"use strict";Object.defineProperty(gre,"__esModule",{value:!0});var FYe=Ol(),hre=class{typeMapping;constructor(e){this.typeMapping=e}queue=[];scriptsInUse=new Set;addCommand(e,r){this.queue.push({args:e,transformReply:r})}addScript(e,r,n){let s=[];s.preserve=r.preserve,this.scriptsInUse.has(e.SHA1)?s.push("EVALSHA",e.SHA1):(this.scriptsInUse.add(e.SHA1),s.push("EVAL",e.SCRIPT)),e.NUMBER_OF_KEYS!==void 0&&s.push(e.NUMBER_OF_KEYS.toString()),s.push(...r),this.addCommand(s,n)}transformReplies(e){let r=[],n=e.map((s,i)=>{if(s instanceof FYe.ErrorReply)return r.push(i),s;let{transformReply:a,args:o}=this.queue[i];return a?a(s,o.preserve,this.typeMapping):s});if(r.length)throw new FYe.MultiErrorReply(n,r);return n}};gre.default=hre});var yre=E(zC=>{"use strict";var UYe=zC&&zC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(zC,"__esModule",{value:!0});var slr=UYe(yu()),ilr=UYe(VC()),Cb=Ml(),mL=Pl(),Are=class t{static#e(e,r){let n=(0,Cb.getTransformReply)(e,r);return function(...s){let i=new mL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(a,n)}}static#t(e,r){let n=(0,Cb.getTransformReply)(e,r);return function(...s){let i=new mL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(a,n)}}static#r(e,r,n){let s=(0,Cb.functionArgumentsPrefix)(e,r),i=(0,Cb.getTransformReply)(r,n);return function(...a){let o=new mL.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(c,i)}}static#n(e,r){let n=(0,Cb.getTransformReply)(e,r);return function(...s){let i=new mL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#c(e,a,n)}}static extend(e){return(0,Cb.attachConfig)({BaseClass:t,commands:slr.default,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;constructor(e,r,n){this.#a=new ilr.default(n),this.#o=e,this.#s=r}SELECT(e,r){return this.#i=e,this.#a.addCommand(["SELECT",e.toString()],r),this}select=this.SELECT;addCommand(e,r){return this.#a.addCommand(e,r),this}#c(e,r,n){return this.#a.addScript(e,r,n),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#a.queue,this.#i))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#a.queue,this.#i))}execAsPipelineTyped(){return this.execAsPipeline()}};zC.default=Are});var HYe=E(wb=>{"use strict";var qYe=wb&&wb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(wb,"__esModule",{value:!0});wb.RedisLegacyClient=void 0;var alr=Ml(),jYe=qYe(yu()),olr=qYe(VC()),Tb=class t{static#e(e,r){let n;return typeof r[r.length-1]=="function"&&(n=r.pop()),t.pushArguments(e,r),n}static pushArguments(e,r){for(let n=0;nthis.#r.emit("error",u));return}c.then(u=>o(null,s?s(u):u)).catch(u=>o(u))}}#r;#n;constructor(e){this.#r=e;let r=e.options?.RESP??2;for(let[n,s]of Object.entries(jYe.default))this[n]=t.#t(n,s,r);this.#n=xre.factory(r)}sendCommand(...e){let r=[],n=t.#e(r,e),s=this.#r.sendCommand(r);if(!n){s.catch(i=>this.#r.emit("error",i));return}s.then(i=>n(null,i)).catch(i=>n(i))}multi(){return this.#n(this.#r)}};wb.RedisLegacyClient=Tb;var xre=class t{static#e(e,r,n){let s=Tb.getTransformReply(r,n);return function(...i){let a=[e];return Tb.pushArguments(a,i),this.#t.addCommand(a,s),this}}static factory(e){let r=class extends t{};for(let[n,s]of Object.entries(jYe.default))r.prototype[n]=t.#e(n,s,e);return n=>new r(n)}#t=new olr.default;#r;constructor(e){this.#r=e}sendCommand(...e){let r=[];return Tb.pushArguments(r,e),this.#t.addCommand(r),this}exec(e){let r=this.#r._executeMulti(this.#t.queue);if(!e){r.catch(n=>this.#r.emit("error",n));return}r.then(n=>e(null,this.#t.transformReplies(n))).catch(n=>e?.(n))}}});var Rb=E(io=>{"use strict";Object.defineProperty(io,"__esModule",{value:!0});io.PooledNoRedirectClientSideCache=io.BasicPooledClientSideCache=io.PooledClientSideCacheProvider=io.BasicClientSideCache=io.ClientSideCacheProvider=io.CacheStats=void 0;var clr=require("stream"),YC=class t{hitCount;missCount;loadSuccessCount;loadFailureCount;totalLoadTime;evictionCount;constructor(e,r,n,s,i,a){if(this.hitCount=e,this.missCount=r,this.loadSuccessCount=n,this.loadFailureCount=s,this.totalLoadTime=i,this.evictionCount=a,e<0||r<0||n<0||s<0||i<0||a<0)throw new Error("All statistics values must be non-negative")}static of(e=0,r=0,n=0,s=0,i=0,a=0){return new t(e,r,n,s,i,a)}static empty(){return t.EMPTY_STATS}static EMPTY_STATS=new t(0,0,0,0,0,0);requestCount(){return this.hitCount+this.missCount}hitRate(){let e=this.requestCount();return e===0?1:this.hitCount/e}missRate(){let e=this.requestCount();return e===0?0:this.missCount/e}loadCount(){return this.loadSuccessCount+this.loadFailureCount}loadFailureRate(){let e=this.loadCount();return e===0?0:this.loadFailureCount/e}averageLoadPenalty(){let e=this.loadCount();return e===0?0:this.totalLoadTime/e}minus(e){return t.of(Math.max(0,this.hitCount-e.hitCount),Math.max(0,this.missCount-e.missCount),Math.max(0,this.loadSuccessCount-e.loadSuccessCount),Math.max(0,this.loadFailureCount-e.loadFailureCount),Math.max(0,this.totalLoadTime-e.totalLoadTime),Math.max(0,this.evictionCount-e.evictionCount))}plus(e){return t.of(this.hitCount+e.hitCount,this.missCount+e.missCount,this.loadSuccessCount+e.loadSuccessCount,this.loadFailureCount+e.loadFailureCount,this.totalLoadTime+e.totalLoadTime,this.evictionCount+e.evictionCount)}};io.CacheStats=YC;var hL=class t{static INSTANCE=new t;constructor(){}recordHits(e){}recordMisses(e){}recordLoadSuccess(e){}recordLoadFailure(e){}recordEvictions(e){}snapshot(){return YC.empty()}};function ulr(){return hL.INSTANCE}var gL=class t{#e=0;#t=0;#r=0;#n=0;#a=0;#o=0;recordHits(e){this.#e+=e}recordMisses(e){this.#t+=e}recordLoadSuccess(e){this.#r++,this.#a+=e}recordLoadFailure(e){this.#n++,this.#a+=e}recordEvictions(e){this.#o+=e}snapshot(){return YC.of(this.#e,this.#t,this.#r,this.#n,this.#a,this.#o)}static create(){return new t}};function llr(t){let e=new Array(t.length*2);for(let r=0;r0&&this.#r.recordEvictions(r)}get(e){let r=this.#e.get(e);if(r&&!r.validate()){this.delete(e),this.#r.recordEvictions(1),this.emit("cache-evict",e);return}return r!==void 0&&this.lru&&(this.#e.delete(e),this.#e.set(e,r)),r}delete(e){let r=this.#e.get(e);r&&(r.invalidate(),this.#e.delete(e))}has(e){return this.#e.has(e)}set(e,r,n){let s=this.#e.size,i=this.#e.get(e);i&&(s--,i.invalidate()),this.maxEntries>0&&s>=this.maxEntries&&(this.deleteOldest(),this.#r.recordEvictions(1)),this.#e.set(e,r);for(let a of n)this.#t.has(a.toString())||this.#t.set(a.toString(),new Set),this.#t.get(a.toString()).add(e)}size(){return this.#e.size}createValueEntry(e,r){return new JC(this.ttl,r)}createPromiseEntry(e,r){return new XC(this.ttl,r)}stats(){return this.#r.snapshot()}onError(){this.clear()}onClose(){this.clear()}deleteOldest(){let r=this.#e[Symbol.iterator]().next();if(!r.done){let n=r.value[0],s=this.#e.get(n);s&&s.invalidate(),this.#e.delete(n)}}entryEntries(){return this.#e.entries()}keySetEntries(){return this.#t.entries()}};io.BasicClientSideCache=xL;var bL=class extends xL{#e=!1;disable(){this.#e=!0}enable(){this.#e=!1}get(e){if(!this.#e)return super.get(e)}has(e){return this.#e?!1:super.has(e)}onPoolClose(){this.clear()}};io.PooledClientSideCacheProvider=bL;var EL=class extends bL{onError(){this.clear(!1)}onClose(){this.clear(!1)}};io.BasicPooledClientSideCache=EL;var bre=class extends JC{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){let e=super.validate();return this.#e&&(e=e&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch),e}},Ere=class extends XC{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){return super.validate()&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch}},_re=class extends EL{createValueEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new bre(this.ttl,n,r)}createPromiseEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new Ere(this.ttl,n,r)}onError(){}onClose(){}};io.PooledNoRedirectClientSideCache=_re});var _L=E(vre=>{"use strict";Object.defineProperty(vre,"__esModule",{value:!0});var Sre=class{#e;#t;get(e){return JSON.stringify(e,QYe())===this.#t?this.#e:void 0}set(e,r){this.#e=r,this.#t=JSON.stringify(e,QYe())}};vre.default=Sre;function QYe(){let t=new WeakSet;return function(r,n){return n&&typeof n=="object"?t.has(n)?"circular":(t.add(n),n):n}}});var wre=E(Nb=>{"use strict";var Tre=Nb&&Nb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Nb,"__esModule",{value:!0});Nb.RedisClientPool=void 0;var dlr=yu(),flr=Tre(Ob()),plr=require("node:events"),Ire=pL(),mlr=Ol(),mg=Ml(),hlr=Tre(yre()),GYe=Rb(),SL=Pl(),glr=Tre(_L()),Cre=class t extends plr.EventEmitter{static#e(e,r){let n=(0,mg.getTransformReply)(e,r);return async function(...s){let i=new SL.BasicCommandParser;return e.parseCommand(i,...s),this.execute(a=>a._executeCommand(e,i,this._commandOptions,n))}}static#t(e,r){let n=(0,mg.getTransformReply)(e,r);return async function(...s){let i=new SL.BasicCommandParser;return e.parseCommand(i,...s),this._self.execute(a=>a._executeCommand(e,i,this._self._commandOptions,n))}}static#r(e,r,n){let s=(0,mg.functionArgumentsPrefix)(e,r),i=(0,mg.getTransformReply)(r,n);return async function(...a){let o=new SL.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self.execute(c=>c._executeCommand(r,o,this._self._commandOptions,i))}}static#n(e,r){let n=(0,mg.scriptArgumentsPrefix)(e),s=(0,mg.getTransformReply)(e,r);return async function(...i){let a=new SL.BasicCommandParser;return a.pushVariadic(n),e.parseCommand(a,...i),this.execute(o=>o._executeScript(e,a,this._commandOptions,s))}}static#a=new glr.default;static create(e,r){let n=t.#a.get(e);return n||(n=(0,mg.attachConfig)({BaseClass:t,commands:dlr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),n.prototype.Multi=hlr.default.extend(e),t.#a.set(e,n)),Object.create(new n(e,r))}static#o={minimum:1,maximum:100,acquireTimeout:3e3,cleanupDelay:3e3};#s;#i;#c=new Ire.SinglyLinkedList;get idleClients(){return this._self.#c.length}#l=new Ire.DoublyLinkedList;get clientsInUse(){return this._self.#l.length}get totalClients(){return this._self.#c.length+this._self.#l.length}#h=new Ire.SinglyLinkedList;get tasksQueueLength(){return this._self.#h.length}#p=!1;get isOpen(){return this._self.#p}#d=!1;get isClosing(){return this._self.#d}#f;get clientSideCache(){return this._self.#f}constructor(e,r){if(super(),this.#i={...t.#o,...r},r?.clientSideCache)if(e===void 0&&(e={}),r.clientSideCache instanceof GYe.PooledClientSideCacheProvider)this.#f=e.clientSideCache=r.clientSideCache;else{let n=r.clientSideCache;this.#f=e.clientSideCache=new GYe.BasicPooledClientSideCache(n)}this.#s=flr.default.factory(e).bind(void 0,e)}_self=this;_commandOptions;withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}#m(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._self.#m("typeMapping",e)}withAbortSignal(e){return this._self.#m("abortSignal",e)}asap(){return this._self.#m("asap",!0)}async connect(){if(this._self.#p)return;this._self.#p=!0;let e=[];for(;e.lengththis.emit("error",r)));try{await e.value.connect()}catch(r){throw this._self.#l.remove(e),r}this._self.#E(e)}execute(e){return new Promise((r,n)=>{let s=this._self.#c.shift(),{tail:i}=this._self.#h;if(!s){let o;this._self.#i.acquireTimeout>0&&(o=setTimeout(()=>{this._self.#h.remove(c,i),n(new mlr.TimeoutError("Timeout waiting for a client"))},this._self.#i.acquireTimeout));let c=this._self.#h.push({timeout:o,resolve:r,reject:n,fn:e});this.totalClientsthis.#E(e)):(r(i),this.#E(e))}#E(e){let r=this.#h.shift();if(r){clearTimeout(r.timeout),this.#g(e,r.resolve,r.reject,r.fn);return}this.#l.remove(e),this.#c.push(e.value),this.#S()}cleanupTimeout;#S(){this.totalClients<=this.#i.minimum||(clearTimeout(this.cleanupTimeout),this.cleanupTimeout=setTimeout(()=>this.#A(),this.#i.cleanupDelay))}#A(){let e=Math.min(this.#c.length,this.totalClients-this.#i.minimum);for(let r=0;rn.sendCommand(e,r))}MULTI(){return new this.Multi((e,r)=>this.execute(n=>n._executeMulti(e,r)),e=>this.execute(r=>r._executePipeline(e)),this._commandOptions?.typeMapping)}multi=this.MULTI;async close(){if(!this._self.#d&&this._self.#p){this._self.#d=!0;try{let e=[];for(let r of this._self.#c)e.push(r.close());for(let r of this._self.#l)e.push(r.close());await Promise.all(e),this._self.#f?.onPoolClose(),this._self.#c.reset(),this._self.#l.reset()}catch{}finally{this._self.#d=!1}}}destroy(){for(let e of this._self.#c)e.destroy();this._self.#c.reset();for(let e of this._self.#l)e.destroy();this._self.#f?.onPoolClose(),this._self.#l.reset(),this._self.#p=!1}};Nb.RedisClientPool=Cre});var KYe=E((dXr,Alr)=>{Alr.exports={name:"@redis/client",version:"5.11.0",license:"MIT",main:"./dist/index.js",types:"./dist/index.d.ts",files:["dist/","!dist/tsconfig.tsbuildinfo"],scripts:{test:"nyc -r text-summary -r lcov mocha -r tsx --reporter mocha-multi-reporters --reporter-options configFile=mocha-multi-reporter-config.json --exit './lib/**/*.spec.ts'",release:"release-it"},dependencies:{"cluster-key-slot":"1.1.2"},devDependencies:{"@node-rs/xxhash":"1.7.6","@redis/test-utils":"*","@types/sinon":"^17.0.3",sinon:"^17.0.1"},peerDependencies:{"@node-rs/xxhash":"^1.1.0"},peerDependenciesMeta:{"@node-rs/xxhash":{optional:!0}},engines:{node:">= 18"},repository:{type:"git",url:"git://github.com/redis/node-redis.git"},bugs:{url:"https://github.com/redis/node-redis/issues"},homepage:"https://github.com/redis/node-redis/tree/master/packages/client",keywords:["redis"]}});var Ob=E(bu=>{"use strict";var ylr=bu&&bu.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),xlr=bu&&bu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),blr=bu&&bu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&ylr(e,t,r);return xlr(e,t),e},Db=bu&&bu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},xu;Object.defineProperty(bu,"__esModule",{value:!0});var Pb=Db(yu()),Elr=Db(TYe()),VYe=PYe(),_lr=Db(MYe()),Slr=require("node:events"),hg=Ml(),j0=Ol(),vlr=require("node:url"),kb=QC(),Ilr=Db(yre()),Clr=Db(UJ()),Tlr=HYe(),wlr=wre(),gg=Ce(),zYe=Rb(),vL=Pl(),Rlr=Db(_L()),Nlr=KYe(),IL=blr(qC()),CL=class extends Slr.EventEmitter{static#e(e,r){let n=(0,hg.getTransformReply)(e,r);return async function(...s){let i=new vL.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._commandOptions,n)}}static#t(e,r){let n=(0,hg.getTransformReply)(e,r);return async function(...s){let i=new vL.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._self._commandOptions,n)}}static#r(e,r,n){let s=(0,hg.functionArgumentsPrefix)(e,r),i=(0,hg.getTransformReply)(r,n);return async function(...a){let o=new vL.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._executeCommand(r,o,this._self._commandOptions,i)}}static#n(e,r){let n=(0,hg.scriptArgumentsPrefix)(e),s=(0,hg.getTransformReply)(e,r);return async function(...i){let a=new vL.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._executeScript(e,a,this._commandOptions,s)}}static#a=new Rlr.default;static factory(e){let r=xu.#a.get(e);return r||(r=(0,hg.attachConfig)({BaseClass:xu,commands:Pb.default,createCommand:xu.#e,createModuleCommand:xu.#t,createFunctionCommand:xu.#r,createScriptCommand:xu.#n,config:e}),r.prototype.Multi=Ilr.default.extend(e),xu.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return xu.factory(e)(e)}static parseOptions(e){if(e?.url){let r=xu.parseURL(e.url);if(e.socket){if(e.socket.tls!==void 0&&e.socket.tls!==r.socket.tls)throw new TypeError(`tls socket option is set to ${e.socket.tls} which is mismatch with protocol or the URL ${e.url} passed`);r.socket=Object.assign(e.socket,r.socket)}Object.assign(e,r)}return e}static parseURL(e){let{hostname:r,port:n,protocol:s,username:i,password:a,pathname:o}=new vlr.URL(e),c={socket:{host:r.replace(/^\[([0-9a-f:]+)\]$/,"$1"),tls:!1}};if(s!=="redis:"&&s!=="rediss:")throw new TypeError("Invalid protocol");if(c.socket.tls=s==="rediss:",n&&(c.socket.port=Number(n)),i&&(c.username=decodeURIComponent(i)),a&&(c.password=decodeURIComponent(a)),(i||a)&&(c.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:i?decodeURIComponent(i):void 0,password:a?decodeURIComponent(a):void 0})}),o.length>1){let u=Number(o.substring(1));if(isNaN(u))throw new TypeError("Invalid pathname");c.database=u}return c}#o;#s;#i;#c=0;#l;_self=this;_commandOptions;#h;#p;#d;#f=null;#m=!1;get clientSideCache(){return this._self.#d}get options(){return this._self.#o}get isOpen(){return this._self.#s.isOpen}get isReady(){return this._self.#s.isReady}get isPubSubActive(){return this._self.#i.isPubSubActive}get socketEpoch(){return this._self.#s.socketEpoch}get isWatching(){return this._self.#p!==void 0}get isDirtyWatch(){return this._self.#h!==void 0}setDirtyWatch(e){this._self.#h=e}constructor(e){if(super(),this.#y(e),this.#o=this.#g(e),this.#i=this.#E(),this.#s=this.#v(),this.#o.maintNotifications!=="disabled"&&new IL.default(this.#i,this,this.#o),this.#o.clientSideCache){if(this.#o.clientSideCache instanceof zYe.ClientSideCacheProvider)this.#d=this.#o.clientSideCache;else{let r=this.#o.clientSideCache;this.#d=new zYe.BasicClientSideCache(r)}this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.#d?.invalidate(n);else this.#d?.invalidate(null);return!0})}else e?.emitInvalidate&&this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.emit("invalidate",n);else this.emit("invalidate",null);return!0})}#y(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3");if(e?.emitInvalidate&&e?.RESP!==3)throw new Error("emitInvalidate is only supported with RESP3");if(e?.clientSideCache&&e?.emitInvalidate)throw new Error("emitInvalidate is not supported (or necessary) when clientSideCache is enabled");if(e?.maintNotifications&&e?.maintNotifications!=="disabled"&&e?.RESP!==3)throw new Error("Graceful Maintenance is only supported with RESP3")}#g(e={}){if(!e.credentialsProvider&&(e.username||e.password)&&(e.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:e.username,password:e.password})}),e.database&&(this._self.#c=e.database),e.commandOptions&&(this._commandOptions=e.commandOptions),e.maintNotifications!=="disabled"&&IL.default.setupDefaultMaintOptions(e),e.url){let r=xu.parseOptions(e);return r?.database&&(this._self.#c=r.database),r}return e}#E(){return new _lr.default(this.#o.RESP??2,this.#o.commandsQueueMaxLength,(e,r)=>this.emit("sharded-channel-moved",e,r))}reAuthenticate=async e=>{this.isPubSubActive&&!this.#o.RESP||await this.sendCommand((0,gg.parseArgs)(Pb.default.AUTH,{username:e.username,password:e.password??""}))};#S(e){return e.subscribe({onNext:r=>{this.reAuthenticate(r).catch(n=>{let s=n instanceof Error?n.message:String(n);e.onReAuthenticationError(new VYe.CredentialsError(s))})},onError:r=>{let n=`Error from streaming credentials provider: ${r.message}`;e.onReAuthenticationError(new VYe.UnableToObtainNewCredentialsError(n))}})}async#A(e,r){let n=[],s=await this.#I();r&&s.reverse();for(let{cmd:i,errorHandler:a}of s)n.push(this.#i.addCommand(i,{chainId:e,asap:r}).catch(a));return n}async#I(){let e=[],r=this.#o.credentialsProvider;if(this.#o.RESP){let s={};if(r&&r.type==="async-credentials-provider"){let i=await r.credentials();i.password&&(s.AUTH={username:i.username??"default",password:i.password})}if(r&&r.type==="streaming-credentials-provider"){let[i,a]=await this.#S(r);this.#f=a,i.password&&(s.AUTH={username:i.username??"default",password:i.password})}this.#o.name&&(s.SETNAME=this.#o.name),e.push({cmd:(0,gg.parseArgs)(Clr.default,this.#o.RESP,s)})}else{if(r&&r.type==="async-credentials-provider"){let s=await r.credentials();(s.username||s.password)&&e.push({cmd:(0,gg.parseArgs)(Pb.default.AUTH,{username:s.username,password:s.password??""})})}if(r&&r.type==="streaming-credentials-provider"){let[s,i]=await this.#S(r);this.#f=i,(s.username||s.password)&&e.push({cmd:(0,gg.parseArgs)(Pb.default.AUTH,{username:s.username,password:s.password??""})})}this.#o.name&&e.push({cmd:(0,gg.parseArgs)(Pb.default.CLIENT_SETNAME,this.#o.name)})}this.#c!==0&&e.push({cmd:["SELECT",this.#c.toString()]}),this.#o.readonly&&e.push({cmd:(0,gg.parseArgs)(Pb.default.READONLY)}),this.#o.disableClientInfo||(e.push({cmd:["CLIENT","SETINFO","LIB-VER",Nlr.version],errorHandler:()=>{}}),e.push({cmd:["CLIENT","SETINFO","LIB-NAME",this.#o.clientInfoTag?`node-redis(${this.#o.clientInfoTag})`:"node-redis"],errorHandler:()=>{}})),this.#d&&e.push({cmd:this.#d.trackingOn()}),this.#o?.emitInvalidate&&e.push({cmd:["CLIENT","TRACKING","ON"]});let n=await IL.default.getHandshakeCommand(this.#o);return n&&e.push(n),e}#_(e){e.on("data",r=>{try{this.#i.decoder.write(r)}catch(n){this.#i.resetDecoder(),this.emit("error",n)}}).on("error",r=>{this.emit("error",r),this.#d?.onError(),this.#s.isOpen&&!this.#o.disableOfflineQueue?this.#i.flushWaitingForReply(r):this.#i.flushAll(r)}).on("connect",()=>this.emit("connect")).on("ready",()=>{this.emit("ready"),this.#u(),this.#N()}).on("reconnecting",()=>this.emit("reconnecting")).on("drain",()=>this.#N()).on("end",()=>this.emit("end"))}#v(){let e=async()=>{let n=[],s=Symbol("Socket Initiator"),i=this.#i.resubscribe(s);if(i?.catch(a=>{a.message&&a.message.startsWith("MOVED")&&this.emit("__MOVED",this._self.#i.removeAllPubSubListeners())}),i&&n.push(i),this.#l&&n.push(this.#i.monitor(this.#l,{typeMapping:this._commandOptions?.typeMapping,chainId:s,asap:!0})),n.push(...await this.#A(s,!0)),n.length)return this.#P(),Promise.all(n)},r=new Elr.default(e,this.#o.socket);return this.#_(r),r}#b;#u(){!this.#o.pingInterval||!this.#s.isReady||(clearTimeout(this.#b),this.#b=setTimeout(()=>{this.#s.isReady&&this.sendCommand(["PING"]).then(e=>this.emit("ping-interval",e)).catch(e=>this.emit("error",e)).finally(()=>this.#u())},this.#o.pingInterval))}withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}withAbortSignal(e){return this._commandOptionsProxy("abortSignal",e)}asap(){return this._commandOptionsProxy("asap",!0)}legacy(){return new Tlr.RedisLegacyClient(this)}createPool(e){return wlr.RedisClientPool.create(this._self.#o,e)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self.#o,commandOptions:this._commandOptions,...e})}async connect(){return await this._self.#s.connect(),this}_ejectSocket(){let e=this._self.#s;return this._self.#s=null,e.removeAllListeners(),e}_insertSocket(e){this._self.#s&&this._self._ejectSocket().destroy(),this._self.#s=e,this._self.#_(this._self.#s)}_maintenanceUpdate(e){this._self.#s.setMaintenanceTimeout(e.relaxedSocketTimeout),this._self.#i.setMaintenanceCommandTimeout(e.relaxedCommandTimeout)}_pause(){this._self.#m=!0}_unpause(){this._self.#m=!1,this._self.#N()}_handleSmigrated(e){this._self.emit(IL.SMIGRATED_EVENT,e)}_getQueue(){return this._self.#i}async _executeCommand(e,r,n,s){let i=this._self.#d,a=this._self.#o.commandOptions===n||this._self.#o.commandOptions?.typeMapping===n?.typeMapping,o=()=>this.sendCommand(r.redisArgs,n);if(i&&e.CACHEABLE&&a)return await i.handleCache(this._self,r,o,s,n?.typeMapping);{let c=await o();return s?s(c,r.preserve,n?.typeMapping):c}}async _executeScript(e,r,n,s){let i=r.redisArgs,a;try{a=await this.sendCommand(i,n)}catch(o){if(!o?.message?.startsWith?.("NOSCRIPT"))throw o;i[0]="EVAL",i[1]=e.SCRIPT,a=await this.sendCommand(i,n)}return s?s(a,r.preserve,n?.typeMapping):a}sendCommand(e,r){if(this._self.#s.isOpen){if(!this._self.#s.isReady&&this._self.#o.disableOfflineQueue)return Promise.reject(new j0.ClientOfflineError)}else return Promise.reject(new j0.ClientClosedError);let n={...this._self._commandOptions,...r},s=this._self.#i.addCommand(e,n);return this._self.#C(),s}async SELECT(e){await this.sendCommand(["SELECT",e.toString()]),this._self.#c=e}select=this.SELECT;#x(e){return e===void 0?Promise.resolve():(this.#C(),e)}SUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.CHANNELS,e,r,n))}subscribe=this.SUBSCRIBE;UNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.CHANNELS,e,r,n))}unsubscribe=this.UNSUBSCRIBE;PSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.PATTERNS,e,r,n))}pSubscribe=this.PSUBSCRIBE;PUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.PATTERNS,e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;SSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.SHARDED,e,r,n))}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.SHARDED,e,r,n))}sUnsubscribe=this.SUNSUBSCRIBE;async WATCH(e){let r=await this._self.sendCommand((0,gg.pushVariadicArguments)(["WATCH"],e));return this._self.#p??=this._self.socketEpoch,r}watch=this.WATCH;async UNWATCH(){let e=await this._self.sendCommand(["UNWATCH"]);return this._self.#p=void 0,e}unwatch=this.UNWATCH;getPubSubListeners(e){return this._self.#i.getPubSubListeners(e)}extendPubSubChannelListeners(e,r,n){return this._self.#x(this._self.#i.extendPubSubChannelListeners(e,r,n))}extendPubSubListeners(e,r){return this._self.#x(this._self.#i.extendPubSubListeners(e,r))}#P(){this.#m||this.#s.write(this.#i.commandsToWrite())}#T;#C(){!this.#s.isReady||this.#T||(this.#T=setImmediate(()=>{this.#P(),this.#T=void 0}))}#N(){this.#i.isWaitingToWrite()&&this.#C()}async _executePipeline(e,r){if(!this._self.#s.isOpen)return Promise.reject(new j0.ClientClosedError);let n=Symbol("Pipeline Chain"),s=Promise.all(e.map(({args:a})=>this._self.#i.addCommand(a,{chainId:n,typeMapping:this._commandOptions?.typeMapping})));this._self.#C();let i=await s;return r!==void 0&&(this._self.#c=r),i}async _executeMulti(e,r){let n=this._self.#h;this._self.#h=void 0;let s=this._self.#p;if(this._self.#p=void 0,!this._self.#s.isOpen)throw new j0.ClientClosedError;if(n)throw new j0.WatchError(n);if(s&&s!==this._self.socketEpoch)throw new j0.WatchError("Client reconnected after WATCH");let i=this._commandOptions?.typeMapping,a=Symbol("MULTI Chain"),o=[this._self.#i.addCommand(["MULTI"],{chainId:a})];for(let{args:l}of e)o.push(this._self.#i.addCommand(l,{chainId:a,typeMapping:i}));o.push(this._self.#i.addCommand(["EXEC"],{chainId:a})),this._self.#C();let c=await Promise.all(o),u=c[c.length-1];if(u===null)throw new j0.WatchError;return r!==void 0&&(this._self.#c=r),u}MULTI(){return new this.Multi(this._executeMulti.bind(this),this._executePipeline.bind(this),this._commandOptions?.typeMapping)}multi=this.MULTI;async*scanIterator(e){let r=e?.cursor??"0";do{let n=await this.scan(r,e);r=n.cursor,yield n.keys}while(r!=="0")}async*hScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScan(e,n,r);n=s.cursor,yield s.entries}while(n!=="0")}async*hScanValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*hScanNoValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*sScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.sScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async*zScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.zScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async MONITOR(e){let r=this._self.#i.monitor(e,{typeMapping:this._commandOptions?.typeMapping});this._self.#C(),await r,this._self.#l=e}monitor=this.MONITOR;async reset(){let e=Symbol("Reset Chain"),r=[this._self.#i.reset(e)],n=this._self.#o?.database??0;this._self.#f?.dispose(),this._self.#f=null,r.push(...await this._self.#A(e,!1)),this._self.#C(),await Promise.all(r),this._self.#c=n,this._self.#l=void 0,this._self.#h=void 0,this._self.#p=void 0}resetIfDirty(){let e=!1;if(this._self.#c!==(this._self.#o?.database??0)&&(console.warn("Returning a client with a different selected DB"),e=!0),this._self.#l&&(console.warn("Returning a client with active MONITOR"),e=!0),this._self.#i.isPubSubActive&&(console.warn("Returning a client with active PubSub"),e=!0),(this._self.#h||this._self.#p)&&(console.warn("Returning a client with active WATCH"),e=!0),e)return this.reset()}QUIT(){return this._self.#f?.dispose(),this._self.#f=null,this._self.#s.quit(async()=>{clearTimeout(this._self.#b);let e=this._self.#i.addCommand(["QUIT"]);return this._self.#C(),e})}quit=this.QUIT;disconnect(){return Promise.resolve(this.destroy())}close(){return new Promise(e=>{if(clearTimeout(this._self.#b),this._self.#s.close(),this._self.#d?.onClose(),this._self.#i.isEmpty())return this._self.#s.destroySocket(),e();let r=()=>{this._self.#i.isEmpty()&&(this._self.#s.off("data",r),this._self.#s.destroySocket(),e())};this._self.#s.on("data",r),this._self.#f?.dispose(),this._self.#f=null})}destroy(){clearTimeout(this._self.#b),this._self.#i.flushAll(new j0.DisconnectsClientError),this._self.#s.destroy(),this._self.#d?.onClose(),this._self.#f?.dispose(),this._self.#f=null}ref(){this._self.#s.ref()}unref(){this._self.#s.unref()}};xu=CL;bu.default=CL});var XYe=E(Wl=>{"use strict";var JYe=Wl&&Wl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Nre;Object.defineProperty(Wl,"__esModule",{value:!0});Wl.RESUBSCRIBE_LISTENERS_EVENT=void 0;var Olr=Ol(),Plr=JYe(Ob()),Do=QC(),Rre=JYe(dre()),YYe=Rb(),ao=qC();Wl.RESUBSCRIBE_LISTENERS_EVENT="__resubscribeListeners";var TL=class{static#e=16384;#t;#r;#n;slots=new Array(Nre.#e);masters=new Array;replicas=new Array;nodeByAddress=new Map;pubSubNode;clientSideCache;smigratedSeqIdsSeen=new Set;#a=!1;get isOpen(){return this.#a}#o(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e,r){this.#o(e),this.#t=e,e?.clientSideCache&&(e.clientSideCache instanceof YYe.PooledClientSideCacheProvider?this.clientSideCache=e.clientSideCache:this.clientSideCache=new YYe.BasicPooledClientSideCache(e.clientSideCache)),this.#r=Plr.default.factory(this.#t),this.#n=r}async connect(){if(this.#a)throw new Error("Cluster already open");this.#a=!0;try{await this.#s(),this.#n("connect")}catch(e){throw this.#a=!1,e}}async#s(){let e=Math.floor(Math.random()*this.#t.rootNodes.length);for(let r=e;rthis.#f(d,!0,s,r,n)));for(let d=a;d<=o;d++)this.slots[d]=l}if(this.pubSubNode&&!r.has(this.pubSubNode.address)){let a=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.CHANNELS),o=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.PATTERNS);this.pubSubNode.client.destroy(),(a.size||o.size)&&n.push(this.#v({[Do.PUBSUB_TYPE.CHANNELS]:a,[Do.PUBSUB_TYPE.PATTERNS]:o}))}for(let[a,o]of this.nodeByAddress.entries()){if(r.has(a))continue;o.client&&o.client.destroy();let{pubSub:c}=o;c&&c.client.destroy(),this.nodeByAddress.delete(a)}return await Promise.all(n),this.clientSideCache?.enable(),!0}catch(r){return this.#n("error",r),!1}}#l=async e=>{if((0,ao.dbgMaintenance)("[CSlots]: handle smigrated",JSON.stringify(e,null,2)),this.smigratedSeqIdsSeen.has(e.seqId)){(0,ao.dbgMaintenance)(`[CSlots]: sequence id ${e.seqId} already seen, abort`);return}this.smigratedSeqIdsSeen.add(e.seqId);for(let r of e.entries){let n=`${r.source.host}:${r.source.port}`,s=this.nodeByAddress.get(n);if((0,ao.dbgMaintenance)(`[CSlots]: Looking for sourceAddress=${n}. Available addresses in nodeByAddress: ${Array.from(this.nodeByAddress.keys()).join(", ")}`),!s){(0,ao.dbgMaintenance)(`[CSlots]: address ${n} not in 'nodeByAddress', skipping this entry`);continue}if(s.client===void 0){(0,ao.dbgMaintenance)(`[CSlots]: Node for ${n} does not have a client, skipping this entry`);continue}let i=new Set;try{s.client?._pause(),"pubSub"in s&&s.pubSub?.client._pause();let a;for(let{addr:{host:d,port:f},slots:p}of r.destinations){let m=`${d}:${f}`,h=this.nodeByAddress.get(m);(0,ao.dbgMaintenance)(`[CSlots]: Looking for destAddress=${m}. Found in nodeByAddress: ${h?"YES":"NO"}`);let A;if(h){let y=[...new Set(this.slots)].map(v=>`${v.master.host}:${v.master.port}`);(0,ao.dbgMaintenance)(`[CSlots]: Searching for shard with host=${d}, port=${f}. Available masters in slots: ${y.join(", ")}`);let x=this.slots.find(v=>v.master.host===d&&v.master.port===f);if(!x)throw(0,ao.dbgMaintenance)("Could not find shard"),new Error("Could not find shard");A=x,h.client?._pause(),h.pubSub?.client._pause()}else{let y=[];h=this.#f({host:d,port:f,id:`smigrated-${d}:${f}`},!1,!0,new Set,y),await Promise.all([...y,this.#b(h)]),h.client?._pause(),h.pubSub?.client._pause(),A={master:h}}a=h;let g=new Set;for(let y of p)if(typeof y=="number")this.slots[y]=A,g.add(y),i.add(y);else for(let x=y[0];x<=y[1];x++)this.slots[x]=A,g.add(x),i.add(x);(0,ao.dbgMaintenance)(`[CSlots]: Updated slots to point to destination ${h.address}. Sample slots: ${Array.from(p).slice(0,5).join(", ")}${p.length>5?"...":""}`);let b=s.client._getQueue().extractCommandsForSlots(g);h.client?._getQueue().prependCommandsToWrite(b),(0,ao.dbgMaintenance)(`[CSlots]: Extracted ${b.length} commands for ${g.size} slots, prepended to ${h.address}`),h.client?._unpause(),h.pubSub?.client._unpause()}(0,ao.dbgMaintenance)(`[CSlots]: Total ${i.size} slots moved from ${n}. Sample: ${Array.from(i).slice(0,10).join(", ")}${i.size>10?"...":""}`);let o=5e3,c=[],u={timeoutMs:o,flushOnTimeout:!0};if(c.push(s.client._getQueue().waitForInflightCommandsToComplete(u)),"pubSub"in s&&s.pubSub!==void 0&&c.push(s.pubSub.client._getQueue().waitForInflightCommandsToComplete(u)),this.pubSubNode?.address===n&&c.push(this.pubSubNode.client._getQueue().waitForInflightCommandsToComplete(u)),await Promise.all(c),this.slots.find(d=>d.master.address===n)!==void 0){if("pubSub"in s){let d=s.pubSub?.client._getQueue().removeShardedPubSubListenersForSlots(i);this.#n(Wl.RESUBSCRIBE_LISTENERS_EVENT,d)}s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause()}else{let d=s.client._getQueue().extractAllCommands();if(d.length>0&&a&&(a.client?._getQueue().prependCommandsToWrite(d),a.client?._unpause(),(0,ao.dbgMaintenance)(`[CSlots]: Moved ${d.length} remaining slotless commands to ${a.address}`)),"pubSub"in s){let f=s.pubSub?.client._getQueue().removeAllPubSubListeners();this.#n(Wl.RESUBSCRIBE_LISTENERS_EVENT,f)}if(this.masters=this.masters.filter(f=>f.address!==n),this.replicas=this.replicas.filter(f=>f.address!==n),this.nodeByAddress.delete(n),this.pubSubNode?.address===n){let f=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.CHANNELS),p=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.PATTERNS),m=this.pubSubNode.client;f.size||p.size?await this.#v({[Do.PUBSUB_TYPE.CHANNELS]:f,[Do.PUBSUB_TYPE.PATTERNS]:p}):this.pubSubNode=void 0,m.destroy()}s.client?.destroy(),"pubSub"in s&&s.pubSub?.client.destroy()}}catch(a){(0,ao.dbgMaintenance)(`[CSlots]: Error during SMIGRATED handling for source ${n}: ${a}`),s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause(),this.#n("error",a)}}};async#h(e){let r=this.#d(e);r.socket??={},r.socket.reconnectStrategy=!1,r.RESP=this.#t.RESP,r.commandOptions=void 0,r.maintNotifications="disabled";let n=await this.#r(r).on("error",s=>this.#n("error",s)).connect();try{return await n.clusterSlots()}finally{n.destroy()}}#p(e){switch(typeof this.#t.nodeAddressMap){case"object":return this.#t.nodeAddressMap[e];case"function":return this.#t.nodeAddressMap(e)}}#d(e){if(!this.#t.defaults)return e;let r;return this.#t.defaults.socket?r={...this.#t.defaults.socket,...e?.socket}:r=e?.socket,{...this.#t.defaults,...e,socket:r}}#f(e,r,n,s,i){let a=`${e.host}:${e.port}`,o=this.nodeByAddress.get(a);return o||(o={...e,address:a,readonly:r,client:void 0,connectPromise:void 0},n&&i.push(this.#y(o)),this.nodeByAddress.set(a,o)),s.has(a)||(s.add(a),(r?this.replicas:this.masters).push(o)),o}#m(e,r=e.readonly){let n=this.#p(e.address)??{host:e.host,port:e.port},s=Object.freeze({host:n.host,port:n.port}),i=this.#n,a=this.#r(this.#d({clientSideCache:this.clientSideCache,RESP:this.#t.RESP,socket:n,readonly:r})).on("error",o=>i("node-error",o,s)).on("reconnecting",()=>i("node-reconnecting",s)).once("ready",()=>i("node-ready",s)).once("connect",()=>i("node-connect",s)).once("end",()=>i("node-disconnect",s)).on(ao.SMIGRATED_EVENT,this.#l).on("__MOVED",async o=>{await this.rediscover(a),this.#n(Wl.RESUBSCRIBE_LISTENERS_EVENT,o)});return a}#y(e,r){let n=e.client=this.#m(e,r);return e.connectPromise=n.connect().finally(()=>e.connectPromise=void 0)}nodeClient(e){return e.connectPromise?e.connectPromise:e.client?Promise.resolve(e.client):this.#y(e)}#g;async rediscover(e){return this.#g??=this.#E(e).finally(()=>{this.#g=void 0}),this.#g}async#E(e){if(!await this.#c(e.options))return this.#s()}quit(){return this.#A(e=>e.quit())}disconnect(){return this.#A(e=>e.disconnect())}close(){return this.#A(e=>e.close())}destroy(){this.#a=!1;for(let e of this.#S())e.destroy();this.pubSubNode&&(this.pubSubNode.client.destroy(),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),this.#n("disconnect")}*#S(){for(let e of this.masters)e.client&&(yield e.client),e.pubSub&&(yield e.pubSub.client);for(let e of this.replicas)e.client&&(yield e.client)}async#A(e){this.#a=!1;let r=[];for(let n of this.#S())r.push(e(n));this.pubSubNode&&(r.push(e(this.pubSubNode.client)),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),await Promise.allSettled(r),this.#n("disconnect")}async getClientAndSlotNumber(e,r){if(!e)return{client:await this.nodeClient(this.getRandomNode())};let n=(0,Rre.default)(e);return r?{client:await this.nodeClient(this.getSlotRandomNode(n)),slotNumber:n}:{client:await this.nodeClient(this.slots[n].master),slotNumber:n}}*#I(){if(this.masters.length+this.replicas.length===0)return;let e=Math.floor(Math.random()*(this.masters.length+this.replicas.length));if(e(e&&await Promise.all([i.extendPubSubListeners(Do.PUBSUB_TYPE.CHANNELS,e[Do.PUBSUB_TYPE.CHANNELS]),i.extendPubSubListeners(Do.PUBSUB_TYPE.PATTERNS,e[Do.PUBSUB_TYPE.PATTERNS])]),this.pubSubNode.connectPromise=void 0,i)).catch(i=>{throw this.pubSubNode=void 0,i})},this.pubSubNode.connectPromise}async executeUnsubscribeCommand(e){let r=await this.getPubSubClient();await e(r),r.isPubSubActive||(r.destroy(),this.pubSubNode=void 0)}getShardedPubSubClient(e){let{master:r}=this.slots[(0,Rre.default)(e)];return r.pubSub?r.pubSub.connectPromise??Promise.resolve(r.pubSub.client):this.#b(r)}async#b(e){let r=this.#m(e,!1).on("server-sunsubscribe",async(n,s)=>{try{await this.rediscover(r),await(await this.getShardedPubSubClient(n)).extendPubSubChannelListeners(Do.PUBSUB_TYPE.SHARDED,n,s)}catch(i){this.#n("sharded-shannel-moved-error",i,n,s)}});return e.pubSub={client:r,connectPromise:r.connect().then(n=>(e.pubSub.connectPromise=void 0,n)).catch(n=>{throw e.pubSub=void 0,n})},e.pubSub.connectPromise}async executeShardedUnsubscribeCommand(e,r){let{master:n}=this.slots[(0,Rre.default)(e)];if(!n.pubSub)return;let s=n.pubSub.connectPromise?await n.pubSub.connectPromise:n.pubSub.client;await r(s),s.isPubSubActive||(s.destroy(),n.pubSub=void 0)}};Nre=TL;Wl.default=TL});var ZYe=E(ZC=>{"use strict";var klr=ZC&&ZC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ZC,"__esModule",{value:!0});var Dlr=yu(),Blr=klr(VC()),Bb=Ml(),wL=Pl(),Ore=class t{static#e(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new wL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.addCommand(o,e.IS_READ_ONLY,a,n)}}static#t(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new wL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this._self.addCommand(o,e.IS_READ_ONLY,a,n)}}static#r(e,r,n){let s=(0,Bb.functionArgumentsPrefix)(e,r),i=(0,Bb.getTransformReply)(r,n);return function(...a){let o=new wL.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;c.preserve=o.preserve;let u=o.firstKey;return this._self.addCommand(u,r.IS_READ_ONLY,c,i)}}static#n(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new wL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.#h(o,e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,Bb.attachConfig)({BaseClass:t,commands:Dlr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;#c=!0;constructor(e,r,n,s){this.#a=new Blr.default(s),this.#o=e,this.#s=r,this.#i=n}#l(e,r){this.#i??=e,this.#c&&=r}addCommand(e,r,n,s){return this.#l(e,r),this.#a.addCommand(n,s),this}#h(e,r,n,s,i){return this.#l(e,r),this.#a.addScript(n,s,i),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#i,this.#c,this.#a.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#i,this.#c,this.#a.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};ZC.default=Ore});var rJe=E(Eu=>{"use strict";var Llr=Eu&&Eu.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Mlr=Eu&&Eu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Wlr=Eu&&Eu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Llr(e,t,r);return Mlr(e,t),e},tJe=Eu&&Eu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Eu,"__esModule",{value:!0});var $lr=yu(),Flr=require("node:events"),Ag=Ml(),eJe=Wlr(XYe()),Ulr=tJe(ZYe()),qlr=Ol(),RL=Pl(),jlr=zz(),Hlr=tJe(_L()),Pre=class t extends Flr.EventEmitter{static#e(e,r){let n=(0,Ag.getTransformReply)(e,r);return async function(...s){let i=new RL.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#t(e,r){let n=(0,Ag.getTransformReply)(e,r);return async function(...s){let i=new RL.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._self._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#r(e,r,n){let s=(0,Ag.functionArgumentsPrefix)(e,r),i=(0,Ag.getTransformReply)(r,n);return async function(...a){let o=new RL.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._execute(o.firstKey,r.IS_READ_ONLY,this._self._commandOptions,(c,u)=>c._executeCommand(r,o,u,i))}}static#n(e,r){let n=(0,Ag.scriptArgumentsPrefix)(e),s=(0,Ag.getTransformReply)(e,r);return async function(...i){let a=new RL.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(a.firstKey,e.IS_READ_ONLY,this._commandOptions,(o,c)=>o._executeScript(e,a,c,s))}}static#a=new Hlr.default;static factory(e){let r=t.#a.get(e);return r||(r=(0,Ag.attachConfig)({BaseClass:t,commands:$lr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),r.prototype.Multi=Ulr.default.extend(e),t.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}_options;_slots;_self=this;_commandOptions;get slots(){return this._self._slots.slots}get clientSideCache(){return this._self._slots.clientSideCache}get masters(){return this._self._slots.masters}get replicas(){return this._self._slots.replicas}get nodeByAddress(){return this._self._slots.nodeByAddress}get pubSubNode(){return this._self._slots.pubSubNode}get isOpen(){return this._self._slots.isOpen}constructor(e){super(),this._options=e,this._slots=new eJe.default(e,this.emit.bind(this)),this.on(eJe.RESUBSCRIBE_LISTENERS_EVENT,this.resubscribeAllPubSubListeners.bind(this)),e?.commandOptions&&(this._commandOptions=e.commandOptions)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self._options,commandOptions:this._commandOptions,...e})}async connect(){return await this._self._slots.connect(),this}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}_handleAsk(e){return async(r,n)=>{let s=Symbol("asking chain"),i=n?{...n}:{};return i.chainId=s,(await Promise.all([r.sendCommand([jlr.ASKING_CMD],{chainId:s}),e(r,i)]))[1]}}async _execute(e,r,n,s){let i=this._options.maxCommandRedirections??16,{client:a,slotNumber:o}=await this._slots.getClientAndSlotNumber(e,r),c=0,u=s;for(;;)try{let l=n??{};return l.slotNumber=o,await u(a,l)}catch(l){if(u=s,++c>i||!(l instanceof Error))throw l;if(l.message.startsWith("ASK")){let d=l.message.substring(l.message.lastIndexOf(" ")+1),f=await this._slots.getMasterByAddress(d);if(f||(await this._slots.rediscover(a),f=await this._slots.getMasterByAddress(d)),!f)throw new Error(`Cannot find node ${d}`);a=f,u=this._handleAsk(s);continue}if(l.message.startsWith("MOVED")){await this._slots.rediscover(a);let d=await this._slots.getClientAndSlotNumber(e,r);a=d.client,o=d.slotNumber;continue}throw l}}async sendCommand(e,r,n,s){let i={...this._self._commandOptions,...s};return this._self._execute(e,r,i,(a,o)=>a.sendCommand(n,o))}MULTI(e){return new this.Multi(async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executeMulti(s)},async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executePipeline(s)},e,this._commandOptions?.typeMapping)}multi=this.MULTI;async SUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).SUBSCRIBE(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.UNSUBSCRIBE(e,r,n))}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).PSUBSCRIBE(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.PUNSUBSCRIBE(e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;async SSUBSCRIBE(e,r,n){let s=this._self._options.maxCommandRedirections??16,i=Array.isArray(e)?e[0]:e,a=await this._self._slots.getShardedPubSubClient(i);for(let o=0;;o++)try{return await a.SSUBSCRIBE(e,r,n)}catch(c){if(++o>s||!(c instanceof qlr.ErrorReply))throw c;if(c.message.startsWith("MOVED")){await this._self._slots.rediscover(a),a=await this._self._slots.getShardedPubSubClient(i);continue}throw c}}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(e,r,n){return this._self._slots.executeShardedUnsubscribeCommand(Array.isArray(e)?e[0]:e,s=>s.SUNSUBSCRIBE(e,r,n))}resubscribeAllPubSubListeners(e){if(e.CHANNELS)for(let[r,n]of e.CHANNELS)n.buffers.forEach(s=>{this.subscribe(r,s,!0)}),n.strings.forEach(s=>{this.subscribe(r,s)});if(e.PATTERNS)for(let[r,n]of e.PATTERNS)n.buffers.forEach(s=>{this.pSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.pSubscribe(r,s)});if(e.SHARDED)for(let[r,n]of e.SHARDED)n.buffers.forEach(s=>{this.sSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.sSubscribe(r,s)})}sUnsubscribe=this.SUNSUBSCRIBE;quit(){return this._self._slots.quit()}disconnect(){return this._self._slots.disconnect()}close(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.close()}destroy(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.destroy()}nodeClient(e){return this._self._slots.nodeClient(e)}getRandomNode(){return this._self._slots.getRandomNode()}getSlotRandomNode(e){return this._self._slots.getSlotRandomNode(e)}getMasters(){return this.masters}getSlotMaster(e){return this.slots[e].master}};Eu.default=Pre});var sJe=E(si=>{"use strict";Object.defineProperty(si,"__esModule",{value:!0});si.getMappedNode=si.createScriptCommand=si.createModuleCommand=si.createFunctionCommand=si.createCommand=si.clientSocketToNode=si.createNodeList=si.parseNode=void 0;var NL=Pl(),Lb=Ml();function nJe(t){if(!(t.flags.includes("s_down")||t.flags.includes("disconnected")||t.flags.includes("failover_in_progress")))return{host:t.ip,port:Number(t.port)}}si.parseNode=nJe;function Qlr(t){var e=[];for(let r of t){let n=nJe(r);n!==void 0&&e.push(n)}return e}si.createNodeList=Qlr;function Glr(t){let e=t;return{host:e.host,port:e.port}}si.clientSocketToNode=Glr;function Klr(t,e){let r=(0,Lb.getTransformReply)(t,e);return async function(...n){let s=new NL.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this.commandOptions,r))}}si.createCommand=Klr;function Vlr(t,e,r){let n=(0,Lb.functionArgumentsPrefix)(t,e),s=(0,Lb.getTransformReply)(e,r);return async function(...i){let a=new NL.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(e.IS_READ_ONLY,o=>o._executeCommand(e,a,this._self.commandOptions,s))}}si.createFunctionCommand=Vlr;function zlr(t,e){let r=(0,Lb.getTransformReply)(t,e);return async function(...n){let s=new NL.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this._self.commandOptions,r))}}si.createModuleCommand=zlr;function Ylr(t,e){let r=(0,Lb.scriptArgumentsPrefix)(t),n=(0,Lb.getTransformReply)(t,e);return async function(...s){let i=new NL.BasicCommandParser;return i.push(...r),t.parseCommand(i,...s),this._self._execute(t.IS_READ_ONLY,a=>a._executeScript(t,i,this.commandOptions,n))}}si.createScriptCommand=Ylr;function Jlr(t,e,r){if(r===void 0)return{host:t,port:e};let n=`${t}:${e}`;switch(typeof r){case"object":return r[n]??{host:t,port:e};case"function":return r(n)??{host:t,port:e}}}si.getMappedNode=Jlr});var aJe=E(eT=>{"use strict";var Xlr=eT&&eT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(eT,"__esModule",{value:!0});var Zlr=yu(),iJe=Xlr(VC()),Mb=Ml(),OL=Pl(),kre=class t{static _createCommand(e,r){let n=(0,Mb.getTransformReply)(e,r);return function(...s){let i=new OL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(e.IS_READ_ONLY,a,n)}}static _createModuleCommand(e,r){let n=(0,Mb.getTransformReply)(e,r);return function(...s){let i=new OL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(e.IS_READ_ONLY,a,n)}}static _createFunctionCommand(e,r,n){let s=(0,Mb.functionArgumentsPrefix)(e,r),i=(0,Mb.getTransformReply)(r,n);return function(...a){let o=new OL.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(r.IS_READ_ONLY,c,i)}}static _createScriptCommand(e,r){let n=(0,Mb.getTransformReply)(e,r);return function(...s){let i=new OL.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#a(e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,Mb.attachConfig)({BaseClass:t,commands:Zlr.NON_STICKY_COMMANDS,createCommand:t._createCommand,createModuleCommand:t._createModuleCommand,createFunctionCommand:t._createFunctionCommand,createScriptCommand:t._createScriptCommand,config:e})}#e=new iJe.default;#t;#r=!0;constructor(e,r){this.#e=new iJe.default(r),this.#t=e}#n(e){this.#r&&=e}addCommand(e,r,n){return this.#n(e),this.#e.addCommand(r,n),this}#a(e,r,n,s){return this.#n(e),this.#e.addScript(r,n,s),this}async exec(e=!1){return e?this.execAsPipeline():this.#e.transformReplies(await this.#t._executeMulti(this.#r,this.#e.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#e.queue.length===0?[]:this.#e.transformReplies(await this.#t._executePipeline(this.#r,this.#e.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};eT.default=kre});var uJe=E(Wb=>{"use strict";var cJe=Wb&&Wb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Wb,"__esModule",{value:!0});Wb.PubSubProxy=void 0;var edr=cJe(require("node:events")),H0=QC(),oJe=cJe(Ob()),Dre=class extends edr.default{#e;#t;#r;#n;#a;constructor(e,r){super(),this.#e=e,this.#t=r}#o(){if(this.#r===void 0)throw new Error("pubSubProxy: didn't define node to do pubsub against");return new oJe.default({...this.#e,socket:{...this.#e.socket,host:this.#r.host,port:this.#r.port}})}async#s(e=!1){let r=this.#o().on("error",this.#t),n=r.connect().then(async s=>this.#n?.client!==s?(s.destroy(),this.#n?.connectPromise):(e&&this.#a&&await Promise.all([s.extendPubSubListeners(H0.PUBSUB_TYPE.CHANNELS,this.#a[H0.PUBSUB_TYPE.CHANNELS]),s.extendPubSubListeners(H0.PUBSUB_TYPE.PATTERNS,this.#a[H0.PUBSUB_TYPE.PATTERNS])]),this.#n.client!==s?(s.destroy(),this.#n?.connectPromise):(this.#n.connectPromise=void 0,s))).catch(s=>{throw this.#n=void 0,s});return this.#n={client:r,connectPromise:n},n}#i(){return this.#n?this.#n.connectPromise??this.#n.client:this.#s()}async changeNode(e){this.#r=e,this.#n&&(this.#n.connectPromise===void 0&&(this.#a={[H0.PUBSUB_TYPE.CHANNELS]:this.#n.client.getPubSubListeners(H0.PUBSUB_TYPE.CHANNELS),[H0.PUBSUB_TYPE.PATTERNS]:this.#n.client.getPubSubListeners(H0.PUBSUB_TYPE.PATTERNS)},this.#n.client.destroy()),await this.#s(!0))}#c(e){let r=this.#i();return r instanceof oJe.default?e(r):r.then(n=>{if(n!==void 0)return e(n)}).catch(n=>{throw this.#n?.client.isPubSubActive&&(this.#n.client.destroy(),this.#n=void 0),n})}subscribe(e,r,n){return this.#c(s=>s.SUBSCRIBE(e,r,n))}#l(e){return this.#c(async r=>{let n=await e(r);return r.isPubSubActive||(r.destroy(),this.#n=void 0),n})}async unsubscribe(e,r,n){return this.#l(s=>s.UNSUBSCRIBE(e,r,n))}async pSubscribe(e,r,n){return this.#c(s=>s.PSUBSCRIBE(e,r,n))}async pUnsubscribe(e,r,n){return this.#l(s=>s.PUNSUBSCRIBE(e,r,n))}destroy(){this.#a=void 0,this.#n!==void 0&&(this.#n.connectPromise||this.#n.client.destroy(),this.#n=void 0)}};Wb.PubSubProxy=Dre});var lJe=E(Bre=>{"use strict";Object.defineProperty(Bre,"__esModule",{value:!0});var tdr=Ce();Bre.default={parseCommand(t,e){t.push("SENTINEL","MASTER",e)},transformReply:{2:tdr.transformTuplesReply,3:void 0}}});var dJe=E(Lre=>{"use strict";Object.defineProperty(Lre,"__esModule",{value:!0});Lre.default={parseCommand(t,e,r,n,s){t.push("SENTINEL","MONITOR",e,r,n,s)},transformReply:void 0}});var fJe=E(Mre=>{"use strict";Object.defineProperty(Mre,"__esModule",{value:!0});var rdr=Ce();Mre.default={parseCommand(t,e){t.push("SENTINEL","REPLICAS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,rdr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var pJe=E(Wre=>{"use strict";Object.defineProperty(Wre,"__esModule",{value:!0});var ndr=Ce();Wre.default={parseCommand(t,e){t.push("SENTINEL","SENTINELS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,ndr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var mJe=E($re=>{"use strict";Object.defineProperty($re,"__esModule",{value:!0});$re.default={parseCommand(t,e,r){t.push("SENTINEL","SET",e);for(let n of r)t.push(n.option,n.value)},transformReply:void 0}});var bJe=E(tT=>{"use strict";var rT=tT&&tT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(tT,"__esModule",{value:!0});var hJe=rT(lJe()),gJe=rT(dJe()),AJe=rT(fJe()),yJe=rT(pJe()),xJe=rT(mJe());tT.default={SENTINEL_SENTINELS:yJe.default,sentinelSentinels:yJe.default,SENTINEL_MASTER:hJe.default,sentinelMaster:hJe.default,SENTINEL_REPLICAS:AJe.default,sentinelReplicas:AJe.default,SENTINEL_MONITOR:gJe.default,sentinelMonitor:gJe.default,SENTINEL_SET:xJe.default,sentinelSet:xJe.default}});var EJe=E(nT=>{"use strict";var sdr=nT&&nT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(nT,"__esModule",{value:!0});var idr=sdr(bJe());nT.default={sentinel:idr.default}});var SJe=E(PL=>{"use strict";Object.defineProperty(PL,"__esModule",{value:!0});PL.WaitQueue=void 0;var _Je=pL(),Fre=class{#e=new _Je.SinglyLinkedList;#t=new _Je.SinglyLinkedList;push(e){let r=this.#t.shift();if(r!==void 0){r(e);return}this.#e.push(e)}shift(){return this.#e.shift()}wait(){return new Promise(e=>this.#t.push(e))}};PL.WaitQueue=Fre});var wJe=E(Cf=>{"use strict";var Hre=Cf&&Cf.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Cf,"__esModule",{value:!0});Cf.RedisSentinelFactory=Cf.RedisSentinelClient=void 0;var Qre=require("node:events"),$b=Hre(Ob()),IJe=Ml(),CJe=yu(),Fn=sJe(),TJe=Hre(aJe()),adr=uJe(),odr=require("node:timers/promises"),kL=Hre(EJe()),cdr=SJe(),vJe=Rb(),sT=class t{#e;#t;_self;get isOpen(){return this._self.#t.isOpen}get isReady(){return this._self.#t.isReady}get commandOptions(){return this._self.#r}#r;constructor(e,r,n){this._self=this,this.#t=e,this.#e=r,this.#r=n}static factory(e){let r=(0,IJe.attachConfig)({BaseClass:t,commands:CJe.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=TJe.default.extend(e),(n,s,i)=>Object.create(new r(n,s,i))}static create(e,r,n,s){return t.factory(e)(r,n,s)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._self.#r??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async _execute(e,r){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return await this._self.#t.execute(r,this._self.#e)}async sendCommand(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;WATCH(e){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,r=>r.watch(e))}watch=this.WATCH;UNWATCH(){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,e=>e.unwatch())}unwatch=this.UNWATCH;release(){if(this._self.#e===void 0)throw new Error("RedisSentinelClient lease already released");let e=this._self.#t.releaseClientLease(this._self.#e);return this._self.#e=void 0,e}};Cf.RedisSentinelClient=sT;var Ure=class t extends Qre.EventEmitter{_self;#e;#t;get isOpen(){return this._self.#e.isOpen}get isReady(){return this._self.#e.isReady}get commandOptions(){return this._self.#r}#r;#n=()=>{};#a;#o=0;#s;get clientSideCache(){return this._self.#e.clientSideCache}constructor(e){super(),this._self=this,this.#t=e,e.commandOptions&&(this.#r=e.commandOptions),this.#e=new qre(e),this.#e.on("error",r=>this.emit("error",r)),this.#e.on("topology-change",r=>{this.emit("topology-change",r)||this._self.#n(`RedisSentinel: re-emit for topology-change for ${r.type} event returned false`)})}static factory(e){let r=(0,IJe.attachConfig)({BaseClass:t,commands:CJe.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=TJe.default.extend(e),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._self.#r={...this._self.#r||{},[e]:r},n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async connect(){return await this._self.#e.connect(),this._self.#t.reserveClient&&(this._self.#a=await this._self.#e.getClientLease()),this}async _execute(e,r){let n;(!e||!this._self.#e.useReplicas)&&(this._self.#a?n=this._self.#a:(this._self.#s??=await this._self.#e.getClientLease(),n=this._self.#s,this._self.#o++));try{return await this._self.#e.execute(r,n)}finally{if(n!==void 0&&n===this._self.#s&&--this._self.#o===0){let s=this._self.#e.releaseClientLease(n);this._self.#s=void 0,s&&await s}}}async use(e){let r=await this._self.#e.getClientLease();try{return await e(sT.create(this._self.#t,this._self.#e,r,this._self.#r))}finally{let n=this._self.#e.releaseClientLease(r);n&&await n}}async sendCommand(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;async close(){return this._self.#e.close()}destroy(){return this._self.#e.destroy()}async SUBSCRIBE(e,r,n){return this._self.#e.subscribe(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self.#e.unsubscribe(e,r,n)}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return this._self.#e.pSubscribe(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self.#e.pUnsubscribe(e,r,n)}pUnsubscribe=this.PUNSUBSCRIBE;async acquire(){let e=await this._self.#e.getClientLease();return sT.create(this._self.#t,this._self.#e,e,this._self.#r)}getSentinelNode(){return this._self.#e.getSentinelNode()}getMasterNode(){return this._self.#e.getMasterNode()}getReplicaNodes(){return this._self.#e.getReplicaNodes()}setTracer(e){e?this._self.#n=r=>{e.push(r)}:this._self.#n=()=>{},this._self.#e.setTracer(e)}};Cf.default=Ure;var qre=class extends Qre.EventEmitter{#e=!1;get isOpen(){return this.#e}#t=!1;get isReady(){return this.#t}#r;#n;#a;#o;#s;#i;#c;#l=!1;#h=0;#p;#d;#f=[];#m;#y;#g=[];#E=0;#S;get useReplicas(){return this.#S>0}#A;#I;#_;#v;#b=!1;#u=()=>{};#x;get clientSideCache(){return this.#x}#P(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e){if(super(),this.#P(e),this.#r=e.name,this.#c=e.RESP,this.#p=Array.from(e.sentinelRootNodes),this.#I=e.maxCommandRediscovers??16,this.#y=e.masterPoolSize??1,this.#S=e.replicaPoolSize??0,this.#o=e.nodeAddressMap,this.#s=e.scanInterval??0,this.#i=e.passthroughClientErrorEvents??!1,this.#n=e.nodeClientOptions?{...e.nodeClientOptions}:{},this.#n.url!==void 0)throw new Error("invalid nodeClientOptions for Sentinel");if(e.clientSideCache)if(e.clientSideCache instanceof vJe.PooledClientSideCacheProvider)this.#x=this.#n.clientSideCache=e.clientSideCache;else{let r=e.clientSideCache;this.#x=this.#n.clientSideCache=new vJe.BasicPooledClientSideCache(r)}if(this.#a=e.sentinelClientOptions?Object.assign({},e.sentinelClientOptions):{},this.#a.modules=kL.default,this.#a.url!==void 0)throw new Error("invalid sentinelClientOptions for Sentinel");this.#m=new cdr.WaitQueue;for(let r=0;rthis.emit("error",r))}#T(e,r,n){let s=(0,Fn.getMappedNode)(e.host,e.port,this.#o);return $b.default.create({RESP:this.#c,...r,socket:{...r.socket,host:s.host,port:s.port,...n!==void 0&&{reconnectStrategy:n}}})}getClientLease(){let e=this.#m.shift();return e!==void 0?Promise.resolve({id:e}):this.#m.wait().then(r=>({id:r}))}releaseClientLease(e){let r=this.#f[e.id];if(r!==void 0){let n=r.resetIfDirty();if(n)return n.then(()=>this.#m.push(e.id))}this.#m.push(e.id)}async connect(){if(this.#e)throw new Error("already attempting to open");try{this.#e=!0,this.#A=this.#C(),await this.#A,this.#t=!0}finally{this.#A=void 0,this.#s>0&&(this.#v=setInterval(this.#O.bind(this),this.#s))}}async#C(){let e=0;for(;;){if(this.#u("starting connect loop"),e+=1,this.#b){this.#u("in #connect and want to destroy");return}try{if(this.#l=!1,await this.transform(this.analyze(await this.observe())),this.#l){this.#u("#connect: anotherReset is true, so continuing");continue}this.#u("#connect: returning");return}catch(r){if(this.#u(`#connect: exception ${r.message}`),!this.#t&&e>this.#I)throw r;r.message!=="no valid master node"&&console.log(r),await(0,odr.setTimeout)(1e3)}finally{this.#u("finished connect")}}}async execute(e,r){let n=0;for(;;){this.#A!==void 0&&await this.#A;let s=this.#R(r);if(!s.isReady){await this.#O();continue}let i=s.options?.socket;this.#u("attemping to send command to "+i?.host+":"+i?.port);try{return await e(s)}catch(a){if(++n>this.#I||!(a instanceof Error))throw a;if(r!==void 0&&(a.message.startsWith("READONLY")||!s.isReady)){await this.#O();continue}throw a}}}async#N(e){return await e.pSubscribe(["switch-master","[-+]sdown","+slave","+sentinel","[-+]odown","+slave-reconf-done"],(r,n)=>{this.#M(n,r)},!0),e}async#M(e,r){this.#u("pubsub control channel message on "+e),this.#O()}#R(e){if(e!==void 0)return this.#f[e.id];if(this.#E>=this.#g.length&&(this.#E=0),this.#g.length==0)throw new Error("no replicas available for read");return this.#g[this.#E++]}async#O(){if(!(this.#t==!1||this.#b==!0)){if(this.#A!==void 0)return this.#l=!0,await this.#A;try{return this.#A=this.#C(),await this.#A}finally{this.#u("finished reconfgure"),this.#A=void 0}}}#k(e){let r=this.#p.findIndex(n=>n.host===e.host&&n.port===e.port);r!==-1&&this.#p.splice(r,1),this.#O()}async close(){this.#b=!0,this.#A!=null&&await this.#A,this.#t=!1,this.#x?.onPoolClose(),this.#v&&(clearInterval(this.#v),this.#v=void 0);let e=[];this.#d!==void 0&&(this.#d.isOpen&&e.push(this.#d.close()),this.#d=void 0);for(let r of this.#f)r.isOpen&&e.push(r.close());this.#f=[];for(let r of this.#g)r.isOpen&&e.push(r.close());this.#g=[],await Promise.all(e),this.#_.destroy(),this.#e=!1}async destroy(){this.#b=!0,this.#A!=null&&await this.#A,this.#t=!1,this.#x?.onPoolClose(),this.#v&&(clearInterval(this.#v),this.#v=void 0),this.#d!==void 0&&(this.#d.isOpen&&this.#d.destroy(),this.#d=void 0);for(let e of this.#f)e.isOpen&&e.destroy();this.#f=[];for(let e of this.#g)e.isOpen&&e.destroy();this.#g=[],this.#_.destroy(),this.#e=!1,this.#b=!1}async subscribe(e,r,n){return this.#_.subscribe(e,r,n)}async unsubscribe(e,r,n){return this.#_.unsubscribe(e,r,n)}async pSubscribe(e,r,n){return this.#_.pSubscribe(e,r,n)}async pUnsubscribe(e,r,n){return this.#_.pUnsubscribe(e,r,n)}async observe(){for(let e of this.#p){let r;try{this.#u(`observe: trying to connect to sentinel: ${e.host}:${e.port}`),r=this.#T(e,this.#a,!1),r.on("error",o=>this.emit("error",`obseve client error: ${o}`)),await r.connect(),this.#u("observe: connected to sentinel");let[n,s,i]=await Promise.all([r.sentinel.sentinelSentinels(this.#r),r.sentinel.sentinelMaster(this.#r),r.sentinel.sentinelReplicas(this.#r)]);return this.#u("observe: got all sentinel data"),{sentinelConnected:e,sentinelData:n,masterData:s,replicaData:i,currentMaster:this.getMasterNode(),currentReplicas:this.getReplicaNodes(),currentSentinel:this.getSentinelNode(),replicaPoolSize:this.#S,useReplicas:this.useReplicas}}catch(n){this.#u(`observe: error ${n}`),this.emit("error",n)}finally{r!==void 0&&r.isOpen&&(this.#u("observe: destroying sentinel client"),r.destroy())}}throw this.#u("observe: none of the sentinels are available"),new Error("None of the sentinels are available")}analyze(e){let r=(0,Fn.parseNode)(e.masterData);if(r===void 0)throw this.#u(`analyze: no valid master node because ${e.masterData.flags}`),new Error("no valid master node");r.host===e.currentMaster?.host&&r.port===e.currentMaster?.port?(this.#u(`analyze: master node hasn't changed from ${e.currentMaster?.host}:${e.currentMaster?.port}`),r=void 0):this.#u(`analyze: master node has changed to ${r.host}:${r.port} from ${e.currentMaster?.host}:${e.currentMaster?.port}`);let n=e.sentinelConnected;n.host===e.currentSentinel?.host&&n.port===e.currentSentinel.port?(this.#u("analyze: sentinel node hasn't changed"),n=void 0):this.#u(`analyze: sentinel node has changed to ${n.host}:${n.port}`);let s=[],i=new Map,a=new Set,o=new Set;if(e.useReplicas){let u=(0,Fn.createNodeList)(e.replicaData);for(let l of u)a.add(JSON.stringify(l));for(let[l,d]of e.currentReplicas)a.has(JSON.stringify(l))?(o.add(JSON.stringify(l)),d!=e.replicaPoolSize&&(i.set(l,e.replicaPoolSize-d),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))):(s.push(l),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToClose`));for(let l of u)o.has(JSON.stringify(l))||(i.set(l,e.replicaPoolSize),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))}return{sentinelList:[e.sentinelConnected].concat((0,Fn.createNodeList)(e.sentinelData)),epoch:Number(e.masterData["config-epoch"]),sentinelToOpen:n,masterToOpen:r,replicasToClose:s,replicasToOpen:i}}async transform(e){this.#u("transform: enter");let r=[];if(e.sentinelToOpen){this.#u("transform: opening a new sentinel"),this.#d!==void 0&&this.#d.isOpen?(this.#u("transform: destroying old sentinel as open"),this.#d.destroy(),this.#d=void 0):this.#u("transform: not destroying old sentinel as not open"),this.#u(`transform: creating new sentinel to ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let a=e.sentinelToOpen,o=this.#T(e.sentinelToOpen,this.#a,!1);o.on("error",l=>{this.#i&&this.emit("error",new Error(`Sentinel Client (${a.host}:${a.port}): ${l.message}`,{cause:l}));let d={type:"SENTINEL",node:(0,Fn.clientSocketToNode)(o.options.socket),error:l};this.emit("client-error",d),this.#k(a)}).on("end",()=>this.#k(a)),this.#d=o,this.#u("transform: adding sentinel client connect() to promise list");let c=this.#d.connect().then(l=>this.#N(l));r.push(c),this.#u(`created sentinel client to ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let u={type:"SENTINEL_CHANGE",node:e.sentinelToOpen};this.#u("transform: emiting topology-change event for sentinel_change"),this.emit("topology-change",u)||this.#u("transform: emit for topology-change for sentinel_change returned false")}if(e.masterToOpen){this.#u("transform: opening a new master");let a=[],o=[];this.#u("transform: destroying old masters if open");for(let u of this.#f)o.push(u.isWatching||u.isDirtyWatch),u.isOpen&&u.destroy();this.#f=[],this.#u("transform: creating all master clients and adding connect promises");for(let u=0;u{this.#i&&this.emit("error",new Error(`Master Client (${l.host}:${l.port}): ${f.message}`,{cause:f}));let p={type:"MASTER",node:(0,Fn.clientSocketToNode)(d.options.socket),error:f};this.emit("client-error",p)}),o[u]&&d.setDirtyWatch("sentinel config changed in middle of a WATCH Transaction"),this.#f.push(d),a.push(d.connect()),this.#u(`created master client to ${e.masterToOpen.host}:${e.masterToOpen.port}`)}this.#u("transform: adding promise to change #pubSubProxy node"),a.push(this.#_.changeNode(e.masterToOpen)),r.push(...a);let c={type:"MASTER_CHANGE",node:e.masterToOpen};this.#u("transform: emiting topology-change event for master_change"),this.emit("topology-change",c)||this.#u("transform: emit for topology-change for master_change returned false"),this.#h++}let n=new Set;for(let a of e.replicasToClose){let o=JSON.stringify(a);n.add(o)}let s=[],i=new Set;for(let a of this.#g){let o=(0,Fn.clientSocketToNode)(a.options.socket),c=JSON.stringify(o);if(n.has(c)||!a.isOpen){if(a.isOpen){let u=a.options?.socket;this.#u(`destroying replica client to ${u?.host}:${u?.port}`),a.destroy()}if(!i.has(c)){let u={type:"REPLICA_REMOVE",node:o};this.emit("topology-change",u),i.add(c)}}else s.push(a)}if(this.#g=s,e.replicasToOpen.size!=0)for(let[a,o]of e.replicasToOpen){for(let u=0;u{this.#i&&this.emit("error",new Error(`Replica Client (${a.host}:${a.port}): ${d.message}`,{cause:d}));let f={type:"REPLICA",node:(0,Fn.clientSocketToNode)(l.options.socket),error:d};this.emit("client-error",f)}),this.#g.push(l),r.push(l.connect()),this.#u(`created replica client to ${a.host}:${a.port}`)}let c={type:"REPLICA_ADD",node:a};this.emit("topology-change",c)}if(e.sentinelList.length!=this.#p.length){this.#p=e.sentinelList;let a={type:"SENTINE_LIST_CHANGE",size:e.sentinelList.length};this.emit("topology-change",a)}await Promise.all(r),this.#u("transform: exit")}getMasterNode(){if(this.#f.length!=0){for(let e of this.#f)if(e.isReady)return(0,Fn.clientSocketToNode)(e.options.socket)}}getSentinelNode(){if(this.#d!==void 0)return(0,Fn.clientSocketToNode)(this.#d.options.socket)}getReplicaNodes(){let e=new Map,r=new Map;for(let n of this.#g){let s=(0,Fn.clientSocketToNode)(n.options.socket),i=JSON.stringify(s);n.isReady?r.set(i,(r.get(i)??0)+1):r.has(i)||r.set(i,0)}for(let[n,s]of r)e.set(JSON.parse(n),s);return e}setTracer(e){e?this.#u=r=>{e.push(r)}:this.#u=()=>{}}},jre=class extends Qre.EventEmitter{options;#e;#t=-1;constructor(e){super(),this.options=e,this.#e=e.sentinelRootNodes}async updateSentinelRootNodes(){for(let e of this.#e){let r=$b.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:e.host,port:e.port,reconnectStrategy:!1},modules:kL.default}).on("error",n=>this.emit(`updateSentinelRootNodes: ${n}`));try{await r.connect()}catch{r.isOpen&&r.destroy();continue}try{let n=await r.sentinel.sentinelSentinels(this.options.name);this.#e=[e].concat((0,Fn.createNodeList)(n));return}finally{r.destroy()}}throw new Error("Couldn't connect to any sentinel node")}async getMasterNode(){let e=!1;for(let r of this.#e){let n=$b.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:kL.default}).on("error",s=>this.emit(`getMasterNode: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelMaster(this.options.name),i=(0,Fn.parseNode)(s);if(i===void 0)continue;return i}finally{n.destroy()}}throw e?new Error("Master Node Not Enumerated"):new Error("couldn't connect to any sentinels")}async getMasterClient(){let e=await this.getMasterNode(),r=(0,Fn.getMappedNode)(e.host,e.port,this.options.nodeAddressMap);return $b.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:r.host,port:r.port}})}async getReplicaNodes(){let e=!1;for(let r of this.#e){let n=$b.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:kL.default}).on("error",s=>this.emit(`getReplicaNodes: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelReplicas(this.options.name),i=(0,Fn.createNodeList)(s);if(i.length==0)continue;return i}finally{n.destroy()}}throw e?new Error("No Replicas Nodes Enumerated"):new Error("couldn't connect to any sentinels")}async getReplicaClient(){let e=await this.getReplicaNodes();if(e.length==0)throw new Error("no available replicas");this.#t++,this.#t>=e.length&&(this.#t=0);let r=e[this.#t],n=(0,Fn.getMappedNode)(r.host,r.port,this.options.nodeAddressMap);return $b.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:n.host,port:n.port}})}};Cf.RedisSentinelFactory=jre});var aT=E(Gt=>{"use strict";var udr=Gt&&Gt.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),ldr=Gt&&Gt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&udr(e,t,r)},Gre=Gt&&Gt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Gt,"__esModule",{value:!0});Gt.BasicPooledClientSideCache=Gt.BasicClientSideCache=Gt.REDIS_FLUSH_MODES=Gt.COMMAND_LIST_FILTER_BY=Gt.CLUSTER_SLOT_STATES=Gt.FAILOVER_MODES=Gt.CLIENT_KILL_FILTERS=Gt.GEO_REPLY_WITH=Gt.createSentinel=Gt.createCluster=Gt.createClientPool=Gt.createClient=Gt.digest=Gt.defineScript=Gt.VerbatimString=Gt.RESP_TYPES=void 0;var ddr=eL();Object.defineProperty(Gt,"RESP_TYPES",{enumerable:!0,get:function(){return ddr.RESP_TYPES}});var fdr=fz();Object.defineProperty(Gt,"VerbatimString",{enumerable:!0,get:function(){return fdr.VerbatimString}});var pdr=rWe();Object.defineProperty(Gt,"defineScript",{enumerable:!0,get:function(){return pdr.defineScript}});var mdr=nWe();Object.defineProperty(Gt,"digest",{enumerable:!0,get:function(){return mdr.digest}});ldr(Ol(),Gt);var hdr=Gre(Ob());Gt.createClient=hdr.default.create;var gdr=wre();Gt.createClientPool=gdr.RedisClientPool.create;var Adr=Gre(rJe());Gt.createCluster=Adr.default.create;var ydr=Gre(wJe());Gt.createSentinel=ydr.default.create;var xdr=XI();Object.defineProperty(Gt,"GEO_REPLY_WITH",{enumerable:!0,get:function(){return xdr.GEO_REPLY_WITH}});var iT=yu();Object.defineProperty(Gt,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return iT.CLIENT_KILL_FILTERS}});Object.defineProperty(Gt,"FAILOVER_MODES",{enumerable:!0,get:function(){return iT.FAILOVER_MODES}});Object.defineProperty(Gt,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return iT.CLUSTER_SLOT_STATES}});Object.defineProperty(Gt,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return iT.COMMAND_LIST_FILTER_BY}});Object.defineProperty(Gt,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return iT.REDIS_FLUSH_MODES}});var RJe=Rb();Object.defineProperty(Gt,"BasicClientSideCache",{enumerable:!0,get:function(){return RJe.BasicClientSideCache}});Object.defineProperty(Gt,"BasicPooledClientSideCache",{enumerable:!0,get:function(){return RJe.BasicPooledClientSideCache}})});var NJe=E(Kre=>{"use strict";Object.defineProperty(Kre,"__esModule",{value:!0});var bdr=Ce();Kre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.ADD"),t.pushKey(e),t.push(r)},transformReply:bdr.transformBooleanReply}});var OJe=E(Vre=>{"use strict";Object.defineProperty(Vre,"__esModule",{value:!0});Vre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.CARD"),t.pushKey(e)},transformReply:void 0}});var PJe=E(zre=>{"use strict";Object.defineProperty(zre,"__esModule",{value:!0});var Edr=Ce();zre.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:Edr.transformBooleanReply}});var Yre=E(DL=>{"use strict";Object.defineProperty(DL,"__esModule",{value:!0});DL.transformInfoV2Reply=void 0;var _dr=aT();function Sdr(t,e){switch(e?e[_dr.RESP_TYPES.MAP]:void 0){case Array:return t;case Map:{let n=new Map;for(let s=0;s{"use strict";Object.defineProperty(Jre,"__esModule",{value:!0});var vdr=Yre();Jre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,vdr.transformInfoV2Reply)(t,r),3:void 0}}});var DJe=E(Xre=>{"use strict";Object.defineProperty(Xre,"__esModule",{value:!0});var Idr=Ce();Xre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.INSERT"),t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.ERROR!==void 0&&t.push("ERROR",n.ERROR.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString()),n?.NOCREATE&&t.push("NOCREATE"),n?.NONSCALING&&t.push("NONSCALING"),t.push("ITEMS"),t.pushVariadic(r)},transformReply:Idr.transformBooleanArrayReply}});var BJe=E(Zre=>{"use strict";Object.defineProperty(Zre,"__esModule",{value:!0});Zre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var LJe=E(ene=>{"use strict";Object.defineProperty(ene,"__esModule",{value:!0});var Cdr=Ce();ene.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.MADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:Cdr.transformBooleanArrayReply}});var MJe=E(tne=>{"use strict";Object.defineProperty(tne,"__esModule",{value:!0});var Tdr=Ce();tne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.MEXISTS"),t.pushKey(e),t.pushVariadic(r)},transformReply:Tdr.transformBooleanArrayReply}});var WJe=E(rne=>{"use strict";Object.defineProperty(rne,"__esModule",{value:!0});rne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("BF.RESERVE"),t.pushKey(e),t.push(r.toString(),n.toString()),s?.EXPANSION&&t.push("EXPANSION",s.EXPANSION.toString()),s?.NONSCALING&&t.push("NONSCALING")},transformReply:void 0}});var $Je=E(nne=>{"use strict";Object.defineProperty(nne,"__esModule",{value:!0});nne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var Fb=E($l=>{"use strict";var wdr=$l&&$l.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Rdr=$l&&$l.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&wdr(e,t,r)},Fl=$l&&$l.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($l,"__esModule",{value:!0});var FJe=Fl(NJe()),UJe=Fl(OJe()),qJe=Fl(PJe()),jJe=Fl(kJe()),HJe=Fl(DJe()),QJe=Fl(BJe()),GJe=Fl(LJe()),KJe=Fl(MJe()),VJe=Fl(WJe()),zJe=Fl($Je());Rdr(Yre(),$l);$l.default={ADD:FJe.default,add:FJe.default,CARD:UJe.default,card:UJe.default,EXISTS:qJe.default,exists:qJe.default,INFO:jJe.default,info:jJe.default,INSERT:HJe.default,insert:HJe.default,LOADCHUNK:QJe.default,loadChunk:QJe.default,MADD:GJe.default,mAdd:GJe.default,MEXISTS:KJe.default,mExists:KJe.default,RESERVE:VJe.default,reserve:VJe.default,SCANDUMP:zJe.default,scanDump:zJe.default}});var JJe=E(sne=>{"use strict";Object.defineProperty(sne,"__esModule",{value:!0});sne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)YJe(t,n);else YJe(t,r)},transformReply:void 0};function YJe(t,{item:e,incrementBy:r}){t.push(e,r.toString())}});var XJe=E(ine=>{"use strict";Object.defineProperty(ine,"__esModule",{value:!0});var Ndr=Fb();ine.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CMS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Ndr.transformInfoV2Reply)(t,r),3:void 0}}});var ZJe=E(ane=>{"use strict";Object.defineProperty(ane,"__esModule",{value:!0});ane.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYDIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var eXe=E(one=>{"use strict";Object.defineProperty(one,"__esModule",{value:!0});one.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYPROB"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var tXe=E(cne=>{"use strict";Object.defineProperty(cne,"__esModule",{value:!0});cne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.MERGE"),t.pushKey(e),t.push(r.length.toString()),Odr(r))t.pushVariadic(r);else{for(let n=0;n{"use strict";Object.defineProperty(une,"__esModule",{value:!0});une.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CMS.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var uXe=E(oT=>{"use strict";var Ub=oT&&oT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(oT,"__esModule",{value:!0});var nXe=Ub(JJe()),sXe=Ub(XJe()),iXe=Ub(ZJe()),aXe=Ub(eXe()),oXe=Ub(tXe()),cXe=Ub(rXe());oT.default={INCRBY:nXe.default,incrBy:nXe.default,INFO:sXe.default,info:sXe.default,INITBYDIM:iXe.default,initByDim:iXe.default,INITBYPROB:aXe.default,initByProb:aXe.default,MERGE:oXe.default,merge:oXe.default,QUERY:cXe.default,query:cXe.default}});var lXe=E(lne=>{"use strict";Object.defineProperty(lne,"__esModule",{value:!0});var Pdr=Ce();lne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADD"),t.pushKey(e),t.push(r)},transformReply:Pdr.transformBooleanReply}});var dXe=E(dne=>{"use strict";Object.defineProperty(dne,"__esModule",{value:!0});var kdr=Ce();dne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADDNX"),t.pushKey(e),t.push(r)},transformReply:kdr.transformBooleanReply}});var fXe=E(fne=>{"use strict";Object.defineProperty(fne,"__esModule",{value:!0});fne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.COUNT"),t.pushKey(e),t.push(r)},transformReply:void 0}});var pXe=E(pne=>{"use strict";Object.defineProperty(pne,"__esModule",{value:!0});var Ddr=Ce();pne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.DEL"),t.pushKey(e),t.push(r)},transformReply:Ddr.transformBooleanReply}});var mXe=E(mne=>{"use strict";Object.defineProperty(mne,"__esModule",{value:!0});var Bdr=Ce();mne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:Bdr.transformBooleanReply}});var hXe=E(hne=>{"use strict";Object.defineProperty(hne,"__esModule",{value:!0});var Ldr=Fb();hne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Ldr.transformInfoV2Reply)(t,r),3:void 0}}});var gne=E(cT=>{"use strict";Object.defineProperty(cT,"__esModule",{value:!0});cT.parseCfInsertArguments=void 0;var Mdr=Ce();function gXe(t,e,r,n){t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.NOCREATE&&t.push("NOCREATE"),t.push("ITEMS"),t.pushVariadic(r)}cT.parseCfInsertArguments=gXe;cT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("CF.INSERT"),gXe(...t)},transformReply:Mdr.transformBooleanArrayReply}});var AXe=E(Tf=>{"use strict";var Wdr=Tf&&Tf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),$dr=Tf&&Tf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Fdr=Tf&&Tf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Wdr(e,t,r);return $dr(e,t),e};Object.defineProperty(Tf,"__esModule",{value:!0});var Ane=Fdr(gne());Tf.default={IS_READ_ONLY:Ane.default.IS_READ_ONLY,parseCommand(...t){t[0].push("CF.INSERTNX"),(0,Ane.parseCfInsertArguments)(...t)},transformReply:Ane.default.transformReply}});var yXe=E(yne=>{"use strict";Object.defineProperty(yne,"__esModule",{value:!0});yne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var xXe=E(xne=>{"use strict";Object.defineProperty(xne,"__esModule",{value:!0});xne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.RESERVE"),t.pushKey(e),t.push(r.toString()),n?.BUCKETSIZE!==void 0&&t.push("BUCKETSIZE",n.BUCKETSIZE.toString()),n?.MAXITERATIONS!==void 0&&t.push("MAXITERATIONS",n.MAXITERATIONS.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString())},transformReply:void 0}});var bXe=E(bne=>{"use strict";Object.defineProperty(bne,"__esModule",{value:!0});bne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var PXe=E(uT=>{"use strict";var _u=uT&&uT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(uT,"__esModule",{value:!0});var EXe=_u(lXe()),_Xe=_u(dXe()),SXe=_u(fXe()),vXe=_u(pXe()),IXe=_u(mXe()),CXe=_u(hXe()),TXe=_u(gne()),wXe=_u(AXe()),RXe=_u(yXe()),NXe=_u(xXe()),OXe=_u(bXe());uT.default={ADD:EXe.default,add:EXe.default,ADDNX:_Xe.default,addNX:_Xe.default,COUNT:SXe.default,count:SXe.default,DEL:vXe.default,del:vXe.default,EXISTS:IXe.default,exists:IXe.default,INFO:CXe.default,info:CXe.default,INSERT:TXe.default,insert:TXe.default,INSERTNX:wXe.default,insertNX:wXe.default,LOADCHUNK:RXe.default,loadChunk:RXe.default,RESERVE:NXe.default,reserve:NXe.default,SCANDUMP:OXe.default,scanDump:OXe.default}});var kXe=E(Ene=>{"use strict";Object.defineProperty(Ene,"__esModule",{value:!0});Ene.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.ADD"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:void 0}});var _ne=E(lT=>{"use strict";Object.defineProperty(lT,"__esModule",{value:!0});lT.transformByRankArguments=void 0;var Udr=Ce();function DXe(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}lT.transformByRankArguments=DXe;lT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.BYRANK"),DXe(...t)},transformReply:Udr.transformDoubleArrayReply}});var BXe=E(wf=>{"use strict";var qdr=wf&&wf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),jdr=wf&&wf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Hdr=wf&&wf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&qdr(e,t,r);return jdr(e,t),e};Object.defineProperty(wf,"__esModule",{value:!0});var Sne=Hdr(_ne());wf.default={IS_READ_ONLY:Sne.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.BYREVRANK"),(0,Sne.transformByRankArguments)(...t)},transformReply:Sne.default.transformReply}});var LXe=E(vne=>{"use strict";Object.defineProperty(vne,"__esModule",{value:!0});var Qdr=Ce();vne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.CDF"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:Qdr.transformDoubleArrayReply}});var MXe=E(Ine=>{"use strict";Object.defineProperty(Ine,"__esModule",{value:!0});Ine.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.CREATE"),t.pushKey(e),r?.COMPRESSION!==void 0&&t.push("COMPRESSION",r.COMPRESSION.toString())},transformReply:void 0}});var WXe=E(Cne=>{"use strict";Object.defineProperty(Cne,"__esModule",{value:!0});var Gdr=Fb();Cne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Gdr.transformInfoV2Reply)(t,r),3:void 0}}});var $Xe=E(Tne=>{"use strict";Object.defineProperty(Tne,"__esModule",{value:!0});var Kdr=Ce();Tne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MAX"),t.pushKey(e)},transformReply:Kdr.transformDoubleReply}});var FXe=E(wne=>{"use strict";Object.defineProperty(wne,"__esModule",{value:!0});wne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TDIGEST.MERGE"),t.pushKey(e),t.pushKeysLength(r),n?.COMPRESSION!==void 0&&t.push("COMPRESSION",n.COMPRESSION.toString()),n?.OVERRIDE&&t.push("OVERRIDE")},transformReply:void 0}});var UXe=E(Rne=>{"use strict";Object.defineProperty(Rne,"__esModule",{value:!0});var Vdr=Ce();Rne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MIN"),t.pushKey(e)},transformReply:Vdr.transformDoubleReply}});var qXe=E(Nne=>{"use strict";Object.defineProperty(Nne,"__esModule",{value:!0});var zdr=Ce();Nne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.QUANTILE"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:zdr.transformDoubleArrayReply}});var One=E(dT=>{"use strict";Object.defineProperty(dT,"__esModule",{value:!0});dT.transformRankArguments=void 0;function jXe(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}dT.transformRankArguments=jXe;dT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.RANK"),jXe(...t)},transformReply:void 0}});var HXe=E(Pne=>{"use strict";Object.defineProperty(Pne,"__esModule",{value:!0});Pne.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TDIGEST.RESET"),t.pushKey(e)},transformReply:void 0}});var QXe=E(Rf=>{"use strict";var Ydr=Rf&&Rf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Jdr=Rf&&Rf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Xdr=Rf&&Rf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Ydr(e,t,r);return Jdr(e,t),e};Object.defineProperty(Rf,"__esModule",{value:!0});var kne=Xdr(One());Rf.default={IS_READ_ONLY:kne.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.REVRANK"),(0,kne.transformRankArguments)(...t)},transformReply:kne.default.transformReply}});var GXe=E(Dne=>{"use strict";Object.defineProperty(Dne,"__esModule",{value:!0});var Zdr=Ce();Dne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TDIGEST.TRIMMED_MEAN"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:Zdr.transformDoubleReply}});var oZe=E(fT=>{"use strict";var oo=fT&&fT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(fT,"__esModule",{value:!0});var KXe=oo(kXe()),VXe=oo(_ne()),zXe=oo(BXe()),YXe=oo(LXe()),JXe=oo(MXe()),XXe=oo(WXe()),ZXe=oo($Xe()),eZe=oo(FXe()),tZe=oo(UXe()),rZe=oo(qXe()),nZe=oo(One()),sZe=oo(HXe()),iZe=oo(QXe()),aZe=oo(GXe());fT.default={ADD:KXe.default,add:KXe.default,BYRANK:VXe.default,byRank:VXe.default,BYREVRANK:zXe.default,byRevRank:zXe.default,CDF:YXe.default,cdf:YXe.default,CREATE:JXe.default,create:JXe.default,INFO:XXe.default,info:XXe.default,MAX:ZXe.default,max:ZXe.default,MERGE:eZe.default,merge:eZe.default,MIN:tZe.default,min:tZe.default,QUANTILE:rZe.default,quantile:rZe.default,RANK:nZe.default,rank:nZe.default,RESET:sZe.default,reset:sZe.default,REVRANK:iZe.default,revRank:iZe.default,TRIMMED_MEAN:aZe.default,trimmedMean:aZe.default}});var cZe=E(Bne=>{"use strict";Object.defineProperty(Bne,"__esModule",{value:!0});Bne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.ADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var uZe=E(Lne=>{"use strict";Object.defineProperty(Lne,"__esModule",{value:!0});Lne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TOPK.COUNT"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var dZe=E(Mne=>{"use strict";Object.defineProperty(Mne,"__esModule",{value:!0});function lZe(t,{item:e,incrementBy:r}){t.push(e,r.toString())}Mne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("TOPK.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)lZe(t,n);else lZe(t,r)},transformReply:void 0}});var fZe=E(Wne=>{"use strict";Object.defineProperty(Wne,"__esModule",{value:!0});var efr=Ce(),tfr=Fb();Wne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(t[7]=efr.transformDoubleReply[2](t[7],e,r),(0,tfr.transformInfoV2Reply)(t,r)),3:void 0}}});var pZe=E($ne=>{"use strict";Object.defineProperty($ne,"__esModule",{value:!0});$ne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e),t.push("WITHCOUNT")},transformReply(t){let e=[];for(let r=0;r{"use strict";Object.defineProperty(Fne,"__esModule",{value:!0});Fne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e)},transformReply:void 0}});var hZe=E(Une=>{"use strict";Object.defineProperty(Une,"__esModule",{value:!0});var rfr=Ce();Une.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:rfr.transformBooleanArrayReply}});var gZe=E(qne=>{"use strict";Object.defineProperty(qne,"__esModule",{value:!0});qne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TOPK.RESERVE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n.width.toString(),n.depth.toString(),n.decay.toString())},transformReply:void 0}});var IZe=E(pT=>{"use strict";var Q0=pT&&pT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(pT,"__esModule",{value:!0});var AZe=Q0(cZe()),yZe=Q0(uZe()),xZe=Q0(dZe()),bZe=Q0(fZe()),EZe=Q0(pZe()),_Ze=Q0(mZe()),SZe=Q0(hZe()),vZe=Q0(gZe());pT.default={ADD:AZe.default,add:AZe.default,COUNT:yZe.default,count:yZe.default,INCRBY:xZe.default,incrBy:xZe.default,INFO:bZe.default,info:bZe.default,LIST_WITHCOUNT:EZe.default,listWithCount:EZe.default,LIST:_Ze.default,list:_Ze.default,QUERY:SZe.default,query:SZe.default,RESERVE:vZe.default,reserve:vZe.default}});var CZe=E(mT=>{"use strict";var hT=mT&&mT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mT,"__esModule",{value:!0});var nfr=hT(Fb()),sfr=hT(uXe()),ifr=hT(PXe()),afr=hT(oZe()),ofr=hT(IZe());mT.default={bf:nfr.default,cms:sfr.default,cf:ifr.default,tDigest:afr.default,topK:ofr.default}});var jne=E(qb=>{"use strict";var cfr=qb&&qb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(qb,"__esModule",{value:!0});qb.default=void 0;var ufr=CZe();Object.defineProperty(qb,"default",{enumerable:!0,get:function(){return cfr(ufr).default}})});var wZe=E(Hne=>{"use strict";Object.defineProperty(Hne,"__esModule",{value:!0});var TZe=Ce();Hne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,...s){t.push("JSON.ARRAPPEND"),t.pushKey(e),t.push(r,(0,TZe.transformRedisJsonArgument)(n));for(let i=0;i{"use strict";Object.defineProperty(Qne,"__esModule",{value:!0});var lfr=Ce();Qne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("JSON.ARRINDEX"),t.pushKey(e),t.push(r,(0,lfr.transformRedisJsonArgument)(n)),s?.range&&(t.push(s.range.start.toString()),s.range.stop!==void 0&&t.push(s.range.stop.toString()))},transformReply:void 0}});var OZe=E(Gne=>{"use strict";Object.defineProperty(Gne,"__esModule",{value:!0});var NZe=Ce();Gne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,...i){t.push("JSON.ARRINSERT"),t.pushKey(e),t.push(r,n.toString(),(0,NZe.transformRedisJsonArgument)(s));for(let a=0;a{"use strict";Object.defineProperty(Kne,"__esModule",{value:!0});Kne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.ARRLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var kZe=E(zne=>{"use strict";Object.defineProperty(zne,"__esModule",{value:!0});var Vne=Ce();zne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.ARRPOP"),t.pushKey(e),r&&(t.push(r.path),r.index!==void 0&&t.push(r.index.toString()))},transformReply(t){return(0,Vne.isArrayReply)(t)?t.map(e=>(0,Vne.transformRedisJsonNullReply)(e)):(0,Vne.transformRedisJsonNullReply)(t)}}});var DZe=E(Yne=>{"use strict";Object.defineProperty(Yne,"__esModule",{value:!0});Yne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.ARRTRIM"),t.pushKey(e),t.push(r,n.toString(),s.toString())},transformReply:void 0}});var BZe=E(Jne=>{"use strict";Object.defineProperty(Jne,"__esModule",{value:!0});Jne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.CLEAR"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var LZe=E(Xne=>{"use strict";Object.defineProperty(Xne,"__esModule",{value:!0});Xne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEBUG","MEMORY"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var MZe=E(Zne=>{"use strict";Object.defineProperty(Zne,"__esModule",{value:!0});Zne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEL"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var WZe=E(ese=>{"use strict";Object.defineProperty(ese,"__esModule",{value:!0});ese.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.FORGET"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var $Ze=E(tse=>{"use strict";Object.defineProperty(tse,"__esModule",{value:!0});var dfr=Ce();tse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.GET"),t.pushKey(e),r?.path!==void 0&&t.pushVariadic(r.path)},transformReply:dfr.transformRedisJsonNullReply}});var FZe=E(rse=>{"use strict";Object.defineProperty(rse,"__esModule",{value:!0});var ffr=Ce();rse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.MERGE"),t.pushKey(e),t.push(r,(0,ffr.transformRedisJsonArgument)(n))},transformReply:void 0}});var UZe=E(nse=>{"use strict";Object.defineProperty(nse,"__esModule",{value:!0});var pfr=Ce();nse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.MGET"),t.pushKeys(e),t.push(r)},transformReply(t){return t.map(e=>(0,pfr.transformRedisJsonNullReply)(e))}}});var qZe=E(sse=>{"use strict";Object.defineProperty(sse,"__esModule",{value:!0});var mfr=Ce();sse.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("JSON.MSET");for(let r=0;r{"use strict";Object.defineProperty(ise,"__esModule",{value:!0});ise.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:{2:t=>JSON.parse(t.toString()),3:void 0}}});var jZe=E(gT=>{"use strict";var hfr=gT&&gT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gT,"__esModule",{value:!0});var gfr=hfr(ase());gT.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMMULTBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:gfr.default.transformReply}});var HZe=E(ose=>{"use strict";Object.defineProperty(ose,"__esModule",{value:!0});ose.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.OBJKEYS"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var QZe=E(cse=>{"use strict";Object.defineProperty(cse,"__esModule",{value:!0});cse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.OBJLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var GZe=E(use=>{"use strict";Object.defineProperty(use,"__esModule",{value:!0});var Afr=Ce();use.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.SET"),t.pushKey(e),t.push(r,(0,Afr.transformRedisJsonArgument)(n)),s?.condition?t.push(s?.condition):s?.NX?t.push("NX"):s?.XX&&t.push("XX")},transformReply:void 0}});var KZe=E(lse=>{"use strict";Object.defineProperty(lse,"__esModule",{value:!0});var yfr=Ce();lse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.STRAPPEND"),t.pushKey(e),n?.path!==void 0&&t.push(n.path),t.push((0,yfr.transformRedisJsonArgument)(r))},transformReply:void 0}});var VZe=E(dse=>{"use strict";Object.defineProperty(dse,"__esModule",{value:!0});dse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.STRLEN"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:void 0}});var zZe=E(fse=>{"use strict";Object.defineProperty(fse,"__esModule",{value:!0});fse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.TOGGLE"),t.pushKey(e),t.push(r)},transformReply:void 0}});var YZe=E(pse=>{"use strict";Object.defineProperty(pse,"__esModule",{value:!0});pse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.TYPE"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:{2:void 0,3:t=>t[0]}}});var Eet=E(Su=>{"use strict";var Gn=Su&&Su.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Su,"__esModule",{value:!0});Su.transformRedisJsonNullReply=Su.transformRedisJsonReply=Su.transformRedisJsonArgument=void 0;var JZe=Gn(wZe()),XZe=Gn(RZe()),ZZe=Gn(OZe()),eet=Gn(PZe()),tet=Gn(kZe()),ret=Gn(DZe()),net=Gn(BZe()),set=Gn(LZe()),iet=Gn(MZe()),aet=Gn(WZe()),oet=Gn($Ze()),cet=Gn(FZe()),uet=Gn(UZe()),det=Gn(qZe()),fet=Gn(ase()),pet=Gn(jZe()),met=Gn(HZe()),het=Gn(QZe()),get=Gn(GZe()),Aet=Gn(KZe()),yet=Gn(VZe()),xet=Gn(zZe()),bet=Gn(YZe()),mse=Ce();Object.defineProperty(Su,"transformRedisJsonArgument",{enumerable:!0,get:function(){return mse.transformRedisJsonArgument}});Object.defineProperty(Su,"transformRedisJsonReply",{enumerable:!0,get:function(){return mse.transformRedisJsonReply}});Object.defineProperty(Su,"transformRedisJsonNullReply",{enumerable:!0,get:function(){return mse.transformRedisJsonNullReply}});Su.default={ARRAPPEND:JZe.default,arrAppend:JZe.default,ARRINDEX:XZe.default,arrIndex:XZe.default,ARRINSERT:ZZe.default,arrInsert:ZZe.default,ARRLEN:eet.default,arrLen:eet.default,ARRPOP:tet.default,arrPop:tet.default,ARRTRIM:ret.default,arrTrim:ret.default,CLEAR:net.default,clear:net.default,DEBUG_MEMORY:set.default,debugMemory:set.default,DEL:iet.default,del:iet.default,FORGET:aet.default,forget:aet.default,GET:oet.default,get:oet.default,MERGE:cet.default,merge:cet.default,MGET:uet.default,mGet:uet.default,MSET:det.default,mSet:det.default,NUMINCRBY:fet.default,numIncrBy:fet.default,NUMMULTBY:pet.default,numMultBy:pet.default,OBJKEYS:met.default,objKeys:met.default,OBJLEN:het.default,objLen:het.default,SET:get.default,set:get.default,STRAPPEND:Aet.default,strAppend:Aet.default,STRLEN:yet.default,strLen:yet.default,TOGGLE:xet.default,toggle:xet.default,TYPE:bet.default,type:bet.default}});var hse=E(jb=>{"use strict";var xfr=jb&&jb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jb,"__esModule",{value:!0});jb.default=void 0;var bfr=Eet();Object.defineProperty(jb,"default",{enumerable:!0,get:function(){return xfr(bfr).default}})});var _et=E(gse=>{"use strict";Object.defineProperty(gse,"__esModule",{value:!0});gse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FT._LIST")},transformReply:{2:void 0,3:void 0}}});var BL=E(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.REDISEARCH_LANGUAGE=Cn.parseSchema=Cn.SCHEMA_GEO_SHAPE_COORD_SYSTEM=Cn.VAMANA_COMPRESSION_ALGORITHM=Cn.SCHEMA_VECTOR_FIELD_ALGORITHM=Cn.SCHEMA_TEXT_FIELD_PHONETIC=Cn.SCHEMA_FIELD_TYPE=void 0;var vet=Ce();Cn.SCHEMA_FIELD_TYPE={TEXT:"TEXT",NUMERIC:"NUMERIC",GEO:"GEO",TAG:"TAG",VECTOR:"VECTOR",GEOSHAPE:"GEOSHAPE"};Cn.SCHEMA_TEXT_FIELD_PHONETIC={DM_EN:"dm:en",DM_FR:"dm:fr",DM_PT:"dm:pt",DM_ES:"dm:es"};Cn.SCHEMA_VECTOR_FIELD_ALGORITHM={FLAT:"FLAT",HNSW:"HNSW",VAMANA:"SVS-VAMANA"};Cn.VAMANA_COMPRESSION_ALGORITHM={LVQ4:"LVQ4",LVQ8:"LVQ8",LVQ4x4:"LVQ4x4",LVQ4x8:"LVQ4x8",LeanVec4x8:"LeanVec4x8",LeanVec8x8:"LeanVec8x8"};Cn.SCHEMA_GEO_SHAPE_COORD_SYSTEM={SPHERICAL:"SPHERICAL",FLAT:"FLAT"};function Ase(t,e){e.SORTABLE&&(t.push("SORTABLE"),e.SORTABLE==="UNF"&&t.push("UNF")),e.NOINDEX&&t.push("NOINDEX")}function Iet(t,e){for(let[r,n]of Object.entries(e)){let s=Array.isArray(n)?n:[n];for(let i of s){if(t.push(r),typeof i=="string"){t.push(i);continue}switch(i.AS&&t.push("AS",i.AS),t.push(i.type),i.INDEXMISSING&&t.push("INDEXMISSING"),i.type){case Cn.SCHEMA_FIELD_TYPE.TEXT:i.NOSTEM&&t.push("NOSTEM"),i.WEIGHT!==void 0&&t.push("WEIGHT",i.WEIGHT.toString()),i.PHONETIC&&t.push("PHONETIC",i.PHONETIC),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),Ase(t,i);break;case Cn.SCHEMA_FIELD_TYPE.NUMERIC:case Cn.SCHEMA_FIELD_TYPE.GEO:Ase(t,i);break;case Cn.SCHEMA_FIELD_TYPE.TAG:i.SEPARATOR&&t.push("SEPARATOR",i.SEPARATOR),i.CASESENSITIVE&&t.push("CASESENSITIVE"),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),Ase(t,i);break;case Cn.SCHEMA_FIELD_TYPE.VECTOR:t.push(i.ALGORITHM);let a=[];switch(a.push("TYPE",i.TYPE,"DIM",i.DIM.toString(),"DISTANCE_METRIC",i.DISTANCE_METRIC),i.INITIAL_CAP!==void 0&&a.push("INITIAL_CAP",i.INITIAL_CAP.toString()),i.ALGORITHM){case Cn.SCHEMA_VECTOR_FIELD_ALGORITHM.FLAT:i.BLOCK_SIZE!==void 0&&a.push("BLOCK_SIZE",i.BLOCK_SIZE.toString());break;case Cn.SCHEMA_VECTOR_FIELD_ALGORITHM.HNSW:i.M!==void 0&&a.push("M",i.M.toString()),i.EF_CONSTRUCTION!==void 0&&a.push("EF_CONSTRUCTION",i.EF_CONSTRUCTION.toString()),i.EF_RUNTIME!==void 0&&a.push("EF_RUNTIME",i.EF_RUNTIME.toString());break;case Cn.SCHEMA_VECTOR_FIELD_ALGORITHM.VAMANA:i.COMPRESSION&&a.push("COMPRESSION",i.COMPRESSION),i.CONSTRUCTION_WINDOW_SIZE!==void 0&&a.push("CONSTRUCTION_WINDOW_SIZE",i.CONSTRUCTION_WINDOW_SIZE.toString()),i.GRAPH_MAX_DEGREE!==void 0&&a.push("GRAPH_MAX_DEGREE",i.GRAPH_MAX_DEGREE.toString()),i.SEARCH_WINDOW_SIZE!==void 0&&a.push("SEARCH_WINDOW_SIZE",i.SEARCH_WINDOW_SIZE.toString()),i.EPSILON!==void 0&&a.push("EPSILON",i.EPSILON.toString()),i.TRAINING_THRESHOLD!==void 0&&a.push("TRAINING_THRESHOLD",i.TRAINING_THRESHOLD.toString()),i.REDUCE!==void 0&&a.push("REDUCE",i.REDUCE.toString());break}t.pushVariadicWithLength(a);break;case Cn.SCHEMA_FIELD_TYPE.GEOSHAPE:i.COORD_SYSTEM!==void 0&&t.push("COORD_SYSTEM",i.COORD_SYSTEM);break}}}}Cn.parseSchema=Iet;Cn.REDISEARCH_LANGUAGE={ARABIC:"Arabic",BASQUE:"Basque",CATALANA:"Catalan",DANISH:"Danish",DUTCH:"Dutch",ENGLISH:"English",FINNISH:"Finnish",FRENCH:"French",GERMAN:"German",GREEK:"Greek",HUNGARIAN:"Hungarian",INDONESAIN:"Indonesian",IRISH:"Irish",ITALIAN:"Italian",LITHUANIAN:"Lithuanian",NEPALI:"Nepali",NORWEIGAN:"Norwegian",PORTUGUESE:"Portuguese",ROMANIAN:"Romanian",RUSSIAN:"Russian",SPANISH:"Spanish",SWEDISH:"Swedish",TAMIL:"Tamil",TURKISH:"Turkish",CHINESE:"Chinese"};Cn.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CREATE",e),n?.ON&&t.push("ON",n.ON),(0,vet.parseOptionalVariadicArgument)(t,"PREFIX",n?.PREFIX),n?.FILTER&&t.push("FILTER",n.FILTER),n?.LANGUAGE&&t.push("LANGUAGE",n.LANGUAGE),n?.LANGUAGE_FIELD&&t.push("LANGUAGE_FIELD",n.LANGUAGE_FIELD),n?.SCORE&&t.push("SCORE",n.SCORE.toString()),n?.SCORE_FIELD&&t.push("SCORE_FIELD",n.SCORE_FIELD),n?.MAXTEXTFIELDS&&t.push("MAXTEXTFIELDS"),n?.TEMPORARY&&t.push("TEMPORARY",n.TEMPORARY.toString()),n?.NOOFFSETS&&t.push("NOOFFSETS"),n?.NOHL&&t.push("NOHL"),n?.NOFIELDS&&t.push("NOFIELDS"),n?.NOFREQS&&t.push("NOFREQS"),n?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),(0,vet.parseOptionalVariadicArgument)(t,"STOPWORDS",n?.STOPWORDS),t.push("SCHEMA"),Iet(t,r)},transformReply:void 0}});var Cet=E(yse=>{"use strict";Object.defineProperty(yse,"__esModule",{value:!0});var Efr=BL();yse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALTER",e,"SCHEMA","ADD"),(0,Efr.parseSchema)(t,r)},transformReply:void 0}});var Hb=E(LL=>{"use strict";Object.defineProperty(LL,"__esModule",{value:!0});LL.DEFAULT_DIALECT=void 0;LL.DEFAULT_DIALECT="2"});var xg=E(yg=>{"use strict";Object.defineProperty(yg,"__esModule",{value:!0});yg.parseSearchOptions=yg.parseParamsArgument=void 0;var AT=Ce(),_fr=Hb();function Tet(t,e){if(e){t.push("PARAMS");let r=[];for(let n in e){if(!Object.hasOwn(e,n))continue;let s=e[n];r.push(n,typeof s=="number"?s.toString():s)}t.pushVariadicWithLength(r)}}yg.parseParamsArgument=Tet;function wet(t,e){e?.VERBATIM&&t.push("VERBATIM"),e?.NOSTOPWORDS&&t.push("NOSTOPWORDS"),(0,AT.parseOptionalVariadicArgument)(t,"INKEYS",e?.INKEYS),(0,AT.parseOptionalVariadicArgument)(t,"INFIELDS",e?.INFIELDS),(0,AT.parseOptionalVariadicArgument)(t,"RETURN",e?.RETURN),e?.SUMMARIZE&&(t.push("SUMMARIZE"),typeof e.SUMMARIZE=="object"&&((0,AT.parseOptionalVariadicArgument)(t,"FIELDS",e.SUMMARIZE.FIELDS),e.SUMMARIZE.FRAGS!==void 0&&t.push("FRAGS",e.SUMMARIZE.FRAGS.toString()),e.SUMMARIZE.LEN!==void 0&&t.push("LEN",e.SUMMARIZE.LEN.toString()),e.SUMMARIZE.SEPARATOR!==void 0&&t.push("SEPARATOR",e.SUMMARIZE.SEPARATOR))),e?.HIGHLIGHT&&(t.push("HIGHLIGHT"),typeof e.HIGHLIGHT=="object"&&((0,AT.parseOptionalVariadicArgument)(t,"FIELDS",e.HIGHLIGHT.FIELDS),e.HIGHLIGHT.TAGS&&t.push("TAGS",e.HIGHLIGHT.TAGS.open,e.HIGHLIGHT.TAGS.close))),e?.SLOP!==void 0&&t.push("SLOP",e.SLOP.toString()),e?.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString()),e?.INORDER&&t.push("INORDER"),e?.LANGUAGE&&t.push("LANGUAGE",e.LANGUAGE),e?.EXPANDER&&t.push("EXPANDER",e.EXPANDER),e?.SCORER&&t.push("SCORER",e.SCORER),e?.SORTBY&&(t.push("SORTBY"),typeof e.SORTBY=="string"||e.SORTBY instanceof Buffer?t.push(e.SORTBY):(t.push(e.SORTBY.BY),e.SORTBY.DIRECTION&&t.push(e.SORTBY.DIRECTION))),e?.LIMIT&&t.push("LIMIT",e.LIMIT.from.toString(),e.LIMIT.size.toString()),Tet(t,e?.PARAMS),e?.DIALECT?t.push("DIALECT",e.DIALECT.toString()):t.push("DIALECT",_fr.DEFAULT_DIALECT)}yg.parseSearchOptions=wet;yg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SEARCH",e,r),wet(t,n)},transformReply:{2:t=>{let e=t.length>2&&!Array.isArray(t[2]),r=[],n=1;for(;n{"use strict";Object.defineProperty(on,"__esModule",{value:!0});on.parseGroupByReducer=on.parseAggregateOptions=on.FT_AGGREGATE_GROUP_BY_REDUCERS=on.FT_AGGREGATE_STEPS=void 0;var vfr=xg(),Ifr=Ce(),Cfr=Hb();on.FT_AGGREGATE_STEPS={GROUPBY:"GROUPBY",SORTBY:"SORTBY",APPLY:"APPLY",LIMIT:"LIMIT",FILTER:"FILTER"};on.FT_AGGREGATE_GROUP_BY_REDUCERS={COUNT:"COUNT",COUNT_DISTINCT:"COUNT_DISTINCT",COUNT_DISTINCTISH:"COUNT_DISTINCTISH",SUM:"SUM",MIN:"MIN",MAX:"MAX",AVG:"AVG",STDDEV:"STDDEV",QUANTILE:"QUANTILE",TOLIST:"TOLIST",FIRST_VALUE:"FIRST_VALUE",RANDOM_SAMPLE:"RANDOM_SAMPLE"};on.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r,n){return t.push("FT.AGGREGATE",e,r),Oet(t,n)},transformReply:{2:(t,e,r)=>{let n=[];for(let s=1;s{"use strict";var Tfr=yT&&yT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(yT,"__esModule",{value:!0});var bse=Tfr(Qb());yT.default={IS_READ_ONLY:bse.default.IS_READ_ONLY,parseCommand(t,e,r,n){bse.default.parseCommand(t,e,r,n),t.push("WITHCURSOR"),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.MAXIDLE!==void 0&&t.push("MAXIDLE",n.MAXIDLE.toString())},transformReply:{2:t=>({...bse.default.transformReply[2](t[0]),cursor:t[1]}),3:void 0},unstableResp3:!0}});var Pet=E(_se=>{"use strict";Object.defineProperty(_se,"__esModule",{value:!0});_se.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASADD",e,r)},transformReply:void 0}});var ket=E(Sse=>{"use strict";Object.defineProperty(Sse,"__esModule",{value:!0});Sse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.ALIASDEL",e)},transformReply:void 0}});var Det=E(vse=>{"use strict";Object.defineProperty(vse,"__esModule",{value:!0});vse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASUPDATE",e,r)},transformReply:void 0}});var Bet=E(Ise=>{"use strict";Object.defineProperty(Ise,"__esModule",{value:!0});Ise.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.CONFIG","GET",e)},transformReply(t){let e=Object.create(null);for(let r of t){let[n,s]=r;e[n.toString()]=s}return e}}});var Let=E(Cse=>{"use strict";Object.defineProperty(Cse,"__esModule",{value:!0});Cse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CONFIG","SET",e,r)},transformReply:void 0}});var Met=E(Tse=>{"use strict";Object.defineProperty(Tse,"__esModule",{value:!0});Tse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CURSOR","DEL",e,r.toString())},transformReply:void 0}});var Wet=E(xT=>{"use strict";var wfr=xT&&xT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(xT,"__esModule",{value:!0});var Rfr=wfr(Ese());xT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CURSOR","READ",e,r.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())},transformReply:Rfr.default.transformReply,unstableResp3:!0}});var $et=E(wse=>{"use strict";Object.defineProperty(wse,"__esModule",{value:!0});wse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTADD",e),t.pushVariadic(r)},transformReply:void 0}});var Fet=E(Rse=>{"use strict";Object.defineProperty(Rse,"__esModule",{value:!0});Rse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTDEL",e),t.pushVariadic(r)},transformReply:void 0}});var Uet=E(Nse=>{"use strict";Object.defineProperty(Nse,"__esModule",{value:!0});Nse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.DICTDUMP",e)},transformReply:{2:void 0,3:void 0}}});var qet=E(Ose=>{"use strict";Object.defineProperty(Ose,"__esModule",{value:!0});Ose.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DROPINDEX",e),r?.DD&&t.push("DD")},transformReply:{2:void 0,3:void 0}}});var jet=E(Pse=>{"use strict";Object.defineProperty(Pse,"__esModule",{value:!0});var Nfr=xg(),Ofr=Hb();Pse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAIN",e,r),(0,Nfr.parseParamsArgument)(t,n?.PARAMS),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Ofr.DEFAULT_DIALECT)},transformReply:void 0}});var Het=E(kse=>{"use strict";Object.defineProperty(kse,"__esModule",{value:!0});var Pfr=Hb();kse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAINCLI",e,r),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Pfr.DEFAULT_DIALECT)},transformReply:void 0}});var Ket=E(vu=>{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});vu.FT_HYBRID_COMBINE_METHOD=vu.FT_HYBRID_VECTOR_METHOD=void 0;var Qet=Ce(),kfr=xg(),Dfr=Qb();vu.FT_HYBRID_VECTOR_METHOD={KNN:"KNN",RANGE:"RANGE"};vu.FT_HYBRID_COMBINE_METHOD={RRF:"RRF",LINEAR:"LINEAR"};function Bfr(t,e){t.push("SEARCH",e.query),e.SCORER&&t.push("SCORER",e.SCORER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function Lfr(t,e){if(t.push("VSIM",e.field,e.vector),e.method){if(e.method.type===vu.FT_HYBRID_VECTOR_METHOD.KNN){let r=2;e.method.EF_RUNTIME!==void 0&&(r+=2),t.push("KNN",r.toString(),"K",e.method.K.toString()),e.method.EF_RUNTIME!==void 0&&t.push("EF_RUNTIME",e.method.EF_RUNTIME.toString())}if(e.method.type===vu.FT_HYBRID_VECTOR_METHOD.RANGE){let r=2;e.method.EPSILON!==void 0&&(r+=2),t.push("RANGE",r.toString(),"RADIUS",e.method.RADIUS.toString()),e.method.EPSILON!==void 0&&t.push("EPSILON",e.method.EPSILON.toString())}}e.FILTER&&t.push("FILTER",e.FILTER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function Mfr(t,e){if(e){if(t.push("COMBINE"),e.method.type===vu.FT_HYBRID_COMBINE_METHOD.RRF){let r=0;e.method.WINDOW!==void 0&&(r+=2),e.method.CONSTANT!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("RRF",r.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString()),e.method.CONSTANT!==void 0&&t.push("CONSTANT",e.method.CONSTANT.toString())}if(e.method.type===vu.FT_HYBRID_COMBINE_METHOD.LINEAR){let r=0;e.method.ALPHA!==void 0&&(r+=2),e.method.BETA!==void 0&&(r+=2),e.method.WINDOW!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("LINEAR",r.toString()),e.method.ALPHA!==void 0&&t.push("ALPHA",e.method.ALPHA.toString()),e.method.BETA!==void 0&&t.push("BETA",e.method.BETA.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString())}e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}}function Wfr(t,e){t.push("APPLY",e.expression),e.AS&&t.push("AS",e.AS)}function $fr(t,e){if(Bfr(t,e.SEARCH),Lfr(t,e.VSIM),e.COMBINE&&Mfr(t,e.COMBINE),e.LOAD&&(e.LOAD==="*"?t.push("LOAD","*"):(0,Qet.parseOptionalVariadicArgument)(t,"LOAD",e.LOAD)),e.GROUPBY&&((0,Qet.parseOptionalVariadicArgument)(t,"GROUPBY",e.GROUPBY.fields),e.GROUPBY.REDUCE)){let n=Array.isArray(e.GROUPBY.REDUCE)?e.GROUPBY.REDUCE:[e.GROUPBY.REDUCE];for(let s of n)(0,Dfr.parseGroupByReducer)(t,s)}if(e.APPLY){let n=Array.isArray(e.APPLY)?e.APPLY:[e.APPLY];for(let s of n)Wfr(t,s)}if(e.SORTBY){let n=e.SORTBY.fields.reduce((s,i)=>i.direction?s+2:s+1,0);t.push("SORTBY",n.toString());for(let s of e.SORTBY.fields)t.push(s.field),s.direction&&t.push(s.direction)}e.NOSORT&&t.push("NOSORT"),e.FILTER&&t.push("FILTER",e.FILTER),e.LIMIT&&t.push("LIMIT",e.LIMIT.offset.toString(),e.LIMIT.count.toString());let r=e.PARAMS&&Object.keys(e.PARAMS).length>0;(0,kfr.parseParamsArgument)(t,r?e.PARAMS:void 0),e.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString())}vu.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.HYBRID",e),$fr(t,r)},transformReply:{2:t=>Ffr(t),3:void 0},unstableResp3:!0};function Ffr(t){let e=Get(t),r=e.total_results??0,n=e.results??[],s=e.warnings??[],i=e.execution_time?Number.parseFloat(e.execution_time):0,a=[];for(let o of n){let c=Get(o),u=Object.create(null);for(let[l,d]of Object.entries(c))if(l==="$")try{Object.assign(u,JSON.parse(d))}catch{u[l]=d}else u[l]=d;a.push(u)}return{totalResults:r,executionTime:i,warnings:s,results:a}}function Get(t){let e={};if(!Array.isArray(t))return e;for(let r=0;r{"use strict";Object.defineProperty(Bse,"__esModule",{value:!0});var Dse=Ce();Bse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.INFO",e)},transformReply:{2:Ufr,3:void 0},unstableResp3:!0};function Ufr(t,e,r){let n=(0,Dse.createTransformTuplesReplyFunc)(e,r),s={};for(let i=0;in(o));break;case"gc_stats":{let o={},c=t[i+1];for(let u=0;u{"use strict";var qfr=Nf&&Nf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),jfr=Nf&&Nf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Hfr=Nf&&Nf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&qfr(e,t,r);return jfr(e,t),e};Object.defineProperty(Nf,"__esModule",{value:!0});var zet=Hfr(xg());Nf.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"SEARCH"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,zet.parseSearchOptions)(t,n)},transformReply:{2:t=>({results:zet.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var Xet=E(Of=>{"use strict";var Qfr=Of&&Of.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Gfr=Of&&Of.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Kfr=Of&&Of.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Qfr(e,t,r);return Gfr(e,t),e};Object.defineProperty(Of,"__esModule",{value:!0});var Jet=Kfr(Qb());Of.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"AGGREGATE"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,Jet.parseAggregateOptions)(t,n)},transformReply:{2:t=>({results:Jet.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var Zet=E(bT=>{"use strict";var Vfr=bT&&bT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(bT,"__esModule",{value:!0});var Lse=Vfr(xg());bT.default={NOT_KEYED_COMMAND:Lse.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Lse.default.IS_READ_ONLY,parseCommand(...t){Lse.default.parseCommand(...t),t[0].push("NOCONTENT")},transformReply:{2:t=>({total:t[0],documents:t.slice(1)}),3:void 0},unstableResp3:!0}});var ttt=E(Mse=>{"use strict";Object.defineProperty(Mse,"__esModule",{value:!0});var zfr=Hb();Mse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("FT.SPELLCHECK",e,r),n?.DISTANCE&&t.push("DISTANCE",n.DISTANCE.toString()),n?.TERMS)if(Array.isArray(n.TERMS))for(let s of n.TERMS)ett(t,s);else ett(t,n.TERMS);n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",zfr.DEFAULT_DIALECT)},transformReply:{2:t=>t.map(([,e,r])=>({term:e,suggestions:r.map(([n,s])=>({score:Number(n),suggestion:s}))})),3:void 0},unstableResp3:!0};function ett(t,{mode:e,dictionary:r}){t.push("TERMS",e,r)}});var rtt=E(Wse=>{"use strict";Object.defineProperty(Wse,"__esModule",{value:!0});Wse.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SUGADD"),t.pushKey(e),t.push(r,n.toString()),s?.INCR&&t.push("INCR"),s?.PAYLOAD&&t.push("PAYLOAD",s.PAYLOAD)},transformReply:void 0}});var ntt=E($se=>{"use strict";Object.defineProperty($se,"__esModule",{value:!0});$se.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.SUGDEL"),t.pushKey(e),t.push(r)},transformReply:void 0}});var ET=E(Fse=>{"use strict";Object.defineProperty(Fse,"__esModule",{value:!0});Fse.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SUGGET"),t.pushKey(e),t.push(r),n?.FUZZY&&t.push("FUZZY"),n?.MAX!==void 0&&t.push("MAX",n.MAX.toString())},transformReply:void 0}});var itt=E(_T=>{"use strict";var Yfr=_T&&_T.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_T,"__esModule",{value:!0});var Jfr=Ce(),stt=Yfr(ET());_T.default={IS_READ_ONLY:stt.default.IS_READ_ONLY,parseCommand(...t){stt.default.parseCommand(...t),t[0].push("WITHPAYLOADS")},transformReply(t){if((0,Jfr.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r{"use strict";var Xfr=ST&&ST.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ST,"__esModule",{value:!0});var Use=Ce(),att=Xfr(ET());ST.default={IS_READ_ONLY:att.default.IS_READ_ONLY,parseCommand(...t){att.default.parseCommand(...t),t[0].push("WITHSCORES","WITHPAYLOADS")},transformReply:{2:(t,e,r)=>{if((0,Use.isNullReply)(t))return null;let n=new Array(t.length/3),s=0,i=0;for(;s{if((0,Use.isNullReply)(t))return null;let e=new Array(t.length/3),r=0,n=0;for(;r{"use strict";var Zfr=vT&&vT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(vT,"__esModule",{value:!0});var qse=Ce(),ctt=Zfr(ET());vT.default={IS_READ_ONLY:ctt.default.IS_READ_ONLY,parseCommand(...t){ctt.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:{2:(t,e,r)=>{if((0,qse.isNullReply)(t))return null;let n=new Array(t.length/2),s=0,i=0;for(;s{if((0,qse.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r{"use strict";Object.defineProperty(jse,"__esModule",{value:!0});jse.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SUGLEN",e)},transformReply:void 0}});var dtt=E(Hse=>{"use strict";Object.defineProperty(Hse,"__esModule",{value:!0});Hse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SYNDUMP",e)},transformReply:{2:t=>{let e={},r=0;for(;r{"use strict";Object.defineProperty(Qse,"__esModule",{value:!0});Qse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SYNUPDATE",e,r),s?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),t.pushVariadic(n)},transformReply:void 0}});var ptt=E(Gse=>{"use strict";Object.defineProperty(Gse,"__esModule",{value:!0});Gse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.TAGVALS",e,r)},transformReply:{2:void 0,3:void 0}}});var ztt=E(IT=>{"use strict";var Er=IT&&IT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(IT,"__esModule",{value:!0});var mtt=Er(_et()),htt=Er(Cet()),gtt=Er(Ese()),Att=Er(Qb()),ytt=Er(Pet()),xtt=Er(ket()),btt=Er(Det()),Ett=Er(Bet()),_tt=Er(Let()),Stt=Er(BL()),vtt=Er(Met()),Itt=Er(Wet()),Ctt=Er($et()),Ttt=Er(Fet()),wtt=Er(Uet()),Rtt=Er(qet()),Ntt=Er(jet()),Ott=Er(Het()),Ptt=Er(Ket()),ktt=Er(Vet()),Dtt=Er(Yet()),Btt=Er(Xet()),Ltt=Er(Zet()),Mtt=Er(xg()),Wtt=Er(ttt()),$tt=Er(rtt()),Ftt=Er(ntt()),Utt=Er(itt()),qtt=Er(ott()),jtt=Er(utt()),Htt=Er(ET()),Qtt=Er(ltt()),Gtt=Er(dtt()),Ktt=Er(ftt()),Vtt=Er(ptt());IT.default={_LIST:mtt.default,_list:mtt.default,ALTER:htt.default,alter:htt.default,AGGREGATE_WITHCURSOR:gtt.default,aggregateWithCursor:gtt.default,AGGREGATE:Att.default,aggregate:Att.default,ALIASADD:ytt.default,aliasAdd:ytt.default,ALIASDEL:xtt.default,aliasDel:xtt.default,ALIASUPDATE:btt.default,aliasUpdate:btt.default,CONFIG_GET:Ett.default,configGet:Ett.default,CONFIG_SET:_tt.default,configSet:_tt.default,CREATE:Stt.default,create:Stt.default,CURSOR_DEL:vtt.default,cursorDel:vtt.default,CURSOR_READ:Itt.default,cursorRead:Itt.default,DICTADD:Ctt.default,dictAdd:Ctt.default,DICTDEL:Ttt.default,dictDel:Ttt.default,DICTDUMP:wtt.default,dictDump:wtt.default,DROPINDEX:Rtt.default,dropIndex:Rtt.default,EXPLAIN:Ntt.default,explain:Ntt.default,EXPLAINCLI:Ott.default,explainCli:Ott.default,HYBRID:Ptt.default,hybrid:Ptt.default,INFO:ktt.default,info:ktt.default,PROFILESEARCH:Dtt.default,profileSearch:Dtt.default,PROFILEAGGREGATE:Btt.default,profileAggregate:Btt.default,SEARCH_NOCONTENT:Ltt.default,searchNoContent:Ltt.default,SEARCH:Mtt.default,search:Mtt.default,SPELLCHECK:Wtt.default,spellCheck:Wtt.default,SUGADD:$tt.default,sugAdd:$tt.default,SUGDEL:Ftt.default,sugDel:Ftt.default,SUGGET_WITHPAYLOADS:Utt.default,sugGetWithPayloads:Utt.default,SUGGET_WITHSCORES_WITHPAYLOADS:qtt.default,sugGetWithScoresWithPayloads:qtt.default,SUGGET_WITHSCORES:jtt.default,sugGetWithScores:jtt.default,SUGGET:Htt.default,sugGet:Htt.default,SUGLEN:Qtt.default,sugLen:Qtt.default,SYNDUMP:Gtt.default,synDump:Gtt.default,SYNUPDATE:Ktt.default,synUpdate:Ktt.default,TAGVALS:Vtt.default,tagVals:Vtt.default}});var Kse=E(ii=>{"use strict";var epr=ii&&ii.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ii,"__esModule",{value:!0});ii.FT_AGGREGATE_STEPS=ii.FT_AGGREGATE_GROUP_BY_REDUCERS=ii.SCHEMA_VECTOR_FIELD_ALGORITHM=ii.SCHEMA_TEXT_FIELD_PHONETIC=ii.SCHEMA_FIELD_TYPE=ii.REDISEARCH_LANGUAGE=ii.default=void 0;var tpr=ztt();Object.defineProperty(ii,"default",{enumerable:!0,get:function(){return epr(tpr).default}});var ML=BL();Object.defineProperty(ii,"REDISEARCH_LANGUAGE",{enumerable:!0,get:function(){return ML.REDISEARCH_LANGUAGE}});Object.defineProperty(ii,"SCHEMA_FIELD_TYPE",{enumerable:!0,get:function(){return ML.SCHEMA_FIELD_TYPE}});Object.defineProperty(ii,"SCHEMA_TEXT_FIELD_PHONETIC",{enumerable:!0,get:function(){return ML.SCHEMA_TEXT_FIELD_PHONETIC}});Object.defineProperty(ii,"SCHEMA_VECTOR_FIELD_ALGORITHM",{enumerable:!0,get:function(){return ML.SCHEMA_VECTOR_FIELD_ALGORITHM}});var Ytt=Qb();Object.defineProperty(ii,"FT_AGGREGATE_GROUP_BY_REDUCERS",{enumerable:!0,get:function(){return Ytt.FT_AGGREGATE_GROUP_BY_REDUCERS}});Object.defineProperty(ii,"FT_AGGREGATE_STEPS",{enumerable:!0,get:function(){return Ytt.FT_AGGREGATE_STEPS}})});var ai=E(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.transformRESP2LabelsWithSources=hr.transformRESP2Labels=hr.parseSelectedLabelsArguments=hr.resp3MapToValue=hr.resp2MapToValue=hr.transformSamplesReply=hr.transformSampleReply=hr.parseLabelsArgument=hr.transformTimestampArgument=hr.parseDuplicatePolicy=hr.TIME_SERIES_DUPLICATE_POLICIES=hr.parseChunkSizeArgument=hr.parseEncodingArgument=hr.TIME_SERIES_ENCODING=hr.parseRetentionArgument=hr.parseIgnoreArgument=void 0;var Vse=aT();function rpr(t,e){e!==void 0&&t.push("IGNORE",e.maxTimeDiff.toString(),e.maxValDiff.toString())}hr.parseIgnoreArgument=rpr;function npr(t,e){e!==void 0&&t.push("RETENTION",e.toString())}hr.parseRetentionArgument=npr;hr.TIME_SERIES_ENCODING={COMPRESSED:"COMPRESSED",UNCOMPRESSED:"UNCOMPRESSED"};function spr(t,e){e!==void 0&&t.push("ENCODING",e)}hr.parseEncodingArgument=spr;function ipr(t,e){e!==void 0&&t.push("CHUNK_SIZE",e.toString())}hr.parseChunkSizeArgument=ipr;hr.TIME_SERIES_DUPLICATE_POLICIES={BLOCK:"BLOCK",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM"};function apr(t,e){e!==void 0&&t.push("DUPLICATE_POLICY",e)}hr.parseDuplicatePolicy=apr;function opr(t){return typeof t=="string"?t:(typeof t=="number"?t:t.getTime()).toString()}hr.transformTimestampArgument=opr;function cpr(t,e){if(e){t.push("LABELS");for(let[r,n]of Object.entries(e))t.push(r,n)}}hr.parseLabelsArgument=cpr;hr.transformSampleReply={2(t){let[e,r]=t;return{timestamp:e,value:Number(r)}},3(t){let[e,r]=t;return{timestamp:e,value:r}}};hr.transformSamplesReply={2(t){return t.map(e=>hr.transformSampleReply[2](e))},3(t){return t.map(e=>hr.transformSampleReply[3](e))}};function upr(t,e,r){let n=t;switch(r?.[Vse.RESP_TYPES.MAP]){case Map:{let s=new Map;for(let i of n){let a=i,o=a[0];s.set(o.toString(),e(a))}return s}case Array:{for(let s of n){let i=s;i[1]=e(i)}return n}default:{let s=Object.create(null);for(let i of n){let a=i,o=a[0];s[o.toString()]=e(a)}return s}}}hr.resp2MapToValue=upr;function lpr(t,e){let r=t;if(r instanceof Array)for(let n=1;n{"use strict";Object.defineProperty(zse,"__esModule",{value:!0});var Gb=ai();zse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("TS.ADD"),t.pushKey(e),t.push((0,Gb.transformTimestampArgument)(r),n.toString()),(0,Gb.parseRetentionArgument)(t,s?.RETENTION),(0,Gb.parseEncodingArgument)(t,s?.ENCODING),(0,Gb.parseChunkSizeArgument)(t,s?.CHUNK_SIZE),s?.ON_DUPLICATE&&t.push("ON_DUPLICATE",s.ON_DUPLICATE),(0,Gb.parseLabelsArgument)(t,s?.LABELS),(0,Gb.parseIgnoreArgument)(t,s?.IGNORE)},transformReply:void 0}});var Xtt=E(Yse=>{"use strict";Object.defineProperty(Yse,"__esModule",{value:!0});var CT=ai();Yse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.ALTER"),t.pushKey(e),(0,CT.parseRetentionArgument)(t,r?.RETENTION),(0,CT.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,CT.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,CT.parseLabelsArgument)(t,r?.LABELS),(0,CT.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var Ztt=E(Jse=>{"use strict";Object.defineProperty(Jse,"__esModule",{value:!0});var Kb=ai();Jse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.CREATE"),t.pushKey(e),(0,Kb.parseRetentionArgument)(t,r?.RETENTION),(0,Kb.parseEncodingArgument)(t,r?.ENCODING),(0,Kb.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,Kb.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,Kb.parseLabelsArgument)(t,r?.LABELS),(0,Kb.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var Xse=E(TT=>{"use strict";Object.defineProperty(TT,"__esModule",{value:!0});TT.TIME_SERIES_AGGREGATION_TYPE=void 0;TT.TIME_SERIES_AGGREGATION_TYPE={AVG:"AVG",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM",RANGE:"RANGE",COUNT:"COUNT",COUNT_NAN:"COUNTNAN",COUNT_ALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S",TWA:"TWA"};TT.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("TS.CREATERULE"),t.pushKeys([e,r]),t.push("AGGREGATION",n,s.toString()),i!==void 0&&t.push(i.toString())},transformReply:void 0}});var Zse=E(RT=>{"use strict";Object.defineProperty(RT,"__esModule",{value:!0});RT.parseIncrByArguments=void 0;var wT=ai();function ert(t,e,r,n){t.pushKey(e),t.push(r.toString()),n?.TIMESTAMP!==void 0&&n?.TIMESTAMP!==null&&t.push("TIMESTAMP",(0,wT.transformTimestampArgument)(n.TIMESTAMP)),(0,wT.parseRetentionArgument)(t,n?.RETENTION),n?.UNCOMPRESSED&&t.push("UNCOMPRESSED"),(0,wT.parseChunkSizeArgument)(t,n?.CHUNK_SIZE),(0,wT.parseLabelsArgument)(t,n?.LABELS),(0,wT.parseIgnoreArgument)(t,n?.IGNORE)}RT.parseIncrByArguments=ert;RT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("TS.INCRBY"),ert(...t)},transformReply:void 0}});var trt=E(Pf=>{"use strict";var hpr=Pf&&Pf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),gpr=Pf&&Pf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Apr=Pf&&Pf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&hpr(e,t,r);return gpr(e,t),e};Object.defineProperty(Pf,"__esModule",{value:!0});var eie=Apr(Zse());Pf.default={IS_READ_ONLY:eie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.DECRBY"),(0,eie.parseIncrByArguments)(...t)},transformReply:eie.default.transformReply}});var nrt=E(tie=>{"use strict";Object.defineProperty(tie,"__esModule",{value:!0});var rrt=ai();tie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TS.DEL"),t.pushKey(e),t.push((0,rrt.transformTimestampArgument)(r),(0,rrt.transformTimestampArgument)(n))},transformReply:void 0}});var srt=E(rie=>{"use strict";Object.defineProperty(rie,"__esModule",{value:!0});rie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.DELETERULE"),t.pushKeys([e,r])},transformReply:void 0}});var irt=E(nie=>{"use strict";Object.defineProperty(nie,"__esModule",{value:!0});nie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.GET"),t.pushKey(e),r?.LATEST&&t.push("LATEST")},transformReply:{2(t){return t.length===0?null:{timestamp:t[0],value:Number(t[1])}},3(t){return t.length===0?null:{timestamp:t[0],value:t[1]}}}}});var iie=E(sie=>{"use strict";Object.defineProperty(sie,"__esModule",{value:!0});var ypr=Ce();sie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>{let n={};for(let s=0;s({name:a,value:o}));break;case"rules":n[i]=t[s+1].map(([a,o,c])=>({key:a,timeBucket:o,aggregationType:c}));break;case"ignoreMaxValDiff":n[i]=ypr.transformDoubleReply[2](t[27],void 0,r);break}}return n},3:void 0},unstableResp3:!0}});var art=E(NT=>{"use strict";var xpr=NT&&NT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(NT,"__esModule",{value:!0});var aie=xpr(iie());NT.default={IS_READ_ONLY:aie.default.IS_READ_ONLY,parseCommand(t,e){aie.default.parseCommand(t,e),t.push("DEBUG")},transformReply:{2:(t,e,r)=>{let n=aie.default.transformReply[2](t,e,r);for(let s=0;s({startTimestamp:a[1],endTimestamp:a[3],samples:a[5],size:a[7],bytesPerSample:a[9]}));break}}}return n},3:void 0},unstableResp3:!0}});var ort=E(oie=>{"use strict";Object.defineProperty(oie,"__esModule",{value:!0});var bpr=ai();oie.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TS.MADD");for(let{key:r,timestamp:n,value:s}of e)t.pushKey(r),t.push((0,bpr.transformTimestampArgument)(n),s.toString())},transformReply:void 0}});var Ul=E(bg=>{"use strict";Object.defineProperty(bg,"__esModule",{value:!0});bg.parseFilterArgument=bg.parseLatestArgument=void 0;var WL=ai();function crt(t,e){e&&t.push("LATEST")}bg.parseLatestArgument=crt;function urt(t,e){t.push("FILTER"),t.pushVariadic(e)}bg.parseFilterArgument=urt;bg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),crt(t,r?.LATEST),urt(t,e)},transformReply:{2(t,e,r){return(0,WL.resp2MapToValue)(t,([,,n])=>({sample:WL.transformSampleReply[2](n)}),r)},3(t){return(0,WL.resp3MapToValue)(t,([,e])=>({sample:WL.transformSampleReply[3](e)}))}}}});var cie=E(PT=>{"use strict";Object.defineProperty(PT,"__esModule",{value:!0});PT.createTransformMGetLabelsReply=void 0;var lrt=Ul(),OT=ai();function drt(){return{2(t,e,r){return(0,OT.resp2MapToValue)(t,([,n,s])=>({labels:(0,OT.transformRESP2Labels)(n),sample:OT.transformSampleReply[2](s)}),r)},3(t){return(0,OT.resp3MapToValue)(t,([e,r])=>({labels:e,sample:OT.transformSampleReply[3](r)}))}}}PT.createTransformMGetLabelsReply=drt;PT.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),(0,lrt.parseLatestArgument)(t,r?.LATEST),t.push("WITHLABELS"),(0,lrt.parseFilterArgument)(t,e)},transformReply:drt()}});var prt=E(uie=>{"use strict";Object.defineProperty(uie,"__esModule",{value:!0});var frt=Ul(),Epr=ai(),_pr=cie();uie.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TS.MGET"),(0,frt.parseLatestArgument)(t,n?.LATEST),(0,Epr.parseSelectedLabelsArguments)(t,r),(0,frt.parseFilterArgument)(t,e)},transformReply:(0,_pr.createTransformMGetLabelsReply)()}});var ql=E(kf=>{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});kf.transformRangeArguments=kf.parseRangeArguments=kf.TIME_SERIES_BUCKET_TIMESTAMP=void 0;var Eg=ai();kf.TIME_SERIES_BUCKET_TIMESTAMP={LOW:"-",MIDDLE:"~",END:"+"};function mrt(t,e,r,n){if(t.push((0,Eg.transformTimestampArgument)(e),(0,Eg.transformTimestampArgument)(r)),n?.LATEST&&t.push("LATEST"),n?.FILTER_BY_TS){t.push("FILTER_BY_TS");for(let s of n.FILTER_BY_TS)t.push((0,Eg.transformTimestampArgument)(s))}n?.FILTER_BY_VALUE&&t.push("FILTER_BY_VALUE",n.FILTER_BY_VALUE.min.toString(),n.FILTER_BY_VALUE.max.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.AGGREGATION&&(n?.ALIGN!==void 0&&t.push("ALIGN",(0,Eg.transformTimestampArgument)(n.ALIGN)),t.push("AGGREGATION",n.AGGREGATION.type,(0,Eg.transformTimestampArgument)(n.AGGREGATION.timeBucket)),n.AGGREGATION.BUCKETTIMESTAMP&&t.push("BUCKETTIMESTAMP",n.AGGREGATION.BUCKETTIMESTAMP),n.AGGREGATION.EMPTY&&t.push("EMPTY"))}kf.parseRangeArguments=mrt;function hrt(t,e,r,n,s){t.pushKey(e),mrt(t,r,n,s)}kf.transformRangeArguments=hrt;kf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TS.RANGE"),hrt(...t)},transformReply:{2(t){return Eg.transformSamplesReply[2](t)},3(t){return Eg.transformSamplesReply[3](t)}}}});var Vb=E(Iu=>{"use strict";Object.defineProperty(Iu,"__esModule",{value:!0});Iu.extractResp3MRangeSources=Iu.createTransformMRangeGroupByArguments=Iu.parseGroupByArguments=Iu.TIME_SERIES_REDUCERS=void 0;var $L=ai(),Spr=ql(),vpr=Ul();Iu.TIME_SERIES_REDUCERS={AVG:"AVG",SUM:"SUM",MIN:"MIN",MAX:"MAX",RANGE:"RANGE",COUNT:"COUNT",COUNTNAN:"COUNTNAN",COUNTALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S"};function grt(t,e){t.push("GROUPBY",e.label,"REDUCE",e.REDUCE)}Iu.parseGroupByArguments=grt;function Art(t){return(e,r,n,s,i,a)=>{e.push(t),(0,Spr.parseRangeArguments)(e,r,n,a),(0,vpr.parseFilterArgument)(e,s),grt(e,i)}}Iu.createTransformMRangeGroupByArguments=Art;function yrt(t){let e=t;return e instanceof Map?e.get("sources"):e instanceof Array?e[1]:e.sources}Iu.extractResp3MRangeSources=yrt;Iu.default={IS_READ_ONLY:!0,parseCommand:Art("TS.MRANGE"),transformReply:{2(t,e,r){return(0,$L.resp2MapToValue)(t,([n,s,i])=>({samples:$L.transformSamplesReply[2](i)}),r)},3(t){return(0,$L.resp3MapToValue)(t,([e,r,n,s])=>({sources:yrt(n),samples:$L.transformSamplesReply[3](s)}))}}}});var FL=E(kT=>{"use strict";Object.defineProperty(kT,"__esModule",{value:!0});kT.createTransformMRangeSelectedLabelsArguments=void 0;var zb=ai(),Ipr=ql(),Cpr=Ul();function xrt(t){return(e,r,n,s,i,a)=>{e.push(t),(0,Ipr.parseRangeArguments)(e,r,n,a),(0,zb.parseSelectedLabelsArguments)(e,s),(0,Cpr.parseFilterArgument)(e,i)}}kT.createTransformMRangeSelectedLabelsArguments=xrt;kT.default={IS_READ_ONLY:!0,parseCommand:xrt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,zb.resp2MapToValue)(t,([n,s,i])=>({labels:(0,zb.transformRESP2Labels)(s,r),samples:zb.transformSamplesReply[2](i)}),r)},3(t){return(0,zb.resp3MapToValue)(t,([e,r,n])=>({labels:r,samples:zb.transformSamplesReply[3](n)}))}}}});var die=E(_g=>{"use strict";var Tpr=_g&&_g.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_g,"__esModule",{value:!0});_g.createMRangeSelectedLabelsGroupByTransformArguments=void 0;var lie=ai(),wpr=ql(),brt=Vb(),Rpr=Ul(),Npr=Tpr(FL());function Ert(t){return(e,r,n,s,i,a,o)=>{e.push(t),(0,wpr.parseRangeArguments)(e,r,n,o),(0,lie.parseSelectedLabelsArguments)(e,s),(0,Rpr.parseFilterArgument)(e,i),(0,brt.parseGroupByArguments)(e,a)}}_g.createMRangeSelectedLabelsGroupByTransformArguments=Ert;_g.default={IS_READ_ONLY:!0,parseCommand:Ert("TS.MRANGE"),transformReply:{2:Npr.default.transformReply[2],3(t){return(0,lie.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,brt.extractResp3MRangeSources)(n),samples:lie.transformSamplesReply[3](s)}))}}}});var fie=E(BT=>{"use strict";Object.defineProperty(BT,"__esModule",{value:!0});BT.createMRangeWithLabelsGroupByTransformArguments=void 0;var DT=ai(),Opr=ql(),_rt=Vb(),Ppr=Ul();function Srt(t){return(e,r,n,s,i,a)=>{e.push(t),(0,Opr.parseRangeArguments)(e,r,n,a),e.push("WITHLABELS"),(0,Ppr.parseFilterArgument)(e,s),(0,_rt.parseGroupByArguments)(e,i)}}BT.createMRangeWithLabelsGroupByTransformArguments=Srt;BT.default={IS_READ_ONLY:!0,parseCommand:Srt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,DT.resp2MapToValue)(t,([n,s,i])=>{let a=(0,DT.transformRESP2LabelsWithSources)(s);return{labels:a.labels,sources:a.sources,samples:DT.transformSamplesReply[2](i)}},r)},3(t){return(0,DT.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,_rt.extractResp3MRangeSources)(n),samples:DT.transformSamplesReply[3](s)}))}}}});var pie=E(LT=>{"use strict";Object.defineProperty(LT,"__esModule",{value:!0});LT.createTransformMRangeWithLabelsArguments=void 0;var UL=ai(),kpr=ql(),Dpr=Ul();function vrt(t){return(e,r,n,s,i)=>{e.push(t),(0,kpr.parseRangeArguments)(e,r,n,i),e.push("WITHLABELS"),(0,Dpr.parseFilterArgument)(e,s)}}LT.createTransformMRangeWithLabelsArguments=vrt;LT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:vrt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,UL.resp2MapToValue)(t,([n,s,i])=>{let a=s,o=Object.create(null);for(let c of a){let[u,l]=c,d=u;o[d.toString()]=l}return{labels:o,samples:UL.transformSamplesReply[2](i)}},r)},3(t){return(0,UL.resp3MapToValue)(t,([e,r,n])=>({labels:e,samples:UL.transformSamplesReply[3](n)}))}}}});var mie=E(MT=>{"use strict";Object.defineProperty(MT,"__esModule",{value:!0});MT.createTransformMRangeArguments=void 0;var qL=ai(),Bpr=ql(),Lpr=Ul();function Irt(t){return(e,r,n,s,i)=>{e.push(t),(0,Bpr.parseRangeArguments)(e,r,n,i),(0,Lpr.parseFilterArgument)(e,s)}}MT.createTransformMRangeArguments=Irt;MT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:Irt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,qL.resp2MapToValue)(t,([n,s,i])=>qL.transformSamplesReply[2](i),r)},3(t){return(0,qL.resp3MapToValue)(t,([e,r,n])=>qL.transformSamplesReply[3](n))}}}});var Crt=E(Df=>{"use strict";var Mpr=Df&&Df.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Wpr=Df&&Df.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),$pr=Df&&Df.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Mpr(e,t,r);return Wpr(e,t),e};Object.defineProperty(Df,"__esModule",{value:!0});var hie=$pr(Vb());Df.default={IS_READ_ONLY:hie.default.IS_READ_ONLY,parseCommand:(0,hie.createTransformMRangeGroupByArguments)("TS.MREVRANGE"),transformReply:hie.default.transformReply}});var Trt=E(Bf=>{"use strict";var Fpr=Bf&&Bf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Upr=Bf&&Bf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qpr=Bf&&Bf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Fpr(e,t,r);return Upr(e,t),e};Object.defineProperty(Bf,"__esModule",{value:!0});var gie=qpr(die());Bf.default={IS_READ_ONLY:gie.default.IS_READ_ONLY,parseCommand:(0,gie.createMRangeSelectedLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:gie.default.transformReply}});var wrt=E(Lf=>{"use strict";var jpr=Lf&&Lf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Hpr=Lf&&Lf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Qpr=Lf&&Lf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jpr(e,t,r);return Hpr(e,t),e};Object.defineProperty(Lf,"__esModule",{value:!0});var Aie=Qpr(FL());Lf.default={IS_READ_ONLY:Aie.default.IS_READ_ONLY,parseCommand:(0,Aie.createTransformMRangeSelectedLabelsArguments)("TS.MREVRANGE"),transformReply:Aie.default.transformReply}});var Rrt=E(Mf=>{"use strict";var Gpr=Mf&&Mf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Kpr=Mf&&Mf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Vpr=Mf&&Mf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Gpr(e,t,r);return Kpr(e,t),e};Object.defineProperty(Mf,"__esModule",{value:!0});var yie=Vpr(fie());Mf.default={IS_READ_ONLY:yie.default.IS_READ_ONLY,parseCommand:(0,yie.createMRangeWithLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:yie.default.transformReply}});var Nrt=E(Wf=>{"use strict";var zpr=Wf&&Wf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ypr=Wf&&Wf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Jpr=Wf&&Wf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&zpr(e,t,r);return Ypr(e,t),e};Object.defineProperty(Wf,"__esModule",{value:!0});var jL=Jpr(pie());Wf.default={NOT_KEYED_COMMAND:jL.default.NOT_KEYED_COMMAND,IS_READ_ONLY:jL.default.IS_READ_ONLY,parseCommand:(0,jL.createTransformMRangeWithLabelsArguments)("TS.MREVRANGE"),transformReply:jL.default.transformReply}});var Ort=E($f=>{"use strict";var Xpr=$f&&$f.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Zpr=$f&&$f.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),e0r=$f&&$f.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Xpr(e,t,r);return Zpr(e,t),e};Object.defineProperty($f,"__esModule",{value:!0});var HL=e0r(mie());$f.default={NOT_KEYED_COMMAND:HL.default.NOT_KEYED_COMMAND,IS_READ_ONLY:HL.default.IS_READ_ONLY,parseCommand:(0,HL.createTransformMRangeArguments)("TS.MREVRANGE"),transformReply:HL.default.transformReply}});var Prt=E(xie=>{"use strict";Object.defineProperty(xie,"__esModule",{value:!0});xie.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.QUERYINDEX"),t.pushVariadic(e)},transformReply:{2:void 0,3:void 0}}});var krt=E(Ff=>{"use strict";var t0r=Ff&&Ff.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),r0r=Ff&&Ff.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),n0r=Ff&&Ff.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&t0r(e,t,r);return r0r(e,t),e};Object.defineProperty(Ff,"__esModule",{value:!0});var bie=n0r(ql());Ff.default={IS_READ_ONLY:bie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.REVRANGE"),(0,bie.transformRangeArguments)(...t)},transformReply:bie.default.transformReply}});var lnt=E(jl=>{"use strict";var s0r=jl&&jl.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),i0r=jl&&jl.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&s0r(e,t,r)},zr=jl&&jl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jl,"__esModule",{value:!0});var Drt=zr(Jtt()),Brt=zr(Xtt()),Lrt=zr(Ztt()),Mrt=zr(Xse()),Wrt=zr(trt()),$rt=zr(nrt()),Frt=zr(srt()),Urt=zr(irt()),qrt=zr(Zse()),jrt=zr(art()),Hrt=zr(iie()),Qrt=zr(ort()),Grt=zr(prt()),Krt=zr(cie()),Vrt=zr(Ul()),zrt=zr(Vb()),Yrt=zr(die()),Jrt=zr(FL()),Xrt=zr(fie()),Zrt=zr(pie()),ent=zr(mie()),tnt=zr(Crt()),rnt=zr(Trt()),nnt=zr(wrt()),snt=zr(Rrt()),int=zr(Nrt()),ant=zr(Ort()),ont=zr(Prt()),cnt=zr(ql()),unt=zr(krt());i0r(ai(),jl);jl.default={ADD:Drt.default,add:Drt.default,ALTER:Brt.default,alter:Brt.default,CREATE:Lrt.default,create:Lrt.default,CREATERULE:Mrt.default,createRule:Mrt.default,DECRBY:Wrt.default,decrBy:Wrt.default,DEL:$rt.default,del:$rt.default,DELETERULE:Frt.default,deleteRule:Frt.default,GET:Urt.default,get:Urt.default,INCRBY:qrt.default,incrBy:qrt.default,INFO_DEBUG:jrt.default,infoDebug:jrt.default,INFO:Hrt.default,info:Hrt.default,MADD:Qrt.default,mAdd:Qrt.default,MGET_SELECTED_LABELS:Grt.default,mGetSelectedLabels:Grt.default,MGET_WITHLABELS:Krt.default,mGetWithLabels:Krt.default,MGET:Vrt.default,mGet:Vrt.default,MRANGE_GROUPBY:zrt.default,mRangeGroupBy:zrt.default,MRANGE_SELECTED_LABELS_GROUPBY:Yrt.default,mRangeSelectedLabelsGroupBy:Yrt.default,MRANGE_SELECTED_LABELS:Jrt.default,mRangeSelectedLabels:Jrt.default,MRANGE_WITHLABELS_GROUPBY:Xrt.default,mRangeWithLabelsGroupBy:Xrt.default,MRANGE_WITHLABELS:Zrt.default,mRangeWithLabels:Zrt.default,MRANGE:ent.default,mRange:ent.default,MREVRANGE_GROUPBY:tnt.default,mRevRangeGroupBy:tnt.default,MREVRANGE_SELECTED_LABELS_GROUPBY:rnt.default,mRevRangeSelectedLabelsGroupBy:rnt.default,MREVRANGE_SELECTED_LABELS:nnt.default,mRevRangeSelectedLabels:nnt.default,MREVRANGE_WITHLABELS_GROUPBY:snt.default,mRevRangeWithLabelsGroupBy:snt.default,MREVRANGE_WITHLABELS:int.default,mRevRangeWithLabels:int.default,MREVRANGE:ant.default,mRevRange:ant.default,QUERYINDEX:ont.default,queryIndex:ont.default,RANGE:cnt.default,range:cnt.default,REVRANGE:unt.default,revRange:unt.default}});var _ie=E(Ki=>{"use strict";var a0r=Ki&&Ki.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ki,"__esModule",{value:!0});Ki.TIME_SERIES_REDUCERS=Ki.TIME_SERIES_BUCKET_TIMESTAMP=Ki.TIME_SERIES_AGGREGATION_TYPE=Ki.TIME_SERIES_DUPLICATE_POLICIES=Ki.TIME_SERIES_ENCODING=Ki.default=void 0;var Eie=lnt();Object.defineProperty(Ki,"default",{enumerable:!0,get:function(){return a0r(Eie).default}});Object.defineProperty(Ki,"TIME_SERIES_ENCODING",{enumerable:!0,get:function(){return Eie.TIME_SERIES_ENCODING}});Object.defineProperty(Ki,"TIME_SERIES_DUPLICATE_POLICIES",{enumerable:!0,get:function(){return Eie.TIME_SERIES_DUPLICATE_POLICIES}});var o0r=Xse();Object.defineProperty(Ki,"TIME_SERIES_AGGREGATION_TYPE",{enumerable:!0,get:function(){return o0r.TIME_SERIES_AGGREGATION_TYPE}});var c0r=ql();Object.defineProperty(Ki,"TIME_SERIES_BUCKET_TIMESTAMP",{enumerable:!0,get:function(){return c0r.TIME_SERIES_BUCKET_TIMESTAMP}});var u0r=Vb();Object.defineProperty(Ki,"TIME_SERIES_REDUCERS",{enumerable:!0,get:function(){return u0r.TIME_SERIES_REDUCERS}})});var dnt=E(gs=>{"use strict";var l0r=gs&&gs.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),WT=gs&&gs.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&l0r(e,t,r)},QL=gs&&gs.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gs,"__esModule",{value:!0});gs.createSentinel=gs.createCluster=gs.createClientPool=gs.createClient=void 0;var GL=aT(),d0r=QL(jne()),f0r=QL(hse()),p0r=QL(Kse()),m0r=QL(_ie());WT(aT(),gs);WT(jne(),gs);WT(hse(),gs);WT(Kse(),gs);WT(_ie(),gs);var KL={...d0r.default,json:f0r.default,ft:p0r.default,ts:m0r.default};function h0r(t){return(0,GL.createClient)({...t,modules:{...KL,...t?.modules}})}gs.createClient=h0r;function g0r(t,e){return(0,GL.createClientPool)({...t,modules:{...KL,...t?.modules}},e)}gs.createClientPool=g0r;function A0r(t){return(0,GL.createCluster)({...t,modules:{...KL,...t?.modules}})}gs.createCluster=A0r;function y0r(t){return(0,GL.createSentinel)({...t,modules:{...KL,...t?.modules}})}gs.createSentinel=y0r});var YL={};is(YL,{closeLocalRedisConnection:()=>_0r,getLocalRedisCaches:()=>b0r,getLocalRedisKey:()=>fnt,judgeLocalRedisValid:()=>E0r,setLocalRedisKey:()=>VL,setLocalRedisKeyWithExpiry:()=>x0r,updateLocalRedisCaches:()=>zL});async function Yb(){if(rs)return rs;let t=O.localRedisUrl;try{_("info","[Utils] [Local-Redis] \u6B63\u5728\u8FDE\u63A5\u672C\u5730 Redis");let{createClient:e}=await Promise.resolve().then(()=>Re(dnt(),1));return rs=e({url:t,socket:{reconnectStrategy:r=>r>=0?new Error("\u5DF2\u8FBE\u5230\u6700\u5927\u91CD\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u91CD\u8FDE"):1e3}}),rs.on("error",r=>{_("error","[Utils] [Local-Redis] \u8FDE\u63A5\u9519\u8BEF"),O.localRedisValid=!1}),rs.on("connect",()=>{_("info","[Utils] [Local-Redis] \u8FDE\u63A5\u6210\u529F")}),await rs.connect(),O.localRedisValid=!0,_("info","[Utils] [Local-Redis] Redis \u5BA2\u6237\u7AEF\u521D\u59CB\u5316\u5B8C\u6210"),rs}catch(e){return _("error","[Utils] [Local-Redis] \u521D\u59CB\u5316\u5931\u8D25:",e.message),O.localRedisValid=!1,null}}async function Jb(){if(!rs)return!1;try{return await rs.ping()==="PONG"}catch(t){return _("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",t.message),O.localRedisValid=!1,!1}}async function fnt(t){try{if(await Jb()||await Yb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");return await rs.get(t)}catch(e){return _("error","[Utils] [Local-Redis] GET \u8BF7\u6C42\u5931\u8D25:",e.message),null}}async function VL(t,e){let r=db(t,e),n=an(r);if(O.lastHashes[t]===n)return _("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};try{if(await Jb()||await Yb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let s=await rs.set(t,r);return O.lastHashes[t]=n,_("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),{result:s}}catch(s){return _("error","[Utils] [Local-Redis] SET \u8BF7\u6C42\u5931\u8D25:",s.message),{result:"ERROR"}}}async function x0r(t,e,r){let n=db(t,e),s=an(n);if(O.lastHashes[t]===s)return _("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};try{if(await Jb()||await Yb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let i=await rs.setEx(t,r,n);return O.lastHashes[t]=s,_("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),{result:i}}catch(i){return _("error","[Utils] [Local-Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",i.message),{result:"ERROR"}}}async function b0r(){if(!O.localCacheInitialized)try{if(_("info","[Utils] [Local-Redis] getLocalRedisCaches start."),await Jb()||await Yb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"],e=await Promise.all(t.map(n=>fnt(n)));O.animes=e[0]?JSON.parse(e[0]):O.animes,O.episodeIds=e[1]?JSON.parse(e[1]):O.episodeIds,O.episodeNum=e[2]?JSON.parse(e[2]):O.episodeNum,O.reqRecords=e[3]?JSON.parse(e[3]):O.reqRecords;let r=e[4]?JSON.parse(e[4]):null;r&&typeof r=="object"&&(O.lastSelectMap=new Map(Object.entries(r)),_("info",`[Utils] [Local-Redis] Restored lastSelectMap from Local Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=e[5]?parseInt(e[5],10):O.todayReqNum,O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.localCacheInitialized=!0,_("info","[Utils] [Local-Redis] getLocalRedisCaches completed successfully.")}catch(t){_("error",`[Utils] [Local-Redis] getLocalRedisCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function zL(){try{if(_("info","[Utils] [Local-Redis] updateLocalRedisCaches start."),await Jb()||await Yb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=an(s);i!==O.lastHashes[r]&&t.push({key:r,value:n,hash:i})}if(t.length>0){_("info",`[Utils] [Local-Redis] Updating ${t.length} changed keys: ${t.map(a=>a.key).join(", ")}`);let r=t.map(async({key:a,value:o})=>VL(a,o)),n=await Promise.all(r),s=0,i=0;n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,_("warn",`[Utils] [Local-Redis] Failed to update Local Redis key: ${t[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(t.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),_("info",`[Utils] [Local-Redis] Local Redis update completed successfully: ${s} keys updated`)):_("warn",`[Utils] [Local-Redis] Local Redis update partially failed: ${s} succeeded, ${i} failed`)}else _("info","[Utils] [Local-Redis] No changes detected, skipping Local Redis update.")}catch(t){_("error",`[Utils] [Local-Redis] updateLocalRedisCaches failed: ${t.message}`,t.stack),_("error",`[Utils] [Local-Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function E0r(t){if(!O.localRedisValid&&O.localRedisUrl&&t!=="/favicon.ico"&&t!=="/robots.txt")try{await Jb()||await Yb(),rs&&await rs.ping()==="PONG"&&(O.localRedisValid=!0)}catch(e){_("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",e.message),O.localRedisValid=!1}}async function _0r(){if(rs)try{await rs.quit(),rs=null,O.localRedisValid=!1,_("info","[Utils] [Local-Redis] \u8FDE\u63A5\u5DF2\u5173\u95ED")}catch(t){_("error","[Utils] [Local-Redis] \u5173\u95ED\u8FDE\u63A5\u5931\u8D25:",t.message)}}var rs,$T=lr(()=>{Ot();_t();Ts();rs=null});var Lo,sE=lr(()=>{Ot();_t();Lo=class{constructor(){}updateLocalEnv(e,r){return typeof O.env<"u"?O.env[e]=r:typeof process<"u"&&(process.env[e]=r),O.reInit(),_("info",`[system] [Server] \u2713 Environment variable updated successfully: ${e}`),!0}delLocalEnv(e){return typeof O.env<"u"&&O.env[e]?delete O.env[e]:typeof process<"u"&&process.env?.[e]&&delete process.env[e],O.reInit(),_("info",`[system] [Server] \u2713 Environment variable deleted successfully: ${e}`),!0}getAllEnv(){let e=O.originalEnvVars,r=O.envVarConfig,n={};for(let[s,i]of Object.entries(e)){let a=r[s]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"};n[s]={value:i,category:a.category,type:a.type,description:a.description,options:a.options}}return n}getEnv(e){return this.getAllEnv()[e]}async setEnv(e,r){throw new Error("Method 'setEnv' must be implemented")}async addEnv(e,r){throw new Error("Method 'addEnv' must be implemented")}async delEnv(e){throw new Error("Method 'delEnv' must be implemented")}async checkParams(e,r,n){throw new Error("Method 'checkParams' must be implemented")}async deploy(e,r,n){throw new Error("Method 'deploy' must be implemented")}}});var Qst={};is(Qst,{CloudflareHandler:()=>jie});var jie,Gst=lr(()=>{sE();Ot();_t();ir();jie=class extends Lo{API_URL="https://api.cloudflare.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/client/v4/accounts/${e}/workers/scripts/${r}/settings`,i={headers:{Authorization:`Bearer ${n}`}},a=await ge(s,i);return a&&a?.data&&a?.data?.result&&a?.data?.result?.bindings?a?.data?.result?.bindings:null}_setEnv(e,r,n){let s=e.findIndex(i=>i.name===r);return n==null?s!==-1&&e.splice(s,1):s!==-1?e[s].text=n:e.push({name:r,text:n,type:"plain_text"}),e}async setEnv(e,r){try{let n=await this._getAllEnvs(O.deployPlatformAccount,O.deployPlatformProject,O.deployPlatformToken);if(n===null){_("error","[system] [Server] \u2717 Failed to set environment variable: envs is null");return}let s=`${this.API_URL}/client/v4/accounts/${O.deployPlatformAccount}/workers/scripts/${O.deployPlatformProject}/settings`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},a=new FormData,o={bindings:this._setEnv(n,e,r==null?null:r.toString())};return a.append("settings",new Blob([JSON.stringify(o)],{type:"application/json"}),"settings.json"),await wB(s,a,i),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){return await this.setEnv(e,null),this.delLocalEnv(e)}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){return _("info","[system] [Server] After modifying the environment variables on the cloudflare platform, it will be automatically deployed."),!0}}});var Kst={};is(Kst,{VercelHandler:()=>Hie});var Hie,Vst=lr(()=>{sE();Ot();_t();ir();Hie=class extends Lo{API_URL="https://api.vercel.com";async _getAllEnvs(e,r){let n=`${this.API_URL}/v10/projects/${e}/env`,s={headers:{Authorization:`Bearer ${r}`}};return(await ge(n,s)).data.envs}async _getEevId(e){try{let n=(await this._getAllEnvs(O.deployPlatformProject,O.deployPlatformToken)).find(s=>s.key===e);return n||null}catch(r){_("error","[system] [Server] \u2717 Failed to _getEevId:",r.message)}}async setEnv(e,r){let n=await this._getEevId(e);if(!n){_("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let s=`${this.API_URL}/v9/projects/${O.deployPlatformProject}/env/${n.id}`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},a={key:e,value:r.toString(),target:n.target,type:n.type};return await wB(s,JSON.stringify(a),i),this.updateLocalEnv(e,r)}catch(s){_("error","[system] [Server] \u2717 Failed to set environment variable:",s.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/v10/projects/${O.deployPlatformProject}/env`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,value:r.toString(),target:["production","preview","development"],type:"encrypted"};return await Kr(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){let r=await this._getEevId(e);if(!r){_("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let n=`${this.API_URL}/v9/projects/${O.deployPlatformProject}/env/${r.id}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await ub(n,s),this.delLocalEnv(e)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/v6/deployments?projectId=${O.deployPlatformProject}&limit=1`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},n=await ge(e,r),s;if(n?.data&&n?.data?.deployments&&n?.data?.deployments.length>0)s=n.data.deployments[0].uid;else return _("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(n?.data)),!1;let i=`${this.API_URL}/v13/deployments`,a={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},o={name:O.deployPlatformProject,deploymentId:s,target:"production"},c=await Kr(i,JSON.stringify(o),a);return c?.data?.id?!0:(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(c?.data)),!1)}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var zst={};is(zst,{NetlifyHandler:()=>Qie});var Qie,Yst=lr(()=>{sE();Ot();_t();ir();Qie=class extends Lo{API_URL="https://api.netlify.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/api/v1/accounts/${e}/env?site_id=${r}`,i={headers:{Authorization:`Bearer ${n}`}};return await ge(s,i)}async setEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,values:[{context:"all",value:r.toString()}]};return await b8e(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Kr(n,JSON.stringify([{key:e,values:[{context:"all",value:r}]}]),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){try{let r=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,n={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await ub(r,n),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to add environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/v1/sites/${O.deployPlatformProject}/builds`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},s=await Kr(e,JSON.stringify({}),r);return s?.data?.id?!0:(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(s?.data)),!1)}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var Jst={};is(Jst,{EdgeoneHandler:()=>Gie});var Gie,Xst=lr(()=>{sE();Ot();_t();ir();Gie=class extends Lo{API_URL="https://pages-api.cloud.tencent.com/v1";async _httpPost(e,r){let n=`${this.API_URL}`,s={headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}};return await Kr(n,JSON.stringify(r),s)}async _getAllEnvs(e,r){let n={Action:"ModifyPagesProjectEnvs",ProjectId:e},s=await this._httpPost(r,n);if(s?.data?.Code!==0)return null;let i=s?.data.Data?.Response?.EnvVars??[];return Object.fromEntries(i.map(({Key:a,Value:o})=>[a,o]))}async setEnv(e,r){try{let n={Action:"ModifyPagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[{Key:e,Value:r.toString()}]};return await this._httpPost(O.deployPlatformToken,n),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r={Action:"DeletePagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[e]};return await this._httpPost(O.deployPlatformToken,r),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e={Action:"CreatePagesDeployment",ProjectId:O.deployPlatformProject,RepoBranch:"main",ViaMeta:"Github",Provider:"Github"},r=await this._httpPost(O.deployPlatformToken,e);return r?.data?.Code!==0?(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(r?.data)),!1):!0}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var Zst={};is(Zst,{HuggingfaceHandler:()=>Kie});var Kie,eit=lr(()=>{sE();Ot();_t();ir();Kie=class extends Lo{API_URL="https://huggingface.co";get repoId(){return`${O.deployPlatformAccount}/${O.deployPlatformProject}`}_getOptions(e=O.deployPlatformToken){return{headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}}}_getVariablesUrl(e){return`${this.API_URL}/api/spaces/${e}/variables`}async _getAllEnvs(e,r,n){let s=`${e}/${r}`,i=this._getVariablesUrl(s);return(await ge(i,this._getOptions(n)))?.data}async setEnv(e,r){try{let n=this._getVariablesUrl(this.repoId),s={key:e,value:r.toString()};return await Kr(n,JSON.stringify(s),this._getOptions()),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r=this._getVariablesUrl(this.repoId);return await ub(r,{...this._getOptions(),body:JSON.stringify({key:e})}),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/spaces/${this.repoId}/restart`;return await Kr(e,void 0,this._getOptions()),!0}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var Hlt=E(cA=>{"use strict";Object.defineProperty(cA,"__esModule",{value:!0});cA.removeTrailingChar=cA.merge=void 0;var UTr=(...t)=>{let e={};return t.forEach(function(r){var n;for(n in r)n in e&&e[n]===null?e[n]=r[n]:n in e&&Array.isArray(e[n])?e[n]=e[n].concat(r[n]):n in e&&typeof e[n]=="object"?e[n]=(0,cA.merge)(e[n],r[n]):e[n]=r[n]}),e};cA.merge=UTr;var qTr=(t,e)=>t.length>1&&t.endsWith(e)?t.substring(0,t.length-1):t;cA.removeTrailingChar=qTr});var PE=E(cm=>{"use strict";Object.defineProperty(cm,"__esModule",{value:!0});cm.DataError=cm.DatabaseError=cm.NestedError=void 0;var n2=class extends Error{inner;id;constructor(e,r,n){super(e),this.inner=n,this.id=r,this.name=this.constructor.name}toString(){let e=this.name+": "+this.message;return this.inner?e+`: -`+this.inner:e}};cm.NestedError=n2;var aue=class extends n2{};cm.DatabaseError=aue;var oue=class extends n2{};cm.DataError=oue});var fue=E(Sa=>{"use strict";Object.defineProperty(Sa,"__esModule",{value:!0});Sa.getArrayIndicies=Sa.validateArrayIndex=Sa.validateArrayIndicies=Sa.isInt=Sa.ArrayInfo=Sa.arrayRegex=void 0;var kM=PE(),jTr=()=>/^([\.0-9a-zA-Z_$\-][0-9a-zA-Z_\-$\.]*)\[((?!(\]|\[)).*|)\]$/gm;Sa.arrayRegex=jTr;var cue={},uue=class t{property;index=0;append=!1;indicies=[];constructor(e,r){this.property=e;let n=r[0]??0;if(this.append=n===""||r[r.length-1]==="",this.indicies=r,lue(n))this.index=parseInt(n);else if(!this.append)throw new kM.DataError("Only numerical values accepted for array index",200)}static processArray(e){if(typeof e>"u")return null;if(cue[e])return cue[e];let n=(0,Sa.arrayRegex)().exec(e.trim());if(n!=null){let s=n[1],i="["+n[2].toString()+"]",a=due(i);return Qlt(a),cue[e]=new t(s,a)}return null}getIndex(e,r){if(this.append)return-1;let n=this.index;if(n==-1){let s=r?e:e[this.property];return s.length===0?0:s.length-1}return n}getData(e){if(this.append)throw new kM.DataError("Can't get data when appending",100);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n[r]}setData(e,r){if(this.append){let n=e[this.property];this.indicies.forEach(s=>{s!==""&&(s=+s,s===-1&&(s=n.length-1),n=n[+s])}),n.push(r)}else{let{index:n,dataForProperty:s}=this.getArrayDataAndIndexFromProperty(e);n===-1?s.push(r):s[n]=r}}delete(e){if(this.append)throw new kM.DataError("Can't delete an appended data",10);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);n.splice(r,1)}isValid(e){let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n.hasOwnProperty(r)}getArrayDataAndIndexFromProperty(e){let r=0,n=e instanceof Array?e:e[this.property]??e;if(this.indicies.length>0){r=+this.indicies[this.indicies.length-1];for(let s=0;s1}};Sa.ArrayInfo=uue;function lue(t){return!isNaN(t)&&Number(t)==t&&!isNaN(parseInt(t,10))}Sa.isInt=lue;function Qlt(t){let e=t.filter(r=>r==="");if(e.length>1)throw Error("Only one append index is supported for nested arrays");if(e.length===1&&t[t.length-1]!=="")throw Error("Append index must be at the end of the nested array")}Sa.validateArrayIndicies=Qlt;function Glt(t){if(t.length!==0&&!lue(t))throw new kM.DataError("Only numerical values accepted for array index",200)}Sa.validateArrayIndex=Glt;function due(t){if(t.length===0)return[];if(t.charAt(0)!=="[")throw new Error("Invalid array syntax detected");let e=t.substring(1,t.indexOf("]"));Glt(e);let r=e.length+2;return[e,...due(t.substring(r))]}Sa.getArrayIndicies=due});var zlt=E(DM=>{"use strict";Object.defineProperty(DM,"__esModule",{value:!0});DM.DBParentData=void 0;var Klt=fue(),Vlt=PE(),pue=class{parent;data;db;dataPath;constructor(e,r,n,s){this.parent=s,this.data=e,this.db=r,this.dataPath=n}checkArray(e=!1){let r=Klt.ArrayInfo.processArray(this.parent);if(r&&(!r.append||e)&&!r.isValid(this.data))throw new Vlt.DataError("DataPath: /"+this.dataPath+". Can't find index "+r.index+" in array "+r.property,10);return r}getData(){if(this.parent===void 0)return this.data;let e=this.checkArray();return e?e.getData(this.data):this.data[this.parent]}setData(e){if(this.parent===void 0){this.db.resetData(e);return}let r=Klt.ArrayInfo.processArray(this.parent);if(r){if(!this.data.hasOwnProperty(r.property))this.data[r.property]=[];else if(!Array.isArray(this.data[r.property]))throw new Vlt.DataError("DataPath: /"+this.dataPath+". "+r.property+" is not an array.",11);r.setData(this.data,e)}else this.data[this.parent]=e}delete(){if(this.parent===void 0){this.db.resetData({});return}let e=this.checkArray(!0);e?e.delete(this.data):delete this.data[this.parent]}};DM.DBParentData=pue});var Jlt=E((a0n,Ylt)=>{Ylt.exports=function(){"use strict";function t(){this.readers=0,this.queue=[]}function e(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!0,c.readers--,c.queue.length&&c.queue[0]())}}();if(c.readers<0||c.queue.length){var d=!1;if(c.queue.push(function(){!d&&c.readers>=0&&(d=!0,c.queue.shift(),c.readers++,a.call(u,l),c.queue.length&&c.queue[0]())}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(o.scope))},o.timeout)}}else c.readers++,a.call(o.scope,l)}function r(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!0,c.readers=0,c.queue.length&&c.queue[0]())}}();if(c.readers||c.queue.length){var d=!1;if(c.queue.push(function(){d||c.readers||(d=!0,c.queue.shift(),c.readers=-1,a.call(o.scope,l))}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(u))},o.timeout)}}else c.readers=-1,a.call(o.scope,l)}var n=new t,s={};this.readLock=e,this.writeLock=r,this.async={readLock:function(i,a,o){typeof i!="function"?e(i,function(c){a.call(this,null,c)},o):(a=i,o=a,e(function(c){a.call(this,null,c)},o))},writeLock:function(i,a,o){typeof i!="function"?r(i,function(c){a.call(this,null,c)},o):(a=i,o=a,r(function(c){a.call(this,null,c)},o))}}}});var Xlt=E(BM=>{"use strict";Object.defineProperty(BM,"__esModule",{value:!0});BM.TimeoutError=void 0;var HTr=PE(),mue=class extends HTr.NestedError{};BM.TimeoutError=mue});var tdt=E(kE=>{"use strict";Object.defineProperty(kE,"__esModule",{value:!0});kE.writeLockAsync=kE.readLockAsync=void 0;var QTr=Jlt(),Zlt=Xlt(),edt=new QTr,GTr=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{edt.readLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new Zlt.TimeoutError("Timeout",100))}})})};kE.readLockAsync=GTr;var KTr=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{edt.writeLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new Zlt.TimeoutError("Timeout",100))}})})};kE.writeLockAsync=KTr});var gue=E(LM=>{"use strict";Object.defineProperty(LM,"__esModule",{value:!0});LM.JsonAdapter=void 0;var hue=class{adapter;humanReadable;dateRegex=new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}","m");constructor(e,r=!1){this.adapter=e,this.humanReadable=r}replacer(e,r){return r}reviver(e,r){return typeof r=="string"&&this.dateRegex.exec(r)!=null?new Date(r):r}async readAsync(){let e=await this.adapter.readAsync();return e==null?(await this.writeAsync({}),{}):JSON.parse(e,this.reviver.bind(this))}writeAsync(e){let r="";return this.humanReadable?r=JSON.stringify(e,this.replacer.bind(this),4):r=JSON.stringify(e,this.replacer.bind(this)),this.adapter.writeAsync(r)}};LM.JsonAdapter=hue});var yue=E(WM=>{"use strict";Object.defineProperty(WM,"__esModule",{value:!0});WM.FileAdapter=void 0;var MM=require("fs/promises"),VTr=require("path"),Aue=class{filename;fsync;constructor(e,r){this.filename=e,this.fsync=r}async readAsync(){try{return await(0,MM.readFile)(this.filename,{encoding:"utf-8"})}catch(e){if(e.code==="ENOENT")return null;throw e}}async writeAsync(e){let r=null;try{r=await(0,MM.open)(this.filename,"w")}catch(n){if(n.code!=="ENOENT")throw n;let s=VTr.dirname(this.filename);await(0,MM.mkdir)(s,{recursive:!0}),r=await(0,MM.open)(this.filename,"w")}try{await r.writeFile(e,{encoding:"utf-8"}),this.fsync&&await r.sync()}finally{await r.close()}}};WM.FileAdapter=Aue});var rdt=E(DE=>{"use strict";Object.defineProperty(DE,"__esModule",{value:!0});DE.ConfigWithAdapter=DE.Config=void 0;var zTr=require("path"),YTr=gue(),JTr=yue(),xue=class{adapter;filename;saveOnPush;separator;constructor(e,r=!0,n=!1,s="/",i=!1){this.filename=e,zTr.extname(e)===""&&(this.filename+=".json"),this.saveOnPush=r,this.separator=s,this.adapter=new YTr.JsonAdapter(new JTr.FileAdapter(this.filename,i),n)}};DE.Config=xue;var bue=class{adapter;saveOnPush;separator;constructor(e,r=!0,n="/"){this.adapter=e,this.saveOnPush=r,this.separator=n}};DE.ConfigWithAdapter=bue});var adt=E(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.JsonDB=Ji.FileAdapter=Ji.JsonAdapter=Ji.DataError=Ji.DatabaseError=Ji.ConfigWithAdapter=Ji.Config=void 0;var ndt=Hlt(),Yi=PE(),XTr=zlt(),ZTr=fue(),Eue=tdt(),sdt=rdt();Object.defineProperty(Ji,"Config",{enumerable:!0,get:function(){return sdt.Config}});Object.defineProperty(Ji,"ConfigWithAdapter",{enumerable:!0,get:function(){return sdt.ConfigWithAdapter}});var idt=PE();Object.defineProperty(Ji,"DatabaseError",{enumerable:!0,get:function(){return idt.DatabaseError}});Object.defineProperty(Ji,"DataError",{enumerable:!0,get:function(){return idt.DataError}});var ewr=gue();Object.defineProperty(Ji,"JsonAdapter",{enumerable:!0,get:function(){return ewr.JsonAdapter}});var twr=yue();Object.defineProperty(Ji,"FileAdapter",{enumerable:!0,get:function(){return twr.FileAdapter}});var _ue=class{loaded=!1;data={};config;constructor(e){this.config=e}processDataPath(e){if(e===void 0||!e.trim())throw new Yi.DataError("The Data Path can't be empty",6);if(e==this.config.separator)return[];e=(0,ndt.removeTrailingChar)(e,this.config.separator);let r=e.split(this.config.separator);return r.shift(),r}async retrieveData(e,r=!1){await this.load();let n=this,s=(i,a)=>{let o=e[a];function c(l=!1){if(i.hasOwnProperty(o))i=i[o];else if(r)l?i[o]=[]:i[o]={},i=i[o];else throw new Yi.DataError(`Can't find dataPath: ${n.config.separator}${e.join(n.config.separator)}. Stopped at ${o}`,5)}let u=ZTr.ArrayInfo.processArray(o);if(u){if(o=u.property,c(!0),!Array.isArray(i))throw new Yi.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. ${o} is not an array.`,11);let l=u.getIndex(i,!0);if(!u.append&&i.hasOwnProperty(l))i=u.getData(i);else if(r)u.append?(i.push({}),i=i[i.length-1]):(i[l]={},i=i[l]);else throw new Yi.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. . Can't find index ${u.index} in array ${o}`,10)}else c();return e.length==++a?i:s(i,a)};return e.length===0?this.data:s(this.data,0)}async getParentData(e,r){let n=this.processDataPath(e),s=n.pop();return new XTr.DBParentData(await this.retrieveData(n,r),this,e,s)}getData(e){return(0,Eue.readLockAsync)(async()=>{let r=this.processDataPath(e);return this.retrieveData(r,!1)})}getObject(e){return this.getData(e)}async getObjectDefault(e,r){try{return await this.getData(e)}catch(n){if(!(n instanceof Yi.DataError)||n.id!=5)throw n;return r}}async exists(e){try{return await this.getData(e),!0}catch(r){if(r instanceof Yi.DataError)return!1;throw r}}async count(e){let r=await this.getData(e);if(!Array.isArray(r))throw new Yi.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return(await this.retrieveData(n,!1)).length}async getIndex(e,r,n="id"){return(await this.getArrayData(e)).map(function(i){return i[n]}).indexOf(r)}async getIndexValue(e,r){return(await this.getArrayData(e)).indexOf(r)}async getArrayData(e){let r=await this.getData(e);if(!Array.isArray(r))throw new Yi.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return this.retrieveData(n,!1)}async filter(e,r){let n=await this.getData(e);if(Array.isArray(n))return n.filter(r);if(n instanceof Object){let i=Object.entries(n).filter(a=>r(a[1],a[0]));return!i||i.length<1?void 0:i.map(a=>a[1])}throw new Yi.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async find(e,r){let n=await this.getData(e);if(Array.isArray(n))return n.find(r);if(n instanceof Object){let i=Object.entries(n).find(a=>r(a[1],a[0]));return!i||i.length<2?void 0:i[1]}throw new Yi.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async push(e,r,n=!0){return(0,Eue.writeLockAsync)(async()=>{let s=await this.getParentData(e,!0),i=r;if(!n){if(Array.isArray(r)){let a=s.getData();if(a===void 0)a=[];else if(!Array.isArray(a))throw new Yi.DataError("Can't merge another type of data with an Array",3);i=a.concat(r)}else if(r===Object(r)){if(Array.isArray(s.getData()))throw new Yi.DataError("Can't merge an Array with an Object",4);i=(0,ndt.merge)(s.getData(),r)}}s.setData(i),this.config.saveOnPush&&await this.save()})}async delete(e){await(0,Eue.writeLockAsync)(async()=>{(await this.getParentData(e,!0)).delete(),this.config.saveOnPush&&await this.save()})}resetData(e){this.data=e}async reload(){this.loaded=!1,await this.load()}async load(){if(!this.loaded)try{this.data=await this.config.adapter.readAsync(),this.loaded=!0}catch(e){throw new Yi.DatabaseError("Can't Load Database",1,e)}}async save(e){if(e=e||!1,!e&&!this.loaded)throw new Yi.DatabaseError("DataBase not loaded. Can't write",7);try{await this.config.adapter.writeAsync(this.data)}catch(r){throw new Yi.DatabaseError("Can't save the database",2,r)}}async fromPath(e,r="id"){let[,...n]=e.split("/"),s=n.reduce((a,o,c)=>{if(c%2===0)a[`${o}`]="";else{let l=Object.keys(a);a[`${l[l.length-1]}`]=`${o}`}return a},{}),i=[];for await(let a of Object.keys(s)){i.push(`/${a}`);let o=s[a];try{let c=await this.getIndex(i.join(""),o,r);i.push(`[${c}]`)}catch(c){throw new Yi.DataError(`DataPath: ${i.join("")}/${o} not found.`,13,c)}}return i.join("")}};Ji.JsonDB=_ue});var aOr={};is(aOr,{start:()=>sOr,stop:()=>iOr});module.exports=K0t(aOr);var lpt=Re(Ywe(),1);var NE=Re(require("node:fs/promises"),1),Ws=Re(require("node:path"),1),OM=require("node:crypto"),Olt=require("node:module"),rue=require("node:url");function RS(t,e){return function(){return t.apply(e,arguments)}}var{toString:e9t}=Object.prototype,{getPrototypeOf:xj}=Object,rk=(t=>e=>{let r=e9t.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),ul=t=>(t=t.toLowerCase(),e=>rk(e)===t),nk=t=>e=>typeof e===t,{isArray:sx}=Array,NS=nk("undefined");function t9t(t){return t!==null&&!NS(t)&&t.constructor!==null&&!NS(t.constructor)&&lc(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var Zwe=ul("ArrayBuffer");function r9t(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&Zwe(t.buffer),e}var n9t=nk("string"),lc=nk("function"),e2e=nk("number"),sk=t=>t!==null&&typeof t=="object",s9t=t=>t===!0||t===!1,tk=t=>{if(rk(t)!=="object")return!1;let e=xj(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},i9t=ul("Date"),a9t=ul("File"),o9t=ul("Blob"),c9t=ul("FileList"),u9t=t=>sk(t)&&lc(t.pipe),l9t=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||lc(t.append)&&((e=rk(t))==="formdata"||e==="object"&&lc(t.toString)&&t.toString()==="[object FormData]"))},d9t=ul("URLSearchParams"),f9t=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function OS(t,e,{allOwnKeys:r=!1}={}){if(t===null||typeof t>"u")return;let n,s;if(typeof t!="object"&&(t=[t]),sx(t))for(n=0,s=t.length;n0;)if(s=r[n],e===s.toLowerCase())return s;return null}var r2e=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,n2e=t=>!NS(t)&&t!==r2e;function yj(){let{caseless:t}=n2e(this)&&this||{},e={},r=(n,s)=>{let i=t&&t2e(e,s)||s;tk(e[i])&&tk(n)?e[i]=yj(e[i],n):tk(n)?e[i]=yj({},n):sx(n)?e[i]=n.slice():e[i]=n};for(let n=0,s=arguments.length;n(OS(e,(s,i)=>{r&&lc(s)?t[i]=RS(s,r):t[i]=s},{allOwnKeys:n}),t),m9t=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),h9t=(t,e,r,n)=>{t.prototype=Object.create(e.prototype,n),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),r&&Object.assign(t.prototype,r)},g9t=(t,e,r,n)=>{let s,i,a,o={};if(e=e||{},t==null)return e;do{for(s=Object.getOwnPropertyNames(t),i=s.length;i-- >0;)a=s[i],(!n||n(a,t,e))&&!o[a]&&(e[a]=t[a],o[a]=!0);t=r!==!1&&xj(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e},A9t=(t,e,r)=>{t=String(t),(r===void 0||r>t.length)&&(r=t.length),r-=e.length;let n=t.indexOf(e,r);return n!==-1&&n===r},y9t=t=>{if(!t)return null;if(sx(t))return t;let e=t.length;if(!e2e(e))return null;let r=new Array(e);for(;e-- >0;)r[e]=t[e];return r},x9t=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&xj(Uint8Array)),b9t=(t,e)=>{let n=(t&&t[Symbol.iterator]).call(t),s;for(;(s=n.next())&&!s.done;){let i=s.value;e.call(t,i[0],i[1])}},E9t=(t,e)=>{let r,n=[];for(;(r=t.exec(e))!==null;)n.push(r);return n},_9t=ul("HTMLFormElement"),S9t=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),Jwe=(({hasOwnProperty:t})=>(e,r)=>t.call(e,r))(Object.prototype),v9t=ul("RegExp"),s2e=(t,e)=>{let r=Object.getOwnPropertyDescriptors(t),n={};OS(r,(s,i)=>{let a;(a=e(s,i,t))!==!1&&(n[i]=a||s)}),Object.defineProperties(t,n)},I9t=t=>{s2e(t,(e,r)=>{if(lc(t)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=t[r];if(lc(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},C9t=(t,e)=>{let r={},n=s=>{s.forEach(i=>{r[i]=!0})};return sx(t)?n(t):n(String(t).split(e)),r},T9t=()=>{},w9t=(t,e)=>(t=+t,Number.isFinite(t)?t:e),Aj="abcdefghijklmnopqrstuvwxyz",Xwe="0123456789",i2e={DIGIT:Xwe,ALPHA:Aj,ALPHA_DIGIT:Aj+Aj.toUpperCase()+Xwe},R9t=(t=16,e=i2e.ALPHA_DIGIT)=>{let r="",{length:n}=e;for(;t--;)r+=e[Math.random()*n|0];return r};function N9t(t){return!!(t&&lc(t.append)&&t[Symbol.toStringTag]==="FormData"&&t[Symbol.iterator])}var O9t=t=>{let e=new Array(10),r=(n,s)=>{if(sk(n)){if(e.indexOf(n)>=0)return;if(!("toJSON"in n)){e[s]=n;let i=sx(n)?[]:{};return OS(n,(a,o)=>{let c=r(a,s+1);!NS(c)&&(i[o]=c)}),e[s]=void 0,i}}return n};return r(t,0)},P9t=ul("AsyncFunction"),k9t=t=>t&&(sk(t)||lc(t))&&lc(t.then)&&lc(t.catch),le={isArray:sx,isArrayBuffer:Zwe,isBuffer:t9t,isFormData:l9t,isArrayBufferView:r9t,isString:n9t,isNumber:e2e,isBoolean:s9t,isObject:sk,isPlainObject:tk,isUndefined:NS,isDate:i9t,isFile:a9t,isBlob:o9t,isRegExp:v9t,isFunction:lc,isStream:u9t,isURLSearchParams:d9t,isTypedArray:x9t,isFileList:c9t,forEach:OS,merge:yj,extend:p9t,trim:f9t,stripBOM:m9t,inherits:h9t,toFlatObject:g9t,kindOf:rk,kindOfTest:ul,endsWith:A9t,toArray:y9t,forEachEntry:b9t,matchAll:E9t,isHTMLForm:_9t,hasOwnProperty:Jwe,hasOwnProp:Jwe,reduceDescriptors:s2e,freezeMethods:I9t,toObjectSet:C9t,toCamelCase:S9t,noop:T9t,toFiniteNumber:w9t,findKey:t2e,global:r2e,isContextDefined:n2e,ALPHABET:i2e,generateString:R9t,isSpecCompliantForm:N9t,toJSONObject:O9t,isAsyncFn:P9t,isThenable:k9t};function ix(t,e,r,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),n&&(this.request=n),s&&(this.response=s)}le.inherits(ix,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:le.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var a2e=ix.prototype,o2e={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{o2e[t]={value:t}});Object.defineProperties(ix,o2e);Object.defineProperty(a2e,"isAxiosError",{value:!0});ix.from=(t,e,r,n,s,i)=>{let a=Object.create(a2e);return le.toFlatObject(t,a,function(c){return c!==Error.prototype},o=>o!=="isAxiosError"),ix.call(a,t.message,e,r,n,s),a.cause=t,a.name=t.name,i&&Object.assign(a,i),a};var Xe=ix;var uNe=Re(cNe(),1),mk=uNe.default;function Fj(t){return le.isPlainObject(t)||le.isArray(t)}function dNe(t){return le.endsWith(t,"[]")?t.slice(0,-2):t}function lNe(t,e,r){return t?t.concat(e).map(function(s,i){return s=dNe(s),!r&&i?"["+s+"]":s}).join(r?".":""):e}function yHt(t){return le.isArray(t)&&!t.some(Fj)}var xHt=le.toFlatObject(le,{},null,function(e){return/^is[A-Z]/.test(e)});function bHt(t,e,r){if(!le.isObject(t))throw new TypeError("target must be an object");e=e||new(mk||FormData),r=le.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,A){return!le.isUndefined(A[h])});let n=r.metaTokens,s=r.visitor||l,i=r.dots,a=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&le.isSpecCompliantForm(e);if(!le.isFunction(s))throw new TypeError("visitor must be a function");function u(m){if(m===null)return"";if(le.isDate(m))return m.toISOString();if(!c&&le.isBlob(m))throw new Xe("Blob is not supported. Use a Buffer instead.");return le.isArrayBuffer(m)||le.isTypedArray(m)?c&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function l(m,h,A){let g=m;if(m&&!A&&typeof m=="object"){if(le.endsWith(h,"{}"))h=n?h:h.slice(0,-2),m=JSON.stringify(m);else if(le.isArray(m)&&yHt(m)||(le.isFileList(m)||le.endsWith(h,"[]"))&&(g=le.toArray(m)))return h=dNe(h),g.forEach(function(y,x){!(le.isUndefined(y)||y===null)&&e.append(a===!0?lNe([h],x,i):a===null?h:h+"[]",u(y))}),!1}return Fj(m)?!0:(e.append(lNe(A,h,i),u(m)),!1)}let d=[],f=Object.assign(xHt,{defaultVisitor:l,convertValue:u,isVisitable:Fj});function p(m,h){if(!le.isUndefined(m)){if(d.indexOf(m)!==-1)throw Error("Circular reference detected in "+h.join("."));d.push(m),le.forEach(m,function(g,b){(!(le.isUndefined(g)||g===null)&&s.call(e,g,le.isString(b)?b.trim():b,h,f))===!0&&p(g,h?h.concat(b):[b])}),d.pop()}}if(!le.isObject(t))throw new TypeError("data must be an object");return p(t),e}var Vp=bHt;function fNe(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function pNe(t,e){this._pairs=[],t&&Vp(t,this,e)}var mNe=pNe.prototype;mNe.append=function(e,r){this._pairs.push([e,r])};mNe.toString=function(e){let r=e?function(n){return e.call(this,n,fNe)}:fNe;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};var hNe=pNe;function EHt(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function fh(t,e,r){if(!e)return t;let n=r&&r.encode||EHt,s=r&&r.serialize,i;if(s?i=s(e,r):i=le.isURLSearchParams(e)?e.toString():new hNe(e,r).toString(n),i){let a=t.indexOf("#");a!==-1&&(t=t.slice(0,a)),t+=(t.indexOf("?")===-1?"?":"&")+i}return t}var Uj=class{constructor(){this.handlers=[]}use(e,r,n){return this.handlers.push({fulfilled:e,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){le.forEach(this.handlers,function(n){n!==null&&e(n)})}},qj=Uj;var lx={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var gNe=Re(require("url"),1),ANe=gNe.default.URLSearchParams;var yNe={isNode:!0,classes:{URLSearchParams:ANe,FormData:mk,Blob:typeof Blob<"u"&&Blob||null},protocols:["http","https","file","data"]};var jj={};is(jj,{hasBrowserEnv:()=>xNe,hasStandardBrowserEnv:()=>_Ht,hasStandardBrowserWebWorkerEnv:()=>SHt});var xNe=typeof window<"u"&&typeof document<"u",_Ht=(t=>xNe&&["ReactNative","NativeScript","NS"].indexOf(t)<0)(typeof navigator<"u"&&navigator.product),SHt=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function";var Rs={...jj,...yNe};function Hj(t,e){return Vp(t,new Rs.classes.URLSearchParams,Object.assign({visitor:function(r,n,s,i){return Rs.isNode&&le.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function vHt(t){return le.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function IHt(t){let e={},r=Object.keys(t),n,s=r.length,i;for(n=0;n=r.length;return a=!a&&le.isArray(s)?s.length:a,c?(le.hasOwnProp(s,a)?s[a]=[s[a],n]:s[a]=n,!o):((!s[a]||!le.isObject(s[a]))&&(s[a]=[]),e(r,n,s[a],i)&&le.isArray(s[a])&&(s[a]=IHt(s[a])),!o)}if(le.isFormData(t)&&le.isFunction(t.entries)){let r={};return le.forEachEntry(t,(n,s)=>{e(vHt(n),s,r,0)}),r}return null}var hk=CHt;function THt(t,e,r){if(le.isString(t))try{return(e||JSON.parse)(t),le.trim(t)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(t)}var Qj={transitional:lx,adapter:["xhr","http"],transformRequest:[function(e,r){let n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=le.isObject(e);if(i&&le.isHTMLForm(e)&&(e=new FormData(e)),le.isFormData(e))return s?JSON.stringify(hk(e)):e;if(le.isArrayBuffer(e)||le.isBuffer(e)||le.isStream(e)||le.isFile(e)||le.isBlob(e))return e;if(le.isArrayBufferView(e))return e.buffer;if(le.isURLSearchParams(e))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Hj(e,this.formSerializer).toString();if((o=le.isFileList(e))||n.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return Vp(o?{"files[]":e}:e,c&&new c,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),THt(e)):e}],transformResponse:[function(e){let r=this.transitional||Qj.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(e&&le.isString(e)&&(n&&!this.responseType||s)){let a=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(o){if(a)throw o.name==="SyntaxError"?Xe.from(o,Xe.ERR_BAD_RESPONSE,this,null,this.response):o}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Rs.classes.FormData,Blob:Rs.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};le.forEach(["delete","get","head","post","put","patch"],t=>{Qj.headers[t]={}});var dx=Qj;var wHt=le.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),bNe=t=>{let e={},r,n,s;return t&&t.split(` -`).forEach(function(a){s=a.indexOf(":"),r=a.substring(0,s).trim().toLowerCase(),n=a.substring(s+1).trim(),!(!r||e[r]&&wHt[r])&&(r==="set-cookie"?e[r]?e[r].push(n):e[r]=[n]:e[r]=e[r]?e[r]+", "+n:n)}),e};var ENe=Symbol("internals");function MS(t){return t&&String(t).trim().toLowerCase()}function gk(t){return t===!1||t==null?t:le.isArray(t)?t.map(gk):String(t)}function RHt(t){let e=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(t);)e[n[1]]=n[2];return e}var NHt=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Gj(t,e,r,n,s){if(le.isFunction(n))return n.call(this,e,r);if(s&&(e=r),!!le.isString(e)){if(le.isString(n))return e.indexOf(n)!==-1;if(le.isRegExp(n))return n.test(e)}}function OHt(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,r,n)=>r.toUpperCase()+n)}function PHt(t,e){let r=le.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(t,n+r,{value:function(s,i,a){return this[n].call(this,e,s,i,a)},configurable:!0})})}var fx=class{constructor(e){e&&this.set(e)}set(e,r,n){let s=this;function i(o,c,u){let l=MS(c);if(!l)throw new Error("header name must be a non-empty string");let d=le.findKey(s,l);(!d||s[d]===void 0||u===!0||u===void 0&&s[d]!==!1)&&(s[d||c]=gk(o))}let a=(o,c)=>le.forEach(o,(u,l)=>i(u,l,c));return le.isPlainObject(e)||e instanceof this.constructor?a(e,r):le.isString(e)&&(e=e.trim())&&!NHt(e)?a(bNe(e),r):e!=null&&i(r,e,n),this}get(e,r){if(e=MS(e),e){let n=le.findKey(this,e);if(n){let s=this[n];if(!r)return s;if(r===!0)return RHt(s);if(le.isFunction(r))return r.call(this,s,n);if(le.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,r){if(e=MS(e),e){let n=le.findKey(this,e);return!!(n&&this[n]!==void 0&&(!r||Gj(this,this[n],n,r)))}return!1}delete(e,r){let n=this,s=!1;function i(a){if(a=MS(a),a){let o=le.findKey(n,a);o&&(!r||Gj(n,n[o],o,r))&&(delete n[o],s=!0)}}return le.isArray(e)?e.forEach(i):i(e),s}clear(e){let r=Object.keys(this),n=r.length,s=!1;for(;n--;){let i=r[n];(!e||Gj(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){let r=this,n={};return le.forEach(this,(s,i)=>{let a=le.findKey(n,i);if(a){r[a]=gk(s),delete r[i];return}let o=e?OHt(i):String(i).trim();o!==i&&delete r[i],r[o]=gk(s),n[o]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){let r=Object.create(null);return le.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=e&&le.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,r])=>e+": "+r).join(` -`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...r){let n=new this(e);return r.forEach(s=>n.set(s)),n}static accessor(e){let n=(this[ENe]=this[ENe]={accessors:{}}).accessors,s=this.prototype;function i(a){let o=MS(a);n[o]||(PHt(s,a),n[o]=!0)}return le.isArray(e)?e.forEach(i):i(e),this}};fx.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);le.reduceDescriptors(fx.prototype,({value:t},e)=>{let r=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(n){this[r]=n}}});le.freezeMethods(fx);var Ns=fx;function WS(t,e){let r=this||dx,n=e||r,s=Ns.from(n.headers),i=n.data;return le.forEach(t,function(o){i=o.call(r,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function $S(t){return!!(t&&t.__CANCEL__)}function _Ne(t,e,r){Xe.call(this,t??"canceled",Xe.ERR_CANCELED,e,r),this.name="CanceledError"}le.inherits(_Ne,Xe,{__CANCEL__:!0});var nu=_Ne;function zp(t,e,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?t(r):e(new Xe("Request failed with status code "+r.status,[Xe.ERR_BAD_REQUEST,Xe.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function Kj(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function Vj(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function ph(t,e){return t&&!Kj(e)?Vj(t,e):e}var nOe=Re(vNe(),1),sOe=Re(require("http"),1),iOe=Re(require("https"),1),aOe=Re(require("util"),1),oOe=Re(jNe(),1),Bd=Re(require("zlib"),1);var Ah="1.6.7";function HS(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}var AQt=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function dH(t,e,r){let n=r&&r.Blob||Rs.classes.Blob,s=HS(t);if(e===void 0&&n&&(e=!0),s==="data"){t=s.length?t.slice(s.length+1):t;let i=AQt.exec(t);if(!i)throw new Xe("Invalid URL",Xe.ERR_INVALID_URL);let a=i[1],o=i[2],c=i[3],u=Buffer.from(decodeURIComponent(c),o?"base64":"utf8");if(e){if(!n)throw new Xe("Blob is not supported",Xe.ERR_NOT_SUPPORT);return new n([u],{type:a})}return u}throw new Xe("Unsupported protocol "+s,Xe.ERR_NOT_SUPPORT)}var yh=Re(require("stream"),1);var QNe=Re(require("stream"),1);function yQt(t,e){let r=0,n=1e3/e,s=null;return function(a,o){let c=Date.now();if(a||c-r>n)return s&&(clearTimeout(s),s=null),r=c,t.apply(null,o);s||(s=setTimeout(()=>(s=null,r=Date.now(),t.apply(null,o)),n-(c-r)))}}var HNe=yQt;function xQt(t,e){t=t||10;let r=new Array(t),n=new Array(t),s=0,i=0,a;return e=e!==void 0?e:1e3,function(c){let u=Date.now(),l=n[i];a||(a=u),r[s]=c,n[s]=u;let d=i,f=0;for(;d!==s;)f+=r[d++],d=d%t;if(s=(s+1)%t,s===i&&(i=(i+1)%t),u-a!le.isUndefined(c[o])),super({readableHighWaterMark:e.chunkSize});let r=this,n=this[_k]={length:e.length,timeWindow:e.timeWindow,ticksRate:e.ticksRate,chunkSize:e.chunkSize,maxRate:e.maxRate,minChunkSize:e.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null},s=Ek(n.ticksRate*e.samplesCount,n.timeWindow);this.on("newListener",o=>{o==="progress"&&(n.isCaptured||(n.isCaptured=!0))});let i=0;n.updateProgress=HNe(function(){let c=n.length,u=n.bytesSeen,l=u-i;if(!l||r.destroyed)return;let d=s(l);i=u,process.nextTick(()=>{r.emit("progress",{loaded:u,total:c,progress:c?u/c:void 0,bytes:l,rate:d||void 0,estimated:d&&c&&u<=c?(c-u)/d:void 0})})},n.ticksRate);let a=()=>{n.updateProgress(!0)};this.once("end",a),this.once("error",a)}_read(e){let r=this[_k];return r.onReadCallback&&r.onReadCallback(),super._read(e)}_transform(e,r,n){let s=this,i=this[_k],a=i.maxRate,o=this.readableHighWaterMark,c=i.timeWindow,u=1e3/c,l=a/u,d=i.minChunkSize!==!1?Math.max(i.minChunkSize,l*.01):0;function f(m,h){let A=Buffer.byteLength(m);i.bytesSeen+=A,i.bytes+=A,i.isCaptured&&i.updateProgress(),s.push(m)?process.nextTick(h):i.onReadCallback=()=>{i.onReadCallback=null,process.nextTick(h)}}let p=(m,h)=>{let A=Buffer.byteLength(m),g=null,b=o,y,x=0;if(a){let v=Date.now();(!i.ts||(x=v-i.ts)>=c)&&(i.ts=v,y=l-i.bytes,i.bytes=y<0?-y:0,x=0),y=l-i.bytes}if(a){if(y<=0)return setTimeout(()=>{h(null,m)},c-x);yb&&A-b>d&&(g=m.subarray(b),m=m.subarray(0,b)),f(m,g?()=>{process.nextTick(h,null,g)}:h)};p(e,function m(h,A){if(h)return n(h);A?p(A,m):n(null)})}setLength(e){return this[_k].length=+e,this}},pH=fH;var cOe=Re(require("events"),1);var KNe=require("util"),VNe=require("stream");var{asyncIterator:GNe}=Symbol,bQt=async function*(t){t.stream?yield*t.stream():t.arrayBuffer?yield await t.arrayBuffer():t[GNe]?yield*t[GNe]():yield t},Sk=bQt;var EQt=le.ALPHABET.ALPHA_DIGIT+"-_",QS=new KNe.TextEncoder,Jp=`\r -`,_Qt=QS.encode(Jp),SQt=2,mH=class{constructor(e,r){let{escapeName:n}=this.constructor,s=le.isString(r),i=`Content-Disposition: form-data; name="${n(e)}"${!s&&r.name?`; filename="${n(r.name)}"`:""}${Jp}`;s?r=QS.encode(String(r).replace(/\r?\n|\r\n?/g,Jp)):i+=`Content-Type: ${r.type||"application/octet-stream"}${Jp}`,this.headers=QS.encode(i+Jp),this.contentLength=s?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+SQt,this.name=e,this.value=r}async*encode(){yield this.headers;let{value:e}=this;le.isTypedArray(e)?yield e:yield*Sk(e),yield _Qt}static escapeName(e){return String(e).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},vQt=(t,e,r)=>{let{tag:n="form-data-boundary",size:s=25,boundary:i=n+"-"+le.generateString(s,EQt)}=r||{};if(!le.isFormData(t))throw TypeError("FormData instance required");if(i.length<1||i.length>70)throw Error("boundary must be 10-70 characters long");let a=QS.encode("--"+i+Jp),o=QS.encode("--"+i+"--"+Jp+Jp),c=o.byteLength,u=Array.from(t.entries()).map(([d,f])=>{let p=new mH(d,f);return c+=p.size,p});c+=a.byteLength*u.length,c=le.toFiniteNumber(c);let l={"Content-Type":`multipart/form-data; boundary=${i}`};return Number.isFinite(c)&&(l["Content-Length"]=c),e&&e(l),VNe.Readable.from(async function*(){for(let d of u)yield a,yield*d.encode();yield o}())},zNe=vQt;var YNe=Re(require("stream"),1),hH=class extends YNe.default.Transform{__transform(e,r,n){this.push(e),n()}_transform(e,r,n){if(e.length!==0&&(this._transform=this.__transform,e[0]!==120)){let s=Buffer.alloc(2);s[0]=120,s[1]=156,this.push(s,r)}this.__transform(e,r,n)}},JNe=hH;var IQt=(t,e)=>le.isAsyncFn(t)?function(...r){let n=r.pop();t.apply(this,r).then(s=>{try{e?n(null,...e(s)):n(null,s)}catch(i){n(i)}},n)}:t,XNe=IQt;var ZNe={flush:Bd.default.constants.Z_SYNC_FLUSH,finishFlush:Bd.default.constants.Z_SYNC_FLUSH},CQt={flush:Bd.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:Bd.default.constants.BROTLI_OPERATION_FLUSH},eOe=le.isFunction(Bd.default.createBrotliDecompress),{http:TQt,https:wQt}=oOe.default,RQt=/https:?/,tOe=Rs.protocols.map(t=>t+":");function NQt(t,e){t.beforeRedirects.proxy&&t.beforeRedirects.proxy(t),t.beforeRedirects.config&&t.beforeRedirects.config(t,e)}function uOe(t,e,r){let n=e;if(!n&&n!==!1){let s=(0,nOe.getProxyForUrl)(r);s&&(n=new URL(s))}if(n){if(n.username&&(n.auth=(n.username||"")+":"+(n.password||"")),n.auth){(n.auth.username||n.auth.password)&&(n.auth=(n.auth.username||"")+":"+(n.auth.password||""));let i=Buffer.from(n.auth,"utf8").toString("base64");t.headers["Proxy-Authorization"]="Basic "+i}t.headers.host=t.hostname+(t.port?":"+t.port:"");let s=n.hostname||n.host;t.hostname=s,t.host=s,t.port=n.port,t.path=r,n.protocol&&(t.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}t.beforeRedirects.proxy=function(i){uOe(i,e,i.href)}}var OQt=typeof process<"u"&&le.kindOf(process)==="process",PQt=t=>new Promise((e,r)=>{let n,s,i=(c,u)=>{s||(s=!0,n&&n(c,u))},a=c=>{i(c),e(c)},o=c=>{i(c,!0),r(c)};t(a,o,c=>n=c).catch(o)}),kQt=({address:t,family:e})=>{if(!le.isString(t))throw TypeError("address must be a string");return{address:t,family:e||(t.indexOf(".")<0?6:4)}},rOe=(t,e)=>kQt(le.isObject(t)?t:{address:t,family:e}),lOe=OQt&&function(e){return PQt(async function(n,s,i){let{data:a,lookup:o,family:c}=e,{responseType:u,responseEncoding:l}=e,d=e.method.toUpperCase(),f,p=!1,m;if(o){let F=XNe(o,K=>le.isArray(K)?K:[K]);o=(K,j,J)=>{F(K,j,(se,oe,ue)=>{if(se)return J(se);let Ie=le.isArray(oe)?oe.map(we=>rOe(we)):[rOe(oe,ue)];j.all?J(se,Ie):J(se,Ie[0].address,Ie[0].family)})}}let h=new cOe.default,A=()=>{e.cancelToken&&e.cancelToken.unsubscribe(g),e.signal&&e.signal.removeEventListener("abort",g),h.removeAllListeners()};i((F,K)=>{f=!0,K&&(p=!0,A())});function g(F){h.emit("abort",!F||F.type?new nu(null,e,m):F)}h.once("abort",s),(e.cancelToken||e.signal)&&(e.cancelToken&&e.cancelToken.subscribe(g),e.signal&&(e.signal.aborted?g():e.signal.addEventListener("abort",g)));let b=ph(e.baseURL,e.url),y=new URL(b,"http://localhost"),x=y.protocol||tOe[0];if(x==="data:"){let F;if(d!=="GET")return zp(n,s,{status:405,statusText:"method not allowed",headers:{},config:e});try{F=dH(e.url,u==="blob",{Blob:e.env&&e.env.Blob})}catch(K){throw Xe.from(K,Xe.ERR_BAD_REQUEST,e)}return u==="text"?(F=F.toString(l),(!l||l==="utf8")&&(F=le.stripBOM(F))):u==="stream"&&(F=yh.default.Readable.from(F)),zp(n,s,{data:F,status:200,statusText:"OK",headers:new Ns,config:e})}if(tOe.indexOf(x)===-1)return s(new Xe("Unsupported protocol "+x,Xe.ERR_BAD_REQUEST,e));let v=Ns.from(e.headers).normalize();v.set("User-Agent","axios/"+Ah,!1);let I=e.onDownloadProgress,R=e.onUploadProgress,w=e.maxRate,N,P;if(le.isSpecCompliantForm(a)){let F=v.getContentType(/boundary=([-_\w\d]{10,70})/i);a=zNe(a,K=>{v.set(K)},{tag:`axios-${Ah}-boundary`,boundary:F&&F[1]||void 0})}else if(le.isFormData(a)&&le.isFunction(a.getHeaders)){if(v.set(a.getHeaders()),!v.hasContentLength())try{let F=await aOe.default.promisify(a.getLength).call(a);Number.isFinite(F)&&F>=0&&v.setContentLength(F)}catch{}}else if(le.isBlob(a))a.size&&v.setContentType(a.type||"application/octet-stream"),v.setContentLength(a.size||0),a=yh.default.Readable.from(Sk(a));else if(a&&!le.isStream(a)){if(!Buffer.isBuffer(a))if(le.isArrayBuffer(a))a=Buffer.from(new Uint8Array(a));else if(le.isString(a))a=Buffer.from(a,"utf-8");else return s(new Xe("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",Xe.ERR_BAD_REQUEST,e));if(v.setContentLength(a.length,!1),e.maxBodyLength>-1&&a.length>e.maxBodyLength)return s(new Xe("Request body larger than maxBodyLength limit",Xe.ERR_BAD_REQUEST,e))}let B=le.toFiniteNumber(v.getContentLength());le.isArray(w)?(N=w[0],P=w[1]):N=P=w,a&&(R||N)&&(le.isStream(a)||(a=yh.default.Readable.from(a,{objectMode:!1})),a=yh.default.pipeline([a,new pH({length:B,maxRate:le.toFiniteNumber(N)})],le.noop),R&&a.on("progress",F=>{R(Object.assign(F,{upload:!0}))}));let M;if(e.auth){let F=e.auth.username||"",K=e.auth.password||"";M=F+":"+K}if(!M&&y.username){let F=y.username,K=y.password;M=F+":"+K}M&&v.delete("authorization");let D;try{D=fh(y.pathname+y.search,e.params,e.paramsSerializer).replace(/^\?/,"")}catch(F){let K=new Error(F.message);return K.config=e,K.url=e.url,K.exists=!0,s(K)}v.set("Accept-Encoding","gzip, compress, deflate"+(eOe?", br":""),!1);let L={path:D,method:d,headers:v.toJSON(),agents:{http:e.httpAgent,https:e.httpsAgent},auth:M,protocol:x,family:c,beforeRedirect:NQt,beforeRedirects:{}};!le.isUndefined(o)&&(L.lookup=o),e.socketPath?L.socketPath=e.socketPath:(L.hostname=y.hostname,L.port=y.port,uOe(L,e.proxy,x+"//"+y.hostname+(y.port?":"+y.port:"")+L.path));let Z,W=RQt.test(L.protocol);if(L.agent=W?e.httpsAgent:e.httpAgent,e.transport?Z=e.transport:e.maxRedirects===0?Z=W?iOe.default:sOe.default:(e.maxRedirects&&(L.maxRedirects=e.maxRedirects),e.beforeRedirect&&(L.beforeRedirects.config=e.beforeRedirect),Z=W?wQt:TQt),e.maxBodyLength>-1?L.maxBodyLength=e.maxBodyLength:L.maxBodyLength=1/0,e.insecureHTTPParser&&(L.insecureHTTPParser=e.insecureHTTPParser),m=Z.request(L,function(K){if(m.destroyed)return;let j=[K],J=+K.headers["content-length"];if(I){let we=new pH({length:le.toFiniteNumber(J),maxRate:le.toFiniteNumber(P)});I&&we.on("progress",qe=>{I(Object.assign(qe,{download:!0}))}),j.push(we)}let se=K,oe=K.req||m;if(e.decompress!==!1&&K.headers["content-encoding"])switch((d==="HEAD"||K.statusCode===204)&&delete K.headers["content-encoding"],(K.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":j.push(Bd.default.createUnzip(ZNe)),delete K.headers["content-encoding"];break;case"deflate":j.push(new JNe),j.push(Bd.default.createUnzip(ZNe)),delete K.headers["content-encoding"];break;case"br":eOe&&(j.push(Bd.default.createBrotliDecompress(CQt)),delete K.headers["content-encoding"])}se=j.length>1?yh.default.pipeline(j,le.noop):j[0];let ue=yh.default.finished(se,()=>{ue(),A()}),Ie={status:K.statusCode,statusText:K.statusMessage,headers:new Ns(K.headers),config:e,request:oe};if(u==="stream")Ie.data=se,zp(n,s,Ie);else{let we=[],qe=0;se.on("data",function(_e){we.push(_e),qe+=_e.length,e.maxContentLength>-1&&qe>e.maxContentLength&&(p=!0,se.destroy(),s(new Xe("maxContentLength size of "+e.maxContentLength+" exceeded",Xe.ERR_BAD_RESPONSE,e,oe)))}),se.on("aborted",function(){if(p)return;let _e=new Xe("maxContentLength size of "+e.maxContentLength+" exceeded",Xe.ERR_BAD_RESPONSE,e,oe);se.destroy(_e),s(_e)}),se.on("error",function(_e){m.destroyed||s(Xe.from(_e,null,e,oe))}),se.on("end",function(){try{let _e=we.length===1?we[0]:Buffer.concat(we);u!=="arraybuffer"&&(_e=_e.toString(l),(!l||l==="utf8")&&(_e=le.stripBOM(_e))),Ie.data=_e}catch(_e){return s(Xe.from(_e,null,e,Ie.request,Ie))}zp(n,s,Ie)})}h.once("abort",we=>{se.destroyed||(se.emit("error",we),se.destroy())})}),h.once("abort",F=>{s(F),m.destroy(F)}),m.on("error",function(K){s(Xe.from(K,null,e,m))}),m.on("socket",function(K){K.setKeepAlive(!0,1e3*60)}),e.timeout){let F=parseInt(e.timeout,10);if(Number.isNaN(F)){s(new Xe("error trying to parse `config.timeout` to int",Xe.ERR_BAD_OPTION_VALUE,e,m));return}m.setTimeout(F,function(){if(f)return;let j=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",J=e.transitional||lx;e.timeoutErrorMessage&&(j=e.timeoutErrorMessage),s(new Xe(j,J.clarifyTimeoutError?Xe.ETIMEDOUT:Xe.ECONNABORTED,e,m)),g()})}if(le.isStream(a)){let F=!1,K=!1;a.on("end",()=>{F=!0}),a.once("error",j=>{K=!0,m.destroy(j)}),a.on("close",()=>{!F&&!K&&g(new nu("Request stream has been aborted",e,m))}),a.pipe(m)}else m.end(a)})};var dOe=Rs.hasStandardBrowserEnv?{write(t,e,r,n,s,i){let a=[t+"="+encodeURIComponent(e)];le.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),le.isString(n)&&a.push("path="+n),le.isString(s)&&a.push("domain="+s),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(t){let e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};var fOe=Rs.hasStandardBrowserEnv?function(){let e=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function s(i){let a=i;return e&&(r.setAttribute("href",a),a=r.href),r.setAttribute("href",a),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=s(window.location.href),function(a){let o=le.isString(a)?s(a):a;return o.protocol===n.protocol&&o.host===n.host}}():function(){return function(){return!0}}();function pOe(t,e){let r=0,n=Ek(50,250);return s=>{let i=s.loaded,a=s.lengthComputable?s.total:void 0,o=i-r,c=n(o),u=i<=a;r=i;let l={loaded:i,total:a,progress:a?i/a:void 0,bytes:o,rate:c||void 0,estimated:c&&a&&u?(a-i)/c:void 0,event:s};l[e?"download":"upload"]=!0,t(l)}}var DQt=typeof XMLHttpRequest<"u",mOe=DQt&&function(t){return new Promise(function(r,n){let s=t.data,i=Ns.from(t.headers).normalize(),{responseType:a,withXSRFToken:o}=t,c;function u(){t.cancelToken&&t.cancelToken.unsubscribe(c),t.signal&&t.signal.removeEventListener("abort",c)}let l;if(le.isFormData(s)){if(Rs.hasStandardBrowserEnv||Rs.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if((l=i.getContentType())!==!1){let[h,...A]=l?l.split(";").map(g=>g.trim()).filter(Boolean):[];i.setContentType([h||"multipart/form-data",...A].join("; "))}}let d=new XMLHttpRequest;if(t.auth){let h=t.auth.username||"",A=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";i.set("Authorization","Basic "+btoa(h+":"+A))}let f=ph(t.baseURL,t.url);d.open(t.method.toUpperCase(),fh(f,t.params,t.paramsSerializer),!0),d.timeout=t.timeout;function p(){if(!d)return;let h=Ns.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),g={data:!a||a==="text"||a==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:h,config:t,request:d};zp(function(y){r(y),u()},function(y){n(y),u()},g),d=null}if("onloadend"in d?d.onloadend=p:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(p)},d.onabort=function(){d&&(n(new Xe("Request aborted",Xe.ECONNABORTED,t,d)),d=null)},d.onerror=function(){n(new Xe("Network Error",Xe.ERR_NETWORK,t,d)),d=null},d.ontimeout=function(){let A=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",g=t.transitional||lx;t.timeoutErrorMessage&&(A=t.timeoutErrorMessage),n(new Xe(A,g.clarifyTimeoutError?Xe.ETIMEDOUT:Xe.ECONNABORTED,t,d)),d=null},Rs.hasStandardBrowserEnv&&(o&&le.isFunction(o)&&(o=o(t)),o||o!==!1&&fOe(f))){let h=t.xsrfHeaderName&&t.xsrfCookieName&&dOe.read(t.xsrfCookieName);h&&i.set(t.xsrfHeaderName,h)}s===void 0&&i.setContentType(null),"setRequestHeader"in d&&le.forEach(i.toJSON(),function(A,g){d.setRequestHeader(g,A)}),le.isUndefined(t.withCredentials)||(d.withCredentials=!!t.withCredentials),a&&a!=="json"&&(d.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&d.addEventListener("progress",pOe(t.onDownloadProgress,!0)),typeof t.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",pOe(t.onUploadProgress)),(t.cancelToken||t.signal)&&(c=h=>{d&&(n(!h||h.type?new nu(null,t,d):h),d.abort(),d=null)},t.cancelToken&&t.cancelToken.subscribe(c),t.signal&&(t.signal.aborted?c():t.signal.addEventListener("abort",c)));let m=HS(f);if(m&&Rs.protocols.indexOf(m)===-1){n(new Xe("Unsupported protocol "+m+":",Xe.ERR_BAD_REQUEST,t));return}d.send(s||null)})};var gH={http:lOe,xhr:mOe};le.forEach(gH,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});var hOe=t=>`- ${t}`,BQt=t=>le.isFunction(t)||t===null||t===!1,vk={getAdapter:t=>{t=le.isArray(t)?t:[t];let{length:e}=t,r,n,s={};for(let i=0;i`adapter ${o} `+(c===!1?"is not supported by the environment":"is not available in the build")),a=e?i.length>1?`since : -`+i.map(hOe).join(` -`):" "+hOe(i[0]):"as no adapter specified";throw new Xe("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return n},adapters:gH};function AH(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new nu(null,t)}function Ik(t){return AH(t),t.headers=Ns.from(t.headers),t.data=WS.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),vk.getAdapter(t.adapter||dx.adapter)(t).then(function(n){return AH(t),n.data=WS.call(t,t.transformResponse,n),n.headers=Ns.from(n.headers),n},function(n){return $S(n)||(AH(t),n&&n.response&&(n.response.data=WS.call(t,t.transformResponse,n.response),n.response.headers=Ns.from(n.response.headers))),Promise.reject(n)})}var gOe=t=>t instanceof Ns?t.toJSON():t;function Ld(t,e){e=e||{};let r={};function n(u,l,d){return le.isPlainObject(u)&&le.isPlainObject(l)?le.merge.call({caseless:d},u,l):le.isPlainObject(l)?le.merge({},l):le.isArray(l)?l.slice():l}function s(u,l,d){if(le.isUndefined(l)){if(!le.isUndefined(u))return n(void 0,u,d)}else return n(u,l,d)}function i(u,l){if(!le.isUndefined(l))return n(void 0,l)}function a(u,l){if(le.isUndefined(l)){if(!le.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function o(u,l,d){if(d in e)return n(u,l);if(d in t)return n(void 0,u)}let c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:o,headers:(u,l)=>s(gOe(u),gOe(l),!0)};return le.forEach(Object.keys(Object.assign({},t,e)),function(l){let d=c[l]||s,f=d(t[l],e[l],l);le.isUndefined(f)&&d!==o||(r[l]=f)}),r}var yH={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{yH[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});var AOe={};yH.transitional=function(e,r,n){function s(i,a){return"[Axios v"+Ah+"] Transitional option '"+i+"'"+a+(n?". "+n:"")}return(i,a,o)=>{if(e===!1)throw new Xe(s(a," has been removed"+(r?" in "+r:"")),Xe.ERR_DEPRECATED);return r&&!AOe[a]&&(AOe[a]=!0,console.warn(s(a," has been deprecated since v"+r+" and will be removed in the near future"))),e?e(i,a,o):!0}};function LQt(t,e,r){if(typeof t!="object")throw new Xe("options must be an object",Xe.ERR_BAD_OPTION_VALUE);let n=Object.keys(t),s=n.length;for(;s-- >0;){let i=n[s],a=e[i];if(a){let o=t[i],c=o===void 0||a(o,i,t);if(c!==!0)throw new Xe("option "+i+" must be "+c,Xe.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new Xe("Unknown option "+i,Xe.ERR_BAD_OPTION)}}var Ck={assertOptions:LQt,validators:yH};var Xp=Ck.validators,Ax=class{constructor(e){this.defaults=e,this.interceptors={request:new qj,response:new qj}}async request(e,r){try{return await this._request(e,r)}catch(n){if(n instanceof Error){let s;Error.captureStackTrace?Error.captureStackTrace(s={}):s=new Error;let i=s.stack?s.stack.replace(/^.+\n/,""):"";n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=` -`+i):n.stack=i}throw n}}_request(e,r){typeof e=="string"?(r=r||{},r.url=e):r=e||{},r=Ld(this.defaults,r);let{transitional:n,paramsSerializer:s,headers:i}=r;n!==void 0&&Ck.assertOptions(n,{silentJSONParsing:Xp.transitional(Xp.boolean),forcedJSONParsing:Xp.transitional(Xp.boolean),clarifyTimeoutError:Xp.transitional(Xp.boolean)},!1),s!=null&&(le.isFunction(s)?r.paramsSerializer={serialize:s}:Ck.assertOptions(s,{encode:Xp.function,serialize:Xp.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=i&&le.merge(i.common,i[r.method]);i&&le.forEach(["delete","get","head","post","put","patch","common"],m=>{delete i[m]}),r.headers=Ns.concat(a,i);let o=[],c=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(c=c&&h.synchronous,o.unshift(h.fulfilled,h.rejected))});let u=[];this.interceptors.response.forEach(function(h){u.push(h.fulfilled,h.rejected)});let l,d=0,f;if(!c){let m=[Ik.bind(this),void 0];for(m.unshift.apply(m,o),m.push.apply(m,u),f=m.length,l=Promise.resolve(r);d{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](s);n._listeners=null}),this.promise.then=s=>{let i,a=new Promise(o=>{n.subscribe(o),i=o}).then(s);return a.cancel=function(){n.unsubscribe(i)},a},e(function(i,a,o){n.reason||(n.reason=new nu(i,a,o),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let r=this._listeners.indexOf(e);r!==-1&&this._listeners.splice(r,1)}static source(){let e;return{token:new t(function(s){e=s}),cancel:e}}},yOe=xH;function bH(t){return function(r){return t.apply(null,r)}}function EH(t){return le.isObject(t)&&t.isAxiosError===!0}var _H={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(_H).forEach(([t,e])=>{_H[e]=t});var xOe=_H;function bOe(t){let e=new GS(t),r=RS(GS.prototype.request,e);return le.extend(r,GS.prototype,e,{allOwnKeys:!0}),le.extend(r,e,null,{allOwnKeys:!0}),r.create=function(s){return bOe(Ld(t,s))},r}var bs=bOe(dx);bs.Axios=GS;bs.CanceledError=nu;bs.CancelToken=yOe;bs.isCancel=$S;bs.VERSION=Ah;bs.toFormData=Vp;bs.AxiosError=Xe;bs.Cancel=bs.CanceledError;bs.all=function(e){return Promise.all(e)};bs.spread=bH;bs.isAxiosError=EH;bs.mergeConfig=Ld;bs.AxiosHeaders=Ns;bs.formToJSON=t=>hk(le.isHTMLForm(t)?new FormData(t):t);bs.getAdapter=vk.getAdapter;bs.HttpStatusCode=xOe;bs.default=bs;var Ae=bs;var{Axios:eWr,AxiosError:tWr,CanceledError:rWr,isCancel:nWr,CancelToken:sWr,VERSION:iWr,all:aWr,Cancel:oWr,isAxiosError:cWr,spread:uWr,toFormData:lWr,AxiosHeaders:dWr,HttpStatusCode:fWr,formToJSON:pWr,getAdapter:mWr,mergeConfig:hWr}=Ae;var EOe=Re(require("https"),1),_Oe=Re(require("http"),1),MQt=Number.parseInt(process.env.CATPAW_REQ_TIMEOUT_MS||"20000",10)||2e4,WQt=Ae.create({timeout:MQt,httpsAgent:new EOe.default.Agent({keepAlive:!1,rejectUnauthorized:!1,maxCachedSessions:0}),httpAgent:new _Oe.default.Agent({keepAlive:!1}),proxy:!1}),he=WQt;var _v={};is(_v,{contains:()=>rJt,default:()=>tJt,html:()=>BH,load:()=>Me,merge:()=>nJt,parseHTML:()=>sJt,root:()=>iJt,text:()=>Fd,xml:()=>LH});var $Qt={xml:!1,decodeEntities:!0},KS=$Qt,SOe={_useHtmlParser2:!0,xmlMode:!0};function VS(t){return t?.xml?typeof t.xml=="boolean"?SOe:{...SOe,...t.xml}:t??void 0}var r0={};is(r0,{contains:()=>MH,html:()=>BH,merge:()=>NGt,parseHTML:()=>wGt,root:()=>RGt,text:()=>Fd,xml:()=>LH});var t0={};is(t0,{DocumentPosition:()=>pc,append:()=>lGt,appendChild:()=>uGt,compareDocumentPosition:()=>JOe,existsOne:()=>zOe,filter:()=>_x,find:()=>$k,findAll:()=>mGt,findOne:()=>Fk,findOneChild:()=>pGt,getAttributeValue:()=>iGt,getChildren:()=>Ex,getElementById:()=>yGt,getElements:()=>AGt,getElementsByClassName:()=>xGt,getElementsByTagName:()=>Sh,getElementsByTagType:()=>bGt,getFeed:()=>DH,getInnerHTML:()=>sGt,getName:()=>oGt,getOuterHTML:()=>KOe,getParent:()=>VOe,getSiblings:()=>PH,getText:()=>Lk,hasAttrib:()=>aGt,hasChildren:()=>rn,innerText:()=>tv,isCDATA:()=>yx,isComment:()=>_h,isDocument:()=>su,isTag:()=>st,isText:()=>Va,nextElementSibling:()=>Mk,prepend:()=>fGt,prependChild:()=>dGt,prevElementSibling:()=>Wk,removeElement:()=>$d,removeSubsets:()=>EGt,replaceElement:()=>cGt,testElement:()=>gGt,textContent:()=>Wd,uniqueSort:()=>Zp});var Tr;(function(t){t.Root="root",t.Text="text",t.Directive="directive",t.Comment="comment",t.Script="script",t.Style="style",t.Tag="tag",t.CDATA="cdata",t.Doctype="doctype"})(Tr||(Tr={}));function vOe(t){return t.type===Tr.Tag||t.type===Tr.Script||t.type===Tr.Style}var IOe=Tr.Root,COe=Tr.Text,TOe=Tr.Directive,wOe=Tr.Comment,ROe=Tr.Script,NOe=Tr.Style,OOe=Tr.Tag,POe=Tr.CDATA,kOe=Tr.Doctype;var Tk=class{constructor(){this.parent=null,this.prev=null,this.next=null,this.startIndex=null,this.endIndex=null}get parentNode(){return this.parent}set parentNode(e){this.parent=e}get previousSibling(){return this.prev}set previousSibling(e){this.prev=e}get nextSibling(){return this.next}set nextSibling(e){this.next=e}cloneNode(e=!1){return XS(this,e)}},zS=class extends Tk{constructor(e){super(),this.data=e}get nodeValue(){return this.data}set nodeValue(e){this.data=e}},ll=class extends zS{constructor(){super(...arguments),this.type=Tr.Text}get nodeType(){return 3}},xh=class extends zS{constructor(){super(...arguments),this.type=Tr.Comment}get nodeType(){return 8}},bh=class extends zS{constructor(e,r){super(r),this.name=e,this.type=Tr.Directive}get nodeType(){return 1}},YS=class extends Tk{constructor(e){super(),this.children=e}get firstChild(){var e;return(e=this.children[0])!==null&&e!==void 0?e:null}get lastChild(){return this.children.length>0?this.children[this.children.length-1]:null}get childNodes(){return this.children}set childNodes(e){this.children=e}},JS=class extends YS{constructor(){super(...arguments),this.type=Tr.CDATA}get nodeType(){return 4}},_o=class extends YS{constructor(){super(...arguments),this.type=Tr.Root}get nodeType(){return 9}},Eh=class extends YS{constructor(e,r,n=[],s=e==="script"?Tr.Script:e==="style"?Tr.Style:Tr.Tag){super(n),this.name=e,this.attribs=r,this.type=s}get nodeType(){return 1}get tagName(){return this.name}set tagName(e){this.name=e}get attributes(){return Object.keys(this.attribs).map(e=>{var r,n;return{name:e,value:this.attribs[e],namespace:(r=this["x-attribsNamespace"])===null||r===void 0?void 0:r[e],prefix:(n=this["x-attribsPrefix"])===null||n===void 0?void 0:n[e]}})}};function st(t){return vOe(t)}function yx(t){return t.type===Tr.CDATA}function Va(t){return t.type===Tr.Text}function _h(t){return t.type===Tr.Comment}function wk(t){return t.type===Tr.Directive}function su(t){return t.type===Tr.Root}function rn(t){return Object.prototype.hasOwnProperty.call(t,"children")}function XS(t,e=!1){let r;if(Va(t))r=new ll(t.data);else if(_h(t))r=new xh(t.data);else if(st(t)){let n=e?SH(t.children):[],s=new Eh(t.name,{...t.attribs},n);n.forEach(i=>i.parent=s),t.namespace!=null&&(s.namespace=t.namespace),t["x-attribsNamespace"]&&(s["x-attribsNamespace"]={...t["x-attribsNamespace"]}),t["x-attribsPrefix"]&&(s["x-attribsPrefix"]={...t["x-attribsPrefix"]}),r=s}else if(yx(t)){let n=e?SH(t.children):[],s=new JS(n);n.forEach(i=>i.parent=s),r=s}else if(su(t)){let n=e?SH(t.children):[],s=new _o(n);n.forEach(i=>i.parent=s),t["x-mode"]&&(s["x-mode"]=t["x-mode"]),r=s}else if(wk(t)){let n=new bh(t.name,t.data);t["x-name"]!=null&&(n["x-name"]=t["x-name"],n["x-publicId"]=t["x-publicId"],n["x-systemId"]=t["x-systemId"]),r=n}else throw new Error(`Not implemented yet: ${t.type}`);return r.startIndex=t.startIndex,r.endIndex=t.endIndex,t.sourceCodeLocation!=null&&(r.sourceCodeLocation=t.sourceCodeLocation),r}function SH(t){let e=t.map(r=>XS(r,!0));for(let r=1;r\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(t=>t.charCodeAt(0)));var Nk=new Uint16Array("\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map(t=>t.charCodeAt(0)));var vH,FQt=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),bx=(vH=String.fromCodePoint)!==null&&vH!==void 0?vH:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function ZS(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=FQt.get(t))!==null&&e!==void 0?e:t}var Xs;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(Xs||(Xs={}));var UQt=32,fc;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(fc||(fc={}));function IH(t){return t>=Xs.ZERO&&t<=Xs.NINE}function qQt(t){return t>=Xs.UPPER_A&&t<=Xs.UPPER_F||t>=Xs.LOWER_A&&t<=Xs.LOWER_F}function jQt(t){return t>=Xs.UPPER_A&&t<=Xs.UPPER_Z||t>=Xs.LOWER_A&&t<=Xs.LOWER_Z||IH(t)}function HQt(t){return t===Xs.EQUALS||jQt(t)}var Js;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(Js||(Js={}));var Md;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(Md||(Md={}));var Ok=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=Js.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Md.Strict}startEntity(e){this.decodeMode=e,this.state=Js.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case Js.EntityStart:return e.charCodeAt(r)===Xs.NUM?(this.state=Js.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=Js.NamedEntity,this.stateNamedEntity(e,r));case Js.NumericStart:return this.stateNumericStart(e,r);case Js.NumericDecimal:return this.stateNumericDecimal(e,r);case Js.NumericHex:return this.stateNumericHex(e,r);case Js.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|UQt)===Xs.LOWER_X?(this.state=Js.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=Js.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===Xs.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Md.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&fc.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~fc.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case Js.NamedEntity:return this.result!==0&&(this.decodeMode!==Md.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Js.NumericDecimal:return this.emitNumericEntity(0,2);case Js.NumericHex:return this.emitNumericEntity(0,3);case Js.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Js.EntityStart:return 0}}};function LOe(t){let e="",r=new Ok(t,n=>e+=bx(n));return function(s,i){let a=0,o=0;for(;(o=s.indexOf("&",o))>=0;){e+=s.slice(a,o),r.startEntity(i);let u=r.write(s,o+1);if(u<0){a=o+r.end();break}a=o+u,o=u===0?a+1:a}let c=e+s.slice(a);return e="",c}}function CH(t,e,r,n){let s=(e&fc.BRANCH_LENGTH)>>7,i=e&fc.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(un)o=c-1;else return t[c+s]}return-1}var kWr=LOe(Rk),DWr=LOe(Nk);function Pk(t){for(let e=1;e$\x80-\uFFFF]/g,MOe=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]),WOe=String.prototype.codePointAt!=null?(t,e)=>t.codePointAt(e):(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e);function ev(t){let e="",r=0,n;for(;(n=TH.exec(t))!==null;){let s=n.index,i=t.charCodeAt(s),a=MOe.get(i);a!==void 0?(e+=t.substring(r,s)+a,r=s+1):(e+=`${t.substring(r,s)}&#x${WOe(t,s).toString(16)};`,r=TH.lastIndex+=+((i&64512)===55296))}return e+t.substr(r)}function wH(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var $Oe=wH(/[&<>'"]/g,MOe),kk=wH(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),Dk=wH(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var FOe;(function(t){t[t.XML=0]="XML",t[t.HTML=1]="HTML"})(FOe||(FOe={}));var UOe;(function(t){t[t.UTF8=0]="UTF8",t[t.ASCII=1]="ASCII",t[t.Extensive=2]="Extensive",t[t.Attribute=3]="Attribute",t[t.Text=4]="Text"})(UOe||(UOe={}));var HOe=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(t=>[t.toLowerCase(),t])),QOe=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(t=>[t.toLowerCase(),t]));var KQt=new Set(["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"]);function VQt(t){return t.replace(/"/g,""")}function zQt(t,e){var r;if(!t)return;let n=((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)===!1?VQt:e.xmlMode||e.encodeEntities!=="utf8"?ev:kk;return Object.keys(t).map(s=>{var i,a;let o=(i=t[s])!==null&&i!==void 0?i:"";return e.xmlMode==="foreign"&&(s=(a=QOe.get(s))!==null&&a!==void 0?a:s),!e.emptyAttrs&&!e.xmlMode&&o===""?s:`${s}="${n(o)}"`}).join(" ")}var GOe=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]);function OH(t,e={}){let r="length"in t?t:[t],n="";for(let s=0;s0&&(n+=OH(t.children,e)),(e.xmlMode||!GOe.has(t.name))&&(n+=``)),n}function eGt(t){return`<${t.data}>`}function tGt(t,e){var r;let n=t.data||"";return((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)!==!1&&!(!e.xmlMode&&t.parent&&KQt.has(t.parent.name))&&(n=e.xmlMode||e.encodeEntities!=="utf8"?ev(n):Dk(n)),n}function rGt(t){return``}function nGt(t){return``}function KOe(t,e){return Bk(t,e)}function sGt(t,e){return rn(t)?t.children.map(r=>KOe(r,e)).join(""):""}function Lk(t){return Array.isArray(t)?t.map(Lk).join(""):st(t)?t.name==="br"?` -`:Lk(t.children):yx(t)?Lk(t.children):Va(t)?t.data:""}function Wd(t){return Array.isArray(t)?t.map(Wd).join(""):rn(t)&&!_h(t)?Wd(t.children):Va(t)?t.data:""}function tv(t){return Array.isArray(t)?t.map(tv).join(""):rn(t)&&(t.type===Tr.Tag||yx(t))?tv(t.children):Va(t)?t.data:""}function Ex(t){return rn(t)?t.children:[]}function VOe(t){return t.parent||null}function PH(t){let e=VOe(t);if(e!=null)return Ex(e);let r=[t],{prev:n,next:s}=t;for(;n!=null;)r.unshift(n),{prev:n}=n;for(;s!=null;)r.push(s),{next:s}=s;return r}function iGt(t,e){var r;return(r=t.attribs)===null||r===void 0?void 0:r[e]}function aGt(t,e){return t.attribs!=null&&Object.prototype.hasOwnProperty.call(t.attribs,e)&&t.attribs[e]!=null}function oGt(t){return t.name}function Mk(t){let{next:e}=t;for(;e!==null&&!st(e);)({next:e}=e);return e}function Wk(t){let{prev:e}=t;for(;e!==null&&!st(e);)({prev:e}=e);return e}function $d(t){if(t.prev&&(t.prev.next=t.next),t.next&&(t.next.prev=t.prev),t.parent){let e=t.parent.children,r=e.lastIndexOf(t);r>=0&&e.splice(r,1)}t.next=null,t.prev=null,t.parent=null}function cGt(t,e){let r=e.prev=t.prev;r&&(r.next=e);let n=e.next=t.next;n&&(n.prev=e);let s=e.parent=t.parent;if(s){let i=s.children;i[i.lastIndexOf(t)]=e,t.parent=null}}function uGt(t,e){if($d(e),e.next=null,e.parent=t,t.children.push(e)>1){let r=t.children[t.children.length-2];r.next=e,e.prev=r}else e.prev=null}function lGt(t,e){$d(e);let{parent:r}=t,n=t.next;if(e.next=n,e.prev=t,t.next=e,e.parent=r,n){if(n.prev=e,r){let s=r.children;s.splice(s.lastIndexOf(n),0,e)}}else r&&r.children.push(e)}function dGt(t,e){if($d(e),e.parent=t,e.prev=null,t.children.unshift(e)!==1){let r=t.children[1];r.prev=e,e.next=r}else e.next=null}function fGt(t,e){$d(e);let{parent:r}=t;if(r){let n=r.children;n.splice(n.indexOf(t),0,e)}t.prev&&(t.prev.next=e),e.parent=r,e.prev=t.prev,e.next=t,t.prev=e}function _x(t,e,r=!0,n=1/0){return $k(t,Array.isArray(e)?e:[e],r,n)}function $k(t,e,r,n){let s=[],i=[Array.isArray(e)?e:[e]],a=[0];for(;;){if(a[0]>=i[0].length){if(a.length===1)return s;i.shift(),a.shift();continue}let o=i[0][a[0]++];if(t(o)&&(s.push(o),--n<=0))return s;r&&rn(o)&&o.children.length>0&&(a.unshift(0),i.unshift(o.children))}}function pGt(t,e){return e.find(t)}function Fk(t,e,r=!0){let n=Array.isArray(e)?e:[e];for(let s=0;s0){let a=Fk(t,i.children,!0);if(a)return a}}return null}function zOe(t,e){return(Array.isArray(e)?e:[e]).some(r=>st(r)&&t(r)||rn(r)&&zOe(t,r.children))}function mGt(t,e){let r=[],n=[Array.isArray(e)?e:[e]],s=[0];for(;;){if(s[0]>=n[0].length){if(n.length===1)return r;n.shift(),s.shift();continue}let i=n[0][s[0]++];st(i)&&t(i)&&r.push(i),rn(i)&&i.children.length>0&&(s.unshift(0),n.unshift(i.children))}}var Uk={tag_name(t){return typeof t=="function"?e=>st(e)&&t(e.name):t==="*"?st:e=>st(e)&&e.name===t},tag_type(t){return typeof t=="function"?e=>t(e.type):e=>e.type===t},tag_contains(t){return typeof t=="function"?e=>Va(e)&&t(e.data):e=>Va(e)&&e.data===t}};function kH(t,e){return typeof e=="function"?r=>st(r)&&e(r.attribs[t]):r=>st(r)&&r.attribs[t]===e}function hGt(t,e){return r=>t(r)||e(r)}function YOe(t){let e=Object.keys(t).map(r=>{let n=t[r];return Object.prototype.hasOwnProperty.call(Uk,r)?Uk[r](n):kH(r,n)});return e.length===0?null:e.reduce(hGt)}function gGt(t,e){let r=YOe(t);return r?r(e):!0}function AGt(t,e,r,n=1/0){let s=YOe(t);return s?_x(s,e,r,n):[]}function yGt(t,e,r=!0){return Array.isArray(e)||(e=[e]),Fk(kH("id",t),e,r)}function Sh(t,e,r=!0,n=1/0){return _x(Uk.tag_name(t),e,r,n)}function xGt(t,e,r=!0,n=1/0){return _x(kH("class",t),e,r,n)}function bGt(t,e,r=!0,n=1/0){return _x(Uk.tag_type(t),e,r,n)}function EGt(t){let e=t.length;for(;--e>=0;){let r=t[e];if(e>0&&t.lastIndexOf(r,e-1)>=0){t.splice(e,1);continue}for(let n=r.parent;n;n=n.parent)if(t.includes(n)){t.splice(e,1);break}}return t}var pc;(function(t){t[t.DISCONNECTED=1]="DISCONNECTED",t[t.PRECEDING=2]="PRECEDING",t[t.FOLLOWING=4]="FOLLOWING",t[t.CONTAINS=8]="CONTAINS",t[t.CONTAINED_BY=16]="CONTAINED_BY"})(pc||(pc={}));function JOe(t,e){let r=[],n=[];if(t===e)return 0;let s=rn(t)?t:t.parent;for(;s;)r.unshift(s),s=s.parent;for(s=rn(e)?e:e.parent;s;)n.unshift(s),s=s.parent;let i=Math.min(r.length,n.length),a=0;for(;ac.indexOf(l)?o===e?pc.FOLLOWING|pc.CONTAINED_BY:pc.FOLLOWING:o===t?pc.PRECEDING|pc.CONTAINS:pc.PRECEDING}function Zp(t){return t=t.filter((e,r,n)=>!n.includes(e,r+1)),t.sort((e,r)=>{let n=JOe(e,r);return n&pc.PRECEDING?-1:n&pc.FOLLOWING?1:0}),t}function DH(t){let e=qk(CGt,t);return e?e.name==="feed"?_Gt(e):SGt(e):null}function _Gt(t){var e;let r=t.children,n={type:"atom",items:Sh("entry",r).map(a=>{var o;let{children:c}=a,u={media:XOe(c)};za(u,"id","id",c),za(u,"title","title",c);let l=(o=qk("link",c))===null||o===void 0?void 0:o.attribs.href;l&&(u.link=l);let d=e0("summary",c)||e0("content",c);d&&(u.description=d);let f=e0("updated",c);return f&&(u.pubDate=new Date(f)),u})};za(n,"id","id",r),za(n,"title","title",r);let s=(e=qk("link",r))===null||e===void 0?void 0:e.attribs.href;s&&(n.link=s),za(n,"description","subtitle",r);let i=e0("updated",r);return i&&(n.updated=new Date(i)),za(n,"author","email",r,!0),n}function SGt(t){var e,r;let n=(r=(e=qk("channel",t.children))===null||e===void 0?void 0:e.children)!==null&&r!==void 0?r:[],s={type:t.name.substr(0,3),id:"",items:Sh("item",t.children).map(a=>{let{children:o}=a,c={media:XOe(o)};za(c,"id","guid",o),za(c,"title","title",o),za(c,"link","link",o),za(c,"description","description",o);let u=e0("pubDate",o)||e0("dc:date",o);return u&&(c.pubDate=new Date(u)),c})};za(s,"title","title",n),za(s,"link","link",n),za(s,"description","description",n);let i=e0("lastBuildDate",n);return i&&(s.updated=new Date(i)),za(s,"author","managingEditor",n,!0),s}var vGt=["url","type","lang"],IGt=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function XOe(t){return Sh("media:content",t).map(e=>{let{attribs:r}=e,n={medium:r.medium,isDefault:!!r.isDefault};for(let s of vGt)r[s]&&(n[s]=r[s]);for(let s of IGt)r[s]&&(n[s]=parseInt(r[s],10));return r.expression&&(n.expression=r.expression),n})}function qk(t,e){return Sh(t,e,!0,1)[0]}function e0(t,e,r=!1){return Wd(Sh(t,e,r,1)).trim()}function za(t,e,r,n,s=!1){let i=e0(r,n,s);i&&(t[e]=i)}function CGt(t){return t==="rss"||t==="feed"||t==="rdf:RDF"}function ePe(t,e,r){return t?t(e??t._root.children,null,void 0,r).toString():""}function TGt(t,e){return!e&&typeof t=="object"&&t!=null&&!("length"in t)&&!("type"in t)}function BH(t,e){let r=TGt(t)?(e=t,void 0):t,n={...KS,...this===null||this===void 0?void 0:this._options,...VS(e??{})};return ePe(this,r,n)}function LH(t){let e={...this._options,xmlMode:!0};return ePe(this,t,e)}function Fd(t){let e=t||(this?this.root():[]),r="";for(let n=0;ncPe,attr:()=>PGt,data:()=>DGt,hasClass:()=>MGt,prop:()=>kGt,removeAttr:()=>LGt,removeClass:()=>uPe,toggleClass:()=>lPe,val:()=>BGt});function So(t){return t.cheerio!=null}function tPe(t){return t.replace(/[_.-](\w|$)/g,(e,r)=>r.toUpperCase())}function rPe(t){return t.replace(/[A-Z]/g,"-$&").toLowerCase()}function mn(t,e){let r=t.length;for(let n=0;nXS(n,!0)):[XS(t,!0)],r=new _o(e);return e.forEach(n=>{n.parent=r}),e}var vh;(function(t){t[t.LowerA=97]="LowerA",t[t.LowerZ=122]="LowerZ",t[t.UpperA=65]="UpperA",t[t.UpperZ=90]="UpperZ",t[t.Exclamation=33]="Exclamation"})(vh||(vh={}));function rv(t){let e=t.indexOf("<");if(e<0||e>t.length-3)return!1;let r=t.charCodeAt(e+1);return(r>=vh.LowerA&&r<=vh.LowerZ||r>=vh.UpperA&&r<=vh.UpperZ||r===vh.Exclamation)&&t.includes(">",e+2)}var Sx=Object.prototype.hasOwnProperty,nv=/\s+/,WH="data-",nPe={null:null,true:!0,false:!1},FH=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,OGt=/^{[^]*}$|^\[[^]*]$/;function Hk(t,e,r){var n;if(!(!t||!st(t))){if((n=t.attribs)!==null&&n!==void 0||(t.attribs={}),!e)return t.attribs;if(Sx.call(t.attribs,e))return!r&&FH.test(e)?e:t.attribs[e];if(t.name==="option"&&e==="value")return Fd(t.children);if(t.name==="input"&&(t.attribs.type==="radio"||t.attribs.type==="checkbox")&&e==="value")return"on"}}function vx(t,e,r){r===null?oPe(t,e):t.attribs[e]=`${r}`}function PGt(t,e){if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t!="string")throw new Error("Bad combination of arguments.");return mn(this,(r,n)=>{st(r)&&vx(r,t,e.call(r,n,r.attribs[t]))})}return mn(this,r=>{st(r)&&(typeof t=="object"?Object.keys(t).forEach(n=>{let s=t[n];vx(r,n,s)}):vx(r,t,e))})}return arguments.length>1?this:Hk(this[0],t,this.options.xmlMode)}function sPe(t,e,r){return e in t?t[e]:!r&&FH.test(e)?Hk(t,e,!1)!==void 0:Hk(t,e,r)}function $H(t,e,r,n){e in t?t[e]=r:vx(t,e,!n&&FH.test(e)?r?"":null:`${r}`)}function kGt(t,e){var r;if(typeof t=="string"&&e===void 0){let n=this[0];if(!n||!st(n))return;switch(t){case"style":{let s=this.css(),i=Object.keys(s);return i.forEach((a,o)=>{s[o]=a}),s.length=i.length,s}case"tagName":case"nodeName":return n.name.toUpperCase();case"href":case"src":{let s=(r=n.attribs)===null||r===void 0?void 0:r[t];return typeof URL<"u"&&(t==="href"&&(n.tagName==="a"||n.name==="link")||t==="src"&&(n.tagName==="img"||n.tagName==="iframe"||n.tagName==="audio"||n.tagName==="video"||n.tagName==="source"))&&s!==void 0&&this.options.baseURI?new URL(s,this.options.baseURI).href:s}case"innerText":return tv(n);case"textContent":return Wd(n);case"outerHTML":return this.clone().wrap("").parent().html();case"innerHTML":return this.html();default:return sPe(n,t,this.options.xmlMode)}}if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t=="object")throw new Error("Bad combination of arguments.");return mn(this,(n,s)=>{st(n)&&$H(n,t,e.call(n,s,sPe(n,t,this.options.xmlMode)),this.options.xmlMode)})}return mn(this,n=>{st(n)&&(typeof t=="object"?Object.keys(t).forEach(s=>{let i=t[s];$H(n,s,i,this.options.xmlMode)}):$H(n,t,e,this.options.xmlMode))})}}function iPe(t,e,r){var n;let s=t;(n=s.data)!==null&&n!==void 0||(s.data={}),typeof e=="object"?Object.assign(s.data,e):typeof e=="string"&&r!==void 0&&(s.data[e]=r)}function aPe(t,e){let r,n,s;e==null?(r=Object.keys(t.attribs).filter(i=>i.startsWith(WH)),n=r.map(i=>tPe(i.slice(WH.length)))):(r=[WH+rPe(e)],n=[e]);for(let i=0;i{st(i)&&(typeof t=="object"?iPe(i,t):iPe(i,t,e))}),this):Sx.call(s.data,t)?s.data[t]:aPe(s,t):aPe(s)}function BGt(t){let e=arguments.length===0,r=this[0];if(!r||!st(r))return e?void 0:this;switch(r.name){case"textarea":return this.text(t);case"select":{let n=this.find("option:selected");if(!e){if(this.attr("multiple")==null&&typeof t=="object")return this;this.find("option").removeAttr("selected");let s=typeof t!="object"?[t]:t;for(let i=0;iFd(s.children)):n.attr("value")}case"input":case"option":return e?this.attr("value"):this.attr("value",t)}}function oPe(t,e){!t.attribs||!Sx.call(t.attribs,e)||delete t.attribs[e]}function Qk(t){return t?t.trim().split(nv):[]}function LGt(t){let e=Qk(t);for(let r=0;r{st(n)&&oPe(n,e[r])});return this}function MGt(t){return this.toArray().some(e=>{let r=st(e)&&e.attribs.class,n=-1;if(r&&t.length)for(;(n=r.indexOf(t,n+1))>-1;){let s=n+t.length;if((n===0||nv.test(r[n-1]))&&(s===r.length||nv.test(r[s])))return!0}return!1})}function cPe(t){if(typeof t=="function")return mn(this,(n,s)=>{if(st(n)){let i=n.attribs.class||"";cPe.call([n],t.call(n,s,i))}});if(!t||typeof t!="string")return this;let e=t.split(nv),r=this.length;for(let n=0;n{st(s)&&uPe.call([s],t.call(s,i,s.attribs.class||""))});let e=Qk(t),r=e.length,n=arguments.length===0;return mn(this,s=>{if(st(s))if(n)s.attribs.class="";else{let i=Qk(s.attribs.class),a=!1;for(let o=0;o=0&&(i.splice(c,1),a=!0,o--)}a&&(s.attribs.class=i.join(" "))}})}function lPe(t,e){if(typeof t=="function")return mn(this,(a,o)=>{st(a)&&lPe.call([a],t.call(a,o,a.attribs.class||"",e),e)});if(!t||typeof t!="string")return this;let r=t.split(nv),n=r.length,s=typeof e=="boolean"?e?1:-1:0,i=this.length;for(let a=0;a=0&&l<0?c.push(r[u]):s<=0&&l>=0&&c.splice(l,1)}o.attribs.class=c.join(" ")}return this}var lQ={};is(lQ,{add:()=>QKt,addBack:()=>GKt,children:()=>RKt,closest:()=>EKt,contents:()=>NKt,each:()=>OKt,end:()=>HKt,eq:()=>$Kt,filter:()=>kKt,filterArray:()=>uQ,find:()=>AKt,first:()=>MKt,get:()=>FKt,has:()=>LKt,index:()=>qKt,is:()=>DKt,last:()=>WKt,map:()=>PKt,next:()=>_Kt,nextAll:()=>SKt,nextUntil:()=>vKt,not:()=>BKt,parent:()=>yKt,parents:()=>xKt,parentsUntil:()=>bKt,prev:()=>IKt,prevAll:()=>CKt,prevUntil:()=>TKt,siblings:()=>wKt,slice:()=>jKt,toArray:()=>UKt});var Ja=Re(wx(),1);var ZH=Re(n0(),1);var iu=Re(wx(),1),qd=Re(n0(),1);var ua=Re(wx(),1),IPe=new Map([[ua.SelectorType.Universal,50],[ua.SelectorType.Tag,30],[ua.SelectorType.Attribute,1],[ua.SelectorType.Pseudo,0]]);function iv(t){return!IPe.has(t.type)}var XGt=new Map([[ua.AttributeAction.Exists,10],[ua.AttributeAction.Equals,8],[ua.AttributeAction.Not,7],[ua.AttributeAction.Start,6],[ua.AttributeAction.End,6],[ua.AttributeAction.Any,5]]);function jH(t){let e=t.map(CPe);for(let r=1;r=0&&n>=1)):t.type===ua.SelectorType.Pseudo&&(t.data?t.name==="has"||t.name==="contains"?n=0:Array.isArray(t.data)?(n=Math.min(...t.data.map(s=>Math.min(...s.map(CPe)))),n<0&&(n=0)):n=2:n=3),n}var av=Re(n0(),1),ZGt=/[-[\]{}()*+?.,\\^$|#\s]/g;function TPe(t){return t.replace(ZGt,"\\$&")}var eKt=new Set(["accept","accept-charset","align","alink","axis","bgcolor","charset","checked","clear","codetype","color","compact","declare","defer","dir","direction","disabled","enctype","face","frame","hreflang","http-equiv","lang","language","link","media","method","multiple","nohref","noresize","noshade","nowrap","readonly","rel","rev","rules","scope","scrolling","selected","shape","target","text","type","valign","valuetype","vlink"]);function Ih(t,e){return typeof t.ignoreCase=="boolean"?t.ignoreCase:t.ignoreCase==="quirks"?!!e.quirksMode:!e.xmlMode&&eKt.has(t.name)}var wPe={equals(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return Ih(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return o!=null&&o.length===i.length&&o.toLowerCase()===i&&t(a)}):a=>n.getAttributeValue(a,s)===i&&t(a)},hyphen(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return Ih(e,r)?(i=i.toLowerCase(),function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a).toLowerCase()===i&&t(c)}):function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a)===i&&t(c)}},element(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(/\s/.test(i))return av.default.falseFunc;let a=new RegExp(`(?:^|\\s)${TPe(i)}(?:$|\\s)`,Ih(e,r)?"i":"");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}},exists(t,{name:e},{adapter:r}){return n=>r.hasAttrib(n,e)&&t(n)},start(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return a===0?av.default.falseFunc:Ih(e,r)?(i=i.toLowerCase(),o=>{let c=n.getAttributeValue(o,s);return c!=null&&c.length>=a&&c.substr(0,a).toLowerCase()===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.startsWith(i))&&t(o)}},end(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=-i.length;return a===0?av.default.falseFunc:Ih(e,r)?(i=i.toLowerCase(),o=>{var c;return((c=n.getAttributeValue(o,s))===null||c===void 0?void 0:c.substr(a).toLowerCase())===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.endsWith(i))&&t(o)}},any(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(i==="")return av.default.falseFunc;if(Ih(e,r)){let a=new RegExp(TPe(i),"i");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}}return a=>{var o;return!!(!((o=n.getAttributeValue(a,s))===null||o===void 0)&&o.includes(i))&&t(a)}},not(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return i===""?a=>!!n.getAttributeValue(a,s)&&t(a):Ih(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return(o==null||o.length!==i.length||o.toLowerCase()!==i)&&t(a)}):a=>n.getAttributeValue(a,s)!==i&&t(a)}};var PPe=Re(wx(),1);var tKt=new Set([9,10,12,13,32]),RPe=48,rKt=57;function NPe(t){if(t=t.trim().toLowerCase(),t==="even")return[2,0];if(t==="odd")return[2,1];let e=0,r=0,n=i(),s=a();if(e=RPe&&t.charCodeAt(e)<=rKt;)u=u*10+(t.charCodeAt(e)-RPe),e++;return e===c?null:u}function o(){for(;ei<=r;if(e===0)return i=>i===r;if(e===1)return r<0?HH.default.trueFunc:i=>i>=r;let n=Math.abs(e),s=(r%n+n)%n;return e>1?i=>i>=r&&i%n===s:i=>i<=r&&i%n===s}function Rx(t){return OPe(NPe(t))}var Ya=Re(n0(),1);function Vk(t,e){return r=>{let n=e.getParent(r);return n!=null&&e.isTag(n)&&t(r)}}var Nx={contains(t,e,{adapter:r}){return function(s){return t(s)&&r.getText(s).includes(e)}},icontains(t,e,{adapter:r}){let n=e.toLowerCase();return function(i){return t(i)&&r.getText(i).toLowerCase().includes(n)}},"nth-child"(t,e,{adapter:r,equals:n}){let s=Rx(e);return s===Ya.default.falseFunc?Ya.default.falseFunc:s===Ya.default.trueFunc?Vk(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u=0&&!n(a,o[u]);u--)r.isTag(o[u])&&c++;return s(c)&&t(a)}},"nth-of-type"(t,e,{adapter:r,equals:n}){let s=Rx(e);return s===Ya.default.falseFunc?Ya.default.falseFunc:s===Ya.default.trueFunc?Vk(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u=0;u--){let l=o[u];if(n(a,l))break;r.isTag(l)&&r.getName(l)===r.getName(a)&&c++}return s(c)&&t(a)}},root(t,e,{adapter:r}){return n=>{let s=r.getParent(n);return(s==null||!r.isTag(s))&&t(n)}},scope(t,e,r,n){let{equals:s}=r;return!n||n.length===0?Nx.root(t,e,r):n.length===1?i=>s(n[0],i)&&t(i):i=>n.includes(i)&&t(i)},hover:QH("isHovered"),visited:QH("isVisited"),active:QH("isActive")};function QH(t){return function(r,n,{adapter:s}){let i=s[t];return typeof i!="function"?Ya.default.falseFunc:function(o){return i(o)&&r(o)}}}var ov={empty(t,{adapter:e}){return!e.getChildren(t).some(r=>e.isTag(r)||e.getText(r)!=="")},"first-child"(t,{adapter:e,equals:r}){if(e.prevElementSibling)return e.prevElementSibling(t)==null;let n=e.getSiblings(t).find(s=>e.isTag(s));return n!=null&&r(t,n)},"last-child"(t,{adapter:e,equals:r}){let n=e.getSiblings(t);for(let s=n.length-1;s>=0;s--){if(r(t,n[s]))return!0;if(e.isTag(n[s]))break}return!1},"first-of-type"(t,{adapter:e,equals:r}){let n=e.getSiblings(t),s=e.getName(t);for(let i=0;i=0;i--){let a=n[i];if(r(t,a))return!0;if(e.isTag(a)&&e.getName(a)===s)break}return!1},"only-of-type"(t,{adapter:e,equals:r}){let n=e.getName(t);return e.getSiblings(t).every(s=>r(t,s)||!e.isTag(s)||e.getName(s)!==n)},"only-child"(t,{adapter:e,equals:r}){return e.getSiblings(t).every(n=>r(t,n)||!e.isTag(n))}};function GH(t,e,r,n){if(r===null){if(t.length>n)throw new Error(`Pseudo-class :${e} requires an argument`)}else if(t.length===n)throw new Error(`Pseudo-class :${e} doesn't have any arguments`)}var zk={"any-link":":is(a, area, link)[href]",link:":any-link:not(:visited)",disabled:`:is( +`),n=!1,s=!1,i;t.on("response",a=>{let{headers:o}=a;n=o["transfer-encoding"]==="chunked"&&!o["content-length"]}),t.on("socket",a=>{let o=()=>{if(n&&!s){let u=new Error("Premature close");u.code="ERR_STREAM_PREMATURE_CLOSE",e(u)}},c=u=>{s=EC.Buffer.compare(u.slice(-5),r)===0,!s&&i&&(s=EC.Buffer.compare(i.slice(-3),r.slice(0,3))===0&&EC.Buffer.compare(u.slice(-2),r.slice(3))===0),i=u};a.prependListener("close",o),a.on("data",c),t.on("close",()=>{a.removeListener("close",o),a.removeListener("data",c)})})}var E8e,_8e,Zh,wo,EC,xir,_C=dr(()=>{E8e=Re(require("node:http"),1),_8e=Re(require("node:https"),1),Zh=Re(require("node:zlib"),1),wo=Re(require("node:stream"),1),EC=require("node:buffer");P5e();CL();a8e();TL();x8e();wz();b8e();Bz();AL();bL();Mz();Oz();xir=new Set(["data:","http:","https:"])});function Cn(t){return Eir[t]||t}function Wz(t,e){if(!t)return()=>{};if(t.aborted)return e.abort(),()=>{};let r=()=>{e.abort()};return t.addEventListener("abort",r,{once:!0}),()=>{t.removeEventListener("abort",r)}}async function ge(t,e={}){let r=parseInt(e.retries||"0",10)||0,n=Array.isArray(e.validStatusCodes)?e.validStatusCodes:[],s;for(let a=0;a<=r;a++){let o=be.getStore()||"system";a>0?(_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${a} \u6B21\u91CD\u8BD5: ${t}`),s&&(s.cause?.code==="ETIMEDOUT"||s.cause?.code==="ECONNRESET"||s.name==="AbortError")?await new Promise(f=>setTimeout(f,100)):await new Promise(f=>setTimeout(f,Math.min(1e3*Math.pow(2,a-1),5e3)))):_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${t}`);let c=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,u=new AbortController,l=setTimeout(()=>u.abort(),c),d=Wz(e.signal,u);try{let f;if(typeof WebAssembly>"u"){_("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let g=(await Promise.resolve().then(()=>(_C(),wL))).default;f=await g(t,{method:"GET",headers:{...e.headers},signal:u.signal})}else f=await fetch(t,{method:"GET",headers:{...e.headers},signal:u.signal});if(clearTimeout(l),!f.ok&&!n.includes(f.status))throw new Error(`HTTP error! status: ${f.status}`);let p;if(e.base64Data){_("info","[Utils] [HTTP] base64\u6A21\u5F0F");let g=await f.arrayBuffer(),b=new Uint8Array(g),y="",x=32768;for(let v=0;v0&&(h["set-cookie"]=A.join(";")),a>0&&_("info",`[${o}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:m,status:f.status,headers:h}}catch(f){clearTimeout(l),s=f;let p=be.getStore()||"system";if(e.signal?.aborted)throw f;if(f.name==="AbortError"?(_("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,f.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u8D85\u65F6\u65F6\u95F4:",`${c}ms`),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`)):(_("error",`[${p}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,f.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u9519\u8BEF\u7C7B\u578B:",f.name),_("error","- \u6D88\u606F:",f.message),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${a+1}/${r+1}`),f.cause&&(_("error","- \u7801:",f.cause.code),_("error","- \u539F\u56E0:",f.cause.message))),a0?(_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u7B2C ${o} \u6B21\u91CD\u8BD5: ${t}`),i&&(i.cause?.code==="ETIMEDOUT"||i.cause?.code==="ECONNRESET"||i.name==="AbortError")?await new Promise(g=>setTimeout(g,100)):await new Promise(g=>setTimeout(g,Math.min(1e3*Math.pow(2,o-1),5e3)))):_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] HTTP POST: ${t}`);let u=parseInt(r.timeout||O.vodRequestTimeout||"5000",10)||5e3,l=new AbortController,d=setTimeout(()=>l.abort(),u),f=Wz(r.signal,l),{headers:p={},params:m,allow_redirects:h=!0}=r,A={method:"POST",headers:{...p},body:e,signal:l.signal};h||(A.redirect="manual");try{let g;if(typeof WebAssembly>"u"){_("info","[Utils] [HTTP] iOS\u73AF\u5883\u964D\u7EA7\u4F7F\u7528node-fetch");let x=(await Promise.resolve().then(()=>(_C(),wL))).default;g=await x(t,A)}else g=await fetch(t,A);clearTimeout(d);let b=await g.text();if(!g.ok&&!s.includes(g.status))throw _("error",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] response data: `,b),new Error(`HTTP error! status: ${g.status}`);let y;try{y=JSON.parse(b)}catch{y=b}return o>0&&_("info",`[${c}] [\u8BF7\u6C42\u6A21\u62DF] \u91CD\u8BD5\u6210\u529F`),{data:y,status:g.status,headers:Object.fromEntries(g.headers.entries())}}catch(g){clearTimeout(d),i=g;let b=be.getStore()||"system";if(r.signal?.aborted)throw g;if(g.name==="AbortError"?(_("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u8D85\u65F6:`,g.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u8D85\u65F6\u65F6\u95F4:",`${u}ms`),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`)):(_("error",`[${b}] [\u8BF7\u6C42\u6A21\u62DF] \u8BF7\u6C42\u5931\u8D25:`,g.message),_("error","\u8BE6\u7EC6\u8BCA\u65AD:"),_("error","- URL:",t),_("error","- \u9519\u8BEF\u7C7B\u578B:",g.name),_("error","- \u6D88\u606F:",g.message),_("error",`- \u5F53\u524D\u5C1D\u8BD5: ${o+1}/${n+1}`),g.cause&&(_("error","- \u7801:",g.cause.code),_("error","- \u539F\u56E0:",g.cause.message))),o]*>(.*?)<\/title>/i);return n&&n[1]?n[1].replace(/ /g," ").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").trim():t}catch(e){let r=be.getStore()||"system";return _("error",`[${r}] \u83B7\u53D6\u6807\u9898\u5931\u8D25: ${e.message}`),t}}function Be(t,e=200){return new Response(JSON.stringify(t),{status:e,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}function I8e(t,e=200){if(typeof t!="string"||!t.trim().startsWith("s,n="";for(let s in t)t.hasOwnProperty(s)&&(n.length>0&&(n+="&"),n+=r(s)+"="+r(t[s]));return n}function SC(t={}){let e={};for(let[s,i]of Object.entries(t))typeof i=="boolean"?e[s]=i?"true":"false":i==null?e[s]="":e[s]=String(i);let r=[];for(let s in e)Object.prototype.hasOwnProperty.call(e,s)&&r.push(s);r.sort();let n=[];for(let s of r){let i=encodeURIComponent(s),a=encodeURIComponent(e[s]);n.push(`${i}=${a}`)}return n.join("&")}function db(t,e){let r=t,n="",s=t.indexOf("#"),i="";s!==-1&&(r=t.substring(0,s),i=t.substring(s));let a=r.indexOf("?");a!==-1&&(n=r.substring(a+1),r=r.substring(0,a));let o={};if(n){let u=n.split("&");for(let l of u)if(l){let[d,f=""]=l.split("=").map(decodeURIComponent);o[d]=f}}for(let u in e)Object.prototype.hasOwnProperty.call(e,u)&&(o[u]=e[u]);let c=[];for(let u in o)Object.prototype.hasOwnProperty.call(o,u)&&c.push(`${encodeURIComponent(u)}=${encodeURIComponent(o[u])}`);return r+(c.length?"?"+c.join("&"):"")+i}function T8e(t){let e=t.indexOf("//")+2;e===1&&(e=0);let r=t.indexOf("/",e);if(r===-1)return"/";let n=t.indexOf("?",r),s=t.indexOf("#",r),i=n!==-1?n:s!==-1?s:t.length;return t.substring(r,i)||"/"}async function Fz(t,e={},r){let{headers:n={},sniffLimit:s}=e,i=parseInt(s||"32768",10)||32768,a=parseInt(e.timeout||O.vodRequestTimeout||"5000",10)||5e3,o=new AbortController,c=setTimeout(()=>o.abort(),a),u=Wz(e.signal,o);try{let l=be.getStore()||"system";_("info",`[${l}] [\u6D41\u5F0F\u8BF7\u6C42] HTTP GET: ${t}`);let d=await fetch(t,{method:"GET",headers:n,signal:o.signal});if(!d.ok)throw new Error(`HTTP error! status: ${d.status}`);let f=d.body.getReader?d.body.getReader():null;if(!f){let v=be.getStore()||"system";_("warn",`[${v}] [\u6D41\u5F0F\u8BF7\u6C42] \u73AF\u5883\u4E0D\u652F\u6301\u6D41\u5F0F\u8BFB\u53D6,\u56DE\u9000\u5230\u666E\u901A\u8BF7\u6C42`);let C=await d.text();if(clearTimeout(c),r&&!r(C.slice(0,i)))return _("info",`[${v}] [\u6D41\u5F0F\u8BF7\u6C42] \u68C0\u6D4B\u5230\u65E0\u6548\u6570\u636E(\u56DE\u9000\u6A21\u5F0F),\u4E22\u5F03\u7ED3\u679C`),null;try{return JSON.parse(C)}catch{return C}}let p=0,m=[],h=!1,A="",g=!1;for(;;){let{done:v,value:C}=await f.read();if(v)break;if(p+=C.length,!g&&r){let R=new TextDecoder("utf-8").decode(C,{stream:!0});if(A+=R,!r(A)){let w=be.getStore()||"system";_("info",`[${w}] [\u6D41\u5F0F\u8BF7\u6C42] \u55C5\u63A2\u5230\u65E0\u6548\u7279\u5F81(\u5DF2\u8BFB${p}\u5B57\u8282),\u7ACB\u5373\u7194\u65AD`),o.abort(),h=!0;break}p>i&&(g=!0,A=null)}m.push(C)}if(clearTimeout(c),h)return null;let b=new Uint8Array(p),y=0;for(let v of m)b.set(v,y),y+=v.length;let x=new TextDecoder("utf-8").decode(b);try{return JSON.parse(x)}catch{return x}}catch(l){let d=be.getStore()||"system";return clearTimeout(c),l.name==="AbortError"||_("error",`[${d}] [\u6D41\u5F0F\u8BF7\u6C42] \u5931\u8D25: ${l.message}`),null}finally{u()}}var S8e,be,Eir,ar=dr(()=>{Pt();St();S8e=require("node:async_hooks"),be=new S8e.AsyncLocalStorage,Eir={360:"360kan",imgo:"mango"}});function an(t){let e=0;for(let r=0;r>>0}return e.toString(16)}function fb(t,e){return t==="lastSelectMap"&&e instanceof Map?JSON.stringify(Object.fromEntries(e)):JSON.stringify(e)}function Ls(t){function e(y){let x="";for(let v=0;v>6),x+=String.fromCharCode(128|C&63)):(x+=String.fromCharCode(224|C>>12),x+=String.fromCharCode(128|C>>6&63),x+=String.fromCharCode(128|C&63))}return x}t=e(t);function r(y,x){return y<>>32-x}function n(y,x){let v=y&1073741824,C=x&1073741824,R=y&2147483648,w=x&2147483648,N=(y&1073741823)+(x&1073741823);return v&C?N^2147483648^R^w:v|C?N&1073741824?N^3221225472^R^w:N^1073741824^R^w:N^R^w}function s(y,x,v){return y&x|~y&v}function i(y,x,v){return y&v|x&~v}function a(y,x,v){return y^x^v}function o(y,x,v){return x^(y|~v)}function c(y,x,v,C,R,w,N){return y=n(y,n(n(s(x,v,C),R),N)),n(r(y,w),x)}function u(y,x,v,C,R,w,N){return y=n(y,n(n(i(x,v,C),R),N)),n(r(y,w),x)}function l(y,x,v,C,R,w,N){return y=n(y,n(n(a(x,v,C),R),N)),n(r(y,w),x)}function d(y,x,v,C,R,w,N){return y=n(y,n(n(o(x,v,C),R),N)),n(r(y,w),x)}function f(y){let x=y.length,v=((x+8>>>6)+1)*16,C=new Array(v).fill(0);for(let R=0;R>2]|=y.charCodeAt(R)<>2]|=128<>>v*8&255).toString(16);x+=R.substr(R.length-2,2)}return x}let m=f(t),h=1732584193,A=4023233417,g=2562383102,b=271733878;for(let y=0;y>3,d=u&7;if(d===0){let[f,p]=jz(i,o);switch(o=p,l){case 1:c.id=f;break;case 2:c.progress=f;break;case 3:c.mode=f;break;case 4:c.fontsize=f;break;case 5:c.color=f;break;case 8:c.ctime=f;break;case 9:c.weight=f;break;case 11:c.pool=f;break;case 13:c.attr=f;break;case 15:c.like_num=f;break;case 17:c.dm_type_v2=f;break}}else if(d===2){let[f,p]=w8e(i,o);switch(o=p,l){case 6:c.midHash=Cc(f);break;case 7:c.content=Cc(f);break;case 10:c.action=Cc(f);break;case 12:c.idStr=Cc(f);break;case 14:c.animation=Cc(f);break;case 16:c.color_v2=Cc(f);break}}else{let[f,p]=jz(i,o);o=p}}r.push(c)}return r}function jz(t,e){let r=0n,n=0n,s=e;for(;;){let i=t[s++];if(r|=BigInt(i&127)<>>0)%9999999,e<1e4?e+1e4:e}function R8e(t,e){let r=new Uint8Array(t.length);for(let n=0;nP8e[e]))}function OL(t){let s=new Array(44);for(let i=0;i<4;i++)s[i]=t.slice(4*i,4*i+4);for(let i=4;i<4*11;i++){let a=s[i-1];i%4===0&&(a=R8e(NL(Sir(a)),Uint8Array.from([_ir[i/4],0,0,0]))),s[i]=R8e(s[i-4],a)}return s}function vir(t,e){let s=new Uint8Array(t);s=Uz(s,e.slice(10*4,11*4));for(let i=9;i>=1;i--)s=CC(s),s=vC(s),s=Uz(s,e.slice(i*4,(i+1)*4)),s=Cir(s);return s=CC(s),s=vC(s),s=Uz(s,e.slice(0,4)),s}function Uz(t,e){let r=new Uint8Array(16);for(let n=0;n<4;n++)for(let s=0;s<4;s++)r[s+4*n]=t[s+4*n]^e[n][s];return r}function vC(t){let e=new Array(256);for(let r=0;r<256;r++)e[P8e[r]]=r;return Uint8Array.from(t.map(r=>e[r]))}function CC(t){let e=new Uint8Array(16);for(let r=0;r<4;r++)for(let n=0;n<4;n++)e[r+4*n]=t[r+4*((n-r+4)%4)];return e}function Cir(t){function e(n,s){let i=0;for(let a=0;a<8;a++){s&1&&(i^=n);let o=n&128;n=n<<1&255,o&&(n^=27),s>>=1}return i}let r=new Uint8Array(16);for(let n=0;n<4;n++){let s=t.slice(4*n,4*n+4);r[4*n+0]=e(s[0],14)^e(s[1],11)^e(s[2],13)^e(s[3],9),r[4*n+1]=e(s[0],9)^e(s[1],14)^e(s[2],11)^e(s[3],13),r[4*n+2]=e(s[0],13)^e(s[1],9)^e(s[2],14)^e(s[3],11),r[4*n+3]=e(s[0],11)^e(s[1],13)^e(s[2],9)^e(s[3],14)}return r}function Iir(t,e){let r=OL(e),n=16,s=new Uint8Array(t.length);for(let i=0;i=8&&(s-=8,r+=String.fromCharCode(n>>s&255))}return r}function Cc(t){let e="",r=0;for(;r=192&&n<224){let s=t[r++];e+=String.fromCharCode((n&31)<<6|s&63)}else if(n>=224&&n<240){let s=t[r++],i=t[r++];e+=String.fromCharCode((n&15)<<12|(s&63)<<6|i&63)}else if(n>=240){let s=t[r++],i=t[r++],a=t[r++],c=((n&7)<<18|(s&63)<<12|(i&63)<<6|a&63)-65536;e+=String.fromCharCode(55296+(c>>10),56320+(c&1023))}}return e}function eg(t){let e=[];for(let r=0;r>6),e.push(128|n&63);else if(n<55296||n>=57344)e.push(224|n>>12),e.push(128|n>>6&63),e.push(128|n&63);else{r++;let s=t.charCodeAt(r),i=65536+((n&1023)<<10|s&1023);e.push(240|i>>18),e.push(128|i>>12&63),e.push(128|i>>6&63),e.push(128|i&63)}}return new Uint8Array(e)}function Rir(t,e){try{let r=IC(t),n=eg(e),s=Iir(r,n),i=Tir(s);return Cc(i)}catch(r){return _("error","[Utils] [Codec]",r),null}}function TC(t){let e=typeof t=="string"?t.trim():JSON.stringify(t??"");try{return JSON.parse(e)}catch{}let n=Rir(e,"3b744389882a4067");if(n!=null)try{return JSON.parse(n)}catch{return n}return e}function Nir(t){let e=[];for(let r=0;r>6),e.push(128|n&63)):n<65536&&(e.push(224|n>>12),e.push(128|n>>6&63),e.push(128|n&63))}return e}function PL(t){let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r="",n;for(n=0;n+2>2],r+=e[(t[n]&3)<<4|t[n+1]>>4],r+=e[(t[n+1]&15)<<2|t[n+2]>>6],r+=e[t[n+2]&63];return n>2],n+1>4],r+=e[(t[n+1]&15)<<2],r+="="):(r+=e[(t[n]&3)<<4],r+="==")),r}function qz(t){function e(u,l){return l>>>u|l<<32-u}let r=Math.pow(2,32),n=[],s=t.length*8;for(let u=0;u>2]|=t.charCodeAt(u)<<(3-u)%4*8;n[t.length>>2]|=128<<(3-t.length%4)*8,n[(t.length+8>>6)*16+15]=s;let i=new Array(64),a=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],o=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];for(let u=0;u>>3,P=e(17,i[b-2])^e(19,i[b-2])^i[b-2]>>>10;i[b]=i[b-16]+N+i[b-7]+P|0}let y=e(6,m)^e(11,m)^e(25,m),x=m&h^~m&A,v=g+y+x+o[b]+i[b]|0,C=e(2,l)^e(13,l)^e(22,l),R=l&d^l&f^d&f,w=C+R|0;g=A,A=h,h=m,m=p+v|0,p=f,f=d,d=l,l=v+w|0}a[0]=a[0]+l|0,a[1]=a[1]+d|0,a[2]=a[2]+f|0,a[3]=a[3]+p|0,a[4]=a[4]+m|0,a[5]=a[5]+h|0,a[6]=a[6]+A|0,a[7]=a[7]+g|0}let c=[];for(let u of a)c.push(u>>24&255),c.push(u>>16&255),c.push(u>>8&255),c.push(u&255);return c}function D8e(t,e){let n=Nir(t);n.length>64&&(n=qz(t)),n.length<64&&(n=n.concat(Array(64-n.length).fill(0)));let s=n.map(c=>c^92),i=n.map(c=>c^54),a=qz(String.fromCharCode(...i)+e),o=qz(String.fromCharCode(...s)+String.fromCharCode(...a));return PL(o)}function wC(t,e,r,n){let s=t+"t"+e;return r&&Object.keys(r).sort().forEach(a=>{s+=a+r[a]}),s+=n,Ls(s)}function N8e(t){if(t<=65535)return String.fromCharCode(t);t-=65536;let e=(t>>10)+55296,r=(t&1023)+56320;return String.fromCharCode(e,r)}function cf(t){if(!t)return t;let e={"<":"<",">":">","&":"&",""":'"',"'":"'"};return t.replace(/&[a-zA-Z]+;/g,r=>e[r]||r).replace(/&#(\d+);/g,(r,n)=>N8e(parseInt(n,10))).replace(/&#x([0-9a-fA-F]+);/g,(r,n)=>N8e(parseInt(n,16)))}var P8e,_ir,Is=dr(()=>{St();P8e=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],_ir=[0,1,2,4,8,16,32,64,128,27,54]});var L8e={};is(L8e,{getRedisCaches:()=>Gz,getRedisKey:()=>Oir,judgeRedisValid:()=>Vz,pingRedis:()=>k8e,runPipeline:()=>Qz,setRedisKey:()=>Hz,setRedisKeyWithExpiry:()=>Pir,updateRedisCaches:()=>DL});async function k8e(){let t=`${O.redisUrl}/ping`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PING \u8BF7\u6C42:",t);try{return await(await fetch(t,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(e){_("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",e.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",e.name),e.cause&&(_("error","- [Utils] [Redis] \u7801:",e.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",e.cause.message))}}async function Oir(t){let e=`${O.redisUrl}/get/${t}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 GET \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"GET",headers:{Authorization:`Bearer ${O.redisToken}`}})).json()}catch(r){_("error","[Utils] [Redis] \u8BF7\u6C42\u5931\u8D25:",r.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(_("error","- [Utils] [Redis] \u7801:",r.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function Hz(t,e){let r=fb(t,e),n=an(r);if(O.lastHashes[t]===n)return _("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};let s=`${O.redisUrl}/set/${t}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SET \u8BF7\u6C42:",s);try{let a=await(await fetch(s,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:r})).json();return O.lastHashes[t]=n,_("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),a}catch(i){_("error","[Utils] [Redis] SET \u8BF7\u6C42\u5931\u8D25:",i.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",i.name),i.cause&&(_("error","- [Utils] [Redis] \u7801:",i.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",i.cause.message))}}async function Pir(t,e,r){let n=fb(t,e),s=an(n);if(O.lastHashes[t]===s)return _("info",`[Utils] [Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};let i=`${O.redisUrl}/set/${t}?EX=${r}`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 SETEX \u8BF7\u6C42:",i);try{let o=await(await fetch(i,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:n})).json();return O.lastHashes[t]=s,_("info",`[Utils] [Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),o}catch(a){_("error","[Utils] [Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",a.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",a.name),a.cause&&(_("error","- [Utils] [Redis] \u7801:",a.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",a.cause.message))}}async function Qz(t){let e=`${O.redisUrl}/pipeline`;_("info","[Utils] [Redis] \u5F00\u59CB\u53D1\u9001 PIPELINE \u8BF7\u6C42:",e);try{return await(await fetch(e,{method:"POST",headers:{Authorization:`Bearer ${O.redisToken}`,"Content-Type":"application/json"},body:JSON.stringify(t)})).json()}catch(r){_("error","[Utils] [Redis] Pipeline \u8BF7\u6C42\u5931\u8D25:",r.message),_("error","- [Utils] [Redis] \u9519\u8BEF\u7C7B\u578B:",r.name),r.cause&&(_("error","- [Utils] [Redis] \u7801:",r.cause.code),_("error","- [Utils] [Redis] \u539F\u56E0:",r.cause.message))}}async function Gz(){if(!O.redisCacheInitialized)try{_("info","[Utils] [Redis] getRedisCaches start.");let e=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"].map(s=>["GET",s]),r=await Qz(e);O.animes=r[0].result?JSON.parse(r[0].result):O.animes,O.episodeIds=r[1].result?JSON.parse(r[1].result):O.episodeIds,O.episodeNum=r[2].result?JSON.parse(r[2].result):O.episodeNum,O.reqRecords=r[3].result?JSON.parse(r[3].result):O.reqRecords;let n=r[4].result?JSON.parse(r[4].result):null;n&&typeof n=="object"&&(O.lastSelectMap=new Map(Object.entries(n)),_("info",`[Utils] [Redis] Restored lastSelectMap from Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=r[5].result?parseInt(r[5].result,10):O.todayReqNum,O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.redisCacheInitialized=!0,_("info","[Utils] [Redis] getRedisCaches completed successfully.")}catch(t){_("error",`[Utils] [Redis] getRedisCaches failed: ${t.message}`,t.stack),O.redisCacheInitialized=!0}}async function DL(){try{_("info","[Utils] [Redis] updateCaches start.");let t=[],e=[],r=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:n,value:s}of r){let i=JSON.stringify(n==="lastSelectMap"?Object.fromEntries(s):s),a=an(i);a!==O.lastHashes[n]&&(t.push(["SET",n,i]),e.push({key:n,hash:a}))}if(t.length>0){_("info",`[Utils] [Redis] Updating ${t.length} changed keys: ${e.map(a=>a.key).join(", ")}`);let n=await Qz(t),s=0,i=0;Array.isArray(n)&&n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,_("warn",`[Utils] [Redis] Failed to update Redis key: ${e[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(e.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),_("info",`[Utils] [Redis] Redis update completed successfully: ${s} keys updated`)):_("warn",`[Utils] [Redis] Redis update partially failed: ${s} succeeded, ${i} failed`)}else _("info","[Utils] [Redis] No changes detected, skipping Redis update.")}catch(t){_("error",`[Utils] [Redis] updateRedisCaches failed: ${t.message}`,t.stack),_("error",`[Utils] [Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function Vz(t){if(!O.redisValid&&O.redisUrl&&O.redisToken&&t!=="/favicon.ico"&&t!=="/robots.txt"){let e=await k8e();e&&e.result&&e.result==="PONG"&&(O.redisValid=!0)}}var kL=dr(()=>{Pt();St();Is()});function B8e(){return"\u9515\u7691\u853C\u788D\u7231\u55F3\u5AD2\u7477\u66A7\u972D\u8C19\u94F5\u9E4C\u80AE\u8884\u5965\u5AAA\u9A9C\u9CCC\u575D\u7F62\u94AF\u6446\u8D25\u5457\u9881\u529E\u7ECA\u94A3\u5E2E\u7ED1\u9551\u8C24\u5265\u9971\u5B9D\u62A5\u9C8D\u9E28\u9F85\u8F88\u8D1D\u94A1\u72C8\u5907\u60EB\u9E4E\u8D32\u951B\u7EF7\u7B14\u6BD5\u6BD9\u5E01\u95ED\u835C\u54D4\u6ED7\u94CB\u7B5A\u8DF8\u8FB9\u7F16\u8D2C\u53D8\u8FA9\u8FAB\u82C4\u7F0F\u7B3E\u6807\u9AA0\u98D1\u98D9\u9556\u9573\u9CD4\u9CD6\u522B\u762A\u6FD2\u6EE8\u5BBE\u6448\u50A7\u7F24\u69DF\u6BA1\u8191\u9554\u9ACC\u9B13\u997C\u7980\u62E8\u94B5\u94C2\u9A73\u997D\u94B9\u9E41\u8865\u94B8\u8D22\u53C2\u8695\u6B8B\u60ED\u60E8\u707F\u9A96\u9EEA\u82CD\u8231\u4ED3\u6CA7\u5395\u4FA7\u518C\u6D4B\u607B\u5C42\u8BE7\u9538\u4FAA\u9497\u6400\u63BA\u8749\u998B\u8C17\u7F20\u94F2\u4EA7\u9610\u98A4\u5181\u8C04\u8C36\u8487\u5FCF\u5A75\u9AA3\u89C7\u7985\u9561\u573A\u5C1D\u957F\u507F\u80A0\u5382\u7545\u4F25\u82CC\u6005\u960A\u9CB3\u949E\u8F66\u5F7B\u7817\u5C18\u9648\u886C\u4F27\u8C0C\u6987\u789C\u9F80\u6491\u79F0\u60E9\u8BDA\u9A8B\u67A8\u67FD\u94D6\u94DB\u75F4\u8FDF\u9A70\u803B\u9F7F\u70BD\u996C\u9E31\u51B2\u51B2\u866B\u5BA0\u94F3\u7574\u8E0C\u7B79\u7EF8\u4FE6\u5E31\u96E0\u6A71\u53A8\u9504\u96CF\u7840\u50A8\u89E6\u5904\u520D\u7ECC\u8E70\u4F20\u948F\u75AE\u95EF\u521B\u6006\u9524\u7F0D\u7EAF\u9E51\u7EF0\u8F8D\u9F8A\u8F9E\u8BCD\u8D50\u9E5A\u806A\u8471\u56F1\u4ECE\u4E1B\u82C1\u9AA2\u679E\u51D1\u8F8F\u8E7F\u7A9C\u64BA\u9519\u9509\u9E7E\u8FBE\u54D2\u9791\u5E26\u8D37\u9A80\u7ED0\u62C5\u5355\u90F8\u63B8\u80C6\u60EE\u8BDE\u5F39\u6B9A\u8D55\u7605\u7BAA\u5F53\u6321\u515A\u8361\u6863\u8C20\u7800\u88C6\u6363\u5C9B\u7977\u5BFC\u76D7\u7118\u706F\u9093\u956B\u654C\u6DA4\u9012\u7F14\u7C74\u8BCB\u8C1B\u7EE8\u89CC\u955D\u98A0\u70B9\u57AB\u7535\u5DC5\u94BF\u766B\u9493\u8C03\u94EB\u9CB7\u8C0D\u53E0\u9CBD\u9489\u9876\u952D\u8BA2\u94E4\u4E22\u94E5\u4E1C\u52A8\u680B\u51BB\u5CBD\u9E2B\u7AA6\u728A\u72EC\u8BFB\u8D4C\u9540\u6E0E\u691F\u724D\u7B03\u9EE9\u953B\u65AD\u7F0E\u7C16\u5151\u961F\u5BF9\u603C\u9566\u5428\u987F\u949D\u7096\u8DB8\u593A\u5815\u94CE\u9E45\u989D\u8BB9\u6076\u997F\u8C14\u57A9\u960F\u8F6D\u9507\u9537\u9E57\u989A\u989B\u9CC4\u8BF6\u513F\u5C14\u9975\u8D30\u8FE9\u94D2\u9E38\u9C95\u53D1\u7F5A\u9600\u73D0\u77FE\u9492\u70E6\u8D29\u996D\u8BBF\u7EBA\u94AB\u9C82\u98DE\u8BFD\u5E9F\u8D39\u7EEF\u9544\u9CB1\u7EB7\u575F\u594B\u6124\u7CAA\u507E\u4E30\u67AB\u950B\u98CE\u75AF\u51AF\u7F1D\u8BBD\u51E4\u6CA3\u80A4\u8F90\u629A\u8F85\u8D4B\u590D\u8D1F\u8BA3\u5987\u7F1A\u51EB\u9A78\u7EC2\u7ECB\u8D59\u9EB8\u9C8B\u9CC6\u9486\u8BE5\u9499\u76D6\u8D45\u6746\u8D76\u79C6\u8D63\u5C34\u64C0\u7EC0\u5188\u521A\u94A2\u7EB2\u5C97\u6206\u9550\u777E\u8BF0\u7F1F\u9506\u6401\u9E3D\u9601\u94EC\u4E2A\u7EA5\u9549\u988D\u7ED9\u4E98\u8D53\u7EE0\u9CA0\u9F9A\u5BAB\u5DE9\u8D21\u94A9\u6C9F\u82DF\u6784\u8D2D\u591F\u8BDF\u7F11\u89CF\u86CA\u987E\u8BC2\u6BC2\u94B4\u9522\u9E2A\u9E44\u9E58\u5250\u6302\u9E39\u63B4\u5173\u89C2\u9986\u60EF\u8D2F\u8BD6\u63BC\u9E73\u9CCF\u5E7F\u72B7\u89C4\u5F52\u9F9F\u95FA\u8F68\u8BE1\u8D35\u523D\u5326\u523F\u59AB\u6867\u9C91\u9CDC\u8F8A\u6EDA\u886E\u7EF2\u9CA7\u9505\u56FD\u8FC7\u57DA\u5459\u5E3C\u6901\u8748\u94EA\u9A87\u97E9\u6C49\u961A\u7ED7\u9889\u53F7\u704F\u98A2\u9602\u9E64\u8D3A\u8BC3\u9616\u86CE\u6A2A\u8F70\u9E3F\u7EA2\u9EC9\u8BA7\u836D\u95F3\u9C8E\u58F6\u62A4\u6CAA\u6237\u6D52\u9E55\u54D7\u534E\u753B\u5212\u8BDD\u9A85\u6866\u94E7\u6000\u574F\u6B22\u73AF\u8FD8\u7F13\u6362\u5524\u75EA\u7115\u6DA3\u5942\u7F33\u953E\u9CA9\u9EC4\u8C0E\u9CC7\u6325\u8F89\u6BC1\u8D3F\u79FD\u4F1A\u70E9\u6C47\u8BB3\u8BF2\u7ED8\u8BD9\u835F\u54D5\u6D4D\u7F0B\u73F2\u6656\u8364\u6D51\u8BE8\u9984\u960D\u83B7\u8D27\u7978\u94AC\u956C\u51FB\u673A\u79EF\u9965\u8FF9\u8BA5\u9E21\u7EE9\u7F09\u6781\u8F91\u7EA7\u6324\u51E0\u84DF\u5242\u6D4E\u8BA1\u8BB0\u9645\u7EE7\u7EAA\u8BA6\u8BD8\u8360\u53FD\u54DC\u9AA5\u7391\u89CA\u9F51\u77F6\u7F81\u867F\u8DFB\u9701\u9C9A\u9CAB\u5939\u835A\u988A\u8D3E\u94BE\u4EF7\u9A7E\u90CF\u6D43\u94D7\u9553\u86F2\u6B7C\u76D1\u575A\u7B3A\u95F4\u8270\u7F04\u8327\u68C0\u78B1\u7877\u62E3\u6361\u7B80\u4FED\u51CF\u8350\u69DB\u9274\u8DF5\u8D31\u89C1\u952E\u8230\u5251\u996F\u6E10\u6E85\u6DA7\u8C0F\u7F23\u620B\u622C\u7751\u9E63\u7B15\u9CA3\u97AF\u5C06\u6D46\u848B\u6868\u5956\u8BB2\u9171\u7EDB\u7F30\u80F6\u6D47\u9A84\u5A07\u6405\u94F0\u77EB\u4FA5\u811A\u997A\u7F34\u7EDE\u8F7F\u8F83\u6322\u5CE4\u9E6A\u9C9B\u9636\u8282\u6D01\u7ED3\u8BEB\u5C4A\u7596\u988C\u9C92\u7D27\u9526\u4EC5\u8C28\u8FDB\u664B\u70EC\u5C3D\u52B2\u8346\u830E\u537A\u8369\u9991\u7F19\u8D46\u89D0\u9CB8\u60CA\u7ECF\u9888\u9759\u955C\u5F84\u75C9\u7ADE\u51C0\u522D\u6CFE\u8FF3\u5F2A\u80EB\u9753\u7EA0\u53A9\u65E7\u9604\u9E20\u9E6B\u9A79\u4E3E\u636E\u952F\u60E7\u5267\u8BB5\u5C66\u6989\u98D3\u949C\u9514\u7AAD\u9F83\u9E43\u7EE2\u9529\u954C\u96BD\u89C9\u51B3\u7EDD\u8C32\u73CF\u94A7\u519B\u9A8F\u76B2\u5F00\u51EF\u5240\u57B2\u5FFE\u607A\u94E0\u9534\u9F9B\u95F6\u94AA\u94D0\u9897\u58F3\u8BFE\u9A92\u7F02\u8F72\u94B6\u951E\u9894\u57A6\u6073\u9F88\u94FF\u62A0\u5E93\u88E4\u55BE\u5757\u4FA9\u90D0\u54D9\u810D\u5BBD\u72EF\u9ACB\u77FF\u65F7\u51B5\u8BD3\u8BF3\u909D\u5739\u7EA9\u8D36\u4E8F\u5CBF\u7AA5\u9988\u6E83\u532E\u8489\u6126\u8069\u7BD1\u9603\u951F\u9CB2\u6269\u9614\u86F4\u8721\u814A\u83B1\u6765\u8D56\u5D03\u5F95\u6D9E\u6FD1\u8D49\u7750\u94FC\u765E\u7C41\u84DD\u680F\u62E6\u7BEE\u9611\u5170\u6F9C\u8C30\u63FD\u89C8\u61D2\u7F06\u70C2\u6EE5\u5C9A\u6984\u6593\u9567\u8934\u7405\u9606\u9512\u635E\u52B3\u6D9D\u5520\u5D02\u94D1\u94F9\u75E8\u4E50\u9CD3\u956D\u5792\u7C7B\u6CEA\u8BD4\u7F27\u7BF1\u72F8\u79BB\u9CA4\u793C\u4E3D\u5389\u52B1\u783E\u5386\u6CA5\u96B6\u4FEA\u90E6\u575C\u82C8\u8385\u84E0\u5456\u9026\u9A8A\u7F21\u67A5\u680E\u8F79\u783A\u9502\u9E42\u75A0\u7C9D\u8DDE\u96F3\u9CA1\u9CE2\u4FE9\u8054\u83B2\u8FDE\u9570\u601C\u6D9F\u5E18\u655B\u8138\u94FE\u604B\u70BC\u7EC3\u8539\u5941\u6F4B\u740F\u6B93\u88E2\u88E3\u9CA2\u7CAE\u51C9\u4E24\u8F86\u8C05\u9B49\u7597\u8FBD\u9563\u7F2D\u948C\u9E69\u730E\u4E34\u90BB\u9CDE\u51DB\u8D41\u853A\u5EEA\u6AA9\u8F9A\u8E8F\u9F84\u94C3\u7075\u5CAD\u9886\u7EEB\u68C2\u86CF\u9CAE\u998F\u5218\u6D4F\u9A9D\u7EFA\u954F\u9E68\u9F99\u804B\u5499\u7B3C\u5784\u62E2\u9647\u830F\u6CF7\u73D1\u680A\u80E7\u783B\u697C\u5A04\u6402\u7BD3\u507B\u848C\u55BD\u5D5D\u9542\u7618\u8027\u877C\u9AC5\u82A6\u5362\u9885\u5E90\u7089\u63B3\u5364\u864F\u9C81\u8D42\u7984\u5F55\u9646\u5786\u64B8\u565C\u95FE\u6CF8\u6E0C\u680C\u6A79\u8F73\u8F82\u8F98\u6C07\u80EA\u9E2C\u9E6D\u823B\u9C88\u5CE6\u631B\u5B6A\u6EE6\u4E71\u8114\u5A08\u683E\u9E3E\u92AE\u62A1\u8F6E\u4F26\u4ED1\u6CA6\u7EB6\u8BBA\u56F5\u841D\u7F57\u903B\u9523\u7BA9\u9AA1\u9A86\u7EDC\u8366\u7321\u6CFA\u6924\u8136\u9559\u9A74\u5415\u94DD\u4FA3\u5C61\u7F15\u8651\u6EE4\u7EFF\u6988\u891B\u950A\u5452\u5988\u739B\u7801\u8682\u9A6C\u9A82\u5417\u551B\u5B37\u6769\u4E70\u9EA6\u5356\u8FC8\u8109\u52A2\u7792\u9992\u86EE\u6EE1\u8C29\u7F26\u9558\u98A1\u9CD7\u732B\u951A\u94C6\u8D38\u4E48\u6CA1\u9541\u95E8\u95F7\u4EEC\u626A\u7116\u61D1\u9494\u9530\u68A6\u772F\u8C1C\u5F25\u89C5\u5E42\u8288\u8C27\u7315\u7962\u7EF5\u7F05\u6E11\u817C\u9EFE\u5E99\u7F08\u7F2A\u706D\u60AF\u95FD\u95F5\u7F17\u9E23\u94ED\u8C2C\u8C1F\u84E6\u998D\u6B81\u9546\u8C0B\u4EA9\u94BC\u5450\u94A0\u7EB3\u96BE\u6320\u8111\u607C\u95F9\u94D9\u8BB7\u9981\u5185\u62DF\u817B\u94CC\u9CB5\u64B5\u8F87\u9CB6\u917F\u9E1F\u8311\u8885\u8042\u556E\u954A\u954D\u9667\u8616\u55EB\u989F\u8E51\u67E0\u72DE\u5B81\u62E7\u6CDE\u82CE\u549B\u804D\u94AE\u7EBD\u8113\u6D53\u519C\u4FAC\u54DD\u9A7D\u9495\u8BFA\u50A9\u759F\u6B27\u9E25\u6BB4\u5455\u6CA4\u8BB4\u6004\u74EF\u76D8\u8E52\u5E9E\u629B\u75B1\u8D54\u8F94\u55B7\u9E4F\u7EB0\u7F74\u94CD\u9A97\u8C1D\u9A88\u98D8\u7F25\u9891\u8D2B\u5AD4\u82F9\u51ED\u8BC4\u6CFC\u9887\u948B\u6251\u94FA\u6734\u8C31\u9564\u9568\u6816\u8110\u9F50\u9A91\u5C82\u542F\u6C14\u5F03\u8BAB\u8572\u9A90\u7EEE\u6864\u789B\u9880\u9883\u9CCD\u7275\u948E\u94C5\u8FC1\u7B7E\u8C26\u94B1\u94B3\u6F5C\u6D45\u8C34\u5811\u4F65\u8368\u60AD\u9A9E\u7F31\u6920\u94A4\u67AA\u545B\u5899\u8537\u5F3A\u62A2\u5AF1\u6A2F\u6217\u709D\u9516\u9535\u956A\u7F9F\u8DC4\u9539\u6865\u4E54\u4FA8\u7FD8\u7A8D\u8BEE\u8C2F\u835E\u7F32\u7857\u8DF7\u7A83\u60EC\u9532\u7BA7\u94A6\u4EB2\u5BDD\u9513\u8F7B\u6C22\u503E\u9877\u8BF7\u5E86\u63FF\u9CAD\u743C\u7A77\u8315\u86F1\u5DEF\u8D47\u866E\u9CC5\u8D8B\u533A\u8EAF\u9A71\u9F8B\u8BCE\u5C96\u9612\u89D1\u9E32\u98A7\u6743\u529D\u8BE0\u7EFB\u8F81\u94E8\u5374\u9E4A\u786E\u9615\u9619\u60AB\u8BA9\u9976\u6270\u7ED5\u835B\u5A06\u6861\u70ED\u97E7\u8BA4\u7EAB\u996A\u8F6B\u8363\u7ED2\u5D58\u877E\u7F1B\u94F7\u98A6\u8F6F\u9510\u86AC\u95F0\u6DA6\u6D12\u8428\u98D2\u9CC3\u8D5B\u4F1E\u6BF5\u7CC1\u4E27\u9A9A\u626B\u7F2B\u6DA9\u556C\u94EF\u7A51\u6740\u5239\u7EB1\u94E9\u9CA8\u7B5B\u6652\u917E\u5220\u95EA\u9655\u8D61\u7F2E\u8BAA\u59D7\u9A9F\u9490\u9CDD\u5892\u4F24\u8D4F\u57A7\u6B87\u89DE\u70E7\u7ECD\u8D4A\u6444\u6151\u8BBE\u538D\u6EE0\u7572\u7EC5\u5BA1\u5A76\u80BE\u6E17\u8BDC\u8C02\u6E16\u58F0\u7EF3\u80DC\u5E08\u72EE\u6E7F\u8BD7\u65F6\u8680\u5B9E\u8BC6\u9A76\u52BF\u9002\u91CA\u9970\u89C6\u8BD5\u8C25\u57D8\u83B3\u5F11\u8F7C\u8D33\u94C8\u9CA5\u5BFF\u517D\u7EF6\u67A2\u8F93\u4E66\u8D4E\u5C5E\u672F\u6811\u7AD6\u6570\u6445\u7EBE\u5E05\u95E9\u53CC\u8C01\u7A0E\u987A\u8BF4\u7855\u70C1\u94C4\u4E1D\u9972\u53AE\u9A77\u7F0C\u9536\u9E36\u8038\u6002\u9882\u8BBC\u8BF5\u64DE\u85AE\u998A\u98D5\u953C\u82CF\u8BC9\u8083\u8C21\u7A23\u867D\u968F\u7EE5\u5C81\u8C07\u5B59\u635F\u7B0B\u836A\u72F2\u7F29\u7410\u9501\u5522\u7743\u736D\u631E\u95FC\u94CA\u9CCE\u53F0\u6001\u949B\u9C90\u644A\u8D2A\u762B\u6EE9\u575B\u8C2D\u8C08\u53F9\u6619\u94BD\u952C\u9878\u6C64\u70EB\u50A5\u9967\u94F4\u9557\u6D9B\u7EE6\u8BA8\u97EC\u94FD\u817E\u8A8A\u9511\u9898\u4F53\u5C49\u7F07\u9E48\u9617\u6761\u7C9C\u9F86\u9CA6\u8D34\u94C1\u5385\u542C\u70C3\u94DC\u7EDF\u6078\u5934\u94AD\u79C3\u56FE\u948D\u56E2\u629F\u9893\u8715\u9968\u8131\u9E35\u9A6E\u9A7C\u692D\u7BA8\u9F0D\u889C\u5A32\u817D\u5F2F\u6E7E\u987D\u4E07\u7EA8\u7EFE\u7F51\u8F8B\u97E6\u8FDD\u56F4\u4E3A\u6F4D\u7EF4\u82C7\u4F1F\u4F2A\u7EAC\u8C13\u536B\u8BFF\u5E0F\u95F1\u6CA9\u6DA0\u73AE\u97EA\u709C\u9C94\u6E29\u95FB\u7EB9\u7A33\u95EE\u960C\u74EE\u631D\u8717\u6DA1\u7A9D\u5367\u83B4\u9F8C\u545C\u94A8\u4E4C\u8BEC\u65E0\u829C\u5434\u575E\u96FE\u52A1\u8BEF\u90AC\u5E91\u6003\u59A9\u9A9B\u9E49\u9E5C\u9521\u727A\u88AD\u4E60\u94E3\u620F\u7EC6\u9969\u960B\u73BA\u89CB\u867E\u8F96\u5CE1\u4FA0\u72ED\u53A6\u5413\u7856\u9C9C\u7EA4\u8D24\u8854\u95F2\u663E\u9669\u73B0\u732E\u53BF\u9985\u7FA1\u5BAA\u7EBF\u82CB\u83B6\u85D3\u5C98\u7303\u5A34\u9E47\u75EB\u869D\u7C7C\u8DF9\u53A2\u9576\u4E61\u8BE6\u54CD\u9879\u8297\u9977\u9AA7\u7F03\u98E8\u8427\u56A3\u9500\u6653\u5578\u54D3\u6F47\u9A81\u7EE1\u67AD\u7BAB\u534F\u631F\u643A\u80C1\u8C10\u5199\u6CFB\u8C22\u4EB5\u64B7\u7EC1\u7F2C\u950C\u8845\u5174\u9649\u8365\u51F6\u6C79\u9508\u7EE3\u9990\u9E3A\u865A\u5618\u987B\u8BB8\u53D9\u7EEA\u7EED\u8BE9\u987C\u8F69\u60AC\u9009\u7663\u7EDA\u8C16\u94C9\u955F\u5B66\u8C11\u6CF6\u9CD5\u52CB\u8BE2\u5BFB\u9A6F\u8BAD\u8BAF\u900A\u57D9\u6D54\u9C9F\u538B\u9E26\u9E2D\u54D1\u4E9A\u8BB6\u57AD\u5A05\u6860\u6C29\u9609\u70DF\u76D0\u4E25\u5CA9\u989C\u960E\u8273\u538C\u781A\u5F66\u8C1A\u9A8C\u53A3\u8D5D\u4FE8\u5156\u8C33\u6079\u95EB\u917D\u9B47\u990D\u9F39\u9E2F\u6768\u626C\u75A1\u9633\u75D2\u517B\u6837\u7080\u7476\u6447\u5C27\u9065\u7A91\u8C23\u836F\u8F7A\u9E5E\u9CD0\u7237\u9875\u4E1A\u53F6\u9765\u8C12\u90BA\u6654\u70E8\u533B\u94F1\u9890\u9057\u4EEA\u8681\u827A\u4EBF\u5FC6\u4E49\u8BE3\u8BAE\u8C0A\u8BD1\u5F02\u7ECE\u8BD2\u5453\u5CC4\u9974\u603F\u9A7F\u7F22\u8F76\u8D3B\u9487\u9552\u9571\u7617\u8223\u836B\u9634\u94F6\u996E\u9690\u94DF\u763E\u6A31\u5A74\u9E70\u5E94\u7F28\u83B9\u8424\u8425\u8367\u8747\u8D62\u9896\u8314\u83BA\u8426\u84E5\u6484\u5624\u6EE2\u6F46\u748E\u9E66\u763F\u988F\u7F42\u54DF\u62E5\u4F63\u75C8\u8E0A\u548F\u955B\u4F18\u5FE7\u90AE\u94C0\u72B9\u8BF1\u83B8\u94D5\u9C7F\u8206\u9C7C\u6E14\u5A31\u4E0E\u5C7F\u8BED\u72F1\u8A89\u9884\u9A6D\u4F1B\u4FE3\u8C00\u8C15\u84E3\u5D5B\u996B\u9608\u59AA\u7EA1\u89CE\u6B24\u94B0\u9E46\u9E6C\u9F89\u9E33\u6E0A\u8F95\u56ED\u5458\u5706\u7F18\u8FDC\u6A7C\u9E22\u9F0B\u7EA6\u8DC3\u94A5\u7CA4\u60A6\u9605\u94BA\u90E7\u5300\u9668\u8FD0\u8574\u915D\u6655\u97F5\u90D3\u82B8\u607D\u6120\u7EAD\u97EB\u6B92\u6C32\u6742\u707E\u8F7D\u6512\u6682\u8D5E\u74D2\u8DB1\u933E\u8D43\u810F\u9A75\u51FF\u67A3\u8D23\u62E9\u5219\u6CFD\u8D5C\u5567\u5E3B\u7BA6\u8D3C\u8C2E\u8D60\u7EFC\u7F2F\u8F67\u94E1\u95F8\u6805\u8BC8\u658B\u503A\u6BE1\u76CF\u65A9\u8F97\u5D2D\u6808\u6218\u7EFD\u8C35\u5F20\u6DA8\u5E10\u8D26\u80C0\u8D75\u8BCF\u948A\u86F0\u8F99\u9517\u8FD9\u8C2A\u8F84\u9E67\u8D1E\u9488\u4FA6\u8BCA\u9547\u9635\u6D48\u7F1C\u6862\u8F78\u8D48\u796F\u9E29\u6323\u7741\u72F0\u4E89\u5E27\u75C7\u90D1\u8BC1\u8BE4\u5CE5\u94B2\u94EE\u7B5D\u7EC7\u804C\u6267\u7EB8\u631A\u63B7\u5E1C\u8D28\u6EDE\u9A98\u6809\u6800\u8F75\u8F7E\u8D3D\u9E37\u86F3\u7D77\u8E2C\u8E2F\u89EF\u949F\u7EC8\u79CD\u80BF\u4F17\u953A\u8BCC\u8F74\u76B1\u663C\u9AA4\u7EA3\u7EC9\u732A\u8BF8\u8BDB\u70DB\u77A9\u5631\u8D2E\u94F8\u9A7B\u4F2B\u69E0\u94E2\u4E13\u7816\u8F6C\u8D5A\u556D\u9994\u989E\u6869\u5E84\u88C5\u5986\u58EE\u72B6\u9525\u8D58\u5760\u7F00\u9A93\u7F12\u8C06\u51C6\u7740\u6D4A\u8BFC\u956F\u5179\u8D44\u6E0D\u8C18\u7F01\u8F8E\u8D40\u7726\u9531\u9F87\u9CBB\u8E2A\u603B\u7EB5\u506C\u90B9\u8BF9\u9A7A\u9CB0\u8BC5\u7EC4\u955E\u94BB\u7F35\u8E9C\u9CDF\u7FF1\u5E76\u535C\u6C89\u4E11\u6DC0\u8FED\u6597\u8303\u5E72\u768B\u7845\u67DC\u540E\u4F19\u79F8\u6770\u8BC0\u5938\u91CC\u91CC\u51CC\u4E48\u9709\u637B\u51C4\u6266\u5723\u5C38\u62AC\u6D82\u6D3C\u5582\u6C61\u9528\u54B8\u874E\u5F5D\u6D8C\u6E38\u5401\u5FA1\u613F\u5CB3\u4E91\u7076\u624E\u672D\u7B51\u4E8E\u5FD7\u6CE8\u51CB\u8BA0\u8C2B\u90C4\u52D0\u51FC\u5742\u5785\u57B4\u57EF\u57DD\u82D8\u836C\u836E\u839C\u83BC\u83F0\u85C1\u63F8\u5412\u5423\u5494\u549D\u54B4\u5658\u567C\u56AF\u5E5E\u5C99\u5D74\u5F77\u5FBC\u72B8\u72CD\u9980\u9987\u9993\u9995\u6123\u61B7\u61D4\u4E2C\u6E86\u6EDF\u6EB7\u6F24\u6F74\u6FB9\u752F\u7E9F\u7ED4\u7EF1\u73C9\u67A7\u684A\u6849\u69D4\u6A65\u8F71\u8F77\u8D4D\u80B7\u80E8\u98DA\u7173\u7145\u7198\u610D\u6DFC\u781C\u78D9\u770D\u949A\u94B7\u94D8\u94DE\u9503\u950D\u950E\u950F\u9518\u951D\u952A\u952B\u953F\u9545\u954E\u9562\u9565\u9569\u9572\u7A06\u9E4B\u9E5B\u9E71\u75AC\u75B4\u75D6\u766F\u88E5\u8941\u8022\u98A5\u87A8\u9EB4\u9C85\u9C86\u9C87\u9C9E\u9CB4\u9CBA\u9CBC\u9CCA\u9CCB\u9CD8\u9CD9\u9792\u97B4\u9F44\u4E2C\u4E3A\u4EB8\u4F17\u4F2A\u4F59\u51A2\u51C0\u51CC\u51FC\u522C\u52CB\u52D0\u52DA\u5364\u53C6\u53C7\u542F\u5494\u54A4\u54B4\u54CC\u54D7\u551D\u5521\u5523\u553F\u556E\u5570\u5574\u5475\u567C\u56AF\u5785\u57A7\u57AF\u57B1\u57D9\u57DD\u5846\u5899\u58F8\u59AB\u59DC\u5A34\u5A73\u5C43\u5CBD\u5CC3\u5CE3\u5D04\u5D5A\u5D5B\u5D74\u5EBC\u5F5F\u5FA1\u610D\u616D\u61B7\u624E\u6266\u631C\u6326\u637B\u63F8\u65F8\u663D\u672D\u684A\u68BC\u68BE\u68C2\u69DA\u6A90\u6C61\u6C93\u6CA8\u6CA9\u6CB5\u6D49\u6D50\u6D55\u6D8C\u6DA2\u6E7F\u6E87\u6EEA\u6F24\u7145\u7173\u7198\u7266\u729F\u72CD\u72DD\u732C\u7399\u739A\u73B1\u73C9\u73CF\u73F0\u740E\u7487\u7572\u75B4\u7606\u7618\u766F\u772C\u7740\u7841\u7845\u7859\u785A\u7877\u78B9\u78D9\u794E\u79FE\u7B5C\u7B7E\u7B93\u7CC7\u7E9F\u7EAE\u7EB4\u7EBB\u7EBC\u7ED6\u7EE4\u7EE6\u7EEC\u7EF1\u7EF9\u7F0A\u7F10\u7F1E\u7F30\u7FD9\u7FDA\u80B7\u810F\u814C\u8158\u816D\u81DC\u8273\u8279\u8359\u839C\u83BC\u841A\u85C1\u866C\u8780\u87CF\u8885\u8886\u88AF\u88C8\u88E5\u8941\u8955\u89C3\u89CD\u8A5F\u8BB1\u8BBB\u8BC7\u8BD0\u8BEA\u8C1E\u8C25\u8C37\u8C6E\u8D20\u8D4D\u8D51\u8D52\u8D57\u8D5F\u8D6A\u8DD6\u8DF6\u8E0A\u8F6A\u8F80\u8F8C\u8F92\u90C1\u90C4\u9166\u9245\u9274\u948E\u9491\u9496\u9498\u94B5\u94BB\u94CF\u94DA\u94E6\u94FB\u9508\u950F\u951C\u9520\u9528\u9533\u953D\u9543\u9548\u9555\u955A\u9560\u9562\u956E\u9574\u95EC\u95F2\u95FF\u9607\u9613\u9618\u961B\u9655\u97B4\u97E8\u988B\u988E\u9892\u9895\u9899\u98A3\u98CF\u98D0\u98D4\u98D6\u98D7\u9964\u9965\u9966\u9973\u9978\u9979\u997B\u997E\u9982\u9983\u9989\u998C\u998E\u9A72\u9A83\u9A89\u9A8D\u9A8E\u9A94\u9A95\u9A99\u9AA6\u9C7D\u9C7E\u9C80\u9C84\u9C89\u9C8A\u9C8C\u9C8F\u9C93\u9C96\u9C97\u9C98\u9C99\u9C9D\u9CAA\u9CAC\u9CAF\u9CB9\u9CBE\u9CBF\u9CC0\u9CC1\u9CC2\u9CC8\u9CC9\u9CD1\u9CD2\u9CDB\u9CE0\u9CE1\u9CE3\u9E24\u9E27\u9E2E\u9E30\u9E34\u9E3B\u9E3C\u9E40\u9E47\u9E4D\u9E50\u9E52\u9E53\u9E54\u9E56\u9E5D\u9E5F\u9E60\u9E61\u9E62\u9E65\u9E6F\u9E72\u9E74\u9EE1\u9F0C\u9F17\u9F81\u9F82\u5FD7\u5236\u54A8\u53EA\u7CFB\u677E\u5C1D\u9762\u5E72\u62FC\u6076\u8D5E\u53D1\u50F5\u81F4\u5978\u83B7\u7EC3\u56DE\u7CFB\u8FF9\u53EA\u8F9F\u677F\u4F60"}function zz(){return"\u9312\u769A\u85F9\u7919\u611B\u566F\u5B21\u74A6\u66D6\u9744\u8AF3\u92A8\u9D6A\u9AAF\u8956\u5967\u5ABC\u9A41\u9C32\u58E9\u7F77\u9200\u64FA\u6557\u5504\u9812\u8FA6\u7D46\u9211\u5E6B\u7D81\u938A\u8B17\u525D\u98FD\u5BF6\u5831\u9B91\u9D07\u9F59\u8F29\u8C9D\u92C7\u72FD\u5099\u618A\u9D6F\u8CC1\u931B\u7E43\u7B46\u7562\u6583\u5E63\u9589\u84FD\u55F6\u6F77\u924D\u7BF3\u8E55\u908A\u7DE8\u8CB6\u8B8A\u8FAF\u8FAE\u8290\u7DF6\u7C69\u6A19\u9A43\u98AE\u98C6\u93E2\u9463\u9C3E\u9C49\u5225\u765F\u7015\u6FF1\u8CD3\u64EF\u5110\u7E7D\u6AB3\u6BAF\u81CF\u944C\u9AD5\u9B22\u9905\u7A1F\u64A5\u7F3D\u9251\u99C1\u9911\u9238\u9D53\u88DC\u923D\u8CA1\u53C3\u8836\u6B98\u615A\u6158\u71E6\u9A42\u9EF2\u84BC\u8259\u5009\u6EC4\u5EC1\u5074\u518A\u6E2C\u60FB\u5C64\u8A6B\u9364\u5115\u91F5\u6519\u647B\u87EC\u995E\u8B92\u7E8F\u93DF\u7522\u95E1\u986B\u56C5\u8AC2\u8B96\u8546\u61FA\u5B0B\u9A4F\u8998\u79AA\u9414\u5834\u5617\u9577\u511F\u8178\u5EE0\u66A2\u5000\u8407\u60B5\u95B6\u9BE7\u9214\u8ECA\u5FB9\u7868\u5875\u9673\u896F\u5096\u8AF6\u6AEC\u78E3\u9F54\u6490\u7A31\u61F2\u8AA0\u9A01\u68D6\u6A89\u92EE\u943A\u7661\u9072\u99B3\u6065\u9F52\u71BE\u98ED\u9D1F\u6C96\u885D\u87F2\u5BF5\u9283\u7587\u8E8A\u7C4C\u7DA2\u5114\u5E6C\u8B8E\u6AE5\u5EDA\u92E4\u96DB\u790E\u5132\u89F8\u8655\u82BB\u7D40\u8E95\u50B3\u91E7\u7621\u95D6\u5275\u6134\u9318\u7D9E\u7D14\u9D89\u7DBD\u8F1F\u9F6A\u8FAD\u8A5E\u8CDC\u9DBF\u8070\u8525\u56EA\u5F9E\u53E2\u84EF\u9A44\u6A05\u6E4A\u8F33\u8EA5\u7AC4\u651B\u932F\u92BC\u9E7A\u9054\u5660\u97C3\u5E36\u8CB8\u99D8\u7D3F\u64D4\u55AE\u9132\u64A3\u81BD\u619A\u8A95\u5F48\u6BAB\u8CE7\u7649\u7C1E\u7576\u64CB\u9EE8\u8569\u6A94\u8B9C\u78AD\u8960\u6417\u5CF6\u79B1\u5C0E\u76DC\u71FE\u71C8\u9127\u9419\u6575\u6ECC\u905E\u7DE0\u7CF4\u8A46\u8AE6\u7D88\u89BF\u93D1\u985B\u9EDE\u588A\u96FB\u5DD4\u923F\u7672\u91E3\u8ABF\u929A\u9BDB\u8ADC\u758A\u9C08\u91D8\u9802\u9320\u8A02\u92CC\u4E1F\u92A9\u6771\u52D5\u68DF\u51CD\u5D20\u9D87\u7AC7\u72A2\u7368\u8B80\u8CED\u934D\u7006\u6ADD\u7258\u7BE4\u9EF7\u935B\u65B7\u7DDE\u7C6A\u514C\u968A\u5C0D\u61DF\u9413\u5678\u9813\u920D\u71C9\u8E89\u596A\u58AE\u9438\u9D5D\u984D\u8A1B\u60E1\u9913\u8AE4\u580A\u95BC\u8EDB\u92E8\u9354\u9D9A\u984E\u9853\u9C77\u8A92\u5152\u723E\u990C\u8CB3\u9087\u927A\u9D2F\u9B9E\u767C\u7F70\u95A5\u743A\u792C\u91E9\u7169\u8CA9\u98EF\u8A2A\u7D21\u9201\u9B74\u98DB\u8AB9\u5EE2\u8CBB\u7DCB\u9428\u9BE1\u7D1B\u58B3\u596E\u61A4\u7CDE\u50E8\u8C50\u6953\u92D2\u98A8\u760B\u99AE\u7E2B\u8AF7\u9CF3\u7043\u819A\u8F3B\u64AB\u8F14\u8CE6\u5FA9\u8CA0\u8A03\u5A66\u7E1B\u9CE7\u99D9\u7D31\u7D3C\u8CFB\u9EA9\u9B92\u9C12\u91D3\u8A72\u9223\u84CB\u8CC5\u687F\u8D95\u7A08\u8D1B\u5C37\u641F\u7D3A\u5CA1\u525B\u92FC\u7DB1\u5D17\u6207\u93AC\u776A\u8AA5\u7E1E\u92EF\u64F1\u9D3F\u95A3\u927B\u500B\u7D07\u9398\u6F41\u7D66\u4E99\u8CE1\u7D86\u9BC1\u9F94\u5BAE\u978F\u8CA2\u9264\u6E9D\u830D\u69CB\u8CFC\u5920\u8A6C\u7DF1\u89AF\u8831\u9867\u8A41\u8F42\u9237\u932E\u9D23\u9D60\u9DBB\u526E\u639B\u9D30\u6451\u95DC\u89C0\u9928\u6163\u8CAB\u8A7F\u645C\u9E1B\u9C25\u5EE3\u7377\u898F\u6B78\u9F9C\u95A8\u8ECC\u8A6D\u8CB4\u528A\u532D\u528C\u5AAF\u6A9C\u9BAD\u9C56\u8F25\u6EFE\u889E\u7DC4\u9BC0\u934B\u570B\u904E\u581D\u54BC\u5E57\u69E8\u87C8\u927F\u99ED\u97D3\u6F22\u95DE\u7D4E\u9821\u865F\u705D\u9865\u95A1\u9DB4\u8CC0\u8A36\u95D4\u8823\u6A6B\u8F5F\u9D3B\u7D05\u9ECC\u8A0C\u8452\u958E\u9C5F\u58FA\u8B77\u6EEC\u6236\u6EF8\u9D98\u5629\u83EF\u756B\u5283\u8A71\u9A4A\u6A3A\u93F5\u61F7\u58DE\u6B61\u74B0\u9084\u7DE9\u63DB\u559A\u7613\u7165\u6E19\u5950\u7E6F\u9370\u9BC7\u9EC3\u8B0A\u9C09\u63EE\u8F1D\u6BC0\u8CC4\u7A62\u6703\u71F4\u532F\u8AF1\u8AA8\u7E6A\u8A7C\u8588\u5666\u6FAE\u7E62\u743F\u6689\u8477\u6E3E\u8AE2\u991B\u95BD\u7372\u8CA8\u798D\u9225\u944A\u64CA\u6A5F\u7A4D\u9951\u8DE1\u8B4F\u96DE\u7E3E\u7DDD\u6975\u8F2F\u7D1A\u64E0\u5E7E\u858A\u5291\u6FDF\u8A08\u8A18\u969B\u7E7C\u7D00\u8A10\u8A70\u85BA\u5630\u568C\u9A65\u74A3\u89AC\u9F4F\u78EF\u7F88\u8806\u8E8B\u973D\u9C6D\u9BFD\u593E\u83A2\u9830\u8CC8\u9240\u50F9\u99D5\u90DF\u6D79\u92CF\u93B5\u87EF\u6BB2\u76E3\u5805\u7B8B\u9593\u8271\u7DD8\u7E6D\u6AA2\u583F\u9E7C\u63C0\u64BF\u7C21\u5109\u6E1B\u85A6\u6ABB\u9452\u8E10\u8CE4\u898B\u9375\u8266\u528D\u991E\u6F38\u6FFA\u6F97\u8AEB\u7E11\u6214\u6229\u77BC\u9DBC\u7B67\u9C39\u97C9\u5C07\u6F3F\u8523\u69F3\u734E\u8B1B\u91AC\u7D73\u97C1\u81A0\u6F86\u9A55\u5B0C\u652A\u9278\u77EF\u50E5\u8173\u9903\u7E73\u7D5E\u8F4E\u8F03\u649F\u5DA0\u9DE6\u9BAB\u968E\u7BC0\u6F54\u7D50\u8AA1\u5C46\u7664\u981C\u9B9A\u7DCA\u9326\u50C5\u8B39\u9032\u6649\u71FC\u76E1\u52C1\u834A\u8396\u5DF9\u85CE\u9949\u7E09\u8D10\u89B2\u9BE8\u9A5A\u7D93\u9838\u975C\u93E1\u5F91\u75D9\u7AF6\u51C8\u5244\u6D87\u9015\u5F33\u811B\u975A\u7CFE\u5EC4\u820A\u9B2E\u9CE9\u9DF2\u99D2\u8209\u64DA\u92F8\u61FC\u5287\u8A4E\u5C68\u6AF8\u98B6\u9245\u92E6\u7AB6\u9F5F\u9D51\u7D79\u9308\u942B\u96CB\u89BA\u6C7A\u7D55\u8B4E\u73A8\u921E\u8ECD\u99FF\u76B8\u958B\u51F1\u5274\u584F\u613E\u6137\u93A7\u9347\u9F95\u958C\u9227\u92AC\u9846\u6BBC\u8AB2\u9A0D\u7DD9\u8EFB\u9233\u9301\u9837\u58BE\u61C7\u9F66\u93D7\u6473\u5EAB\u8932\u56B3\u584A\u5108\u9136\u5672\u81BE\u5BEC\u736A\u9AD6\u7926\u66E0\u6CC1\u8A86\u8A91\u913A\u58D9\u7E8A\u8CBA\u8667\u5DCB\u7ABA\u994B\u6F70\u5331\u8562\u6192\u8075\u7C23\u95AB\u9315\u9BE4\u64F4\u95CA\u8810\u881F\u81D8\u840A\u4F86\u8CF4\u5D0D\u5FA0\u6DF6\u7028\u8CDA\u775E\u9338\u7669\u7C5F\u85CD\u6B04\u6514\u7C43\u95CC\u862D\u703E\u8B95\u652C\u89BD\u61F6\u7E9C\u721B\u6FEB\u5D50\u6B16\u6595\u946D\u8964\u746F\u95AC\u92C3\u6488\u52DE\u6F87\u562E\u5D97\u92A0\u9412\u7646\u6A02\u9C33\u9433\u58D8\u985E\u6DDA\u8A84\u7E32\u7C6C\u8C8D\u96E2\u9BC9\u79AE\u9E97\u53B2\u52F5\u792B\u6B77\u701D\u96B8\u5137\u9148\u58E2\u85F6\u849E\u863A\u56A6\u9090\u9A6A\u7E2D\u6AEA\u6ADF\u8F62\u792A\u92F0\u9E1D\u7658\u7CF2\u8E92\u9742\u9C7A\u9C67\u5006\u806F\u84EE\u9023\u942E\u6190\u6F23\u7C3E\u6582\u81C9\u93C8\u6200\u7149\u7DF4\u861E\u5969\u7032\u7489\u6BAE\u8933\u895D\u9C31\u7CE7\u6DBC\u5169\u8F1B\u8AD2\u9B4E\u7642\u907C\u9410\u7E5A\u91D5\u9DEF\u7375\u81E8\u9130\u9C57\u51DC\u8CC3\u85FA\u5EE9\u6A81\u8F54\u8EAA\u9F61\u9234\u9748\u5DBA\u9818\u7DBE\u6B1E\u87F6\u9BEA\u993E\u5289\u700F\u9A2E\u7DB9\u93A6\u9DDA\u9F8D\u807E\u56A8\u7C60\u58DF\u650F\u96B4\u8622\u7027\u74CF\u6AF3\u6727\u7931\u6A13\u5A41\u645F\u7C0D\u50C2\u851E\u560D\u5D81\u93E4\u763A\u802C\u87BB\u9ACF\u8606\u76E7\u9871\u5EEC\u7210\u64C4\u9E75\u865C\u9B6F\u8CC2\u797F\u9304\u9678\u58DA\u64FC\u5695\u95AD\u7018\u6DE5\u6AE8\u6AD3\u8F64\u8F05\u8F46\u6C0C\u81DA\u9E15\u9DFA\u826B\u9C78\u5DD2\u6523\u5B7F\u7064\u4E82\u81E0\u5B4C\u6B12\u9E1E\u947E\u6384\u8F2A\u502B\u4F96\u6DEA\u7DB8\u8AD6\u5707\u863F\u7F85\u908F\u947C\u7C6E\u9A3E\u99F1\u7D61\u7296\u7380\u6FFC\u6B0F\u8161\u93CD\u9A62\u5442\u92C1\u4FB6\u5C62\u7E37\u616E\u6FFE\u7DA0\u6ADA\u8938\u92DD\u5638\u5ABD\u746A\u78BC\u879E\u99AC\u7F75\u55CE\u561C\u5B24\u69AA\u8CB7\u9EA5\u8CE3\u9081\u8108\u52F1\u779E\u9945\u883B\u6EFF\u8B3E\u7E35\u93DD\u9859\u9C3B\u8C93\u9328\u925A\u8CBF\u9EBC\u6C92\u9382\u9580\u60B6\u5011\u636B\u71DC\u61E3\u9346\u9333\u5922\u7787\u8B0E\u5F4C\u8993\u51AA\u7F8B\u8B10\u737C\u79B0\u7DBF\u7DEC\u6FA0\u9766\u9EFD\u5EDF\u7DF2\u7E46\u6EC5\u61AB\u95A9\u9594\u7DE1\u9CF4\u9298\u8B2C\u8B28\u9A40\u9943\u6B7F\u93CC\u8B00\u755D\u926C\u5436\u9209\u7D0D\u96E3\u6493\u8166\u60F1\u9B27\u9403\u8A25\u9912\u5167\u64EC\u81A9\u922E\u9BE2\u6506\u8F26\u9BF0\u91C0\u9CE5\u8526\u88CA\u8076\u5699\u9477\u93B3\u9689\u8617\u56C1\u9862\u8EA1\u6AB8\u7370\u5BE7\u64F0\u6FD8\u82E7\u5680\u8079\u9215\u7D10\u81BF\u6FC3\u8FB2\u5102\u5665\u99D1\u91F9\u8AFE\u513A\u7627\u6B50\u9DD7\u6BC6\u5614\u6F1A\u8B33\u616A\u750C\u76E4\u8E63\u9F90\u62CB\u76B0\u8CE0\u8F61\u5674\u9D6C\u7D15\u7F86\u9239\u9A19\u8ADE\u99E2\u98C4\u7E39\u983B\u8CA7\u5B2A\u860B\u6191\u8A55\u6F51\u9817\u91D9\u64B2\u92EA\u6A38\u8B5C\u93F7\u9420\u68F2\u81CD\u9F4A\u9A0E\u8C48\u555F\u6C23\u68C4\u8A16\u8604\u9A0F\u7DBA\u69BF\u78E7\u980E\u980F\u9C2D\u727D\u91EC\u925B\u9077\u7C3D\u8B19\u9322\u9257\u6F5B\u6DFA\u8B74\u5879\u50C9\u8541\u6173\u9A2B\u7E7E\u69E7\u9210\u69CD\u55C6\u58BB\u8594\u5F37\u6436\u5B19\u6AA3\u6227\u7197\u9306\u93D8\u93F9\u7FA5\u8E4C\u936C\u6A4B\u55AC\u50D1\u7FF9\u7AC5\u8A9A\u8B59\u854E\u7E70\u78FD\u8E7A\u7ACA\u611C\u9365\u7BCB\u6B3D\u89AA\u5BE2\u92DF\u8F15\u6C2B\u50BE\u9803\u8ACB\u6176\u64B3\u9BD6\u74CA\u7AAE\u7162\u86FA\u5DF0\u8CD5\u87E3\u9C0D\u8DA8\u5340\u8EC0\u9A45\u9F72\u8A58\u5D87\u95C3\u89B7\u9D1D\u9874\u6B0A\u52F8\u8A6E\u7DA3\u8F07\u9293\u537B\u9D72\u78BA\u95CB\u95D5\u6128\u8B93\u9952\u64FE\u7E5E\u8558\u5B08\u6A48\u71B1\u97CC\u8A8D\u7D09\u98EA\u8ED4\u69AE\u7D68\u5DB8\u8811\u7E1F\u92A3\u9870\u8EDF\u92B3\u8706\u958F\u6F64\u7051\u85A9\u98AF\u9C13\u8CFD\u5098\u6BFF\u7CDD\u55AA\u9A37\u6383\u7E45\u6F80\u55C7\u92AB\u7A61\u6BBA\u524E\u7D17\u93A9\u9BCA\u7BE9\u66EC\u91C3\u522A\u9583\u965C\u8D0D\u7E55\u8A15\u59CD\u9A38\u91E4\u9C54\u5891\u50B7\u8CDE\u5770\u6BA4\u89F4\u71D2\u7D39\u8CD2\u651D\u61FE\u8A2D\u5399\u7044\u756C\u7D33\u5BE9\u5B38\u814E\u6EF2\u8A75\u8AD7\u700B\u8072\u7E69\u52DD\u5E2B\u7345\u6FD5\u8A69\u6642\u8755\u5BE6\u8B58\u99DB\u52E2\u9069\u91CB\u98FE\u8996\u8A66\u8B1A\u5852\u8494\u5F12\u8EFE\u8CB0\u9230\u9C23\u58FD\u7378\u7DAC\u6A1E\u8F38\u66F8\u8D16\u5C6C\u8853\u6A39\u8C4E\u6578\u6504\u7D13\u5E25\u9582\u96D9\u8AB0\u7A05\u9806\u8AAA\u78A9\u720D\u9460\u7D72\u98FC\u5EDD\u99DF\u7DE6\u9376\u9DE5\u8073\u616B\u980C\u8A1F\u8AA6\u64FB\u85EA\u993F\u98BC\u93AA\u8607\u8A34\u8085\u8B16\u7A4C\u96D6\u96A8\u7D8F\u6B72\u8AB6\u5B6B\u640D\u7B4D\u84C0\u733B\u7E2E\u7463\u9396\u55E9\u8127\u737A\u64BB\u95E5\u9248\u9C28\u81FA\u614B\u9226\u9B90\u6524\u8CAA\u7671\u7058\u58C7\u8B5A\u8AC7\u5606\u66C7\u926D\u931F\u9807\u6E6F\u71D9\u513B\u9933\u940B\u93DC\u6FE4\u7D73\u8A0E\u97DC\u92F1\u9A30\u8B04\u92BB\u984C\u9AD4\u5C5C\u7DF9\u9D5C\u95D0\u689D\u7CF6\u9F60\u9C37\u8CBC\u9435\u5EF3\u807D\u70F4\u9285\u7D71\u615F\u982D\u9204\u79BF\u5716\u91F7\u5718\u6476\u9839\u86FB\u98E9\u812B\u9D15\u99B1\u99DD\u6A62\u7C5C\u9F09\u896A\u5AA7\u8183\u5F4E\u7063\u9811\u842C\u7D08\u7DB0\u7DB2\u8F1E\u97CB\u9055\u570D\u70BA\u6FF0\u7DAD\u8466\u5049\u507D\u7DEF\u8B02\u885B\u8AC9\u5E43\u95C8\u6E88\u6F7F\u744B\u97D9\u7152\u9BAA\u6EAB\u805E\u7D0B\u7A69\u554F\u95BF\u7515\u64BE\u8778\u6E26\u7AA9\u81E5\u8435\u9F77\u55DA\u93A2\u70CF\u8AA3\u7121\u856A\u5433\u5862\u9727\u52D9\u8AA4\u9114\u5EE1\u61AE\u5AF5\u9A16\u9D61\u9DA9\u932B\u72A7\u8972\u7FD2\u9291\u6232\u7D30\u993C\u9B29\u74BD\u89A1\u8766\u8F44\u5CFD\u4FE0\u72F9\u5EC8\u5687\u7864\u9BAE\u7E96\u8CE2\u929C\u9591\u986F\u96AA\u73FE\u737B\u7E23\u9921\u7FA8\u61B2\u7DDA\u83A7\u859F\u861A\u5CF4\u736B\u5AFB\u9DF4\u7647\u8814\u79C8\u8E9A\u5EC2\u9472\u9109\u8A73\u97FF\u9805\u858C\u9909\u9A64\u7DD7\u9957\u856D\u56C2\u92B7\u66C9\u562F\u5635\u701F\u9A4D\u7D83\u689F\u7C2B\u5354\u633E\u651C\u8105\u8AE7\u5BEB\u7009\u8B1D\u893B\u64F7\u7D32\u7E88\u92C5\u91C1\u8208\u9658\u6ECE\u5147\u6D36\u92B9\u7E61\u9948\u9D42\u865B\u5653\u9808\u8A31\u6558\u7DD2\u7E8C\u8A61\u980A\u8ED2\u61F8\u9078\u766C\u7D62\u8AFC\u9249\u93C7\u5B78\u8B14\u6FA9\u9C48\u52DB\u8A62\u5C0B\u99B4\u8A13\u8A0A\u905C\u5864\u6F6F\u9C58\u58D3\u9D09\u9D28\u555E\u4E9E\u8A1D\u57E1\u5A6D\u690F\u6C2C\u95B9\u7159\u9E7D\u56B4\u5DD6\u984F\u95BB\u8277\u53AD\u786F\u5F65\u8AFA\u9A57\u53B4\u8D17\u513C\u5157\u8B9E\u61E8\u9586\u91C5\u9B58\u995C\u9F34\u9D26\u694A\u63DA\u760D\u967D\u7662\u990A\u6A23\u716C\u7464\u6416\u582F\u9059\u7AAF\u8B20\u85E5\u8EFA\u9DC2\u9C29\u723A\u9801\u696D\u8449\u9768\u8B01\u9134\u66C4\u71C1\u91AB\u92A5\u9824\u907A\u5100\u87FB\u85DD\u5104\u61B6\u7FA9\u8A63\u8B70\u8ABC\u8B6F\u7570\u7E79\u8A52\u56C8\u5DA7\u98F4\u61CC\u9A5B\u7E0A\u8EFC\u8CBD\u91D4\u93B0\u943F\u761E\u8264\u852D\u9670\u9280\u98F2\u96B1\u92A6\u766E\u6AFB\u5B30\u9DF9\u61C9\u7E93\u7469\u87A2\u71DF\u7192\u8805\u8D0F\u7A4E\u584B\u9DAF\u7E08\u93A3\u6516\u56B6\u7005\u7020\u74D4\u9E1A\u766D\u9826\u7F4C\u55B2\u64C1\u50AD\u7670\u8E34\u8A60\u93DE\u512A\u6182\u90F5\u923E\u7336\u8A98\u8555\u92AA\u9B77\u8F3F\u9B5A\u6F01\u5A1B\u8207\u5DBC\u8A9E\u7344\u8B7D\u9810\u99AD\u50B4\u4FC1\u8ADB\u8AED\u8577\u5D33\u98EB\u95BE\u5AD7\u7D06\u89A6\u6B5F\u923A\u9D52\u9DF8\u9F6C\u9D1B\u6DF5\u8F45\u5712\u54E1\u5713\u7DE3\u9060\u6ADE\u9CF6\u9EFF\u7D04\u8E8D\u9470\u7CB5\u6085\u95B1\u925E\u9116\u52FB\u9695\u904B\u860A\u919E\u6688\u97FB\u9106\u8553\u60F2\u614D\u7D1C\u97DE\u6B9E\u6C33\u96DC\u707D\u8F09\u6522\u66AB\u8D0A\u74DA\u8DB2\u93E8\u8D13\u81DF\u99D4\u947F\u68D7\u8CAC\u64C7\u5247\u6FA4\u8CFE\u5616\u5E58\u7C00\u8CCA\u8B56\u8D08\u7D9C\u7E52\u8ECB\u9358\u9598\u67F5\u8A50\u9F4B\u50B5\u6C08\u76DE\u65AC\u8F3E\u5D84\u68E7\u6230\u7DBB\u8B6B\u5F35\u6F32\u5E33\u8CEC\u8139\u8D99\u8A54\u91D7\u87C4\u8F4D\u937A\u9019\u8B2B\u8F12\u9DD3\u8C9E\u91DD\u5075\u8A3A\u93AE\u9663\u6E5E\u7E1D\u6968\u8EEB\u8CD1\u798E\u9D06\u6399\u775C\u7319\u722D\u5E40\u7665\u912D\u8B49\u8ACD\u5D22\u9266\u931A\u7B8F\u7E54\u8077\u57F7\u7D19\u646F\u64F2\u5E5F\u8CEA\u6EEF\u9A2D\u6ADB\u6894\u8EF9\u8F0A\u8D04\u9DD9\u8784\u7E36\u8E93\u8E91\u89F6\u9418\u7D42\u7A2E\u816B\u773E\u937E\u8B05\u8EF8\u76BA\u665D\u9A5F\u7D02\u7E10\u8C6C\u8AF8\u8A85\u71ED\u77DA\u56D1\u8CAF\u9444\u99D0\u4F47\u6AE7\u9296\u5C08\u78DA\u8F49\u8CFA\u56C0\u994C\u9873\u6A01\u838A\u88DD\u599D\u58EF\u72C0\u9310\u8D05\u589C\u7DB4\u9A05\u7E0B\u8AC4\u6E96\u8457\u6FC1\u8AD1\u9432\u8332\u8CC7\u6F2C\u8AEE\u7DC7\u8F1C\u8CB2\u7725\u9319\u9F5C\u9BD4\u8E64\u7E3D\u7E31\u50AF\u9112\u8ACF\u9A36\u9BEB\u8A5B\u7D44\u93C3\u9246\u7E98\u8EA6\u9C52\u7FFA\u4E26\u8514\u6C88\u919C\u6FB1\u53E0\u9B25\u7BC4\u5E79\u81EF\u77FD\u6AC3\u5F8C\u5925\u7A2D\u5091\u8A23\u8A87\u88E1\u88CF\u6DE9\u9EBD\u9EF4\u649A\u6DD2\u6261\u8056\u5C4D\u64E1\u5857\u7AAA\u9935\u6C59\u9341\u9E79\u880D\u5F5C\u6E67\u904A\u7C72\u79A6\u9858\u5DBD\u96F2\u7AC8\u7D2E\u5284\u7BC9\u65BC\u8A8C\u8A3B\u96D5\u8A01\u8B7E\u90E4\u731B\u6C39\u962A\u58DF\u5816\u57B5\u588A\u6ABE\u8552\u8464\u84E7\u8493\u83C7\u69C1\u6463\u54A4\u551A\u54E2\u565D\u5645\u6485\u5288\u8B14\u8946\u5DB4\u810A\u4EFF\u50E5\u7341\u9E85\u9918\u9937\u994A\u9962\u695E\u6035\u61CD\u723F\u6F35\u7069\u6DF7\u6FEB\u7026\u6DE1\u5BE7\u7CF8\u7D5D\u7DD4\u7449\u6898\u68EC\u6848\u6A70\u6AEB\u8EF2\u8EE4\u8CEB\u8181\u8156\u98C8\u7CCA\u7146\u6E9C\u6E63\u6E3A\u78B8\u6EFE\u7798\u9208\u9255\u92E3\u92B1\u92E5\u92F6\u9426\u9427\u9369\u9340\u9343\u9307\u9384\u9387\u93BF\u941D\u9465\u9479\u9454\u7A6D\u9D93\u9DA5\u9E0C\u7667\u5C59\u7602\u81D2\u8947\u7E48\u802E\u986C\u87CE\u9EAF\u9B81\u9B83\u9B8E\u9BD7\u9BDD\u9BF4\u9C5D\u9BFF\u9C20\u9C35\u9C45\u97BD\u97DD\u9F47\u4E2C\u7232\u56B2\u8846\u50DE\u9918\u51A2\u6DE8\u51CC\u51FC\u5257\u52F3\u52D0\u52E9\u6EF7\u9749\u9746\u5553\u5494\u5412\u54B4\u54CC\u8B41\u55CA\u5562\u5523\u553F\u9F67\u56C9\u563D\u5475\u567C\u56AF\u58E0\u57A7\u58B6\u58CB\u58CE\u57DD\u58EA\u7246\u58FC\u5B00\u59DC\u5AFA\u5AFF\u5C53\u5D2C\u5DA8\u5DA2\u5DAE\u5D94\u5D5B\u5D74\u5ECE\u5F60\u5FA1\u610D\u6196\u61B7\u624E\u6266\u6397\u648F\u637B\u63F8\u6698\u66E8\u672D\u684A\u6AAE\u68F6\u6AFA\u6A9F\u6A90\u6C61\u6C93\u6E22\u6F59\u6CB5\u6EAE\u6EFB\u6FDC\u6D8C\u6EB3\u6EBC\u6F0A\u6FA6\u6F24\u7145\u7173\u7198\u729B\u729F\u72CD\u736E\u875F\u74B5\u7452\u7472\u73C9\u73CF\u74AB\u74A1\u7487\u7572\u75FE\u762E\u763B\u766F\u77D3\u7740\u785C\u7845\u78D1\u7904\u7906\u78B9\u78D9\u7995\u7A60\u7C39\u7C64\u7C59\u9931\u7CF9\u7D18\u7D1D\u7D35\u7D16\u7D70\u7D8C\u7D5B\u7DD3\u979D\u7DAF\u7E15\u7DDA\u7E17\u7E6E\u7FFD\u7FEC\u80B7\u9AD2\u9183\u8195\u9F76\u81E2\u8C54\u8279\u8598\u839C\u84F4\u8600\u85C1\u866F\u87BF\u8828\u5ACB\u8918\u894F\u890C\u8949\u8941\u8974\u898E\u89A5\u8B8B\u8A12\u8A29\u8A57\u8A56\u8B78\u8ADD\u8AE1\u8C37\u8C76\u8C9F\u9F4E\u8D14\u8CD9\u8CF5\u8D07\u8D6C\u8DD6\u8E82\u8E0A\u8ED1\u8F08\u8F2C\u8F40\u9B31\u90C4\u91B1\u9245\u9451\u91FA\u9212\u935A\u9203\u9262\u947D\u9276\u928D\u929B\u92D9\u93FD\u9417\u9321\u9329\u6774\u9348\u9360\u93A1\u939B\u9394\u93F0\u93D0\u9481\u9436\u945E\u9588\u9592\u95D3\u95CD\u95E0\u95D2\u95E4\u965D\u97B4\u97CD\u9832\u71B2\u982E\u9834\u9852\u7E87\u98BA\u98AD\u98B8\u98BB\u98C0\u98E3\u98E2\u98E5\u98FF\u9904\u990E\u990F\u9916\u9915\u991C\u9936\u9941\u993A\u99B9\u99F0\u9A6B\u9A02\u99F8\u9A0C\u9A4C\u9A24\u9A66\u9B5B\u9B62\u9B68\u9B7A\u9B8B\u9B93\u9B8A\u9B8D\u9BB3\u9BA6\u9C02\u9B9C\u9C60\u9BBA\u9BB6\u9BD2\u9BD5\u9C3A\u9C0F\u9C68\u9BF7\u9C2E\u9C03\u9C01\u9C42\u9C1F\u9C1C\u9C3C\u9C6F\u9C64\u9C63\u9CF2\u9DAC\u9D1E\u9D12\u9DFD\u9D34\u9D43\u9D50\u9DF3\u9D7E\u9D6E\u9D8A\u9D77\u9DEB\u9DA1\u9DCA\u9DB2\u9DB9\u9DBA\u9DC1\u9DD6\u9E07\u9E0F\u9E18\u9EF6\u9F02\u9780\u9F55\u9F57\u5FD7\u5236\u8AEE\u53EA\u7CFB\u9B06\u5690\u9762\u4E7E\u62FC\u5641\u8B9A\u9AEE\u6BAD\u7DFB\u59E6\u7A6B\u934A\u8FF4\u4FC2\u8E5F\u96BB\u95E2\u95C6\u59B3"}function Ro(t){let e="";for(let r=0;r{Dir=new Map([["\u5403","\u5403"],["\u6CE8","\u6CE8"]])});function ts(t){let e;if(typeof t=="string")e=t;else if(Array.isArray(t))e=JSON.stringify(t);else if(typeof t=="object")e=JSON.stringify(t);else{_("error","[Utils] [Common] Unsupported data type");return}_("info","[Utils] [Common]",e.slice(0,200))}function W0(t){let e=t.match(/\((\d{4})\)/);return e?parseInt(e[1]):null}function tg(t){if(/^\d+$/.test(t))return Number(t);let e={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u58F9:1,\u8CB3:2,\u53C3:3,\u8086:4,\u4F0D:5,\u9678:6,\u67D2:7,\u634C:8,\u7396:9},r={\u5341:10,\u767E:100,\u5343:1e3,\u62FE:10,\u4F70:100,\u4EDF:1e3},n=0,s=0,i=1;for(let a=0;a=i?n=s*c:n+=s*c,i=c,s=0}}return s>0&&(n+=s),n}function M8e(t){if(!t||typeof t!="string")return{cleanFileName:"",preferredPlatform:""};let e=t.indexOf("@");if(e===-1)return{cleanFileName:t.trim(),preferredPlatform:""};let r=t.substring(0,e).trim(),n=t.substring(e+1).trim(),s=n.match(/^(\w+)\s+(S\d+E\d+)$/);if(s){let i=s[1],a=s[2];return{cleanFileName:`${r} ${a}`,preferredPlatform:Kz(i)}}else{let i=r.match(/^(.+?)\s+(S\d+E\d+)$/);if(i){let a=i[1],o=i[2];return{cleanFileName:`${a} ${o}`,preferredPlatform:Kz(n)}}else return{cleanFileName:r,preferredPlatform:Kz(n)}}}function Kz(t){if(!t||typeof t!="string")return"";let e=t.trim();return O.allowedPlatforms.includes(e)?e:""}function W8e(t){if(!t)return[...O.platformOrderArr];if(!O.allowedPlatforms.includes(t))return _("warn",`[Utils] [Common] Invalid platform: ${t}, using default order`),[...O.platformOrderArr];let e=[t];for(let r of O.platformOrderArr)r!==t&&r!==null&&e.push(r);return e.push(null),e}function $8e(t){return t?String(t).replace(/[\u200B-\u200F\uFEFF]/g,"").trim():""}function Fr(t){return t?String(t).replace(/[^\u4e00-\u9fa5\u3400-\u4DBF\u{20000}-\u{2EE5F}\u{30000}-\u{323AF}\u3040-\u30ff\uFF65-\uFF9F\uAC00-\uD7AFa-zA-Z0-9\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\u2160-\u217F\u0400-\u04FF\u00C0-\u024F\u0370-\u03FF]/gu,""):""}function $0(t,e){if(!t||!e)return!1;let r=Fr(t),n=Fr(e);if(r===n)return!0;let s=[" ","(","\uFF08",":","\uFF1A","-","\u2014","\xB7","\u7B2C","S","s","\u5E74\u756A","\u5408\u96C6"];for(let i of s)if(r.startsWith(n+i))return!0;return!1}function $t(t){if(!t)return null;let e=t.match(/(?:第\s*([0-9一二三四五六七八九十百千万]+)\s*[季期部])|(?:S(?:eason)?\s*(\d+))|(?:Part\s*(\d+))/i);if(e){let r=e[1]||e[2]||e[3];if(r)return tg(r)}return null}function yt(t,e,r=null){if(O.strictTitleMatch)return $0(t,e);let n=Fr(t).toLowerCase(),i=[Fr(e).toLowerCase()];try{i=[...new Set([e,Gt(e),Ro(e)])].map(o=>Fr(o).toLowerCase()).filter(Boolean)}catch{}if(i.some(o=>n.includes(o)))return!0;let a=r!==null?r:$t(e);if(a!==null){let o=$t(t);if(a>1){if((o||1)!==a)return!1}else if(a===1&&o!==null&&o!==1)return!1}return i.some(o=>{if(Math.abs(n.length-o.length)>Math.max(n.length,o.length)*.7||/^[a-zA-Z0-9]+$/.test(o))return!1;let c=0,u=0;for(let l of o){let d=n.indexOf(l,u);d!==-1&&(c++,u=d+1)}return c/o.length>.8})}function et(t,e){let r=t?.constructor?.name;if(e==="array"){if(!Array.isArray(t))throw new TypeError(`${t} \u5FC5\u987B\u662F\u4E00\u4E2A\u6570\u7EC4\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(e==="boolean"){if(typeof t!="boolean"&&typeof t!="number")throw new TypeError(`${t} \u5FC5\u987B\u662F boolean \u6216 number\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}else if(typeof t!==e)throw new TypeError(`${t} \u5FC5\u987B\u662F ${e}\uFF0C\u4F46\u4F20\u5165\u7684\u662F ${r}`)}function Tt(t){if(!t)return{season:null,baseTitle:null};let e=t.match(/^(.*?)\(\d{4}\)/),r=e?e[1].trim():t.split("(")[0].trim(),n=Fr(r),s=n.match(/第\s*([0-9一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)\s*[季期部]/);if(s)return{season:tg(s[1]),baseTitle:n.replace(s[0],"").trim()};let i=n.match(/(?:S(?:eason)?|Season)\s*(\d+)/i);if(i)return{season:parseInt(i[1],10),baseTitle:n.replace(i[0],"").trim()};let a=n.match(/Part\s*(\d+)/i);if(a)return{season:parseInt(a[1],10),baseTitle:n.replace(a[0],"").trim()};let o=n.match(/(?:^|\s|[^\d])(\d{1,2})$/);if(o)return{season:parseInt(o[1],10),baseTitle:n.slice(0,n.lastIndexOf(o[1])).trim()};let c=n.match(/([一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+)$/);return c?{season:tg(c[1]),baseTitle:n.replace(c[0],"").trim()}:{season:null,baseTitle:n}}function lf(t){if(!t)return null;let e=t.match(/第(\d+)集/);if(e)return parseInt(e[1],10);let r=t.match(/[Ee][Pp]?(\d+)/);if(r)return parseInt(r[1],10);let n=t.match(/(?:^|\s)(\d+)(?:\s|$)/);return n?parseInt(n[1],10):null}function Jz(t,e){let{season:r,baseTitle:n}=Tt(t),s=lf(e);return{baseTitle:n,season:r,episode:s}}var rg,Yz,hn=dr(()=>{Pt();St();no();rg=t=>{let e=t.match(/【(.*?)】/);return e?e[1]:null},Yz=t=>t.split("(")[0].trim()});var F0,LL,BL,ML,WL,Xz,Zz,$L,vt,pb,hs=dr(()=>{hn();F0=class t{constructor({animeId:e=111,bangumiId:r="",animeTitle:n="",type:s="",typeDescription:i="",imageUrl:a="",startDate:o="",episodeCount:c=1,rating:u=0,isFavorited:l=!0,source:d="",links:f=[],mergedChildren:p=[],isHiddenChild:m=!1}={}){et(e,"number"),et(r,"string"),et(n,"string"),et(s,"string","type"),et(i,"string"),et(a,"string"),et(o,"string"),et(c,"number"),et(u,"number"),et(l,"boolean"),et(d,"string"),et(f,"array"),et(p,"array"),et(m,"boolean"),this.links=f.map(h=>LL.fromJson(h)),Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,type:s,typeDescription:i,imageUrl:a,startDate:o,episodeCount:c,rating:u,isFavorited:l,source:d,mergedChildren:p,isHiddenChild:m})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.links||[]).map(n=>LL.fromJson(n));return new t({...e,links:r})}toJson(){return{...this,links:this.links.map(e=>e.toJson())}}},LL=class t{constructor({name:e="",url:r="",title:n="",id:s=10001}={}){et(e,"string"),et(r,"string"),et(n,"string"),et(s,"number"),Object.assign(this,{name:e,url:r,title:n,id:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},BL=class t{constructor({episodeId:e=10001,animeId:r=111,animeTitle:n="",episodeTitle:s="",type:i="",typeDescription:a="",shift:o=1,imageUrl:c=""}={}){et(e,"number"),et(r,"number"),et(n,"string"),et(s,"string"),et(i,"string","type"),et(a,"string"),et(o,"number"),et(c,"string"),Object.assign(this,{episodeId:e,animeId:r,animeTitle:n,episodeTitle:s,type:i,typeDescription:a,shift:o,imageUrl:c})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},ML=class{constructor({episodeId:e="",episodeTitle:r=""}={}){this.episodeId=e,this.episodeTitle=r}};ML.prototype.toJson=function(){return{episodeId:this.episodeId,episodeTitle:this.episodeTitle}};WL=class t{constructor({animeId:e=111,animeTitle:r="",type:n="",typeDescription:s="",episodes:i=[]}={}){et(e,"number"),et(r,"string"),et(n,"string"),et(s,"string"),et(i,"array"),Object.assign(this,{animeId:e,animeTitle:r,type:n,typeDescription:s,episodes:i.map(a=>new ML(a))})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this,episodes:this.episodes.map(e=>e.toJson())}}},Xz=class t{constructor({id:e="",airDate:r="",name:n="",episodeCount:s=0}={}){et(e,"string"),et(r,"string"),et(n,"string"),et(s,"number"),Object.assign(this,{id:e,airDate:r,name:n,episodeCount:s})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},Zz=class t{constructor({seasonId:e="",episodeId:r=10001,episodeTitle:n="",episodeNumber:s="",airDate:i=""}={}){et(e,"string"),et(r,"number"),et(n,"string"),et(s,"string"),et(i,"string"),Object.assign(this,{seasonId:e,episodeId:r,episodeTitle:n,episodeNumber:s,airDate:i})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}},$L=class t{constructor({animeId:e=111,bangumiId:r="",animeTitle:n="",imageUrl:s="",isOnAir:i=!0,airDay:a=1,isFavorited:o=!0,rating:c=0,type:u="",typeDescription:l="",seasons:d=[],episodes:f=[]}={}){et(e,"number"),et(r,"string"),et(n,"string"),et(s,"string"),et(i,"boolean"),et(a,"number"),et(o,"boolean"),et(c,"number"),et(u,"string"),et(l,"string"),et(d,"array"),et(f,"array");let p=d.map(m=>Xz.fromJson(m));Object.assign(this,{animeId:e,bangumiId:r,animeTitle:n,imageUrl:s,isOnAir:i,airDay:a,isFavorited:o,rating:c,type:u,typeDescription:l,seasons:p,episodes:f})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=e.episodes.map(n=>Zz.fromJson(n));return new t({...e,episodes:r})}toJson(){return{...this,seasons:this.seasons.map(e=>e.toJson()),episodes:this.episodes.map(e=>e.toJson())}}},vt=class t{constructor({type:e="",segmentList:r=[],duration:n=0}={}){et(e,"string"),et(r,"array"),et(n,"number"),this.segmentList=r.map(s=>pb.fromJson(s)),Object.assign(this,{type:e,duration:n})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");let r=(e.segmentList||[]).map(n=>pb.fromJson(n));return new t({...e,segmentList:r})}toJson(){return{...this,segmentList:this.segmentList.map(e=>e.toJson())}}},pb=class t{constructor({type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o}={}){et(e,"string","type"),et(r,"number","segment_start"),et(n,"number","segment_end"),et(s,"string","url"),i!==void 0&&et(i,"string","data"),a!==void 0&&et(a,"string","_m_h5_tk"),o!==void 0&&et(o,"string","_m_h5_tk_enc"),Object.assign(this,{type:e,segment_start:r,segment_end:n,url:s,data:i,_m_h5_tk:a,_m_h5_tk_enc:o})}static fromJson(e){if(typeof e!="object"||e===null)throw new TypeError("fromJson \u53C2\u6570\u5FC5\u987B\u662F\u5BF9\u8C61");return new t(e)}toJson(){return{...this}}}});var V8e={};is(V8e,{addAnime:()=>Lt,addEpisode:()=>Q8e,cleanupExpiredIPs:()=>jL,findAnimeIdByCommentId:()=>qL,findAnimeTitleById:()=>nK,findIndexById:()=>UL,findTitleById:()=>rK,findUrlById:()=>BC,getCommentCache:()=>df,getDirname:()=>HL,getLastSearch:()=>tK,getLocalCaches:()=>oK,getPreferAnimeId:()=>aK,getSearchCache:()=>DC,isCommentCacheValid:()=>H8e,isSearchCacheValid:()=>j8e,judgeLocalCacheValid:()=>cK,readCacheFromFile:()=>ng,removeEarliestAnime:()=>Ft,removeEpisodeByUrl:()=>G8e,resolveAnimeById:()=>sg,resolveAnimeByIdFromDetailStore:()=>ig,resolveEpisodeContextById:()=>hb,setCommentCache:()=>LC,setLastSearch:()=>eK,setPreferByAnimeId:()=>iK,setSearchCache:()=>kC,storeAnimeIdsToMap:()=>sK,updateLocalCaches:()=>GL,writeCacheToFile:()=>QL});function eK(t,e){if(RC.set(t,{...e,timestamp:Date.now()}),RC.size>200)for(let[r,n]of RC)Date.now()-n.timestamp>3600*1e3&&RC.delete(r)}function tK(t){return RC.get(t)}function mb(t){if(!t||typeof t!="object")return"";let e=t.source?String(t.source)+":":"";return t.bangumiId!==void 0&&t.bangumiId!==null&&String(t.bangumiId)!==""?"bangumi:"+e+String(t.bangumiId):t.animeId!==void 0&&t.animeId!==null&&String(t.animeId)!==""?"anime:"+e+String(t.animeId):""}function F8e(t,e){if(!(t instanceof Map)||!e)return;let r=mb(e);r&&t.set(r,e)}function*PC(t){if(!(t instanceof Map))return;let e=new Set;for(let r of t.values()){let n=mb(r);n&&e.has(n)||(n&&e.add(n),yield r)}}function kir(t){let e=[];for(let r of PC(t))e.push(r);return e}function Lir(){let t=Date.now(),e=[];for(let[r,n]of O.searchCache.entries()){let s=(t-n.timestamp)/6e4;if(s>O.searchCacheMinutes){O.searchCache.delete(r),_("info",`[Cache] Search cache for "${r}" expired after ${s.toFixed(2)} minutes`);continue}e.push(n)}return e.sort((r,n)=>(n.timestamp||0)-(r.timestamp||0)),e}function U8e(t,e,r){let n=Date.now(),s=0;for(let[i,a]of t.entries())(n-a.timestamp)/6e4>e&&(t.delete(i),s++);s>0&&_("info",`[Cache] ${r} TTL \u626B\u63CF\u5B8C\u6BD5\uFF0C\u5DF2\u79FB\u9664 ${s} \u4E2A\u8FC7\u671F\u6761\u76EE\uFF0C\u5269\u4F59 ${t.size} \u4E2A`)}function Bir(t,e){return String(t?.animeId)===e||String(t?.bangumiId)===e}function FL(t,e,r=null){let n=null;for(let s of t)if(Bir(s,e)){if(r&&s?.source===r)return s;n||(n=s)}return n}function*q8e(){let t=new Set;for(let e of Lir())if(Array.isArray(e.details))for(let r of e.details){let n=mb(r);n&&t.has(n)||(n&&t.add(n),yield r)}}function sg(t,e=null,r=null){let n=String(t),s=FL(O.animes,n,r);return s||(s=FL(PC(e),n,r),s)?s:FL(q8e(),n,r)}function ig(t,e=null,r=null){let n=String(t);return FL(PC(e),n,r)}function hb(t,e=null){let r=Number(t);if(!Number.isFinite(r))return null;let n=i=>{if(!i?.links||!Array.isArray(i.links))return null;let a=i.links.findIndex(o=>o.id===r);return a===-1?null:{anime:i,link:i.links[a],index:a}};for(let i of O.animes){let a=n(i);if(a)return a}for(let i of PC(e)){let a=n(i);if(a)return a}let s=new Set;for(let i of O.animes){let a=mb(i);a&&s.add(a)}for(let i of PC(e)){let a=mb(i);a&&s.add(a)}for(let i of q8e()){let a=mb(i);if(a&&s.has(a))continue;a&&s.add(a);let o=n(i);if(o)return o}return null}function j8e(t){if(!O.searchCache.has(t))return!1;let e=O.searchCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.searchCacheMinutes?(O.searchCache.delete(t),_("info",`[Cache] Search cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function DC(t,e=null){if(j8e(t)){_("info",`[Cache] Using search cache for "${t}"`);let r=O.searchCache.get(t);return e instanceof Map&&Array.isArray(r.details)&&r.details.forEach(n=>{F8e(e,n)}),r.results}return null}function kC(t,e,r=null){let n=kir(r);if(U8e(O.searchCache,O.searchCacheMinutes,"searchCache"),O.searchCache.set(t,{results:e,details:n,timestamp:Date.now()}),O.searchCache.size>500){let s=O.searchCache.keys().next().value;O.searchCache.delete(s),_("info",`[Cache] searchCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${s}`)}_("info",`[Cache] Cached search results for "${t}" (${e.length} animes)`)}function H8e(t){if(!O.commentCache.has(t))return!1;let e=O.commentCache.get(t),n=(Date.now()-e.timestamp)/(1e3*60);return n>O.commentCacheMinutes?(O.commentCache.delete(t),_("info",`[Cache] Comment cache for "${t}" expired after ${n.toFixed(2)} minutes`),!1):!0}function df(t){return H8e(t)?(_("info",`[Cache] Using comment cache for "${t}"`),O.commentCache.get(t).comments):null}function LC(t,e){if(U8e(O.commentCache,O.commentCacheMinutes,"commentCache"),O.commentCache.set(t,{comments:e,timestamp:Date.now()}),O.commentCache.size>500){let r=O.commentCache.keys().next().value;O.commentCache.delete(r),_("info",`[Cache] commentCache TTL\u6E05\u7406\u540E\u4ECD\u8FBE\u4E0A\u9650\uFF0C\u5DF2\u79FB\u9664\u6700\u65E9\u6761\u76EE: ${r}`)}_("info",`[Cache] Cached comments for "${t}" (${e.length} comments)`)}function Q8e(t,e){let r=O.episodeIds.find(s=>s.url===t&&s.title===e);if(r)return _("info",`[Cache] Episode with URL ${t} and title ${e} already exists in episodeIds, returning existing episode.`),r;O.episodeNum++;let n={id:O.episodeNum,url:t,title:e};return O.episodeIds.push(n),_("info",`[Cache] Added to episodeIds: ${JSON.stringify(n)}`),n}function G8e(t){let e=O.episodeIds.length;O.episodeIds=O.episodeIds.filter(n=>n.url!==t);let r=e-O.episodeIds.length;return r>0?(_("info",`[Cache] Removed ${r} episode(s) from episodeIds with URL: ${t}`),!0):(_("error",`[Cache] No episode found in episodeIds with URL: ${t}`),!1)}function BC(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return _("info",`[Cache] Found URL for ID ${t}: ${e.url}`),e.url;let r=hb(t);return r?.link?.url?(_("info",`[Cache] Found URL for ID ${t} via cached anime details: ${r.link.url}`),r.link.url):(_("error",`[Cache] No URL found for ID: ${t}`),null)}function UL(t){let e=O.episodeIds.findIndex(n=>n.id===t);if(e!==-1)return _("info",`[Cache] Found index for ID ${t}: ${e}`),e;let r=hb(t);return r?(_("info",`[Cache] Found index for ID ${t} via cached anime details: ${r.index}`),r.index):(_("error",`[Cache] No index found for ID: ${t}`),-1)}function rK(t){let e=O.episodeIds.find(n=>n.id===t);if(e)return _("info",`[Cache] Found TITLE for ID ${t}: ${e.title}`),e.title;let r=hb(t);return r?.link?.title?(_("info",`[Cache] Found TITLE for ID ${t} via cached anime details: ${r.link.title}`),r.link.title):(_("error",`[Cache] No TITLE found for ID: ${t}`),null)}function nK(t){let e=hb(t);return e?.anime?.animeTitle?(_("info",`[Cache] Found animeTitle for ID ${t}: ${e.anime.animeTitle}`),e.anime.animeTitle):(_("error",`[Cache] No animeTitle found for ID: ${t}`),null)}function Lt(t,e=null){t=F0.fromJson(t);try{if(!t.links||!Array.isArray(t.links))return _("error",`[Cache] Invalid or missing links in anime: ${JSON.stringify(t)}`),!1;let r=[];t.links.forEach(i=>{if(i.url){let a=Q8e(i.url,i.title);a&&r.push(a)}else _("error",`[Cache] Invalid link in anime, missing url: ${JSON.stringify(i)}`)});let n=F0.fromJson({...t,links:r});F8e(e,n);let s=O.animes.findIndex(i=>i.animeId===t.animeId);return s!==-1&&(O.animes.splice(s,1),_("info",`[Cache] Removed old anime at index: ${s}`)),O.animes.push(n),_("info",`[Cache] Added anime to latest position: ${t.animeId}`),O.animes.length>O.MAX_ANIMES&&(Ft()||_("error","[Cache] Failed to remove earliest anime, but continuing")),_("info",`[Cache] animes: ${JSON.stringify(O.animes.map(i=>({links:i.links,animeId:i.animeId,bangumiId:i.bangumiId,animeTitle:i.animeTitle})),(i,a)=>i==="links"?a.length:a)}`),!0}catch(r){return _("error",`[Cache] addAnime failed: ${r.message}`),!1}}function Ft(){if(O.animes.length===0)return _("error","[Cache] No animes to remove."),!1;let t=O.animes.shift();return _("info",`[Cache] Removed earliest anime: ${JSON.stringify(t)}`),t.links&&Array.isArray(t.links)&&t.links.forEach(e=>{e.url&&G8e(e.url)}),!0}function sK(t,e){let r=new Set,n=O.lastSelectMap.get(e);if(n&&Array.isArray(n.animeIds))for(let d of n.animeIds)r.add(d);for(let d of t)r.add(d.animeId);let s=n?.prefer,i=n?.source,a=n?.preferBySeason,o=n?.sourceBySeason,c=n?.offsets,u=a?{...a}:{},l=o?{...o}:{};if(s!==void 0&&(u.default=s),i!==void 0&&(l.default=i),O.lastSelectMap.has(e)&&O.lastSelectMap.delete(e),O.lastSelectMap.set(e,{animeIds:[...r],...Object.keys(u).length>0&&{preferBySeason:u},...Object.keys(l).length>0&&{sourceBySeason:l},...c!==void 0&&{offsets:c}}),O.lastSelectMap.size>O.MAX_LAST_SELECT_MAP){let d=O.lastSelectMap.keys().next().value;O.lastSelectMap.delete(d),_("info",`[Cache] Removed earliest entry from lastSelectMap: ${d}`)}}function qL(t){let e=hb(t);return e?[e.anime.animeId,e.anime.source,e.link.title,e.anime.aliases||[]]:[null,null,null,[]]}function iK(t,e,r=null,n=null){for(let[s,i]of O.lastSelectMap.entries())if(i.animeIds&&i.animeIds.includes(t)){let a=r===null?"default":String(r);return i.preferBySeason=i.preferBySeason||{},i.sourceBySeason=i.sourceBySeason||{},i.preferBySeason[a]=t,i.sourceBySeason[a]=e,r!==null&&n!==null&&(i.offsets=i.offsets||{},i.offsets[a]=n),O.lastSelectMap.set(s,i),s}return null}function aK(t,e=null){let r=O.lastSelectMap.get(t);if(!r)return[null,null,null];let n=e===null?"default":String(e),s=r.preferBySeason||{},i=r.sourceBySeason||{},a=s[n]??s.default??r.prefer??null,o=i[n]??i.default??r.source??null,c=r.offsets||null;return[a,o,c]}function jL(t){let r=0;for(let[n,s]of O.requestHistory.entries()){let i=s.filter(a=>t-a<=6e4);i.length===0?(O.requestHistory.delete(n),r++,_("info",`[Utils] [Rate Limit] Cleaned up expired IP record: ${n}`)):i.length0&&_("info",`[Utils] [Rate Limit] Cleanup completed: removed ${r} expired IP records`)}function HL(){return typeof __dirname<"u"?__dirname:OC.join(process.cwd(),"danmu_api","utils")}function ng(t){let e=OC.join(HL(),"..","..",".cache",`${t}`);if(NC.existsSync(e)){let r=NC.readFileSync(e,"utf8");return JSON.parse(r)}return null}function QL(t,e){let r=OC.join(HL(),"..","..",".cache",`${t}`);NC.writeFileSync(r,JSON.stringify(e),"utf8")}async function oK(){if(!O.localCacheInitialized)try{_("info","[Cache] getLocalCaches start."),O.animes=JSON.parse(ng("animes"))||O.animes,O.episodeIds=JSON.parse(ng("episodeIds"))||O.episodeIds,O.episodeNum=JSON.parse(ng("episodeNum"))||O.episodeNum,O.reqRecords=JSON.parse(ng("reqRecords"))||O.reqRecords,O.todayReqNum=JSON.parse(ng("todayReqNum"))||O.todayReqNum;let t=ng("lastSelectMap");t&&(O.lastSelectMap=new Map(Object.entries(JSON.parse(t))),_("info",`[Cache] Restored lastSelectMap from local cache with ${O.lastSelectMap.size} entries`)),O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.localCacheInitialized=!0,_("info","[Cache] getLocalCaches completed successfully.")}catch(t){_("error",`[Cache] getLocalCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function GL(){try{_("info","[Cache] updateLocalCaches start.");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=an(s);i!==O.lastHashes[r]&&(QL(r,s),t.push({key:r,hash:i}))}t.length>0?(_("info",`[Cache] Updated local caches for keys: ${t.map(r=>r.key).join(", ")}`),t.forEach(({key:r,hash:n})=>{O.lastHashes[r]=n})):_("info","[Cache] No changes detected, skipping local cache update.")}catch(t){_("error",`[Cache] updateLocalCaches failed: ${t.message}`,t.stack),_("error",`[Cache] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function cK(t,e){if(e==="node")try{if(NC=await import("fs"),OC=await import("path"),!O.localCacheValid&&t!=="/favicon.ico"&&t!=="/robots.txt"){let r=OC.join(HL(),"..","..",".cache");NC.existsSync(r)?O.localCacheValid=!0:O.localCacheValid=!1}}catch(r){_("warn","[Cache] Node.js modules not available:",r.message),O.localCacheValid=!1}}var NC,OC,RC,$n=dr(()=>{Pt();St();hs();Is();RC=new Map});var pK=E(XL=>{"use strict";Object.defineProperty(XL,"__esModule",{value:!0});XL.VerbatimString=void 0;var fK=class extends String{format;constructor(e,r){super(r),this.format=e}};XL.VerbatimString=fK});var Pl=E(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.MultiErrorReply=hr.CommandTimeoutDuringMaintenanceError=hr.SocketTimeoutDuringMaintenanceError=hr.TimeoutError=hr.BlobError=hr.SimpleError=hr.ErrorReply=hr.ReconnectStrategyError=hr.RootNodesUnavailableError=hr.SocketClosedUnexpectedlyError=hr.DisconnectsClientError=hr.ClientOfflineError=hr.ClientClosedError=hr.SocketTimeoutError=hr.ConnectionTimeoutError=hr.WatchError=hr.AbortError=void 0;var mK=class extends Error{constructor(){super("The command was aborted")}};hr.AbortError=mK;var hK=class extends Error{constructor(e="One (or more) of the watched keys has been changed"){super(e)}};hr.WatchError=hK;var gK=class extends Error{constructor(){super("Connection timeout")}};hr.ConnectionTimeoutError=gK;var AK=class extends Error{constructor(e){super(`Socket timeout timeout. Expecting data, but didn't receive any in ${e}ms.`)}};hr.SocketTimeoutError=AK;var yK=class extends Error{constructor(){super("The client is closed")}};hr.ClientClosedError=yK;var xK=class extends Error{constructor(){super("The client is offline")}};hr.ClientOfflineError=xK;var bK=class extends Error{constructor(){super("Disconnects client")}};hr.DisconnectsClientError=bK;var EK=class extends Error{constructor(){super("Socket closed unexpectedly")}};hr.SocketClosedUnexpectedlyError=EK;var _K=class extends Error{constructor(){super("All the root nodes are unavailable")}};hr.RootNodesUnavailableError=_K;var SK=class extends Error{originalError;socketError;constructor(e,r){super(e.message),this.originalError=e,this.socketError=r}};hr.ReconnectStrategyError=SK;var yb=class extends Error{};hr.ErrorReply=yb;var vK=class extends yb{};hr.SimpleError=vK;var CK=class extends yb{};hr.BlobError=CK;var $C=class extends Error{};hr.TimeoutError=$C;var IK=class extends $C{constructor(e){super(`Socket timeout during maintenance. Expecting data, but didn't receive any in ${e}ms.`)}};hr.SocketTimeoutDuringMaintenanceError=IK;var TK=class extends $C{constructor(e){super(`Command timeout during maintenance. Waited to write command for more than ${e}ms.`)}};hr.CommandTimeoutDuringMaintenanceError=TK;var wK=class extends yb{replies;errorIndexes;constructor(e,r){super(`${r.length} commands failed, see .replies and .errorIndexes for more information`),this.replies=e,this.errorIndexes=r}*errors(){for(let e of this.errorIndexes)yield this.replies[e]}};hr.MultiErrorReply=wK});var tB=E(pt=>{"use strict";var RK;Object.defineProperty(pt,"__esModule",{value:!0});pt.Decoder=pt.PUSH_TYPE_MAPPING=pt.RESP_TYPES=void 0;var sWe=pK(),ZL=Pl();pt.RESP_TYPES={NULL:95,BOOLEAN:35,NUMBER:58,BIG_NUMBER:40,DOUBLE:44,SIMPLE_STRING:43,BLOB_STRING:36,VERBATIM_STRING:61,SIMPLE_ERROR:45,BLOB_ERROR:33,ARRAY:42,SET:126,MAP:37,PUSH:62};var Jr={"\r":13,t:116,"+":43,"-":45,0:48,".":46,i:105,n:110,E:69,e:101};pt.PUSH_TYPE_MAPPING={[pt.RESP_TYPES.BLOB_STRING]:Buffer};var eB=class{onReply;onErrorReply;onPush;getTypeMapping;#e=0;#t;constructor(e){this.onReply=e.onReply,this.onErrorReply=e.onErrorReply,this.onPush=e.onPush,this.getTypeMapping=e.getTypeMapping}reset(){this.#e=0,this.#t=void 0}write(e){if(this.#e>=e.length){this.#e-=e.length;return}if(this.#t&&(this.#t(e)||this.#e>=e.length)){this.#e-=e.length;return}do{let r=e[this.#e];if(++this.#e===e.length){this.#t=this.#r.bind(this,r);break}if(this.#n(r,e))break}while(this.#e=r.length?this.#R.bind(this,n,e):this.#R(n,e,r)}#I(e,r,n){let s=e(n);return typeof s=="function"?this.#I.bind(this,s,r):this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n)}#N(e,r,n,s){let i=this.#e+e;if(i>=s.length){let o=s.subarray(this.#e);return this.#e=s.length,this.#M.bind(this,e-o.length,[o],r,n)}let a=s.subarray(this.#e,i);return this.#e=i+r,n===Buffer?a:a.toString()}#M(e,r,n,s,i){let a=this.#e+e;if(a>=i.length){let c=i.subarray(this.#e);return r.push(c),this.#e=i.length,this.#M.bind(this,e-c.length,r,n,s)}r.push(i.subarray(this.#e,a)),this.#e=a+n;let o=Buffer.concat(r);return s===Buffer?o:o.toString()}#R(e,r,n){return this.#N(e,2,r,n)}#O(e,r){return this.#D(this.#p.bind(this,0),e,r)}#D(e,r,n){let s=e(n);return typeof s=="function"?this.#D.bind(this,s,r):this.#ce(s,r,n)}#ce(e,r,n){let s=e-4;return r===sWe.VerbatimString?this.#ue(s,n):(this.#e+=4,this.#e>=n.length?this.#R.bind(this,s,r):this.#R(s,r,n))}#ue(e,r){let n=this.#N.bind(this,3,1,String);return this.#e>=r.length?this.#F.bind(this,e,n):this.#F(e,n,r)}#F(e,r,n){let s=r(n);return typeof s=="function"?this.#F.bind(this,e,s):this.#le(e,s,n)}#le(e,r,n){return this.#H(r,this.#R.bind(this,e,String),n)}#H(e,r,n){let s=r(n);return typeof s=="function"?this.#H.bind(this,e,s):new sWe.VerbatimString(e,s)}#Q(e){let r=this.#x(String,e);return typeof r=="function"?this.#G.bind(this,r):new ZL.SimpleError(r)}#G(e,r){let n=e(r);return typeof n=="function"?this.#G.bind(this,n):new ZL.SimpleError(n)}#V(e){let r=this.#T(String,e);return typeof r=="function"?this.#z.bind(this,r):new ZL.BlobError(r)}#z(e,r){let n=e(r);return typeof n=="function"?this.#z.bind(this,n):new ZL.BlobError(n)}#w(e,r){let n=r[this.#e];return++this.#e===r.length?this.#U.bind(this,n,e):this.#U(n,e,r)}#U(e,r,n){switch(e){case pt.RESP_TYPES.NULL:return this.#s();case pt.RESP_TYPES.BOOLEAN:return this.#i(n);case pt.RESP_TYPES.NUMBER:return this.#c(r[pt.RESP_TYPES.NUMBER],n);case pt.RESP_TYPES.BIG_NUMBER:return this.#d(r[pt.RESP_TYPES.BIG_NUMBER],n);case pt.RESP_TYPES.DOUBLE:return this.#g(r[pt.RESP_TYPES.DOUBLE],n);case pt.RESP_TYPES.SIMPLE_STRING:return this.#x(r[pt.RESP_TYPES.SIMPLE_STRING],n);case pt.RESP_TYPES.BLOB_STRING:return this.#T(r[pt.RESP_TYPES.BLOB_STRING],n);case pt.RESP_TYPES.VERBATIM_STRING:return this.#O(r[pt.RESP_TYPES.VERBATIM_STRING],n);case pt.RESP_TYPES.SIMPLE_ERROR:return this.#Q(n);case pt.RESP_TYPES.BLOB_ERROR:return this.#V(n);case pt.RESP_TYPES.ARRAY:return this.#q(r,n);case pt.RESP_TYPES.SET:return this.#J(r,n);case pt.RESP_TYPES.MAP:return this.#te(r,n);default:throw new Error(`Unknown RESP type ${e} "${String.fromCharCode(e)}"`)}}#q(e,r){return r[this.#e]===Jr["-"]?(this.#e+=4,null):this.#K(this.#p(0,r),e,r)}#K(e,r,n){return typeof e=="function"?this.#de.bind(this,e,r):this.#k(new Array(e),0,r,n)}#de(e,r,n){return this.#K(e(n),r,n)}#k(e,r,n,s){for(let i=r;i=s.length)return this.#k.bind(this,e,i,n);let a=this.#w(n,s);if(typeof a=="function")return this.#Y.bind(this,e,i,a,n);e[i]=a}return e}#Y(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#Y.bind(this,e,r,a,s):(e[r++]=a,this.#k(e,r,s,i))}#J(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#X.bind(this,n,e):this.#Z(n,e,r)}#X(e,r,n){let s=e(n);return typeof s=="function"?this.#X.bind(this,s,r):this.#Z(s,r,n)}#Z(e,r,n){return r[pt.RESP_TYPES.SET]===Set?this.#j(new Set,e,r,n):this.#k(new Array(e),0,r,n)}#j(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#j.bind(this,e,r,n);let i=this.#w(n,s);if(typeof i=="function")return this.#ee.bind(this,e,r,i,n);e.add(i),--r}return e}#ee(e,r,n,s,i){let a=n(i);return typeof a=="function"?this.#ee.bind(this,e,r,a,s):(e.add(a),this.#j(e,r-1,s,i))}#te(e,r){let n=this.#p(0,r);return typeof n=="function"?this.#re.bind(this,n,e):this.#ne(n,e,r)}#re(e,r,n){let s=e(n);return typeof s=="function"?this.#re.bind(this,s,r):this.#ne(s,r,n)}#ne(e,r,n){switch(r[pt.RESP_TYPES.MAP]){case Map:return this.#W(new Map,e,r,n);case Array:return this.#k(new Array(e*2),0,r,n);default:return this.#$(Object.create(null),e,r,n)}}#W(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#W.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#ae.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#L.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#L.bind(this,e,r,i,a,n);e.set(i,a),--r}return e}#se(e,r){let n=r[this.#e];return++this.#e===r.length?this.#ie.bind(this,n,e):this.#ie(n,e,r)}#ie(e,r,n){switch(e){case pt.RESP_TYPES.SIMPLE_STRING:return this.#x(String,n);case pt.RESP_TYPES.BLOB_STRING:return this.#T(String,n);default:return this.#U(e,r,n)}}#ae(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#ae.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#L.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#L.bind(this,e,r,a,o,s):(e.set(a,o),this.#W(e,r-1,s,i))}#L(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#L.bind(this,e,r,n,o,i):(e.set(n,o),this.#W(e,r-1,i,a))}#$(e,r,n,s){for(;r>0;){if(this.#e>=s.length)return this.#$.bind(this,e,r,n);let i=this.#se(n,s);if(typeof i=="function")return this.#oe.bind(this,e,r,i,n);if(this.#e>=s.length)return this.#B.bind(this,e,r,i,this.#w.bind(this,n),n);let a=this.#w(n,s);if(typeof a=="function")return this.#B.bind(this,e,r,i,a,n);e[i]=a,--r}return e}#oe(e,r,n,s,i){let a=n(i);if(typeof a=="function")return this.#oe.bind(this,e,r,a,s);if(this.#e>=i.length)return this.#B.bind(this,e,r,a,this.#w.bind(this,s),s);let o=this.#w(s,i);return typeof o=="function"?this.#B.bind(this,e,r,a,o,s):(e[a]=o,this.#$(e,r-1,s,i))}#B(e,r,n,s,i,a){let o=s(a);return typeof o=="function"?this.#B.bind(this,e,r,n,o,i):(e[n]=o,this.#$(e,r-1,i,a))}};pt.Decoder=eB;RK=eB});var aWe=E(xb=>{"use strict";Object.defineProperty(xb,"__esModule",{value:!0});xb.scriptSha1=xb.defineScript=void 0;var tar=require("node:crypto");function rar(t){return{...t,SHA1:iWe(t.SCRIPT)}}xb.defineScript=rar;function iWe(t){return(0,tar.createHash)("sha1").update(t).digest("hex")}xb.scriptSha1=iWe});var oWe=E(rB=>{"use strict";Object.defineProperty(rB,"__esModule",{value:!0});rB.digest=void 0;var NK=null;async function nar(){if(!NK)try{NK=(await import("@node-rs/xxhash")).xxh3}catch{throw new Error('The "digest" function requires the "@node-rs/xxhash" package, but it was not found.')}return NK}async function sar(t){let e=await nar(),r=typeof t=="string"?t:new Uint8Array(t);return e.xxh64(r).toString(16).padStart(16,"0")}rB.digest=sar});var cWe=E(OK=>{"use strict";Object.defineProperty(OK,"__esModule",{value:!0});OK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","CAT"),e&&t.push(e)},transformReply:void 0}});var uWe=E(PK=>{"use strict";Object.defineProperty(PK,"__esModule",{value:!0});PK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","DELUSER"),t.pushVariadic(e)},transformReply:void 0}});var lWe=E(DK=>{"use strict";Object.defineProperty(DK,"__esModule",{value:!0});DK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","DRYRUN",e,...r)},transformReply:void 0}});var dWe=E(kK=>{"use strict";Object.defineProperty(kK,"__esModule",{value:!0});kK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GENPASS"),e&&t.push(e.toString())},transformReply:void 0}});var fWe=E(LK=>{"use strict";Object.defineProperty(LK,"__esModule",{value:!0});LK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","GETUSER",e)},transformReply:{2:t=>({flags:t[1],passwords:t[3],commands:t[5],keys:t[7],channels:t[9],selectors:t[11]?.map(e=>{let r=e;return{commands:r[1],keys:r[3],channels:r[5]}})}),3:void 0}}});var pWe=E(BK=>{"use strict";Object.defineProperty(BK,"__esModule",{value:!0});BK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LIST")},transformReply:void 0}});var mWe=E(MK=>{"use strict";Object.defineProperty(MK,"__esModule",{value:!0});MK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","LOAD")},transformReply:void 0}});var Dl=E(nB=>{"use strict";Object.defineProperty(nB,"__esModule",{value:!0});nB.BasicCommandParser=void 0;var WK=class{#e=[];#t=[];preserve;get redisArgs(){return this.#e}get keys(){return this.#t}get firstKey(){return this.#t[0]}get cacheKey(){let e=new Array(this.#e.length*2);for(let r=0;r{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});Le.transformRedisJsonNullReply=Le.transformRedisJsonReply=Le.transformRedisJsonArgument=Le.transformStreamsMessagesReplyResp3=Le.transformStreamsMessagesReplyResp2=Le.transformStreamMessagesReply=Le.transformStreamMessageNullReply=Le.transformStreamMessageReply=Le.parseArgs=Le.parseZKeysArguments=Le.transformRangeReply=Le.parseSlotRangesArguments=Le.transformFunctionListItemReply=Le.RedisFunctionFlags=Le.transformCommandReply=Le.CommandCategories=Le.CommandFlags=Le.parseOptionalVariadicArgument=Le.pushVariadicArgument=Le.pushVariadicNumberArguments=Le.pushVariadicArguments=Le.pushEvalArguments=Le.evalFirstKeyIndex=Le.transformPXAT=Le.transformEXAT=Le.transformSortedSetReply=Le.transformTuplesReply=Le.createTransformTuplesReplyFunc=Le.transformTuplesToMap=Le.transformNullableDoubleReply=Le.createTransformNullableDoubleReplyResp2Func=Le.transformDoubleArrayReply=Le.createTransformDoubleReplyResp2Func=Le.transformDoubleReply=Le.transformStringDoubleArgument=Le.transformDoubleArgument=Le.transformBooleanArrayReply=Le.transformBooleanReply=Le.isArrayReply=Le.isNullReply=void 0;var iar=Dl(),$K=tB();function FK(t){return t===null}Le.isNullReply=FK;function aar(t){return Array.isArray(t)}Le.isArrayReply=aar;Le.transformBooleanReply={2:t=>t===1,3:void 0};Le.transformBooleanArrayReply={2:t=>t.map(Le.transformBooleanReply[2]),3:void 0};function sB(t){switch(t){case 1/0:return"+inf";case-1/0:return"-inf";default:return t.toString()}}Le.transformDoubleArgument=sB;function oar(t){return typeof t!="number"?t:sB(t)}Le.transformStringDoubleArgument=oar;Le.transformDoubleReply={2:(t,e,r)=>{switch(r?r[$K.RESP_TYPES.DOUBLE]:void 0){case String:return t;default:{let s;switch(t.toString()){case"inf":case"+inf":s=1/0;case"-inf":s=-1/0;case"nan":s=NaN;default:s=Number(t)}return s}}},3:void 0};function xWe(t,e){return r=>Le.transformDoubleReply[2](r,t,e)}Le.createTransformDoubleReplyResp2Func=xWe;Le.transformDoubleArrayReply={2:(t,e,r)=>t.map(xWe(e,r)),3:void 0};function car(t,e){return r=>Le.transformNullableDoubleReply[2](r,t,e)}Le.createTransformNullableDoubleReplyResp2Func=car;Le.transformNullableDoubleReply={2:(t,e,r)=>t===null?null:Le.transformDoubleReply[2](t,e,r),3:void 0};function uar(t,e){let r=Object.create(null);for(let n=0;nUK(r,t,e)}Le.createTransformTuplesReplyFunc=lar;function UK(t,e,r){let n=r?r[$K.RESP_TYPES.MAP]:void 0,s=t;switch(n){case Array:return t;case Map:{let i=new Map;for(let a=0;a{let n=t,s=[];for(let i=0;it.map(e=>{let[r,n]=e;return{value:r,score:n}})};function dar(t){return(typeof t=="number"?t:Math.floor(t.getTime()/1e3)).toString()}Le.transformEXAT=dar;function far(t){return(typeof t=="number"?t:t.getTime()).toString()}Le.transformPXAT=far;function par(t){return t?.keys?.[0]}Le.evalFirstKeyIndex=par;function mar(t,e){return e?.keys?t.push(e.keys.length.toString(),...e.keys):t.push("0"),e?.arguments&&t.push(...e.arguments),t}Le.pushEvalArguments=mar;function har(t,e){return Array.isArray(e)?t=t.concat(e):t.push(e),t}Le.pushVariadicArguments=har;function gar(t,e){if(Array.isArray(e))for(let r of e)t.push(r.toString());else t.push(e.toString());return t}Le.pushVariadicNumberArguments=gar;function Aar(t,e){return Array.isArray(e)?t.push(e.length.toString(),...e):t.push("1",e),t}Le.pushVariadicArgument=Aar;function yar(t,e,r){r!==void 0&&(t.push(e),t.pushVariadicWithLength(r))}Le.parseOptionalVariadicArgument=yar;var hWe;(function(t){t.WRITE="write",t.READONLY="readonly",t.DENYOOM="denyoom",t.ADMIN="admin",t.PUBSUB="pubsub",t.NOSCRIPT="noscript",t.RANDOM="random",t.SORT_FOR_SCRIPT="sort_for_script",t.LOADING="loading",t.STALE="stale",t.SKIP_MONITOR="skip_monitor",t.ASKING="asking",t.FAST="fast",t.MOVABLEKEYS="movablekeys"})(hWe||(Le.CommandFlags=hWe={}));var gWe;(function(t){t.KEYSPACE="@keyspace",t.READ="@read",t.WRITE="@write",t.SET="@set",t.SORTEDSET="@sortedset",t.LIST="@list",t.HASH="@hash",t.STRING="@string",t.BITMAP="@bitmap",t.HYPERLOGLOG="@hyperloglog",t.GEO="@geo",t.STREAM="@stream",t.PUBSUB="@pubsub",t.ADMIN="@admin",t.FAST="@fast",t.SLOW="@slow",t.BLOCKING="@blocking",t.DANGEROUS="@dangerous",t.CONNECTION="@connection",t.TRANSACTION="@transaction",t.SCRIPTING="@scripting"})(gWe||(Le.CommandCategories=gWe={}));function xar([t,e,r,n,s,i,a]){return{name:t,arity:e,flags:new Set(r),firstKeyIndex:n,lastKeyIndex:s,step:i,categories:new Set(a)}}Le.transformCommandReply=xar;var AWe;(function(t){t.NO_WRITES="no-writes",t.ALLOW_OOM="allow-oom",t.ALLOW_STALE="allow-stale",t.NO_CLUSTER="no-cluster"})(AWe||(Le.RedisFunctionFlags=AWe={}));function bar(t){return{libraryName:t[1],engine:t[3],functions:t[5].map(e=>({name:e[1],description:e[3],flags:e[5]}))}}Le.transformFunctionListItemReply=bar;function yWe(t,e){t.push(e.start.toString(),e.end.toString())}function Ear(t,e){if(Array.isArray(e))for(let r of e)yWe(t,r);else yWe(t,e)}Le.parseSlotRangesArguments=Ear;function _ar([t,e]){return{start:t,end:e}}Le.transformRangeReply=_ar;function Sar(t,e){if(Array.isArray(e)){if(t.push(e.length.toString()),e.length)if(Car(e))t.pushKeys(e);else{for(let r=0;r{"use strict";Object.defineProperty(jK,"__esModule",{value:!0});var Par=Ie();jK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ACL","LOG"),e!=null&&t.push(e.toString())},transformReply:{2:(t,e,r)=>t.map(n=>{let s=n;return{count:s[1],reason:s[3],context:s[5],object:s[7],username:s[9],"age-seconds":Par.transformDoubleReply[2](s[11],e,r),"client-info":s[13],"entry-id":s[15],"timestamp-created":s[17],"timestamp-last-updated":s[19]}}),3:void 0}}});var _We=E(UC=>{"use strict";var Dar=UC&&UC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(UC,"__esModule",{value:!0});var kar=Dar(HK());UC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:kar.default.IS_READ_ONLY,parseCommand(t){t.push("ACL","LOG","RESET")},transformReply:void 0}});var SWe=E(QK=>{"use strict";Object.defineProperty(QK,"__esModule",{value:!0});QK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","SAVE")},transformReply:void 0}});var vWe=E(GK=>{"use strict";Object.defineProperty(GK,"__esModule",{value:!0});GK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ACL","SETUSER",e),t.pushVariadic(r)},transformReply:void 0}});var CWe=E(VK=>{"use strict";Object.defineProperty(VK,"__esModule",{value:!0});VK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","USERS")},transformReply:void 0}});var IWe=E(zK=>{"use strict";Object.defineProperty(zK,"__esModule",{value:!0});zK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ACL","WHOAMI")},transformReply:void 0}});var TWe=E(KK=>{"use strict";Object.defineProperty(KK,"__esModule",{value:!0});KK.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("APPEND",e,r)},transformReply:void 0}});var YK=E(bb=>{"use strict";Object.defineProperty(bb,"__esModule",{value:!0});bb.ASKING_CMD=void 0;bb.ASKING_CMD="ASKING";bb.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push(bb.ASKING_CMD)},transformReply:void 0}});var wWe=E(JK=>{"use strict";Object.defineProperty(JK,"__esModule",{value:!0});JK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,{username:e,password:r}){t.push("AUTH"),e!==void 0&&t.push(e),t.push(r)},transformReply:void 0}});var RWe=E(XK=>{"use strict";Object.defineProperty(XK,"__esModule",{value:!0});XK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("BGREWRITEAOF")},transformReply:void 0}});var NWe=E(ZK=>{"use strict";Object.defineProperty(ZK,"__esModule",{value:!0});ZK.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("BGSAVE"),e?.SCHEDULE&&t.push("SCHEDULE")},transformReply:void 0}});var OWe=E(eY=>{"use strict";Object.defineProperty(eY,"__esModule",{value:!0});eY.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITCOUNT"),t.pushKey(e),r&&(t.push(r.start.toString()),t.push(r.end.toString()),r.mode&&t.push(r.mode))},transformReply:void 0}});var PWe=E(tY=>{"use strict";Object.defineProperty(tY,"__esModule",{value:!0});tY.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BITFIELD_RO"),t.pushKey(e);for(let n of r)t.push("GET"),t.push(n.encoding),t.push(n.offset.toString())},transformReply:void 0}});var DWe=E(rY=>{"use strict";Object.defineProperty(rY,"__esModule",{value:!0});rY.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BITFIELD"),t.pushKey(e);for(let n of r)switch(n.operation){case"GET":t.push("GET",n.encoding,n.offset.toString());break;case"SET":t.push("SET",n.encoding,n.offset.toString(),n.value.toString());break;case"INCRBY":t.push("INCRBY",n.encoding,n.offset.toString(),n.increment.toString());break;case"OVERFLOW":t.push("OVERFLOW",n.behavior);break}},transformReply:void 0}});var kWe=E(nY=>{"use strict";Object.defineProperty(nY,"__esModule",{value:!0});nY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BITOP",e),t.pushKey(r),t.pushKeys(n)},transformReply:void 0}});var LWe=E(sY=>{"use strict";Object.defineProperty(sY,"__esModule",{value:!0});sY.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i){t.push("BITPOS"),t.pushKey(e),t.push(r.toString()),n!==void 0&&t.push(n.toString()),s!==void 0&&t.push(s.toString()),i&&t.push(i)},transformReply:void 0}});var BWe=E(iY=>{"use strict";Object.defineProperty(iY,"__esModule",{value:!0});iY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("BLMOVE"),t.pushKeys([e,r]),t.push(n,s,i.toString())},transformReply:void 0}});var aY=E(qC=>{"use strict";Object.defineProperty(qC,"__esModule",{value:!0});qC.parseLMPopArguments=void 0;function MWe(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())}qC.parseLMPopArguments=MWe;qC.default={IS_READ_ONLY:!1,parseCommand(t,...e){t.push("LMPOP"),MWe(t,...e)},transformReply:void 0}});var $We=E(pf=>{"use strict";var Lar=pf&&pf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Bar=pf&&pf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Mar=pf&&pf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Lar(e,t,r);return Bar(e,t),e};Object.defineProperty(pf,"__esModule",{value:!0});var WWe=Mar(aY());pf.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BLMPOP",e.toString()),(0,WWe.parseLMPopArguments)(t,...r)},transformReply:WWe.default.transformReply}});var cY=E(oY=>{"use strict";Object.defineProperty(oY,"__esModule",{value:!0});oY.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BLPOP"),t.pushKeys(e),t.push(r.toString())},transformReply(t){return t===null?null:{key:t[0],element:t[1]}}}});var FWe=E(jC=>{"use strict";var War=jC&&jC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jC,"__esModule",{value:!0});var $ar=War(cY());jC.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BRPOP"),t.pushKeys(e),t.push(r.toString())},transformReply:$ar.default.transformReply}});var UWe=E(uY=>{"use strict";Object.defineProperty(uY,"__esModule",{value:!0});uY.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BRPOPLPUSH"),t.pushKeys([e,r]),t.push(n.toString())},transformReply:void 0}});var lY=E(HC=>{"use strict";Object.defineProperty(HC,"__esModule",{value:!0});HC.parseZMPopArguments=void 0;var qWe=Ie();function jWe(t,e,r,n){t.pushKeysLength(e),t.push(r),n?.COUNT&&t.push("COUNT",n.COUNT.toString())}HC.parseZMPopArguments=jWe;HC.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZMPOP"),jWe(t,e,r,n)},transformReply:{2(t,e,r){return t===null?null:{key:t[0],members:t[1].map(n=>{let[s,i]=n;return{value:s,score:qWe.transformDoubleReply[2](i,e,r)}})}},3(t){return t===null?null:{key:t[0],members:qWe.transformSortedSetReply[3](t[1])}}}}});var QWe=E(mf=>{"use strict";var Far=mf&&mf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Uar=mf&&mf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qar=mf&&mf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Far(e,t,r);return Uar(e,t),e};Object.defineProperty(mf,"__esModule",{value:!0});var HWe=qar(lY());mf.default={IS_READ_ONLY:!1,parseCommand(t,e,...r){t.push("BZMPOP",e.toString()),(0,HWe.parseZMPopArguments)(t,...r)},transformReply:HWe.default.transformReply}});var fY=E(dY=>{"use strict";Object.defineProperty(dY,"__esModule",{value:!0});var jar=Ie();dY.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BZPOPMAX"),t.pushKeys(e),t.push(r.toString())},transformReply:{2(t,e,r){return t===null?null:{key:t[0],value:t[1],score:jar.transformDoubleReply[2](t[2],e,r)}},3(t){return t===null?null:{key:t[0],value:t[1],score:t[2]}}}}});var VWe=E(QC=>{"use strict";var Har=QC&&QC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(QC,"__esModule",{value:!0});var GWe=Har(fY());QC.default={IS_READ_ONLY:GWe.default.IS_READ_ONLY,parseCommand(t,e,r){t.push("BZPOPMIN"),t.pushKeys(e),t.push(r.toString())},transformReply:GWe.default.transformReply}});var zWe=E(pY=>{"use strict";Object.defineProperty(pY,"__esModule",{value:!0});pY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","CACHING",e?"YES":"NO")},transformReply:void 0}});var KWe=E(mY=>{"use strict";Object.defineProperty(mY,"__esModule",{value:!0});mY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETNAME")},transformReply:void 0}});var YWe=E(hY=>{"use strict";Object.defineProperty(hY,"__esModule",{value:!0});hY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","GETREDIR")},transformReply:void 0}});var JWe=E(gY=>{"use strict";Object.defineProperty(gY,"__esModule",{value:!0});gY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","ID")},transformReply:void 0}});var yY=E(AY=>{"use strict";Object.defineProperty(AY,"__esModule",{value:!0});var Qar=/([^\s=]+)=([^\s]*)/g;AY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","INFO")},transformReply(t){let e={};for(let n of t.toString().matchAll(Qar))e[n[1]]=n[2];let r={id:Number(e.id),addr:e.addr,fd:Number(e.fd),name:e.name,age:Number(e.age),idle:Number(e.idle),flags:e.flags,db:Number(e.db),sub:Number(e.sub),psub:Number(e.psub),multi:Number(e.multi),qbuf:Number(e.qbuf),qbufFree:Number(e["qbuf-free"]),argvMem:Number(e["argv-mem"]),obl:Number(e.obl),oll:Number(e.oll),omem:Number(e.omem),totMem:Number(e["tot-mem"]),events:e.events,cmd:e.cmd,user:e.user,libName:e["lib-name"],libVer:e["lib-ver"]};return e.laddr!==void 0&&(r.laddr=e.laddr),e.redir!==void 0&&(r.redir=Number(e.redir)),e.ssub!==void 0&&(r.ssub=Number(e.ssub)),e["multi-mem"]!==void 0&&(r.multiMem=Number(e["multi-mem"])),e.resp!==void 0&&(r.resp=Number(e.resp)),r}}});var ZWe=E(Oo=>{"use strict";Object.defineProperty(Oo,"__esModule",{value:!0});Oo.CLIENT_KILL_FILTERS=void 0;Oo.CLIENT_KILL_FILTERS={ADDRESS:"ADDR",LOCAL_ADDRESS:"LADDR",ID:"ID",TYPE:"TYPE",USER:"USER",SKIP_ME:"SKIPME",MAXAGE:"MAXAGE"};Oo.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){if(t.push("CLIENT","KILL"),Array.isArray(e))for(let r of e)XWe(t,r);else XWe(t,e)},transformReply:void 0};function XWe(t,e){if(e===Oo.CLIENT_KILL_FILTERS.SKIP_ME){t.push("SKIPME");return}switch(t.push(e.filter),e.filter){case Oo.CLIENT_KILL_FILTERS.ADDRESS:t.push(e.address);break;case Oo.CLIENT_KILL_FILTERS.LOCAL_ADDRESS:t.push(e.localAddress);break;case Oo.CLIENT_KILL_FILTERS.ID:t.push(typeof e.id=="number"?e.id.toString():e.id);break;case Oo.CLIENT_KILL_FILTERS.TYPE:t.push(e.type);break;case Oo.CLIENT_KILL_FILTERS.USER:t.push(e.username);break;case Oo.CLIENT_KILL_FILTERS.SKIP_ME:t.push(e.skipMe?"yes":"no");break;case Oo.CLIENT_KILL_FILTERS.MAXAGE:t.push(e.maxAge.toString());break}}});var e$e=E(GC=>{"use strict";var Gar=GC&&GC.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(GC,"__esModule",{value:!0});var Var=Gar(yY());GC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","LIST"),e&&(e.TYPE!==void 0?t.push("TYPE",e.TYPE):(t.push("ID"),t.pushVariadic(e.ID)))},transformReply(t){let e=t.toString().split(` +`),r=e.length-1,n=[];for(let s=0;s{"use strict";Object.defineProperty(xY,"__esModule",{value:!0});xY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-EVICT",e?"ON":"OFF")},transformReply:void 0}});var r$e=E(bY=>{"use strict";Object.defineProperty(bY,"__esModule",{value:!0});bY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","NO-TOUCH",e?"ON":"OFF")},transformReply:void 0}});var n$e=E(EY=>{"use strict";Object.defineProperty(EY,"__esModule",{value:!0});EY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLIENT","PAUSE",e.toString()),r&&t.push(r)},transformReply:void 0}});var s$e=E(_Y=>{"use strict";Object.defineProperty(_Y,"__esModule",{value:!0});_Y.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLIENT","SETNAME",e)},transformReply:void 0}});var i$e=E(SY=>{"use strict";Object.defineProperty(SY,"__esModule",{value:!0});SY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("CLIENT","TRACKING",e?"ON":"OFF"),e){if(r?.REDIRECT&&t.push("REDIRECT",r.REDIRECT.toString()),zar(r)){if(t.push("BCAST"),r?.PREFIX)if(Array.isArray(r.PREFIX))for(let n of r.PREFIX)t.push("PREFIX",n);else t.push("PREFIX",r.PREFIX)}else Kar(r)?t.push("OPTIN"):Yar(r)&&t.push("OPTOUT");r?.NOLOOP&&t.push("NOLOOP")}},transformReply:void 0};function zar(t){return t?.BCAST===!0}function Kar(t){return t?.OPTIN===!0}function Yar(t){return t?.OPTOUT===!0}});var a$e=E(vY=>{"use strict";Object.defineProperty(vY,"__esModule",{value:!0});vY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","TRACKINGINFO")},transformReply:{2:t=>({flags:t[1],redirect:t[3],prefixes:t[5]}),3:void 0}}});var o$e=E(CY=>{"use strict";Object.defineProperty(CY,"__esModule",{value:!0});CY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLIENT","UNPAUSE")},transformReply:void 0}});var c$e=E(IY=>{"use strict";Object.defineProperty(IY,"__esModule",{value:!0});IY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var u$e=E(TY=>{"use strict";Object.defineProperty(TY,"__esModule",{value:!0});var Jar=Ie();TY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","ADDSLOTSRANGE"),(0,Jar.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var l$e=E(wY=>{"use strict";Object.defineProperty(wY,"__esModule",{value:!0});wY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","BUMPEPOCH")},transformReply:void 0}});var d$e=E(RY=>{"use strict";Object.defineProperty(RY,"__esModule",{value:!0});RY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNT-FAILURE-REPORTS",e)},transformReply:void 0}});var f$e=E(NY=>{"use strict";Object.defineProperty(NY,"__esModule",{value:!0});NY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","COUNTKEYSINSLOT",e.toString())},transformReply:void 0}});var p$e=E(OY=>{"use strict";Object.defineProperty(OY,"__esModule",{value:!0});OY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTS"),t.pushVariadicNumber(e)},transformReply:void 0}});var m$e=E(PY=>{"use strict";Object.defineProperty(PY,"__esModule",{value:!0});var Xar=Ie();PY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","DELSLOTSRANGE"),(0,Xar.parseSlotRangesArguments)(t,e)},transformReply:void 0}});var h$e=E(VC=>{"use strict";Object.defineProperty(VC,"__esModule",{value:!0});VC.FAILOVER_MODES=void 0;VC.FAILOVER_MODES={FORCE:"FORCE",TAKEOVER:"TAKEOVER"};VC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FAILOVER"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var g$e=E(DY=>{"use strict";Object.defineProperty(DY,"__esModule",{value:!0});DY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","FLUSHSLOTS")},transformReply:void 0}});var A$e=E(kY=>{"use strict";Object.defineProperty(kY,"__esModule",{value:!0});kY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","FORGET",e)},transformReply:void 0}});var y$e=E(LY=>{"use strict";Object.defineProperty(LY,"__esModule",{value:!0});LY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","GETKEYSINSLOT",e.toString(),r.toString())},transformReply:void 0}});var x$e=E(BY=>{"use strict";Object.defineProperty(BY,"__esModule",{value:!0});BY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","INFO")},transformReply:void 0}});var b$e=E(MY=>{"use strict";Object.defineProperty(MY,"__esModule",{value:!0});MY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","KEYSLOT",e)},transformReply:void 0}});var E$e=E(WY=>{"use strict";Object.defineProperty(WY,"__esModule",{value:!0});WY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","LINKS")},transformReply:{2:t=>t.map(e=>{let r=e;return{direction:r[1],node:r[3],"create-time":r[5],events:r[7],"send-buffer-allocated":r[9],"send-buffer-used":r[11]}}),3:void 0}}});var _$e=E($Y=>{"use strict";Object.defineProperty($Y,"__esModule",{value:!0});$Y.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CLUSTER","MEET",e,r.toString())},transformReply:void 0}});var S$e=E(FY=>{"use strict";Object.defineProperty(FY,"__esModule",{value:!0});FY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYID")},transformReply:void 0}});var v$e=E(UY=>{"use strict";Object.defineProperty(UY,"__esModule",{value:!0});UY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","MYSHARDID")},transformReply:void 0}});var C$e=E(qY=>{"use strict";Object.defineProperty(qY,"__esModule",{value:!0});qY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","NODES")},transformReply:void 0}});var I$e=E(jY=>{"use strict";Object.defineProperty(jY,"__esModule",{value:!0});jY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICAS",e)},transformReply:void 0}});var T$e=E(HY=>{"use strict";Object.defineProperty(HY,"__esModule",{value:!0});HY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","REPLICATE",e)},transformReply:void 0}});var w$e=E(QY=>{"use strict";Object.defineProperty(QY,"__esModule",{value:!0});QY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","RESET"),e?.mode&&t.push(e.mode)},transformReply:void 0}});var R$e=E(GY=>{"use strict";Object.defineProperty(GY,"__esModule",{value:!0});GY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SAVECONFIG")},transformReply:void 0}});var N$e=E(VY=>{"use strict";Object.defineProperty(VY,"__esModule",{value:!0});VY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CLUSTER","SET-CONFIG-EPOCH",e.toString())},transformReply:void 0}});var O$e=E(zC=>{"use strict";Object.defineProperty(zC,"__esModule",{value:!0});zC.CLUSTER_SLOT_STATES=void 0;zC.CLUSTER_SLOT_STATES={IMPORTING:"IMPORTING",MIGRATING:"MIGRATING",STABLE:"STABLE",NODE:"NODE"};zC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("CLUSTER","SETSLOT",e.toString(),r),n&&t.push(n)},transformReply:void 0}});var D$e=E(zY=>{"use strict";Object.defineProperty(zY,"__esModule",{value:!0});zY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CLUSTER","SLOTS")},transformReply(t){return t.map(([e,r,n,...s])=>({from:e,to:r,master:P$e(n),replicas:s.map(P$e)}))}};function P$e(t){let[e,r,n]=t;return{host:e,port:r,id:n}}});var k$e=E(KY=>{"use strict";Object.defineProperty(KY,"__esModule",{value:!0});KY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND","COUNT")},transformReply:void 0}});var L$e=E(YY=>{"use strict";Object.defineProperty(YY,"__esModule",{value:!0});YY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYS"),t.push(...e)},transformReply:void 0}});var B$e=E(JY=>{"use strict";Object.defineProperty(JY,"__esModule",{value:!0});JY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","GETKEYSANDFLAGS"),t.push(...e)},transformReply(t){return t.map(e=>{let[r,n]=e;return{key:r,flags:n}})}}});var M$e=E(XY=>{"use strict";Object.defineProperty(XY,"__esModule",{value:!0});var Zar=Ie();XY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","INFO",...e)},transformReply(t){return t.map(e=>e?(0,Zar.transformCommandReply)(e):null)}}});var W$e=E(KC=>{"use strict";Object.defineProperty(KC,"__esModule",{value:!0});KC.COMMAND_LIST_FILTER_BY=void 0;KC.COMMAND_LIST_FILTER_BY={MODULE:"MODULE",ACLCAT:"ACLCAT",PATTERN:"PATTERN"};KC.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("COMMAND","LIST"),e?.FILTERBY&&t.push("FILTERBY",e.FILTERBY.type,e.FILTERBY.value)},transformReply:void 0}});var $$e=E(ZY=>{"use strict";Object.defineProperty(ZY,"__esModule",{value:!0});var eor=Ie();ZY.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("COMMAND")},transformReply(t){return t.map(eor.transformCommandReply)}}});var F$e=E(eJ=>{"use strict";Object.defineProperty(eJ,"__esModule",{value:!0});var tor=Ie();eJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("CONFIG","GET"),t.pushVariadic(e)},transformReply:{2:tor.transformTuplesReply,3:void 0}}});var U$e=E(tJ=>{"use strict";Object.defineProperty(tJ,"__esModule",{value:!0});tJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","RESETSTAT")},transformReply:void 0}});var q$e=E(rJ=>{"use strict";Object.defineProperty(rJ,"__esModule",{value:!0});rJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("CONFIG","REWRITE")},transformReply:void 0}});var j$e=E(nJ=>{"use strict";Object.defineProperty(nJ,"__esModule",{value:!0});nJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,...[e,r]){if(t.push("CONFIG","SET"),typeof e=="string"||e instanceof Buffer)t.push(e,r);else for(let[n,s]of Object.entries(e))t.push(n,s)},transformReply:void 0}});var H$e=E(sJ=>{"use strict";Object.defineProperty(sJ,"__esModule",{value:!0});sJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("COPY"),t.pushKeys([e,r]),n?.DB&&t.push("DB",n.DB.toString()),n?.REPLACE&&t.push("REPLACE")},transformReply:void 0}});var Q$e=E(iJ=>{"use strict";Object.defineProperty(iJ,"__esModule",{value:!0});iJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("DBSIZE")},transformReply:void 0}});var G$e=E(aJ=>{"use strict";Object.defineProperty(aJ,"__esModule",{value:!0});aJ.default={parseCommand(t,e){t.push("DECR"),t.pushKey(e)},transformReply:void 0}});var V$e=E(oJ=>{"use strict";Object.defineProperty(oJ,"__esModule",{value:!0});oJ.default={parseCommand(t,e,r){t.push("DECRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var z$e=E(cJ=>{"use strict";Object.defineProperty(cJ,"__esModule",{value:!0});cJ.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("DEL"),t.pushKeys(e)},transformReply:void 0}});var K$e=E(YC=>{"use strict";Object.defineProperty(YC,"__esModule",{value:!0});YC.DelexCondition=void 0;YC.DelexCondition={IFEQ:"IFEQ",IFNE:"IFNE",IFDEQ:"IFDEQ",IFDNE:"IFDNE"};YC.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("DELEX"),t.pushKey(e),r&&(t.push(r.condition),t.push(r.matchValue))},transformReply:void 0}});var Y$e=E(uJ=>{"use strict";Object.defineProperty(uJ,"__esModule",{value:!0});uJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DIGEST"),t.pushKey(e)},transformReply:void 0}});var J$e=E(lJ=>{"use strict";Object.defineProperty(lJ,"__esModule",{value:!0});lJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("DUMP"),t.pushKey(e)},transformReply:void 0}});var X$e=E(dJ=>{"use strict";Object.defineProperty(dJ,"__esModule",{value:!0});dJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ECHO",e)},transformReply:void 0}});var cg=E(JC=>{"use strict";Object.defineProperty(JC,"__esModule",{value:!0});JC.parseEvalArguments=void 0;function Z$e(t,e,r){t.push(e),r?.keys?t.pushKeysLength(r.keys):t.push("0"),r?.arguments&&t.push(...r.arguments)}JC.parseEvalArguments=Z$e;JC.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVAL"),Z$e(...t)},transformReply:void 0}});var tFe=E(hf=>{"use strict";var ror=hf&&hf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),nor=hf&&hf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),sor=hf&&hf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&ror(e,t,r);return nor(e,t),e};Object.defineProperty(hf,"__esModule",{value:!0});var eFe=sor(cg());hf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVAL_RO"),(0,eFe.parseEvalArguments)(...t)},transformReply:eFe.default.transformReply}});var nFe=E(gf=>{"use strict";var ior=gf&&gf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),aor=gf&&gf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),oor=gf&&gf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&ior(e,t,r);return aor(e,t),e};Object.defineProperty(gf,"__esModule",{value:!0});var rFe=oor(cg());gf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("EVALSHA_RO"),(0,rFe.parseEvalArguments)(...t)},transformReply:rFe.default.transformReply}});var iFe=E(Af=>{"use strict";var cor=Af&&Af.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),uor=Af&&Af.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),lor=Af&&Af.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&cor(e,t,r);return uor(e,t),e};Object.defineProperty(Af,"__esModule",{value:!0});var sFe=lor(cg());Af.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("EVALSHA"),(0,sFe.parseEvalArguments)(...t)},transformReply:sFe.default.transformReply}});var oFe=E(fJ=>{"use strict";Object.defineProperty(fJ,"__esModule",{value:!0});fJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){if(t.push("GEOADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.CH&&t.push("CH"),Array.isArray(r))for(let s of r)aFe(t,s);else aFe(t,r)},transformReply:void 0};function aFe(t,{longitude:e,latitude:r,member:n}){t.push(e.toString(),r.toString(),n)}});var cFe=E(pJ=>{"use strict";Object.defineProperty(pJ,"__esModule",{value:!0});pJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEODIST"),t.pushKey(e),t.push(r,n),s&&t.push(s)},transformReply(t){return t===null?null:Number(t)}}});var uFe=E(mJ=>{"use strict";Object.defineProperty(mJ,"__esModule",{value:!0});mJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOHASH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var lFe=E(hJ=>{"use strict";Object.defineProperty(hJ,"__esModule",{value:!0});hJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GEOPOS"),t.pushKey(e),t.pushVariadic(r)},transformReply(t){return t.map(e=>{let r=e;return r===null?null:{longitude:r[0],latitude:r[1]}})}}});var lg=E(ug=>{"use strict";Object.defineProperty(ug,"__esModule",{value:!0});ug.parseGeoSearchOptions=ug.parseGeoSearchArguments=void 0;function dFe(t,e,r,n,s){t.pushKey(e),typeof r=="string"||r instanceof Buffer?t.push("FROMMEMBER",r):t.push("FROMLONLAT",r.longitude.toString(),r.latitude.toString()),"radius"in n?t.push("BYRADIUS",n.radius.toString(),n.unit):t.push("BYBOX",n.width.toString(),n.height.toString(),n.unit),fFe(t,s)}ug.parseGeoSearchArguments=dFe;function fFe(t,e){e?.SORT&&t.push(e.SORT),e?.COUNT&&(typeof e.COUNT=="number"?t.push("COUNT",e.COUNT.toString()):(t.push("COUNT",e.COUNT.value.toString()),e.COUNT.ANY&&t.push("ANY")))}ug.parseGeoSearchOptions=fFe;ug.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("GEOSEARCH"),dFe(t,e,r,n,s)},transformReply:void 0}});var ZC=E(XC=>{"use strict";Object.defineProperty(XC,"__esModule",{value:!0});XC.parseGeoRadiusArguments=void 0;var dor=lg();function pFe(t,e,r,n,s,i){t.pushKey(e),t.push(r.longitude.toString(),r.latitude.toString(),n.toString(),s),(0,dor.parseGeoSearchOptions)(t,i)}XC.parseGeoRadiusArguments=pFe;XC.default={IS_READ_ONLY:!1,parseCommand(...t){return t[0].push("GEORADIUS"),pFe(...t)},transformReply:void 0}});var eI=E(kl=>{"use strict";var por=kl&&kl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kl,"__esModule",{value:!0});kl.GEO_REPLY_WITH=void 0;var mFe=por(lg());kl.GEO_REPLY_WITH={DISTANCE:"WITHDIST",HASH:"WITHHASH",COORDINATES:"WITHCOORD"};kl.default={IS_READ_ONLY:mFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i){mFe.default.parseCommand(t,e,r,n,i),t.push(...s),t.preserve=s},transformReply(t,e){let r=new Set(e),n=0,s=r.has(kl.GEO_REPLY_WITH.DISTANCE)&&++n,i=r.has(kl.GEO_REPLY_WITH.HASH)&&++n,a=r.has(kl.GEO_REPLY_WITH.COORDINATES)&&++n;return t.map(o=>{let c=o,u={member:c[0]};if(s&&(u.distance=c[s]),i&&(u.hash=c[i]),a){let[l,d]=c[a];u.coordinates={longitude:l,latitude:d}}return u})}}});var iB=E(Po=>{"use strict";var mor=Po&&Po.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),hor=Po&&Po.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),gor=Po&&Po.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&mor(e,t,r);return hor(e,t),e},Aor=Po&&Po.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Po,"__esModule",{value:!0});Po.parseGeoRadiusWithArguments=void 0;var hFe=gor(ZC()),yor=Aor(eI());function gFe(t,e,r,n,s,i,a){(0,hFe.parseGeoRadiusArguments)(t,e,r,n,s,a),t.pushVariadic(i),t.preserve=i}Po.parseGeoRadiusWithArguments=gFe;Po.default={IS_READ_ONLY:hFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),gFe(t,e,r,n,s,i,a)},transformReply:yor.default.transformReply}});var AFe=E(tI=>{"use strict";var xor=tI&&tI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(tI,"__esModule",{value:!0});var bor=iB(),Eor=xor(iB());tI.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,bor.parseGeoRadiusWithArguments)(...t)},transformReply:Eor.default.transformReply}});var xFe=E(yf=>{"use strict";var _or=yf&&yf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Sor=yf&&yf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),vor=yf&&yf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&_or(e,t,r);return Sor(e,t),e};Object.defineProperty(yf,"__esModule",{value:!0});var yFe=vor(ZC());yf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUS_RO"),(0,yFe.parseGeoRadiusArguments)(...t)},transformReply:yFe.default.transformReply}});var EFe=E(xf=>{"use strict";var Cor=xf&&xf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ior=xf&&xf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Tor=xf&&xf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Cor(e,t,r);return Ior(e,t),e};Object.defineProperty(xf,"__esModule",{value:!0});var bFe=Tor(ZC());xf.default={IS_READ_ONLY:bFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUS"),(0,bFe.parseGeoRadiusArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var nI=E(rI=>{"use strict";Object.defineProperty(rI,"__esModule",{value:!0});rI.parseGeoRadiusByMemberArguments=void 0;var wor=lg();function _Fe(t,e,r,n,s,i){t.pushKey(e),t.push(r,n.toString(),s),(0,wor.parseGeoSearchOptions)(t,i)}rI.parseGeoRadiusByMemberArguments=_Fe;rI.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEORADIUSBYMEMBER"),_Fe(t,e,r,n,s,i)},transformReply:void 0}});var gJ=E(dg=>{"use strict";var SFe=dg&&dg.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(dg,"__esModule",{value:!0});dg.parseGeoRadiusByMemberWithArguments=void 0;var Ror=SFe(nI()),Nor=lg(),Oor=SFe(eI());function vFe(t,e,r,n,s,i,a){t.pushKey(e),t.push(r,n.toString(),s),(0,Nor.parseGeoSearchOptions)(t,a),t.push(...i),t.preserve=i}dg.parseGeoRadiusByMemberWithArguments=vFe;dg.default={IS_READ_ONLY:Ror.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),vFe(t,e,r,n,s,i,a)},transformReply:Oor.default.transformReply}});var IFe=E(bf=>{"use strict";var Por=bf&&bf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Dor=bf&&bf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),kor=bf&&bf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Por(e,t,r);return Dor(e,t),e};Object.defineProperty(bf,"__esModule",{value:!0});var CFe=kor(gJ());bf.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,CFe.parseGeoRadiusByMemberWithArguments)(...t)},transformReply:CFe.default.transformReply}});var wFe=E(Ef=>{"use strict";var Lor=Ef&&Ef.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Bor=Ef&&Ef.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Mor=Ef&&Ef.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Lor(e,t,r);return Bor(e,t),e};Object.defineProperty(Ef,"__esModule",{value:!0});var TFe=Mor(nI());Ef.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(...t){t[0].push("GEORADIUSBYMEMBER_RO"),(0,TFe.parseGeoRadiusByMemberArguments)(...t)},transformReply:TFe.default.transformReply}});var NFe=E(_f=>{"use strict";var Wor=_f&&_f.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),$or=_f&&_f.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),For=_f&&_f.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Wor(e,t,r);return $or(e,t),e};Object.defineProperty(_f,"__esModule",{value:!0});var RFe=For(nI());_f.default={IS_READ_ONLY:RFe.default.IS_READ_ONLY,parseCommand(t,e,r,n,s,i,a){t.push("GEORADIUSBYMEMBER"),(0,RFe.parseGeoRadiusByMemberArguments)(t,e,r,n,s,a),a?.STOREDIST?(t.push("STOREDIST"),t.pushKey(i)):(t.push("STORE"),t.pushKey(i))},transformReply:void 0}});var OFe=E(AJ=>{"use strict";Object.defineProperty(AJ,"__esModule",{value:!0});var Uor=lg();AJ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("GEOSEARCHSTORE"),e!==void 0&&t.pushKey(e),(0,Uor.parseGeoSearchArguments)(t,r,n,s,i),i?.STOREDIST&&t.push("STOREDIST")},transformReply:void 0}});var PFe=E(yJ=>{"use strict";Object.defineProperty(yJ,"__esModule",{value:!0});yJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("GET"),t.pushKey(e)},transformReply:void 0}});var DFe=E(xJ=>{"use strict";Object.defineProperty(xJ,"__esModule",{value:!0});xJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETBIT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var kFe=E(bJ=>{"use strict";Object.defineProperty(bJ,"__esModule",{value:!0});bJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("GETDEL"),t.pushKey(e)},transformReply:void 0}});var LFe=E(_J=>{"use strict";Object.defineProperty(_J,"__esModule",{value:!0});var EJ=Ie();_J.default={IS_READ_ONLY:!0,parseCommand(t,e,r){if(t.push("GETEX"),t.pushKey(e),"type"in r)switch(r.type){case"EX":case"PX":t.push(r.type,r.value.toString());break;case"EXAT":case"PXAT":t.push(r.type,(0,EJ.transformEXAT)(r.value));break;case"PERSIST":t.push("PERSIST");break}else"EX"in r?t.push("EX",r.EX.toString()):"PX"in r?t.push("PX",r.PX.toString()):"EXAT"in r?t.push("EXAT",(0,EJ.transformEXAT)(r.EXAT)):"PXAT"in r?t.push("PXAT",(0,EJ.transformPXAT)(r.PXAT)):t.push("PERSIST")},transformReply:void 0}});var BFe=E(SJ=>{"use strict";Object.defineProperty(SJ,"__esModule",{value:!0});SJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("GETRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var MFe=E(vJ=>{"use strict";Object.defineProperty(vJ,"__esModule",{value:!0});vJ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("GETSET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var WFe=E(CJ=>{"use strict";Object.defineProperty(CJ,"__esModule",{value:!0});CJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXISTS"),t.pushKeys(e)},transformReply:void 0}});var $Fe=E(IJ=>{"use strict";Object.defineProperty(IJ,"__esModule",{value:!0});IJ.default={parseCommand(t,e,r,n){t.push("EXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var FFe=E(TJ=>{"use strict";Object.defineProperty(TJ,"__esModule",{value:!0});var qor=Ie();TJ.default={parseCommand(t,e,r,n){t.push("EXPIREAT"),t.pushKey(e),t.push((0,qor.transformEXAT)(r)),n&&t.push(n)},transformReply:void 0}});var UFe=E(wJ=>{"use strict";Object.defineProperty(wJ,"__esModule",{value:!0});wJ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("EXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var qFe=E(sI=>{"use strict";Object.defineProperty(sI,"__esModule",{value:!0});sI.REDIS_FLUSH_MODES=void 0;sI.REDIS_FLUSH_MODES={ASYNC:"ASYNC",SYNC:"SYNC"};sI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHALL"),e&&t.push(e)},transformReply:void 0}});var jFe=E(RJ=>{"use strict";Object.defineProperty(RJ,"__esModule",{value:!0});RJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FLUSHDB"),e&&t.push(e)},transformReply:void 0}});var QFe=E(Sf=>{"use strict";var jor=Sf&&Sf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Hor=Sf&&Sf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Qor=Sf&&Sf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jor(e,t,r);return Hor(e,t),e};Object.defineProperty(Sf,"__esModule",{value:!0});var HFe=Qor(cg());Sf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL"),(0,HFe.parseEvalArguments)(...t)},transformReply:HFe.default.transformReply}});var VFe=E(vf=>{"use strict";var Gor=vf&&vf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Vor=vf&&vf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),zor=vf&&vf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Gor(e,t,r);return Vor(e,t),e};Object.defineProperty(vf,"__esModule",{value:!0});var GFe=zor(cg());vf.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("FCALL_RO"),(0,GFe.parseEvalArguments)(...t)},transformReply:GFe.default.transformReply}});var zFe=E(NJ=>{"use strict";Object.defineProperty(NJ,"__esModule",{value:!0});NJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","DELETE",e)},transformReply:void 0}});var KFe=E(OJ=>{"use strict";Object.defineProperty(OJ,"__esModule",{value:!0});OJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","DUMP")},transformReply:void 0}});var YFe=E(PJ=>{"use strict";Object.defineProperty(PJ,"__esModule",{value:!0});PJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","FLUSH"),e&&t.push(e)},transformReply:void 0}});var JFe=E(DJ=>{"use strict";Object.defineProperty(DJ,"__esModule",{value:!0});DJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","KILL")},transformReply:void 0}});var LJ=E(kJ=>{"use strict";Object.defineProperty(kJ,"__esModule",{value:!0});kJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){t.push("FUNCTION","LIST"),e?.LIBRARYNAME&&t.push("LIBRARYNAME",e.LIBRARYNAME)},transformReply:{2:t=>t.map(e=>{let r=e;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}})}}),3:void 0}}});var XFe=E(iI=>{"use strict";var Kor=iI&&iI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(iI,"__esModule",{value:!0});var BJ=Kor(LJ());iI.default={NOT_KEYED_COMMAND:BJ.default.NOT_KEYED_COMMAND,IS_READ_ONLY:BJ.default.IS_READ_ONLY,parseCommand(...t){BJ.default.parseCommand(...t),t[0].push("WITHCODE")},transformReply:{2:t=>t.map(e=>{let r=e;return{library_name:r[1],engine:r[3],functions:r[5].map(n=>{let s=n;return{name:s[1],description:s[3],flags:s[5]}}),library_code:r[7]}}),3:void 0}}});var ZFe=E(MJ=>{"use strict";Object.defineProperty(MJ,"__esModule",{value:!0});MJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","LOAD"),r?.REPLACE&&t.push("REPLACE"),t.push(e)},transformReply:void 0}});var eUe=E(WJ=>{"use strict";Object.defineProperty(WJ,"__esModule",{value:!0});WJ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("FUNCTION","RESTORE",e),r?.mode&&t.push(r.mode)},transformReply:void 0}});var tUe=E($J=>{"use strict";Object.defineProperty($J,"__esModule",{value:!0});var Yor=Ie();$J.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FUNCTION","STATS")},transformReply:{2:t=>({running_script:Jor(t[1]),engines:Xor(t[3])}),3:void 0}};function Jor(t){if((0,Yor.isNullReply)(t))return null;let e=t;return{name:e[1],command:e[3],duration_ms:e[5]}}function Xor(t){let e=t,r=Object.create(null);for(let n=0;n{"use strict";Object.defineProperty(FJ,"__esModule",{value:!0});FJ.default={parseCommand(t,e,r){t.push("HDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var qJ=E(UJ=>{"use strict";Object.defineProperty(UJ,"__esModule",{value:!0});UJ.default={parseCommand(t,e,r){t.push("HELLO"),e&&(t.push(e.toString()),r?.AUTH&&t.push("AUTH",r.AUTH.username,r.AUTH.password),r?.SETNAME&&t.push("SETNAME",r.SETNAME))},transformReply:{2:t=>({server:t[1],version:t[3],proto:t[5],id:t[7],mode:t[9],role:t[11],modules:t[13]}),3:void 0}}});var nUe=E(jJ=>{"use strict";Object.defineProperty(jJ,"__esModule",{value:!0});jJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXISTS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var sUe=E(aI=>{"use strict";Object.defineProperty(aI,"__esModule",{value:!0});aI.HASH_EXPIRATION=void 0;aI.HASH_EXPIRATION={FIELD_NOT_EXISTS:-2,CONDITION_NOT_MET:0,UPDATED:1,DELETED:2};aI.default={parseCommand(t,e,r,n,s){t.push("HEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var iUe=E(HJ=>{"use strict";Object.defineProperty(HJ,"__esModule",{value:!0});var Zor=Ie();HJ.default={parseCommand(t,e,r,n,s){t.push("HEXPIREAT"),t.pushKey(e),t.push((0,Zor.transformEXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var aUe=E(oI=>{"use strict";Object.defineProperty(oI,"__esModule",{value:!0});oI.HASH_EXPIRATION_TIME=void 0;oI.HASH_EXPIRATION_TIME={FIELD_NOT_EXISTS:-2,NO_EXPIRATION:-1};oI.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var oUe=E(QJ=>{"use strict";Object.defineProperty(QJ,"__esModule",{value:!0});QJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HGET"),t.pushKey(e),t.push(r)},transformReply:void 0}});var cUe=E(GJ=>{"use strict";Object.defineProperty(GJ,"__esModule",{value:!0});var ecr=Ie();GJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HGETALL"),t.pushKey(e)},TRANSFORM_LEGACY_REPLY:!0,transformReply:{2:ecr.transformTuplesReply,3:void 0}}});var uUe=E(VJ=>{"use strict";Object.defineProperty(VJ,"__esModule",{value:!0});VJ.default={parseCommand(t,e,r){t.push("HGETDEL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var lUe=E(zJ=>{"use strict";Object.defineProperty(zJ,"__esModule",{value:!0});zJ.default={parseCommand(t,e,r,n){t.push("HGETEX"),t.pushKey(e),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="PERSIST"?t.push("PERSIST"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var dUe=E(KJ=>{"use strict";Object.defineProperty(KJ,"__esModule",{value:!0});KJ.default={parseCommand(t,e,r,n){t.push("HINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var fUe=E(YJ=>{"use strict";Object.defineProperty(YJ,"__esModule",{value:!0});YJ.default={parseCommand(t,e,r,n){t.push("HINCRBYFLOAT"),t.pushKey(e),t.push(r,n.toString())},transformReply:void 0}});var pUe=E(JJ=>{"use strict";Object.defineProperty(JJ,"__esModule",{value:!0});JJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HKEYS"),t.pushKey(e)},transformReply:void 0}});var mUe=E(XJ=>{"use strict";Object.defineProperty(XJ,"__esModule",{value:!0});XJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HLEN"),t.pushKey(e)},transformReply:void 0}});var hUe=E(ZJ=>{"use strict";Object.defineProperty(ZJ,"__esModule",{value:!0});ZJ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HMGET"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var gUe=E(eX=>{"use strict";Object.defineProperty(eX,"__esModule",{value:!0});eX.default={parseCommand(t,e,r){t.push("HPERSIST"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var AUe=E(tX=>{"use strict";Object.defineProperty(tX,"__esModule",{value:!0});tX.default={parseCommand(t,e,r,n,s){t.push("HPEXPIRE"),t.pushKey(e),t.push(n.toString()),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var yUe=E(rX=>{"use strict";Object.defineProperty(rX,"__esModule",{value:!0});var tcr=Ie();rX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("HPEXPIREAT"),t.pushKey(e),t.push((0,tcr.transformPXAT)(n)),s&&t.push(s),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var xUe=E(nX=>{"use strict";Object.defineProperty(nX,"__esModule",{value:!0});nX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPEXPIRETIME"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var bUe=E(sX=>{"use strict";Object.defineProperty(sX,"__esModule",{value:!0});sX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HPTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var EUe=E(iX=>{"use strict";Object.defineProperty(iX,"__esModule",{value:!0});iX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString(),"WITHVALUES")},transformReply:{2:t=>{let e=[],r=0;for(;rt.map(e=>{let[r,n]=e;return{field:r,value:n}})}}});var _Ue=E(aX=>{"use strict";Object.defineProperty(aX,"__esModule",{value:!0});aX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HRANDFIELD"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var SUe=E(oX=>{"use strict";Object.defineProperty(oX,"__esModule",{value:!0});oX.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("HRANDFIELD"),t.pushKey(e)},transformReply:void 0}});var cI=E(fg=>{"use strict";Object.defineProperty(fg,"__esModule",{value:!0});fg.pushScanArguments=fg.parseScanArguments=void 0;function vUe(t,e,r){t.push(e),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString())}fg.parseScanArguments=vUe;function rcr(t,e,r){return t.push(e.toString()),r?.MATCH&&t.push("MATCH",r.MATCH),r?.COUNT&&t.push("COUNT",r.COUNT.toString()),t}fg.pushScanArguments=rcr;fg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SCAN"),vUe(t,e,r),r?.TYPE&&t.push("TYPE",r.TYPE)},transformReply([t,e]){return{cursor:t,keys:e}}}});var uX=E(cX=>{"use strict";Object.defineProperty(cX,"__esModule",{value:!0});var ncr=cI();cX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSCAN"),t.pushKey(e),(0,ncr.parseScanArguments)(t,r,n)},transformReply([t,e]){let r=[],n=0;for(;n{"use strict";var scr=uI&&uI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(uI,"__esModule",{value:!0});var icr=scr(uX());uI.default={IS_READ_ONLY:!0,parseCommand(...t){let e=t[0];icr.default.parseCommand(...t),e.push("NOVALUES")},transformReply([t,e]){return{cursor:t,fields:e}}}});var TUe=E(lX=>{"use strict";Object.defineProperty(lX,"__esModule",{value:!0});lX.default={parseCommand(t,...[e,r,n]){t.push("HSET"),t.pushKey(e),typeof r=="string"||typeof r=="number"||r instanceof Buffer?t.push(pg(r),pg(n)):r instanceof Map?acr(t,r):Array.isArray(r)?IUe(t,r):ocr(t,r)},transformReply:void 0};function acr(t,e){for(let[r,n]of e.entries())t.push(pg(r),pg(n))}function IUe(t,e){for(let r of e){if(Array.isArray(r)){IUe(t,r);continue}t.push(pg(r))}}function ocr(t,e){for(let r of Object.keys(e))t.push(pg(r),pg(e[r]))}function pg(t){return typeof t=="number"?t.toString():t}});var RUe=E(dX=>{"use strict";Object.defineProperty(dX,"__esModule",{value:!0});var ccr=Dl();dX.default={parseCommand(t,e,r,n){t.push("HSETEX"),t.pushKey(e),n?.mode&&t.push(n.mode),n?.expiration&&(typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString())),t.push("FIELDS"),r instanceof Map?ucr(t,r):Array.isArray(r)?lcr(t,r):dcr(t,r)},transformReply:void 0};function ucr(t,e){t.push(e.size.toString());for(let[r,n]of e.entries())t.push(lI(r),lI(n))}function lcr(t,e){let r=new ccr.BasicCommandParser;if(wUe(r,e),r.redisArgs.length%2!=0)throw Error("invalid number of arguments, expected key value ....[key value] pairs, got key without value");t.push((r.redisArgs.length/2).toString()),t.push(...r.redisArgs)}function wUe(t,e){for(let r of e){if(Array.isArray(r)){wUe(t,r);continue}t.push(lI(r))}}function dcr(t,e){let r=Object.keys(e).length;if(r==0)throw Error("object without keys");t.push(r.toString());for(let n of Object.keys(e))t.push(lI(n),lI(e[n]))}function lI(t){return typeof t=="number"?t.toString():t}});var NUe=E(fX=>{"use strict";Object.defineProperty(fX,"__esModule",{value:!0});fX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("HSETNX"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var OUe=E(pX=>{"use strict";Object.defineProperty(pX,"__esModule",{value:!0});pX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HSTRLEN"),t.pushKey(e),t.push(r)},transformReply:void 0}});var PUe=E(mX=>{"use strict";Object.defineProperty(mX,"__esModule",{value:!0});mX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("HTTL"),t.pushKey(e),t.push("FIELDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var DUe=E(hX=>{"use strict";Object.defineProperty(hX,"__esModule",{value:!0});hX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("HVALS"),t.pushKey(e)},transformReply:void 0}});var LUe=E(gX=>{"use strict";Object.defineProperty(gX,"__esModule",{value:!0});function kUe(t){let e=[];for(let r=0;r{let r=e;return r.length===1?{start:Number(r[0]),end:Number(r[0])}:{start:Number(r[0]),end:Number(r[1])}})}function pcr(t){let e={},r=t[0];for(let n=0;nt===null?null:pcr(t),3:void 0},unstableResp3:!0}});var BUe=E(AX=>{"use strict";Object.defineProperty(AX,"__esModule",{value:!0});AX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","RESET")},transformReply:void 0}});var MUe=E(dI=>{"use strict";Object.defineProperty(dI,"__esModule",{value:!0});dI.HOTKEYS_METRICS=void 0;dI.HOTKEYS_METRICS={CPU:"CPU",NET:"NET"};dI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e){if(t.push("HOTKEYS","START"),t.push("METRICS",e.METRICS.count.toString()),e.METRICS.CPU&&t.push("CPU"),e.METRICS.NET&&t.push("NET"),e.COUNT!==void 0&&t.push("COUNT",e.COUNT.toString()),e.DURATION!==void 0&&t.push("DURATION",e.DURATION.toString()),e.SAMPLE!==void 0&&t.push("SAMPLE",e.SAMPLE.toString()),e.SLOTS!==void 0){t.push("SLOTS",e.SLOTS.count.toString());for(let r of e.SLOTS.slots)t.push(r.toString())}},transformReply:void 0}});var WUe=E(yX=>{"use strict";Object.defineProperty(yX,"__esModule",{value:!0});yX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("HOTKEYS","STOP")},transformReply:void 0}});var $Ue=E(xX=>{"use strict";Object.defineProperty(xX,"__esModule",{value:!0});xX.default={parseCommand(t,e){t.push("INCR"),t.pushKey(e)},transformReply:void 0}});var FUe=E(bX=>{"use strict";Object.defineProperty(bX,"__esModule",{value:!0});bX.default={parseCommand(t,e,r){t.push("INCRBY"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var UUe=E(EX=>{"use strict";Object.defineProperty(EX,"__esModule",{value:!0});EX.default={parseCommand(t,e,r){t.push("INCRBYFLOAT"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var qUe=E(_X=>{"use strict";Object.defineProperty(_X,"__esModule",{value:!0});_X.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("INFO"),e&&t.push(e)},transformReply:void 0}});var jUe=E(SX=>{"use strict";Object.defineProperty(SX,"__esModule",{value:!0});SX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("KEYS",e)},transformReply:void 0}});var HUe=E(vX=>{"use strict";Object.defineProperty(vX,"__esModule",{value:!0});vX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LASTSAVE")},transformReply:void 0}});var QUe=E(CX=>{"use strict";Object.defineProperty(CX,"__esModule",{value:!0});CX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","DOCTOR")},transformReply:void 0}});var IX=E(fI=>{"use strict";Object.defineProperty(fI,"__esModule",{value:!0});fI.LATENCY_EVENTS=void 0;fI.LATENCY_EVENTS={ACTIVE_DEFRAG_CYCLE:"active-defrag-cycle",AOF_FSYNC_ALWAYS:"aof-fsync-always",AOF_STAT:"aof-stat",AOF_REWRITE_DIFF_WRITE:"aof-rewrite-diff-write",AOF_RENAME:"aof-rename",AOF_WRITE:"aof-write",AOF_WRITE_ACTIVE_CHILD:"aof-write-active-child",AOF_WRITE_ALONE:"aof-write-alone",AOF_WRITE_PENDING_FSYNC:"aof-write-pending-fsync",COMMAND:"command",EXPIRE_CYCLE:"expire-cycle",EVICTION_CYCLE:"eviction-cycle",EVICTION_DEL:"eviction-del",FAST_COMMAND:"fast-command",FORK:"fork",RDB_UNLINK_TEMP_FILE:"rdb-unlink-temp-file"};fI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","GRAPH",e)},transformReply:void 0}});var GUe=E(TX=>{"use strict";Object.defineProperty(TX,"__esModule",{value:!0});TX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LATENCY","HISTORY",e)},transformReply:void 0}});var VUe=E(wX=>{"use strict";Object.defineProperty(wX,"__esModule",{value:!0});wX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("LATENCY","LATEST")},transformReply:void 0}});var zUe=E(pI=>{"use strict";Object.defineProperty(pI,"__esModule",{value:!0});pI.LATENCY_EVENTS=void 0;var mcr=IX();Object.defineProperty(pI,"LATENCY_EVENTS",{enumerable:!0,get:function(){return mcr.LATENCY_EVENTS}});pI.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,...e){let r=["LATENCY","RESET"];e.length>0&&r.push(...e),t.push(...r)},transformReply:void 0}});var aB=E(RX=>{"use strict";Object.defineProperty(RX,"__esModule",{value:!0});RX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LCS"),t.pushKeys([e,r])},transformReply:void 0}});var NX=E(mI=>{"use strict";var hcr=mI&&mI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mI,"__esModule",{value:!0});var KUe=hcr(aB());mI.default={IS_READ_ONLY:KUe.default.IS_READ_ONLY,parseCommand(t,e,r,n){KUe.default.parseCommand(t,e,r),t.push("IDX"),n?.MINMATCHLEN&&t.push("MINMATCHLEN",n.MINMATCHLEN.toString())},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var JUe=E(hI=>{"use strict";var gcr=hI&&hI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hI,"__esModule",{value:!0});var YUe=gcr(NX());hI.default={IS_READ_ONLY:YUe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];YUe.default.parseCommand(...t),e.push("WITHMATCHLEN")},transformReply:{2:t=>({matches:t[1],len:t[3]}),3:void 0}}});var ZUe=E(gI=>{"use strict";var Acr=gI&&gI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gI,"__esModule",{value:!0});var XUe=Acr(aB());gI.default={IS_READ_ONLY:XUe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];XUe.default.parseCommand(...t),e.push("LEN")},transformReply:void 0}});var e7e=E(OX=>{"use strict";Object.defineProperty(OX,"__esModule",{value:!0});OX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("LINDEX"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var t7e=E(PX=>{"use strict";Object.defineProperty(PX,"__esModule",{value:!0});PX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("LINSERT"),t.pushKey(e),t.push(r,n,s)},transformReply:void 0}});var r7e=E(DX=>{"use strict";Object.defineProperty(DX,"__esModule",{value:!0});DX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("LLEN"),t.pushKey(e)},transformReply:void 0}});var n7e=E(kX=>{"use strict";Object.defineProperty(kX,"__esModule",{value:!0});kX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("LMOVE"),t.pushKeys([e,r]),t.push(n,s)},transformReply:void 0}});var s7e=E(LX=>{"use strict";Object.defineProperty(LX,"__esModule",{value:!0});LX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("LOLWUT"),e&&(t.push("VERSION",e.toString()),t.pushVariadic(r.map(String)))},transformReply:void 0}});var MX=E(BX=>{"use strict";Object.defineProperty(BX,"__esModule",{value:!0});BX.default={parseCommand(t,e){t.push("LPOP"),t.pushKey(e)},transformReply:void 0}});var i7e=E(AI=>{"use strict";var ycr=AI&&AI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(AI,"__esModule",{value:!0});var xcr=ycr(MX());AI.default={IS_READ_ONLY:!1,parseCommand(t,e,r){xcr.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var $X=E(WX=>{"use strict";Object.defineProperty(WX,"__esModule",{value:!0});WX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LPOS"),t.pushKey(e),t.push(r),n?.RANK!==void 0&&t.push("RANK",n.RANK.toString()),n?.MAXLEN!==void 0&&t.push("MAXLEN",n.MAXLEN.toString())},transformReply:void 0}});var a7e=E(yI=>{"use strict";var bcr=yI&&yI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(yI,"__esModule",{value:!0});var FX=bcr($X());yI.default={CACHEABLE:FX.default.CACHEABLE,IS_READ_ONLY:FX.default.IS_READ_ONLY,parseCommand(t,e,r,n,s){FX.default.parseCommand(t,e,r,s),t.push("COUNT",n.toString())},transformReply:void 0}});var o7e=E(UX=>{"use strict";Object.defineProperty(UX,"__esModule",{value:!0});UX.default={parseCommand(t,e,r){t.push("LPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var c7e=E(qX=>{"use strict";Object.defineProperty(qX,"__esModule",{value:!0});qX.default={parseCommand(t,e,r){t.push("LPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var u7e=E(jX=>{"use strict";Object.defineProperty(jX,"__esModule",{value:!0});jX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LRANGE"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var l7e=E(HX=>{"use strict";Object.defineProperty(HX,"__esModule",{value:!0});HX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LREM"),t.pushKey(e),t.push(r.toString()),t.push(n)},transformReply:void 0}});var d7e=E(QX=>{"use strict";Object.defineProperty(QX,"__esModule",{value:!0});QX.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("LSET"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var f7e=E(GX=>{"use strict";Object.defineProperty(GX,"__esModule",{value:!0});GX.default={parseCommand(t,e,r,n){t.push("LTRIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var p7e=E(VX=>{"use strict";Object.defineProperty(VX,"__esModule",{value:!0});VX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","DOCTOR")},transformReply:void 0}});var m7e=E(zX=>{"use strict";Object.defineProperty(zX,"__esModule",{value:!0});zX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","MALLOC-STATS")},transformReply:void 0}});var h7e=E(KX=>{"use strict";Object.defineProperty(KX,"__esModule",{value:!0});KX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t){t.push("MEMORY","PURGE")},transformReply:void 0}});var g7e=E(YX=>{"use strict";Object.defineProperty(YX,"__esModule",{value:!0});var Ecr=Ie();YX.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MEMORY","STATS")},transformReply:{2:(t,e,r)=>{let n={},s=0;for(;s{"use strict";Object.defineProperty(JX,"__esModule",{value:!0});JX.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MEMORY","USAGE"),t.pushKey(e),r?.SAMPLES&&t.push("SAMPLES",r.SAMPLES.toString())},transformReply:void 0}});var y7e=E(XX=>{"use strict";Object.defineProperty(XX,"__esModule",{value:!0});XX.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MGET"),t.pushKeys(e)},transformReply:void 0}});var x7e=E(ZX=>{"use strict";Object.defineProperty(ZX,"__esModule",{value:!0});ZX.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("MIGRATE",e,r.toString());let o=Array.isArray(n);o?t.push(""):t.push(n),t.push(s.toString(),i.toString()),a?.COPY&&t.push("COPY"),a?.REPLACE&&t.push("REPLACE"),a?.AUTH&&(a.AUTH.username?t.push("AUTH2",a.AUTH.username,a.AUTH.password):t.push("AUTH",a.AUTH.password)),o&&(t.push("KEYS"),t.pushVariadic(n))},transformReply:void 0}});var b7e=E(eZ=>{"use strict";Object.defineProperty(eZ,"__esModule",{value:!0});eZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("MODULE","LIST")},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],ver:r[3]}}),3:void 0}}});var E7e=E(tZ=>{"use strict";Object.defineProperty(tZ,"__esModule",{value:!0});tZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("MODULE","LOAD",e),r&&t.push(...r)},transformReply:void 0}});var _7e=E(rZ=>{"use strict";Object.defineProperty(rZ,"__esModule",{value:!0});rZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("MODULE","UNLOAD",e)},transformReply:void 0}});var S7e=E(nZ=>{"use strict";Object.defineProperty(nZ,"__esModule",{value:!0});nZ.default={parseCommand(t,e,r){t.push("MOVE"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var sZ=E(xI=>{"use strict";Object.defineProperty(xI,"__esModule",{value:!0});xI.parseMSetArguments=void 0;function v7e(t,e){if(Array.isArray(e)){if(e.length==0)throw new Error("empty toSet Argument");if(Array.isArray(e[0]))for(let r of e)t.pushKey(r[0]),t.push(r[1]);else{let r=e;for(let n=0;n{"use strict";Object.defineProperty(yi,"__esModule",{value:!0});yi.parseMSetExArguments=yi.ExpirationMode=yi.SetMode=void 0;var C7e=Ie();yi.SetMode={XX:"XX",NX:"NX"};yi.ExpirationMode={EX:"EX",PX:"PX",EXAT:"EXAT",PXAT:"PXAT",KEEPTTL:"KEEPTTL"};function I7e(t,e){let r=[];if(Array.isArray(e)){if(e.length==0)throw new Error("empty keyValuePairs Argument");if(Array.isArray(e[0]))r=e;else{let n=e;for(let s=0;s{"use strict";Object.defineProperty(iZ,"__esModule",{value:!0});var _cr=sZ();iZ.default={IS_READ_ONLY:!0,parseCommand(t,e){return t.push("MSETNX"),(0,_cr.parseMSetArguments)(t,e)},transformReply:void 0}});var R7e=E(aZ=>{"use strict";Object.defineProperty(aZ,"__esModule",{value:!0});aZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","ENCODING"),t.pushKey(e)},transformReply:void 0}});var N7e=E(oZ=>{"use strict";Object.defineProperty(oZ,"__esModule",{value:!0});oZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","FREQ"),t.pushKey(e)},transformReply:void 0}});var O7e=E(cZ=>{"use strict";Object.defineProperty(cZ,"__esModule",{value:!0});cZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","IDLETIME"),t.pushKey(e)},transformReply:void 0}});var P7e=E(uZ=>{"use strict";Object.defineProperty(uZ,"__esModule",{value:!0});uZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("OBJECT","REFCOUNT"),t.pushKey(e)},transformReply:void 0}});var D7e=E(lZ=>{"use strict";Object.defineProperty(lZ,"__esModule",{value:!0});lZ.default={parseCommand(t,e){t.push("PERSIST"),t.pushKey(e)},transformReply:void 0}});var k7e=E(dZ=>{"use strict";Object.defineProperty(dZ,"__esModule",{value:!0});dZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIRE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n)},transformReply:void 0}});var L7e=E(fZ=>{"use strict";Object.defineProperty(fZ,"__esModule",{value:!0});var Scr=Ie();fZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("PEXPIREAT"),t.pushKey(e),t.push((0,Scr.transformPXAT)(r)),n&&t.push(n)},transformReply:void 0}});var B7e=E(pZ=>{"use strict";Object.defineProperty(pZ,"__esModule",{value:!0});pZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PEXPIRETIME"),t.pushKey(e)},transformReply:void 0}});var M7e=E(mZ=>{"use strict";Object.defineProperty(mZ,"__esModule",{value:!0});mZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("PFADD"),t.pushKey(e),r&&t.pushVariadic(r)},transformReply:void 0}});var W7e=E(hZ=>{"use strict";Object.defineProperty(hZ,"__esModule",{value:!0});hZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PFCOUNT"),t.pushKeys(e)},transformReply:void 0}});var $7e=E(gZ=>{"use strict";Object.defineProperty(gZ,"__esModule",{value:!0});gZ.default={parseCommand(t,e,r){t.push("PFMERGE"),t.pushKey(e),r&&t.pushKeys(r)},transformReply:void 0}});var F7e=E(AZ=>{"use strict";Object.defineProperty(AZ,"__esModule",{value:!0});AZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PING"),e&&t.push(e)},transformReply:void 0}});var U7e=E(yZ=>{"use strict";Object.defineProperty(yZ,"__esModule",{value:!0});yZ.default={parseCommand(t,e,r,n){t.push("PSETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var q7e=E(xZ=>{"use strict";Object.defineProperty(xZ,"__esModule",{value:!0});xZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PTTL"),t.pushKey(e)},transformReply:void 0}});var j7e=E(bZ=>{"use strict";Object.defineProperty(bZ,"__esModule",{value:!0});bZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,IS_FORWARD_COMMAND:!0,parseCommand(t,e,r){t.push("PUBLISH",e,r)},transformReply:void 0}});var H7e=E(EZ=>{"use strict";Object.defineProperty(EZ,"__esModule",{value:!0});EZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","CHANNELS"),e&&t.push(e)},transformReply:void 0}});var Q7e=E(_Z=>{"use strict";Object.defineProperty(_Z,"__esModule",{value:!0});_Z.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("PUBSUB","NUMPAT")},transformReply:void 0}});var G7e=E(SZ=>{"use strict";Object.defineProperty(SZ,"__esModule",{value:!0});SZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","NUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null),r=0;for(;r{"use strict";Object.defineProperty(vZ,"__esModule",{value:!0});vZ.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDNUMSUB"),e&&t.pushVariadic(e)},transformReply(t){let e=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(CZ,"__esModule",{value:!0});CZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("PUBSUB","SHARDCHANNELS"),e&&t.push(e)},transformReply:void 0}});var K7e=E(IZ=>{"use strict";Object.defineProperty(IZ,"__esModule",{value:!0});IZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RANDOMKEY")},transformReply:void 0}});var Y7e=E(TZ=>{"use strict";Object.defineProperty(TZ,"__esModule",{value:!0});TZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("READONLY")},transformReply:void 0}});var J7e=E(wZ=>{"use strict";Object.defineProperty(wZ,"__esModule",{value:!0});wZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAME"),t.pushKeys([e,r])},transformReply:void 0}});var X7e=E(RZ=>{"use strict";Object.defineProperty(RZ,"__esModule",{value:!0});RZ.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("RENAMENX"),t.pushKeys([e,r])},transformReply:void 0}});var Z7e=E(NZ=>{"use strict";Object.defineProperty(NZ,"__esModule",{value:!0});NZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("REPLICAOF",e,r.toString())},transformReply:void 0}});var e9e=E(OZ=>{"use strict";Object.defineProperty(OZ,"__esModule",{value:!0});OZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("RESTORE-ASKING")},transformReply:void 0}});var t9e=E(PZ=>{"use strict";Object.defineProperty(PZ,"__esModule",{value:!0});PZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("RESTORE"),t.pushKey(e),t.push(r.toString(),n),s?.REPLACE&&t.push("REPLACE"),s?.ABSTTL&&t.push("ABSTTL"),s?.IDLETIME&&t.push("IDLETIME",s.IDLETIME.toString()),s?.FREQ&&t.push("FREQ",s.FREQ.toString())},transformReply:void 0}});var r9e=E(DZ=>{"use strict";Object.defineProperty(DZ,"__esModule",{value:!0});DZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("ROLE")},transformReply(t){switch(t[0]){case"master":{let[e,r,n]=t;return{role:e,replicationOffest:r,replicas:n.map(s=>{let[i,a,o]=s;return{host:i,port:Number(a),replicationOffest:Number(o)}})}}case"slave":{let[e,r,n,s,i]=t;return{role:e,master:{host:r,port:n},state:s,dataReceived:i}}case"sentinel":{let[e,r]=t;return{role:e,masterNames:r}}}}}});var n9e=E(kZ=>{"use strict";Object.defineProperty(kZ,"__esModule",{value:!0});kZ.default={parseCommand(t,e,r){t.push("RPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var s9e=E(LZ=>{"use strict";Object.defineProperty(LZ,"__esModule",{value:!0});LZ.default={parseCommand(t,e){t.push("RPOP"),t.pushKey(e)},transformReply:void 0}});var i9e=E(BZ=>{"use strict";Object.defineProperty(BZ,"__esModule",{value:!0});BZ.default={parseCommand(t,e,r){t.push("RPOPLPUSH"),t.pushKeys([e,r])},transformReply:void 0}});var a9e=E(MZ=>{"use strict";Object.defineProperty(MZ,"__esModule",{value:!0});MZ.default={parseCommand(t,e,r){t.push("RPUSH"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var o9e=E(WZ=>{"use strict";Object.defineProperty(WZ,"__esModule",{value:!0});WZ.default={parseCommand(t,e,r){t.push("RPUSHX"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var c9e=E($Z=>{"use strict";Object.defineProperty($Z,"__esModule",{value:!0});$Z.default={parseCommand(t,e,r){t.push("SADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var u9e=E(FZ=>{"use strict";Object.defineProperty(FZ,"__esModule",{value:!0});FZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCARD"),t.pushKey(e)},transformReply:void 0}});var l9e=E(UZ=>{"use strict";Object.defineProperty(UZ,"__esModule",{value:!0});UZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","DEBUG",e)},transformReply:void 0}});var d9e=E(qZ=>{"use strict";Object.defineProperty(qZ,"__esModule",{value:!0});qZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","EXISTS"),t.pushVariadic(e)},transformReply:void 0}});var f9e=E(jZ=>{"use strict";Object.defineProperty(jZ,"__esModule",{value:!0});jZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","FLUSH"),e&&t.push(e)},transformReply:void 0}});var p9e=E(HZ=>{"use strict";Object.defineProperty(HZ,"__esModule",{value:!0});HZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("SCRIPT","KILL")},transformReply:void 0}});var m9e=E(QZ=>{"use strict";Object.defineProperty(QZ,"__esModule",{value:!0});QZ.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SCRIPT","LOAD",e)},transformReply:void 0}});var h9e=E(GZ=>{"use strict";Object.defineProperty(GZ,"__esModule",{value:!0});GZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SDIFF"),t.pushKeys(e)},transformReply:void 0}});var g9e=E(VZ=>{"use strict";Object.defineProperty(VZ,"__esModule",{value:!0});VZ.default={parseCommand(t,e,r){t.push("SDIFFSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var A9e=E(zZ=>{"use strict";Object.defineProperty(zZ,"__esModule",{value:!0});zZ.default={parseCommand(t,e,r,n){t.push("SET"),t.pushKey(e),t.push(typeof r=="number"?r.toString():r),n?.expiration?typeof n.expiration=="string"?t.push(n.expiration):n.expiration.type==="KEEPTTL"?t.push("KEEPTTL"):t.push(n.expiration.type,n.expiration.value.toString()):n?.EX!==void 0?t.push("EX",n.EX.toString()):n?.PX!==void 0?t.push("PX",n.PX.toString()):n?.EXAT!==void 0?t.push("EXAT",n.EXAT.toString()):n?.PXAT!==void 0?t.push("PXAT",n.PXAT.toString()):n?.KEEPTTL&&t.push("KEEPTTL"),n?.condition?(t.push(n.condition),n?.matchValue!==void 0&&t.push(n.matchValue)):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.GET&&t.push("GET")},transformReply:void 0}});var y9e=E(KZ=>{"use strict";Object.defineProperty(KZ,"__esModule",{value:!0});KZ.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SETBIT"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var x9e=E(YZ=>{"use strict";Object.defineProperty(YZ,"__esModule",{value:!0});YZ.default={parseCommand(t,e,r,n){t.push("SETEX"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var b9e=E(JZ=>{"use strict";Object.defineProperty(JZ,"__esModule",{value:!0});JZ.default={parseCommand(t,e,r){t.push("SETNX"),t.pushKey(e),t.push(r)},transformReply:void 0}});var E9e=E(XZ=>{"use strict";Object.defineProperty(XZ,"__esModule",{value:!0});XZ.default={parseCommand(t,e,r,n){t.push("SETRANGE"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var _9e=E(ZZ=>{"use strict";Object.defineProperty(ZZ,"__esModule",{value:!0});ZZ.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SINTER"),t.pushKeys(e)},transformReply:void 0}});var S9e=E(eee=>{"use strict";Object.defineProperty(eee,"__esModule",{value:!0});eee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT!==void 0&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var v9e=E(tee=>{"use strict";Object.defineProperty(tee,"__esModule",{value:!0});tee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SINTERSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var C9e=E(ree=>{"use strict";Object.defineProperty(ree,"__esModule",{value:!0});ree.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SISMEMBER"),t.pushKey(e),t.push(r)},transformReply:void 0}});var I9e=E(nee=>{"use strict";Object.defineProperty(nee,"__esModule",{value:!0});nee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SMEMBERS"),t.pushKey(e)},transformReply:{2:void 0,3:void 0}}});var T9e=E(see=>{"use strict";Object.defineProperty(see,"__esModule",{value:!0});see.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SMISMEMBER"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var w9e=E(iee=>{"use strict";Object.defineProperty(iee,"__esModule",{value:!0});iee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("SMOVE"),t.pushKeys([e,r]),t.push(n)},transformReply:void 0}});var oB=E(bI=>{"use strict";Object.defineProperty(bI,"__esModule",{value:!0});bI.parseSortArguments=void 0;function R9e(t,e,r){if(t.pushKey(e),r?.BY&&t.push("BY",r.BY),r?.LIMIT&&t.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),r?.GET)if(Array.isArray(r.GET))for(let n of r.GET)t.push("GET",n);else t.push("GET",r.GET);r?.DIRECTION&&t.push(r.DIRECTION),r?.ALPHA&&t.push("ALPHA")}bI.parseSortArguments=R9e;bI.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SORT"),R9e(t,e,r)},transformReply:void 0}});var O9e=E(Cf=>{"use strict";var vcr=Cf&&Cf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ccr=Cf&&Cf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Icr=Cf&&Cf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&vcr(e,t,r);return Ccr(e,t),e};Object.defineProperty(Cf,"__esModule",{value:!0});var N9e=Icr(oB());Cf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("SORT_RO"),(0,N9e.parseSortArguments)(...t)},transformReply:N9e.default.transformReply}});var P9e=E(EI=>{"use strict";var Tcr=EI&&EI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(EI,"__esModule",{value:!0});var wcr=Tcr(oB());EI.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){wcr.default.parseCommand(t,e,n),t.push("STORE",r)},transformReply:void 0}});var D9e=E(aee=>{"use strict";Object.defineProperty(aee,"__esModule",{value:!0});aee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SPOP"),t.pushKey(e),t.push(r.toString())},transformReply:void 0}});var k9e=E(oee=>{"use strict";Object.defineProperty(oee,"__esModule",{value:!0});oee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("SPOP"),t.pushKey(e)},transformReply:void 0}});var L9e=E(cee=>{"use strict";Object.defineProperty(cee,"__esModule",{value:!0});cee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("SPUBLISH"),t.pushKey(e),t.push(r)},transformReply:void 0}});var lee=E(uee=>{"use strict";Object.defineProperty(uee,"__esModule",{value:!0});uee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("SRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var M9e=E(_I=>{"use strict";var Rcr=_I&&_I.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_I,"__esModule",{value:!0});var B9e=Rcr(lee());_I.default={IS_READ_ONLY:B9e.default.IS_READ_ONLY,parseCommand(t,e,r){B9e.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var W9e=E(dee=>{"use strict";Object.defineProperty(dee,"__esModule",{value:!0});dee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var $9e=E(fee=>{"use strict";Object.defineProperty(fee,"__esModule",{value:!0});var Ncr=cI();fee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("SSCAN"),t.pushKey(e),(0,Ncr.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:e}}}});var F9e=E(pee=>{"use strict";Object.defineProperty(pee,"__esModule",{value:!0});pee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("STRLEN"),t.pushKey(e)},transformReply:void 0}});var U9e=E(mee=>{"use strict";Object.defineProperty(mee,"__esModule",{value:!0});mee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("SUNION"),t.pushKeys(e)},transformReply:void 0}});var q9e=E(hee=>{"use strict";Object.defineProperty(hee,"__esModule",{value:!0});hee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SUNIONSTORE"),t.pushKey(e),t.pushKeys(r)},transformReply:void 0}});var j9e=E(gee=>{"use strict";Object.defineProperty(gee,"__esModule",{value:!0});gee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("SWAPDB",e.toString(),r.toString())},transformReply:void 0}});var H9e=E(Aee=>{"use strict";Object.defineProperty(Aee,"__esModule",{value:!0});Aee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("TIME")},transformReply:void 0}});var Q9e=E(yee=>{"use strict";Object.defineProperty(yee,"__esModule",{value:!0});yee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TOUCH"),t.pushKeys(e)},transformReply:void 0}});var G9e=E(xee=>{"use strict";Object.defineProperty(xee,"__esModule",{value:!0});xee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TTL"),t.pushKey(e)},transformReply:void 0}});var V9e=E(bee=>{"use strict";Object.defineProperty(bee,"__esModule",{value:!0});bee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TYPE"),t.pushKey(e)},transformReply:void 0}});var z9e=E(Eee=>{"use strict";Object.defineProperty(Eee,"__esModule",{value:!0});Eee.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("UNLINK"),t.pushKeys(e)},transformReply:void 0}});var K9e=E(_ee=>{"use strict";Object.defineProperty(_ee,"__esModule",{value:!0});_ee.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("WAIT",e.toString(),r.toString())},transformReply:void 0}});var Y9e=E(See=>{"use strict";Object.defineProperty(See,"__esModule",{value:!0});See.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XACK"),t.pushKey(e),t.push(r),t.pushVariadic(n)},transformReply:void 0}});var J9e=E(vee=>{"use strict";Object.defineProperty(vee,"__esModule",{value:!0});vee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XACKDEL"),t.pushKey(e),t.push(r),s&&t.push(s),t.push("IDS"),t.pushVariadicWithLength(n)},transformReply:void 0}});var Cee=E(SI=>{"use strict";Object.defineProperty(SI,"__esModule",{value:!0});SI.parseXAddArguments=void 0;function X9e(t,e,r,n,s,i){e.push("XADD"),e.pushKey(r),t&&e.push(t),i?.policy&&e.push(i.policy),i?.IDMPAUTO?e.push("IDMPAUTO",i.IDMPAUTO.pid):i?.IDMP&&e.push("IDMP",i.IDMP.pid,i.IDMP.iid),i?.TRIM&&(i.TRIM.strategy&&e.push(i.TRIM.strategy),i.TRIM.strategyModifier&&e.push(i.TRIM.strategyModifier),e.push(i.TRIM.threshold.toString()),i.TRIM.limit&&e.push("LIMIT",i.TRIM.limit.toString()),i.TRIM.policy&&e.push(i.TRIM.policy)),e.push(n);for(let[a,o]of Object.entries(s))e.push(a,o)}SI.parseXAddArguments=X9e;SI.default={IS_READ_ONLY:!1,parseCommand(...t){return X9e(void 0,...t)},transformReply:void 0}});var Z9e=E(Iee=>{"use strict";Object.defineProperty(Iee,"__esModule",{value:!0});var Ocr=Cee();Iee.default={IS_READ_ONLY:!1,parseCommand(...t){return(0,Ocr.parseXAddArguments)("NOMKSTREAM",...t)},transformReply:void 0}});var wee=E(Tee=>{"use strict";Object.defineProperty(Tee,"__esModule",{value:!0});var Pcr=Ie();Tee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XAUTOCLAIM"),t.pushKey(e),t.push(r,n,s.toString(),i),a?.COUNT&&t.push("COUNT",a.COUNT.toString())},transformReply(t,e,r){return{nextId:t[0],messages:t[1].map(Pcr.transformStreamMessageNullReply.bind(void 0,r)),deletedMessages:t[2]}}}});var tqe=E(vI=>{"use strict";var Dcr=vI&&vI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(vI,"__esModule",{value:!0});var eqe=Dcr(wee());vI.default={IS_READ_ONLY:eqe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];eqe.default.parseCommand(...t),e.push("JUSTID")},transformReply(t){return{nextId:t[0],messages:t[1],deletedMessages:t[2]}}}});var Nee=E(Ree=>{"use strict";Object.defineProperty(Ree,"__esModule",{value:!0});var kcr=Ie();Ree.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i,a){t.push("XCLAIM"),t.pushKey(e),t.push(r,n,s.toString()),t.pushVariadic(i),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),a?.TIME!==void 0&&t.push("TIME",(a.TIME instanceof Date?a.TIME.getTime():a.TIME).toString()),a?.RETRYCOUNT!==void 0&&t.push("RETRYCOUNT",a.RETRYCOUNT.toString()),a?.FORCE&&t.push("FORCE"),a?.LASTID!==void 0&&t.push("LASTID",a.LASTID)},transformReply(t,e,r){return t.map(kcr.transformStreamMessageNullReply.bind(void 0,r))}}});var nqe=E(CI=>{"use strict";var Lcr=CI&&CI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(CI,"__esModule",{value:!0});var rqe=Lcr(Nee());CI.default={IS_READ_ONLY:rqe.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];rqe.default.parseCommand(...t),e.push("JUSTID")},transformReply:void 0}});var sqe=E(Oee=>{"use strict";Object.defineProperty(Oee,"__esModule",{value:!0});Oee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XCFGSET"),t.pushKey(e),r?.IDMP_DURATION!==void 0&&t.push("IDMP-DURATION",r.IDMP_DURATION.toString()),r?.IDMP_MAXSIZE!==void 0&&t.push("IDMP-MAXSIZE",r.IDMP_MAXSIZE.toString())},transformReply:void 0}});var iqe=E(Pee=>{"use strict";Object.defineProperty(Pee,"__esModule",{value:!0});Pee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XDEL"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var aqe=E(Dee=>{"use strict";Object.defineProperty(Dee,"__esModule",{value:!0});Dee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XDELEX"),t.pushKey(e),n&&t.push(n),t.push("IDS"),t.pushVariadicWithLength(r)},transformReply:void 0}});var oqe=E(kee=>{"use strict";Object.defineProperty(kee,"__esModule",{value:!0});kee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","CREATE"),t.pushKey(e),t.push(r,n),s?.MKSTREAM&&t.push("MKSTREAM"),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var cqe=E(Lee=>{"use strict";Object.defineProperty(Lee,"__esModule",{value:!0});Lee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","CREATECONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var uqe=E(Bee=>{"use strict";Object.defineProperty(Bee,"__esModule",{value:!0});Bee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XGROUP","DELCONSUMER"),t.pushKey(e),t.push(r,n)},transformReply:void 0}});var lqe=E(Mee=>{"use strict";Object.defineProperty(Mee,"__esModule",{value:!0});Mee.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("XGROUP","DESTROY"),t.pushKey(e),t.push(r)},transformReply:void 0}});var dqe=E(Wee=>{"use strict";Object.defineProperty(Wee,"__esModule",{value:!0});Wee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XGROUP","SETID"),t.pushKey(e),t.push(r,n),s?.ENTRIESREAD&&t.push("ENTRIESREAD",s.ENTRIESREAD.toString())},transformReply:void 0}});var fqe=E($ee=>{"use strict";Object.defineProperty($ee,"__esModule",{value:!0});$ee.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XINFO","CONSUMERS"),t.pushKey(e),t.push(r)},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],pending:r[3],idle:r[5],inactive:r[7]}}),3:void 0}}});var pqe=E(Fee=>{"use strict";Object.defineProperty(Fee,"__esModule",{value:!0});Fee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","GROUPS"),t.pushKey(e)},transformReply:{2:t=>t.map(e=>{let r=e;return{name:r[1],consumers:r[3],pending:r[5],"last-delivered-id":r[7],"entries-read":r[9],lag:r[11]}}),3:void 0}}});var hqe=E(Uee=>{"use strict";Object.defineProperty(Uee,"__esModule",{value:!0});var mqe=Ie();Uee.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("XINFO","STREAM"),t.pushKey(e)},transformReply:{2(t){let e={};for(let r=0;r{"use strict";Object.defineProperty(qee,"__esModule",{value:!0});qee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("XLEN"),t.pushKey(e)},transformReply:void 0}});var Aqe=E(jee=>{"use strict";Object.defineProperty(jee,"__esModule",{value:!0});jee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s,i,a){t.push("XPENDING"),t.pushKey(e),t.push(r),a?.IDLE!==void 0&&t.push("IDLE",a.IDLE.toString()),t.push(n,s,i.toString()),a?.consumer&&t.push(a.consumer)},transformReply(t){return t.map(e=>{let r=e;return{id:r[0],consumer:r[1],millisecondsSinceLastDelivery:r[2],deliveriesCounter:r[3]}})}}});var yqe=E(Hee=>{"use strict";Object.defineProperty(Hee,"__esModule",{value:!0});Hee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("XPENDING"),t.pushKey(e),t.push(r)},transformReply(t){let e=t[3];return{pending:t[0],firstId:t[1],lastId:t[2],consumers:e===null?null:e.map(r=>{let[n,s]=r;return{name:n,deliveriesCounter:Number(s)}})}}}});var Qee=E(II=>{"use strict";Object.defineProperty(II,"__esModule",{value:!0});II.xRangeArguments=void 0;var Bcr=Ie();function xqe(t,e,r){let n=[t,e];return r?.COUNT&&n.push("COUNT",r.COUNT.toString()),n}II.xRangeArguments=xqe;II.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,...r){t.push("XRANGE"),t.pushKey(e),t.pushVariadic(xqe(r[0],r[1],r[2]))},transformReply(t,e,r){return t.map(Bcr.transformStreamMessageReply.bind(void 0,r))}}});var Gee=E(TI=>{"use strict";Object.defineProperty(TI,"__esModule",{value:!0});TI.pushXReadStreams=void 0;var Mcr=Ie();function bqe(t,e){if(t.push("STREAMS"),Array.isArray(e)){for(let r=0;r{"use strict";Object.defineProperty(Vee,"__esModule",{value:!0});var Wcr=Gee(),$cr=Ie();Vee.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("XREADGROUP","GROUP",e,r),s?.COUNT!==void 0&&t.push("COUNT",s.COUNT.toString()),s?.BLOCK!==void 0&&t.push("BLOCK",s.BLOCK.toString()),s?.NOACK&&t.push("NOACK"),s?.CLAIM!==void 0&&t.push("CLAIM",s.CLAIM.toString()),(0,Wcr.pushXReadStreams)(t,n)},transformReply:{2:$cr.transformStreamsMessagesReplyResp2,3:void 0}}});var _qe=E(If=>{"use strict";var Fcr=If&&If.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Ucr=If&&If.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),qcr=If&&If.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Fcr(e,t,r);return Ucr(e,t),e};Object.defineProperty(If,"__esModule",{value:!0});var cB=qcr(Qee());If.default={CACHEABLE:cB.default.CACHEABLE,IS_READ_ONLY:cB.default.IS_READ_ONLY,parseCommand(t,e,...r){t.push("XREVRANGE"),t.pushKey(e),t.pushVariadic((0,cB.xRangeArguments)(r[0],r[1],r[2]))},transformReply:cB.default.transformReply}});var Sqe=E(zee=>{"use strict";Object.defineProperty(zee,"__esModule",{value:!0});zee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("XSETID"),t.pushKey(e),t.push(r),n?.ENTRIESADDED&&t.push("ENTRIESADDED",n.ENTRIESADDED.toString()),n?.MAXDELETEDID&&t.push("MAXDELETEDID",n.MAXDELETEDID)},transformReply:void 0}});var vqe=E(Kee=>{"use strict";Object.defineProperty(Kee,"__esModule",{value:!0});Kee.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("XTRIM"),t.pushKey(e),t.push(r),s?.strategyModifier&&t.push(s.strategyModifier),t.push(n.toString()),s?.LIMIT&&t.push("LIMIT",s.LIMIT.toString()),s?.policy&&t.push(s.policy)},transformReply:void 0}});var Yee=E(wI=>{"use strict";Object.defineProperty(wI,"__esModule",{value:!0});wI.pushMembers=void 0;var Iqe=Ie();wI.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition?t.push(n.condition):n?.NX?t.push("NX"):n?.XX&&t.push("XX"),n?.comparison?t.push(n.comparison):n?.LT?t.push("LT"):n?.GT&&t.push("GT"),n?.CH&&t.push("CH"),Tqe(t,r)},transformReply:Iqe.transformDoubleReply};function Tqe(t,e){if(Array.isArray(e))for(let r of e)Cqe(t,r);else Cqe(t,e)}wI.pushMembers=Tqe;function Cqe(t,e){t.push((0,Iqe.transformDoubleArgument)(e.score),e.value)}});var wqe=E(Jee=>{"use strict";Object.defineProperty(Jee,"__esModule",{value:!0});var jcr=Yee(),Hcr=Ie();Jee.default={parseCommand(t,e,r,n){t.push("ZADD"),t.pushKey(e),n?.condition&&t.push(n.condition),n?.comparison&&t.push(n.comparison),n?.CH&&t.push("CH"),t.push("INCR"),(0,jcr.pushMembers)(t,r)},transformReply:Hcr.transformNullableDoubleReply}});var Rqe=E(Xee=>{"use strict";Object.defineProperty(Xee,"__esModule",{value:!0});Xee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZCARD"),t.pushKey(e)},transformReply:void 0}});var Oqe=E(Zee=>{"use strict";Object.defineProperty(Zee,"__esModule",{value:!0});var Nqe=Ie();Zee.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZCOUNT"),t.pushKey(e),t.push((0,Nqe.transformStringDoubleArgument)(r),(0,Nqe.transformStringDoubleArgument)(n))},transformReply:void 0}});var tte=E(ete=>{"use strict";Object.defineProperty(ete,"__esModule",{value:!0});ete.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZDIFF"),t.pushKeysLength(e)},transformReply:void 0}});var Dqe=E(RI=>{"use strict";var Qcr=RI&&RI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(RI,"__esModule",{value:!0});var Gcr=Ie(),Pqe=Qcr(tte());RI.default={IS_READ_ONLY:Pqe.default.IS_READ_ONLY,parseCommand(t,e){Pqe.default.parseCommand(t,e),t.push("WITHSCORES")},transformReply:Gcr.transformSortedSetReply}});var kqe=E(rte=>{"use strict";Object.defineProperty(rte,"__esModule",{value:!0});rte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZDIFFSTORE"),t.pushKey(e),t.pushKeysLength(r)},transformReply:void 0}});var Bqe=E(nte=>{"use strict";Object.defineProperty(nte,"__esModule",{value:!0});var Lqe=Ie();nte.default={parseCommand(t,e,r,n){t.push("ZINCRBY"),t.pushKey(e),t.push((0,Lqe.transformDoubleArgument)(r),n)},transformReply:Lqe.transformDoubleReply}});var uB=E(NI=>{"use strict";Object.defineProperty(NI,"__esModule",{value:!0});NI.parseZInterArguments=void 0;var Vcr=Ie();function Mqe(t,e,r){(0,Vcr.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)}NI.parseZInterArguments=Mqe;NI.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTER"),Mqe(t,e,r)},transformReply:void 0}});var $qe=E(OI=>{"use strict";var zcr=OI&&OI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(OI,"__esModule",{value:!0});var Kcr=Ie(),Wqe=zcr(uB());OI.default={IS_READ_ONLY:Wqe.default.IS_READ_ONLY,parseCommand(...t){Wqe.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:Kcr.transformSortedSetReply}});var Fqe=E(ste=>{"use strict";Object.defineProperty(ste,"__esModule",{value:!0});ste.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZINTERCARD"),t.pushKeysLength(e),typeof r=="number"?t.push("LIMIT",r.toString()):r?.LIMIT&&t.push("LIMIT",r.LIMIT.toString())},transformReply:void 0}});var Uqe=E(ite=>{"use strict";Object.defineProperty(ite,"__esModule",{value:!0});var Ycr=uB();ite.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZINTERSTORE"),t.pushKey(e),(0,Ycr.parseZInterArguments)(t,r,n)},transformReply:void 0}});var qqe=E(ate=>{"use strict";Object.defineProperty(ate,"__esModule",{value:!0});ate.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZLEXCOUNT"),t.pushKey(e),t.push(r),t.push(n)},transformReply:void 0}});var jqe=E(ote=>{"use strict";Object.defineProperty(ote,"__esModule",{value:!0});var Jcr=Ie();ote.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZMSCORE"),t.pushKey(e),t.pushVariadic(r)},transformReply:{2:(t,e,r)=>t.map((0,Jcr.createTransformNullableDoubleReplyResp2Func)(e,r)),3:void 0}}});var Hqe=E(cte=>{"use strict";Object.defineProperty(cte,"__esModule",{value:!0});var Xcr=Ie();cte.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMAX"),t.pushKey(e),t.push(r.toString())},transformReply:Xcr.transformSortedSetReply}});var lte=E(ute=>{"use strict";Object.defineProperty(ute,"__esModule",{value:!0});var Zcr=Ie();ute.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMAX"),t.pushKey(e)},transformReply:{2:(t,e,r)=>t.length===0?null:{value:t[0],score:Zcr.transformDoubleReply[2](t[1],e,r)},3:t=>t.length===0?null:{value:t[0],score:t[1]}}}});var Qqe=E(dte=>{"use strict";Object.defineProperty(dte,"__esModule",{value:!0});var eur=Ie();dte.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZPOPMIN"),t.pushKey(e),t.push(r.toString())},transformReply:eur.transformSortedSetReply}});var Gqe=E(PI=>{"use strict";var tur=PI&&PI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(PI,"__esModule",{value:!0});var rur=tur(lte());PI.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("ZPOPMIN"),t.pushKey(e)},transformReply:rur.default.transformReply}});var pte=E(fte=>{"use strict";Object.defineProperty(fte,"__esModule",{value:!0});fte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("ZRANDMEMBER"),t.pushKey(e)},transformReply:void 0}});var mte=E(DI=>{"use strict";var nur=DI&&DI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(DI,"__esModule",{value:!0});var Vqe=nur(pte());DI.default={IS_READ_ONLY:Vqe.default.IS_READ_ONLY,parseCommand(t,e,r){Vqe.default.parseCommand(t,e),t.push(r.toString())},transformReply:void 0}});var Kqe=E(kI=>{"use strict";var sur=kI&&kI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kI,"__esModule",{value:!0});var iur=Ie(),zqe=sur(mte());kI.default={IS_READ_ONLY:zqe.default.IS_READ_ONLY,parseCommand(t,e,r){zqe.default.parseCommand(t,e,r),t.push("WITHSCORES")},transformReply:iur.transformSortedSetReply}});var hte=E(LI=>{"use strict";Object.defineProperty(LI,"__esModule",{value:!0});LI.zRangeArgument=void 0;var Yqe=Ie();function Jqe(t,e,r){let n=[(0,Yqe.transformStringDoubleArgument)(t),(0,Yqe.transformStringDoubleArgument)(e)];switch(r?.BY){case"SCORE":n.push("BYSCORE");break;case"LEX":n.push("BYLEX");break}return r?.REV&&n.push("REV"),r?.LIMIT&&n.push("LIMIT",r.LIMIT.offset.toString(),r.LIMIT.count.toString()),n}LI.zRangeArgument=Jqe;LI.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGE"),t.pushKey(e),t.pushVariadic(Jqe(r,n,s))},transformReply:void 0}});var Xqe=E(BI=>{"use strict";var aur=BI&&BI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(BI,"__esModule",{value:!0});var our=Ie(),gte=aur(hte());BI.default={CACHEABLE:gte.default.CACHEABLE,IS_READ_ONLY:gte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];gte.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:our.transformSortedSetReply}});var eje=E(Ate=>{"use strict";Object.defineProperty(Ate,"__esModule",{value:!0});var Zqe=Ie();Ate.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYLEX"),t.pushKey(e),t.push((0,Zqe.transformStringDoubleArgument)(r),(0,Zqe.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var xte=E(yte=>{"use strict";Object.defineProperty(yte,"__esModule",{value:!0});var tje=Ie();yte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("ZRANGEBYSCORE"),t.pushKey(e),t.push((0,tje.transformStringDoubleArgument)(r),(0,tje.transformStringDoubleArgument)(n)),s?.LIMIT&&t.push("LIMIT",s.LIMIT.offset.toString(),s.LIMIT.count.toString())},transformReply:void 0}});var rje=E(MI=>{"use strict";var cur=MI&&MI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(MI,"__esModule",{value:!0});var uur=Ie(),bte=cur(xte());MI.default={CACHEABLE:bte.default.CACHEABLE,IS_READ_ONLY:bte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];bte.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:uur.transformSortedSetReply}});var sje=E(Ete=>{"use strict";Object.defineProperty(Ete,"__esModule",{value:!0});var nje=Ie();Ete.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){switch(t.push("ZRANGESTORE"),t.pushKey(e),t.pushKey(r),t.push((0,nje.transformStringDoubleArgument)(n),(0,nje.transformStringDoubleArgument)(s)),i?.BY){case"SCORE":t.push("BYSCORE");break;case"LEX":t.push("BYLEX");break}i?.REV&&t.push("REV"),i?.LIMIT&&t.push("LIMIT",i.LIMIT.offset.toString(),i.LIMIT.count.toString())},transformReply:void 0}});var aje=E(_te=>{"use strict";Object.defineProperty(_te,"__esModule",{value:!0});var ije=Ie();_te.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYSCORE"),t.pushKey(e),t.push((0,ije.transformStringDoubleArgument)(r),(0,ije.transformStringDoubleArgument)(n))},transformReply:void 0}});var vte=E(Ste=>{"use strict";Object.defineProperty(Ste,"__esModule",{value:!0});Ste.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var oje=E(WI=>{"use strict";var lur=WI&&WI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(WI,"__esModule",{value:!0});var Cte=lur(vte());WI.default={CACHEABLE:Cte.default.CACHEABLE,IS_READ_ONLY:Cte.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Cte.default.parseCommand(...t),e.push("WITHSCORE")},transformReply:{2:t=>t===null?null:{rank:t[0],score:Number(t[1])},3:t=>t===null?null:{rank:t[0],score:t[1]}}}});var cje=E(Ite=>{"use strict";Object.defineProperty(Ite,"__esModule",{value:!0});Ite.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("ZREM"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var lje=E(Tte=>{"use strict";Object.defineProperty(Tte,"__esModule",{value:!0});var uje=Ie();Tte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYLEX"),t.pushKey(e),t.push((0,uje.transformStringDoubleArgument)(r),(0,uje.transformStringDoubleArgument)(n))},transformReply:void 0}});var dje=E(wte=>{"use strict";Object.defineProperty(wte,"__esModule",{value:!0});wte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZREMRANGEBYRANK"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var fje=E(Rte=>{"use strict";Object.defineProperty(Rte,"__esModule",{value:!0});Rte.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZREVRANK"),t.pushKey(e),t.push(r)},transformReply:void 0}});var pje=E(Nte=>{"use strict";Object.defineProperty(Nte,"__esModule",{value:!0});var dur=cI(),fur=Ie();Nte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("ZSCAN"),t.pushKey(e),(0,dur.parseScanArguments)(t,r,n)},transformReply([t,e]){return{cursor:t,members:fur.transformSortedSetReply[2](e)}}}});var mje=E(Ote=>{"use strict";Object.defineProperty(Ote,"__esModule",{value:!0});var pur=Ie();Ote.default={CACHEABLE:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZSCORE"),t.pushKey(e),t.push(r)},transformReply:pur.transformNullableDoubleReply}});var Dte=E(Pte=>{"use strict";Object.defineProperty(Pte,"__esModule",{value:!0});var mur=Ie();Pte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("ZUNION"),(0,mur.parseZKeysArguments)(t,e),r?.AGGREGATE&&t.push("AGGREGATE",r.AGGREGATE)},transformReply:void 0}});var gje=E($I=>{"use strict";var hur=$I&&$I.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($I,"__esModule",{value:!0});var gur=Ie(),hje=hur(Dte());$I.default={IS_READ_ONLY:hje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];hje.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:gur.transformSortedSetReply}});var Aje=E(kte=>{"use strict";Object.defineProperty(kte,"__esModule",{value:!0});var Aur=Ie();kte.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("ZUNIONSTORE"),t.pushKey(e),(0,Aur.parseZKeysArguments)(t,r),n?.AGGREGATE&&t.push("AGGREGATE",n.AGGREGATE)},transformReply:void 0}});var xje=E(Lte=>{"use strict";Object.defineProperty(Lte,"__esModule",{value:!0});var yje=Ie();Lte.default={parseCommand(t,e,r,n,s){t.push("VADD"),t.pushKey(e),s?.REDUCE!==void 0&&t.push("REDUCE",s.REDUCE.toString()),t.push("VALUES",r.length.toString());for(let i of r)t.push((0,yje.transformDoubleArgument)(i));t.push(n),s?.CAS&&t.push("CAS"),s?.QUANT&&t.push(s.QUANT),s?.EF!==void 0&&t.push("EF",s.EF.toString()),s?.SETATTR&&t.push("SETATTR",JSON.stringify(s.SETATTR)),s?.M!==void 0&&t.push("M",s.M.toString())},transformReply:yje.transformBooleanReply}});var bje=E(Bte=>{"use strict";Object.defineProperty(Bte,"__esModule",{value:!0});Bte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VCARD"),t.pushKey(e)},transformReply:void 0}});var Eje=E(Mte=>{"use strict";Object.defineProperty(Mte,"__esModule",{value:!0});Mte.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VDIM"),t.pushKey(e)},transformReply:void 0}});var $te=E(Wte=>{"use strict";Object.defineProperty(Wte,"__esModule",{value:!0});var yur=Ie();Wte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VEMB"),t.pushKey(e),t.push(r)},transformReply:yur.transformDoubleArrayReply}});var Sje=E(FI=>{"use strict";var xur=FI&&FI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(FI,"__esModule",{value:!0});var _je=Ie(),bur=xur($te()),Eur={2:t=>({quantization:t[0],raw:t[1],l2Norm:_je.transformDoubleReply[2](t[2]),...t[3]!==void 0&&{quantizationRange:_je.transformDoubleReply[2](t[3])}}),3:t=>({quantization:t[0],raw:t[1],l2Norm:t[2],quantizationRange:t[3]})};FI.default={IS_READ_ONLY:!0,parseCommand(t,e,r){bur.default.parseCommand(t,e,r),t.push("RAW")},transformReply:Eur}});var vje=E(Fte=>{"use strict";Object.defineProperty(Fte,"__esModule",{value:!0});var _ur=Ie();Fte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VGETATTR"),t.pushKey(e),t.push(r)},transformReply:_ur.transformRedisJsonNullReply}});var Cje=E(Ute=>{"use strict";Object.defineProperty(Ute,"__esModule",{value:!0});Ute.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("VINFO"),t.pushKey(e)},transformReply:{2:t=>{let e=Object.create(null);for(let r=0;r{"use strict";Object.defineProperty(qte,"__esModule",{value:!0});qte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VLINKS"),t.pushKey(e),t.push(r)},transformReply:void 0}});var Tje=E(UI=>{"use strict";var Sur=UI&&UI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(UI,"__esModule",{value:!0});var vur=Ie(),Ije=Sur(jte());function Cur(t){let e=[];for(let r of t){let n=Object.create(null);for(let s=0;s{"use strict";Object.defineProperty(Hte,"__esModule",{value:!0});Hte.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("VRANDMEMBER"),t.pushKey(e),r!==void 0&&t.push(r.toString())},transformReply:void 0}});var Rje=E(Qte=>{"use strict";Object.defineProperty(Qte,"__esModule",{value:!0});Qte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("VRANGE"),t.pushKey(e),t.push(r,n),s!==void 0&&t.push(s.toString())},transformReply:void 0}});var Nje=E(Gte=>{"use strict";Object.defineProperty(Gte,"__esModule",{value:!0});var Iur=Ie();Gte.default={parseCommand(t,e,r){t.push("VREM"),t.pushKey(e),t.push(r)},transformReply:Iur.transformBooleanReply}});var Oje=E(Vte=>{"use strict";Object.defineProperty(Vte,"__esModule",{value:!0});var Tur=Ie();Vte.default={parseCommand(t,e,r,n){t.push("VSETATTR"),t.pushKey(e),t.push(r),typeof n=="object"&&n!==null?t.push(JSON.stringify(n)):t.push(n)},transformReply:Tur.transformBooleanReply}});var Kte=E(zte=>{"use strict";Object.defineProperty(zte,"__esModule",{value:!0});var wur=Ie();zte.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("VSIM"),t.pushKey(e),Array.isArray(r)){t.push("VALUES",r.length.toString());for(let s of r)t.push((0,wur.transformDoubleArgument)(s))}else t.push("ELE",r);n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.EPSILON!==void 0&&t.push("EPSILON",n.EPSILON.toString()),n?.EF!==void 0&&t.push("EF",n.EF.toString()),n?.FILTER&&t.push("FILTER",n.FILTER),n?.["FILTER-EF"]!==void 0&&t.push("FILTER-EF",n["FILTER-EF"].toString()),n?.TRUTH&&t.push("TRUTH"),n?.NOTHREAD&&t.push("NOTHREAD")},transformReply:void 0}});var Dje=E(qI=>{"use strict";var Rur=qI&&qI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(qI,"__esModule",{value:!0});var Nur=Ie(),Pje=Rur(Kte());qI.default={IS_READ_ONLY:Pje.default.IS_READ_ONLY,parseCommand(...t){let e=t[0];Pje.default.parseCommand(...t),e.push("WITHSCORES")},transformReply:{2:t=>{let e=t,r={};for(let n=0;n{"use strict";Object.defineProperty(Yte,"__esModule",{value:!0});var Our=Ie(),Pur=t=>t;Yte.default={CACHEABLE:!1,IS_READ_ONLY:!0,parseCommand(t,...e){let r=["LATENCY","HISTOGRAM"];e.length!==0&&r.push(...e),t.push(...r)},transformReply:{2:t=>{let e={};if(t.length===0)return e;for(let r=1;r{"use strict";var Dur=Qn&&Qn.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),kur=Qn&&Qn.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),jI=Qn&&Qn.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Dur(e,t,r);return kur(e,t),e},$=Qn&&Qn.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Qn,"__esModule",{value:!0});Qn.NON_STICKY_COMMANDS=Qn.REDIS_FLUSH_MODES=Qn.COMMAND_LIST_FILTER_BY=Qn.CLUSTER_SLOT_STATES=Qn.FAILOVER_MODES=Qn.CLIENT_KILL_FILTERS=void 0;var Lje=$(cWe()),Bje=$(uWe()),Mje=$(lWe()),Wje=$(dWe()),$je=$(fWe()),Fje=$(pWe()),Uje=$(mWe()),qje=$(_We()),jje=$(HK()),Hje=$(SWe()),Qje=$(vWe()),Gje=$(CWe()),Vje=$(IWe()),zje=$(TWe()),Kje=$(YK()),Yje=$(wWe()),Jje=$(RWe()),Xje=$(NWe()),Zje=$(OWe()),eHe=$(PWe()),tHe=$(DWe()),rHe=$(kWe()),nHe=$(LWe()),sHe=$(BWe()),iHe=$($We()),aHe=$(cY()),oHe=$(FWe()),cHe=$(UWe()),uHe=$(QWe()),lHe=$(fY()),dHe=$(VWe()),fHe=$(zWe()),pHe=$(KWe()),mHe=$(YWe()),hHe=$(JWe()),gHe=$(yY()),Jte=jI(ZWe());Object.defineProperty(Qn,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return Jte.CLIENT_KILL_FILTERS}});var AHe=$(e$e()),yHe=$(t$e()),xHe=$(r$e()),bHe=$(n$e()),EHe=$(s$e()),_He=$(i$e()),SHe=$(a$e()),vHe=$(o$e()),CHe=$(c$e()),IHe=$(u$e()),THe=$(l$e()),wHe=$(d$e()),RHe=$(f$e()),NHe=$(p$e()),OHe=$(m$e()),Xte=jI(h$e());Object.defineProperty(Qn,"FAILOVER_MODES",{enumerable:!0,get:function(){return Xte.FAILOVER_MODES}});var PHe=$(g$e()),DHe=$(A$e()),kHe=$(y$e()),LHe=$(x$e()),BHe=$(b$e()),MHe=$(E$e()),WHe=$(_$e()),$He=$(S$e()),FHe=$(v$e()),UHe=$(C$e()),qHe=$(I$e()),jHe=$(T$e()),HHe=$(w$e()),QHe=$(R$e()),GHe=$(N$e()),Zte=jI(O$e());Object.defineProperty(Qn,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return Zte.CLUSTER_SLOT_STATES}});var VHe=$(D$e()),zHe=$(k$e()),KHe=$(L$e()),YHe=$(B$e()),JHe=$(M$e()),ere=jI(W$e());Object.defineProperty(Qn,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return ere.COMMAND_LIST_FILTER_BY}});var XHe=$($$e()),ZHe=$(F$e()),eQe=$(U$e()),tQe=$(q$e()),rQe=$(j$e()),nQe=$(H$e()),sQe=$(Q$e()),iQe=$(G$e()),aQe=$(V$e()),oQe=$(z$e()),cQe=$(K$e()),uQe=$(Y$e()),lQe=$(J$e()),dQe=$(X$e()),fQe=$(tFe()),pQe=$(cg()),mQe=$(nFe()),hQe=$(iFe()),gQe=$(oFe()),AQe=$(cFe()),yQe=$(uFe()),xQe=$(lFe()),bQe=$(AFe()),EQe=$(xFe()),_Qe=$(EFe()),SQe=$(iB()),vQe=$(ZC()),CQe=$(IFe()),IQe=$(wFe()),TQe=$(NFe()),wQe=$(gJ()),RQe=$(nI()),NQe=$(eI()),OQe=$(lg()),PQe=$(OFe()),DQe=$(PFe()),kQe=$(DFe()),LQe=$(kFe()),BQe=$(LFe()),MQe=$(BFe()),WQe=$(MFe()),$Qe=$(WFe()),FQe=$($Fe()),UQe=$(FFe()),qQe=$(UFe()),tre=jI(qFe());Object.defineProperty(Qn,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return tre.REDIS_FLUSH_MODES}});var jQe=$(jFe()),HQe=$(QFe()),QQe=$(VFe()),GQe=$(zFe()),VQe=$(KFe()),zQe=$(YFe()),KQe=$(JFe()),YQe=$(XFe()),JQe=$(LJ()),XQe=$(ZFe()),ZQe=$(eUe()),eGe=$(tUe()),tGe=$(rUe()),rGe=$(qJ()),nGe=$(nUe()),sGe=$(sUe()),iGe=$(iUe()),aGe=$(aUe()),oGe=$(oUe()),cGe=$(cUe()),uGe=$(uUe()),lGe=$(lUe()),dGe=$(dUe()),fGe=$(fUe()),pGe=$(pUe()),mGe=$(mUe()),hGe=$(hUe()),gGe=$(gUe()),AGe=$(AUe()),yGe=$(yUe()),xGe=$(xUe()),bGe=$(bUe()),EGe=$(EUe()),_Ge=$(_Ue()),SGe=$(SUe()),vGe=$(uX()),CGe=$(CUe()),IGe=$(TUe()),TGe=$(RUe()),wGe=$(NUe()),RGe=$(OUe()),NGe=$(PUe()),OGe=$(DUe()),PGe=$(LUe()),DGe=$(BUe()),kGe=$(MUe()),LGe=$(WUe()),BGe=$($Ue()),MGe=$(FUe()),WGe=$(UUe()),$Ge=$(qUe()),FGe=$(jUe()),UGe=$(HUe()),qGe=$(QUe()),jGe=$(IX()),HGe=$(GUe()),QGe=$(VUe()),GGe=$(zUe()),VGe=$(JUe()),zGe=$(NX()),KGe=$(ZUe()),YGe=$(aB()),JGe=$(e7e()),XGe=$(t7e()),ZGe=$(r7e()),eVe=$(n7e()),tVe=$(aY()),Lur=$(s7e()),rVe=$(i7e()),nVe=$(MX()),sVe=$(a7e()),iVe=$($X()),aVe=$(o7e()),oVe=$(c7e()),cVe=$(u7e()),uVe=$(l7e()),lVe=$(d7e()),dVe=$(f7e()),fVe=$(p7e()),pVe=$(m7e()),mVe=$(h7e()),hVe=$(g7e()),gVe=$(A7e()),AVe=$(y7e()),yVe=$(x7e()),xVe=$(b7e()),bVe=$(E7e()),EVe=$(_7e()),_Ve=$(S7e()),SVe=$(sZ()),vVe=$(T7e()),CVe=$(w7e()),IVe=$(R7e()),TVe=$(N7e()),wVe=$(O7e()),RVe=$(P7e()),NVe=$(D7e()),OVe=$(k7e()),PVe=$(L7e()),DVe=$(B7e()),kVe=$(M7e()),LVe=$(W7e()),BVe=$($7e()),MVe=$(F7e()),WVe=$(U7e()),$Ve=$(q7e()),FVe=$(j7e()),UVe=$(H7e()),qVe=$(Q7e()),jVe=$(G7e()),HVe=$(V7e()),QVe=$(z7e()),GVe=$(K7e()),VVe=$(Y7e()),zVe=$(J7e()),KVe=$(X7e()),YVe=$(Z7e()),JVe=$(e9e()),XVe=$(t9e()),ZVe=$(r9e()),eze=$(n9e()),tze=$(s9e()),rze=$(i9e()),nze=$(a9e()),sze=$(o9e()),ize=$(c9e()),aze=$(cI()),oze=$(u9e()),cze=$(l9e()),uze=$(d9e()),lze=$(f9e()),dze=$(p9e()),fze=$(m9e()),pze=$(h9e()),mze=$(g9e()),hze=$(A9e()),gze=$(y9e()),Aze=$(x9e()),yze=$(b9e()),xze=$(E9e()),bze=$(_9e()),Eze=$(S9e()),_ze=$(v9e()),Sze=$(C9e()),vze=$(I9e()),Cze=$(T9e()),Ize=$(w9e()),Tze=$(O9e()),wze=$(P9e()),Rze=$(oB()),Nze=$(D9e()),Oze=$(k9e()),Pze=$(L9e()),Dze=$(M9e()),kze=$(lee()),Lze=$(W9e()),Bze=$($9e()),Mze=$(F9e()),Wze=$(U9e()),$ze=$(q9e()),Fze=$(j9e()),Uze=$(H9e()),qze=$(Q9e()),jze=$(G9e()),Hze=$(V9e()),Qze=$(z9e()),Gze=$(K9e()),Vze=$(Y9e()),zze=$(J9e()),Kze=$(Z9e()),Yze=$(Cee()),Jze=$(tqe()),Xze=$(wee()),Zze=$(nqe()),eKe=$(Nee()),tKe=$(sqe()),rKe=$(iqe()),nKe=$(aqe()),sKe=$(oqe()),iKe=$(cqe()),aKe=$(uqe()),oKe=$(lqe()),cKe=$(dqe()),uKe=$(fqe()),lKe=$(pqe()),dKe=$(hqe()),fKe=$(gqe()),pKe=$(Aqe()),mKe=$(yqe()),hKe=$(Qee()),gKe=$(Gee()),AKe=$(Eqe()),yKe=$(_qe()),xKe=$(Sqe()),bKe=$(vqe()),EKe=$(wqe()),_Ke=$(Yee()),SKe=$(Rqe()),vKe=$(Oqe()),CKe=$(Dqe()),IKe=$(tte()),TKe=$(kqe()),wKe=$(Bqe()),RKe=$($qe()),NKe=$(uB()),OKe=$(Fqe()),PKe=$(Uqe()),DKe=$(qqe()),kKe=$(lY()),LKe=$(jqe()),BKe=$(Hqe()),MKe=$(lte()),WKe=$(Qqe()),$Ke=$(Gqe()),FKe=$(Kqe()),UKe=$(mte()),qKe=$(pte()),jKe=$(Xqe()),HKe=$(hte()),QKe=$(eje()),GKe=$(rje()),VKe=$(xte()),zKe=$(sje()),KKe=$(aje()),YKe=$(oje()),JKe=$(vte()),XKe=$(cje()),ZKe=$(lje()),eYe=$(dje()),tYe=$(fje()),rYe=$(pje()),nYe=$(mje()),sYe=$(gje()),iYe=$(Dte()),aYe=$(Aje()),oYe=$(xje()),cYe=$(bje()),uYe=$(Eje()),lYe=$($te()),dYe=$(Sje()),fYe=$(vje()),pYe=$(Cje()),mYe=$(jte()),hYe=$(Tje()),gYe=$(wje()),AYe=$(Rje()),yYe=$(Nje()),xYe=$(Oje()),bYe=$(Kte()),EYe=$(Dje()),_Ye=$(kje());Qn.default={ACL_CAT:Lje.default,aclCat:Lje.default,ACL_DELUSER:Bje.default,aclDelUser:Bje.default,ACL_DRYRUN:Mje.default,aclDryRun:Mje.default,ACL_GENPASS:Wje.default,aclGenPass:Wje.default,ACL_GETUSER:$je.default,aclGetUser:$je.default,ACL_LIST:Fje.default,aclList:Fje.default,ACL_LOAD:Uje.default,aclLoad:Uje.default,ACL_LOG_RESET:qje.default,aclLogReset:qje.default,ACL_LOG:jje.default,aclLog:jje.default,ACL_SAVE:Hje.default,aclSave:Hje.default,ACL_SETUSER:Qje.default,aclSetUser:Qje.default,ACL_USERS:Gje.default,aclUsers:Gje.default,ACL_WHOAMI:Vje.default,aclWhoAmI:Vje.default,APPEND:zje.default,append:zje.default,ASKING:Kje.default,asking:Kje.default,AUTH:Yje.default,auth:Yje.default,BGREWRITEAOF:Jje.default,bgRewriteAof:Jje.default,BGSAVE:Xje.default,bgSave:Xje.default,BITCOUNT:Zje.default,bitCount:Zje.default,BITFIELD_RO:eHe.default,bitFieldRo:eHe.default,BITFIELD:tHe.default,bitField:tHe.default,BITOP:rHe.default,bitOp:rHe.default,BITPOS:nHe.default,bitPos:nHe.default,BLMOVE:sHe.default,blMove:sHe.default,BLMPOP:iHe.default,blmPop:iHe.default,BLPOP:aHe.default,blPop:aHe.default,BRPOP:oHe.default,brPop:oHe.default,BRPOPLPUSH:cHe.default,brPopLPush:cHe.default,BZMPOP:uHe.default,bzmPop:uHe.default,BZPOPMAX:lHe.default,bzPopMax:lHe.default,BZPOPMIN:dHe.default,bzPopMin:dHe.default,CLIENT_CACHING:fHe.default,clientCaching:fHe.default,CLIENT_GETNAME:pHe.default,clientGetName:pHe.default,CLIENT_GETREDIR:mHe.default,clientGetRedir:mHe.default,CLIENT_ID:hHe.default,clientId:hHe.default,CLIENT_INFO:gHe.default,clientInfo:gHe.default,CLIENT_KILL:Jte.default,clientKill:Jte.default,CLIENT_LIST:AHe.default,clientList:AHe.default,"CLIENT_NO-EVICT":yHe.default,clientNoEvict:yHe.default,"CLIENT_NO-TOUCH":xHe.default,clientNoTouch:xHe.default,CLIENT_PAUSE:bHe.default,clientPause:bHe.default,CLIENT_SETNAME:EHe.default,clientSetName:EHe.default,CLIENT_TRACKING:_He.default,clientTracking:_He.default,CLIENT_TRACKINGINFO:SHe.default,clientTrackingInfo:SHe.default,CLIENT_UNPAUSE:vHe.default,clientUnpause:vHe.default,CLUSTER_ADDSLOTS:CHe.default,clusterAddSlots:CHe.default,CLUSTER_ADDSLOTSRANGE:IHe.default,clusterAddSlotsRange:IHe.default,CLUSTER_BUMPEPOCH:THe.default,clusterBumpEpoch:THe.default,"CLUSTER_COUNT-FAILURE-REPORTS":wHe.default,clusterCountFailureReports:wHe.default,CLUSTER_COUNTKEYSINSLOT:RHe.default,clusterCountKeysInSlot:RHe.default,CLUSTER_DELSLOTS:NHe.default,clusterDelSlots:NHe.default,CLUSTER_DELSLOTSRANGE:OHe.default,clusterDelSlotsRange:OHe.default,CLUSTER_FAILOVER:Xte.default,clusterFailover:Xte.default,CLUSTER_FLUSHSLOTS:PHe.default,clusterFlushSlots:PHe.default,CLUSTER_FORGET:DHe.default,clusterForget:DHe.default,CLUSTER_GETKEYSINSLOT:kHe.default,clusterGetKeysInSlot:kHe.default,CLUSTER_INFO:LHe.default,clusterInfo:LHe.default,CLUSTER_KEYSLOT:BHe.default,clusterKeySlot:BHe.default,CLUSTER_LINKS:MHe.default,clusterLinks:MHe.default,CLUSTER_MEET:WHe.default,clusterMeet:WHe.default,CLUSTER_MYID:$He.default,clusterMyId:$He.default,CLUSTER_MYSHARDID:FHe.default,clusterMyShardId:FHe.default,CLUSTER_NODES:UHe.default,clusterNodes:UHe.default,CLUSTER_REPLICAS:qHe.default,clusterReplicas:qHe.default,CLUSTER_REPLICATE:jHe.default,clusterReplicate:jHe.default,CLUSTER_RESET:HHe.default,clusterReset:HHe.default,CLUSTER_SAVECONFIG:QHe.default,clusterSaveConfig:QHe.default,"CLUSTER_SET-CONFIG-EPOCH":GHe.default,clusterSetConfigEpoch:GHe.default,CLUSTER_SETSLOT:Zte.default,clusterSetSlot:Zte.default,CLUSTER_SLOTS:VHe.default,clusterSlots:VHe.default,COMMAND_COUNT:zHe.default,commandCount:zHe.default,COMMAND_GETKEYS:KHe.default,commandGetKeys:KHe.default,COMMAND_GETKEYSANDFLAGS:YHe.default,commandGetKeysAndFlags:YHe.default,COMMAND_INFO:JHe.default,commandInfo:JHe.default,COMMAND_LIST:ere.default,commandList:ere.default,COMMAND:XHe.default,command:XHe.default,CONFIG_GET:ZHe.default,configGet:ZHe.default,CONFIG_RESETASTAT:eQe.default,configResetStat:eQe.default,CONFIG_REWRITE:tQe.default,configRewrite:tQe.default,CONFIG_SET:rQe.default,configSet:rQe.default,COPY:nQe.default,copy:nQe.default,DBSIZE:sQe.default,dbSize:sQe.default,DECR:iQe.default,decr:iQe.default,DECRBY:aQe.default,decrBy:aQe.default,DEL:oQe.default,del:oQe.default,DELEX:cQe.default,delEx:cQe.default,DIGEST:uQe.default,digest:uQe.default,DUMP:lQe.default,dump:lQe.default,ECHO:dQe.default,echo:dQe.default,EVAL_RO:fQe.default,evalRo:fQe.default,EVAL:pQe.default,eval:pQe.default,EVALSHA_RO:mQe.default,evalShaRo:mQe.default,EVALSHA:hQe.default,evalSha:hQe.default,EXISTS:$Qe.default,exists:$Qe.default,EXPIRE:FQe.default,expire:FQe.default,EXPIREAT:UQe.default,expireAt:UQe.default,EXPIRETIME:qQe.default,expireTime:qQe.default,FLUSHALL:tre.default,flushAll:tre.default,FLUSHDB:jQe.default,flushDb:jQe.default,FCALL:HQe.default,fCall:HQe.default,FCALL_RO:QQe.default,fCallRo:QQe.default,FUNCTION_DELETE:GQe.default,functionDelete:GQe.default,FUNCTION_DUMP:VQe.default,functionDump:VQe.default,FUNCTION_FLUSH:zQe.default,functionFlush:zQe.default,FUNCTION_KILL:KQe.default,functionKill:KQe.default,FUNCTION_LIST_WITHCODE:YQe.default,functionListWithCode:YQe.default,FUNCTION_LIST:JQe.default,functionList:JQe.default,FUNCTION_LOAD:XQe.default,functionLoad:XQe.default,FUNCTION_RESTORE:ZQe.default,functionRestore:ZQe.default,FUNCTION_STATS:eGe.default,functionStats:eGe.default,GEOADD:gQe.default,geoAdd:gQe.default,GEODIST:AQe.default,geoDist:AQe.default,GEOHASH:yQe.default,geoHash:yQe.default,GEOPOS:xQe.default,geoPos:xQe.default,GEORADIUS_RO_WITH:bQe.default,geoRadiusRoWith:bQe.default,GEORADIUS_RO:EQe.default,geoRadiusRo:EQe.default,GEORADIUS_STORE:_Qe.default,geoRadiusStore:_Qe.default,GEORADIUS_WITH:SQe.default,geoRadiusWith:SQe.default,GEORADIUS:vQe.default,geoRadius:vQe.default,GEORADIUSBYMEMBER_RO_WITH:CQe.default,geoRadiusByMemberRoWith:CQe.default,GEORADIUSBYMEMBER_RO:IQe.default,geoRadiusByMemberRo:IQe.default,GEORADIUSBYMEMBER_STORE:TQe.default,geoRadiusByMemberStore:TQe.default,GEORADIUSBYMEMBER_WITH:wQe.default,geoRadiusByMemberWith:wQe.default,GEORADIUSBYMEMBER:RQe.default,geoRadiusByMember:RQe.default,GEOSEARCH_WITH:NQe.default,geoSearchWith:NQe.default,GEOSEARCH:OQe.default,geoSearch:OQe.default,GEOSEARCHSTORE:PQe.default,geoSearchStore:PQe.default,GET:DQe.default,get:DQe.default,GETBIT:kQe.default,getBit:kQe.default,GETDEL:LQe.default,getDel:LQe.default,GETEX:BQe.default,getEx:BQe.default,GETRANGE:MQe.default,getRange:MQe.default,GETSET:WQe.default,getSet:WQe.default,HDEL:tGe.default,hDel:tGe.default,HELLO:rGe.default,hello:rGe.default,HEXISTS:nGe.default,hExists:nGe.default,HEXPIRE:sGe.default,hExpire:sGe.default,HEXPIREAT:iGe.default,hExpireAt:iGe.default,HEXPIRETIME:aGe.default,hExpireTime:aGe.default,HGET:oGe.default,hGet:oGe.default,HGETALL:cGe.default,hGetAll:cGe.default,HGETDEL:uGe.default,hGetDel:uGe.default,HGETEX:lGe.default,hGetEx:lGe.default,HINCRBY:dGe.default,hIncrBy:dGe.default,HINCRBYFLOAT:fGe.default,hIncrByFloat:fGe.default,HKEYS:pGe.default,hKeys:pGe.default,HLEN:mGe.default,hLen:mGe.default,HMGET:hGe.default,hmGet:hGe.default,HPERSIST:gGe.default,hPersist:gGe.default,HPEXPIRE:AGe.default,hpExpire:AGe.default,HPEXPIREAT:yGe.default,hpExpireAt:yGe.default,HPEXPIRETIME:xGe.default,hpExpireTime:xGe.default,HPTTL:bGe.default,hpTTL:bGe.default,HRANDFIELD_COUNT_WITHVALUES:EGe.default,hRandFieldCountWithValues:EGe.default,HRANDFIELD_COUNT:_Ge.default,hRandFieldCount:_Ge.default,HRANDFIELD:SGe.default,hRandField:SGe.default,HSCAN:vGe.default,hScan:vGe.default,HSCAN_NOVALUES:CGe.default,hScanNoValues:CGe.default,HSET:IGe.default,hSet:IGe.default,HSETEX:TGe.default,hSetEx:TGe.default,HSETNX:wGe.default,hSetNX:wGe.default,HSTRLEN:RGe.default,hStrLen:RGe.default,HTTL:NGe.default,hTTL:NGe.default,HVALS:OGe.default,hVals:OGe.default,HOTKEYS_GET:PGe.default,hotkeysGet:PGe.default,HOTKEYS_RESET:DGe.default,hotkeysReset:DGe.default,HOTKEYS_START:kGe.default,hotkeysStart:kGe.default,HOTKEYS_STOP:LGe.default,hotkeysStop:LGe.default,INCR:BGe.default,incr:BGe.default,INCRBY:MGe.default,incrBy:MGe.default,INCRBYFLOAT:WGe.default,incrByFloat:WGe.default,INFO:$Ge.default,info:$Ge.default,KEYS:FGe.default,keys:FGe.default,LASTSAVE:UGe.default,lastSave:UGe.default,LATENCY_DOCTOR:qGe.default,latencyDoctor:qGe.default,LATENCY_GRAPH:jGe.default,latencyGraph:jGe.default,LATENCY_HISTORY:HGe.default,latencyHistory:HGe.default,LATENCY_HISTOGRAM:_Ye.default,latencyHistogram:_Ye.default,LATENCY_LATEST:QGe.default,latencyLatest:QGe.default,LATENCY_RESET:GGe.default,latencyReset:GGe.default,LCS_IDX_WITHMATCHLEN:VGe.default,lcsIdxWithMatchLen:VGe.default,LCS_IDX:zGe.default,lcsIdx:zGe.default,LCS_LEN:KGe.default,lcsLen:KGe.default,LCS:YGe.default,lcs:YGe.default,LINDEX:JGe.default,lIndex:JGe.default,LINSERT:XGe.default,lInsert:XGe.default,LLEN:ZGe.default,lLen:ZGe.default,LMOVE:eVe.default,lMove:eVe.default,LMPOP:tVe.default,lmPop:tVe.default,LOLWUT:Lur.default,LPOP_COUNT:rVe.default,lPopCount:rVe.default,LPOP:nVe.default,lPop:nVe.default,LPOS_COUNT:sVe.default,lPosCount:sVe.default,LPOS:iVe.default,lPos:iVe.default,LPUSH:aVe.default,lPush:aVe.default,LPUSHX:oVe.default,lPushX:oVe.default,LRANGE:cVe.default,lRange:cVe.default,LREM:uVe.default,lRem:uVe.default,LSET:lVe.default,lSet:lVe.default,LTRIM:dVe.default,lTrim:dVe.default,MEMORY_DOCTOR:fVe.default,memoryDoctor:fVe.default,"MEMORY_MALLOC-STATS":pVe.default,memoryMallocStats:pVe.default,MEMORY_PURGE:mVe.default,memoryPurge:mVe.default,MEMORY_STATS:hVe.default,memoryStats:hVe.default,MEMORY_USAGE:gVe.default,memoryUsage:gVe.default,MGET:AVe.default,mGet:AVe.default,MIGRATE:yVe.default,migrate:yVe.default,MODULE_LIST:xVe.default,moduleList:xVe.default,MODULE_LOAD:bVe.default,moduleLoad:bVe.default,MODULE_UNLOAD:EVe.default,moduleUnload:EVe.default,MOVE:_Ve.default,move:_Ve.default,MSET:SVe.default,mSet:SVe.default,MSETEX:vVe.default,mSetEx:vVe.default,MSETNX:CVe.default,mSetNX:CVe.default,OBJECT_ENCODING:IVe.default,objectEncoding:IVe.default,OBJECT_FREQ:TVe.default,objectFreq:TVe.default,OBJECT_IDLETIME:wVe.default,objectIdleTime:wVe.default,OBJECT_REFCOUNT:RVe.default,objectRefCount:RVe.default,PERSIST:NVe.default,persist:NVe.default,PEXPIRE:OVe.default,pExpire:OVe.default,PEXPIREAT:PVe.default,pExpireAt:PVe.default,PEXPIRETIME:DVe.default,pExpireTime:DVe.default,PFADD:kVe.default,pfAdd:kVe.default,PFCOUNT:LVe.default,pfCount:LVe.default,PFMERGE:BVe.default,pfMerge:BVe.default,PING:MVe.default,ping:MVe.default,PSETEX:WVe.default,pSetEx:WVe.default,PTTL:$Ve.default,pTTL:$Ve.default,PUBLISH:FVe.default,publish:FVe.default,PUBSUB_CHANNELS:UVe.default,pubSubChannels:UVe.default,PUBSUB_NUMPAT:qVe.default,pubSubNumPat:qVe.default,PUBSUB_NUMSUB:jVe.default,pubSubNumSub:jVe.default,PUBSUB_SHARDNUMSUB:HVe.default,pubSubShardNumSub:HVe.default,PUBSUB_SHARDCHANNELS:QVe.default,pubSubShardChannels:QVe.default,RANDOMKEY:GVe.default,randomKey:GVe.default,READONLY:VVe.default,readonly:VVe.default,RENAME:zVe.default,rename:zVe.default,RENAMENX:KVe.default,renameNX:KVe.default,REPLICAOF:YVe.default,replicaOf:YVe.default,"RESTORE-ASKING":JVe.default,restoreAsking:JVe.default,RESTORE:XVe.default,restore:XVe.default,RPOP_COUNT:eze.default,rPopCount:eze.default,ROLE:ZVe.default,role:ZVe.default,RPOP:tze.default,rPop:tze.default,RPOPLPUSH:rze.default,rPopLPush:rze.default,RPUSH:nze.default,rPush:nze.default,RPUSHX:sze.default,rPushX:sze.default,SADD:ize.default,sAdd:ize.default,SCAN:aze.default,scan:aze.default,SCARD:oze.default,sCard:oze.default,SCRIPT_DEBUG:cze.default,scriptDebug:cze.default,SCRIPT_EXISTS:uze.default,scriptExists:uze.default,SCRIPT_FLUSH:lze.default,scriptFlush:lze.default,SCRIPT_KILL:dze.default,scriptKill:dze.default,SCRIPT_LOAD:fze.default,scriptLoad:fze.default,SDIFF:pze.default,sDiff:pze.default,SDIFFSTORE:mze.default,sDiffStore:mze.default,SET:hze.default,set:hze.default,SETBIT:gze.default,setBit:gze.default,SETEX:Aze.default,setEx:Aze.default,SETNX:yze.default,setNX:yze.default,SETRANGE:xze.default,setRange:xze.default,SINTER:bze.default,sInter:bze.default,SINTERCARD:Eze.default,sInterCard:Eze.default,SINTERSTORE:_ze.default,sInterStore:_ze.default,SISMEMBER:Sze.default,sIsMember:Sze.default,SMEMBERS:vze.default,sMembers:vze.default,SMISMEMBER:Cze.default,smIsMember:Cze.default,SMOVE:Ize.default,sMove:Ize.default,SORT_RO:Tze.default,sortRo:Tze.default,SORT_STORE:wze.default,sortStore:wze.default,SORT:Rze.default,sort:Rze.default,SPOP_COUNT:Nze.default,sPopCount:Nze.default,SPOP:Oze.default,sPop:Oze.default,SPUBLISH:Pze.default,sPublish:Pze.default,SRANDMEMBER_COUNT:Dze.default,sRandMemberCount:Dze.default,SRANDMEMBER:kze.default,sRandMember:kze.default,SREM:Lze.default,sRem:Lze.default,SSCAN:Bze.default,sScan:Bze.default,STRLEN:Mze.default,strLen:Mze.default,SUNION:Wze.default,sUnion:Wze.default,SUNIONSTORE:$ze.default,sUnionStore:$ze.default,SWAPDB:Fze.default,swapDb:Fze.default,TIME:Uze.default,time:Uze.default,TOUCH:qze.default,touch:qze.default,TTL:jze.default,ttl:jze.default,TYPE:Hze.default,type:Hze.default,UNLINK:Qze.default,unlink:Qze.default,WAIT:Gze.default,wait:Gze.default,XACK:Vze.default,xAck:Vze.default,XACKDEL:zze.default,xAckDel:zze.default,XADD_NOMKSTREAM:Kze.default,xAddNoMkStream:Kze.default,XADD:Yze.default,xAdd:Yze.default,XAUTOCLAIM_JUSTID:Jze.default,xAutoClaimJustId:Jze.default,XAUTOCLAIM:Xze.default,xAutoClaim:Xze.default,XCLAIM_JUSTID:Zze.default,xClaimJustId:Zze.default,XCLAIM:eKe.default,xClaim:eKe.default,XCFGSET:tKe.default,xCfgSet:tKe.default,XDEL:rKe.default,xDel:rKe.default,XDELEX:nKe.default,xDelEx:nKe.default,XGROUP_CREATE:sKe.default,xGroupCreate:sKe.default,XGROUP_CREATECONSUMER:iKe.default,xGroupCreateConsumer:iKe.default,XGROUP_DELCONSUMER:aKe.default,xGroupDelConsumer:aKe.default,XGROUP_DESTROY:oKe.default,xGroupDestroy:oKe.default,XGROUP_SETID:cKe.default,xGroupSetId:cKe.default,XINFO_CONSUMERS:uKe.default,xInfoConsumers:uKe.default,XINFO_GROUPS:lKe.default,xInfoGroups:lKe.default,XINFO_STREAM:dKe.default,xInfoStream:dKe.default,XLEN:fKe.default,xLen:fKe.default,XPENDING_RANGE:pKe.default,xPendingRange:pKe.default,XPENDING:mKe.default,xPending:mKe.default,XRANGE:hKe.default,xRange:hKe.default,XREAD:gKe.default,xRead:gKe.default,XREADGROUP:AKe.default,xReadGroup:AKe.default,XREVRANGE:yKe.default,xRevRange:yKe.default,XSETID:xKe.default,xSetId:xKe.default,XTRIM:bKe.default,xTrim:bKe.default,ZADD_INCR:EKe.default,zAddIncr:EKe.default,ZADD:_Ke.default,zAdd:_Ke.default,ZCARD:SKe.default,zCard:SKe.default,ZCOUNT:vKe.default,zCount:vKe.default,ZDIFF_WITHSCORES:CKe.default,zDiffWithScores:CKe.default,ZDIFF:IKe.default,zDiff:IKe.default,ZDIFFSTORE:TKe.default,zDiffStore:TKe.default,ZINCRBY:wKe.default,zIncrBy:wKe.default,ZINTER_WITHSCORES:RKe.default,zInterWithScores:RKe.default,ZINTER:NKe.default,zInter:NKe.default,ZINTERCARD:OKe.default,zInterCard:OKe.default,ZINTERSTORE:PKe.default,zInterStore:PKe.default,ZLEXCOUNT:DKe.default,zLexCount:DKe.default,ZMPOP:kKe.default,zmPop:kKe.default,ZMSCORE:LKe.default,zmScore:LKe.default,ZPOPMAX_COUNT:BKe.default,zPopMaxCount:BKe.default,ZPOPMAX:MKe.default,zPopMax:MKe.default,ZPOPMIN_COUNT:WKe.default,zPopMinCount:WKe.default,ZPOPMIN:$Ke.default,zPopMin:$Ke.default,ZRANDMEMBER_COUNT_WITHSCORES:FKe.default,zRandMemberCountWithScores:FKe.default,ZRANDMEMBER_COUNT:UKe.default,zRandMemberCount:UKe.default,ZRANDMEMBER:qKe.default,zRandMember:qKe.default,ZRANGE_WITHSCORES:jKe.default,zRangeWithScores:jKe.default,ZRANGE:HKe.default,zRange:HKe.default,ZRANGEBYLEX:QKe.default,zRangeByLex:QKe.default,ZRANGEBYSCORE_WITHSCORES:GKe.default,zRangeByScoreWithScores:GKe.default,ZRANGEBYSCORE:VKe.default,zRangeByScore:VKe.default,ZRANGESTORE:zKe.default,zRangeStore:zKe.default,ZRANK_WITHSCORE:YKe.default,zRankWithScore:YKe.default,ZRANK:JKe.default,zRank:JKe.default,ZREM:XKe.default,zRem:XKe.default,ZREMRANGEBYLEX:ZKe.default,zRemRangeByLex:ZKe.default,ZREMRANGEBYRANK:eYe.default,zRemRangeByRank:eYe.default,ZREMRANGEBYSCORE:KKe.default,zRemRangeByScore:KKe.default,ZREVRANK:tYe.default,zRevRank:tYe.default,ZSCAN:rYe.default,zScan:rYe.default,ZSCORE:nYe.default,zScore:nYe.default,ZUNION_WITHSCORES:sYe.default,zUnionWithScores:sYe.default,ZUNION:iYe.default,zUnion:iYe.default,ZUNIONSTORE:aYe.default,zUnionStore:aYe.default,VADD:oYe.default,vAdd:oYe.default,VCARD:cYe.default,vCard:cYe.default,VDIM:uYe.default,vDim:uYe.default,VEMB:lYe.default,vEmb:lYe.default,VEMB_RAW:dYe.default,vEmbRaw:dYe.default,VGETATTR:fYe.default,vGetAttr:fYe.default,VINFO:pYe.default,vInfo:pYe.default,VLINKS:mYe.default,vLinks:mYe.default,VLINKS_WITHSCORES:hYe.default,vLinksWithScores:hYe.default,VRANDMEMBER:gYe.default,vRandMember:gYe.default,VRANGE:AYe.default,vRange:AYe.default,VREM:yYe.default,vRem:yYe.default,VSETATTR:xYe.default,vSetAttr:xYe.default,VSIM:bYe.default,vSim:bYe.default,VSIM_WITHSCORES:EYe.default,vSimWithScores:EYe.default};var Bur=$(yu()),{HOTKEYS_GET:qJr,hotkeysGet:jJr,HOTKEYS_RESET:HJr,hotkeysReset:QJr,HOTKEYS_START:GJr,hotkeysStart:VJr,HOTKEYS_STOP:zJr,hotkeysStop:KJr,...Mur}=Bur.default;Qn.NON_STICKY_COMMANDS=Mur});var HI=E(or=>{"use strict";var SYe=or&&or.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},vYe;Object.defineProperty(or,"__esModule",{value:!0});or.emitDiagnostics=or.dbgMaintenance=or.MAINTENANCE_EVENTS=or.SMIGRATED_EVENT=void 0;var CYe=require("net"),Wur=require("dns/promises"),_b=SYe(require("node:assert")),$ur=require("node:timers/promises"),Fur=SYe(require("node:diagnostics_channel"));or.SMIGRATED_EVENT="__SMIGRATED";or.MAINTENANCE_EVENTS={PAUSE_WRITING:"pause-writing",RESUME_WRITING:"resume-writing",TIMEOUTS_UPDATE:"timeouts-update"};var q0={MOVING:"MOVING",MIGRATING:"MIGRATING",MIGRATED:"MIGRATED",FAILING_OVER:"FAILING_OVER",FAILED_OVER:"FAILED_OVER",SMIGRATING:"SMIGRATING",SMIGRATED:"SMIGRATED"},Uur=(...t)=>{if(process.env.REDIS_DEBUG_MAINTENANCE)return console.log(new Date().toISOString().slice(11,23),"[MNT]",...t)};or.dbgMaintenance=Uur;var qur=t=>{if(!process.env.REDIS_EMIT_DIAGNOSTICS)return;Fur.default.channel("redis.maintenance").publish(t)};or.emitDiagnostics=qur;var lB=class{#e;#t;#r=0;#n;static setupDefaultMaintOptions(e){e.maintNotifications===void 0&&(e.maintNotifications=e?.RESP===3?"auto":"disabled"),e.maintEndpointType===void 0&&(e.maintEndpointType="auto"),e.maintRelaxedSocketTimeout===void 0&&(e.maintRelaxedSocketTimeout=1e4),e.maintRelaxedCommandTimeout===void 0&&(e.maintRelaxedCommandTimeout=1e4)}static async getHandshakeCommand(e){if(e.maintNotifications==="disabled")return;let r=e.url?new URL(e.url).hostname:e.socket?.host;if(!r)return;let n=e.socket?.tls??!1;return{cmd:["CLIENT","MAINT_NOTIFICATIONS","ON","moving-endpoint-type",await Hur(n,r,e)],errorHandler:i=>{if((0,or.dbgMaintenance)("handshake failed:",i),e.maintNotifications==="enabled")throw i}}}constructor(e,r,n){this.#e=e,this.#t=n,this.#n=r,this.#e.addPushHandler(this.#a)}#a=e=>{if((0,or.dbgMaintenance)("ONPUSH:",e.map(String)),!Array.isArray(e)||!Object.values(q0).includes(String(e[0])))return!1;let r=String(e[0]);switch((0,or.emitDiagnostics)({type:r,timestamp:Date.now(),data:{push:e.map(String)}}),r){case q0.MOVING:{let n=e[2],s=e[3]?String(e[3]):null;return(0,or.dbgMaintenance)("Received MOVING:",n,s),this.#o(n,s),!0}case q0.MIGRATING:case q0.SMIGRATING:case q0.FAILING_OVER:return(0,or.dbgMaintenance)("Received MIGRATING|SMIGRATING|FAILING_OVER"),this.#s(),!0;case q0.MIGRATED:case q0.FAILED_OVER:return(0,or.dbgMaintenance)("Received MIGRATED|FAILED_OVER"),this.#i(),!0;case q0.SMIGRATED:return(0,or.dbgMaintenance)("Received SMIGRATED"),this.#c(e),this.#i(),!0}return!1};#o=async(e,r)=>{this.#s();let n,s;if(r===null){(0,_b.default)(this.#t.maintEndpointType==="none");let{host:u,port:l}=this.#l();n=u,s=l;let d=e*1e3/2;(0,or.dbgMaintenance)(`Wait for ${d}ms`),await(0,$ur.setTimeout)(d)}else{let u=r.split(":");n=u[0],s=Number(u[1])}(0,or.dbgMaintenance)("Pausing writing of new commands to old socket"),this.#n._pause(),(0,or.dbgMaintenance)("Creating new tmp client");let i=performance.now();if(this.#t.url){let u=new URL(this.#t.url);u.hostname=n,u.port=String(s),this.#t.url=u.toString()}else this.#t.socket={...this.#t.socket,host:n,port:s};let a=this.#n.duplicate();a.on("error",u=>{(0,or.dbgMaintenance)("[ERR]",u)}),(0,or.dbgMaintenance)(`Tmp client created in ${(performance.now()-i).toFixed(2)}ms`),(0,or.dbgMaintenance)(`Set timeout for tmp client to ${this.#t.maintRelaxedSocketTimeout}`),a._maintenanceUpdate({relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout}),(0,or.dbgMaintenance)(`Connecting tmp client: ${n}:${s}`),i=performance.now(),await a.connect(),(0,or.dbgMaintenance)(`Connected to tmp client in ${(performance.now()-i).toFixed(2)}ms`),(0,or.dbgMaintenance)("Wait for all in-flight commands to complete"),await this.#e.waitForInflightCommandsToComplete(),(0,or.dbgMaintenance)("In-flight commands completed"),(0,or.dbgMaintenance)("Swap client sockets...");let o=this.#n._ejectSocket(),c=a._ejectSocket();this.#n._insertSocket(c),a._insertSocket(o),a.destroy(),(0,or.dbgMaintenance)("Swap client sockets done."),(0,or.dbgMaintenance)("Resume writing"),this.#n._unpause(),this.#i()};#s=()=>{if(this.#r++,this.#r>1){(0,or.dbgMaintenance)("Timeout relaxation already done");return}let e={relaxedCommandTimeout:this.#t.maintRelaxedCommandTimeout,relaxedSocketTimeout:this.#t.maintRelaxedSocketTimeout};this.#n._maintenanceUpdate(e)};#i=()=>{if(this.#r=Math.max(this.#r-1,0),this.#r>0){(0,or.dbgMaintenance)("Not ready to unrelax timeouts yet");return}let e={relaxedCommandTimeout:void 0,relaxedSocketTimeout:void 0};this.#n._maintenanceUpdate(e)};#c=e=>{let r=vYe.parseSMigratedPush(e);(0,or.dbgMaintenance)("emit smigratedEvent",r),this.#n._handleSmigrated(r)};static parseSMigratedPush(e){let r=new Map;for(let[s,i,a]of e[2]){let o=String(s),[c,u]=String(i).split(":"),l=String(a).split(",").map(p=>{let m=p.indexOf("-");return m===-1?Number(p):[Number(p.substring(0,m)),Number(p.substring(m+1))]}),d=r.get(o)??[],f=d.find(p=>p.addr.host===c&&p.addr.port===Number(u));f?f.slots=f.slots.concat(l):d.push({addr:{host:c,port:Number(u)},slots:l}),r.set(o,d)}let n=[];for(let[s,i]of r.entries()){let[a,o]=s.split(":");n.push({source:{host:a,port:Number(o)},destinations:i})}return{seqId:e[1],entries:n}}#l(){(0,_b.default)(this.#t.socket!==void 0),(0,_b.default)("host"in this.#t.socket),(0,_b.default)(typeof this.#t.socket.host=="string");let e=this.#t.socket.host;(0,_b.default)(typeof this.#t.socket.port=="number");let r=this.#t.socket.port;return{host:e,port:r}}};vYe=lB;or.default=lB;function jur(t){let e=(0,CYe.isIP)(t);if(e===4){let r=t.split(".").map(Number);return r[0]===10||r[0]===172&&r[1]>=16&&r[1]<=31||r[0]===192&&r[1]===168}return e===6?t.startsWith("fc")||t.startsWith("fd")||t==="::1"||t.startsWith("fe80"):!1}async function Hur(t,e,r){if((0,_b.default)(r.maintEndpointType!==void 0),r.maintEndpointType!=="auto")return(0,or.dbgMaintenance)(`Determine endpoint type: ${r.maintEndpointType}`),r.maintEndpointType;let n=(0,CYe.isIP)(e)?e:(await(0,Wur.lookup)(e,{family:0})).address,s=jur(n),i;return t?i=s?"internal-fqdn":"external-fqdn":i=s?"internal-ip":"external-ip",(0,or.dbgMaintenance)(`Determine endpoint type: ${i}`),i}});var OYe=E(QI=>{"use strict";var NYe=QI&&QI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(QI,"__esModule",{value:!0});var IYe=require("node:events"),TYe=NYe(require("node:net")),Qur=NYe(require("node:tls")),Ll=Pl(),wYe=require("node:timers/promises"),RYe=HI(),rre=class extends IYe.EventEmitter{#e;#t;#r;#n;#a;#o;#s;#i=!1;get isOpen(){return this.#i}#c=!1;get isReady(){return this.#c}#l=!1;#h=0;get socketEpoch(){return this.#h}constructor(e,r){super(),this.#e=e,this.#t=r?.connectTimeout??5e3,this.#r=this.#p(r),this.#n=this.#d(r),this.#a=r?.socketTimeout}#p(e){let r=e?.reconnectStrategy;return r===!1||typeof r=="number"?()=>r:r?(n,s)=>{try{let i=r(n,s);if(i!==!1&&!(i instanceof Error)&&typeof i!="number")throw new TypeError(`Reconnect strategy should return \`false | Error | number\`, got ${i} instead`);return i}catch(i){return this.emit("error",i),this.defaultReconnectStrategy(n,i)}}:this.defaultReconnectStrategy}#d(e){if(e?.tls===!0){let n={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return Qur.default.connect(n)},event:"secureConnect"}}if(e&&"path"in e){let n={...e,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return TYe.default.createConnection(n)},event:"connect"}}let r={...e,port:e?.port??6379,noDelay:e?.noDelay??!0,keepAlive:e?.keepAlive??!0,keepAliveInitialDelay:e?.keepAliveInitialDelay??5e3,timeout:void 0,onread:void 0,readable:!0,writable:!0};return{create(){return TYe.default.createConnection(r)},event:"connect"}}#f(e,r){let n=this.#r(e,r);return n===!1?(this.#i=!1,this.emit("error",r),r):n instanceof Error?(this.#i=!1,this.emit("error",r),new Ll.ReconnectStrategyError(n,r)):n}async connect(){if(this.#i)throw new Error("Socket already opened");return this.#i=!0,this.#m()}async#m(){let e=0;do try{this.#s=await this.#y(),this.emit("connect");try{if(await this.#e(),!this.#s||this.#s.destroyed||!this.#s.readable||!this.#s.writable){let r=this.#f(e++,new Ll.SocketClosedUnexpectedlyError);if(typeof r!="number")throw r;await(0,wYe.setTimeout)(r),this.emit("reconnecting");continue}}catch(r){throw this.#s.destroy(),this.#s=void 0,r}this.#c=!0,this.#h++,this.emit("ready")}catch(r){let n=this.#f(e++,r);if(typeof n!="number")throw n;this.emit("error",r),await(0,wYe.setTimeout)(n),this.emit("reconnecting")}while(this.#i&&!this.#c)}setMaintenanceTimeout(e){if((0,RYe.dbgMaintenance)(`Set socket timeout to ${e}`),this.#o===e){(0,RYe.dbgMaintenance)(`Socket already set maintenanceCommandTimeout to ${e}, skipping`);return}this.#o=e,e!==void 0?this.#s?.setTimeout(e):this.#s?.setTimeout(this.#a??0)}async#y(){let e=this.#n.create(),r;return this.#t!==void 0&&(r=()=>e.destroy(new Ll.ConnectionTimeoutError),e.once("timeout",r),e.setTimeout(this.#t)),this.#l&&e.unref(),await(0,IYe.once)(e,this.#n.event),r&&e.removeListener("timeout",r),this.#a&&(e.once("timeout",()=>{let n=this.#o?new Ll.SocketTimeoutDuringMaintenanceError(this.#o):new Ll.SocketTimeoutError(this.#a);e.destroy(n)}),e.setTimeout(this.#a)),e.once("error",n=>this.#g(n)).once("close",n=>{n||!this.#i||this.#s!==e||this.#g(new Ll.SocketClosedUnexpectedlyError)}).on("drain",()=>this.emit("drain")).on("data",n=>this.emit("data",n)),e}#g(e){let r=this.#c;this.#c=!1,this.emit("error",e),!(!r||!this.#i||typeof this.#f(0,e)!="number")&&(this.emit("reconnecting"),this.#m().catch(()=>{}))}write(e){if(this.#s){this.#s.cork();for(let r of e){for(let n of r)this.#s.write(n);if(this.#s.writableNeedDrain)break}this.#s.uncork()}}async quit(e){if(!this.#i)throw new Ll.ClientClosedError;this.#i=!1;let r=await e();return this.destroySocket(),r}close(){if(!this.#i)throw new Ll.ClientClosedError;this.#i=!1}destroy(){if(!this.#i)throw new Ll.ClientClosedError;this.#i=!1,this.destroySocket()}destroySocket(){this.#c=!1,this.#s&&(this.#s.destroy(),this.#s=void 0),this.emit("end")}ref(){this.#l=!1,this.#s?.ref()}unref(){this.#l=!0,this.#s?.unref()}defaultReconnectStrategy(e,r){if(r instanceof Ll.SocketTimeoutError)return!1;let n=Math.floor(Math.random()*200);return Math.min(Math.pow(2,e)*50,2e3)+n}};QI.default=rre});var sre=E(dB=>{"use strict";Object.defineProperty(dB,"__esModule",{value:!0});dB.Token=void 0;var nre=class{value;expiresAtMs;receivedAtMs;constructor(e,r,n){this.value=e,this.expiresAtMs=r,this.receivedAtMs=n}getTtlMs(e){return this.expiresAtMs{"use strict";Object.defineProperty(Sb,"__esModule",{value:!0});Sb.TokenManager=Sb.IDPError=void 0;var Gur=sre(),fB=class extends Error{message;isRetryable;constructor(e,r){super(e),this.message=e,this.isRetryable=r,this.name="IDPError"}};Sb.IDPError=fB;var ire=class{identityProvider;config;currentToken=null;refreshTimeout=null;listener=null;retryAttempt=0;constructor(e,r){if(this.identityProvider=e,this.config=r,this.config.expirationRefreshRatio>1)throw new Error("expirationRefreshRatio must be less than or equal to 1");if(this.config.expirationRefreshRatio<0)throw new Error("expirationRefreshRatio must be greater or equal to 0")}start(e,r=0){return this.listener&&this.stop(),this.listener=e,this.retryAttempt=0,this.scheduleNextRefresh(r),{dispose:()=>this.stop()}}calculateRetryDelay(){if(!this.config.retry)return 0;let{initialDelayMs:e,maxDelayMs:r,backoffMultiplier:n,jitterPercentage:s}=this.config.retry,i=e*Math.pow(n,this.retryAttempt-1);if(i=Math.min(i,r),s){let o=i*(s/100),c=Math.random()*o-o/2;i+=c}return Math.max(0,Math.floor(i))}shouldRetry(e){if(!this.config.retry)return!1;let{maxAttempts:r,isRetryable:n}=this.config.retry;return this.retryAttempt>=r?!1:n?n(e,this.retryAttempt):!1}isRunning(){return this.listener!==null}async refresh(){if(!this.listener)throw new Error("TokenManager is not running, but refresh was called");try{await this.identityProvider.requestToken().then(this.handleNewToken),this.retryAttempt=0}catch(e){if(this.shouldRetry(e)){this.retryAttempt++;let r=this.calculateRetryDelay();this.notifyError(`Token refresh failed (attempt ${this.retryAttempt}), retrying in ${r}ms: ${e}`,!0),this.scheduleNextRefresh(r)}else this.notifyError(e,!1),this.stop()}}handleNewToken=async({token:e,ttlMs:r})=>{if(!this.listener)throw new Error("TokenManager is not running, but a new token was received");let n=this.wrapAndSetCurrentToken(e,r);this.listener.onNext(n),this.scheduleNextRefresh(this.calculateRefreshTime(n))};wrapAndSetCurrentToken(e,r){let n=Date.now(),s=new Gur.Token(e,n+r,n);return this.currentToken=s,s}scheduleNextRefresh(e){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),e===0?this.refresh():this.refreshTimeout=setTimeout(()=>this.refresh(),e)}calculateRefreshTime(e,r=Date.now()){let n=e.getTtlMs(r);return Math.floor(n*this.config.expirationRefreshRatio)}stop(){this.refreshTimeout&&(clearTimeout(this.refreshTimeout),this.refreshTimeout=null),this.listener=null,this.currentToken=null,this.retryAttempt=0}getCurrentToken(){return this.currentToken}notifyError(e,r){let n=e instanceof Error?e.message:String(e);if(!this.listener)throw new Error(`TokenManager is not running but received an error: ${n}`);this.listener.onError(new fB(n,r))}};Sb.TokenManager=ire});var DYe=E(vb=>{"use strict";Object.defineProperty(vb,"__esModule",{value:!0});vb.UnableToObtainNewCredentialsError=vb.CredentialsError=void 0;var are=class extends Error{constructor(e){super(`Re-authentication with latest credentials failed: ${e}`),this.name="CredentialsError"}};vb.CredentialsError=are;var ore=class extends Error{constructor(e){super(`Unable to obtain new credentials : ${e}`),this.name="UnableToObtainNewCredentialsError"}};vb.UnableToObtainNewCredentialsError=ore});var BYe=E(Ic=>{"use strict";Object.defineProperty(Ic,"__esModule",{value:!0});Ic.Token=Ic.CredentialsError=Ic.UnableToObtainNewCredentialsError=Ic.IDPError=Ic.TokenManager=void 0;var kYe=PYe();Object.defineProperty(Ic,"TokenManager",{enumerable:!0,get:function(){return kYe.TokenManager}});Object.defineProperty(Ic,"IDPError",{enumerable:!0,get:function(){return kYe.IDPError}});var LYe=DYe();Object.defineProperty(Ic,"UnableToObtainNewCredentialsError",{enumerable:!0,get:function(){return LYe.UnableToObtainNewCredentialsError}});Object.defineProperty(Ic,"CredentialsError",{enumerable:!0,get:function(){return LYe.CredentialsError}});var Vur=sre();Object.defineProperty(Ic,"Token",{enumerable:!0,get:function(){return Vur.Token}})});var mB=E(Bl=>{"use strict";var zur=Bl&&Bl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Bl,"__esModule",{value:!0});Bl.EmptyAwareSinglyLinkedList=Bl.SinglyLinkedList=Bl.DoublyLinkedList=void 0;var Kur=zur(require("events")),cre=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){return++this.#e,this.#r===void 0?this.#t=this.#r={previous:this.#t,next:void 0,value:e}:this.#r=this.#r.next={previous:this.#r,next:void 0,value:e}}unshift(e){return++this.#e,this.#t===void 0?this.#t=this.#r={previous:void 0,next:void 0,value:e}:this.#t=this.#t.previous={previous:void 0,next:this.#t,value:e}}add(e,r=!1){return r?this.unshift(e):this.push(e)}shift(){if(this.#t===void 0)return;--this.#e;let e=this.#t;return e.next?(e.next.previous=void 0,this.#t=e.next,e.next=void 0):this.#t=this.#r=void 0,e.value}remove(e){this.#e!==0&&(--this.#e,this.#r===e&&(this.#r=e.previous),this.#t===e?this.#t=e.next:(e.previous&&(e.previous.next=e.next),e.next&&(e.next.previous=e.previous)),e.previous=void 0,e.next=void 0)}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}*nodes(){let e=this.#t;for(;e;){let r=e.next;yield e,e=r}}};Bl.DoublyLinkedList=cre;var pB=class{#e=0;get length(){return this.#e}#t;get head(){return this.#t}#r;get tail(){return this.#r}push(e){++this.#e;let r={value:e,next:void 0,removed:!1};return this.#t===void 0?this.#t=this.#r=r:this.#r.next=this.#r=r}remove(e,r){if(e.removed)throw new Error("node already removed");--this.#e,this.#t===e?this.#r===e?this.#t=this.#r=void 0:this.#t=e.next:this.#r===e?(this.#r=r,r.next=void 0):r.next=e.next,e.removed=!0}shift(){if(this.#t===void 0)return;let e=this.#t;return--this.#e===0?this.#t=this.#r=void 0:this.#t=e.next,e.removed=!0,e.value}reset(){this.#e=0,this.#t=this.#r=void 0}*[Symbol.iterator](){let e=this.#t;for(;e!==void 0;)yield e.value,e=e.next}};Bl.SinglyLinkedList=pB;var ure=class extends pB{events=new Kur.default;reset(){let e=this.length;super.reset(),e!==this.length&&this.length===0&&this.events.emit("empty")}shift(){let e=this.length,r=super.shift();return e!==this.length&&this.length===0&&this.events.emit("empty"),r}remove(e,r){let n=this.length;super.remove(e,r),n!==this.length&&this.length===0&&this.events.emit("empty")}};Bl.EmptyAwareSinglyLinkedList=ure});var MYe=E(lre=>{"use strict";Object.defineProperty(lre,"__esModule",{value:!0});var GI=`\r +`;function Yur(t){let e=[],r="*"+t.length+GI;for(let n=0;n{var WYe=[0,4129,8258,12387,16516,20645,24774,28903,33032,37161,41290,45419,49548,53677,57806,61935,4657,528,12915,8786,21173,17044,29431,25302,37689,33560,45947,41818,54205,50076,62463,58334,9314,13379,1056,5121,25830,29895,17572,21637,42346,46411,34088,38153,58862,62927,50604,54669,13907,9842,5649,1584,30423,26358,22165,18100,46939,42874,38681,34616,63455,59390,55197,51132,18628,22757,26758,30887,2112,6241,10242,14371,51660,55789,59790,63919,35144,39273,43274,47403,23285,19156,31415,27286,6769,2640,14899,10770,56317,52188,64447,60318,39801,35672,47931,43802,27814,31879,19684,23749,11298,15363,3168,7233,60846,64911,52716,56781,44330,48395,36200,40265,32407,28342,24277,20212,15891,11826,7761,3696,65439,61374,57309,53244,48923,44858,40793,36728,37256,33193,45514,41451,53516,49453,61774,57711,4224,161,12482,8419,20484,16421,28742,24679,33721,37784,41979,46042,49981,54044,58239,62302,689,4752,8947,13010,16949,21012,25207,29270,46570,42443,38312,34185,62830,58703,54572,50445,13538,9411,5280,1153,29798,25671,21540,17413,42971,47098,34713,38840,59231,63358,50973,55100,9939,14066,1681,5808,26199,30326,17941,22068,55628,51565,63758,59695,39368,35305,47498,43435,22596,18533,30726,26663,6336,2273,14466,10403,52093,56156,60223,64286,35833,39896,43963,48026,19061,23124,27191,31254,2801,6864,10931,14994,64814,60687,56684,52557,48554,44427,40424,36297,31782,27655,23652,19525,15522,11395,7392,3265,61215,65342,53085,57212,44955,49082,36825,40952,28183,32310,20053,24180,11923,16050,3793,7920],Jur=function(e){for(var r,n=0,s=0,i=[],a=e.length;n>6|192,i[s++]=r&63|128):(r&64512)===55296&&n+1>18|240,i[s++]=r>>12&63|128,i[s++]=r>>6&63|128,i[s++]=r&63|128):(i[s++]=r>>12|224,i[s++]=r>>6&63|128,i[s++]=r&63|128);return i},$Ye=dre.exports=function(e){for(var r,n=0,s=-1,i=0,a=0,o=typeof e=="string"?Jur(e):e,c=o.length;n>8)&255]^a<<8;else if(n-1!==s)return a&16383;i=WYe[(r^i>>8)&255]^i<<8}return i&16383};dre.exports.generateMulti=function(e){for(var r=1,n=e.length,s=$Ye(e[0]);r{"use strict";var Xur=kt&&kt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(kt,"__esModule",{value:!0});kt.PubSub=kt.PUBSUB_TYPE=void 0;var Zur=Xur(fre());kt.PUBSUB_TYPE={CHANNELS:"CHANNELS",PATTERNS:"PATTERNS",SHARDED:"SHARDED"};var xi={[kt.PUBSUB_TYPE.CHANNELS]:{subscribe:Buffer.from("subscribe"),unsubscribe:Buffer.from("unsubscribe"),message:Buffer.from("message")},[kt.PUBSUB_TYPE.PATTERNS]:{subscribe:Buffer.from("psubscribe"),unsubscribe:Buffer.from("punsubscribe"),message:Buffer.from("pmessage")},[kt.PUBSUB_TYPE.SHARDED]:{subscribe:Buffer.from("ssubscribe"),unsubscribe:Buffer.from("sunsubscribe"),message:Buffer.from("smessage")}},pre=class t{static isStatusReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return xi[kt.PUBSUB_TYPE.CHANNELS].subscribe.equals(r)||xi[kt.PUBSUB_TYPE.CHANNELS].unsubscribe.equals(r)||xi[kt.PUBSUB_TYPE.PATTERNS].subscribe.equals(r)||xi[kt.PUBSUB_TYPE.PATTERNS].unsubscribe.equals(r)||xi[kt.PUBSUB_TYPE.SHARDED].subscribe.equals(r)}static isShardedUnsubscribe(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return xi[kt.PUBSUB_TYPE.SHARDED].unsubscribe.equals(r)}static#e(e){return Array.isArray(e)?e:[e]}static#t(e,r){return r?e.buffers:e.strings}#r=0;#n=!1;get isActive(){return this.#n}listeners={[kt.PUBSUB_TYPE.CHANNELS]:new Map,[kt.PUBSUB_TYPE.PATTERNS]:new Map,[kt.PUBSUB_TYPE.SHARDED]:new Map};subscribe(e,r,n,s){let i=[xi[e].subscribe],a=t.#e(r);for(let o of a){let c=this.listeners[e].get(o);(!c||c.unsubscribing)&&i.push(o)}if(i.length===1){for(let o of a)t.#t(this.listeners[e].get(o),s).add(n);return}return this.#n=!0,this.#r++,{args:i,channelsCounter:i.length-1,resolve:()=>{this.#r--;for(let o of a){let c=this.listeners[e].get(o);c||(c={unsubscribing:!1,buffers:new Set,strings:new Set},this.listeners[e].set(o,c)),t.#t(c,s).add(n)}},reject:()=>{this.#r--,this.#s()}}}extendChannelListeners(e,r,n){if(this.#a(e,r,n))return this.#n=!0,this.#r++,{args:[xi[e].subscribe,r],channelsCounter:1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}#a(e,r,n){let s=this.listeners[e].get(r);if(!s)return this.listeners[e].set(r,n),!0;for(let i of n.buffers)s.buffers.add(i);for(let i of n.strings)s.strings.add(i);return!1}extendTypeListeners(e,r){let n=[xi[e].subscribe];for(let[s,i]of r)this.#a(e,s,i)&&n.push(s);if(n.length!==1)return this.#n=!0,this.#r++,{args:n,channelsCounter:n.length-1,resolve:()=>this.#r--,reject:()=>{this.#r--,this.#s()}}}unsubscribe(e,r,n,s){let i=this.listeners[e];if(!r)return this.#o([xi[e].unsubscribe],NaN,()=>i.clear());let a=t.#e(r);if(!n)return this.#o([xi[e].unsubscribe,...a],a.length,()=>{for(let c of a)i.delete(c)});let o=[xi[e].unsubscribe];for(let c of a){let u=i.get(c);if(u){let l,d;if(s?(l=u.buffers,d=u.strings):(l=u.strings,d=u.buffers),(l.has(n)?l.size-1:l.size)!==0||d.size!==0)continue;u.unsubscribing=!0}o.push(c)}if(o.length===1){for(let c of a)t.#t(i.get(c),s).delete(n);return}return this.#o(o,o.length-1,()=>{for(let c of a){let u=i.get(c);u&&((s?u.buffers:u.strings).delete(n),u.buffers.size===0&&u.strings.size===0&&i.delete(c))}})}#o(e,r,n){return{args:e,channelsCounter:r,resolve:()=>{n(),this.#s()},reject:void 0}}#s(){this.#n=this.listeners[kt.PUBSUB_TYPE.CHANNELS].size!==0||this.listeners[kt.PUBSUB_TYPE.PATTERNS].size!==0||this.listeners[kt.PUBSUB_TYPE.SHARDED].size!==0||this.#r!==0}reset(){this.#n=!1,this.#r=0}resubscribe(){let e=[];for(let[r,n]of Object.entries(this.listeners))n.size&&(this.#n=!0,r===kt.PUBSUB_TYPE.SHARDED?this.#c(e,n):this.#i(e,r,n));return e}#i(e,r,n){this.#r++;let s=()=>this.#r--;e.push({args:[xi[r].subscribe,...n.keys()],channelsCounter:n.size,resolve:s,reject:s})}#c(e,r){let n=()=>this.#r--;for(let s of r.keys())this.#r++,e.push({args:[xi[kt.PUBSUB_TYPE.SHARDED].subscribe,s],channelsCounter:1,resolve:n,reject:n})}handleMessageReply(e){let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];return xi[kt.PUBSUB_TYPE.CHANNELS].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.CHANNELS,e[2],e[1]),!0):xi[kt.PUBSUB_TYPE.PATTERNS].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.PATTERNS,e[3],e[2],e[1]),!0):xi[kt.PUBSUB_TYPE.SHARDED].message.equals(r)?(this.#l(kt.PUBSUB_TYPE.SHARDED,e[2],e[1]),!0):!1}removeShardedListeners(e){let r=this.listeners[kt.PUBSUB_TYPE.SHARDED].get(e);return this.listeners[kt.PUBSUB_TYPE.SHARDED].delete(e),this.#s(),r}removeAllListeners(){let e={[kt.PUBSUB_TYPE.CHANNELS]:this.listeners[kt.PUBSUB_TYPE.CHANNELS],[kt.PUBSUB_TYPE.PATTERNS]:this.listeners[kt.PUBSUB_TYPE.PATTERNS],[kt.PUBSUB_TYPE.SHARDED]:this.listeners[kt.PUBSUB_TYPE.SHARDED]};return this.#s(),this.listeners[kt.PUBSUB_TYPE.CHANNELS]=new Map,this.listeners[kt.PUBSUB_TYPE.PATTERNS]=new Map,this.listeners[kt.PUBSUB_TYPE.SHARDED]=new Map,e}removeShardedPubSubListenersForSlots(e){let r=new Map;for(let[n,s]of this.listeners[kt.PUBSUB_TYPE.SHARDED])e.has((0,Zur.default)(n))&&(r.set(n,s),this.listeners[kt.PUBSUB_TYPE.SHARDED].delete(n));return this.#s(),{[kt.PUBSUB_TYPE.SHARDED]:r}}#l(e,r,n,s){let i=(s??n).toString(),a=this.listeners[e].get(i);if(!a)return;for(let u of a.buffers)u(r,n);if(!a.strings.size)return;let o=s?n.toString():i,c=o==="__redis__:invalidate"?r===null?null:r.map(u=>u.toString()):r.toString();for(let u of a.strings)u(c,o)}};kt.PubSub=pre});var UYe=E(KI=>{"use strict";var elr=KI&&KI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(KI,"__esModule",{value:!0});var FYe=mB(),tlr=elr(MYe()),zI=tB(),mre=VI(),Cb=Pl(),Ib=HI(),rlr=Buffer.from("pong"),nlr=Buffer.from("RESET"),slr={...zI.PUSH_TYPE_MAPPING,[zI.RESP_TYPES.SIMPLE_STRING]:Buffer},hre=class t{#e;#t;#r=new FYe.DoublyLinkedList;#n=new FYe.EmptyAwareSinglyLinkedList;#a;#o;decoder;#s=new mre.PubSub;#i=[this.#p.bind(this)];#c;setMaintenanceCommandTimeout(e){if(this.#c===e){(0,Ib.dbgMaintenance)(`Queue already set maintenanceCommandTimeout to ${e}, skipping`);return}if((0,Ib.dbgMaintenance)(`Setting maintenance command timeout to ${e}`),this.#c=e,this.#c===void 0){(0,Ib.dbgMaintenance)("Queue will keep maintenanceCommandTimeout for exisitng commands, just to be on the safe side. New commands will receive normal timeouts");return}let r=0,n=this.#r.length;for(let s of this.#r.nodes()){let i=s.value;t.#C(i),r++;let a=this.#c,o=AbortSignal.timeout(a);i.timeout={signal:o,listener:()=>{this.#r.remove(s),i.reject(new Cb.CommandTimeoutDuringMaintenanceError(a))},originalTimeout:i.timeout?.originalTimeout},o.addEventListener("abort",i.timeout.listener,{once:!0})}(0,Ib.dbgMaintenance)(`Total of ${r} of ${n} timeouts reset to ${e}`)}get isPubSubActive(){return this.#s.isActive}constructor(e,r,n){this.#e=e,this.#t=r,this.#a=n,this.decoder=this.#f()}#l(e){this.#n.shift().resolve(e)}#h(e){this.#n.shift().reject(e)}#p(e){if(this.#s.handleMessageReply(e))return!0;let r=mre.PubSub.isShardedUnsubscribe(e);if(r&&!this.#n.length){let n=e[1].toString();return this.#a(n,this.#s.removeShardedListeners(n)),!0}else if(r||mre.PubSub.isStatusReply(e)){let n=this.#n.head.value;return(Number.isNaN(n.channelsCounter)&&e[2]===0||--n.channelsCounter===0)&&this.#n.shift().resolve(),!0}return!1}#d(){return this.#n.head.value.typeMapping??{}}#f(){return new zI.Decoder({onReply:e=>this.#l(e),onErrorReply:e=>this.#h(e),onPush:e=>{for(let r of this.#i)if(r(e))return},getTypeMapping:()=>this.#d()})}addPushHandler(e){this.#i.push(e)}async waitForInflightCommandsToComplete(e){if(this.#n.length!==0)return new Promise(r=>{let n=()=>{s&&clearTimeout(s),r()},s,i=e?.timeoutMs;i!==void 0&&i>0&&(s=setTimeout(()=>{this.#n.events.off("empty",n);let a=this.#n.length;(0,Ib.dbgMaintenance)(`waitForInflightCommandsToComplete timed out after ${i}ms with ${a} commands still waiting`),e?.flushOnTimeout&&a>0&&((0,Ib.dbgMaintenance)(`Flushing ${a} commands that timed out waiting for reply`),this.#S(new Cb.TimeoutError)),r()},i)),this.#n.events.once("empty",n)})}addCommand(e,r){return this.#t&&this.#r.length+this.#n.length>=this.#t?Promise.reject(new Error("The queue is full")):r?.abortSignal?.aborted?Promise.reject(new Cb.AbortError):new Promise((n,s)=>{let i,a={args:e,chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r?.typeMapping};a.slotNumber=r?.slotNumber;let o=this.#c??r?.timeout,c=this.#c!==void 0;if(o){let l=AbortSignal.timeout(o);a.timeout={signal:l,listener:()=>{this.#r.remove(i),a.reject(c?new Cb.CommandTimeoutDuringMaintenanceError(o):new Cb.TimeoutError)},originalTimeout:r?.timeout},l.addEventListener("abort",a.timeout.listener,{once:!0})}let u=r?.abortSignal;u&&(a.abort={signal:u,listener:()=>{this.#r.remove(i),a.reject(new Cb.AbortError)}},u.addEventListener("abort",a.abort.listener,{once:!0})),i=this.#r.add(a,r?.asap)})}#m(e,r=!1,n){return new Promise((s,i)=>{this.#r.add({args:e.args,chainId:n,abort:void 0,timeout:void 0,resolve(){e.resolve(),s()},reject(a){e.reject?.(),i(a)},channelsCounter:e.channelsCounter,typeMapping:zI.PUSH_TYPE_MAPPING},r)})}#y(){this.#e===2&&(this.decoder.onReply=e=>{if(Array.isArray(e)){if(this.#p(e))return;let r=typeof e[0]=="string"?Buffer.from(e[0]):e[0];if(rlr.equals(r)){let{resolve:n,typeMapping:s}=this.#n.shift(),i=e[1].length===0?e[0]:e[1];n(s?.[zI.RESP_TYPES.SIMPLE_STRING]===Buffer?i:i.toString());return}}return this.#l(e)},this.decoder.getTypeMapping=()=>slr)}subscribe(e,r,n,s){let i=this.#s.subscribe(e,r,n,s);if(i)return this.#y(),this.#m(i)}#g(){this.decoder.onReply=e=>this.#l(e),this.decoder.getTypeMapping=()=>this.#d()}unsubscribe(e,r,n,s){let i=this.#s.unsubscribe(e,r,n,s);if(i){if(i&&this.#e===2){let{resolve:a}=i;i.resolve=()=>{this.#s.isActive||this.#g(),a()}}return this.#m(i)}}removeAllPubSubListeners(){return this.#s.removeAllListeners()}removeShardedPubSubListenersForSlots(e){return this.#s.removeShardedPubSubListenersForSlots(e)}resubscribe(e){let r=this.#s.resubscribe();if(r.length)return this.#y(),Promise.all(r.map(n=>this.#m(n,!0,e)))}extendPubSubChannelListeners(e,r,n){let s=this.#s.extendChannelListeners(e,r,n);if(s)return this.#y(),this.#m(s)}extendPubSubListeners(e,r){let n=this.#s.extendTypeListeners(e,r);if(n)return this.#y(),this.#m(n)}getPubSubListeners(e){return this.#s.listeners[e]}monitor(e,r){return new Promise((n,s)=>{let i=r?.typeMapping??{};this.#r.add({args:["MONITOR"],chainId:r?.chainId,abort:void 0,timeout:void 0,resolve:()=>{this.#E?this.#E=e:this.decoder.onReply=e,this.decoder.getTypeMapping=()=>i,n()},reject:s,channelsCounter:void 0,typeMapping:i},r?.asap)})}resetDecoder(){this.#g(),this.decoder.reset()}#E;async reset(e,r){return new Promise((n,s)=>{this.#E=this.decoder.onReply,this.decoder.onReply=i=>{if(typeof i=="string"&&i==="RESET"||i instanceof Buffer&&nlr.equals(i)){this.#g(),this.#E=void 0,this.#s.reset(),this.#n.shift().resolve(i);return}this.#E(i)},this.#r.push({args:["RESET"],chainId:e,abort:void 0,timeout:void 0,resolve:n,reject:s,channelsCounter:void 0,typeMapping:r})})}isWaitingToWrite(){return this.#r.length>0}*commandsToWrite(){let e=this.#r.shift();for(;e;){let r;try{r=(0,tlr.default)(e.args)}catch(n){e.reject(n),e=this.#r.shift();continue}e.args=void 0,e.abort&&(t.#A(e),e.abort=void 0),e.timeout&&(t.#C(e),e.timeout=void 0),this.#o=e.chainId,e.chainId=void 0,this.#n.push(e),yield r,e=this.#r.shift()}}#S(e){for(let r of this.#n)r.reject(e);this.#n.reset()}static#A(e){e.abort.signal.removeEventListener("abort",e.abort.listener)}static#C(e){e.timeout?.signal.removeEventListener("abort",e.timeout.listener)}static#_(e,r){e.abort&&t.#A(e),e.timeout&&t.#C(e),e.reject(r)}flushWaitingForReply(e){if(this.resetDecoder(),this.#s.reset(),this.#S(e),!!this.#o){for(;this.#r.head?.value.chainId===this.#o;)t.#_(this.#r.shift(),e);this.#o=void 0}}flushAll(e){this.resetDecoder(),this.#s.reset(),this.#S(e);for(let r of this.#r)t.#_(r,e);this.#r.reset()}isEmpty(){return this.#r.length===0&&this.#n.length===0}extractCommandsForSlots(e){let r=[],n=this.#r.head;for(;n!==void 0;)if(n.value.slotNumber!==void 0&&e.has(n.value.slotNumber)){r.push(n.value);let s=n;n=n.next,this.#r.remove(s)}else n=n.next;return r}extractAllCommands(){let e=[],r=this.#r.head;for(;r;)e.push(r.value),this.#r.remove(r),r=r.next;return e}prependCommandsToWrite(e){if(e.length)for(let r=e.length-1;r>=0;r--)this.#r.unshift(e[r])}};KI.default=hre});var Wl=E(Ml=>{"use strict";Object.defineProperty(Ml,"__esModule",{value:!0});Ml.scriptArgumentsPrefix=Ml.functionArgumentsPrefix=Ml.getTransformReply=Ml.attachConfig=void 0;function qYe(){throw new Error("Some RESP3 results for Redis Query Engine responses may change. Refer to the readme for guidance")}function ilr({BaseClass:t,commands:e,createCommand:r,createModuleCommand:n,createFunctionCommand:s,createScriptCommand:i,config:a}){let o=a?.RESP??2,c=class extends t{};for(let[u,l]of Object.entries(e))a?.RESP==3&&l.unstableResp3&&!a.unstableResp3?c.prototype[u]=qYe:c.prototype[u]=r(l,o);if(a?.modules)for(let[u,l]of Object.entries(a.modules)){let d=Object.create(null);for(let[f,p]of Object.entries(l))a.RESP==3&&p.unstableResp3&&!a.unstableResp3?d[f]=qYe:d[f]=n(p,o);jYe(c.prototype,u,d)}if(a?.functions)for(let[u,l]of Object.entries(a.functions)){let d=Object.create(null);for(let[f,p]of Object.entries(l))d[f]=s(f,p,o);jYe(c.prototype,u,d)}if(a?.scripts)for(let[u,l]of Object.entries(a.scripts))c.prototype[u]=i(l,o);return c}Ml.attachConfig=ilr;function jYe(t,e,r){Object.defineProperty(t,e,{get(){let n=Object.create(r);return n._self=this,Object.defineProperty(this,e,{value:n}),n}})}function alr(t,e){switch(typeof t.transformReply){case"function":return t.transformReply;case"object":return t.transformReply[e]}}Ml.getTransformReply=alr;function olr(t,e){let r=[e.IS_READ_ONLY?"FCALL_RO":"FCALL",t];return e.NUMBER_OF_KEYS!==void 0&&r.push(e.NUMBER_OF_KEYS.toString()),r}Ml.functionArgumentsPrefix=olr;function clr(t){let e=[t.IS_READ_ONLY?"EVALSHA_RO":"EVALSHA",t.SHA1];return t.NUMBER_OF_KEYS!==void 0&&e.push(t.NUMBER_OF_KEYS.toString()),e}Ml.scriptArgumentsPrefix=clr});var YI=E(Are=>{"use strict";Object.defineProperty(Are,"__esModule",{value:!0});var HYe=Pl(),gre=class{typeMapping;constructor(e){this.typeMapping=e}queue=[];scriptsInUse=new Set;addCommand(e,r){this.queue.push({args:e,transformReply:r})}addScript(e,r,n){let s=[];s.preserve=r.preserve,this.scriptsInUse.has(e.SHA1)?s.push("EVALSHA",e.SHA1):(this.scriptsInUse.add(e.SHA1),s.push("EVAL",e.SCRIPT)),e.NUMBER_OF_KEYS!==void 0&&s.push(e.NUMBER_OF_KEYS.toString()),s.push(...r),this.addCommand(s,n)}transformReplies(e){let r=[],n=e.map((s,i)=>{if(s instanceof HYe.ErrorReply)return r.push(i),s;let{transformReply:a,args:o}=this.queue[i];return a?a(s,o.preserve,this.typeMapping):s});if(r.length)throw new HYe.MultiErrorReply(n,r);return n}};Are.default=gre});var xre=E(JI=>{"use strict";var QYe=JI&&JI.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(JI,"__esModule",{value:!0});var ulr=QYe(yu()),llr=QYe(YI()),Tb=Wl(),hB=Dl(),yre=class t{static#e(e,r){let n=(0,Tb.getTransformReply)(e,r);return function(...s){let i=new hB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(a,n)}}static#t(e,r){let n=(0,Tb.getTransformReply)(e,r);return function(...s){let i=new hB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(a,n)}}static#r(e,r,n){let s=(0,Tb.functionArgumentsPrefix)(e,r),i=(0,Tb.getTransformReply)(r,n);return function(...a){let o=new hB.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(c,i)}}static#n(e,r){let n=(0,Tb.getTransformReply)(e,r);return function(...s){let i=new hB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#c(e,a,n)}}static extend(e){return(0,Tb.attachConfig)({BaseClass:t,commands:ulr.default,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;constructor(e,r,n){this.#a=new llr.default(n),this.#o=e,this.#s=r}SELECT(e,r){return this.#i=e,this.#a.addCommand(["SELECT",e.toString()],r),this}select=this.SELECT;addCommand(e,r){return this.#a.addCommand(e,r),this}#c(e,r,n){return this.#a.addScript(e,r,n),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#a.queue,this.#i))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#a.queue,this.#i))}execAsPipelineTyped(){return this.execAsPipeline()}};JI.default=yre});var zYe=E(Rb=>{"use strict";var GYe=Rb&&Rb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Rb,"__esModule",{value:!0});Rb.RedisLegacyClient=void 0;var dlr=Wl(),VYe=GYe(yu()),flr=GYe(YI()),wb=class t{static#e(e,r){let n;return typeof r[r.length-1]=="function"&&(n=r.pop()),t.pushArguments(e,r),n}static pushArguments(e,r){for(let n=0;nthis.#r.emit("error",u));return}c.then(u=>o(null,s?s(u):u)).catch(u=>o(u))}}#r;#n;constructor(e){this.#r=e;let r=e.options?.RESP??2;for(let[n,s]of Object.entries(VYe.default))this[n]=t.#t(n,s,r);this.#n=bre.factory(r)}sendCommand(...e){let r=[],n=t.#e(r,e),s=this.#r.sendCommand(r);if(!n){s.catch(i=>this.#r.emit("error",i));return}s.then(i=>n(null,i)).catch(i=>n(i))}multi(){return this.#n(this.#r)}};Rb.RedisLegacyClient=wb;var bre=class t{static#e(e,r,n){let s=wb.getTransformReply(r,n);return function(...i){let a=[e];return wb.pushArguments(a,i),this.#t.addCommand(a,s),this}}static factory(e){let r=class extends t{};for(let[n,s]of Object.entries(VYe.default))r.prototype[n]=t.#e(n,s,e);return n=>new r(n)}#t=new flr.default;#r;constructor(e){this.#r=e}sendCommand(...e){let r=[];return wb.pushArguments(r,e),this.#t.addCommand(r),this}exec(e){let r=this.#r._executeMulti(this.#t.queue);if(!e){r.catch(n=>this.#r.emit("error",n));return}r.then(n=>e(null,this.#t.transformReplies(n))).catch(n=>e?.(n))}}});var Nb=E(so=>{"use strict";Object.defineProperty(so,"__esModule",{value:!0});so.PooledNoRedirectClientSideCache=so.BasicPooledClientSideCache=so.PooledClientSideCacheProvider=so.BasicClientSideCache=so.ClientSideCacheProvider=so.CacheStats=void 0;var plr=require("stream"),XI=class t{hitCount;missCount;loadSuccessCount;loadFailureCount;totalLoadTime;evictionCount;constructor(e,r,n,s,i,a){if(this.hitCount=e,this.missCount=r,this.loadSuccessCount=n,this.loadFailureCount=s,this.totalLoadTime=i,this.evictionCount=a,e<0||r<0||n<0||s<0||i<0||a<0)throw new Error("All statistics values must be non-negative")}static of(e=0,r=0,n=0,s=0,i=0,a=0){return new t(e,r,n,s,i,a)}static empty(){return t.EMPTY_STATS}static EMPTY_STATS=new t(0,0,0,0,0,0);requestCount(){return this.hitCount+this.missCount}hitRate(){let e=this.requestCount();return e===0?1:this.hitCount/e}missRate(){let e=this.requestCount();return e===0?0:this.missCount/e}loadCount(){return this.loadSuccessCount+this.loadFailureCount}loadFailureRate(){let e=this.loadCount();return e===0?0:this.loadFailureCount/e}averageLoadPenalty(){let e=this.loadCount();return e===0?0:this.totalLoadTime/e}minus(e){return t.of(Math.max(0,this.hitCount-e.hitCount),Math.max(0,this.missCount-e.missCount),Math.max(0,this.loadSuccessCount-e.loadSuccessCount),Math.max(0,this.loadFailureCount-e.loadFailureCount),Math.max(0,this.totalLoadTime-e.totalLoadTime),Math.max(0,this.evictionCount-e.evictionCount))}plus(e){return t.of(this.hitCount+e.hitCount,this.missCount+e.missCount,this.loadSuccessCount+e.loadSuccessCount,this.loadFailureCount+e.loadFailureCount,this.totalLoadTime+e.totalLoadTime,this.evictionCount+e.evictionCount)}};so.CacheStats=XI;var gB=class t{static INSTANCE=new t;constructor(){}recordHits(e){}recordMisses(e){}recordLoadSuccess(e){}recordLoadFailure(e){}recordEvictions(e){}snapshot(){return XI.empty()}};function mlr(){return gB.INSTANCE}var AB=class t{#e=0;#t=0;#r=0;#n=0;#a=0;#o=0;recordHits(e){this.#e+=e}recordMisses(e){this.#t+=e}recordLoadSuccess(e){this.#r++,this.#a+=e}recordLoadFailure(e){this.#n++,this.#a+=e}recordEvictions(e){this.#o+=e}snapshot(){return XI.of(this.#e,this.#t,this.#r,this.#n,this.#a,this.#o)}static create(){return new t}};function hlr(t){let e=new Array(t.length*2);for(let r=0;r0&&this.#r.recordEvictions(r)}get(e){let r=this.#e.get(e);if(r&&!r.validate()){this.delete(e),this.#r.recordEvictions(1),this.emit("cache-evict",e);return}return r!==void 0&&this.lru&&(this.#e.delete(e),this.#e.set(e,r)),r}delete(e){let r=this.#e.get(e);r&&(r.invalidate(),this.#e.delete(e))}has(e){return this.#e.has(e)}set(e,r,n){let s=this.#e.size,i=this.#e.get(e);i&&(s--,i.invalidate()),this.maxEntries>0&&s>=this.maxEntries&&(this.deleteOldest(),this.#r.recordEvictions(1)),this.#e.set(e,r);for(let a of n)this.#t.has(a.toString())||this.#t.set(a.toString(),new Set),this.#t.get(a.toString()).add(e)}size(){return this.#e.size}createValueEntry(e,r){return new ZI(this.ttl,r)}createPromiseEntry(e,r){return new eT(this.ttl,r)}stats(){return this.#r.snapshot()}onError(){this.clear()}onClose(){this.clear()}deleteOldest(){let r=this.#e[Symbol.iterator]().next();if(!r.done){let n=r.value[0],s=this.#e.get(n);s&&s.invalidate(),this.#e.delete(n)}}entryEntries(){return this.#e.entries()}keySetEntries(){return this.#t.entries()}};so.BasicClientSideCache=bB;var EB=class extends bB{#e=!1;disable(){this.#e=!0}enable(){this.#e=!1}get(e){if(!this.#e)return super.get(e)}has(e){return this.#e?!1:super.has(e)}onPoolClose(){this.clear()}};so.PooledClientSideCacheProvider=EB;var _B=class extends EB{onError(){this.clear(!1)}onClose(){this.clear(!1)}};so.BasicPooledClientSideCache=_B;var Ere=class extends ZI{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){let e=super.validate();return this.#e&&(e=e&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch),e}},_re=class extends eT{#e;constructor(e,r,n){super(e,n),this.#e=r}validate(){return super.validate()&&this.#e.client.isReady&&this.#e.client.socketEpoch==this.#e.epoch}},Sre=class extends _B{createValueEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new Ere(this.ttl,n,r)}createPromiseEntry(e,r){let n={epoch:e.socketEpoch,client:e};return new _re(this.ttl,n,r)}onError(){}onClose(){}};so.PooledNoRedirectClientSideCache=Sre});var SB=E(Cre=>{"use strict";Object.defineProperty(Cre,"__esModule",{value:!0});var vre=class{#e;#t;get(e){return JSON.stringify(e,KYe())===this.#t?this.#e:void 0}set(e,r){this.#e=r,this.#t=JSON.stringify(e,KYe())}};Cre.default=vre;function KYe(){let t=new WeakSet;return function(r,n){return n&&typeof n=="object"?t.has(n)?"circular":(t.add(n),n):n}}});var Rre=E(Ob=>{"use strict";var wre=Ob&&Ob.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ob,"__esModule",{value:!0});Ob.RedisClientPool=void 0;var glr=yu(),Alr=wre(Pb()),ylr=require("node:events"),Ire=mB(),xlr=Pl(),mg=Wl(),blr=wre(xre()),YYe=Nb(),vB=Dl(),Elr=wre(SB()),Tre=class t extends ylr.EventEmitter{static#e(e,r){let n=(0,mg.getTransformReply)(e,r);return async function(...s){let i=new vB.BasicCommandParser;return e.parseCommand(i,...s),this.execute(a=>a._executeCommand(e,i,this._commandOptions,n))}}static#t(e,r){let n=(0,mg.getTransformReply)(e,r);return async function(...s){let i=new vB.BasicCommandParser;return e.parseCommand(i,...s),this._self.execute(a=>a._executeCommand(e,i,this._self._commandOptions,n))}}static#r(e,r,n){let s=(0,mg.functionArgumentsPrefix)(e,r),i=(0,mg.getTransformReply)(r,n);return async function(...a){let o=new vB.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self.execute(c=>c._executeCommand(r,o,this._self._commandOptions,i))}}static#n(e,r){let n=(0,mg.scriptArgumentsPrefix)(e),s=(0,mg.getTransformReply)(e,r);return async function(...i){let a=new vB.BasicCommandParser;return a.pushVariadic(n),e.parseCommand(a,...i),this.execute(o=>o._executeScript(e,a,this._commandOptions,s))}}static#a=new Elr.default;static create(e,r){let n=t.#a.get(e);return n||(n=(0,mg.attachConfig)({BaseClass:t,commands:glr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),n.prototype.Multi=blr.default.extend(e),t.#a.set(e,n)),Object.create(new n(e,r))}static#o={minimum:1,maximum:100,acquireTimeout:3e3,cleanupDelay:3e3};#s;#i;#c=new Ire.SinglyLinkedList;get idleClients(){return this._self.#c.length}#l=new Ire.DoublyLinkedList;get clientsInUse(){return this._self.#l.length}get totalClients(){return this._self.#c.length+this._self.#l.length}#h=new Ire.SinglyLinkedList;get tasksQueueLength(){return this._self.#h.length}#p=!1;get isOpen(){return this._self.#p}#d=!1;get isClosing(){return this._self.#d}#f;get clientSideCache(){return this._self.#f}constructor(e,r){if(super(),this.#i={...t.#o,...r},r?.clientSideCache)if(e===void 0&&(e={}),r.clientSideCache instanceof YYe.PooledClientSideCacheProvider)this.#f=e.clientSideCache=r.clientSideCache;else{let n=r.clientSideCache;this.#f=e.clientSideCache=new YYe.BasicPooledClientSideCache(n)}this.#s=Alr.default.factory(e).bind(void 0,e)}_self=this;_commandOptions;withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}#m(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._self.#m("typeMapping",e)}withAbortSignal(e){return this._self.#m("abortSignal",e)}asap(){return this._self.#m("asap",!0)}async connect(){if(this._self.#p)return;this._self.#p=!0;let e=[];for(;e.lengththis.emit("error",r)));try{await e.value.connect()}catch(r){throw this._self.#l.remove(e),r}this._self.#E(e)}execute(e){return new Promise((r,n)=>{let s=this._self.#c.shift(),{tail:i}=this._self.#h;if(!s){let o;this._self.#i.acquireTimeout>0&&(o=setTimeout(()=>{this._self.#h.remove(c,i),n(new xlr.TimeoutError("Timeout waiting for a client"))},this._self.#i.acquireTimeout));let c=this._self.#h.push({timeout:o,resolve:r,reject:n,fn:e});this.totalClientsthis.#E(e)):(r(i),this.#E(e))}#E(e){let r=this.#h.shift();if(r){clearTimeout(r.timeout),this.#g(e,r.resolve,r.reject,r.fn);return}this.#l.remove(e),this.#c.push(e.value),this.#S()}cleanupTimeout;#S(){this.totalClients<=this.#i.minimum||(clearTimeout(this.cleanupTimeout),this.cleanupTimeout=setTimeout(()=>this.#A(),this.#i.cleanupDelay))}#A(){let e=Math.min(this.#c.length,this.totalClients-this.#i.minimum);for(let r=0;rn.sendCommand(e,r))}MULTI(){return new this.Multi((e,r)=>this.execute(n=>n._executeMulti(e,r)),e=>this.execute(r=>r._executePipeline(e)),this._commandOptions?.typeMapping)}multi=this.MULTI;async close(){if(!this._self.#d&&this._self.#p){this._self.#d=!0;try{let e=[];for(let r of this._self.#c)e.push(r.close());for(let r of this._self.#l)e.push(r.close());await Promise.all(e),this._self.#f?.onPoolClose(),this._self.#c.reset(),this._self.#l.reset()}catch{}finally{this._self.#d=!1}}}destroy(){for(let e of this._self.#c)e.destroy();this._self.#c.reset();for(let e of this._self.#l)e.destroy();this._self.#f?.onPoolClose(),this._self.#l.reset(),this._self.#p=!1}};Ob.RedisClientPool=Tre});var JYe=E((AXr,_lr)=>{_lr.exports={name:"@redis/client",version:"5.11.0",license:"MIT",main:"./dist/index.js",types:"./dist/index.d.ts",files:["dist/","!dist/tsconfig.tsbuildinfo"],scripts:{test:"nyc -r text-summary -r lcov mocha -r tsx --reporter mocha-multi-reporters --reporter-options configFile=mocha-multi-reporter-config.json --exit './lib/**/*.spec.ts'",release:"release-it"},dependencies:{"cluster-key-slot":"1.1.2"},devDependencies:{"@node-rs/xxhash":"1.7.6","@redis/test-utils":"*","@types/sinon":"^17.0.3",sinon:"^17.0.1"},peerDependencies:{"@node-rs/xxhash":"^1.1.0"},peerDependenciesMeta:{"@node-rs/xxhash":{optional:!0}},engines:{node:">= 18"},repository:{type:"git",url:"git://github.com/redis/node-redis.git"},bugs:{url:"https://github.com/redis/node-redis/issues"},homepage:"https://github.com/redis/node-redis/tree/master/packages/client",keywords:["redis"]}});var Pb=E(bu=>{"use strict";var Slr=bu&&bu.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),vlr=bu&&bu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Clr=bu&&bu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Slr(e,t,r);return vlr(e,t),e},Lb=bu&&bu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},xu;Object.defineProperty(bu,"__esModule",{value:!0});var Db=Lb(yu()),Ilr=Lb(OYe()),XYe=BYe(),Tlr=Lb(UYe()),wlr=require("node:events"),hg=Wl(),j0=Pl(),Rlr=require("node:url"),kb=VI(),Nlr=Lb(xre()),Olr=Lb(qJ()),Plr=zYe(),Dlr=Rre(),gg=Ie(),ZYe=Nb(),CB=Dl(),klr=Lb(SB()),Llr=JYe(),IB=Clr(HI()),TB=class extends wlr.EventEmitter{static#e(e,r){let n=(0,hg.getTransformReply)(e,r);return async function(...s){let i=new CB.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._commandOptions,n)}}static#t(e,r){let n=(0,hg.getTransformReply)(e,r);return async function(...s){let i=new CB.BasicCommandParser;return e.parseCommand(i,...s),this._self._executeCommand(e,i,this._self._commandOptions,n)}}static#r(e,r,n){let s=(0,hg.functionArgumentsPrefix)(e,r),i=(0,hg.getTransformReply)(r,n);return async function(...a){let o=new CB.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._executeCommand(r,o,this._self._commandOptions,i)}}static#n(e,r){let n=(0,hg.scriptArgumentsPrefix)(e),s=(0,hg.getTransformReply)(e,r);return async function(...i){let a=new CB.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._executeScript(e,a,this._commandOptions,s)}}static#a=new klr.default;static factory(e){let r=xu.#a.get(e);return r||(r=(0,hg.attachConfig)({BaseClass:xu,commands:Db.default,createCommand:xu.#e,createModuleCommand:xu.#t,createFunctionCommand:xu.#r,createScriptCommand:xu.#n,config:e}),r.prototype.Multi=Nlr.default.extend(e),xu.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return xu.factory(e)(e)}static parseOptions(e){if(e?.url){let r=xu.parseURL(e.url);if(e.socket){if(e.socket.tls!==void 0&&e.socket.tls!==r.socket.tls)throw new TypeError(`tls socket option is set to ${e.socket.tls} which is mismatch with protocol or the URL ${e.url} passed`);r.socket=Object.assign(e.socket,r.socket)}Object.assign(e,r)}return e}static parseURL(e){let{hostname:r,port:n,protocol:s,username:i,password:a,pathname:o}=new Rlr.URL(e),c={socket:{host:r.replace(/^\[([0-9a-f:]+)\]$/,"$1"),tls:!1}};if(s!=="redis:"&&s!=="rediss:")throw new TypeError("Invalid protocol");if(c.socket.tls=s==="rediss:",n&&(c.socket.port=Number(n)),i&&(c.username=decodeURIComponent(i)),a&&(c.password=decodeURIComponent(a)),(i||a)&&(c.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:i?decodeURIComponent(i):void 0,password:a?decodeURIComponent(a):void 0})}),o.length>1){let u=Number(o.substring(1));if(isNaN(u))throw new TypeError("Invalid pathname");c.database=u}return c}#o;#s;#i;#c=0;#l;_self=this;_commandOptions;#h;#p;#d;#f=null;#m=!1;get clientSideCache(){return this._self.#d}get options(){return this._self.#o}get isOpen(){return this._self.#s.isOpen}get isReady(){return this._self.#s.isReady}get isPubSubActive(){return this._self.#i.isPubSubActive}get socketEpoch(){return this._self.#s.socketEpoch}get isWatching(){return this._self.#p!==void 0}get isDirtyWatch(){return this._self.#h!==void 0}setDirtyWatch(e){this._self.#h=e}constructor(e){if(super(),this.#y(e),this.#o=this.#g(e),this.#i=this.#E(),this.#s=this.#v(),this.#o.maintNotifications!=="disabled"&&new IB.default(this.#i,this,this.#o),this.#o.clientSideCache){if(this.#o.clientSideCache instanceof ZYe.ClientSideCacheProvider)this.#d=this.#o.clientSideCache;else{let r=this.#o.clientSideCache;this.#d=new ZYe.BasicClientSideCache(r)}this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.#d?.invalidate(n);else this.#d?.invalidate(null);return!0})}else e?.emitInvalidate&&this.#i.addPushHandler(r=>{if(r[0].toString()!=="invalidate")return!1;if(r[1]!==null)for(let n of r[1])this.emit("invalidate",n);else this.emit("invalidate",null);return!0})}#y(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3");if(e?.emitInvalidate&&e?.RESP!==3)throw new Error("emitInvalidate is only supported with RESP3");if(e?.clientSideCache&&e?.emitInvalidate)throw new Error("emitInvalidate is not supported (or necessary) when clientSideCache is enabled");if(e?.maintNotifications&&e?.maintNotifications!=="disabled"&&e?.RESP!==3)throw new Error("Graceful Maintenance is only supported with RESP3")}#g(e={}){if(!e.credentialsProvider&&(e.username||e.password)&&(e.credentialsProvider={type:"async-credentials-provider",credentials:async()=>({username:e.username,password:e.password})}),e.database&&(this._self.#c=e.database),e.commandOptions&&(this._commandOptions=e.commandOptions),e.maintNotifications!=="disabled"&&IB.default.setupDefaultMaintOptions(e),e.url){let r=xu.parseOptions(e);return r?.database&&(this._self.#c=r.database),r}return e}#E(){return new Tlr.default(this.#o.RESP??2,this.#o.commandsQueueMaxLength,(e,r)=>this.emit("sharded-channel-moved",e,r))}reAuthenticate=async e=>{this.isPubSubActive&&!this.#o.RESP||await this.sendCommand((0,gg.parseArgs)(Db.default.AUTH,{username:e.username,password:e.password??""}))};#S(e){return e.subscribe({onNext:r=>{this.reAuthenticate(r).catch(n=>{let s=n instanceof Error?n.message:String(n);e.onReAuthenticationError(new XYe.CredentialsError(s))})},onError:r=>{let n=`Error from streaming credentials provider: ${r.message}`;e.onReAuthenticationError(new XYe.UnableToObtainNewCredentialsError(n))}})}async#A(e,r){let n=[],s=await this.#C();r&&s.reverse();for(let{cmd:i,errorHandler:a}of s)n.push(this.#i.addCommand(i,{chainId:e,asap:r}).catch(a));return n}async#C(){let e=[],r=this.#o.credentialsProvider;if(this.#o.RESP){let s={};if(r&&r.type==="async-credentials-provider"){let i=await r.credentials();i.password&&(s.AUTH={username:i.username??"default",password:i.password})}if(r&&r.type==="streaming-credentials-provider"){let[i,a]=await this.#S(r);this.#f=a,i.password&&(s.AUTH={username:i.username??"default",password:i.password})}this.#o.name&&(s.SETNAME=this.#o.name),e.push({cmd:(0,gg.parseArgs)(Olr.default,this.#o.RESP,s)})}else{if(r&&r.type==="async-credentials-provider"){let s=await r.credentials();(s.username||s.password)&&e.push({cmd:(0,gg.parseArgs)(Db.default.AUTH,{username:s.username,password:s.password??""})})}if(r&&r.type==="streaming-credentials-provider"){let[s,i]=await this.#S(r);this.#f=i,(s.username||s.password)&&e.push({cmd:(0,gg.parseArgs)(Db.default.AUTH,{username:s.username,password:s.password??""})})}this.#o.name&&e.push({cmd:(0,gg.parseArgs)(Db.default.CLIENT_SETNAME,this.#o.name)})}this.#c!==0&&e.push({cmd:["SELECT",this.#c.toString()]}),this.#o.readonly&&e.push({cmd:(0,gg.parseArgs)(Db.default.READONLY)}),this.#o.disableClientInfo||(e.push({cmd:["CLIENT","SETINFO","LIB-VER",Llr.version],errorHandler:()=>{}}),e.push({cmd:["CLIENT","SETINFO","LIB-NAME",this.#o.clientInfoTag?`node-redis(${this.#o.clientInfoTag})`:"node-redis"],errorHandler:()=>{}})),this.#d&&e.push({cmd:this.#d.trackingOn()}),this.#o?.emitInvalidate&&e.push({cmd:["CLIENT","TRACKING","ON"]});let n=await IB.default.getHandshakeCommand(this.#o);return n&&e.push(n),e}#_(e){e.on("data",r=>{try{this.#i.decoder.write(r)}catch(n){this.#i.resetDecoder(),this.emit("error",n)}}).on("error",r=>{this.emit("error",r),this.#d?.onError(),this.#s.isOpen&&!this.#o.disableOfflineQueue?this.#i.flushWaitingForReply(r):this.#i.flushAll(r)}).on("connect",()=>this.emit("connect")).on("ready",()=>{this.emit("ready"),this.#u(),this.#N()}).on("reconnecting",()=>this.emit("reconnecting")).on("drain",()=>this.#N()).on("end",()=>this.emit("end"))}#v(){let e=async()=>{let n=[],s=Symbol("Socket Initiator"),i=this.#i.resubscribe(s);if(i?.catch(a=>{a.message&&a.message.startsWith("MOVED")&&this.emit("__MOVED",this._self.#i.removeAllPubSubListeners())}),i&&n.push(i),this.#l&&n.push(this.#i.monitor(this.#l,{typeMapping:this._commandOptions?.typeMapping,chainId:s,asap:!0})),n.push(...await this.#A(s,!0)),n.length)return this.#P(),Promise.all(n)},r=new Ilr.default(e,this.#o.socket);return this.#_(r),r}#b;#u(){!this.#o.pingInterval||!this.#s.isReady||(clearTimeout(this.#b),this.#b=setTimeout(()=>{this.#s.isReady&&this.sendCommand(["PING"]).then(e=>this.emit("ping-interval",e)).catch(e=>this.emit("error",e)).finally(()=>this.#u())},this.#o.pingInterval))}withCommandOptions(e){let r=Object.create(this._self);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this._self);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}withAbortSignal(e){return this._commandOptionsProxy("abortSignal",e)}asap(){return this._commandOptionsProxy("asap",!0)}legacy(){return new Plr.RedisLegacyClient(this)}createPool(e){return Dlr.RedisClientPool.create(this._self.#o,e)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self.#o,commandOptions:this._commandOptions,...e})}async connect(){return await this._self.#s.connect(),this}_ejectSocket(){let e=this._self.#s;return this._self.#s=null,e.removeAllListeners(),e}_insertSocket(e){this._self.#s&&this._self._ejectSocket().destroy(),this._self.#s=e,this._self.#_(this._self.#s)}_maintenanceUpdate(e){this._self.#s.setMaintenanceTimeout(e.relaxedSocketTimeout),this._self.#i.setMaintenanceCommandTimeout(e.relaxedCommandTimeout)}_pause(){this._self.#m=!0}_unpause(){this._self.#m=!1,this._self.#N()}_handleSmigrated(e){this._self.emit(IB.SMIGRATED_EVENT,e)}_getQueue(){return this._self.#i}async _executeCommand(e,r,n,s){let i=this._self.#d,a=this._self.#o.commandOptions===n||this._self.#o.commandOptions?.typeMapping===n?.typeMapping,o=()=>this.sendCommand(r.redisArgs,n);if(i&&e.CACHEABLE&&a)return await i.handleCache(this._self,r,o,s,n?.typeMapping);{let c=await o();return s?s(c,r.preserve,n?.typeMapping):c}}async _executeScript(e,r,n,s){let i=r.redisArgs,a;try{a=await this.sendCommand(i,n)}catch(o){if(!o?.message?.startsWith?.("NOSCRIPT"))throw o;i[0]="EVAL",i[1]=e.SCRIPT,a=await this.sendCommand(i,n)}return s?s(a,r.preserve,n?.typeMapping):a}sendCommand(e,r){if(this._self.#s.isOpen){if(!this._self.#s.isReady&&this._self.#o.disableOfflineQueue)return Promise.reject(new j0.ClientOfflineError)}else return Promise.reject(new j0.ClientClosedError);let n={...this._self._commandOptions,...r},s=this._self.#i.addCommand(e,n);return this._self.#I(),s}async SELECT(e){await this.sendCommand(["SELECT",e.toString()]),this._self.#c=e}select=this.SELECT;#x(e){return e===void 0?Promise.resolve():(this.#I(),e)}SUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.CHANNELS,e,r,n))}subscribe=this.SUBSCRIBE;UNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.CHANNELS,e,r,n))}unsubscribe=this.UNSUBSCRIBE;PSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.PATTERNS,e,r,n))}pSubscribe=this.PSUBSCRIBE;PUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.PATTERNS,e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;SSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.subscribe(kb.PUBSUB_TYPE.SHARDED,e,r,n))}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(e,r,n){return this._self.#x(this._self.#i.unsubscribe(kb.PUBSUB_TYPE.SHARDED,e,r,n))}sUnsubscribe=this.SUNSUBSCRIBE;async WATCH(e){let r=await this._self.sendCommand((0,gg.pushVariadicArguments)(["WATCH"],e));return this._self.#p??=this._self.socketEpoch,r}watch=this.WATCH;async UNWATCH(){let e=await this._self.sendCommand(["UNWATCH"]);return this._self.#p=void 0,e}unwatch=this.UNWATCH;getPubSubListeners(e){return this._self.#i.getPubSubListeners(e)}extendPubSubChannelListeners(e,r,n){return this._self.#x(this._self.#i.extendPubSubChannelListeners(e,r,n))}extendPubSubListeners(e,r){return this._self.#x(this._self.#i.extendPubSubListeners(e,r))}#P(){this.#m||this.#s.write(this.#i.commandsToWrite())}#T;#I(){!this.#s.isReady||this.#T||(this.#T=setImmediate(()=>{this.#P(),this.#T=void 0}))}#N(){this.#i.isWaitingToWrite()&&this.#I()}async _executePipeline(e,r){if(!this._self.#s.isOpen)return Promise.reject(new j0.ClientClosedError);let n=Symbol("Pipeline Chain"),s=Promise.all(e.map(({args:a})=>this._self.#i.addCommand(a,{chainId:n,typeMapping:this._commandOptions?.typeMapping})));this._self.#I();let i=await s;return r!==void 0&&(this._self.#c=r),i}async _executeMulti(e,r){let n=this._self.#h;this._self.#h=void 0;let s=this._self.#p;if(this._self.#p=void 0,!this._self.#s.isOpen)throw new j0.ClientClosedError;if(n)throw new j0.WatchError(n);if(s&&s!==this._self.socketEpoch)throw new j0.WatchError("Client reconnected after WATCH");let i=this._commandOptions?.typeMapping,a=Symbol("MULTI Chain"),o=[this._self.#i.addCommand(["MULTI"],{chainId:a})];for(let{args:l}of e)o.push(this._self.#i.addCommand(l,{chainId:a,typeMapping:i}));o.push(this._self.#i.addCommand(["EXEC"],{chainId:a})),this._self.#I();let c=await Promise.all(o),u=c[c.length-1];if(u===null)throw new j0.WatchError;return r!==void 0&&(this._self.#c=r),u}MULTI(){return new this.Multi(this._executeMulti.bind(this),this._executePipeline.bind(this),this._commandOptions?.typeMapping)}multi=this.MULTI;async*scanIterator(e){let r=e?.cursor??"0";do{let n=await this.scan(r,e);r=n.cursor,yield n.keys}while(r!=="0")}async*hScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScan(e,n,r);n=s.cursor,yield s.entries}while(n!=="0")}async*hScanValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*hScanNoValuesIterator(e,r){let n=r?.cursor??"0";do{let s=await this.hScanNoValues(e,n,r);n=s.cursor,yield s.fields}while(n!=="0")}async*sScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.sScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async*zScanIterator(e,r){let n=r?.cursor??"0";do{let s=await this.zScan(e,n,r);n=s.cursor,yield s.members}while(n!=="0")}async MONITOR(e){let r=this._self.#i.monitor(e,{typeMapping:this._commandOptions?.typeMapping});this._self.#I(),await r,this._self.#l=e}monitor=this.MONITOR;async reset(){let e=Symbol("Reset Chain"),r=[this._self.#i.reset(e)],n=this._self.#o?.database??0;this._self.#f?.dispose(),this._self.#f=null,r.push(...await this._self.#A(e,!1)),this._self.#I(),await Promise.all(r),this._self.#c=n,this._self.#l=void 0,this._self.#h=void 0,this._self.#p=void 0}resetIfDirty(){let e=!1;if(this._self.#c!==(this._self.#o?.database??0)&&(console.warn("Returning a client with a different selected DB"),e=!0),this._self.#l&&(console.warn("Returning a client with active MONITOR"),e=!0),this._self.#i.isPubSubActive&&(console.warn("Returning a client with active PubSub"),e=!0),(this._self.#h||this._self.#p)&&(console.warn("Returning a client with active WATCH"),e=!0),e)return this.reset()}QUIT(){return this._self.#f?.dispose(),this._self.#f=null,this._self.#s.quit(async()=>{clearTimeout(this._self.#b);let e=this._self.#i.addCommand(["QUIT"]);return this._self.#I(),e})}quit=this.QUIT;disconnect(){return Promise.resolve(this.destroy())}close(){return new Promise(e=>{if(clearTimeout(this._self.#b),this._self.#s.close(),this._self.#d?.onClose(),this._self.#i.isEmpty())return this._self.#s.destroySocket(),e();let r=()=>{this._self.#i.isEmpty()&&(this._self.#s.off("data",r),this._self.#s.destroySocket(),e())};this._self.#s.on("data",r),this._self.#f?.dispose(),this._self.#f=null})}destroy(){clearTimeout(this._self.#b),this._self.#i.flushAll(new j0.DisconnectsClientError),this._self.#s.destroy(),this._self.#d?.onClose(),this._self.#f?.dispose(),this._self.#f=null}ref(){this._self.#s.ref()}unref(){this._self.#s.unref()}};xu=TB;bu.default=TB});var rJe=E($l=>{"use strict";var tJe=$l&&$l.__importDefault||function(t){return t&&t.__esModule?t:{default:t}},Ore;Object.defineProperty($l,"__esModule",{value:!0});$l.RESUBSCRIBE_LISTENERS_EVENT=void 0;var Blr=Pl(),Mlr=tJe(Pb()),Do=VI(),Nre=tJe(fre()),eJe=Nb(),io=HI();$l.RESUBSCRIBE_LISTENERS_EVENT="__resubscribeListeners";var wB=class{static#e=16384;#t;#r;#n;slots=new Array(Ore.#e);masters=new Array;replicas=new Array;nodeByAddress=new Map;pubSubNode;clientSideCache;smigratedSeqIdsSeen=new Set;#a=!1;get isOpen(){return this.#a}#o(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e,r){this.#o(e),this.#t=e,e?.clientSideCache&&(e.clientSideCache instanceof eJe.PooledClientSideCacheProvider?this.clientSideCache=e.clientSideCache:this.clientSideCache=new eJe.BasicPooledClientSideCache(e.clientSideCache)),this.#r=Mlr.default.factory(this.#t),this.#n=r}async connect(){if(this.#a)throw new Error("Cluster already open");this.#a=!0;try{await this.#s(),this.#n("connect")}catch(e){throw this.#a=!1,e}}async#s(){let e=Math.floor(Math.random()*this.#t.rootNodes.length);for(let r=e;rthis.#f(d,!0,s,r,n)));for(let d=a;d<=o;d++)this.slots[d]=l}if(this.pubSubNode&&!r.has(this.pubSubNode.address)){let a=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.CHANNELS),o=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.PATTERNS);this.pubSubNode.client.destroy(),(a.size||o.size)&&n.push(this.#v({[Do.PUBSUB_TYPE.CHANNELS]:a,[Do.PUBSUB_TYPE.PATTERNS]:o}))}for(let[a,o]of this.nodeByAddress.entries()){if(r.has(a))continue;o.client&&o.client.destroy();let{pubSub:c}=o;c&&c.client.destroy(),this.nodeByAddress.delete(a)}return await Promise.all(n),this.clientSideCache?.enable(),!0}catch(r){return this.#n("error",r),!1}}#l=async e=>{if((0,io.dbgMaintenance)("[CSlots]: handle smigrated",JSON.stringify(e,null,2)),this.smigratedSeqIdsSeen.has(e.seqId)){(0,io.dbgMaintenance)(`[CSlots]: sequence id ${e.seqId} already seen, abort`);return}this.smigratedSeqIdsSeen.add(e.seqId);for(let r of e.entries){let n=`${r.source.host}:${r.source.port}`,s=this.nodeByAddress.get(n);if((0,io.dbgMaintenance)(`[CSlots]: Looking for sourceAddress=${n}. Available addresses in nodeByAddress: ${Array.from(this.nodeByAddress.keys()).join(", ")}`),!s){(0,io.dbgMaintenance)(`[CSlots]: address ${n} not in 'nodeByAddress', skipping this entry`);continue}if(s.client===void 0){(0,io.dbgMaintenance)(`[CSlots]: Node for ${n} does not have a client, skipping this entry`);continue}let i=new Set;try{s.client?._pause(),"pubSub"in s&&s.pubSub?.client._pause();let a;for(let{addr:{host:d,port:f},slots:p}of r.destinations){let m=`${d}:${f}`,h=this.nodeByAddress.get(m);(0,io.dbgMaintenance)(`[CSlots]: Looking for destAddress=${m}. Found in nodeByAddress: ${h?"YES":"NO"}`);let A;if(h){let y=[...new Set(this.slots)].map(v=>`${v.master.host}:${v.master.port}`);(0,io.dbgMaintenance)(`[CSlots]: Searching for shard with host=${d}, port=${f}. Available masters in slots: ${y.join(", ")}`);let x=this.slots.find(v=>v.master.host===d&&v.master.port===f);if(!x)throw(0,io.dbgMaintenance)("Could not find shard"),new Error("Could not find shard");A=x,h.client?._pause(),h.pubSub?.client._pause()}else{let y=[];h=this.#f({host:d,port:f,id:`smigrated-${d}:${f}`},!1,!0,new Set,y),await Promise.all([...y,this.#b(h)]),h.client?._pause(),h.pubSub?.client._pause(),A={master:h}}a=h;let g=new Set;for(let y of p)if(typeof y=="number")this.slots[y]=A,g.add(y),i.add(y);else for(let x=y[0];x<=y[1];x++)this.slots[x]=A,g.add(x),i.add(x);(0,io.dbgMaintenance)(`[CSlots]: Updated slots to point to destination ${h.address}. Sample slots: ${Array.from(p).slice(0,5).join(", ")}${p.length>5?"...":""}`);let b=s.client._getQueue().extractCommandsForSlots(g);h.client?._getQueue().prependCommandsToWrite(b),(0,io.dbgMaintenance)(`[CSlots]: Extracted ${b.length} commands for ${g.size} slots, prepended to ${h.address}`),h.client?._unpause(),h.pubSub?.client._unpause()}(0,io.dbgMaintenance)(`[CSlots]: Total ${i.size} slots moved from ${n}. Sample: ${Array.from(i).slice(0,10).join(", ")}${i.size>10?"...":""}`);let o=5e3,c=[],u={timeoutMs:o,flushOnTimeout:!0};if(c.push(s.client._getQueue().waitForInflightCommandsToComplete(u)),"pubSub"in s&&s.pubSub!==void 0&&c.push(s.pubSub.client._getQueue().waitForInflightCommandsToComplete(u)),this.pubSubNode?.address===n&&c.push(this.pubSubNode.client._getQueue().waitForInflightCommandsToComplete(u)),await Promise.all(c),this.slots.find(d=>d.master.address===n)!==void 0){if("pubSub"in s){let d=s.pubSub?.client._getQueue().removeShardedPubSubListenersForSlots(i);this.#n($l.RESUBSCRIBE_LISTENERS_EVENT,d)}s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause()}else{let d=s.client._getQueue().extractAllCommands();if(d.length>0&&a&&(a.client?._getQueue().prependCommandsToWrite(d),a.client?._unpause(),(0,io.dbgMaintenance)(`[CSlots]: Moved ${d.length} remaining slotless commands to ${a.address}`)),"pubSub"in s){let f=s.pubSub?.client._getQueue().removeAllPubSubListeners();this.#n($l.RESUBSCRIBE_LISTENERS_EVENT,f)}if(this.masters=this.masters.filter(f=>f.address!==n),this.replicas=this.replicas.filter(f=>f.address!==n),this.nodeByAddress.delete(n),this.pubSubNode?.address===n){let f=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.CHANNELS),p=this.pubSubNode.client.getPubSubListeners(Do.PUBSUB_TYPE.PATTERNS),m=this.pubSubNode.client;f.size||p.size?await this.#v({[Do.PUBSUB_TYPE.CHANNELS]:f,[Do.PUBSUB_TYPE.PATTERNS]:p}):this.pubSubNode=void 0,m.destroy()}s.client?.destroy(),"pubSub"in s&&s.pubSub?.client.destroy()}}catch(a){(0,io.dbgMaintenance)(`[CSlots]: Error during SMIGRATED handling for source ${n}: ${a}`),s.client?._unpause(),"pubSub"in s&&s.pubSub?.client._unpause(),this.#n("error",a)}}};async#h(e){let r=this.#d(e);r.socket??={},r.socket.reconnectStrategy=!1,r.RESP=this.#t.RESP,r.commandOptions=void 0,r.maintNotifications="disabled";let n=await this.#r(r).on("error",s=>this.#n("error",s)).connect();try{return await n.clusterSlots()}finally{n.destroy()}}#p(e){switch(typeof this.#t.nodeAddressMap){case"object":return this.#t.nodeAddressMap[e];case"function":return this.#t.nodeAddressMap(e)}}#d(e){if(!this.#t.defaults)return e;let r;return this.#t.defaults.socket?r={...this.#t.defaults.socket,...e?.socket}:r=e?.socket,{...this.#t.defaults,...e,socket:r}}#f(e,r,n,s,i){let a=`${e.host}:${e.port}`,o=this.nodeByAddress.get(a);return o||(o={...e,address:a,readonly:r,client:void 0,connectPromise:void 0},n&&i.push(this.#y(o)),this.nodeByAddress.set(a,o)),s.has(a)||(s.add(a),(r?this.replicas:this.masters).push(o)),o}#m(e,r=e.readonly){let n=this.#p(e.address)??{host:e.host,port:e.port},s=Object.freeze({host:n.host,port:n.port}),i=this.#n,a=this.#r(this.#d({clientSideCache:this.clientSideCache,RESP:this.#t.RESP,socket:n,readonly:r})).on("error",o=>i("node-error",o,s)).on("reconnecting",()=>i("node-reconnecting",s)).once("ready",()=>i("node-ready",s)).once("connect",()=>i("node-connect",s)).once("end",()=>i("node-disconnect",s)).on(io.SMIGRATED_EVENT,this.#l).on("__MOVED",async o=>{await this.rediscover(a),this.#n($l.RESUBSCRIBE_LISTENERS_EVENT,o)});return a}#y(e,r){let n=e.client=this.#m(e,r);return e.connectPromise=n.connect().finally(()=>e.connectPromise=void 0)}nodeClient(e){return e.connectPromise?e.connectPromise:e.client?Promise.resolve(e.client):this.#y(e)}#g;async rediscover(e){return this.#g??=this.#E(e).finally(()=>{this.#g=void 0}),this.#g}async#E(e){if(!await this.#c(e.options))return this.#s()}quit(){return this.#A(e=>e.quit())}disconnect(){return this.#A(e=>e.disconnect())}close(){return this.#A(e=>e.close())}destroy(){this.#a=!1;for(let e of this.#S())e.destroy();this.pubSubNode&&(this.pubSubNode.client.destroy(),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),this.#n("disconnect")}*#S(){for(let e of this.masters)e.client&&(yield e.client),e.pubSub&&(yield e.pubSub.client);for(let e of this.replicas)e.client&&(yield e.client)}async#A(e){this.#a=!1;let r=[];for(let n of this.#S())r.push(e(n));this.pubSubNode&&(r.push(e(this.pubSubNode.client)),this.pubSubNode=void 0),this.#i(),this.nodeByAddress.clear(),await Promise.allSettled(r),this.#n("disconnect")}async getClientAndSlotNumber(e,r){if(!e)return{client:await this.nodeClient(this.getRandomNode())};let n=(0,Nre.default)(e);return r?{client:await this.nodeClient(this.getSlotRandomNode(n)),slotNumber:n}:{client:await this.nodeClient(this.slots[n].master),slotNumber:n}}*#C(){if(this.masters.length+this.replicas.length===0)return;let e=Math.floor(Math.random()*(this.masters.length+this.replicas.length));if(e(e&&await Promise.all([i.extendPubSubListeners(Do.PUBSUB_TYPE.CHANNELS,e[Do.PUBSUB_TYPE.CHANNELS]),i.extendPubSubListeners(Do.PUBSUB_TYPE.PATTERNS,e[Do.PUBSUB_TYPE.PATTERNS])]),this.pubSubNode.connectPromise=void 0,i)).catch(i=>{throw this.pubSubNode=void 0,i})},this.pubSubNode.connectPromise}async executeUnsubscribeCommand(e){let r=await this.getPubSubClient();await e(r),r.isPubSubActive||(r.destroy(),this.pubSubNode=void 0)}getShardedPubSubClient(e){let{master:r}=this.slots[(0,Nre.default)(e)];return r.pubSub?r.pubSub.connectPromise??Promise.resolve(r.pubSub.client):this.#b(r)}async#b(e){let r=this.#m(e,!1).on("server-sunsubscribe",async(n,s)=>{try{await this.rediscover(r),await(await this.getShardedPubSubClient(n)).extendPubSubChannelListeners(Do.PUBSUB_TYPE.SHARDED,n,s)}catch(i){this.#n("sharded-shannel-moved-error",i,n,s)}});return e.pubSub={client:r,connectPromise:r.connect().then(n=>(e.pubSub.connectPromise=void 0,n)).catch(n=>{throw e.pubSub=void 0,n})},e.pubSub.connectPromise}async executeShardedUnsubscribeCommand(e,r){let{master:n}=this.slots[(0,Nre.default)(e)];if(!n.pubSub)return;let s=n.pubSub.connectPromise?await n.pubSub.connectPromise:n.pubSub.client;await r(s),s.isPubSubActive||(s.destroy(),n.pubSub=void 0)}};Ore=wB;$l.default=wB});var nJe=E(tT=>{"use strict";var Wlr=tT&&tT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(tT,"__esModule",{value:!0});var $lr=yu(),Flr=Wlr(YI()),Bb=Wl(),RB=Dl(),Pre=class t{static#e(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new RB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.addCommand(o,e.IS_READ_ONLY,a,n)}}static#t(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new RB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this._self.addCommand(o,e.IS_READ_ONLY,a,n)}}static#r(e,r,n){let s=(0,Bb.functionArgumentsPrefix)(e,r),i=(0,Bb.getTransformReply)(r,n);return function(...a){let o=new RB.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;c.preserve=o.preserve;let u=o.firstKey;return this._self.addCommand(u,r.IS_READ_ONLY,c,i)}}static#n(e,r){let n=(0,Bb.getTransformReply)(e,r);return function(...s){let i=new RB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;a.preserve=i.preserve;let o=i.firstKey;return this.#h(o,e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,Bb.attachConfig)({BaseClass:t,commands:$lr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e})}#a;#o;#s;#i;#c=!0;constructor(e,r,n,s){this.#a=new Flr.default(s),this.#o=e,this.#s=r,this.#i=n}#l(e,r){this.#i??=e,this.#c&&=r}addCommand(e,r,n,s){return this.#l(e,r),this.#a.addCommand(n,s),this}#h(e,r,n,s,i){return this.#l(e,r),this.#a.addScript(n,s,i),this}async exec(e=!1){return e?this.execAsPipeline():this.#a.transformReplies(await this.#o(this.#i,this.#c,this.#a.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#a.queue.length===0?[]:this.#a.transformReplies(await this.#s(this.#i,this.#c,this.#a.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};tT.default=Pre});var aJe=E(Eu=>{"use strict";var Ulr=Eu&&Eu.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),qlr=Eu&&Eu.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),jlr=Eu&&Eu.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Ulr(e,t,r);return qlr(e,t),e},iJe=Eu&&Eu.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Eu,"__esModule",{value:!0});var Hlr=yu(),Qlr=require("node:events"),Ag=Wl(),sJe=jlr(rJe()),Glr=iJe(nJe()),Vlr=Pl(),NB=Dl(),zlr=YK(),Klr=iJe(SB()),Dre=class t extends Qlr.EventEmitter{static#e(e,r){let n=(0,Ag.getTransformReply)(e,r);return async function(...s){let i=new NB.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#t(e,r){let n=(0,Ag.getTransformReply)(e,r);return async function(...s){let i=new NB.BasicCommandParser;return e.parseCommand(i,...s),this._self._execute(i.firstKey,e.IS_READ_ONLY,this._self._commandOptions,(a,o)=>a._executeCommand(e,i,o,n))}}static#r(e,r,n){let s=(0,Ag.functionArgumentsPrefix)(e,r),i=(0,Ag.getTransformReply)(r,n);return async function(...a){let o=new NB.BasicCommandParser;return o.push(...s),r.parseCommand(o,...a),this._self._execute(o.firstKey,r.IS_READ_ONLY,this._self._commandOptions,(c,u)=>c._executeCommand(r,o,u,i))}}static#n(e,r){let n=(0,Ag.scriptArgumentsPrefix)(e),s=(0,Ag.getTransformReply)(e,r);return async function(...i){let a=new NB.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(a.firstKey,e.IS_READ_ONLY,this._commandOptions,(o,c)=>o._executeScript(e,a,c,s))}}static#a=new Klr.default;static factory(e){let r=t.#a.get(e);return r||(r=(0,Ag.attachConfig)({BaseClass:t,commands:Hlr.NON_STICKY_COMMANDS,createCommand:t.#e,createModuleCommand:t.#t,createFunctionCommand:t.#r,createScriptCommand:t.#n,config:e}),r.prototype.Multi=Glr.default.extend(e),t.#a.set(e,r)),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}_options;_slots;_self=this;_commandOptions;get slots(){return this._self._slots.slots}get clientSideCache(){return this._self._slots.clientSideCache}get masters(){return this._self._slots.masters}get replicas(){return this._self._slots.replicas}get nodeByAddress(){return this._self._slots.nodeByAddress}get pubSubNode(){return this._self._slots.pubSubNode}get isOpen(){return this._self._slots.isOpen}constructor(e){super(),this._options=e,this._slots=new sJe.default(e,this.emit.bind(this)),this.on(sJe.RESUBSCRIBE_LISTENERS_EVENT,this.resubscribeAllPubSubListeners.bind(this)),e?.commandOptions&&(this._commandOptions=e.commandOptions)}duplicate(e){return new(Object.getPrototypeOf(this)).constructor({...this._self._options,commandOptions:this._commandOptions,...e})}async connect(){return await this._self._slots.connect(),this}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._commandOptions??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}_handleAsk(e){return async(r,n)=>{let s=Symbol("asking chain"),i=n?{...n}:{};return i.chainId=s,(await Promise.all([r.sendCommand([zlr.ASKING_CMD],{chainId:s}),e(r,i)]))[1]}}async _execute(e,r,n,s){let i=this._options.maxCommandRedirections??16,{client:a,slotNumber:o}=await this._slots.getClientAndSlotNumber(e,r),c=0,u=s;for(;;)try{let l=n??{};return l.slotNumber=o,await u(a,l)}catch(l){if(u=s,++c>i||!(l instanceof Error))throw l;if(l.message.startsWith("ASK")){let d=l.message.substring(l.message.lastIndexOf(" ")+1),f=await this._slots.getMasterByAddress(d);if(f||(await this._slots.rediscover(a),f=await this._slots.getMasterByAddress(d)),!f)throw new Error(`Cannot find node ${d}`);a=f,u=this._handleAsk(s);continue}if(l.message.startsWith("MOVED")){await this._slots.rediscover(a);let d=await this._slots.getClientAndSlotNumber(e,r);a=d.client,o=d.slotNumber;continue}throw l}}async sendCommand(e,r,n,s){let i={...this._self._commandOptions,...s};return this._self._execute(e,r,i,(a,o)=>a.sendCommand(n,o))}MULTI(e){return new this.Multi(async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executeMulti(s)},async(r,n,s)=>{let{client:i}=await this._self._slots.getClientAndSlotNumber(r,n);return i._executePipeline(s)},e,this._commandOptions?.typeMapping)}multi=this.MULTI;async SUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).SUBSCRIBE(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.UNSUBSCRIBE(e,r,n))}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return(await this._self._slots.getPubSubClient()).PSUBSCRIBE(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self._slots.executeUnsubscribeCommand(s=>s.PUNSUBSCRIBE(e,r,n))}pUnsubscribe=this.PUNSUBSCRIBE;async SSUBSCRIBE(e,r,n){let s=this._self._options.maxCommandRedirections??16,i=Array.isArray(e)?e[0]:e,a=await this._self._slots.getShardedPubSubClient(i);for(let o=0;;o++)try{return await a.SSUBSCRIBE(e,r,n)}catch(c){if(++o>s||!(c instanceof Vlr.ErrorReply))throw c;if(c.message.startsWith("MOVED")){await this._self._slots.rediscover(a),a=await this._self._slots.getShardedPubSubClient(i);continue}throw c}}sSubscribe=this.SSUBSCRIBE;SUNSUBSCRIBE(e,r,n){return this._self._slots.executeShardedUnsubscribeCommand(Array.isArray(e)?e[0]:e,s=>s.SUNSUBSCRIBE(e,r,n))}resubscribeAllPubSubListeners(e){if(e.CHANNELS)for(let[r,n]of e.CHANNELS)n.buffers.forEach(s=>{this.subscribe(r,s,!0)}),n.strings.forEach(s=>{this.subscribe(r,s)});if(e.PATTERNS)for(let[r,n]of e.PATTERNS)n.buffers.forEach(s=>{this.pSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.pSubscribe(r,s)});if(e.SHARDED)for(let[r,n]of e.SHARDED)n.buffers.forEach(s=>{this.sSubscribe(r,s,!0)}),n.strings.forEach(s=>{this.sSubscribe(r,s)})}sUnsubscribe=this.SUNSUBSCRIBE;quit(){return this._self._slots.quit()}disconnect(){return this._self._slots.disconnect()}close(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.close()}destroy(){return this._self._slots.clientSideCache?.onPoolClose(),this._self._slots.destroy()}nodeClient(e){return this._self._slots.nodeClient(e)}getRandomNode(){return this._self._slots.getRandomNode()}getSlotRandomNode(e){return this._self._slots.getSlotRandomNode(e)}getMasters(){return this.masters}getSlotMaster(e){return this.slots[e].master}};Eu.default=Dre});var cJe=E(ni=>{"use strict";Object.defineProperty(ni,"__esModule",{value:!0});ni.getMappedNode=ni.createScriptCommand=ni.createModuleCommand=ni.createFunctionCommand=ni.createCommand=ni.clientSocketToNode=ni.createNodeList=ni.parseNode=void 0;var OB=Dl(),Mb=Wl();function oJe(t){if(!(t.flags.includes("s_down")||t.flags.includes("disconnected")||t.flags.includes("failover_in_progress")))return{host:t.ip,port:Number(t.port)}}ni.parseNode=oJe;function Ylr(t){var e=[];for(let r of t){let n=oJe(r);n!==void 0&&e.push(n)}return e}ni.createNodeList=Ylr;function Jlr(t){let e=t;return{host:e.host,port:e.port}}ni.clientSocketToNode=Jlr;function Xlr(t,e){let r=(0,Mb.getTransformReply)(t,e);return async function(...n){let s=new OB.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this.commandOptions,r))}}ni.createCommand=Xlr;function Zlr(t,e,r){let n=(0,Mb.functionArgumentsPrefix)(t,e),s=(0,Mb.getTransformReply)(e,r);return async function(...i){let a=new OB.BasicCommandParser;return a.push(...n),e.parseCommand(a,...i),this._self._execute(e.IS_READ_ONLY,o=>o._executeCommand(e,a,this._self.commandOptions,s))}}ni.createFunctionCommand=Zlr;function edr(t,e){let r=(0,Mb.getTransformReply)(t,e);return async function(...n){let s=new OB.BasicCommandParser;return t.parseCommand(s,...n),this._self._execute(t.IS_READ_ONLY,i=>i._executeCommand(t,s,this._self.commandOptions,r))}}ni.createModuleCommand=edr;function tdr(t,e){let r=(0,Mb.scriptArgumentsPrefix)(t),n=(0,Mb.getTransformReply)(t,e);return async function(...s){let i=new OB.BasicCommandParser;return i.push(...r),t.parseCommand(i,...s),this._self._execute(t.IS_READ_ONLY,a=>a._executeScript(t,i,this.commandOptions,n))}}ni.createScriptCommand=tdr;function rdr(t,e,r){if(r===void 0)return{host:t,port:e};let n=`${t}:${e}`;switch(typeof r){case"object":return r[n]??{host:t,port:e};case"function":return r(n)??{host:t,port:e}}}ni.getMappedNode=rdr});var lJe=E(rT=>{"use strict";var ndr=rT&&rT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(rT,"__esModule",{value:!0});var sdr=yu(),uJe=ndr(YI()),Wb=Wl(),PB=Dl(),kre=class t{static _createCommand(e,r){let n=(0,Wb.getTransformReply)(e,r);return function(...s){let i=new PB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.addCommand(e.IS_READ_ONLY,a,n)}}static _createModuleCommand(e,r){let n=(0,Wb.getTransformReply)(e,r);return function(...s){let i=new PB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this._self.addCommand(e.IS_READ_ONLY,a,n)}}static _createFunctionCommand(e,r,n){let s=(0,Wb.functionArgumentsPrefix)(e,r),i=(0,Wb.getTransformReply)(r,n);return function(...a){let o=new PB.BasicCommandParser;o.push(...s),r.parseCommand(o,...a);let c=o.redisArgs;return c.preserve=o.preserve,this._self.addCommand(r.IS_READ_ONLY,c,i)}}static _createScriptCommand(e,r){let n=(0,Wb.getTransformReply)(e,r);return function(...s){let i=new PB.BasicCommandParser;e.parseCommand(i,...s);let a=i.redisArgs;return a.preserve=i.preserve,this.#a(e.IS_READ_ONLY,e,a,n)}}static extend(e){return(0,Wb.attachConfig)({BaseClass:t,commands:sdr.NON_STICKY_COMMANDS,createCommand:t._createCommand,createModuleCommand:t._createModuleCommand,createFunctionCommand:t._createFunctionCommand,createScriptCommand:t._createScriptCommand,config:e})}#e=new uJe.default;#t;#r=!0;constructor(e,r){this.#e=new uJe.default(r),this.#t=e}#n(e){this.#r&&=e}addCommand(e,r,n){return this.#n(e),this.#e.addCommand(r,n),this}#a(e,r,n,s){return this.#n(e),this.#e.addScript(r,n,s),this}async exec(e=!1){return e?this.execAsPipeline():this.#e.transformReplies(await this.#t._executeMulti(this.#r,this.#e.queue))}EXEC=this.exec;execTyped(e=!1){return this.exec(e)}async execAsPipeline(){return this.#e.queue.length===0?[]:this.#e.transformReplies(await this.#t._executePipeline(this.#r,this.#e.queue))}execAsPipelineTyped(){return this.execAsPipeline()}};rT.default=kre});var pJe=E($b=>{"use strict";var fJe=$b&&$b.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty($b,"__esModule",{value:!0});$b.PubSubProxy=void 0;var idr=fJe(require("node:events")),H0=VI(),dJe=fJe(Pb()),Lre=class extends idr.default{#e;#t;#r;#n;#a;constructor(e,r){super(),this.#e=e,this.#t=r}#o(){if(this.#r===void 0)throw new Error("pubSubProxy: didn't define node to do pubsub against");return new dJe.default({...this.#e,socket:{...this.#e.socket,host:this.#r.host,port:this.#r.port}})}async#s(e=!1){let r=this.#o().on("error",this.#t),n=r.connect().then(async s=>this.#n?.client!==s?(s.destroy(),this.#n?.connectPromise):(e&&this.#a&&await Promise.all([s.extendPubSubListeners(H0.PUBSUB_TYPE.CHANNELS,this.#a[H0.PUBSUB_TYPE.CHANNELS]),s.extendPubSubListeners(H0.PUBSUB_TYPE.PATTERNS,this.#a[H0.PUBSUB_TYPE.PATTERNS])]),this.#n.client!==s?(s.destroy(),this.#n?.connectPromise):(this.#n.connectPromise=void 0,s))).catch(s=>{throw this.#n=void 0,s});return this.#n={client:r,connectPromise:n},n}#i(){return this.#n?this.#n.connectPromise??this.#n.client:this.#s()}async changeNode(e){this.#r=e,this.#n&&(this.#n.connectPromise===void 0&&(this.#a={[H0.PUBSUB_TYPE.CHANNELS]:this.#n.client.getPubSubListeners(H0.PUBSUB_TYPE.CHANNELS),[H0.PUBSUB_TYPE.PATTERNS]:this.#n.client.getPubSubListeners(H0.PUBSUB_TYPE.PATTERNS)},this.#n.client.destroy()),await this.#s(!0))}#c(e){let r=this.#i();return r instanceof dJe.default?e(r):r.then(n=>{if(n!==void 0)return e(n)}).catch(n=>{throw this.#n?.client.isPubSubActive&&(this.#n.client.destroy(),this.#n=void 0),n})}subscribe(e,r,n){return this.#c(s=>s.SUBSCRIBE(e,r,n))}#l(e){return this.#c(async r=>{let n=await e(r);return r.isPubSubActive||(r.destroy(),this.#n=void 0),n})}async unsubscribe(e,r,n){return this.#l(s=>s.UNSUBSCRIBE(e,r,n))}async pSubscribe(e,r,n){return this.#c(s=>s.PSUBSCRIBE(e,r,n))}async pUnsubscribe(e,r,n){return this.#l(s=>s.PUNSUBSCRIBE(e,r,n))}destroy(){this.#a=void 0,this.#n!==void 0&&(this.#n.connectPromise||this.#n.client.destroy(),this.#n=void 0)}};$b.PubSubProxy=Lre});var mJe=E(Bre=>{"use strict";Object.defineProperty(Bre,"__esModule",{value:!0});var adr=Ie();Bre.default={parseCommand(t,e){t.push("SENTINEL","MASTER",e)},transformReply:{2:adr.transformTuplesReply,3:void 0}}});var hJe=E(Mre=>{"use strict";Object.defineProperty(Mre,"__esModule",{value:!0});Mre.default={parseCommand(t,e,r,n,s){t.push("SENTINEL","MONITOR",e,r,n,s)},transformReply:void 0}});var gJe=E(Wre=>{"use strict";Object.defineProperty(Wre,"__esModule",{value:!0});var odr=Ie();Wre.default={parseCommand(t,e){t.push("SENTINEL","REPLICAS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,odr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var AJe=E($re=>{"use strict";Object.defineProperty($re,"__esModule",{value:!0});var cdr=Ie();$re.default={parseCommand(t,e){t.push("SENTINEL","SENTINELS",e)},transformReply:{2:(t,e,r)=>{let n=t,s=[];return n.reduce((i,a)=>(i.push((0,cdr.transformTuplesReply)(a,void 0,r)),i),s)},3:void 0}}});var yJe=E(Fre=>{"use strict";Object.defineProperty(Fre,"__esModule",{value:!0});Fre.default={parseCommand(t,e,r){t.push("SENTINEL","SET",e);for(let n of r)t.push(n.option,n.value)},transformReply:void 0}});var vJe=E(nT=>{"use strict";var sT=nT&&nT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(nT,"__esModule",{value:!0});var xJe=sT(mJe()),bJe=sT(hJe()),EJe=sT(gJe()),_Je=sT(AJe()),SJe=sT(yJe());nT.default={SENTINEL_SENTINELS:_Je.default,sentinelSentinels:_Je.default,SENTINEL_MASTER:xJe.default,sentinelMaster:xJe.default,SENTINEL_REPLICAS:EJe.default,sentinelReplicas:EJe.default,SENTINEL_MONITOR:bJe.default,sentinelMonitor:bJe.default,SENTINEL_SET:SJe.default,sentinelSet:SJe.default}});var CJe=E(iT=>{"use strict";var udr=iT&&iT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(iT,"__esModule",{value:!0});var ldr=udr(vJe());iT.default={sentinel:ldr.default}});var TJe=E(DB=>{"use strict";Object.defineProperty(DB,"__esModule",{value:!0});DB.WaitQueue=void 0;var IJe=mB(),Ure=class{#e=new IJe.SinglyLinkedList;#t=new IJe.SinglyLinkedList;push(e){let r=this.#t.shift();if(r!==void 0){r(e);return}this.#e.push(e)}shift(){return this.#e.shift()}wait(){return new Promise(e=>this.#t.push(e))}};DB.WaitQueue=Ure});var PJe=E(Tf=>{"use strict";var Qre=Tf&&Tf.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Tf,"__esModule",{value:!0});Tf.RedisSentinelFactory=Tf.RedisSentinelClient=void 0;var Gre=require("node:events"),Fb=Qre(Pb()),RJe=Wl(),NJe=yu(),Fn=cJe(),OJe=Qre(lJe()),ddr=pJe(),fdr=require("node:timers/promises"),kB=Qre(CJe()),pdr=TJe(),wJe=Nb(),aT=class t{#e;#t;_self;get isOpen(){return this._self.#t.isOpen}get isReady(){return this._self.#t.isReady}get commandOptions(){return this._self.#r}#r;constructor(e,r,n){this._self=this,this.#t=e,this.#e=r,this.#r=n}static factory(e){let r=(0,RJe.attachConfig)({BaseClass:t,commands:NJe.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=OJe.default.extend(e),(n,s,i)=>Object.create(new r(n,s,i))}static create(e,r,n,s){return t.factory(e)(r,n,s)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._commandOptions=Object.create(this._self.#r??null),n._commandOptions[e]=r,n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async _execute(e,r){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return await this._self.#t.execute(r,this._self.#e)}async sendCommand(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;WATCH(e){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,r=>r.watch(e))}watch=this.WATCH;UNWATCH(){if(this._self.#e===void 0)throw new Error("Attempted execution on released RedisSentinelClient lease");return this._execute(!1,e=>e.unwatch())}unwatch=this.UNWATCH;release(){if(this._self.#e===void 0)throw new Error("RedisSentinelClient lease already released");let e=this._self.#t.releaseClientLease(this._self.#e);return this._self.#e=void 0,e}};Tf.RedisSentinelClient=aT;var qre=class t extends Gre.EventEmitter{_self;#e;#t;get isOpen(){return this._self.#e.isOpen}get isReady(){return this._self.#e.isReady}get commandOptions(){return this._self.#r}#r;#n=()=>{};#a;#o=0;#s;get clientSideCache(){return this._self.#e.clientSideCache}constructor(e){super(),this._self=this,this.#t=e,e.commandOptions&&(this.#r=e.commandOptions),this.#e=new jre(e),this.#e.on("error",r=>this.emit("error",r)),this.#e.on("topology-change",r=>{this.emit("topology-change",r)||this._self.#n(`RedisSentinel: re-emit for topology-change for ${r.type} event returned false`)})}static factory(e){let r=(0,RJe.attachConfig)({BaseClass:t,commands:NJe.NON_STICKY_COMMANDS,createCommand:Fn.createCommand,createModuleCommand:Fn.createModuleCommand,createFunctionCommand:Fn.createFunctionCommand,createScriptCommand:Fn.createScriptCommand,config:e});return r.prototype.Multi=OJe.default.extend(e),n=>Object.create(new r(n))}static create(e){return t.factory(e)(e)}withCommandOptions(e){let r=Object.create(this);return r._commandOptions=e,r}_commandOptionsProxy(e,r){let n=Object.create(this);return n._self.#r={...this._self.#r||{},[e]:r},n}withTypeMapping(e){return this._commandOptionsProxy("typeMapping",e)}async connect(){return await this._self.#e.connect(),this._self.#t.reserveClient&&(this._self.#a=await this._self.#e.getClientLease()),this}async _execute(e,r){let n;(!e||!this._self.#e.useReplicas)&&(this._self.#a?n=this._self.#a:(this._self.#s??=await this._self.#e.getClientLease(),n=this._self.#s,this._self.#o++));try{return await this._self.#e.execute(r,n)}finally{if(n!==void 0&&n===this._self.#s&&--this._self.#o===0){let s=this._self.#e.releaseClientLease(n);this._self.#s=void 0,s&&await s}}}async use(e){let r=await this._self.#e.getClientLease();try{return await e(aT.create(this._self.#t,this._self.#e,r,this._self.#r))}finally{let n=this._self.#e.releaseClientLease(r);n&&await n}}async sendCommand(e,r,n){return this._execute(e,s=>s.sendCommand(r,n))}async _executePipeline(e,r){return this._execute(e,n=>n._executePipeline(r))}async _executeMulti(e,r){return this._execute(e,n=>n._executeMulti(r))}MULTI(){return new this.Multi(this)}multi=this.MULTI;async close(){return this._self.#e.close()}destroy(){return this._self.#e.destroy()}async SUBSCRIBE(e,r,n){return this._self.#e.subscribe(e,r,n)}subscribe=this.SUBSCRIBE;async UNSUBSCRIBE(e,r,n){return this._self.#e.unsubscribe(e,r,n)}unsubscribe=this.UNSUBSCRIBE;async PSUBSCRIBE(e,r,n){return this._self.#e.pSubscribe(e,r,n)}pSubscribe=this.PSUBSCRIBE;async PUNSUBSCRIBE(e,r,n){return this._self.#e.pUnsubscribe(e,r,n)}pUnsubscribe=this.PUNSUBSCRIBE;async acquire(){let e=await this._self.#e.getClientLease();return aT.create(this._self.#t,this._self.#e,e,this._self.#r)}getSentinelNode(){return this._self.#e.getSentinelNode()}getMasterNode(){return this._self.#e.getMasterNode()}getReplicaNodes(){return this._self.#e.getReplicaNodes()}setTracer(e){e?this._self.#n=r=>{e.push(r)}:this._self.#n=()=>{},this._self.#e.setTracer(e)}};Tf.default=qre;var jre=class extends Gre.EventEmitter{#e=!1;get isOpen(){return this.#e}#t=!1;get isReady(){return this.#t}#r;#n;#a;#o;#s;#i;#c;#l=!1;#h=0;#p;#d;#f=[];#m;#y;#g=[];#E=0;#S;get useReplicas(){return this.#S>0}#A;#C;#_;#v;#b=!1;#u=()=>{};#x;get clientSideCache(){return this.#x}#P(e){if(e?.clientSideCache&&e?.RESP!==3)throw new Error("Client Side Caching is only supported with RESP3")}constructor(e){if(super(),this.#P(e),this.#r=e.name,this.#c=e.RESP,this.#p=Array.from(e.sentinelRootNodes),this.#C=e.maxCommandRediscovers??16,this.#y=e.masterPoolSize??1,this.#S=e.replicaPoolSize??0,this.#o=e.nodeAddressMap,this.#s=e.scanInterval??0,this.#i=e.passthroughClientErrorEvents??!1,this.#n=e.nodeClientOptions?{...e.nodeClientOptions}:{},this.#n.url!==void 0)throw new Error("invalid nodeClientOptions for Sentinel");if(e.clientSideCache)if(e.clientSideCache instanceof wJe.PooledClientSideCacheProvider)this.#x=this.#n.clientSideCache=e.clientSideCache;else{let r=e.clientSideCache;this.#x=this.#n.clientSideCache=new wJe.BasicPooledClientSideCache(r)}if(this.#a=e.sentinelClientOptions?Object.assign({},e.sentinelClientOptions):{},this.#a.modules=kB.default,this.#a.url!==void 0)throw new Error("invalid sentinelClientOptions for Sentinel");this.#m=new pdr.WaitQueue;for(let r=0;rthis.emit("error",r))}#T(e,r,n){let s=(0,Fn.getMappedNode)(e.host,e.port,this.#o);return Fb.default.create({RESP:this.#c,...r,socket:{...r.socket,host:s.host,port:s.port,...n!==void 0&&{reconnectStrategy:n}}})}getClientLease(){let e=this.#m.shift();return e!==void 0?Promise.resolve({id:e}):this.#m.wait().then(r=>({id:r}))}releaseClientLease(e){let r=this.#f[e.id];if(r!==void 0){let n=r.resetIfDirty();if(n)return n.then(()=>this.#m.push(e.id))}this.#m.push(e.id)}async connect(){if(this.#e)throw new Error("already attempting to open");try{this.#e=!0,this.#A=this.#I(),await this.#A,this.#t=!0}finally{this.#A=void 0,this.#s>0&&(this.#v=setInterval(this.#O.bind(this),this.#s))}}async#I(){let e=0;for(;;){if(this.#u("starting connect loop"),e+=1,this.#b){this.#u("in #connect and want to destroy");return}try{if(this.#l=!1,await this.transform(this.analyze(await this.observe())),this.#l){this.#u("#connect: anotherReset is true, so continuing");continue}this.#u("#connect: returning");return}catch(r){if(this.#u(`#connect: exception ${r.message}`),!this.#t&&e>this.#C)throw r;r.message!=="no valid master node"&&console.log(r),await(0,fdr.setTimeout)(1e3)}finally{this.#u("finished connect")}}}async execute(e,r){let n=0;for(;;){this.#A!==void 0&&await this.#A;let s=this.#R(r);if(!s.isReady){await this.#O();continue}let i=s.options?.socket;this.#u("attemping to send command to "+i?.host+":"+i?.port);try{return await e(s)}catch(a){if(++n>this.#C||!(a instanceof Error))throw a;if(r!==void 0&&(a.message.startsWith("READONLY")||!s.isReady)){await this.#O();continue}throw a}}}async#N(e){return await e.pSubscribe(["switch-master","[-+]sdown","+slave","+sentinel","[-+]odown","+slave-reconf-done"],(r,n)=>{this.#M(n,r)},!0),e}async#M(e,r){this.#u("pubsub control channel message on "+e),this.#O()}#R(e){if(e!==void 0)return this.#f[e.id];if(this.#E>=this.#g.length&&(this.#E=0),this.#g.length==0)throw new Error("no replicas available for read");return this.#g[this.#E++]}async#O(){if(!(this.#t==!1||this.#b==!0)){if(this.#A!==void 0)return this.#l=!0,await this.#A;try{return this.#A=this.#I(),await this.#A}finally{this.#u("finished reconfgure"),this.#A=void 0}}}#D(e){let r=this.#p.findIndex(n=>n.host===e.host&&n.port===e.port);r!==-1&&this.#p.splice(r,1),this.#O()}async close(){this.#b=!0,this.#A!=null&&await this.#A,this.#t=!1,this.#x?.onPoolClose(),this.#v&&(clearInterval(this.#v),this.#v=void 0);let e=[];this.#d!==void 0&&(this.#d.isOpen&&e.push(this.#d.close()),this.#d=void 0);for(let r of this.#f)r.isOpen&&e.push(r.close());this.#f=[];for(let r of this.#g)r.isOpen&&e.push(r.close());this.#g=[],await Promise.all(e),this.#_.destroy(),this.#e=!1}async destroy(){this.#b=!0,this.#A!=null&&await this.#A,this.#t=!1,this.#x?.onPoolClose(),this.#v&&(clearInterval(this.#v),this.#v=void 0),this.#d!==void 0&&(this.#d.isOpen&&this.#d.destroy(),this.#d=void 0);for(let e of this.#f)e.isOpen&&e.destroy();this.#f=[];for(let e of this.#g)e.isOpen&&e.destroy();this.#g=[],this.#_.destroy(),this.#e=!1,this.#b=!1}async subscribe(e,r,n){return this.#_.subscribe(e,r,n)}async unsubscribe(e,r,n){return this.#_.unsubscribe(e,r,n)}async pSubscribe(e,r,n){return this.#_.pSubscribe(e,r,n)}async pUnsubscribe(e,r,n){return this.#_.pUnsubscribe(e,r,n)}async observe(){for(let e of this.#p){let r;try{this.#u(`observe: trying to connect to sentinel: ${e.host}:${e.port}`),r=this.#T(e,this.#a,!1),r.on("error",o=>this.emit("error",`obseve client error: ${o}`)),await r.connect(),this.#u("observe: connected to sentinel");let[n,s,i]=await Promise.all([r.sentinel.sentinelSentinels(this.#r),r.sentinel.sentinelMaster(this.#r),r.sentinel.sentinelReplicas(this.#r)]);return this.#u("observe: got all sentinel data"),{sentinelConnected:e,sentinelData:n,masterData:s,replicaData:i,currentMaster:this.getMasterNode(),currentReplicas:this.getReplicaNodes(),currentSentinel:this.getSentinelNode(),replicaPoolSize:this.#S,useReplicas:this.useReplicas}}catch(n){this.#u(`observe: error ${n}`),this.emit("error",n)}finally{r!==void 0&&r.isOpen&&(this.#u("observe: destroying sentinel client"),r.destroy())}}throw this.#u("observe: none of the sentinels are available"),new Error("None of the sentinels are available")}analyze(e){let r=(0,Fn.parseNode)(e.masterData);if(r===void 0)throw this.#u(`analyze: no valid master node because ${e.masterData.flags}`),new Error("no valid master node");r.host===e.currentMaster?.host&&r.port===e.currentMaster?.port?(this.#u(`analyze: master node hasn't changed from ${e.currentMaster?.host}:${e.currentMaster?.port}`),r=void 0):this.#u(`analyze: master node has changed to ${r.host}:${r.port} from ${e.currentMaster?.host}:${e.currentMaster?.port}`);let n=e.sentinelConnected;n.host===e.currentSentinel?.host&&n.port===e.currentSentinel.port?(this.#u("analyze: sentinel node hasn't changed"),n=void 0):this.#u(`analyze: sentinel node has changed to ${n.host}:${n.port}`);let s=[],i=new Map,a=new Set,o=new Set;if(e.useReplicas){let u=(0,Fn.createNodeList)(e.replicaData);for(let l of u)a.add(JSON.stringify(l));for(let[l,d]of e.currentReplicas)a.has(JSON.stringify(l))?(o.add(JSON.stringify(l)),d!=e.replicaPoolSize&&(i.set(l,e.replicaPoolSize-d),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))):(s.push(l),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToClose`));for(let l of u)o.has(JSON.stringify(l))||(i.set(l,e.replicaPoolSize),this.#u(`analyze: adding ${l.host}:${l.port} to replicsToOpen`))}return{sentinelList:[e.sentinelConnected].concat((0,Fn.createNodeList)(e.sentinelData)),epoch:Number(e.masterData["config-epoch"]),sentinelToOpen:n,masterToOpen:r,replicasToClose:s,replicasToOpen:i}}async transform(e){this.#u("transform: enter");let r=[];if(e.sentinelToOpen){this.#u("transform: opening a new sentinel"),this.#d!==void 0&&this.#d.isOpen?(this.#u("transform: destroying old sentinel as open"),this.#d.destroy(),this.#d=void 0):this.#u("transform: not destroying old sentinel as not open"),this.#u(`transform: creating new sentinel to ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let a=e.sentinelToOpen,o=this.#T(e.sentinelToOpen,this.#a,!1);o.on("error",l=>{this.#i&&this.emit("error",new Error(`Sentinel Client (${a.host}:${a.port}): ${l.message}`,{cause:l}));let d={type:"SENTINEL",node:(0,Fn.clientSocketToNode)(o.options.socket),error:l};this.emit("client-error",d),this.#D(a)}).on("end",()=>this.#D(a)),this.#d=o,this.#u("transform: adding sentinel client connect() to promise list");let c=this.#d.connect().then(l=>this.#N(l));r.push(c),this.#u(`created sentinel client to ${e.sentinelToOpen.host}:${e.sentinelToOpen.port}`);let u={type:"SENTINEL_CHANGE",node:e.sentinelToOpen};this.#u("transform: emiting topology-change event for sentinel_change"),this.emit("topology-change",u)||this.#u("transform: emit for topology-change for sentinel_change returned false")}if(e.masterToOpen){this.#u("transform: opening a new master");let a=[],o=[];this.#u("transform: destroying old masters if open");for(let u of this.#f)o.push(u.isWatching||u.isDirtyWatch),u.isOpen&&u.destroy();this.#f=[],this.#u("transform: creating all master clients and adding connect promises");for(let u=0;u{this.#i&&this.emit("error",new Error(`Master Client (${l.host}:${l.port}): ${f.message}`,{cause:f}));let p={type:"MASTER",node:(0,Fn.clientSocketToNode)(d.options.socket),error:f};this.emit("client-error",p)}),o[u]&&d.setDirtyWatch("sentinel config changed in middle of a WATCH Transaction"),this.#f.push(d),a.push(d.connect()),this.#u(`created master client to ${e.masterToOpen.host}:${e.masterToOpen.port}`)}this.#u("transform: adding promise to change #pubSubProxy node"),a.push(this.#_.changeNode(e.masterToOpen)),r.push(...a);let c={type:"MASTER_CHANGE",node:e.masterToOpen};this.#u("transform: emiting topology-change event for master_change"),this.emit("topology-change",c)||this.#u("transform: emit for topology-change for master_change returned false"),this.#h++}let n=new Set;for(let a of e.replicasToClose){let o=JSON.stringify(a);n.add(o)}let s=[],i=new Set;for(let a of this.#g){let o=(0,Fn.clientSocketToNode)(a.options.socket),c=JSON.stringify(o);if(n.has(c)||!a.isOpen){if(a.isOpen){let u=a.options?.socket;this.#u(`destroying replica client to ${u?.host}:${u?.port}`),a.destroy()}if(!i.has(c)){let u={type:"REPLICA_REMOVE",node:o};this.emit("topology-change",u),i.add(c)}}else s.push(a)}if(this.#g=s,e.replicasToOpen.size!=0)for(let[a,o]of e.replicasToOpen){for(let u=0;u{this.#i&&this.emit("error",new Error(`Replica Client (${a.host}:${a.port}): ${d.message}`,{cause:d}));let f={type:"REPLICA",node:(0,Fn.clientSocketToNode)(l.options.socket),error:d};this.emit("client-error",f)}),this.#g.push(l),r.push(l.connect()),this.#u(`created replica client to ${a.host}:${a.port}`)}let c={type:"REPLICA_ADD",node:a};this.emit("topology-change",c)}if(e.sentinelList.length!=this.#p.length){this.#p=e.sentinelList;let a={type:"SENTINE_LIST_CHANGE",size:e.sentinelList.length};this.emit("topology-change",a)}await Promise.all(r),this.#u("transform: exit")}getMasterNode(){if(this.#f.length!=0){for(let e of this.#f)if(e.isReady)return(0,Fn.clientSocketToNode)(e.options.socket)}}getSentinelNode(){if(this.#d!==void 0)return(0,Fn.clientSocketToNode)(this.#d.options.socket)}getReplicaNodes(){let e=new Map,r=new Map;for(let n of this.#g){let s=(0,Fn.clientSocketToNode)(n.options.socket),i=JSON.stringify(s);n.isReady?r.set(i,(r.get(i)??0)+1):r.has(i)||r.set(i,0)}for(let[n,s]of r)e.set(JSON.parse(n),s);return e}setTracer(e){e?this.#u=r=>{e.push(r)}:this.#u=()=>{}}},Hre=class extends Gre.EventEmitter{options;#e;#t=-1;constructor(e){super(),this.options=e,this.#e=e.sentinelRootNodes}async updateSentinelRootNodes(){for(let e of this.#e){let r=Fb.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:e.host,port:e.port,reconnectStrategy:!1},modules:kB.default}).on("error",n=>this.emit(`updateSentinelRootNodes: ${n}`));try{await r.connect()}catch{r.isOpen&&r.destroy();continue}try{let n=await r.sentinel.sentinelSentinels(this.options.name);this.#e=[e].concat((0,Fn.createNodeList)(n));return}finally{r.destroy()}}throw new Error("Couldn't connect to any sentinel node")}async getMasterNode(){let e=!1;for(let r of this.#e){let n=Fb.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:kB.default}).on("error",s=>this.emit(`getMasterNode: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelMaster(this.options.name),i=(0,Fn.parseNode)(s);if(i===void 0)continue;return i}finally{n.destroy()}}throw e?new Error("Master Node Not Enumerated"):new Error("couldn't connect to any sentinels")}async getMasterClient(){let e=await this.getMasterNode(),r=(0,Fn.getMappedNode)(e.host,e.port,this.options.nodeAddressMap);return Fb.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:r.host,port:r.port}})}async getReplicaNodes(){let e=!1;for(let r of this.#e){let n=Fb.default.create({...this.options.sentinelClientOptions,socket:{...this.options.sentinelClientOptions?.socket,host:r.host,port:r.port,reconnectStrategy:!1},modules:kB.default}).on("error",s=>this.emit(`getReplicaNodes: ${s}`));try{await n.connect()}catch{n.isOpen&&n.destroy();continue}e=!0;try{let s=await n.sentinel.sentinelReplicas(this.options.name),i=(0,Fn.createNodeList)(s);if(i.length==0)continue;return i}finally{n.destroy()}}throw e?new Error("No Replicas Nodes Enumerated"):new Error("couldn't connect to any sentinels")}async getReplicaClient(){let e=await this.getReplicaNodes();if(e.length==0)throw new Error("no available replicas");this.#t++,this.#t>=e.length&&(this.#t=0);let r=e[this.#t],n=(0,Fn.getMappedNode)(r.host,r.port,this.options.nodeAddressMap);return Fb.default.create({...this.options.nodeClientOptions,socket:{...this.options.nodeClientOptions?.socket,host:n.host,port:n.port}})}};Tf.RedisSentinelFactory=Hre});var cT=E(Vt=>{"use strict";var mdr=Vt&&Vt.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),hdr=Vt&&Vt.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&mdr(e,t,r)},Vre=Vt&&Vt.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Vt,"__esModule",{value:!0});Vt.BasicPooledClientSideCache=Vt.BasicClientSideCache=Vt.REDIS_FLUSH_MODES=Vt.COMMAND_LIST_FILTER_BY=Vt.CLUSTER_SLOT_STATES=Vt.FAILOVER_MODES=Vt.CLIENT_KILL_FILTERS=Vt.GEO_REPLY_WITH=Vt.createSentinel=Vt.createCluster=Vt.createClientPool=Vt.createClient=Vt.digest=Vt.defineScript=Vt.VerbatimString=Vt.RESP_TYPES=void 0;var gdr=tB();Object.defineProperty(Vt,"RESP_TYPES",{enumerable:!0,get:function(){return gdr.RESP_TYPES}});var Adr=pK();Object.defineProperty(Vt,"VerbatimString",{enumerable:!0,get:function(){return Adr.VerbatimString}});var ydr=aWe();Object.defineProperty(Vt,"defineScript",{enumerable:!0,get:function(){return ydr.defineScript}});var xdr=oWe();Object.defineProperty(Vt,"digest",{enumerable:!0,get:function(){return xdr.digest}});hdr(Pl(),Vt);var bdr=Vre(Pb());Vt.createClient=bdr.default.create;var Edr=Rre();Vt.createClientPool=Edr.RedisClientPool.create;var _dr=Vre(aJe());Vt.createCluster=_dr.default.create;var Sdr=Vre(PJe());Vt.createSentinel=Sdr.default.create;var vdr=eI();Object.defineProperty(Vt,"GEO_REPLY_WITH",{enumerable:!0,get:function(){return vdr.GEO_REPLY_WITH}});var oT=yu();Object.defineProperty(Vt,"CLIENT_KILL_FILTERS",{enumerable:!0,get:function(){return oT.CLIENT_KILL_FILTERS}});Object.defineProperty(Vt,"FAILOVER_MODES",{enumerable:!0,get:function(){return oT.FAILOVER_MODES}});Object.defineProperty(Vt,"CLUSTER_SLOT_STATES",{enumerable:!0,get:function(){return oT.CLUSTER_SLOT_STATES}});Object.defineProperty(Vt,"COMMAND_LIST_FILTER_BY",{enumerable:!0,get:function(){return oT.COMMAND_LIST_FILTER_BY}});Object.defineProperty(Vt,"REDIS_FLUSH_MODES",{enumerable:!0,get:function(){return oT.REDIS_FLUSH_MODES}});var DJe=Nb();Object.defineProperty(Vt,"BasicClientSideCache",{enumerable:!0,get:function(){return DJe.BasicClientSideCache}});Object.defineProperty(Vt,"BasicPooledClientSideCache",{enumerable:!0,get:function(){return DJe.BasicPooledClientSideCache}})});var kJe=E(zre=>{"use strict";Object.defineProperty(zre,"__esModule",{value:!0});var Cdr=Ie();zre.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.ADD"),t.pushKey(e),t.push(r)},transformReply:Cdr.transformBooleanReply}});var LJe=E(Kre=>{"use strict";Object.defineProperty(Kre,"__esModule",{value:!0});Kre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.CARD"),t.pushKey(e)},transformReply:void 0}});var BJe=E(Yre=>{"use strict";Object.defineProperty(Yre,"__esModule",{value:!0});var Idr=Ie();Yre.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:Idr.transformBooleanReply}});var Jre=E(LB=>{"use strict";Object.defineProperty(LB,"__esModule",{value:!0});LB.transformInfoV2Reply=void 0;var Tdr=cT();function wdr(t,e){switch(e?e[Tdr.RESP_TYPES.MAP]:void 0){case Array:return t;case Map:{let n=new Map;for(let s=0;s{"use strict";Object.defineProperty(Xre,"__esModule",{value:!0});var Rdr=Jre();Xre.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("BF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Rdr.transformInfoV2Reply)(t,r),3:void 0}}});var WJe=E(Zre=>{"use strict";Object.defineProperty(Zre,"__esModule",{value:!0});var Ndr=Ie();Zre.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.INSERT"),t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.ERROR!==void 0&&t.push("ERROR",n.ERROR.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString()),n?.NOCREATE&&t.push("NOCREATE"),n?.NONSCALING&&t.push("NONSCALING"),t.push("ITEMS"),t.pushVariadic(r)},transformReply:Ndr.transformBooleanArrayReply}});var $Je=E(ene=>{"use strict";Object.defineProperty(ene,"__esModule",{value:!0});ene.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("BF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var FJe=E(tne=>{"use strict";Object.defineProperty(tne,"__esModule",{value:!0});var Odr=Ie();tne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("BF.MADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:Odr.transformBooleanArrayReply}});var UJe=E(rne=>{"use strict";Object.defineProperty(rne,"__esModule",{value:!0});var Pdr=Ie();rne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.MEXISTS"),t.pushKey(e),t.pushVariadic(r)},transformReply:Pdr.transformBooleanArrayReply}});var qJe=E(nne=>{"use strict";Object.defineProperty(nne,"__esModule",{value:!0});nne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("BF.RESERVE"),t.pushKey(e),t.push(r.toString(),n.toString()),s?.EXPANSION&&t.push("EXPANSION",s.EXPANSION.toString()),s?.NONSCALING&&t.push("NONSCALING")},transformReply:void 0}});var jJe=E(sne=>{"use strict";Object.defineProperty(sne,"__esModule",{value:!0});sne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("BF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var Ub=E(Fl=>{"use strict";var Ddr=Fl&&Fl.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),kdr=Fl&&Fl.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Ddr(e,t,r)},Ul=Fl&&Fl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Fl,"__esModule",{value:!0});var HJe=Ul(kJe()),QJe=Ul(LJe()),GJe=Ul(BJe()),VJe=Ul(MJe()),zJe=Ul(WJe()),KJe=Ul($Je()),YJe=Ul(FJe()),JJe=Ul(UJe()),XJe=Ul(qJe()),ZJe=Ul(jJe());kdr(Jre(),Fl);Fl.default={ADD:HJe.default,add:HJe.default,CARD:QJe.default,card:QJe.default,EXISTS:GJe.default,exists:GJe.default,INFO:VJe.default,info:VJe.default,INSERT:zJe.default,insert:zJe.default,LOADCHUNK:KJe.default,loadChunk:KJe.default,MADD:YJe.default,mAdd:YJe.default,MEXISTS:JJe.default,mExists:JJe.default,RESERVE:XJe.default,reserve:XJe.default,SCANDUMP:ZJe.default,scanDump:ZJe.default}});var tXe=E(ine=>{"use strict";Object.defineProperty(ine,"__esModule",{value:!0});ine.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)eXe(t,n);else eXe(t,r)},transformReply:void 0};function eXe(t,{item:e,incrementBy:r}){t.push(e,r.toString())}});var rXe=E(ane=>{"use strict";Object.defineProperty(ane,"__esModule",{value:!0});var Ldr=Ub();ane.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CMS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Ldr.transformInfoV2Reply)(t,r),3:void 0}}});var nXe=E(one=>{"use strict";Object.defineProperty(one,"__esModule",{value:!0});one.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYDIM"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var sXe=E(cne=>{"use strict";Object.defineProperty(cne,"__esModule",{value:!0});cne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CMS.INITBYPROB"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:void 0}});var iXe=E(une=>{"use strict";Object.defineProperty(une,"__esModule",{value:!0});une.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("CMS.MERGE"),t.pushKey(e),t.push(r.length.toString()),Bdr(r))t.pushVariadic(r);else{for(let n=0;n{"use strict";Object.defineProperty(lne,"__esModule",{value:!0});lne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CMS.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var pXe=E(uT=>{"use strict";var qb=uT&&uT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(uT,"__esModule",{value:!0});var oXe=qb(tXe()),cXe=qb(rXe()),uXe=qb(nXe()),lXe=qb(sXe()),dXe=qb(iXe()),fXe=qb(aXe());uT.default={INCRBY:oXe.default,incrBy:oXe.default,INFO:cXe.default,info:cXe.default,INITBYDIM:uXe.default,initByDim:uXe.default,INITBYPROB:lXe.default,initByProb:lXe.default,MERGE:dXe.default,merge:dXe.default,QUERY:fXe.default,query:fXe.default}});var mXe=E(dne=>{"use strict";Object.defineProperty(dne,"__esModule",{value:!0});var Mdr=Ie();dne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADD"),t.pushKey(e),t.push(r)},transformReply:Mdr.transformBooleanReply}});var hXe=E(fne=>{"use strict";Object.defineProperty(fne,"__esModule",{value:!0});var Wdr=Ie();fne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.ADDNX"),t.pushKey(e),t.push(r)},transformReply:Wdr.transformBooleanReply}});var gXe=E(pne=>{"use strict";Object.defineProperty(pne,"__esModule",{value:!0});pne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.COUNT"),t.pushKey(e),t.push(r)},transformReply:void 0}});var AXe=E(mne=>{"use strict";Object.defineProperty(mne,"__esModule",{value:!0});var $dr=Ie();mne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.DEL"),t.pushKey(e),t.push(r)},transformReply:$dr.transformBooleanReply}});var yXe=E(hne=>{"use strict";Object.defineProperty(hne,"__esModule",{value:!0});var Fdr=Ie();hne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("CF.EXISTS"),t.pushKey(e),t.push(r)},transformReply:Fdr.transformBooleanReply}});var xXe=E(gne=>{"use strict";Object.defineProperty(gne,"__esModule",{value:!0});var Udr=Ub();gne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("CF.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Udr.transformInfoV2Reply)(t,r),3:void 0}}});var Ane=E(lT=>{"use strict";Object.defineProperty(lT,"__esModule",{value:!0});lT.parseCfInsertArguments=void 0;var qdr=Ie();function bXe(t,e,r,n){t.pushKey(e),n?.CAPACITY!==void 0&&t.push("CAPACITY",n.CAPACITY.toString()),n?.NOCREATE&&t.push("NOCREATE"),t.push("ITEMS"),t.pushVariadic(r)}lT.parseCfInsertArguments=bXe;lT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("CF.INSERT"),bXe(...t)},transformReply:qdr.transformBooleanArrayReply}});var EXe=E(wf=>{"use strict";var jdr=wf&&wf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Hdr=wf&&wf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Qdr=wf&&wf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&jdr(e,t,r);return Hdr(e,t),e};Object.defineProperty(wf,"__esModule",{value:!0});var yne=Qdr(Ane());wf.default={IS_READ_ONLY:yne.default.IS_READ_ONLY,parseCommand(...t){t[0].push("CF.INSERTNX"),(0,yne.parseCfInsertArguments)(...t)},transformReply:yne.default.transformReply}});var _Xe=E(xne=>{"use strict";Object.defineProperty(xne,"__esModule",{value:!0});xne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.LOADCHUNK"),t.pushKey(e),t.push(r.toString(),n)},transformReply:void 0}});var SXe=E(bne=>{"use strict";Object.defineProperty(bne,"__esModule",{value:!0});bne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("CF.RESERVE"),t.pushKey(e),t.push(r.toString()),n?.BUCKETSIZE!==void 0&&t.push("BUCKETSIZE",n.BUCKETSIZE.toString()),n?.MAXITERATIONS!==void 0&&t.push("MAXITERATIONS",n.MAXITERATIONS.toString()),n?.EXPANSION!==void 0&&t.push("EXPANSION",n.EXPANSION.toString())},transformReply:void 0}});var vXe=E(Ene=>{"use strict";Object.defineProperty(Ene,"__esModule",{value:!0});Ene.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("CF.SCANDUMP"),t.pushKey(e),t.push(r.toString())},transformReply(t){return{iterator:t[0],chunk:t[1]}}}});var BXe=E(dT=>{"use strict";var _u=dT&&dT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(dT,"__esModule",{value:!0});var CXe=_u(mXe()),IXe=_u(hXe()),TXe=_u(gXe()),wXe=_u(AXe()),RXe=_u(yXe()),NXe=_u(xXe()),OXe=_u(Ane()),PXe=_u(EXe()),DXe=_u(_Xe()),kXe=_u(SXe()),LXe=_u(vXe());dT.default={ADD:CXe.default,add:CXe.default,ADDNX:IXe.default,addNX:IXe.default,COUNT:TXe.default,count:TXe.default,DEL:wXe.default,del:wXe.default,EXISTS:RXe.default,exists:RXe.default,INFO:NXe.default,info:NXe.default,INSERT:OXe.default,insert:OXe.default,INSERTNX:PXe.default,insertNX:PXe.default,LOADCHUNK:DXe.default,loadChunk:DXe.default,RESERVE:kXe.default,reserve:kXe.default,SCANDUMP:LXe.default,scanDump:LXe.default}});var MXe=E(_ne=>{"use strict";Object.defineProperty(_ne,"__esModule",{value:!0});_ne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.ADD"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:void 0}});var Sne=E(fT=>{"use strict";Object.defineProperty(fT,"__esModule",{value:!0});fT.transformByRankArguments=void 0;var Gdr=Ie();function WXe(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}fT.transformByRankArguments=WXe;fT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.BYRANK"),WXe(...t)},transformReply:Gdr.transformDoubleArrayReply}});var $Xe=E(Rf=>{"use strict";var Vdr=Rf&&Rf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),zdr=Rf&&Rf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Kdr=Rf&&Rf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Vdr(e,t,r);return zdr(e,t),e};Object.defineProperty(Rf,"__esModule",{value:!0});var vne=Kdr(Sne());Rf.default={IS_READ_ONLY:vne.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.BYREVRANK"),(0,vne.transformByRankArguments)(...t)},transformReply:vne.default.transformReply}});var FXe=E(Cne=>{"use strict";Object.defineProperty(Cne,"__esModule",{value:!0});var Ydr=Ie();Cne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.CDF"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:Ydr.transformDoubleArrayReply}});var UXe=E(Ine=>{"use strict";Object.defineProperty(Ine,"__esModule",{value:!0});Ine.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TDIGEST.CREATE"),t.pushKey(e),r?.COMPRESSION!==void 0&&t.push("COMPRESSION",r.COMPRESSION.toString())},transformReply:void 0}});var qXe=E(Tne=>{"use strict";Object.defineProperty(Tne,"__esModule",{value:!0});var Jdr=Ub();Tne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(0,Jdr.transformInfoV2Reply)(t,r),3:void 0}}});var jXe=E(wne=>{"use strict";Object.defineProperty(wne,"__esModule",{value:!0});var Xdr=Ie();wne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MAX"),t.pushKey(e)},transformReply:Xdr.transformDoubleReply}});var HXe=E(Rne=>{"use strict";Object.defineProperty(Rne,"__esModule",{value:!0});Rne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TDIGEST.MERGE"),t.pushKey(e),t.pushKeysLength(r),n?.COMPRESSION!==void 0&&t.push("COMPRESSION",n.COMPRESSION.toString()),n?.OVERRIDE&&t.push("OVERRIDE")},transformReply:void 0}});var QXe=E(Nne=>{"use strict";Object.defineProperty(Nne,"__esModule",{value:!0});var Zdr=Ie();Nne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TDIGEST.MIN"),t.pushKey(e)},transformReply:Zdr.transformDoubleReply}});var GXe=E(One=>{"use strict";Object.defineProperty(One,"__esModule",{value:!0});var efr=Ie();One.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TDIGEST.QUANTILE"),t.pushKey(e);for(let n of r)t.push(n.toString())},transformReply:efr.transformDoubleArrayReply}});var Pne=E(pT=>{"use strict";Object.defineProperty(pT,"__esModule",{value:!0});pT.transformRankArguments=void 0;function VXe(t,e,r){t.pushKey(e);for(let n of r)t.push(n.toString())}pT.transformRankArguments=VXe;pT.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TDIGEST.RANK"),VXe(...t)},transformReply:void 0}});var zXe=E(Dne=>{"use strict";Object.defineProperty(Dne,"__esModule",{value:!0});Dne.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TDIGEST.RESET"),t.pushKey(e)},transformReply:void 0}});var KXe=E(Nf=>{"use strict";var tfr=Nf&&Nf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),rfr=Nf&&Nf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),nfr=Nf&&Nf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&tfr(e,t,r);return rfr(e,t),e};Object.defineProperty(Nf,"__esModule",{value:!0});var kne=nfr(Pne());Nf.default={IS_READ_ONLY:kne.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TDIGEST.REVRANK"),(0,kne.transformRankArguments)(...t)},transformReply:kne.default.transformReply}});var YXe=E(Lne=>{"use strict";Object.defineProperty(Lne,"__esModule",{value:!0});var sfr=Ie();Lne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TDIGEST.TRIMMED_MEAN"),t.pushKey(e),t.push(r.toString(),n.toString())},transformReply:sfr.transformDoubleReply}});var dZe=E(mT=>{"use strict";var ao=mT&&mT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(mT,"__esModule",{value:!0});var JXe=ao(MXe()),XXe=ao(Sne()),ZXe=ao($Xe()),eZe=ao(FXe()),tZe=ao(UXe()),rZe=ao(qXe()),nZe=ao(jXe()),sZe=ao(HXe()),iZe=ao(QXe()),aZe=ao(GXe()),oZe=ao(Pne()),cZe=ao(zXe()),uZe=ao(KXe()),lZe=ao(YXe());mT.default={ADD:JXe.default,add:JXe.default,BYRANK:XXe.default,byRank:XXe.default,BYREVRANK:ZXe.default,byRevRank:ZXe.default,CDF:eZe.default,cdf:eZe.default,CREATE:tZe.default,create:tZe.default,INFO:rZe.default,info:rZe.default,MAX:nZe.default,max:nZe.default,MERGE:sZe.default,merge:sZe.default,MIN:iZe.default,min:iZe.default,QUANTILE:aZe.default,quantile:aZe.default,RANK:oZe.default,rank:oZe.default,RESET:cZe.default,reset:cZe.default,REVRANK:uZe.default,revRank:uZe.default,TRIMMED_MEAN:lZe.default,trimmedMean:lZe.default}});var fZe=E(Bne=>{"use strict";Object.defineProperty(Bne,"__esModule",{value:!0});Bne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.ADD"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var pZe=E(Mne=>{"use strict";Object.defineProperty(Mne,"__esModule",{value:!0});Mne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TOPK.COUNT"),t.pushKey(e),t.pushVariadic(r)},transformReply:void 0}});var hZe=E(Wne=>{"use strict";Object.defineProperty(Wne,"__esModule",{value:!0});function mZe(t,{item:e,incrementBy:r}){t.push(e,r.toString())}Wne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){if(t.push("TOPK.INCRBY"),t.pushKey(e),Array.isArray(r))for(let n of r)mZe(t,n);else mZe(t,r)},transformReply:void 0}});var gZe=E($ne=>{"use strict";Object.defineProperty($ne,"__esModule",{value:!0});var ifr=Ie(),afr=Ub();$ne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>(t[7]=ifr.transformDoubleReply[2](t[7],e,r),(0,afr.transformInfoV2Reply)(t,r)),3:void 0}}});var AZe=E(Fne=>{"use strict";Object.defineProperty(Fne,"__esModule",{value:!0});Fne.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e),t.push("WITHCOUNT")},transformReply(t){let e=[];for(let r=0;r{"use strict";Object.defineProperty(Une,"__esModule",{value:!0});Une.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TOPK.LIST"),t.pushKey(e)},transformReply:void 0}});var xZe=E(qne=>{"use strict";Object.defineProperty(qne,"__esModule",{value:!0});var ofr=Ie();qne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TOPK.QUERY"),t.pushKey(e),t.pushVariadic(r)},transformReply:ofr.transformBooleanArrayReply}});var bZe=E(jne=>{"use strict";Object.defineProperty(jne,"__esModule",{value:!0});jne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TOPK.RESERVE"),t.pushKey(e),t.push(r.toString()),n&&t.push(n.width.toString(),n.depth.toString(),n.decay.toString())},transformReply:void 0}});var RZe=E(hT=>{"use strict";var Q0=hT&&hT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hT,"__esModule",{value:!0});var EZe=Q0(fZe()),_Ze=Q0(pZe()),SZe=Q0(hZe()),vZe=Q0(gZe()),CZe=Q0(AZe()),IZe=Q0(yZe()),TZe=Q0(xZe()),wZe=Q0(bZe());hT.default={ADD:EZe.default,add:EZe.default,COUNT:_Ze.default,count:_Ze.default,INCRBY:SZe.default,incrBy:SZe.default,INFO:vZe.default,info:vZe.default,LIST_WITHCOUNT:CZe.default,listWithCount:CZe.default,LIST:IZe.default,list:IZe.default,QUERY:TZe.default,query:TZe.default,RESERVE:wZe.default,reserve:wZe.default}});var NZe=E(gT=>{"use strict";var AT=gT&&gT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gT,"__esModule",{value:!0});var cfr=AT(Ub()),ufr=AT(pXe()),lfr=AT(BXe()),dfr=AT(dZe()),ffr=AT(RZe());gT.default={bf:cfr.default,cms:ufr.default,cf:lfr.default,tDigest:dfr.default,topK:ffr.default}});var Hne=E(jb=>{"use strict";var pfr=jb&&jb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(jb,"__esModule",{value:!0});jb.default=void 0;var mfr=NZe();Object.defineProperty(jb,"default",{enumerable:!0,get:function(){return pfr(mfr).default}})});var PZe=E(Qne=>{"use strict";Object.defineProperty(Qne,"__esModule",{value:!0});var OZe=Ie();Qne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,...s){t.push("JSON.ARRAPPEND"),t.pushKey(e),t.push(r,(0,OZe.transformRedisJsonArgument)(n));for(let i=0;i{"use strict";Object.defineProperty(Gne,"__esModule",{value:!0});var hfr=Ie();Gne.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("JSON.ARRINDEX"),t.pushKey(e),t.push(r,(0,hfr.transformRedisJsonArgument)(n)),s?.range&&(t.push(s.range.start.toString()),s.range.stop!==void 0&&t.push(s.range.stop.toString()))},transformReply:void 0}});var LZe=E(Vne=>{"use strict";Object.defineProperty(Vne,"__esModule",{value:!0});var kZe=Ie();Vne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,...i){t.push("JSON.ARRINSERT"),t.pushKey(e),t.push(r,n.toString(),(0,kZe.transformRedisJsonArgument)(s));for(let a=0;a{"use strict";Object.defineProperty(zne,"__esModule",{value:!0});zne.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.ARRLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var MZe=E(Yne=>{"use strict";Object.defineProperty(Yne,"__esModule",{value:!0});var Kne=Ie();Yne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.ARRPOP"),t.pushKey(e),r&&(t.push(r.path),r.index!==void 0&&t.push(r.index.toString()))},transformReply(t){return(0,Kne.isArrayReply)(t)?t.map(e=>(0,Kne.transformRedisJsonNullReply)(e)):(0,Kne.transformRedisJsonNullReply)(t)}}});var WZe=E(Jne=>{"use strict";Object.defineProperty(Jne,"__esModule",{value:!0});Jne.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.ARRTRIM"),t.pushKey(e),t.push(r,n.toString(),s.toString())},transformReply:void 0}});var $Ze=E(Xne=>{"use strict";Object.defineProperty(Xne,"__esModule",{value:!0});Xne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.CLEAR"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var FZe=E(Zne=>{"use strict";Object.defineProperty(Zne,"__esModule",{value:!0});Zne.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEBUG","MEMORY"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var UZe=E(ese=>{"use strict";Object.defineProperty(ese,"__esModule",{value:!0});ese.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.DEL"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var qZe=E(tse=>{"use strict";Object.defineProperty(tse,"__esModule",{value:!0});tse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.FORGET"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var jZe=E(rse=>{"use strict";Object.defineProperty(rse,"__esModule",{value:!0});var gfr=Ie();rse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.GET"),t.pushKey(e),r?.path!==void 0&&t.pushVariadic(r.path)},transformReply:gfr.transformRedisJsonNullReply}});var HZe=E(nse=>{"use strict";Object.defineProperty(nse,"__esModule",{value:!0});var Afr=Ie();nse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.MERGE"),t.pushKey(e),t.push(r,(0,Afr.transformRedisJsonArgument)(n))},transformReply:void 0}});var QZe=E(sse=>{"use strict";Object.defineProperty(sse,"__esModule",{value:!0});var yfr=Ie();sse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.MGET"),t.pushKeys(e),t.push(r)},transformReply(t){return t.map(e=>(0,yfr.transformRedisJsonNullReply)(e))}}});var GZe=E(ise=>{"use strict";Object.defineProperty(ise,"__esModule",{value:!0});var xfr=Ie();ise.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("JSON.MSET");for(let r=0;r{"use strict";Object.defineProperty(ase,"__esModule",{value:!0});ase.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMINCRBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:{2:t=>JSON.parse(t.toString()),3:void 0}}});var VZe=E(yT=>{"use strict";var bfr=yT&&yT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(yT,"__esModule",{value:!0});var Efr=bfr(ose());yT.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.NUMMULTBY"),t.pushKey(e),t.push(r,n.toString())},transformReply:Efr.default.transformReply}});var zZe=E(cse=>{"use strict";Object.defineProperty(cse,"__esModule",{value:!0});cse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.OBJKEYS"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var KZe=E(use=>{"use strict";Object.defineProperty(use,"__esModule",{value:!0});use.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.OBJLEN"),t.pushKey(e),r?.path!==void 0&&t.push(r.path)},transformReply:void 0}});var YZe=E(lse=>{"use strict";Object.defineProperty(lse,"__esModule",{value:!0});var _fr=Ie();lse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("JSON.SET"),t.pushKey(e),t.push(r,(0,_fr.transformRedisJsonArgument)(n)),s?.condition?t.push(s?.condition):s?.NX?t.push("NX"):s?.XX&&t.push("XX")},transformReply:void 0}});var JZe=E(dse=>{"use strict";Object.defineProperty(dse,"__esModule",{value:!0});var Sfr=Ie();dse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("JSON.STRAPPEND"),t.pushKey(e),n?.path!==void 0&&t.push(n.path),t.push((0,Sfr.transformRedisJsonArgument)(r))},transformReply:void 0}});var XZe=E(fse=>{"use strict";Object.defineProperty(fse,"__esModule",{value:!0});fse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.STRLEN"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:void 0}});var ZZe=E(pse=>{"use strict";Object.defineProperty(pse,"__esModule",{value:!0});pse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("JSON.TOGGLE"),t.pushKey(e),t.push(r)},transformReply:void 0}});var eet=E(mse=>{"use strict";Object.defineProperty(mse,"__esModule",{value:!0});mse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("JSON.TYPE"),t.pushKey(e),r?.path&&t.push(r.path)},transformReply:{2:void 0,3:t=>t[0]}}});var Iet=E(Su=>{"use strict";var Gn=Su&&Su.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Su,"__esModule",{value:!0});Su.transformRedisJsonNullReply=Su.transformRedisJsonReply=Su.transformRedisJsonArgument=void 0;var tet=Gn(PZe()),ret=Gn(DZe()),net=Gn(LZe()),set=Gn(BZe()),iet=Gn(MZe()),aet=Gn(WZe()),oet=Gn($Ze()),cet=Gn(FZe()),uet=Gn(UZe()),det=Gn(qZe()),fet=Gn(jZe()),pet=Gn(HZe()),met=Gn(QZe()),het=Gn(GZe()),get=Gn(ose()),Aet=Gn(VZe()),yet=Gn(zZe()),xet=Gn(KZe()),bet=Gn(YZe()),Eet=Gn(JZe()),_et=Gn(XZe()),vet=Gn(ZZe()),Cet=Gn(eet()),hse=Ie();Object.defineProperty(Su,"transformRedisJsonArgument",{enumerable:!0,get:function(){return hse.transformRedisJsonArgument}});Object.defineProperty(Su,"transformRedisJsonReply",{enumerable:!0,get:function(){return hse.transformRedisJsonReply}});Object.defineProperty(Su,"transformRedisJsonNullReply",{enumerable:!0,get:function(){return hse.transformRedisJsonNullReply}});Su.default={ARRAPPEND:tet.default,arrAppend:tet.default,ARRINDEX:ret.default,arrIndex:ret.default,ARRINSERT:net.default,arrInsert:net.default,ARRLEN:set.default,arrLen:set.default,ARRPOP:iet.default,arrPop:iet.default,ARRTRIM:aet.default,arrTrim:aet.default,CLEAR:oet.default,clear:oet.default,DEBUG_MEMORY:cet.default,debugMemory:cet.default,DEL:uet.default,del:uet.default,FORGET:det.default,forget:det.default,GET:fet.default,get:fet.default,MERGE:pet.default,merge:pet.default,MGET:met.default,mGet:met.default,MSET:het.default,mSet:het.default,NUMINCRBY:get.default,numIncrBy:get.default,NUMMULTBY:Aet.default,numMultBy:Aet.default,OBJKEYS:yet.default,objKeys:yet.default,OBJLEN:xet.default,objLen:xet.default,SET:bet.default,set:bet.default,STRAPPEND:Eet.default,strAppend:Eet.default,STRLEN:_et.default,strLen:_et.default,TOGGLE:vet.default,toggle:vet.default,TYPE:Cet.default,type:Cet.default}});var gse=E(Hb=>{"use strict";var vfr=Hb&&Hb.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Hb,"__esModule",{value:!0});Hb.default=void 0;var Cfr=Iet();Object.defineProperty(Hb,"default",{enumerable:!0,get:function(){return vfr(Cfr).default}})});var Tet=E(Ase=>{"use strict";Object.defineProperty(Ase,"__esModule",{value:!0});Ase.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t){t.push("FT._LIST")},transformReply:{2:void 0,3:void 0}}});var BB=E(In=>{"use strict";Object.defineProperty(In,"__esModule",{value:!0});In.REDISEARCH_LANGUAGE=In.parseSchema=In.SCHEMA_GEO_SHAPE_COORD_SYSTEM=In.VAMANA_COMPRESSION_ALGORITHM=In.SCHEMA_VECTOR_FIELD_ALGORITHM=In.SCHEMA_TEXT_FIELD_PHONETIC=In.SCHEMA_FIELD_TYPE=void 0;var wet=Ie();In.SCHEMA_FIELD_TYPE={TEXT:"TEXT",NUMERIC:"NUMERIC",GEO:"GEO",TAG:"TAG",VECTOR:"VECTOR",GEOSHAPE:"GEOSHAPE"};In.SCHEMA_TEXT_FIELD_PHONETIC={DM_EN:"dm:en",DM_FR:"dm:fr",DM_PT:"dm:pt",DM_ES:"dm:es"};In.SCHEMA_VECTOR_FIELD_ALGORITHM={FLAT:"FLAT",HNSW:"HNSW",VAMANA:"SVS-VAMANA"};In.VAMANA_COMPRESSION_ALGORITHM={LVQ4:"LVQ4",LVQ8:"LVQ8",LVQ4x4:"LVQ4x4",LVQ4x8:"LVQ4x8",LeanVec4x8:"LeanVec4x8",LeanVec8x8:"LeanVec8x8"};In.SCHEMA_GEO_SHAPE_COORD_SYSTEM={SPHERICAL:"SPHERICAL",FLAT:"FLAT"};function yse(t,e){e.SORTABLE&&(t.push("SORTABLE"),e.SORTABLE==="UNF"&&t.push("UNF")),e.NOINDEX&&t.push("NOINDEX")}function Ret(t,e){for(let[r,n]of Object.entries(e)){let s=Array.isArray(n)?n:[n];for(let i of s){if(t.push(r),typeof i=="string"){t.push(i);continue}switch(i.AS&&t.push("AS",i.AS),t.push(i.type),i.INDEXMISSING&&t.push("INDEXMISSING"),i.type){case In.SCHEMA_FIELD_TYPE.TEXT:i.NOSTEM&&t.push("NOSTEM"),i.WEIGHT!==void 0&&t.push("WEIGHT",i.WEIGHT.toString()),i.PHONETIC&&t.push("PHONETIC",i.PHONETIC),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),yse(t,i);break;case In.SCHEMA_FIELD_TYPE.NUMERIC:case In.SCHEMA_FIELD_TYPE.GEO:yse(t,i);break;case In.SCHEMA_FIELD_TYPE.TAG:i.SEPARATOR&&t.push("SEPARATOR",i.SEPARATOR),i.CASESENSITIVE&&t.push("CASESENSITIVE"),i.WITHSUFFIXTRIE&&t.push("WITHSUFFIXTRIE"),i.INDEXEMPTY&&t.push("INDEXEMPTY"),yse(t,i);break;case In.SCHEMA_FIELD_TYPE.VECTOR:t.push(i.ALGORITHM);let a=[];switch(a.push("TYPE",i.TYPE,"DIM",i.DIM.toString(),"DISTANCE_METRIC",i.DISTANCE_METRIC),i.INITIAL_CAP!==void 0&&a.push("INITIAL_CAP",i.INITIAL_CAP.toString()),i.ALGORITHM){case In.SCHEMA_VECTOR_FIELD_ALGORITHM.FLAT:i.BLOCK_SIZE!==void 0&&a.push("BLOCK_SIZE",i.BLOCK_SIZE.toString());break;case In.SCHEMA_VECTOR_FIELD_ALGORITHM.HNSW:i.M!==void 0&&a.push("M",i.M.toString()),i.EF_CONSTRUCTION!==void 0&&a.push("EF_CONSTRUCTION",i.EF_CONSTRUCTION.toString()),i.EF_RUNTIME!==void 0&&a.push("EF_RUNTIME",i.EF_RUNTIME.toString());break;case In.SCHEMA_VECTOR_FIELD_ALGORITHM.VAMANA:i.COMPRESSION&&a.push("COMPRESSION",i.COMPRESSION),i.CONSTRUCTION_WINDOW_SIZE!==void 0&&a.push("CONSTRUCTION_WINDOW_SIZE",i.CONSTRUCTION_WINDOW_SIZE.toString()),i.GRAPH_MAX_DEGREE!==void 0&&a.push("GRAPH_MAX_DEGREE",i.GRAPH_MAX_DEGREE.toString()),i.SEARCH_WINDOW_SIZE!==void 0&&a.push("SEARCH_WINDOW_SIZE",i.SEARCH_WINDOW_SIZE.toString()),i.EPSILON!==void 0&&a.push("EPSILON",i.EPSILON.toString()),i.TRAINING_THRESHOLD!==void 0&&a.push("TRAINING_THRESHOLD",i.TRAINING_THRESHOLD.toString()),i.REDUCE!==void 0&&a.push("REDUCE",i.REDUCE.toString());break}t.pushVariadicWithLength(a);break;case In.SCHEMA_FIELD_TYPE.GEOSHAPE:i.COORD_SYSTEM!==void 0&&t.push("COORD_SYSTEM",i.COORD_SYSTEM);break}}}}In.parseSchema=Ret;In.REDISEARCH_LANGUAGE={ARABIC:"Arabic",BASQUE:"Basque",CATALANA:"Catalan",DANISH:"Danish",DUTCH:"Dutch",ENGLISH:"English",FINNISH:"Finnish",FRENCH:"French",GERMAN:"German",GREEK:"Greek",HUNGARIAN:"Hungarian",INDONESAIN:"Indonesian",IRISH:"Irish",ITALIAN:"Italian",LITHUANIAN:"Lithuanian",NEPALI:"Nepali",NORWEIGAN:"Norwegian",PORTUGUESE:"Portuguese",ROMANIAN:"Romanian",RUSSIAN:"Russian",SPANISH:"Spanish",SWEDISH:"Swedish",TAMIL:"Tamil",TURKISH:"Turkish",CHINESE:"Chinese"};In.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CREATE",e),n?.ON&&t.push("ON",n.ON),(0,wet.parseOptionalVariadicArgument)(t,"PREFIX",n?.PREFIX),n?.FILTER&&t.push("FILTER",n.FILTER),n?.LANGUAGE&&t.push("LANGUAGE",n.LANGUAGE),n?.LANGUAGE_FIELD&&t.push("LANGUAGE_FIELD",n.LANGUAGE_FIELD),n?.SCORE&&t.push("SCORE",n.SCORE.toString()),n?.SCORE_FIELD&&t.push("SCORE_FIELD",n.SCORE_FIELD),n?.MAXTEXTFIELDS&&t.push("MAXTEXTFIELDS"),n?.TEMPORARY&&t.push("TEMPORARY",n.TEMPORARY.toString()),n?.NOOFFSETS&&t.push("NOOFFSETS"),n?.NOHL&&t.push("NOHL"),n?.NOFIELDS&&t.push("NOFIELDS"),n?.NOFREQS&&t.push("NOFREQS"),n?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),(0,wet.parseOptionalVariadicArgument)(t,"STOPWORDS",n?.STOPWORDS),t.push("SCHEMA"),Ret(t,r)},transformReply:void 0}});var Net=E(xse=>{"use strict";Object.defineProperty(xse,"__esModule",{value:!0});var Ifr=BB();xse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALTER",e,"SCHEMA","ADD"),(0,Ifr.parseSchema)(t,r)},transformReply:void 0}});var Qb=E(MB=>{"use strict";Object.defineProperty(MB,"__esModule",{value:!0});MB.DEFAULT_DIALECT=void 0;MB.DEFAULT_DIALECT="2"});var xg=E(yg=>{"use strict";Object.defineProperty(yg,"__esModule",{value:!0});yg.parseSearchOptions=yg.parseParamsArgument=void 0;var xT=Ie(),Tfr=Qb();function Oet(t,e){if(e){t.push("PARAMS");let r=[];for(let n in e){if(!Object.hasOwn(e,n))continue;let s=e[n];r.push(n,typeof s=="number"?s.toString():s)}t.pushVariadicWithLength(r)}}yg.parseParamsArgument=Oet;function Pet(t,e){e?.VERBATIM&&t.push("VERBATIM"),e?.NOSTOPWORDS&&t.push("NOSTOPWORDS"),(0,xT.parseOptionalVariadicArgument)(t,"INKEYS",e?.INKEYS),(0,xT.parseOptionalVariadicArgument)(t,"INFIELDS",e?.INFIELDS),(0,xT.parseOptionalVariadicArgument)(t,"RETURN",e?.RETURN),e?.SUMMARIZE&&(t.push("SUMMARIZE"),typeof e.SUMMARIZE=="object"&&((0,xT.parseOptionalVariadicArgument)(t,"FIELDS",e.SUMMARIZE.FIELDS),e.SUMMARIZE.FRAGS!==void 0&&t.push("FRAGS",e.SUMMARIZE.FRAGS.toString()),e.SUMMARIZE.LEN!==void 0&&t.push("LEN",e.SUMMARIZE.LEN.toString()),e.SUMMARIZE.SEPARATOR!==void 0&&t.push("SEPARATOR",e.SUMMARIZE.SEPARATOR))),e?.HIGHLIGHT&&(t.push("HIGHLIGHT"),typeof e.HIGHLIGHT=="object"&&((0,xT.parseOptionalVariadicArgument)(t,"FIELDS",e.HIGHLIGHT.FIELDS),e.HIGHLIGHT.TAGS&&t.push("TAGS",e.HIGHLIGHT.TAGS.open,e.HIGHLIGHT.TAGS.close))),e?.SLOP!==void 0&&t.push("SLOP",e.SLOP.toString()),e?.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString()),e?.INORDER&&t.push("INORDER"),e?.LANGUAGE&&t.push("LANGUAGE",e.LANGUAGE),e?.EXPANDER&&t.push("EXPANDER",e.EXPANDER),e?.SCORER&&t.push("SCORER",e.SCORER),e?.SORTBY&&(t.push("SORTBY"),typeof e.SORTBY=="string"||e.SORTBY instanceof Buffer?t.push(e.SORTBY):(t.push(e.SORTBY.BY),e.SORTBY.DIRECTION&&t.push(e.SORTBY.DIRECTION))),e?.LIMIT&&t.push("LIMIT",e.LIMIT.from.toString(),e.LIMIT.size.toString()),Oet(t,e?.PARAMS),e?.DIALECT?t.push("DIALECT",e.DIALECT.toString()):t.push("DIALECT",Tfr.DEFAULT_DIALECT)}yg.parseSearchOptions=Pet;yg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SEARCH",e,r),Pet(t,n)},transformReply:{2:t=>{let e=t.length>2&&!Array.isArray(t[2]),r=[],n=1;for(;n{"use strict";Object.defineProperty(on,"__esModule",{value:!0});on.parseGroupByReducer=on.parseAggregateOptions=on.FT_AGGREGATE_GROUP_BY_REDUCERS=on.FT_AGGREGATE_STEPS=void 0;var Rfr=xg(),Nfr=Ie(),Ofr=Qb();on.FT_AGGREGATE_STEPS={GROUPBY:"GROUPBY",SORTBY:"SORTBY",APPLY:"APPLY",LIMIT:"LIMIT",FILTER:"FILTER"};on.FT_AGGREGATE_GROUP_BY_REDUCERS={COUNT:"COUNT",COUNT_DISTINCT:"COUNT_DISTINCT",COUNT_DISTINCTISH:"COUNT_DISTINCTISH",SUM:"SUM",MIN:"MIN",MAX:"MAX",AVG:"AVG",STDDEV:"STDDEV",QUANTILE:"QUANTILE",TOLIST:"TOLIST",FIRST_VALUE:"FIRST_VALUE",RANDOM_SAMPLE:"RANDOM_SAMPLE"};on.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!1,parseCommand(t,e,r,n){return t.push("FT.AGGREGATE",e,r),Let(t,n)},transformReply:{2:(t,e,r)=>{let n=[];for(let s=1;s{"use strict";var Pfr=bT&&bT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(bT,"__esModule",{value:!0});var Ese=Pfr(Gb());bT.default={IS_READ_ONLY:Ese.default.IS_READ_ONLY,parseCommand(t,e,r,n){Ese.default.parseCommand(t,e,r,n),t.push("WITHCURSOR"),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.MAXIDLE!==void 0&&t.push("MAXIDLE",n.MAXIDLE.toString())},transformReply:{2:t=>({...Ese.default.transformReply[2](t[0]),cursor:t[1]}),3:void 0},unstableResp3:!0}});var Bet=E(Sse=>{"use strict";Object.defineProperty(Sse,"__esModule",{value:!0});Sse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASADD",e,r)},transformReply:void 0}});var Met=E(vse=>{"use strict";Object.defineProperty(vse,"__esModule",{value:!0});vse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.ALIASDEL",e)},transformReply:void 0}});var Wet=E(Cse=>{"use strict";Object.defineProperty(Cse,"__esModule",{value:!0});Cse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.ALIASUPDATE",e,r)},transformReply:void 0}});var $et=E(Ise=>{"use strict";Object.defineProperty(Ise,"__esModule",{value:!0});Ise.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.CONFIG","GET",e)},transformReply(t){let e=Object.create(null);for(let r of t){let[n,s]=r;e[n.toString()]=s}return e}}});var Fet=E(Tse=>{"use strict";Object.defineProperty(Tse,"__esModule",{value:!0});Tse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CONFIG","SET",e,r)},transformReply:void 0}});var Uet=E(wse=>{"use strict";Object.defineProperty(wse,"__esModule",{value:!0});wse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.CURSOR","DEL",e,r.toString())},transformReply:void 0}});var qet=E(ET=>{"use strict";var Dfr=ET&&ET.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(ET,"__esModule",{value:!0});var kfr=Dfr(_se());ET.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.CURSOR","READ",e,r.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString())},transformReply:kfr.default.transformReply,unstableResp3:!0}});var jet=E(Rse=>{"use strict";Object.defineProperty(Rse,"__esModule",{value:!0});Rse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTADD",e),t.pushVariadic(r)},transformReply:void 0}});var Het=E(Nse=>{"use strict";Object.defineProperty(Nse,"__esModule",{value:!0});Nse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DICTDEL",e),t.pushVariadic(r)},transformReply:void 0}});var Qet=E(Ose=>{"use strict";Object.defineProperty(Ose,"__esModule",{value:!0});Ose.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.DICTDUMP",e)},transformReply:{2:void 0,3:void 0}}});var Get=E(Pse=>{"use strict";Object.defineProperty(Pse,"__esModule",{value:!0});Pse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.DROPINDEX",e),r?.DD&&t.push("DD")},transformReply:{2:void 0,3:void 0}}});var Vet=E(Dse=>{"use strict";Object.defineProperty(Dse,"__esModule",{value:!0});var Lfr=xg(),Bfr=Qb();Dse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAIN",e,r),(0,Lfr.parseParamsArgument)(t,n?.PARAMS),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Bfr.DEFAULT_DIALECT)},transformReply:void 0}});var zet=E(kse=>{"use strict";Object.defineProperty(kse,"__esModule",{value:!0});var Mfr=Qb();kse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.EXPLAINCLI",e,r),n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",Mfr.DEFAULT_DIALECT)},transformReply:void 0}});var Jet=E(vu=>{"use strict";Object.defineProperty(vu,"__esModule",{value:!0});vu.FT_HYBRID_COMBINE_METHOD=vu.FT_HYBRID_VECTOR_METHOD=void 0;var Ket=Ie(),Wfr=xg(),$fr=Gb();vu.FT_HYBRID_VECTOR_METHOD={KNN:"KNN",RANGE:"RANGE"};vu.FT_HYBRID_COMBINE_METHOD={RRF:"RRF",LINEAR:"LINEAR"};function Ffr(t,e){t.push("SEARCH",e.query),e.SCORER&&t.push("SCORER",e.SCORER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function Ufr(t,e){if(t.push("VSIM",e.field,e.vector),e.method){if(e.method.type===vu.FT_HYBRID_VECTOR_METHOD.KNN){let r=2;e.method.EF_RUNTIME!==void 0&&(r+=2),t.push("KNN",r.toString(),"K",e.method.K.toString()),e.method.EF_RUNTIME!==void 0&&t.push("EF_RUNTIME",e.method.EF_RUNTIME.toString())}if(e.method.type===vu.FT_HYBRID_VECTOR_METHOD.RANGE){let r=2;e.method.EPSILON!==void 0&&(r+=2),t.push("RANGE",r.toString(),"RADIUS",e.method.RADIUS.toString()),e.method.EPSILON!==void 0&&t.push("EPSILON",e.method.EPSILON.toString())}}e.FILTER&&t.push("FILTER",e.FILTER),e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}function qfr(t,e){if(e){if(t.push("COMBINE"),e.method.type===vu.FT_HYBRID_COMBINE_METHOD.RRF){let r=0;e.method.WINDOW!==void 0&&(r+=2),e.method.CONSTANT!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("RRF",r.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString()),e.method.CONSTANT!==void 0&&t.push("CONSTANT",e.method.CONSTANT.toString())}if(e.method.type===vu.FT_HYBRID_COMBINE_METHOD.LINEAR){let r=0;e.method.ALPHA!==void 0&&(r+=2),e.method.BETA!==void 0&&(r+=2),e.method.WINDOW!==void 0&&(r+=2),e.YIELD_SCORE_AS&&(r+=2),t.push("LINEAR",r.toString()),e.method.ALPHA!==void 0&&t.push("ALPHA",e.method.ALPHA.toString()),e.method.BETA!==void 0&&t.push("BETA",e.method.BETA.toString()),e.method.WINDOW!==void 0&&t.push("WINDOW",e.method.WINDOW.toString())}e.YIELD_SCORE_AS&&t.push("YIELD_SCORE_AS",e.YIELD_SCORE_AS)}}function jfr(t,e){t.push("APPLY",e.expression),e.AS&&t.push("AS",e.AS)}function Hfr(t,e){if(Ffr(t,e.SEARCH),Ufr(t,e.VSIM),e.COMBINE&&qfr(t,e.COMBINE),e.LOAD&&(e.LOAD==="*"?t.push("LOAD","*"):(0,Ket.parseOptionalVariadicArgument)(t,"LOAD",e.LOAD)),e.GROUPBY&&((0,Ket.parseOptionalVariadicArgument)(t,"GROUPBY",e.GROUPBY.fields),e.GROUPBY.REDUCE)){let n=Array.isArray(e.GROUPBY.REDUCE)?e.GROUPBY.REDUCE:[e.GROUPBY.REDUCE];for(let s of n)(0,$fr.parseGroupByReducer)(t,s)}if(e.APPLY){let n=Array.isArray(e.APPLY)?e.APPLY:[e.APPLY];for(let s of n)jfr(t,s)}if(e.SORTBY){let n=e.SORTBY.fields.reduce((s,i)=>i.direction?s+2:s+1,0);t.push("SORTBY",n.toString());for(let s of e.SORTBY.fields)t.push(s.field),s.direction&&t.push(s.direction)}e.NOSORT&&t.push("NOSORT"),e.FILTER&&t.push("FILTER",e.FILTER),e.LIMIT&&t.push("LIMIT",e.LIMIT.offset.toString(),e.LIMIT.count.toString());let r=e.PARAMS&&Object.keys(e.PARAMS).length>0;(0,Wfr.parseParamsArgument)(t,r?e.PARAMS:void 0),e.TIMEOUT!==void 0&&t.push("TIMEOUT",e.TIMEOUT.toString())}vu.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.HYBRID",e),Hfr(t,r)},transformReply:{2:t=>Qfr(t),3:void 0},unstableResp3:!0};function Qfr(t){let e=Yet(t),r=e.total_results??0,n=e.results??[],s=e.warnings??[],i=e.execution_time?Number.parseFloat(e.execution_time):0,a=[];for(let o of n){let c=Yet(o),u=Object.create(null);for(let[l,d]of Object.entries(c))if(l==="$")try{Object.assign(u,JSON.parse(d))}catch{u[l]=d}else u[l]=d;a.push(u)}return{totalResults:r,executionTime:i,warnings:s,results:a}}function Yet(t){let e={};if(!Array.isArray(t))return e;for(let r=0;r{"use strict";Object.defineProperty(Bse,"__esModule",{value:!0});var Lse=Ie();Bse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.INFO",e)},transformReply:{2:Gfr,3:void 0},unstableResp3:!0};function Gfr(t,e,r){let n=(0,Lse.createTransformTuplesReplyFunc)(e,r),s={};for(let i=0;in(o));break;case"gc_stats":{let o={},c=t[i+1];for(let u=0;u{"use strict";var Vfr=Of&&Of.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),zfr=Of&&Of.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Kfr=Of&&Of.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Vfr(e,t,r);return zfr(e,t),e};Object.defineProperty(Of,"__esModule",{value:!0});var Zet=Kfr(xg());Of.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"SEARCH"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,Zet.parseSearchOptions)(t,n)},transformReply:{2:t=>({results:Zet.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var rtt=E(Pf=>{"use strict";var Yfr=Pf&&Pf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Jfr=Pf&&Pf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Xfr=Pf&&Pf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Yfr(e,t,r);return Jfr(e,t),e};Object.defineProperty(Pf,"__esModule",{value:!0});var ttt=Xfr(Gb());Pf.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.PROFILE",e,"AGGREGATE"),n?.LIMITED&&t.push("LIMITED"),t.push("QUERY",r),(0,ttt.parseAggregateOptions)(t,n)},transformReply:{2:t=>({results:ttt.default.transformReply[2](t[0]),profile:t[1]}),3:t=>t},unstableResp3:!0}});var ntt=E(_T=>{"use strict";var Zfr=_T&&_T.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_T,"__esModule",{value:!0});var Mse=Zfr(xg());_T.default={NOT_KEYED_COMMAND:Mse.default.NOT_KEYED_COMMAND,IS_READ_ONLY:Mse.default.IS_READ_ONLY,parseCommand(...t){Mse.default.parseCommand(...t),t[0].push("NOCONTENT")},transformReply:{2:t=>({total:t[0],documents:t.slice(1)}),3:void 0},unstableResp3:!0}});var itt=E(Wse=>{"use strict";Object.defineProperty(Wse,"__esModule",{value:!0});var epr=Qb();Wse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n){if(t.push("FT.SPELLCHECK",e,r),n?.DISTANCE&&t.push("DISTANCE",n.DISTANCE.toString()),n?.TERMS)if(Array.isArray(n.TERMS))for(let s of n.TERMS)stt(t,s);else stt(t,n.TERMS);n?.DIALECT?t.push("DIALECT",n.DIALECT.toString()):t.push("DIALECT",epr.DEFAULT_DIALECT)},transformReply:{2:t=>t.map(([,e,r])=>({term:e,suggestions:r.map(([n,s])=>({score:Number(n),suggestion:s}))})),3:void 0},unstableResp3:!0};function stt(t,{mode:e,dictionary:r}){t.push("TERMS",e,r)}});var att=E($se=>{"use strict";Object.defineProperty($se,"__esModule",{value:!0});$se.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SUGADD"),t.pushKey(e),t.push(r,n.toString()),s?.INCR&&t.push("INCR"),s?.PAYLOAD&&t.push("PAYLOAD",s.PAYLOAD)},transformReply:void 0}});var ott=E(Fse=>{"use strict";Object.defineProperty(Fse,"__esModule",{value:!0});Fse.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.SUGDEL"),t.pushKey(e),t.push(r)},transformReply:void 0}});var ST=E(Use=>{"use strict";Object.defineProperty(Use,"__esModule",{value:!0});Use.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("FT.SUGGET"),t.pushKey(e),t.push(r),n?.FUZZY&&t.push("FUZZY"),n?.MAX!==void 0&&t.push("MAX",n.MAX.toString())},transformReply:void 0}});var utt=E(vT=>{"use strict";var tpr=vT&&vT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(vT,"__esModule",{value:!0});var rpr=Ie(),ctt=tpr(ST());vT.default={IS_READ_ONLY:ctt.default.IS_READ_ONLY,parseCommand(...t){ctt.default.parseCommand(...t),t[0].push("WITHPAYLOADS")},transformReply(t){if((0,rpr.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r{"use strict";var npr=CT&&CT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(CT,"__esModule",{value:!0});var qse=Ie(),ltt=npr(ST());CT.default={IS_READ_ONLY:ltt.default.IS_READ_ONLY,parseCommand(...t){ltt.default.parseCommand(...t),t[0].push("WITHSCORES","WITHPAYLOADS")},transformReply:{2:(t,e,r)=>{if((0,qse.isNullReply)(t))return null;let n=new Array(t.length/3),s=0,i=0;for(;s{if((0,qse.isNullReply)(t))return null;let e=new Array(t.length/3),r=0,n=0;for(;r{"use strict";var spr=IT&&IT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(IT,"__esModule",{value:!0});var jse=Ie(),ftt=spr(ST());IT.default={IS_READ_ONLY:ftt.default.IS_READ_ONLY,parseCommand(...t){ftt.default.parseCommand(...t),t[0].push("WITHSCORES")},transformReply:{2:(t,e,r)=>{if((0,jse.isNullReply)(t))return null;let n=new Array(t.length/2),s=0,i=0;for(;s{if((0,jse.isNullReply)(t))return null;let e=new Array(t.length/2),r=0,n=0;for(;r{"use strict";Object.defineProperty(Hse,"__esModule",{value:!0});Hse.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SUGLEN",e)},transformReply:void 0}});var htt=E(Qse=>{"use strict";Object.defineProperty(Qse,"__esModule",{value:!0});Qse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("FT.SYNDUMP",e)},transformReply:{2:t=>{let e={},r=0;for(;r{"use strict";Object.defineProperty(Gse,"__esModule",{value:!0});Gse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r,n,s){t.push("FT.SYNUPDATE",e,r),s?.SKIPINITIALSCAN&&t.push("SKIPINITIALSCAN"),t.pushVariadic(n)},transformReply:void 0}});var Att=E(Vse=>{"use strict";Object.defineProperty(Vse,"__esModule",{value:!0});Vse.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("FT.TAGVALS",e,r)},transformReply:{2:void 0,3:void 0}}});var Ztt=E(TT=>{"use strict";var _r=TT&&TT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(TT,"__esModule",{value:!0});var ytt=_r(Tet()),xtt=_r(Net()),btt=_r(_se()),Ett=_r(Gb()),_tt=_r(Bet()),Stt=_r(Met()),vtt=_r(Wet()),Ctt=_r($et()),Itt=_r(Fet()),Ttt=_r(BB()),wtt=_r(Uet()),Rtt=_r(qet()),Ntt=_r(jet()),Ott=_r(Het()),Ptt=_r(Qet()),Dtt=_r(Get()),ktt=_r(Vet()),Ltt=_r(zet()),Btt=_r(Jet()),Mtt=_r(Xet()),Wtt=_r(ett()),$tt=_r(rtt()),Ftt=_r(ntt()),Utt=_r(xg()),qtt=_r(itt()),jtt=_r(att()),Htt=_r(ott()),Qtt=_r(utt()),Gtt=_r(dtt()),Vtt=_r(ptt()),ztt=_r(ST()),Ktt=_r(mtt()),Ytt=_r(htt()),Jtt=_r(gtt()),Xtt=_r(Att());TT.default={_LIST:ytt.default,_list:ytt.default,ALTER:xtt.default,alter:xtt.default,AGGREGATE_WITHCURSOR:btt.default,aggregateWithCursor:btt.default,AGGREGATE:Ett.default,aggregate:Ett.default,ALIASADD:_tt.default,aliasAdd:_tt.default,ALIASDEL:Stt.default,aliasDel:Stt.default,ALIASUPDATE:vtt.default,aliasUpdate:vtt.default,CONFIG_GET:Ctt.default,configGet:Ctt.default,CONFIG_SET:Itt.default,configSet:Itt.default,CREATE:Ttt.default,create:Ttt.default,CURSOR_DEL:wtt.default,cursorDel:wtt.default,CURSOR_READ:Rtt.default,cursorRead:Rtt.default,DICTADD:Ntt.default,dictAdd:Ntt.default,DICTDEL:Ott.default,dictDel:Ott.default,DICTDUMP:Ptt.default,dictDump:Ptt.default,DROPINDEX:Dtt.default,dropIndex:Dtt.default,EXPLAIN:ktt.default,explain:ktt.default,EXPLAINCLI:Ltt.default,explainCli:Ltt.default,HYBRID:Btt.default,hybrid:Btt.default,INFO:Mtt.default,info:Mtt.default,PROFILESEARCH:Wtt.default,profileSearch:Wtt.default,PROFILEAGGREGATE:$tt.default,profileAggregate:$tt.default,SEARCH_NOCONTENT:Ftt.default,searchNoContent:Ftt.default,SEARCH:Utt.default,search:Utt.default,SPELLCHECK:qtt.default,spellCheck:qtt.default,SUGADD:jtt.default,sugAdd:jtt.default,SUGDEL:Htt.default,sugDel:Htt.default,SUGGET_WITHPAYLOADS:Qtt.default,sugGetWithPayloads:Qtt.default,SUGGET_WITHSCORES_WITHPAYLOADS:Gtt.default,sugGetWithScoresWithPayloads:Gtt.default,SUGGET_WITHSCORES:Vtt.default,sugGetWithScores:Vtt.default,SUGGET:ztt.default,sugGet:ztt.default,SUGLEN:Ktt.default,sugLen:Ktt.default,SYNDUMP:Ytt.default,synDump:Ytt.default,SYNUPDATE:Jtt.default,synUpdate:Jtt.default,TAGVALS:Xtt.default,tagVals:Xtt.default}});var zse=E(si=>{"use strict";var ipr=si&&si.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(si,"__esModule",{value:!0});si.FT_AGGREGATE_STEPS=si.FT_AGGREGATE_GROUP_BY_REDUCERS=si.SCHEMA_VECTOR_FIELD_ALGORITHM=si.SCHEMA_TEXT_FIELD_PHONETIC=si.SCHEMA_FIELD_TYPE=si.REDISEARCH_LANGUAGE=si.default=void 0;var apr=Ztt();Object.defineProperty(si,"default",{enumerable:!0,get:function(){return ipr(apr).default}});var WB=BB();Object.defineProperty(si,"REDISEARCH_LANGUAGE",{enumerable:!0,get:function(){return WB.REDISEARCH_LANGUAGE}});Object.defineProperty(si,"SCHEMA_FIELD_TYPE",{enumerable:!0,get:function(){return WB.SCHEMA_FIELD_TYPE}});Object.defineProperty(si,"SCHEMA_TEXT_FIELD_PHONETIC",{enumerable:!0,get:function(){return WB.SCHEMA_TEXT_FIELD_PHONETIC}});Object.defineProperty(si,"SCHEMA_VECTOR_FIELD_ALGORITHM",{enumerable:!0,get:function(){return WB.SCHEMA_VECTOR_FIELD_ALGORITHM}});var ert=Gb();Object.defineProperty(si,"FT_AGGREGATE_GROUP_BY_REDUCERS",{enumerable:!0,get:function(){return ert.FT_AGGREGATE_GROUP_BY_REDUCERS}});Object.defineProperty(si,"FT_AGGREGATE_STEPS",{enumerable:!0,get:function(){return ert.FT_AGGREGATE_STEPS}})});var ii=E(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.transformRESP2LabelsWithSources=gr.transformRESP2Labels=gr.parseSelectedLabelsArguments=gr.resp3MapToValue=gr.resp2MapToValue=gr.transformSamplesReply=gr.transformSampleReply=gr.parseLabelsArgument=gr.transformTimestampArgument=gr.parseDuplicatePolicy=gr.TIME_SERIES_DUPLICATE_POLICIES=gr.parseChunkSizeArgument=gr.parseEncodingArgument=gr.TIME_SERIES_ENCODING=gr.parseRetentionArgument=gr.parseIgnoreArgument=void 0;var Kse=cT();function opr(t,e){e!==void 0&&t.push("IGNORE",e.maxTimeDiff.toString(),e.maxValDiff.toString())}gr.parseIgnoreArgument=opr;function cpr(t,e){e!==void 0&&t.push("RETENTION",e.toString())}gr.parseRetentionArgument=cpr;gr.TIME_SERIES_ENCODING={COMPRESSED:"COMPRESSED",UNCOMPRESSED:"UNCOMPRESSED"};function upr(t,e){e!==void 0&&t.push("ENCODING",e)}gr.parseEncodingArgument=upr;function lpr(t,e){e!==void 0&&t.push("CHUNK_SIZE",e.toString())}gr.parseChunkSizeArgument=lpr;gr.TIME_SERIES_DUPLICATE_POLICIES={BLOCK:"BLOCK",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM"};function dpr(t,e){e!==void 0&&t.push("DUPLICATE_POLICY",e)}gr.parseDuplicatePolicy=dpr;function fpr(t){return typeof t=="string"?t:(typeof t=="number"?t:t.getTime()).toString()}gr.transformTimestampArgument=fpr;function ppr(t,e){if(e){t.push("LABELS");for(let[r,n]of Object.entries(e))t.push(r,n)}}gr.parseLabelsArgument=ppr;gr.transformSampleReply={2(t){let[e,r]=t;return{timestamp:e,value:Number(r)}},3(t){let[e,r]=t;return{timestamp:e,value:r}}};gr.transformSamplesReply={2(t){return t.map(e=>gr.transformSampleReply[2](e))},3(t){return t.map(e=>gr.transformSampleReply[3](e))}};function mpr(t,e,r){let n=t;switch(r?.[Kse.RESP_TYPES.MAP]){case Map:{let s=new Map;for(let i of n){let a=i,o=a[0];s.set(o.toString(),e(a))}return s}case Array:{for(let s of n){let i=s;i[1]=e(i)}return n}default:{let s=Object.create(null);for(let i of n){let a=i,o=a[0];s[o.toString()]=e(a)}return s}}}gr.resp2MapToValue=mpr;function hpr(t,e){let r=t;if(r instanceof Array)for(let n=1;n{"use strict";Object.defineProperty(Yse,"__esModule",{value:!0});var Vb=ii();Yse.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s){t.push("TS.ADD"),t.pushKey(e),t.push((0,Vb.transformTimestampArgument)(r),n.toString()),(0,Vb.parseRetentionArgument)(t,s?.RETENTION),(0,Vb.parseEncodingArgument)(t,s?.ENCODING),(0,Vb.parseChunkSizeArgument)(t,s?.CHUNK_SIZE),s?.ON_DUPLICATE&&t.push("ON_DUPLICATE",s.ON_DUPLICATE),(0,Vb.parseLabelsArgument)(t,s?.LABELS),(0,Vb.parseIgnoreArgument)(t,s?.IGNORE)},transformReply:void 0}});var rrt=E(Jse=>{"use strict";Object.defineProperty(Jse,"__esModule",{value:!0});var wT=ii();Jse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.ALTER"),t.pushKey(e),(0,wT.parseRetentionArgument)(t,r?.RETENTION),(0,wT.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,wT.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,wT.parseLabelsArgument)(t,r?.LABELS),(0,wT.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var nrt=E(Xse=>{"use strict";Object.defineProperty(Xse,"__esModule",{value:!0});var zb=ii();Xse.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.CREATE"),t.pushKey(e),(0,zb.parseRetentionArgument)(t,r?.RETENTION),(0,zb.parseEncodingArgument)(t,r?.ENCODING),(0,zb.parseChunkSizeArgument)(t,r?.CHUNK_SIZE),(0,zb.parseDuplicatePolicy)(t,r?.DUPLICATE_POLICY),(0,zb.parseLabelsArgument)(t,r?.LABELS),(0,zb.parseIgnoreArgument)(t,r?.IGNORE)},transformReply:void 0}});var Zse=E(RT=>{"use strict";Object.defineProperty(RT,"__esModule",{value:!0});RT.TIME_SERIES_AGGREGATION_TYPE=void 0;RT.TIME_SERIES_AGGREGATION_TYPE={AVG:"AVG",FIRST:"FIRST",LAST:"LAST",MIN:"MIN",MAX:"MAX",SUM:"SUM",RANGE:"RANGE",COUNT:"COUNT",COUNT_NAN:"COUNTNAN",COUNT_ALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S",TWA:"TWA"};RT.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n,s,i){t.push("TS.CREATERULE"),t.pushKeys([e,r]),t.push("AGGREGATION",n,s.toString()),i!==void 0&&t.push(i.toString())},transformReply:void 0}});var eie=E(OT=>{"use strict";Object.defineProperty(OT,"__esModule",{value:!0});OT.parseIncrByArguments=void 0;var NT=ii();function srt(t,e,r,n){t.pushKey(e),t.push(r.toString()),n?.TIMESTAMP!==void 0&&n?.TIMESTAMP!==null&&t.push("TIMESTAMP",(0,NT.transformTimestampArgument)(n.TIMESTAMP)),(0,NT.parseRetentionArgument)(t,n?.RETENTION),n?.UNCOMPRESSED&&t.push("UNCOMPRESSED"),(0,NT.parseChunkSizeArgument)(t,n?.CHUNK_SIZE),(0,NT.parseLabelsArgument)(t,n?.LABELS),(0,NT.parseIgnoreArgument)(t,n?.IGNORE)}OT.parseIncrByArguments=srt;OT.default={IS_READ_ONLY:!1,parseCommand(...t){t[0].push("TS.INCRBY"),srt(...t)},transformReply:void 0}});var irt=E(Df=>{"use strict";var bpr=Df&&Df.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Epr=Df&&Df.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),_pr=Df&&Df.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&bpr(e,t,r);return Epr(e,t),e};Object.defineProperty(Df,"__esModule",{value:!0});var tie=_pr(eie());Df.default={IS_READ_ONLY:tie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.DECRBY"),(0,tie.parseIncrByArguments)(...t)},transformReply:tie.default.transformReply}});var ort=E(rie=>{"use strict";Object.defineProperty(rie,"__esModule",{value:!0});var art=ii();rie.default={IS_READ_ONLY:!1,parseCommand(t,e,r,n){t.push("TS.DEL"),t.pushKey(e),t.push((0,art.transformTimestampArgument)(r),(0,art.transformTimestampArgument)(n))},transformReply:void 0}});var crt=E(nie=>{"use strict";Object.defineProperty(nie,"__esModule",{value:!0});nie.default={IS_READ_ONLY:!1,parseCommand(t,e,r){t.push("TS.DELETERULE"),t.pushKeys([e,r])},transformReply:void 0}});var urt=E(sie=>{"use strict";Object.defineProperty(sie,"__esModule",{value:!0});sie.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.GET"),t.pushKey(e),r?.LATEST&&t.push("LATEST")},transformReply:{2(t){return t.length===0?null:{timestamp:t[0],value:Number(t[1])}},3(t){return t.length===0?null:{timestamp:t[0],value:t[1]}}}}});var aie=E(iie=>{"use strict";Object.defineProperty(iie,"__esModule",{value:!0});var Spr=Ie();iie.default={IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.INFO"),t.pushKey(e)},transformReply:{2:(t,e,r)=>{let n={};for(let s=0;s({name:a,value:o}));break;case"rules":n[i]=t[s+1].map(([a,o,c])=>({key:a,timeBucket:o,aggregationType:c}));break;case"ignoreMaxValDiff":n[i]=Spr.transformDoubleReply[2](t[27],void 0,r);break}}return n},3:void 0},unstableResp3:!0}});var lrt=E(PT=>{"use strict";var vpr=PT&&PT.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(PT,"__esModule",{value:!0});var oie=vpr(aie());PT.default={IS_READ_ONLY:oie.default.IS_READ_ONLY,parseCommand(t,e){oie.default.parseCommand(t,e),t.push("DEBUG")},transformReply:{2:(t,e,r)=>{let n=oie.default.transformReply[2](t,e,r);for(let s=0;s({startTimestamp:a[1],endTimestamp:a[3],samples:a[5],size:a[7],bytesPerSample:a[9]}));break}}}return n},3:void 0},unstableResp3:!0}});var drt=E(cie=>{"use strict";Object.defineProperty(cie,"__esModule",{value:!0});var Cpr=ii();cie.default={IS_READ_ONLY:!1,parseCommand(t,e){t.push("TS.MADD");for(let{key:r,timestamp:n,value:s}of e)t.pushKey(r),t.push((0,Cpr.transformTimestampArgument)(n),s.toString())},transformReply:void 0}});var ql=E(bg=>{"use strict";Object.defineProperty(bg,"__esModule",{value:!0});bg.parseFilterArgument=bg.parseLatestArgument=void 0;var $B=ii();function frt(t,e){e&&t.push("LATEST")}bg.parseLatestArgument=frt;function prt(t,e){t.push("FILTER"),t.pushVariadic(e)}bg.parseFilterArgument=prt;bg.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),frt(t,r?.LATEST),prt(t,e)},transformReply:{2(t,e,r){return(0,$B.resp2MapToValue)(t,([,,n])=>({sample:$B.transformSampleReply[2](n)}),r)},3(t){return(0,$B.resp3MapToValue)(t,([,e])=>({sample:$B.transformSampleReply[3](e)}))}}}});var uie=E(kT=>{"use strict";Object.defineProperty(kT,"__esModule",{value:!0});kT.createTransformMGetLabelsReply=void 0;var mrt=ql(),DT=ii();function hrt(){return{2(t,e,r){return(0,DT.resp2MapToValue)(t,([,n,s])=>({labels:(0,DT.transformRESP2Labels)(n),sample:DT.transformSampleReply[2](s)}),r)},3(t){return(0,DT.resp3MapToValue)(t,([e,r])=>({labels:e,sample:DT.transformSampleReply[3](r)}))}}}kT.createTransformMGetLabelsReply=hrt;kT.default={IS_READ_ONLY:!0,parseCommand(t,e,r){t.push("TS.MGET"),(0,mrt.parseLatestArgument)(t,r?.LATEST),t.push("WITHLABELS"),(0,mrt.parseFilterArgument)(t,e)},transformReply:hrt()}});var Art=E(lie=>{"use strict";Object.defineProperty(lie,"__esModule",{value:!0});var grt=ql(),Ipr=ii(),Tpr=uie();lie.default={IS_READ_ONLY:!0,parseCommand(t,e,r,n){t.push("TS.MGET"),(0,grt.parseLatestArgument)(t,n?.LATEST),(0,Ipr.parseSelectedLabelsArguments)(t,r),(0,grt.parseFilterArgument)(t,e)},transformReply:(0,Tpr.createTransformMGetLabelsReply)()}});var jl=E(kf=>{"use strict";Object.defineProperty(kf,"__esModule",{value:!0});kf.transformRangeArguments=kf.parseRangeArguments=kf.TIME_SERIES_BUCKET_TIMESTAMP=void 0;var Eg=ii();kf.TIME_SERIES_BUCKET_TIMESTAMP={LOW:"-",MIDDLE:"~",END:"+"};function yrt(t,e,r,n){if(t.push((0,Eg.transformTimestampArgument)(e),(0,Eg.transformTimestampArgument)(r)),n?.LATEST&&t.push("LATEST"),n?.FILTER_BY_TS){t.push("FILTER_BY_TS");for(let s of n.FILTER_BY_TS)t.push((0,Eg.transformTimestampArgument)(s))}n?.FILTER_BY_VALUE&&t.push("FILTER_BY_VALUE",n.FILTER_BY_VALUE.min.toString(),n.FILTER_BY_VALUE.max.toString()),n?.COUNT!==void 0&&t.push("COUNT",n.COUNT.toString()),n?.AGGREGATION&&(n?.ALIGN!==void 0&&t.push("ALIGN",(0,Eg.transformTimestampArgument)(n.ALIGN)),t.push("AGGREGATION",n.AGGREGATION.type,(0,Eg.transformTimestampArgument)(n.AGGREGATION.timeBucket)),n.AGGREGATION.BUCKETTIMESTAMP&&t.push("BUCKETTIMESTAMP",n.AGGREGATION.BUCKETTIMESTAMP),n.AGGREGATION.EMPTY&&t.push("EMPTY"))}kf.parseRangeArguments=yrt;function xrt(t,e,r,n,s){t.pushKey(e),yrt(t,r,n,s)}kf.transformRangeArguments=xrt;kf.default={IS_READ_ONLY:!0,parseCommand(...t){t[0].push("TS.RANGE"),xrt(...t)},transformReply:{2(t){return Eg.transformSamplesReply[2](t)},3(t){return Eg.transformSamplesReply[3](t)}}}});var Kb=E(Cu=>{"use strict";Object.defineProperty(Cu,"__esModule",{value:!0});Cu.extractResp3MRangeSources=Cu.createTransformMRangeGroupByArguments=Cu.parseGroupByArguments=Cu.TIME_SERIES_REDUCERS=void 0;var FB=ii(),wpr=jl(),Rpr=ql();Cu.TIME_SERIES_REDUCERS={AVG:"AVG",SUM:"SUM",MIN:"MIN",MAX:"MAX",RANGE:"RANGE",COUNT:"COUNT",COUNTNAN:"COUNTNAN",COUNTALL:"COUNTALL",STD_P:"STD.P",STD_S:"STD.S",VAR_P:"VAR.P",VAR_S:"VAR.S"};function brt(t,e){t.push("GROUPBY",e.label,"REDUCE",e.REDUCE)}Cu.parseGroupByArguments=brt;function Ert(t){return(e,r,n,s,i,a)=>{e.push(t),(0,wpr.parseRangeArguments)(e,r,n,a),(0,Rpr.parseFilterArgument)(e,s),brt(e,i)}}Cu.createTransformMRangeGroupByArguments=Ert;function _rt(t){let e=t;return e instanceof Map?e.get("sources"):e instanceof Array?e[1]:e.sources}Cu.extractResp3MRangeSources=_rt;Cu.default={IS_READ_ONLY:!0,parseCommand:Ert("TS.MRANGE"),transformReply:{2(t,e,r){return(0,FB.resp2MapToValue)(t,([n,s,i])=>({samples:FB.transformSamplesReply[2](i)}),r)},3(t){return(0,FB.resp3MapToValue)(t,([e,r,n,s])=>({sources:_rt(n),samples:FB.transformSamplesReply[3](s)}))}}}});var UB=E(LT=>{"use strict";Object.defineProperty(LT,"__esModule",{value:!0});LT.createTransformMRangeSelectedLabelsArguments=void 0;var Yb=ii(),Npr=jl(),Opr=ql();function Srt(t){return(e,r,n,s,i,a)=>{e.push(t),(0,Npr.parseRangeArguments)(e,r,n,a),(0,Yb.parseSelectedLabelsArguments)(e,s),(0,Opr.parseFilterArgument)(e,i)}}LT.createTransformMRangeSelectedLabelsArguments=Srt;LT.default={IS_READ_ONLY:!0,parseCommand:Srt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,Yb.resp2MapToValue)(t,([n,s,i])=>({labels:(0,Yb.transformRESP2Labels)(s,r),samples:Yb.transformSamplesReply[2](i)}),r)},3(t){return(0,Yb.resp3MapToValue)(t,([e,r,n])=>({labels:r,samples:Yb.transformSamplesReply[3](n)}))}}}});var fie=E(_g=>{"use strict";var Ppr=_g&&_g.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(_g,"__esModule",{value:!0});_g.createMRangeSelectedLabelsGroupByTransformArguments=void 0;var die=ii(),Dpr=jl(),vrt=Kb(),kpr=ql(),Lpr=Ppr(UB());function Crt(t){return(e,r,n,s,i,a,o)=>{e.push(t),(0,Dpr.parseRangeArguments)(e,r,n,o),(0,die.parseSelectedLabelsArguments)(e,s),(0,kpr.parseFilterArgument)(e,i),(0,vrt.parseGroupByArguments)(e,a)}}_g.createMRangeSelectedLabelsGroupByTransformArguments=Crt;_g.default={IS_READ_ONLY:!0,parseCommand:Crt("TS.MRANGE"),transformReply:{2:Lpr.default.transformReply[2],3(t){return(0,die.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,vrt.extractResp3MRangeSources)(n),samples:die.transformSamplesReply[3](s)}))}}}});var pie=E(MT=>{"use strict";Object.defineProperty(MT,"__esModule",{value:!0});MT.createMRangeWithLabelsGroupByTransformArguments=void 0;var BT=ii(),Bpr=jl(),Irt=Kb(),Mpr=ql();function Trt(t){return(e,r,n,s,i,a)=>{e.push(t),(0,Bpr.parseRangeArguments)(e,r,n,a),e.push("WITHLABELS"),(0,Mpr.parseFilterArgument)(e,s),(0,Irt.parseGroupByArguments)(e,i)}}MT.createMRangeWithLabelsGroupByTransformArguments=Trt;MT.default={IS_READ_ONLY:!0,parseCommand:Trt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,BT.resp2MapToValue)(t,([n,s,i])=>{let a=(0,BT.transformRESP2LabelsWithSources)(s);return{labels:a.labels,sources:a.sources,samples:BT.transformSamplesReply[2](i)}},r)},3(t){return(0,BT.resp3MapToValue)(t,([e,r,n,s])=>({labels:e,sources:(0,Irt.extractResp3MRangeSources)(n),samples:BT.transformSamplesReply[3](s)}))}}}});var mie=E(WT=>{"use strict";Object.defineProperty(WT,"__esModule",{value:!0});WT.createTransformMRangeWithLabelsArguments=void 0;var qB=ii(),Wpr=jl(),$pr=ql();function wrt(t){return(e,r,n,s,i)=>{e.push(t),(0,Wpr.parseRangeArguments)(e,r,n,i),e.push("WITHLABELS"),(0,$pr.parseFilterArgument)(e,s)}}WT.createTransformMRangeWithLabelsArguments=wrt;WT.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:wrt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,qB.resp2MapToValue)(t,([n,s,i])=>{let a=s,o=Object.create(null);for(let c of a){let[u,l]=c,d=u;o[d.toString()]=l}return{labels:o,samples:qB.transformSamplesReply[2](i)}},r)},3(t){return(0,qB.resp3MapToValue)(t,([e,r,n])=>({labels:e,samples:qB.transformSamplesReply[3](n)}))}}}});var hie=E($T=>{"use strict";Object.defineProperty($T,"__esModule",{value:!0});$T.createTransformMRangeArguments=void 0;var jB=ii(),Fpr=jl(),Upr=ql();function Rrt(t){return(e,r,n,s,i)=>{e.push(t),(0,Fpr.parseRangeArguments)(e,r,n,i),(0,Upr.parseFilterArgument)(e,s)}}$T.createTransformMRangeArguments=Rrt;$T.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand:Rrt("TS.MRANGE"),transformReply:{2(t,e,r){return(0,jB.resp2MapToValue)(t,([n,s,i])=>jB.transformSamplesReply[2](i),r)},3(t){return(0,jB.resp3MapToValue)(t,([e,r,n])=>jB.transformSamplesReply[3](n))}}}});var Nrt=E(Lf=>{"use strict";var qpr=Lf&&Lf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),jpr=Lf&&Lf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Hpr=Lf&&Lf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&qpr(e,t,r);return jpr(e,t),e};Object.defineProperty(Lf,"__esModule",{value:!0});var gie=Hpr(Kb());Lf.default={IS_READ_ONLY:gie.default.IS_READ_ONLY,parseCommand:(0,gie.createTransformMRangeGroupByArguments)("TS.MREVRANGE"),transformReply:gie.default.transformReply}});var Ort=E(Bf=>{"use strict";var Qpr=Bf&&Bf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Gpr=Bf&&Bf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Vpr=Bf&&Bf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Qpr(e,t,r);return Gpr(e,t),e};Object.defineProperty(Bf,"__esModule",{value:!0});var Aie=Vpr(fie());Bf.default={IS_READ_ONLY:Aie.default.IS_READ_ONLY,parseCommand:(0,Aie.createMRangeSelectedLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:Aie.default.transformReply}});var Prt=E(Mf=>{"use strict";var zpr=Mf&&Mf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Kpr=Mf&&Mf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Ypr=Mf&&Mf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&zpr(e,t,r);return Kpr(e,t),e};Object.defineProperty(Mf,"__esModule",{value:!0});var yie=Ypr(UB());Mf.default={IS_READ_ONLY:yie.default.IS_READ_ONLY,parseCommand:(0,yie.createTransformMRangeSelectedLabelsArguments)("TS.MREVRANGE"),transformReply:yie.default.transformReply}});var Drt=E(Wf=>{"use strict";var Jpr=Wf&&Wf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),Xpr=Wf&&Wf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),Zpr=Wf&&Wf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Jpr(e,t,r);return Xpr(e,t),e};Object.defineProperty(Wf,"__esModule",{value:!0});var xie=Zpr(pie());Wf.default={IS_READ_ONLY:xie.default.IS_READ_ONLY,parseCommand:(0,xie.createMRangeWithLabelsGroupByTransformArguments)("TS.MREVRANGE"),transformReply:xie.default.transformReply}});var krt=E($f=>{"use strict";var e0r=$f&&$f.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),t0r=$f&&$f.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r0r=$f&&$f.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&e0r(e,t,r);return t0r(e,t),e};Object.defineProperty($f,"__esModule",{value:!0});var HB=r0r(mie());$f.default={NOT_KEYED_COMMAND:HB.default.NOT_KEYED_COMMAND,IS_READ_ONLY:HB.default.IS_READ_ONLY,parseCommand:(0,HB.createTransformMRangeWithLabelsArguments)("TS.MREVRANGE"),transformReply:HB.default.transformReply}});var Lrt=E(Ff=>{"use strict";var n0r=Ff&&Ff.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),s0r=Ff&&Ff.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),i0r=Ff&&Ff.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&n0r(e,t,r);return s0r(e,t),e};Object.defineProperty(Ff,"__esModule",{value:!0});var QB=i0r(hie());Ff.default={NOT_KEYED_COMMAND:QB.default.NOT_KEYED_COMMAND,IS_READ_ONLY:QB.default.IS_READ_ONLY,parseCommand:(0,QB.createTransformMRangeArguments)("TS.MREVRANGE"),transformReply:QB.default.transformReply}});var Brt=E(bie=>{"use strict";Object.defineProperty(bie,"__esModule",{value:!0});bie.default={NOT_KEYED_COMMAND:!0,IS_READ_ONLY:!0,parseCommand(t,e){t.push("TS.QUERYINDEX"),t.pushVariadic(e)},transformReply:{2:void 0,3:void 0}}});var Mrt=E(Uf=>{"use strict";var a0r=Uf&&Uf.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),o0r=Uf&&Uf.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),c0r=Uf&&Uf.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&a0r(e,t,r);return o0r(e,t),e};Object.defineProperty(Uf,"__esModule",{value:!0});var Eie=c0r(jl());Uf.default={IS_READ_ONLY:Eie.default.IS_READ_ONLY,parseCommand(...t){t[0].push("TS.REVRANGE"),(0,Eie.transformRangeArguments)(...t)},transformReply:Eie.default.transformReply}});var mnt=E(Hl=>{"use strict";var u0r=Hl&&Hl.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),l0r=Hl&&Hl.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&u0r(e,t,r)},Kr=Hl&&Hl.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Hl,"__esModule",{value:!0});var Wrt=Kr(trt()),$rt=Kr(rrt()),Frt=Kr(nrt()),Urt=Kr(Zse()),qrt=Kr(irt()),jrt=Kr(ort()),Hrt=Kr(crt()),Qrt=Kr(urt()),Grt=Kr(eie()),Vrt=Kr(lrt()),zrt=Kr(aie()),Krt=Kr(drt()),Yrt=Kr(Art()),Jrt=Kr(uie()),Xrt=Kr(ql()),Zrt=Kr(Kb()),ent=Kr(fie()),tnt=Kr(UB()),rnt=Kr(pie()),nnt=Kr(mie()),snt=Kr(hie()),int=Kr(Nrt()),ant=Kr(Ort()),ont=Kr(Prt()),cnt=Kr(Drt()),unt=Kr(krt()),lnt=Kr(Lrt()),dnt=Kr(Brt()),fnt=Kr(jl()),pnt=Kr(Mrt());l0r(ii(),Hl);Hl.default={ADD:Wrt.default,add:Wrt.default,ALTER:$rt.default,alter:$rt.default,CREATE:Frt.default,create:Frt.default,CREATERULE:Urt.default,createRule:Urt.default,DECRBY:qrt.default,decrBy:qrt.default,DEL:jrt.default,del:jrt.default,DELETERULE:Hrt.default,deleteRule:Hrt.default,GET:Qrt.default,get:Qrt.default,INCRBY:Grt.default,incrBy:Grt.default,INFO_DEBUG:Vrt.default,infoDebug:Vrt.default,INFO:zrt.default,info:zrt.default,MADD:Krt.default,mAdd:Krt.default,MGET_SELECTED_LABELS:Yrt.default,mGetSelectedLabels:Yrt.default,MGET_WITHLABELS:Jrt.default,mGetWithLabels:Jrt.default,MGET:Xrt.default,mGet:Xrt.default,MRANGE_GROUPBY:Zrt.default,mRangeGroupBy:Zrt.default,MRANGE_SELECTED_LABELS_GROUPBY:ent.default,mRangeSelectedLabelsGroupBy:ent.default,MRANGE_SELECTED_LABELS:tnt.default,mRangeSelectedLabels:tnt.default,MRANGE_WITHLABELS_GROUPBY:rnt.default,mRangeWithLabelsGroupBy:rnt.default,MRANGE_WITHLABELS:nnt.default,mRangeWithLabels:nnt.default,MRANGE:snt.default,mRange:snt.default,MREVRANGE_GROUPBY:int.default,mRevRangeGroupBy:int.default,MREVRANGE_SELECTED_LABELS_GROUPBY:ant.default,mRevRangeSelectedLabelsGroupBy:ant.default,MREVRANGE_SELECTED_LABELS:ont.default,mRevRangeSelectedLabels:ont.default,MREVRANGE_WITHLABELS_GROUPBY:cnt.default,mRevRangeWithLabelsGroupBy:cnt.default,MREVRANGE_WITHLABELS:unt.default,mRevRangeWithLabels:unt.default,MREVRANGE:lnt.default,mRevRange:lnt.default,QUERYINDEX:dnt.default,queryIndex:dnt.default,RANGE:fnt.default,range:fnt.default,REVRANGE:pnt.default,revRange:pnt.default}});var Sie=E(Vi=>{"use strict";var d0r=Vi&&Vi.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Vi,"__esModule",{value:!0});Vi.TIME_SERIES_REDUCERS=Vi.TIME_SERIES_BUCKET_TIMESTAMP=Vi.TIME_SERIES_AGGREGATION_TYPE=Vi.TIME_SERIES_DUPLICATE_POLICIES=Vi.TIME_SERIES_ENCODING=Vi.default=void 0;var _ie=mnt();Object.defineProperty(Vi,"default",{enumerable:!0,get:function(){return d0r(_ie).default}});Object.defineProperty(Vi,"TIME_SERIES_ENCODING",{enumerable:!0,get:function(){return _ie.TIME_SERIES_ENCODING}});Object.defineProperty(Vi,"TIME_SERIES_DUPLICATE_POLICIES",{enumerable:!0,get:function(){return _ie.TIME_SERIES_DUPLICATE_POLICIES}});var f0r=Zse();Object.defineProperty(Vi,"TIME_SERIES_AGGREGATION_TYPE",{enumerable:!0,get:function(){return f0r.TIME_SERIES_AGGREGATION_TYPE}});var p0r=jl();Object.defineProperty(Vi,"TIME_SERIES_BUCKET_TIMESTAMP",{enumerable:!0,get:function(){return p0r.TIME_SERIES_BUCKET_TIMESTAMP}});var m0r=Kb();Object.defineProperty(Vi,"TIME_SERIES_REDUCERS",{enumerable:!0,get:function(){return m0r.TIME_SERIES_REDUCERS}})});var hnt=E(gs=>{"use strict";var h0r=gs&&gs.__createBinding||(Object.create?function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}:function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]}),FT=gs&&gs.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&h0r(e,t,r)},GB=gs&&gs.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gs,"__esModule",{value:!0});gs.createSentinel=gs.createCluster=gs.createClientPool=gs.createClient=void 0;var VB=cT(),g0r=GB(Hne()),A0r=GB(gse()),y0r=GB(zse()),x0r=GB(Sie());FT(cT(),gs);FT(Hne(),gs);FT(gse(),gs);FT(zse(),gs);FT(Sie(),gs);var zB={...g0r.default,json:A0r.default,ft:y0r.default,ts:x0r.default};function b0r(t){return(0,VB.createClient)({...t,modules:{...zB,...t?.modules}})}gs.createClient=b0r;function E0r(t,e){return(0,VB.createClientPool)({...t,modules:{...zB,...t?.modules}},e)}gs.createClientPool=E0r;function _0r(t){return(0,VB.createCluster)({...t,modules:{...zB,...t?.modules}})}gs.createCluster=_0r;function S0r(t){return(0,VB.createSentinel)({...t,modules:{...zB,...t?.modules}})}gs.createSentinel=S0r});var JB={};is(JB,{closeLocalRedisConnection:()=>T0r,getLocalRedisCaches:()=>C0r,getLocalRedisKey:()=>gnt,judgeLocalRedisValid:()=>I0r,setLocalRedisKey:()=>KB,setLocalRedisKeyWithExpiry:()=>v0r,updateLocalRedisCaches:()=>YB});async function Jb(){if(rs)return rs;let t=O.localRedisUrl;try{_("info","[Utils] [Local-Redis] \u6B63\u5728\u8FDE\u63A5\u672C\u5730 Redis");let{createClient:e}=await Promise.resolve().then(()=>Re(hnt(),1));return rs=e({url:t,socket:{reconnectStrategy:r=>r>=0?new Error("\u5DF2\u8FBE\u5230\u6700\u5927\u91CD\u8BD5\u6B21\u6570\uFF0C\u505C\u6B62\u91CD\u8FDE"):1e3}}),rs.on("error",r=>{_("error","[Utils] [Local-Redis] \u8FDE\u63A5\u9519\u8BEF"),O.localRedisValid=!1}),rs.on("connect",()=>{_("info","[Utils] [Local-Redis] \u8FDE\u63A5\u6210\u529F")}),await rs.connect(),O.localRedisValid=!0,_("info","[Utils] [Local-Redis] Redis \u5BA2\u6237\u7AEF\u521D\u59CB\u5316\u5B8C\u6210"),rs}catch(e){return _("error","[Utils] [Local-Redis] \u521D\u59CB\u5316\u5931\u8D25:",e.message),O.localRedisValid=!1,null}}async function Xb(){if(!rs)return!1;try{return await rs.ping()==="PONG"}catch(t){return _("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",t.message),O.localRedisValid=!1,!1}}async function gnt(t){try{if(await Xb()||await Jb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");return await rs.get(t)}catch(e){return _("error","[Utils] [Local-Redis] GET \u8BF7\u6C42\u5931\u8D25:",e.message),null}}async function KB(t,e){let r=fb(t,e),n=an(r);if(O.lastHashes[t]===n)return _("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SET \u8BF7\u6C42`),{result:"OK"};try{if(await Xb()||await Jb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let s=await rs.set(t,r);return O.lastHashes[t]=n,_("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F`),{result:s}}catch(s){return _("error","[Utils] [Local-Redis] SET \u8BF7\u6C42\u5931\u8D25:",s.message),{result:"ERROR"}}}async function v0r(t,e,r){let n=fb(t,e),s=an(n);if(O.lastHashes[t]===s)return _("info",`[Utils] [Local-Redis] \u952E ${t} \u65E0\u53D8\u5316\uFF0C\u8DF3\u8FC7 SETEX \u8BF7\u6C42`),{result:"OK"};try{if(await Xb()||await Jb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let i=await rs.setEx(t,r,n);return O.lastHashes[t]=s,_("info",`[Utils] [Local-Redis] \u952E ${t} \u66F4\u65B0\u6210\u529F\uFF08\u5E26\u8FC7\u671F\u65F6\u95F4 ${r}s\uFF09`),{result:i}}catch(i){return _("error","[Utils] [Local-Redis] SETEX \u8BF7\u6C42\u5931\u8D25:",i.message),{result:"ERROR"}}}async function C0r(){if(!O.localCacheInitialized)try{if(_("info","[Utils] [Local-Redis] getLocalRedisCaches start."),await Xb()||await Jb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=["animes","episodeIds","episodeNum","reqRecords","lastSelectMap","todayReqNum"],e=await Promise.all(t.map(n=>gnt(n)));O.animes=e[0]?JSON.parse(e[0]):O.animes,O.episodeIds=e[1]?JSON.parse(e[1]):O.episodeIds,O.episodeNum=e[2]?JSON.parse(e[2]):O.episodeNum,O.reqRecords=e[3]?JSON.parse(e[3]):O.reqRecords;let r=e[4]?JSON.parse(e[4]):null;r&&typeof r=="object"&&(O.lastSelectMap=new Map(Object.entries(r)),_("info",`[Utils] [Local-Redis] Restored lastSelectMap from Local Redis with ${O.lastSelectMap.size} entries`)),O.todayReqNum=e[5]?parseInt(e[5],10):O.todayReqNum,O.lastHashes.animes=an(JSON.stringify(O.animes)),O.lastHashes.episodeIds=an(JSON.stringify(O.episodeIds)),O.lastHashes.episodeNum=an(JSON.stringify(O.episodeNum)),O.lastHashes.reqRecords=an(JSON.stringify(O.reqRecords)),O.lastHashes.lastSelectMap=an(JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.lastHashes.todayReqNum=an(JSON.stringify(O.todayReqNum)),O.localCacheInitialized=!0,_("info","[Utils] [Local-Redis] getLocalRedisCaches completed successfully.")}catch(t){_("error",`[Utils] [Local-Redis] getLocalRedisCaches failed: ${t.message}`,t.stack),O.localCacheInitialized=!0}}async function YB(){try{if(_("info","[Utils] [Local-Redis] updateLocalRedisCaches start."),await Xb()||await Jb(),!rs)throw new Error("\u672C\u5730 Redis \u5BA2\u6237\u7AEF\u672A\u521D\u59CB\u5316");let t=[],e=[{key:"animes",value:O.animes},{key:"episodeIds",value:O.episodeIds},{key:"episodeNum",value:O.episodeNum},{key:"reqRecords",value:O.reqRecords},{key:"lastSelectMap",value:O.lastSelectMap},{key:"todayReqNum",value:O.todayReqNum}];for(let{key:r,value:n}of e){let s=JSON.stringify(r==="lastSelectMap"?Object.fromEntries(n):n),i=an(s);i!==O.lastHashes[r]&&t.push({key:r,value:n,hash:i})}if(t.length>0){_("info",`[Utils] [Local-Redis] Updating ${t.length} changed keys: ${t.map(a=>a.key).join(", ")}`);let r=t.map(async({key:a,value:o})=>KB(a,o)),n=await Promise.all(r),s=0,i=0;n.forEach((a,o)=>{a&&a.result==="OK"?s++:(i++,_("warn",`[Utils] [Local-Redis] Failed to update Local Redis key: ${t[o]?.key}, result: ${JSON.stringify(a)}`))}),i===0?(t.forEach(({key:a,hash:o})=>{O.lastHashes[a]=o}),_("info",`[Utils] [Local-Redis] Local Redis update completed successfully: ${s} keys updated`)):_("warn",`[Utils] [Local-Redis] Local Redis update partially failed: ${s} succeeded, ${i} failed`)}else _("info","[Utils] [Local-Redis] No changes detected, skipping Local Redis update.")}catch(t){_("error",`[Utils] [Local-Redis] updateLocalRedisCaches failed: ${t.message}`,t.stack),_("error",`[Utils] [Local-Redis] Error details - Name: ${t.name}, Cause: ${t.cause?t.cause.message:"N/A"}`)}}async function I0r(t){if(!O.localRedisValid&&O.localRedisUrl&&t!=="/favicon.ico"&&t!=="/robots.txt")try{await Xb()||await Jb(),rs&&await rs.ping()==="PONG"&&(O.localRedisValid=!0)}catch(e){_("error","[Utils] [Local-Redis] \u8FDE\u63A5\u68C0\u67E5\u5931\u8D25:",e.message),O.localRedisValid=!1}}async function T0r(){if(rs)try{await rs.quit(),rs=null,O.localRedisValid=!1,_("info","[Utils] [Local-Redis] \u8FDE\u63A5\u5DF2\u5173\u95ED")}catch(t){_("error","[Utils] [Local-Redis] \u5173\u95ED\u8FDE\u63A5\u5931\u8D25:",t.message)}}var rs,UT=dr(()=>{Pt();St();Is();rs=null});var Lo,iE=dr(()=>{Pt();St();Lo=class{constructor(){}updateLocalEnv(e,r){return typeof O.env<"u"?O.env[e]=r:typeof process<"u"&&(process.env[e]=r),O.reInit(),_("info",`[system] [Server] \u2713 Environment variable updated successfully: ${e}`),!0}delLocalEnv(e){return typeof O.env<"u"&&O.env[e]?delete O.env[e]:typeof process<"u"&&process.env?.[e]&&delete process.env[e],O.reInit(),_("info",`[system] [Server] \u2713 Environment variable deleted successfully: ${e}`),!0}getAllEnv(){let e=O.originalEnvVars,r=O.envVarConfig,n={};for(let[s,i]of Object.entries(e)){let a=r[s]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"};n[s]={value:i,category:a.category,type:a.type,description:a.description,options:a.options}}return n}getEnv(e){return this.getAllEnv()[e]}async setEnv(e,r){throw new Error("Method 'setEnv' must be implemented")}async addEnv(e,r){throw new Error("Method 'addEnv' must be implemented")}async delEnv(e){throw new Error("Method 'delEnv' must be implemented")}async checkParams(e,r,n){throw new Error("Method 'checkParams' must be implemented")}async deploy(e,r,n){throw new Error("Method 'deploy' must be implemented")}}});var Kst={};is(Kst,{CloudflareHandler:()=>Hie});var Hie,Yst=dr(()=>{iE();Pt();St();ar();Hie=class extends Lo{API_URL="https://api.cloudflare.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/client/v4/accounts/${e}/workers/scripts/${r}/settings`,i={headers:{Authorization:`Bearer ${n}`}},a=await ge(s,i);return a&&a?.data&&a?.data?.result&&a?.data?.result?.bindings?a?.data?.result?.bindings:null}_setEnv(e,r,n){let s=e.findIndex(i=>i.name===r);return n==null?s!==-1&&e.splice(s,1):s!==-1?e[s].text=n:e.push({name:r,text:n,type:"plain_text"}),e}async setEnv(e,r){try{let n=await this._getAllEnvs(O.deployPlatformAccount,O.deployPlatformProject,O.deployPlatformToken);if(n===null){_("error","[system] [Server] \u2717 Failed to set environment variable: envs is null");return}let s=`${this.API_URL}/client/v4/accounts/${O.deployPlatformAccount}/workers/scripts/${O.deployPlatformProject}/settings`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},a=new FormData,o={bindings:this._setEnv(n,e,r==null?null:r.toString())};return a.append("settings",new Blob([JSON.stringify(o)],{type:"application/json"}),"settings.json"),await RL(s,a,i),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){return await this.setEnv(e,null),this.delLocalEnv(e)}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){return _("info","[system] [Server] After modifying the environment variables on the cloudflare platform, it will be automatically deployed."),!0}}});var Jst={};is(Jst,{VercelHandler:()=>Qie});var Qie,Xst=dr(()=>{iE();Pt();St();ar();Qie=class extends Lo{API_URL="https://api.vercel.com";async _getAllEnvs(e,r){let n=`${this.API_URL}/v10/projects/${e}/env`,s={headers:{Authorization:`Bearer ${r}`}};return(await ge(n,s)).data.envs}async _getEevId(e){try{let n=(await this._getAllEnvs(O.deployPlatformProject,O.deployPlatformToken)).find(s=>s.key===e);return n||null}catch(r){_("error","[system] [Server] \u2717 Failed to _getEevId:",r.message)}}async setEnv(e,r){let n=await this._getEevId(e);if(!n){_("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let s=`${this.API_URL}/v9/projects/${O.deployPlatformProject}/env/${n.id}`,i={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},a={key:e,value:r.toString(),target:n.target,type:n.type};return await RL(s,JSON.stringify(a),i),this.updateLocalEnv(e,r)}catch(s){_("error","[system] [Server] \u2717 Failed to set environment variable:",s.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/v10/projects/${O.deployPlatformProject}/env`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,value:r.toString(),target:["production","preview","development"],type:"encrypted"};return await Vr(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){let r=await this._getEevId(e);if(!r){_("error","[system] [Server] Error setEnv: \u6CA1\u6709\u627E\u5230\u5BF9\u5E94\u7684\u73AF\u5883\u53D8\u91CF\uFF01");return}try{let n=`${this.API_URL}/v9/projects/${O.deployPlatformProject}/env/${r.id}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await lb(n,s),this.delLocalEnv(e)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/v6/deployments?projectId=${O.deployPlatformProject}&limit=1`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`}},n=await ge(e,r),s;if(n?.data&&n?.data?.deployments&&n?.data?.deployments.length>0)s=n.data.deployments[0].uid;else return _("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(n?.data)),!1;let i=`${this.API_URL}/v13/deployments`,a={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},o={name:O.deployPlatformProject,deploymentId:s,target:"production"},c=await Vr(i,JSON.stringify(o),a);return c?.data?.id?!0:(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(c?.data)),!1)}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var Zst={};is(Zst,{NetlifyHandler:()=>Gie});var Gie,eit=dr(()=>{iE();Pt();St();ar();Gie=class extends Lo{API_URL="https://api.netlify.com";async _getAllEnvs(e,r,n){let s=`${this.API_URL}/api/v1/accounts/${e}/env?site_id=${r}`,i={headers:{Authorization:`Bearer ${n}`}};return await ge(s,i)}async setEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},i={key:e,values:[{context:"all",value:r.toString()}]};return await v8e(n,JSON.stringify(i),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){try{let n=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env?site_id=${O.deployPlatformProject}`,s={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await Vr(n,JSON.stringify([{key:e,values:[{context:"all",value:r}]}]),s),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to add environment variable:",n.message)}}async delEnv(e){try{let r=`${this.API_URL}/api/v1/accounts/${O.deployPlatformAccount}/env/${e}?site_id=${O.deployPlatformProject}`,n={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}};return await lb(r,n),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to add environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/v1/sites/${O.deployPlatformProject}/builds`,r={headers:{Authorization:`Bearer ${O.deployPlatformToken}`,"Content-Type":"application/json"}},s=await Vr(e,JSON.stringify({}),r);return s?.data?.id?!0:(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(s?.data)),!1)}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var tit={};is(tit,{EdgeoneHandler:()=>Vie});var Vie,rit=dr(()=>{iE();Pt();St();ar();Vie=class extends Lo{API_URL="https://pages-api.cloud.tencent.com/v1";async _httpPost(e,r){let n=`${this.API_URL}`,s={headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}};return await Vr(n,JSON.stringify(r),s)}async _getAllEnvs(e,r){let n={Action:"ModifyPagesProjectEnvs",ProjectId:e},s=await this._httpPost(r,n);if(s?.data?.Code!==0)return null;let i=s?.data.Data?.Response?.EnvVars??[];return Object.fromEntries(i.map(({Key:a,Value:o})=>[a,o]))}async setEnv(e,r){try{let n={Action:"ModifyPagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[{Key:e,Value:r.toString()}]};return await this._httpPost(O.deployPlatformToken,n),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r={Action:"DeletePagesProjectEnvs",ProjectId:O.deployPlatformProject,EnvVars:[e]};return await this._httpPost(O.deployPlatformToken,r),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e={Action:"CreatePagesDeployment",ProjectId:O.deployPlatformProject,RepoBranch:"main",ViaMeta:"Github",Provider:"Github"},r=await this._httpPost(O.deployPlatformToken,e);return r?.data?.Code!==0?(_("error","[system] [Server] \u2717 Failed to deploy:",JSON.stringify(r?.data)),!1):!0}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var nit={};is(nit,{HuggingfaceHandler:()=>zie});var zie,sit=dr(()=>{iE();Pt();St();ar();zie=class extends Lo{API_URL="https://huggingface.co";get repoId(){return`${O.deployPlatformAccount}/${O.deployPlatformProject}`}_getOptions(e=O.deployPlatformToken){return{headers:{Authorization:`Bearer ${e}`,"Content-Type":"application/json"}}}_getVariablesUrl(e){return`${this.API_URL}/api/spaces/${e}/variables`}async _getAllEnvs(e,r,n){let s=`${e}/${r}`,i=this._getVariablesUrl(s);return(await ge(i,this._getOptions(n)))?.data}async setEnv(e,r){try{let n=this._getVariablesUrl(this.repoId),s={key:e,value:r.toString()};return await Vr(n,JSON.stringify(s),this._getOptions()),this.updateLocalEnv(e,r)}catch(n){_("error","[system] [Server] \u2717 Failed to set environment variable:",n.message)}}async addEnv(e,r){return await this.setEnv(e,r)}async delEnv(e){try{let r=this._getVariablesUrl(this.repoId);return await lb(r,{...this._getOptions(),body:JSON.stringify({key:e})}),this.delLocalEnv(e)}catch(r){_("error","[system] [Server] \u2717 Failed to del environment variable:",r.message)}}async checkParams(e,r,n){try{return await this._getAllEnvs(e,r,n),!0}catch(s){return _("error","[system] [Server] checkParams failed! accountId, projectId or token is not valid:",s.message),!1}}async deploy(){try{let e=`${this.API_URL}/api/spaces/${this.repoId}/restart`;return await Vr(e,void 0,this._getOptions()),!0}catch(e){return _("error","[system] [Server] \u2717 Failed to deploy:",e.message),!1}}}});var zlt=E(cA=>{"use strict";Object.defineProperty(cA,"__esModule",{value:!0});cA.removeTrailingChar=cA.merge=void 0;var GTr=(...t)=>{let e={};return t.forEach(function(r){var n;for(n in r)n in e&&e[n]===null?e[n]=r[n]:n in e&&Array.isArray(e[n])?e[n]=e[n].concat(r[n]):n in e&&typeof e[n]=="object"?e[n]=(0,cA.merge)(e[n],r[n]):e[n]=r[n]}),e};cA.merge=GTr;var VTr=(t,e)=>t.length>1&&t.endsWith(e)?t.substring(0,t.length-1):t;cA.removeTrailingChar=VTr});var DE=E(cm=>{"use strict";Object.defineProperty(cm,"__esModule",{value:!0});cm.DataError=cm.DatabaseError=cm.NestedError=void 0;var i2=class extends Error{inner;id;constructor(e,r,n){super(e),this.inner=n,this.id=r,this.name=this.constructor.name}toString(){let e=this.name+": "+this.message;return this.inner?e+`: +`+this.inner:e}};cm.NestedError=i2;var oue=class extends i2{};cm.DatabaseError=oue;var cue=class extends i2{};cm.DataError=cue});var pue=E(Sa=>{"use strict";Object.defineProperty(Sa,"__esModule",{value:!0});Sa.getArrayIndicies=Sa.validateArrayIndex=Sa.validateArrayIndicies=Sa.isInt=Sa.ArrayInfo=Sa.arrayRegex=void 0;var kM=DE(),zTr=()=>/^([\.0-9a-zA-Z_$\-][0-9a-zA-Z_\-$\.]*)\[((?!(\]|\[)).*|)\]$/gm;Sa.arrayRegex=zTr;var uue={},lue=class t{property;index=0;append=!1;indicies=[];constructor(e,r){this.property=e;let n=r[0]??0;if(this.append=n===""||r[r.length-1]==="",this.indicies=r,due(n))this.index=parseInt(n);else if(!this.append)throw new kM.DataError("Only numerical values accepted for array index",200)}static processArray(e){if(typeof e>"u")return null;if(uue[e])return uue[e];let n=(0,Sa.arrayRegex)().exec(e.trim());if(n!=null){let s=n[1],i="["+n[2].toString()+"]",a=fue(i);return Klt(a),uue[e]=new t(s,a)}return null}getIndex(e,r){if(this.append)return-1;let n=this.index;if(n==-1){let s=r?e:e[this.property];return s.length===0?0:s.length-1}return n}getData(e){if(this.append)throw new kM.DataError("Can't get data when appending",100);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n[r]}setData(e,r){if(this.append){let n=e[this.property];this.indicies.forEach(s=>{s!==""&&(s=+s,s===-1&&(s=n.length-1),n=n[+s])}),n.push(r)}else{let{index:n,dataForProperty:s}=this.getArrayDataAndIndexFromProperty(e);n===-1?s.push(r):s[n]=r}}delete(e){if(this.append)throw new kM.DataError("Can't delete an appended data",10);let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);n.splice(r,1)}isValid(e){let{index:r,dataForProperty:n}=this.getArrayDataAndIndexFromProperty(e);return n.hasOwnProperty(r)}getArrayDataAndIndexFromProperty(e){let r=0,n=e instanceof Array?e:e[this.property]??e;if(this.indicies.length>0){r=+this.indicies[this.indicies.length-1];for(let s=0;s1}};Sa.ArrayInfo=lue;function due(t){return!isNaN(t)&&Number(t)==t&&!isNaN(parseInt(t,10))}Sa.isInt=due;function Klt(t){let e=t.filter(r=>r==="");if(e.length>1)throw Error("Only one append index is supported for nested arrays");if(e.length===1&&t[t.length-1]!=="")throw Error("Append index must be at the end of the nested array")}Sa.validateArrayIndicies=Klt;function Ylt(t){if(t.length!==0&&!due(t))throw new kM.DataError("Only numerical values accepted for array index",200)}Sa.validateArrayIndex=Ylt;function fue(t){if(t.length===0)return[];if(t.charAt(0)!=="[")throw new Error("Invalid array syntax detected");let e=t.substring(1,t.indexOf("]"));Ylt(e);let r=e.length+2;return[e,...fue(t.substring(r))]}Sa.getArrayIndicies=fue});var Zlt=E(LM=>{"use strict";Object.defineProperty(LM,"__esModule",{value:!0});LM.DBParentData=void 0;var Jlt=pue(),Xlt=DE(),mue=class{parent;data;db;dataPath;constructor(e,r,n,s){this.parent=s,this.data=e,this.db=r,this.dataPath=n}checkArray(e=!1){let r=Jlt.ArrayInfo.processArray(this.parent);if(r&&(!r.append||e)&&!r.isValid(this.data))throw new Xlt.DataError("DataPath: /"+this.dataPath+". Can't find index "+r.index+" in array "+r.property,10);return r}getData(){if(this.parent===void 0)return this.data;let e=this.checkArray();return e?e.getData(this.data):this.data[this.parent]}setData(e){if(this.parent===void 0){this.db.resetData(e);return}let r=Jlt.ArrayInfo.processArray(this.parent);if(r){if(!this.data.hasOwnProperty(r.property))this.data[r.property]=[];else if(!Array.isArray(this.data[r.property]))throw new Xlt.DataError("DataPath: /"+this.dataPath+". "+r.property+" is not an array.",11);r.setData(this.data,e)}else this.data[this.parent]=e}delete(){if(this.parent===void 0){this.db.resetData({});return}let e=this.checkArray(!0);e?e.delete(this.data):delete this.data[this.parent]}};LM.DBParentData=mue});var tdt=E((f0n,edt)=>{edt.exports=function(){"use strict";function t(){this.readers=0,this.queue=[]}function e(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!0,c.readers--,c.queue.length&&c.queue[0]())}}();if(c.readers<0||c.queue.length){var d=!1;if(c.queue.push(function(){!d&&c.readers>=0&&(d=!0,c.queue.shift(),c.readers++,a.call(u,l),c.queue.length&&c.queue[0]())}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(o.scope))},o.timeout)}}else c.readers++,a.call(o.scope,l)}function r(i,a,o){var c;typeof i!="function"?(s.hasOwnProperty(i)||(s[i]=new t),c=s[i]):(o=a,a=i,c=n),o||(o={});var u=null;o.hasOwnProperty("scope")&&(u=o.scope);var l=function(){var p=!1;return function(){p||(p=!0,c.readers=0,c.queue.length&&c.queue[0]())}}();if(c.readers||c.queue.length){var d=!1;if(c.queue.push(function(){d||c.readers||(d=!0,c.queue.shift(),c.readers=-1,a.call(o.scope,l))}),o.hasOwnProperty("timeout")){var f=null;o.hasOwnProperty("timeoutCallback")&&(f=o.timeoutCallback),setTimeout(function(){d||(d=!0,c.queue.shift(),f&&f.call(u))},o.timeout)}}else c.readers=-1,a.call(o.scope,l)}var n=new t,s={};this.readLock=e,this.writeLock=r,this.async={readLock:function(i,a,o){typeof i!="function"?e(i,function(c){a.call(this,null,c)},o):(a=i,o=a,e(function(c){a.call(this,null,c)},o))},writeLock:function(i,a,o){typeof i!="function"?r(i,function(c){a.call(this,null,c)},o):(a=i,o=a,r(function(c){a.call(this,null,c)},o))}}}});var rdt=E(BM=>{"use strict";Object.defineProperty(BM,"__esModule",{value:!0});BM.TimeoutError=void 0;var KTr=DE(),hue=class extends KTr.NestedError{};BM.TimeoutError=hue});var idt=E(kE=>{"use strict";Object.defineProperty(kE,"__esModule",{value:!0});kE.writeLockAsync=kE.readLockAsync=void 0;var YTr=tdt(),ndt=rdt(),sdt=new YTr,JTr=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{sdt.readLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new ndt.TimeoutError("Timeout",100))}})})};kE.readLockAsync=JTr;var XTr=(t,e=null)=>{let r={};return e!=null&&(r={timeout:e}),new Promise((n,s)=>{sdt.writeLock(async i=>{try{let a=await t();n(a)}catch(a){s(a)}finally{i()}},{...r,timeoutCallback(){s(new ndt.TimeoutError("Timeout",100))}})})};kE.writeLockAsync=XTr});var Aue=E(MM=>{"use strict";Object.defineProperty(MM,"__esModule",{value:!0});MM.JsonAdapter=void 0;var gue=class{adapter;humanReadable;dateRegex=new RegExp("^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}","m");constructor(e,r=!1){this.adapter=e,this.humanReadable=r}replacer(e,r){return r}reviver(e,r){return typeof r=="string"&&this.dateRegex.exec(r)!=null?new Date(r):r}async readAsync(){let e=await this.adapter.readAsync();return e==null?(await this.writeAsync({}),{}):JSON.parse(e,this.reviver.bind(this))}writeAsync(e){let r="";return this.humanReadable?r=JSON.stringify(e,this.replacer.bind(this),4):r=JSON.stringify(e,this.replacer.bind(this)),this.adapter.writeAsync(r)}};MM.JsonAdapter=gue});var xue=E($M=>{"use strict";Object.defineProperty($M,"__esModule",{value:!0});$M.FileAdapter=void 0;var WM=require("fs/promises"),ZTr=require("path"),yue=class{filename;fsync;constructor(e,r){this.filename=e,this.fsync=r}async readAsync(){try{return await(0,WM.readFile)(this.filename,{encoding:"utf-8"})}catch(e){if(e.code==="ENOENT")return null;throw e}}async writeAsync(e){let r=null;try{r=await(0,WM.open)(this.filename,"w")}catch(n){if(n.code!=="ENOENT")throw n;let s=ZTr.dirname(this.filename);await(0,WM.mkdir)(s,{recursive:!0}),r=await(0,WM.open)(this.filename,"w")}try{await r.writeFile(e,{encoding:"utf-8"}),this.fsync&&await r.sync()}finally{await r.close()}}};$M.FileAdapter=yue});var adt=E(LE=>{"use strict";Object.defineProperty(LE,"__esModule",{value:!0});LE.ConfigWithAdapter=LE.Config=void 0;var ewr=require("path"),twr=Aue(),rwr=xue(),bue=class{adapter;filename;saveOnPush;separator;constructor(e,r=!0,n=!1,s="/",i=!1){this.filename=e,ewr.extname(e)===""&&(this.filename+=".json"),this.saveOnPush=r,this.separator=s,this.adapter=new twr.JsonAdapter(new rwr.FileAdapter(this.filename,i),n)}};LE.Config=bue;var Eue=class{adapter;saveOnPush;separator;constructor(e,r=!0,n="/"){this.adapter=e,this.saveOnPush=r,this.separator=n}};LE.ConfigWithAdapter=Eue});var ldt=E(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.JsonDB=Ji.FileAdapter=Ji.JsonAdapter=Ji.DataError=Ji.DatabaseError=Ji.ConfigWithAdapter=Ji.Config=void 0;var odt=zlt(),Yi=DE(),nwr=Zlt(),swr=pue(),_ue=idt(),cdt=adt();Object.defineProperty(Ji,"Config",{enumerable:!0,get:function(){return cdt.Config}});Object.defineProperty(Ji,"ConfigWithAdapter",{enumerable:!0,get:function(){return cdt.ConfigWithAdapter}});var udt=DE();Object.defineProperty(Ji,"DatabaseError",{enumerable:!0,get:function(){return udt.DatabaseError}});Object.defineProperty(Ji,"DataError",{enumerable:!0,get:function(){return udt.DataError}});var iwr=Aue();Object.defineProperty(Ji,"JsonAdapter",{enumerable:!0,get:function(){return iwr.JsonAdapter}});var awr=xue();Object.defineProperty(Ji,"FileAdapter",{enumerable:!0,get:function(){return awr.FileAdapter}});var Sue=class{loaded=!1;data={};config;constructor(e){this.config=e}processDataPath(e){if(e===void 0||!e.trim())throw new Yi.DataError("The Data Path can't be empty",6);if(e==this.config.separator)return[];e=(0,odt.removeTrailingChar)(e,this.config.separator);let r=e.split(this.config.separator);return r.shift(),r}async retrieveData(e,r=!1){await this.load();let n=this,s=(i,a)=>{let o=e[a];function c(l=!1){if(i.hasOwnProperty(o))i=i[o];else if(r)l?i[o]=[]:i[o]={},i=i[o];else throw new Yi.DataError(`Can't find dataPath: ${n.config.separator}${e.join(n.config.separator)}. Stopped at ${o}`,5)}let u=swr.ArrayInfo.processArray(o);if(u){if(o=u.property,c(!0),!Array.isArray(i))throw new Yi.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. ${o} is not an array.`,11);let l=u.getIndex(i,!0);if(!u.append&&i.hasOwnProperty(l))i=u.getData(i);else if(r)u.append?(i.push({}),i=i[i.length-1]):(i[l]={},i=i[l]);else throw new Yi.DataError(`DataPath: ${n.config.separator}${e.join(n.config.separator)}. . Can't find index ${u.index} in array ${o}`,10)}else c();return e.length==++a?i:s(i,a)};return e.length===0?this.data:s(this.data,0)}async getParentData(e,r){let n=this.processDataPath(e),s=n.pop();return new nwr.DBParentData(await this.retrieveData(n,r),this,e,s)}getData(e){return(0,_ue.readLockAsync)(async()=>{let r=this.processDataPath(e);return this.retrieveData(r,!1)})}getObject(e){return this.getData(e)}async getObjectDefault(e,r){try{return await this.getData(e)}catch(n){if(!(n instanceof Yi.DataError)||n.id!=5)throw n;return r}}async exists(e){try{return await this.getData(e),!0}catch(r){if(r instanceof Yi.DataError)return!1;throw r}}async count(e){let r=await this.getData(e);if(!Array.isArray(r))throw new Yi.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return(await this.retrieveData(n,!1)).length}async getIndex(e,r,n="id"){return(await this.getArrayData(e)).map(function(i){return i[n]}).indexOf(r)}async getIndexValue(e,r){return(await this.getArrayData(e)).indexOf(r)}async getArrayData(e){let r=await this.getData(e);if(!Array.isArray(r))throw new Yi.DataError(`DataPath: ${e} is not an array.`,11);let n=this.processDataPath(e);return this.retrieveData(n,!1)}async filter(e,r){let n=await this.getData(e);if(Array.isArray(n))return n.filter(r);if(n instanceof Object){let i=Object.entries(n).filter(a=>r(a[1],a[0]));return!i||i.length<1?void 0:i.map(a=>a[1])}throw new Yi.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async find(e,r){let n=await this.getData(e);if(Array.isArray(n))return n.find(r);if(n instanceof Object){let i=Object.entries(n).find(a=>r(a[1],a[0]));return!i||i.length<2?void 0:i[1]}throw new Yi.DataError("The entry at the path ("+e+") needs to be either an Object or an Array",12)}async push(e,r,n=!0){return(0,_ue.writeLockAsync)(async()=>{let s=await this.getParentData(e,!0),i=r;if(!n){if(Array.isArray(r)){let a=s.getData();if(a===void 0)a=[];else if(!Array.isArray(a))throw new Yi.DataError("Can't merge another type of data with an Array",3);i=a.concat(r)}else if(r===Object(r)){if(Array.isArray(s.getData()))throw new Yi.DataError("Can't merge an Array with an Object",4);i=(0,odt.merge)(s.getData(),r)}}s.setData(i),this.config.saveOnPush&&await this.save()})}async delete(e){await(0,_ue.writeLockAsync)(async()=>{(await this.getParentData(e,!0)).delete(),this.config.saveOnPush&&await this.save()})}resetData(e){this.data=e}async reload(){this.loaded=!1,await this.load()}async load(){if(!this.loaded)try{this.data=await this.config.adapter.readAsync(),this.loaded=!0}catch(e){throw new Yi.DatabaseError("Can't Load Database",1,e)}}async save(e){if(e=e||!1,!e&&!this.loaded)throw new Yi.DatabaseError("DataBase not loaded. Can't write",7);try{await this.config.adapter.writeAsync(this.data)}catch(r){throw new Yi.DatabaseError("Can't save the database",2,r)}}async fromPath(e,r="id"){let[,...n]=e.split("/"),s=n.reduce((a,o,c)=>{if(c%2===0)a[`${o}`]="";else{let l=Object.keys(a);a[`${l[l.length-1]}`]=`${o}`}return a},{}),i=[];for await(let a of Object.keys(s)){i.push(`/${a}`);let o=s[a];try{let c=await this.getIndex(i.join(""),o,r);i.push(`[${c}]`)}catch(c){throw new Yi.DataError(`DataPath: ${i.join("")}/${o} not found.`,13,c)}}return i.join("")}};Ji.JsonDB=Sue});var fOr={};is(fOr,{start:()=>lOr,stop:()=>dOr});module.exports=K0t(fOr);var fpt=Re(Zwe(),1);var OE=Re(require("node:fs/promises"),1),Ms=Re(require("node:path"),1),PM=require("node:crypto"),Llt=require("node:module"),nue=require("node:url");function NS(t,e){return function(){return t.apply(e,arguments)}}var{toString:rqt}=Object.prototype,{getPrototypeOf:bj}=Object,s3=(t=>e=>{let r=rqt.call(e);return t[r]||(t[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),ul=t=>(t=t.toLowerCase(),e=>s3(e)===t),i3=t=>e=>typeof e===t,{isArray:sx}=Array,OS=i3("undefined");function nqt(t){return t!==null&&!OS(t)&&t.constructor!==null&&!OS(t.constructor)&&uc(t.constructor.isBuffer)&&t.constructor.isBuffer(t)}var r2e=ul("ArrayBuffer");function sqt(t){let e;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?e=ArrayBuffer.isView(t):e=t&&t.buffer&&r2e(t.buffer),e}var iqt=i3("string"),uc=i3("function"),n2e=i3("number"),a3=t=>t!==null&&typeof t=="object",aqt=t=>t===!0||t===!1,n3=t=>{if(s3(t)!=="object")return!1;let e=bj(t);return(e===null||e===Object.prototype||Object.getPrototypeOf(e)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)},oqt=ul("Date"),cqt=ul("File"),uqt=ul("Blob"),lqt=ul("FileList"),dqt=t=>a3(t)&&uc(t.pipe),fqt=t=>{let e;return t&&(typeof FormData=="function"&&t instanceof FormData||uc(t.append)&&((e=s3(t))==="formdata"||e==="object"&&uc(t.toString)&&t.toString()==="[object FormData]"))},pqt=ul("URLSearchParams"),mqt=t=>t.trim?t.trim():t.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function PS(t,e,{allOwnKeys:r=!1}={}){if(t===null||typeof t>"u")return;let n,s;if(typeof t!="object"&&(t=[t]),sx(t))for(n=0,s=t.length;n0;)if(s=r[n],e===s.toLowerCase())return s;return null}var i2e=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,a2e=t=>!OS(t)&&t!==i2e;function xj(){let{caseless:t}=a2e(this)&&this||{},e={},r=(n,s)=>{let i=t&&s2e(e,s)||s;n3(e[i])&&n3(n)?e[i]=xj(e[i],n):n3(n)?e[i]=xj({},n):sx(n)?e[i]=n.slice():e[i]=n};for(let n=0,s=arguments.length;n(PS(e,(s,i)=>{r&&uc(s)?t[i]=NS(s,r):t[i]=s},{allOwnKeys:n}),t),gqt=t=>(t.charCodeAt(0)===65279&&(t=t.slice(1)),t),Aqt=(t,e,r,n)=>{t.prototype=Object.create(e.prototype,n),t.prototype.constructor=t,Object.defineProperty(t,"super",{value:e.prototype}),r&&Object.assign(t.prototype,r)},yqt=(t,e,r,n)=>{let s,i,a,o={};if(e=e||{},t==null)return e;do{for(s=Object.getOwnPropertyNames(t),i=s.length;i-- >0;)a=s[i],(!n||n(a,t,e))&&!o[a]&&(e[a]=t[a],o[a]=!0);t=r!==!1&&bj(t)}while(t&&(!r||r(t,e))&&t!==Object.prototype);return e},xqt=(t,e,r)=>{t=String(t),(r===void 0||r>t.length)&&(r=t.length),r-=e.length;let n=t.indexOf(e,r);return n!==-1&&n===r},bqt=t=>{if(!t)return null;if(sx(t))return t;let e=t.length;if(!n2e(e))return null;let r=new Array(e);for(;e-- >0;)r[e]=t[e];return r},Eqt=(t=>e=>t&&e instanceof t)(typeof Uint8Array<"u"&&bj(Uint8Array)),_qt=(t,e)=>{let n=(t&&t[Symbol.iterator]).call(t),s;for(;(s=n.next())&&!s.done;){let i=s.value;e.call(t,i[0],i[1])}},Sqt=(t,e)=>{let r,n=[];for(;(r=t.exec(e))!==null;)n.push(r);return n},vqt=ul("HTMLFormElement"),Cqt=t=>t.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),e2e=(({hasOwnProperty:t})=>(e,r)=>t.call(e,r))(Object.prototype),Iqt=ul("RegExp"),o2e=(t,e)=>{let r=Object.getOwnPropertyDescriptors(t),n={};PS(r,(s,i)=>{let a;(a=e(s,i,t))!==!1&&(n[i]=a||s)}),Object.defineProperties(t,n)},Tqt=t=>{o2e(t,(e,r)=>{if(uc(t)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;let n=t[r];if(uc(n)){if(e.enumerable=!1,"writable"in e){e.writable=!1;return}e.set||(e.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},wqt=(t,e)=>{let r={},n=s=>{s.forEach(i=>{r[i]=!0})};return sx(t)?n(t):n(String(t).split(e)),r},Rqt=()=>{},Nqt=(t,e)=>(t=+t,Number.isFinite(t)?t:e),yj="abcdefghijklmnopqrstuvwxyz",t2e="0123456789",c2e={DIGIT:t2e,ALPHA:yj,ALPHA_DIGIT:yj+yj.toUpperCase()+t2e},Oqt=(t=16,e=c2e.ALPHA_DIGIT)=>{let r="",{length:n}=e;for(;t--;)r+=e[Math.random()*n|0];return r};function Pqt(t){return!!(t&&uc(t.append)&&t[Symbol.toStringTag]==="FormData"&&t[Symbol.iterator])}var Dqt=t=>{let e=new Array(10),r=(n,s)=>{if(a3(n)){if(e.indexOf(n)>=0)return;if(!("toJSON"in n)){e[s]=n;let i=sx(n)?[]:{};return PS(n,(a,o)=>{let c=r(a,s+1);!OS(c)&&(i[o]=c)}),e[s]=void 0,i}}return n};return r(t,0)},kqt=ul("AsyncFunction"),Lqt=t=>t&&(a3(t)||uc(t))&&uc(t.then)&&uc(t.catch),le={isArray:sx,isArrayBuffer:r2e,isBuffer:nqt,isFormData:fqt,isArrayBufferView:sqt,isString:iqt,isNumber:n2e,isBoolean:aqt,isObject:a3,isPlainObject:n3,isUndefined:OS,isDate:oqt,isFile:cqt,isBlob:uqt,isRegExp:Iqt,isFunction:uc,isStream:dqt,isURLSearchParams:pqt,isTypedArray:Eqt,isFileList:lqt,forEach:PS,merge:xj,extend:hqt,trim:mqt,stripBOM:gqt,inherits:Aqt,toFlatObject:yqt,kindOf:s3,kindOfTest:ul,endsWith:xqt,toArray:bqt,forEachEntry:_qt,matchAll:Sqt,isHTMLForm:vqt,hasOwnProperty:e2e,hasOwnProp:e2e,reduceDescriptors:o2e,freezeMethods:Tqt,toObjectSet:wqt,toCamelCase:Cqt,noop:Rqt,toFiniteNumber:Nqt,findKey:s2e,global:i2e,isContextDefined:a2e,ALPHABET:c2e,generateString:Oqt,isSpecCompliantForm:Pqt,toJSONObject:Dqt,isAsyncFn:kqt,isThenable:Lqt};function ix(t,e,r,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=t,this.name="AxiosError",e&&(this.code=e),r&&(this.config=r),n&&(this.request=n),s&&(this.response=s)}le.inherits(ix,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:le.toJSONObject(this.config),code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var u2e=ix.prototype,l2e={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(t=>{l2e[t]={value:t}});Object.defineProperties(ix,l2e);Object.defineProperty(u2e,"isAxiosError",{value:!0});ix.from=(t,e,r,n,s,i)=>{let a=Object.create(u2e);return le.toFlatObject(t,a,function(c){return c!==Error.prototype},o=>o!=="isAxiosError"),ix.call(a,t.message,e,r,n,s),a.cause=t,a.name=t.name,i&&Object.assign(a,i),a};var Xe=ix;var fNe=Re(dNe(),1),g3=fNe.default;function Uj(t){return le.isPlainObject(t)||le.isArray(t)}function mNe(t){return le.endsWith(t,"[]")?t.slice(0,-2):t}function pNe(t,e,r){return t?t.concat(e).map(function(s,i){return s=mNe(s),!r&&i?"["+s+"]":s}).join(r?".":""):e}function bHt(t){return le.isArray(t)&&!t.some(Uj)}var EHt=le.toFlatObject(le,{},null,function(e){return/^is[A-Z]/.test(e)});function _Ht(t,e,r){if(!le.isObject(t))throw new TypeError("target must be an object");e=e||new(g3||FormData),r=le.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,A){return!le.isUndefined(A[h])});let n=r.metaTokens,s=r.visitor||l,i=r.dots,a=r.indexes,c=(r.Blob||typeof Blob<"u"&&Blob)&&le.isSpecCompliantForm(e);if(!le.isFunction(s))throw new TypeError("visitor must be a function");function u(m){if(m===null)return"";if(le.isDate(m))return m.toISOString();if(!c&&le.isBlob(m))throw new Xe("Blob is not supported. Use a Buffer instead.");return le.isArrayBuffer(m)||le.isTypedArray(m)?c&&typeof Blob=="function"?new Blob([m]):Buffer.from(m):m}function l(m,h,A){let g=m;if(m&&!A&&typeof m=="object"){if(le.endsWith(h,"{}"))h=n?h:h.slice(0,-2),m=JSON.stringify(m);else if(le.isArray(m)&&bHt(m)||(le.isFileList(m)||le.endsWith(h,"[]"))&&(g=le.toArray(m)))return h=mNe(h),g.forEach(function(y,x){!(le.isUndefined(y)||y===null)&&e.append(a===!0?pNe([h],x,i):a===null?h:h+"[]",u(y))}),!1}return Uj(m)?!0:(e.append(pNe(A,h,i),u(m)),!1)}let d=[],f=Object.assign(EHt,{defaultVisitor:l,convertValue:u,isVisitable:Uj});function p(m,h){if(!le.isUndefined(m)){if(d.indexOf(m)!==-1)throw Error("Circular reference detected in "+h.join("."));d.push(m),le.forEach(m,function(g,b){(!(le.isUndefined(g)||g===null)&&s.call(e,g,le.isString(b)?b.trim():b,h,f))===!0&&p(g,h?h.concat(b):[b])}),d.pop()}}if(!le.isObject(t))throw new TypeError("data must be an object");return p(t),e}var Kp=_Ht;function hNe(t){let e={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(t).replace(/[!'()~]|%20|%00/g,function(n){return e[n]})}function gNe(t,e){this._pairs=[],t&&Kp(t,this,e)}var ANe=gNe.prototype;ANe.append=function(e,r){this._pairs.push([e,r])};ANe.toString=function(e){let r=e?function(n){return e.call(this,n,hNe)}:hNe;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};var yNe=gNe;function SHt(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}function fh(t,e,r){if(!e)return t;let n=r&&r.encode||SHt,s=r&&r.serialize,i;if(s?i=s(e,r):i=le.isURLSearchParams(e)?e.toString():new yNe(e,r).toString(n),i){let a=t.indexOf("#");a!==-1&&(t=t.slice(0,a)),t+=(t.indexOf("?")===-1?"?":"&")+i}return t}var qj=class{constructor(){this.handlers=[]}use(e,r,n){return this.handlers.push({fulfilled:e,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){le.forEach(this.handlers,function(n){n!==null&&e(n)})}},jj=qj;var lx={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1};var xNe=Re(require("url"),1),bNe=xNe.default.URLSearchParams;var ENe={isNode:!0,classes:{URLSearchParams:bNe,FormData:g3,Blob:typeof Blob<"u"&&Blob||null},protocols:["http","https","file","data"]};var Hj={};is(Hj,{hasBrowserEnv:()=>_Ne,hasStandardBrowserEnv:()=>vHt,hasStandardBrowserWebWorkerEnv:()=>CHt});var _Ne=typeof window<"u"&&typeof document<"u",vHt=(t=>_Ne&&["ReactNative","NativeScript","NS"].indexOf(t)<0)(typeof navigator<"u"&&navigator.product),CHt=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function";var ws={...Hj,...ENe};function Qj(t,e){return Kp(t,new ws.classes.URLSearchParams,Object.assign({visitor:function(r,n,s,i){return ws.isNode&&le.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)}},e))}function IHt(t){return le.matchAll(/\w+|\[(\w*)]/g,t).map(e=>e[0]==="[]"?"":e[1]||e[0])}function THt(t){let e={},r=Object.keys(t),n,s=r.length,i;for(n=0;n=r.length;return a=!a&&le.isArray(s)?s.length:a,c?(le.hasOwnProp(s,a)?s[a]=[s[a],n]:s[a]=n,!o):((!s[a]||!le.isObject(s[a]))&&(s[a]=[]),e(r,n,s[a],i)&&le.isArray(s[a])&&(s[a]=THt(s[a])),!o)}if(le.isFormData(t)&&le.isFunction(t.entries)){let r={};return le.forEachEntry(t,(n,s)=>{e(IHt(n),s,r,0)}),r}return null}var A3=wHt;function RHt(t,e,r){if(le.isString(t))try{return(e||JSON.parse)(t),le.trim(t)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(t)}var Gj={transitional:lx,adapter:["xhr","http"],transformRequest:[function(e,r){let n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=le.isObject(e);if(i&&le.isHTMLForm(e)&&(e=new FormData(e)),le.isFormData(e))return s?JSON.stringify(A3(e)):e;if(le.isArrayBuffer(e)||le.isBuffer(e)||le.isStream(e)||le.isFile(e)||le.isBlob(e))return e;if(le.isArrayBufferView(e))return e.buffer;if(le.isURLSearchParams(e))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let o;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Qj(e,this.formSerializer).toString();if((o=le.isFileList(e))||n.indexOf("multipart/form-data")>-1){let c=this.env&&this.env.FormData;return Kp(o?{"files[]":e}:e,c&&new c,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),RHt(e)):e}],transformResponse:[function(e){let r=this.transitional||Gj.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(e&&le.isString(e)&&(n&&!this.responseType||s)){let a=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(e)}catch(o){if(a)throw o.name==="SyntaxError"?Xe.from(o,Xe.ERR_BAD_RESPONSE,this,null,this.response):o}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ws.classes.FormData,Blob:ws.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};le.forEach(["delete","get","head","post","put","patch"],t=>{Gj.headers[t]={}});var dx=Gj;var NHt=le.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),SNe=t=>{let e={},r,n,s;return t&&t.split(` +`).forEach(function(a){s=a.indexOf(":"),r=a.substring(0,s).trim().toLowerCase(),n=a.substring(s+1).trim(),!(!r||e[r]&&NHt[r])&&(r==="set-cookie"?e[r]?e[r].push(n):e[r]=[n]:e[r]=e[r]?e[r]+", "+n:n)}),e};var vNe=Symbol("internals");function WS(t){return t&&String(t).trim().toLowerCase()}function y3(t){return t===!1||t==null?t:le.isArray(t)?t.map(y3):String(t)}function OHt(t){let e=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,n;for(;n=r.exec(t);)e[n[1]]=n[2];return e}var PHt=t=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(t.trim());function Vj(t,e,r,n,s){if(le.isFunction(n))return n.call(this,e,r);if(s&&(e=r),!!le.isString(e)){if(le.isString(n))return e.indexOf(n)!==-1;if(le.isRegExp(n))return n.test(e)}}function DHt(t){return t.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,r,n)=>r.toUpperCase()+n)}function kHt(t,e){let r=le.toCamelCase(" "+e);["get","set","has"].forEach(n=>{Object.defineProperty(t,n+r,{value:function(s,i,a){return this[n].call(this,e,s,i,a)},configurable:!0})})}var fx=class{constructor(e){e&&this.set(e)}set(e,r,n){let s=this;function i(o,c,u){let l=WS(c);if(!l)throw new Error("header name must be a non-empty string");let d=le.findKey(s,l);(!d||s[d]===void 0||u===!0||u===void 0&&s[d]!==!1)&&(s[d||c]=y3(o))}let a=(o,c)=>le.forEach(o,(u,l)=>i(u,l,c));return le.isPlainObject(e)||e instanceof this.constructor?a(e,r):le.isString(e)&&(e=e.trim())&&!PHt(e)?a(SNe(e),r):e!=null&&i(r,e,n),this}get(e,r){if(e=WS(e),e){let n=le.findKey(this,e);if(n){let s=this[n];if(!r)return s;if(r===!0)return OHt(s);if(le.isFunction(r))return r.call(this,s,n);if(le.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,r){if(e=WS(e),e){let n=le.findKey(this,e);return!!(n&&this[n]!==void 0&&(!r||Vj(this,this[n],n,r)))}return!1}delete(e,r){let n=this,s=!1;function i(a){if(a=WS(a),a){let o=le.findKey(n,a);o&&(!r||Vj(n,n[o],o,r))&&(delete n[o],s=!0)}}return le.isArray(e)?e.forEach(i):i(e),s}clear(e){let r=Object.keys(this),n=r.length,s=!1;for(;n--;){let i=r[n];(!e||Vj(this,this[i],i,e,!0))&&(delete this[i],s=!0)}return s}normalize(e){let r=this,n={};return le.forEach(this,(s,i)=>{let a=le.findKey(n,i);if(a){r[a]=y3(s),delete r[i];return}let o=e?DHt(i):String(i).trim();o!==i&&delete r[i],r[o]=y3(s),n[o]=!0}),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){let r=Object.create(null);return le.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=e&&le.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,r])=>e+": "+r).join(` +`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...r){let n=new this(e);return r.forEach(s=>n.set(s)),n}static accessor(e){let n=(this[vNe]=this[vNe]={accessors:{}}).accessors,s=this.prototype;function i(a){let o=WS(a);n[o]||(kHt(s,a),n[o]=!0)}return le.isArray(e)?e.forEach(i):i(e),this}};fx.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);le.reduceDescriptors(fx.prototype,({value:t},e)=>{let r=e[0].toUpperCase()+e.slice(1);return{get:()=>t,set(n){this[r]=n}}});le.freezeMethods(fx);var Rs=fx;function $S(t,e){let r=this||dx,n=e||r,s=Rs.from(n.headers),i=n.data;return le.forEach(t,function(o){i=o.call(r,i,s.normalize(),e?e.status:void 0)}),s.normalize(),i}function FS(t){return!!(t&&t.__CANCEL__)}function CNe(t,e,r){Xe.call(this,t??"canceled",Xe.ERR_CANCELED,e,r),this.name="CanceledError"}le.inherits(CNe,Xe,{__CANCEL__:!0});var ru=CNe;function Yp(t,e,r){let n=r.config.validateStatus;!r.status||!n||n(r.status)?t(r):e(new Xe("Request failed with status code "+r.status,[Xe.ERR_BAD_REQUEST,Xe.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function zj(t){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t)}function Kj(t,e){return e?t.replace(/\/?\/$/,"")+"/"+e.replace(/^\/+/,""):t}function ph(t,e){return t&&!zj(e)?Kj(t,e):e}var aOe=Re(TNe(),1),oOe=Re(require("http"),1),cOe=Re(require("https"),1),uOe=Re(require("util"),1),lOe=Re(GNe(),1),Bd=Re(require("zlib"),1);var Ah="1.6.7";function QS(t){let e=/^([-+\w]{1,25})(:?\/\/|:)/.exec(t);return e&&e[1]||""}var xQt=/^(?:([^;]+);)?(?:[^;]+;)?(base64|),([\s\S]*)$/;function fH(t,e,r){let n=r&&r.Blob||ws.classes.Blob,s=QS(t);if(e===void 0&&n&&(e=!0),s==="data"){t=s.length?t.slice(s.length+1):t;let i=xQt.exec(t);if(!i)throw new Xe("Invalid URL",Xe.ERR_INVALID_URL);let a=i[1],o=i[2],c=i[3],u=Buffer.from(decodeURIComponent(c),o?"base64":"utf8");if(e){if(!n)throw new Xe("Blob is not supported",Xe.ERR_NOT_SUPPORT);return new n([u],{type:a})}return u}throw new Xe("Unsupported protocol "+s,Xe.ERR_NOT_SUPPORT)}var yh=Re(require("stream"),1);var zNe=Re(require("stream"),1);function bQt(t,e){let r=0,n=1e3/e,s=null;return function(a,o){let c=Date.now();if(a||c-r>n)return s&&(clearTimeout(s),s=null),r=c,t.apply(null,o);s||(s=setTimeout(()=>(s=null,r=Date.now(),t.apply(null,o)),n-(c-r)))}}var VNe=bQt;function EQt(t,e){t=t||10;let r=new Array(t),n=new Array(t),s=0,i=0,a;return e=e!==void 0?e:1e3,function(c){let u=Date.now(),l=n[i];a||(a=u),r[s]=c,n[s]=u;let d=i,f=0;for(;d!==s;)f+=r[d++],d=d%t;if(s=(s+1)%t,s===i&&(i=(i+1)%t),u-a!le.isUndefined(c[o])),super({readableHighWaterMark:e.chunkSize});let r=this,n=this[v3]={length:e.length,timeWindow:e.timeWindow,ticksRate:e.ticksRate,chunkSize:e.chunkSize,maxRate:e.maxRate,minChunkSize:e.minChunkSize,bytesSeen:0,isCaptured:!1,notifiedBytesLoaded:0,ts:Date.now(),bytes:0,onReadCallback:null},s=S3(n.ticksRate*e.samplesCount,n.timeWindow);this.on("newListener",o=>{o==="progress"&&(n.isCaptured||(n.isCaptured=!0))});let i=0;n.updateProgress=VNe(function(){let c=n.length,u=n.bytesSeen,l=u-i;if(!l||r.destroyed)return;let d=s(l);i=u,process.nextTick(()=>{r.emit("progress",{loaded:u,total:c,progress:c?u/c:void 0,bytes:l,rate:d||void 0,estimated:d&&c&&u<=c?(c-u)/d:void 0})})},n.ticksRate);let a=()=>{n.updateProgress(!0)};this.once("end",a),this.once("error",a)}_read(e){let r=this[v3];return r.onReadCallback&&r.onReadCallback(),super._read(e)}_transform(e,r,n){let s=this,i=this[v3],a=i.maxRate,o=this.readableHighWaterMark,c=i.timeWindow,u=1e3/c,l=a/u,d=i.minChunkSize!==!1?Math.max(i.minChunkSize,l*.01):0;function f(m,h){let A=Buffer.byteLength(m);i.bytesSeen+=A,i.bytes+=A,i.isCaptured&&i.updateProgress(),s.push(m)?process.nextTick(h):i.onReadCallback=()=>{i.onReadCallback=null,process.nextTick(h)}}let p=(m,h)=>{let A=Buffer.byteLength(m),g=null,b=o,y,x=0;if(a){let v=Date.now();(!i.ts||(x=v-i.ts)>=c)&&(i.ts=v,y=l-i.bytes,i.bytes=y<0?-y:0,x=0),y=l-i.bytes}if(a){if(y<=0)return setTimeout(()=>{h(null,m)},c-x);yb&&A-b>d&&(g=m.subarray(b),m=m.subarray(0,b)),f(m,g?()=>{process.nextTick(h,null,g)}:h)};p(e,function m(h,A){if(h)return n(h);A?p(A,m):n(null)})}setLength(e){return this[v3].length=+e,this}},mH=pH;var dOe=Re(require("events"),1);var YNe=require("util"),JNe=require("stream");var{asyncIterator:KNe}=Symbol,_Qt=async function*(t){t.stream?yield*t.stream():t.arrayBuffer?yield await t.arrayBuffer():t[KNe]?yield*t[KNe]():yield t},C3=_Qt;var SQt=le.ALPHABET.ALPHA_DIGIT+"-_",GS=new YNe.TextEncoder,Xp=`\r +`,vQt=GS.encode(Xp),CQt=2,hH=class{constructor(e,r){let{escapeName:n}=this.constructor,s=le.isString(r),i=`Content-Disposition: form-data; name="${n(e)}"${!s&&r.name?`; filename="${n(r.name)}"`:""}${Xp}`;s?r=GS.encode(String(r).replace(/\r?\n|\r\n?/g,Xp)):i+=`Content-Type: ${r.type||"application/octet-stream"}${Xp}`,this.headers=GS.encode(i+Xp),this.contentLength=s?r.byteLength:r.size,this.size=this.headers.byteLength+this.contentLength+CQt,this.name=e,this.value=r}async*encode(){yield this.headers;let{value:e}=this;le.isTypedArray(e)?yield e:yield*C3(e),yield vQt}static escapeName(e){return String(e).replace(/[\r\n"]/g,r=>({"\r":"%0D","\n":"%0A",'"':"%22"})[r])}},IQt=(t,e,r)=>{let{tag:n="form-data-boundary",size:s=25,boundary:i=n+"-"+le.generateString(s,SQt)}=r||{};if(!le.isFormData(t))throw TypeError("FormData instance required");if(i.length<1||i.length>70)throw Error("boundary must be 10-70 characters long");let a=GS.encode("--"+i+Xp),o=GS.encode("--"+i+"--"+Xp+Xp),c=o.byteLength,u=Array.from(t.entries()).map(([d,f])=>{let p=new hH(d,f);return c+=p.size,p});c+=a.byteLength*u.length,c=le.toFiniteNumber(c);let l={"Content-Type":`multipart/form-data; boundary=${i}`};return Number.isFinite(c)&&(l["Content-Length"]=c),e&&e(l),JNe.Readable.from(async function*(){for(let d of u)yield a,yield*d.encode();yield o}())},XNe=IQt;var ZNe=Re(require("stream"),1),gH=class extends ZNe.default.Transform{__transform(e,r,n){this.push(e),n()}_transform(e,r,n){if(e.length!==0&&(this._transform=this.__transform,e[0]!==120)){let s=Buffer.alloc(2);s[0]=120,s[1]=156,this.push(s,r)}this.__transform(e,r,n)}},eOe=gH;var TQt=(t,e)=>le.isAsyncFn(t)?function(...r){let n=r.pop();t.apply(this,r).then(s=>{try{e?n(null,...e(s)):n(null,s)}catch(i){n(i)}},n)}:t,tOe=TQt;var rOe={flush:Bd.default.constants.Z_SYNC_FLUSH,finishFlush:Bd.default.constants.Z_SYNC_FLUSH},wQt={flush:Bd.default.constants.BROTLI_OPERATION_FLUSH,finishFlush:Bd.default.constants.BROTLI_OPERATION_FLUSH},nOe=le.isFunction(Bd.default.createBrotliDecompress),{http:RQt,https:NQt}=lOe.default,OQt=/https:?/,sOe=ws.protocols.map(t=>t+":");function PQt(t,e){t.beforeRedirects.proxy&&t.beforeRedirects.proxy(t),t.beforeRedirects.config&&t.beforeRedirects.config(t,e)}function fOe(t,e,r){let n=e;if(!n&&n!==!1){let s=(0,aOe.getProxyForUrl)(r);s&&(n=new URL(s))}if(n){if(n.username&&(n.auth=(n.username||"")+":"+(n.password||"")),n.auth){(n.auth.username||n.auth.password)&&(n.auth=(n.auth.username||"")+":"+(n.auth.password||""));let i=Buffer.from(n.auth,"utf8").toString("base64");t.headers["Proxy-Authorization"]="Basic "+i}t.headers.host=t.hostname+(t.port?":"+t.port:"");let s=n.hostname||n.host;t.hostname=s,t.host=s,t.port=n.port,t.path=r,n.protocol&&(t.protocol=n.protocol.includes(":")?n.protocol:`${n.protocol}:`)}t.beforeRedirects.proxy=function(i){fOe(i,e,i.href)}}var DQt=typeof process<"u"&&le.kindOf(process)==="process",kQt=t=>new Promise((e,r)=>{let n,s,i=(c,u)=>{s||(s=!0,n&&n(c,u))},a=c=>{i(c),e(c)},o=c=>{i(c,!0),r(c)};t(a,o,c=>n=c).catch(o)}),LQt=({address:t,family:e})=>{if(!le.isString(t))throw TypeError("address must be a string");return{address:t,family:e||(t.indexOf(".")<0?6:4)}},iOe=(t,e)=>LQt(le.isObject(t)?t:{address:t,family:e}),pOe=DQt&&function(e){return kQt(async function(n,s,i){let{data:a,lookup:o,family:c}=e,{responseType:u,responseEncoding:l}=e,d=e.method.toUpperCase(),f,p=!1,m;if(o){let F=tOe(o,V=>le.isArray(V)?V:[V]);o=(V,j,J)=>{F(V,j,(se,oe,ue)=>{if(se)return J(se);let Ce=le.isArray(oe)?oe.map(we=>iOe(we)):[iOe(oe,ue)];j.all?J(se,Ce):J(se,Ce[0].address,Ce[0].family)})}}let h=new dOe.default,A=()=>{e.cancelToken&&e.cancelToken.unsubscribe(g),e.signal&&e.signal.removeEventListener("abort",g),h.removeAllListeners()};i((F,V)=>{f=!0,V&&(p=!0,A())});function g(F){h.emit("abort",!F||F.type?new ru(null,e,m):F)}h.once("abort",s),(e.cancelToken||e.signal)&&(e.cancelToken&&e.cancelToken.subscribe(g),e.signal&&(e.signal.aborted?g():e.signal.addEventListener("abort",g)));let b=ph(e.baseURL,e.url),y=new URL(b,"http://localhost"),x=y.protocol||sOe[0];if(x==="data:"){let F;if(d!=="GET")return Yp(n,s,{status:405,statusText:"method not allowed",headers:{},config:e});try{F=fH(e.url,u==="blob",{Blob:e.env&&e.env.Blob})}catch(V){throw Xe.from(V,Xe.ERR_BAD_REQUEST,e)}return u==="text"?(F=F.toString(l),(!l||l==="utf8")&&(F=le.stripBOM(F))):u==="stream"&&(F=yh.default.Readable.from(F)),Yp(n,s,{data:F,status:200,statusText:"OK",headers:new Rs,config:e})}if(sOe.indexOf(x)===-1)return s(new Xe("Unsupported protocol "+x,Xe.ERR_BAD_REQUEST,e));let v=Rs.from(e.headers).normalize();v.set("User-Agent","axios/"+Ah,!1);let C=e.onDownloadProgress,R=e.onUploadProgress,w=e.maxRate,N,P;if(le.isSpecCompliantForm(a)){let F=v.getContentType(/boundary=([-_\w\d]{10,70})/i);a=XNe(a,V=>{v.set(V)},{tag:`axios-${Ah}-boundary`,boundary:F&&F[1]||void 0})}else if(le.isFormData(a)&&le.isFunction(a.getHeaders)){if(v.set(a.getHeaders()),!v.hasContentLength())try{let F=await uOe.default.promisify(a.getLength).call(a);Number.isFinite(F)&&F>=0&&v.setContentLength(F)}catch{}}else if(le.isBlob(a))a.size&&v.setContentType(a.type||"application/octet-stream"),v.setContentLength(a.size||0),a=yh.default.Readable.from(C3(a));else if(a&&!le.isStream(a)){if(!Buffer.isBuffer(a))if(le.isArrayBuffer(a))a=Buffer.from(new Uint8Array(a));else if(le.isString(a))a=Buffer.from(a,"utf-8");else return s(new Xe("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",Xe.ERR_BAD_REQUEST,e));if(v.setContentLength(a.length,!1),e.maxBodyLength>-1&&a.length>e.maxBodyLength)return s(new Xe("Request body larger than maxBodyLength limit",Xe.ERR_BAD_REQUEST,e))}let L=le.toFiniteNumber(v.getContentLength());le.isArray(w)?(N=w[0],P=w[1]):N=P=w,a&&(R||N)&&(le.isStream(a)||(a=yh.default.Readable.from(a,{objectMode:!1})),a=yh.default.pipeline([a,new mH({length:L,maxRate:le.toFiniteNumber(N)})],le.noop),R&&a.on("progress",F=>{R(Object.assign(F,{upload:!0}))}));let M;if(e.auth){let F=e.auth.username||"",V=e.auth.password||"";M=F+":"+V}if(!M&&y.username){let F=y.username,V=y.password;M=F+":"+V}M&&v.delete("authorization");let k;try{k=fh(y.pathname+y.search,e.params,e.paramsSerializer).replace(/^\?/,"")}catch(F){let V=new Error(F.message);return V.config=e,V.url=e.url,V.exists=!0,s(V)}v.set("Accept-Encoding","gzip, compress, deflate"+(nOe?", br":""),!1);let B={path:k,method:d,headers:v.toJSON(),agents:{http:e.httpAgent,https:e.httpsAgent},auth:M,protocol:x,family:c,beforeRedirect:PQt,beforeRedirects:{}};!le.isUndefined(o)&&(B.lookup=o),e.socketPath?B.socketPath=e.socketPath:(B.hostname=y.hostname,B.port=y.port,fOe(B,e.proxy,x+"//"+y.hostname+(y.port?":"+y.port:"")+B.path));let Z,W=OQt.test(B.protocol);if(B.agent=W?e.httpsAgent:e.httpAgent,e.transport?Z=e.transport:e.maxRedirects===0?Z=W?cOe.default:oOe.default:(e.maxRedirects&&(B.maxRedirects=e.maxRedirects),e.beforeRedirect&&(B.beforeRedirects.config=e.beforeRedirect),Z=W?NQt:RQt),e.maxBodyLength>-1?B.maxBodyLength=e.maxBodyLength:B.maxBodyLength=1/0,e.insecureHTTPParser&&(B.insecureHTTPParser=e.insecureHTTPParser),m=Z.request(B,function(V){if(m.destroyed)return;let j=[V],J=+V.headers["content-length"];if(C){let we=new mH({length:le.toFiniteNumber(J),maxRate:le.toFiniteNumber(P)});C&&we.on("progress",qe=>{C(Object.assign(qe,{download:!0}))}),j.push(we)}let se=V,oe=V.req||m;if(e.decompress!==!1&&V.headers["content-encoding"])switch((d==="HEAD"||V.statusCode===204)&&delete V.headers["content-encoding"],(V.headers["content-encoding"]||"").toLowerCase()){case"gzip":case"x-gzip":case"compress":case"x-compress":j.push(Bd.default.createUnzip(rOe)),delete V.headers["content-encoding"];break;case"deflate":j.push(new eOe),j.push(Bd.default.createUnzip(rOe)),delete V.headers["content-encoding"];break;case"br":nOe&&(j.push(Bd.default.createBrotliDecompress(wQt)),delete V.headers["content-encoding"])}se=j.length>1?yh.default.pipeline(j,le.noop):j[0];let ue=yh.default.finished(se,()=>{ue(),A()}),Ce={status:V.statusCode,statusText:V.statusMessage,headers:new Rs(V.headers),config:e,request:oe};if(u==="stream")Ce.data=se,Yp(n,s,Ce);else{let we=[],qe=0;se.on("data",function(_e){we.push(_e),qe+=_e.length,e.maxContentLength>-1&&qe>e.maxContentLength&&(p=!0,se.destroy(),s(new Xe("maxContentLength size of "+e.maxContentLength+" exceeded",Xe.ERR_BAD_RESPONSE,e,oe)))}),se.on("aborted",function(){if(p)return;let _e=new Xe("maxContentLength size of "+e.maxContentLength+" exceeded",Xe.ERR_BAD_RESPONSE,e,oe);se.destroy(_e),s(_e)}),se.on("error",function(_e){m.destroyed||s(Xe.from(_e,null,e,oe))}),se.on("end",function(){try{let _e=we.length===1?we[0]:Buffer.concat(we);u!=="arraybuffer"&&(_e=_e.toString(l),(!l||l==="utf8")&&(_e=le.stripBOM(_e))),Ce.data=_e}catch(_e){return s(Xe.from(_e,null,e,Ce.request,Ce))}Yp(n,s,Ce)})}h.once("abort",we=>{se.destroyed||(se.emit("error",we),se.destroy())})}),h.once("abort",F=>{s(F),m.destroy(F)}),m.on("error",function(V){s(Xe.from(V,null,e,m))}),m.on("socket",function(V){V.setKeepAlive(!0,1e3*60)}),e.timeout){let F=parseInt(e.timeout,10);if(Number.isNaN(F)){s(new Xe("error trying to parse `config.timeout` to int",Xe.ERR_BAD_OPTION_VALUE,e,m));return}m.setTimeout(F,function(){if(f)return;let j=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",J=e.transitional||lx;e.timeoutErrorMessage&&(j=e.timeoutErrorMessage),s(new Xe(j,J.clarifyTimeoutError?Xe.ETIMEDOUT:Xe.ECONNABORTED,e,m)),g()})}if(le.isStream(a)){let F=!1,V=!1;a.on("end",()=>{F=!0}),a.once("error",j=>{V=!0,m.destroy(j)}),a.on("close",()=>{!F&&!V&&g(new ru("Request stream has been aborted",e,m))}),a.pipe(m)}else m.end(a)})};var mOe=ws.hasStandardBrowserEnv?{write(t,e,r,n,s,i){let a=[t+"="+encodeURIComponent(e)];le.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),le.isString(n)&&a.push("path="+n),le.isString(s)&&a.push("domain="+s),i===!0&&a.push("secure"),document.cookie=a.join("; ")},read(t){let e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove(t){this.write(t,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};var hOe=ws.hasStandardBrowserEnv?function(){let e=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a"),n;function s(i){let a=i;return e&&(r.setAttribute("href",a),a=r.href),r.setAttribute("href",a),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:r.pathname.charAt(0)==="/"?r.pathname:"/"+r.pathname}}return n=s(window.location.href),function(a){let o=le.isString(a)?s(a):a;return o.protocol===n.protocol&&o.host===n.host}}():function(){return function(){return!0}}();function gOe(t,e){let r=0,n=S3(50,250);return s=>{let i=s.loaded,a=s.lengthComputable?s.total:void 0,o=i-r,c=n(o),u=i<=a;r=i;let l={loaded:i,total:a,progress:a?i/a:void 0,bytes:o,rate:c||void 0,estimated:c&&a&&u?(a-i)/c:void 0,event:s};l[e?"download":"upload"]=!0,t(l)}}var BQt=typeof XMLHttpRequest<"u",AOe=BQt&&function(t){return new Promise(function(r,n){let s=t.data,i=Rs.from(t.headers).normalize(),{responseType:a,withXSRFToken:o}=t,c;function u(){t.cancelToken&&t.cancelToken.unsubscribe(c),t.signal&&t.signal.removeEventListener("abort",c)}let l;if(le.isFormData(s)){if(ws.hasStandardBrowserEnv||ws.hasStandardBrowserWebWorkerEnv)i.setContentType(!1);else if((l=i.getContentType())!==!1){let[h,...A]=l?l.split(";").map(g=>g.trim()).filter(Boolean):[];i.setContentType([h||"multipart/form-data",...A].join("; "))}}let d=new XMLHttpRequest;if(t.auth){let h=t.auth.username||"",A=t.auth.password?unescape(encodeURIComponent(t.auth.password)):"";i.set("Authorization","Basic "+btoa(h+":"+A))}let f=ph(t.baseURL,t.url);d.open(t.method.toUpperCase(),fh(f,t.params,t.paramsSerializer),!0),d.timeout=t.timeout;function p(){if(!d)return;let h=Rs.from("getAllResponseHeaders"in d&&d.getAllResponseHeaders()),g={data:!a||a==="text"||a==="json"?d.responseText:d.response,status:d.status,statusText:d.statusText,headers:h,config:t,request:d};Yp(function(y){r(y),u()},function(y){n(y),u()},g),d=null}if("onloadend"in d?d.onloadend=p:d.onreadystatechange=function(){!d||d.readyState!==4||d.status===0&&!(d.responseURL&&d.responseURL.indexOf("file:")===0)||setTimeout(p)},d.onabort=function(){d&&(n(new Xe("Request aborted",Xe.ECONNABORTED,t,d)),d=null)},d.onerror=function(){n(new Xe("Network Error",Xe.ERR_NETWORK,t,d)),d=null},d.ontimeout=function(){let A=t.timeout?"timeout of "+t.timeout+"ms exceeded":"timeout exceeded",g=t.transitional||lx;t.timeoutErrorMessage&&(A=t.timeoutErrorMessage),n(new Xe(A,g.clarifyTimeoutError?Xe.ETIMEDOUT:Xe.ECONNABORTED,t,d)),d=null},ws.hasStandardBrowserEnv&&(o&&le.isFunction(o)&&(o=o(t)),o||o!==!1&&hOe(f))){let h=t.xsrfHeaderName&&t.xsrfCookieName&&mOe.read(t.xsrfCookieName);h&&i.set(t.xsrfHeaderName,h)}s===void 0&&i.setContentType(null),"setRequestHeader"in d&&le.forEach(i.toJSON(),function(A,g){d.setRequestHeader(g,A)}),le.isUndefined(t.withCredentials)||(d.withCredentials=!!t.withCredentials),a&&a!=="json"&&(d.responseType=t.responseType),typeof t.onDownloadProgress=="function"&&d.addEventListener("progress",gOe(t.onDownloadProgress,!0)),typeof t.onUploadProgress=="function"&&d.upload&&d.upload.addEventListener("progress",gOe(t.onUploadProgress)),(t.cancelToken||t.signal)&&(c=h=>{d&&(n(!h||h.type?new ru(null,t,d):h),d.abort(),d=null)},t.cancelToken&&t.cancelToken.subscribe(c),t.signal&&(t.signal.aborted?c():t.signal.addEventListener("abort",c)));let m=QS(f);if(m&&ws.protocols.indexOf(m)===-1){n(new Xe("Unsupported protocol "+m+":",Xe.ERR_BAD_REQUEST,t));return}d.send(s||null)})};var AH={http:pOe,xhr:AOe};le.forEach(AH,(t,e)=>{if(t){try{Object.defineProperty(t,"name",{value:e})}catch{}Object.defineProperty(t,"adapterName",{value:e})}});var yOe=t=>`- ${t}`,MQt=t=>le.isFunction(t)||t===null||t===!1,I3={getAdapter:t=>{t=le.isArray(t)?t:[t];let{length:e}=t,r,n,s={};for(let i=0;i`adapter ${o} `+(c===!1?"is not supported by the environment":"is not available in the build")),a=e?i.length>1?`since : +`+i.map(yOe).join(` +`):" "+yOe(i[0]):"as no adapter specified";throw new Xe("There is no suitable adapter to dispatch the request "+a,"ERR_NOT_SUPPORT")}return n},adapters:AH};function yH(t){if(t.cancelToken&&t.cancelToken.throwIfRequested(),t.signal&&t.signal.aborted)throw new ru(null,t)}function T3(t){return yH(t),t.headers=Rs.from(t.headers),t.data=$S.call(t,t.transformRequest),["post","put","patch"].indexOf(t.method)!==-1&&t.headers.setContentType("application/x-www-form-urlencoded",!1),I3.getAdapter(t.adapter||dx.adapter)(t).then(function(n){return yH(t),n.data=$S.call(t,t.transformResponse,n),n.headers=Rs.from(n.headers),n},function(n){return FS(n)||(yH(t),n&&n.response&&(n.response.data=$S.call(t,t.transformResponse,n.response),n.response.headers=Rs.from(n.response.headers))),Promise.reject(n)})}var xOe=t=>t instanceof Rs?t.toJSON():t;function Md(t,e){e=e||{};let r={};function n(u,l,d){return le.isPlainObject(u)&&le.isPlainObject(l)?le.merge.call({caseless:d},u,l):le.isPlainObject(l)?le.merge({},l):le.isArray(l)?l.slice():l}function s(u,l,d){if(le.isUndefined(l)){if(!le.isUndefined(u))return n(void 0,u,d)}else return n(u,l,d)}function i(u,l){if(!le.isUndefined(l))return n(void 0,l)}function a(u,l){if(le.isUndefined(l)){if(!le.isUndefined(u))return n(void 0,u)}else return n(void 0,l)}function o(u,l,d){if(d in e)return n(u,l);if(d in t)return n(void 0,u)}let c={url:i,method:i,data:i,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:o,headers:(u,l)=>s(xOe(u),xOe(l),!0)};return le.forEach(Object.keys(Object.assign({},t,e)),function(l){let d=c[l]||s,f=d(t[l],e[l],l);le.isUndefined(f)&&d!==o||(r[l]=f)}),r}var xH={};["object","boolean","number","function","string","symbol"].forEach((t,e)=>{xH[t]=function(n){return typeof n===t||"a"+(e<1?"n ":" ")+t}});var bOe={};xH.transitional=function(e,r,n){function s(i,a){return"[Axios v"+Ah+"] Transitional option '"+i+"'"+a+(n?". "+n:"")}return(i,a,o)=>{if(e===!1)throw new Xe(s(a," has been removed"+(r?" in "+r:"")),Xe.ERR_DEPRECATED);return r&&!bOe[a]&&(bOe[a]=!0,console.warn(s(a," has been deprecated since v"+r+" and will be removed in the near future"))),e?e(i,a,o):!0}};function WQt(t,e,r){if(typeof t!="object")throw new Xe("options must be an object",Xe.ERR_BAD_OPTION_VALUE);let n=Object.keys(t),s=n.length;for(;s-- >0;){let i=n[s],a=e[i];if(a){let o=t[i],c=o===void 0||a(o,i,t);if(c!==!0)throw new Xe("option "+i+" must be "+c,Xe.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new Xe("Unknown option "+i,Xe.ERR_BAD_OPTION)}}var w3={assertOptions:WQt,validators:xH};var Zp=w3.validators,Ax=class{constructor(e){this.defaults=e,this.interceptors={request:new jj,response:new jj}}async request(e,r){try{return await this._request(e,r)}catch(n){if(n instanceof Error){let s;Error.captureStackTrace?Error.captureStackTrace(s={}):s=new Error;let i=s.stack?s.stack.replace(/^.+\n/,""):"";n.stack?i&&!String(n.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(n.stack+=` +`+i):n.stack=i}throw n}}_request(e,r){typeof e=="string"?(r=r||{},r.url=e):r=e||{},r=Md(this.defaults,r);let{transitional:n,paramsSerializer:s,headers:i}=r;n!==void 0&&w3.assertOptions(n,{silentJSONParsing:Zp.transitional(Zp.boolean),forcedJSONParsing:Zp.transitional(Zp.boolean),clarifyTimeoutError:Zp.transitional(Zp.boolean)},!1),s!=null&&(le.isFunction(s)?r.paramsSerializer={serialize:s}:w3.assertOptions(s,{encode:Zp.function,serialize:Zp.function},!0)),r.method=(r.method||this.defaults.method||"get").toLowerCase();let a=i&&le.merge(i.common,i[r.method]);i&&le.forEach(["delete","get","head","post","put","patch","common"],m=>{delete i[m]}),r.headers=Rs.concat(a,i);let o=[],c=!0;this.interceptors.request.forEach(function(h){typeof h.runWhen=="function"&&h.runWhen(r)===!1||(c=c&&h.synchronous,o.unshift(h.fulfilled,h.rejected))});let u=[];this.interceptors.response.forEach(function(h){u.push(h.fulfilled,h.rejected)});let l,d=0,f;if(!c){let m=[T3.bind(this),void 0];for(m.unshift.apply(m,o),m.push.apply(m,u),f=m.length,l=Promise.resolve(r);d{if(!n._listeners)return;let i=n._listeners.length;for(;i-- >0;)n._listeners[i](s);n._listeners=null}),this.promise.then=s=>{let i,a=new Promise(o=>{n.subscribe(o),i=o}).then(s);return a.cancel=function(){n.unsubscribe(i)},a},e(function(i,a,o){n.reason||(n.reason=new ru(i,a,o),r(n.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){if(this.reason){e(this.reason);return}this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;let r=this._listeners.indexOf(e);r!==-1&&this._listeners.splice(r,1)}static source(){let e;return{token:new t(function(s){e=s}),cancel:e}}},EOe=bH;function EH(t){return function(r){return t.apply(null,r)}}function _H(t){return le.isObject(t)&&t.isAxiosError===!0}var SH={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(SH).forEach(([t,e])=>{SH[e]=t});var _Oe=SH;function SOe(t){let e=new VS(t),r=NS(VS.prototype.request,e);return le.extend(r,VS.prototype,e,{allOwnKeys:!0}),le.extend(r,e,null,{allOwnKeys:!0}),r.create=function(s){return SOe(Md(t,s))},r}var bs=SOe(dx);bs.Axios=VS;bs.CanceledError=ru;bs.CancelToken=EOe;bs.isCancel=FS;bs.VERSION=Ah;bs.toFormData=Kp;bs.AxiosError=Xe;bs.Cancel=bs.CanceledError;bs.all=function(e){return Promise.all(e)};bs.spread=EH;bs.isAxiosError=_H;bs.mergeConfig=Md;bs.AxiosHeaders=Rs;bs.formToJSON=t=>A3(le.isHTMLForm(t)?new FormData(t):t);bs.getAdapter=I3.getAdapter;bs.HttpStatusCode=_Oe;bs.default=bs;var Ae=bs;var{Axios:aWr,AxiosError:oWr,CanceledError:cWr,isCancel:uWr,CancelToken:lWr,VERSION:dWr,all:fWr,Cancel:pWr,isAxiosError:mWr,spread:hWr,toFormData:gWr,AxiosHeaders:AWr,HttpStatusCode:yWr,formToJSON:xWr,getAdapter:bWr,mergeConfig:EWr}=Ae;var vOe=Re(require("https"),1),COe=Re(require("http"),1),$Qt=Number.parseInt(process.env.CATPAW_REQ_TIMEOUT_MS||"20000",10)||2e4,FQt=Ae.create({timeout:$Qt,httpsAgent:new vOe.default.Agent({keepAlive:!1,rejectUnauthorized:!1,maxCachedSessions:0}),httpAgent:new COe.default.Agent({keepAlive:!1}),proxy:!1}),he=FQt;var Sv={};is(Sv,{contains:()=>sJt,default:()=>nJt,html:()=>BH,load:()=>Me,merge:()=>iJt,parseHTML:()=>aJt,root:()=>oJt,text:()=>Ud,xml:()=>MH});var UQt={xml:!1,decodeEntities:!0},zS=UQt,IOe={_useHtmlParser2:!0,xmlMode:!0};function KS(t){return t?.xml?typeof t.xml=="boolean"?IOe:{...IOe,...t.xml}:t??void 0}var n0={};is(n0,{contains:()=>WH,html:()=>BH,merge:()=>PGt,parseHTML:()=>NGt,root:()=>OGt,text:()=>Ud,xml:()=>MH});var r0={};is(r0,{DocumentPosition:()=>fc,append:()=>fGt,appendChild:()=>dGt,compareDocumentPosition:()=>ePe,existsOne:()=>XOe,filter:()=>_x,find:()=>U3,findAll:()=>gGt,findOne:()=>q3,findOneChild:()=>hGt,getAttributeValue:()=>oGt,getChildren:()=>Ex,getElementById:()=>bGt,getElements:()=>xGt,getElementsByClassName:()=>EGt,getElementsByTagName:()=>Sh,getElementsByTagType:()=>_Gt,getFeed:()=>LH,getInnerHTML:()=>aGt,getName:()=>uGt,getOuterHTML:()=>YOe,getParent:()=>JOe,getSiblings:()=>DH,getText:()=>W3,hasAttrib:()=>cGt,hasChildren:()=>rn,innerText:()=>rv,isCDATA:()=>yx,isComment:()=>_h,isDocument:()=>nu,isTag:()=>st,isText:()=>za,nextElementSibling:()=>$3,prepend:()=>mGt,prependChild:()=>pGt,prevElementSibling:()=>F3,removeElement:()=>Fd,removeSubsets:()=>SGt,replaceElement:()=>lGt,testElement:()=>yGt,textContent:()=>$d,uniqueSort:()=>e0});var wr;(function(t){t.Root="root",t.Text="text",t.Directive="directive",t.Comment="comment",t.Script="script",t.Style="style",t.Tag="tag",t.CDATA="cdata",t.Doctype="doctype"})(wr||(wr={}));function TOe(t){return t.type===wr.Tag||t.type===wr.Script||t.type===wr.Style}var wOe=wr.Root,ROe=wr.Text,NOe=wr.Directive,OOe=wr.Comment,POe=wr.Script,DOe=wr.Style,kOe=wr.Tag,LOe=wr.CDATA,BOe=wr.Doctype;var R3=class{constructor(){this.parent=null,this.prev=null,this.next=null,this.startIndex=null,this.endIndex=null}get parentNode(){return this.parent}set parentNode(e){this.parent=e}get previousSibling(){return this.prev}set previousSibling(e){this.prev=e}get nextSibling(){return this.next}set nextSibling(e){this.next=e}cloneNode(e=!1){return ZS(this,e)}},YS=class extends R3{constructor(e){super(),this.data=e}get nodeValue(){return this.data}set nodeValue(e){this.data=e}},ll=class extends YS{constructor(){super(...arguments),this.type=wr.Text}get nodeType(){return 3}},xh=class extends YS{constructor(){super(...arguments),this.type=wr.Comment}get nodeType(){return 8}},bh=class extends YS{constructor(e,r){super(r),this.name=e,this.type=wr.Directive}get nodeType(){return 1}},JS=class extends R3{constructor(e){super(),this.children=e}get firstChild(){var e;return(e=this.children[0])!==null&&e!==void 0?e:null}get lastChild(){return this.children.length>0?this.children[this.children.length-1]:null}get childNodes(){return this.children}set childNodes(e){this.children=e}},XS=class extends JS{constructor(){super(...arguments),this.type=wr.CDATA}get nodeType(){return 4}},Eo=class extends JS{constructor(){super(...arguments),this.type=wr.Root}get nodeType(){return 9}},Eh=class extends JS{constructor(e,r,n=[],s=e==="script"?wr.Script:e==="style"?wr.Style:wr.Tag){super(n),this.name=e,this.attribs=r,this.type=s}get nodeType(){return 1}get tagName(){return this.name}set tagName(e){this.name=e}get attributes(){return Object.keys(this.attribs).map(e=>{var r,n;return{name:e,value:this.attribs[e],namespace:(r=this["x-attribsNamespace"])===null||r===void 0?void 0:r[e],prefix:(n=this["x-attribsPrefix"])===null||n===void 0?void 0:n[e]}})}};function st(t){return TOe(t)}function yx(t){return t.type===wr.CDATA}function za(t){return t.type===wr.Text}function _h(t){return t.type===wr.Comment}function N3(t){return t.type===wr.Directive}function nu(t){return t.type===wr.Root}function rn(t){return Object.prototype.hasOwnProperty.call(t,"children")}function ZS(t,e=!1){let r;if(za(t))r=new ll(t.data);else if(_h(t))r=new xh(t.data);else if(st(t)){let n=e?vH(t.children):[],s=new Eh(t.name,{...t.attribs},n);n.forEach(i=>i.parent=s),t.namespace!=null&&(s.namespace=t.namespace),t["x-attribsNamespace"]&&(s["x-attribsNamespace"]={...t["x-attribsNamespace"]}),t["x-attribsPrefix"]&&(s["x-attribsPrefix"]={...t["x-attribsPrefix"]}),r=s}else if(yx(t)){let n=e?vH(t.children):[],s=new XS(n);n.forEach(i=>i.parent=s),r=s}else if(nu(t)){let n=e?vH(t.children):[],s=new Eo(n);n.forEach(i=>i.parent=s),t["x-mode"]&&(s["x-mode"]=t["x-mode"]),r=s}else if(N3(t)){let n=new bh(t.name,t.data);t["x-name"]!=null&&(n["x-name"]=t["x-name"],n["x-publicId"]=t["x-publicId"],n["x-systemId"]=t["x-systemId"]),r=n}else throw new Error(`Not implemented yet: ${t.type}`);return r.startIndex=t.startIndex,r.endIndex=t.endIndex,t.sourceCodeLocation!=null&&(r.sourceCodeLocation=t.sourceCodeLocation),r}function vH(t){let e=t.map(r=>ZS(r,!0));for(let r=1;r\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(t=>t.charCodeAt(0)));var P3=new Uint16Array("\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map(t=>t.charCodeAt(0)));var CH,qQt=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),bx=(CH=String.fromCodePoint)!==null&&CH!==void 0?CH:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function ev(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=qQt.get(t))!==null&&e!==void 0?e:t}var Js;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(Js||(Js={}));var jQt=32,dc;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(dc||(dc={}));function IH(t){return t>=Js.ZERO&&t<=Js.NINE}function HQt(t){return t>=Js.UPPER_A&&t<=Js.UPPER_F||t>=Js.LOWER_A&&t<=Js.LOWER_F}function QQt(t){return t>=Js.UPPER_A&&t<=Js.UPPER_Z||t>=Js.LOWER_A&&t<=Js.LOWER_Z||IH(t)}function GQt(t){return t===Js.EQUALS||QQt(t)}var Ys;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(Ys||(Ys={}));var Wd;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(Wd||(Wd={}));var D3=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=Ys.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Wd.Strict}startEntity(e){this.decodeMode=e,this.state=Ys.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case Ys.EntityStart:return e.charCodeAt(r)===Js.NUM?(this.state=Ys.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=Ys.NamedEntity,this.stateNamedEntity(e,r));case Ys.NumericStart:return this.stateNumericStart(e,r);case Ys.NumericDecimal:return this.stateNumericDecimal(e,r);case Ys.NumericHex:return this.stateNumericHex(e,r);case Ys.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|jQt)===Js.LOWER_X?(this.state=Ys.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=Ys.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===Js.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==Wd.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&dc.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~dc.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case Ys.NamedEntity:return this.result!==0&&(this.decodeMode!==Wd.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Ys.NumericDecimal:return this.emitNumericEntity(0,2);case Ys.NumericHex:return this.emitNumericEntity(0,3);case Ys.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Ys.EntityStart:return 0}}};function $Oe(t){let e="",r=new D3(t,n=>e+=bx(n));return function(s,i){let a=0,o=0;for(;(o=s.indexOf("&",o))>=0;){e+=s.slice(a,o),r.startEntity(i);let u=r.write(s,o+1);if(u<0){a=o+r.end();break}a=o+u,o=u===0?a+1:a}let c=e+s.slice(a);return e="",c}}function TH(t,e,r,n){let s=(e&dc.BRANCH_LENGTH)>>7,i=e&dc.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(un)o=c-1;else return t[c+s]}return-1}var $Wr=$Oe(O3),FWr=$Oe(P3);function k3(t){for(let e=1;e$\x80-\uFFFF]/g,FOe=new Map([[34,"""],[38,"&"],[39,"'"],[60,"<"],[62,">"]]),UOe=String.prototype.codePointAt!=null?(t,e)=>t.codePointAt(e):(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e);function tv(t){let e="",r=0,n;for(;(n=wH.exec(t))!==null;){let s=n.index,i=t.charCodeAt(s),a=FOe.get(i);a!==void 0?(e+=t.substring(r,s)+a,r=s+1):(e+=`${t.substring(r,s)}&#x${UOe(t,s).toString(16)};`,r=wH.lastIndex+=+((i&64512)===55296))}return e+t.substr(r)}function RH(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var qOe=RH(/[&<>'"]/g,FOe),L3=RH(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),B3=RH(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var jOe;(function(t){t[t.XML=0]="XML",t[t.HTML=1]="HTML"})(jOe||(jOe={}));var HOe;(function(t){t[t.UTF8=0]="UTF8",t[t.ASCII=1]="ASCII",t[t.Extensive=2]="Extensive",t[t.Attribute=3]="Attribute",t[t.Text=4]="Text"})(HOe||(HOe={}));var VOe=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(t=>[t.toLowerCase(),t])),zOe=new Map(["definitionURL","attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(t=>[t.toLowerCase(),t]));var KQt=new Set(["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"]);function YQt(t){return t.replace(/"/g,""")}function JQt(t,e){var r;if(!t)return;let n=((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)===!1?YQt:e.xmlMode||e.encodeEntities!=="utf8"?tv:L3;return Object.keys(t).map(s=>{var i,a;let o=(i=t[s])!==null&&i!==void 0?i:"";return e.xmlMode==="foreign"&&(s=(a=zOe.get(s))!==null&&a!==void 0?a:s),!e.emptyAttrs&&!e.xmlMode&&o===""?s:`${s}="${n(o)}"`}).join(" ")}var KOe=new Set(["area","base","basefont","br","col","command","embed","frame","hr","img","input","isindex","keygen","link","meta","param","source","track","wbr"]);function PH(t,e={}){let r="length"in t?t:[t],n="";for(let s=0;s0&&(n+=PH(t.children,e)),(e.xmlMode||!KOe.has(t.name))&&(n+=``)),n}function rGt(t){return`<${t.data}>`}function nGt(t,e){var r;let n=t.data||"";return((r=e.encodeEntities)!==null&&r!==void 0?r:e.decodeEntities)!==!1&&!(!e.xmlMode&&t.parent&&KQt.has(t.parent.name))&&(n=e.xmlMode||e.encodeEntities!=="utf8"?tv(n):B3(n)),n}function sGt(t){return``}function iGt(t){return``}function YOe(t,e){return M3(t,e)}function aGt(t,e){return rn(t)?t.children.map(r=>YOe(r,e)).join(""):""}function W3(t){return Array.isArray(t)?t.map(W3).join(""):st(t)?t.name==="br"?` +`:W3(t.children):yx(t)?W3(t.children):za(t)?t.data:""}function $d(t){return Array.isArray(t)?t.map($d).join(""):rn(t)&&!_h(t)?$d(t.children):za(t)?t.data:""}function rv(t){return Array.isArray(t)?t.map(rv).join(""):rn(t)&&(t.type===wr.Tag||yx(t))?rv(t.children):za(t)?t.data:""}function Ex(t){return rn(t)?t.children:[]}function JOe(t){return t.parent||null}function DH(t){let e=JOe(t);if(e!=null)return Ex(e);let r=[t],{prev:n,next:s}=t;for(;n!=null;)r.unshift(n),{prev:n}=n;for(;s!=null;)r.push(s),{next:s}=s;return r}function oGt(t,e){var r;return(r=t.attribs)===null||r===void 0?void 0:r[e]}function cGt(t,e){return t.attribs!=null&&Object.prototype.hasOwnProperty.call(t.attribs,e)&&t.attribs[e]!=null}function uGt(t){return t.name}function $3(t){let{next:e}=t;for(;e!==null&&!st(e);)({next:e}=e);return e}function F3(t){let{prev:e}=t;for(;e!==null&&!st(e);)({prev:e}=e);return e}function Fd(t){if(t.prev&&(t.prev.next=t.next),t.next&&(t.next.prev=t.prev),t.parent){let e=t.parent.children,r=e.lastIndexOf(t);r>=0&&e.splice(r,1)}t.next=null,t.prev=null,t.parent=null}function lGt(t,e){let r=e.prev=t.prev;r&&(r.next=e);let n=e.next=t.next;n&&(n.prev=e);let s=e.parent=t.parent;if(s){let i=s.children;i[i.lastIndexOf(t)]=e,t.parent=null}}function dGt(t,e){if(Fd(e),e.next=null,e.parent=t,t.children.push(e)>1){let r=t.children[t.children.length-2];r.next=e,e.prev=r}else e.prev=null}function fGt(t,e){Fd(e);let{parent:r}=t,n=t.next;if(e.next=n,e.prev=t,t.next=e,e.parent=r,n){if(n.prev=e,r){let s=r.children;s.splice(s.lastIndexOf(n),0,e)}}else r&&r.children.push(e)}function pGt(t,e){if(Fd(e),e.parent=t,e.prev=null,t.children.unshift(e)!==1){let r=t.children[1];r.prev=e,e.next=r}else e.next=null}function mGt(t,e){Fd(e);let{parent:r}=t;if(r){let n=r.children;n.splice(n.indexOf(t),0,e)}t.prev&&(t.prev.next=e),e.parent=r,e.prev=t.prev,e.next=t,t.prev=e}function _x(t,e,r=!0,n=1/0){return U3(t,Array.isArray(e)?e:[e],r,n)}function U3(t,e,r,n){let s=[],i=[Array.isArray(e)?e:[e]],a=[0];for(;;){if(a[0]>=i[0].length){if(a.length===1)return s;i.shift(),a.shift();continue}let o=i[0][a[0]++];if(t(o)&&(s.push(o),--n<=0))return s;r&&rn(o)&&o.children.length>0&&(a.unshift(0),i.unshift(o.children))}}function hGt(t,e){return e.find(t)}function q3(t,e,r=!0){let n=Array.isArray(e)?e:[e];for(let s=0;s0){let a=q3(t,i.children,!0);if(a)return a}}return null}function XOe(t,e){return(Array.isArray(e)?e:[e]).some(r=>st(r)&&t(r)||rn(r)&&XOe(t,r.children))}function gGt(t,e){let r=[],n=[Array.isArray(e)?e:[e]],s=[0];for(;;){if(s[0]>=n[0].length){if(n.length===1)return r;n.shift(),s.shift();continue}let i=n[0][s[0]++];st(i)&&t(i)&&r.push(i),rn(i)&&i.children.length>0&&(s.unshift(0),n.unshift(i.children))}}var j3={tag_name(t){return typeof t=="function"?e=>st(e)&&t(e.name):t==="*"?st:e=>st(e)&&e.name===t},tag_type(t){return typeof t=="function"?e=>t(e.type):e=>e.type===t},tag_contains(t){return typeof t=="function"?e=>za(e)&&t(e.data):e=>za(e)&&e.data===t}};function kH(t,e){return typeof e=="function"?r=>st(r)&&e(r.attribs[t]):r=>st(r)&&r.attribs[t]===e}function AGt(t,e){return r=>t(r)||e(r)}function ZOe(t){let e=Object.keys(t).map(r=>{let n=t[r];return Object.prototype.hasOwnProperty.call(j3,r)?j3[r](n):kH(r,n)});return e.length===0?null:e.reduce(AGt)}function yGt(t,e){let r=ZOe(t);return r?r(e):!0}function xGt(t,e,r,n=1/0){let s=ZOe(t);return s?_x(s,e,r,n):[]}function bGt(t,e,r=!0){return Array.isArray(e)||(e=[e]),q3(kH("id",t),e,r)}function Sh(t,e,r=!0,n=1/0){return _x(j3.tag_name(t),e,r,n)}function EGt(t,e,r=!0,n=1/0){return _x(kH("class",t),e,r,n)}function _Gt(t,e,r=!0,n=1/0){return _x(j3.tag_type(t),e,r,n)}function SGt(t){let e=t.length;for(;--e>=0;){let r=t[e];if(e>0&&t.lastIndexOf(r,e-1)>=0){t.splice(e,1);continue}for(let n=r.parent;n;n=n.parent)if(t.includes(n)){t.splice(e,1);break}}return t}var fc;(function(t){t[t.DISCONNECTED=1]="DISCONNECTED",t[t.PRECEDING=2]="PRECEDING",t[t.FOLLOWING=4]="FOLLOWING",t[t.CONTAINS=8]="CONTAINS",t[t.CONTAINED_BY=16]="CONTAINED_BY"})(fc||(fc={}));function ePe(t,e){let r=[],n=[];if(t===e)return 0;let s=rn(t)?t:t.parent;for(;s;)r.unshift(s),s=s.parent;for(s=rn(e)?e:e.parent;s;)n.unshift(s),s=s.parent;let i=Math.min(r.length,n.length),a=0;for(;ac.indexOf(l)?o===e?fc.FOLLOWING|fc.CONTAINED_BY:fc.FOLLOWING:o===t?fc.PRECEDING|fc.CONTAINS:fc.PRECEDING}function e0(t){return t=t.filter((e,r,n)=>!n.includes(e,r+1)),t.sort((e,r)=>{let n=ePe(e,r);return n&fc.PRECEDING?-1:n&fc.FOLLOWING?1:0}),t}function LH(t){let e=H3(wGt,t);return e?e.name==="feed"?vGt(e):CGt(e):null}function vGt(t){var e;let r=t.children,n={type:"atom",items:Sh("entry",r).map(a=>{var o;let{children:c}=a,u={media:tPe(c)};Ka(u,"id","id",c),Ka(u,"title","title",c);let l=(o=H3("link",c))===null||o===void 0?void 0:o.attribs.href;l&&(u.link=l);let d=t0("summary",c)||t0("content",c);d&&(u.description=d);let f=t0("updated",c);return f&&(u.pubDate=new Date(f)),u})};Ka(n,"id","id",r),Ka(n,"title","title",r);let s=(e=H3("link",r))===null||e===void 0?void 0:e.attribs.href;s&&(n.link=s),Ka(n,"description","subtitle",r);let i=t0("updated",r);return i&&(n.updated=new Date(i)),Ka(n,"author","email",r,!0),n}function CGt(t){var e,r;let n=(r=(e=H3("channel",t.children))===null||e===void 0?void 0:e.children)!==null&&r!==void 0?r:[],s={type:t.name.substr(0,3),id:"",items:Sh("item",t.children).map(a=>{let{children:o}=a,c={media:tPe(o)};Ka(c,"id","guid",o),Ka(c,"title","title",o),Ka(c,"link","link",o),Ka(c,"description","description",o);let u=t0("pubDate",o)||t0("dc:date",o);return u&&(c.pubDate=new Date(u)),c})};Ka(s,"title","title",n),Ka(s,"link","link",n),Ka(s,"description","description",n);let i=t0("lastBuildDate",n);return i&&(s.updated=new Date(i)),Ka(s,"author","managingEditor",n,!0),s}var IGt=["url","type","lang"],TGt=["fileSize","bitrate","framerate","samplingrate","channels","duration","height","width"];function tPe(t){return Sh("media:content",t).map(e=>{let{attribs:r}=e,n={medium:r.medium,isDefault:!!r.isDefault};for(let s of IGt)r[s]&&(n[s]=r[s]);for(let s of TGt)r[s]&&(n[s]=parseInt(r[s],10));return r.expression&&(n.expression=r.expression),n})}function H3(t,e){return Sh(t,e,!0,1)[0]}function t0(t,e,r=!1){return $d(Sh(t,e,r,1)).trim()}function Ka(t,e,r,n,s=!1){let i=t0(r,n,s);i&&(t[e]=i)}function wGt(t){return t==="rss"||t==="feed"||t==="rdf:RDF"}function nPe(t,e,r){return t?t(e??t._root.children,null,void 0,r).toString():""}function RGt(t,e){return!e&&typeof t=="object"&&t!=null&&!("length"in t)&&!("type"in t)}function BH(t,e){let r=RGt(t)?(e=t,void 0):t,n={...zS,...this===null||this===void 0?void 0:this._options,...KS(e??{})};return nPe(this,r,n)}function MH(t){let e={...this._options,xmlMode:!0};return nPe(this,t,e)}function Ud(t){let e=t||(this?this.root():[]),r="";for(let n=0;ndPe,attr:()=>kGt,data:()=>BGt,hasClass:()=>$Gt,prop:()=>LGt,removeAttr:()=>WGt,removeClass:()=>fPe,toggleClass:()=>pPe,val:()=>MGt});function _o(t){return t.cheerio!=null}function sPe(t){return t.replace(/[_.-](\w|$)/g,(e,r)=>r.toUpperCase())}function iPe(t){return t.replace(/[A-Z]/g,"-$&").toLowerCase()}function mn(t,e){let r=t.length;for(let n=0;nZS(n,!0)):[ZS(t,!0)],r=new Eo(e);return e.forEach(n=>{n.parent=r}),e}var vh;(function(t){t[t.LowerA=97]="LowerA",t[t.LowerZ=122]="LowerZ",t[t.UpperA=65]="UpperA",t[t.UpperZ=90]="UpperZ",t[t.Exclamation=33]="Exclamation"})(vh||(vh={}));function nv(t){let e=t.indexOf("<");if(e<0||e>t.length-3)return!1;let r=t.charCodeAt(e+1);return(r>=vh.LowerA&&r<=vh.LowerZ||r>=vh.UpperA&&r<=vh.UpperZ||r===vh.Exclamation)&&t.includes(">",e+2)}var Sx=Object.prototype.hasOwnProperty,sv=/\s+/,$H="data-",aPe={null:null,true:!0,false:!1},UH=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,DGt=/^{[^]*}$|^\[[^]*]$/;function G3(t,e,r){var n;if(!(!t||!st(t))){if((n=t.attribs)!==null&&n!==void 0||(t.attribs={}),!e)return t.attribs;if(Sx.call(t.attribs,e))return!r&&UH.test(e)?e:t.attribs[e];if(t.name==="option"&&e==="value")return Ud(t.children);if(t.name==="input"&&(t.attribs.type==="radio"||t.attribs.type==="checkbox")&&e==="value")return"on"}}function vx(t,e,r){r===null?lPe(t,e):t.attribs[e]=`${r}`}function kGt(t,e){if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t!="string")throw new Error("Bad combination of arguments.");return mn(this,(r,n)=>{st(r)&&vx(r,t,e.call(r,n,r.attribs[t]))})}return mn(this,r=>{st(r)&&(typeof t=="object"?Object.keys(t).forEach(n=>{let s=t[n];vx(r,n,s)}):vx(r,t,e))})}return arguments.length>1?this:G3(this[0],t,this.options.xmlMode)}function oPe(t,e,r){return e in t?t[e]:!r&&UH.test(e)?G3(t,e,!1)!==void 0:G3(t,e,r)}function FH(t,e,r,n){e in t?t[e]=r:vx(t,e,!n&&UH.test(e)?r?"":null:`${r}`)}function LGt(t,e){var r;if(typeof t=="string"&&e===void 0){let n=this[0];if(!n||!st(n))return;switch(t){case"style":{let s=this.css(),i=Object.keys(s);return i.forEach((a,o)=>{s[o]=a}),s.length=i.length,s}case"tagName":case"nodeName":return n.name.toUpperCase();case"href":case"src":{let s=(r=n.attribs)===null||r===void 0?void 0:r[t];return typeof URL<"u"&&(t==="href"&&(n.tagName==="a"||n.name==="link")||t==="src"&&(n.tagName==="img"||n.tagName==="iframe"||n.tagName==="audio"||n.tagName==="video"||n.tagName==="source"))&&s!==void 0&&this.options.baseURI?new URL(s,this.options.baseURI).href:s}case"innerText":return rv(n);case"textContent":return $d(n);case"outerHTML":return this.clone().wrap("").parent().html();case"innerHTML":return this.html();default:return oPe(n,t,this.options.xmlMode)}}if(typeof t=="object"||e!==void 0){if(typeof e=="function"){if(typeof t=="object")throw new Error("Bad combination of arguments.");return mn(this,(n,s)=>{st(n)&&FH(n,t,e.call(n,s,oPe(n,t,this.options.xmlMode)),this.options.xmlMode)})}return mn(this,n=>{st(n)&&(typeof t=="object"?Object.keys(t).forEach(s=>{let i=t[s];FH(n,s,i,this.options.xmlMode)}):FH(n,t,e,this.options.xmlMode))})}}function cPe(t,e,r){var n;let s=t;(n=s.data)!==null&&n!==void 0||(s.data={}),typeof e=="object"?Object.assign(s.data,e):typeof e=="string"&&r!==void 0&&(s.data[e]=r)}function uPe(t,e){let r,n,s;e==null?(r=Object.keys(t.attribs).filter(i=>i.startsWith($H)),n=r.map(i=>sPe(i.slice($H.length)))):(r=[$H+iPe(e)],n=[e]);for(let i=0;i{st(i)&&(typeof t=="object"?cPe(i,t):cPe(i,t,e))}),this):Sx.call(s.data,t)?s.data[t]:uPe(s,t):uPe(s)}function MGt(t){let e=arguments.length===0,r=this[0];if(!r||!st(r))return e?void 0:this;switch(r.name){case"textarea":return this.text(t);case"select":{let n=this.find("option:selected");if(!e){if(this.attr("multiple")==null&&typeof t=="object")return this;this.find("option").removeAttr("selected");let s=typeof t!="object"?[t]:t;for(let i=0;iUd(s.children)):n.attr("value")}case"input":case"option":return e?this.attr("value"):this.attr("value",t)}}function lPe(t,e){!t.attribs||!Sx.call(t.attribs,e)||delete t.attribs[e]}function V3(t){return t?t.trim().split(sv):[]}function WGt(t){let e=V3(t);for(let r=0;r{st(n)&&lPe(n,e[r])});return this}function $Gt(t){return this.toArray().some(e=>{let r=st(e)&&e.attribs.class,n=-1;if(r&&t.length)for(;(n=r.indexOf(t,n+1))>-1;){let s=n+t.length;if((n===0||sv.test(r[n-1]))&&(s===r.length||sv.test(r[s])))return!0}return!1})}function dPe(t){if(typeof t=="function")return mn(this,(n,s)=>{if(st(n)){let i=n.attribs.class||"";dPe.call([n],t.call(n,s,i))}});if(!t||typeof t!="string")return this;let e=t.split(sv),r=this.length;for(let n=0;n{st(s)&&fPe.call([s],t.call(s,i,s.attribs.class||""))});let e=V3(t),r=e.length,n=arguments.length===0;return mn(this,s=>{if(st(s))if(n)s.attribs.class="";else{let i=V3(s.attribs.class),a=!1;for(let o=0;o=0&&(i.splice(c,1),a=!0,o--)}a&&(s.attribs.class=i.join(" "))}})}function pPe(t,e){if(typeof t=="function")return mn(this,(a,o)=>{st(a)&&pPe.call([a],t.call(a,o,a.attribs.class||"",e),e)});if(!t||typeof t!="string")return this;let r=t.split(sv),n=r.length,s=typeof e=="boolean"?e?1:-1:0,i=this.length;for(let a=0;a=0&&l<0?c.push(r[u]):s<=0&&l>=0&&c.splice(l,1)}o.attribs.class=c.join(" ")}return this}var dQ={};is(dQ,{add:()=>VVt,addBack:()=>zVt,children:()=>OVt,closest:()=>SVt,contents:()=>PVt,each:()=>DVt,end:()=>GVt,eq:()=>UVt,filter:()=>LVt,filterArray:()=>lQ,find:()=>xVt,first:()=>$Vt,get:()=>qVt,has:()=>WVt,index:()=>HVt,is:()=>BVt,last:()=>FVt,map:()=>kVt,next:()=>vVt,nextAll:()=>CVt,nextUntil:()=>IVt,not:()=>MVt,parent:()=>bVt,parents:()=>EVt,parentsUntil:()=>_Vt,prev:()=>TVt,prevAll:()=>wVt,prevUntil:()=>RVt,siblings:()=>NVt,slice:()=>QVt,toArray:()=>jVt});var Ja=Re(wx(),1);var eQ=Re(s0(),1);var su=Re(wx(),1),jd=Re(s0(),1);var ua=Re(wx(),1),wPe=new Map([[ua.SelectorType.Universal,50],[ua.SelectorType.Tag,30],[ua.SelectorType.Attribute,1],[ua.SelectorType.Pseudo,0]]);function av(t){return!wPe.has(t.type)}var eVt=new Map([[ua.AttributeAction.Exists,10],[ua.AttributeAction.Equals,8],[ua.AttributeAction.Not,7],[ua.AttributeAction.Start,6],[ua.AttributeAction.End,6],[ua.AttributeAction.Any,5]]);function HH(t){let e=t.map(RPe);for(let r=1;r=0&&n>=1)):t.type===ua.SelectorType.Pseudo&&(t.data?t.name==="has"||t.name==="contains"?n=0:Array.isArray(t.data)?(n=Math.min(...t.data.map(s=>Math.min(...s.map(RPe)))),n<0&&(n=0)):n=2:n=3),n}var ov=Re(s0(),1),tVt=/[-[\]{}()*+?.,\\^$|#\s]/g;function NPe(t){return t.replace(tVt,"\\$&")}var rVt=new Set(["accept","accept-charset","align","alink","axis","bgcolor","charset","checked","clear","codetype","color","compact","declare","defer","dir","direction","disabled","enctype","face","frame","hreflang","http-equiv","lang","language","link","media","method","multiple","nohref","noresize","noshade","nowrap","readonly","rel","rev","rules","scope","scrolling","selected","shape","target","text","type","valign","valuetype","vlink"]);function Ch(t,e){return typeof t.ignoreCase=="boolean"?t.ignoreCase:t.ignoreCase==="quirks"?!!e.quirksMode:!e.xmlMode&&rVt.has(t.name)}var OPe={equals(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return Ch(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return o!=null&&o.length===i.length&&o.toLowerCase()===i&&t(a)}):a=>n.getAttributeValue(a,s)===i&&t(a)},hyphen(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return Ch(e,r)?(i=i.toLowerCase(),function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a).toLowerCase()===i&&t(c)}):function(c){let u=n.getAttributeValue(c,s);return u!=null&&(u.length===a||u.charAt(a)==="-")&&u.substr(0,a)===i&&t(c)}},element(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(/\s/.test(i))return ov.default.falseFunc;let a=new RegExp(`(?:^|\\s)${NPe(i)}(?:$|\\s)`,Ch(e,r)?"i":"");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}},exists(t,{name:e},{adapter:r}){return n=>r.hasAttrib(n,e)&&t(n)},start(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=i.length;return a===0?ov.default.falseFunc:Ch(e,r)?(i=i.toLowerCase(),o=>{let c=n.getAttributeValue(o,s);return c!=null&&c.length>=a&&c.substr(0,a).toLowerCase()===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.startsWith(i))&&t(o)}},end(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e,a=-i.length;return a===0?ov.default.falseFunc:Ch(e,r)?(i=i.toLowerCase(),o=>{var c;return((c=n.getAttributeValue(o,s))===null||c===void 0?void 0:c.substr(a).toLowerCase())===i&&t(o)}):o=>{var c;return!!(!((c=n.getAttributeValue(o,s))===null||c===void 0)&&c.endsWith(i))&&t(o)}},any(t,e,r){let{adapter:n}=r,{name:s,value:i}=e;if(i==="")return ov.default.falseFunc;if(Ch(e,r)){let a=new RegExp(NPe(i),"i");return function(c){let u=n.getAttributeValue(c,s);return u!=null&&u.length>=i.length&&a.test(u)&&t(c)}}return a=>{var o;return!!(!((o=n.getAttributeValue(a,s))===null||o===void 0)&&o.includes(i))&&t(a)}},not(t,e,r){let{adapter:n}=r,{name:s}=e,{value:i}=e;return i===""?a=>!!n.getAttributeValue(a,s)&&t(a):Ch(e,r)?(i=i.toLowerCase(),a=>{let o=n.getAttributeValue(a,s);return(o==null||o.length!==i.length||o.toLowerCase()!==i)&&t(a)}):a=>n.getAttributeValue(a,s)!==i&&t(a)}};var LPe=Re(wx(),1);var nVt=new Set([9,10,12,13,32]),PPe=48,sVt=57;function DPe(t){if(t=t.trim().toLowerCase(),t==="even")return[2,0];if(t==="odd")return[2,1];let e=0,r=0,n=i(),s=a();if(e=PPe&&t.charCodeAt(e)<=sVt;)u=u*10+(t.charCodeAt(e)-PPe),e++;return e===c?null:u}function o(){for(;ei<=r;if(e===0)return i=>i===r;if(e===1)return r<0?QH.default.trueFunc:i=>i>=r;let n=Math.abs(e),s=(r%n+n)%n;return e>1?i=>i>=r&&i%n===s:i=>i<=r&&i%n===s}function Rx(t){return kPe(DPe(t))}var Ya=Re(s0(),1);function Y3(t,e){return r=>{let n=e.getParent(r);return n!=null&&e.isTag(n)&&t(r)}}var Nx={contains(t,e,{adapter:r}){return function(s){return t(s)&&r.getText(s).includes(e)}},icontains(t,e,{adapter:r}){let n=e.toLowerCase();return function(i){return t(i)&&r.getText(i).toLowerCase().includes(n)}},"nth-child"(t,e,{adapter:r,equals:n}){let s=Rx(e);return s===Ya.default.falseFunc?Ya.default.falseFunc:s===Ya.default.trueFunc?Y3(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u=0&&!n(a,o[u]);u--)r.isTag(o[u])&&c++;return s(c)&&t(a)}},"nth-of-type"(t,e,{adapter:r,equals:n}){let s=Rx(e);return s===Ya.default.falseFunc?Ya.default.falseFunc:s===Ya.default.trueFunc?Y3(t,r):function(a){let o=r.getSiblings(a),c=0;for(let u=0;u=0;u--){let l=o[u];if(n(a,l))break;r.isTag(l)&&r.getName(l)===r.getName(a)&&c++}return s(c)&&t(a)}},root(t,e,{adapter:r}){return n=>{let s=r.getParent(n);return(s==null||!r.isTag(s))&&t(n)}},scope(t,e,r,n){let{equals:s}=r;return!n||n.length===0?Nx.root(t,e,r):n.length===1?i=>s(n[0],i)&&t(i):i=>n.includes(i)&&t(i)},hover:GH("isHovered"),visited:GH("isVisited"),active:GH("isActive")};function GH(t){return function(r,n,{adapter:s}){let i=s[t];return typeof i!="function"?Ya.default.falseFunc:function(o){return i(o)&&r(o)}}}var cv={empty(t,{adapter:e}){return!e.getChildren(t).some(r=>e.isTag(r)||e.getText(r)!=="")},"first-child"(t,{adapter:e,equals:r}){if(e.prevElementSibling)return e.prevElementSibling(t)==null;let n=e.getSiblings(t).find(s=>e.isTag(s));return n!=null&&r(t,n)},"last-child"(t,{adapter:e,equals:r}){let n=e.getSiblings(t);for(let s=n.length-1;s>=0;s--){if(r(t,n[s]))return!0;if(e.isTag(n[s]))break}return!1},"first-of-type"(t,{adapter:e,equals:r}){let n=e.getSiblings(t),s=e.getName(t);for(let i=0;i=0;i--){let a=n[i];if(r(t,a))return!0;if(e.isTag(a)&&e.getName(a)===s)break}return!1},"only-of-type"(t,{adapter:e,equals:r}){let n=e.getName(t);return e.getSiblings(t).every(s=>r(t,s)||!e.isTag(s)||e.getName(s)!==n)},"only-child"(t,{adapter:e,equals:r}){return e.getSiblings(t).every(n=>r(t,n)||!e.isTag(n))}};function VH(t,e,r,n){if(r===null){if(t.length>n)throw new Error(`Pseudo-class :${e} requires an argument`)}else if(t.length===n)throw new Error(`Pseudo-class :${e} doesn't have any arguments`)}var J3={"any-link":":is(a, area, link)[href]",link:":any-link:not(:visited)",disabled:`:is( :is(button, input, select, textarea, optgroup, option)[disabled], optgroup[disabled] > option, fieldset[disabled]:not(fieldset[disabled] legend:first-of-type *) - )`,enabled:":not(:disabled)",checked:":is(:is(input[type=radio], input[type=checkbox])[checked], option:selected)",required:":is(input, select, textarea)[required]",optional:":is(input, select, textarea):not([required])",selected:"option:is([selected], select:not([multiple]):not(:has(> option[selected])) > :first-of-type)",checkbox:"[type=checkbox]",file:"[type=file]",password:"[type=password]",radio:"[type=radio]",reset:"[type=reset]",image:"[type=image]",submit:"[type=submit]",parent:":not(:empty)",header:":is(h1, h2, h3, h4, h5, h6)",button:":is(button, input[type=button])",input:":is(input, textarea, select, button)",text:"input:is(:not([type!='']), [type=text])"};var mc=Re(n0(),1);var zH={};function YH(t,e){return t===mc.default.falseFunc?mc.default.falseFunc:r=>e.isTag(r)&&t(r)}function JH(t,e){let r=e.getSiblings(t);if(r.length<=1)return[];let n=r.indexOf(t);return n<0||n===r.length-1?[]:r.slice(n+1).filter(e.isTag)}function VH(t){return{xmlMode:!!t.xmlMode,lowerCaseAttributeNames:!!t.lowerCaseAttributeNames,lowerCaseTags:!!t.lowerCaseTags,quirksMode:!!t.quirksMode,cacheResults:!!t.cacheResults,pseudos:t.pseudos,adapter:t.adapter,equals:t.equals}}var KH=(t,e,r,n,s)=>{let i=s(e,VH(r),n);return i===mc.default.trueFunc?t:i===mc.default.falseFunc?mc.default.falseFunc:a=>i(a)&&t(a)},Yk={is:KH,matches:KH,where:KH,not(t,e,r,n,s){let i=s(e,VH(r),n);return i===mc.default.falseFunc?t:i===mc.default.trueFunc?mc.default.falseFunc:a=>!i(a)&&t(a)},has(t,e,r,n,s){let{adapter:i}=r,a=VH(r);a.relativeSelector=!0;let o=e.some(l=>l.some(iv))?[zH]:void 0,c=s(e,a,o);if(c===mc.default.falseFunc)return mc.default.falseFunc;let u=YH(c,i);if(o&&c!==mc.default.trueFunc){let{shouldTestNextSiblings:l=!1}=c;return d=>{if(!t(d))return!1;o[0]=d;let f=i.getChildren(d),p=l?[...f,...JH(d,i)]:f;return i.existsOne(u,p)}}return l=>t(l)&&i.existsOne(u,i.getChildren(l))}};function kPe(t,e,r,n,s){var i;let{name:a,data:o}=e;if(Array.isArray(o)){if(!(a in Yk))throw new Error(`Unknown pseudo-class :${a}(${o})`);return Yk[a](t,o,r,n,s)}let c=(i=r.pseudos)===null||i===void 0?void 0:i[a],u=typeof c=="string"?c:zk[a];if(typeof u=="string"){if(o!=null)throw new Error(`Pseudo ${a} doesn't have any arguments`);let l=(0,PPe.parse)(u);return Yk.is(t,l,r,n,s)}if(typeof c=="function")return GH(c,a,o,1),l=>c(l,o)&&t(l);if(a in Nx)return Nx[a](t,o,r,n);if(a in ov){let l=ov[a];return GH(l,a,o,2),d=>l(d,r,o)&&t(d)}throw new Error(`Unknown pseudo-class :${a}`)}var hc=Re(wx(),1);function XH(t,e){let r=e.getParent(t);return r&&e.isTag(r)?r:null}function DPe(t,e,r,n,s){let{adapter:i,equals:a}=r;switch(e.type){case hc.SelectorType.PseudoElement:throw new Error("Pseudo-elements are not supported by css-select");case hc.SelectorType.ColumnCombinator:throw new Error("Column combinators are not yet supported by css-select");case hc.SelectorType.Attribute:{if(e.namespace!=null)throw new Error("Namespaced attributes are not yet supported by css-select");return(!r.xmlMode||r.lowerCaseAttributeNames)&&(e.name=e.name.toLowerCase()),wPe[e.action](t,e,r)}case hc.SelectorType.Pseudo:return kPe(t,e,r,n,s);case hc.SelectorType.Tag:{if(e.namespace!=null)throw new Error("Namespaced tag names are not yet supported by css-select");let{name:o}=e;return(!r.xmlMode||r.lowerCaseTags)&&(o=o.toLowerCase()),function(u){return i.getName(u)===o&&t(u)}}case hc.SelectorType.Descendant:{if(r.cacheResults===!1||typeof WeakSet>"u")return function(u){let l=u;for(;l=XH(l,i);)if(t(l))return!0;return!1};let o=new WeakSet;return function(u){let l=u;for(;l=XH(l,i);)if(!o.has(l)){if(i.isTag(l)&&t(l))return!0;o.add(l)}return!1}}case"_flexibleDescendant":return function(c){let u=c;do if(t(u))return!0;while(u=XH(u,i));return!1};case hc.SelectorType.Parent:return function(c){return i.getChildren(c).some(u=>i.isTag(u)&&t(u))};case hc.SelectorType.Child:return function(c){let u=i.getParent(c);return u!=null&&i.isTag(u)&&t(u)};case hc.SelectorType.Sibling:return function(c){let u=i.getSiblings(c);for(let l=0;le.some(LPe)))}var nKt={type:iu.SelectorType.Descendant},sKt={type:"_flexibleDescendant"},iKt={type:iu.SelectorType.Pseudo,name:"scope",data:null};function aKt(t,{adapter:e},r){let n=!!r?.every(s=>{let i=e.isTag(s)&&e.getParent(s);return s===zH||i&&e.isTag(i)});for(let s of t){if(!(s.length>0&&iv(s[0])&&s[0].type!==iu.SelectorType.Descendant))if(n&&!s.some(LPe))s.unshift(nKt);else continue;s.unshift(iKt)}}function Xk(t,e,r){var n;t.forEach(jH),r=(n=e.context)!==null&&n!==void 0?n:r;let s=Array.isArray(r),i=r&&(Array.isArray(r)?r:[r]);if(e.relativeSelector!==!1)aKt(t,e,i);else if(t.some(c=>c.length>0&&iv(c[0])))throw new Error("Relative selectors are not allowed when the `relativeSelector` option is disabled");let a=!1,o=t.map(c=>{if(c.length>=2){let[u,l]=c;u.type!==iu.SelectorType.Pseudo||u.name!=="scope"||(s&&l.type===iu.SelectorType.Descendant?c[1]=sKt:(l.type===iu.SelectorType.Adjacent||l.type===iu.SelectorType.Sibling)&&(a=!0))}return oKt(c,e,i)}).reduce(cKt,qd.default.falseFunc);return o.shouldTestNextSiblings=a,o}function oKt(t,e,r){var n;return t.reduce((s,i)=>s===qd.default.falseFunc?qd.default.falseFunc:DPe(s,i,e,r,Xk),(n=e.rootFunc)!==null&&n!==void 0?n:qd.default.trueFunc)}function cKt(t,e){return e===qd.default.falseFunc||t===qd.default.trueFunc?t:t===qd.default.falseFunc||e===qd.default.trueFunc?e:function(n){return t(n)||e(n)}}var MPe=(t,e)=>t===e,uKt={adapter:t0,equals:MPe};function WPe(t){var e,r,n,s;let i=t??uKt;return(e=i.adapter)!==null&&e!==void 0||(i.adapter=t0),(r=i.equals)!==null&&r!==void 0||(i.equals=(s=(n=i.adapter)===null||n===void 0?void 0:n.equals)!==null&&s!==void 0?s:MPe),i}function eQ(t){return function(r,n,s){let i=WPe(n);return t(r,i,s)}}var pFr=eQ(BPe),mFr=eQ(Jk),Zk=eQ(Xk);function $Pe(t){return function(r,n,s){let i=WPe(s);typeof r!="function"&&(r=Jk(r,i,n));let a=eD(n,i.adapter,r.shouldTestNextSiblings);return t(r,a,i)}}function eD(t,e,r=!1){return r&&(t=lKt(t,e)),Array.isArray(t)?e.removeSubsets(t):e.getChildren(t)}function lKt(t,e){let r=Array.isArray(t)?t.slice(0):[t],n=r.length;for(let s=0;st===ZH.default.falseFunc||!e||e.length===0?[]:r.adapter.findAll(t,e)),gFr=$Pe((t,e,r)=>t===ZH.default.falseFunc||!e||e.length===0?null:r.adapter.findOne(t,e));var rD=Re(n0(),1);var dKt=new Set(["first","last","eq","gt","nth","lt","even","odd"]);function Ox(t){return t.type!=="pseudo"?!1:dKt.has(t.name)?!0:t.name==="not"&&Array.isArray(t.data)?t.data.some(e=>e.some(Ox)):!1}function FPe(t,e,r){let n=e!=null?parseInt(e,10):NaN;switch(t){case"first":return 1;case"nth":case"eq":return isFinite(n)?n>=0?n+1:1/0:0;case"lt":return isFinite(n)?n>=0?Math.min(n,r):1/0:0;case"gt":return isFinite(n)?1/0:0;case"odd":return 2*r;case"even":return 2*r-1;case"last":case"not":return 1/0}}function UPe(t){for(;t.parent;)t=t.parent;return t}function tD(t){let e=[],r=[];for(let n of t)n.some(Ox)?e.push(n):r.push(n);return[r,e]}var fKt={type:Ja.SelectorType.Universal,namespace:null},pKt={type:Ja.SelectorType.Pseudo,name:"scope",data:null};function nQ(t,e,r={}){return sQ([t],e,r)}function sQ(t,e,r={}){if(typeof e=="function")return t.some(e);let[n,s]=tD((0,Ja.parse)(e));return n.length>0&&t.some(Zk(n,r))||s.some(i=>jPe(i,t,r).length>0)}function mKt(t,e,r,n){let s=typeof r=="string"?parseInt(r,10):NaN;switch(t){case"first":case"lt":return e;case"last":return e.length>0?[e[e.length-1]]:e;case"nth":case"eq":return isFinite(s)&&Math.abs(s)a%2===0);case"odd":return e.filter((i,a)=>a%2===1);case"not":{let i=new Set(qPe(r,e,n));return e.filter(a=>!i.has(a))}}}function iQ(t,e,r={}){return qPe((0,Ja.parse)(t),e,r)}function qPe(t,e,r){if(e.length===0)return[];let[n,s]=tD(t),i;if(n.length){let a=rQ(e,n,r);if(s.length===0)return a;a.length&&(i=new Set(a))}for(let a=0;ast(l)&&!i.has(l)):e).length===0)break;let u=jPe(o,e,r);if(u.length)if(i)u.forEach(l=>i.add(l));else{if(a===s.length-1)return u;i=new Set(u)}}return typeof i<"u"?i.size===e.length?e:e.filter(a=>i.has(a)):[]}function jPe(t,e,r){var n;if(t.some(Ja.isTraversal)){let s=(n=r.root)!==null&&n!==void 0?n:UPe(e[0]),i={...r,context:e,relativeSelector:!1};return t.push(pKt),nD(s,t,i,!0,e.length)}return nD(e,t,r,!1,e.length)}function HPe(t,e,r={},n=1/0){if(typeof t=="function")return QPe(e,t);let[s,i]=tD((0,Ja.parse)(t)),a=i.map(o=>nD(e,o,r,!0,n));return s.length&&a.push(tQ(e,s,r,n)),a.length===0?[]:a.length===1?a[0]:Zp(a.reduce((o,c)=>[...o,...c]))}function nD(t,e,r,n,s){let i=e.findIndex(Ox),a=e.slice(0,i),o=e[i],c=e.length-1===i?s:1/0,u=FPe(o.name,o.data,c);if(u===0)return[];let d=(a.length===0&&!Array.isArray(t)?Ex(t).filter(st):a.length===0?(Array.isArray(t)?t:[t]).filter(st):n||a.some(Ja.isTraversal)?tQ(t,[a],r,u):rQ(t,[a],r)).slice(0,u),f=mKt(o.name,d,o.data,r);if(f.length===0||e.length===i+1)return f;let p=e.slice(i+1),m=p.some(Ja.isTraversal);if(m){if((0,Ja.isTraversal)(p[0])){let{type:h}=p[0];(h===Ja.SelectorType.Sibling||h===Ja.SelectorType.Adjacent)&&(f=eD(f,t0,!0)),p.unshift(fKt)}r={...r,relativeSelector:!1,rootFunc:h=>f.includes(h)}}else r.rootFunc&&r.rootFunc!==rD.trueFunc&&(r={...r,rootFunc:rD.trueFunc});return p.some(Ox)?nD(f,p,r,!1,s):m?tQ(f,[p],r,s):rQ(f,[p],r)}function tQ(t,e,r,n){let s=Zk(e,r,t);return QPe(t,s,n)}function QPe(t,e,r=1/0){let n=eD(t,t0,e.shouldTestNextSiblings);return $k(s=>st(s)&&e(s),n,!0,r)}function rQ(t,e,r){let n=(Array.isArray(t)?t:[t]).filter(st);if(n.length===0)return n;let s=Zk(e,r);return s===rD.trueFunc?n:n.filter(s)}var gKt=/^\s*[~+]/;function AKt(t){var e;if(!t)return this._make([]);let r=this.toArray();if(typeof t!="string"){let i=So(t)?t.toArray():[t];return this._make(i.filter(a=>r.some(o=>MH(o,a))))}let n=gKt.test(t)?r:this.children().toArray(),s={context:r,root:(e=this._root)===null||e===void 0?void 0:e[0],xmlMode:this.options.xmlMode,lowerCaseTags:this.options.lowerCaseTags,lowerCaseAttributeNames:this.options.lowerCaseAttributeNames,pseudos:this.options.pseudos,quirksMode:this.options.quirksMode};return this._make(HPe(t,n,s))}function aQ(t){return function(e,...r){return function(n){var s;let i=t(e,this);return n&&(i=uQ(i,n,this.options.xmlMode,(s=this._root)===null||s===void 0?void 0:s[0])),this._make(this.length>1&&i.length>1?r.reduce((a,o)=>o(a),i):i)}}}var cv=aQ((t,e)=>{let r=[];for(let n=0;n{let r=[];for(let n=0;n{let a=[];return mn(i,o=>{for(let c;(c=s(o))&&!r?.(c,a.length);o=c)a.push(c)}),a})(t,...e);return function(s,i){r=typeof s=="string"?o=>nQ(o,s,this.options):s?uv(s):null;let a=n.call(this,i);return r=null,a}}function Px(t){return Array.from(new Set(t))}var yKt=oQ(({parent:t})=>t&&!su(t)?t:null,Px),xKt=cv(t=>{let e=[];for(;t.parent&&!su(t.parent);)e.push(t.parent),t=t.parent;return e},Zp,t=>t.reverse()),bKt=cQ(({parent:t})=>t&&!su(t)?t:null,Zp,t=>t.reverse());function EKt(t){var e;let r=[];if(!t)return this._make(r);let n={xmlMode:this.options.xmlMode,root:(e=this._root)===null||e===void 0?void 0:e[0]},s=typeof t=="string"?i=>nQ(i,t,n):uv(t);return mn(this,i=>{for(;i&&st(i);){if(s(i,0)){r.includes(i)||r.push(i);break}i=i.parent}}),this._make(r)}var _Kt=oQ(t=>Mk(t)),SKt=cv(t=>{let e=[];for(;t.next;)t=t.next,st(t)&&e.push(t);return e},Px),vKt=cQ(t=>Mk(t),Px),IKt=oQ(t=>Wk(t)),CKt=cv(t=>{let e=[];for(;t.prev;)t=t.prev,st(t)&&e.push(t);return e},Px),TKt=cQ(t=>Wk(t),Px),wKt=cv(t=>PH(t).filter(e=>st(e)&&e!==t),Zp),RKt=cv(t=>Ex(t).filter(st),Px);function NKt(){let t=this.toArray().reduce((e,r)=>rn(r)?e.concat(r.children):e,[]);return this._make(t)}function OKt(t){let e=0,r=this.length;for(;et.call(e,r,e):So(t)?e=>Array.prototype.includes.call(t,e):function(e){return t===e}}function kKt(t){var e;return this._make(uQ(this.toArray(),t,this.options.xmlMode,(e=this._root)===null||e===void 0?void 0:e[0]))}function uQ(t,e,r,n){return typeof e=="string"?iQ(e,t,{xmlMode:r,root:n}):t.filter(uv(e))}function DKt(t){let e=this.toArray();return typeof t=="string"?sQ(e.filter(st),t,this.options):t?e.some(uv(t)):!1}function BKt(t){let e=this.toArray();if(typeof t=="string"){let r=new Set(iQ(t,e,this.options));e=e.filter(n=>!r.has(n))}else{let r=uv(t);e=e.filter((n,s)=>!r(n,s))}return this._make(e)}function LKt(t){return this.filter(typeof t=="string"?`:has(${t})`:(e,r)=>this._make(r).find(t).length>0)}function MKt(){return this.length>1?this._make(this[0]):this}function WKt(){return this.length>0?this._make(this[this.length-1]):this}function $Kt(t){var e;return t=+t,t===0&&this.length<=1?this:(t<0&&(t=this.length+t),this._make((e=this[t])!==null&&e!==void 0?e:[]))}function FKt(t){return t==null?this.toArray():this[t<0?this.length+t:t]}function UKt(){return Array.prototype.slice.call(this)}function qKt(t){let e,r;return t==null?(e=this.parent().children(),r=this[0]):typeof t=="string"?(e=this._make(t),r=this[0]):(e=this,r=So(t)?t[0]:t),Array.prototype.indexOf.call(e,r)}function jKt(t,e){return this._make(Array.prototype.slice.call(this,t,e))}function HKt(){var t;return(t=this.prevObject)!==null&&t!==void 0?t:this._make([])}function QKt(t,e){let r=this._make(t,e),n=Zp([...this.get(),...r.get()]);return this._make(n)}function GKt(t){return this.prevObject?this.add(t?this.prevObject.filter(t):this.prevObject):this}var dQ={};is(dQ,{_makeDomArray:()=>KKt,after:()=>rVt,append:()=>YKt,appendTo:()=>VKt,before:()=>sVt,clone:()=>fVt,empty:()=>cVt,html:()=>uVt,insertAfter:()=>nVt,insertBefore:()=>iVt,prepend:()=>JKt,prependTo:()=>zKt,remove:()=>aVt,replaceWith:()=>oVt,text:()=>dVt,toString:()=>lVt,unwrap:()=>eVt,wrap:()=>XKt,wrapAll:()=>tVt,wrapInner:()=>ZKt});function GPe(t){return function(r,n,s,i){if(typeof Buffer<"u"&&Buffer.isBuffer(r)&&(r=r.toString()),typeof r=="string")return t(r,n,s,i);let a=r;if(!Array.isArray(a)&&su(a))return a;let o=new _o([]);return s0(a,o),o}}function s0(t,e){let r=Array.isArray(t)?t:[t];e?e.children=r:e=null;for(let n=0;nr.concat(this._makeDomArray(n,e)),[]):typeof t=="string"?this._parse(t,this.options,!1,null).children:e?jk([t]):[t]}function KPe(t){return function(...e){let r=this.length-1;return mn(this,(n,s)=>{if(!rn(n))return;let i=typeof e[0]=="function"?e[0].call(n,s,this._render(n.children)):e,a=this._makeDomArray(i,s=t.length?null:t[e+r];for(let l=0;l-1&&(f.children.splice(m,1),s===f&&e>m&&o[0]--)}d.parent=s,d.prev&&(d.prev.next=(i=d.next)!==null&&i!==void 0?i:null),d.next&&(d.next.prev=(a=d.prev)!==null&&a!==void 0?a:null),d.prev=l===0?c:n[l-1],d.next=l===n.length-1?u:n[l+1]}return c&&(c.next=n[0]),u&&(u.prev=n[n.length-1]),t.splice(...o)}function VKt(t){return(So(t)?t:this._make(t)).append(this),this}function zKt(t){return(So(t)?t:this._make(t)).prepend(this),this}var YKt=KPe((t,e,r)=>{i0(e,e.length,0,t,r)}),JKt=KPe((t,e,r)=>{i0(e,0,0,t,r)});function VPe(t){return function(e){let r=this.length-1,n=this.parents().last();for(let s=0;s{let{parent:n}=t;if(!n)return;let s=n.children,i=s.indexOf(t);s0([t],e),i0(s,i,0,r,n)}),ZKt=VPe((t,e,r)=>{rn(t)&&(s0(t.children,e),s0(r,t))});function eVt(t){return this.parent(t).not("body").each((e,r)=>{this._make(r).replaceWith(r.children)}),this}function tVt(t){let e=this[0];if(e){let r=this._make(typeof t=="function"?t.call(e,0,e):t).insertBefore(e),n;for(let i=0;i{let{parent:s}=r;if(!rn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,c=this._makeDomArray(o,n{let n=this.clone().toArray(),{parent:s}=r;if(!s)return;let i=s.children,a=i.indexOf(r);a<0||(i0(i,a+1,0,n,s),e.push(...n))}),this._make(e)}function sVt(...t){let e=this.length-1;return mn(this,(r,n)=>{let{parent:s}=r;if(!rn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,c=this._makeDomArray(o,n{let s=this.clone().toArray(),{parent:i}=n;if(!i)return;let a=i.children,o=a.indexOf(n);o<0||(i0(a,o,0,s,i),r.push(...s))}),this._make(r)}function aVt(t){let e=t?this.filter(t):this;return mn(e,r=>{$d(r),r.prev=r.next=r.parent=null}),this}function oVt(t){return mn(this,(e,r)=>{let{parent:n}=e;if(!n)return;let s=n.children,i=typeof t=="function"?t.call(e,r,e):t,a=this._makeDomArray(i);s0(a,null);let o=s.indexOf(e);i0(s,o,1,a,n),a.includes(e)||(e.parent=e.prev=e.next=null)})}function cVt(){return mn(this,t=>{rn(t)&&(t.children.forEach(e=>{e.next=e.prev=e.parent=null}),t.children.length=0)})}function uVt(t){if(t===void 0){let e=this[0];return!e||!rn(e)?null:this._render(e.children)}return mn(this,e=>{if(!rn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=So(t)?t.toArray():this._parse(`${t}`,this.options,!1,e).children;s0(r,e)})}function lVt(){return this._render(this)}function dVt(t){return t===void 0?Fd(this):typeof t=="function"?mn(this,(e,r)=>this._make(e).text(t.call(e,r,Fd([e])))):mn(this,e=>{if(!rn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=new ll(`${t}`);s0(r,e)})}function fVt(){return this._make(jk(this.get()))}var fQ={};is(fQ,{css:()=>pVt});function pVt(t,e){if(t!=null&&e!=null||typeof t=="object"&&!Array.isArray(t))return mn(this,(r,n)=>{st(r)&&zPe(r,t,e,n)});if(this.length!==0)return YPe(this[0],t)}function zPe(t,e,r,n){if(typeof e=="string"){let s=YPe(t),i=typeof r=="function"?r.call(t,n,s[e]):r;i===""?delete s[e]:i!=null&&(s[e]=i),t.attribs.style=mVt(s)}else typeof e=="object"&&Object.keys(e).forEach((s,i)=>{zPe(t,s,e[s],i)})}function YPe(t,e){if(!t||!st(t))return;let r=hVt(t.attribs.style);if(typeof e=="string")return r[e];if(Array.isArray(e)){let n={};return e.forEach(s=>{r[s]!=null&&(n[s]=r[s])}),n}return r}function mVt(t){return Object.keys(t).reduce((e,r)=>`${e}${e?" ":""}${r}: ${t[r]};`,"")}function hVt(t){if(t=(t||"").trim(),!t)return{};let e={},r;for(let n of t.split(";")){let s=n.indexOf(":");if(s<1||s===n.length-1){let i=n.trimEnd();i.length>0&&r!==void 0&&(e[r]+=`;${i}`)}else r=n.slice(0,s).trim(),e[r]=n.slice(s+1).trim()}return e}var pQ={};is(pQ,{serialize:()=>AVt,serializeArray:()=>yVt});var JPe="input,select,textarea,keygen",gVt=/%20/g,XPe=/\r?\n/g;function AVt(){return this.serializeArray().map(r=>`${encodeURIComponent(r.name)}=${encodeURIComponent(r.value)}`).join("&").replace(gVt,"+")}function yVt(){return this.map((t,e)=>{let r=this._make(e);return st(e)&&e.name==="form"?r.find(JPe).toArray():r.filter(JPe).toArray()}).filter('[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map((t,e)=>{var r;let n=this._make(e),s=n.attr("name"),i=(r=n.val())!==null&&r!==void 0?r:"";return Array.isArray(i)?i.map(a=>({name:s,value:a.replace(XPe,`\r -`)})):{name:s,value:i.replace(XPe,`\r -`)}}).toArray()}var a0=class{constructor(e,r,n){if(this.length=0,this.options=n,this._root=r,e){for(let s=0;s=55296&&t<=57343}function eke(t){return t>=56320&&t<=57343}function tke(t,e){return(t-55296)*1024+9216+e}function iD(t){return t!==32&&t!==10&&t!==13&&t!==9&&t!==12&&t>=1&&t<=31||t>=127&&t<=159}function aD(t){return t>=64976&&t<=65007||bVt.has(t)}var me;(function(t){t.controlCharacterInInputStream="control-character-in-input-stream",t.noncharacterInInputStream="noncharacter-in-input-stream",t.surrogateInInputStream="surrogate-in-input-stream",t.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",t.endTagWithAttributes="end-tag-with-attributes",t.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",t.unexpectedSolidusInTag="unexpected-solidus-in-tag",t.unexpectedNullCharacter="unexpected-null-character",t.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",t.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",t.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",t.missingEndTagName="missing-end-tag-name",t.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",t.unknownNamedCharacterReference="unknown-named-character-reference",t.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",t.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",t.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",t.eofBeforeTagName="eof-before-tag-name",t.eofInTag="eof-in-tag",t.missingAttributeValue="missing-attribute-value",t.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",t.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",t.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",t.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",t.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",t.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",t.missingDoctypePublicIdentifier="missing-doctype-public-identifier",t.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",t.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",t.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",t.cdataInHtmlContent="cdata-in-html-content",t.incorrectlyOpenedComment="incorrectly-opened-comment",t.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",t.eofInDoctype="eof-in-doctype",t.nestedComment="nested-comment",t.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",t.eofInComment="eof-in-comment",t.incorrectlyClosedComment="incorrectly-closed-comment",t.eofInCdata="eof-in-cdata",t.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",t.nullCharacterReference="null-character-reference",t.surrogateCharacterReference="surrogate-character-reference",t.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",t.controlCharacterReference="control-character-reference",t.noncharacterCharacterReference="noncharacter-character-reference",t.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",t.missingDoctypeName="missing-doctype-name",t.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",t.duplicateAttribute="duplicate-attribute",t.nonConformingDoctype="non-conforming-doctype",t.missingDoctype="missing-doctype",t.misplacedDoctype="misplaced-doctype",t.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",t.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",t.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",t.openElementsLeftAfterEof="open-elements-left-after-eof",t.abandonedHeadElementChild="abandoned-head-element-child",t.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",t.nestedNoscriptInHead="nested-noscript-in-head",t.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"})(me||(me={}));var _Vt=65536,oD=class{constructor(e){this.handler=e,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=_Vt,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+ +(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(e,r){let{line:n,col:s,offset:i}=this,a=s+r,o=i+r;return{code:e,startLine:n,endLine:n,startCol:a,endCol:a,startOffset:o,endOffset:o}}_err(e){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(e,0)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(e){if(this.pos!==this.html.length-1){let r=this.html.charCodeAt(this.pos+1);if(eke(r))return this.pos++,this._addGap(),tke(e,r)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,Q.EOF;return this._err(me.surrogateInInputStream),e}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(e,r){this.html.length>0?this.html+=e:this.html=e,this.endOfChunkHit=!1,this.lastChunkWritten=r}insertHtmlAtCurrentPos(e){this.html=this.html.substring(0,this.pos+1)+e+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(e,r){if(this.pos+e.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(r)return this.html.startsWith(e,this.pos);for(let n=0;n=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Q.EOF;let n=this.html.charCodeAt(r);return n===Q.CARRIAGE_RETURN?Q.LINE_FEED:n}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Q.EOF;let e=this.html.charCodeAt(this.pos);return e===Q.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,Q.LINE_FEED):e===Q.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,sD(e)&&(e=this._processSurrogate(e)),this.handler.onParseError===null||e>31&&e<127||e===Q.LINE_FEED||e===Q.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e)}_checkForProblematicCharacters(e){iD(e)?this._err(me.controlCharacterInInputStream):aD(e)&&this._err(me.noncharacterInInputStream)}retreat(e){for(this.pos-=e;this.pos=0;r--)if(t.attrs[r].name===e)return t.attrs[r].value;return null}var uD=new Uint16Array('\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(t=>t.charCodeAt(0)));var mQ,vVt=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),rke=(mQ=String.fromCodePoint)!==null&&mQ!==void 0?mQ:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function hQ(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=vVt.get(t))!==null&&e!==void 0?e:t}var ei;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(ei||(ei={}));var CVt=32,o0;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(o0||(o0={}));function gQ(t){return t>=ei.ZERO&&t<=ei.NINE}function TVt(t){return t>=ei.UPPER_A&&t<=ei.UPPER_F||t>=ei.LOWER_A&&t<=ei.LOWER_F}function wVt(t){return t>=ei.UPPER_A&&t<=ei.UPPER_Z||t>=ei.LOWER_A&&t<=ei.LOWER_Z||gQ(t)}function RVt(t){return t===ei.EQUALS||wVt(t)}var Zs;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(Zs||(Zs={}));var fl;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(fl||(fl={}));var lD=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=Zs.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=fl.Strict}startEntity(e){this.decodeMode=e,this.state=Zs.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case Zs.EntityStart:return e.charCodeAt(r)===ei.NUM?(this.state=Zs.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=Zs.NamedEntity,this.stateNamedEntity(e,r));case Zs.NumericStart:return this.stateNumericStart(e,r);case Zs.NumericDecimal:return this.stateNumericDecimal(e,r);case Zs.NumericHex:return this.stateNumericHex(e,r);case Zs.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|CVt)===ei.LOWER_X?(this.state=Zs.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=Zs.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+Number.parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===ei.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==fl.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&o0.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~o0.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case Zs.NamedEntity:return this.result!==0&&(this.decodeMode!==fl.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Zs.NumericDecimal:return this.emitNumericEntity(0,2);case Zs.NumericHex:return this.emitNumericEntity(0,3);case Zs.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Zs.EntityStart:return 0}}};function NVt(t,e,r,n){let s=(e&o0.BRANCH_LENGTH)>>7,i=e&o0.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(un)o=c-1;else return t[c+s]}return-1}var dD={};is(dD,{ATTRS:()=>pl,DOCUMENT_MODE:()=>Ui,NS:()=>Ee,NUMBERED_HEADERS:()=>kx,SPECIAL_ELEMENTS:()=>AQ,TAG_ID:()=>C,TAG_NAMES:()=>de,getTagID:()=>c0,hasUnescapedText:()=>yQ});var Ee;(function(t){t.HTML="http://www.w3.org/1999/xhtml",t.MATHML="http://www.w3.org/1998/Math/MathML",t.SVG="http://www.w3.org/2000/svg",t.XLINK="http://www.w3.org/1999/xlink",t.XML="http://www.w3.org/XML/1998/namespace",t.XMLNS="http://www.w3.org/2000/xmlns/"})(Ee||(Ee={}));var pl;(function(t){t.TYPE="type",t.ACTION="action",t.ENCODING="encoding",t.PROMPT="prompt",t.NAME="name",t.COLOR="color",t.FACE="face",t.SIZE="size"})(pl||(pl={}));var Ui;(function(t){t.NO_QUIRKS="no-quirks",t.QUIRKS="quirks",t.LIMITED_QUIRKS="limited-quirks"})(Ui||(Ui={}));var de;(function(t){t.A="a",t.ADDRESS="address",t.ANNOTATION_XML="annotation-xml",t.APPLET="applet",t.AREA="area",t.ARTICLE="article",t.ASIDE="aside",t.B="b",t.BASE="base",t.BASEFONT="basefont",t.BGSOUND="bgsound",t.BIG="big",t.BLOCKQUOTE="blockquote",t.BODY="body",t.BR="br",t.BUTTON="button",t.CAPTION="caption",t.CENTER="center",t.CODE="code",t.COL="col",t.COLGROUP="colgroup",t.DD="dd",t.DESC="desc",t.DETAILS="details",t.DIALOG="dialog",t.DIR="dir",t.DIV="div",t.DL="dl",t.DT="dt",t.EM="em",t.EMBED="embed",t.FIELDSET="fieldset",t.FIGCAPTION="figcaption",t.FIGURE="figure",t.FONT="font",t.FOOTER="footer",t.FOREIGN_OBJECT="foreignObject",t.FORM="form",t.FRAME="frame",t.FRAMESET="frameset",t.H1="h1",t.H2="h2",t.H3="h3",t.H4="h4",t.H5="h5",t.H6="h6",t.HEAD="head",t.HEADER="header",t.HGROUP="hgroup",t.HR="hr",t.HTML="html",t.I="i",t.IMG="img",t.IMAGE="image",t.INPUT="input",t.IFRAME="iframe",t.KEYGEN="keygen",t.LABEL="label",t.LI="li",t.LINK="link",t.LISTING="listing",t.MAIN="main",t.MALIGNMARK="malignmark",t.MARQUEE="marquee",t.MATH="math",t.MENU="menu",t.META="meta",t.MGLYPH="mglyph",t.MI="mi",t.MO="mo",t.MN="mn",t.MS="ms",t.MTEXT="mtext",t.NAV="nav",t.NOBR="nobr",t.NOFRAMES="noframes",t.NOEMBED="noembed",t.NOSCRIPT="noscript",t.OBJECT="object",t.OL="ol",t.OPTGROUP="optgroup",t.OPTION="option",t.P="p",t.PARAM="param",t.PLAINTEXT="plaintext",t.PRE="pre",t.RB="rb",t.RP="rp",t.RT="rt",t.RTC="rtc",t.RUBY="ruby",t.S="s",t.SCRIPT="script",t.SEARCH="search",t.SECTION="section",t.SELECT="select",t.SOURCE="source",t.SMALL="small",t.SPAN="span",t.STRIKE="strike",t.STRONG="strong",t.STYLE="style",t.SUB="sub",t.SUMMARY="summary",t.SUP="sup",t.TABLE="table",t.TBODY="tbody",t.TEMPLATE="template",t.TEXTAREA="textarea",t.TFOOT="tfoot",t.TD="td",t.TH="th",t.THEAD="thead",t.TITLE="title",t.TR="tr",t.TRACK="track",t.TT="tt",t.U="u",t.UL="ul",t.SVG="svg",t.VAR="var",t.WBR="wbr",t.XMP="xmp"})(de||(de={}));var C;(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A=1]="A",t[t.ADDRESS=2]="ADDRESS",t[t.ANNOTATION_XML=3]="ANNOTATION_XML",t[t.APPLET=4]="APPLET",t[t.AREA=5]="AREA",t[t.ARTICLE=6]="ARTICLE",t[t.ASIDE=7]="ASIDE",t[t.B=8]="B",t[t.BASE=9]="BASE",t[t.BASEFONT=10]="BASEFONT",t[t.BGSOUND=11]="BGSOUND",t[t.BIG=12]="BIG",t[t.BLOCKQUOTE=13]="BLOCKQUOTE",t[t.BODY=14]="BODY",t[t.BR=15]="BR",t[t.BUTTON=16]="BUTTON",t[t.CAPTION=17]="CAPTION",t[t.CENTER=18]="CENTER",t[t.CODE=19]="CODE",t[t.COL=20]="COL",t[t.COLGROUP=21]="COLGROUP",t[t.DD=22]="DD",t[t.DESC=23]="DESC",t[t.DETAILS=24]="DETAILS",t[t.DIALOG=25]="DIALOG",t[t.DIR=26]="DIR",t[t.DIV=27]="DIV",t[t.DL=28]="DL",t[t.DT=29]="DT",t[t.EM=30]="EM",t[t.EMBED=31]="EMBED",t[t.FIELDSET=32]="FIELDSET",t[t.FIGCAPTION=33]="FIGCAPTION",t[t.FIGURE=34]="FIGURE",t[t.FONT=35]="FONT",t[t.FOOTER=36]="FOOTER",t[t.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",t[t.FORM=38]="FORM",t[t.FRAME=39]="FRAME",t[t.FRAMESET=40]="FRAMESET",t[t.H1=41]="H1",t[t.H2=42]="H2",t[t.H3=43]="H3",t[t.H4=44]="H4",t[t.H5=45]="H5",t[t.H6=46]="H6",t[t.HEAD=47]="HEAD",t[t.HEADER=48]="HEADER",t[t.HGROUP=49]="HGROUP",t[t.HR=50]="HR",t[t.HTML=51]="HTML",t[t.I=52]="I",t[t.IMG=53]="IMG",t[t.IMAGE=54]="IMAGE",t[t.INPUT=55]="INPUT",t[t.IFRAME=56]="IFRAME",t[t.KEYGEN=57]="KEYGEN",t[t.LABEL=58]="LABEL",t[t.LI=59]="LI",t[t.LINK=60]="LINK",t[t.LISTING=61]="LISTING",t[t.MAIN=62]="MAIN",t[t.MALIGNMARK=63]="MALIGNMARK",t[t.MARQUEE=64]="MARQUEE",t[t.MATH=65]="MATH",t[t.MENU=66]="MENU",t[t.META=67]="META",t[t.MGLYPH=68]="MGLYPH",t[t.MI=69]="MI",t[t.MO=70]="MO",t[t.MN=71]="MN",t[t.MS=72]="MS",t[t.MTEXT=73]="MTEXT",t[t.NAV=74]="NAV",t[t.NOBR=75]="NOBR",t[t.NOFRAMES=76]="NOFRAMES",t[t.NOEMBED=77]="NOEMBED",t[t.NOSCRIPT=78]="NOSCRIPT",t[t.OBJECT=79]="OBJECT",t[t.OL=80]="OL",t[t.OPTGROUP=81]="OPTGROUP",t[t.OPTION=82]="OPTION",t[t.P=83]="P",t[t.PARAM=84]="PARAM",t[t.PLAINTEXT=85]="PLAINTEXT",t[t.PRE=86]="PRE",t[t.RB=87]="RB",t[t.RP=88]="RP",t[t.RT=89]="RT",t[t.RTC=90]="RTC",t[t.RUBY=91]="RUBY",t[t.S=92]="S",t[t.SCRIPT=93]="SCRIPT",t[t.SEARCH=94]="SEARCH",t[t.SECTION=95]="SECTION",t[t.SELECT=96]="SELECT",t[t.SOURCE=97]="SOURCE",t[t.SMALL=98]="SMALL",t[t.SPAN=99]="SPAN",t[t.STRIKE=100]="STRIKE",t[t.STRONG=101]="STRONG",t[t.STYLE=102]="STYLE",t[t.SUB=103]="SUB",t[t.SUMMARY=104]="SUMMARY",t[t.SUP=105]="SUP",t[t.TABLE=106]="TABLE",t[t.TBODY=107]="TBODY",t[t.TEMPLATE=108]="TEMPLATE",t[t.TEXTAREA=109]="TEXTAREA",t[t.TFOOT=110]="TFOOT",t[t.TD=111]="TD",t[t.TH=112]="TH",t[t.THEAD=113]="THEAD",t[t.TITLE=114]="TITLE",t[t.TR=115]="TR",t[t.TRACK=116]="TRACK",t[t.TT=117]="TT",t[t.U=118]="U",t[t.UL=119]="UL",t[t.SVG=120]="SVG",t[t.VAR=121]="VAR",t[t.WBR=122]="WBR",t[t.XMP=123]="XMP"})(C||(C={}));var OVt=new Map([[de.A,C.A],[de.ADDRESS,C.ADDRESS],[de.ANNOTATION_XML,C.ANNOTATION_XML],[de.APPLET,C.APPLET],[de.AREA,C.AREA],[de.ARTICLE,C.ARTICLE],[de.ASIDE,C.ASIDE],[de.B,C.B],[de.BASE,C.BASE],[de.BASEFONT,C.BASEFONT],[de.BGSOUND,C.BGSOUND],[de.BIG,C.BIG],[de.BLOCKQUOTE,C.BLOCKQUOTE],[de.BODY,C.BODY],[de.BR,C.BR],[de.BUTTON,C.BUTTON],[de.CAPTION,C.CAPTION],[de.CENTER,C.CENTER],[de.CODE,C.CODE],[de.COL,C.COL],[de.COLGROUP,C.COLGROUP],[de.DD,C.DD],[de.DESC,C.DESC],[de.DETAILS,C.DETAILS],[de.DIALOG,C.DIALOG],[de.DIR,C.DIR],[de.DIV,C.DIV],[de.DL,C.DL],[de.DT,C.DT],[de.EM,C.EM],[de.EMBED,C.EMBED],[de.FIELDSET,C.FIELDSET],[de.FIGCAPTION,C.FIGCAPTION],[de.FIGURE,C.FIGURE],[de.FONT,C.FONT],[de.FOOTER,C.FOOTER],[de.FOREIGN_OBJECT,C.FOREIGN_OBJECT],[de.FORM,C.FORM],[de.FRAME,C.FRAME],[de.FRAMESET,C.FRAMESET],[de.H1,C.H1],[de.H2,C.H2],[de.H3,C.H3],[de.H4,C.H4],[de.H5,C.H5],[de.H6,C.H6],[de.HEAD,C.HEAD],[de.HEADER,C.HEADER],[de.HGROUP,C.HGROUP],[de.HR,C.HR],[de.HTML,C.HTML],[de.I,C.I],[de.IMG,C.IMG],[de.IMAGE,C.IMAGE],[de.INPUT,C.INPUT],[de.IFRAME,C.IFRAME],[de.KEYGEN,C.KEYGEN],[de.LABEL,C.LABEL],[de.LI,C.LI],[de.LINK,C.LINK],[de.LISTING,C.LISTING],[de.MAIN,C.MAIN],[de.MALIGNMARK,C.MALIGNMARK],[de.MARQUEE,C.MARQUEE],[de.MATH,C.MATH],[de.MENU,C.MENU],[de.META,C.META],[de.MGLYPH,C.MGLYPH],[de.MI,C.MI],[de.MO,C.MO],[de.MN,C.MN],[de.MS,C.MS],[de.MTEXT,C.MTEXT],[de.NAV,C.NAV],[de.NOBR,C.NOBR],[de.NOFRAMES,C.NOFRAMES],[de.NOEMBED,C.NOEMBED],[de.NOSCRIPT,C.NOSCRIPT],[de.OBJECT,C.OBJECT],[de.OL,C.OL],[de.OPTGROUP,C.OPTGROUP],[de.OPTION,C.OPTION],[de.P,C.P],[de.PARAM,C.PARAM],[de.PLAINTEXT,C.PLAINTEXT],[de.PRE,C.PRE],[de.RB,C.RB],[de.RP,C.RP],[de.RT,C.RT],[de.RTC,C.RTC],[de.RUBY,C.RUBY],[de.S,C.S],[de.SCRIPT,C.SCRIPT],[de.SEARCH,C.SEARCH],[de.SECTION,C.SECTION],[de.SELECT,C.SELECT],[de.SOURCE,C.SOURCE],[de.SMALL,C.SMALL],[de.SPAN,C.SPAN],[de.STRIKE,C.STRIKE],[de.STRONG,C.STRONG],[de.STYLE,C.STYLE],[de.SUB,C.SUB],[de.SUMMARY,C.SUMMARY],[de.SUP,C.SUP],[de.TABLE,C.TABLE],[de.TBODY,C.TBODY],[de.TEMPLATE,C.TEMPLATE],[de.TEXTAREA,C.TEXTAREA],[de.TFOOT,C.TFOOT],[de.TD,C.TD],[de.TH,C.TH],[de.THEAD,C.THEAD],[de.TITLE,C.TITLE],[de.TR,C.TR],[de.TRACK,C.TRACK],[de.TT,C.TT],[de.U,C.U],[de.UL,C.UL],[de.SVG,C.SVG],[de.VAR,C.VAR],[de.WBR,C.WBR],[de.XMP,C.XMP]]);function c0(t){var e;return(e=OVt.get(t))!==null&&e!==void 0?e:C.UNKNOWN}var Oe=C,AQ={[Ee.HTML]:new Set([Oe.ADDRESS,Oe.APPLET,Oe.AREA,Oe.ARTICLE,Oe.ASIDE,Oe.BASE,Oe.BASEFONT,Oe.BGSOUND,Oe.BLOCKQUOTE,Oe.BODY,Oe.BR,Oe.BUTTON,Oe.CAPTION,Oe.CENTER,Oe.COL,Oe.COLGROUP,Oe.DD,Oe.DETAILS,Oe.DIR,Oe.DIV,Oe.DL,Oe.DT,Oe.EMBED,Oe.FIELDSET,Oe.FIGCAPTION,Oe.FIGURE,Oe.FOOTER,Oe.FORM,Oe.FRAME,Oe.FRAMESET,Oe.H1,Oe.H2,Oe.H3,Oe.H4,Oe.H5,Oe.H6,Oe.HEAD,Oe.HEADER,Oe.HGROUP,Oe.HR,Oe.HTML,Oe.IFRAME,Oe.IMG,Oe.INPUT,Oe.LI,Oe.LINK,Oe.LISTING,Oe.MAIN,Oe.MARQUEE,Oe.MENU,Oe.META,Oe.NAV,Oe.NOEMBED,Oe.NOFRAMES,Oe.NOSCRIPT,Oe.OBJECT,Oe.OL,Oe.P,Oe.PARAM,Oe.PLAINTEXT,Oe.PRE,Oe.SCRIPT,Oe.SECTION,Oe.SELECT,Oe.SOURCE,Oe.STYLE,Oe.SUMMARY,Oe.TABLE,Oe.TBODY,Oe.TD,Oe.TEMPLATE,Oe.TEXTAREA,Oe.TFOOT,Oe.TH,Oe.THEAD,Oe.TITLE,Oe.TR,Oe.TRACK,Oe.UL,Oe.WBR,Oe.XMP]),[Ee.MATHML]:new Set([Oe.MI,Oe.MO,Oe.MN,Oe.MS,Oe.MTEXT,Oe.ANNOTATION_XML]),[Ee.SVG]:new Set([Oe.TITLE,Oe.FOREIGN_OBJECT,Oe.DESC]),[Ee.XLINK]:new Set,[Ee.XML]:new Set,[Ee.XMLNS]:new Set},kx=new Set([Oe.H1,Oe.H2,Oe.H3,Oe.H4,Oe.H5,Oe.H6]),PVt=new Set([de.STYLE,de.SCRIPT,de.XMP,de.IFRAME,de.NOEMBED,de.NOFRAMES,de.PLAINTEXT]);function yQ(t,e){return PVt.has(t)||e&&t===de.NOSCRIPT}var Y;(function(t){t[t.DATA=0]="DATA",t[t.RCDATA=1]="RCDATA",t[t.RAWTEXT=2]="RAWTEXT",t[t.SCRIPT_DATA=3]="SCRIPT_DATA",t[t.PLAINTEXT=4]="PLAINTEXT",t[t.TAG_OPEN=5]="TAG_OPEN",t[t.END_TAG_OPEN=6]="END_TAG_OPEN",t[t.TAG_NAME=7]="TAG_NAME",t[t.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",t[t.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",t[t.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",t[t.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",t[t.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",t[t.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",t[t.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",t[t.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",t[t.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",t[t.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",t[t.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",t[t.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",t[t.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",t[t.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",t[t.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",t[t.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",t[t.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",t[t.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",t[t.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",t[t.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",t[t.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",t[t.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",t[t.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",t[t.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",t[t.BOGUS_COMMENT=40]="BOGUS_COMMENT",t[t.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",t[t.COMMENT_START=42]="COMMENT_START",t[t.COMMENT_START_DASH=43]="COMMENT_START_DASH",t[t.COMMENT=44]="COMMENT",t[t.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",t[t.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",t[t.COMMENT_END_DASH=49]="COMMENT_END_DASH",t[t.COMMENT_END=50]="COMMENT_END",t[t.COMMENT_END_BANG=51]="COMMENT_END_BANG",t[t.DOCTYPE=52]="DOCTYPE",t[t.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",t[t.DOCTYPE_NAME=54]="DOCTYPE_NAME",t[t.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",t[t.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",t[t.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",t[t.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",t[t.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",t[t.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",t[t.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",t[t.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",t[t.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",t[t.CDATA_SECTION=68]="CDATA_SECTION",t[t.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",t[t.CDATA_SECTION_END=70]="CDATA_SECTION_END",t[t.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",t[t.AMBIGUOUS_AMPERSAND=72]="AMBIGUOUS_AMPERSAND"})(Y||(Y={}));var qi={DATA:Y.DATA,RCDATA:Y.RCDATA,RAWTEXT:Y.RAWTEXT,SCRIPT_DATA:Y.SCRIPT_DATA,PLAINTEXT:Y.PLAINTEXT,CDATA_SECTION:Y.CDATA_SECTION};function kVt(t){return t>=Q.DIGIT_0&&t<=Q.DIGIT_9}function lv(t){return t>=Q.LATIN_CAPITAL_A&&t<=Q.LATIN_CAPITAL_Z}function DVt(t){return t>=Q.LATIN_SMALL_A&&t<=Q.LATIN_SMALL_Z}function u0(t){return DVt(t)||lv(t)}function nke(t){return u0(t)||kVt(t)}function fD(t){return t+32}function ike(t){return t===Q.SPACE||t===Q.LINE_FEED||t===Q.TABULATION||t===Q.FORM_FEED}function ske(t){return ike(t)||t===Q.SOLIDUS||t===Q.GREATER_THAN_SIGN}function BVt(t){return t===Q.NULL?me.nullCharacterReference:t>1114111?me.characterReferenceOutsideUnicodeRange:sD(t)?me.surrogateCharacterReference:aD(t)?me.noncharacterCharacterReference:iD(t)||t===Q.CARRIAGE_RETURN?me.controlCharacterReference:null}var dv=class{constructor(e,r){this.options=e,this.handler=r,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=Y.DATA,this.returnState=Y.DATA,this.entityStartPos=0,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new oD(r),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new lD(uD,(n,s)=>{this.preprocessor.pos=this.entityStartPos+s-1,this._flushCodePointConsumedAsCharacterReference(n)},r.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(me.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:n=>{this._err(me.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+n)},validateNumericCharacterReference:n=>{let s=BVt(n);s&&this._err(s,1)}}:void 0)}_err(e,r=0){var n,s;(s=(n=this.handler).onParseError)===null||s===void 0||s.call(n,this.preprocessor.getError(e,r))}getCurrentLocation(e){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-e,startOffset:this.preprocessor.offset-e,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;let e=this._consume();this._ensureHibernation()||this._callState(e)}this.inLoop=!1}}pause(){this.paused=!0}resume(e){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,!this.inLoop&&(this._runParsingLoop(),this.paused||e?.())}write(e,r,n){this.active=!0,this.preprocessor.write(e,r),this._runParsingLoop(),this.paused||n?.()}insertHtmlAtCurrentPos(e){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(e),this._runParsingLoop()}_ensureHibernation(){return this.preprocessor.endOfChunkHit?(this.preprocessor.retreat(this.consumedAfterSnapshot),this.consumedAfterSnapshot=0,this.active=!1,!0):!1}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_advanceBy(e){this.consumedAfterSnapshot+=e;for(let r=0;r0&&this._err(me.endTagWithAttributes),e.selfClosing&&this._err(me.endTagWithTrailingSolidus),this.handler.onEndTag(e)),this.preprocessor.dropParsedChunk()}emitCurrentComment(e){this.prepareToken(e),this.handler.onComment(e),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(e){this.prepareToken(e),this.handler.onDoctype(e),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(e){if(this.currentCharacterToken){switch(e&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=e.startLine,this.currentCharacterToken.location.endCol=e.startCol,this.currentCharacterToken.location.endOffset=e.startOffset),this.currentCharacterToken.type){case xr.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case xr.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case xr.WHITESPACE_CHARACTER:{this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}}this.currentCharacterToken=null}}_emitEOFToken(){let e=this.getCurrentLocation(0);e&&(e.endLine=e.startLine,e.endCol=e.startCol,e.endOffset=e.startOffset),this._emitCurrentCharacterToken(e),this.handler.onEof({type:xr.EOF,location:e}),this.active=!1}_appendCharToCurrentCharacterToken(e,r){if(this.currentCharacterToken)if(this.currentCharacterToken.type===e){this.currentCharacterToken.chars+=r;return}else this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk();this._createCharacterToken(e,r)}_emitCodePoint(e){let r=ike(e)?xr.WHITESPACE_CHARACTER:e===Q.NULL?xr.NULL_CHARACTER:xr.CHARACTER;this._appendCharToCurrentCharacterToken(r,String.fromCodePoint(e))}_emitChars(e){this._appendCharToCurrentCharacterToken(xr.CHARACTER,e)}_startCharacterReference(){this.returnState=this.state,this.state=Y.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?fl.Attribute:fl.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(e){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(e):this._emitCodePoint(e)}_callState(e){switch(this.state){case Y.DATA:{this._stateData(e);break}case Y.RCDATA:{this._stateRcdata(e);break}case Y.RAWTEXT:{this._stateRawtext(e);break}case Y.SCRIPT_DATA:{this._stateScriptData(e);break}case Y.PLAINTEXT:{this._statePlaintext(e);break}case Y.TAG_OPEN:{this._stateTagOpen(e);break}case Y.END_TAG_OPEN:{this._stateEndTagOpen(e);break}case Y.TAG_NAME:{this._stateTagName(e);break}case Y.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(e);break}case Y.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(e);break}case Y.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(e);break}case Y.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(e);break}case Y.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(e);break}case Y.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(e);break}case Y.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(e);break}case Y.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(e);break}case Y.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(e);break}case Y.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(e);break}case Y.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(e);break}case Y.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(e);break}case Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(e);break}case Y.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(e);break}case Y.ATTRIBUTE_NAME:{this._stateAttributeName(e);break}case Y.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(e);break}case Y.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(e);break}case Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(e);break}case Y.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(e);break}case Y.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(e);break}case Y.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(e);break}case Y.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(e);break}case Y.BOGUS_COMMENT:{this._stateBogusComment(e);break}case Y.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(e);break}case Y.COMMENT_START:{this._stateCommentStart(e);break}case Y.COMMENT_START_DASH:{this._stateCommentStartDash(e);break}case Y.COMMENT:{this._stateComment(e);break}case Y.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(e);break}case Y.COMMENT_END_DASH:{this._stateCommentEndDash(e);break}case Y.COMMENT_END:{this._stateCommentEnd(e);break}case Y.COMMENT_END_BANG:{this._stateCommentEndBang(e);break}case Y.DOCTYPE:{this._stateDoctype(e);break}case Y.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(e);break}case Y.DOCTYPE_NAME:{this._stateDoctypeName(e);break}case Y.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(e);break}case Y.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(e);break}case Y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(e);break}case Y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(e);break}case Y.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(e);break}case Y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(e);break}case Y.BOGUS_DOCTYPE:{this._stateBogusDoctype(e);break}case Y.CDATA_SECTION:{this._stateCdataSection(e);break}case Y.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(e);break}case Y.CDATA_SECTION_END:{this._stateCdataSectionEnd(e);break}case Y.CHARACTER_REFERENCE:{this._stateCharacterReference();break}case Y.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(e);break}default:throw new Error("Unknown state")}}_stateData(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.TAG_OPEN;break}case Q.AMPERSAND:{this._startCharacterReference();break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitCodePoint(e);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRcdata(e){switch(e){case Q.AMPERSAND:{this._startCharacterReference();break}case Q.LESS_THAN_SIGN:{this.state=Y.RCDATA_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRawtext(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.RAWTEXT_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptData(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_statePlaintext(e){switch(e){case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateTagOpen(e){if(u0(e))this._createStartTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case Q.EXCLAMATION_MARK:{this.state=Y.MARKUP_DECLARATION_OPEN;break}case Q.SOLIDUS:{this.state=Y.END_TAG_OPEN;break}case Q.QUESTION_MARK:{this._err(me.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e);break}case Q.EOF:{this._err(me.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break}default:this._err(me.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=Y.DATA,this._stateData(e)}}_stateEndTagOpen(e){if(u0(e))this._createEndTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case Q.GREATER_THAN_SIGN:{this._err(me.missingEndTagName),this.state=Y.DATA;break}case Q.EOF:{this._err(me.eofBeforeTagName),this._emitChars("");break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_ESCAPED,this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedLessThanSign(e){e===Q.SOLIDUS?this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:u0(e)?(this._emitChars("<"),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(e)):(this._emitChars("<"),this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagOpen(e){u0(e)?(this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(e)):(this._emitChars("");break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedLessThanSign(e){e===Q.SOLIDUS?(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateScriptDataDoubleEscapeEnd(e){if(this.preprocessor.startsWith(la.SCRIPT,!1)&&ske(this.preprocessor.peek(la.SCRIPT.length))){this._emitCodePoint(e);for(let r=0;r0&&this._isInTemplate()&&this.tmplCount--,this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!0)}replace(e,r){let n=this._indexOf(e);this.items[n]=r,n===this.stackTop&&(this.current=r)}insertAfter(e,r,n){let s=this._indexOf(e)+1;this.items.splice(s,0,r),this.tagIDs.splice(s,0,n),this.stackTop++,s===this.stackTop&&this._updateCurrentElement(),this.current&&this.currentTagId!==void 0&&this.handler.onItemPush(this.current,this.currentTagId,s===this.stackTop)}popUntilTagNamePopped(e){let r=this.stackTop+1;do r=this.tagIDs.lastIndexOf(e,r-1);while(r>0&&this.treeAdapter.getNamespaceURI(this.items[r])!==Ee.HTML);this.shortenToLength(Math.max(r,0))}shortenToLength(e){for(;this.stackTop>=e;){let r=this.current;this.tmplCount>0&&this._isInTemplate()&&(this.tmplCount-=1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(r,this.stackTop=0;n--)if(e.has(this.tagIDs[n])&&this.treeAdapter.getNamespaceURI(this.items[n])===r)return n;return-1}clearBackTo(e,r){let n=this._indexOfTagNames(e,r);this.shortenToLength(n+1)}clearBackToTableContext(){this.clearBackTo(FVt,Ee.HTML)}clearBackToTableBodyContext(){this.clearBackTo($Vt,Ee.HTML)}clearBackToTableRowContext(){this.clearBackTo(WVt,Ee.HTML)}remove(e){let r=this._indexOf(e);r>=0&&(r===this.stackTop?this.pop():(this.items.splice(r,1),this.tagIDs.splice(r,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===C.BODY?this.items[1]:null}contains(e){return this._indexOf(e)>-1}getCommonAncestor(e){let r=this._indexOf(e)-1;return r>=0?this.items[r]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===C.HTML}hasInDynamicScope(e,r){for(let n=this.stackTop;n>=0;n--){let s=this.tagIDs[n];switch(this.treeAdapter.getNamespaceURI(this.items[n])){case Ee.HTML:{if(s===e)return!0;if(r.has(s))return!1;break}case Ee.SVG:{if(cke.has(s))return!1;break}case Ee.MATHML:{if(oke.has(s))return!1;break}}}return!0}hasInScope(e){return this.hasInDynamicScope(e,pD)}hasInListItemScope(e){return this.hasInDynamicScope(e,LVt)}hasInButtonScope(e){return this.hasInDynamicScope(e,MVt)}hasNumberedHeaderInScope(){for(let e=this.stackTop;e>=0;e--){let r=this.tagIDs[e];switch(this.treeAdapter.getNamespaceURI(this.items[e])){case Ee.HTML:{if(kx.has(r))return!0;if(pD.has(r))return!1;break}case Ee.SVG:{if(cke.has(r))return!1;break}case Ee.MATHML:{if(oke.has(r))return!1;break}}}return!0}hasInTableScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case C.TABLE:case C.HTML:return!1}return!0}hasTableBodyContextInTableScope(){for(let e=this.stackTop;e>=0;e--)if(this.treeAdapter.getNamespaceURI(this.items[e])===Ee.HTML)switch(this.tagIDs[e]){case C.TBODY:case C.THEAD:case C.TFOOT:return!0;case C.TABLE:case C.HTML:return!1}return!0}hasInSelectScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case C.OPTION:case C.OPTGROUP:break;default:return!1}return!0}generateImpliedEndTags(){for(;this.currentTagId!==void 0&&uke.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;this.currentTagId!==void 0&&ake.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(e){for(;this.currentTagId!==void 0&&this.currentTagId!==e&&ake.has(this.currentTagId);)this.pop()}};var au;(function(t){t[t.Marker=0]="Marker",t[t.Element=1]="Element"})(au||(au={}));var lke={type:au.Marker},hD=class{constructor(e){this.treeAdapter=e,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(e,r){let n=[],s=r.length,i=this.treeAdapter.getTagName(e),a=this.treeAdapter.getNamespaceURI(e);for(let o=0;o[a.name,a.value])),i=0;for(let a=0;as.get(c.name)===c.value)&&(i+=1,i>=3&&this.entries.splice(o.idx,1))}}insertMarker(){this.entries.unshift(lke)}pushElement(e,r){this._ensureNoahArkCondition(e),this.entries.unshift({type:au.Element,element:e,token:r})}insertElementAfterBookmark(e,r){let n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:au.Element,element:e,token:r})}removeEntry(e){let r=this.entries.indexOf(e);r!==-1&&this.entries.splice(r,1)}clearToLastMarker(){let e=this.entries.indexOf(lke);e===-1?this.entries.length=0:this.entries.splice(0,e+1)}getElementEntryInScopeWithTagName(e){let r=this.entries.find(n=>n.type===au.Marker||this.treeAdapter.getTagName(n.element)===e);return r&&r.type===au.Element?r:null}getElementEntry(e){return this.entries.find(r=>r.type===au.Element&&r.element===e)}};var gc={createDocument(){return{nodeName:"#document",mode:Ui.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:"#document-fragment",childNodes:[]}},createElement(t,e,r){return{nodeName:t,tagName:t,attrs:r,namespaceURI:e,childNodes:[],parentNode:null}},createCommentNode(t){return{nodeName:"#comment",data:t,parentNode:null}},createTextNode(t){return{nodeName:"#text",value:t,parentNode:null}},appendChild(t,e){t.childNodes.push(e),e.parentNode=t},insertBefore(t,e,r){let n=t.childNodes.indexOf(r);t.childNodes.splice(n,0,e),e.parentNode=t},setTemplateContent(t,e){t.content=e},getTemplateContent(t){return t.content},setDocumentType(t,e,r,n){let s=t.childNodes.find(i=>i.nodeName==="#documentType");if(s)s.name=e,s.publicId=r,s.systemId=n;else{let i={nodeName:"#documentType",name:e,publicId:r,systemId:n,parentNode:null};gc.appendChild(t,i)}},setDocumentMode(t,e){t.mode=e},getDocumentMode(t){return t.mode},detachNode(t){if(t.parentNode){let e=t.parentNode.childNodes.indexOf(t);t.parentNode.childNodes.splice(e,1),t.parentNode=null}},insertText(t,e){if(t.childNodes.length>0){let r=t.childNodes[t.childNodes.length-1];if(gc.isTextNode(r)){r.value+=e;return}}gc.appendChild(t,gc.createTextNode(e))},insertTextBefore(t,e,r){let n=t.childNodes[t.childNodes.indexOf(r)-1];n&&gc.isTextNode(n)?n.value+=e:gc.insertBefore(t,gc.createTextNode(e),r)},adoptAttributes(t,e){let r=new Set(t.attrs.map(n=>n.name));for(let n=0;nt.startsWith(r))}function hke(t){return t.name===fke&&t.publicId===null&&(t.systemId===null||t.systemId===qVt)}function gke(t){if(t.name!==fke)return Ui.QUIRKS;let{systemId:e}=t;if(e&&e.toLowerCase()===jVt)return Ui.QUIRKS;let{publicId:r}=t;if(r!==null){if(r=r.toLowerCase(),QVt.has(r))return Ui.QUIRKS;let n=e===null?HVt:pke;if(dke(r,n))return Ui.QUIRKS;if(n=e===null?mke:GVt,dke(r,n))return Ui.LIMITED_QUIRKS}return Ui.NO_QUIRKS}var Ake={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},VVt="definitionurl",zVt="definitionURL",YVt=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(t=>[t.toLowerCase(),t])),JVt=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:Ee.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:Ee.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:Ee.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:Ee.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:Ee.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:Ee.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:Ee.XLINK}],["xml:lang",{prefix:"xml",name:"lang",namespace:Ee.XML}],["xml:space",{prefix:"xml",name:"space",namespace:Ee.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:Ee.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:Ee.XMLNS}]]),XVt=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(t=>[t.toLowerCase(),t])),ZVt=new Set([C.B,C.BIG,C.BLOCKQUOTE,C.BODY,C.BR,C.CENTER,C.CODE,C.DD,C.DIV,C.DL,C.DT,C.EM,C.EMBED,C.H1,C.H2,C.H3,C.H4,C.H5,C.H6,C.HEAD,C.HR,C.I,C.IMG,C.LI,C.LISTING,C.MENU,C.META,C.NOBR,C.OL,C.P,C.PRE,C.RUBY,C.S,C.SMALL,C.SPAN,C.STRONG,C.STRIKE,C.SUB,C.SUP,C.TABLE,C.TT,C.U,C.UL,C.VAR]);function yke(t){let e=t.tagID;return e===C.FONT&&t.attrs.some(({name:n})=>n===pl.COLOR||n===pl.SIZE||n===pl.FACE)||ZVt.has(e)}function xQ(t){for(let e=0;e0&&this._setContextModes(e,r)}onItemPop(e,r){var n,s;if(this.options.sourceCodeLocationInfo&&this._setEndLocation(e,this.currentToken),(s=(n=this.treeAdapter).onItemPop)===null||s===void 0||s.call(n,e,this.openElements.current),r){let i,a;this.openElements.stackTop===0&&this.fragmentContext?(i=this.fragmentContext,a=this.fragmentContextID):{current:i,currentTagId:a}=this.openElements,this._setContextModes(i,a)}}_setContextModes(e,r){let n=e===this.document||e&&this.treeAdapter.getNamespaceURI(e)===Ee.HTML;this.currentNotInHTML=!n,this.tokenizer.inForeignNode=!n&&e!==void 0&&r!==void 0&&!this._isIntegrationPoint(r,e)}_switchToTextParsing(e,r){this._insertElement(e,Ee.HTML),this.tokenizer.state=r,this.originalInsertionMode=this.insertionMode,this.insertionMode=te.TEXT}switchToPlaintextParsing(){this.insertionMode=te.TEXT,this.originalInsertionMode=te.IN_BODY,this.tokenizer.state=qi.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let e=this.fragmentContext;for(;e;){if(this.treeAdapter.getTagName(e)===de.FORM){this.formElement=e;break}e=this.treeAdapter.getParentNode(e)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==Ee.HTML))switch(this.fragmentContextID){case C.TITLE:case C.TEXTAREA:{this.tokenizer.state=qi.RCDATA;break}case C.STYLE:case C.XMP:case C.IFRAME:case C.NOEMBED:case C.NOFRAMES:case C.NOSCRIPT:{this.tokenizer.state=qi.RAWTEXT;break}case C.SCRIPT:{this.tokenizer.state=qi.SCRIPT_DATA;break}case C.PLAINTEXT:{this.tokenizer.state=qi.PLAINTEXT;break}default:}}_setDocumentType(e){let r=e.name||"",n=e.publicId||"",s=e.systemId||"";if(this.treeAdapter.setDocumentType(this.document,r,n,s),e.location){let a=this.treeAdapter.getChildNodes(this.document).find(o=>this.treeAdapter.isDocumentTypeNode(o));a&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}}_attachElementToTree(e,r){if(this.options.sourceCodeLocationInfo){let n=r&&{...r,startTag:r};this.treeAdapter.setNodeSourceCodeLocation(e,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(e);else{let n=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(n??this.document,e)}}_appendElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location)}_insertElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location),this.openElements.push(n,e.tagID)}_insertFakeElement(e,r){let n=this.treeAdapter.createElement(e,Ee.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,r)}_insertTemplate(e){let r=this.treeAdapter.createElement(e.tagName,Ee.HTML,e.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(r,n),this._attachElementToTree(r,e.location),this.openElements.push(r,e.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){let e=this.treeAdapter.createElement(de.HTML,Ee.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(e,null),this.treeAdapter.appendChild(this.openElements.current,e),this.openElements.push(e,C.HTML)}_appendCommentNode(e,r){let n=this.treeAdapter.createCommentNode(e.data);this.treeAdapter.appendChild(r,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,e.location)}_insertCharacters(e){let r,n;if(this._shouldFosterParentOnInsertion()?({parent:r,beforeElement:n}=this._findFosterParentingLocation(),n?this.treeAdapter.insertTextBefore(r,e.chars,n):this.treeAdapter.insertText(r,e.chars)):(r=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(r,e.chars)),!e.location)return;let s=this.treeAdapter.getChildNodes(r),i=n?s.lastIndexOf(n):s.length,a=s[i-1];if(this.treeAdapter.getNodeSourceCodeLocation(a)){let{endLine:c,endCol:u,endOffset:l}=e.location;this.treeAdapter.updateNodeSourceCodeLocation(a,{endLine:c,endCol:u,endOffset:l})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}_adoptNodes(e,r){for(let n=this.treeAdapter.getFirstChild(e);n;n=this.treeAdapter.getFirstChild(e))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(r,n)}_setEndLocation(e,r){if(this.treeAdapter.getNodeSourceCodeLocation(e)&&r.location){let n=r.location,s=this.treeAdapter.getTagName(e),i=r.type===xr.END_TAG&&s===r.tagName?{endTag:{...n},endLine:n.endLine,endCol:n.endCol,endOffset:n.endOffset}:{endLine:n.startLine,endCol:n.startCol,endOffset:n.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(e,i)}}shouldProcessStartTagTokenInForeignContent(e){if(!this.currentNotInHTML)return!1;let r,n;return this.openElements.stackTop===0&&this.fragmentContext?(r=this.fragmentContext,n=this.fragmentContextID):{current:r,currentTagId:n}=this.openElements,e.tagID===C.SVG&&this.treeAdapter.getTagName(r)===de.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(r)===Ee.MATHML?!1:this.tokenizer.inForeignNode||(e.tagID===C.MGLYPH||e.tagID===C.MALIGNMARK)&&n!==void 0&&!this._isIntegrationPoint(n,r,Ee.HTML)}_processToken(e){switch(e.type){case xr.CHARACTER:{this.onCharacter(e);break}case xr.NULL_CHARACTER:{this.onNullCharacter(e);break}case xr.COMMENT:{this.onComment(e);break}case xr.DOCTYPE:{this.onDoctype(e);break}case xr.START_TAG:{this._processStartTag(e);break}case xr.END_TAG:{this.onEndTag(e);break}case xr.EOF:{this.onEof(e);break}case xr.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(e);break}}}_isIntegrationPoint(e,r,n){let s=this.treeAdapter.getNamespaceURI(r),i=this.treeAdapter.getAttrList(r);return bke(e,s,i,n)}_reconstructActiveFormattingElements(){let e=this.activeFormattingElements.entries.length;if(e){let r=this.activeFormattingElements.entries.findIndex(s=>s.type===au.Marker||this.openElements.contains(s.element)),n=r===-1?e-1:r-1;for(let s=n;s>=0;s--){let i=this.activeFormattingElements.entries[s];this._insertElement(i.token,this.treeAdapter.getNamespaceURI(i.element)),i.element=this.openElements.current}}}_closeTableCell(){this.openElements.generateImpliedEndTags(),this.openElements.popUntilTableCellPopped(),this.activeFormattingElements.clearToLastMarker(),this.insertionMode=te.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(C.P),this.openElements.popUntilTagNamePopped(C.P)}_resetInsertionMode(){for(let e=this.openElements.stackTop;e>=0;e--)switch(e===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[e]){case C.TR:{this.insertionMode=te.IN_ROW;return}case C.TBODY:case C.THEAD:case C.TFOOT:{this.insertionMode=te.IN_TABLE_BODY;return}case C.CAPTION:{this.insertionMode=te.IN_CAPTION;return}case C.COLGROUP:{this.insertionMode=te.IN_COLUMN_GROUP;return}case C.TABLE:{this.insertionMode=te.IN_TABLE;return}case C.BODY:{this.insertionMode=te.IN_BODY;return}case C.FRAMESET:{this.insertionMode=te.IN_FRAMESET;return}case C.SELECT:{this._resetInsertionModeForSelect(e);return}case C.TEMPLATE:{this.insertionMode=this.tmplInsertionModeStack[0];return}case C.HTML:{this.insertionMode=this.headElement?te.AFTER_HEAD:te.BEFORE_HEAD;return}case C.TD:case C.TH:{if(e>0){this.insertionMode=te.IN_CELL;return}break}case C.HEAD:{if(e>0){this.insertionMode=te.IN_HEAD;return}break}}this.insertionMode=te.IN_BODY}_resetInsertionModeForSelect(e){if(e>0)for(let r=e-1;r>0;r--){let n=this.openElements.tagIDs[r];if(n===C.TEMPLATE)break;if(n===C.TABLE){this.insertionMode=te.IN_SELECT_IN_TABLE;return}}this.insertionMode=te.IN_SELECT}_isElementCausesFosterParenting(e){return Ike.has(e)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this.openElements.currentTagId!==void 0&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let e=this.openElements.stackTop;e>=0;e--){let r=this.openElements.items[e];switch(this.openElements.tagIDs[e]){case C.TEMPLATE:{if(this.treeAdapter.getNamespaceURI(r)===Ee.HTML)return{parent:this.treeAdapter.getTemplateContent(r),beforeElement:null};break}case C.TABLE:{let n=this.treeAdapter.getParentNode(r);return n?{parent:n,beforeElement:r}:{parent:this.openElements.items[e-1],beforeElement:null}}default:}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(e){let r=this._findFosterParentingLocation();r.beforeElement?this.treeAdapter.insertBefore(r.parent,e,r.beforeElement):this.treeAdapter.appendChild(r.parent,e)}_isSpecialElement(e,r){let n=this.treeAdapter.getNamespaceURI(e);return AQ[n].has(r)}onCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){BYt(this,e);return}switch(this.insertionMode){case te.INITIAL:{fv(this,e);break}case te.BEFORE_HTML:{mv(this,e);break}case te.BEFORE_HEAD:{hv(this,e);break}case te.IN_HEAD:{gv(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Av(this,e);break}case te.AFTER_HEAD:{yv(this,e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:{Tke(this,e);break}case te.TEXT:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{EQ(this,e);break}case te.IN_TABLE_TEXT:{kke(this,e);break}case te.IN_COLUMN_GROUP:{yD(this,e);break}case te.AFTER_BODY:{xD(this,e);break}case te.AFTER_AFTER_BODY:{AD(this,e);break}default:}}onNullCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){DYt(this,e);return}switch(this.insertionMode){case te.INITIAL:{fv(this,e);break}case te.BEFORE_HTML:{mv(this,e);break}case te.BEFORE_HEAD:{hv(this,e);break}case te.IN_HEAD:{gv(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Av(this,e);break}case te.AFTER_HEAD:{yv(this,e);break}case te.TEXT:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{EQ(this,e);break}case te.IN_COLUMN_GROUP:{yD(this,e);break}case te.AFTER_BODY:{xD(this,e);break}case te.AFTER_AFTER_BODY:{AD(this,e);break}default:}}onComment(e){if(this.skipNextNewLine=!1,this.currentNotInHTML){_Q(this,e);return}switch(this.insertionMode){case te.INITIAL:case te.BEFORE_HTML:case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_TEMPLATE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{_Q(this,e);break}case te.IN_TABLE_TEXT:{pv(this,e);break}case te.AFTER_BODY:{fzt(this,e);break}case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{pzt(this,e);break}default:}}onDoctype(e){switch(this.skipNextNewLine=!1,this.insertionMode){case te.INITIAL:{mzt(this,e);break}case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:{this._err(e,me.misplacedDoctype);break}case te.IN_TABLE_TEXT:{pv(this,e);break}default:}}onStartTag(e){this.skipNextNewLine=!1,this.currentToken=e,this._processStartTag(e),e.selfClosing&&!e.ackSelfClosing&&this._err(e,me.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(e){this.shouldProcessStartTagTokenInForeignContent(e)?LYt(this,e):this._startTagOutsideForeignContent(e)}_startTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{fv(this,e);break}case te.BEFORE_HTML:{hzt(this,e);break}case te.BEFORE_HEAD:{Azt(this,e);break}case te.IN_HEAD:{ou(this,e);break}case te.IN_HEAD_NO_SCRIPT:{bzt(this,e);break}case te.AFTER_HEAD:{_zt(this,e);break}case te.IN_BODY:{ji(this,e);break}case te.IN_TABLE:{Bx(this,e);break}case te.IN_TABLE_TEXT:{pv(this,e);break}case te.IN_CAPTION:{yYt(this,e);break}case te.IN_COLUMN_GROUP:{CQ(this,e);break}case te.IN_TABLE_BODY:{_D(this,e);break}case te.IN_ROW:{SD(this,e);break}case te.IN_CELL:{EYt(this,e);break}case te.IN_SELECT:{Lke(this,e);break}case te.IN_SELECT_IN_TABLE:{SYt(this,e);break}case te.IN_TEMPLATE:{IYt(this,e);break}case te.AFTER_BODY:{TYt(this,e);break}case te.IN_FRAMESET:{wYt(this,e);break}case te.AFTER_FRAMESET:{NYt(this,e);break}case te.AFTER_AFTER_BODY:{PYt(this,e);break}case te.AFTER_AFTER_FRAMESET:{kYt(this,e);break}default:}}onEndTag(e){this.skipNextNewLine=!1,this.currentToken=e,this.currentNotInHTML?MYt(this,e):this._endTagOutsideForeignContent(e)}_endTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{fv(this,e);break}case te.BEFORE_HTML:{gzt(this,e);break}case te.BEFORE_HEAD:{yzt(this,e);break}case te.IN_HEAD:{xzt(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Ezt(this,e);break}case te.AFTER_HEAD:{Szt(this,e);break}case te.IN_BODY:{ED(this,e);break}case te.TEXT:{cYt(this,e);break}case te.IN_TABLE:{xv(this,e);break}case te.IN_TABLE_TEXT:{pv(this,e);break}case te.IN_CAPTION:{xYt(this,e);break}case te.IN_COLUMN_GROUP:{bYt(this,e);break}case te.IN_TABLE_BODY:{SQ(this,e);break}case te.IN_ROW:{Bke(this,e);break}case te.IN_CELL:{_Yt(this,e);break}case te.IN_SELECT:{Mke(this,e);break}case te.IN_SELECT_IN_TABLE:{vYt(this,e);break}case te.IN_TEMPLATE:{CYt(this,e);break}case te.AFTER_BODY:{$ke(this,e);break}case te.IN_FRAMESET:{RYt(this,e);break}case te.AFTER_FRAMESET:{OYt(this,e);break}case te.AFTER_AFTER_BODY:{AD(this,e);break}default:}}onEof(e){switch(this.insertionMode){case te.INITIAL:{fv(this,e);break}case te.BEFORE_HTML:{mv(this,e);break}case te.BEFORE_HEAD:{hv(this,e);break}case te.IN_HEAD:{gv(this,e);break}case te.IN_HEAD_NO_SCRIPT:{Av(this,e);break}case te.AFTER_HEAD:{yv(this,e);break}case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{Oke(this,e);break}case te.TEXT:{uYt(this,e);break}case te.IN_TABLE_TEXT:{pv(this,e);break}case te.IN_TEMPLATE:{Wke(this,e);break}case te.AFTER_BODY:case te.IN_FRAMESET:case te.AFTER_FRAMESET:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{IQ(this,e);break}default:}}onWhitespaceCharacter(e){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,e.chars.charCodeAt(0)===Q.LINE_FEED)){if(e.chars.length===1)return;e.chars=e.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(e);return}switch(this.insertionMode){case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.TEXT:case te.IN_COLUMN_GROUP:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{this._insertCharacters(e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:case te.AFTER_BODY:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{Cke(this,e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{EQ(this,e);break}case te.IN_TABLE_TEXT:{Pke(this,e);break}default:}}};function azt(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(e.tagName);return r?t.openElements.contains(r.element)?t.openElements.hasInScope(e.tagID)||(r=null):(t.activeFormattingElements.removeEntry(r),r=null):Nke(t,e),r}function ozt(t,e){let r=null,n=t.openElements.stackTop;for(;n>=0;n--){let s=t.openElements.items[n];if(s===e.element)break;t._isSpecialElement(s,t.openElements.tagIDs[n])&&(r=s)}return r||(t.openElements.shortenToLength(Math.max(n,0)),t.activeFormattingElements.removeEntry(e)),r}function czt(t,e,r){let n=e,s=t.openElements.getCommonAncestor(e);for(let i=0,a=s;a!==r;i++,a=s){s=t.openElements.getCommonAncestor(a);let o=t.activeFormattingElements.getElementEntry(a),c=o&&i>=szt;!o||c?(c&&t.activeFormattingElements.removeEntry(o),t.openElements.remove(a)):(a=uzt(t,o),n===e&&(t.activeFormattingElements.bookmark=o),t.treeAdapter.detachNode(n),t.treeAdapter.appendChild(a,n),n=a)}return n}function uzt(t,e){let r=t.treeAdapter.getNamespaceURI(e.element),n=t.treeAdapter.createElement(e.token.tagName,r,e.token.attrs);return t.openElements.replace(e.element,n),e.element=n,n}function lzt(t,e,r){let n=t.treeAdapter.getTagName(e),s=c0(n);if(t._isElementCausesFosterParenting(s))t._fosterParentElement(r);else{let i=t.treeAdapter.getNamespaceURI(e);s===C.TEMPLATE&&i===Ee.HTML&&(e=t.treeAdapter.getTemplateContent(e)),t.treeAdapter.appendChild(e,r)}}function dzt(t,e,r){let n=t.treeAdapter.getNamespaceURI(r.element),{token:s}=r,i=t.treeAdapter.createElement(s.tagName,n,s.attrs);t._adoptNodes(e,i),t.treeAdapter.appendChild(e,i),t.activeFormattingElements.insertElementAfterBookmark(i,s),t.activeFormattingElements.removeEntry(r),t.openElements.remove(r.element),t.openElements.insertAfter(e,i,s.tagID)}function vQ(t,e){for(let r=0;r=r;n--)t._setEndLocation(t.openElements.items[n],e);if(!t.fragmentContext&&t.openElements.stackTop>=0){let n=t.openElements.items[0],s=t.treeAdapter.getNodeSourceCodeLocation(n);if(s&&!s.endTag&&(t._setEndLocation(n,e),t.openElements.stackTop>=1)){let i=t.openElements.items[1],a=t.treeAdapter.getNodeSourceCodeLocation(i);a&&!a.endTag&&t._setEndLocation(i,e)}}}}function mzt(t,e){t._setDocumentType(e);let r=e.forceQuirks?Ui.QUIRKS:gke(e);hke(e)||t._err(e,me.nonConformingDoctype),t.treeAdapter.setDocumentMode(t.document,r),t.insertionMode=te.BEFORE_HTML}function fv(t,e){t._err(e,me.missingDoctype,!0),t.treeAdapter.setDocumentMode(t.document,Ui.QUIRKS),t.insertionMode=te.BEFORE_HTML,t._processToken(e)}function hzt(t,e){e.tagID===C.HTML?(t._insertElement(e,Ee.HTML),t.insertionMode=te.BEFORE_HEAD):mv(t,e)}function gzt(t,e){let r=e.tagID;(r===C.HTML||r===C.HEAD||r===C.BODY||r===C.BR)&&mv(t,e)}function mv(t,e){t._insertFakeRootElement(),t.insertionMode=te.BEFORE_HEAD,t._processToken(e)}function Azt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.HEAD:{t._insertElement(e,Ee.HTML),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD;break}default:hv(t,e)}}function yzt(t,e){let r=e.tagID;r===C.HEAD||r===C.BODY||r===C.HTML||r===C.BR?hv(t,e):t._err(e,me.endTagWithoutMatchingOpenElement)}function hv(t,e){t._insertFakeElement(de.HEAD,C.HEAD),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD,t._processToken(e)}function ou(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case C.TITLE:{t._switchToTextParsing(e,qi.RCDATA);break}case C.NOSCRIPT:{t.options.scriptingEnabled?t._switchToTextParsing(e,qi.RAWTEXT):(t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_HEAD_NO_SCRIPT);break}case C.NOFRAMES:case C.STYLE:{t._switchToTextParsing(e,qi.RAWTEXT);break}case C.SCRIPT:{t._switchToTextParsing(e,qi.SCRIPT_DATA);break}case C.TEMPLATE:{t._insertTemplate(e),t.activeFormattingElements.insertMarker(),t.framesetOk=!1,t.insertionMode=te.IN_TEMPLATE,t.tmplInsertionModeStack.unshift(te.IN_TEMPLATE);break}case C.HEAD:{t._err(e,me.misplacedStartTagForHeadElement);break}default:gv(t,e)}}function xzt(t,e){switch(e.tagID){case C.HEAD:{t.openElements.pop(),t.insertionMode=te.AFTER_HEAD;break}case C.BODY:case C.BR:case C.HTML:{gv(t,e);break}case C.TEMPLATE:{Ch(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function Ch(t,e){t.openElements.tmplCount>0?(t.openElements.generateImpliedEndTagsThoroughly(),t.openElements.currentTagId!==C.TEMPLATE&&t._err(e,me.closingOfElementWithOpenChildElements),t.openElements.popUntilTagNamePopped(C.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode()):t._err(e,me.endTagWithoutMatchingOpenElement)}function gv(t,e){t.openElements.pop(),t.insertionMode=te.AFTER_HEAD,t._processToken(e)}function bzt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.BASEFONT:case C.BGSOUND:case C.HEAD:case C.LINK:case C.META:case C.NOFRAMES:case C.STYLE:{ou(t,e);break}case C.NOSCRIPT:{t._err(e,me.nestedNoscriptInHead);break}default:Av(t,e)}}function Ezt(t,e){switch(e.tagID){case C.NOSCRIPT:{t.openElements.pop(),t.insertionMode=te.IN_HEAD;break}case C.BR:{Av(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function Av(t,e){let r=e.type===xr.EOF?me.openElementsLeftAfterEof:me.disallowedContentInNoscriptInHead;t._err(e,r),t.openElements.pop(),t.insertionMode=te.IN_HEAD,t._processToken(e)}function _zt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.BODY:{t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_BODY;break}case C.FRAMESET:{t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET;break}case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:case C.NOFRAMES:case C.SCRIPT:case C.STYLE:case C.TEMPLATE:case C.TITLE:{t._err(e,me.abandonedHeadElementChild),t.openElements.push(t.headElement,C.HEAD),ou(t,e),t.openElements.remove(t.headElement);break}case C.HEAD:{t._err(e,me.misplacedStartTagForHeadElement);break}default:yv(t,e)}}function Szt(t,e){switch(e.tagID){case C.BODY:case C.HTML:case C.BR:{yv(t,e);break}case C.TEMPLATE:{Ch(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function yv(t,e){t._insertFakeElement(de.BODY,C.BODY),t.insertionMode=te.IN_BODY,bD(t,e)}function bD(t,e){switch(e.type){case xr.CHARACTER:{Tke(t,e);break}case xr.WHITESPACE_CHARACTER:{Cke(t,e);break}case xr.COMMENT:{_Q(t,e);break}case xr.START_TAG:{ji(t,e);break}case xr.END_TAG:{ED(t,e);break}case xr.EOF:{Oke(t,e);break}default:}}function Cke(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e)}function Tke(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e),t.framesetOk=!1}function vzt(t,e){t.openElements.tmplCount===0&&t.treeAdapter.adoptAttributes(t.openElements.items[0],e.attrs)}function Izt(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t.openElements.tmplCount===0&&(t.framesetOk=!1,t.treeAdapter.adoptAttributes(r,e.attrs))}function Czt(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();t.framesetOk&&r&&(t.treeAdapter.detachNode(r),t.openElements.popAllUpToHtmlElement(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET)}function Tzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function wzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t.openElements.currentTagId!==void 0&&kx.has(t.openElements.currentTagId)&&t.openElements.pop(),t._insertElement(e,Ee.HTML)}function Rzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.framesetOk=!1}function Nzt(t,e){let r=t.openElements.tmplCount>0;(!t.formElement||r)&&(t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),r||(t.formElement=t.openElements.current))}function Ozt(t,e){t.framesetOk=!1;let r=e.tagID;for(let n=t.openElements.stackTop;n>=0;n--){let s=t.openElements.tagIDs[n];if(r===C.LI&&s===C.LI||(r===C.DD||r===C.DT)&&(s===C.DD||s===C.DT)){t.openElements.generateImpliedEndTagsWithExclusion(s),t.openElements.popUntilTagNamePopped(s);break}if(s!==C.ADDRESS&&s!==C.DIV&&s!==C.P&&t._isSpecialElement(t.openElements.items[n],s))break}t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function Pzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.tokenizer.state=qi.PLAINTEXT}function kzt(t,e){t.openElements.hasInScope(C.BUTTON)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(C.BUTTON)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1}function Dzt(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(de.A);r&&(vQ(t,e),t.openElements.remove(r.element),t.activeFormattingElements.removeEntry(r)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function Bzt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function Lzt(t,e){t._reconstructActiveFormattingElements(),t.openElements.hasInScope(C.NOBR)&&(vQ(t,e),t._reconstructActiveFormattingElements()),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function Mzt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.insertMarker(),t.framesetOk=!1}function Wzt(t,e){t.treeAdapter.getDocumentMode(t.document)!==Ui.QUIRKS&&t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_TABLE}function wke(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function Rke(t){let e=cD(t,pl.TYPE);return e!=null&&e.toLowerCase()===rzt}function $zt(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),Rke(e)||(t.framesetOk=!1),e.ackSelfClosing=!0}function Fzt(t,e){t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0}function Uzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function qzt(t,e){e.tagName=de.IMG,e.tagID=C.IMG,wke(t,e)}function jzt(t,e){t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.tokenizer.state=qi.RCDATA,t.originalInsertionMode=t.insertionMode,t.framesetOk=!1,t.insertionMode=te.TEXT}function Hzt(t,e){t.openElements.hasInButtonScope(C.P)&&t._closePElement(),t._reconstructActiveFormattingElements(),t.framesetOk=!1,t._switchToTextParsing(e,qi.RAWTEXT)}function Qzt(t,e){t.framesetOk=!1,t._switchToTextParsing(e,qi.RAWTEXT)}function Ske(t,e){t._switchToTextParsing(e,qi.RAWTEXT)}function Gzt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=t.insertionMode===te.IN_TABLE||t.insertionMode===te.IN_CAPTION||t.insertionMode===te.IN_TABLE_BODY||t.insertionMode===te.IN_ROW||t.insertionMode===te.IN_CELL?te.IN_SELECT_IN_TABLE:te.IN_SELECT}function Kzt(t,e){t.openElements.currentTagId===C.OPTION&&t.openElements.pop(),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function Vzt(t,e){t.openElements.hasInScope(C.RUBY)&&t.openElements.generateImpliedEndTags(),t._insertElement(e,Ee.HTML)}function zzt(t,e){t.openElements.hasInScope(C.RUBY)&&t.openElements.generateImpliedEndTagsWithExclusion(C.RTC),t._insertElement(e,Ee.HTML)}function Yzt(t,e){t._reconstructActiveFormattingElements(),xQ(e),gD(e),e.selfClosing?t._appendElement(e,Ee.MATHML):t._insertElement(e,Ee.MATHML),e.ackSelfClosing=!0}function Jzt(t,e){t._reconstructActiveFormattingElements(),bQ(e),gD(e),e.selfClosing?t._appendElement(e,Ee.SVG):t._insertElement(e,Ee.SVG),e.ackSelfClosing=!0}function vke(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function ji(t,e){switch(e.tagID){case C.I:case C.S:case C.B:case C.U:case C.EM:case C.TT:case C.BIG:case C.CODE:case C.FONT:case C.SMALL:case C.STRIKE:case C.STRONG:{Bzt(t,e);break}case C.A:{Dzt(t,e);break}case C.H1:case C.H2:case C.H3:case C.H4:case C.H5:case C.H6:{wzt(t,e);break}case C.P:case C.DL:case C.OL:case C.UL:case C.DIV:case C.DIR:case C.NAV:case C.MAIN:case C.MENU:case C.ASIDE:case C.CENTER:case C.FIGURE:case C.FOOTER:case C.HEADER:case C.HGROUP:case C.DIALOG:case C.DETAILS:case C.ADDRESS:case C.ARTICLE:case C.SEARCH:case C.SECTION:case C.SUMMARY:case C.FIELDSET:case C.BLOCKQUOTE:case C.FIGCAPTION:{Tzt(t,e);break}case C.LI:case C.DD:case C.DT:{Ozt(t,e);break}case C.BR:case C.IMG:case C.WBR:case C.AREA:case C.EMBED:case C.KEYGEN:{wke(t,e);break}case C.HR:{Uzt(t,e);break}case C.RB:case C.RTC:{Vzt(t,e);break}case C.RT:case C.RP:{zzt(t,e);break}case C.PRE:case C.LISTING:{Rzt(t,e);break}case C.XMP:{Hzt(t,e);break}case C.SVG:{Jzt(t,e);break}case C.HTML:{vzt(t,e);break}case C.BASE:case C.LINK:case C.META:case C.STYLE:case C.TITLE:case C.SCRIPT:case C.BGSOUND:case C.BASEFONT:case C.TEMPLATE:{ou(t,e);break}case C.BODY:{Izt(t,e);break}case C.FORM:{Nzt(t,e);break}case C.NOBR:{Lzt(t,e);break}case C.MATH:{Yzt(t,e);break}case C.TABLE:{Wzt(t,e);break}case C.INPUT:{$zt(t,e);break}case C.PARAM:case C.TRACK:case C.SOURCE:{Fzt(t,e);break}case C.IMAGE:{qzt(t,e);break}case C.BUTTON:{kzt(t,e);break}case C.APPLET:case C.OBJECT:case C.MARQUEE:{Mzt(t,e);break}case C.IFRAME:{Qzt(t,e);break}case C.SELECT:{Gzt(t,e);break}case C.OPTION:case C.OPTGROUP:{Kzt(t,e);break}case C.NOEMBED:case C.NOFRAMES:{Ske(t,e);break}case C.FRAMESET:{Czt(t,e);break}case C.TEXTAREA:{jzt(t,e);break}case C.NOSCRIPT:{t.options.scriptingEnabled?Ske(t,e):vke(t,e);break}case C.PLAINTEXT:{Pzt(t,e);break}case C.COL:case C.TH:case C.TD:case C.TR:case C.HEAD:case C.FRAME:case C.TBODY:case C.TFOOT:case C.THEAD:case C.CAPTION:case C.COLGROUP:break;default:vke(t,e)}}function Xzt(t,e){if(t.openElements.hasInScope(C.BODY)&&(t.insertionMode=te.AFTER_BODY,t.options.sourceCodeLocationInfo)){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t._setEndLocation(r,e)}}function Zzt(t,e){t.openElements.hasInScope(C.BODY)&&(t.insertionMode=te.AFTER_BODY,$ke(t,e))}function eYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r))}function tYt(t){let e=t.openElements.tmplCount>0,{formElement:r}=t;e||(t.formElement=null),(r||e)&&t.openElements.hasInScope(C.FORM)&&(t.openElements.generateImpliedEndTags(),e?t.openElements.popUntilTagNamePopped(C.FORM):r&&t.openElements.remove(r))}function rYt(t){t.openElements.hasInButtonScope(C.P)||t._insertFakeElement(de.P,C.P),t._closePElement()}function nYt(t){t.openElements.hasInListItemScope(C.LI)&&(t.openElements.generateImpliedEndTagsWithExclusion(C.LI),t.openElements.popUntilTagNamePopped(C.LI))}function sYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTagsWithExclusion(r),t.openElements.popUntilTagNamePopped(r))}function iYt(t){t.openElements.hasNumberedHeaderInScope()&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilNumberedHeaderPopped())}function aYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r),t.activeFormattingElements.clearToLastMarker())}function oYt(t){t._reconstructActiveFormattingElements(),t._insertFakeElement(de.BR,C.BR),t.openElements.pop(),t.framesetOk=!1}function Nke(t,e){let r=e.tagName,n=e.tagID;for(let s=t.openElements.stackTop;s>0;s--){let i=t.openElements.items[s],a=t.openElements.tagIDs[s];if(n===a&&(n!==C.UNKNOWN||t.treeAdapter.getTagName(i)===r)){t.openElements.generateImpliedEndTagsWithExclusion(n),t.openElements.stackTop>=s&&t.openElements.shortenToLength(s);break}if(t._isSpecialElement(i,a))break}}function ED(t,e){switch(e.tagID){case C.A:case C.B:case C.I:case C.S:case C.U:case C.EM:case C.TT:case C.BIG:case C.CODE:case C.FONT:case C.NOBR:case C.SMALL:case C.STRIKE:case C.STRONG:{vQ(t,e);break}case C.P:{rYt(t);break}case C.DL:case C.UL:case C.OL:case C.DIR:case C.DIV:case C.NAV:case C.PRE:case C.MAIN:case C.MENU:case C.ASIDE:case C.BUTTON:case C.CENTER:case C.FIGURE:case C.FOOTER:case C.HEADER:case C.HGROUP:case C.DIALOG:case C.ADDRESS:case C.ARTICLE:case C.DETAILS:case C.SEARCH:case C.SECTION:case C.SUMMARY:case C.LISTING:case C.FIELDSET:case C.BLOCKQUOTE:case C.FIGCAPTION:{eYt(t,e);break}case C.LI:{nYt(t);break}case C.DD:case C.DT:{sYt(t,e);break}case C.H1:case C.H2:case C.H3:case C.H4:case C.H5:case C.H6:{iYt(t);break}case C.BR:{oYt(t);break}case C.BODY:{Xzt(t,e);break}case C.HTML:{Zzt(t,e);break}case C.FORM:{tYt(t);break}case C.APPLET:case C.OBJECT:case C.MARQUEE:{aYt(t,e);break}case C.TEMPLATE:{Ch(t,e);break}default:Nke(t,e)}}function Oke(t,e){t.tmplInsertionModeStack.length>0?Wke(t,e):IQ(t,e)}function cYt(t,e){var r;e.tagID===C.SCRIPT&&((r=t.scriptHandler)===null||r===void 0||r.call(t,t.openElements.current)),t.openElements.pop(),t.insertionMode=t.originalInsertionMode}function uYt(t,e){t._err(e,me.eofInElementThatCanContainOnlyText),t.openElements.pop(),t.insertionMode=t.originalInsertionMode,t.onEof(e)}function EQ(t,e){if(t.openElements.currentTagId!==void 0&&Ike.has(t.openElements.currentTagId))switch(t.pendingCharacterTokens.length=0,t.hasNonWhitespacePendingCharacterToken=!1,t.originalInsertionMode=t.insertionMode,t.insertionMode=te.IN_TABLE_TEXT,e.type){case xr.CHARACTER:{kke(t,e);break}case xr.WHITESPACE_CHARACTER:{Pke(t,e);break}}else bv(t,e)}function lYt(t,e){t.openElements.clearBackToTableContext(),t.activeFormattingElements.insertMarker(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_CAPTION}function dYt(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_COLUMN_GROUP}function fYt(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(de.COLGROUP,C.COLGROUP),t.insertionMode=te.IN_COLUMN_GROUP,CQ(t,e)}function pYt(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_TABLE_BODY}function mYt(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(de.TBODY,C.TBODY),t.insertionMode=te.IN_TABLE_BODY,_D(t,e)}function hYt(t,e){t.openElements.hasInTableScope(C.TABLE)&&(t.openElements.popUntilTagNamePopped(C.TABLE),t._resetInsertionMode(),t._processStartTag(e))}function gYt(t,e){Rke(e)?t._appendElement(e,Ee.HTML):bv(t,e),e.ackSelfClosing=!0}function AYt(t,e){!t.formElement&&t.openElements.tmplCount===0&&(t._insertElement(e,Ee.HTML),t.formElement=t.openElements.current,t.openElements.pop())}function Bx(t,e){switch(e.tagID){case C.TD:case C.TH:case C.TR:{mYt(t,e);break}case C.STYLE:case C.SCRIPT:case C.TEMPLATE:{ou(t,e);break}case C.COL:{fYt(t,e);break}case C.FORM:{AYt(t,e);break}case C.TABLE:{hYt(t,e);break}case C.TBODY:case C.TFOOT:case C.THEAD:{pYt(t,e);break}case C.INPUT:{gYt(t,e);break}case C.CAPTION:{lYt(t,e);break}case C.COLGROUP:{dYt(t,e);break}default:bv(t,e)}}function xv(t,e){switch(e.tagID){case C.TABLE:{t.openElements.hasInTableScope(C.TABLE)&&(t.openElements.popUntilTagNamePopped(C.TABLE),t._resetInsertionMode());break}case C.TEMPLATE:{Ch(t,e);break}case C.BODY:case C.CAPTION:case C.COL:case C.COLGROUP:case C.HTML:case C.TBODY:case C.TD:case C.TFOOT:case C.TH:case C.THEAD:case C.TR:break;default:bv(t,e)}}function bv(t,e){let r=t.fosterParentingEnabled;t.fosterParentingEnabled=!0,bD(t,e),t.fosterParentingEnabled=r}function Pke(t,e){t.pendingCharacterTokens.push(e)}function kke(t,e){t.pendingCharacterTokens.push(e),t.hasNonWhitespacePendingCharacterToken=!0}function pv(t,e){let r=0;if(t.hasNonWhitespacePendingCharacterToken)for(;r0&&t.openElements.currentTagId===C.OPTION&&t.openElements.tagIDs[t.openElements.stackTop-1]===C.OPTGROUP&&t.openElements.pop(),t.openElements.currentTagId===C.OPTGROUP&&t.openElements.pop();break}case C.OPTION:{t.openElements.currentTagId===C.OPTION&&t.openElements.pop();break}case C.SELECT:{t.openElements.hasInSelectScope(C.SELECT)&&(t.openElements.popUntilTagNamePopped(C.SELECT),t._resetInsertionMode());break}case C.TEMPLATE:{Ch(t,e);break}default:}}function SYt(t,e){let r=e.tagID;r===C.CAPTION||r===C.TABLE||r===C.TBODY||r===C.TFOOT||r===C.THEAD||r===C.TR||r===C.TD||r===C.TH?(t.openElements.popUntilTagNamePopped(C.SELECT),t._resetInsertionMode(),t._processStartTag(e)):Lke(t,e)}function vYt(t,e){let r=e.tagID;r===C.CAPTION||r===C.TABLE||r===C.TBODY||r===C.TFOOT||r===C.THEAD||r===C.TR||r===C.TD||r===C.TH?t.openElements.hasInTableScope(r)&&(t.openElements.popUntilTagNamePopped(C.SELECT),t._resetInsertionMode(),t.onEndTag(e)):Mke(t,e)}function IYt(t,e){switch(e.tagID){case C.BASE:case C.BASEFONT:case C.BGSOUND:case C.LINK:case C.META:case C.NOFRAMES:case C.SCRIPT:case C.STYLE:case C.TEMPLATE:case C.TITLE:{ou(t,e);break}case C.CAPTION:case C.COLGROUP:case C.TBODY:case C.TFOOT:case C.THEAD:{t.tmplInsertionModeStack[0]=te.IN_TABLE,t.insertionMode=te.IN_TABLE,Bx(t,e);break}case C.COL:{t.tmplInsertionModeStack[0]=te.IN_COLUMN_GROUP,t.insertionMode=te.IN_COLUMN_GROUP,CQ(t,e);break}case C.TR:{t.tmplInsertionModeStack[0]=te.IN_TABLE_BODY,t.insertionMode=te.IN_TABLE_BODY,_D(t,e);break}case C.TD:case C.TH:{t.tmplInsertionModeStack[0]=te.IN_ROW,t.insertionMode=te.IN_ROW,SD(t,e);break}default:t.tmplInsertionModeStack[0]=te.IN_BODY,t.insertionMode=te.IN_BODY,ji(t,e)}}function CYt(t,e){e.tagID===C.TEMPLATE&&Ch(t,e)}function Wke(t,e){t.openElements.tmplCount>0?(t.openElements.popUntilTagNamePopped(C.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode(),t.onEof(e)):IQ(t,e)}function TYt(t,e){e.tagID===C.HTML?ji(t,e):xD(t,e)}function $ke(t,e){var r;if(e.tagID===C.HTML){if(t.fragmentContext||(t.insertionMode=te.AFTER_AFTER_BODY),t.options.sourceCodeLocationInfo&&t.openElements.tagIDs[0]===C.HTML){t._setEndLocation(t.openElements.items[0],e);let n=t.openElements.items[1];n&&!(!((r=t.treeAdapter.getNodeSourceCodeLocation(n))===null||r===void 0)&&r.endTag)&&t._setEndLocation(n,e)}}else xD(t,e)}function xD(t,e){t.insertionMode=te.IN_BODY,bD(t,e)}function wYt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.FRAMESET:{t._insertElement(e,Ee.HTML);break}case C.FRAME:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case C.NOFRAMES:{ou(t,e);break}default:}}function RYt(t,e){e.tagID===C.FRAMESET&&!t.openElements.isRootHtmlElementCurrent()&&(t.openElements.pop(),!t.fragmentContext&&t.openElements.currentTagId!==C.FRAMESET&&(t.insertionMode=te.AFTER_FRAMESET))}function NYt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.NOFRAMES:{ou(t,e);break}default:}}function OYt(t,e){e.tagID===C.HTML&&(t.insertionMode=te.AFTER_AFTER_FRAMESET)}function PYt(t,e){e.tagID===C.HTML?ji(t,e):AD(t,e)}function AD(t,e){t.insertionMode=te.IN_BODY,bD(t,e)}function kYt(t,e){switch(e.tagID){case C.HTML:{ji(t,e);break}case C.NOFRAMES:{ou(t,e);break}default:}}function DYt(t,e){e.chars=_n,t._insertCharacters(e)}function BYt(t,e){t._insertCharacters(e),t.framesetOk=!1}function Fke(t){for(;t.treeAdapter.getNamespaceURI(t.openElements.current)!==Ee.HTML&&t.openElements.currentTagId!==void 0&&!t._isIntegrationPoint(t.openElements.currentTagId,t.openElements.current);)t.openElements.pop()}function LYt(t,e){if(yke(e))Fke(t),t._startTagOutsideForeignContent(e);else{let r=t._getAdjustedCurrentElement(),n=t.treeAdapter.getNamespaceURI(r);n===Ee.MATHML?xQ(e):n===Ee.SVG&&(xke(e),bQ(e)),gD(e),e.selfClosing?t._appendElement(e,n):t._insertElement(e,n),e.ackSelfClosing=!0}}function MYt(t,e){if(e.tagID===C.P||e.tagID===C.BR){Fke(t),t._endTagOutsideForeignContent(e);return}for(let r=t.openElements.stackTop;r>0;r--){let n=t.openElements.items[r];if(t.treeAdapter.getNamespaceURI(n)===Ee.HTML){t._endTagOutsideForeignContent(e);break}let s=t.treeAdapter.getTagName(n);if(s.toLowerCase()===e.tagName){e.tagName=s,t.openElements.shortenToLength(r);break}}}var wUr=String.prototype.codePointAt==null?(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e):(t,e)=>t.codePointAt(e);function Uke(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var qke=Uke(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),jke=Uke(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var WYt=new Set([de.AREA,de.BASE,de.BASEFONT,de.BGSOUND,de.BR,de.COL,de.EMBED,de.FRAME,de.HR,de.IMG,de.INPUT,de.KEYGEN,de.LINK,de.META,de.PARAM,de.SOURCE,de.TRACK,de.WBR]);function $Yt(t,e){return e.treeAdapter.isElementNode(t)&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML&&WYt.has(e.treeAdapter.getTagName(t))}var FYt={treeAdapter:gc,scriptingEnabled:!0};function TQ(t,e){let r={...FYt,...e};return Hke(t,r)}function UYt(t,e){let r="",n=e.treeAdapter.isElementNode(t)&&e.treeAdapter.getTagName(t)===de.TEMPLATE&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML?e.treeAdapter.getTemplateContent(t):t,s=e.treeAdapter.getChildNodes(n);if(s)for(let i of s)r+=Hke(i,e);return r}function Hke(t,e){return e.treeAdapter.isElementNode(t)?qYt(t,e):e.treeAdapter.isTextNode(t)?HYt(t,e):e.treeAdapter.isCommentNode(t)?QYt(t,e):e.treeAdapter.isDocumentTypeNode(t)?GYt(t,e):""}function qYt(t,e){let r=e.treeAdapter.getTagName(t);return`<${r}${jYt(t,e)}>${$Yt(t,e)?"":`${UYt(t,e)}`}`}function jYt(t,{treeAdapter:e}){let r="";for(let n of e.getAttrList(t)){if(r+=" ",n.namespace)switch(n.namespace){case Ee.XML:{r+=`xml:${n.name}`;break}case Ee.XMLNS:{n.name!=="xmlns"&&(r+="xmlns:"),r+=n.name;break}case Ee.XLINK:{r+=`xlink:${n.name}`;break}default:r+=`${n.prefix}:${n.name}`}else r+=n.name;r+=`="${qke(n.value)}"`}return r}function HYt(t,e){let{treeAdapter:r}=e,n=r.getTextNodeContent(t),s=r.getParentNode(t),i=s&&r.isElementNode(s)&&r.getTagName(s);return i&&r.getNamespaceURI(s)===Ee.HTML&&yQ(i,e.scriptingEnabled)?n:jke(n)}function QYt(t,{treeAdapter:e}){return``}function GYt(t,{treeAdapter:e}){return``}function Qke(t,e){return Dx.parse(t,e)}function Gke(t,e,r){typeof t=="string"&&(r=e,e=t,t=null);let n=Dx.getFragmentParser(t,r);return n.tokenizer.write(e,!0),n.getFragment()}function Kke(t){let e=t.includes('"')?"'":'"';return e+t+e}function KYt(t,e,r){let n="!DOCTYPE ";return t&&(n+=t),e?n+=` PUBLIC ${Kke(e)}`:r&&(n+=" SYSTEM"),r&&(n+=` ${Kke(r)}`),n}var jd={isCommentNode:_h,isElementNode:st,isTextNode:Va,createDocument(){let t=new _o([]);return t["x-mode"]=dD.DOCUMENT_MODE.NO_QUIRKS,t},createDocumentFragment(){return new _o([])},createElement(t,e,r){let n=Object.create(null),s=Object.create(null),i=Object.create(null);for(let o=0;owk(a)&&a.name==="!doctype");i?i.data=s??null:(i=new bh("!doctype",s),jd.appendChild(t,i)),i["x-name"]=e,i["x-publicId"]=r,i["x-systemId"]=n},setDocumentMode(t,e){t["x-mode"]=e},getDocumentMode(t){return t["x-mode"]},detachNode(t){if(t.parent){let e=t.parent.children.indexOf(t),{prev:r,next:n}=t;t.prev=null,t.next=null,r&&(r.next=n),n&&(n.prev=r),t.parent.children.splice(e,1),t.parent=null}},insertText(t,e){let r=t.children[t.children.length-1];r&&Va(r)?r.data+=e:jd.appendChild(t,jd.createTextNode(e))},insertTextBefore(t,e,r){let n=t.children[t.children.indexOf(r)-1];n&&Va(n)?n.data+=e:jd.insertBefore(t,jd.createTextNode(e),r)},adoptAttributes(t,e){for(let r=0;r=Ve.Zero&&t<=Ve.Nine}function zYt(t){return t>=Ve.LowerA&&t<=Ve.LowerZ||t>=Ve.UpperA&&t<=Ve.UpperZ}function YYt(t){return t>=Ve.UpperA&&t<=Ve.UpperF||t>=Ve.LowerA&&t<=Ve.LowerF}var cu;(function(t){t[t.NoValue=0]="NoValue",t[t.Unquoted=1]="Unquoted",t[t.Single=2]="Single",t[t.Double=3]="Double"})(cu||(cu={}));var Xa={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},Lx=class{constructor({xmlMode:e=!1,decodeEntities:r=!0},n){this.cbs=n,this.state=ve.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=ve.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=e,this.decodeEntities=r,this.entityTrie=e?Nk:Rk}reset(){this.state=ve.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=ve.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()}end(){this.running&&this.finish()}pause(){this.running=!1}resume(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=ve.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===Ve.Amp&&(this.state=ve.BeforeEntity)}stateSpecialStartSequence(e){let r=this.sequenceIndex===this.currentSequence.length;if(!(r?vD(e):(e|32)===this.currentSequence[this.sequenceIndex]))this.isSpecial=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=ve.InTagName,this.stateInTagName(e)}stateInSpecialTag(e){if(this.sequenceIndex===this.currentSequence.length){if(e===Ve.Gt||Hd(e)){let r=this.index-this.currentSequence.length;if(this.sectionStart>14)-1;if(!this.allowLegacyEntity()&&e!==Ve.Semi)this.trieIndex+=n;else{let s=this.index-this.entityExcess+1;s>this.sectionStart&&this.emitPartial(this.sectionStart,s),this.entityResult=this.trieIndex,this.trieIndex+=n,this.entityExcess=0,this.sectionStart=this.index+1,n===0&&this.emitNamedEntity()}}}emitNamedEntity(){if(this.state=this.baseState,this.entityResult===0)return;switch((this.entityTrie[this.entityResult]&fc.VALUE_LENGTH)>>14){case 1:{this.emitCodePoint(this.entityTrie[this.entityResult]&~fc.VALUE_LENGTH);break}case 2:{this.emitCodePoint(this.entityTrie[this.entityResult+1]);break}case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}}stateBeforeNumericEntity(e){(e|32)===Ve.LowerX?(this.entityExcess++,this.state=ve.InHexEntity):(this.state=ve.InNumericEntity,this.stateInNumericEntity(e))}emitNumericEntity(e){let r=this.index-this.entityExcess-1;r+2+ +(this.state===ve.InHexEntity)!==this.index&&(r>this.sectionStart&&this.emitPartial(this.sectionStart,r),this.sectionStart=this.index+Number(e),this.emitCodePoint(ZS(this.entityResult))),this.state=this.baseState}stateInNumericEntity(e){e===Ve.Semi?this.emitNumericEntity(!0):Yke(e)?(this.entityResult=this.entityResult*10+(e-Ve.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}stateInHexEntity(e){e===Ve.Semi?this.emitNumericEntity(!0):Yke(e)?(this.entityResult=this.entityResult*16+(e-Ve.Zero),this.entityExcess++):YYt(e)?(this.entityResult=this.entityResult*16+((e|32)-Ve.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}allowLegacyEntity(){return!this.xmlMode&&(this.baseState===ve.Text||this.baseState===ve.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===ve.Text||this.state===ve.InSpecialTag&&this.sequenceIndex===0?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):(this.state===ve.InAttributeValueDq||this.state===ve.InAttributeValueSq||this.state===ve.InAttributeValueNq)&&(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))}shouldContinue(){return this.index0&&a.has(this.stack[this.stack.length-1]);){let o=this.stack.pop();(n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,o,!0)}this.isVoidElement(e)||(this.stack.push(e),eDe.has(e)?this.foreignContext.push(!0):tDe.has(e)&&this.foreignContext.push(!1)),(i=(s=this.cbs).onopentagname)===null||i===void 0||i.call(s,e),this.cbs.onopentag&&(this.attribs={})}endOpenTag(e){var r,n;this.startIndex=this.openTagStart,this.attribs&&((n=(r=this.cbs).onopentag)===null||n===void 0||n.call(r,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""}onopentagend(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1}onclosetag(e,r){var n,s,i,a,o,c;this.endIndex=r;let u=this.getSlice(e,r);if(this.lowerCaseTagNames&&(u=u.toLowerCase()),(eDe.has(u)||tDe.has(u))&&this.foreignContext.pop(),this.isVoidElement(u))!this.options.xmlMode&&u==="br"&&((s=(n=this.cbs).onopentagname)===null||s===void 0||s.call(n,"br"),(a=(i=this.cbs).onopentag)===null||a===void 0||a.call(i,"br",{},!0),(c=(o=this.cbs).onclosetag)===null||c===void 0||c.call(o,"br",!1));else{let l=this.stack.lastIndexOf(u);if(l!==-1)if(this.cbs.onclosetag){let d=this.stack.length-l;for(;d--;)this.cbs.onclosetag(this.stack.pop(),d!==0)}else this.stack.length=l;else!this.options.xmlMode&&u==="p"&&(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=r+1}onselfclosingtag(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)}closeCurrentTag(e){var r,n;let s=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===s&&((n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,s,!e),this.stack.pop())}onattribname(e,r){this.startIndex=e;let n=this.getSlice(e,r);this.attribname=this.lowerCaseAttributeNames?n.toLowerCase():n}onattribdata(e,r){this.attribvalue+=this.getSlice(e,r)}onattribentity(e){this.attribvalue+=bx(e)}onattribend(e,r){var n,s;this.endIndex=r,(s=(n=this.cbs).onattribute)===null||s===void 0||s.call(n,this.attribname,this.attribvalue,e===cu.Double?'"':e===cu.Single?"'":e===cu.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""}getInstructionName(e){let r=e.search(ZYt),n=r<0?e:e.substr(0,r);return this.lowerCaseTagNames&&(n=n.toLowerCase()),n}ondeclaration(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`!${s}`,`!${n}`)}this.startIndex=r+1}onprocessinginstruction(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`?${s}`,`?${n}`)}this.startIndex=r+1}oncomment(e,r,n){var s,i,a,o;this.endIndex=r,(i=(s=this.cbs).oncomment)===null||i===void 0||i.call(s,this.getSlice(e,r-n)),(o=(a=this.cbs).oncommentend)===null||o===void 0||o.call(a),this.startIndex=r+1}oncdata(e,r,n){var s,i,a,o,c,u,l,d,f,p;this.endIndex=r;let m=this.getSlice(e,r-n);this.options.xmlMode||this.options.recognizeCDATA?((i=(s=this.cbs).oncdatastart)===null||i===void 0||i.call(s),(o=(a=this.cbs).ontext)===null||o===void 0||o.call(a,m),(u=(c=this.cbs).oncdataend)===null||u===void 0||u.call(c)):((d=(l=this.cbs).oncomment)===null||d===void 0||d.call(l,`[CDATA[${m}]]`),(p=(f=this.cbs).oncommentend)===null||p===void 0||p.call(f)),this.startIndex=r+1}onend(){var e,r;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(let n=this.stack.length;n>0;this.cbs.onclosetag(this.stack[--n],!0));}(r=(e=this.cbs).onend)===null||r===void 0||r.call(e)}reset(){var e,r,n,s;(r=(e=this.cbs).onreset)===null||r===void 0||r.call(e),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,(s=(n=this.cbs).onparserinit)===null||s===void 0||s.call(n,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1}parseComplete(e){this.reset(),this.end(e)}getSlice(e,r){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();let n=this.buffers[0].slice(e-this.bufferOffset,r-this.bufferOffset);for(;r-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),n+=this.buffers[0].slice(0,r-this.bufferOffset);return n}shiftBuffer(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()}write(e){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".write() after done!"));return}this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++)}end(e){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".end() after done!"));return}e&&this.write(e),this.ended=!0,this.tokenizer.end()}pause(){this.tokenizer.pause()}resume(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndexe.xmlMode||e._useHtmlParser2?rDe(t,e):Vke(t,e,r,n)),Me=ZPe(eJt,(t,e)=>e.xmlMode||e._useHtmlParser2?Bk(t,e):zke(t)),tJt=Me([]),{contains:rJt}=r0,{merge:nJt}=r0,{parseHTML:sJt}=r0,{root:iJt}=r0;var Sv="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";function nDe(t,e){return Math.floor(Math.random()*(e-t+1))+t}function Th(t,e,r){var n="";let s=e===void 0?!0:e;for(var i=0;i|《|》/g,"").replace(/\$|#/g," ").trim()}function Hi(t){let e=t/1048576;return e>1024?`${(e/1024).toFixed(2)}GB`:`${parseInt(e).toFixed(0)}MB`}function RQ(t,e){if(!t||!e)return{length:0,sequence:"",offset:0};for(var r="",n=t.length,s=e.length,i=new Array(n),a=0,o=0,c=0;ca&&(a=i[c][l],d=c-i[c][l]+1,o===d?r+=t[c]:(o=d,r="",r+=t.substr(o,c+1-o))));return{length:a,sequence:r,offset:d}}function ml(t,e){let r=[],n=0;for(let i=0;ir[n].lcs.length&&(n=i)}let s=r[n];return{allLCS:r,bestMatch:s,bestMatchIndex:n}}function Qd(t){return new Promise(e=>setTimeout(e,t))}var hl=t=>t.map(e=>e.split(";")[0]+";");var lu=Re(vv(),1),Nv=Re(Jn(),1);var DQ=Re(Jn(),1),wh=require("path"),ms=Re(require("fs"),1),m3e=require("stream");async function aJt(t,e){let r=await he.get(t,{responseType:"stream",headers:Object.assign({Range:"bytes=0-0"},e)}).catch(n=>(console.error(n),n.response||{status:500,data:{}}));if(r&&r.status===206){let n=r.headers["accept-ranges"]==="bytes",s=r.headers["content-range"],i=parseInt(r.headers["content-length"]),a=n||!!s||i===1,o=s?parseInt(s.split("/")[1]):i;return delete r.headers["content-range"],delete r.headers["content-length"],o&&(r.headers["content-length"]=o.toString()),[a,r.headers]}else return[!1,null]}var Cv={},p3e="",Rh=(process.env.NODE_PATH||".")+"/vod_cache",oJt=1024*1024*100;async function h3e(t){try{if(ms.default.existsSync(t)){let e=await ms.default.promises.readdir(t);await Promise.all(e.map(async r=>{let n=`${t}/${r}`;(await ms.default.promises.stat(n)).isDirectory()?await h3e(n):await ms.default.promises.unlink(n)})),await ms.default.promises.rmdir(t)}}catch(e){console.error("Error deleting folder:",e)}}h3e(Rh);function cJt(t){try{ms.default.readdir(Rh,(e,r)=>{if(r)for(let n of r){if(n===t)continue;let s=(0,wh.join)(Rh,n);ms.default.stat(s,(i,a)=>{a&&a.isDirectory()&&ms.default.readdir(s,(o,c)=>{if(c)for(let u of c)u.endsWith(".p")||ms.default.rm((0,wh.join)(s,u),{recursive:!0},()=>{})})})}})}catch(e){console.error(e)}}async function uJt(t,e,r,n,s,i){if(n=n||DQ.default.enc.Hex.stringify(DQ.default.MD5(r)).toString(),p3e!==n&&(cJt(n),p3e=n),!Cv[n]){let[P,B]=await aJt(r,s);if(!P||!B["content-length"]){e.redirect(r);return}Cv[n]=B}let a=!0;await ms.default.promises.access((0,wh.join)(Rh,n)).catch(P=>a=!1),a||await ms.default.promises.mkdir((0,wh.join)(Rh,n),{recursive:!0});let o=parseInt(Cv[n]["content-length"]),c=Math.max(0,parseInt(i?.skipBytes||0)||0),u=Math.min(c,Math.max(0,o-1)),l=o-u;if(!Number.isFinite(l)||l<=0){e.redirect(r);return}let d=0,f=l-1,p={};if(t.headers.range){let P=t.headers.range.trim().replace(/^bytes=/i,"").split("-"),B=P[0]!=="",M=P.length>1&&P[1]!=="";if(M){let D=parseInt(P[1],10);Number.isFinite(D)&&(f=D)}if(B){let D=parseInt(P[0],10);Number.isFinite(D)&&(d=D)}if(d=Math.max(0,Number.isFinite(d)?d:0),!M||!Number.isFinite(f)?f=l-1:f=Math.min(l-1,f),d>f){e.code(416),e.headers({"content-range":`bytes */${l}`});return}Object.assign(p,Cv[n]),p["content-length"]=(f-d+1).toString(),p["content-range"]=`bytes ${d}-${f}/${l}`,e.code(206)}else Object.assign(p,Cv[n]),p["content-length"]=l.toString(),e.code(200);i=i||{chunkSize:1024*512,poolSize:10,timeout:1e3*10};let m=i.chunkSize,h=i.poolSize,A=i.timeout,g=u+d,b=u+f,y=Math.ceil(o/m),x=Math.floor(b/m),v=Math.floor(g/m),I=v,R=!1,w={};for(let P=0;P{(async function M(D){if(R||v>x){B();return}if(D===void 0&&(v-I)*m>=oJt){setTimeout(M,5);return}let L=D!==void 0?D:v++,Z=`${t.id}-${L}`;try{let W=(0,wh.join)(Rh,n,`${t.id}-${L}.p`),F=!0;if(await ms.default.promises.access(W).catch(K=>F=!1),!F){let K=L*m,j=Math.min(o-1,(L+1)*m-1),J=await he.get(r,{responseType:"stream",timeout:A,headers:Object.assign({Range:`bytes=${K}-${j}`},s)}),se=(0,wh.join)(Rh,n,`${t.id}-${L}.dl`),oe=ms.default.createWriteStream(se),ue=setTimeout(()=>{oe.destroy(new Error(`${Z} read timeout`))},A),Ie=new Promise(qe=>{oe.on("finish",async()=>{R?await ms.default.promises.rm(se).catch(Fe=>console.error(Fe)):(await ms.default.promises.rename(se,W).catch(Fe=>console.error(Fe)),w[Z]=W),qe(!0)}),oe.on("error",async Fe=>{console.error(Fe),await ms.default.promises.rm(se).catch(_e=>console.error(_e)),qe(!1)})});J.data.pipe(oe);let we=await Ie;if(clearTimeout(ue),!we){setTimeout(()=>{M(L)},15);return}}setTimeout(M,5)}catch(W){console.error(W),setTimeout(()=>{M(L)},15)}})()});e.headers(p);let N=new m3e.PassThrough;return new Promise(P=>{let B=!0;(async function M(){try{if(I>x||R){N.end(),P();return}if(!B){setTimeout(M,5);return}let D=`${t.id}-${I}`;if(!w[D]){setTimeout(M,5);return}let L=I*m,Z=Math.min(o-1,(I+1)*m-1),W=Math.max(g,L)-L,K=Math.min(b,Z)-L-W+1,j=w[D];delete w[D];let J=await ms.default.promises.open(j,"r");if(K<=0){await J.close().catch(oe=>console.error(oe)),await ms.default.promises.rm(j).catch(oe=>console.error(oe)),I++,setTimeout(M,5);return}let se=Buffer.alloc(K);await J.read(se,0,K,W),await J.close().catch(oe=>console.error(oe)),await ms.default.promises.rm(j).catch(oe=>console.error(oe)),B=N.write(se),B||N.once("drain",()=>{B=!0}),I++,setTimeout(M,5)}catch{setTimeout(M,5)}})()}),N.on("close",async()=>{Object.keys(w).forEach(P=>{P.startsWith(t.id)&&(ms.default.rm(w[P],{recursive:!0},()=>{}),delete w[P])}),R=!0}),N}var Wx=uJt;var F3e=Re(R3e(),1);var SXt=["\u9884\u544A"],vXt=t=>{if(!t)return!1;let e=String(t);return SXt.some(r=>e.includes(r))};function N3e(t){let e=/(E|EP)0?([1-9]\d*).*/.exec(t);if(e)return Number(e[2]);let r=/.*?([1-9]\d*).*/.exec(t);return r?Number(r[1]):null}function O3e(t){return t.replace(/\.[^.]+$/,"").replace(/^(S\d+)?E?P?\d+\.?/i,"")}function P3e(t){return t==null?"":String(t)}function IXt(t,e){let r=P3e(t),n=P3e(e);return r===n?0:r.localeCompare(n,void 0,{numeric:!0,sensitivity:"base"})}function Ps(t,e){let r={};return e.length===0||(e=e.filter(n=>!vXt(n?.vod_name)),e.length===0)||(e.sort((n,s)=>{let i=IXt(n.vod_group,s.vod_group);if(i!==0)return i;let a=N3e(n.vod_name),o=N3e(s.vod_name);if(a!==null&&o!==null&&a!==o)return a-o;let c=O3e(n.vod_name),u=O3e(s.vod_name);return c!==u?c.localeCompare(u):a!==null&&o!==null?a-o:n.vod_name.localeCompare(s.vod_name)}),e=e.map(n=>{let s=Hi(n.vod_size);return{vod_id:n.vod_id,vod_name:iDe("",` ${n.vod_name.replace(/.[^.]+$/,"")} [${s}]`)}}),r.from=t,r.url=e.map(n=>n.vod_name+"$"+n.vod_id).join("#")),r}async function Xn(t,e,r={}){let n=(Array.isArray(t)?t:[t]).filter(Boolean).map(o=>String(o).trim()).filter(o=>o.length>0);if(n.length===0)return"";let s=Number(r?.timeoutMs)>0?Number(r.timeoutMs):5e3,i=Array.isArray(r?.methods)&&r.methods.length>0?r.methods:["HEAD","GET"],a={"User-Agent":l0,...e&&typeof e=="object"?e:{}};return await new Promise(o=>{let c=!1,u=f=>{c||(c=!0,o(f))},l=setTimeout(()=>u(n[0]),s*i.length+200),d=async f=>{for(let p of i)try{let m=await Ae.request({url:f,method:p,headers:a,proxy:!1,timeout:s,maxRedirects:5,validateStatus:()=>!0});if(m?.status>=200&&m.status<400){clearTimeout(l),u(f);return}}catch{}};n.forEach(f=>{d(f)})})}var gl=t=>globalThis.getPanEnabled?globalThis.getPanEnabled(t):!0,l3=t=>gl("ali")&&/www.alipan.com|www.aliyundrive.com/.test(t),d3=t=>gl("quark")&&t.includes("https://pan.quark.cn"),f3=t=>gl("uc")&&t.includes("https://drive.uc.cn"),k3e=t=>gl("tianyi")&&/cloud\.189\.cn/.test(t),D3e=t=>gl("yidong")&&/caiyun\.139\.com|yun\.139\.com/.test(t),B3e=t=>gl("123")&&/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/.test(t),L3e=t=>gl("115")&&(/115.com|anxia.com|115cdn.com/.test(t)||/^(?:magnet:\?|ed2k:\/\/)/i.test(String(t||"").trim())),M3e=t=>gl("baidu")&&/pan\.baidu\.com/.test(t),W3e=t=>gl("xunlei")&&/pan\.xunlei\.com/.test(t),$3e=t=>gl("guangyapan")&&/guangyapan\.com\/s\//.test(t);var Ut=Ss;(function(t,e){let r=Ss,n=t();for(;;)try{if(-parseInt(r(439,"3AZo"))/1+parseInt(r(484,"L83n"))/2+-parseInt(r(1032,"l5&D"))/3*(parseInt(r(950,"66US"))/4)+-parseInt(r(589,"]mj0"))/5*(parseInt(r(925,"*Ewm"))/6)+parseInt(r(940,"c)HT"))/7*(-parseInt(r(850,"yim#"))/8)+-parseInt(r(625,"t2gG"))/9+parseInt(r(809,"erUG"))/10*(parseInt(r(934,"!pe*"))/11)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(p3,-103030+12*48322+-84559*1);function p3(){let t=["g0Xw","smotW4JcV8kT","WO5VzWJcNCovW5dcTxeE","WQa/B8omrmkvWQVcI8kkka","AmowW4xcVSk1WRddHKLC","WPqdWOFcM08","W4KLbcGc","pSofeq","W6n9xG","jCoYW6/dOmkeWOLzgCokfW","rbpdQwldU8o8","aSk+WO7dGG","EIRcM2tdGG","W7qJC8kXbW","DfpdH8o5","W4FdV8ohyW","fSkYWPhdLYldH2pdRa","WQyNtSoLW4pdRmknrW","W5lcOmohWONcQq","WQXUuYJcNW","EHFdJSkbhmkmWOZdLN5O","W7dcI8of","WPaTW6hcPsXs","WObQDG4","W5WXhtiehqlcUCoTWRa","CtmEECoc","WQxcQCo+WONcNrmi","gmoZjG","W63cNCoCWPZcSNdcR29eW5W","WQ0TaCorW5xdPG","WRG0a8ozW4RdSmkIW6WADq","WQ44eSoeW43dPG","E8o7WQlcPve","W7ZdSKhdTMu","WRn1mX5U","x8oxkSk5ia","W4FdUCoa","W5xdUmocC3O","W4hdHNhdI1y","W43dHSoyth8","WO8ayITJs8kdsNPq","WOqJWQlcScvjW6pcJL4C","kY3cTcG","W7dcJSouWQxcShFcTa","W6r/b8o+W5BdPSkMW5K","W7W8W5dcJxVdMwhdGq","mSkMvbpcHG7cGtjiW6G","WRxcQCo2WONcRsuCtMNdTq","w8oEWOlcO0e","AmkVW4pdQCk+WQjQlG","WPHfofi","b8ksW7/cINFdMK9/oxC","WQZcN8o+WOxcSq4","tHNdQ2hdQSoM","W6VcGCoLWQpcTG","jmk9W6lcNuu","kSoLhCkUWOC","cmkBW64","FsLvDCoDCam7fSoT","fCo9W5uCaW","CKJdMmoXiCkbpa","it3cUq","WRTseH5/","CCkfuq","WO1wkK/dHee","C8oCW5/cTmkFWR3dVq","WPaGW5xcPIC","y8oGpCk9","WQpdKCkDW7CM","tSkynIW","W57dSSobka","WOawpCokWQy","WPC6lmoEWOuItG","WPj3yXtcVSo1W5G","WQqXDSoir8k5","oCo4W6BdG8kNn8o1BwlcKW","WOCKW63cTeZdISksvConWPO","WPmYrSoRW4u","WReKuSoatSkVWRdcOSkika","p8ojcr/dNxG","mLtcSSo4","WQyEwrjZ","WQ4LcCov","c8kiWO7dJJ7dNq","zmobW63cVSk3WRRdTufshG","qmkWW68/kq","pCkvW6aKFZxdOSkr","Fmo4WQVcKeO4ca","W79xEGWP","W4ldR8ofyK0SW5hdIaG","netcSSoFWObsWPfaq1C","W6Syx8kt","C8ksW64Fja","WQG8f8orW4ZdSmk1W6WsBW","omoDzJ3cHa","W48qDmkvba","as4wWP/cTG","WRfip1hdRG","FmkgW7uMiW","qxVcGCogzv9RW5pcPhu","w8k/W54","WONcS8o0WPJcKa","WR/dOCktW4yS","FSksvSkoWOS","WO1Eka","FGVdJmkbgmkmW7W","BtqEzSkEFH86pmo7","WRJdTCkMW4SS","WPj6CbdcVSoo","CSkfxSkCWOSbWO4","W5hdImo8xNq","lCoUrJpcLHpcHsnyW4K","W6RdVfJdSx0","gmobgSkHWOS","nJmi","W5WNcsGHeqxcJG","AZmx","smk6W4eqmSkTWPa","DZdcVKZdKCoFWQG","nSoqabtdI2JdNseQWRa","bGu5WOtcSa","sSkxW5GZda","WO4hBc0","DeddNmoZg8kC","ztdcP2ZdNG","WQfseInZ","lSohdCkZ","W5xdV8obyG","WOaGjmoAWOu","zfpdH8oIgW","v8kBgWVdPq","bWy5WPZcSW","WOHJW6dcVr/dKSklv8ktWPO","nmknW703","oK/cRCk/WOvDWOb8rhS","n8o+W67dTCk3WOfj","W6OXW4lcKgddIfldKhFdOW","W6ZdS3W","BXRdJCka","kCoAW5xcUSoeW4rEW7uOnW","jJhcTIxcG8oIsWJdNCoq","iwtdM8kzjtpcN8kmWOJcMG","vSoeW7JcSmkA","W4rSrIW8","mZOO","gSovW4/dOmk/","WPuIW5lcPqtdGSkqxG","WR5+WOtdIsFcMdZcLhJdL8oaWOKWfq","AmogW6JcO8kYWRxdOa","WPqRW6NcQa","WP/dOSkA","aYyG","lf/cImoyx8oyWPddHgjodK8","D8oWWRpcLN0","BqRdJCkyaCkhWQddHW","W6NdVMhdOa","trddI0ZdNq","evpcNmo7WRO","WOKAAG","zdhcPxe","dImJWPVcMa","W4JdUmoDjq","kCoSw8odW6nPt8o8ymoR","hh/dVmkWhq","d8odddxdGa","CCo0WQK","pmk4WQRdSYu","m8oxWOpcR8o3W4bgW7iTnG","Amo0WRtcMMaJd8olWQ/cLW","bMxdL8kxoq","W6GqqSkCleG","AfxdMSoKdCosD8kBWPxcQq","WRGkzaLr","l8oWW7JdLCoT","qby1E8oH","W7ZdPwtdIhC","WQ48h8ozW4W","EsSs","WPf+CbxcVG","WPHbpY5j","W7lcL8oHWQlcJa","WPJdV8kzW7a","WRWOaCozW47dSmo+W4vbna","W6VcNCovWOxcRhtcUh5oW4C","WPLscvldMG","WRy/cGjQDSo+W5ldRv0","v8o/W4KcbW","xSo4W40","aSotymogW7C","W5e9gsSfqL7dIq","nSoiWRlcRmo/","jd06WPBcQYL2","W6mLWOJcJMddHhNdGq","FSoOi8kXoG","gXb5","ECk7beZdHuJcOYzzW4ympq","WPeSW4lcUHu","Ce3dH8oNcG","WOW3lmoiWOuzwq","W6mGpYnUBmozW4O","ymogW5RcUmkNWRO","y03dH8oXemkCb8oDWOy","hmoAW4xdK8oV","W5BdPCoaFW","gmk7DSoBjG","EsSsnmovDG0GlCo7","WPe8jmou","W7auuCkzjeKa","WO4nCdzZzSkuqe5r","WPy9hZOyc14","cSkgWQ/dIqG","pmoyfrpdPNNdGruMWRa","WQm2d11DvSk4W5KdW7ax","bSotW5BdMCkC","W6pdVNJdPa","WOeMWOlcS30","WRi5AmomDCkJWRS","qY7dLfxdIa","DYxdMmkdia","WPCXW6NcUcypW7JdJ1Wz","WRmPc8oeW6FdUmkWW4eyFG","omodbH/dP2/dRt4GWRu","FI/cQwFdTSovWQW7B2C","zmkMftVdKG","W64EjriJ","W7FdImoVnCkj","iJSFWOFcHIL8bq","E8ksmd7dMa","f0flW6rU","vCoRWOtcJf0","W6/cQSojWPRcUW","n8kMW6uUyc4","C1xdNmo9emkpmCosWPS","lmkwW7OZ","pmoAgmkPWPJdG0W","WPmfCbff","oCoIxri","CSobWONcUmkhW4LiW7COFa","WPj3yXtcVSoJW5xcTa","W6ONW5e","DCkUgmkcWQnRi8kPFSoXafa","pYRcQq","fvbAW6LaW5z/yqu8","dmoBWOpcK8o8","W4/dR8or","omktW6C/qa","o8k0zCoSrslcPmkWd8ocW4zL","ttmDla","xSkyid0","w8oiW5SrkG","W7JdRxK","g27dHmkZlG","W7KDwCkElvqgWRpcT8oL","yCkHnCk1aMdcLq","oCoBwSoRW7e","uGNdTM4","h8kEW6lcIxJdM090g3W","W6v7vH4EAa","iYZcPs3cRW","WRXXfqi","pq7cRmoJWO1w","W4xcVSkuW60k","g0tcVG","k2tdGCkzvstcGSkDWP8","sCkYiGddOq","iCoIW7hdUa","WPy1WPFcVMy","vqq9ECoG","pxJdNSku","pwhdHmkpdG","g8oAxmoLW4q","W4W7aq","WOG+W4dcOWtdISkh","WOHRzWVcQa","WQu9qmoJW4NdHSkg","lmoLW6VdLmo8kmolD2lcPa","WQ8LbCovW6FdVmk1","WOjntrhcTa","W4pdPmoq","W70jqmkum14SWQpcGCoV","WQC1ASon","DSo4WRhcKeOLhSopWP7cGa","WRTJorvPySoI","p2JdNSktdZxcJSkiWRNcJq","W6jGEWuCFSkEW6SOW4W","W6xdJCohbmkp","eGejWPdcHW","W4pdSSodyLWSW5hdLqv+","lSkRBmoopW","p8o5xG","WPeNt8oUyq","WPiMCI1S","tI3dImkLpq","gmodjHVdOG","tqZdOgJdMmoNWP7dHCoHFG","Emo0WRtcGvGWgmonWPG","DvldI8oMrmkkoCohWOFdSG","o8ogfmk3","WQ05amoy","iCotaCkoWQO","W4ZdQmowoq","WODCbxddQW","WQSPaCoVW4ZdRCkLWO4sDW","WROPb8oGW5NdU8kFW5iEFG","W5KeFWRcMa","W5aaqCkrda","bSoKpmkrWRq","mmoIW7BdUa","AwVdUSoFka","EGdcOgddG8oi","WPXjo18","B8o/WQ7cJq","pmkwFmoBgWJdRmoilhO","bmo6WQ7cNmom","W7XhFcK/","hmkfW6S","p8ojcX4","lIRcQtBcUq","amksW7dcOvJdM090dxS","k8kpDmoF","j8ogdCkRWO7cSaFdNCo2W7S","W77dTM/dPa","vXldRh4","W40MitqbhqpcPCoLWQ0","W7hcJmofWPZcRq","Amo0WQpcNgC0d8oA","FI4xCCoUCb4","W788W4hcKq","wCkspZNdMCkVdmkDW6tcGa","W58GaZ8","v2dcNSovlG","W7GQlJOa","w8kMW4mD","oCkFWPpcTmoBW5K","nmo0W7pdLq","m8o9xmoCW6uHa8k2umo/","W483rCkuiW","W6S8W4hcRNG","BdusEq","WQaPDmom","WReWvq","W6BdJmoegSk+","C0NdJ8oMg8kHpa","DmoaWORcM1a","W70qvmorj1iFWRldKSoJ","k8oqEmk8WPSCWR/dSq","c8kwW7tcMX7cGW","WRDhzd7cIa","W6JdSSoxk8ku","ldCuWRNcSa","WR3dSCkYW6WH","igzJWOdcNcfGbZKX","EaRdISk4d8khWP3dG3PG","i27dImkYdYRcJ8kiWPq","WPaTW6hcTbzjW6q","WQ8PamoFW43dP8kYW5ySFW","W5pdRCoap8kznrK0WPpcOa","WRdcPCoGWPRcPWG","WQaxhSoV","BSkpvmkDWOaSWONdO1FdQq","Ft8lFCodFaKreCoN","e0rlW68","WRLUwWm","W6VcMCo9WOFcNW","WRxcL8oKWQRcSW","W47dTmotnmkanre","emoYW4/dVCk4","BtJdV8kWba","iSo/sbNcUa","WQ9OkLVdHW","k2hdJmkB","W7bGrs8kEmke","WRKqv8ojW5y","E8ketCkrWPGwW5ldRbxcOW","WOyReSoFWOGkwf8","AmkfwCkkWOSaWPxdHvpdOW","FSo0mSkSg2dcGmkV","CSotWO7cR8oaW4jvW6K8nG","jYyDWQdcMW","WRzIerf+","smk2W4qAgmk2WPDRkSo8","W5JcOCoeWRDsW73cSxPVWRe/WQqh","FCklW5yuaG","omkrEq","tSk8W6qbh8kTWPPP","WQZcJ8oBWRxcRW","W77dVhy","lSkmE8oEgta","c8oGW5VdTCo7","amkbW6lcT0BdKue","w2BcG8otoayRWPhdQNy","WPabB8oZW5S","o8oBWPFcVSo3W4rd","jZNcSa","r2dcNSoo","p0RcOmotWQK","g1vlW68","AuxdMSo8","x8kypt0","vCoBj8kHbW","jSoghmk2WO4","dGiVWQpcSG","WPKCrZzXESkBsNbr","kZVcOYxcR8oLzH3dNmoi","WQa/smogxCkVWQ3cSCkBpG","WPG0r8o9W40","WOr5zIpcRW","aSoreSkqWRW","omk5W63dOmkeWOfEcmk7dW","n8o+W7NdKG","WOa6WORcPq","gSknuCoPgW","DJRcUa","lSogW5VcSSoVWQFdReXhvq","pmoIvHNcMYBcKdjjW7S","WO9vpW","ntSOWPRcMIDnfGCU","arRcUJJcVq","lenwW4Hs","BKddG8oX","rdZcLSopiKvXW5ddR3e","vX7dJ8keiW","lCo4W7ZdG8oxmSo4","o8o4W6VdVG","WR0JCa","o8o7W6tdNSoB","WRa0smo9W4NdQW","WOuHWPdcTq","WPD9CrhcVG","W6VcNCoxWP7cU2lcS1vVW5O","WOj8wIdcKa","W4OShY0tcI7cK8o3WRS","W6y6W4y","eaNcOqVcVq","W7JcM8osWONcRwlcHh50W54","WQPvzIlcLq","ySoAW43cTa","yvtcUCo6aq","WOX9CalcRW","dvldP2/dSa","WRW1zCont8k4WQW","WPb1grv+Cq","W5G6hJirfG","WPrXAX4","umoeW6lcQCkz","gSobesRdTwS","pSovWO/cQ8oJ","FtdcR2JdHmovWQ8W","rmkbn2FdLSkHfCox","W4JdUmoiiCkZpqe0W6pcRG","ndCoWRFcTG","k8offrBdTx/dLW","gSoAsY7cKa","WP7dV8kDW6ek","FCo0WRm","ymohW4ZcJSk0WRVdSKTD","ldhcRcxcG8oZqr3dLSon","WOyXWPhcQ2SO","WQuDcmo6WRq","kmkuW4tcN14","v0FcUSoUaq","WOaZoCon","W5hdPmoBwvS","lSoBWOJcSSoG","WRCcpSoFWRK","lSkCW7OOzIJdTmkqW700","WQlcO8oXWONcSqKZsgpdQa","W6rQrauEACkpW40wW5S","W7W5W57cKgy","WOTEDZpcQq","W407bdy","WPFcR8ouWO/cSq","WQRcTmo3WOhcSq","m8oBW6tdRSo9","W5ldPCoyBKa","WR4Rb8oaW7m","eLtcSSo/W4jzWOfxxZm","W6vMramJ","WOqHWORcVMufz8kOWR5Z","CCoeW78BdKS","iSo5w8owW7C8eSkQ","WO9TzHdcVa","h1HpW650W5PmCem2","CSoqW78t","WQf1hWP+BCoVW5i","CSoaW78mbKO","WPqVo8o2W7e","qSkxCSk8WQO","oCo+uaG","uhVcO8ooaa","ox/dMmkz","oSoWWOhcKCop","WRKLrmo/W6RdPSkotSkwBa","Amo4WRhcKeO4ca","W707W53cIYG","bHaBWRJcMa","pHW5WOlcPa","oSoafq","ACo5WQBcH3ayca","WO18iSoCWOWcwu4wpq","pN3dGCkvdG","WRuJD8oatCkK","WRWkW6VcLa0","EcVcQwtdGW","nmoQqW","W4OMad4","sCkwjIG","WRCXrCoJW4NdVmkr","rNZcNSoB","WPKZW6m","lmosda","W4K8hJm","ddm/WQlcJa","WRDOhqq","i8o+W7tdTCk3WOfj","BmoIm8k9awFcS8k+lSo5","WRdcQmoZWP7cPYuyu2FdPG","W6OyrSkyhLix","iSo5w8oqW7G","DmoxW6e","A8kNWR3cL8k7y8oFzgFcPSo9iW","nKlcSSk/","fCktyCoHbG","WQmSW7lcTedcNW","f8k/WOpdLsJdOhq","oCoUuW7cLXhcScfEW6W","p8kWySoRrcddLCkog8oZW5jhhG","BWpdL8kBgG","WOWDCde","xmk8W5Srcmk2","bNJdLCk1kG","CteEoSosDHC","WQFdRCoIWP7cRq4d","qxVcGCogffvG","p2tdM8kzjs7cIq","B8kovSka","B8oIeSkCma","WOyGWOlcR3OPrSkOWQ5+","W5FdICocxei","W64AxCkvaG","WODalLtdRLXlq8kxkq","WPzAvdlcSG","pmogba/dUgG","W6VdRxRdRa","kCopfG4","WRmYvmoJW4a","x8kRW4CCh8kHWQT6hmo1","DmohW4a","WQ7dGmkNW6ic","bCk0WOhdGJ7dMK/dVsGK","W6Syq8kucq","WQ8fWPVcRhS","k2tdGCkzjs7cIq","FCoToCkRbG","W5NdS8klmmkZnqWKW5lcOW","eCkKWOFdLwldJNxdVqm9","WPHrovVdHuy","fCo9W5Pggmo8","owldVSkicc7cG8kk","lmo0W6VdLmoRm8omF2tcRq","od3cSY/cQCoKwGZdRmoh","W6VcNCobWOdcV3lcVG","W4JdR8ompa","l8oxWP/cSSoAW4HeW7q","WPFcPSogWQJcQG","WO3cQSktyCoQAurHW5RcNGldQduM","lZtcPttcUq","WPPxzfVdHfXesSoxma","WQz2rrZcSq","WPaTW6hcTbzfW7JcLLqh","W5OKWPhcSNyJpSkGWRz/","e8oYW6pdOSknWPO","WRPKdbDOoCk0WO7dUf4","AIiDyCocFa","n8ocWPFcJCo7","W60dxa","C0tdICo5g8kglmoh","xdhcUK/dGG","WRdcTmoZWP7cTGK7vxJdQW","W4evvCkpnG","pSoYW6NdG8o7kmodANNcPW","WP4nCc1lDCkdrNK","W5JcV8kxW6ChWQBdVvbbW78","W79/FqqF","W7NdSh7dPfO","iuJcSmo1W4XBWPToghW","BmoXimk0g3FcJCk+kmo9","xxtcMa","WP4nv8ovW64","p8kgzSoihZNdQCoe","imoTw8oB","omo0W74","lmoscq","B8oJWQS","rWJdK2/dUSoRWP3dSmk8Fa","DsiFFCoqsH8/dCoS","l1ldNmo3uCkApCoqWOVcRa","D8omW6KFda","BSofW4ZcV8kgWR3dTuSChq","jZ3cSZpcVCoXxa","WPmbWRpcT3q","W6vQvHGiC8k8W4K7W54","EmkjumkkWPq","W5xdVSosEvO6W5NdIbH7","WRHNDG3cNq","AHlcSSoEWOXlWOnj","BSoiWRXXiw7dUmkVW7aMiNS","uSk2W5yrcmk2WOC","W5COad4","A8oMWQBcSvS","dKBdOSkjhq","WPiOu8oItq","s8ofWRhcNfm","W5ecbJuL","WRDOca5PzSoeW5xdSem","osZcSINcSSoX","WQqWrCo4W57dQSkbx8oMFq","BmoQe8kHbG","fSokdCkWWRS","cCklW6u","i8oBd8k+WQldVLRcK8o5W7G","odhcTIxcG8o/xq","FSkbs8kz","bCkIWPBdJ2ldNgpdRdu8","jIyPWPxcNtG","a03cH8oAWOa","WOldPmkcW7q","W7hcJmofWPZcRsVdTcv6W4u","W4/dRCojomkR","wc7dKxZdIW","WQqhBCouW4y","pwldNSki","aSk+WOZdGW","g8ooDIZcKW","pmkWaCkaixNcOmkn","ktFcPcNcSSoXzH3dKSoq","WQy1ymoawmkVWRZcHG","WPmzBIfC","WOWFkfVdHfLfr8oBlG","lSouW77dKCoI","W6/cISoLWO/cMG","W4eJx8k7jW","BSo+WPtcGwC4aSoj","jCkFWP3cTmoAW5PgW7iInG","vCoJW5BcL30","WOi7BSosW5G","medcSSoZWOO","pCosdaZdSq","DNNcS8osdW","iSo3s8ow","CYZdN3BdNW","jCo5w8os","WR01C8o2wSkMWR7cI8kLja","W6/dPMhdPhGGWPBdTSoqWO4","EGVdNCkmna","l8oxWOJcTmoDW59eW6uznW","W73dKLJdQKq","rH3dSwC","W6OEx8kj","sSkYW4ugca","j0tcQ8oGWO5zWObgAhO","BmojhmkifG","p8otc8k6WPddUq","mmo1iSkTfY/dJmkUm8o7","WPmyzJDaFCkBqd5z","WO8CyI1J","WONdV8ksW60kWQ4","W73cISoyWPRcUW","kmocjXldPG","urxdTM/dLG","AZmAymoeAG","W6RcJmodWOxcShBcSMXI","W4DLW5BdQZXUFSkBWOHGW718","WO7dOSkFW7ib","o8oaemk2","nmoVW7BdOSkj","WOiLW7tcVX3dUmkxq8ks","WQCLbSoHWOy","nCknW6WQya","WOm3W6JcOXzjW6q","n8obcb8","B8kvue7cOYRdUJabWO7dNIC","WPPvkK7dJq","WQORbCokW6G","rCkdjJNdHSo0v8oxW5tcMq","DLBcVCoKjW","vbBdKSkLoW","Amo3W4pcQmkK","DHRcN2RdHa","fvfsW79C","WRZcRKtdMwCOWRtdLG","WR52BadcTa","zK7dGSoWg8kAeCoq","vCkKW5K","WOi2W6tcVa","DIeu","zSkPW4VdN8oEeCoBta","zmoXgSk2bG","lmkmW7OV","W7ZcLSovWP/cIxJcR2i","omoUqrpcGqVcGYvZW6K","gmksCmo6oa","eCo5qCoa","WPj3yXtcVSoSW4VcTa","vetcR8oqda","WR07qa","W7BdUCkQW5VdTdC4tuBdJmoO","WPqJW6xcTbddGSkqxmkt","yIRcRN3dMCoiWQW7","WQf4grv+sSo/","av/dLmk2ma","W4a5W5FcL1pdMhNdJd7dIW","pSoHW6ZdSCok","WPRdPCkfW6W","WPT7grb9","WQC8tSoDza","CCoaW5RcUq","WOJdVSoa","WPiQW7NcMGu","WPHFjfBdU1XDqW","WOjWzG/cTCoB","wGesFCo+","hCkyW6ZcM0BdQfP0iNC","W6S7W5VcJ3FcGNVcLtdcVG","WPCQgmoPWPe","WP7dICkpW5Wt","o8oxfmkRWPhdQ1ZcL8oiW7W","gCojyCoCW4a","WOy9WPFcUa","hmkdW6hdHG","WPK0ASovW4e","WOSayI0","cSocW7/dKSog","WRq3WQdcVhG","o8ofW6NdQSkU","W5BdQ8obEeS","WO4bDtWOD8kysd5u","WOaXWRhcMvO","WQK1a8ov","dmkfW7xcKvO","E8oOnCkViNJcJCkZcmo8","W6jQwHOhESkyW40wW5y","W58Gat4Peru","WRiNsmoNW4K"];return p3=function(){return t},p3()}var H3e=async t=>{let e=Ss;return globalThis[e(547,"l5&D")]?await globalThis[e(596,"PPq4")](t):t};function CXt(){let t=Ss;return(globalThis[t(946,"L83n")]||[])[t(560,"*Ewm")](r=>r[t(1049,"6)p7")]===t(1088,"J)[o"))||{}}function Q3e(t){let e=Ss,r={KBzxa:function(n,s){return n(s)},pDoFa:function(n,s){return n||s}};return r[e(661,"6)p7")](String,r[e(1109,"J)[o")](t,""))[e(744,"fq[@")](",")[-2897+-2897*-1][e(714,"$HhF")]()}function U3e(t){let e=Ss;return{TqQSs:function(n,s){return n(s)}}[e(632,"c)HT")](Q3e,t)[e(695,"*Ewm")](/^\w+:\/\//,"")[e(872,"erUG")]("/")[-103*-87+4073*2+-17107][e(938,"Y)yb")]()}function Ss(t,e){let r=p3();return Ss=function(n,s){n=n-(-8150+-1777*-1+6753);let i=r[n];if(Ss.OXhLTJ===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;hl},ZvZKu:function(u,l){return u(l)},jAuUr:function(u,l,d,f,p){return u(l,d,f,p)},IVEJI:function(u,l){return u-l}};r=i[s(612,"3AZo")](r,{});let a=t[s(822,"66US")](i[s(1065,"Qx%e")]);Object[s(686,"$HhF")](r,m3),a&&sn[s(1030,"6)p7")]&&Object[s(745,"Mwi6")](r,{Authorization:sn[s(576,"J)[o")]});let o=await he[s(875,"fq[@")](NXt+"/"+t,e,{headers:r})[s(510,"p@yA")](u=>u[s(833,"$fs8")]||{status:500,data:{}}),c=i[s(1006,"p)02")](n,-4789*-1+3240+-8026);return i[s(869,"t06k")](o[s(914,"o%qk")],-15*-13+2380+-2146)&&i[s(1001,"tS!P")](c,2*185+-6*-1123+-1777*4)?(await i[s(1069,"3rkV")](Qd,-163*-17+3*1769+1*-7078),i[s(713,"Y3Ac")](h3,t,e,r,i[s(550,"7oLE")](c,8210+1*-973+-67*108))):o[s(901,"TBbP")]||{}}async function Ac(t,e,r,n){let s=Ut,i={EDJGl:function(c,u){return c||u},eWduz:function(c,u){return c||u},nrdvg:function(c,u){return c===u},vkmhC:function(c,u){return c>u},jRkzF:function(c,u){return c(u)},QqKxY:function(c,u,l,d,f){return c(u,l,d,f)},vWvFq:function(c,u){return c-u}};r=i[s(929,"3zTb")](r,{}),m0[s(1011,"Y3Ac")]&&Object[s(444,"MeVL")](r,{Authorization:m0[s(551,"pLbL")]});let a=await he[s(788,"*Ewm")](OXt+"/"+t,e,{headers:r})[s(762,"L83n")](c=>c[s(398,"PPq4")]||{status:500,data:{}}),o=i[s(1044,"7oLE")](n,5534+1*8516+-14047);return i[s(725,"Y3Ac")](a[s(501,"O6A$")],1018*5+342*15+-9791)&&i[s(783,"tS!P")](o,1385+3326*3+1*-11363)?(await i[s(978,"pLbL")](Qd,1e3),i[s(688,"MeVL")](Ac,t,e,r,i[s(608,"66US")](o,705*-5+-4531+-8057*-1))):a[s(866,"]mj0")]||{}}async function eG(){let t=Ut,e={RcqFW:function(r,n){return rn[t(1004,"IO11")]||{status:500,data:{}});e[t(645,"bUVl")](r[t(1019,"l5&D")],-461*1+-1095+4*439)&&(sn=r[t(399,"!pe*")],sn[t(790,"J)[o")+"e"]=e[t(912,"*Ewm")](lu.default,r[t(399,"!pe*")][t(523,"tS!P")+"e"])[t(450,"Or9[")](),sn[t(640,")3Hd")]=sn[t(991,"Mwi6")]+" "+sn[t(759,"s6oL")+"en"],await e[t(428,"5v4*")](kXt,sn[t(673,"p)02")+t(1051,"]mj0")]))}}async function Y3e(){let t=Ut,e={KBMpW:function(r,n){return r>=n},jHKCT:function(r,n){return r-n},KUJdV:function(r){return r()},rRLEj:function(r,n){return rl>=5862+-19*298&&l<-1*2813+-245*26+-7*-1369}),c=o[t(684,"Mwi6")]?.[t(691,"#(BC")]?.[t(712,"4%*V")]("#")[8134+55*-105+-2358],u=e[t(416,"3rkV")](RXt,c);if(u?.[t(647,"6)p7")+"en"]){let l={...u,auth:(u[t(603,"]mj0")]||e[t(956,"c)HT")])+" "+u[t(678,"p)02")+"en"],expire_time:u[t(1018,"l5&D")]?e[t(677,"6)p7")](e[t(1026,"!pe*")](lu.default)[t(687,"Y3Ac")](),u[t(455,"*Ewm")]):e[t(585,"erUG")](e[t(739,"bUVl")](lu.default)[t(654,"p@yA")](),7200)};await e[t(818,"NEJh")](DXt,l)}}catch(r){console[t(983,"%sKo")](e[t(993,"p@yA")],r[t(843,"6)p7")])}}async function BXt(){let t=Ut,e={UqeBH:function(n,s,i){return n(s,i)},XwMDD:t(784,"5v4*")+t(1009,"p)02"),RePOH:function(n,s){return n>s},ccXFK:t(736,"Qx%e")+t(810,"6)p7")};if(!Al||!sn[t(917,"t2gG")]?.[t(709,"yim#")+t(1105,"J)[o")])return;let r=await e[t(945,"$fs8")](Ac,e[t(731,"]mj0")],{drive_id:sn[t(911,"p)02")][t(944,"3AZo")+t(778,"fq[@")],parent_file_id:Al,limit:100});if(Array[t(516,"mS5d")](r[t(747,"#(BC")])&&e[t(1095,"t2gG")](r[t(716,"66US")][t(1041,"TBbP")],2*-4411+1*-78+-50*-178))for(let n of r[t(1013,"o%qk")])await e[t(1090,"t2gG")](Ac,e[t(674,"Y3Ac")],{drive_id:sn[t(1117,"9)DA")][t(711,"O6A$")+t(666,"c)HT")],file_id:n[t(1014,"66US")]})}async function LXt(){let t=Ut,e={oqmxZ:function(o,c,u){return o(c,u)},kLkGQ:t(1094,"o%qk")+t(633,"%sKo"),fUPjz:t(908,"3rkV")+t(668,"Mwi6"),olNJC:t(902,"tS!P"),dUMMJ:t(1081,"l5&D"),qCqWl:t(602,"Or9["),PQyRd:function(o,c,u){return o(c,u)},qEtwj:t(466,"#(BC")+t(926,"5v4*"),nNqtj:t(817,"o%qk"),xCuXa:t(998,"TBbP")};if(!sn[t(1077,"!8I4")])return null;if(Al)return Al;let r=await e[t(933,")3Hd")](Ac,e[t(1027,"!8I4")],{});if(!r[t(624,"J)[o")+t(865,"6)p7")])return null;sn[t(891,"*Ewm")]=r;let n=r[t(452,"3rkV")+t(761,"tS!P")],s=await e[t(881,"3rkV")](Ac,e[t(844,"p@yA")],{drive_id:n,parent_file_id:e[t(545,"5v4*")],limit:100,order_by:e[t(704,"3zTb")],order_direction:e[t(782,"!8I4")]}),i=Array[t(392,"MeVL")](s[t(747,"#(BC")])?s[t(644,"7oLE")][t(573,"$HhF")](o=>o[t(458,"!pe*")]===j3e):null;return i?.[t(796,"fq[@")]?(Al=i[t(570,"o%qk")],Al):(Al=(await e[t(696,"3AZo")](Ac,e[t(883,"c)HT")],{check_name_mode:e[t(535,"3rkV")],drive_id:n,name:j3e,parent_file_id:e[t(400,"TBbP")],type:e[t(498,"L83n")]}))[t(1075,"bizp")]||null,Al)}async function tG(){let t=Ut,e={omsHC:function(r){return r()},YPbUP:function(r){return r()},ZgsQx:function(r,n,s){return r(n,s)},XZwyu:t(799,"IO11")+t(1031,"p)02")};if(await e[t(479,"3rkV")](eG),await e[t(529,"erUG")](Y3e),!sn[t(623,"x(]*")]?.[t(527,"fq[@")+t(435,"bUVl")]){let r=await e[t(756,"bUVl")](Ac,e[t(643,"s6oL")],{});r[t(709,"yim#")+t(777,"3zTb")]&&(sn[t(561,"6)p7")]=r)}return sn[t(574,"3zTb")]?.[t(412,"bizp")+t(609,"erUG")]||""}async function MXt(t){let e=Ut,r={lJnHu:function(i){return i()},wEVTi:function(i,a){return i||a},vRxve:function(i,a,o){return i(a,o)},CwKMf:e(842,"MeVL")+e(1072,"MeVL")+e(395,"bUVl")},n=await r[e(717,"c)HT")](tG);if(r[e(785,"Y3Ac")](!n,!t))return null;let s=await r[e(474,"p)02")](Ac,r[e(921,"Or9[")],{file_id:t,drive_id:n});return s?.[e(533,"3AZo")]?s:null}async function WXt(t){let e=Ut,r={iJTKV:function(a){return a()},JNfED:function(a,o){return a||o},LRyJJ:function(a,o,c){return a(o,c)},wgvzP:e(486,")3Hd")+e(838,"TBbP")+e(984,"s6oL")+"fo",iXMfB:e(385,"fq[@")+e(910,"t2gG"),sxUEq:e(548,"5v4*")},n=await r[e(552,"9)DA")](tG);if(r[e(746,"Y)yb")](!n,!t))return null;let s=await r[e(954,"fq[@")](Ac,r[e(927,"l5&D")],{file_id:t,drive_id:n,category:r[e(1076,"O6A$")],url_expire_sec:r[e(968,"Or9[")]}),i=s?.[e(658,"3AZo")+e(562,"%sKo")+e(939,"o%qk")];return i?.[e(722,"p@yA")+e(1071,"IO11")]??i?.[e(384,"6)p7")+e(879,"6)p7")+e(475,"yim#")]??null}async function J3e(t,e=Ut(1110,"3rkV"),r=""){let n=Ut,s={paCkc:function(o,c){return o(c)},Xwohl:function(o){return o()},OzCyH:function(o,c,u){return o(c,u)},KhzkC:n(990,"Y3Ac")+n(676,"4%*V"),FxWKg:function(o,c){return o||c},IQGrg:n(425,"t2gG"),TnOCt:n(663,"9)DA"),tYyXw:n(949,"3rkV"),koPNR:function(o,c){return o||c},TorzK:function(o,c){return o(c)}};await s[n(440,"mS5d")](Pv,t);let i=await s[n(404,"bUVl")](tG);if(!i)return{items:[],next_marker:""};let a=await s[n(473,"bizp")](Ac,s[n(413,"fq[@")],{drive_id:i,parent_file_id:s[n(855,"Mwi6")](e,s[n(467,"9sdl")]),limit:200,order_by:s[n(889,"Qx%e")],order_direction:s[n(969,"t2gG")],marker:s[n(424,"p)02")](r,"")});return{items:Array[n(526,"x(]*")](a?.[n(922,"yim#")])?a[n(517,"Y3Ac")]:[],next_marker:s[n(592,"erUG")](String,a?.[n(464,"l5&D")+"r"]||""),drive_id:i}}async function X3e(t){let e=Ut,r={Ikawf:function(n,s){return nc}},n=r[e(794,"tS!P")](typeof t,r[e(616,"Qx%e")])?r[e(719,"l5&D")](K3e,t):t;if(!n)return[];if(await r[e(690,"NEJh")](X3e,n),!p0[n[e(768,"IO11")]])return[];let s=[],i=[],a=async(o,c,u)=>{let l=e,d=await r[l(626,"J)[o")](h3,r[l(930,"PPq4")],{share_id:o,parent_file_id:c,limit:200,order_by:r[l(962,"mS5d")],order_direction:r[l(905,"s6oL")],marker:r[l(821,"#(BC")](u,"")},{"X-Share-Token":p0[o][l(1028,"3rkV")+"n"]}),f=d[l(502,"6)p7")];if(!f)return[];if(d[l(1039,"%sKo")+"r"]){let m=await r[l(613,"5v4*")](a,o,c,d[l(411,"NEJh")+"r"]);for(let h of m)f[l(755,"$HhF")](h)}let p=[];for(let m of f)if(r[l(913,"TBbP")](m[l(583,"Mwi6")],r[l(591,"Y3Ac")]))p[l(571,"4%*V")](m);else if(r[l(437,"s6oL")](m[l(554,"5v4*")],r[l(587,"bizp")])&&r[l(707,"NEJh")](m[l(724,"L83n")],r[l(989,"MeVL")])){if(r[l(655,"$fs8")](m[l(1070,"l5&D")],r[l(694,"bUVl")](r[l(780,"s6oL")](14*-631+-2114+146*82,167*55+-1*-2167+-10328),5)))continue;m[l(1055,"s6oL")]=m[l(924,"*Ewm")][l(805,"p)02")](/玩偶哥.*【神秘的哥哥们】/g,""),s[l(382,"PPq4")](m)}else r[l(721,"O6A$")](m[l(982,"l5&D")],r[l(454,"IO11")])&&m[l(700,"6)p7")+l(480,"3AZo")]&&PXt[l(749,"$HhF")](h=>m[l(813,"Y)yb")+l(1079,"tS!P")][l(943,"p)02")](h))&&i[l(960,"MeVL")](m);for(let m of p){let h=await r[l(1073,"J)[o")](a,m[l(482,"Y3Ac")],m[l(796,"fq[@")]);for(let A of h)f[l(1038,"5v4*")](A)}return f};return await r[e(1101,"7oLE")](a,n[e(742,"bizp")],n[e(936,"9)DA")]),r[e(735,"NEJh")](i[e(1041,"TBbP")],9381+1*-4229+28*-184)&&s[e(1106,"#(BC")](o=>{let c=e,u=r[c(593,"bUVl")](ml,o,i);u[c(825,"3rkV")]&&(o[c(952,"#(BC")]=u[c(539,"bizp")][c(1111,"9)DA")])}),s}var Ph={};async function Z3e(t,e){let r=Ut,n={YxtkF:function(i){return i()},QixHT:function(i){return i()},EkDqD:function(i,a){return i(a)},cHyvO:function(i,a,o,c){return i(a,o,c)},raLkA:r(426,"l5&D")+r(507,"fq[@")};if(await n[r(1085,"5v4*")](eG),await n[r(862,"7oLE")](Y3e),await n[r(848,"Y3Ac")](LXt),!Al||!sn[r(1091,"]mj0")]?.[r(599,"l5&D")+r(520,"l5&D")])return null;if(Ph[e])return Ph[e];await n[r(487,"NEJh")](BXt);for(let i of Object[r(578,"c)HT")](Ph))delete Ph[i];if(await n[r(892,"3zTb")](X3e,{shareId:t}),!p0[t])return null;let s=await n[r(532,"$fs8")](h3,n[r(607,"p)02")],{file_id:e,share_id:t,auto_rename:!0,to_parent_file_id:Al,to_drive_id:sn[r(1117,"9)DA")][r(579,"L83n")+r(1053,"MeVL")]},{"X-Share-Token":p0[t][r(760,"66US")+"n"]});return s[r(1123,"pLbL")]?(Ph[e]=s[r(460,"Mwi6")],s[r(598,"Y)yb")]):null}async function rG(t,e,r=!0){let n=Ut,s={slJtN:function(u,l){return u===l},lkfCK:n(753,"Y)yb"),mbrdt:function(u,l){return u(l)},WaDhE:function(u,l,d){return u(l,d)},naxUW:n(600,"erUG")+n(1066,"Mwi6")+n(500,"%sKo")+"fo",WzZlB:n(525,"bizp")+n(964,"Y3Ac"),QrQLg:n(888,"IO11"),ueRDT:function(u,l){return u&&l},rVTAp:function(u,l,d,f){return u(l,d,f)}};if(s[n(959,"Mwi6")](t,s[n(639,"t06k")]))return await s[n(682,"Y3Ac")](WXt,e);let i=await s[n(594,"t2gG")](Z3e,t,e);if(!i||!sn[n(987,"Qx%e")]?.[n(804,"6)p7")+n(737,"bizp")])return null;let a=await s[n(1083,"tS!P")](Ac,s[n(543,"7oLE")],{file_id:i,drive_id:sn[n(574,"3zTb")][n(709,"yim#")+n(609,"erUG")],category:s[n(1084,"bUVl")],url_expire_sec:s[n(407,"fq[@")]}),o=a?.[n(1035,"66US")+n(896,"Mwi6")+n(831,"3zTb")],c=o?.[n(556,"$fs8")+n(1040,"66US")]??o?.[n(864,"7oLE")+n(660,"bUVl")+n(553,"#(BC")]??null;return s[n(981,"p@yA")](!c,r)?(delete Ph[e],s[n(1082,"3AZo")](rG,t,e,!1)):c}async function eBe(t,e,r=!0){let n=Ut,s={USutN:function(o,c){return o===c},Vebwm:n(937,"J)[o"),QRuoG:function(o,c){return o(c)},WWHIU:function(o,c,u){return o(c,u)},OaKDm:function(o,c,u){return o(c,u)},dusWj:n(538,"TBbP")+n(646,"3rkV")+n(863,"yim#"),IcHFI:function(o,c,u,l){return o(c,u,l)}};if(s[n(976,"c)HT")](t,s[n(471,"9sdl")]))return await s[n(1119,"bUVl")](MXt,e);let i=await s[n(468,"$HhF")](Z3e,t,e);if(!i||!sn[n(1116,"Or9[")]?.[n(899,"NEJh")+n(1048,"9)DA")])return null;let a=await s[n(974,"Qx%e")](Ac,s[n(581,"4%*V")],{file_id:i,drive_id:sn[n(911,"p)02")][n(579,"L83n")+n(758,"pLbL")]});return a[n(394,"t2gG")]?a:r?(delete Ph[e],s[n(730,"l5&D")](eBe,t,e,!1)):null}async function tBe(t){let e=Ut,r={WDTIt:function(i,a){return i(a)},YHUGd:function(i,a){return i(a)},efdEt:function(i,a){return i(a)},dDpfF:function(i,a,o){return i(a,o)},Nafla:function(i,a){return i(a)},DUEcs:e(421,"o%qk")};if(!r[e(457,"pLbL")](l3,t))return null;let n=r[e(557,"NEJh")](K3e,t);if(!n)return null;let s=await r[e(650,"Y3Ac")]($Xt,n);return s=s[e(637,"6)p7")](i=>{let a=e;return{vod_id:[i[a(482,"Y3Ac")],i[a(986,"$HhF")],i[a(620,"s6oL")]?i[a(1033,"4%*V")][a(636,"NEJh")]:""][a(667,"pLbL")]("*"),vod_name:i[a(503,"x(]*")],vod_size:i[a(565,"!pe*")]}}),r[e(1059,"Or9[")](Ps,await r[e(649,"Qx%e")](H3e,r[e(530,"bUVl")]),s)}var Oh={},Fx={};async function g3(t,e){let r=Ut,n={ZBsVT:function(m,h){return m(h)},hJfkN:function(m,h){return m!==h},JQGIR:r(381,"!pe*"),CKOug:function(m,h){return m===h},gVXsG:r(459,"p@yA"),ipJnt:function(m,h){return m(h)},VciOT:function(m,h,A){return m(h,A)},QEDPg:r(870,"t2gG"),qmTwQ:r(961,"!8I4"),gESct:r(463,"Y)yb")+r(789,"Qx%e"),TfTDh:r(449,"o%qk")+r(497,"s6oL"),IAYjI:r(569,"bizp"),Yderw:r(732,"3AZo"),FUBSN:function(m){return m()},MckKA:function(m,h,A,g,b,y,x){return m(h,A,g,b,y,x)},hHuqP:function(m,h){return m*h},kzIwW:function(m,h){return m*h}};await n[r(514,"L83n")](Pv,t);let s=t[r(906,"7oLE")][r(972,"p@yA")],i=t[r(723,"%T3)")][r(975,"3rkV")],a=t[r(1062,"Mwi6")][r(478,"7oLE")],o=t[r(414,"tS!P")][r(1067,"*Ewm")];if(n[r(462,"PPq4")](s,n[r(423,"x(]*")]))return;let c=t[r(800,"5v4*")][r(563,"$fs8")],u=t[r(1017,"l5&D")][r(388,"bUVl")];if(n[r(432,"L83n")](i,n[r(948,"3zTb")])){if(Oh[o]){let A=Oh[o][r(876,"IO11")](g=>g[r(904,"t06k")+"d"][r(648,"Mwi6")+"e"]()===c);A?.[r(763,"%T3)")]&&n[r(941,"s6oL")](q3e,A[r(494,"!pe*")])&&delete Oh[o]}!Oh[o]&&(Oh[o]=await n[r(662,")3Hd")](rG,a,o));let m=Oh[o]?.[r(876,"IO11")](A=>A[r(985,"O6A$")+"d"][r(567,"$HhF")+"e"]()===c);if(!m?.[r(837,"bizp")])return;if(!m[r(797,"s6oL")]){let A=await he[r(698,"bizp")](m[r(819,"tS!P")],{headers:{"User-Agent":l0}});m[r(441,"9)DA")]=F3e[r(422,"Y3Ac")](A[r(750,"9sdl")]);for(let g of m[r(994,"$HhF")][r(728,"x(]*")])!g[r(791,"MeVL")][r(519,"c)HT")](n[r(877,"3AZo")])&&(g[r(485,"6)p7")]=new URL(g[r(754,"*Ewm")],m[r(741,"7oLE")])[r(886,"bizp")]()),g[r(1115,"!8I4")]=g[r(402,"3rkV")],g[r(996,"O6A$")]=g[r(839,"o%qk")+r(597,"fq[@")]+r(1102,"o%qk")}if(u[r(1103,"$HhF")](n[r(1021,"!pe*")])){let A=n[r(495,"fq[@")](parseInt,u[r(805,"p)02")](n[r(1054,"mS5d")],""),10);e[r(807,"NEJh")](m[r(771,"PPq4")][r(820,"9)DA")][A][r(727,"%T3)")]);return}let h=F3e[r(915,"p)02")](m[r(513,"fq[@")]);return e[r(893,"L83n")](-263*17+-4540+-1*-9211)[r(451,"tS!P")]({"content-type":n[r(932,"#(BC")],"content-length":Buffer[r(897,"!pe*")](h)[r(390,"mS5d")]()}),h}Fx[o]?.[r(836,"*Ewm")]&&n[r(827,"O6A$")](q3e,Fx[o][r(741,"7oLE")])&&delete Fx[o],!Fx[o]&&(Fx[o]=await n[r(408,"*Ewm")](eBe,a,o));let l=Fx[o]?.[r(748,"L83n")];if(!l){e[r(1057,"9sdl")](500),e[r(524,"Mwi6")](n[r(808,"66US")]);return}if(n[r(446,"c)HT")](c,n[r(1080,"J)[o")])||n[r(854,"fq[@")](c,n[r(823,"tS!P")])){e[r(880,"Mwi6")](l);return}let d=n[r(1086,"J)[o")](CXt),f=d[r(920,"mS5d")]||27*297+-277*3+-7060,p=d[r(963,"5v4*")]||-5153*-1+12*-50+-4533;return await n[r(651,"7oLE")](Wx,t,e,l,o,m3,{chunkSize:n[r(740,"bUVl")](-6473+-8453*1+-110*-145,f),poolSize:p,timeout:n[r(434,"NEJh")](1822+1*-667+155*-1,-5406*1+-236*-16+1640)})}async function A3(t,e){let r=Ut,n={oOIYm:function(f,p){return f(p)},XoHTh:function(f,p){return f(p)},aeKyu:r(988,")3Hd"),qwaDN:function(f,p){return f+p},MJecm:function(f,p){return f+p},AeMmP:function(f,p){return f(p)},ciTmK:r(814,"p@yA"),rWAXj:function(f,p,m){return f(p,m)}};await n[r(629,"66US")](Pv,t);let s=t[r(1058,"erUG")][r(614,"fq[@")],i=t[r(393,"Y)yb")].id[r(420,"l5&D")]("*"),a=await n[r(410,"IO11")](H3e,n[r(1022,"x(]*")]);if(!s[r(847,"!8I4")](a))return;let o=n[r(853,"bizp")](n[r(1043,"%sKo")](n[r(610,"pLbL")](TXt,t),t[r(601,"66US")][r(868,"bUVl")]),n[r(733,"3zTb")]),c={parse:0,url:[]};i[-3510+-95*87+-11777*-1]&&(c[r(919,"pLbL")]={subt:o+r(657,"MeVL")+i[19*1+-3058*-3+-9193]+"/"+i[-7378+2*884+2806*2]+r(683,"TBbP")});let u=(await n[r(611,"PPq4")](rG,i[-18503+-1*-18503],i[2094+-3*-1411+6326*-1]))?.[r(1010,"Y)yb")](f=>f?.[r(627,"$fs8")])||[];Oh[i[2107+-3571*2+-1*-5036]]=u,u[r(492,"9sdl")]((f,p)=>(p[r(997,"pLbL")+r(641,"9)DA")]||9082+9082*-1)-(f[r(970,"7oLE")+r(605,")3Hd")]||1*7523+7220+-641*23));let l=c[r(515,"$HhF")],d={QHD:"\u8F6C\u7801",FHD:"\u8D85\u6E05",HD:"\u9AD8\u6E05",SD:"\u6807\u6E05",LD:"\u666E\u753B"};return u[r(615,"O6A$")](f=>{let p=r;l[p(499,"TBbP")](d[f[p(693,"erUG")+"d"]]||f[p(572,"9sdl")+"d"]),l[p(772,"3rkV")](o+p(453,"$HhF")+f[p(1016,"p)02")+"d"][p(528,"O6A$")+"e"]()+"/"+i[5525+7*-1237+3134]+"/"+i[-5*-1535+2*-3204+-1266]+p(801,"J)[o"))}),l[r(512,"fq[@")]("\u4EE3\u7406"),l[r(544,"erUG")](o+r(481,"NEJh")+i[-5006+-1*3631+8637]+"/"+i[5130*-1+-7177*1+12308]+r(505,"t2gG")),l[r(509,"pLbL")]("\u539F\u753B"),l[r(942,"yim#")](o+(r(840,"9)DA")+r(765,"t06k"))+i[-15027+-1*-15027]+"/"+i[-2711+-14*43+-1657*-2]+r(1047,"J)[o")),c}var sG=Re(Jn(),1);function du(t,e){let r=b3();return du=function(n,s){n=n-(-6519+-227*-5+-226*-25);let i=r[n];if(du.woRUlk===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h{let e=du;return globalThis[e(868,"fLji")]?await globalThis[e(717,"n*PT")](t):t},FXt=[je(451,"HMO1"),je(964,"wgCG"),je(1034,"n*PT"),je(279,"s]bs"),je(356,"i#*h"),je(396,"PlI^"),je(534,"Ybex"),je(553,"uZ@5"),je(1001,"%hwX"),je(357,"2vLy"),je(294,"oODV"),je(612,"!$Ln"),je(474,"PlI^"),je(767,"%Z*W"),je(483,"Fzxt"),je(885,"3M6]")],UXt=t=>{let e=je,r={jEbGA:function(s,i){return s(i)}};if(!t)return!1;let n=r[e(921,"QWuT")](String,t)[e(531,"oODV")+"e"]();return FXt[e(520,"3M6]")](s=>n[e(705,"uZ@5")](s))};function uBe(t){let e=je,r={LtHxp:function(n,s){return n(s)},gqGvX:function(n,s){return n||s}};return r[e(631,"jMYK")](String,r[e(611,"n*PT")](t,""))[e(578,"s]bs")](",")[-7562+-199*-38][e(824,"j*zV")]()}function nBe(t){let e=je;return{gaTDe:function(n,s){return n(s)}}[e(633,"wgCG")](uBe,t)[e(976,"FlDb")](/^\w+:\/\//,"")[e(594,"wgCG")]("/")[-2333+-1*8585+-103*-106][e(270,"PLva")]()}function qXt(t){let e=je,r={jCacr:function(u,l){return u(l)},RQJuJ:function(u,l){return u(l)},RCvCL:e(874,"n&P]")+e(1068,"nTP("),PFSfj:e(919,"Ybex")+e(618,"Fzxt"),MiUat:e(1019,"nTP("),UeTbg:e(1024,"sAc1"),CLIZv:e(299,"3P7O"),Zojgv:function(u,l){return u(l)}},n=r[e(697,"PLva")](String,t?.[e(615,"smET")]?.[e(954,"lFql")]?.()?.[e(574,"Tf(V")]||"")[e(730,"q0$o")](),s=r[e(908,"Wg$5")](nBe,t?.[e(571,"M9FG")]?.[r[e(319,"%hwX")]]),i=s||r[e(842,"sAc1")](nBe,t?.[e(852,"q@6)")]?.[e(580,"5f2!")]);if(!i)return n;let a=r[e(526,"R[2q")](uBe,t?.[e(700,"lQpT")]?.[r[e(282,"fLji")]]),o=n[e(1082,"j*zV")](r[e(644,"Flqq")])?r[e(859,"s]bs")]:r[e(373,"p3E!")];return(a||r[e(537,"n*PT")](String,t?.[e(544,"lFql")]||"")[e(274,"fLji")]()||o)+e(310,"R[2q")+i}function lBe(t){let e=je,r=/https:\/\/pan\.quark\.cn\/s\/([^\\|#/]+)/,n=r[e(435,"Z[9h")](t);return n?{shareId:n[1],folderId:"0"}:null}var Za=je(421,"s]bs")+je(809,"4iKp"),qx={"User-Agent":je(648,"3P7O")+je(677,"Flqq")+je(849,"3M6]")+je(903,"Flqq")+je(514,"lQpT")+je(1e3,"FlDb")+je(759,")2Yv")+je(323,"!$Ln")+je(973,"Flqq")+je(496,"jMYK")+je(858,"q0$o")+je(848,"sAc1")+je(1046,"IwqU")+je(458,"p3E!")+je(343,"PLva")+je(481,"%e99")+je(911,"yxuT")+je(872,"M9FG")+je(997,"PLva")+"ch",Referer:je(958,"%e99")+je(762,"3ASk")},iG=null,y3=null,sBe=je(1051,"PlI^")+je(590,"3ASk")+je(975,"Ybex")+je(657,"sAc1"),yc="",zd={},iBe=je(269,"Ybex"),Dh=null;async function kv(t){let e=je;iG=t[e(455,"snsi")].db;let r=t[e(409,"p3E!")][e(685,"3ASk")][e(729,"n*PT")];yc=r[e(1070,"uZ@5")],y3=sG.default[e(794,"lQpT")][e(831,"lFql")][e(773,"Z[9h")](sG.default[e(869,"IwqU")](r[e(977,"M9FG")]))[e(586,"PlI^")]();let n=await iG[e(545,"Z[9h")+e(601,"fLji")](e(609,"3ASk"),{});n[y3]&&(yc=n[y3])}async function eo(t,e,r,n,s){let i=je,a={rqgRf:function(u,l){return u===l},SyYRB:function(u,l){return u(l)},rhuEs:i(856,"BYRA"),RpcAe:i(368,"3P7O")+i(549,"3ASk")+i(905,"3ASk"),nlObe:function(u,l){return u===l},HWzCR:function(u,l){return u||l},iqsnW:function(u,l){return u||l},zOsls:i(500,"%e99"),qSmoq:function(u,l){return u==l},KjZNS:i(348,"p3E!"),zCRHm:function(u,l){return u||l},sgsma:i(507,"i#*h"),vTTwS:i(518,"jMYK"),TxcgE:function(u,l){return u!=l},zYeIY:function(u,l){return u>l},SzeLp:function(u,l,d,f,p,m){return u(l,d,f,p,m)},sTnAy:function(u,l){return u-l}};r=a[i(428,"%e99")](r,{}),Object[i(469,"sAc1")](r,qx),Object[i(505,"oODV")](r,{Cookie:a[i(475,"yxuT")](yc,"")}),n=a[i(649,"lQpT")](n,a[i(328,"n&P]")]);let o=a[i(670,"betL")](n,a[i(513,"LdZ7")])?await he[i(687,"LdZ7")](sBe+"/"+t,{headers:r})[i(785,"smET")](u=>{let l=i;return console[l(452,"%hwX")](u),a[l(1062,"lFql")](u?.[l(690,"3M6]")]?.[l(371,"fLji")],-6*373+2001*-1+4640)&&a[l(605,"fLji")](messageToDart,{action:a[l(966,"!$Ln")],opt:{message:a[l(591,"R[2q")],duration:5}}),u[l(889,"Gmb(")]||{status:500,data:{}}}):await he[i(1012,"4iKp")](sBe+"/"+t,e,{headers:r})[i(515,"fLji")](u=>{let l=i;return console[l(497,")2Yv")](u),a[l(846,"Z[9h")](u?.[l(880,"Wg$5")]?.[l(804,"lFql")],3246+-1478*-1+393*-11)&&a[l(397,"3ASk")](messageToDart,{action:a[l(1081,"BYRA")],opt:{message:a[l(334,"%hwX")],duration:5}}),u[l(655,"Flqq")]||{status:500,data:{}}}),c=a[i(838,")2Yv")](s,-5853+183*32);if(o[i(566,"2vLy")][a[i(845,"p3E!")]]){let u=o[i(527,"Flqq")][a[i(639,"4iKp")]][i(707,"uZ@5")](a[i(548,"2vLy")])[i(364,"uZ@5")](/__puus=([^;]+)/);u&&a[i(1029,"%hwX")](yc[i(613,"lQpT")](/__puus=([^;]+)/)[-33*81+-3*-3314+-7268],u[-4717+-2*-2419+60*-2])&&(yc=yc[i(302,"jMYK")](/__puus=[^;]+/,i(939,"Ybex")+u[-278*11+4653+-1594]),await iG[i(506,"LdZ7")](i(751,"i#*h")+y3,yc))}return a[i(738,"PLva")](o[i(536,"wrcr")],-11*-174+-110*-20+-3685)&&a[i(808,"smET")](c,-1865+-7233*-1+122*-44)?(await a[i(658,"q0$o")](Qd,79*13+-8794+8767*1),await a[i(857,"Fzxt")](eo,t,e,r,n,a[i(810,"fLji")](c,-1*-4129+4*-1075+-86*-2))):o[i(460,"Z[9h")]||{}}async function aBe(){let t=je,e={PZjHB:function(n,s,i,a,o){return n(s,i,a,o)},mlQMM:t(422,"3M6]"),sxGpW:function(n,s){return n>s},aDoUC:function(n,s,i){return n(s,i)}},r=await e[t(741,"!$Ln")](eo,t(317,"M9FG")+Za+t(547,"Wg$5")+Dh+(t(1067,"LdZ7")+t(1040,"Fzxt")+t(668,"Tf(V")+t(1032,"Wg$5")+t(306,"HMO1")+t(768,"Z[9h")),{},{},e[t(355,"Flqq")]);if(r[t(899,"Tf(V")]&&r[t(743,"Ybex")][t(860,"nTP(")]&&e[t(898,"3P7O")](r[t(1009,"yxuT")][t(895,")2Yv")][t(333,"wrcr")],3567*1+1351+1*-4918)){let n=await e[t(781,"n*PT")](eo,t(667,"q@6)")+"e?"+Za,{action_type:2,filelist:r[t(351,"BYRA")][t(599,"%Z*W")][t(362,"Tf(V")](s=>s[t(630,"q@6)")]),exclude_fids:[]});console[t(560,"yxuT")](n)}}async function jXt(t){let e=je,r={WgIFC:function(s){return s()},ZEMiz:function(s,i,a,o,c){return s(i,a,o,c)},jJmBH:e(1004,"snsi"),TPDfB:function(s,i){return s===i},BjWUC:function(s){return s()},MmxWb:function(s,i,a){return s(i,a)}};if(Dh){t&&await r[e(523,"5f2!")](aBe);return}let n=await r[e(829,"LdZ7")](eo,e(1014,"Gmb(")+Za+(e(818,"j*zV")+e(695,"betL")+e(350,"j*zV")+e(945,"%Z*W")+e(957,"3P7O")+e(904,"Tf(V")+e(312,"PlI^")),{},{},r[e(788,"%e99")]);if(n[e(370,"i#*h")]&&n[e(383,"QWuT")][e(860,"nTP(")]){for(let s of n[e(1085,"3P7O")][e(365,"q0$o")])if(r[e(937,"j*zV")](s[e(692,"Z[9h")],iBe)){Dh=s[e(754,"yxuT")],await r[e(305,"PLva")](aBe);break}}if(!Dh){let s=await r[e(689,"lQpT")](eo,e(866,"QWuT")+Za,{pdir_fid:"0",file_name:iBe,dir_path:"",dir_init_lock:!1});console[e(557,"IwqU")](s),s[e(289,"5f2!")]&&s[e(661,"s]bs")][e(280,"uZ@5")]&&(Dh=s[e(287,"Fzxt")][e(772,"q0$o")])}}async function cG(t){let e=je,r={wUoDT:function(n,s,i){return n(s,i)}};if(!zd[t[e(673,")2Yv")]]){delete zd[t[e(650,"snsi")]];let n=await r[e(1074,"%Z*W")](eo,e(865,"jMYK")+e(322,"nTP(")+"n?"+Za,{pwd_id:t[e(733,"lFql")],passcode:t[e(1039,"Ybex")]||""});n[e(292,"FlDb")]&&n[e(662,"j*zV")][e(404,"wrcr")]&&(zd[t[e(839,"Flqq")]]=n[e(936,"q0$o")])}}var HXt=[je(374,"PlI^"),je(994,"LdZ7"),je(890,"yxuT"),je(714,"n&P]"),je(390,"QWuT")];async function QXt(t){let e=je,r={CeeGQ:function(c,u){return c||u},dvouh:function(c,u){return c||u},nUlKV:function(c,u,l,d,f){return c(u,l,d,f)},VeDal:function(c,u){return c(u)},kAMvF:e(573,"lQpT"),aEgYM:function(c,u){return c===u},AaILP:function(c,u){return c===u},pnzKl:function(c,u){return c===u},EaoOJ:e(393,"PlI^"),eRFRH:function(c,u){return c===u},VpoRL:e(709,"uZ@5"),UwEHB:e(369,"2vLy"),eEqqS:function(c,u){return c===u},AIINL:e(722,"s]bs"),eCjUF:function(c,u,l){return c(u,l)},puohi:function(c,u){return c&&u},DRSXj:function(c,u){return c===u},yDfBB:e(731,"LdZ7"),UekML:function(c,u){return cu}},n=r[e(1069,"oODV")](typeof t,r[e(492,"!$Ln")])?r[e(726,"QWuT")](lBe,t):t;if(!n)return[];if(await r[e(844,"%Z*W")](cG,n),!zd[n[e(465,"Gmb(")]])return[];let s=[],i=[],a=(c,u)=>c?c+"/"+u:u,o=async function(c,u,l,d){let f=e,p=r[f(909,"2vLy")](d,""),m=-564+3512*2+-6360;l=r[f(402,"!$Ln")](l,-2*-4413+-7752+-1073);let h=await r[f(621,"PlI^")](eo,f(1066,"lFql")+f(867,"Fzxt")+f(1027,"n&P]")+Za+f(1013,"Wg$5")+c+f(716,"jMYK")+r[f(414,"PLva")](encodeURIComponent,zd[c][f(446,"snsi")])+f(635,"Z[9h")+u+(f(682,"oODV")+f(825,"j*zV"))+l+f(820,"HMO1")+m+(f(339,"i#*h")+f(486,"BYRA")+f(640,"!$Ln")+f(432,"snsi")),{},{},r[f(991,")2Yv")]);if(!h[f(407,"q@6)")])return[];let A=h[f(679,"IwqU")][f(442,"!$Ln")];if(!A)return[];let g=[];for(let b of A){let y=r[f(337,"sAc1")](b[f(780,"Flqq")],!0)||r[f(478,"fLji")](b[f(902,"oODV")],1)||r[f(1054,"QWuT")](b[f(774,"Fzxt")],r[f(833,"Fzxt")])||r[f(681,"s]bs")](b[f(1065,"lQpT")],r[f(471,"wgCG")]),x=r[f(913,"wrcr")](b[f(965,"q@6)")],!0)||r[f(638,"FlDb")](b[f(742,"Z[9h")],-1*-831+80*65+-6030)||r[f(275,")2Yv")](b[f(283,"q0$o")],r[f(382,"3M6]")]),v=r[f(349,"%hwX")](UXt,b[f(441,"2vLy")]),I=r[f(850,"yxuT")](b[f(568,"M9FG")+"ry"],r[f(841,"Ybex")])||v;if(y)g[f(454,"QWuT")]({fid:b[f(378,"lFql")],path:r[f(342,"BYRA")](a,p,b[f(828,"PlI^")])});else if(r[f(708,"Gmb(")](x,I)){if(r[f(918,"lQpT")](typeof b[f(892,"Fzxt")],r[f(1078,"wgCG")])&&r[f(949,"BYRA")](b[f(524,"lQpT")],r[f(978,"HMO1")](r[f(326,"QWuT")](713*3+-6696+5581,-529*-1+-12*698+-2957*-3),1732*-3+4*1697+-1587)))continue;b[f(1033,"q0$o")]=zd[n[f(321,"FlDb")]][f(522,"lQpT")],b[f(659,"%Z*W")]=p,s[f(511,"!$Ln")](b)}else x&&HXt[f(797,"PLva")](R=>String(b[f(559,"4iKp")]||"")[f(814,"Fzxt")](R))&&i[f(813,"lQpT")](b)}if(r[f(1016,"Flqq")](l,Math[f(372,"sAc1")](r[f(626,"snsi")](h[f(798,"p3E!")][f(284,"Ybex")],m)))){let b=await r[f(316,"lFql")](o,c,u,r[f(806,"n&P]")](l,1),p);for(let y of b)A[f(721,"yxuT")](y)}for(let b of g){let y=await r[f(466,"R[2q")](o,c,b[f(360,"Tf(V")],1,b[f(792,"i#*h")]);for(let x of y)A[f(721,"yxuT")](x)}return A};return await r[e(1041,"5f2!")](o,n[e(812,"oODV")],n[e(468,"q@6)")],3789+1217*-6+3514,""),r[e(1045,"R[2q")](i[e(914,"3ASk")],4*-2351+174*29+4358)&&s[e(879,"wgCG")](c=>{let u=e;var l=r[u(504,"%Z*W")](ml,c,i);l[u(588,"M9FG")]&&(c[u(698,"betL")]=l[u(925,"%Z*W")][u(770,"n&P]")])}),s}async function uG(t){let e=je,r={NrKrX:function(s,i,a){return s(i,a)}};if(!t)return null;let n=await r[e(935,"%hwX")](eo,e(361,"Tf(V")+e(734,"Ybex")+Za,{fids:[t]});return Array[e(861,"Flqq")](n?.[e(982,"3M6]")])&&n[e(811,"3ASk")][0]?.[e(525,"n*PT")+"rl"]?n[e(1003,")2Yv")][-37*19+-1*1022+1725*1]:null}async function GXt(t){let e=je,r={glMUm:function(s,i,a){return s(i,a)},TrXxx:e(971,"M9FG")+e(315,"3ASk")+e(309,"HMO1"),SERpE:e(1077,"R[2q")};if(!t)return null;let n=await r[e(291,")2Yv")](eo,e(272,"PLva")+e(296,"3ASk")+Za,{fid:t,resolutions:r[e(985,"uZ@5")],supports:r[e(303,"Tf(V")]});return Array[e(329,"!$Ln")](n?.[e(383,"QWuT")]?.[e(766,"Fzxt")])?n[e(289,"5f2!")][e(963,"IwqU")]:null}async function dBe(t,e="0",r=7893+-5*453+-5627){let n=je,s={NROdE:function(o,c){return o(c)},swdty:function(o,c,u,l,d){return o(c,u,l,d)},GRqGW:function(o,c){return o(c)},aHVGP:function(o,c){return o||c},muVGW:n(298,"oODV")};await s[n(399,"jMYK")](kv,t);let i=Number[n(336,"snsi")](r,3779*2+-23*2+-7502)||-12987+-34*-382,a=await s[n(950,"sAc1")](eo,n(786,"FlDb")+Za+n(1058,")2Yv")+s[n(870,"Ybex")](encodeURIComponent,s[n(341,"QWuT")](e,"0"))+n(643,"3M6]")+i+(n(646,"Tf(V")+n(930,"%hwX")+n(437,"sAc1")+n(1042,"4iKp")+n(385,"3ASk")),{},{},s[n(826,"n&P]")]);return Array[n(550,"3ASk")](a?.[n(723,"Flqq")]?.[n(278,"Ybex")])?a[n(679,"IwqU")][n(910,"3M6]")]:[]}function b3(){let t=["BwrTW4Dc","cSorWRldPW","WQqKWQldPa","gmosWRTlWOS","oWJdGq","WQ9aCSkqevnrWPhcVaq","g8oaWQldP8oLzqhcGZNdJW","6l2J6kcK6ysN57+k","ChnyW5P0iq","WOvza8kBoq","WPRcG8odbri","WO5WiCkkia","sSkQrmka","WRVdSXuOWQKKWRGwWOVcLW","B3byW7LB","WP8vtSoicW","W5qnbmodbCom","WRf7C8kkW7K","WOLQx8oVFq","nSorWPLlWOldOmkjsSkSwW","vSo3WO8Bgq","kSktWOHkWPZdUmkjxmkxsW","W7FdIrRdOSk4eNPI","vh7cL0ldSG","W6NdMtGjWPiDuG","WQ/cLqtdI8kMeLK","amo2WQ/dR8oC","kmolaCkWWQz/tmk6bG","BCkkdNHPWOldQcW","W6VdKSkFfsddHq","nmkPWRa2WQ3dLJS/","WP9mAa","kmo9WRKHFCk/pCoAFSo1","qCkXya0C","vCkJW5ZcKmkC","lbtdKqXThHNcTW","rSk+WQxcUG","qmoqWPq2uq","WOnop8oe","s8k/ow5e","g03cRCoZBG8","dCoHWP5qWPVdVmov","p8oHA8kxW7u","FSoaWRiKb8or","lr5Zrea","orpdNaa","rmkSu8kn","fCoDhCk2WP8JxSkWaSkZ","WOyiECoIfmoVWRddRa","FxjEW7vN","eCojeWa","nXauW5JcIW","ghThb34","W5NdG3RdH8o/WODppW","W4BdMfldMry","qmkQw8katXK","W6r4xmoOWQVdGwq","W4RdGmkTWOGhWQ/cV2S","x0VcHwNdMGNcRCkdW7RdIG","qwHtW4DWDZFcT33cGa","W4VdH8kuWPKhW77dTsddHmkV","W6TWuSolWQa","W4tdGK3dLSo1WQfh","wflcMwddUG4","WOTiASodEGKc","kmovW5CYWRVdK8omeSk2kG","w8ofdbC","iCo6rmkF","WRZdMfldSLy","cWyYW7tcTmkGWQzX","kSo5W6CzWOW","A8oPW40llW","dXNdIsj3","W6qtWPddKH5mtCo+WQ3dRq","lCoiW5W8WRhdOG","W5HyACohvWnCWORdPL8","W6ddHK7dOq4","mCoqW4euW4hdRmkeqCkgsG","v8oAvCk9WO3dUt8","W6KtWO3dLbzf","sCoAW4GHiW","q8ksW6NcLmkW","CSo0WPaQWPldTti","W4bSWP4b","qSkIq8kv","DColW5WeebddSSoL","W5NdJvRdMmosWODf","j8k0WQtcPaO","xSk4W7pcVmkSgwS","WQ0SWRG","h8kPWOS","WOhcS8oMgIW","WQFdNelcMehdHIqaxIe","W7pdP8kGcGG","W53dNZy1WPG","ASo5WOGR","l8o9WOiR","W71MCmo/WOm","e8oUWQXTWOu","W4ldPK3dQbpcL8oEWQW7ra","aSkQW7FcUSoCcN3dS8oxaG","ACoXWOGXEW","BSowuCo+W5NcQw07amkZ","imopWQ8J","rSkEufbJWR3dJfNdImoCWQGQ","W7ZdH8kzhq","WQ94ya","W7pcQCkHWQpdGG","WRuOv8oWdG","WPOnWQxdOau","W5FdGCkbWOCh","WR7dOaHM","W6ZcTIHsW614W79A","W6VdQCkdWRKG","WRBcLbpdMG","W67cOSo+faFdJSkega","WQySWRRdOgVcTJrtjmoj","W41gw8okWPO","WQ1mD8oRAq","oSoBaCkS","ASodWQSL","W4xdMf3dG8o+W5qoDW","W71cWR8wwG","WO/cM8opsg/dHG","W5aChSouaSkEW5BdJvec","BhLoW55NkdxcSa","a3Hxa3q","CHZdJuldLh5qWQa","WRtcQmkbWRtdMmk6WO4","AaxcKa","WPrhkSoxxCkRWRNdQCoQWPK","wSoAWRWJta","BN1yW5z4pG","BMLzW58","WRZcQ8o5fwldHSktrI5B","WPrBjmooxCkA","W7PYWQXrW5i","BmkWrJ8","WQfsmCkRpa","AJnjW5H7o3NcONFdGa","AmoTW7qcjG","iCowWO9xWOVdN8kFsG","u8k6WQ/dQ8kbgmkWja1a","imoDt8o6kG","WRldHG7dJ8kZobL5laK","W6ZdMd0EWPGlx3q8Fa","W5aFWQNdMGy","C2eRW4tcKG","zSkfWOv5W6xcUSkqw8kamG","pSo5WPTdWQm","bCkZWPFcSJy","WQrMbSk4f8k6WR3dGa","WRxcJW/dHCk7mW","rCkTW7hcQCkaqJFcUmoAaG","WRtdHbr/W68","edBdSbvs","tLxcJ07dNW","wJ4AqZpcT8kGrG0DW70","DmofW5eDiaZdPCo0tW","WRldQbTV","WR7dLSkjftZdVuhdHqPt","W5hdLSkrWPmY","WR/dPrrIW5u","ySklrJmx","W7DTx8oiWQG","WPLdWQj3W48","q8kGWPtdTSox","zSoCWQWM","W7z0wCoOWQVcNwtdV8knWRm","j8odWOe5WPddMwTFWR3cKG","W4NcGuhdNmo+WPO","lW/dIszZ","emkPWPpcTXVcVG","pbldSHv0","W6JdNSkCgtS","W5ldISk4eIS","pCo7hCkaWR8","lSopbSkL","r8kNca","D1WlWOm","dmoSasmz","D8kfWRZdPSor","jGX6zwu","eb0kW5dcTa","BmkBhhPYWP/dJcdcImoN","zqJdM1C","smkfxSkDzW","EN1EW5y","s8kjCCkXEW","BmkhhhPJWRpdVsdcMmoq","WQH2mmoI","B8k2tYi0","eCoFWPPZWOhdQ8kNxSkwqa","W5xdV0/dMG","Emkxkvf2","W4FdPeRdKLpcLCkeW6y5DW","W4T/WPiWua","W6/cRSkAWRG","W5NdH8kKmb4","xhCqW7pcTq","zSkNWQZcI8kX","pSoxWP1r","tILbrq","fCkVWPG","W4KegmoQpW","W4VcMSkGWRpdNa","WPnwo8oa","dCokWOfrWO/dOW","WQr0ESkr","q8owsCk0W4pdVJvIxCoP","rmkYWQhdRW","WRFdH1BdLuK","kSoPv8oq","WPejWRtdLYG","W7/dISkGksm","qCoEuCkW","W5VdOrSZWPW","CrxdGa","lSojW4a/","W5Krvq","WOHCB8oo","oatdHW","DMHEW4C","W7DHWR0ctW","WO5MWOjwW4y","W5zOWPOmwCkgpa","pCo1WPtdTSou","W4KRCSoHtmozWOyg","W6pdP3hdOJ8","D8okW5KzbXhdJSoWsmoR","bbWB","pCo8qSofcCkd","DCkcWOOgtKhdUG","kX5u","WQeuumoMkq","f8k9W6dcQSkq","WR/dSW5OW64","DvapW5y","WPqaa8odgCkiWORcL1eg","W6TjvmorWPG","W6WvWO7dMLbtdSoGWRBcPq","W53dG0BdN8oEWODBpq","xmoHWQKhrq","lSo1FmkFW4O","vSoxrmkJWONdKZ4","W4JdNeJdLmoOW4fvnWxdLq","WQFdM0lcL2ldJdafxwC","W4RdICkHhIO","W7GxW4ZdNbepumk9WQhdTG","wKRcJeldGa","lq5CAge","EYBdNfRdJG","WQFdG2BdHvFdIcO","uujoWQhcKSkmWPTeg8oe","WQz5aSkf","vCowWP4SWRi","WOmEwSoKe8oS","xmosWRWfBa","hmobzCo3","WRH8zSkjW7mFWOOj","cKLekKO","W7X9WPKkDG","a8kFWRlcRCkhW4JdICkiW6FdTW","CCohW5WidsRdVCo4t8kL","x3pcO0ldOW","bZyvW4dcGq","WPlcOXpcMuJdJSouW71+iW","umknWQpcKSk5","WQyvCSoRhG","u8kJWRNdP8oi","s8kWW6e","W73dLc0","wmohWPSLzq","qmkCfhjJW5hcQxNdJmkP","bHqlW7q","WQHLjCkQfmoZWQVdKYVcHq","wL/cH2ZdHq/dO8kuW7VdHa","W5yhgmojemoiW5xcJK4u","WPvftCoRAa","c8k3WQZcTa","W6n4Cmk7","WOWuumoM","mSoKW4SNWRm","cmozWQi","cmozWQRdO8k+zaRcQZBdLW","a8orWRy","b8ogWQpcQ8oIBWBcTtNdLW","hSkNWOJcVXO","WOTgomor","WPnagmorsSkDWRhdPW","D8kmW7hcKCkz","5AsM5ywxxSoyFIG45Bs26l+z5P6Z","WQT8kmkO","qCkHWRxcOW","W6JcQmksWQhdG8k6","cgLkhW","W5NdVraHWOe","a8kQW7FcRq","bMvn","W7VdPGKbWRy","ebaEW7hcKSkcWQ1HyCkN","W6n1xa","W6NdLqldH8kW","BwHlW4nGpG","u8kVqCk8rG","C8k0CSk8Aa","wLRcGwq","WRvsWPLjW74","W5WngmkzemoxWPO","W5mWDmoWxCoIWOW","D8kNWOVcLCkH","W7n1W6pcSNddSafubmkAtKy","iCoAmCkIWQ0","ee/cGwJdNW","W7/dOhRdOCop","pCoDW4C0WRW","sCkWW7C","CCkgDCkK","gmoprSo3WP/dOYKOv8oK","a8k/W6NcRW","W6Srm8o2mW","ymo/WPi9WOtdJZCmW7FcQa","W6PFWQueFq","WQL0mmkS","W55DFCovtJCyWO3cTW","WQRdHKJdGK0","kmoYtmof","WPWpw8oOaSoQ","W6pcPSkQWPZdMq","eCohea83W6ddV1xdMmol","i8oYxmkB","zbhcKG","W6NdLcSnWPiM","WRNdRHHI","mmkSWRa6WRNdVX04","smkqWO/cKSk0","WRGcC8oada","W7FdQgldLHa","DCoZWPO9WPK","yCk8uq","WRBcPaBdH8k6lG","W5ZdVq8","DmomWRaMxmopg8kPpq8","cSopv8k+WPtdO3vKrSoK","edOkwxlcRHRdKmofWOG","qCkMqW","WOZcNCknWPLa","y8ogWRSoWR4","gNLcawZdHCklysWz","W6NcUCkaWQxdMCkNW5iq","kmodz8kUW48","W6VdPmkAWQOM","wCoJWOKvnW","a8ohaZ48W73dSutdTW","W5VdI3ZdPGu","W7j8z8kz","WQZcS8o9eq","WQGvw8onca","W58MDCo2","WPDAomon","h21ptJBdG8kWFtqf","WOSuq8oTmSo2WRK","W4K3zmoW","FCo2zSkfWPy","WQT8kmkOlSkYWRNdNZG","WQldMvtdGW","tMJcSgBdHG","BCk2zXqe","WPLzBmoktaSqWP3dO18","WRTPE8krW7m4","pmk1vSosdmkchmkSW7T0","amkNWORcUs3cUHK","rSk6WRNdUSozwa","WPddRsLPW7K","kCodW4Hz","A8oqWQ0REW","WR99aSoOta","tK7cHM0","WRT4zSkmW7mK","mdddOcLA","WPlcUHFcGYNcPmoUWPGasG","W7/dKI0jWPG6gsTIpq","uNKpgsxdRfZdH8kHWR3cK8k7yq","W54/zmo0","r8oUWPqIiG","WQ/cHmoliGK","W6ulWOW","CWZdNfNdKx9iWQXTDa","WRmTWRFdTYhcJd8","u3SYW5lcSG","xCk4W7FcUmkEcW","iCo8rmkEW4BdRCkFWPe","cN9qgMdcIW","nG/dLWHNiX4","i8oycdmx","W69cWQSXCG","WQvQWRFdPJxcSdjtnCkP","a8oQW6lcQq","WRpdSa9PW4S","vSo2WOO2jW","vCokvSk5","W5RcVCk6WPNdPG","omoHr8oue8kVh8oJW65Y","wMGmW6xcJq","WPFcISorW5HeW7tdULZdLCkO","WQjkv8odxa","dSkHWRJdUmoE","W6VdJ8kxgq","W4xdOLhdMrdcJmoxWQ0wBG","bYOlW6ZcT8kUW7L0iCo2","WQFcGL8","WO5TjmkIeCkFW5OfWQ1alZRcUa","W6VdKSkcfYVdJa","W6BdHgdcJ0xcGG","WRTzbCklgG","WPZdM2/dO2G","pK1MjL4","FSo1WQ8UgW","WPZcTSoMnXu","W5fPW4CesSkml8kxe1C","W73dLmkFeZW","W5bIWQypt8kak8kXxry","W7lcQSkwW7JdHSkQWO8eFCou","W5pdNmktWP0","wSk4rIG","cSoUsSoFoq","WQNcOCo6gt/dIq","l8oTgmkrWQ0","pHldGar4aG","CCoPWOiW","vSkLWRxdR8kwW5pcM8kfW6FdVG","W7/cS8keWRVdMSkMW4arv8oa","WQVcGrGzWRKxFuW","WPzAkSoxuW","WR7dHvtdNW","i8o8x8kuW4/dSmk3WPhdO8kd","sSo2WQSwWQq","o8kfWP0Za8ovtmorkae","W7JcVCkhWRBdNG","W5FdPt8oWPu","qhiiW4BcSq","WP82W5e","W5FdRfddLbO","vCkSwSkr","x8k6W4/cJSkA","yCorWRmOfSox","gCoVASo3pW","yComWQyM","WRbQWR5DW5pdUwbYhMG","E3iAW5tcTW","WPbmFCocqbOc","W7vdxSoZWQRdGq","jmkbgmk3WOrW","dCoLWQpdNSoZ","kW7dVWjOcqRcJwtdKq","v8kAW7ZcO8kW","q8otrmk2","FmotWOft","f8oWW7hdTmocWORdHmkeW6hdJc3dSae","WPWpvCo3eSo3","WO5QWQnuW4K","DqBdVeldJ2nsWQi","EmksW43cUmkI","wmo9WOSBoa","z8kvnw1l","W4SCc8owbCoxWQ7cI1ul","CSkodq","W7vUv8oUWQhdKxJdUW","W507zmoAr8ohWO8aWOL9","WQdcIq/dGW","W67cOSoTgsRdUmkgtgyt","WRTbemk6iG","77606k6F5yIN5BYK44gH6yEP576x44oZ56U45RUZ","W5eBk8owa8ofWOa","F8ouW6eKdq","Dx3cOfpdTW","xCkRWOZcUru","WRxcJGldMSk3kvnd","WQXCWQ1eW5e","W5bSWPKlbW","mSotW5q","W43dQeJdKaJcIW","WQdcKGZdI8kbm15ljG","WRBdRHS","o8oqWOPaWPBdGmko","s8k+WOhdO8oz","sCk7dLT1","bbKEW7i","W4tdHmkQWOWy","WQvWjCkPfmkUWQS","w1tcKNZdKq","W6uEWOJdObXbfCo3WQxdTq","jZGgW7NcKW","qCodWRtdPCk+CXdcVIZcLa","W6izWOpdMXPseG","W4SybSonbq","DCoaWQG","g8ocWQO","pSobiCkWWPL3vSk+","W58+kmo2ia","C8obW5mida","eZHBrwu","y8opW4Wm","jSoNumof","C8k2WRJdISoi","jSolhmkJWP92","W7KjWOddNG1samoR","W6JdICkEca","mxhcGmo/CW","wCk2W5BcRCkbexBdSa","dqir","W6GzWPhdIZjbfCoXWQO","mSozW50WWQddPa","W5eEd8kkamorWPJcKePn","q0eyW7BcOa","hSoQaaGC","s8kpvCkoCW","bSoycWGV","WRlcLaVdI8kW","cMhcUmoZBri","h8ohdG8","W4xdMSkmWP0rWRy","jSohaCkW","WQL6m8kJhCkZWRNdLGlcLq","W77cUSksWQddMSk9","eCoBw8kyW6u","FSkDd2L/WO7dRI/cMSoQ","CmoPWPaQWPW","W4JcPCkQWOFdTa","WRZdLupdNLFdJdaA","vCoNsCk2WQq","W5STC8o8ta","WPCzh8ofa8op","CmkAeuzd","WRn0WO5fW6C","W6ddNrxdG1y","F8oeWQGGgW","nmkyWO9CwKFdG8o5C8kZW4JdSq","ghFcUCoSBW4","ASonWQGQzCkZnmoHvCoV","W6JdHLVdP8o0","rmo+WQxdVmotxSoV","p8opW5a+WR0","umk4pNbl","q8kmW6NcKSkL","ufdcK3ddNG","WPWovSoIfCo2WRtdSq","WOT+WPGdf8kbnSkfuKO","b2LnfhpcJq","WR1jDCkVW7m","wSkgbqG1","FfGv","lSoDrdGYWR7dLahcQSoLka","iCo6ta","W6H5WQiysa","WQJdMuVdKNRdHZidvW","eSojmYu+","iColWOXeWPZdVCkjvW","WPWUDmo8v8oYWOWkWPKe","pCoGqSodgCoFamoIW7X0","ASk/WOddOmoz","zmoEBmkDWRW","WRxcNbpdG8k/","W6ldLK7dM0ddTJ0pxYS","oW3dRbLWbX3cOdRdKG","B8oAW4WDeu/cVSk+wmkJ","amkCr8kvtq4j","WRvasCohuq","WPWAqSoMomoLWQBdLY7cSq","smoVWRxdR8oRzvJdRMJcIW","emoJW6u","u3nqW555itFdQYVcGG","wSoYWQyaiq","WRT1DCkiW7mFWOa","A25g","atTerxBcSa","lmkqWOe8W7JcUmol","tSk3q8kewveBnIxcLG","WOPmB8owsGycWOW","WPBcNXpdRmkF","d35kbwldIG","WRrweSo3EG","pmobfSkBWOXSv8kShG","aCkJWO/cSX7cRH7cICoyWR4","bcLdtq","E8kocwK","nmoYxSkFW7ZdVSkL","sCoAs8k2WPJdSG","WPb3imo1ya","dsJdTsS","iCo6rmkFWOZdU8kZWPNdMCkc","hCoFWRtdSSkSzGZcSd3dPa","jHddOGXs","E8kkrtqN","rxhcPCk1o1pdUeCzW4e","sxlcJw3dHq","W6VdJSkmdIVdQ0m","EstdLLxdJq","Amk9sSktW40","W5SRWPldLqK","W4GjnmoXtayvWOBdVum","D8kmWPlcKmk3","oSoDW4C2","sCkfWRNdQ8ok","brPXFLK","EqFdNb98cuxdVIpdVq","rmkJWQlcP8kgW4/cLCkmW6ldVG","fCoqWOfRWOe","W5Shbmocgmod","dqVdHtxcG1O","zSo5WOu","WRHYz8ko","x8oiWQqueq","vmkMrmkerqvhFa","WQpcIrldGCkS","W5W3FmoWESodWOSoWPG","f8kNWOJcVq","C8obW7qcfrddO8osxCkI","oSo/DYS3W7NdV8o4W67dUq","W402CCoH","W4VdJKFdLa4","ECkSsI8/W6RdTSkG","ixdcGSoZxq","ESoaWR0NfSolwG","rmkvWORcGmkI","wCowWOOGzW","ACkHWOtdMCoM","CmkwjgPG","fSkOWPJcRYxcSH7cIa","WP7cL8oZgY4","gCkPWPxcSG","WRaWWRNdRs0","fCkPWPdcUbFcQq","W6iYWP1MW47dUxf0","W6NcUCkaWRRdMSk8W5uCz8oB","zv4qW5lcQW","oWddHWW","lXRdM1O","BSkAhhPT","WOj+WP4pu8kan8op","WRnGWR1JW57dUe93lhG","t8ojWOy9WPy","BLpdIsf5iZ3cIG","q8orWRBdR8k/CrdcVsRdKa","WQRdTa9V","fIftsx4","WPXiAmoh","W5D4WPOfsG","WQr4ESkDW6i+","F1hcHeldGG","W4VdHuxdH8oOWPW","WRH8zSkBW7SL","WQvWWQHbW5q","WPnDiSoi","B8oPWPW6WPldJG","ggFcQCoUyWJdT04","W7z0wCoOWQVdU3m","pCoFWOOA","t8kKWRS","gw9bhhe","W7KDWPtdMIbbeSonWRBdTq","W5pdVehdPrO","W6OGcCoqgW","hSoNWQbHWP0","WP7dQK3dV2C","W5W3FmoW","nSoFWPPe","W4K/zSoWESomWPK8WOLw","vmk2cLPo","FKqFW5pcT2fsWQXceG","W6NdKCkPWOaJ","WPNdNKVdR0C","WP1BBSojvW","WPy2ECoYtCkbWPKwWO1C","cSkXWRtcO8khW5FdMW","ySowW4WFaW","pCoRA8kZW4W","WRZdQbG","W7tdNI4","WQyYFSkjW7K4","WRVcT8o7bJ3dLq","hN5p","WRJcJSkMnbRdR2VcGe4c","BmkRrZy","W6DZxmoJ","W5zgg8oremowWPldJein","vx12qKVcTaxdRG","W6JdLcOlWPG6rx8","W7/dS8kzeIq","vSk6WRhdQ8otDCoSFvHR","zmoChW","W547y8o2","W5eVASoIyW","DqJdNvhdMh4","omooW5W6","WOfglW","W4KQySo8s8okWOmfWOq","vmkQWQxdQW","uCooWQ47hW","W78qWPtdTXm","WQZcLCozs3RcKbFdIJ4xsuJcNq","W7OoWOFdMrzy","rCoaWPerxG","WPXaBG","WRvbWQzMW7W","B8kod2LRWP8","BCkpAGKh","EeiYW5NcSw1dWQWF","chpcV8o5yG","q8owsCk0W4pdQtvNr8k6","bJm6W43cGa","W4NdUCknWQS8","W5eBj8ofaSopWPZcHG","i8oGfamD","W5WXySoqrmooWOi","vCkHWRxcQG","nZxdSbXm","D8olWR8","WRldTc5XW6G","W7BdO0RdRX4","W5ldOKVdKG","W7FdLc0AWPm1qNS","W43dKmkMWO8Z","w8oqWRnKBmkXjCoXCW","WPDECG","ed1era","WQRcNG7dICkQnq","W7zOwCoUWRVdGq","W7OTjmomWQfGW5qxW75yWP5BW6K","uq/dTLhdQG","A3ZcJ33dGq","euVcRSotuW","WRtdHHddJq","W6JcImkDWPtdJW","W5WjhSof","laNdKH96jrW","ySoqWQ8R","rCk9WRhdVCoRq8o0Fa","g19Mehi","W6jRCSo/WQi","n8oYwSkBW47dRa","oCkFgwf0WRpdVsdcMmkY","dgLx","iCoXW4SegbdcRa","WPRcKmonaH0","W5v4WOSsuW","W77dKc0A","A8kDfgu","B8kogM07","BbZdUxhdQG","WR56mCoxFq","s8kWW6NcVmkSfNNdUSoB","w8ozWRWXWO0","W7Xlymo3WRy","W415qa","amkJWPlcUa","zCkYWRRdGCo2","kHbGDfO","a8oRf8k+WRG","WOxcImopiGe","WQXMn8kKfSkY","W6ldPCk/ncm","WOTbFCouqcev","WRNdQqLPW7DeW6zcW50","e8o3WQDRWQi","ov1PbK0","WO3cMs7dU8kj","a8oPgSkVWQC","W6NdLIOwWPy","W5qYx8o3qa","emkNWOJcVXO","bMKmqJFdLCobpNvd","bSkny8oug1SAkxRdHa","WR/dHa12W48","y8ojWQ4npq","l8o2sCkEW4BdRCkL","cIRdUWXo","ymonWOWLF8k5gmoQBSo/","WPDgcmonhW","fHOEW6BcSW","C8kPWRddGSom","W4KAzCkxcmouWPZdQmo8WQK","ns1JtNy","W4hdHvRdHW","WPfAxCouvWKi","z217W5zy","WPpcVb7cGKJdKCkcWRelseRcRqq","bCoDfaK","W5DLWOSsxCokkSkAxrC","wflcMwdcJa","rCkJWRtdQCozbCoKCv9+","W7ZcUCkhWOxdL8kNW68uzCoq","e8o4WOy","fCoSWP9IWRK","qCosqCkvWPy","WQO/WORdNHfobmo+W63dQG","espdPGjv","EutdIvNdJ31DWRDMFW","nmkEWO1AvKddI8oKAmk9W6hdKa","A8k0WOBdUCoB","d2nuhq","Amo6rSofdSkjlmoJW7nI","e8ohfsq6W6ZdTG","WRRcT8o6adFdICktqa","W7xcS8kGWRtdGmkSW6WABmoq","iCoWWQDjWOq","FmovWRyQl8kQmmk4oCk0","W6hdG1xdLaRdJtWzxge","cmkQrmkB","WRL0n8kMlSk1WRW","WR7dRGTPW7b4W65CW6FdLa","pmofW4CYWQFcSCkqvG","WRiGWQxdTsVcQYHe","W7tdSH9K","W7JdQ1pdI8o/","u8k6WQ/dQW","WObtrCoVsG","cmoxiCk8WQa","W7tdJ8kEca","WQmKWQldPIW","WQtcT8oNfYZdJW"];return b3=function(){return t},b3()}var h0={};async function KXt(){let t=je,e={BySxK:function(i,a){return i||a},HLGVH:t(445,"Flqq")+t(756,"snsi"),TdoGM:t(642,"HMO1")+t(363,"Tf(V")+t(720,"Tf(V")+t(671,"smET")+t(353,"QWuT")+t(1037,"3P7O")+t(473,"Gmb(")+t(641,"oODV")+t(447,"5f2!")+t(395,"FlDb")+t(883,"%hwX")+"19",MFkDp:function(i,a){return i===a}},r=Date[t(755,"p3E!")](),n=Object[t(652,"s]bs")]({Cookie:e[t(894,"%Z*W")](yc,""),"Content-Type":e[t(907,"2vLy")]},qx),s=await he[t(584,")2Yv")](e[t(495,"Wg$5")],{conversation_id:t(686,"QWuT")+r,conversation_type:3,msg_id:r+t(647,"Fzxt")},{headers:n})[t(896,"Gmb(")](i=>{let a=t;return console[a(313,"yxuT")](i),i[a(926,"j*zV")]||{status:500,data:{}}});return e[t(1063,"n*PT")](s?.[t(371,"fLji")],-1*-98+4864*-1+4966)&&e[t(327,"s]bs")](s?.[t(679,"IwqU")]?.[t(308,"5f2!")],200)&&e[t(276,"R[2q")](s?.[t(713,"oODV")]?.[t(410,"yxuT")],4845+-17*285)&&s?.[t(1083,"n&P]")]?.[t(400,"2vLy")]?.[t(577,"HMO1")]||""}async function fBe(t,e,r,n){let s=je,i={csAxk:function(l,d){return l||d},iVlev:function(l,d){return l(d)},QCsqt:function(l){return l()},YUzrE:s(956,"QWuT")+s(529,"%Z*W"),oCLoD:function(l,d){return l===d}};if(i[s(1071,"oODV")](!t,!r)||!n||(!e&&(await i[s(680,"Fzxt")](cG,{shareId:t}),e=zd[t]?.[s(1050,"4iKp")]||""),!e))return null;let a={fids:[r],fids_token:[n],pwd_id:t,stoken:e,speedup_session:""},o=await i[s(517,"R[2q")](KXt);o&&(a[s(595,"4iKp")]=o);let c=Object[s(503,"Wg$5")]({Cookie:i[s(1064,"Fzxt")](yc,""),"Content-Type":i[s(827,"q0$o")]},qx),u=await he[s(688,"snsi")](s(654,"3M6]")+s(499,"fLji")+s(325,"M9FG")+s(746,"R[2q")+s(990,"!$Ln")+s(1076,"3M6]")+Za,a,{headers:c})[s(392,"IwqU")](l=>{let d=s;return console[d(749,"Flqq")](l),l[d(764,"p3E!")]||{status:500,data:{}}});return i[s(1038,"HMO1")](u?.[s(380,"3P7O")],-3449+-7*-787+-3*620)&&u?.[s(900,"Gmb(")]?.[s(351,"BYRA")]?.[-374*23+-1432+1*10034]?.[s(512,"q@6)")+"rl"]?u[s(292,"FlDb")][s(823,"p3E!")][0]:null}async function pBe(t,e,r,n,s){let i=je,a={OWCxM:function(c,u){return c(u)},Ckrxl:function(c,u,l){return c(u,l)},IrQWZ:i(285,"snsi"),gSWur:function(c,u,l,d,f){return c(u,l,d,f)},NUwea:i(819,"sAc1"),JXWXK:function(c,u){return c>u},RHctj:function(c,u){return c(u)}};if(await a[i(620,"j*zV")](jXt,s),s){let c=Object[i(993,"LdZ7")](h0);for(let u of c)delete h0[u]}if(!Dh||!e&&(await a[i(1053,"oODV")](cG,{shareId:t}),!zd[t]))return null;let o=await a[i(775,"lQpT")](eo,i(636,"5f2!")+i(352,"2vLy")+"?"+Za,{fid_list:[r],fid_token_list:[n],to_pdir_fid:Dh,pwd_id:t,stoken:e||zd[t][i(489,")2Yv")],pdir_fid:"0",scene:a[i(703,"Fzxt")]});if(o[i(289,"5f2!")]&&o[i(981,"jMYK")][i(886,"2vLy")]){let c=0;for(;;){let u=await a[i(999,"%hwX")](eo,i(556,"jMYK")+Za+i(401,"Flqq")+o[i(936,"q0$o")][i(984,"nTP(")]+(i(878,"5f2!")+i(408,"n&P]"))+c,{},{},a[i(718,"LdZ7")]);if(u[i(433,"Wg$5")]&&u[i(693,"uZ@5")][i(663,"q@6)")]&&u[i(948,"wgCG")][i(448,"uZ@5")][i(737,"M9FG")+i(938,"smET")]&&a[i(540,"lQpT")](u[i(1018,"%hwX")][i(962,"Flqq")][i(645,"wrcr")+i(417,"4iKp")][i(625,"sAc1")],1*-6+-2*4784+9574))return u[i(579,"HMO1")][i(986,"PlI^")][i(744,"Z[9h")+i(528,"lFql")][1*6937+-7*763+-1596];if(c++,a[i(834,"s]bs")](c,5))break;await a[i(739,"3ASk")](Qd,9706+-537*-16+-62*279)}}return!1}async function mBe(t,e,r,n){let s=je,i={aUKBW:function(o,c){return o===c},mPNPA:s(735,"Fzxt"),zCyzC:function(o,c){return o(c)},TJotE:function(o,c,u,l,d,f){return o(c,u,l,d,f)},goOOR:function(o,c,u){return o(c,u)},QLbRl:s(354,"3ASk")+s(750,"Z[9h")+s(653,"IwqU"),oyYbf:s(934,"Fzxt")};if(i[s(701,"i#*h")](t,i[s(412,"i#*h")]))return await i[s(532,"PlI^")](GXt,r);if(!h0[r]){let o=await i[s(332,"LdZ7")](pBe,t,e,r,n,!0);if(!o)return null;h0[r]=o}let a=await i[s(444,"betL")](eo,s(419,"lQpT")+s(487,"4iKp")+Za,{fid:h0[r],resolutions:i[s(290,"Gmb(")],supports:i[s(704,"j*zV")]});return a[s(723,"Flqq")]&&a[s(314,"R[2q")][s(479,"5f2!")]?a[s(370,"i#*h")][s(340,"HMO1")]:null}async function lG(t,e,r,n,s){let i=je,a={SlWbw:function(c,u){return c===u},reqzF:i(463,"M9FG"),XICTz:function(c,u){return c(u)},wXkPX:function(c,u,l,d,f,p){return c(u,l,d,f,p)},EMylT:function(c,u,l){return c(u,l)}};if(a[i(300,"jMYK")](t,a[i(1059,"%e99")]))return await a[i(440,"FlDb")](uG,r);if(!h0[r]){let c=await a[i(665,"q0$o")](pBe,t,e,r,n,s);if(!c)return null;h0[r]=c}let o=await a[i(569,"BYRA")](eo,i(286,"FlDb")+i(403,"q@6)")+Za,{fids:[h0[r]]});return o[i(661,"s]bs")]?o[i(407,"q@6)")][-5*162+5258+4*-1112]:null}async function VXt(t,e,r,n,s){let i=je,a={LYNDs:function(c,u){return c===u},DSVuT:i(587,"BYRA"),cntBr:function(c,u){return c(u)},XRIMt:function(c,u,l,d,f){return c(u,l,d,f)},VTsSs:function(c,u,l,d,f,p){return c(u,l,d,f,p)}};if(a[i(740,"Ybex")](t,a[i(476,"lQpT")]))return await a[i(947,"3P7O")](uG,r);let o=await a[i(453,"q0$o")](fBe,t,e,r,n);return o?.[i(406,"wgCG")+"rl"]?o:await a[i(563,"j*zV")](lG,t,e,r,n,s)}async function hBe(t){let e=je,r={sNIlj:function(n,s){return n(s)},SemDt:e(1022,"3ASk")+e(762,"3ASk"),yqQaM:function(n,s){return n(s)},oulNE:function(n,s){return n(s)},xMycp:function(n,s,i){return n(s,i)},ZScsi:e(604,"LdZ7")};if(r[e(882,"Ybex")](d3,r[e(581,"Fzxt")])){let n=r[e(669,"oODV")](lBe,t);if(n){let s=await r[e(610,"j*zV")](QXt,n);return s=s[e(543,"j*zV")](i=>{let a=e;return{vod_id:[n[a(980,"LdZ7")],i[a(972,"IwqU")],i[a(307,"BYRA")],i[a(1028,"q0$o")+a(415,"LdZ7")],i[a(554,"4iKp")]?i[a(1025,"n&P]")][a(347,"PlI^")]:"",i[a(732,"smET")]?i[a(304,"Z[9h")][a(266,"j*zV")+a(712,"R[2q")]:""][a(597,"wgCG")]("*"),vod_name:i[a(632,"!$Ln")],vod_size:i[a(484,")2Yv")],vod_group:i[a(430,"wgCG")]}}),r[e(674,"n&P]")](Ps,await r[e(862,"3P7O")](cBe,r[e(1006,"wrcr")]),s)}else return{}}}var x3={},Bh={},oBe={},nG=(7318+-1*1222+-2536*2)*(-11*-89+7444*-1+6977),dG=(9130+4408*2+-16922)*(-4490+-172*-2+4402);function aG(){let t=je;return(globalThis[t(501,"betL")]||[])[t(1035,"betL")](r=>r[t(416,"betL")]===t(510,"q0$o"))||{}}function zXt(t){let e=je,r={InFhy:function(n,s){return n=s},gVBRQ:function(n,s){return n===s},RLSRB:function(n,s){return n===s},KYwRH:function(n,s){return n===s},UKHaQ:function(n,s){return n===s},XpsjN:function(n,s){return n===s},KbNUW:function(n,s){return n===s},vLAFk:function(n,s){return n===s},KhHVJ:function(n,s){return n>=s},lGufM:e(608,"Z[9h"),qCCIX:e(1021,"Wg$5"),ncFfG:function(n,s){return n===s},hTCqS:e(490,"PLva"),rcbov:e(666,"oODV"),pxqeu:function(n,s){return n===s},nljQn:e(394,"3M6]"),wIxhv:function(n,s){return n===s}};if(!t||r[e(345,"wrcr")](t[e(664,"FlDb")],-4*-2179+-3215*3+3*311))return!1;if(r[e(790,"wgCG")](t[e(941,"lQpT")],4215*1+298*27+-12253)&&r[e(462,"Wg$5")](t[3937+1*2613+-6550],-9*345+-2*85+3412)&&r[e(783,"betL")](t[331*21+-3928+-3022],-1*-9166+6341*1+1*-15427)&&r[e(391,"nTP(")](t[1282*-4+-7092+12222],-50*116+9875+-571*7)&&r[e(576,"3ASk")](t[-2*724+-1828*-1+13*-29],71)&&r[e(480,"R[2q")](t[-7065*-1+-6025*1+-1036],-38*237+1573+7446)&&r[e(853,"oODV")](t[10*-239+-97*-2+2201],4529+-1*-5398+-9917)&&r[e(678,"i#*h")](t[6],-261*-23+-4155+-1822)&&r[e(338,"jMYK")](t[-1318+-1*-1325],1*6106+58*93+1*-11490)||r[e(745,"j*zV")](t[3*2903+-8831+122],5275+-5*1004)&&r[e(779,"%hwX")](t[-821*2+5521+-3878],-11462+2*5839)&&r[e(491,"2vLy")](t[-3*-41+8*-122+5*171],10*-13+-1*-3243+-2858))return!0;if(r[e(931,"betL")](t[e(582,"%Z*W")],-1*751+-1278+2035)){let n=t[e(623,"wrcr")](0,6)[e(951,"nTP(")](r[e(969,"HMO1")]);if(r[e(461,"lQpT")](n,r[e(916,"Flqq")])||r[e(799,"%e99")](n,r[e(793,"oODV")]))return!0}return r[e(602,"q@6)")](t[e(803,"4iKp")],1*4723+-6666*-1+-1*11377)&&r[e(539,"PlI^")](t[e(933,"oODV")](51*-98+1*9686+-4*1172,-8761*-1+4*108+-9189)[e(538,"n&P]")](r[e(1036,"2vLy")]),r[e(736,"sAc1")])&&r[e(1072,")2Yv")](t[e(634,"Ybex")](8,1*4791+-4256+523*-1)[e(575,"%Z*W")](r[e(1047,"Ybex")]),r[e(959,"lFql")])?!0:r[e(843,"4iKp")](t[-1719+206*20+-2401],4209+1381*-3)&&r[e(672,"QWuT")](t[-1751+6558*-1+8310],17*141+-7*-601+-6527)}function YXt(t){let e=je,r={edheI:function(s,i){return s-i},HZcPT:function(s,i){return s+i},vavcf:function(s,i){return s<=i},qlrNN:function(s,i){return s===i},MZFRY:function(s,i){return s+i},kBgiG:function(s,i){return s===i},PdsBA:function(s,i){return s+i},tETNX:function(s,i){return s+i},NodeN:function(s,i){return s>=i}},n=Math[e(628,"R[2q")](r[e(1060,"yxuT")](t[e(897,"Wg$5")],-1757*5+-1784+10577),r[e(1011,"%e99")](dG,1*4322+-2869+-2643*-1));for(let s=-790*12+5041*-1+1*14522;r[e(519,"PLva")](s,n);s++)if(r[e(281,"3ASk")](t[r[e(1015,"lFql")](s,-197*-50+-3*-1812+-15282)],4026*1+-3803+-121)&&r[e(851,"lQpT")](t[r[e(836,"Wg$5")](s,-35*-10+8880+-9225)],-6*-776+-5486+2*473)&&r[e(592,"wgCG")](t[r[e(656,"4iKp")](s,-11860+-698*-17)],8968+8847*-1)&&r[e(912,"3P7O")](t[r[e(968,"IwqU")](s,5181+381*3+-6317)],49*-188+-9380+18704)){let i=t[e(377,"BYRA")+"BE"](s);if(r[e(311,"wrcr")](i,1117*4+-7509+3049))return s}return-(-15*321+1084*6+-8*211)}function JXt(t){let e=je,r={ktCfF:e(335,"5f2!"),mLbzY:function(i,a){return i>a},nKlMC:function(i,a){return i<=a},FDMIt:function(i,a){return i+a},ifTei:function(i,a){return i===a},nFiiM:function(i,a){return i+a},gxTYp:e(619,"IwqU"),AKhVr:e(331,"q0$o"),QWpjv:function(i,a){return i+a}},n=Buffer[e(760,"betL")](r[e(389,"%Z*W")]),s=t[e(470,"oODV")](n,1);for(;r[e(593,"3M6]")](s,61*-17+-1442+-2479*-1);){if(r[e(979,"PlI^")](r[e(1080,"s]bs")](s,-1*5149+1*-6432+1*11593),t[e(558,"PLva")])&&r[e(320,"q@6)")](t[e(583,"M9FG")](r[e(924,"Tf(V")](s,-901*3+4987+1138*-2),r[e(1084,"3M6]")](s,-446*4+-4844+6640))[e(366,"q0$o")](r[e(271,"j*zV")]),r[e(974,"PLva")]))return s;s=t[e(561,"Ybex")](n,r[e(676,"M9FG")](s,-82*71+-8106*-1+-1*2283))}return-(7*-746+-1*957+6180)}function XXt(t){let e=je,r={lPsmh:function(s,i){return s-i},CgmID:function(s,i){return s+i},Iaojt:function(s,i){return s<=i},WnlXb:function(s,i){return s===i},uMbPL:function(s,i){return s+i},kmTme:function(s,i){return s===i},yfgpo:function(s,i){return s+i}},n=Math[e(987,"Gmb(")](r[e(494,"lQpT")](t[e(725,"snsi")],-2989+255*-32+11525),r[e(277,"i#*h")](dG,4180+-58*-59+-7414));for(let s=2791+155*-18;r[e(989,"Wg$5")](s,n);s++)if(r[e(796,"PLva")](t[s],67*-1+-24*-317+-83*90)&&r[e(748,"!$Ln")](t[r[e(344,"i#*h")](s,967*-1+521*9+-3534*1)],4813+-4759*1+17)&&r[e(562,"Fzxt")](t[r[e(915,"snsi")](s,1*-9357+-2923+1808*7)],46*-1+-3781*-1+458*-8))return s;return-(557*17+-3387+-1*6081)}function ZXt(t){let e=je,r={pSEcu:function(i,a){return i(a)},eogyb:function(i,a){return i(a)},ywqbl:e(418,"p3E!"),xYdwn:function(i,a){return i<=a},dmdDz:function(i,a){return i>a}};if(!r[e(443,"QWuT")](zXt,t))return 0;let n=[r[e(268,"betL")](YXt,t),t[e(923,"4iKp")](Buffer[e(943,"oODV")](r[e(288,"!$Ln")]),1*-454+3911+-3456),t[e(386,"Z[9h")](Buffer[e(546,"4iKp")]([26,69,81*5+6*1300+-7982,-194*-13+-3242*-1+-3*1867]),-8735+624*14),r[e(567,"QWuT")](JXt,t),r[e(815,"sAc1")](XXt,t)][e(727,"nTP(")](i=>Number[e(784,"R[2q")](i)&&i>2878+3478*1+-1*6356);if(!n[e(589,"IwqU")])return 0;let s=Math[e(375,"sAc1")](...n);return r[e(555,"n*PT")](s,-537*-7+9045+66*-194)||r[e(871,"FlDb")](s,dG)?-2223+-39*-57:s}async function eZt(t){let e=je,r={RBDrE:e(603,"j*zV")+"r",PxzOh:function(a,o){return a*o},nkfum:function(a,o){return a+o},zxCIo:function(a,o){return a+o},yWXmx:function(a,o){return a||o},orxPh:function(a,o){return a-o},KOAQJ:function(a,o){return a(o)},aWPzA:function(a,o){return a>o}};if(!t)return{isMasked:!1,skipBytes:0};let n=await he[e(929,"Flqq")](t,{responseType:r[e(821,"Wg$5")],timeout:r[e(970,"oODV")](5173+-107*39,-58*46+-6006+8682),maxContentLength:r[e(622,"QWuT")](nG,-92*-20+13*323+-5015),maxBodyLength:r[e(753,"q@6)")](nG,-7*17+3897+-2754),headers:Object[e(837,"2vLy")]({Cookie:r[e(830,"lFql")](yc,""),Range:e(888,"IwqU")+r[e(273,"jMYK")](nG,1)},qx)})[e(847,"uZ@5")](a=>{let o=e;return console[o(691,"4iKp")](a),a[o(426,"fLji")]||null});if(!n||!n[e(460,"Z[9h")])return{isMasked:!1,skipBytes:0};let s=Buffer[e(1049,"2vLy")](n[e(433,"Wg$5")])?n[e(1075,"%Z*W")]:Buffer[e(771,"IwqU")](n[e(351,"BYRA")]),i=r[e(472,"jMYK")](ZXt,s);return{isMasked:r[e(384,"n*PT")](i,-471*3+1138*-8+809*13),skipBytes:r[e(376,"p3E!")](i,0)?i:223*-19+-142*9+-5515*-1}}async function oG(t,e){let r=je,n={RgJWT:function(o,c){return o||c},APBHk:function(o,c){return o===c},dFEXG:function(o,c){return o(c)}};if(n[r(387,"i#*h")](!t,!e))return{isMasked:!1,skipBytes:0};let s=oBe[t];if(s&&n[r(996,"Ybex")](s[r(438,"wrcr")],e))return s;let i=await n[r(787,"BYRA")](eZt,e),a={downUrl:e,isMasked:n[r(293,"p3E!")](i[r(789,"3ASk")],!0),skipBytes:i[r(1056,"HMO1")]||4329+1443*-3};return oBe[t]=a,a}async function E3(t,e){let r=je,n={JlUne:function(c,u){return c(u)},xzYIo:function(c,u){return c==u},YOUvb:r(715,"j*zV"),WtUdn:r(1008,"%e99"),ZUtHj:function(c,u,l,d,f){return c(u,l,d,f)},ulvHl:function(c){return c()},zFZQy:function(c,u){return c===u},MVDhQ:function(c,u,l,d,f,p){return c(u,l,d,f,p)},GnoNo:r(877,"sAc1"),WyGCk:function(c,u,l,d,f,p){return c(u,l,d,f,p)},oPOTl:function(c,u){return c==u},hRnhA:r(425,"sAc1")+r(800,"%hwX"),nEhxs:r(606,"!$Ln"),ZHseA:function(c,u,l){return c(u,l)},VEzkv:function(c,u){return c==u},RoLbd:function(c,u,l,d,f,p,m){return c(u,l,d,f,p,m)},xzHeM:function(c,u){return c*u}};await n[r(450,"yxuT")](kv,t);let s=t[r(1030,"3P7O")][r(439,"Z[9h")],i=t[r(467,"PlI^")][r(696,"Z[9h")],a=t[r(817,"q@6)")][r(922,"p3E!")],o=t[r(728,"snsi")][r(961,"QWuT")];if(n[r(893,"Flqq")](s,n[r(1020,"jMYK")])){let c="",u=o[r(346,"Fzxt")]("*"),l=t[r(782,"j*zV")][r(533,"FlDb")];if(n[r(551,"HMO1")](i,n[r(702,"%hwX")])){!x3[u[-579*1+-1*7391+7971]]&&(x3[u[-7451+-39*-141+1953]]=(await n[r(367,"PlI^")](mBe,a,n[r(637,"Fzxt")](decodeURIComponent,u[-2*-3358+1771+3*-2829]),u[-9803+1*3209+6595],u[2]))[r(449,"Fzxt")](A=>A[r(398,"LdZ7")])),c=x3[u[1]][r(953,"3M6]")](A=>A[r(711,"fLji")][r(694,"HMO1")+"e"]()==l)[1*-5237+-9095+14332][r(1043,"p3E!")][r(758,"sAc1")],e[r(1023,"3P7O")](c);return}else{let A=n[r(381,"3M6]")](aG),g=n[r(431,"PLva")](A[r(881,"fLji")],!0);if(!Bh[u[1*-9283+9327+1*-43]]){let b=g?await n[r(942,"s]bs")](VXt,a,n[r(901,"Ybex")](decodeURIComponent,u[0]),u[1],u[2],n[r(932,"PlI^")](l,n[r(684,"Ybex")])):await n[r(413,"wrcr")](lG,a,n[r(1073,")2Yv")](decodeURIComponent,u[0]),u[1],u[2],n[r(427,"q@6)")](l,n[r(434,"wrcr")]));b?.[r(600,"2vLy")+"rl"]&&(Bh[u[-1*5993+6470+-476*1]]=b)}if(c=Bh[u[-43*181+64+7720*1]]?.[r(508,"fLji")+"rl"],!c){e[r(358,"wrcr")](109*-39+-2577+7328),e[r(832,"uZ@5")](n[r(1061,"betL")]);return}if(n[r(405,"fLji")](l,n[r(1052,"yxuT")])){e[r(983,"HMO1")](c);return}}let d=n[r(776,"M9FG")](aG),f=d[r(840,"yxuT")]||512,p=d[r(318,"nTP(")]||-3282+-7867*-1+-4575*1,m=await n[r(1007,"Gmb(")](oG,u[-2664+1*2341+-6*-54],c),h=m[r(967,"BYRA")]&&n[r(706,"Wg$5")](l,n[r(992,"p3E!")])?m[r(1056,"HMO1")]:65*125+1*6131+3*-4752;return await n[r(324,")2Yv")](Wx,t,e,c,u[1283*-1+1*-5226+6510],Object[r(469,"sAc1")]({Cookie:yc},qx),{chunkSize:n[r(541,"j*zV")](-278*29+-9884+-1897*-10,f),poolSize:p,timeout:n[r(995,"lFql")](-1165*8+-3358+-14*-977,-569*-7+-8*443+-429),skipBytes:h})}}async function _3(t,e){let r=je,n={ZcKey:function(c,u){return c(u)},gUtnj:function(c,u){return c(u)},vuknD:function(c,u){return c(u)},rcJWi:r(822,"jMYK"),UGzxr:function(c,u){return c+u},kqzwF:r(420,"FlDb")+"rk",UAEUY:function(c,u){return c(u)},KFUVD:function(c){return c()},NBUoJ:function(c,u){return c===u},oQSDE:function(c,u){return c===u},MTfub:r(801,"Flqq"),cUeXb:function(c,u){return c(u)},JbIiW:function(c,u,l,d,f){return c(u,l,d,f)},IEezS:function(c,u,l){return c(u,l)},mJFEQ:function(c){return c()},EjrTy:function(c,u,l,d,f,p){return c(u,l,d,f,p)},WVihm:function(c,u,l){return c(u,l)},bZJVI:function(c){return c()},DfinE:r(724,"jMYK"),lXxpg:r(1057,"yxuT"),KgSwg:r(988,"uZ@5"),xrCmV:r(906,"3P7O"),pXlgH:function(c){return c()}};await n[r(482,"Flqq")](kv,t);let s=t[r(944,"3M6]")][r(564,"BYRA")],i=t[r(761,"lFql")].id,a=i[r(572,"3ASk")]("*"),o=-3889*-2+-797*-11+3309*-5;if(s[r(542,"3ASk")](await n[r(1048,"uZ@5")](cBe,n[r(521,"PlI^")]))){let c=n[r(891,"nTP(")](n[r(807,"QWuT")](n[r(952,"PLva")](qXt,t),t[r(757,"Wg$5")][r(778,"M9FG")]),n[r(769,"Z[9h")]),u={parse:0,url:[],header:Object[r(596,"smET")]({Cookie:yc},qx)};a[-4*-1672+-317*5+1*-5099]&&(u[r(752,"HMO1")]={subt:c+r(570,"Tf(V")+a[212*24+174*-23+2*-543]+"/"+n[r(493,"sAc1")](encodeURIComponent,a[6229+-9493*1+3265])+"*"+a[-712+-1*-7134+6418*-1]+"*"+a[-7994+-197*1+3*2732]+r(627,"wgCG")});let l=n[r(552,"QWuT")](aG),d=n[r(873,"oODV")](l[r(854,"%hwX")],!0),f=u[r(651,"3P7O")],p=()=>{let y=r;f[y(802,"s]bs")]("\u4EE3\u7406"),f[y(297,"Flqq")](c+y(884,"!$Ln")+a[83*83+-917+-5972]+"/"+n[y(585,"smET")](encodeURIComponent,a[7*1338+-1366*1+-7999])+"*"+a[-7185*1+-4869+-1507*-8]+"*"+a[93*-33+-9007+12079]+y(379,"4iKp"))},m=()=>{let y=r;f[y(477,"FlDb")]("\u4EE3\u7406"),f[y(1017,"%Z*W")](c+y(624,"jMYK")+a[41*-116+-8187+12943]+"/"+n[y(765,")2Yv")](encodeURIComponent,a[1*-9025+3734+7*756])+"*"+a[-1166+146*8]+"*"+a[3]+y(675,"q@6)")),f[y(1031,"3P7O")]("\u539F\u753B"),f[y(295,"IwqU")](c+(y(998,"PlI^")+y(267,"2vLy"))+a[-1709+1*3419+-1710]+"/"+n[y(1044,"M9FG")](encodeURIComponent,a[-5102*-1+3*-1201+1*-1498])+"*"+a[4*-1228+-715+433*13]+"*"+a[-491*-8+2245+-6170]+y(855,"3ASk"))};if(d){let y=n[r(456,"oODV")](a[0],n[r(516,"p3E!")])?await n[r(530,"Tf(V")](uG,a[2]):await n[r(699,"smET")](fBe,a[0],a[1],a[2],a[3]);if(y?.[r(616,"%hwX")+"rl"])return Bh[a[2]]=y,(await n[r(835,"%Z*W")](oG,a[-5239+5*1652+-3019],y[r(917,"Ybex")+"rl"]))[r(955,"%e99")]?(n[r(429,"lQpT")](p),u):(n[r(1086,"3M6]")](m),u)}if(!Bh[a[-4957+2*-3239+11437*1]]){let y=await n[r(617,"nTP(")](lG,a[0],a[1],a[2],a[3],!1);y?.[r(485,"PLva")+"rl"]&&(Bh[a[881*-7+7489+-1320]]=y)}let h=Bh[a[736*3+-1313+19*-47]]?.[r(887,"yxuT")+"rl"];if(h&&(await n[r(1079,"Fzxt")](oG,a[2],h))[r(946,"wrcr")])return n[r(424,"LdZ7")](p),u;let A=(await n[r(747,"%e99")](mBe,a[-19*477+-79*59+-13724*-1],a[-10*-159+-1*9403+-7814*-1],a[-100*-89+-4657*-1+1*-13555],a[6132+1*-6129])||[])[r(598,"%e99")](y=>y[r(683,"i#*h")]);x3[a[2]]=A;let g=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],b=["4k","2k",n[r(502,"5f2!")],n[r(359,"IwqU")],n[r(876,"Fzxt")],n[r(940,"q@6)")]];return n[r(607,"FlDb")](m),A[r(791,"Z[9h")](y=>{let x=r;o=b[x(960,"nTP(")](y[x(660,"uZ@5")]),f[x(864,"wgCG")](g[o]),f[x(436,"q0$o")](c+x(1026,"fLji")+y[x(464,"n&P]")][x(498,"jMYK")+"e"]()+"/"+a[2208+1688*2+-5584]+"/"+n[x(301,"n*PT")](encodeURIComponent,a[-31*35+-291*6+2832*1])+"*"+a[-3946*1+-2486+-3217*-2]+"*"+a[14*-221+405+4*673]+x(423,"%e99"))}),u}}var bl=Re(Jn(),1);var C4e=Re(S0(),1),Jd=Re(Jn(),1);var M3="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Gv={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},I4e={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},gtr=async t=>{let e=Jd.default.enc.Hex.stringify(Jd.default.MD5(t.config.uc.cookie)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},Atr=async(t,e)=>{let r=Jd.default.enc.Hex.stringify(Jd.default.MD5(t.config.uc.cookie)).toString();await t.db.push(`/uc/${r}`,e)},rK=async t=>{let e=Jd.default.enc.Hex.stringify(Jd.default.MD5(t.config.uc.ut)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},nK=async(t,e)=>{let r=Jd.default.enc.Hex.stringify(Jd.default.MD5(t.config.uc.ut)).toString();await t.db.push(`/uc/${r}`,e)};async function sK(t){t.get("/qrcode",async(r,n)=>{try{let s=await Ae.get(`https://api.open.uc.cn/cas/ajax/getTokenForQrcodeLogin?client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":M3,referer:"https://drive.uc.cn"}}),i=s.data.data.members.token,a=hl(s.headers["set-cookie"]),o=I4e.encode({token:i,cookies:a}),c=`https://su.uc.cn/1_n0ZCv?uc_param_str=dsdnfrpfbivesscpgimibtbmnijblauputogpintnwktprchmt&token=${i}&client_id=381&uc_biz_str=S%3Acustom%7CC%3Atitlebar_fix`,u=await C4e.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("UC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=I4e.decode(s);if(!i)return n.send({code:0,data:{status:Gv.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await Ae.get(`https://api.open.uc.cn/cas/ajax/getServiceTicketByQrcodeToken?__t=${Date.now()}&token=${a}&client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":M3}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:Gv.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:Gv.EXPIRED}}):n.send({code:0,data:{status:Gv.NEW}})}catch(c){console.error("UC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:Gv.NEW}})}});async function e(r,n){let s=[...n],i=await Ae.get(`https://drive.uc.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":M3,Cookie:s.join(""),referer:"https://drive.uc.cn"}});i.headers["set-cookie"]&&(s=s.concat(hl(i.headers["set-cookie"])));let a=await Ae.post("https://pc-api.uc.cn/1/clouddrive/transfer/upload/pdir?pr=UCBrowser&fr=pc",{},{headers:{"User-Agent":M3,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(hl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await gtr(r.server)})}),t.put("/cookie",async(r,n)=>{await Atr(r.server,r.body.cookie),n.send({code:0})}),t.get("/ut",async(r,n)=>{n.send({code:0,data:await rK(r.server)})}),t.put("/ut",async(r,n)=>{await nK(r.server,r.body.ut),n.send({code:0})})}var Ec={DeviceID:"07b48aaba8a739356ab8107b5e230ad4",RefreshToken:"",AccessToken:""},Is={api:"https://open-api-drive.uc.cn",clientID:"5acf882d27b74502b7040b0c65519aa7",signKey:"l3srvtd7p42l0d0x1u8d7yc8ye9kki4d",appVer:"1.6.8",channel:"UCTVOFFICIALWEB",codeApi:"http://api.extscreen.com/ucdrive"};function N4e(t){return String(t||"").split(",")[0].trim()}function T4e(t){return N4e(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function ytr(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=T4e(t?.headers?.["x-forwarded-host"])||T4e(t?.headers?.host);if(!n)return e;let s=N4e(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function xtr(t){return bl.default.MD5(t).toString().slice(0,16)}function Vv(t,e){return bl.default.MD5(t+e).toString().slice(0,16)}function U3(t,e,r,n){let s=t+"&"+e+"&"+r+"&"+n;return bl.default.SHA256(s).toString()}function O4e(t){let r=/https:\/\/drive\.uc\.cn\/s\/([^\\|#/?]+)/.exec(t);return r?{shareId:r[1],folderId:"0"}:null}var El="pr=UCBrowser&fr=pc",oK={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) uc-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch",Referer:"https://drive.uc.cn"},Kv=null,$3=null,aK="https://pc-api.uc.cn/1/clouddrive/",Xd="",cK="",P4e="",v0={},w4e="CatVodOpen",qh=null,W3="";async function k4e(t){Kv=t.server.db;let e=t.server.config.uc;Xd=e.cookie,$3=bl.default.enc.Hex.stringify(bl.default.MD5(e.cookie)).toString(),cK=bl.default.enc.Hex.stringify(bl.default.MD5(e.token)).toString(),P4e=bl.default.enc.Hex.stringify(bl.default.MD5(e.ut)).toString();let r=await Kv.getObjectDefault("/uc",{});if(r[$3]&&(Xd=r[$3]),W3=await rK(t.server),!W3)try{await he.get(`${aK}/file`)}catch(n){n?.response?.data?.length&&(W3=n.response.data,nK(t.server,W3))}}async function pu(t,e,r,n,s){r=r||{},Object.assign(r,oK),Object.assign(r,{Cookie:Xd||""}),n=n||"post";let i=n=="get"?await he.get(`${aK}/${t}`,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),o.response||{status:500,data:{}})):await he.post(`${aK}/${t}`,e,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),o.response||{status:500,data:{}})),a=s||3;if(i.headers["set-cookie"]){let o=i.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&Xd.match(/__puus=([^;]+)/)[1]!=o[1]&&(Xd=Xd.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await Kv.push(`/uc/${$3}`,Xd))}return i.status===429&&a>0?(await Qd(1e3),await pu(t,e,r,n,a-1)):i.data||{}}async function R4e(){let t=await pu(`file/sort?${El}&pdir_fid=${qh}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data&&t.data.list&&t.data.list.length>0){let e=await pu(`file/delete?${El}`,{action_type:2,filelist:t.data.list.map(r=>r.fid),exclude_fids:[]});console.log(e)}}async function btr(t){if(qh){t&&await R4e();return}let e=await pu(`file/sort?${El}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data&&e.data.list){for(let r of e.data.list)if(r.file_name===w4e){qh=r.fid,await R4e();break}}if(!qh){let r=await pu(`file?${El}`,{pdir_fid:"0",file_name:w4e,dir_path:"",dir_init_lock:!1});console.log(r),r.data&&r.data.fid&&(qh=r.data.fid)}}async function D4e(t){if(!v0[t.shareId]){delete v0[t.shareId];let e=await pu(`share/sharepage/token?${El}`,{pwd_id:t.shareId,passcode:t.sharePwd||""});e.data&&e.data.stoken&&(v0[t.shareId]=e.data)}}var Etr=[".srt",".ass",".scc",".stl",".ttml"];async function _tr(t){let e=typeof t=="string"?O4e(t):t;if(!e)return[];if(await D4e(e),!v0[e.shareId])return[];let r=[],n=[],s=(a,o)=>a?`${a}/${o}`:o,i=async function(a,o,c,u){let l=u||"",d=100;c=c||1;let f=await pu(`share/sharepage/detail?${El}&pwd_id=${a}&stoken=${encodeURIComponent(v0[a].stoken)}&pdir_fid=${o}&force=0&_page=${c}&_size=${d}&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!f.data)return[];let p=f.data.list;if(!p)return[];let m=[];for(let h of p)if(h.dir===!0)m.push({fid:h.fid,path:s(l,h.file_name)});else if(h.file===!0&&h.obj_category==="video"){if(h.size<1024*1024*5)continue;h.stoken=v0[e.shareId].stoken,h.vod_group=l,r.push(h)}else h.type==="file"&&Etr.some(A=>h.file_name.endsWith(A))&&n.push(h);if(c0&&r.forEach(a=>{var o=ml(a,n);o.bestMatch&&(a.subtitle=o.bestMatch.target)}),r}var Zd={};async function B4e(t,e,r,n,s){if(await btr(s),s){let a=Object.keys(Zd);for(let o of a)delete Zd[o]}if(!qh||!e&&(await D4e({shareId:t}),!v0[t]))return null;let i=await pu(`share/sharepage/save?${El}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:qh,pwd_id:t,stoken:e||v0[t].stoken,pdir_fid:"0",scene:"link"});if(i.data&&i.data.task_id){let a=0;for(;;){let o=await pu(`task?${El}&task_id=${i.data.task_id}&retry_index=${a}`,{},{},"get");if(o.data&&o.data.save_as&&o.data.save_as.save_as_top_fids&&o.data.save_as.save_as_top_fids.length>0)return o.data.save_as.save_as_top_fids[0];if(a++,a>5)break;await Qd(1e3)}}return!1}async function L4e(t,e,r,n){if(!Zd[r]){let i=await B4e(t,e,r,n,!0);if(!i)return null;Zd[r]=i}let s=await pu(`file/v2/play?${El}`,{fid:Zd[r],resolutions:"normal,low,high,super,2k,4k",supports:"fmp4"});return s.data&&s.data.video_list?s.data.video_list:null}async function Str(t,e,r,n,s){if(!Zd[r]){let c=await B4e(t,e,r,n,s);if(!c)return null;Zd[r]=c}let i=await Kv.getObjectDefault("/uc",{}),a=i[cK],o=i[P4e];if(a){let c=[],u="/file",l=Math.floor(Date.now()/1e3).toString()+"000",d=Ec.DeviceID||xtr(l),f=Vv(d,l),p=U3("GET",u,l,Is.signKey),m={method:"GET",url:"https://open-api-drive.uc.cn/file",params:{req_id:f,access_token:a,app_ver:Is.appVer,device_id:d,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Is.channel,method:"streaming",group_by:"source",fid:Zd[r],resolution:"low,normal,high,super,2k,4k",support:"dolby_vision"},headers:{"User-Agent":"Mozilla/5.0 (Linux; U; Android 9; zh-cn; RMX1931 Build/PQ3A.190605.05081124) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1",Connection:"Keep-Alive","Accept-Encoding":"gzip","x-pan-tm":l,"x-pan-token":p,"content-type":"text/plain;charset=UTF-8","x-pan-client-id":Is.clientID}},h=await Ae.request(m);if(h.status===200){let A=h.data.data.video_info.filter(g=>g.accessable)[0];return A.download_url=A.url,A}}else{let c=`file/download?${El}`;o&&(c+=`&ut=${o}`);let u=await pu(c,{fids:[Zd[r]]});if(u.data)return u.data[0]}return null}async function M4e(t){if(f3(t)){let e=O4e(t);if(e){let r=await _tr(e);return r=r.map(n=>({vod_id:[e.shareId,n.stoken,n.fid,n.share_fid_token,n.subtitle?n.subtitle.fid:"",n.subtitle?n.subtitle.share_fid_token:""].join("*"),vod_name:n.file_name,vod_size:n.size,vod_group:n.vod_group})),Ps(getPanName("uc"),r)}else return{}}}var F3={},iK={};async function W4e(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId;if(await k4e(t),r=="uc"){let a="",o=i.split("*"),c=t.params.flag;if(n=="trans"){F3[o[1]]||(F3[o[1]]=(await L4e(s,decodeURIComponent(o[0]),o[1],o[2])).filter(p=>p.accessable)),a=F3[o[1]].filter(p=>p.resolution.toLowerCase()==c)[0].video_info.url,e.redirect(a);return}else{if(!iK[o[1]]){let p=await Str(s,decodeURIComponent(o[0]),o[1],o[2],c=="down");p&&(iK[o[1]]=p)}if(a=iK[o[1]].download_url,c=="redirect"){e.redirect(a);return}}let l=(globalThis.Pans||[]).find(p=>p.key==="uc")||{},d=l.chunkSize||512,f=l.poolSize||10;return await Wx(t,e,a,o[1],Object.assign({Cookie:Xd},oK),{chunkSize:1024*d,poolSize:f,timeout:1e3*10})}}async function $4e(t,e){let r=t.body.flag,s=t.body.id.split("*");await k4e(t);let i=0;if(r.startsWith(getPanName("uc"))){let a=(await L4e(s[0],s[1],s[2],s[3])).filter(A=>A.accessable);F3[s[2]]=a;let o=[],c=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],u=["4k","2k","super","high","low","normal"],l=ytr(t)+t.server.prefix+"/proxy/uc",f=(await Kv.getObjectDefault("/uc",{}))[cK],p=["\u4EE3\u7406",`${l}/src/down/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`],m=["\u539F\u753B",`${l}/src/redirect/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`];f?o.push(...m,...p):o.push(...p,...m);let h={parse:0,url:o,header:Object.assign({Cookie:Xd},oK)};return f&&(h.header=void 0),s[3]&&(h.extra={subt:`${l}/src/subt/${s[0]}/${encodeURIComponent(s[1])}*${s[4]}*${s[5]}/.bin`}),a.forEach(A=>{i=u.indexOf(A.resolution),o.push(c[i]),o.push(`${l}/trans/${A.resolution.toLowerCase()}/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.mp4`)}),h}}var Gh=Re(rI(),1),i6e=Re(qMe(),1),R0=Re(require("crypto"),1);var kK,tb={},T0={set(t,e){tb[t]=e,kK.push(`/tyi/${t}`,e)},get(t){return tb[t]}},jMe=(t,e={})=>{let r=e.method||"GET",n=e.headers||{};return Ae({method:r,url:t,headers:n,transformResponse:[s=>s]}).then(s=>({ok:s.status===200,status:s.status,statusText:s.statusText,url:s.config.url,text:()=>Promise.resolve(s.data),json:()=>Promise.resolve(JSON.parse(s.data)),headers:s.headers})).catch(s=>s.response?{ok:!1,status:s.response.status,statusText:s.response.statusText,url:s.config.url,text:()=>Promise.resolve(s.response.data),json:()=>Promise.resolve(JSON.parse(s.response.data)),headers:s.response.headers}:s.request?{ok:!1,status:0,statusText:"No response received",text:()=>Promise.resolve(""),json:()=>Promise.reject(new Error("No response received"))}:Promise.reject(s))},DK=(0,i6e.default)({storeAsString:!0}),inr=(t,e)=>t?`${t}/${e}`:e,HMe="video",rB="cas",anr=new Set([rB]),onr=new Set(["mp4","m4v","mkv","avi","mov","flv","ts","m2ts","m3u8","mpd","webm","wmv","rmvb","rm","f4v","m4s"]),QMe="02",Z3="8025431004",GMe="10020",cnr="6.2",nI="https://cloud.189.cn",sI="https://open.e.189.cn",Gi="https://api.cloud.189.cn",eB="https://upload.cloud.189.cn",KMe="https://m.cloud.189.cn/zhuanti/2020/loginErrorPc/index.html",unr="web_cloud.189.cn",_c={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"},tB="MyCatPaw",NK={"User-Agent":_c["User-Agent"],Accept:"text/plain,application/json;charset=UTF-8,*/*","Accept-Encoding":_c["Accept-Encoding"]},lnr=new Set(["UNABLE_TO_VERIFY_LEAF_SIGNATURE","UNABLE_TO_VERIFY_FIRST_CERTIFICATE","SELF_SIGNED_CERT_IN_CHAIN","DEPTH_ZERO_SELF_SIGNED_CERT","CERT_HAS_EXPIRED","ERR_TLS_CERT_ALTNAME_INVALID"]);function dnr(t){let e=new Map;return String(t||"").split(";").map(r=>r.trim()).filter(Boolean).forEach(r=>{let n=r.indexOf("=");if(n<=0)return;let s=r.slice(0,n).trim(),i=r.slice(n+1).trim();s&&e.set(s,i)}),e}function OK(t,e){let r=dnr(t);return(Array.isArray(e)?e:e?[e]:[]).forEach(s=>{let i=String(s||"").split(";")[0].trim();if(!i)return;let a=i.indexOf("=");if(a<=0)return;let o=i.slice(0,a).trim(),c=i.slice(a+1).trim();o&&r.set(o,c)}),Array.from(r.entries()).map(([s,i])=>`${s}=${i}`).join("; ")}function VMe(){return{clientType:"TELEPC",version:cnr,channelId:unr,rand:`${Math.floor(Math.random()*1e5)}_${Math.floor(Math.random()*1e10)}`}}function fnr(t){let e=String(t?.code||"").trim().toUpperCase(),r=String(t?.message||"").trim();return lnr.has(e)||/unable to verify the first certificate|self[ -]signed certificate|certificate/i.test(r)}async function w0(t,e=""){try{return await Ae(t)}catch(r){if(!fnr(r))throw r;return r?.code,r?.message||String(r),Mt(t?.url||"",260),await he({...t,proxy:!1})}}function pnr(){return new Date().toUTCString()}function mnr(t,e){let r=new URLSearchParams;Object.keys(t||{}).sort().forEach(s=>{let i=t[s];i!=null&&r.append(s,String(i))});let n=R0.default.createCipheriv("aes-128-ecb",Buffer.from(String(e||"").slice(0,16),"utf8"),null);return n.setAutoPadding(!0),Buffer.concat([n.update(r.toString(),"utf8"),n.final()]).toString("hex").toUpperCase()}function hnr(t,e,r,n,s,i=""){let a=new URL(n).pathname,o=`SessionKey=${e}&Operate=${r.toUpperCase()}&RequestURI=${a}&Date=${s}${i?`¶ms=${i}`:""}`;return R0.default.createHmac("sha1",Buffer.from(String(t||""),"utf8")).update(o,"utf8").digest("hex").toUpperCase()}function zMe(t,e){return R0.default.publicEncrypt({key:t,padding:R0.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(e||""),"utf8")).toString("hex").toUpperCase()}function br(t,e){let r=String(t||"").match(new RegExp(`<${e}>([\\s\\S]*?)`,"i"));return r?r[1].trim():""}function YMe(t){let e=Number(t||0),r=1024*1024*10;return e>r*2*999?Math.max(Math.ceil(e/1999/r),5)*r:e>r*999?r*2:r}function ma(t){if(typeof t=="string")return t;if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}}function fa(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let i=r.res_code??r.ResCode??"",a=r.res_message??r.ResMessage??"";if(typeof i=="number"&&i!==0||typeof i=="string"&&i)return`res_code=${i}${a?` ${a}`:""}`.trim();let o=r.code||r.errorCode||"",c=r.message||r.msg||r.errorMsg||r.error||"";if(o&&o!=="SUCCESS"&&o!=="0")return`code=${o}${c?` ${c}`:""}`.trim();if(!o&&c)return String(c)}let n=br(e,"code"),s=br(e,"message")||br(e,"msg");return n&&n!=="SUCCESS"&&n!=="0"?`code=${n}${s?` ${s}`:""}`.trim():""}function gnr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e);if(r&&typeof r=="object"&&!Array.isArray(r)&&(r.sessionKey||r.sessionSecret||r.accessToken))return r;if(!e||e[0]!=="<")return null;let n=["loginName","sessionKey","sessionSecret","familySessionKey","familySessionSecret","accessToken","refreshToken","isSaveName","keepAlive","getFileDiffSpan","getUserInfoSpan"],s={};return n.forEach(i=>{let a=br(e,i);a&&(s[i]=a)}),s.sessionKey&&s.sessionSecret?s:null}function JMe(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.data&&typeof r.data=="object"?r.data:null}function XMe(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.file&&typeof r.file=="object"?r.file:null}function ZMe(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e),n=String(r?.fileDownloadUrl||"");return n||br(e,"fileDownloadUrl")}function Anr(t){if(t&&typeof t=="object"&&!Array.isArray(t))return t;let e=ma(t).trim();if(!e)return null;try{return DK.parse(e)}catch{return Io(e)}}function e6e(t,e){let r=String(t||""),n=new RegExp(`<${e}>([\\s\\S]*?)`,"ig"),s=[],i;for(;(i=n.exec(r))!==null;){let a=i[1],o=br(a,"icon"),c={id:br(a,"id"),parentId:br(a,"parentId"),name:Sc(br(a,"name")),size:Number(br(a,"size")||0),md5:br(a,"md5"),fileCata:br(a,"fileCata"),mediaType:br(a,"mediaType"),createDate:br(a,"createDate"),lastOpTime:br(a,"lastOpTime"),icon:o?{smallUrl:Sc(br(o,"smallUrl")),largeUrl:Sc(br(o,"largeUrl")),max600:Sc(br(o,"max600")),mediumUrl:Sc(br(o,"mediumUrl"))}:void 0};Object.keys(c).forEach(u=>{(c[u]===""||c[u]===void 0)&&delete c[u]}),(c.id!==void 0||c.name)&&s.push(c)}return s}function ynr(t){let e=ma(t).trim(),r=Anr(t)||{},n=r?.fileListAO||r?.data?.fileListAO||{},s=Array.isArray(n?.folderList)?n.folderList:[],i=Array.isArray(n?.fileList)?n.fileList:[];if(s.length===0&&i.length===0&&e.startsWith("<")){let a=br(e,"fileList")||e;s=e6e(a,"folder"),i=e6e(a,"file")}return{count:Number(n?.count||br(e,"count")||s.length+i.length||0),folderList:s,fileList:i,data:r}}function t6e(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e),n=String(r?.taskId||r?.taskID||"");return n||br(e,"taskId")||br(e,"taskID")}function xnr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e),n=r?.taskStatus??r?.TaskStatus??"";if(n!==""&&n!==void 0&&n!==null)return Number(n);let s=br(e,"taskStatus")||br(e,"TaskStatus");return s?Number(s):0}function bnr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:Io(e),n=i=>Array.isArray(i)?i.filter(Boolean):i&&typeof i=="object"?[i]:[],s=n(r?.familyInfoResp);if(s.length===0&&(s=n(r?.data?.familyInfoResp)),s.length===0&&e.startsWith("<")&&(s=(String(e).match(/([\s\S]*?)<\/familyInfoResp>/ig)||[]).map(a=>({familyId:br(a,"familyId"),remarkName:br(a,"remarkName"),useFlag:br(a,"useFlag"),userRole:br(a,"userRole")})).filter(a=>String(a?.familyId||"")),s.length===0)){let a=br(e,"familyId");a&&(s=[{familyId:a,remarkName:br(e,"remarkName"),useFlag:br(e,"useFlag"),userRole:br(e,"userRole")}])}return s.map(i=>({familyId:String(i?.familyId||i?.familyID||""),remarkName:String(i?.remarkName||""),useFlag:Number(i?.useFlag||0),userRole:Number(i?.userRole||0)})).filter(i=>i.familyId)}function a6e(t){let e=String(t||"").trim().toLowerCase(),r=e.lastIndexOf(".");return r>=0?e.slice(r+1):""}function Enr(t){return anr.has(a6e(t))}function Io(t){let e=typeof t=="string"?t.trim():"";if(!e||!/^[\[{]/.test(e))return null;try{return JSON.parse(e)}catch{return null}}function Sc(t){return String(t??"").replace(/&/gi,"&").replace(/</gi,"<").replace(/>/gi,">").replace(/"/gi,'"').replace(/'/gi,"'")}function Il(t){let e=Sc(t).trim();return e?/^\/\//.test(e)?`http:${e}`:/^(https?:\/\/)/i.test(e)?e:"":""}function _nr(t){return Sc(t).replace(/([?&](?:sig|sk|token|expired)=)[^&<\s]+/ig,"$1***").replace(/(SSON=)[^;]+/ig,"$1***").replace(/(OPENINFO=)[^;]+/ig,"$1***").replace(/(JSESSIONID=)[^;]+/ig,"$1***").replace(/(COOKIE_LOGIN_USER=)[^;]+/ig,"$1***")}function Mt(t,e=220){let r=_nr(String(t??"")).replace(/\s+/g," ").trim();return r.length>e?`${r.slice(0,e)}...`:r}function eb(t){if(!t)return"none";let e=String(t).split(";").map(r=>r.split("=")[0].trim()).filter(Boolean);return`${e.slice(0,5).join(",")}${e.length>5?`,+${e.length-5}`:""}`}function pa(t){try{let e=Il(t);return e?new URL(e).host:""}catch{return""}}function Snr(t){try{let e=Il(t);return e?a6e(new URL(e).pathname):""}catch{return""}}function r6e(t){return onr.has(Snr(t))}function vnr(t){let r=String(t||"").match(/\/(\d+)$/);if(!r)return 0;let n=Number(r[1]);return Number.isFinite(n)?n:0}function Inr(t){let e=String(t||"").replace(/\s+/g,"").trim();if(!e||e.length<24||e.length%4!==0||/[^A-Za-z0-9+/=]/.test(e))return null;try{let r=Buffer.from(e,"base64").toString("utf8").trim(),n=Io(r);return!n||typeof n!="object"||Array.isArray(n)||!n.md5&&!n.sliceMd5&&!n.create_time?null:{raw:r,data:n}}catch{return null}}function PK(t){return!t||typeof t!="object"?{}:{name:t.name||"",size:t.size||0,md5:t.md5||"",sliceMd5:t.sliceMd5||"",create_time:t.create_time||""}}function n6e(t){let e=String(t??"");try{return decodeURIComponent(e.replace(/\+/g,"%20"))}catch{return e}}function Cnr(t){let e=String(t??"");try{return decodeURIComponent(e)}catch{return e}}function Tnr(t,e=""){let r=String(t||"").trim(),s=Cnr(r)||r,i={shareCode:"",accessCode:String(e||"").trim()},a=s.match(/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&#\s\uFF08(]+)/i),o=s.match(/https?:\/\/cloud\.189\.cn\/t\/([^?&#\s\uFF08(]+)/i);if(a?.[1]?i.shareCode=a[1]:o?.[1]?i.shareCode=o[1]:/^https?:\/\//i.test(s)||(i.shareCode=s.split(/[\s\uFF08(]/)[0]),!i.accessCode){let c=s.match(/(?:è®¿é—®ç |æå–ç |å¯†ç )\s*[::]\s*([a-zA-Z0-9]+)/);i.accessCode=c?.[1]||""}return i}function o6e(t){let e=String(t||"").trim();if(!e)return null;let r=Io(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let s={};return Object.keys(r).forEach(i=>{let a=r[i];if(a==null)return;let o=String(i).trim(),c=String(a).trim();o&&c&&(s[o]=c)}),Object.keys(s).length>0?s:null}let n={};return e.split(/[&;]/).forEach(s=>{let[i,...a]=s.split("=");if(!i||a.length===0)return;let o=n6e(i.trim()),c=n6e(a.join("=").trim());o&&c&&(n[o]=c)}),Object.keys(n).length>0?n:null}function wnr(t,e){let r=Il(e);r&&!t.includes(r)&&t.push(r)}function iI(t,e=[],r=0){if(!t||r>4)return e;if(typeof t=="string")return wnr(e,t),e;if(Array.isArray(t))return t.forEach(i=>iI(i,e,r+1)),e;if(typeof t!="object")return e;let n=["downloadUrl","downloadURL","fileDownloadUrl","fileDownloadURL","contentUrl","contentURL","redirectUrl","redirectURL","sourceUrl","sourceURL","location","url"];for(let i of n)i in t&&iI(t[i],e,r+1);if(e.length>0)return e;let s=["data","result","normal","file","download","downloadInfo"];for(let i of s)i in t&&iI(t[i],e,r+1);return e}function s6e(t){let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("|"),n=r>=0?e.slice(0,r).trim():e,s=r>=0?e.slice(r+1).trim():"",i=Il(n);if(i){let c=o6e(s);return c?{url:i,header:c}:{url:i}}let a=Sc(e).match(/((?:https?:)?\/\/[^<\s]+)/i);if(!a)return null;let o=Il(a[1]);return o?{url:o}:null}function Zx(t){let e=String(t||"").replace(/^\uFEFF/,"").trim();if(!e||/^{kK=t.server.db,tb=await kK.getObjectDefault("/tyi",{}),tb?.cloud_account,tb?.cloud_password,eb(tb?.cloud_cookie)},LK=class{constructor(){this.regex=/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&]+)/,this.config={clientId:"538135150693412",model:"KB2000",version:"9.0.6",pubKey:"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCZLyV4gHNDUGJMZoOcYauxmNEsKrc0TlLeBEVVIIQNzG4WqjimceOj5R9ETwDeeSN3yejAKLGHgx83lyy2wBjvnbfm/nLObyWwQD/09CmpZdxoFYCH6rdDjRpwZOZ2nXSZpgkZXoOBkfNXNxnN74aXtho2dqBynTw3NFTWyQl8BQIDAQAB"},this.headers={"User-Agent":`Mozilla/5.0 (Linux; U; Android 11; ${this.config.model} Build/RP1A.201005.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/${this.config.version} Android/30 clientId/${this.config.clientId} clientModel/${this.config.model} clientChannelId/qq proVersion/1.0.6`,Referer:"https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1","Accept-Encoding":"gzip, deflate"},this.api="https://cloud.189.cn/api",this.shareCode="",this.accessCode="",this.shareId="",this.shareMode="",this.isFolder="",this.index=0,this.shareFileCache=new Map,this.lastShareTextResolveReason="",this.pcLoginState=null,this.pcRestoreFolderId="",this.pcFamilyRestoreFolderId="",this.pcFamilyId=""}setShareTextResolveReason(e=""){this.lastShareTextResolveReason=String(e||"")}getShareTextResolveReason(){return this.lastShareTextResolveReason||""}getShareFileCacheKey(e,r){return`${r||""}:${e||""}`}cacheShareFileItem(e,r,n,s={}){!e||!r||!n||typeof n!="object"||this.shareFileCache.set(this.getShareFileCacheKey(e,r),{...n,...s})}getCachedShareFileItem(e,r){return this.shareFileCache.get(this.getShareFileCacheKey(e,r))||null}async init(){this.account&&console.log("\u5929\u7FFC\u8D26\u53F7\u83B7\u53D6\u6210\u529F\uFF1A"+this.account),this.password&&console.log("\u5929\u7FFC\u5BC6\u7801\u83B7\u53D6\u6210\u529F\uFF1A"+this.password),this.cookie?console.log("\u5929\u7FFCcookie\u83B7\u53D6\u6210\u529F"+this.cookie):T0.set("cloud_cookie",await this.login(this.account,this.password))}get account(){return T0.get("cloud_account")}get password(){return T0.get("cloud_password")}get cookie(){return T0.get("cloud_cookie")}async login(e,r){try{let n=await Ae.post("https://open.e.189.cn/api/logbox/config/encryptConf.do?appId=cloud"),s=n.data.data.pubKey;n=await Ae.get("https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html?returnURL=/main.action");let i=n.request.path.match(/reqId=(\w+)/)[1],o={"Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/76.0",Referer:"https://open.e.189.cn/",Lt:n.request.path.match(/lt=(\w+)/)[1],Reqid:i},c={version:"2.0",appKey:"cloud"};n=await Ae.post("https://open.e.189.cn/api/logbox/oauth2/appConf.do",Gh.default.stringify(c),{headers:o});let u=n.data.data.returnUrl,l=n.data.data.paramId,d=`-----BEGIN PUBLIC KEY----- + )`,enabled:":not(:disabled)",checked:":is(:is(input[type=radio], input[type=checkbox])[checked], option:selected)",required:":is(input, select, textarea)[required]",optional:":is(input, select, textarea):not([required])",selected:"option:is([selected], select:not([multiple]):not(:has(> option[selected])) > :first-of-type)",checkbox:"[type=checkbox]",file:"[type=file]",password:"[type=password]",radio:"[type=radio]",reset:"[type=reset]",image:"[type=image]",submit:"[type=submit]",parent:":not(:empty)",header:":is(h1, h2, h3, h4, h5, h6)",button:":is(button, input[type=button])",input:":is(input, textarea, select, button)",text:"input:is(:not([type!='']), [type=text])"};var pc=Re(s0(),1);var YH={};function JH(t,e){return t===pc.default.falseFunc?pc.default.falseFunc:r=>e.isTag(r)&&t(r)}function XH(t,e){let r=e.getSiblings(t);if(r.length<=1)return[];let n=r.indexOf(t);return n<0||n===r.length-1?[]:r.slice(n+1).filter(e.isTag)}function KH(t){return{xmlMode:!!t.xmlMode,lowerCaseAttributeNames:!!t.lowerCaseAttributeNames,lowerCaseTags:!!t.lowerCaseTags,quirksMode:!!t.quirksMode,cacheResults:!!t.cacheResults,pseudos:t.pseudos,adapter:t.adapter,equals:t.equals}}var zH=(t,e,r,n,s)=>{let i=s(e,KH(r),n);return i===pc.default.trueFunc?t:i===pc.default.falseFunc?pc.default.falseFunc:a=>i(a)&&t(a)},X3={is:zH,matches:zH,where:zH,not(t,e,r,n,s){let i=s(e,KH(r),n);return i===pc.default.falseFunc?t:i===pc.default.trueFunc?pc.default.falseFunc:a=>!i(a)&&t(a)},has(t,e,r,n,s){let{adapter:i}=r,a=KH(r);a.relativeSelector=!0;let o=e.some(l=>l.some(av))?[YH]:void 0,c=s(e,a,o);if(c===pc.default.falseFunc)return pc.default.falseFunc;let u=JH(c,i);if(o&&c!==pc.default.trueFunc){let{shouldTestNextSiblings:l=!1}=c;return d=>{if(!t(d))return!1;o[0]=d;let f=i.getChildren(d),p=l?[...f,...XH(d,i)]:f;return i.existsOne(u,p)}}return l=>t(l)&&i.existsOne(u,i.getChildren(l))}};function BPe(t,e,r,n,s){var i;let{name:a,data:o}=e;if(Array.isArray(o)){if(!(a in X3))throw new Error(`Unknown pseudo-class :${a}(${o})`);return X3[a](t,o,r,n,s)}let c=(i=r.pseudos)===null||i===void 0?void 0:i[a],u=typeof c=="string"?c:J3[a];if(typeof u=="string"){if(o!=null)throw new Error(`Pseudo ${a} doesn't have any arguments`);let l=(0,LPe.parse)(u);return X3.is(t,l,r,n,s)}if(typeof c=="function")return VH(c,a,o,1),l=>c(l,o)&&t(l);if(a in Nx)return Nx[a](t,o,r,n);if(a in cv){let l=cv[a];return VH(l,a,o,2),d=>l(d,r,o)&&t(d)}throw new Error(`Unknown pseudo-class :${a}`)}var mc=Re(wx(),1);function ZH(t,e){let r=e.getParent(t);return r&&e.isTag(r)?r:null}function MPe(t,e,r,n,s){let{adapter:i,equals:a}=r;switch(e.type){case mc.SelectorType.PseudoElement:throw new Error("Pseudo-elements are not supported by css-select");case mc.SelectorType.ColumnCombinator:throw new Error("Column combinators are not yet supported by css-select");case mc.SelectorType.Attribute:{if(e.namespace!=null)throw new Error("Namespaced attributes are not yet supported by css-select");return(!r.xmlMode||r.lowerCaseAttributeNames)&&(e.name=e.name.toLowerCase()),OPe[e.action](t,e,r)}case mc.SelectorType.Pseudo:return BPe(t,e,r,n,s);case mc.SelectorType.Tag:{if(e.namespace!=null)throw new Error("Namespaced tag names are not yet supported by css-select");let{name:o}=e;return(!r.xmlMode||r.lowerCaseTags)&&(o=o.toLowerCase()),function(u){return i.getName(u)===o&&t(u)}}case mc.SelectorType.Descendant:{if(r.cacheResults===!1||typeof WeakSet>"u")return function(u){let l=u;for(;l=ZH(l,i);)if(t(l))return!0;return!1};let o=new WeakSet;return function(u){let l=u;for(;l=ZH(l,i);)if(!o.has(l)){if(i.isTag(l)&&t(l))return!0;o.add(l)}return!1}}case"_flexibleDescendant":return function(c){let u=c;do if(t(u))return!0;while(u=ZH(u,i));return!1};case mc.SelectorType.Parent:return function(c){return i.getChildren(c).some(u=>i.isTag(u)&&t(u))};case mc.SelectorType.Child:return function(c){let u=i.getParent(c);return u!=null&&i.isTag(u)&&t(u)};case mc.SelectorType.Sibling:return function(c){let u=i.getSiblings(c);for(let l=0;le.some($Pe)))}var iVt={type:su.SelectorType.Descendant},aVt={type:"_flexibleDescendant"},oVt={type:su.SelectorType.Pseudo,name:"scope",data:null};function cVt(t,{adapter:e},r){let n=!!r?.every(s=>{let i=e.isTag(s)&&e.getParent(s);return s===YH||i&&e.isTag(i)});for(let s of t){if(!(s.length>0&&av(s[0])&&s[0].type!==su.SelectorType.Descendant))if(n&&!s.some($Pe))s.unshift(iVt);else continue;s.unshift(oVt)}}function eD(t,e,r){var n;t.forEach(HH),r=(n=e.context)!==null&&n!==void 0?n:r;let s=Array.isArray(r),i=r&&(Array.isArray(r)?r:[r]);if(e.relativeSelector!==!1)cVt(t,e,i);else if(t.some(c=>c.length>0&&av(c[0])))throw new Error("Relative selectors are not allowed when the `relativeSelector` option is disabled");let a=!1,o=t.map(c=>{if(c.length>=2){let[u,l]=c;u.type!==su.SelectorType.Pseudo||u.name!=="scope"||(s&&l.type===su.SelectorType.Descendant?c[1]=aVt:(l.type===su.SelectorType.Adjacent||l.type===su.SelectorType.Sibling)&&(a=!0))}return uVt(c,e,i)}).reduce(lVt,jd.default.falseFunc);return o.shouldTestNextSiblings=a,o}function uVt(t,e,r){var n;return t.reduce((s,i)=>s===jd.default.falseFunc?jd.default.falseFunc:MPe(s,i,e,r,eD),(n=e.rootFunc)!==null&&n!==void 0?n:jd.default.trueFunc)}function lVt(t,e){return e===jd.default.falseFunc||t===jd.default.trueFunc?t:t===jd.default.falseFunc||e===jd.default.trueFunc?e:function(n){return t(n)||e(n)}}var FPe=(t,e)=>t===e,dVt={adapter:r0,equals:FPe};function UPe(t){var e,r,n,s;let i=t??dVt;return(e=i.adapter)!==null&&e!==void 0||(i.adapter=r0),(r=i.equals)!==null&&r!==void 0||(i.equals=(s=(n=i.adapter)===null||n===void 0?void 0:n.equals)!==null&&s!==void 0?s:FPe),i}function tQ(t){return function(r,n,s){let i=UPe(n);return t(r,i,s)}}var xFr=tQ(WPe),bFr=tQ(Z3),tD=tQ(eD);function qPe(t){return function(r,n,s){let i=UPe(s);typeof r!="function"&&(r=Z3(r,i,n));let a=rD(n,i.adapter,r.shouldTestNextSiblings);return t(r,a,i)}}function rD(t,e,r=!1){return r&&(t=fVt(t,e)),Array.isArray(t)?e.removeSubsets(t):e.getChildren(t)}function fVt(t,e){let r=Array.isArray(t)?t.slice(0):[t],n=r.length;for(let s=0;st===eQ.default.falseFunc||!e||e.length===0?[]:r.adapter.findAll(t,e)),_Fr=qPe((t,e,r)=>t===eQ.default.falseFunc||!e||e.length===0?null:r.adapter.findOne(t,e));var sD=Re(s0(),1);var pVt=new Set(["first","last","eq","gt","nth","lt","even","odd"]);function Ox(t){return t.type!=="pseudo"?!1:pVt.has(t.name)?!0:t.name==="not"&&Array.isArray(t.data)?t.data.some(e=>e.some(Ox)):!1}function jPe(t,e,r){let n=e!=null?parseInt(e,10):NaN;switch(t){case"first":return 1;case"nth":case"eq":return isFinite(n)?n>=0?n+1:1/0:0;case"lt":return isFinite(n)?n>=0?Math.min(n,r):1/0:0;case"gt":return isFinite(n)?1/0:0;case"odd":return 2*r;case"even":return 2*r-1;case"last":case"not":return 1/0}}function HPe(t){for(;t.parent;)t=t.parent;return t}function nD(t){let e=[],r=[];for(let n of t)n.some(Ox)?e.push(n):r.push(n);return[r,e]}var mVt={type:Ja.SelectorType.Universal,namespace:null},hVt={type:Ja.SelectorType.Pseudo,name:"scope",data:null};function sQ(t,e,r={}){return iQ([t],e,r)}function iQ(t,e,r={}){if(typeof e=="function")return t.some(e);let[n,s]=nD((0,Ja.parse)(e));return n.length>0&&t.some(tD(n,r))||s.some(i=>GPe(i,t,r).length>0)}function gVt(t,e,r,n){let s=typeof r=="string"?parseInt(r,10):NaN;switch(t){case"first":case"lt":return e;case"last":return e.length>0?[e[e.length-1]]:e;case"nth":case"eq":return isFinite(s)&&Math.abs(s)a%2===0);case"odd":return e.filter((i,a)=>a%2===1);case"not":{let i=new Set(QPe(r,e,n));return e.filter(a=>!i.has(a))}}}function aQ(t,e,r={}){return QPe((0,Ja.parse)(t),e,r)}function QPe(t,e,r){if(e.length===0)return[];let[n,s]=nD(t),i;if(n.length){let a=nQ(e,n,r);if(s.length===0)return a;a.length&&(i=new Set(a))}for(let a=0;ast(l)&&!i.has(l)):e).length===0)break;let u=GPe(o,e,r);if(u.length)if(i)u.forEach(l=>i.add(l));else{if(a===s.length-1)return u;i=new Set(u)}}return typeof i<"u"?i.size===e.length?e:e.filter(a=>i.has(a)):[]}function GPe(t,e,r){var n;if(t.some(Ja.isTraversal)){let s=(n=r.root)!==null&&n!==void 0?n:HPe(e[0]),i={...r,context:e,relativeSelector:!1};return t.push(hVt),iD(s,t,i,!0,e.length)}return iD(e,t,r,!1,e.length)}function VPe(t,e,r={},n=1/0){if(typeof t=="function")return zPe(e,t);let[s,i]=nD((0,Ja.parse)(t)),a=i.map(o=>iD(e,o,r,!0,n));return s.length&&a.push(rQ(e,s,r,n)),a.length===0?[]:a.length===1?a[0]:e0(a.reduce((o,c)=>[...o,...c]))}function iD(t,e,r,n,s){let i=e.findIndex(Ox),a=e.slice(0,i),o=e[i],c=e.length-1===i?s:1/0,u=jPe(o.name,o.data,c);if(u===0)return[];let d=(a.length===0&&!Array.isArray(t)?Ex(t).filter(st):a.length===0?(Array.isArray(t)?t:[t]).filter(st):n||a.some(Ja.isTraversal)?rQ(t,[a],r,u):nQ(t,[a],r)).slice(0,u),f=gVt(o.name,d,o.data,r);if(f.length===0||e.length===i+1)return f;let p=e.slice(i+1),m=p.some(Ja.isTraversal);if(m){if((0,Ja.isTraversal)(p[0])){let{type:h}=p[0];(h===Ja.SelectorType.Sibling||h===Ja.SelectorType.Adjacent)&&(f=rD(f,r0,!0)),p.unshift(mVt)}r={...r,relativeSelector:!1,rootFunc:h=>f.includes(h)}}else r.rootFunc&&r.rootFunc!==sD.trueFunc&&(r={...r,rootFunc:sD.trueFunc});return p.some(Ox)?iD(f,p,r,!1,s):m?rQ(f,[p],r,s):nQ(f,[p],r)}function rQ(t,e,r,n){let s=tD(e,r,t);return zPe(t,s,n)}function zPe(t,e,r=1/0){let n=rD(t,r0,e.shouldTestNextSiblings);return U3(s=>st(s)&&e(s),n,!0,r)}function nQ(t,e,r){let n=(Array.isArray(t)?t:[t]).filter(st);if(n.length===0)return n;let s=tD(e,r);return s===sD.trueFunc?n:n.filter(s)}var yVt=/^\s*[~+]/;function xVt(t){var e;if(!t)return this._make([]);let r=this.toArray();if(typeof t!="string"){let i=_o(t)?t.toArray():[t];return this._make(i.filter(a=>r.some(o=>WH(o,a))))}let n=yVt.test(t)?r:this.children().toArray(),s={context:r,root:(e=this._root)===null||e===void 0?void 0:e[0],xmlMode:this.options.xmlMode,lowerCaseTags:this.options.lowerCaseTags,lowerCaseAttributeNames:this.options.lowerCaseAttributeNames,pseudos:this.options.pseudos,quirksMode:this.options.quirksMode};return this._make(VPe(t,n,s))}function oQ(t){return function(e,...r){return function(n){var s;let i=t(e,this);return n&&(i=lQ(i,n,this.options.xmlMode,(s=this._root)===null||s===void 0?void 0:s[0])),this._make(this.length>1&&i.length>1?r.reduce((a,o)=>o(a),i):i)}}}var uv=oQ((t,e)=>{let r=[];for(let n=0;n{let r=[];for(let n=0;n{let a=[];return mn(i,o=>{for(let c;(c=s(o))&&!r?.(c,a.length);o=c)a.push(c)}),a})(t,...e);return function(s,i){r=typeof s=="string"?o=>sQ(o,s,this.options):s?lv(s):null;let a=n.call(this,i);return r=null,a}}function Px(t){return Array.from(new Set(t))}var bVt=cQ(({parent:t})=>t&&!nu(t)?t:null,Px),EVt=uv(t=>{let e=[];for(;t.parent&&!nu(t.parent);)e.push(t.parent),t=t.parent;return e},e0,t=>t.reverse()),_Vt=uQ(({parent:t})=>t&&!nu(t)?t:null,e0,t=>t.reverse());function SVt(t){var e;let r=[];if(!t)return this._make(r);let n={xmlMode:this.options.xmlMode,root:(e=this._root)===null||e===void 0?void 0:e[0]},s=typeof t=="string"?i=>sQ(i,t,n):lv(t);return mn(this,i=>{for(;i&&st(i);){if(s(i,0)){r.includes(i)||r.push(i);break}i=i.parent}}),this._make(r)}var vVt=cQ(t=>$3(t)),CVt=uv(t=>{let e=[];for(;t.next;)t=t.next,st(t)&&e.push(t);return e},Px),IVt=uQ(t=>$3(t),Px),TVt=cQ(t=>F3(t)),wVt=uv(t=>{let e=[];for(;t.prev;)t=t.prev,st(t)&&e.push(t);return e},Px),RVt=uQ(t=>F3(t),Px),NVt=uv(t=>DH(t).filter(e=>st(e)&&e!==t),e0),OVt=uv(t=>Ex(t).filter(st),Px);function PVt(){let t=this.toArray().reduce((e,r)=>rn(r)?e.concat(r.children):e,[]);return this._make(t)}function DVt(t){let e=0,r=this.length;for(;et.call(e,r,e):_o(t)?e=>Array.prototype.includes.call(t,e):function(e){return t===e}}function LVt(t){var e;return this._make(lQ(this.toArray(),t,this.options.xmlMode,(e=this._root)===null||e===void 0?void 0:e[0]))}function lQ(t,e,r,n){return typeof e=="string"?aQ(e,t,{xmlMode:r,root:n}):t.filter(lv(e))}function BVt(t){let e=this.toArray();return typeof t=="string"?iQ(e.filter(st),t,this.options):t?e.some(lv(t)):!1}function MVt(t){let e=this.toArray();if(typeof t=="string"){let r=new Set(aQ(t,e,this.options));e=e.filter(n=>!r.has(n))}else{let r=lv(t);e=e.filter((n,s)=>!r(n,s))}return this._make(e)}function WVt(t){return this.filter(typeof t=="string"?`:has(${t})`:(e,r)=>this._make(r).find(t).length>0)}function $Vt(){return this.length>1?this._make(this[0]):this}function FVt(){return this.length>0?this._make(this[this.length-1]):this}function UVt(t){var e;return t=+t,t===0&&this.length<=1?this:(t<0&&(t=this.length+t),this._make((e=this[t])!==null&&e!==void 0?e:[]))}function qVt(t){return t==null?this.toArray():this[t<0?this.length+t:t]}function jVt(){return Array.prototype.slice.call(this)}function HVt(t){let e,r;return t==null?(e=this.parent().children(),r=this[0]):typeof t=="string"?(e=this._make(t),r=this[0]):(e=this,r=_o(t)?t[0]:t),Array.prototype.indexOf.call(e,r)}function QVt(t,e){return this._make(Array.prototype.slice.call(this,t,e))}function GVt(){var t;return(t=this.prevObject)!==null&&t!==void 0?t:this._make([])}function VVt(t,e){let r=this._make(t,e),n=e0([...this.get(),...r.get()]);return this._make(n)}function zVt(t){return this.prevObject?this.add(t?this.prevObject.filter(t):this.prevObject):this}var fQ={};is(fQ,{_makeDomArray:()=>KVt,after:()=>szt,append:()=>XVt,appendTo:()=>YVt,before:()=>azt,clone:()=>mzt,empty:()=>lzt,html:()=>dzt,insertAfter:()=>izt,insertBefore:()=>ozt,prepend:()=>ZVt,prependTo:()=>JVt,remove:()=>czt,replaceWith:()=>uzt,text:()=>pzt,toString:()=>fzt,unwrap:()=>rzt,wrap:()=>ezt,wrapAll:()=>nzt,wrapInner:()=>tzt});function KPe(t){return function(r,n,s,i){if(typeof Buffer<"u"&&Buffer.isBuffer(r)&&(r=r.toString()),typeof r=="string")return t(r,n,s,i);let a=r;if(!Array.isArray(a)&&nu(a))return a;let o=new Eo([]);return i0(a,o),o}}function i0(t,e){let r=Array.isArray(t)?t:[t];e?e.children=r:e=null;for(let n=0;nr.concat(this._makeDomArray(n,e)),[]):typeof t=="string"?this._parse(t,this.options,!1,null).children:e?Q3([t]):[t]}function YPe(t){return function(...e){let r=this.length-1;return mn(this,(n,s)=>{if(!rn(n))return;let i=typeof e[0]=="function"?e[0].call(n,s,this._render(n.children)):e,a=this._makeDomArray(i,s=t.length?null:t[e+r];for(let l=0;l-1&&(f.children.splice(m,1),s===f&&e>m&&o[0]--)}d.parent=s,d.prev&&(d.prev.next=(i=d.next)!==null&&i!==void 0?i:null),d.next&&(d.next.prev=(a=d.prev)!==null&&a!==void 0?a:null),d.prev=l===0?c:n[l-1],d.next=l===n.length-1?u:n[l+1]}return c&&(c.next=n[0]),u&&(u.prev=n[n.length-1]),t.splice(...o)}function YVt(t){return(_o(t)?t:this._make(t)).append(this),this}function JVt(t){return(_o(t)?t:this._make(t)).prepend(this),this}var XVt=YPe((t,e,r)=>{a0(e,e.length,0,t,r)}),ZVt=YPe((t,e,r)=>{a0(e,0,0,t,r)});function JPe(t){return function(e){let r=this.length-1,n=this.parents().last();for(let s=0;s{let{parent:n}=t;if(!n)return;let s=n.children,i=s.indexOf(t);i0([t],e),a0(s,i,0,r,n)}),tzt=JPe((t,e,r)=>{rn(t)&&(i0(t.children,e),i0(r,t))});function rzt(t){return this.parent(t).not("body").each((e,r)=>{this._make(r).replaceWith(r.children)}),this}function nzt(t){let e=this[0];if(e){let r=this._make(typeof t=="function"?t.call(e,0,e):t).insertBefore(e),n;for(let i=0;i{let{parent:s}=r;if(!rn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,c=this._makeDomArray(o,n{let n=this.clone().toArray(),{parent:s}=r;if(!s)return;let i=s.children,a=i.indexOf(r);a<0||(a0(i,a+1,0,n,s),e.push(...n))}),this._make(e)}function azt(...t){let e=this.length-1;return mn(this,(r,n)=>{let{parent:s}=r;if(!rn(r)||!s)return;let i=s.children,a=i.indexOf(r);if(a<0)return;let o=typeof t[0]=="function"?t[0].call(r,n,this._render(r.children)):t,c=this._makeDomArray(o,n{let s=this.clone().toArray(),{parent:i}=n;if(!i)return;let a=i.children,o=a.indexOf(n);o<0||(a0(a,o,0,s,i),r.push(...s))}),this._make(r)}function czt(t){let e=t?this.filter(t):this;return mn(e,r=>{Fd(r),r.prev=r.next=r.parent=null}),this}function uzt(t){return mn(this,(e,r)=>{let{parent:n}=e;if(!n)return;let s=n.children,i=typeof t=="function"?t.call(e,r,e):t,a=this._makeDomArray(i);i0(a,null);let o=s.indexOf(e);a0(s,o,1,a,n),a.includes(e)||(e.parent=e.prev=e.next=null)})}function lzt(){return mn(this,t=>{rn(t)&&(t.children.forEach(e=>{e.next=e.prev=e.parent=null}),t.children.length=0)})}function dzt(t){if(t===void 0){let e=this[0];return!e||!rn(e)?null:this._render(e.children)}return mn(this,e=>{if(!rn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=_o(t)?t.toArray():this._parse(`${t}`,this.options,!1,e).children;i0(r,e)})}function fzt(){return this._render(this)}function pzt(t){return t===void 0?Ud(this):typeof t=="function"?mn(this,(e,r)=>this._make(e).text(t.call(e,r,Ud([e])))):mn(this,e=>{if(!rn(e))return;e.children.forEach(n=>{n.next=n.prev=n.parent=null});let r=new ll(`${t}`);i0(r,e)})}function mzt(){return this._make(Q3(this.get()))}var pQ={};is(pQ,{css:()=>hzt});function hzt(t,e){if(t!=null&&e!=null||typeof t=="object"&&!Array.isArray(t))return mn(this,(r,n)=>{st(r)&&XPe(r,t,e,n)});if(this.length!==0)return ZPe(this[0],t)}function XPe(t,e,r,n){if(typeof e=="string"){let s=ZPe(t),i=typeof r=="function"?r.call(t,n,s[e]):r;i===""?delete s[e]:i!=null&&(s[e]=i),t.attribs.style=gzt(s)}else typeof e=="object"&&Object.keys(e).forEach((s,i)=>{XPe(t,s,e[s],i)})}function ZPe(t,e){if(!t||!st(t))return;let r=Azt(t.attribs.style);if(typeof e=="string")return r[e];if(Array.isArray(e)){let n={};return e.forEach(s=>{r[s]!=null&&(n[s]=r[s])}),n}return r}function gzt(t){return Object.keys(t).reduce((e,r)=>`${e}${e?" ":""}${r}: ${t[r]};`,"")}function Azt(t){if(t=(t||"").trim(),!t)return{};let e={},r;for(let n of t.split(";")){let s=n.indexOf(":");if(s<1||s===n.length-1){let i=n.trimEnd();i.length>0&&r!==void 0&&(e[r]+=`;${i}`)}else r=n.slice(0,s).trim(),e[r]=n.slice(s+1).trim()}return e}var mQ={};is(mQ,{serialize:()=>xzt,serializeArray:()=>bzt});var e3e="input,select,textarea,keygen",yzt=/%20/g,t3e=/\r?\n/g;function xzt(){return this.serializeArray().map(r=>`${encodeURIComponent(r.name)}=${encodeURIComponent(r.value)}`).join("&").replace(yzt,"+")}function bzt(){return this.map((t,e)=>{let r=this._make(e);return st(e)&&e.name==="form"?r.find(e3e).toArray():r.filter(e3e).toArray()}).filter('[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))').map((t,e)=>{var r;let n=this._make(e),s=n.attr("name"),i=(r=n.val())!==null&&r!==void 0?r:"";return Array.isArray(i)?i.map(a=>({name:s,value:a.replace(t3e,`\r +`)})):{name:s,value:i.replace(t3e,`\r +`)}}).toArray()}var o0=class{constructor(e,r,n){if(this.length=0,this.options=n,this._root=r,e){for(let s=0;s=55296&&t<=57343}function n3e(t){return t>=56320&&t<=57343}function s3e(t,e){return(t-55296)*1024+9216+e}function oD(t){return t!==32&&t!==10&&t!==13&&t!==9&&t!==12&&t>=1&&t<=31||t>=127&&t<=159}function cD(t){return t>=64976&&t<=65007||_zt.has(t)}var me;(function(t){t.controlCharacterInInputStream="control-character-in-input-stream",t.noncharacterInInputStream="noncharacter-in-input-stream",t.surrogateInInputStream="surrogate-in-input-stream",t.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",t.endTagWithAttributes="end-tag-with-attributes",t.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",t.unexpectedSolidusInTag="unexpected-solidus-in-tag",t.unexpectedNullCharacter="unexpected-null-character",t.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",t.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",t.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",t.missingEndTagName="missing-end-tag-name",t.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",t.unknownNamedCharacterReference="unknown-named-character-reference",t.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",t.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",t.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",t.eofBeforeTagName="eof-before-tag-name",t.eofInTag="eof-in-tag",t.missingAttributeValue="missing-attribute-value",t.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",t.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",t.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",t.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",t.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",t.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",t.missingDoctypePublicIdentifier="missing-doctype-public-identifier",t.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",t.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",t.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",t.cdataInHtmlContent="cdata-in-html-content",t.incorrectlyOpenedComment="incorrectly-opened-comment",t.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",t.eofInDoctype="eof-in-doctype",t.nestedComment="nested-comment",t.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",t.eofInComment="eof-in-comment",t.incorrectlyClosedComment="incorrectly-closed-comment",t.eofInCdata="eof-in-cdata",t.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",t.nullCharacterReference="null-character-reference",t.surrogateCharacterReference="surrogate-character-reference",t.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",t.controlCharacterReference="control-character-reference",t.noncharacterCharacterReference="noncharacter-character-reference",t.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",t.missingDoctypeName="missing-doctype-name",t.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",t.duplicateAttribute="duplicate-attribute",t.nonConformingDoctype="non-conforming-doctype",t.missingDoctype="missing-doctype",t.misplacedDoctype="misplaced-doctype",t.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",t.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",t.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",t.openElementsLeftAfterEof="open-elements-left-after-eof",t.abandonedHeadElementChild="abandoned-head-element-child",t.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",t.nestedNoscriptInHead="nested-noscript-in-head",t.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"})(me||(me={}));var vzt=65536,uD=class{constructor(e){this.handler=e,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=vzt,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+ +(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(e,r){let{line:n,col:s,offset:i}=this,a=s+r,o=i+r;return{code:e,startLine:n,endLine:n,startCol:a,endCol:a,startOffset:o,endOffset:o}}_err(e){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(e,0)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(e){if(this.pos!==this.html.length-1){let r=this.html.charCodeAt(this.pos+1);if(n3e(r))return this.pos++,this._addGap(),s3e(e,r)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,Q.EOF;return this._err(me.surrogateInInputStream),e}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(e,r){this.html.length>0?this.html+=e:this.html=e,this.endOfChunkHit=!1,this.lastChunkWritten=r}insertHtmlAtCurrentPos(e){this.html=this.html.substring(0,this.pos+1)+e+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(e,r){if(this.pos+e.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(r)return this.html.startsWith(e,this.pos);for(let n=0;n=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Q.EOF;let n=this.html.charCodeAt(r);return n===Q.CARRIAGE_RETURN?Q.LINE_FEED:n}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Q.EOF;let e=this.html.charCodeAt(this.pos);return e===Q.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,Q.LINE_FEED):e===Q.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,aD(e)&&(e=this._processSurrogate(e)),this.handler.onParseError===null||e>31&&e<127||e===Q.LINE_FEED||e===Q.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e)}_checkForProblematicCharacters(e){oD(e)?this._err(me.controlCharacterInInputStream):cD(e)&&this._err(me.noncharacterInInputStream)}retreat(e){for(this.pos-=e;this.pos=0;r--)if(t.attrs[r].name===e)return t.attrs[r].value;return null}var dD=new Uint16Array('\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map(t=>t.charCodeAt(0)));var hQ,Izt=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),i3e=(hQ=String.fromCodePoint)!==null&&hQ!==void 0?hQ:function(t){let e="";return t>65535&&(t-=65536,e+=String.fromCharCode(t>>>10&1023|55296),t=56320|t&1023),e+=String.fromCharCode(t),e};function gQ(t){var e;return t>=55296&&t<=57343||t>1114111?65533:(e=Izt.get(t))!==null&&e!==void 0?e:t}var Zs;(function(t){t[t.NUM=35]="NUM",t[t.SEMI=59]="SEMI",t[t.EQUALS=61]="EQUALS",t[t.ZERO=48]="ZERO",t[t.NINE=57]="NINE",t[t.LOWER_A=97]="LOWER_A",t[t.LOWER_F=102]="LOWER_F",t[t.LOWER_X=120]="LOWER_X",t[t.LOWER_Z=122]="LOWER_Z",t[t.UPPER_A=65]="UPPER_A",t[t.UPPER_F=70]="UPPER_F",t[t.UPPER_Z=90]="UPPER_Z"})(Zs||(Zs={}));var wzt=32,c0;(function(t){t[t.VALUE_LENGTH=49152]="VALUE_LENGTH",t[t.BRANCH_LENGTH=16256]="BRANCH_LENGTH",t[t.JUMP_TABLE=127]="JUMP_TABLE"})(c0||(c0={}));function AQ(t){return t>=Zs.ZERO&&t<=Zs.NINE}function Rzt(t){return t>=Zs.UPPER_A&&t<=Zs.UPPER_F||t>=Zs.LOWER_A&&t<=Zs.LOWER_F}function Nzt(t){return t>=Zs.UPPER_A&&t<=Zs.UPPER_Z||t>=Zs.LOWER_A&&t<=Zs.LOWER_Z||AQ(t)}function Ozt(t){return t===Zs.EQUALS||Nzt(t)}var Xs;(function(t){t[t.EntityStart=0]="EntityStart",t[t.NumericStart=1]="NumericStart",t[t.NumericDecimal=2]="NumericDecimal",t[t.NumericHex=3]="NumericHex",t[t.NamedEntity=4]="NamedEntity"})(Xs||(Xs={}));var fl;(function(t){t[t.Legacy=0]="Legacy",t[t.Strict=1]="Strict",t[t.Attribute=2]="Attribute"})(fl||(fl={}));var fD=class{constructor(e,r,n){this.decodeTree=e,this.emitCodePoint=r,this.errors=n,this.state=Xs.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=fl.Strict}startEntity(e){this.decodeMode=e,this.state=Xs.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,r){switch(this.state){case Xs.EntityStart:return e.charCodeAt(r)===Zs.NUM?(this.state=Xs.NumericStart,this.consumed+=1,this.stateNumericStart(e,r+1)):(this.state=Xs.NamedEntity,this.stateNamedEntity(e,r));case Xs.NumericStart:return this.stateNumericStart(e,r);case Xs.NumericDecimal:return this.stateNumericDecimal(e,r);case Xs.NumericHex:return this.stateNumericHex(e,r);case Xs.NamedEntity:return this.stateNamedEntity(e,r)}}stateNumericStart(e,r){return r>=e.length?-1:(e.charCodeAt(r)|wzt)===Zs.LOWER_X?(this.state=Xs.NumericHex,this.consumed+=1,this.stateNumericHex(e,r+1)):(this.state=Xs.NumericDecimal,this.stateNumericDecimal(e,r))}addToNumericResult(e,r,n,s){if(r!==n){let i=n-r;this.result=this.result*Math.pow(s,i)+Number.parseInt(e.substr(r,i),s),this.consumed+=i}}stateNumericHex(e,r){let n=r;for(;r>14;for(;r>14,i!==0){if(a===Zs.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==fl.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:r,decodeTree:n}=this,s=(n[r]&c0.VALUE_LENGTH)>>14;return this.emitNamedEntityData(r,s,this.consumed),(e=this.errors)===null||e===void 0||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,r,n){let{decodeTree:s}=this;return this.emitCodePoint(r===1?s[e]&~c0.VALUE_LENGTH:s[e+1],n),r===3&&this.emitCodePoint(s[e+2],n),n}end(){var e;switch(this.state){case Xs.NamedEntity:return this.result!==0&&(this.decodeMode!==fl.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case Xs.NumericDecimal:return this.emitNumericEntity(0,2);case Xs.NumericHex:return this.emitNumericEntity(0,3);case Xs.NumericStart:return(e=this.errors)===null||e===void 0||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Xs.EntityStart:return 0}}};function Pzt(t,e,r,n){let s=(e&c0.BRANCH_LENGTH)>>7,i=e&c0.JUMP_TABLE;if(s===0)return i!==0&&n===i?r:-1;if(i){let c=n-i;return c<0||c>=s?-1:t[r+c]-1}let a=r,o=a+s-1;for(;a<=o;){let c=a+o>>>1,u=t[c];if(un)o=c-1;else return t[c+s]}return-1}var pD={};is(pD,{ATTRS:()=>pl,DOCUMENT_MODE:()=>Fi,NS:()=>Ee,NUMBERED_HEADERS:()=>Dx,SPECIAL_ELEMENTS:()=>yQ,TAG_ID:()=>I,TAG_NAMES:()=>de,getTagID:()=>u0,hasUnescapedText:()=>xQ});var Ee;(function(t){t.HTML="http://www.w3.org/1999/xhtml",t.MATHML="http://www.w3.org/1998/Math/MathML",t.SVG="http://www.w3.org/2000/svg",t.XLINK="http://www.w3.org/1999/xlink",t.XML="http://www.w3.org/XML/1998/namespace",t.XMLNS="http://www.w3.org/2000/xmlns/"})(Ee||(Ee={}));var pl;(function(t){t.TYPE="type",t.ACTION="action",t.ENCODING="encoding",t.PROMPT="prompt",t.NAME="name",t.COLOR="color",t.FACE="face",t.SIZE="size"})(pl||(pl={}));var Fi;(function(t){t.NO_QUIRKS="no-quirks",t.QUIRKS="quirks",t.LIMITED_QUIRKS="limited-quirks"})(Fi||(Fi={}));var de;(function(t){t.A="a",t.ADDRESS="address",t.ANNOTATION_XML="annotation-xml",t.APPLET="applet",t.AREA="area",t.ARTICLE="article",t.ASIDE="aside",t.B="b",t.BASE="base",t.BASEFONT="basefont",t.BGSOUND="bgsound",t.BIG="big",t.BLOCKQUOTE="blockquote",t.BODY="body",t.BR="br",t.BUTTON="button",t.CAPTION="caption",t.CENTER="center",t.CODE="code",t.COL="col",t.COLGROUP="colgroup",t.DD="dd",t.DESC="desc",t.DETAILS="details",t.DIALOG="dialog",t.DIR="dir",t.DIV="div",t.DL="dl",t.DT="dt",t.EM="em",t.EMBED="embed",t.FIELDSET="fieldset",t.FIGCAPTION="figcaption",t.FIGURE="figure",t.FONT="font",t.FOOTER="footer",t.FOREIGN_OBJECT="foreignObject",t.FORM="form",t.FRAME="frame",t.FRAMESET="frameset",t.H1="h1",t.H2="h2",t.H3="h3",t.H4="h4",t.H5="h5",t.H6="h6",t.HEAD="head",t.HEADER="header",t.HGROUP="hgroup",t.HR="hr",t.HTML="html",t.I="i",t.IMG="img",t.IMAGE="image",t.INPUT="input",t.IFRAME="iframe",t.KEYGEN="keygen",t.LABEL="label",t.LI="li",t.LINK="link",t.LISTING="listing",t.MAIN="main",t.MALIGNMARK="malignmark",t.MARQUEE="marquee",t.MATH="math",t.MENU="menu",t.META="meta",t.MGLYPH="mglyph",t.MI="mi",t.MO="mo",t.MN="mn",t.MS="ms",t.MTEXT="mtext",t.NAV="nav",t.NOBR="nobr",t.NOFRAMES="noframes",t.NOEMBED="noembed",t.NOSCRIPT="noscript",t.OBJECT="object",t.OL="ol",t.OPTGROUP="optgroup",t.OPTION="option",t.P="p",t.PARAM="param",t.PLAINTEXT="plaintext",t.PRE="pre",t.RB="rb",t.RP="rp",t.RT="rt",t.RTC="rtc",t.RUBY="ruby",t.S="s",t.SCRIPT="script",t.SEARCH="search",t.SECTION="section",t.SELECT="select",t.SOURCE="source",t.SMALL="small",t.SPAN="span",t.STRIKE="strike",t.STRONG="strong",t.STYLE="style",t.SUB="sub",t.SUMMARY="summary",t.SUP="sup",t.TABLE="table",t.TBODY="tbody",t.TEMPLATE="template",t.TEXTAREA="textarea",t.TFOOT="tfoot",t.TD="td",t.TH="th",t.THEAD="thead",t.TITLE="title",t.TR="tr",t.TRACK="track",t.TT="tt",t.U="u",t.UL="ul",t.SVG="svg",t.VAR="var",t.WBR="wbr",t.XMP="xmp"})(de||(de={}));var I;(function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A=1]="A",t[t.ADDRESS=2]="ADDRESS",t[t.ANNOTATION_XML=3]="ANNOTATION_XML",t[t.APPLET=4]="APPLET",t[t.AREA=5]="AREA",t[t.ARTICLE=6]="ARTICLE",t[t.ASIDE=7]="ASIDE",t[t.B=8]="B",t[t.BASE=9]="BASE",t[t.BASEFONT=10]="BASEFONT",t[t.BGSOUND=11]="BGSOUND",t[t.BIG=12]="BIG",t[t.BLOCKQUOTE=13]="BLOCKQUOTE",t[t.BODY=14]="BODY",t[t.BR=15]="BR",t[t.BUTTON=16]="BUTTON",t[t.CAPTION=17]="CAPTION",t[t.CENTER=18]="CENTER",t[t.CODE=19]="CODE",t[t.COL=20]="COL",t[t.COLGROUP=21]="COLGROUP",t[t.DD=22]="DD",t[t.DESC=23]="DESC",t[t.DETAILS=24]="DETAILS",t[t.DIALOG=25]="DIALOG",t[t.DIR=26]="DIR",t[t.DIV=27]="DIV",t[t.DL=28]="DL",t[t.DT=29]="DT",t[t.EM=30]="EM",t[t.EMBED=31]="EMBED",t[t.FIELDSET=32]="FIELDSET",t[t.FIGCAPTION=33]="FIGCAPTION",t[t.FIGURE=34]="FIGURE",t[t.FONT=35]="FONT",t[t.FOOTER=36]="FOOTER",t[t.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",t[t.FORM=38]="FORM",t[t.FRAME=39]="FRAME",t[t.FRAMESET=40]="FRAMESET",t[t.H1=41]="H1",t[t.H2=42]="H2",t[t.H3=43]="H3",t[t.H4=44]="H4",t[t.H5=45]="H5",t[t.H6=46]="H6",t[t.HEAD=47]="HEAD",t[t.HEADER=48]="HEADER",t[t.HGROUP=49]="HGROUP",t[t.HR=50]="HR",t[t.HTML=51]="HTML",t[t.I=52]="I",t[t.IMG=53]="IMG",t[t.IMAGE=54]="IMAGE",t[t.INPUT=55]="INPUT",t[t.IFRAME=56]="IFRAME",t[t.KEYGEN=57]="KEYGEN",t[t.LABEL=58]="LABEL",t[t.LI=59]="LI",t[t.LINK=60]="LINK",t[t.LISTING=61]="LISTING",t[t.MAIN=62]="MAIN",t[t.MALIGNMARK=63]="MALIGNMARK",t[t.MARQUEE=64]="MARQUEE",t[t.MATH=65]="MATH",t[t.MENU=66]="MENU",t[t.META=67]="META",t[t.MGLYPH=68]="MGLYPH",t[t.MI=69]="MI",t[t.MO=70]="MO",t[t.MN=71]="MN",t[t.MS=72]="MS",t[t.MTEXT=73]="MTEXT",t[t.NAV=74]="NAV",t[t.NOBR=75]="NOBR",t[t.NOFRAMES=76]="NOFRAMES",t[t.NOEMBED=77]="NOEMBED",t[t.NOSCRIPT=78]="NOSCRIPT",t[t.OBJECT=79]="OBJECT",t[t.OL=80]="OL",t[t.OPTGROUP=81]="OPTGROUP",t[t.OPTION=82]="OPTION",t[t.P=83]="P",t[t.PARAM=84]="PARAM",t[t.PLAINTEXT=85]="PLAINTEXT",t[t.PRE=86]="PRE",t[t.RB=87]="RB",t[t.RP=88]="RP",t[t.RT=89]="RT",t[t.RTC=90]="RTC",t[t.RUBY=91]="RUBY",t[t.S=92]="S",t[t.SCRIPT=93]="SCRIPT",t[t.SEARCH=94]="SEARCH",t[t.SECTION=95]="SECTION",t[t.SELECT=96]="SELECT",t[t.SOURCE=97]="SOURCE",t[t.SMALL=98]="SMALL",t[t.SPAN=99]="SPAN",t[t.STRIKE=100]="STRIKE",t[t.STRONG=101]="STRONG",t[t.STYLE=102]="STYLE",t[t.SUB=103]="SUB",t[t.SUMMARY=104]="SUMMARY",t[t.SUP=105]="SUP",t[t.TABLE=106]="TABLE",t[t.TBODY=107]="TBODY",t[t.TEMPLATE=108]="TEMPLATE",t[t.TEXTAREA=109]="TEXTAREA",t[t.TFOOT=110]="TFOOT",t[t.TD=111]="TD",t[t.TH=112]="TH",t[t.THEAD=113]="THEAD",t[t.TITLE=114]="TITLE",t[t.TR=115]="TR",t[t.TRACK=116]="TRACK",t[t.TT=117]="TT",t[t.U=118]="U",t[t.UL=119]="UL",t[t.SVG=120]="SVG",t[t.VAR=121]="VAR",t[t.WBR=122]="WBR",t[t.XMP=123]="XMP"})(I||(I={}));var Dzt=new Map([[de.A,I.A],[de.ADDRESS,I.ADDRESS],[de.ANNOTATION_XML,I.ANNOTATION_XML],[de.APPLET,I.APPLET],[de.AREA,I.AREA],[de.ARTICLE,I.ARTICLE],[de.ASIDE,I.ASIDE],[de.B,I.B],[de.BASE,I.BASE],[de.BASEFONT,I.BASEFONT],[de.BGSOUND,I.BGSOUND],[de.BIG,I.BIG],[de.BLOCKQUOTE,I.BLOCKQUOTE],[de.BODY,I.BODY],[de.BR,I.BR],[de.BUTTON,I.BUTTON],[de.CAPTION,I.CAPTION],[de.CENTER,I.CENTER],[de.CODE,I.CODE],[de.COL,I.COL],[de.COLGROUP,I.COLGROUP],[de.DD,I.DD],[de.DESC,I.DESC],[de.DETAILS,I.DETAILS],[de.DIALOG,I.DIALOG],[de.DIR,I.DIR],[de.DIV,I.DIV],[de.DL,I.DL],[de.DT,I.DT],[de.EM,I.EM],[de.EMBED,I.EMBED],[de.FIELDSET,I.FIELDSET],[de.FIGCAPTION,I.FIGCAPTION],[de.FIGURE,I.FIGURE],[de.FONT,I.FONT],[de.FOOTER,I.FOOTER],[de.FOREIGN_OBJECT,I.FOREIGN_OBJECT],[de.FORM,I.FORM],[de.FRAME,I.FRAME],[de.FRAMESET,I.FRAMESET],[de.H1,I.H1],[de.H2,I.H2],[de.H3,I.H3],[de.H4,I.H4],[de.H5,I.H5],[de.H6,I.H6],[de.HEAD,I.HEAD],[de.HEADER,I.HEADER],[de.HGROUP,I.HGROUP],[de.HR,I.HR],[de.HTML,I.HTML],[de.I,I.I],[de.IMG,I.IMG],[de.IMAGE,I.IMAGE],[de.INPUT,I.INPUT],[de.IFRAME,I.IFRAME],[de.KEYGEN,I.KEYGEN],[de.LABEL,I.LABEL],[de.LI,I.LI],[de.LINK,I.LINK],[de.LISTING,I.LISTING],[de.MAIN,I.MAIN],[de.MALIGNMARK,I.MALIGNMARK],[de.MARQUEE,I.MARQUEE],[de.MATH,I.MATH],[de.MENU,I.MENU],[de.META,I.META],[de.MGLYPH,I.MGLYPH],[de.MI,I.MI],[de.MO,I.MO],[de.MN,I.MN],[de.MS,I.MS],[de.MTEXT,I.MTEXT],[de.NAV,I.NAV],[de.NOBR,I.NOBR],[de.NOFRAMES,I.NOFRAMES],[de.NOEMBED,I.NOEMBED],[de.NOSCRIPT,I.NOSCRIPT],[de.OBJECT,I.OBJECT],[de.OL,I.OL],[de.OPTGROUP,I.OPTGROUP],[de.OPTION,I.OPTION],[de.P,I.P],[de.PARAM,I.PARAM],[de.PLAINTEXT,I.PLAINTEXT],[de.PRE,I.PRE],[de.RB,I.RB],[de.RP,I.RP],[de.RT,I.RT],[de.RTC,I.RTC],[de.RUBY,I.RUBY],[de.S,I.S],[de.SCRIPT,I.SCRIPT],[de.SEARCH,I.SEARCH],[de.SECTION,I.SECTION],[de.SELECT,I.SELECT],[de.SOURCE,I.SOURCE],[de.SMALL,I.SMALL],[de.SPAN,I.SPAN],[de.STRIKE,I.STRIKE],[de.STRONG,I.STRONG],[de.STYLE,I.STYLE],[de.SUB,I.SUB],[de.SUMMARY,I.SUMMARY],[de.SUP,I.SUP],[de.TABLE,I.TABLE],[de.TBODY,I.TBODY],[de.TEMPLATE,I.TEMPLATE],[de.TEXTAREA,I.TEXTAREA],[de.TFOOT,I.TFOOT],[de.TD,I.TD],[de.TH,I.TH],[de.THEAD,I.THEAD],[de.TITLE,I.TITLE],[de.TR,I.TR],[de.TRACK,I.TRACK],[de.TT,I.TT],[de.U,I.U],[de.UL,I.UL],[de.SVG,I.SVG],[de.VAR,I.VAR],[de.WBR,I.WBR],[de.XMP,I.XMP]]);function u0(t){var e;return(e=Dzt.get(t))!==null&&e!==void 0?e:I.UNKNOWN}var Oe=I,yQ={[Ee.HTML]:new Set([Oe.ADDRESS,Oe.APPLET,Oe.AREA,Oe.ARTICLE,Oe.ASIDE,Oe.BASE,Oe.BASEFONT,Oe.BGSOUND,Oe.BLOCKQUOTE,Oe.BODY,Oe.BR,Oe.BUTTON,Oe.CAPTION,Oe.CENTER,Oe.COL,Oe.COLGROUP,Oe.DD,Oe.DETAILS,Oe.DIR,Oe.DIV,Oe.DL,Oe.DT,Oe.EMBED,Oe.FIELDSET,Oe.FIGCAPTION,Oe.FIGURE,Oe.FOOTER,Oe.FORM,Oe.FRAME,Oe.FRAMESET,Oe.H1,Oe.H2,Oe.H3,Oe.H4,Oe.H5,Oe.H6,Oe.HEAD,Oe.HEADER,Oe.HGROUP,Oe.HR,Oe.HTML,Oe.IFRAME,Oe.IMG,Oe.INPUT,Oe.LI,Oe.LINK,Oe.LISTING,Oe.MAIN,Oe.MARQUEE,Oe.MENU,Oe.META,Oe.NAV,Oe.NOEMBED,Oe.NOFRAMES,Oe.NOSCRIPT,Oe.OBJECT,Oe.OL,Oe.P,Oe.PARAM,Oe.PLAINTEXT,Oe.PRE,Oe.SCRIPT,Oe.SECTION,Oe.SELECT,Oe.SOURCE,Oe.STYLE,Oe.SUMMARY,Oe.TABLE,Oe.TBODY,Oe.TD,Oe.TEMPLATE,Oe.TEXTAREA,Oe.TFOOT,Oe.TH,Oe.THEAD,Oe.TITLE,Oe.TR,Oe.TRACK,Oe.UL,Oe.WBR,Oe.XMP]),[Ee.MATHML]:new Set([Oe.MI,Oe.MO,Oe.MN,Oe.MS,Oe.MTEXT,Oe.ANNOTATION_XML]),[Ee.SVG]:new Set([Oe.TITLE,Oe.FOREIGN_OBJECT,Oe.DESC]),[Ee.XLINK]:new Set,[Ee.XML]:new Set,[Ee.XMLNS]:new Set},Dx=new Set([Oe.H1,Oe.H2,Oe.H3,Oe.H4,Oe.H5,Oe.H6]),kzt=new Set([de.STYLE,de.SCRIPT,de.XMP,de.IFRAME,de.NOEMBED,de.NOFRAMES,de.PLAINTEXT]);function xQ(t,e){return kzt.has(t)||e&&t===de.NOSCRIPT}var Y;(function(t){t[t.DATA=0]="DATA",t[t.RCDATA=1]="RCDATA",t[t.RAWTEXT=2]="RAWTEXT",t[t.SCRIPT_DATA=3]="SCRIPT_DATA",t[t.PLAINTEXT=4]="PLAINTEXT",t[t.TAG_OPEN=5]="TAG_OPEN",t[t.END_TAG_OPEN=6]="END_TAG_OPEN",t[t.TAG_NAME=7]="TAG_NAME",t[t.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",t[t.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",t[t.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",t[t.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",t[t.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",t[t.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",t[t.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",t[t.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",t[t.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",t[t.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",t[t.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",t[t.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",t[t.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",t[t.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",t[t.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",t[t.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",t[t.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",t[t.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",t[t.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",t[t.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",t[t.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",t[t.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",t[t.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",t[t.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",t[t.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",t[t.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",t[t.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",t[t.BOGUS_COMMENT=40]="BOGUS_COMMENT",t[t.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",t[t.COMMENT_START=42]="COMMENT_START",t[t.COMMENT_START_DASH=43]="COMMENT_START_DASH",t[t.COMMENT=44]="COMMENT",t[t.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",t[t.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",t[t.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",t[t.COMMENT_END_DASH=49]="COMMENT_END_DASH",t[t.COMMENT_END=50]="COMMENT_END",t[t.COMMENT_END_BANG=51]="COMMENT_END_BANG",t[t.DOCTYPE=52]="DOCTYPE",t[t.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",t[t.DOCTYPE_NAME=54]="DOCTYPE_NAME",t[t.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",t[t.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",t[t.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",t[t.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",t[t.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",t[t.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",t[t.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",t[t.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",t[t.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",t[t.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",t[t.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",t[t.CDATA_SECTION=68]="CDATA_SECTION",t[t.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",t[t.CDATA_SECTION_END=70]="CDATA_SECTION_END",t[t.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",t[t.AMBIGUOUS_AMPERSAND=72]="AMBIGUOUS_AMPERSAND"})(Y||(Y={}));var Ui={DATA:Y.DATA,RCDATA:Y.RCDATA,RAWTEXT:Y.RAWTEXT,SCRIPT_DATA:Y.SCRIPT_DATA,PLAINTEXT:Y.PLAINTEXT,CDATA_SECTION:Y.CDATA_SECTION};function Lzt(t){return t>=Q.DIGIT_0&&t<=Q.DIGIT_9}function dv(t){return t>=Q.LATIN_CAPITAL_A&&t<=Q.LATIN_CAPITAL_Z}function Bzt(t){return t>=Q.LATIN_SMALL_A&&t<=Q.LATIN_SMALL_Z}function l0(t){return Bzt(t)||dv(t)}function a3e(t){return l0(t)||Lzt(t)}function mD(t){return t+32}function c3e(t){return t===Q.SPACE||t===Q.LINE_FEED||t===Q.TABULATION||t===Q.FORM_FEED}function o3e(t){return c3e(t)||t===Q.SOLIDUS||t===Q.GREATER_THAN_SIGN}function Mzt(t){return t===Q.NULL?me.nullCharacterReference:t>1114111?me.characterReferenceOutsideUnicodeRange:aD(t)?me.surrogateCharacterReference:cD(t)?me.noncharacterCharacterReference:oD(t)||t===Q.CARRIAGE_RETURN?me.controlCharacterReference:null}var fv=class{constructor(e,r){this.options=e,this.handler=r,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=Y.DATA,this.returnState=Y.DATA,this.entityStartPos=0,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new uD(r),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new fD(dD,(n,s)=>{this.preprocessor.pos=this.entityStartPos+s-1,this._flushCodePointConsumedAsCharacterReference(n)},r.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(me.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:n=>{this._err(me.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+n)},validateNumericCharacterReference:n=>{let s=Mzt(n);s&&this._err(s,1)}}:void 0)}_err(e,r=0){var n,s;(s=(n=this.handler).onParseError)===null||s===void 0||s.call(n,this.preprocessor.getError(e,r))}getCurrentLocation(e){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-e,startOffset:this.preprocessor.offset-e,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;let e=this._consume();this._ensureHibernation()||this._callState(e)}this.inLoop=!1}}pause(){this.paused=!0}resume(e){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,!this.inLoop&&(this._runParsingLoop(),this.paused||e?.())}write(e,r,n){this.active=!0,this.preprocessor.write(e,r),this._runParsingLoop(),this.paused||n?.()}insertHtmlAtCurrentPos(e){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(e),this._runParsingLoop()}_ensureHibernation(){return this.preprocessor.endOfChunkHit?(this.preprocessor.retreat(this.consumedAfterSnapshot),this.consumedAfterSnapshot=0,this.active=!1,!0):!1}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_advanceBy(e){this.consumedAfterSnapshot+=e;for(let r=0;r0&&this._err(me.endTagWithAttributes),e.selfClosing&&this._err(me.endTagWithTrailingSolidus),this.handler.onEndTag(e)),this.preprocessor.dropParsedChunk()}emitCurrentComment(e){this.prepareToken(e),this.handler.onComment(e),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(e){this.prepareToken(e),this.handler.onDoctype(e),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(e){if(this.currentCharacterToken){switch(e&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=e.startLine,this.currentCharacterToken.location.endCol=e.startCol,this.currentCharacterToken.location.endOffset=e.startOffset),this.currentCharacterToken.type){case br.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case br.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case br.WHITESPACE_CHARACTER:{this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}}this.currentCharacterToken=null}}_emitEOFToken(){let e=this.getCurrentLocation(0);e&&(e.endLine=e.startLine,e.endCol=e.startCol,e.endOffset=e.startOffset),this._emitCurrentCharacterToken(e),this.handler.onEof({type:br.EOF,location:e}),this.active=!1}_appendCharToCurrentCharacterToken(e,r){if(this.currentCharacterToken)if(this.currentCharacterToken.type===e){this.currentCharacterToken.chars+=r;return}else this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk();this._createCharacterToken(e,r)}_emitCodePoint(e){let r=c3e(e)?br.WHITESPACE_CHARACTER:e===Q.NULL?br.NULL_CHARACTER:br.CHARACTER;this._appendCharToCurrentCharacterToken(r,String.fromCodePoint(e))}_emitChars(e){this._appendCharToCurrentCharacterToken(br.CHARACTER,e)}_startCharacterReference(){this.returnState=this.state,this.state=Y.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?fl.Attribute:fl.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===Y.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(e){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(e):this._emitCodePoint(e)}_callState(e){switch(this.state){case Y.DATA:{this._stateData(e);break}case Y.RCDATA:{this._stateRcdata(e);break}case Y.RAWTEXT:{this._stateRawtext(e);break}case Y.SCRIPT_DATA:{this._stateScriptData(e);break}case Y.PLAINTEXT:{this._statePlaintext(e);break}case Y.TAG_OPEN:{this._stateTagOpen(e);break}case Y.END_TAG_OPEN:{this._stateEndTagOpen(e);break}case Y.TAG_NAME:{this._stateTagName(e);break}case Y.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(e);break}case Y.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(e);break}case Y.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(e);break}case Y.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(e);break}case Y.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(e);break}case Y.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(e);break}case Y.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(e);break}case Y.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(e);break}case Y.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(e);break}case Y.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(e);break}case Y.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(e);break}case Y.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(e);break}case Y.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(e);break}case Y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(e);break}case Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(e);break}case Y.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(e);break}case Y.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(e);break}case Y.ATTRIBUTE_NAME:{this._stateAttributeName(e);break}case Y.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(e);break}case Y.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(e);break}case Y.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(e);break}case Y.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(e);break}case Y.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(e);break}case Y.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(e);break}case Y.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(e);break}case Y.BOGUS_COMMENT:{this._stateBogusComment(e);break}case Y.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(e);break}case Y.COMMENT_START:{this._stateCommentStart(e);break}case Y.COMMENT_START_DASH:{this._stateCommentStartDash(e);break}case Y.COMMENT:{this._stateComment(e);break}case Y.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(e);break}case Y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(e);break}case Y.COMMENT_END_DASH:{this._stateCommentEndDash(e);break}case Y.COMMENT_END:{this._stateCommentEnd(e);break}case Y.COMMENT_END_BANG:{this._stateCommentEndBang(e);break}case Y.DOCTYPE:{this._stateDoctype(e);break}case Y.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(e);break}case Y.DOCTYPE_NAME:{this._stateDoctypeName(e);break}case Y.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(e);break}case Y.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(e);break}case Y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(e);break}case Y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(e);break}case Y.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(e);break}case Y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(e);break}case Y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(e);break}case Y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(e);break}case Y.BOGUS_DOCTYPE:{this._stateBogusDoctype(e);break}case Y.CDATA_SECTION:{this._stateCdataSection(e);break}case Y.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(e);break}case Y.CDATA_SECTION_END:{this._stateCdataSectionEnd(e);break}case Y.CHARACTER_REFERENCE:{this._stateCharacterReference();break}case Y.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(e);break}default:throw new Error("Unknown state")}}_stateData(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.TAG_OPEN;break}case Q.AMPERSAND:{this._startCharacterReference();break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitCodePoint(e);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRcdata(e){switch(e){case Q.AMPERSAND:{this._startCharacterReference();break}case Q.LESS_THAN_SIGN:{this.state=Y.RCDATA_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateRawtext(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.RAWTEXT_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateScriptData(e){switch(e){case Q.LESS_THAN_SIGN:{this.state=Y.SCRIPT_DATA_LESS_THAN_SIGN;break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_statePlaintext(e){switch(e){case Q.NULL:{this._err(me.unexpectedNullCharacter),this._emitChars(_n);break}case Q.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(e)}}_stateTagOpen(e){if(l0(e))this._createStartTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case Q.EXCLAMATION_MARK:{this.state=Y.MARKUP_DECLARATION_OPEN;break}case Q.SOLIDUS:{this.state=Y.END_TAG_OPEN;break}case Q.QUESTION_MARK:{this._err(me.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=Y.BOGUS_COMMENT,this._stateBogusComment(e);break}case Q.EOF:{this._err(me.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break}default:this._err(me.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=Y.DATA,this._stateData(e)}}_stateEndTagOpen(e){if(l0(e))this._createEndTagToken(),this.state=Y.TAG_NAME,this._stateTagName(e);else switch(e){case Q.GREATER_THAN_SIGN:{this._err(me.missingEndTagName),this.state=Y.DATA;break}case Q.EOF:{this._err(me.eofBeforeTagName),this._emitChars("");break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_ESCAPED,this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedLessThanSign(e){e===Q.SOLIDUS?this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:l0(e)?(this._emitChars("<"),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(e)):(this._emitChars("<"),this.state=Y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagOpen(e){l0(e)?(this.state=Y.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(e)):(this._emitChars("");break}case Q.NULL:{this._err(me.unexpectedNullCharacter),this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(_n);break}case Q.EOF:{this._err(me.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedLessThanSign(e){e===Q.SOLIDUS?(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=Y.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateScriptDataDoubleEscapeEnd(e){if(this.preprocessor.startsWith(la.SCRIPT,!1)&&o3e(this.preprocessor.peek(la.SCRIPT.length))){this._emitCodePoint(e);for(let r=0;r0&&this._isInTemplate()&&this.tmplCount--,this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!0)}replace(e,r){let n=this._indexOf(e);this.items[n]=r,n===this.stackTop&&(this.current=r)}insertAfter(e,r,n){let s=this._indexOf(e)+1;this.items.splice(s,0,r),this.tagIDs.splice(s,0,n),this.stackTop++,s===this.stackTop&&this._updateCurrentElement(),this.current&&this.currentTagId!==void 0&&this.handler.onItemPush(this.current,this.currentTagId,s===this.stackTop)}popUntilTagNamePopped(e){let r=this.stackTop+1;do r=this.tagIDs.lastIndexOf(e,r-1);while(r>0&&this.treeAdapter.getNamespaceURI(this.items[r])!==Ee.HTML);this.shortenToLength(Math.max(r,0))}shortenToLength(e){for(;this.stackTop>=e;){let r=this.current;this.tmplCount>0&&this._isInTemplate()&&(this.tmplCount-=1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(r,this.stackTop=0;n--)if(e.has(this.tagIDs[n])&&this.treeAdapter.getNamespaceURI(this.items[n])===r)return n;return-1}clearBackTo(e,r){let n=this._indexOfTagNames(e,r);this.shortenToLength(n+1)}clearBackToTableContext(){this.clearBackTo(qzt,Ee.HTML)}clearBackToTableBodyContext(){this.clearBackTo(Uzt,Ee.HTML)}clearBackToTableRowContext(){this.clearBackTo(Fzt,Ee.HTML)}remove(e){let r=this._indexOf(e);r>=0&&(r===this.stackTop?this.pop():(this.items.splice(r,1),this.tagIDs.splice(r,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===I.BODY?this.items[1]:null}contains(e){return this._indexOf(e)>-1}getCommonAncestor(e){let r=this._indexOf(e)-1;return r>=0?this.items[r]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===I.HTML}hasInDynamicScope(e,r){for(let n=this.stackTop;n>=0;n--){let s=this.tagIDs[n];switch(this.treeAdapter.getNamespaceURI(this.items[n])){case Ee.HTML:{if(s===e)return!0;if(r.has(s))return!1;break}case Ee.SVG:{if(d3e.has(s))return!1;break}case Ee.MATHML:{if(l3e.has(s))return!1;break}}}return!0}hasInScope(e){return this.hasInDynamicScope(e,hD)}hasInListItemScope(e){return this.hasInDynamicScope(e,Wzt)}hasInButtonScope(e){return this.hasInDynamicScope(e,$zt)}hasNumberedHeaderInScope(){for(let e=this.stackTop;e>=0;e--){let r=this.tagIDs[e];switch(this.treeAdapter.getNamespaceURI(this.items[e])){case Ee.HTML:{if(Dx.has(r))return!0;if(hD.has(r))return!1;break}case Ee.SVG:{if(d3e.has(r))return!1;break}case Ee.MATHML:{if(l3e.has(r))return!1;break}}}return!0}hasInTableScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case I.TABLE:case I.HTML:return!1}return!0}hasTableBodyContextInTableScope(){for(let e=this.stackTop;e>=0;e--)if(this.treeAdapter.getNamespaceURI(this.items[e])===Ee.HTML)switch(this.tagIDs[e]){case I.TBODY:case I.THEAD:case I.TFOOT:return!0;case I.TABLE:case I.HTML:return!1}return!0}hasInSelectScope(e){for(let r=this.stackTop;r>=0;r--)if(this.treeAdapter.getNamespaceURI(this.items[r])===Ee.HTML)switch(this.tagIDs[r]){case e:return!0;case I.OPTION:case I.OPTGROUP:break;default:return!1}return!0}generateImpliedEndTags(){for(;this.currentTagId!==void 0&&f3e.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;this.currentTagId!==void 0&&u3e.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(e){for(;this.currentTagId!==void 0&&this.currentTagId!==e&&u3e.has(this.currentTagId);)this.pop()}};var iu;(function(t){t[t.Marker=0]="Marker",t[t.Element=1]="Element"})(iu||(iu={}));var p3e={type:iu.Marker},AD=class{constructor(e){this.treeAdapter=e,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(e,r){let n=[],s=r.length,i=this.treeAdapter.getTagName(e),a=this.treeAdapter.getNamespaceURI(e);for(let o=0;o[a.name,a.value])),i=0;for(let a=0;as.get(c.name)===c.value)&&(i+=1,i>=3&&this.entries.splice(o.idx,1))}}insertMarker(){this.entries.unshift(p3e)}pushElement(e,r){this._ensureNoahArkCondition(e),this.entries.unshift({type:iu.Element,element:e,token:r})}insertElementAfterBookmark(e,r){let n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:iu.Element,element:e,token:r})}removeEntry(e){let r=this.entries.indexOf(e);r!==-1&&this.entries.splice(r,1)}clearToLastMarker(){let e=this.entries.indexOf(p3e);e===-1?this.entries.length=0:this.entries.splice(0,e+1)}getElementEntryInScopeWithTagName(e){let r=this.entries.find(n=>n.type===iu.Marker||this.treeAdapter.getTagName(n.element)===e);return r&&r.type===iu.Element?r:null}getElementEntry(e){return this.entries.find(r=>r.type===iu.Element&&r.element===e)}};var hc={createDocument(){return{nodeName:"#document",mode:Fi.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:"#document-fragment",childNodes:[]}},createElement(t,e,r){return{nodeName:t,tagName:t,attrs:r,namespaceURI:e,childNodes:[],parentNode:null}},createCommentNode(t){return{nodeName:"#comment",data:t,parentNode:null}},createTextNode(t){return{nodeName:"#text",value:t,parentNode:null}},appendChild(t,e){t.childNodes.push(e),e.parentNode=t},insertBefore(t,e,r){let n=t.childNodes.indexOf(r);t.childNodes.splice(n,0,e),e.parentNode=t},setTemplateContent(t,e){t.content=e},getTemplateContent(t){return t.content},setDocumentType(t,e,r,n){let s=t.childNodes.find(i=>i.nodeName==="#documentType");if(s)s.name=e,s.publicId=r,s.systemId=n;else{let i={nodeName:"#documentType",name:e,publicId:r,systemId:n,parentNode:null};hc.appendChild(t,i)}},setDocumentMode(t,e){t.mode=e},getDocumentMode(t){return t.mode},detachNode(t){if(t.parentNode){let e=t.parentNode.childNodes.indexOf(t);t.parentNode.childNodes.splice(e,1),t.parentNode=null}},insertText(t,e){if(t.childNodes.length>0){let r=t.childNodes[t.childNodes.length-1];if(hc.isTextNode(r)){r.value+=e;return}}hc.appendChild(t,hc.createTextNode(e))},insertTextBefore(t,e,r){let n=t.childNodes[t.childNodes.indexOf(r)-1];n&&hc.isTextNode(n)?n.value+=e:hc.insertBefore(t,hc.createTextNode(e),r)},adoptAttributes(t,e){let r=new Set(t.attrs.map(n=>n.name));for(let n=0;nt.startsWith(r))}function y3e(t){return t.name===h3e&&t.publicId===null&&(t.systemId===null||t.systemId===Hzt)}function x3e(t){if(t.name!==h3e)return Fi.QUIRKS;let{systemId:e}=t;if(e&&e.toLowerCase()===Qzt)return Fi.QUIRKS;let{publicId:r}=t;if(r!==null){if(r=r.toLowerCase(),Vzt.has(r))return Fi.QUIRKS;let n=e===null?Gzt:g3e;if(m3e(r,n))return Fi.QUIRKS;if(n=e===null?A3e:zzt,m3e(r,n))return Fi.LIMITED_QUIRKS}return Fi.NO_QUIRKS}var b3e={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},Yzt="definitionurl",Jzt="definitionURL",Xzt=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(t=>[t.toLowerCase(),t])),Zzt=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:Ee.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:Ee.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:Ee.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:Ee.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:Ee.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:Ee.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:Ee.XLINK}],["xml:lang",{prefix:"xml",name:"lang",namespace:Ee.XML}],["xml:space",{prefix:"xml",name:"space",namespace:Ee.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:Ee.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:Ee.XMLNS}]]),eKt=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(t=>[t.toLowerCase(),t])),tKt=new Set([I.B,I.BIG,I.BLOCKQUOTE,I.BODY,I.BR,I.CENTER,I.CODE,I.DD,I.DIV,I.DL,I.DT,I.EM,I.EMBED,I.H1,I.H2,I.H3,I.H4,I.H5,I.H6,I.HEAD,I.HR,I.I,I.IMG,I.LI,I.LISTING,I.MENU,I.META,I.NOBR,I.OL,I.P,I.PRE,I.RUBY,I.S,I.SMALL,I.SPAN,I.STRONG,I.STRIKE,I.SUB,I.SUP,I.TABLE,I.TT,I.U,I.UL,I.VAR]);function E3e(t){let e=t.tagID;return e===I.FONT&&t.attrs.some(({name:n})=>n===pl.COLOR||n===pl.SIZE||n===pl.FACE)||tKt.has(e)}function bQ(t){for(let e=0;e0&&this._setContextModes(e,r)}onItemPop(e,r){var n,s;if(this.options.sourceCodeLocationInfo&&this._setEndLocation(e,this.currentToken),(s=(n=this.treeAdapter).onItemPop)===null||s===void 0||s.call(n,e,this.openElements.current),r){let i,a;this.openElements.stackTop===0&&this.fragmentContext?(i=this.fragmentContext,a=this.fragmentContextID):{current:i,currentTagId:a}=this.openElements,this._setContextModes(i,a)}}_setContextModes(e,r){let n=e===this.document||e&&this.treeAdapter.getNamespaceURI(e)===Ee.HTML;this.currentNotInHTML=!n,this.tokenizer.inForeignNode=!n&&e!==void 0&&r!==void 0&&!this._isIntegrationPoint(r,e)}_switchToTextParsing(e,r){this._insertElement(e,Ee.HTML),this.tokenizer.state=r,this.originalInsertionMode=this.insertionMode,this.insertionMode=te.TEXT}switchToPlaintextParsing(){this.insertionMode=te.TEXT,this.originalInsertionMode=te.IN_BODY,this.tokenizer.state=Ui.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let e=this.fragmentContext;for(;e;){if(this.treeAdapter.getTagName(e)===de.FORM){this.formElement=e;break}e=this.treeAdapter.getParentNode(e)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==Ee.HTML))switch(this.fragmentContextID){case I.TITLE:case I.TEXTAREA:{this.tokenizer.state=Ui.RCDATA;break}case I.STYLE:case I.XMP:case I.IFRAME:case I.NOEMBED:case I.NOFRAMES:case I.NOSCRIPT:{this.tokenizer.state=Ui.RAWTEXT;break}case I.SCRIPT:{this.tokenizer.state=Ui.SCRIPT_DATA;break}case I.PLAINTEXT:{this.tokenizer.state=Ui.PLAINTEXT;break}default:}}_setDocumentType(e){let r=e.name||"",n=e.publicId||"",s=e.systemId||"";if(this.treeAdapter.setDocumentType(this.document,r,n,s),e.location){let a=this.treeAdapter.getChildNodes(this.document).find(o=>this.treeAdapter.isDocumentTypeNode(o));a&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}}_attachElementToTree(e,r){if(this.options.sourceCodeLocationInfo){let n=r&&{...r,startTag:r};this.treeAdapter.setNodeSourceCodeLocation(e,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(e);else{let n=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(n??this.document,e)}}_appendElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location)}_insertElement(e,r){let n=this.treeAdapter.createElement(e.tagName,r,e.attrs);this._attachElementToTree(n,e.location),this.openElements.push(n,e.tagID)}_insertFakeElement(e,r){let n=this.treeAdapter.createElement(e,Ee.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,r)}_insertTemplate(e){let r=this.treeAdapter.createElement(e.tagName,Ee.HTML,e.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(r,n),this._attachElementToTree(r,e.location),this.openElements.push(r,e.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){let e=this.treeAdapter.createElement(de.HTML,Ee.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(e,null),this.treeAdapter.appendChild(this.openElements.current,e),this.openElements.push(e,I.HTML)}_appendCommentNode(e,r){let n=this.treeAdapter.createCommentNode(e.data);this.treeAdapter.appendChild(r,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,e.location)}_insertCharacters(e){let r,n;if(this._shouldFosterParentOnInsertion()?({parent:r,beforeElement:n}=this._findFosterParentingLocation(),n?this.treeAdapter.insertTextBefore(r,e.chars,n):this.treeAdapter.insertText(r,e.chars)):(r=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(r,e.chars)),!e.location)return;let s=this.treeAdapter.getChildNodes(r),i=n?s.lastIndexOf(n):s.length,a=s[i-1];if(this.treeAdapter.getNodeSourceCodeLocation(a)){let{endLine:c,endCol:u,endOffset:l}=e.location;this.treeAdapter.updateNodeSourceCodeLocation(a,{endLine:c,endCol:u,endOffset:l})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}_adoptNodes(e,r){for(let n=this.treeAdapter.getFirstChild(e);n;n=this.treeAdapter.getFirstChild(e))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(r,n)}_setEndLocation(e,r){if(this.treeAdapter.getNodeSourceCodeLocation(e)&&r.location){let n=r.location,s=this.treeAdapter.getTagName(e),i=r.type===br.END_TAG&&s===r.tagName?{endTag:{...n},endLine:n.endLine,endCol:n.endCol,endOffset:n.endOffset}:{endLine:n.startLine,endCol:n.startCol,endOffset:n.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(e,i)}}shouldProcessStartTagTokenInForeignContent(e){if(!this.currentNotInHTML)return!1;let r,n;return this.openElements.stackTop===0&&this.fragmentContext?(r=this.fragmentContext,n=this.fragmentContextID):{current:r,currentTagId:n}=this.openElements,e.tagID===I.SVG&&this.treeAdapter.getTagName(r)===de.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(r)===Ee.MATHML?!1:this.tokenizer.inForeignNode||(e.tagID===I.MGLYPH||e.tagID===I.MALIGNMARK)&&n!==void 0&&!this._isIntegrationPoint(n,r,Ee.HTML)}_processToken(e){switch(e.type){case br.CHARACTER:{this.onCharacter(e);break}case br.NULL_CHARACTER:{this.onNullCharacter(e);break}case br.COMMENT:{this.onComment(e);break}case br.DOCTYPE:{this.onDoctype(e);break}case br.START_TAG:{this._processStartTag(e);break}case br.END_TAG:{this.onEndTag(e);break}case br.EOF:{this.onEof(e);break}case br.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(e);break}}}_isIntegrationPoint(e,r,n){let s=this.treeAdapter.getNamespaceURI(r),i=this.treeAdapter.getAttrList(r);return S3e(e,s,i,n)}_reconstructActiveFormattingElements(){let e=this.activeFormattingElements.entries.length;if(e){let r=this.activeFormattingElements.entries.findIndex(s=>s.type===iu.Marker||this.openElements.contains(s.element)),n=r===-1?e-1:r-1;for(let s=n;s>=0;s--){let i=this.activeFormattingElements.entries[s];this._insertElement(i.token,this.treeAdapter.getNamespaceURI(i.element)),i.element=this.openElements.current}}}_closeTableCell(){this.openElements.generateImpliedEndTags(),this.openElements.popUntilTableCellPopped(),this.activeFormattingElements.clearToLastMarker(),this.insertionMode=te.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(I.P),this.openElements.popUntilTagNamePopped(I.P)}_resetInsertionMode(){for(let e=this.openElements.stackTop;e>=0;e--)switch(e===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[e]){case I.TR:{this.insertionMode=te.IN_ROW;return}case I.TBODY:case I.THEAD:case I.TFOOT:{this.insertionMode=te.IN_TABLE_BODY;return}case I.CAPTION:{this.insertionMode=te.IN_CAPTION;return}case I.COLGROUP:{this.insertionMode=te.IN_COLUMN_GROUP;return}case I.TABLE:{this.insertionMode=te.IN_TABLE;return}case I.BODY:{this.insertionMode=te.IN_BODY;return}case I.FRAMESET:{this.insertionMode=te.IN_FRAMESET;return}case I.SELECT:{this._resetInsertionModeForSelect(e);return}case I.TEMPLATE:{this.insertionMode=this.tmplInsertionModeStack[0];return}case I.HTML:{this.insertionMode=this.headElement?te.AFTER_HEAD:te.BEFORE_HEAD;return}case I.TD:case I.TH:{if(e>0){this.insertionMode=te.IN_CELL;return}break}case I.HEAD:{if(e>0){this.insertionMode=te.IN_HEAD;return}break}}this.insertionMode=te.IN_BODY}_resetInsertionModeForSelect(e){if(e>0)for(let r=e-1;r>0;r--){let n=this.openElements.tagIDs[r];if(n===I.TEMPLATE)break;if(n===I.TABLE){this.insertionMode=te.IN_SELECT_IN_TABLE;return}}this.insertionMode=te.IN_SELECT}_isElementCausesFosterParenting(e){return w3e.has(e)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this.openElements.currentTagId!==void 0&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let e=this.openElements.stackTop;e>=0;e--){let r=this.openElements.items[e];switch(this.openElements.tagIDs[e]){case I.TEMPLATE:{if(this.treeAdapter.getNamespaceURI(r)===Ee.HTML)return{parent:this.treeAdapter.getTemplateContent(r),beforeElement:null};break}case I.TABLE:{let n=this.treeAdapter.getParentNode(r);return n?{parent:n,beforeElement:r}:{parent:this.openElements.items[e-1],beforeElement:null}}default:}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(e){let r=this._findFosterParentingLocation();r.beforeElement?this.treeAdapter.insertBefore(r.parent,e,r.beforeElement):this.treeAdapter.appendChild(r.parent,e)}_isSpecialElement(e,r){let n=this.treeAdapter.getNamespaceURI(e);return yQ[n].has(r)}onCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){MYt(this,e);return}switch(this.insertionMode){case te.INITIAL:{pv(this,e);break}case te.BEFORE_HTML:{hv(this,e);break}case te.BEFORE_HEAD:{gv(this,e);break}case te.IN_HEAD:{Av(this,e);break}case te.IN_HEAD_NO_SCRIPT:{yv(this,e);break}case te.AFTER_HEAD:{xv(this,e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:{N3e(this,e);break}case te.TEXT:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{_Q(this,e);break}case te.IN_TABLE_TEXT:{B3e(this,e);break}case te.IN_COLUMN_GROUP:{bD(this,e);break}case te.AFTER_BODY:{ED(this,e);break}case te.AFTER_AFTER_BODY:{xD(this,e);break}default:}}onNullCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){BYt(this,e);return}switch(this.insertionMode){case te.INITIAL:{pv(this,e);break}case te.BEFORE_HTML:{hv(this,e);break}case te.BEFORE_HEAD:{gv(this,e);break}case te.IN_HEAD:{Av(this,e);break}case te.IN_HEAD_NO_SCRIPT:{yv(this,e);break}case te.AFTER_HEAD:{xv(this,e);break}case te.TEXT:{this._insertCharacters(e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{_Q(this,e);break}case te.IN_COLUMN_GROUP:{bD(this,e);break}case te.AFTER_BODY:{ED(this,e);break}case te.AFTER_AFTER_BODY:{xD(this,e);break}default:}}onComment(e){if(this.skipNextNewLine=!1,this.currentNotInHTML){SQ(this,e);return}switch(this.insertionMode){case te.INITIAL:case te.BEFORE_HTML:case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_TEMPLATE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{SQ(this,e);break}case te.IN_TABLE_TEXT:{mv(this,e);break}case te.AFTER_BODY:{mKt(this,e);break}case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{hKt(this,e);break}default:}}onDoctype(e){switch(this.skipNextNewLine=!1,this.insertionMode){case te.INITIAL:{gKt(this,e);break}case te.BEFORE_HEAD:case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:{this._err(e,me.misplacedDoctype);break}case te.IN_TABLE_TEXT:{mv(this,e);break}default:}}onStartTag(e){this.skipNextNewLine=!1,this.currentToken=e,this._processStartTag(e),e.selfClosing&&!e.ackSelfClosing&&this._err(e,me.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(e){this.shouldProcessStartTagTokenInForeignContent(e)?WYt(this,e):this._startTagOutsideForeignContent(e)}_startTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{pv(this,e);break}case te.BEFORE_HTML:{AKt(this,e);break}case te.BEFORE_HEAD:{xKt(this,e);break}case te.IN_HEAD:{au(this,e);break}case te.IN_HEAD_NO_SCRIPT:{_Kt(this,e);break}case te.AFTER_HEAD:{vKt(this,e);break}case te.IN_BODY:{qi(this,e);break}case te.IN_TABLE:{Lx(this,e);break}case te.IN_TABLE_TEXT:{mv(this,e);break}case te.IN_CAPTION:{bYt(this,e);break}case te.IN_COLUMN_GROUP:{TQ(this,e);break}case te.IN_TABLE_BODY:{vD(this,e);break}case te.IN_ROW:{CD(this,e);break}case te.IN_CELL:{SYt(this,e);break}case te.IN_SELECT:{$3e(this,e);break}case te.IN_SELECT_IN_TABLE:{CYt(this,e);break}case te.IN_TEMPLATE:{TYt(this,e);break}case te.AFTER_BODY:{RYt(this,e);break}case te.IN_FRAMESET:{NYt(this,e);break}case te.AFTER_FRAMESET:{PYt(this,e);break}case te.AFTER_AFTER_BODY:{kYt(this,e);break}case te.AFTER_AFTER_FRAMESET:{LYt(this,e);break}default:}}onEndTag(e){this.skipNextNewLine=!1,this.currentToken=e,this.currentNotInHTML?$Yt(this,e):this._endTagOutsideForeignContent(e)}_endTagOutsideForeignContent(e){switch(this.insertionMode){case te.INITIAL:{pv(this,e);break}case te.BEFORE_HTML:{yKt(this,e);break}case te.BEFORE_HEAD:{bKt(this,e);break}case te.IN_HEAD:{EKt(this,e);break}case te.IN_HEAD_NO_SCRIPT:{SKt(this,e);break}case te.AFTER_HEAD:{CKt(this,e);break}case te.IN_BODY:{SD(this,e);break}case te.TEXT:{lYt(this,e);break}case te.IN_TABLE:{bv(this,e);break}case te.IN_TABLE_TEXT:{mv(this,e);break}case te.IN_CAPTION:{EYt(this,e);break}case te.IN_COLUMN_GROUP:{_Yt(this,e);break}case te.IN_TABLE_BODY:{vQ(this,e);break}case te.IN_ROW:{W3e(this,e);break}case te.IN_CELL:{vYt(this,e);break}case te.IN_SELECT:{F3e(this,e);break}case te.IN_SELECT_IN_TABLE:{IYt(this,e);break}case te.IN_TEMPLATE:{wYt(this,e);break}case te.AFTER_BODY:{q3e(this,e);break}case te.IN_FRAMESET:{OYt(this,e);break}case te.AFTER_FRAMESET:{DYt(this,e);break}case te.AFTER_AFTER_BODY:{xD(this,e);break}default:}}onEof(e){switch(this.insertionMode){case te.INITIAL:{pv(this,e);break}case te.BEFORE_HTML:{hv(this,e);break}case te.BEFORE_HEAD:{gv(this,e);break}case te.IN_HEAD:{Av(this,e);break}case te.IN_HEAD_NO_SCRIPT:{yv(this,e);break}case te.AFTER_HEAD:{xv(this,e);break}case te.IN_BODY:case te.IN_TABLE:case te.IN_CAPTION:case te.IN_COLUMN_GROUP:case te.IN_TABLE_BODY:case te.IN_ROW:case te.IN_CELL:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:{k3e(this,e);break}case te.TEXT:{dYt(this,e);break}case te.IN_TABLE_TEXT:{mv(this,e);break}case te.IN_TEMPLATE:{U3e(this,e);break}case te.AFTER_BODY:case te.IN_FRAMESET:case te.AFTER_FRAMESET:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{IQ(this,e);break}default:}}onWhitespaceCharacter(e){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,e.chars.charCodeAt(0)===Q.LINE_FEED)){if(e.chars.length===1)return;e.chars=e.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(e);return}switch(this.insertionMode){case te.IN_HEAD:case te.IN_HEAD_NO_SCRIPT:case te.AFTER_HEAD:case te.TEXT:case te.IN_COLUMN_GROUP:case te.IN_SELECT:case te.IN_SELECT_IN_TABLE:case te.IN_FRAMESET:case te.AFTER_FRAMESET:{this._insertCharacters(e);break}case te.IN_BODY:case te.IN_CAPTION:case te.IN_CELL:case te.IN_TEMPLATE:case te.AFTER_BODY:case te.AFTER_AFTER_BODY:case te.AFTER_AFTER_FRAMESET:{R3e(this,e);break}case te.IN_TABLE:case te.IN_TABLE_BODY:case te.IN_ROW:{_Q(this,e);break}case te.IN_TABLE_TEXT:{L3e(this,e);break}default:}}};function cKt(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(e.tagName);return r?t.openElements.contains(r.element)?t.openElements.hasInScope(e.tagID)||(r=null):(t.activeFormattingElements.removeEntry(r),r=null):D3e(t,e),r}function uKt(t,e){let r=null,n=t.openElements.stackTop;for(;n>=0;n--){let s=t.openElements.items[n];if(s===e.element)break;t._isSpecialElement(s,t.openElements.tagIDs[n])&&(r=s)}return r||(t.openElements.shortenToLength(Math.max(n,0)),t.activeFormattingElements.removeEntry(e)),r}function lKt(t,e,r){let n=e,s=t.openElements.getCommonAncestor(e);for(let i=0,a=s;a!==r;i++,a=s){s=t.openElements.getCommonAncestor(a);let o=t.activeFormattingElements.getElementEntry(a),c=o&&i>=aKt;!o||c?(c&&t.activeFormattingElements.removeEntry(o),t.openElements.remove(a)):(a=dKt(t,o),n===e&&(t.activeFormattingElements.bookmark=o),t.treeAdapter.detachNode(n),t.treeAdapter.appendChild(a,n),n=a)}return n}function dKt(t,e){let r=t.treeAdapter.getNamespaceURI(e.element),n=t.treeAdapter.createElement(e.token.tagName,r,e.token.attrs);return t.openElements.replace(e.element,n),e.element=n,n}function fKt(t,e,r){let n=t.treeAdapter.getTagName(e),s=u0(n);if(t._isElementCausesFosterParenting(s))t._fosterParentElement(r);else{let i=t.treeAdapter.getNamespaceURI(e);s===I.TEMPLATE&&i===Ee.HTML&&(e=t.treeAdapter.getTemplateContent(e)),t.treeAdapter.appendChild(e,r)}}function pKt(t,e,r){let n=t.treeAdapter.getNamespaceURI(r.element),{token:s}=r,i=t.treeAdapter.createElement(s.tagName,n,s.attrs);t._adoptNodes(e,i),t.treeAdapter.appendChild(e,i),t.activeFormattingElements.insertElementAfterBookmark(i,s),t.activeFormattingElements.removeEntry(r),t.openElements.remove(r.element),t.openElements.insertAfter(e,i,s.tagID)}function CQ(t,e){for(let r=0;r=r;n--)t._setEndLocation(t.openElements.items[n],e);if(!t.fragmentContext&&t.openElements.stackTop>=0){let n=t.openElements.items[0],s=t.treeAdapter.getNodeSourceCodeLocation(n);if(s&&!s.endTag&&(t._setEndLocation(n,e),t.openElements.stackTop>=1)){let i=t.openElements.items[1],a=t.treeAdapter.getNodeSourceCodeLocation(i);a&&!a.endTag&&t._setEndLocation(i,e)}}}}function gKt(t,e){t._setDocumentType(e);let r=e.forceQuirks?Fi.QUIRKS:x3e(e);y3e(e)||t._err(e,me.nonConformingDoctype),t.treeAdapter.setDocumentMode(t.document,r),t.insertionMode=te.BEFORE_HTML}function pv(t,e){t._err(e,me.missingDoctype,!0),t.treeAdapter.setDocumentMode(t.document,Fi.QUIRKS),t.insertionMode=te.BEFORE_HTML,t._processToken(e)}function AKt(t,e){e.tagID===I.HTML?(t._insertElement(e,Ee.HTML),t.insertionMode=te.BEFORE_HEAD):hv(t,e)}function yKt(t,e){let r=e.tagID;(r===I.HTML||r===I.HEAD||r===I.BODY||r===I.BR)&&hv(t,e)}function hv(t,e){t._insertFakeRootElement(),t.insertionMode=te.BEFORE_HEAD,t._processToken(e)}function xKt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.HEAD:{t._insertElement(e,Ee.HTML),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD;break}default:gv(t,e)}}function bKt(t,e){let r=e.tagID;r===I.HEAD||r===I.BODY||r===I.HTML||r===I.BR?gv(t,e):t._err(e,me.endTagWithoutMatchingOpenElement)}function gv(t,e){t._insertFakeElement(de.HEAD,I.HEAD),t.headElement=t.openElements.current,t.insertionMode=te.IN_HEAD,t._processToken(e)}function au(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.BASE:case I.BASEFONT:case I.BGSOUND:case I.LINK:case I.META:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case I.TITLE:{t._switchToTextParsing(e,Ui.RCDATA);break}case I.NOSCRIPT:{t.options.scriptingEnabled?t._switchToTextParsing(e,Ui.RAWTEXT):(t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_HEAD_NO_SCRIPT);break}case I.NOFRAMES:case I.STYLE:{t._switchToTextParsing(e,Ui.RAWTEXT);break}case I.SCRIPT:{t._switchToTextParsing(e,Ui.SCRIPT_DATA);break}case I.TEMPLATE:{t._insertTemplate(e),t.activeFormattingElements.insertMarker(),t.framesetOk=!1,t.insertionMode=te.IN_TEMPLATE,t.tmplInsertionModeStack.unshift(te.IN_TEMPLATE);break}case I.HEAD:{t._err(e,me.misplacedStartTagForHeadElement);break}default:Av(t,e)}}function EKt(t,e){switch(e.tagID){case I.HEAD:{t.openElements.pop(),t.insertionMode=te.AFTER_HEAD;break}case I.BODY:case I.BR:case I.HTML:{Av(t,e);break}case I.TEMPLATE:{Ih(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function Ih(t,e){t.openElements.tmplCount>0?(t.openElements.generateImpliedEndTagsThoroughly(),t.openElements.currentTagId!==I.TEMPLATE&&t._err(e,me.closingOfElementWithOpenChildElements),t.openElements.popUntilTagNamePopped(I.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode()):t._err(e,me.endTagWithoutMatchingOpenElement)}function Av(t,e){t.openElements.pop(),t.insertionMode=te.AFTER_HEAD,t._processToken(e)}function _Kt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.BASEFONT:case I.BGSOUND:case I.HEAD:case I.LINK:case I.META:case I.NOFRAMES:case I.STYLE:{au(t,e);break}case I.NOSCRIPT:{t._err(e,me.nestedNoscriptInHead);break}default:yv(t,e)}}function SKt(t,e){switch(e.tagID){case I.NOSCRIPT:{t.openElements.pop(),t.insertionMode=te.IN_HEAD;break}case I.BR:{yv(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function yv(t,e){let r=e.type===br.EOF?me.openElementsLeftAfterEof:me.disallowedContentInNoscriptInHead;t._err(e,r),t.openElements.pop(),t.insertionMode=te.IN_HEAD,t._processToken(e)}function vKt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.BODY:{t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_BODY;break}case I.FRAMESET:{t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET;break}case I.BASE:case I.BASEFONT:case I.BGSOUND:case I.LINK:case I.META:case I.NOFRAMES:case I.SCRIPT:case I.STYLE:case I.TEMPLATE:case I.TITLE:{t._err(e,me.abandonedHeadElementChild),t.openElements.push(t.headElement,I.HEAD),au(t,e),t.openElements.remove(t.headElement);break}case I.HEAD:{t._err(e,me.misplacedStartTagForHeadElement);break}default:xv(t,e)}}function CKt(t,e){switch(e.tagID){case I.BODY:case I.HTML:case I.BR:{xv(t,e);break}case I.TEMPLATE:{Ih(t,e);break}default:t._err(e,me.endTagWithoutMatchingOpenElement)}}function xv(t,e){t._insertFakeElement(de.BODY,I.BODY),t.insertionMode=te.IN_BODY,_D(t,e)}function _D(t,e){switch(e.type){case br.CHARACTER:{N3e(t,e);break}case br.WHITESPACE_CHARACTER:{R3e(t,e);break}case br.COMMENT:{SQ(t,e);break}case br.START_TAG:{qi(t,e);break}case br.END_TAG:{SD(t,e);break}case br.EOF:{k3e(t,e);break}default:}}function R3e(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e)}function N3e(t,e){t._reconstructActiveFormattingElements(),t._insertCharacters(e),t.framesetOk=!1}function IKt(t,e){t.openElements.tmplCount===0&&t.treeAdapter.adoptAttributes(t.openElements.items[0],e.attrs)}function TKt(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t.openElements.tmplCount===0&&(t.framesetOk=!1,t.treeAdapter.adoptAttributes(r,e.attrs))}function wKt(t,e){let r=t.openElements.tryPeekProperlyNestedBodyElement();t.framesetOk&&r&&(t.treeAdapter.detachNode(r),t.openElements.popAllUpToHtmlElement(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_FRAMESET)}function RKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function NKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t.openElements.currentTagId!==void 0&&Dx.has(t.openElements.currentTagId)&&t.openElements.pop(),t._insertElement(e,Ee.HTML)}function OKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.framesetOk=!1}function PKt(t,e){let r=t.openElements.tmplCount>0;(!t.formElement||r)&&(t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),r||(t.formElement=t.openElements.current))}function DKt(t,e){t.framesetOk=!1;let r=e.tagID;for(let n=t.openElements.stackTop;n>=0;n--){let s=t.openElements.tagIDs[n];if(r===I.LI&&s===I.LI||(r===I.DD||r===I.DT)&&(s===I.DD||s===I.DT)){t.openElements.generateImpliedEndTagsWithExclusion(s),t.openElements.popUntilTagNamePopped(s);break}if(s!==I.ADDRESS&&s!==I.DIV&&s!==I.P&&t._isSpecialElement(t.openElements.items[n],s))break}t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML)}function kKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.tokenizer.state=Ui.PLAINTEXT}function LKt(t,e){t.openElements.hasInScope(I.BUTTON)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(I.BUTTON)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1}function BKt(t,e){let r=t.activeFormattingElements.getElementEntryInScopeWithTagName(de.A);r&&(CQ(t,e),t.openElements.remove(r.element),t.activeFormattingElements.removeEntry(r)),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function MKt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function WKt(t,e){t._reconstructActiveFormattingElements(),t.openElements.hasInScope(I.NOBR)&&(CQ(t,e),t._reconstructActiveFormattingElements()),t._insertElement(e,Ee.HTML),t.activeFormattingElements.pushElement(t.openElements.current,e)}function $Kt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.activeFormattingElements.insertMarker(),t.framesetOk=!1}function FKt(t,e){t.treeAdapter.getDocumentMode(t.document)!==Fi.QUIRKS&&t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=te.IN_TABLE}function O3e(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function P3e(t){let e=lD(t,pl.TYPE);return e!=null&&e.toLowerCase()===sKt}function UKt(t,e){t._reconstructActiveFormattingElements(),t._appendElement(e,Ee.HTML),P3e(e)||(t.framesetOk=!1),e.ackSelfClosing=!0}function qKt(t,e){t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0}function jKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._appendElement(e,Ee.HTML),t.framesetOk=!1,e.ackSelfClosing=!0}function HKt(t,e){e.tagName=de.IMG,e.tagID=I.IMG,O3e(t,e)}function QKt(t,e){t._insertElement(e,Ee.HTML),t.skipNextNewLine=!0,t.tokenizer.state=Ui.RCDATA,t.originalInsertionMode=t.insertionMode,t.framesetOk=!1,t.insertionMode=te.TEXT}function GKt(t,e){t.openElements.hasInButtonScope(I.P)&&t._closePElement(),t._reconstructActiveFormattingElements(),t.framesetOk=!1,t._switchToTextParsing(e,Ui.RAWTEXT)}function VKt(t,e){t.framesetOk=!1,t._switchToTextParsing(e,Ui.RAWTEXT)}function I3e(t,e){t._switchToTextParsing(e,Ui.RAWTEXT)}function zKt(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML),t.framesetOk=!1,t.insertionMode=t.insertionMode===te.IN_TABLE||t.insertionMode===te.IN_CAPTION||t.insertionMode===te.IN_TABLE_BODY||t.insertionMode===te.IN_ROW||t.insertionMode===te.IN_CELL?te.IN_SELECT_IN_TABLE:te.IN_SELECT}function KKt(t,e){t.openElements.currentTagId===I.OPTION&&t.openElements.pop(),t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function YKt(t,e){t.openElements.hasInScope(I.RUBY)&&t.openElements.generateImpliedEndTags(),t._insertElement(e,Ee.HTML)}function JKt(t,e){t.openElements.hasInScope(I.RUBY)&&t.openElements.generateImpliedEndTagsWithExclusion(I.RTC),t._insertElement(e,Ee.HTML)}function XKt(t,e){t._reconstructActiveFormattingElements(),bQ(e),yD(e),e.selfClosing?t._appendElement(e,Ee.MATHML):t._insertElement(e,Ee.MATHML),e.ackSelfClosing=!0}function ZKt(t,e){t._reconstructActiveFormattingElements(),EQ(e),yD(e),e.selfClosing?t._appendElement(e,Ee.SVG):t._insertElement(e,Ee.SVG),e.ackSelfClosing=!0}function T3e(t,e){t._reconstructActiveFormattingElements(),t._insertElement(e,Ee.HTML)}function qi(t,e){switch(e.tagID){case I.I:case I.S:case I.B:case I.U:case I.EM:case I.TT:case I.BIG:case I.CODE:case I.FONT:case I.SMALL:case I.STRIKE:case I.STRONG:{MKt(t,e);break}case I.A:{BKt(t,e);break}case I.H1:case I.H2:case I.H3:case I.H4:case I.H5:case I.H6:{NKt(t,e);break}case I.P:case I.DL:case I.OL:case I.UL:case I.DIV:case I.DIR:case I.NAV:case I.MAIN:case I.MENU:case I.ASIDE:case I.CENTER:case I.FIGURE:case I.FOOTER:case I.HEADER:case I.HGROUP:case I.DIALOG:case I.DETAILS:case I.ADDRESS:case I.ARTICLE:case I.SEARCH:case I.SECTION:case I.SUMMARY:case I.FIELDSET:case I.BLOCKQUOTE:case I.FIGCAPTION:{RKt(t,e);break}case I.LI:case I.DD:case I.DT:{DKt(t,e);break}case I.BR:case I.IMG:case I.WBR:case I.AREA:case I.EMBED:case I.KEYGEN:{O3e(t,e);break}case I.HR:{jKt(t,e);break}case I.RB:case I.RTC:{YKt(t,e);break}case I.RT:case I.RP:{JKt(t,e);break}case I.PRE:case I.LISTING:{OKt(t,e);break}case I.XMP:{GKt(t,e);break}case I.SVG:{ZKt(t,e);break}case I.HTML:{IKt(t,e);break}case I.BASE:case I.LINK:case I.META:case I.STYLE:case I.TITLE:case I.SCRIPT:case I.BGSOUND:case I.BASEFONT:case I.TEMPLATE:{au(t,e);break}case I.BODY:{TKt(t,e);break}case I.FORM:{PKt(t,e);break}case I.NOBR:{WKt(t,e);break}case I.MATH:{XKt(t,e);break}case I.TABLE:{FKt(t,e);break}case I.INPUT:{UKt(t,e);break}case I.PARAM:case I.TRACK:case I.SOURCE:{qKt(t,e);break}case I.IMAGE:{HKt(t,e);break}case I.BUTTON:{LKt(t,e);break}case I.APPLET:case I.OBJECT:case I.MARQUEE:{$Kt(t,e);break}case I.IFRAME:{VKt(t,e);break}case I.SELECT:{zKt(t,e);break}case I.OPTION:case I.OPTGROUP:{KKt(t,e);break}case I.NOEMBED:case I.NOFRAMES:{I3e(t,e);break}case I.FRAMESET:{wKt(t,e);break}case I.TEXTAREA:{QKt(t,e);break}case I.NOSCRIPT:{t.options.scriptingEnabled?I3e(t,e):T3e(t,e);break}case I.PLAINTEXT:{kKt(t,e);break}case I.COL:case I.TH:case I.TD:case I.TR:case I.HEAD:case I.FRAME:case I.TBODY:case I.TFOOT:case I.THEAD:case I.CAPTION:case I.COLGROUP:break;default:T3e(t,e)}}function eYt(t,e){if(t.openElements.hasInScope(I.BODY)&&(t.insertionMode=te.AFTER_BODY,t.options.sourceCodeLocationInfo)){let r=t.openElements.tryPeekProperlyNestedBodyElement();r&&t._setEndLocation(r,e)}}function tYt(t,e){t.openElements.hasInScope(I.BODY)&&(t.insertionMode=te.AFTER_BODY,q3e(t,e))}function rYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r))}function nYt(t){let e=t.openElements.tmplCount>0,{formElement:r}=t;e||(t.formElement=null),(r||e)&&t.openElements.hasInScope(I.FORM)&&(t.openElements.generateImpliedEndTags(),e?t.openElements.popUntilTagNamePopped(I.FORM):r&&t.openElements.remove(r))}function sYt(t){t.openElements.hasInButtonScope(I.P)||t._insertFakeElement(de.P,I.P),t._closePElement()}function iYt(t){t.openElements.hasInListItemScope(I.LI)&&(t.openElements.generateImpliedEndTagsWithExclusion(I.LI),t.openElements.popUntilTagNamePopped(I.LI))}function aYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTagsWithExclusion(r),t.openElements.popUntilTagNamePopped(r))}function oYt(t){t.openElements.hasNumberedHeaderInScope()&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilNumberedHeaderPopped())}function cYt(t,e){let r=e.tagID;t.openElements.hasInScope(r)&&(t.openElements.generateImpliedEndTags(),t.openElements.popUntilTagNamePopped(r),t.activeFormattingElements.clearToLastMarker())}function uYt(t){t._reconstructActiveFormattingElements(),t._insertFakeElement(de.BR,I.BR),t.openElements.pop(),t.framesetOk=!1}function D3e(t,e){let r=e.tagName,n=e.tagID;for(let s=t.openElements.stackTop;s>0;s--){let i=t.openElements.items[s],a=t.openElements.tagIDs[s];if(n===a&&(n!==I.UNKNOWN||t.treeAdapter.getTagName(i)===r)){t.openElements.generateImpliedEndTagsWithExclusion(n),t.openElements.stackTop>=s&&t.openElements.shortenToLength(s);break}if(t._isSpecialElement(i,a))break}}function SD(t,e){switch(e.tagID){case I.A:case I.B:case I.I:case I.S:case I.U:case I.EM:case I.TT:case I.BIG:case I.CODE:case I.FONT:case I.NOBR:case I.SMALL:case I.STRIKE:case I.STRONG:{CQ(t,e);break}case I.P:{sYt(t);break}case I.DL:case I.UL:case I.OL:case I.DIR:case I.DIV:case I.NAV:case I.PRE:case I.MAIN:case I.MENU:case I.ASIDE:case I.BUTTON:case I.CENTER:case I.FIGURE:case I.FOOTER:case I.HEADER:case I.HGROUP:case I.DIALOG:case I.ADDRESS:case I.ARTICLE:case I.DETAILS:case I.SEARCH:case I.SECTION:case I.SUMMARY:case I.LISTING:case I.FIELDSET:case I.BLOCKQUOTE:case I.FIGCAPTION:{rYt(t,e);break}case I.LI:{iYt(t);break}case I.DD:case I.DT:{aYt(t,e);break}case I.H1:case I.H2:case I.H3:case I.H4:case I.H5:case I.H6:{oYt(t);break}case I.BR:{uYt(t);break}case I.BODY:{eYt(t,e);break}case I.HTML:{tYt(t,e);break}case I.FORM:{nYt(t);break}case I.APPLET:case I.OBJECT:case I.MARQUEE:{cYt(t,e);break}case I.TEMPLATE:{Ih(t,e);break}default:D3e(t,e)}}function k3e(t,e){t.tmplInsertionModeStack.length>0?U3e(t,e):IQ(t,e)}function lYt(t,e){var r;e.tagID===I.SCRIPT&&((r=t.scriptHandler)===null||r===void 0||r.call(t,t.openElements.current)),t.openElements.pop(),t.insertionMode=t.originalInsertionMode}function dYt(t,e){t._err(e,me.eofInElementThatCanContainOnlyText),t.openElements.pop(),t.insertionMode=t.originalInsertionMode,t.onEof(e)}function _Q(t,e){if(t.openElements.currentTagId!==void 0&&w3e.has(t.openElements.currentTagId))switch(t.pendingCharacterTokens.length=0,t.hasNonWhitespacePendingCharacterToken=!1,t.originalInsertionMode=t.insertionMode,t.insertionMode=te.IN_TABLE_TEXT,e.type){case br.CHARACTER:{B3e(t,e);break}case br.WHITESPACE_CHARACTER:{L3e(t,e);break}}else Ev(t,e)}function fYt(t,e){t.openElements.clearBackToTableContext(),t.activeFormattingElements.insertMarker(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_CAPTION}function pYt(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_COLUMN_GROUP}function mYt(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(de.COLGROUP,I.COLGROUP),t.insertionMode=te.IN_COLUMN_GROUP,TQ(t,e)}function hYt(t,e){t.openElements.clearBackToTableContext(),t._insertElement(e,Ee.HTML),t.insertionMode=te.IN_TABLE_BODY}function gYt(t,e){t.openElements.clearBackToTableContext(),t._insertFakeElement(de.TBODY,I.TBODY),t.insertionMode=te.IN_TABLE_BODY,vD(t,e)}function AYt(t,e){t.openElements.hasInTableScope(I.TABLE)&&(t.openElements.popUntilTagNamePopped(I.TABLE),t._resetInsertionMode(),t._processStartTag(e))}function yYt(t,e){P3e(e)?t._appendElement(e,Ee.HTML):Ev(t,e),e.ackSelfClosing=!0}function xYt(t,e){!t.formElement&&t.openElements.tmplCount===0&&(t._insertElement(e,Ee.HTML),t.formElement=t.openElements.current,t.openElements.pop())}function Lx(t,e){switch(e.tagID){case I.TD:case I.TH:case I.TR:{gYt(t,e);break}case I.STYLE:case I.SCRIPT:case I.TEMPLATE:{au(t,e);break}case I.COL:{mYt(t,e);break}case I.FORM:{xYt(t,e);break}case I.TABLE:{AYt(t,e);break}case I.TBODY:case I.TFOOT:case I.THEAD:{hYt(t,e);break}case I.INPUT:{yYt(t,e);break}case I.CAPTION:{fYt(t,e);break}case I.COLGROUP:{pYt(t,e);break}default:Ev(t,e)}}function bv(t,e){switch(e.tagID){case I.TABLE:{t.openElements.hasInTableScope(I.TABLE)&&(t.openElements.popUntilTagNamePopped(I.TABLE),t._resetInsertionMode());break}case I.TEMPLATE:{Ih(t,e);break}case I.BODY:case I.CAPTION:case I.COL:case I.COLGROUP:case I.HTML:case I.TBODY:case I.TD:case I.TFOOT:case I.TH:case I.THEAD:case I.TR:break;default:Ev(t,e)}}function Ev(t,e){let r=t.fosterParentingEnabled;t.fosterParentingEnabled=!0,_D(t,e),t.fosterParentingEnabled=r}function L3e(t,e){t.pendingCharacterTokens.push(e)}function B3e(t,e){t.pendingCharacterTokens.push(e),t.hasNonWhitespacePendingCharacterToken=!0}function mv(t,e){let r=0;if(t.hasNonWhitespacePendingCharacterToken)for(;r0&&t.openElements.currentTagId===I.OPTION&&t.openElements.tagIDs[t.openElements.stackTop-1]===I.OPTGROUP&&t.openElements.pop(),t.openElements.currentTagId===I.OPTGROUP&&t.openElements.pop();break}case I.OPTION:{t.openElements.currentTagId===I.OPTION&&t.openElements.pop();break}case I.SELECT:{t.openElements.hasInSelectScope(I.SELECT)&&(t.openElements.popUntilTagNamePopped(I.SELECT),t._resetInsertionMode());break}case I.TEMPLATE:{Ih(t,e);break}default:}}function CYt(t,e){let r=e.tagID;r===I.CAPTION||r===I.TABLE||r===I.TBODY||r===I.TFOOT||r===I.THEAD||r===I.TR||r===I.TD||r===I.TH?(t.openElements.popUntilTagNamePopped(I.SELECT),t._resetInsertionMode(),t._processStartTag(e)):$3e(t,e)}function IYt(t,e){let r=e.tagID;r===I.CAPTION||r===I.TABLE||r===I.TBODY||r===I.TFOOT||r===I.THEAD||r===I.TR||r===I.TD||r===I.TH?t.openElements.hasInTableScope(r)&&(t.openElements.popUntilTagNamePopped(I.SELECT),t._resetInsertionMode(),t.onEndTag(e)):F3e(t,e)}function TYt(t,e){switch(e.tagID){case I.BASE:case I.BASEFONT:case I.BGSOUND:case I.LINK:case I.META:case I.NOFRAMES:case I.SCRIPT:case I.STYLE:case I.TEMPLATE:case I.TITLE:{au(t,e);break}case I.CAPTION:case I.COLGROUP:case I.TBODY:case I.TFOOT:case I.THEAD:{t.tmplInsertionModeStack[0]=te.IN_TABLE,t.insertionMode=te.IN_TABLE,Lx(t,e);break}case I.COL:{t.tmplInsertionModeStack[0]=te.IN_COLUMN_GROUP,t.insertionMode=te.IN_COLUMN_GROUP,TQ(t,e);break}case I.TR:{t.tmplInsertionModeStack[0]=te.IN_TABLE_BODY,t.insertionMode=te.IN_TABLE_BODY,vD(t,e);break}case I.TD:case I.TH:{t.tmplInsertionModeStack[0]=te.IN_ROW,t.insertionMode=te.IN_ROW,CD(t,e);break}default:t.tmplInsertionModeStack[0]=te.IN_BODY,t.insertionMode=te.IN_BODY,qi(t,e)}}function wYt(t,e){e.tagID===I.TEMPLATE&&Ih(t,e)}function U3e(t,e){t.openElements.tmplCount>0?(t.openElements.popUntilTagNamePopped(I.TEMPLATE),t.activeFormattingElements.clearToLastMarker(),t.tmplInsertionModeStack.shift(),t._resetInsertionMode(),t.onEof(e)):IQ(t,e)}function RYt(t,e){e.tagID===I.HTML?qi(t,e):ED(t,e)}function q3e(t,e){var r;if(e.tagID===I.HTML){if(t.fragmentContext||(t.insertionMode=te.AFTER_AFTER_BODY),t.options.sourceCodeLocationInfo&&t.openElements.tagIDs[0]===I.HTML){t._setEndLocation(t.openElements.items[0],e);let n=t.openElements.items[1];n&&!(!((r=t.treeAdapter.getNodeSourceCodeLocation(n))===null||r===void 0)&&r.endTag)&&t._setEndLocation(n,e)}}else ED(t,e)}function ED(t,e){t.insertionMode=te.IN_BODY,_D(t,e)}function NYt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.FRAMESET:{t._insertElement(e,Ee.HTML);break}case I.FRAME:{t._appendElement(e,Ee.HTML),e.ackSelfClosing=!0;break}case I.NOFRAMES:{au(t,e);break}default:}}function OYt(t,e){e.tagID===I.FRAMESET&&!t.openElements.isRootHtmlElementCurrent()&&(t.openElements.pop(),!t.fragmentContext&&t.openElements.currentTagId!==I.FRAMESET&&(t.insertionMode=te.AFTER_FRAMESET))}function PYt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.NOFRAMES:{au(t,e);break}default:}}function DYt(t,e){e.tagID===I.HTML&&(t.insertionMode=te.AFTER_AFTER_FRAMESET)}function kYt(t,e){e.tagID===I.HTML?qi(t,e):xD(t,e)}function xD(t,e){t.insertionMode=te.IN_BODY,_D(t,e)}function LYt(t,e){switch(e.tagID){case I.HTML:{qi(t,e);break}case I.NOFRAMES:{au(t,e);break}default:}}function BYt(t,e){e.chars=_n,t._insertCharacters(e)}function MYt(t,e){t._insertCharacters(e),t.framesetOk=!1}function j3e(t){for(;t.treeAdapter.getNamespaceURI(t.openElements.current)!==Ee.HTML&&t.openElements.currentTagId!==void 0&&!t._isIntegrationPoint(t.openElements.currentTagId,t.openElements.current);)t.openElements.pop()}function WYt(t,e){if(E3e(e))j3e(t),t._startTagOutsideForeignContent(e);else{let r=t._getAdjustedCurrentElement(),n=t.treeAdapter.getNamespaceURI(r);n===Ee.MATHML?bQ(e):n===Ee.SVG&&(_3e(e),EQ(e)),yD(e),e.selfClosing?t._appendElement(e,n):t._insertElement(e,n),e.ackSelfClosing=!0}}function $Yt(t,e){if(e.tagID===I.P||e.tagID===I.BR){j3e(t),t._endTagOutsideForeignContent(e);return}for(let r=t.openElements.stackTop;r>0;r--){let n=t.openElements.items[r];if(t.treeAdapter.getNamespaceURI(n)===Ee.HTML){t._endTagOutsideForeignContent(e);break}let s=t.treeAdapter.getTagName(n);if(s.toLowerCase()===e.tagName){e.tagName=s,t.openElements.shortenToLength(r);break}}}var kUr=String.prototype.codePointAt==null?(t,e)=>(t.charCodeAt(e)&64512)===55296?(t.charCodeAt(e)-55296)*1024+t.charCodeAt(e+1)-56320+65536:t.charCodeAt(e):(t,e)=>t.codePointAt(e);function H3e(t,e){return function(n){let s,i=0,a="";for(;s=t.exec(n);)i!==s.index&&(a+=n.substring(i,s.index)),a+=e.get(s[0].charCodeAt(0)),i=s.index+1;return a+n.substring(i)}}var Q3e=H3e(/["&\u00A0]/g,new Map([[34,"""],[38,"&"],[160," "]])),G3e=H3e(/[&<>\u00A0]/g,new Map([[38,"&"],[60,"<"],[62,">"],[160," "]]));var FYt=new Set([de.AREA,de.BASE,de.BASEFONT,de.BGSOUND,de.BR,de.COL,de.EMBED,de.FRAME,de.HR,de.IMG,de.INPUT,de.KEYGEN,de.LINK,de.META,de.PARAM,de.SOURCE,de.TRACK,de.WBR]);function UYt(t,e){return e.treeAdapter.isElementNode(t)&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML&&FYt.has(e.treeAdapter.getTagName(t))}var qYt={treeAdapter:hc,scriptingEnabled:!0};function wQ(t,e){let r={...qYt,...e};return V3e(t,r)}function jYt(t,e){let r="",n=e.treeAdapter.isElementNode(t)&&e.treeAdapter.getTagName(t)===de.TEMPLATE&&e.treeAdapter.getNamespaceURI(t)===Ee.HTML?e.treeAdapter.getTemplateContent(t):t,s=e.treeAdapter.getChildNodes(n);if(s)for(let i of s)r+=V3e(i,e);return r}function V3e(t,e){return e.treeAdapter.isElementNode(t)?HYt(t,e):e.treeAdapter.isTextNode(t)?GYt(t,e):e.treeAdapter.isCommentNode(t)?VYt(t,e):e.treeAdapter.isDocumentTypeNode(t)?zYt(t,e):""}function HYt(t,e){let r=e.treeAdapter.getTagName(t);return`<${r}${QYt(t,e)}>${UYt(t,e)?"":`${jYt(t,e)}`}`}function QYt(t,{treeAdapter:e}){let r="";for(let n of e.getAttrList(t)){if(r+=" ",n.namespace)switch(n.namespace){case Ee.XML:{r+=`xml:${n.name}`;break}case Ee.XMLNS:{n.name!=="xmlns"&&(r+="xmlns:"),r+=n.name;break}case Ee.XLINK:{r+=`xlink:${n.name}`;break}default:r+=`${n.prefix}:${n.name}`}else r+=n.name;r+=`="${Q3e(n.value)}"`}return r}function GYt(t,e){let{treeAdapter:r}=e,n=r.getTextNodeContent(t),s=r.getParentNode(t),i=s&&r.isElementNode(s)&&r.getTagName(s);return i&&r.getNamespaceURI(s)===Ee.HTML&&xQ(i,e.scriptingEnabled)?n:G3e(n)}function VYt(t,{treeAdapter:e}){return``}function zYt(t,{treeAdapter:e}){return``}function z3e(t,e){return kx.parse(t,e)}function K3e(t,e,r){typeof t=="string"&&(r=e,e=t,t=null);let n=kx.getFragmentParser(t,r);return n.tokenizer.write(e,!0),n.getFragment()}function Y3e(t){let e=t.includes('"')?"'":'"';return e+t+e}function KYt(t,e,r){let n="!DOCTYPE ";return t&&(n+=t),e?n+=` PUBLIC ${Y3e(e)}`:r&&(n+=" SYSTEM"),r&&(n+=` ${Y3e(r)}`),n}var Hd={isCommentNode:_h,isElementNode:st,isTextNode:za,createDocument(){let t=new Eo([]);return t["x-mode"]=pD.DOCUMENT_MODE.NO_QUIRKS,t},createDocumentFragment(){return new Eo([])},createElement(t,e,r){let n=Object.create(null),s=Object.create(null),i=Object.create(null);for(let o=0;oN3(a)&&a.name==="!doctype");i?i.data=s??null:(i=new bh("!doctype",s),Hd.appendChild(t,i)),i["x-name"]=e,i["x-publicId"]=r,i["x-systemId"]=n},setDocumentMode(t,e){t["x-mode"]=e},getDocumentMode(t){return t["x-mode"]},detachNode(t){if(t.parent){let e=t.parent.children.indexOf(t),{prev:r,next:n}=t;t.prev=null,t.next=null,r&&(r.next=n),n&&(n.prev=r),t.parent.children.splice(e,1),t.parent=null}},insertText(t,e){let r=t.children[t.children.length-1];r&&za(r)?r.data+=e:Hd.appendChild(t,Hd.createTextNode(e))},insertTextBefore(t,e,r){let n=t.children[t.children.indexOf(r)-1];n&&za(n)?n.data+=e:Hd.insertBefore(t,Hd.createTextNode(e),r)},adoptAttributes(t,e){for(let r=0;r=ze.Zero&&t<=ze.Nine}function JYt(t){return t>=ze.LowerA&&t<=ze.LowerZ||t>=ze.UpperA&&t<=ze.UpperZ}function XYt(t){return t>=ze.UpperA&&t<=ze.UpperF||t>=ze.LowerA&&t<=ze.LowerF}var ou;(function(t){t[t.NoValue=0]="NoValue",t[t.Unquoted=1]="Unquoted",t[t.Single=2]="Single",t[t.Double=3]="Double"})(ou||(ou={}));var Xa={Cdata:new Uint8Array([67,68,65,84,65,91]),CdataEnd:new Uint8Array([93,93,62]),CommentEnd:new Uint8Array([45,45,62]),ScriptEnd:new Uint8Array([60,47,115,99,114,105,112,116]),StyleEnd:new Uint8Array([60,47,115,116,121,108,101]),TitleEnd:new Uint8Array([60,47,116,105,116,108,101])},Bx=class{constructor({xmlMode:e=!1,decodeEntities:r=!0},n){this.cbs=n,this.state=ve.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=ve.Text,this.isSpecial=!1,this.running=!0,this.offset=0,this.currentSequence=void 0,this.sequenceIndex=0,this.trieIndex=0,this.trieCurrent=0,this.entityResult=0,this.entityExcess=0,this.xmlMode=e,this.decodeEntities=r,this.entityTrie=e?P3:O3}reset(){this.state=ve.Text,this.buffer="",this.sectionStart=0,this.index=0,this.baseState=ve.Text,this.currentSequence=void 0,this.running=!0,this.offset=0}write(e){this.offset+=this.buffer.length,this.buffer=e,this.parse()}end(){this.running&&this.finish()}pause(){this.running=!1}resume(){this.running=!0,this.indexthis.sectionStart&&this.cbs.ontext(this.sectionStart,this.index),this.state=ve.BeforeTagName,this.sectionStart=this.index):this.decodeEntities&&e===ze.Amp&&(this.state=ve.BeforeEntity)}stateSpecialStartSequence(e){let r=this.sequenceIndex===this.currentSequence.length;if(!(r?ID(e):(e|32)===this.currentSequence[this.sequenceIndex]))this.isSpecial=!1;else if(!r){this.sequenceIndex++;return}this.sequenceIndex=0,this.state=ve.InTagName,this.stateInTagName(e)}stateInSpecialTag(e){if(this.sequenceIndex===this.currentSequence.length){if(e===ze.Gt||Qd(e)){let r=this.index-this.currentSequence.length;if(this.sectionStart>14)-1;if(!this.allowLegacyEntity()&&e!==ze.Semi)this.trieIndex+=n;else{let s=this.index-this.entityExcess+1;s>this.sectionStart&&this.emitPartial(this.sectionStart,s),this.entityResult=this.trieIndex,this.trieIndex+=n,this.entityExcess=0,this.sectionStart=this.index+1,n===0&&this.emitNamedEntity()}}}emitNamedEntity(){if(this.state=this.baseState,this.entityResult===0)return;switch((this.entityTrie[this.entityResult]&dc.VALUE_LENGTH)>>14){case 1:{this.emitCodePoint(this.entityTrie[this.entityResult]&~dc.VALUE_LENGTH);break}case 2:{this.emitCodePoint(this.entityTrie[this.entityResult+1]);break}case 3:this.emitCodePoint(this.entityTrie[this.entityResult+1]),this.emitCodePoint(this.entityTrie[this.entityResult+2])}}stateBeforeNumericEntity(e){(e|32)===ze.LowerX?(this.entityExcess++,this.state=ve.InHexEntity):(this.state=ve.InNumericEntity,this.stateInNumericEntity(e))}emitNumericEntity(e){let r=this.index-this.entityExcess-1;r+2+ +(this.state===ve.InHexEntity)!==this.index&&(r>this.sectionStart&&this.emitPartial(this.sectionStart,r),this.sectionStart=this.index+Number(e),this.emitCodePoint(ev(this.entityResult))),this.state=this.baseState}stateInNumericEntity(e){e===ze.Semi?this.emitNumericEntity(!0):Z3e(e)?(this.entityResult=this.entityResult*10+(e-ze.Zero),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}stateInHexEntity(e){e===ze.Semi?this.emitNumericEntity(!0):Z3e(e)?(this.entityResult=this.entityResult*16+(e-ze.Zero),this.entityExcess++):XYt(e)?(this.entityResult=this.entityResult*16+((e|32)-ze.LowerA+10),this.entityExcess++):(this.allowLegacyEntity()?this.emitNumericEntity(!1):this.state=this.baseState,this.index--)}allowLegacyEntity(){return!this.xmlMode&&(this.baseState===ve.Text||this.baseState===ve.InSpecialTag)}cleanup(){this.running&&this.sectionStart!==this.index&&(this.state===ve.Text||this.state===ve.InSpecialTag&&this.sequenceIndex===0?(this.cbs.ontext(this.sectionStart,this.index),this.sectionStart=this.index):(this.state===ve.InAttributeValueDq||this.state===ve.InAttributeValueSq||this.state===ve.InAttributeValueNq)&&(this.cbs.onattribdata(this.sectionStart,this.index),this.sectionStart=this.index))}shouldContinue(){return this.index0&&a.has(this.stack[this.stack.length-1]);){let o=this.stack.pop();(n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,o,!0)}this.isVoidElement(e)||(this.stack.push(e),nDe.has(e)?this.foreignContext.push(!0):sDe.has(e)&&this.foreignContext.push(!1)),(i=(s=this.cbs).onopentagname)===null||i===void 0||i.call(s,e),this.cbs.onopentag&&(this.attribs={})}endOpenTag(e){var r,n;this.startIndex=this.openTagStart,this.attribs&&((n=(r=this.cbs).onopentag)===null||n===void 0||n.call(r,this.tagname,this.attribs,e),this.attribs=null),this.cbs.onclosetag&&this.isVoidElement(this.tagname)&&this.cbs.onclosetag(this.tagname,!0),this.tagname=""}onopentagend(e){this.endIndex=e,this.endOpenTag(!1),this.startIndex=e+1}onclosetag(e,r){var n,s,i,a,o,c;this.endIndex=r;let u=this.getSlice(e,r);if(this.lowerCaseTagNames&&(u=u.toLowerCase()),(nDe.has(u)||sDe.has(u))&&this.foreignContext.pop(),this.isVoidElement(u))!this.options.xmlMode&&u==="br"&&((s=(n=this.cbs).onopentagname)===null||s===void 0||s.call(n,"br"),(a=(i=this.cbs).onopentag)===null||a===void 0||a.call(i,"br",{},!0),(c=(o=this.cbs).onclosetag)===null||c===void 0||c.call(o,"br",!1));else{let l=this.stack.lastIndexOf(u);if(l!==-1)if(this.cbs.onclosetag){let d=this.stack.length-l;for(;d--;)this.cbs.onclosetag(this.stack.pop(),d!==0)}else this.stack.length=l;else!this.options.xmlMode&&u==="p"&&(this.emitOpenTag("p"),this.closeCurrentTag(!0))}this.startIndex=r+1}onselfclosingtag(e){this.endIndex=e,this.options.xmlMode||this.options.recognizeSelfClosing||this.foreignContext[this.foreignContext.length-1]?(this.closeCurrentTag(!1),this.startIndex=e+1):this.onopentagend(e)}closeCurrentTag(e){var r,n;let s=this.tagname;this.endOpenTag(e),this.stack[this.stack.length-1]===s&&((n=(r=this.cbs).onclosetag)===null||n===void 0||n.call(r,s,!e),this.stack.pop())}onattribname(e,r){this.startIndex=e;let n=this.getSlice(e,r);this.attribname=this.lowerCaseAttributeNames?n.toLowerCase():n}onattribdata(e,r){this.attribvalue+=this.getSlice(e,r)}onattribentity(e){this.attribvalue+=bx(e)}onattribend(e,r){var n,s;this.endIndex=r,(s=(n=this.cbs).onattribute)===null||s===void 0||s.call(n,this.attribname,this.attribvalue,e===ou.Double?'"':e===ou.Single?"'":e===ou.NoValue?void 0:null),this.attribs&&!Object.prototype.hasOwnProperty.call(this.attribs,this.attribname)&&(this.attribs[this.attribname]=this.attribvalue),this.attribvalue=""}getInstructionName(e){let r=e.search(tJt),n=r<0?e:e.substr(0,r);return this.lowerCaseTagNames&&(n=n.toLowerCase()),n}ondeclaration(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`!${s}`,`!${n}`)}this.startIndex=r+1}onprocessinginstruction(e,r){this.endIndex=r;let n=this.getSlice(e,r);if(this.cbs.onprocessinginstruction){let s=this.getInstructionName(n);this.cbs.onprocessinginstruction(`?${s}`,`?${n}`)}this.startIndex=r+1}oncomment(e,r,n){var s,i,a,o;this.endIndex=r,(i=(s=this.cbs).oncomment)===null||i===void 0||i.call(s,this.getSlice(e,r-n)),(o=(a=this.cbs).oncommentend)===null||o===void 0||o.call(a),this.startIndex=r+1}oncdata(e,r,n){var s,i,a,o,c,u,l,d,f,p;this.endIndex=r;let m=this.getSlice(e,r-n);this.options.xmlMode||this.options.recognizeCDATA?((i=(s=this.cbs).oncdatastart)===null||i===void 0||i.call(s),(o=(a=this.cbs).ontext)===null||o===void 0||o.call(a,m),(u=(c=this.cbs).oncdataend)===null||u===void 0||u.call(c)):((d=(l=this.cbs).oncomment)===null||d===void 0||d.call(l,`[CDATA[${m}]]`),(p=(f=this.cbs).oncommentend)===null||p===void 0||p.call(f)),this.startIndex=r+1}onend(){var e,r;if(this.cbs.onclosetag){this.endIndex=this.startIndex;for(let n=this.stack.length;n>0;this.cbs.onclosetag(this.stack[--n],!0));}(r=(e=this.cbs).onend)===null||r===void 0||r.call(e)}reset(){var e,r,n,s;(r=(e=this.cbs).onreset)===null||r===void 0||r.call(e),this.tokenizer.reset(),this.tagname="",this.attribname="",this.attribs=null,this.stack.length=0,this.startIndex=0,this.endIndex=0,(s=(n=this.cbs).onparserinit)===null||s===void 0||s.call(n,this),this.buffers.length=0,this.bufferOffset=0,this.writeIndex=0,this.ended=!1}parseComplete(e){this.reset(),this.end(e)}getSlice(e,r){for(;e-this.bufferOffset>=this.buffers[0].length;)this.shiftBuffer();let n=this.buffers[0].slice(e-this.bufferOffset,r-this.bufferOffset);for(;r-this.bufferOffset>this.buffers[0].length;)this.shiftBuffer(),n+=this.buffers[0].slice(0,r-this.bufferOffset);return n}shiftBuffer(){this.bufferOffset+=this.buffers[0].length,this.writeIndex--,this.buffers.shift()}write(e){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".write() after done!"));return}this.buffers.push(e),this.tokenizer.running&&(this.tokenizer.write(e),this.writeIndex++)}end(e){var r,n;if(this.ended){(n=(r=this.cbs).onerror)===null||n===void 0||n.call(r,new Error(".end() after done!"));return}e&&this.write(e),this.ended=!0,this.tokenizer.end()}pause(){this.tokenizer.pause()}resume(){for(this.tokenizer.resume();this.tokenizer.running&&this.writeIndexe.xmlMode||e._useHtmlParser2?iDe(t,e):J3e(t,e,r,n)),Me=r3e(rJt,(t,e)=>e.xmlMode||e._useHtmlParser2?M3(t,e):X3e(t)),nJt=Me([]),{contains:sJt}=n0,{merge:iJt}=n0,{parseHTML:aJt}=n0,{root:oJt}=n0;var vv="abacdefghjklmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ0123456789";function aDe(t,e){return Math.floor(Math.random()*(e-t+1))+t}function Th(t,e,r){var n="";let s=e===void 0?!0:e;for(var i=0;i|《|》/g,"").replace(/\$|#/g," ").trim()}function ji(t){let e=t/1048576;return e>1024?`${(e/1024).toFixed(2)}GB`:`${parseInt(e).toFixed(0)}MB`}function NQ(t,e){if(!t||!e)return{length:0,sequence:"",offset:0};for(var r="",n=t.length,s=e.length,i=new Array(n),a=0,o=0,c=0;ca&&(a=i[c][l],d=c-i[c][l]+1,o===d?r+=t[c]:(o=d,r="",r+=t.substr(o,c+1-o))));return{length:a,sequence:r,offset:d}}function ml(t,e){let r=[],n=0;for(let i=0;ir[n].lcs.length&&(n=i)}let s=r[n];return{allLCS:r,bestMatch:s,bestMatchIndex:n}}function Gd(t){return new Promise(e=>setTimeout(e,t))}var hl=t=>t.map(e=>e.split(";")[0]+";");var uu=Re(Cv(),1),Ov=Re(Jn(),1);var LQ=Re(Jn(),1),wh=require("path"),ms=Re(require("fs"),1),Ake=require("stream");async function cJt(t,e){let r=await he.get(t,{responseType:"stream",headers:Object.assign({Range:"bytes=0-0"},e)}).catch(n=>(console.error(n),n.response||{status:500,data:{}}));if(r&&r.status===206){let n=r.headers["accept-ranges"]==="bytes",s=r.headers["content-range"],i=parseInt(r.headers["content-length"]),a=n||!!s||i===1,o=s?parseInt(s.split("/")[1]):i;return delete r.headers["content-range"],delete r.headers["content-length"],o&&(r.headers["content-length"]=o.toString()),[a,r.headers]}else return[!1,null]}var Tv={},gke="",Rh=(process.env.NODE_PATH||".")+"/vod_cache",uJt=1024*1024*100;async function yke(t){try{if(ms.default.existsSync(t)){let e=await ms.default.promises.readdir(t);await Promise.all(e.map(async r=>{let n=`${t}/${r}`;(await ms.default.promises.stat(n)).isDirectory()?await yke(n):await ms.default.promises.unlink(n)})),await ms.default.promises.rmdir(t)}}catch(e){console.error("Error deleting folder:",e)}}yke(Rh);function lJt(t){try{ms.default.readdir(Rh,(e,r)=>{if(r)for(let n of r){if(n===t)continue;let s=(0,wh.join)(Rh,n);ms.default.stat(s,(i,a)=>{a&&a.isDirectory()&&ms.default.readdir(s,(o,c)=>{if(c)for(let u of c)u.endsWith(".p")||ms.default.rm((0,wh.join)(s,u),{recursive:!0},()=>{})})})}})}catch(e){console.error(e)}}async function dJt(t,e,r,n,s,i){if(n=n||LQ.default.enc.Hex.stringify(LQ.default.MD5(r)).toString(),gke!==n&&(lJt(n),gke=n),!Tv[n]){let[P,L]=await cJt(r,s);if(!P||!L["content-length"]){e.redirect(r);return}Tv[n]=L}let a=!0;await ms.default.promises.access((0,wh.join)(Rh,n)).catch(P=>a=!1),a||await ms.default.promises.mkdir((0,wh.join)(Rh,n),{recursive:!0});let o=parseInt(Tv[n]["content-length"]),c=Math.max(0,parseInt(i?.skipBytes||0)||0),u=Math.min(c,Math.max(0,o-1)),l=o-u;if(!Number.isFinite(l)||l<=0){e.redirect(r);return}let d=0,f=l-1,p={};if(t.headers.range){let P=t.headers.range.trim().replace(/^bytes=/i,"").split("-"),L=P[0]!=="",M=P.length>1&&P[1]!=="";if(M){let k=parseInt(P[1],10);Number.isFinite(k)&&(f=k)}if(L){let k=parseInt(P[0],10);Number.isFinite(k)&&(d=k)}if(d=Math.max(0,Number.isFinite(d)?d:0),!M||!Number.isFinite(f)?f=l-1:f=Math.min(l-1,f),d>f){e.code(416),e.headers({"content-range":`bytes */${l}`});return}Object.assign(p,Tv[n]),p["content-length"]=(f-d+1).toString(),p["content-range"]=`bytes ${d}-${f}/${l}`,e.code(206)}else Object.assign(p,Tv[n]),p["content-length"]=l.toString(),e.code(200);i=i||{chunkSize:1024*512,poolSize:10,timeout:1e3*10};let m=i.chunkSize,h=i.poolSize,A=i.timeout,g=u+d,b=u+f,y=Math.ceil(o/m),x=Math.floor(b/m),v=Math.floor(g/m),C=v,R=!1,w={};for(let P=0;P{(async function M(k){if(R||v>x){L();return}if(k===void 0&&(v-C)*m>=uJt){setTimeout(M,5);return}let B=k!==void 0?k:v++,Z=`${t.id}-${B}`;try{let W=(0,wh.join)(Rh,n,`${t.id}-${B}.p`),F=!0;if(await ms.default.promises.access(W).catch(V=>F=!1),!F){let V=B*m,j=Math.min(o-1,(B+1)*m-1),J=await he.get(r,{responseType:"stream",timeout:A,headers:Object.assign({Range:`bytes=${V}-${j}`},s)}),se=(0,wh.join)(Rh,n,`${t.id}-${B}.dl`),oe=ms.default.createWriteStream(se),ue=setTimeout(()=>{oe.destroy(new Error(`${Z} read timeout`))},A),Ce=new Promise(qe=>{oe.on("finish",async()=>{R?await ms.default.promises.rm(se).catch(Fe=>console.error(Fe)):(await ms.default.promises.rename(se,W).catch(Fe=>console.error(Fe)),w[Z]=W),qe(!0)}),oe.on("error",async Fe=>{console.error(Fe),await ms.default.promises.rm(se).catch(_e=>console.error(_e)),qe(!1)})});J.data.pipe(oe);let we=await Ce;if(clearTimeout(ue),!we){setTimeout(()=>{M(B)},15);return}}setTimeout(M,5)}catch(W){console.error(W),setTimeout(()=>{M(B)},15)}})()});e.headers(p);let N=new Ake.PassThrough;return new Promise(P=>{let L=!0;(async function M(){try{if(C>x||R){N.end(),P();return}if(!L){setTimeout(M,5);return}let k=`${t.id}-${C}`;if(!w[k]){setTimeout(M,5);return}let B=C*m,Z=Math.min(o-1,(C+1)*m-1),W=Math.max(g,B)-B,V=Math.min(b,Z)-B-W+1,j=w[k];delete w[k];let J=await ms.default.promises.open(j,"r");if(V<=0){await J.close().catch(oe=>console.error(oe)),await ms.default.promises.rm(j).catch(oe=>console.error(oe)),C++,setTimeout(M,5);return}let se=Buffer.alloc(V);await J.read(se,0,V,W),await J.close().catch(oe=>console.error(oe)),await ms.default.promises.rm(j).catch(oe=>console.error(oe)),L=N.write(se),L||N.once("drain",()=>{L=!0}),C++,setTimeout(M,5)}catch{setTimeout(M,5)}})()}),N.on("close",async()=>{Object.keys(w).forEach(P=>{P.startsWith(t.id)&&(ms.default.rm(w[P],{recursive:!0},()=>{}),delete w[P])}),R=!0}),N}var Wx=dJt;var jke=Re(Pke(),1);var CXt=["\u9884\u544A"],IXt=t=>{if(!t)return!1;let e=String(t);return CXt.some(r=>e.includes(r))};function Dke(t){let e=/(E|EP)0?([1-9]\d*).*/.exec(t);if(e)return Number(e[2]);let r=/.*?([1-9]\d*).*/.exec(t);return r?Number(r[1]):null}function kke(t){return t.replace(/\.[^.]+$/,"").replace(/^(S\d+)?E?P?\d+\.?/i,"")}function Lke(t){return t==null?"":String(t)}function TXt(t,e){let r=Lke(t),n=Lke(e);return r===n?0:r.localeCompare(n,void 0,{numeric:!0,sensitivity:"base"})}function Os(t,e){let r={};return e.length===0||(e=e.filter(n=>!IXt(n?.vod_name)),e.length===0)||(e.sort((n,s)=>{let i=TXt(n.vod_group,s.vod_group);if(i!==0)return i;let a=Dke(n.vod_name),o=Dke(s.vod_name);if(a!==null&&o!==null&&a!==o)return a-o;let c=kke(n.vod_name),u=kke(s.vod_name);return c!==u?c.localeCompare(u):a!==null&&o!==null?a-o:n.vod_name.localeCompare(s.vod_name)}),e=e.map(n=>{let s=ji(n.vod_size);return{vod_id:n.vod_id,vod_name:cDe("",` ${n.vod_name.replace(/.[^.]+$/,"")} [${s}]`)}}),r.from=t,r.url=e.map(n=>n.vod_name+"$"+n.vod_id).join("#")),r}async function Xn(t,e,r={}){let n=(Array.isArray(t)?t:[t]).filter(Boolean).map(o=>String(o).trim()).filter(o=>o.length>0);if(n.length===0)return"";let s=Number(r?.timeoutMs)>0?Number(r.timeoutMs):5e3,i=Array.isArray(r?.methods)&&r.methods.length>0?r.methods:["HEAD","GET"],a={"User-Agent":d0,...e&&typeof e=="object"?e:{}};return await new Promise(o=>{let c=!1,u=f=>{c||(c=!0,o(f))},l=setTimeout(()=>u(n[0]),s*i.length+200),d=async f=>{for(let p of i)try{let m=await Ae.request({url:f,method:p,headers:a,proxy:!1,timeout:s,maxRedirects:5,validateStatus:()=>!0});if(m?.status>=200&&m.status<400){clearTimeout(l),u(f);return}}catch{}};n.forEach(f=>{d(f)})})}var gl=t=>globalThis.getPanEnabled?globalThis.getPanEnabled(t):!0,fk=t=>gl("ali")&&/www.alipan.com|www.aliyundrive.com/.test(t),pk=t=>gl("quark")&&t.includes("https://pan.quark.cn"),mk=t=>gl("uc")&&t.includes("https://drive.uc.cn"),Bke=t=>gl("tianyi")&&/cloud\.189\.cn/.test(t),Mke=t=>gl("yidong")&&/caiyun\.139\.com|yun\.139\.com/.test(t),Wke=t=>gl("123")&&/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/.test(t),$ke=t=>gl("115")&&(/115.com|anxia.com|115cdn.com/.test(t)||/^(?:magnet:\?|ed2k:\/\/)/i.test(String(t||"").trim())),Fke=t=>gl("baidu")&&/pan\.baidu\.com/.test(t),Uke=t=>gl("xunlei")&&/pan\.xunlei\.com/.test(t),qke=t=>gl("guangyapan")&&/guangyapan\.com\/s\//.test(t);var qt=Ss;(function(t,e){let r=Ss,n=t();for(;;)try{if(-parseInt(r(944,"Jcg("))/1+parseInt(r(808,"4AqP"))/2*(parseInt(r(945,"DMN!"))/3)+parseInt(r(611,"Yq1i"))/4+parseInt(r(765,"MsPj"))/5*(-parseInt(r(646,"T!QQ"))/6)+parseInt(r(866,"^geQ"))/7+parseInt(r(403,"XTb1"))/8+-parseInt(r(640,"2Ftf"))/9*(parseInt(r(442,"JEeJ"))/10)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(hk,554820+1596*19+-97588);function hk(){let t=["WPVcSCoBnY8","WQaCEXRcSSoeuCkEfCoK","W65RsrZcGa9LCMSg","W7WfWReLfW","CmkmW7yd","WQerAqFcOSo/vG","a8kMW7VcHq","WORdLqyUpW","WQ7cO8o0ESkHWOhdUWvEga","WOVcNmolitvtESo/gsK","WQhdSXq5ga","EmkAFxm3","oxqPcCoIW6hdQXTbWRW","zxuVfa","W4FcVSkoWO9aWRZdSMVcMCom","rSkxW4qX","WQdcHSojW5JdLcLArXLm","ymohW5lcGHf6rgutiG","W4dcUmkkWOq","W4HVW6RdLmka","CmoNW6/cUJq","W6elW4rPW7metCkNW7lcPa","W619nWbZ","WRDzW6BdNCkb","WPFcUdNdO0FdMKbTW55P","nMFdGhOHe8kmWRpcQKm","WPFdL8oQ","mxVdKw0","W4zOdYXmaq","kIP7Bvi","WPpcNComoq","W6WaW7nNW44","WQ9wWRBcI8khW7pdSNldMGa","mmoGca5S","WPddNtaCoq","xmktW7CiBmouF8oHB2m","WRRdQw7dQmkv","dIethCoxyeHG","sehdKmoLrGJdOJj8WP0","b8oTmCkgaa","ASowW5xcHI8HhYKu","ve0vp8oZ","Cg8xe8oWWR/cUtXsWQy","WQhcKCoi","W4KRWRRdGSokWRu","W4FcSColFx4","WRnwfmkroG","qCo7i8kYyq","CCoaiCkhmfpcHmkLW5NdKa","pmkxW6ahq8osja","WQLEW6OTWOO","cmoMuqW","WRz5W4ue","WQRcJmo9FCkuWPW","W44HWQpdKCobWPJdSw3cI8ok","WOW4u1LXWOGE","WQBcRuPwW5BcNqK","BwqVfa","WO3dOZtdP0ldH198","ctSleCkDz3jHWPpdHa","W5dcUCkqWOrfWRddR2JcJa","WOSPqK4","W5bdkCou","xCkmW4i1y0ZcMaCGWPK","W7/cHtKiWOW","WOzNW4P3pbOC","WOVcVSozWPWU","WPeZv2vHWQWyB1G","W7abW5nVW6GrCCk2W4ZcSW","W4q+W7DWW4K","bc97xhS","r8kxW5KX","WPC1u09XWRmj","WR4dCq","WOfGW4bGnW","bcjfdSoaE3vH","y8kaALPn","W4bdkCopea","WP/dUJ8","WPNcVSo6mbC","tmkkW7WaqG","DmkKwf8OWQWXWRHfxW","xWVdHe0","hceSdCoaE29J","jtPFC1a","x1ddTCo8tqpdVGC","W77cOXOXWRVdM8kAoSodEW","qJNdUe03","wcddRMKf","WOZcT8oIW6/dSa","W4TJW43dKmk8","W7D3W6FdT8ks","txGDjSoE","ECouuCkyW7m","W6lcPWq7","advJuq","WRddSL/dKW","ASouv8kAW7BdNG","bmkHW6tcMbafDmohW7pcGa","W4JcR2FcPXVdGNLvWOvJrG","bSk0dCktyG","WQBcPSoOW5hdSW","W58OWQNdGCodWRm","W5tcNSoiBwK","WROCArhcOSoeqq","W4K7WRRdNq","W51AW4/dJmkr","W6WbtW","WRRdO8oKW6RcIa","W4uYW5LWa2pdVee","WQldKYmGp3VdTmk9bCkZ","WPC/qv8","W44PW7n3W7a","At3dKLqE","W5eFW4CBW7y","WPGHEMzh","bcSrhSogEG","W6W2dqRcHJfJBKqp","oZhcR8oP","FmoAsCkFW77dNW","WP5QW4u","lsFcQCkV","W4GRWQ7dHSokWRtdRuVcJ8oa","WRHpdCkg","gSkWlmkRy8oydCobFCoO","WQRdGZqKoG","CSkwW6yo","WPBcU8o8W5RdNG","rCo4BIhcJa","WPHVW7VdNW","rCknW4uT","zSkZW4e2qa","amoGuq","pcVcR8kJAXrxW7WTW4m","W5BcJmoVwL8","W70BWPiEdG","W6CwW5jVW68","hSouFYLs","p1tdPgKt","W6nkqZFcMq","W5OWW5nQm3tdVeBcPrG","WRhdVaeKga","W7eqW4f0W6Gq","g8o0cGv0mN3cT8koW50","WQjCcCko","z8kmALzqrwpdNdm5","WQRdVMhdPCkw","W7zbjColdq","yCkqFLO","bSoRmmkv","W6fYW6ddOa","W41fjCoubG","WQy9uH3cPG","wLhdRmoIqW","W4z0W6pdKCk1","WQb8W4itWPu","FmkmEwbstghdKtKI","haBcTSk4gLRdVcL5WPNdVCof","kYdcTW","xmk6twzw","WPFcMSowpa","W7edW6XUW5O","W7LLha5X","W4FcTmkDWP4","D8o6EaRdQmoioCkqsCoy","eSkPW6BcNa","nMRdGhONmSk4","WPrJW4jMntWnyq","W7dcIu5BW4ZcRrlcLc0","rfBdQSoJvWNdKGvH","WORcRWSmW5GGWQtdQ3W1","WQhdQfJdJW","W6CWW4zddW","zmkOAM51","oIdcSSkWqG","W7aDWO02aa","WPpdScK","W6hcIKHk","rSoNsIxcMq","W5egWRa1kG","WOxdTIVdUmoaWOCwea","tmo+nW","gaf1t1K","W77cRX87WPhdGmkD","zSoVtGldUSos","W7VcKvnoW5hdO2ldKIGG","W7bOW4VdO8k0","WPdcR8oyWPGVgsLmxmom","nWztyfq","EmosW5tcKW8Z","WP/dOYldUW","W6yfW5rH","AMpdLhWQfmkUWRVcOKC","CZRdO34","sLddSSodqaFdQaf6WRW","qvRdPCoTvGtdOGW","aJj/sY8","WQZdUSocW4hcQG","WOVcJCoEnsmBjG","W7BcNvDxW5dcVblcIsa4","hmoGqbzhmNO","dgmxfSobzG","yCkgW7ypx8oeAmo9","m8odiCkDjq","DbtdGNCt","W6axuCoxA8o4wcDqW4hdPq","W4jElmoDegO","zCkvW58qqa","WP7cOXqgWPCZWQVdOHKJ","WP/cRmoCDLpdVHlcMCkzqa","W6iyW4rJaq","W5NcVdGAWRy","WOFdOtZdHg0","W4PqlCoC","DmkgW6y","mmo6cSk1bG","W4pcQComBuldS1hcNq","kSoYutr5la","W7j1W6FdVa","W5ThzZJcMa","ESoGyWy","W6jVW4RdQ8krqqddU8kweG","WRddL8o7W67cTW","WO5/W7/dJSkuW64bWP0cWRa","WR/cHSoDW5S","WOD9W5r0Fq","WObuW5G0WRe","W7dcIxf0W68","W7n+W6pdTmkktHJdSCkOhW","y8kwW6eo","BSoaW6VcQYK","W4ZdUK9xWPvIWRxdLeWIdf0","WPu9WRRdL8kaWRxdOhdcKSoD","emkAW5FcQKS","WOtdR8kBibNcTW3cGmkXE3JdKfi","W4q5WP0ZAwu8Bh/cTCkJEW","WPvmW5OzW6PlWQyK","WPpdSc7dUCoYWRelha","hcSscCoEC3vHWR7dNG","z8o9wrFcSmobmmklBmoo","WRWFzW","F8kzW5KXyq","W4pcTmopA07dMftcNa","WRDna8kgkmo6tr9kW48","W7CNW5ynW6S","W6L1Dq","DCoVCmkcW5G","W71HvG","W5hcSmoh","W48FW5Gn","z8kmFLndq2u","hmoHta","usJdH1qx","W6LTwbW","s8oYFHZcIH0","WOzSW4G","WOVdMZqalG","E8kxW6ywxSkBjmkMlLy","WRblW4X8lW","W5qmW5K","xSk7FgvH","W5q6W6riaG","wSoKtqRdHW","W5tcTmkr","WPBcMSow","rSoJyqpcGa","DSoVsaq","W6SqW4vTW64","eeddKhKL","WRlcTSo2ECkcWOBdOXm","WQRdS37dKmkT","WO/dVHJdQ34","WOBcKmopodqmjSkpetC","ECokvd7cVG","BmobW4/cHaC","WO9+W6JdMCkUW5Gr","WRHCl8kMpa","W4hcTmkwWPPbWO3dTxC","WP7cOXqgW6q2","mwFdJhGUgSkOWRFcH0S","EhFdT8o9rq","CmovW77cPGO","W5Dfla","tSoNCCkUW7y","tSopfmkbaW","dsaBcSoLE3vS","W5xcIv9zW4G","yCo+uaZdQW","WRlcISoiW43dPYfk","WPv8kCkqgq","W4xcQmoiiq","f8o9lmk9ja","WO5/W7/dJSkuW7Gr","WQxcOSoaW7NdRW","W4fJW6/dI8ki","CCkHt1y","z8o8vq","W5urW54nW70","W4zLhcHmoJe","uCovgCkwma","y8kaALPnF3ddMGm9","lhBdHguX","W6zqm8oCqYW","W5vekCoAhKFcVmkIWP3cMW","w8kXwNmp","WOO5W7/dKmkyW4GaWPWnWQC","W4umW5WEW7y","ymktW74pwq","WRdcKConW57dNq","WPldNSo1W6dcVMpcJCo6nW","WOSTzHZcOq","W4hcTmkvWOzpWOddOW","W7BcSISrWRS","vSoVEGtdVa","mtvKvJxdMtpcRNWl","dmkcW5JcQ2S","FmkAEG","WOLLW7FdKq","WORcR8oDWPu4dJK","ECkaEfP9vhldIqG4","WO3cU8oWqmk/","W5lcKKPyW7i","FmoKW5xcPaa","W5BcTCocFa","WQ3dNq/dMhG","WRflfa","uSoqDmknW48","WRZcL8oqW5JdIW","gSowW5qSFG","zCoana","WQ5mWQZcNa","WP/dJCoMWQFcVMNcV8k8","W6ubW5q","fZrJu1e","wSoGFXtcGaa","svNdL8okuG","W4tcQxD8W40","W6OqW5rWW65zpCo8","rfZdK8oGAa","W4z5hcHDaalcNgNcGG","WQbXW5KtWOq","lIFcMmkIyq","WQldGIuH","W5bbW5ZdG8kk","C8o+taNdTSofnmklqCot","WQNdS0FcImkhp8oxvwFdJW","W7VdJCogW4hdLG","pmo2uIf1","D8o2taZdRCodcSklqCor","WQFcL8ofW5RdJdT5sZjn","W4vejmoqgJFcSSoMWPtcJG","W7BcPSkvWOnO","W7VcGSoiW4e","WQCjzv1/","WOldLmoOW6ZcSW","xSkqB3Lt","hmo9tbW","W6dcKvvxW4ZcVItcMZa","gSo2rbz7m07cUSktW4K","WOZcUa0g","Ec/dO204","rSk9sfDTyW","WOVdNaK6lq","rCo+sYNdUa","amkHW7FcIM4kESotWPxcJW","wmkbW6uCEa","cHzvweq","gZOEc8ogyvzTWPxdNW","W4qSWPmRogZdVCkXW58E","WPnUW4jPpdC","W7eJWOpdOSoF","xvRdQCoGCqtdTWC","asSijSocFMb9WR7dNG","WOa6CIBcJa","r8krW4aGtX/dKW","WQldPhpdLmkio8orBW","WQywwWhcTCoFxmkC","W4lcUCo8CKG","g8kNlq","cg12vMFdJYFcQhbo","W4anW4y","zSoxkCkdnG","z8kmFvbxuMpdJtKV","W79eftjM","bsSmcSotDwq","h8oMW73cJvipAmoEW7lcJG","W6LbDrZcJq","WOpcUmozWQ4PeYfDBq","W74sW4rElW","W4zKct8","WRTBWQ/cGCkEW4NdM2/dLWG","z8kaEfP9swq","CSkMsa","ymkkW5O","WPFdMmoGW6ZcRNxcJCoNpmkD","WO7dOSoNW6/cTa","uCo1W4dcGsG","WQ/dQKi","W54tWReCnW","y2uVm8oLWRdcRHXhWPe","rSoTEt3dLW","W6pcTGWWWOJdGmkvoSkZEa","W5BcQCkvWOnCWOBdTu3cGmoh","W57cPSkpWPLb","WQzccCkqlW","aIvJsxRdLJxcVW","WRWRzJBcPq","WO3dSYtdPu7dGwXSWOnJ","WOFcSSo8tSku","c8o+iCkzhW","W5qDW6vvW5i","w8kDlmkZE8o9pq","W5pcS8okCexdOa","E8kwW6awwW","WRxdR0a","W5KuW70mW7K","WOtdVmoxW5NcUa","WOCav2nZ","WOddTY7dR8okWOCpbSoaya","W55HWQVdLCodWQVdP3xcMmoe","wsVdTNW1W5m","DmoNuaddGmodlCkltCos","WOXlbSkUca","B8o7vK0ZWQC","WQDYW7JdSCkI","gICjhmkCCw5PW47dGq","zCoHW5pcGI4","aColWOn8iKBcH1atWRXcWRtcNa","wSkHfvCPA3xcJ8khW7H+W5W","W7BcJYGWWOm","WQBdR0pdIG","WRTpea","sXVdM3OI","WPDSWPdcI8kF","b8kJjmksyCoFfG","tum9lmoq","W6CCW5bPW68gtCkNW7RcUG","WQHJW7JcHa","i8k9dfhcP8krjmk0x8oDW6qd","bSomsq1RlW","W7TNqrZcNsnoF3qi","W63cOG0SWQVdMSkk","BSkKwvaAWQa5WOilta","W7xcIuzz","bSk9W6hcLq","W5FcUqOaWOi2WQJdUu1+","e8kWW6lcLeWdrmoEWRxcJa","eSo/n8kC","W6CkWO5HW7ekA8kMW73cSW","W4qGWPyHy33dSCk5WQ8v","u8kxW4qaCrxdNW","W7mzW4qhW5W","W4GNWR7dKCoWWQ7dOq","WOxdQIVdVSoqWQS","WOpdQsldG8oT","WPJdUJFdTa","WOzQW5LZpce","WQRcOmonWP4f","DmoNuaddGmopmq","WPVdRIBdULNdLMXTWPLR","WRCxAW","W5RcP8kaW4rnWOZdQW","WPBcMSot","W5esW4PRW7e","W5/cUmktWO9XWPFdThpcH8oA","W7v+W73dQ8ktxq/dSCkOeG","x8oLCCkuzCo8eSoCqq","oItcRmkRuW","emoTA8kvaatcQmkSWRCA","ySkyq8kuW6NdMIj8WOBcQW","x8oZyq","emkHW7ZcMq","W7JcImoTqgO","wSo0FH0","W6alW4r5","i2VdJw1Tf8k1WQhcRh0","WO3dVJFdOu7dO0r9","WQjkbmkapa","W5TObs52hJtcH3BcJW","W4vHfcLD","BIddS2S2W4JcKd7cHG","s8oTzfxcIrW/WODoWRm","W5GFWPCvlG","BSomnSkqde/cPSkLW4xdGG","W5qqW5Wq","WRxcVmocymkvWOhdUqC","W5VcUCox","WPZcOSkxWOKbWPddS3dcNCkg","WQy+sHRcJG","DSoxkCky","rSkmW4qSFHhdNK4U","ixddIh4N","WRBcSmoAWQuv","ESoAW5dcLZ0PdW","gCk4W7FcK3GpD8opW7pcGG","WRLEbCknhCoGFG4kW4m","umoRxrFdUSou","ymopDrtcNq","W5elW4ya","W4ZcUtFdSeJdNez3WOqP","zghdV8oCsq","E8owW4JcLG","W5n8ftLF","W78jW55SiW","WORcRXKxW4G","zSkaDfO","WOtdMGBdOem","W4alW4ea","CSkhs3PO","WRpcRCoHW4ldSa","zCkCFvC","dICthmoTE2u","xmoOAalcVr8PWPbsWQ8","bCk8W7pcIvS","W5m9WONdHSoDWQBdVa","WOZcR8oeWOucesTkAmoC","uCkHW5qfAa","WOTGW5/dRSkZ","W7vYW7JdOCk5rGG","W5FdVmkvWPHbWPFdQq","W7qmW5K","W4iMWQWRoNVdRmkxW6ej","btj5","W6CDWQGncW","FCo+wqVdMCopoCkAb8oq","ymkHsfy","jZbNDxi","WORcOW4gW7i7WQm","ASoavSkt","W5CLWOKNixhdQ8kWW58D","bcv9sxNdMtlcV0TC","WPWXrKH8","x8oYAaFdLXePWPP+W60","W5mxW4mnW4X1WQy","W4aZW5n2q2FdTLNcHaq","BSkJuG","WRf5WORcKCkV","gGPPy0u","WQhdUv7dJSkwp8km","WQxdMcmmkh3cSW","ymkByG","d8k5ka","ntzTsSk3W6ZcJXz5WQ8nhW","qu4tn8oW","WQvAeSkknCoU","WRWWW44nWPe/WRa","W53cJ8olBLK","W68OW4XTiW","WPdcSCoHW4pdVq","W7RcLMzmW5dcUdq","W50/WOddUCo8","AsVdS2CIW4tcNs8","cmoLlCkA","W493fCoJgW","W41hjCoWg37cPq","WRRcGSojW40","WQZdHYmTlW","bmoJkmkacr8","FmobW4FcNbe","wJRdOxKv","gSo6sGO","W7LRrHdcGdC","WO01qurHWRmzB3u7","W57cUSob","ESowW4lcMXaLcd4","BSkKwvaAWQa5WOiltW","mISznmoH","ySoVtHBdUG","cXOPdmo0","WRPil8kSlG","WPFcH8oSjtqao8k3","WR9hWPNcPCkL","WPtdNSoWW73cKgFcPSoWoW","WO7cGCoTW67dRa","W5a4W4zThMxdJfNcQrS","dICthmoTD3LWWOtdMq","WOBdL8oQW7RcQq","WPbzW7xdK8kM","Cmoam8kAjKNcT8kHW7tdLq","W5DeiSonhgZcPSkU","W4HqW5qeW7PLWRC4WOzu","WQ1gWQ3cNSkjW54","WPLMW51GbICkzfVcVa","h8o2vZTSi2RdPSkaW4q","wmoOEXdcSHOS","ySk7wfS","uSkFzxup","W79LrLxcIdL9BIec","W548WQhdGSok","W592CHFcIW","z8k9ufSdWQaX","wSkNW5OSyWi","DI/dO204","WQCxyq0","W5OOW7rAW6W","hdWwfa","Dg8Oca","Bmktt1nJ","W7JcGeK","W58JWOxdPCoI","W65RCq3cNdL/Ba","WPdcNSoOr8kT","W5j2zrxcGW","WP3dUtJdTuldLa","Cmokl8kb","cmkDmCkYsG","WRncbCkxpG","wL3dP8o4","W4ZcVSop","WO7cJCoBocC6mmkHdtW","z8kmW54jwSoeECoklLu","WOpdLCoQW7e","EmouvSkEWQ3cMq","pt3cV8kVsrzMW684W5G","n8kBW5e","BIddVNy","WPujqtRcOa","lJpcQCk1qG","i8k6bCkzvG","WRTzWP3cKCkP","yCoaW5i","WQTrWRm","fIL8xeRdKsi","WQXgWRNcMSkjW5/dRetdIGO","ymoRtWRdQSounSkAD8oy","W4y6WOyVaG","W6PRuq0","W7BcIWLFW47cSdtcIcCX","zSkgy1O","C8oQtGZdQCodESkjgSkt","W6zlW5jLW6WwD8kGW6FcPa","WPpcIConmcSA","W4pcPmkwWOi","bcG+whNdKt/cR3Pp","W488WQq","W6zjp0hdV8kgqmkHjCoZW6vg","WQr3d8kmlq","W4CLW5bXh2u","WQnCda","W6hcJffBW73cScK","nZBcR8kU","WQldLrDXW4JcNcBcHsO","W4eYW59P","y8ogi8kqieJcI8kWW4tdMG","ACofsCksW68","WQa9rI/cPq","yCkgW6iktmocBG","z8keW5qLrW","WO5IW7ZdIa","z28/gq","W7WIW4rQdq","kSk9cvZcQmksjSkjqCofW4qO","W6bQcXjO","z2eVgCoGWRxcUqy","WRdcGSoqW4K","W7SHWQxdOCo8","W6nnyXZcOa","W7tcGfnUW4pcTWpcNcqW","cs0Chmobyv5WWO7dNa","WQtcT8o3W4FdUG","WPOOqKjMWQqjvumX","tSoGErq","eLRdK28V","W4hcTmkwWOvBWPhdPxFcTSon","W7ldOCkHj8owW5JdVdqxjgBdLW","BSoalSksj1m","WOxdRIBdO8or","WRbhdSkh","ASoaiCkrnKNcPW","D8kcW6yh","k8oqWQDFgSkvEmo/jL/cKJi","WPhcVSoDWOmPdX1rD8or","qCkkW58O","WOFdSIFdNmoJ","ptjcA2a","W44VWP7dNSoD","WOdcPCoyWOG","WPddTYBdR8kkWRSqbmoC","W5r+dJnohq","W7xcJeTBW73cScK","WQxdS08","qCoEyrZcNGC","W5aUW5i","W5FcO8kmWPXl","WRNcVmoitCkx","WOJcQWOcW4aH","WOBdJSoWW6e","xCkmDG","W515csPAsxRdMNlcMG","qmkOW6uvFq","C8oIvq","ymohW5lcGHf6rguDiG","WPHIW6WmWOW","W7/cSGGQWRVdMG","AMe2gq","dmo1rbf0lW","B8oBtmkd","W5rUhJ9AaaRcGxlcGq","W7ZcLujqW6tcSchcMgy5","se3dTSoLuaJdKHzNWPu","emoJmSkrmWtcRW","W548WQhdGSokW6JdSYxdLCkF","W45bW4JdK8kE","WQBdOrldLxO","cSkNkmkTAG","Cmk8W5e8zG","WRddNZa7lfFcVW","W6CqW7zPW7KgFCkdW6hcSG","ddWwd8ox","W5qRWRddGmoWWQRdPgBcKmok","y08ylmoK","WQNdQuNdISkt","WQ9oW6PnlG","bmoYuqDW","vMiTpCoD","WRddR0NdGCkjiG","CSk8xuW5WPyHWOHptG","bLddMwK3","rmkTENnv","CmoeaCk2hW","BhqVda","WOO1xc/cTG","WQJcOmoqzSkvWONdRG","hSkyW5hcQ2W","W6LSqWVcIXL1","WPK5xK5lWQGE","WPhcMmohhrC","umojvIJdMG","WOldNSoUW7NcSwFcPSo2dmkF","WRFdGI/dG0a","dmkjW6RcLL0","WOf7W4zP","oYRcQ8kVvrrMW68WW4y"];return hk=function(){return t},hk()}var Vke=async t=>{let e=Ss;return globalThis[e(633,"MsPj")]?await globalThis[e(633,"MsPj")](t):t};function wXt(){let t=Ss;return(globalThis[t(929,"[BPj")]||[])[t(859,"^X[^")](r=>r[t(462,"uRD$")]===t(517,"JEeJ"))||{}}function zke(t){let e=Ss,r={BGjME:function(n,s){return n(s)},emMQM:function(n,s){return n||s}};return r[e(703,"5pf4")](String,r[e(575,"Y(FS")](t,""))[e(620,")laV")](",")[-4856+-43*-126+-562*1][e(465,"Htyc")]()}function Hke(t){let e=Ss;return{IbWgv:function(n,s){return n(s)}}[e(716,"gmGB")](zke,t)[e(226,"RuKh")](/^\w+:\/\//,"")[e(263,"5pf4")]("/")[227*-38+9012+-386][e(771,"]s]p")]()}function RXt(t){let e=Ss,r={SKYKS:function(u,l){return u(l)},PMNCt:e(355,"$Cx&")+e(910,"cL@*"),XLTZq:function(u,l){return u(l)},xfXTh:e(445,")laV")+e(495,"YeH6"),iiUlJ:e(313,"f3$*"),TcEXH:e(303,"m^Ne"),KmKVp:e(902,"*8Ja")},n=r[e(300,"4AqP")](String,t?.[e(753,"Y(FS")]?.[e(417,"VP4@")]?.()?.[e(614,"&4Vi")]||"")[e(571,"cL@*")](),s=r[e(249,"[BPj")](Hke,t?.[e(813,"Yq1i")]?.[r[e(750,"!8Ku")]]),i=s||r[e(562,"ROzP")](Hke,t?.[e(781,"Cp@N")]?.[e(820,"Cp@N")]);if(!i)return n;let a=r[e(697,"Yq1i")](zke,t?.[e(644,"Htyc")]?.[r[e(257,"kqpL")]]),o=n[e(325,"m^Ne")](r[e(314,"^geQ")])?r[e(376,"5pf4")]:r[e(346,"Y(FS")];return(a||r[e(570,"f3$*")](String,t?.[e(818,"L#hp")]||"")[e(648,"XTb1")]()||o)+e(816,"&4Vi")+i}function NXt(t){let e=Ss,r={rELyK:function(n,s){return n(s)},mSewr:function(n,s){return n??s}};return Ov.default[e(885,"fEqp")][e(663,"RuKh")][e(333,"MsPj")](Ov.default[e(221,"]s]p")](r[e(810,"m^Ne")](String,r[e(522,"uRD$")](t,""))))[e(576,"cHrf")]()}function Qke(t,e=-2179+3*1277+-1637*1){let r=Ss,n={ACEAv:function(i,a){return i(a)},LxCTZ:function(i,a){return i||a},NnVSK:function(i,a){return il},QMySJ:function(u,l){return u(l)},QTHIF:function(u,l,d,f,p){return u(l,d,f,p)},bDEpQ:function(u,l){return u-l}};r=i[s(581,"JEeJ")](r,{});let a=t[s(343,"cL@*")](i[s(341,"XTb1")]);Object[s(654,"A*C4")](r,gk),a&&sn[s(722,"!8Ku")]&&Object[s(230,"[BPj")](r,{Authorization:sn[s(483,"DMN!")]});let o=await he[s(572,"!8Ku")](PXt+"/"+t,e,{headers:r})[s(336,"*8Ja")](u=>u[s(794,"^geQ")]||{status:500,data:{}}),c=i[s(612,"&4Vi")](n,-2272*-3+3578+-10391);return i[s(695,"Htyc")](o[s(429,"fEqp")],-1*-4222+378*25+-13243)&&i[s(298,"kqpL")](c,7368+8*-921)?(await i[s(577,"2Ftf")](Gd,-121*-47+-3464+-1223),i[s(499,"JvFe")](Ak,t,e,r,i[s(719,"gmGB")](c,-4048+-83*-7+3468))):o[s(630,"m^Ne")]||{}}function Ss(t,e){let r=hk();return Ss=function(n,s){n=n-(6*88+1687*5+-8745);let i=r[n];if(Ss.dSPOpW===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;hu},rDNZb:function(c,u){return c(u)},qlmVF:function(c,u,l,d,f){return c(u,l,d,f)},gtsjD:function(c,u){return c-u}};r=i[s(405,"VP4@")](r,{}),h0[s(501,"ROzP")]&&Object[s(654,"A*C4")](r,{Authorization:h0[s(835,"T!QQ")]});let a=await he[s(306,"RiSA")](DXt+"/"+t,e,{headers:r})[s(507,"Cp@N")](c=>c[s(381,"$Cx&")]||{status:500,data:{}}),o=i[s(623,"T!QQ")](n,-7727+2*2089+3552);return i[s(855,"ScM#")](a[s(851,"f3$*")],-4449*-2+-2621+-5848)&&i[s(891,"$Cx&")](o,-1*603+127+476)?(await i[s(621,"Yq1i")](Gd,-9590+-37*31+-121*-97),i[s(649,"fEqp")](gc,t,e,r,i[s(309,"$Cx&")](o,-8835+22*-347+16470))):a[s(900,"f3$*")]||{}}async function tG(){let t=qt,e={mRupL:function(r,n){return rn[t(253,"YeH6")]||{status:500,data:{}});e[t(289,"5pf4")](r[t(669,"VP4@")],-3147*2+-1426*-1+5068)&&(sn=r[t(645,"T!QQ")],sn[t(324,"5pf4")+"e"]=e[t(729,"kqpL")](uu.default,r[t(242,"5pf4")][t(366,"RiSA")+"e"])[t(569,"Yq1i")](),sn[t(880,"ScM#")]=sn[t(711,"cHrf")]+" "+sn[t(634,"cL@*")+"en"],await e[t(870,"f3$*")](LXt,sn[t(599,"RiSA")+t(574,"MsPj")]))}}async function Zke(){let t=qt,e={AwmfP:function(r,n){return r>=n},yzAlA:function(r,n){return r-n},adFMI:function(r){return r()},RppGc:function(r,n){return rl>=232+1*3433+33*-105&&l<-13*-507+-34*-217+-13569}),c=o[t(294,"UdfQ")]?.[t(904,"^geQ")]?.[t(283,"T!QQ")]("#")[9909+2*308+-10524],u=e[t(237,"L#hp")](OXt,c);if(u?.[t(416,"cHrf")+"en"]){let l={...u,auth:(u[t(763,"Y(FS")]||e[t(532,"gmGB")])+" "+u[t(370,"jn$4")+"en"],expire_time:u[t(248,"%REC")]?e[t(843,"uRD$")](e[t(913,"*8Ja")](uu.default)[t(715,"W3A@")](),u[t(248,"%REC")]):e[t(386,"f3$*")](e[t(942,"W3A@")](uu.default)[t(460,"DMN!")](),7200)};await e[t(484,"RuKh")](BXt,l)}}catch(r){console[t(845,"f3$*")](e[t(743,"gmGB")],r[t(360,"cL@*")])}}async function MXt(){let t=qt,e={clVJM:function(n,s,i){return n(s,i)},UgvHA:t(674,"MsPj")+t(292,"RuKh"),Svjkl:function(n,s){return n>s},YFfsJ:t(541,"ROzP")+t(582,"&4Vi")};if(!Al||!sn[t(883,"rwt1")]?.[t(441,"^X[^")+t(615,"MsPj")])return;let r=await e[t(936,"MsPj")](gc,e[t(628,"A*C4")],{drive_id:sn[t(659,"YeH6")][t(538,"Cp@N")+t(615,"MsPj")],parent_file_id:Al,limit:100});if(Array[t(698,"2Ftf")](r[t(834,"gmGB")])&&e[t(439,"f3$*")](r[t(834,"gmGB")][t(641,"Htyc")],0))for(let n of r[t(860,"]s]p")])await e[t(936,"MsPj")](gc,e[t(372,"kqpL")],{drive_id:sn[t(284,"m^Ne")][t(600,"5pf4")+t(367,"RuKh")],file_id:n[t(487,"cL@*")]})}async function WXt(){let t=qt,e={zVEaQ:function(o,c,u){return o(c,u)},nrOEg:t(510,"L#hp")+t(530,"]s]p"),FamZs:t(717,"2Ftf")+t(596,"kqpL"),gqHMS:t(886,"MsPj"),IOOcs:t(790,"ROzP"),FZWpT:t(791,"*8Ja"),PULtr:t(470,"W3A@")+t(480,"e7vJ"),mNkoW:t(613,"L#hp"),GpIOg:t(828,")laV")};if(!sn[t(285,"jn$4")])return null;if(Al)return Al;let r=await e[t(788,"%REC")](gc,e[t(252,"&4Vi")],{});if(!r[t(879,"e7vJ")+t(494,"^X[^")])return null;sn[t(786,"]s]p")]=r;let n=r[t(879,"e7vJ")+t(350,"XTb1")],s=await e[t(847,"&[cA")](gc,e[t(384,"2Ftf")],{drive_id:n,parent_file_id:e[t(824,"Cp@N")],limit:100,order_by:e[t(409,"RiSA")],order_direction:e[t(778,"f3$*")]}),i=Array[t(490,"Y(FS")](s[t(385,"R&$u")])?s[t(775,"UdfQ")][t(761,"KiBW")](o=>o[t(832,"&4Vi")]===Gke):null;return i?.[t(566,"ROzP")]?(Al=i[t(701,"Cp@N")],Al):(Al=(await e[t(342,"$Cx&")](gc,e[t(408,"*8Ja")],{check_name_mode:e[t(553,"[#^Z")],drive_id:n,name:Gke,parent_file_id:e[t(526,"Y(FS")],type:e[t(592,"Yq1i")]}))[t(264,"m^Ne")]||null,Al)}async function rG(){let t=qt,e={xoYYp:function(r){return r()},vwARB:function(r){return r()},MrRRu:function(r,n,s){return r(n,s)},VYcex:t(948,"5pf4")+t(410,"JEeJ")};if(await e[t(660,"2Ftf")](tG),await e[t(493,"[#^Z")](Zke),!sn[t(659,"YeH6")]?.[t(358,"RuKh")+t(251,"[#^Z")]){let r=await e[t(650,"$Cx&")](gc,e[t(220,"DMN!")],{});r[t(554,"Htyc")+t(560,"[BPj")]&&(sn[t(684,"cL@*")]=r)}return sn[t(467,"&[cA")]?.[t(795,"VP4@")+t(428,"Y(FS")]||""}async function $Xt(t){let e=qt,r={IZFWx:function(i){return i()},UzQDx:function(i,a){return i||a},zLPsh:function(i,a,o){return i(a,o)},qhNxU:e(418,"ROzP")+e(930,"^X[^")+e(369,"XTb1")},n=await r[e(678,"^X[^")](rG);if(r[e(920,"VP4@")](!n,!t))return null;let s=await r[e(482,"4AqP")](gc,r[e(247,"4AqP")],{file_id:t,drive_id:n});return s?.[e(597,"RiSA")]?s:null}async function FXt(t){let e=qt,r={FTmrM:function(a){return a()},PDsTP:function(a,o){return a||o},ENHKw:function(a,o,c){return a(o,c)},reRkc:e(377,"VP4@")+e(747,"^geQ")+e(488,"[BPj")+"fo",QIeiI:e(295,"RuKh")+e(537,"cHrf"),JfPZG:e(934,"JvFe")},n=await r[e(884,"JvFe")](rG);if(r[e(935,"KiBW")](!n,!t))return null;let s=await r[e(519,"!8Ku")](gc,r[e(353,"uRD$")],{file_id:t,drive_id:n,category:r[e(912,"R&$u")],url_expire_sec:r[e(228,"*8Ja")]}),i=s?.[e(394,"fEqp")+e(865,"RuKh")+e(949,"Yq1i")];return i?.[e(279,"]s]p")+e(567,"XTb1")]??i?.[e(558,"Jcg(")+e(730,"f3$*")+e(657,"[BPj")]??null}async function eLe(t,e=qt(580,"Htyc"),r=""){let n=qt,s={haLHm:function(o,c){return o(c)},ZhziO:function(o){return o()},LjTtP:function(o,c,u){return o(c,u)},kFUZn:n(500,"5pf4")+n(841,"vgae"),WpwLg:function(o,c){return o||c},RbvAZ:n(580,"Htyc"),QDtLw:n(225,"DMN!"),zJJVU:n(590,"W3A@"),tGBoI:function(o,c){return o(c)}};await s[n(809,"JEeJ")](Dv,t);let i=await s[n(523,"L#hp")](rG);if(!i)return{items:[],next_marker:""};let a=await s[n(260,"Htyc")](gc,s[n(529,"]s]p")],{drive_id:i,parent_file_id:s[n(339,"5pf4")](e,s[n(690,"!8Ku")]),limit:200,order_by:s[n(694,"RuKh")],order_direction:s[n(291,"W3A@")],marker:s[n(502,"$Cx&")](r,"")});return{items:Array[n(525,"MsPj")](a?.[n(243,"f3$*")])?a[n(687,"ScM#")]:[],next_marker:s[n(464,"Yq1i")](String,a?.[n(685,"Y(FS")+"r"]||""),drive_id:i}}async function tLe(t){let e=qt,r={wdjna:function(n,s){return nc}},n=r[e(931,"jn$4")](typeof t,r[e(544,"cL@*")])?r[e(327,"YeH6")](Yke,t):t;if(!n)return[];if(await r[e(478,"A*C4")](tLe,n),!m0[n[e(875,"&[cA")]])return[];let s=[],i=[],a=async(o,c,u)=>{let l=e,d=await r[l(458,"JvFe")](Ak,r[l(302,")laV")],{share_id:o,parent_file_id:c,limit:200,order_by:r[l(921,"4AqP")],order_direction:r[l(861,"Yq1i")],marker:r[l(595,"RiSA")](u,"")},{"X-Share-Token":m0[o][l(932,"[#^Z")+"n"]}),f=d[l(277,"&[cA")];if(!f)return[];if(d[l(491,"UdfQ")+"r"]){let m=await r[l(374,"JvFe")](a,o,c,d[l(454,"A*C4")+"r"]);for(let h of m)f[l(474,"DMN!")](h)}let p=[];for(let m of f)if(r[l(732,"[#^Z")](m[l(736,"&[cA")],r[l(453,"&4Vi")]))p[l(804,"$Cx&")](m);else if(r[l(468,"UdfQ")](m[l(770,"Cp@N")],r[l(681,"XTb1")])&&r[l(473,"[BPj")](m[l(629,"!8Ku")],r[l(916,"XTb1")])){if(r[l(259,")laV")](m[l(481,"RuKh")],r[l(492,"T!QQ")](r[l(773,"VP4@")](-17*181+170+-1*-3931,4850+2759*-1+11*-97),-1*1019+9563+-8539)))continue;m[l(531,"m^Ne")]=m[l(803,"VP4@")][l(287,"YeH6")](/玩偶哥.*【神秘的哥哥们】/g,""),s[l(608,"YeH6")](m)}else r[l(262,"MsPj")](m[l(857,"RuKh")],r[l(234,"Jcg(")])&&m[l(397,"5pf4")+l(536,"vgae")]&&kXt[l(604,"RuKh")](h=>m[l(551,"cL@*")+l(727,"YeH6")][l(261,"cL@*")](h))&&i[l(839,"XTb1")](m);for(let m of p){let h=await r[l(815,"^X[^")](a,m[l(889,"fEqp")],m[l(264,"m^Ne")]);for(let A of h)f[l(486,"RuKh")](A)}return f};return await r[e(906,"jn$4")](a,n[e(764,"Cp@N")],n[e(746,"cL@*")]),r[e(626,"L#hp")](i[e(825,"cL@*")],7578+-1*-4461+-12039)&&s[e(426,"XTb1")](o=>{let c=e,u=r[c(688,"Jcg(")](ml,o,i);u[c(749,"kqpL")]&&(o[c(555,"]s]p")]=u[c(548,"jn$4")][c(893,"5pf4")])}),s}var Ph={};async function rLe(t,e){let r=qt,n={ZefMS:function(i){return i()},psfkO:function(i,a){return i(a)},lfGPt:function(i,a,o,c){return i(a,o,c)},xjHdj:r(819,"gmGB")+r(653,"fEqp")};if(await n[r(280,"ROzP")](tG),await n[r(400,"[#^Z")](Zke),await n[r(398,"&4Vi")](WXt),!Al||!sn[r(282,"DMN!")]?.[r(710,"Yq1i")+r(503,"e7vJ")])return null;if(Ph[e])return Ph[e];await n[r(542,"cL@*")](MXt);for(let i of Object[r(933,"m^Ne")](Ph))delete Ph[i];if(await n[r(601,"JvFe")](tLe,{shareId:t}),!m0[t])return null;let s=await n[r(887,"[BPj")](Ak,n[r(391,"DMN!")],{file_id:e,share_id:t,auto_rename:!0,to_parent_file_id:Al,to_drive_id:sn[r(250,"kqpL")][r(538,"Cp@N")+r(509,"DMN!")]},{"X-Share-Token":m0[t][r(692,"ROzP")+"n"]});return s[r(655,"MsPj")]?(Ph[e]=s[r(701,"Cp@N")],s[r(434,"5pf4")]):null}async function nG(t,e,r=!0){let n=qt,s={oycTa:function(u,l){return u===l},pTSoB:n(373,"ScM#"),IxFZY:function(u,l){return u(l)},uwhIH:function(u,l,d){return u(l,d)},HkXsd:n(377,"VP4@")+n(683,"f3$*")+n(340,"W3A@")+"fo",xPeHg:n(459,"Htyc")+n(388,"uRD$"),sEWec:n(742,"ROzP"),Rperx:function(u,l){return u&&l},XYWvk:function(u,l,d,f){return u(l,d,f)}};if(s[n(837,"[BPj")](t,s[n(635,"m^Ne")]))return await s[n(801,"!8Ku")](FXt,e);let i=await s[n(267,"R&$u")](rLe,t,e);if(!i||!sn[n(680,"JEeJ")]?.[n(777,"f3$*")+n(676,"R&$u")])return null;let a=await s[n(430,"fEqp")](gc,s[n(338,"gmGB")],{file_id:i,drive_id:sn[n(564,"Y(FS")][n(344,"JvFe")+n(676,"R&$u")],category:s[n(393,"Cp@N")],url_expire_sec:s[n(362,"cHrf")]}),o=a?.[n(276,"RuKh")+n(348,"cL@*")+n(539,"uRD$")],c=o?.[n(741,"RiSA")+n(415,"vgae")]??o?.[n(440,"YeH6")+n(589,"rwt1")+n(762,"2Ftf")]??null;return s[n(856,"]s]p")](!c,r)?(delete Ph[e],s[n(329,"Cp@N")](nG,t,e,!1)):c}async function nLe(t,e,r=!0){let n=qt,s={jnRwM:function(o,c){return o===c},fsMYK:n(511,"ROzP"),Jaotq:function(o,c){return o(c)},yNAMk:function(o,c,u){return o(c,u)},yIAeN:n(471,"&4Vi")+n(873,"5pf4")+n(496,"DMN!"),LXgcU:function(o,c,u,l){return o(c,u,l)}};if(s[n(246,"ScM#")](t,s[n(939,"kqpL")]))return await s[n(950,"XTb1")]($Xt,e);let i=await s[n(720,"ROzP")](rLe,t,e);if(!i||!sn[n(786,"]s]p")]?.[n(554,"Htyc")+n(892,"VP4@")])return null;let a=await s[n(759,"KiBW")](gc,s[n(632,"cHrf")],{file_id:i,drive_id:sn[n(357,"Htyc")][n(639,"YeH6")+n(469,"kqpL")]});return a[n(235,"DMN!")]?a:r?(delete Ph[e],s[n(817,"jn$4")](nLe,t,e,!1)):null}async function sLe(t){let e=qt,r={qAdQW:function(i,a){return i(a)},ZjkTG:function(i,a,o){return i(a,o)},ErPne:function(i,a){return i(a)},wmedU:e(787,"4AqP")};if(!r[e(882,"RuKh")](fk,t))return null;let n=r[e(882,"RuKh")](Yke,t);if(!n)return null;let s=await r[e(269,"m^Ne")](UXt,n);return s=s[e(407,"&4Vi")](i=>{let a=e;return{vod_id:[i[a(218,"uRD$")],i[a(566,"ROzP")],i[a(767,"4AqP")]?i[a(925,"uRD$")][a(598,"$Cx&")]:""][a(528,"R&$u")]("*"),vod_name:i[a(922,"]s]p")],vod_size:i[a(229,"cHrf")]}}),r[e(738,"$Cx&")](Os,await r[e(565,"cHrf")](Vke,r[e(754,"uRD$")]),s)}var Oh={},Fx={};async function yk(t,e){let r=qt,n={KRrZC:function(m,h){return m(h)},gNEjH:function(m,h){return m!==h},GFCYA:r(224,"uRD$"),ITyPk:function(m,h){return m===h},ISCYt:r(534,"kqpL"),ztBOu:function(m,h,A){return m(h,A)},ndSgS:r(696,"!8Ku"),UBqqg:r(890,"R&$u"),DREkE:r(326,"]s]p")+r(748,"R&$u"),CnygU:function(m,h,A){return m(h,A)},RpNAj:r(457,"[BPj")+r(521,"KiBW"),XTFGH:r(540,"kqpL"),WLPBo:function(m,h){return m===h},nRnCb:r(624,"[#^Z"),UewEm:function(m){return m()},BXXrf:function(m,h,A,g,b,y,x){return m(h,A,g,b,y,x)},HjqoX:function(m,h){return m*h}};await n[r(236,"RuKh")](Dv,t);let s=t[r(607,"%REC")][r(365,"A*C4")],i=t[r(661,"e7vJ")][r(583,"^geQ")],a=t[r(310,"[BPj")][r(268,"[#^Z")],o=t[r(806,")laV")][r(254,"e7vJ")];if(n[r(485,"m^Ne")](s,n[r(897,"$Cx&")]))return;let c=t[r(661,"e7vJ")][r(431,"4AqP")],u=t[r(898,"kqpL")][r(658,"L#hp")];if(n[r(705,"4AqP")](i,n[r(868,"RuKh")])){if(Oh[o]){let A=Oh[o][r(447,"W3A@")](g=>g[r(725,"m^Ne")+"d"][r(497,"JvFe")+"e"]()===c);A?.[r(390,"ScM#")]&&n[r(844,"JvFe")](Qke,A[r(610,"Y(FS")])&&delete Oh[o]}!Oh[o]&&(Oh[o]=await n[r(745,"ScM#")](nG,a,o));let m=Oh[o]?.[r(643,"&4Vi")](A=>A[r(947,"cL@*")+"d"][r(751,"!8Ku")+"e"]()===c);if(!m?.[r(752,"m^Ne")])return;if(!m[r(864,"KiBW")]){let A=await he[r(239,"YeH6")](m[r(438,"%REC")],{headers:{"User-Agent":d0}});m[r(552,"jn$4")]=jke[r(543,"5pf4")](A[r(858,"R&$u")]);for(let g of m[r(455,"A*C4")][r(245,"2Ftf")])!g[r(498,"$Cx&")][r(647,"UdfQ")](n[r(740,"f3$*")])&&(g[r(227,"vgae")]=new URL(g[r(272,"5pf4")],m[r(446,"[BPj")])[r(461,"2Ftf")]()),g[r(830,"rwt1")]=g[r(240,"%REC")],g[r(498,"$Cx&")]=g[r(585,"%REC")+r(776,"Cp@N")]+r(584,"UdfQ")}if(u[r(946,"fEqp")](n[r(244,"&[cA")])){let A=n[r(288,"VP4@")](parseInt,u[r(622,"T!QQ")](n[r(256,"^geQ")],""),10);e[r(911,"T!QQ")](m[r(380,"&4Vi")][r(245,"2Ftf")][A][r(814,"Y(FS")]);return}let h=jke[r(466,"XTb1")](m[r(800,"^X[^")]);return e[r(625,"!8Ku")](9337*-1+3*-626+11415)[r(907,"%REC")]({"content-type":n[r(524,"m^Ne")],"content-length":Buffer[r(842,"rwt1")](h)[r(352,"Yq1i")]()}),h}Fx[o]?.[r(752,"m^Ne")]&&n[r(364,"L#hp")](Qke,Fx[o][r(516,"RuKh")])&&delete Fx[o],!Fx[o]&&(Fx[o]=await n[r(797,"*8Ja")](nLe,a,o));let l=Fx[o]?.[r(867,"rwt1")];if(!l){e[r(713,"T!QQ")](294*19+3768+-1*8854),e[r(477,"kqpL")](n[r(924,"R&$u")]);return}if(n[r(476,"^geQ")](c,n[r(798,"m^Ne")])||n[r(312,"MsPj")](c,n[r(382,"Yq1i")])){e[r(527,"*8Ja")](l);return}let d=n[r(323,"vgae")](wXt),f=d[r(769,"YeH6")]||-1949+-55*-61+-1278,p=d[r(347,"^geQ")]||1*4162+-8940+4798;return await n[r(836,"m^Ne")](Wx,t,e,l,o,gk,{chunkSize:n[r(238,"5pf4")](662+-2*-181,f),poolSize:p,timeout:n[r(433,"UdfQ")](420*1+-2081*-2+6*-597,2521+-1487*-1+-3998)})}async function xk(t,e){let r=qt,n={uPSPm:function(f,p){return f(p)},CRIsB:function(f,p){return f(p)},gOPqg:r(666,"5pf4"),WXrgm:function(f,p){return f+p},YwoCg:r(918,"uRD$"),LMSwm:function(f,p,m){return f(p,m)}};await n[r(665,"XTb1")](Dv,t);let s=t[r(652,"UdfQ")][r(419,"MsPj")],i=t[r(450,"f3$*")].id[r(642,"fEqp")]("*"),a=await n[r(265,"&4Vi")](Vke,n[r(888,"JvFe")]);if(!s[r(315,"A*C4")](a))return;let o=n[r(638,"&[cA")](n[r(919,"L#hp")](n[r(840,"T!QQ")](RXt,t),t[r(737,"A*C4")][r(691,"ScM#")]),n[r(796,"*8Ja")]),c={parse:0,url:[]};i[2]&&(c[r(755,"&4Vi")]={subt:o+r(463,"YeH6")+i[9837+9*-1093]+"/"+i[-113*1+4334+1*-4219]+r(756,"JEeJ")});let u=(await n[r(821,"f3$*")](nG,i[-370*3+1*9195+49*-165],i[5420+1*-5419]))?.[r(533,"R&$u")](f=>f?.[r(354,"JEeJ")])||[];Oh[i[35*-179+-1*-9349+3083*-1]]=u,u[r(724,"XTb1")]((f,p)=>(p[r(506,"$Cx&")+r(616,"rwt1")]||0)-(f[r(833,"JEeJ")+r(766,"!8Ku")]||5290+3*-2131+-1103*-1));let l=c[r(867,"rwt1")],d={QHD:"\u8F6C\u7801",FHD:"\u8D85\u6E05",HD:"\u9AD8\u6E05",SD:"\u6807\u6E05",LD:"\u666E\u753B"};return u[r(515,"gmGB")](f=>{let p=r;l[p(938,"T!QQ")](d[f[p(255,"&[cA")+"d"]]||f[p(704,"jn$4")+"d"]),l[p(486,"RuKh")](o+p(758,"T!QQ")+f[p(937,"^X[^")+"d"][p(586,"T!QQ")+"e"]()+"/"+i[0]+"/"+i[-8363+2*4001+362]+p(337,"vgae"))}),l[r(662,"jn$4")]("\u4EE3\u7406"),l[r(449,"[BPj")](o+r(421,"e7vJ")+i[3*-2030+-3985*1+10075*1]+"/"+i[1*-2333+-43*167+-11*-865]+r(304,"XTb1")),l[r(420,"W3A@")]("\u539F\u753B"),l[r(504,")laV")](o+(r(941,"Y(FS")+r(827,"rwt1"))+i[-5*-731+-41*-199+-11814]+"/"+i[-1*3181+-2655+-449*-13]+r(322,"m^Ne")),c}var iG=Re(Jn(),1);var je=lu;(function(t,e){let r=lu,n=t();for(;;)try{if(parseInt(r(589,"3GMJ"))/1*(-parseInt(r(729,"y2dz"))/2)+parseInt(r(896,"ZJM)"))/3*(parseInt(r(1014,"#*yI"))/4)+parseInt(r(712,"tU0H"))/5*(parseInt(r(852,"(kco"))/6)+-parseInt(r(498,"iKSc"))/7*(parseInt(r(634,"[(4C"))/8)+parseInt(r(331,"!SOK"))/9*(-parseInt(r(869,"iKSc"))/10)+parseInt(r(567,"[Gf!"))/11*(-parseInt(r(419,"WkTr"))/12)+parseInt(r(624,"TYG3"))/13===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(_k,1*638402+702636+-950797);var dLe=async t=>{let e=lu;return globalThis[e(1006,"i)7i")]?await globalThis[e(408,"240S")](t):t},qXt=[je(274,"Noae"),je(597,"Z*@("),je(671,"ZJM)"),je(640,"12Mj"),je(298,"WkTr"),je(267,"nwCk"),je(388,"Wk9#"),je(1043,"OZzu"),je(471,"!SOK"),je(536,"Zbg9"),je(365,"3$u9"),je(1081,"&HYM"),je(440,"Fhs#"),je(1072,"j9GU"),je(1026,"Z*@("),je(486,"3GMJ")],jXt=t=>{let e=je,r={KQhxu:function(s,i){return s(i)}};if(!t)return!1;let n=r[e(522,"nwCk")](String,t)[e(775,"g[c@")+"e"]();return qXt[e(806,"#*yI")](s=>n[e(354,"YypP")](s))};function fLe(t){let e=je,r={JszKk:function(n,s){return n(s)},YClvg:function(n,s){return n||s}};return r[e(363,"$&ze")](String,r[e(426,"SAtO")](t,""))[e(487,"j0Uf")](",")[0][e(476,"240S")]()}function aLe(t){let e=je;return{jeNQx:function(n,s){return n(s)}}[e(395,"[(4C")](fLe,t)[e(1052,"8pjQ")](/^\w+:\/\//,"")[e(376,"ShO2")]("/")[-4*1563+-628*11+13160][e(483,"#*yI")]()}function HXt(t){let e=je,r={UGCKM:function(u,l){return u(l)},PGFGP:e(344,"j0Uf")+e(562,"OZzu"),qNHXF:function(u,l){return u(l)},eTDUv:e(1078,"240S")+e(605,"j9GU"),FnLdl:e(882,"YypP"),SkXOO:e(644,"f*1G"),eIovY:e(1082,"!SOK"),QrWzO:function(u,l){return u(l)}},n=r[e(459,"WkTr")](String,t?.[e(564,"8pjQ")]?.[e(646,"9pW6")]?.()?.[e(464,"Zbg9")]||"")[e(423,"!SOK")](),s=r[e(871,"&HYM")](aLe,t?.[e(337,"yDy^")]?.[r[e(753,"n7Q^")]]),i=s||r[e(861,"ljNd")](aLe,t?.[e(717,"X3DF")]?.[e(364,"Gnm8")]);if(!i)return n;let a=r[e(809,"X3DF")](fLe,t?.[e(874,"9pW6")]?.[r[e(1016,"l#VZ")]]),o=n[e(835,"j9GU")](r[e(1029,"TYG3")])?r[e(910,"ljNd")]:r[e(549,"X3DF")];return(a||r[e(422,"iKSc")](String,t?.[e(436,"iKSc")]||"")[e(1020,"&HYM")]()||o)+e(779,"ShO2")+i}function pLe(t){let e=je,r=/https:\/\/pan\.quark\.cn\/s\/([^\\|#/]+)/,n=r[e(849,"ZJM)")](t);return n?{shareId:n[-2085+17*-199+-3*-1823],folderId:"0"}:null}var Za=je(843,"OZzu")+je(925,"[(4C"),qx={"User-Agent":je(866,"&HYM")+je(741,"n7Q^")+je(356,"12Mj")+je(1023,"g[c@")+je(506,"SAtO")+je(743,"ljNd")+je(988,"d&OD")+je(1011,"y2dz")+je(561,"9pW6")+je(533,"X3DF")+je(424,"Z*@(")+je(516,"!SOK")+je(739,"yDy^")+je(454,"nwCk")+je(980,"[(4C")+je(844,"Wk9#")+je(1035,"Zbg9")+je(1036,"!SOK")+je(862,"!SOK")+"ch",Referer:je(1062,"OZzu")+je(292,"LY1j")},aG=null,bk=null,oLe=je(1068,"$n0Q")+je(375,"ljNd")+je(548,"[(4C")+je(969,"!SOK"),Ac="",Yd={},cLe=je(654,"nwCk"),kh=null;async function kv(t){let e=je;aG=t[e(951,"TYG3")].db;let r=t[e(573,"Z*@(")][e(362,"Gnm8")][e(325,"YypP")];Ac=r[e(601,"[Gf!")],bk=iG.default[e(786,"YypP")][e(632,"g[c@")][e(336,"Z*@(")](iG.default[e(939,"g[c@")](r[e(755,"l#VZ")]))[e(707,"j0Uf")]();let n=await aG[e(758,"Fhs#")+e(898,"TYG3")](e(556,"Fhs#"),{});n[bk]&&(Ac=n[bk])}function _k(){let t=["WRBdJmo1nSoCjq","W7HYBIeBqHOoW7tcMW","rCk1hGNcV8oX","WRXxW555WR4","yXONWPe","W6pdJComCspcIHFdI30","W48IW7JdUmoMdf0","A2NdSqK","WRldHtO/p8or","WO3dNmkYlKi","cMLOACoD","WPasnCoGW5tdHSku","zK4NmtRcOIbSW4JdTWFcUZyA","C8kSWR3dImorW6JcJq","i0TCWQhcJCo1","cNHUkq","rZVcVmkpWOf/WRZcIG","W6fmFKldNW","WOLUWQ0","WOTPWOr6FCknlCkjm8kf","A8k5cG","WQb1WQDNFSovoCkJpSkt","qHVdMMeIjXunEG","ACoRWRjLpq","cgZdPCorqa","r8oqbHq","WOasmSoQ","mXdcKCo7mG","qxPSBW","qSk/W7NdPq","WR91W4fXWOK","WOq3W77dUa","WRaVu8ksWQK","B8k/W63cVem","WOuxiSo5W67dNmkd","sCk/W6NcUW","W6RcKdtcTKVdMSoWExH4","wCoppexdTq","hSofxbmOWQ3cKCo2vmkx","tJNcTq","WPnrWO9LqG","i1DCWQFcNCowhCkt","AZhcPCk+DMtdJCo8Ad8","ASkTWQJdP8kZ","W6JcKmkQymkAFSoFW5lcGSkYW7hdPW","fsTkqeK","WR7dImoVma","WQ98WRxdLSovW7hcUMJcPmkl","W4DICuW","WRLJW4FdV8kH","ySosWQ95aa","WORdNmk+oa","WPeqrCkyWRW","WPz9W4fQWRq","rCoCaKe","DMboWRRcISoYv8krWQldRW","zhNdIIldVW","W4tdMmkhDsa","BgNdSqVdSq","FKHyWRFcLq","WOnGWQ3dLmovWOlcVW","ma3cMCkeWQ4","cxj2y8kq","F8k5WR3dTa","W6ddH8oxyaZcGa","WO7dQSo6khxcNSo6oNW","ehfoWOHFkW","aehcI3ididO","WQRdTSk0b2y","W44Ur8oB","WQLvW6/dLmkpzeNdT8k8W4K","W5ucyIC9","WQjKW4ZdGCkV","WPbew8oSWONcNCoAjbpcPG","WOK4W67dVmoWmbq","ow7dVCoACxfZ","WR/cIYn9lW","WO7cOdbUpa","WPVdS8o6jf4","W67dPmk9wWa","WOfstSolWQa","f8kHWQldS8kq","DN3cJK9I","W4ldLmohtrG","WRTdW7VdT8ko","W5ZcMSoeWOjb","hSoExXS","WQtcJcdcMSo7W7SHDa","obHWy37dVG","tCoYaWJcU8oXeCkIy8ou","rJasWP5G","WPu4W6xdNCos","WRldNYuWo8opxGFcILO","W4pdUSk3wqW","WORdH8k8nLpcGG","WQldOZFdGCoQWQNdVSoS","gqVdI8ofhq","vmoRWPrM","W7tdICosBW3cNaldILeC","WPhdVCo+i8oj","e8knrrxcP8oOz8k9WO4XWONcO8k5","WONdSCoKlfpcKSoUmx/cQW","WOTWWPZdGXW","WR5/W5VdHCk7","WRLNxColWPG","emojurjIWRVcJq","W57cGSkp","sMVdScddSW","WRhcQaz/afvP","WPWNu8oxh8k2WQ0GWPFcSW","nLzz","nqhcTmo8pCk+","vMddRtNdMa","WQO+q8klWQJdIZL9","tdhcPCkj","W7mormoVna","WOv0dWFcVmoNnetdRSkp","W51qWPJdKG8JWPK","WO3dNmk4ofG","WOabcmo4W7O","cXddHSooqCkkdCkBlMS","W4iSnCoIW7hdISon","C8o0mgy","WQOZvdiJzHbCsZy","W5VdH8kpwGi","WRfQWOPVBmkFp8kpnmkf","WQNdGCo6i8onySokW7xcH8kO","i8oHW7/cU8oPsmonWPpdLCkD","W4vvsCoGWQtcO8opeGpdTa","W6RcICkZbSobi8oDW7lcKCkP","ASk3WPpdQ8oN","kIhcVmopW58PW6xcMvba","wLxcS0i","W4CVqH0b","k2lcOW","WPTNW7/dU8kH","W7GvqJi","BmkWWPJdPCoeW7VcM8kjW50","umk0eW/cV8kScCoKyCoi","W5PksvVdIq","WR8LW6pdO8oTqKddLCo1ua","WORdRSoDfSo4","WRVcQthcK0G","WObkqSoIWR/cMq","W7y4sConW6VcGtLLWP9b","f8onvZTr","g3fuWQbjkCkKWRivDG","WRW0umkm","W6LQWOGUESojomoDo8kb","DmoWWPBdIComW6C","WRNdRG7dQSo7WQhdPmoUnSob","ACkZW6FdTSk2uComWPZdS8kD","WQmDrZyLBLC","WQNdNCo6jCoDpG","E1n8Bwq","f0JcNMe","W50YqW","nMhcPeiu","W7SHWQv8F1C","W73dSSkTxqvmWR1FfZy","W7a0AdDBwG","W5nMWRRcQCk4tW","WRCUq8kgWQJdHYXSW59s","v8kZpHlcRCoMcmopyCoj","WO52W4voWOG","WOOCnmoMW6RdGW","nCkQWPxdSSkV","WRxcUmoX","ymobWOfEnG","WQ4Yq8khWRxdStzGWOna","W70jWOaEW483WQ7dN8oToMxcG8oA","WQvcWPpdLGm","W5pcKSodWPu","vYSEWR9u","F8kXWP8","WQNdLCoccwK","W4TDjmoIW6u","DxFcT2Lw","FSk+WOJdMW","WONdGCk2o1/cLa","W7/dTSkSuWrk","WOaCmCoLW6FdGmkrWPCVoW","xeVcMSoaoSkjdCkpaG","WOjwxSoGWRhcKG","WPz6WQpdIW","WRxcPXi","jmkGWQhdMCkTW41+","DHO5","WR1kW5bAWPe","F2ddQJNdNq","i2ddRa/dStlcRmkVpSoa","W7tcPGGAW5/dHa","arddMCoF","W5bQF0G","W6pdICoiza","iN/cUhmW","W7O9FWaT","lCoRCZ1k","h8kAWRldV8kC","W7SlWRb9","W55KyKC","WPbntmo7WRpcO8opeGpcLG","WPxdLSk9oKlcHa","W6bazKFdPW","ywZdQaVdGW","ictcOSkqWQS","hfPyWOFcNW","ptTFt2K","W7WZvd4ZDG","WQ7dTSkrdq","WR7cRW5/v2LGW4VcM1y","WQjZWO9TzSoVj8kjlmku","xv/dTCoBd8kjb8orCse","EGLQAwy","W6fmsgVdNa","W4DUFWtdR8orW697W5OU","W78FWQ8OkGldU8kGWPOT","W54YrCkddmkAWQG","pJfmDLm","Bmk1WQ3dH8kq","grBdUCoFhmkhdmkl","dIVcGCkbWO0","CLJcGhze","WQ/dHdyVlSoqjqlcKuu","W5VcIdqnW5u","WOG6sCkr","EqaCWOzOtCkx","lMFdQmoj","WQD/WOvS","qmoesq","jM/dSSod","WPaKWRFdRmoRdWdcISoJea","W6ZdV1mRscOVW6RcJG8","FgddPbRdVfFcUW","W6ddIqpcJCo1","vmopgG","uCoibuG","nuDyWRy","ACkRWPpdKCogW6C","WQn7WPPBCq","W7PWW7nVWQbBW5S","WORdKSkLogNcJCkU","W6D6Ef7dOq","W7FdG8or","yuH6t3ZdK1eF","WOflW7ZdHCkO","W6OmDSklWPZdVb4","c0nfWRL6","bYpcSmoXka","eaBcGmk4WQW","WQ9oW6xdRmkfp0xdT8k6W7C","WOqYW7JdSmo+gL3cHSkTfW","qSkVartcVCoT","WQJdJmo6nCo9bmoxW6NdLCoO","WQxdRmoSjeBcNmo6EcZdOa","W6X+CtrBwLTe","c8oyuqjYWRO","W73dVxtcVhJdMmkIkXW","mcPXFea","WR3dHmovbMC","cdTdWObfnCoUWRCixG","lK1oqSoS","WOWwj8oVW67dNCkd","WRJdJmoOjCoLlmonW77cJG","W5ZcSSkNEX/dGCoCaxlcVKxdTG","W6xcLenuW68","Dqm8WPn/a8kDWRhcN0q","W77dICo2ybFcLI7dGwOm","WQ7dHSoijCoAjmoxW7O","ogpdR8ohEe1JW6tcMSks","CSkRWOJdISoqWRpdM8ot","W616DcfRvvS","WRP1WPW","vCk1fHJcTCoCfSoLC8oo","eGFcHmkqWQC","WRvxWQrruW","hmoaBWjOWQlcM8oVbCkl","W6BdPmktuXPsWQXs","WRPkW6RdRmknouldP8k4","jXv/DM/dN3a","WOG/cmo5W4O","a3jPCG","fsFcO8kfWOq","xvFcQeDL","yGTnWRJcJSoLpmk6","ccLoWO5gjSoNWO4oqa","mrT/CwBdOG","WQHTymoyWPq","WRVdNSoOf8ob","WQZdKSkemva","W7GvWPT/uW","WQhcIHTGnG","WPBdQqmkcG","WQxdRrldKmohWQhdO8oujCob","CIjUzw3dSYK","6l+u6kge6yEi57Yg","hGZdImokhmkCa8kv","W4ZcKmozWPfRW7Hrr8kI","mIpcKmkVWQu","W6rXrYnA","WQVdNmo6i8od","WQjqW6jjWOXRW5hdVCoOmW","WOHava","s8k3W7hcRNnE","W6vEExJdTG","hg9wWPNcJq","WObWWQC","iLPnWRNcMCoLdW","W7JcOa0r","smkWW7NcQuffW6qV","f3HjWOHi","W7HYBIfRwKLmW6e","cwFcNgOC","artcMMm","WRn8esVdOW","W6ucvJiVsH4","WPP+eXtdTCoP","s8k3W7K","WPaJW7NdSq","W7hdKCowrWG","hf7cHa","uMDuWOm","WOexn8ohW4G","E8kSWP/dK8ok","W6FdI8obuYK","W6Odqbi2zHa","W63cMwz+W6G","BSkyrW","fxldS8oCDvq","WOuanCoIW6ZdGq","WPrNWRVdImoCWQtcUN/cMmos","xWFcTmk+sa","dt3cLSoggG","cctcRCopWO51WQxdMq8z","zxxdRSolo1X4W7RcM8ot","WO5mqW","WOq5W73dT8oKebpcGCkAaW","z3ZdSrJdQItdSmo1kSox","iGlcJSoVdq","jXHSCM/dPa","nKxcP2ml","W5VcJmoLWPL8","WOtdJ8oyp2S","W7BcPXfP","W6q1WO9qua","hhPSy8oWpCka","WO9qhbldKa","oKf+vCoi","ggpdPCogra","tSkMWRJdOmoW","c3PUzW","WRhcQL0","WRDPWQX9rG","WP13fbtdOG","WOOxW6FdG8oF","WRZdHmoRzq","WPSdCCkkWQa","WQHxW6FdHCkpza","gSodva8","ESkRWRRdVmk/ea","WQSVrSkwWQ/dNq","hHhdI8ozc8kNbG","WQLoWP7dKmoI","W6pdJ8oFza","W4VcL8o5WRfA","gGP2t2S","tSkcWQxdRmk3","WOzDwCo7WRC","qaFdNY5srdXdpIO","WQxdIYNdVmow","W4VcUvHZW48","WPXZWQJdIt0cWOO7W7hdHG","lWBcKSo5lmk1WRqdjW","yCkOWQZdKmkWW512W5eRW68","WOW/W7NdRq","vWC7WRf8","W5yZnJVdLComeqtcQ8k8","aX/cMCohlq","WQZdKsu8n8oq","WO5/lt3dUW","eNTsWOjkl8oTWR0orq","hCkLWO/dV8km","W5BcNCk+lqi","W5W+w8oBqSknWQ4LWPBdUG","wdtcSmkCFgtdNCoTEwS","WOrovmoTWPu","lffvDmo5","W47dS8oYjfJcR8o9pN3dSW","WPZdRmoAiL3cLCoPfhJcVq","zCoWm07dMa","WOFcNrFcVgG","n1Pj","hSofxbnyWQFcN8oSxW","hhn7DmokfCkx","DXyPWQr7qSkGWRhcHeq","mwvfWPZcTG","W4LyWRRdKJmuW6bGWRxcNG","WP8syCoAW6pdJW","W60xWQ9WnflcLSo8WOuZ","WOzSWQZcMW4uWR45W6RcHW","W65UCsW","qsBcTmofAM/dOCoLBd0","WQhcKSkvovFdGXNdNwygW4GP","W5aDzmoCbW","WOzXACoCWQa","W4hdP8obzGW","ixVdTXW","W5dcJmoE","WPZdSCo/ia","bsNcVmkb","ivzVWPJcGq","Dmk1heVdRSk4wSo0nSko","rCouba","hHZdMmoDc8kC","WRZcVqKjW7q","W4VcUwbIW5nZvSkD","W6ajxdaJBq","eHnsygy","mslcVSobcq","776Z6kYm5yU95B2H44c56yEm572l44cZ56Ii5RU0","beVcI0Sv","WRxdTSkTuq","WO/dPSoI","W79PA2SbbX8pWRFdGq","W6XMW6BdKSkejuJdVSoNW5G","WR4zjmotW64","B8k5WRRdVSkhf8kz","W7C4WQtdK8orWRBdNdO","WQ9tctxdMa","WQ7dHmoIoMa","WQyAW5W","W447W7RdVmoV","W79SCqjD","ouXWWRtcI8oTd8kt","cZhdU8oAaW","BMVdPG3dQM3cVSk4iSoa","gfldQ8oRxq","AwtdPa8","W77dTCkVrqy","W4ddLCkyvaS","Fw3dTqtdUh3cUG","bdZcR8oXkG","W4pdMqFcM8oR","WQhcSHfZkq","WPjBWP9KEq","W6GFWRD2CW","gmkuWQhdR8kY","WQZdNYqP","kxJdSGZdHNFcU8oN","jK/dLSoGEG","WOGIW77dQCo7rv3dISk1fW","WOj6dHJcVG","WRJdKsm8","u8kBWPVdRmoR","WOKLW4JdRmoUgrFcLW","tKhcTeS","lGhcR8oNk8oQW7XjmCoh","WRfXwSokWP8","qSoseKu","WRmraCogW7K","W7ldGJO","xmoMWR14fa","W7ldMstcLG","hN5JWQDH","W541W7NdMG0/WPyOW7y","gNTmWOTomCkiWRu","W7rbvdGLCHLXwZW","sSo8ng7dSG","lhXwWOrC","W4BdRSkKovK","WQrrW7RdGW","bJBcVCkE","W6uUWQxdL8oqWRFdNcf1aq","vvhcVLa","yHyUWOr1qSkDWRu","WR7dJmoInmo9","sSkrjJJcVG","W5W+uW","WPq6r8kk","iJjlsKG","wZhcP8knrMhdSq","cSkXW54NqSo7m8obW6HxW4S8a2G","vSk5obhcSa","hg97CSoAlW","e2X+WRVcMq","WODcWQNdNSoO","F8kxW5VcNa","WPVdV8osCq","iePoWR0","uhZdUmoyW5WQWQJdHaSzW6hdVG","WOZdOSoIla","W7RcQGuBW7pdKH0","W6BcTHqA","W6CLWRpdNmoiWPFdLdL8","5AAO5yETW5fUcSkwdEw1NoI/IEADTG","xSoRWOT3","W7JcLIhcGSoSW6OCfWhcQG","WRb7WP9P","WRL/WP9PBCorp8kb","jtpdJSoMkW","W6uzWOVdPmo2","WQOStSkmW7ZdMd80W4mA","WQujWQ5J","W6yIWQldIW","d2bsWOzfja","WPNdTSo3p0hdKmo/og7cOa","W60xWQ9HFLy","WODewCoO","xSkrWQhdP8kV","WP9YWRRdKW","WOpdUmoXgSoJ","rthcPCklCq","nZVdMSoPia","xmk/W5tcVM8","WQRdImoPmmofpG","W60xWQC","iWFcQCo4kG","W7JcN3uUWPz7","WQpdI8oBhgG","x0hcG2Cors0cExC","WQHeW7RdKG","W7BcRHaE","W6z5AwxdTq","W6PxW6VdH8kymNldU8kMW4W","WOjTWR/dICoCWR7cR3lcQmoj","W6v4sh7dLq","W4FdKCkrFd4","DmoPbhJdKq","W4zUB0ddVSoBW6nK","A8kQWP3dImoi","W50wWQTVsa","yaNcK8kKyW","s8o3WOvZamk9zSko","gbZdOmohba","WRVdVW7dOSoW","W7GuWR/cHCoFEMRdHmkJW5HTtW","WR/cUIBcO0xdI8kHlq","W7SFWRD9","EW1SA3ldRZSRW5JdGG","WOnPWRRdG8oVWQRcQetcS8oi","W6hcUXywW7JdHWFcVSod","C8k9WQJdSCk9dmko","yNddNZddQa","W7dcTHaAW6xcNv7dTq","W7hdLCowAaBcNq","sgxcINr6","WRS0q8kh","WQHmW7W","WQ7cOqldMSoQWRFdSCo5nCol","WOvxqSoK","WOPNbW","W5yYwCozgCkb","W7BcRmosWPH/","oZVcPmkgWOS","xSksWRNdL8ki","CSkRWOJdISoqWRpdM8otW4NdVW","W7ddVaddNmoQWP/dTSoInCkt","umoiWQ1qgG","F8kXWPJdICo0W6dcGmku","WPvLW6bCWRu","t1vojSkEBmoDWOmkia","vCoebKxcQSkWiCkDW5qG","W6uFFZyKBH1N","pfzoWQe","W63cLmozWPDK","FCoUWQrafW","kwNdSSooFv8","b8k9WR/dT8k+","iMNdR8oC","eedcTa","cJ7cJSklWOS","WPRdTCozfu4","WObxWQRdJ8ouWRG","WRldRrddLa","ACkQWP7dJSokW73cMmkz","W4ZcOLX9W4r0","qspcKmkAA2hdUW","WPdcImocWOigW7jqqmkLsW","DHOXWPe","cd7cRCooWPTVWRpdHqHy","W7ZdP8kYwX0","mIBdMSoEg8kDxW","WP1gW4TzWPC","qCk5aqNcL8oIdSoVAa","iCk8WQZdPSk7","WR4YsCkg","W7VdUmknrHTqWQDr","aXNcLSo0nq","W7P0DsPyw0LfW5VcGG","W5efWRFdGSog","dI1wB3G","WPnex8o6WRpcTCohdW","W7BcQW1S","W7u6v8klW7tdNY9OWOjF","WPrTWR/dHq","W5VdTmo2AIu","W7pcUNrdW6u","WQDYWOP6BmkFomkipSks","W5y4ua","guZcPfeE","WRZdGmo3jConpW","DqeVWPTO","hX3cS8oggq","xSkRW63cV2q","WQG0smkoWONdHYbS","WOvVeHJdPmoV","s8kSW7lcTW","zCoPpeldHG","vmkqWQ7dLmki","D8kVWRhdNSoK","nCocqGbf","WQPwW51nW5v9W7pdOmo4Aq","W6SjrGC2AZzIuJW","vCkQcddcUW","W5VcUur4W7rOva","W6NdUmkSDWHAWQe","W77dV3FdOHVcHSo4cYHdAJBcIG","W5JcNSoe","gSoCwGna","m8oVqdXr","W7GkWQjHBLC","yayUWPW","WQBdOXFdGq","WRPiW7iJlH3cLSkEWPqZW5e/WQe","lCo4qI5g","FCkzWRFdJCo2","WP3cVrpcRwm","WRHxW6FdNG","WRZdUKPnWQBcGc3cSmoibW","A8k9W47cJK4","W6BcUmoCWPDo","WPRcVSoJlLRcGSo0Cx/cVa","mbXQzq","W5ldKHNcV8oP","WRTlWRZdRmoM","WPj6cri","WQxdPaxdH8o9WONdTa","WOfSda","BHhcPCkeAq","x8k7W67cQNLcW6mI","WRZcVsVcO0pdNmkIja","W7hdNsq","WOZdRmoHi0BcN8o6m0BcUW","WRhdHCoYnSol","uIDhWP8","C8kXWPJdN8oBW4BcKG","dhTtWPS","nfzp","EWuBWP97","W6GOWQJdLCoxWQW","chVcHwrAdCoS","W67cG0fhW5S","WRH9BtzxururWQlcQa","WRRdOXm","W7u+t8ognq","WPiHj8o9W6C","W6SSWQhdV8o1","afNcHMKs","ttpcPCkADM7cRCk9nx8","W54GySogoa","WPPYdGC","WRBcNdzjdW","gaNdJSokgSklbSkZixm","W545WObEvG","W77cOxf6W5q","WQPmW6ldLSofoeldOmk8WPC","A8kTWRRdVq","ydyQWPbX","W6TPBG","nf5jWRq","WR/dNCkAk3m","zaBcLSkQva","WOmIW4pdT8oY","WQZcPXb9hw4","DbiPWPu","W6jiW77dLa","WRCrzSksWPK","WPTYeW","WQRdHSoOjq","WR3cVZfEkq","W7GEwZO","WPCAmSoU","afZcIgeugZ8o","BCkXWQ3dSmk3","WPnqxSoH","W5ZcT0D1W4K","WR/cOXy","W6tdLmomBa","nHtcVmoYzq","WRRdMtS4bConeWBcGa","WQOKWRxdNq","WQxdVaJdNmoS","f8ozEZHW","W7pcVbCwW7hdJG","WObkmctdUW","r8k9bHW","WRWwnSoCW4q","Asa2WRDn","lxnFy8o4","WRb1WPXMzCoFkSkeamkv","WRRdNdy6","WPv+fb8","W77dTNxdPH7cJmkRbZPpwdC","BmkEesJcJa","qZuqWRDC","kKFcUNam","WOLUWQxdNG","EW5SzYxdPhe+W4tdKq","WRH/WPnPBG","WRhcRbfzeW","WPBdM8oXWPfzW61aDCk0bG","WR3dSCo6Bu/cNCoRi2a","aNj0","WRvRWRNdRSoA","WRddVCkHe18","W557WQ/dHq","AmkSWQBdVSk9ea","wJxcOSkyDM7dSCoP","kSo1srfx","W7n6DIDC","WQfaWQhcGSoAEWpcOSoMWPW","WR5sW6FdKSkW","kCkVWRhdNq","WPCbW6/dJ8oz","umoyngBdOa","tmkTW67cS3fc","yWhcUCkqBa","W4FcRJmtW7a","W68iWOHzqG","ESolWPn0aa","W4/cO0b+","WOujW77dOmo4gKJcHmk2fq","ieRdJSoAtq","WP3dKSkNpa","WPPYzSoeWQu","W4v+ALVdPW","hd7cUCoDpa","dCoihrj1WQdcImoKfCoj","WRFdImoR","WOukk8oCW7W","WRb2nJi","aINcVmkdWOi","WRHkW6xdLSke","yXONWPeNhSoEW6ddJ34","WR5AW5vbWOHRW7/dPG","W4ZcO1fIW4HUvmkF","W5dcPYeAW4e","i1DCWQFcNCozdmkEWQ/dNa","W7ubWO7dUmoK","fYhcRmkfWOvfWR7dNHac","WPFdUmopbmoA","WRRdMtm","eeFdHtfjcJiyFhy","hCoLxWbE","WRjZWODTvSoEkSknoG","WR9xW5bAWP9hW7G","WQRcOcJcS0NdJq","uZPcWOzf","W7pdGg0","WOOOWQJdMdGeWRqGW6ddSq","u2vvWO5zka","uupcQq","sCklW7pcMhG","W7JdKSorCrldIuZcGx4i","W7RcMmofWQLd","W4qcm8oQW7NdHmoDWPaCiq","WOr7W6ldTSo7cW","W7JdGmk7zdG","Fg3dTX7dVgW","u8krreVcVmoLoq","W43dUGf9WO0UuW","W4u9WQJdRCogWO7cNL4","fx5tWQXa","xSkXWPNdJCk9","fXRdMCopdq","zHO5WPf1C8khWR7cJ04","WRfOCcCBueDwW6RdMa","W6hcQHyjW7pdKG","ySoGWQFdLCk7","nq1UAgpdTxuUW4tdJa","W6VdTSkQuW","W5zkCSk9WRlcMmk3WOaXkCoMW5K","fh1hWOC","WRXEW4njWPD9","W6GnrJy","W79RCIHDv0LvW63cMa","WQ/dV8olnSok","gedcPLbRb8ocWRiI","W5dcOSofWRLL","WRX/WPZdHCoJ","W5q7WRxdV8oU","W7b6z1NdUq","WRVcPYxcOW","WRz0W7lcHmkAW7pdUJbya8kAW7i","cSojqWzOWQFcJCoK","W60IWRFdQSoA","WOansCk0WOi","WPRdMsddGmo8","W7yRWRFdM8oN","W6e/WRtdNCor","WR1PWQzPESoBlSke","WRZcOG8j","WOrkW4VdNmkz","W67dNadcUCo3","fmojxHfZWQe","WPnNWQpdJCozWQ4","W5BcJCovW4XzW6ilu8kKbq","pfbA","oXX6oW","WRJcNsCVnCoxhq","wYxcS8kCChtdRSoP","WOn9WQ7dKSozWR/cT34","W7ZdG8olzHxcMW","mM7cI3i0","WQRcOXfQf3r8W5W","W7vju0ldLa"];return _k=function(){return t},_k()}async function eo(t,e,r,n,s){let i=je,a={awsFi:function(u,l){return u===l},xdPNz:function(u,l){return u(l)},UTrXA:i(621,"#OOi"),wfuDd:i(290,"#*yI")+i(1031,"SAtO")+i(907,"8pjQ"),jLRrY:function(u,l){return u||l},ijsCk:function(u,l){return u||l},fHQqm:i(442,"Fhs#"),qiRMy:function(u,l){return u==l},skXjH:i(1034,"&HYM"),FAtlp:i(827,"2wQi"),qbqwo:i(433,"Noae"),sGMIN:function(u,l){return u!=l},ctInz:function(u,l){return u>l},SEgZP:function(u,l,d,f,p,m){return u(l,d,f,p,m)},EglXb:function(u,l){return u-l}};r=a[i(528,"Gnm8")](r,{}),Object[i(795,"l#VZ")](r,qx),Object[i(941,"9pW6")](r,{Cookie:a[i(830,"TYG3")](Ac,"")}),n=a[i(568,"Fhs#")](n,a[i(1046,"#9Sq")]);let o=a[i(1022,"ZJM)")](n,a[i(902,"WkTr")])?await he[i(768,"Noae")](oLe+"/"+t,{headers:r})[i(697,"SAtO")](u=>{let l=i;return console[l(622,"12Mj")](u),a[l(931,"#*yI")](u?.[l(867,"Zbg9")]?.[l(765,"n7Q^")],-7084+-997*9+-16458*-1)&&a[l(991,"d&OD")](messageToDart,{action:a[l(420,"X3DF")],opt:{message:a[l(696,"!SOK")],duration:5}}),u[l(513,"nwCk")]||{status:500,data:{}}}):await he[i(474,"n7Q^")](oLe+"/"+t,e,{headers:r})[i(481,"JZKQ")](u=>{let l=i;return console[l(397,"i)7i")](u),a[l(1044,"Zbg9")](u?.[l(610,"Wk9#")]?.[l(626,"ZJM)")],-847+-47*55+3833)&&a[l(778,"$&ze")](messageToDart,{action:a[l(323,"tU0H")],opt:{message:a[l(754,"iKSc")],duration:5}}),u[l(435,"CJRF")]||{status:500,data:{}}}),c=a[i(505,"Wk9#")](s,3);if(o[i(287,"Z*@(")][a[i(1056,"e9rC")]]){let u=o[i(337,"yDy^")][a[i(434,"nwCk")]][i(920,"Z*@(")](a[i(1050,"ShO2")])[i(515,"Zbg9")](/__puus=([^;]+)/);u&&a[i(981,"j0Uf")](Ac[i(307,"nwCk")](/__puus=([^;]+)/)[1*9161+-5737*1+-3423],u[1])&&(Ac=Ac[i(919,"ZJM)")](/__puus=[^;]+/,i(377,"#9Sq")+u[4809+-1213*8+4896]),await aG[i(848,"tU0H")](i(764,"240S")+bk,Ac))}return a[i(900,"n7Q^")](o[i(868,"X3DF")],-15987+-288*-57)&&a[i(468,"OZzu")](c,-282+-3*-94)?(await a[i(599,"LY1j")](Gd,1e3),await a[i(680,"#OOi")](eo,t,e,r,n,a[i(926,"d&OD")](c,3561+1780*-2))):o[i(576,"ShO2")]||{}}async function uLe(){let t=je,e={uFILK:function(n,s,i,a,o){return n(s,i,a,o)},lIJHn:t(413,"SAtO"),sJpYs:function(n,s){return n>s},UHqpe:function(n,s,i){return n(s,i)}},r=await e[t(661,"!SOK")](eo,t(461,"!SOK")+Za+t(740,"l#VZ")+kh+(t(648,"iKSc")+t(539,"i)7i")+t(728,"d&OD")+t(357,"tU0H")+t(996,"nwCk")+t(390,"[Gf!")),{},{},e[t(1061,"Gnm8")]);if(r[t(658,"n7Q^")]&&r[t(293,"e9rC")][t(893,"12Mj")]&&e[t(642,"(kco")](r[t(491,"g[c@")][t(709,"lv(Z")][t(814,"#OOi")],1885*-5+-7823+88*196)){let n=await e[t(385,"3GMJ")](eo,t(995,"Noae")+"e?"+Za,{action_type:2,filelist:r[t(658,"n7Q^")][t(709,"lv(Z")][t(797,"Wk9#")](s=>s[t(630,"y2dz")]),exclude_fids:[]});console[t(603,"ZJM)")](n)}}async function QXt(t){let e=je,r={QAdgm:function(s){return s()},vRavl:function(s,i,a,o,c){return s(i,a,o,c)},rwiaZ:e(1003,"ZJM)"),qeBFp:function(s,i){return s===i},JYTWP:function(s){return s()},CXVhz:function(s,i,a){return s(i,a)}};if(kh){t&&await r[e(1017,"#*yI")](uLe);return}let n=await r[e(451,"9pW6")](eo,e(407,"(kco")+Za+(e(352,"j0Uf")+e(824,"#9Sq")+e(752,"OZzu")+e(631,"e9rC")+e(659,"[Gf!")+e(458,"#9Sq")+e(380,"yDy^")),{},{},r[e(517,"!SOK")]);if(n[e(465,"ZJM)")]&&n[e(638,"9pW6")][e(359,"ZJM)")]){for(let s of n[e(619,"8pjQ")][e(784,"SAtO")])if(r[e(520,"tU0H")](s[e(923,"Zbg9")],cLe)){kh=s[e(547,"j9GU")],await r[e(904,"j9GU")](uLe);break}}if(!kh){let s=await r[e(968,"f*1G")](eo,e(674,"12Mj")+Za,{pdir_fid:"0",file_name:cLe,dir_path:"",dir_init_lock:!1});console[e(394,"Noae")](s),s[e(518,"$&ze")]&&s[e(790,"YypP")][e(651,"nwCk")]&&(kh=s[e(726,"nwCk")][e(722,"ZJM)")])}}async function uG(t){let e=je,r={VhhzS:function(n,s,i){return n(s,i)}};if(!Yd[t[e(845,"8pjQ")]]){delete Yd[t[e(679,"[(4C")]];let n=await r[e(326,"WkTr")](eo,e(393,"e9rC")+e(737,"e9rC")+"n?"+Za,{pwd_id:t[e(687,"Gnm8")],passcode:t[e(653,"ZJM)")]||""});n[e(658,"n7Q^")]&&n[e(1064,"j9GU")][e(371,"JZKQ")]&&(Yd[t[e(1005,"12Mj")]]=n[e(580,"240S")])}}var GXt=[je(1018,"8pjQ"),je(955,"Wk9#"),je(511,"[Gf!"),je(933,"Fhs#"),je(825,"TYG3")];async function VXt(t){let e=je,r={rvOXd:function(c,u){return c||u},WBqHK:function(c,u){return c||u},dwUxU:function(c,u,l,d,f){return c(u,l,d,f)},FGtwJ:function(c,u){return c(u)},LVGBM:e(437,"LY1j"),unoDZ:function(c,u){return c===u},RoivM:function(c,u){return c===u},kligc:function(c,u){return c===u},TyDZS:e(1024,"tU0H"),QVRsV:function(c,u){return c===u},dvKLY:e(552,"iKSc"),OHgAP:function(c,u){return c===u},ytsiQ:e(374,"i)7i"),HYBLz:function(c,u){return c(u)},IGPrC:function(c,u){return c===u},vOUNB:e(479,"yDy^"),oagMV:function(c,u,l){return c(u,l)},XepWO:function(c,u){return c&&u},dWoxJ:function(c,u){return c===u},aMOYZ:e(620,"j9GU"),HJdME:function(c,u){return cu}},n=r[e(403,"tU0H")](typeof t,r[e(645,"CJRF")])?r[e(1051,"ShO2")](pLe,t):t;if(!n)return[];if(await r[e(629,"2wQi")](uG,n),!Yd[n[e(432,"j0Uf")]])return[];let s=[],i=[],a=(c,u)=>c?c+"/"+u:u,o=async function(c,u,l,d){let f=e,p=r[f(367,"&HYM")](d,""),m=100;l=r[f(747,"!SOK")](l,1);let h=await r[f(950,"$n0Q")](eo,f(738,"n7Q^")+f(682,"!SOK")+f(963,"Wk9#")+Za+f(1060,"8pjQ")+c+f(628,"ljNd")+r[f(1041,"&HYM")](encodeURIComponent,Yd[c][f(850,"YypP")])+f(999,"&HYM")+u+(f(448,"Zbg9")+f(484,"$n0Q"))+l+f(733,"9pW6")+m+(f(667,"ZJM)")+f(527,"OZzu")+f(985,"$&ze")+f(1033,"ShO2")),{},{},r[f(467,"nwCk")]);if(!h[f(529,"#OOi")])return[];let A=h[f(431,"d&OD")][f(804,"#9Sq")];if(!A)return[];let g=[];for(let b of A){let y=r[f(703,"OZzu")](b[f(443,"ZJM)")],!0)||r[f(360,"SAtO")](b[f(343,"!SOK")],1)||r[f(922,"Fhs#")](b[f(681,"Noae")],r[f(961,"YypP")])||r[f(807,"[(4C")](b[f(288,"Z*@(")],r[f(524,"WkTr")]),x=r[f(404,"yDy^")](b[f(502,"y2dz")],!0)||r[f(965,"d&OD")](b[f(291,"lv(Z")],-6234+-1*-2705+3530)||r[f(439,"n7Q^")](b[f(748,"240S")],r[f(1055,"Wk9#")]),v=r[f(327,"nwCk")](jXt,b[f(677,"&HYM")]),C=r[f(836,"Z*@(")](b[f(762,"j0Uf")+"ry"],r[f(275,"TYG3")])||v;if(y)g[f(417,"i)7i")]({fid:b[f(311,"WkTr")],path:r[f(452,"3GMJ")](a,p,b[f(485,"j9GU")])});else if(r[f(492,"9pW6")](x,C)){if(r[f(870,"TYG3")](typeof b[f(616,"i)7i")],r[f(887,"e9rC")])&&r[f(295,"#9Sq")](b[f(975,"#*yI")],r[f(318,"2wQi")](r[f(695,"#*yI")](12788+11764*-1,4025+-1684*-5+-141*81),-1330+-1335*-1)))continue;b[f(723,"$n0Q")]=Yd[n[f(672,"[Gf!")]][f(723,"$n0Q")],b[f(890,"!SOK")]=p,s[f(480,"l#VZ")](b)}else x&&GXt[f(663,"#OOi")](R=>String(b[f(550,"e9rC")]||"")[f(921,"CJRF")](R))&&i[f(305,"y2dz")](b)}if(r[f(1080,"Fhs#")](l,Math[f(497,"d&OD")](r[f(833,"ljNd")](h[f(294,"e9rC")][f(940,"Gnm8")],m)))){let b=await r[f(455,"Noae")](o,c,u,r[f(956,"WkTr")](l,1),p);for(let y of b)A[f(462,"yDy^")](y)}for(let b of g){let y=await r[f(953,"SAtO")](o,c,b[f(929,"CJRF")],1,b[f(333,"WkTr")]);for(let x of y)A[f(811,"WkTr")](x)}return A};return await r[e(714,"y2dz")](o,n[e(891,"TYG3")],n[e(1077,"Fhs#")],-98*-7+827*12+-1*10609,""),r[e(977,"TYG3")](i[e(347,"Noae")],772*-7+4793+611)&&s[e(937,"240S")](c=>{let u=e;var l=r[u(757,"X3DF")](ml,c,i);l[u(379,"g[c@")]&&(c[u(607,"[Gf!")]=l[u(875,"n7Q^")][u(469,"Wk9#")])}),s}async function lG(t){let e=je,r={oJApC:function(s,i,a){return s(i,a)}};if(!t)return null;let n=await r[e(472,"f*1G")](eo,e(650,"X3DF")+e(604,"TYG3")+Za,{fids:[t]});return Array[e(838,"i)7i")](n?.[e(470,"i)7i")])&&n[e(286,"&HYM")][-727*-13+-4701+4750*-1]?.[e(710,"#*yI")+"rl"]?n[e(726,"nwCk")][227*-3+6373*-1+7054]:null}function lu(t,e){let r=_k();return lu=function(n,s){n=n-267;let i=r[n];if(lu.qPCXux===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h{let a=t;return console[a(397,"i)7i")](i),i[a(513,"nwCk")]||{status:500,data:{}}});return e[t(391,"#*yI")](s?.[t(279,"12Mj")],-2*629+25*-127+4633)&&e[t(1002,"iKSc")](s?.[t(647,"CJRF")]?.[t(972,"f*1G")],-7*-157+2116+-3015)&&e[t(649,"tU0H")](s?.[t(643,"OZzu")]?.[t(342,"f*1G")],0)&&s?.[t(428,"TYG3")]?.[t(529,"#OOi")]?.[t(982,"JZKQ")]||""}async function hLe(t,e,r,n){let s=je,i={PvsMM:function(l,d){return l||d},dUnBn:function(l,d){return l(d)},GtfEf:function(l){return l()},JEZmJ:function(l,d){return l||d},kABNb:s(575,"TYG3")+s(761,"YypP"),DjIHd:function(l,d){return l===d}};if(i[s(586,"3GMJ")](!t,!r)||!n||(!e&&(await i[s(558,"CJRF")](uG,{shareId:t}),e=Yd[t]?.[s(512,"yDy^")]||""),!e))return null;let a={fids:[r],fids_token:[n],pwd_id:t,stoken:e,speedup_session:""},o=await i[s(987,"i)7i")](KXt);o&&(a[s(894,"ljNd")]=o);let c=Object[s(521,"CJRF")]({Cookie:i[s(783,"y2dz")](Ac,""),"Content-Type":i[s(1079,"tU0H")]},qx),u=await he[s(1059,"j9GU")](s(949,"8pjQ")+s(602,"SAtO")+s(763,"yDy^")+s(774,"f*1G")+s(945,"ljNd")+s(746,"Gnm8")+Za,a,{headers:c})[s(1057,"WkTr")](l=>{let d=s;return console[d(595,"3GMJ")](l),l[d(270,"i)7i")]||{status:500,data:{}}});return i[s(429,"LY1j")](u?.[s(416,"WkTr")],9589*-1+1279*-4+14905)&&u?.[s(962,"12Mj")]?.[s(1074,"LY1j")]?.[-1*7603+-1*-5752+3*617]?.[s(438,"&HYM")+"rl"]?u[s(744,"3$u9")][s(316,"!SOK")][-7001+-794*4+10177]:null}async function gLe(t,e,r,n,s){let i=je,a={kqOJf:function(c,u){return c(u)},QiUwO:function(c,u){return c(u)},bpjuG:function(c,u,l){return c(u,l)},OixxX:i(842,"Gnm8"),ZKbJd:function(c,u,l,d,f){return c(u,l,d,f)},RYygP:i(855,"#*yI"),nABrE:function(c,u){return c>u},iMTEd:function(c,u){return c(u)}};if(await a[i(668,"8pjQ")](QXt,s),s){let c=Object[i(269,"3$u9")](g0);for(let u of c)delete g0[u]}if(!kh||!e&&(await a[i(635,"lv(Z")](uG,{shareId:t}),!Yd[t]))return null;let o=await a[i(414,"X3DF")](eo,i(750,"g[c@")+i(878,"i)7i")+"?"+Za,{fid_list:[r],fid_token_list:[n],to_pdir_fid:kh,pwd_id:t,stoken:e||Yd[t][i(401,"d&OD")],pdir_fid:"0",scene:a[i(450,"Noae")]});if(o[i(576,"ShO2")]&&o[i(647,"CJRF")][i(623,"9pW6")]){let c=0;for(;;){let u=await a[i(532,"$n0Q")](eo,i(1063,"d&OD")+Za+i(583,"3$u9")+o[i(675,"yDy^")][i(1038,"yDy^")]+(i(319,"!SOK")+i(554,"LY1j"))+c,{},{},a[i(514,"X3DF")]);if(u[i(428,"TYG3")]&&u[i(805,"2wQi")][i(853,"#OOi")]&&u[i(580,"240S")][i(883,"Zbg9")][i(335,"[Gf!")+i(368,"[Gf!")]&&a[i(684,"!SOK")](u[i(491,"g[c@")][i(276,"nwCk")][i(905,"j0Uf")+i(820,"240S")][i(600,"X3DF")],0))return u[i(666,"tU0H")][i(957,"12Mj")][i(685,"l#VZ")+i(770,"WkTr")][1*-5793+8328+-2535];if(c++,a[i(751,"2wQi")](c,5))break;await a[i(272,"g[c@")](Gd,1e3)}}return!1}async function ALe(t,e,r,n){let s=je,i={AGarR:function(o,c){return o===c},INrNi:s(932,"[(4C"),AljpA:function(o,c){return o(c)},vqSzx:function(o,c,u,l,d,f){return o(c,u,l,d,f)},FcSTX:function(o,c,u){return o(c,u)},ddZjf:s(704,"j9GU")+s(802,"8pjQ")+s(565,"tU0H"),IKbzf:s(967,"n7Q^")};if(i[s(609,"[(4C")](t,i[s(510,"#OOi")]))return await i[s(817,"ljNd")](zXt,r);if(!g0[r]){let o=await i[s(846,"LY1j")](gLe,t,e,r,n,!0);if(!o)return null;g0[r]=o}let a=await i[s(425,"CJRF")](eo,s(613,"Zbg9")+s(718,"SAtO")+Za,{fid:g0[r],resolutions:i[s(1073,"lv(Z")],supports:i[s(664,"f*1G")]});return a[s(767,"[(4C")]&&a[s(1021,"ljNd")][s(885,"g[c@")]?a[s(666,"tU0H")][s(823,"e9rC")]:null}async function dG(t,e,r,n,s){let i=je,a={zcsdc:function(c,u){return c===u},tlIPs:i(1019,"SAtO"),csGuO:function(c,u){return c(u)},EiPXe:function(c,u,l,d,f,p){return c(u,l,d,f,p)},ReynP:function(c,u,l){return c(u,l)}};if(a[i(570,"#9Sq")](t,a[i(976,"SAtO")]))return await a[i(964,"e9rC")](lG,r);if(!g0[r]){let c=await a[i(569,"yDy^")](gLe,t,e,r,n,s);if(!c)return null;g0[r]=c}let o=await a[i(960,"Gnm8")](eo,i(732,"#9Sq")+i(641,"CJRF")+Za,{fids:[g0[r]]});return o[i(619,"8pjQ")]?o[i(317,"Z*@(")][-3530+-49*19+4461]:null}async function YXt(t,e,r,n,s){let i=je,a={AVkfp:function(c,u){return c===u},TPQhk:i(918,"y2dz"),pEwdk:function(c,u){return c(u)},LwPcS:function(c,u,l,d,f){return c(u,l,d,f)},drNsq:function(c,u,l,d,f,p){return c(u,l,d,f,p)}};if(a[i(860,"$n0Q")](t,a[i(736,"ShO2")]))return await a[i(463,"i)7i")](lG,r);let o=await a[i(585,"[Gf!")](hLe,t,e,r,n);return o?.[i(438,"&HYM")+"rl"]?o:await a[i(731,"9pW6")](dG,t,e,r,n,s)}async function yLe(t){let e=je,r={ZPHkr:function(n,s){return n(s)},IWbyV:e(559,"#*yI")+e(701,"g[c@"),BhEeW:function(n,s){return n(s)},ZogOE:function(n,s,i){return n(s,i)},edqLC:e(912,"n7Q^")};if(r[e(662,"lv(Z")](pk,r[e(348,"SAtO")])){let n=r[e(386,"TYG3")](pLe,t);if(n){let s=await r[e(494,"12Mj")](VXt,n);return s=s[e(534,"n7Q^")](i=>{let a=e;return{vod_id:[n[a(973,"#9Sq")],i[a(706,"#OOi")],i[a(273,"Noae")],i[a(543,"ZJM)")+a(730,"#OOi")],i[a(370,"YypP")]?i[a(541,"JZKQ")][a(799,"i)7i")]:"",i[a(332,"iKSc")]?i[a(606,"nwCk")][a(813,"l#VZ")+a(538,"!SOK")]:""][a(812,"2wQi")]("*"),vod_name:i[a(1004,"X3DF")],vod_size:i[a(660,"2wQi")],vod_group:i[a(749,"YypP")]}}),r[e(693,"$&ze")](Os,await r[e(542,"Z*@(")](dLe,r[e(934,"9pW6")]),s)}else return{}}}var Ek={},Lh={},lLe={},sG=(-8125+-2*2281+13711)*(6205*-1+-35*-37+5422),fG=(1*-2969+-733*-1+-652*-5)*(6088+2*-2916);function oG(){let t=je;return(globalThis[t(837,"f*1G")]||[])[t(381,"f*1G")](r=>r[t(914,"l#VZ")]===t(800,"(kco"))||{}}function JXt(t){let e=je,r={jAmZW:function(n,s){return n=s},uVPgb:function(n,s){return n===s},KCpJV:function(n,s){return n===s},wWeVQ:function(n,s){return n===s},TKmnk:function(n,s){return n===s},YQjKK:function(n,s){return n===s},EcuHj:e(935,"YypP"),PkJCY:function(n,s){return n===s},VCOjz:e(313,"JZKQ"),waqSx:function(n,s){return n===s},KOYGI:e(1009,"f*1G"),UGCBP:e(282,"CJRF"),AwBlu:function(n,s){return n===s},sOLpM:e(821,"#OOi"),Lmike:function(n,s){return n===s},Zslfa:function(n,s){return n===s}};if(!t||r[e(966,"OZzu")](t[e(678,"Fhs#")],1*-3863+-1024+-4891*-1))return!1;if(r[e(801,"8pjQ")](t[e(612,"n7Q^")],-5093+3*517+3550)&&r[e(582,"n7Q^")](t[8911+53*83+-13310],-2*-3448+265*-19+-1724)&&r[e(415,"X3DF")](t[-16808+-3*-5603],577*-3+1587+7*32)&&r[e(563,"ShO2")](t[4253*-1+-6301+-28*-377],283*-10+1*-6791+9699)&&r[e(1030,"$n0Q")](t[-55*-106+8692+-14519],-8299+-2*-816+6738)&&r[e(815,"2wQi")](t[4],17723+-1771*10)&&r[e(943,"nwCk")](t[6605+6600*-1],4477+1*-3387+-1080)&&r[e(859,"Fhs#")](t[8249+-5*1202+2233*-1],26)&&r[e(519,"OZzu")](t[7565+8*32+2*-3907],-18607+-1*-18617)||r[e(745,"240S")](t[3*-1041+5125+-2002],545*1+-41*-219+-9269)&&r[e(430,"[Gf!")](t[-745*5+-3*-953+51*17],39*91+-2908+-425)&&r[e(306,"n7Q^")](t[-4723*2+3573+5875],37*-131+3*-547+6743))return!0;if(r[e(615,"(kco")](t[e(608,"#*yI")],6)){let n=t[e(328,"lv(Z")](0,6)[e(1027,"JZKQ")](r[e(719,"8pjQ")]);if(r[e(993,"$&ze")](n,r[e(702,"i)7i")])||r[e(851,"e9rC")](n,r[e(669,"ShO2")]))return!0}return r[e(742,"YypP")](t[e(600,"X3DF")],11941+151*-79)&&r[e(789,"3$u9")](t[e(478,"[(4C")](17*-317+-3884*-2+-2379,-7942+-3761*-2+53*8)[e(832,"#9Sq")](r[e(560,"SAtO")]),r[e(826,"2wQi")])&&r[e(460,"JZKQ")](t[e(908,"#9Sq")](-3*168+-2847*-1+1*-2335,3*-3183+-9446+-1*-19007)[e(880,"n7Q^")](r[e(509,"[Gf!")]),r[e(886,"ljNd")])?!0:r[e(705,"ShO2")](t[0],-15059+-25*-605)&&r[e(349,"ljNd")](t[-39*94+7369+1*-3702],-9292*1+-7394+16763*1)}function XXt(t){let e=je,r={EHNBr:function(s,i){return s-i},vQMWz:function(s,i){return s+i},zjEgn:function(s,i){return s<=i},YFRvR:function(s,i){return s===i},lLNrA:function(s,i){return s===i},LlGUD:function(s,i){return s+i},XCfLD:function(s,i){return s===i},jJSbj:function(s,i){return s>=i}},n=Math[e(947,"l#VZ")](r[e(769,"[(4C")](t[e(445,"3GMJ")],5188+-20*259),r[e(341,"3$u9")](fG,-2067*1+-1663*-1+4500));for(let s=1*-2823+699*-13+-11911*-1;r[e(911,"Zbg9")](s,n);s++)if(r[e(974,"[Gf!")](t[r[e(490,"d&OD")](s,1679+-25*67)],119*17+1851+46*-82)&&r[e(954,"&HYM")](t[r[e(834,"3$u9")](s,-2735*2+9936+-4461)],-383*-10+-749*11+4525)&&r[e(892,"9pW6")](t[r[e(392,"JZKQ")](s,-7907+-41*-193)],8577+-1*8737+1*281)&&r[e(780,"lv(Z")](t[r[e(808,"240S")](s,1877*3+8413*-1+2789)],-1*2174+-3449+-1*-5735)){let i=t[e(865,"n7Q^")+"BE"](s);if(r[e(1015,"Noae")](i,9494*-1+5*1034+4*1083))return s}return-(-1*8247+-15*237+11803)}function ZXt(t){let e=je,r={mxZXq:e(734,"tU0H"),QEQdD:function(i,a){return i>a},nZTSw:function(i,a){return i<=a},BItfr:function(i,a){return i+a},ROUhI:function(i,a){return i===a},ABXkX:e(691,"ShO2"),Sqswm:e(283,"n7Q^"),WbGMr:function(i,a){return i+a}},n=Buffer[e(698,"X3DF")](r[e(338,"8pjQ")]),s=t[e(927,"240S")](n,1*4607+-2121*3+251*7);for(;r[e(673,"ljNd")](s,9042+-8347*1+695*-1);){if(r[e(457,"Wk9#")](r[e(1053,"$n0Q")](s,-7055+-2*-2883+1301),t[e(700,"TYG3")])&&r[e(938,"JZKQ")](t[e(1039,"3GMJ")](r[e(776,"(kco")](s,1387+1504*5+-8899),r[e(525,"lv(Z")](s,-227*-14+-1*-7559+-10725))[e(382,"ShO2")](r[e(611,"2wQi")]),r[e(854,"2wQi")]))return s;s=t[e(441,"YypP")](n,r[e(1071,"9pW6")](s,-2293*-4+-102*64+2643*-1))}return-(8986*-1+7*1094+1329)}function eZt(t){let e=je,r={iFAKc:function(s,i){return s-i},ouKNw:function(s,i){return s+i},YHtFY:function(s,i){return s<=i},IYsQY:function(s,i){return s===i},XVnVX:function(s,i){return s===i},wmdRH:function(s,i){return s+i},eySDQ:function(s,i){return s===i}},n=Math[e(473,"d&OD")](r[e(819,"TYG3")](t[e(928,"d&OD")],67*103+9538+16063*-1),r[e(488,"X3DF")](fG,8149+-21*113+-5588));for(let s=-45*-27+-35+3*-393;r[e(1040,"d&OD")](s,n);s++)if(r[e(727,"Noae")](t[s],4797*-2+61*-73+6*2353)&&r[e(592,"f*1G")](t[r[e(936,"#*yI")](s,4269+-26*233+1977*1)],-1*-4468+9845+-14242)&&r[e(475,"Wk9#")](t[r[e(831,"yDy^")](s,376)],6947+6876*-1))return s;return-1}function tZt(t){let e=je,r={AVTDC:function(i,a){return i(a)},LPkLu:function(i,a){return i(a)},ElCRe:e(1042,"OZzu"),LeeRg:function(i,a){return i<=a},KTera:function(i,a){return i>a}};if(!r[e(657,"TYG3")](JXt,t))return 0;let n=[r[e(917,"ZJM)")](XXt,t),t[e(720,"Wk9#")](Buffer[e(402,"CJRF")](r[e(361,"lv(Z")]),1),t[e(798,"$&ze")](Buffer[e(345,"l#VZ")]([3797+3*-1257,49*-52+3*2194+1*-3965,-331*29+2234+7588,-44*-174+-677+-284*24]),-1*-4355+-1*-269+-4623*1),r[e(873,"12Mj")](ZXt,t),r[e(787,"&HYM")](eZt,t)][e(302,"WkTr")](i=>Number[e(984,"$n0Q")](i)&&i>-7451+610*-8+12331);if(!n[e(1028,"240S")])return 1*725+-7674+6949;let s=Math[e(508,"12Mj")](...n);return r[e(818,"ZJM)")](s,8611+-1362*-7+-18145)||r[e(711,"n7Q^")](s,fG)?1871*4+58*-121+-466:s}async function rZt(t){let e=je,r={Qyzqm:e(713,"&HYM")+"r",gMAgW:function(a,o){return a*o},DMEnH:function(a,o){return a+o},gkydC:function(a,o){return a||o},EJpBP:function(a,o){return a-o},FnIvE:function(a,o){return a(o)},msjWh:function(a,o){return a>o},SFMCF:function(a,o){return a>o}};if(!t)return{isMasked:!1,skipBytes:0};let n=await he[e(768,"Noae")](t,{responseType:r[e(378,"(kco")],timeout:r[e(688,"Wk9#")](-4*-1412+451*12+-10060,2564+18*-142),maxContentLength:r[e(1001,"tU0H")](sG,-93*2+7860+-6650),maxBodyLength:r[e(1001,"tU0H")](sG,-2445+119*-17+5492),headers:Object[e(340,"#*yI")]({Cookie:r[e(997,"l#VZ")](Ac,""),Range:e(339,"Z*@(")+r[e(350,"yDy^")](sG,-4521+-977*6+8*1298)},qx)})[e(670,"8pjQ")](a=>{let o=e;return console[o(312,"$n0Q")](a),a[o(590,"X3DF")]||null});if(!n||!n[e(303,"l#VZ")])return{isMasked:!1,skipBytes:0};let s=Buffer[e(1066,"OZzu")](n[e(647,"CJRF")])?n[e(369,"j0Uf")]:Buffer[e(796,"[Gf!")](n[e(638,"9pW6")]),i=r[e(466,"#OOi")](tZt,s);return{isMasked:r[e(330,"j0Uf")](i,321+413*8+-125*29),skipBytes:r[e(500,"i)7i")](i,-12527+-12527*-1)?i:-81*-108+-8249+-499}}async function cG(t,e){let r=je,n={yLyzN:function(o,c){return o||c},kvFka:function(o,c){return o===c},mpMdG:function(o,c){return o(c)}};if(n[r(903,"Wk9#")](!t,!e))return{isMasked:!1,skipBytes:0};let s=lLe[t];if(s&&n[r(444,"i)7i")](s[r(410,"JZKQ")],e))return s;let i=await n[r(405,"YypP")](rZt,e),a={downUrl:e,isMasked:n[r(366,"ljNd")](i[r(1045,"ZJM)")],!0),skipBytes:i[r(909,"SAtO")]||-9379+770*-10+-5693*-3};return lLe[t]=a,a}async function Sk(t,e){let r=je,n={gFKwU:function(c,u){return c(u)},KHMQB:function(c,u){return c==u},lexag:r(531,"2wQi"),GXCKN:function(c,u){return c==u},oYuXL:r(708,"#9Sq"),HIIlb:function(c,u,l,d,f){return c(u,l,d,f)},aymWw:function(c,u){return c(u)},YhhQA:function(c){return c()},qaIdy:function(c,u){return c===u},BjyyT:function(c,u,l,d,f,p){return c(u,l,d,f,p)},deyeU:function(c,u){return c(u)},ueJlj:r(759,"f*1G"),MQTUr:function(c,u,l,d,f,p){return c(u,l,d,f,p)},HoEos:function(c,u){return c(u)},ySkCW:r(301,"&HYM")+r(507,"&HYM"),CSCna:function(c,u){return c==u},GKdmK:r(540,"(kco"),vvzMa:function(c,u,l){return c(u,l)},aZxIN:function(c,u){return c==u},OBcUV:function(c,u,l,d,f,p,m){return c(u,l,d,f,p,m)},EjBPu:function(c,u){return c*u},CJOrV:function(c,u){return c*u}};await n[r(421,"YypP")](kv,t);let s=t[r(792,"ShO2")][r(477,"9pW6")],i=t[r(676,"#*yI")][r(588,"iKSc")],a=t[r(310,"n7Q^")][r(551,"(kco")],o=t[r(579,"(kco")][r(803,"Z*@(")];if(n[r(899,"l#VZ")](s,n[r(504,"e9rC")])){let c="",u=o[r(453,"[(4C")]("*"),l=t[r(990,"j9GU")][r(496,"j9GU")];if(n[r(785,"i)7i")](i,n[r(584,"SAtO")])){!Ek[u[-33*191+-9384+15688]]&&(Ek[u[-9879+241*37+963]]=(await n[r(694,"3$u9")](ALe,a,n[r(535,"9pW6")](decodeURIComponent,u[-4871+-6*1534+25*563]),u[4033*2+-7326*-1+-1*15391],u[-2*-3817+-7834+101*2]))[r(396,"n7Q^")](A=>A[r(1047,"8pjQ")])),c=Ek[u[-7815+5*-669+11161]][r(915,"CJRF")](A=>A[r(881,"Gnm8")][r(633,"e9rC")+"e"]()==l)[-835*-1+6202+-1*7037][r(571,"i)7i")][r(847,"tU0H")],e[r(725,"f*1G")](c);return}else{let A=n[r(398,"$n0Q")](oG),g=n[r(309,"CJRF")](A[r(879,"#*yI")],!0);if(!Lh[u[-1889*2+-7677+-2*-5728]]){let b=g?await n[r(636,"Gnm8")](YXt,a,n[r(271,"n7Q^")](decodeURIComponent,u[0]),u[1],u[2],n[r(314,"&HYM")](l,n[r(639,"$n0Q")])):await n[r(546,"n7Q^")](dG,a,n[r(598,"!SOK")](decodeURIComponent,u[0]),u[1],u[2],n[r(944,"$n0Q")](l,n[r(329,"#9Sq")]));b?.[r(384,"Zbg9")+"rl"]&&(Lh[u[-961*10+-541+-8*-1269]]=b)}if(c=Lh[u[-8921+-93*-10+9*888]]?.[r(495,"e9rC")+"rl"],!c){e[r(1070,"tU0H")](648*-2+-1*-4803+1*-3007),e[r(840,"e9rC")](n[r(493,"i)7i")]);return}if(n[r(280,"ZJM)")](l,n[r(652,"e9rC")])){e[r(324,"2wQi")](c);return}}let d=n[r(724,"8pjQ")](oG),f=d[r(289,"3GMJ")]||-6636+-604*-1+6544,p=d[r(400,"f*1G")]||-11*102+1*9511+-133*63,m=await n[r(409,"g[c@")](cG,u[-1*-6421+-1055*-1+-7475],c),h=m[r(358,"240S")]&&n[r(1007,"ZJM)")](l,n[r(278,"g[c@")])?m[r(617,"#*yI")]:165*-25+-5931+8*1257;return await n[r(499,"g[c@")](Wx,t,e,c,u[-12460+733*17],Object[r(864,"g[c@")]({Cookie:Ac},qx),{chunkSize:n[r(989,"$n0Q")](-27*-201+1*5559+2*-4981,f),poolSize:p,timeout:n[r(998,"12Mj")](11679+59*-181,-1*-9879+-2724+-5*1429),skipBytes:h})}}async function vk(t,e){let r=je,n={HFONW:function(c,u){return c(u)},RTwCI:function(c,u){return c(u)},MnrvB:function(c,u){return c(u)},UaWlf:function(c,u){return c(u)},Dqlpu:r(655,"yDy^"),ioqXy:function(c,u){return c+u},yKaaQ:function(c,u){return c+u},yWKMs:r(334,"TYG3")+"rk",ZBpBN:function(c){return c()},UZdSg:function(c,u){return c===u},wJexX:r(557,"3$u9"),bwcBv:function(c,u,l,d,f){return c(u,l,d,f)},EIhrw:function(c,u,l){return c(u,l)},bjCHJ:function(c,u,l,d,f,p){return c(u,l,d,f,p)},rfqiD:function(c,u,l){return c(u,l)},hJJBh:function(c,u,l,d,f){return c(u,l,d,f)},zNvjz:r(399,"CJRF"),QsCWY:r(578,"Fhs#"),qLHJG:r(449,"j0Uf"),UZlyo:r(777,"9pW6"),ccode:function(c){return c()}};await n[r(406,"X3DF")](kv,t);let s=t[r(970,"X3DF")][r(1049,"8pjQ")],i=t[r(299,"3GMJ")].id,a=i[r(690,"&HYM")]("*"),o=-3873+-1291*-3;if(s[r(983,"y2dz")](await n[r(523,"Z*@(")](dLe,n[r(587,"2wQi")]))){let c=n[r(591,"3GMJ")](n[r(958,"d&OD")](n[r(810,"$&ze")](HXt,t),t[r(1025,"#9Sq")][r(791,"#OOi")]),n[r(530,"l#VZ")]),u={parse:0,url:[],header:Object[r(971,"yDy^")]({Cookie:Ac},qx)};a[6190+-65*-131+14701*-1]&&(u[r(979,"l#VZ")]={subt:c+r(373,"SAtO")+a[-1062*8+-2487+-21*-523]+"/"+n[r(1054,"LY1j")](encodeURIComponent,a[-1*-4021+1583*-2+-854])+"*"+a[-277*-11+-1310+1*-1733]+"*"+a[147*-53+-1752+9548]+r(574,"$&ze")});let l=n[r(308,"#9Sq")](oG),d=n[r(959,"12Mj")](l[r(913,"(kco")],!0),f=u[r(464,"Zbg9")],p=()=>{let y=r;f[y(462,"yDy^")]("\u4EE3\u7406"),f[y(1067,"3$u9")](c+y(572,"Zbg9")+a[0]+"/"+n[y(322,"ShO2")](encodeURIComponent,a[-4140+837*-2+5815*1])+"*"+a[2]+"*"+a[-6898+-4505*-2+-3*703]+y(766,"TYG3"))},m=()=>{let y=r;f[y(284,"ZJM)")]("\u4EE3\u7406"),f[y(930,"OZzu")](c+y(946,"Gnm8")+a[-9576+3*737+7365]+"/"+n[y(1069,"l#VZ")](encodeURIComponent,a[8215+-183*-50+-5788*3])+"*"+a[-250*37+-5472*-1+-21*-180]+"*"+a[2*-776+6*1599+-8039]+y(553,"Fhs#")),f[y(417,"i)7i")]("\u539F\u753B"),f[y(1012,"Zbg9")](c+(y(503,"TYG3")+y(627,"12Mj"))+a[-271*-2+-1*5164+4622]+"/"+n[y(857,"!SOK")](encodeURIComponent,a[1])+"*"+a[3*-1852+-8250+13808]+"*"+a[-923*1+-31*31+1887]+y(788,"9pW6"))};if(d){let y=n[r(1058,"$&ze")](a[0],n[r(281,"[Gf!")])?await n[r(901,"#OOi")](lG,a[2]):await n[r(692,"l#VZ")](hLe,a[0],a[1],a[2],a[3]);if(y?.[r(948,"OZzu")+"rl"])return Lh[a[-28+-1*-6163+-1*6133]]=y,(await n[r(304,"yDy^")](cG,a[418+6*1492+-9368],y[r(942,"[Gf!")+"rl"]))[r(889,"ShO2")]?(n[r(877,"JZKQ")](p),u):(n[r(665,"(kco")](m),u)}if(!Lh[a[-445*1+-1*-2780+-1*2333]]){let y=await n[r(1075,"Fhs#")](dG,a[0],a[1],a[2],a[3],!1);y?.[r(438,"&HYM")+"rl"]&&(Lh[a[-1427*-5+7113+-14246]]=y)}let h=Lh[a[2]]?.[r(793,"9pW6")+"rl"];if(h&&(await n[r(594,"3GMJ")](cG,a[2],h))[r(596,"e9rC")])return n[r(716,"l#VZ")](p),u;let A=(await n[r(353,"lv(Z")](ALe,a[4*-743+9846+1*-6874],a[-2850+1*2851],a[-397*-17+-1904+-1*4843],a[7057*-1+-1*7207+-1*-14267])||[])[r(614,"g[c@")](y=>y[r(268,"3GMJ")]);Ek[a[-1*8051+-9424+17477]]=A;let g=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],b=["4k","2k",n[r(924,"[(4C")],n[r(321,"2wQi")],n[r(544,"3GMJ")],n[r(978,"yDy^")]];return n[r(895,"3$u9")](m),A[r(411,"ShO2")](y=>{let x=r;o=b[x(686,"OZzu")](y[x(320,"[Gf!")]),f[x(526,"JZKQ")](g[o]),f[x(848,"tU0H")](c+x(618,"OZzu")+y[x(771,"ShO2")][x(1e3,"&HYM")+"e"]()+"/"+a[3663+-1054*3+-501]+"/"+n[x(1048,"Gnm8")](encodeURIComponent,a[5*-1165+-3*2572+-2257*-6])+"*"+a[2]+"*"+a[4127+28*130+-1*7764]+x(994,"#OOi"))}),u}}var bl=Re(Jn(),1);var R4e=Re(v0(),1),Xd=Re(Jn(),1);var $k="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Vv={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},w4e={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},ytr=async t=>{let e=Xd.default.enc.Hex.stringify(Xd.default.MD5(t.config.uc.cookie)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},xtr=async(t,e)=>{let r=Xd.default.enc.Hex.stringify(Xd.default.MD5(t.config.uc.cookie)).toString();await t.db.push(`/uc/${r}`,e)},nV=async t=>{let e=Xd.default.enc.Hex.stringify(Xd.default.MD5(t.config.uc.ut)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},sV=async(t,e)=>{let r=Xd.default.enc.Hex.stringify(Xd.default.MD5(t.config.uc.ut)).toString();await t.db.push(`/uc/${r}`,e)};async function iV(t){t.get("/qrcode",async(r,n)=>{try{let s=await Ae.get(`https://api.open.uc.cn/cas/ajax/getTokenForQrcodeLogin?client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":$k,referer:"https://drive.uc.cn"}}),i=s.data.data.members.token,a=hl(s.headers["set-cookie"]),o=w4e.encode({token:i,cookies:a}),c=`https://su.uc.cn/1_n0ZCv?uc_param_str=dsdnfrpfbivesscpgimibtbmnijblauputogpintnwktprchmt&token=${i}&client_id=381&uc_biz_str=S%3Acustom%7CC%3Atitlebar_fix`,u=await R4e.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("UC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=w4e.decode(s);if(!i)return n.send({code:0,data:{status:Vv.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await Ae.get(`https://api.open.uc.cn/cas/ajax/getServiceTicketByQrcodeToken?__t=${Date.now()}&token=${a}&client_id=381&v=1.2&request_id=${Date.now()}`,{headers:{"User-Agent":$k}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:Vv.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:Vv.EXPIRED}}):n.send({code:0,data:{status:Vv.NEW}})}catch(c){console.error("UC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:Vv.NEW}})}});async function e(r,n){let s=[...n],i=await Ae.get(`https://drive.uc.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":$k,Cookie:s.join(""),referer:"https://drive.uc.cn"}});i.headers["set-cookie"]&&(s=s.concat(hl(i.headers["set-cookie"])));let a=await Ae.post("https://pc-api.uc.cn/1/clouddrive/transfer/upload/pdir?pr=UCBrowser&fr=pc",{},{headers:{"User-Agent":$k,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(hl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await ytr(r.server)})}),t.put("/cookie",async(r,n)=>{await xtr(r.server,r.body.cookie),n.send({code:0})}),t.get("/ut",async(r,n)=>{n.send({code:0,data:await nV(r.server)})}),t.put("/ut",async(r,n)=>{await sV(r.server,r.body.ut),n.send({code:0})})}var bc={DeviceID:"07b48aaba8a739356ab8107b5e230ad4",RefreshToken:"",AccessToken:""},Cs={api:"https://open-api-drive.uc.cn",clientID:"5acf882d27b74502b7040b0c65519aa7",signKey:"l3srvtd7p42l0d0x1u8d7yc8ye9kki4d",appVer:"1.6.8",channel:"UCTVOFFICIALWEB",codeApi:"http://api.extscreen.com/ucdrive"};function D4e(t){return String(t||"").split(",")[0].trim()}function N4e(t){return D4e(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function btr(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=N4e(t?.headers?.["x-forwarded-host"])||N4e(t?.headers?.host);if(!n)return e;let s=D4e(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function Etr(t){return bl.default.MD5(t).toString().slice(0,16)}function Kv(t,e){return bl.default.MD5(t+e).toString().slice(0,16)}function jk(t,e,r,n){let s=t+"&"+e+"&"+r+"&"+n;return bl.default.SHA256(s).toString()}function k4e(t){let r=/https:\/\/drive\.uc\.cn\/s\/([^\\|#/?]+)/.exec(t);return r?{shareId:r[1],folderId:"0"}:null}var El="pr=UCBrowser&fr=pc",cV={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) uc-cloud-drive/2.5.20 Chrome/100.0.4896.160 Electron/18.3.5.4-b478491100 Safari/537.36 Channel/pckk_other_ch",Referer:"https://drive.uc.cn"},zv=null,Uk=null,oV="https://pc-api.uc.cn/1/clouddrive/",Zd="",uV="",L4e="",C0={},O4e="CatVodOpen",qh=null,Fk="";async function B4e(t){zv=t.server.db;let e=t.server.config.uc;Zd=e.cookie,Uk=bl.default.enc.Hex.stringify(bl.default.MD5(e.cookie)).toString(),uV=bl.default.enc.Hex.stringify(bl.default.MD5(e.token)).toString(),L4e=bl.default.enc.Hex.stringify(bl.default.MD5(e.ut)).toString();let r=await zv.getObjectDefault("/uc",{});if(r[Uk]&&(Zd=r[Uk]),Fk=await nV(t.server),!Fk)try{await he.get(`${oV}/file`)}catch(n){n?.response?.data?.length&&(Fk=n.response.data,sV(t.server,Fk))}}async function fu(t,e,r,n,s){r=r||{},Object.assign(r,cV),Object.assign(r,{Cookie:Zd||""}),n=n||"post";let i=n=="get"?await he.get(`${oV}/${t}`,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),o.response||{status:500,data:{}})):await he.post(`${oV}/${t}`,e,{headers:r}).catch(o=>(console.error(o),o?.response?.status===401&&messageToDart({action:"toast",opt:{message:"UC token\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),o.response||{status:500,data:{}})),a=s||3;if(i.headers["set-cookie"]){let o=i.headers["set-cookie"].join(";;;").match(/__puus=([^;]+)/);o&&Zd.match(/__puus=([^;]+)/)[1]!=o[1]&&(Zd=Zd.replace(/__puus=[^;]+/,`__puus=${o[1]}`),await zv.push(`/uc/${Uk}`,Zd))}return i.status===429&&a>0?(await Gd(1e3),await fu(t,e,r,n,a-1)):i.data||{}}async function P4e(){let t=await fu(`file/sort?${El}&pdir_fid=${qh}&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(t.data&&t.data.list&&t.data.list.length>0){let e=await fu(`file/delete?${El}`,{action_type:2,filelist:t.data.list.map(r=>r.fid),exclude_fids:[]});console.log(e)}}async function _tr(t){if(qh){t&&await P4e();return}let e=await fu(`file/sort?${El}&pdir_fid=0&_page=1&_size=200&_sort=file_type:asc,updated_at:desc`,{},{},"get");if(e.data&&e.data.list){for(let r of e.data.list)if(r.file_name===O4e){qh=r.fid,await P4e();break}}if(!qh){let r=await fu(`file?${El}`,{pdir_fid:"0",file_name:O4e,dir_path:"",dir_init_lock:!1});console.log(r),r.data&&r.data.fid&&(qh=r.data.fid)}}async function M4e(t){if(!C0[t.shareId]){delete C0[t.shareId];let e=await fu(`share/sharepage/token?${El}`,{pwd_id:t.shareId,passcode:t.sharePwd||""});e.data&&e.data.stoken&&(C0[t.shareId]=e.data)}}var Str=[".srt",".ass",".scc",".stl",".ttml"];async function vtr(t){let e=typeof t=="string"?k4e(t):t;if(!e)return[];if(await M4e(e),!C0[e.shareId])return[];let r=[],n=[],s=(a,o)=>a?`${a}/${o}`:o,i=async function(a,o,c,u){let l=u||"",d=100;c=c||1;let f=await fu(`share/sharepage/detail?${El}&pwd_id=${a}&stoken=${encodeURIComponent(C0[a].stoken)}&pdir_fid=${o}&force=0&_page=${c}&_size=${d}&_sort=file_type:asc,file_name:asc`,{},{},"get");if(!f.data)return[];let p=f.data.list;if(!p)return[];let m=[];for(let h of p)if(h.dir===!0)m.push({fid:h.fid,path:s(l,h.file_name)});else if(h.file===!0&&h.obj_category==="video"){if(h.size<1024*1024*5)continue;h.stoken=C0[e.shareId].stoken,h.vod_group=l,r.push(h)}else h.type==="file"&&Str.some(A=>h.file_name.endsWith(A))&&n.push(h);if(c0&&r.forEach(a=>{var o=ml(a,n);o.bestMatch&&(a.subtitle=o.bestMatch.target)}),r}var ef={};async function W4e(t,e,r,n,s){if(await _tr(s),s){let a=Object.keys(ef);for(let o of a)delete ef[o]}if(!qh||!e&&(await M4e({shareId:t}),!C0[t]))return null;let i=await fu(`share/sharepage/save?${El}`,{fid_list:[r],fid_token_list:[n],to_pdir_fid:qh,pwd_id:t,stoken:e||C0[t].stoken,pdir_fid:"0",scene:"link"});if(i.data&&i.data.task_id){let a=0;for(;;){let o=await fu(`task?${El}&task_id=${i.data.task_id}&retry_index=${a}`,{},{},"get");if(o.data&&o.data.save_as&&o.data.save_as.save_as_top_fids&&o.data.save_as.save_as_top_fids.length>0)return o.data.save_as.save_as_top_fids[0];if(a++,a>5)break;await Gd(1e3)}}return!1}async function $4e(t,e,r,n){if(!ef[r]){let i=await W4e(t,e,r,n,!0);if(!i)return null;ef[r]=i}let s=await fu(`file/v2/play?${El}`,{fid:ef[r],resolutions:"normal,low,high,super,2k,4k",supports:"fmp4"});return s.data&&s.data.video_list?s.data.video_list:null}async function Ctr(t,e,r,n,s){if(!ef[r]){let c=await W4e(t,e,r,n,s);if(!c)return null;ef[r]=c}let i=await zv.getObjectDefault("/uc",{}),a=i[uV],o=i[L4e];if(a){let c=[],u="/file",l=Math.floor(Date.now()/1e3).toString()+"000",d=bc.DeviceID||Etr(l),f=Kv(d,l),p=jk("GET",u,l,Cs.signKey),m={method:"GET",url:"https://open-api-drive.uc.cn/file",params:{req_id:f,access_token:a,app_ver:Cs.appVer,device_id:d,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Cs.channel,method:"streaming",group_by:"source",fid:ef[r],resolution:"low,normal,high,super,2k,4k",support:"dolby_vision"},headers:{"User-Agent":"Mozilla/5.0 (Linux; U; Android 9; zh-cn; RMX1931 Build/PQ3A.190605.05081124) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1",Connection:"Keep-Alive","Accept-Encoding":"gzip","x-pan-tm":l,"x-pan-token":p,"content-type":"text/plain;charset=UTF-8","x-pan-client-id":Cs.clientID}},h=await Ae.request(m);if(h.status===200){let A=h.data.data.video_info.filter(g=>g.accessable)[0];return A.download_url=A.url,A}}else{let c=`file/download?${El}`;o&&(c+=`&ut=${o}`);let u=await fu(c,{fids:[ef[r]]});if(u.data)return u.data[0]}return null}async function F4e(t){if(mk(t)){let e=k4e(t);if(e){let r=await vtr(e);return r=r.map(n=>({vod_id:[e.shareId,n.stoken,n.fid,n.share_fid_token,n.subtitle?n.subtitle.fid:"",n.subtitle?n.subtitle.share_fid_token:""].join("*"),vod_name:n.file_name,vod_size:n.size,vod_group:n.vod_group})),Os(getPanName("uc"),r)}else return{}}}var qk={},aV={};async function U4e(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId;if(await B4e(t),r=="uc"){let a="",o=i.split("*"),c=t.params.flag;if(n=="trans"){qk[o[1]]||(qk[o[1]]=(await $4e(s,decodeURIComponent(o[0]),o[1],o[2])).filter(p=>p.accessable)),a=qk[o[1]].filter(p=>p.resolution.toLowerCase()==c)[0].video_info.url,e.redirect(a);return}else{if(!aV[o[1]]){let p=await Ctr(s,decodeURIComponent(o[0]),o[1],o[2],c=="down");p&&(aV[o[1]]=p)}if(a=aV[o[1]].download_url,c=="redirect"){e.redirect(a);return}}let l=(globalThis.Pans||[]).find(p=>p.key==="uc")||{},d=l.chunkSize||512,f=l.poolSize||10;return await Wx(t,e,a,o[1],Object.assign({Cookie:Zd},cV),{chunkSize:1024*d,poolSize:f,timeout:1e3*10})}}async function q4e(t,e){let r=t.body.flag,s=t.body.id.split("*");await B4e(t);let i=0;if(r.startsWith(getPanName("uc"))){let a=(await $4e(s[0],s[1],s[2],s[3])).filter(A=>A.accessable);qk[s[2]]=a;let o=[],c=["\u8D85\u6E05","\u84DD\u5149","\u9AD8\u6E05","\u6807\u6E05","\u666E\u753B","\u6781\u901F"],u=["4k","2k","super","high","low","normal"],l=btr(t)+t.server.prefix+"/proxy/uc",f=(await zv.getObjectDefault("/uc",{}))[uV],p=["\u4EE3\u7406",`${l}/src/down/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`],m=["\u539F\u753B",`${l}/src/redirect/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.bin`];f?o.push(...m,...p):o.push(...p,...m);let h={parse:0,url:o,header:Object.assign({Cookie:Zd},cV)};return f&&(h.header=void 0),s[3]&&(h.extra={subt:`${l}/src/subt/${s[0]}/${encodeURIComponent(s[1])}*${s[4]}*${s[5]}/.bin`}),a.forEach(A=>{i=u.indexOf(A.resolution),o.push(c[i]),o.push(`${l}/trans/${A.resolution.toLowerCase()}/${s[0]}/${encodeURIComponent(s[1])}*${s[2]}*${s[3]}/.mp4`)}),h}}var Gh=Re(nC(),1),c6e=Re(QMe(),1),N0=Re(require("crypto"),1);var kV,tb={},w0={set(t,e){tb[t]=e,kV.push(`/tyi/${t}`,e)},get(t){return tb[t]}},GMe=(t,e={})=>{let r=e.method||"GET",n=e.headers||{};return Ae({method:r,url:t,headers:n,transformResponse:[s=>s]}).then(s=>({ok:s.status===200,status:s.status,statusText:s.statusText,url:s.config.url,text:()=>Promise.resolve(s.data),json:()=>Promise.resolve(JSON.parse(s.data)),headers:s.headers})).catch(s=>s.response?{ok:!1,status:s.response.status,statusText:s.response.statusText,url:s.config.url,text:()=>Promise.resolve(s.response.data),json:()=>Promise.resolve(JSON.parse(s.response.data)),headers:s.response.headers}:s.request?{ok:!1,status:0,statusText:"No response received",text:()=>Promise.resolve(""),json:()=>Promise.reject(new Error("No response received"))}:Promise.reject(s))},LV=(0,c6e.default)({storeAsString:!0}),onr=(t,e)=>t?`${t}/${e}`:e,VMe="video",sL="cas",cnr=new Set([sL]),unr=new Set(["mp4","m4v","mkv","avi","mov","flv","ts","m2ts","m3u8","mpd","webm","wmv","rmvb","rm","f4v","m4s"]),zMe="02",tL="8025431004",KMe="10020",lnr="6.2",sC="https://cloud.189.cn",iC="https://open.e.189.cn",Qi="https://api.cloud.189.cn",rL="https://upload.cloud.189.cn",YMe="https://m.cloud.189.cn/zhuanti/2020/loginErrorPc/index.html",dnr="web_cloud.189.cn",Ec={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"},nL="MyCatPaw",OV={"User-Agent":Ec["User-Agent"],Accept:"text/plain,application/json;charset=UTF-8,*/*","Accept-Encoding":Ec["Accept-Encoding"]},fnr=new Set(["UNABLE_TO_VERIFY_LEAF_SIGNATURE","UNABLE_TO_VERIFY_FIRST_CERTIFICATE","SELF_SIGNED_CERT_IN_CHAIN","DEPTH_ZERO_SELF_SIGNED_CERT","CERT_HAS_EXPIRED","ERR_TLS_CERT_ALTNAME_INVALID"]);function pnr(t){let e=new Map;return String(t||"").split(";").map(r=>r.trim()).filter(Boolean).forEach(r=>{let n=r.indexOf("=");if(n<=0)return;let s=r.slice(0,n).trim(),i=r.slice(n+1).trim();s&&e.set(s,i)}),e}function PV(t,e){let r=pnr(t);return(Array.isArray(e)?e:e?[e]:[]).forEach(s=>{let i=String(s||"").split(";")[0].trim();if(!i)return;let a=i.indexOf("=");if(a<=0)return;let o=i.slice(0,a).trim(),c=i.slice(a+1).trim();o&&r.set(o,c)}),Array.from(r.entries()).map(([s,i])=>`${s}=${i}`).join("; ")}function JMe(){return{clientType:"TELEPC",version:lnr,channelId:dnr,rand:`${Math.floor(Math.random()*1e5)}_${Math.floor(Math.random()*1e10)}`}}function mnr(t){let e=String(t?.code||"").trim().toUpperCase(),r=String(t?.message||"").trim();return fnr.has(e)||/unable to verify the first certificate|self[ -]signed certificate|certificate/i.test(r)}async function R0(t,e=""){try{return await Ae(t)}catch(r){if(!mnr(r))throw r;return r?.code,r?.message||String(r),Wt(t?.url||"",260),await he({...t,proxy:!1})}}function hnr(){return new Date().toUTCString()}function gnr(t,e){let r=new URLSearchParams;Object.keys(t||{}).sort().forEach(s=>{let i=t[s];i!=null&&r.append(s,String(i))});let n=N0.default.createCipheriv("aes-128-ecb",Buffer.from(String(e||"").slice(0,16),"utf8"),null);return n.setAutoPadding(!0),Buffer.concat([n.update(r.toString(),"utf8"),n.final()]).toString("hex").toUpperCase()}function Anr(t,e,r,n,s,i=""){let a=new URL(n).pathname,o=`SessionKey=${e}&Operate=${r.toUpperCase()}&RequestURI=${a}&Date=${s}${i?`¶ms=${i}`:""}`;return N0.default.createHmac("sha1",Buffer.from(String(t||""),"utf8")).update(o,"utf8").digest("hex").toUpperCase()}function XMe(t,e){return N0.default.publicEncrypt({key:t,padding:N0.default.constants.RSA_PKCS1_PADDING},Buffer.from(String(e||""),"utf8")).toString("hex").toUpperCase()}function Er(t,e){let r=String(t||"").match(new RegExp(`<${e}>([\\s\\S]*?)`,"i"));return r?r[1].trim():""}function ZMe(t){let e=Number(t||0),r=1024*1024*10;return e>r*2*999?Math.max(Math.ceil(e/1999/r),5)*r:e>r*999?r*2:r}function ma(t){if(typeof t=="string")return t;if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}}function fa(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let i=r.res_code??r.ResCode??"",a=r.res_message??r.ResMessage??"";if(typeof i=="number"&&i!==0||typeof i=="string"&&i)return`res_code=${i}${a?` ${a}`:""}`.trim();let o=r.code||r.errorCode||"",c=r.message||r.msg||r.errorMsg||r.error||"";if(o&&o!=="SUCCESS"&&o!=="0")return`code=${o}${c?` ${c}`:""}`.trim();if(!o&&c)return String(c)}let n=Er(e,"code"),s=Er(e,"message")||Er(e,"msg");return n&&n!=="SUCCESS"&&n!=="0"?`code=${n}${s?` ${s}`:""}`.trim():""}function ynr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e);if(r&&typeof r=="object"&&!Array.isArray(r)&&(r.sessionKey||r.sessionSecret||r.accessToken))return r;if(!e||e[0]!=="<")return null;let n=["loginName","sessionKey","sessionSecret","familySessionKey","familySessionSecret","accessToken","refreshToken","isSaveName","keepAlive","getFileDiffSpan","getUserInfoSpan"],s={};return n.forEach(i=>{let a=Er(e,i);a&&(s[i]=a)}),s.sessionKey&&s.sessionSecret?s:null}function e6e(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.data&&typeof r.data=="object"?r.data:null}function t6e(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e);return r&&typeof r=="object"&&!Array.isArray(r)&&r.file&&typeof r.file=="object"?r.file:null}function r6e(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e),n=String(r?.fileDownloadUrl||"");return n||Er(e,"fileDownloadUrl")}function xnr(t){if(t&&typeof t=="object"&&!Array.isArray(t))return t;let e=ma(t).trim();if(!e)return null;try{return LV.parse(e)}catch{return vo(e)}}function n6e(t,e){let r=String(t||""),n=new RegExp(`<${e}>([\\s\\S]*?)`,"ig"),s=[],i;for(;(i=n.exec(r))!==null;){let a=i[1],o=Er(a,"icon"),c={id:Er(a,"id"),parentId:Er(a,"parentId"),name:_c(Er(a,"name")),size:Number(Er(a,"size")||0),md5:Er(a,"md5"),fileCata:Er(a,"fileCata"),mediaType:Er(a,"mediaType"),createDate:Er(a,"createDate"),lastOpTime:Er(a,"lastOpTime"),icon:o?{smallUrl:_c(Er(o,"smallUrl")),largeUrl:_c(Er(o,"largeUrl")),max600:_c(Er(o,"max600")),mediumUrl:_c(Er(o,"mediumUrl"))}:void 0};Object.keys(c).forEach(u=>{(c[u]===""||c[u]===void 0)&&delete c[u]}),(c.id!==void 0||c.name)&&s.push(c)}return s}function bnr(t){let e=ma(t).trim(),r=xnr(t)||{},n=r?.fileListAO||r?.data?.fileListAO||{},s=Array.isArray(n?.folderList)?n.folderList:[],i=Array.isArray(n?.fileList)?n.fileList:[];if(s.length===0&&i.length===0&&e.startsWith("<")){let a=Er(e,"fileList")||e;s=n6e(a,"folder"),i=n6e(a,"file")}return{count:Number(n?.count||Er(e,"count")||s.length+i.length||0),folderList:s,fileList:i,data:r}}function s6e(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e),n=String(r?.taskId||r?.taskID||"");return n||Er(e,"taskId")||Er(e,"taskID")}function Enr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e),n=r?.taskStatus??r?.TaskStatus??"";if(n!==""&&n!==void 0&&n!==null)return Number(n);let s=Er(e,"taskStatus")||Er(e,"TaskStatus");return s?Number(s):0}function _nr(t){let e=ma(t).trim(),r=t&&typeof t=="object"&&!Array.isArray(t)?t:vo(e),n=i=>Array.isArray(i)?i.filter(Boolean):i&&typeof i=="object"?[i]:[],s=n(r?.familyInfoResp);if(s.length===0&&(s=n(r?.data?.familyInfoResp)),s.length===0&&e.startsWith("<")&&(s=(String(e).match(/([\s\S]*?)<\/familyInfoResp>/ig)||[]).map(a=>({familyId:Er(a,"familyId"),remarkName:Er(a,"remarkName"),useFlag:Er(a,"useFlag"),userRole:Er(a,"userRole")})).filter(a=>String(a?.familyId||"")),s.length===0)){let a=Er(e,"familyId");a&&(s=[{familyId:a,remarkName:Er(e,"remarkName"),useFlag:Er(e,"useFlag"),userRole:Er(e,"userRole")}])}return s.map(i=>({familyId:String(i?.familyId||i?.familyID||""),remarkName:String(i?.remarkName||""),useFlag:Number(i?.useFlag||0),userRole:Number(i?.userRole||0)})).filter(i=>i.familyId)}function u6e(t){let e=String(t||"").trim().toLowerCase(),r=e.lastIndexOf(".");return r>=0?e.slice(r+1):""}function Snr(t){return cnr.has(u6e(t))}function vo(t){let e=typeof t=="string"?t.trim():"";if(!e||!/^[\[{]/.test(e))return null;try{return JSON.parse(e)}catch{return null}}function _c(t){return String(t??"").replace(/&/gi,"&").replace(/</gi,"<").replace(/>/gi,">").replace(/"/gi,'"').replace(/'/gi,"'")}function Cl(t){let e=_c(t).trim();return e?/^\/\//.test(e)?`http:${e}`:/^(https?:\/\/)/i.test(e)?e:"":""}function vnr(t){return _c(t).replace(/([?&](?:sig|sk|token|expired)=)[^&<\s]+/ig,"$1***").replace(/(SSON=)[^;]+/ig,"$1***").replace(/(OPENINFO=)[^;]+/ig,"$1***").replace(/(JSESSIONID=)[^;]+/ig,"$1***").replace(/(COOKIE_LOGIN_USER=)[^;]+/ig,"$1***")}function Wt(t,e=220){let r=vnr(String(t??"")).replace(/\s+/g," ").trim();return r.length>e?`${r.slice(0,e)}...`:r}function eb(t){if(!t)return"none";let e=String(t).split(";").map(r=>r.split("=")[0].trim()).filter(Boolean);return`${e.slice(0,5).join(",")}${e.length>5?`,+${e.length-5}`:""}`}function pa(t){try{let e=Cl(t);return e?new URL(e).host:""}catch{return""}}function Cnr(t){try{let e=Cl(t);return e?u6e(new URL(e).pathname):""}catch{return""}}function i6e(t){return unr.has(Cnr(t))}function Inr(t){let r=String(t||"").match(/\/(\d+)$/);if(!r)return 0;let n=Number(r[1]);return Number.isFinite(n)?n:0}function Tnr(t){let e=String(t||"").replace(/\s+/g,"").trim();if(!e||e.length<24||e.length%4!==0||/[^A-Za-z0-9+/=]/.test(e))return null;try{let r=Buffer.from(e,"base64").toString("utf8").trim(),n=vo(r);return!n||typeof n!="object"||Array.isArray(n)||!n.md5&&!n.sliceMd5&&!n.create_time?null:{raw:r,data:n}}catch{return null}}function DV(t){return!t||typeof t!="object"?{}:{name:t.name||"",size:t.size||0,md5:t.md5||"",sliceMd5:t.sliceMd5||"",create_time:t.create_time||""}}function a6e(t){let e=String(t??"");try{return decodeURIComponent(e.replace(/\+/g,"%20"))}catch{return e}}function wnr(t){let e=String(t??"");try{return decodeURIComponent(e)}catch{return e}}function Rnr(t,e=""){let r=String(t||"").trim(),s=wnr(r)||r,i={shareCode:"",accessCode:String(e||"").trim()},a=s.match(/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&#\s\uFF08(]+)/i),o=s.match(/https?:\/\/cloud\.189\.cn\/t\/([^?&#\s\uFF08(]+)/i);if(a?.[1]?i.shareCode=a[1]:o?.[1]?i.shareCode=o[1]:/^https?:\/\//i.test(s)||(i.shareCode=s.split(/[\s\uFF08(]/)[0]),!i.accessCode){let c=s.match(/(?:è®¿é—®ç |æå–ç |å¯†ç )\s*[::]\s*([a-zA-Z0-9]+)/);i.accessCode=c?.[1]||""}return i}function l6e(t){let e=String(t||"").trim();if(!e)return null;let r=vo(e);if(r&&typeof r=="object"&&!Array.isArray(r)){let s={};return Object.keys(r).forEach(i=>{let a=r[i];if(a==null)return;let o=String(i).trim(),c=String(a).trim();o&&c&&(s[o]=c)}),Object.keys(s).length>0?s:null}let n={};return e.split(/[&;]/).forEach(s=>{let[i,...a]=s.split("=");if(!i||a.length===0)return;let o=a6e(i.trim()),c=a6e(a.join("=").trim());o&&c&&(n[o]=c)}),Object.keys(n).length>0?n:null}function Nnr(t,e){let r=Cl(e);r&&!t.includes(r)&&t.push(r)}function aC(t,e=[],r=0){if(!t||r>4)return e;if(typeof t=="string")return Nnr(e,t),e;if(Array.isArray(t))return t.forEach(i=>aC(i,e,r+1)),e;if(typeof t!="object")return e;let n=["downloadUrl","downloadURL","fileDownloadUrl","fileDownloadURL","contentUrl","contentURL","redirectUrl","redirectURL","sourceUrl","sourceURL","location","url"];for(let i of n)i in t&&aC(t[i],e,r+1);if(e.length>0)return e;let s=["data","result","normal","file","download","downloadInfo"];for(let i of s)i in t&&aC(t[i],e,r+1);return e}function o6e(t){let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("|"),n=r>=0?e.slice(0,r).trim():e,s=r>=0?e.slice(r+1).trim():"",i=Cl(n);if(i){let c=l6e(s);return c?{url:i,header:c}:{url:i}}let a=_c(e).match(/((?:https?:)?\/\/[^<\s]+)/i);if(!a)return null;let o=Cl(a[1]);return o?{url:o}:null}function Zx(t){let e=String(t||"").replace(/^\uFEFF/,"").trim();if(!e||/^{kV=t.server.db,tb=await kV.getObjectDefault("/tyi",{}),tb?.cloud_account,tb?.cloud_password,eb(tb?.cloud_cookie)},MV=class{constructor(){this.regex=/https?:\/\/cloud\.189\.cn\/web\/share\?code=([^&]+)/,this.config={clientId:"538135150693412",model:"KB2000",version:"9.0.6",pubKey:"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCZLyV4gHNDUGJMZoOcYauxmNEsKrc0TlLeBEVVIIQNzG4WqjimceOj5R9ETwDeeSN3yejAKLGHgx83lyy2wBjvnbfm/nLObyWwQD/09CmpZdxoFYCH6rdDjRpwZOZ2nXSZpgkZXoOBkfNXNxnN74aXtho2dqBynTw3NFTWyQl8BQIDAQAB"},this.headers={"User-Agent":`Mozilla/5.0 (Linux; U; Android 11; ${this.config.model} Build/RP1A.201005.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/74.0.3729.136 Mobile Safari/537.36 Ecloud/${this.config.version} Android/30 clientId/${this.config.clientId} clientModel/${this.config.model} clientChannelId/qq proVersion/1.0.6`,Referer:"https://m.cloud.189.cn/zhuanti/2016/sign/index.jsp?albumBackupOpened=1","Accept-Encoding":"gzip, deflate"},this.api="https://cloud.189.cn/api",this.shareCode="",this.accessCode="",this.shareId="",this.shareMode="",this.isFolder="",this.index=0,this.shareFileCache=new Map,this.lastShareTextResolveReason="",this.pcLoginState=null,this.pcRestoreFolderId="",this.pcFamilyRestoreFolderId="",this.pcFamilyId=""}setShareTextResolveReason(e=""){this.lastShareTextResolveReason=String(e||"")}getShareTextResolveReason(){return this.lastShareTextResolveReason||""}getShareFileCacheKey(e,r){return`${r||""}:${e||""}`}cacheShareFileItem(e,r,n,s={}){!e||!r||!n||typeof n!="object"||this.shareFileCache.set(this.getShareFileCacheKey(e,r),{...n,...s})}getCachedShareFileItem(e,r){return this.shareFileCache.get(this.getShareFileCacheKey(e,r))||null}async init(){this.account&&console.log("\u5929\u7FFC\u8D26\u53F7\u83B7\u53D6\u6210\u529F\uFF1A"+this.account),this.password&&console.log("\u5929\u7FFC\u5BC6\u7801\u83B7\u53D6\u6210\u529F\uFF1A"+this.password),this.cookie?console.log("\u5929\u7FFCcookie\u83B7\u53D6\u6210\u529F"+this.cookie):w0.set("cloud_cookie",await this.login(this.account,this.password))}get account(){return w0.get("cloud_account")}get password(){return w0.get("cloud_password")}get cookie(){return w0.get("cloud_cookie")}async login(e,r){try{let n=await Ae.post("https://open.e.189.cn/api/logbox/config/encryptConf.do?appId=cloud"),s=n.data.data.pubKey;n=await Ae.get("https://cloud.189.cn/api/portal/loginUrl.action?redirectURL=https://cloud.189.cn/web/redirect.html?returnURL=/main.action");let i=n.request.path.match(/reqId=(\w+)/)[1],o={"Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:74.0) Gecko/20100101 Firefox/76.0",Referer:"https://open.e.189.cn/",Lt:n.request.path.match(/lt=(\w+)/)[1],Reqid:i},c={version:"2.0",appKey:"cloud"};n=await Ae.post("https://open.e.189.cn/api/logbox/oauth2/appConf.do",Gh.default.stringify(c),{headers:o});let u=n.data.data.returnUrl,l=n.data.data.paramId,d=`-----BEGIN PUBLIC KEY----- ${s} ------END PUBLIC KEY-----`,f=new BK;f.setPublicKey(d);let p=Buffer.from(f.encrypt(e),"base64").toString("hex"),m=Buffer.from(f.encrypt(r),"base64").toString("hex");if(c={appKey:"cloud",version:"2.0",accountType:"01",mailSuffix:"@189.cn",validateCode:"",returnUrl:u,paramId:l,captchaToken:"",dynamicCheck:"FALSE",clientType:"1",cb_SaveName:"0",isOauth2:!1,userName:`{NRP}${p}`,password:`{NRP}${m}`},n=await Ae.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",Gh.default.stringify(c),{headers:o,validateStatus:null}),n.data.toUrl){let h=n.headers["set-cookie"].map(A=>A.split(";")[0]).join(";");n=await Ae.get(n.data.toUrl,{headers:{...this.headers,Cookie:h},maxRedirects:0,validateStatus:null}),h+="; "+n.headers["set-cookie"].map(A=>A.split(";")[0]).join(";"),T0.set("cloud_cookie",h)}else console.error("Error during login:",n.data)}catch(n){console.error("Error during login:",n)}}async getShareID(e,r,n){let s=n||this,i=Tnr(e,r);s.shareCode=i.shareCode,s.accessCode=i.accessCode}async getShareData(e,r){let n={},s={},i=await this.getShareInfo(e,r,n);if(i){let c=await this.getShareList(i,"",n);c&&Array.isArray(c)?await Promise.all(c.map(async u=>{let l=u.path||u.name;l in s||(s[l]=[]);let d=await this.getShareFile(u.id,n);d&&d.length>0&&s[l].push(...d)})):s.root=await this.getShareFile(i,n)}for(let c in s)s[c].length===0&&delete s[c];i&&Object.keys(s).length===0&&(s.root=await this.getShareFile(i,n),s.root&&Array.isArray(s.root)&&(s.root=s.root.filter(c=>c&&Object.keys(c).length>0))),Object.keys(s).forEach(c=>{s[c]=s[c].map(u=>({vod_id:[u.fileId,u.shareId,u.fileKind||HMe,u.shareMode||"",u.accessCode||""].join("*"),vod_name:u.name,vod_size:u.size}))});let a=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.length:0),0),o=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.filter(l=>String(l?.vod_id||"").includes(`*${rB}*`)).length:0),0);return n.shareId,n.shareMode,Object.keys(s).length,s}async getShareInfo(e,r,n){let s=n||this,i=String(e||"");if(i.startsWith("http")?await this.getShareID(i,r,n):s.shareCode=i,!s.shareCode)return null;try{if(s.accessCode){let a=await Ae.get(`${this.api}/open/share/checkAccessCode.action?shareCode=${s.shareCode}&accessCode=${s.accessCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}});a.status===200&&(s.shareId=a.data.shareId);let o=await Ae.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),c=o.data.fileId;return s.shareMode=o.data.shareMode,s.isFolder=o.data.isFolder,c}else{let a=await Ae.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),o=a.data.fileId;return s.shareId=a.data.shareId,s.shareMode=a.data.shareMode,s.isFolder=a.data.isFolder,o}}catch(a){let o=a?.response?.status,c=a?.response?.data?.res_code||a?.code||"UnknownCode",u=a?.response?.data?.res_message||a?.message||"unknown error";return console.warn(o===400&&(c==="ShareAuditNotPass"||c==="ShareInfoNotFound")?`[Cloud ShareInfo] ${s.shareCode} unavailable: ${c}`:`[Cloud ShareInfo] ${s.shareCode} failed: ${o||"N/A"} ${c} ${u}`),null}}async getShareList(e,r="",n){let s=n||this;if(!e)return null;try{let i=[],a={};a["User-Agent"]="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",a.Accept="application/json;charset=UTF-8",a["Accept-Encoding"]="gzip, deflate, br, zstd";let o={method:"GET",headers:a},c=await jMe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${s.isFolder}&shareId=${s.shareId}&shareMode=${s.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${s.accessCode}&noCache=${Math.random()}`,o),d=DK.parse(await c.text())?.fileListAO?.folderList;if(!d)return null;if(d&&d.length>0){let f=d.map(m=>({name:m.name,id:m.id,type:"folder",path:inr(r,m.name)}));i.push(...f);let p=await Promise.all(f.map(async m=>this.getShareList(m.id,m.path,n)));return p=p.filter(m=>m!=null),[...i,...p.flat()]}}catch(i){return console.warn(`[Cloud ShareList] ${e} failed: ${i?.message||i}`),null}}async getShareFile(e,r){let n=r||this;if(!e)return null;try{let s={method:"GET",headers:_c},i=await jMe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${n.isFolder}&shareId=${n.shareId}&shareMode=${n.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${n.accessCode}&noCache=${Math.random()}`,s),a=DK.parse(await i.text()),o=[],c=a?.fileListAO,u=c?.fileList;if(!Array.isArray(u)||u.length===0)return null;let l=u.map(p=>p.name),d=u.map(p=>p.id),f=Number(c?.fileListSize??u.length);if((!Number.isFinite(f)||f<0)&&(f=u.length),f=Math.min(f,u.length),f>=0)for(let p=0;p0){let p=o.filter(m=>m.fileKind===rB).length;n.shareId,n.shareMode,o.length,o.length-p,o.slice(0,3).map(m=>m.name)}return o}catch(s){return console.warn(`[Cloud ShareFile] ${e} failed: ${s?.message||s}`),null}}async fetchShareTextFileFromUrl(e,r={}){let n=Il(e);if(!n)return"";Mt(n,260),eb(r?.Cookie||r?.cookie);try{let s=await Ae.get(n,{headers:{...NK,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[a=>a],maxRedirects:5,validateStatus:()=>!0}),i=typeof s.data=="string"?s.data:"";return s.status<200||s.status>=300?(Mt(n,260),s.status,s.headers?.["content-type"],Mt(i),""):(Mt(n,260),s.status,s.headers?.["content-type"],i.length,Mt(i),i)}catch(s){return Mt(n,260),s?.message||String(s),""}}buildShareTextApiCandidates(e,r,n="",s=""){let i=a=>{let o=new URLSearchParams({shareId:String(r||""),fileId:String(e||""),key:"noCache",dt:"1",noCache:String(Math.random())});return n&&o.set("shareMode",String(n)),s&&o.set("accessCode",String(s)),`${this.api}${a}?${o.toString()}`};return[i("/portal/getShareFileUrl.action"),i("/portal/getFileDownloadUrl.action"),i("/open/share/getFileDownloadUrl.action"),i("/open/share/getShareFileDownloadUrl.action"),i("/open/file/getFileDownloadUrl.action")]}async tryResolveShareTextPlayableFromApi(e,r={}){let n=e;try{n=new URL(e).pathname}catch{}Mt(e,260),eb(r?.Cookie||r?.cookie);try{let s=await Ae.get(e,{headers:{...NK,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[l=>l],maxRedirects:0,validateStatus:()=>!0}),i=s.status===400||s.status===401||s.status===403;if(s.status>=300&&s.status<400&&s.headers?.location){s.status,Mt(s.headers.location,260);let l=await this.fetchShareTextFileFromUrl(s.headers.location,r),d=Zx(l);return d?.url,pa(d?.url),d?.header,{playable:d,authError:!1}}if(s.status<200||s.status>=300)return s.status,s.headers?.["content-type"],Mt(s.data),{playable:null,authError:i};let a=typeof s.data=="string"?s.data:"",o=String(s.headers?.["content-type"]||"");if(s.status,Mt(a),/json/i.test(o)){let l=Io(a),d=iI(l);d.length,d.slice(0,3).map(f=>Mt(f,260));for(let f of d){let p=await this.fetchShareTextFileFromUrl(f,r),m=Zx(p);if(m)return Mt(f,260),pa(m.url),m.header,{playable:m,authError:!1}}return{playable:null,authError:i}}let c=a.trim();if(/^[^\r\n]+$/.test(c)&&Il(c)){Mt(c,260);let l=await this.fetchShareTextFileFromUrl(c,r),d=Zx(l);return d?.url,pa(d?.url),d?.header,{playable:d,authError:!1}}let u=Zx(a);return u?.url,pa(u?.url),u?.header,{playable:u,authError:!1}}catch(s){return s?.message||String(s),{playable:null,authError:!1}}}async probeShareTextCandidateUrl(e,r={}){let n=Il(e);if(!n)return{type:"invalid"};Mt(n,260),pa(n),Object.keys(r||{}).join(",");try{let s=await Ae.get(n,{headers:{...NK,Range:"bytes=0-511",...r&&typeof r=="object"?r:{}},responseType:"arraybuffer",maxRedirects:5,timeout:15e3,validateStatus:()=>!0}),a=(Buffer.isBuffer(s.data)?s.data:Buffer.from(s.data||"")).toString("utf8").replace(/^\uFEFF/,""),o=Il(s?.request?.res?.responseUrl||s?.config?.url||n)||n,c=String(s.headers?.["content-type"]||""),u=String(s.headers?.["content-range"]||""),l=Number(s.headers?.["content-length"]||0),d=vnr(u)||(Number.isFinite(l)?l:0);Mt(n,260),Mt(o,260),s.status,Mt(a);let f=Inr(a);if(f)return Mt(n,260),Mt(o,260),PK(f.data),Mt(f.raw),{type:"cas_metadata",metadata:f.data};let p=Zx(a);return p?.url&&p.url!==n?(Mt(n,260),Mt(p.url,260),pa(p.url),p.header,{type:"nested_playable",playable:p}):/^video\//i.test(c)||/^audio\//i.test(c)||/application\/(?:vnd\.apple\.mpegurl|x-mpegurl|dash\+xml)/i.test(c)||r6e(o)||(s.status===200||s.status===206)&&d>1024*1024?(Mt(n,260),Mt(o,260),pa(o),{type:"playable"}):(Mt(n,260),Mt(o,260),s.status,{type:"unknown"})}catch(s){return Mt(n,260),s?.message||String(s),{type:"error"}}}async confirmShareTextPlayableCandidate(e,r={},n={},s=0){if(!e?.url)return null;let i=e.header&&typeof e.header=="object"?e.header:null,a={...r&&typeof r=="object"?r:{},...i||{}},o={...n,depth:s,url:Mt(e.url,260),host:pa(e.url),headerKeys:Object.keys(i||{}).join(",")||"-"};if(r6e(e.url))return{...o},e;if(s>=2)return null;let c=await this.probeShareTextCandidateUrl(e.url,a);if(c.type==="playable")return{...o},e;if(c.type==="nested_playable"&&c.playable?.url)return{...o,nestedUrl:Mt(c.playable.url,260),nestedHost:pa(c.playable.url)},await this.confirmShareTextPlayableCandidate(c.playable,r,n,s+1);if(c.type==="cas_metadata"){try{let d=await this.getCasPlayableByRestoringToCloudDrive(c.metadata);if(d?.url)return{...o,restoredHost:pa(d.url)},d}catch(d){let p=`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25${c.metadata?.name?` (${c.metadata.name})`:""}: ${d?.message||d}`;return this.setShareTextResolveReason(p),{...o,metadata:PK(c.metadata)},null}let l=`\u5F53\u524D\u5206\u4EAB\u8FD4\u56DE\u7684\u662FCAS\u79D2\u4F20\u5143\u6570\u636E\uFF0C\u4E0D\u662F\u771F\u5B9E\u89C6\u9891\u5730\u5740${c.metadata?.name?` (${c.metadata.name})`:""}`;return this.setShareTextResolveReason(l),{...o,metadata:PK(c.metadata)},null}return{...o,probeType:c.type},null}async initCloudPcLoginParam(){let e=this.cookie||"",r=Ae.create({headers:{"User-Agent":_c["User-Agent"],"Accept-Encoding":_c["Accept-Encoding"],Referer:nI,...e?{Cookie:e}:{}},maxRedirects:5,validateStatus:()=>!0}),n=await w0({method:"GET",url:`${nI}/api/portal/unifyLoginForPC.action`,params:{appId:Z3,clientType:GMe,returnURL:KMe,timeStamp:Date.now()},headers:r.defaults.headers,maxRedirects:5,validateStatus:()=>!0,responseType:"text",transformResponse:[d=>d]},"pc-unify-login"),s=typeof n.data=="string"?n.data:"",i=d=>{let f=s.match(d);return f?f[1]:""},a={cookie:OK(e,n.headers?.["set-cookie"]),captchaToken:i(/'captchaToken' value='(.+?)'/),lt:i(/lt = "(.+?)"/),paramId:i(/paramId = "(.+?)"/),reqId:i(/reqId = "(.+?)"/)};if(!a.lt||!a.paramId||!a.reqId)throw new Error("189PC\u767B\u5F55\u53C2\u6570\u521D\u59CB\u5316\u5931\u8D25");let o=await w0({method:"POST",url:`${sI}/api/logbox/config/encryptConf.do`,data:Gh.default.stringify({appId:Z3}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":_c["User-Agent"],Referer:nI},validateStatus:()=>!0},"pc-encrypt-conf"),c=o?.data?.data?.pubKey||"",u=o?.data?.data?.pre||"{RSA}";if(!c)throw new Error("189PC\u83B7\u53D6RSA\u516C\u94A5\u5931\u8D25");let l=`-----BEGIN PUBLIC KEY----- +-----END PUBLIC KEY-----`,f=new BV;f.setPublicKey(d);let p=Buffer.from(f.encrypt(e),"base64").toString("hex"),m=Buffer.from(f.encrypt(r),"base64").toString("hex");if(c={appKey:"cloud",version:"2.0",accountType:"01",mailSuffix:"@189.cn",validateCode:"",returnUrl:u,paramId:l,captchaToken:"",dynamicCheck:"FALSE",clientType:"1",cb_SaveName:"0",isOauth2:!1,userName:`{NRP}${p}`,password:`{NRP}${m}`},n=await Ae.post("https://open.e.189.cn/api/logbox/oauth2/loginSubmit.do",Gh.default.stringify(c),{headers:o,validateStatus:null}),n.data.toUrl){let h=n.headers["set-cookie"].map(A=>A.split(";")[0]).join(";");n=await Ae.get(n.data.toUrl,{headers:{...this.headers,Cookie:h},maxRedirects:0,validateStatus:null}),h+="; "+n.headers["set-cookie"].map(A=>A.split(";")[0]).join(";"),w0.set("cloud_cookie",h)}else console.error("Error during login:",n.data)}catch(n){console.error("Error during login:",n)}}async getShareID(e,r,n){let s=n||this,i=Rnr(e,r);s.shareCode=i.shareCode,s.accessCode=i.accessCode}async getShareData(e,r){let n={},s={},i=await this.getShareInfo(e,r,n);if(i){let c=await this.getShareList(i,"",n);c&&Array.isArray(c)?await Promise.all(c.map(async u=>{let l=u.path||u.name;l in s||(s[l]=[]);let d=await this.getShareFile(u.id,n);d&&d.length>0&&s[l].push(...d)})):s.root=await this.getShareFile(i,n)}for(let c in s)s[c].length===0&&delete s[c];i&&Object.keys(s).length===0&&(s.root=await this.getShareFile(i,n),s.root&&Array.isArray(s.root)&&(s.root=s.root.filter(c=>c&&Object.keys(c).length>0))),Object.keys(s).forEach(c=>{s[c]=s[c].map(u=>({vod_id:[u.fileId,u.shareId,u.fileKind||VMe,u.shareMode||"",u.accessCode||""].join("*"),vod_name:u.name,vod_size:u.size}))});let a=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.length:0),0),o=Object.values(s).reduce((c,u)=>c+(Array.isArray(u)?u.filter(l=>String(l?.vod_id||"").includes(`*${sL}*`)).length:0),0);return n.shareId,n.shareMode,Object.keys(s).length,s}async getShareInfo(e,r,n){let s=n||this,i=String(e||"");if(i.startsWith("http")?await this.getShareID(i,r,n):s.shareCode=i,!s.shareCode)return null;try{if(s.accessCode){let a=await Ae.get(`${this.api}/open/share/checkAccessCode.action?shareCode=${s.shareCode}&accessCode=${s.accessCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}});a.status===200&&(s.shareId=a.data.shareId);let o=await Ae.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),c=o.data.fileId;return s.shareMode=o.data.shareMode,s.isFolder=o.data.isFolder,c}else{let a=await Ae.get(`${this.api}/open/share/getShareInfoByCodeV2.action?key=noCache&shareCode=${s.shareCode}`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",accept:"application/json;charset=UTF-8","accept-encoding":"gzip, deflate, br, zstd","accept-language":"zh-CN,zh;q=0.9"}}),o=a.data.fileId;return s.shareId=a.data.shareId,s.shareMode=a.data.shareMode,s.isFolder=a.data.isFolder,o}}catch(a){let o=a?.response?.status,c=a?.response?.data?.res_code||a?.code||"UnknownCode",u=a?.response?.data?.res_message||a?.message||"unknown error";return console.warn(o===400&&(c==="ShareAuditNotPass"||c==="ShareInfoNotFound")?`[Cloud ShareInfo] ${s.shareCode} unavailable: ${c}`:`[Cloud ShareInfo] ${s.shareCode} failed: ${o||"N/A"} ${c} ${u}`),null}}async getShareList(e,r="",n){let s=n||this;if(!e)return null;try{let i=[],a={};a["User-Agent"]="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",a.Accept="application/json;charset=UTF-8",a["Accept-Encoding"]="gzip, deflate, br, zstd";let o={method:"GET",headers:a},c=await GMe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${s.isFolder}&shareId=${s.shareId}&shareMode=${s.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${s.accessCode}&noCache=${Math.random()}`,o),d=LV.parse(await c.text())?.fileListAO?.folderList;if(!d)return null;if(d&&d.length>0){let f=d.map(m=>({name:m.name,id:m.id,type:"folder",path:onr(r,m.name)}));i.push(...f);let p=await Promise.all(f.map(async m=>this.getShareList(m.id,m.path,n)));return p=p.filter(m=>m!=null),[...i,...p.flat()]}}catch(i){return console.warn(`[Cloud ShareList] ${e} failed: ${i?.message||i}`),null}}async getShareFile(e,r){let n=r||this;if(!e)return null;try{let s={method:"GET",headers:Ec},i=await GMe(`${this.api}/open/share/listShareDir.action?key=noCache&pageNum=1&pageSize=9999&fileId=${e}&shareDirFileId=${e}&isFolder=${n.isFolder}&shareId=${n.shareId}&shareMode=${n.shareMode}&iconOption=5&orderBy=lastOpTime&descending=true&accessCode=${n.accessCode}&noCache=${Math.random()}`,s),a=LV.parse(await i.text()),o=[],c=a?.fileListAO,u=c?.fileList;if(!Array.isArray(u)||u.length===0)return null;let l=u.map(p=>p.name),d=u.map(p=>p.id),f=Number(c?.fileListSize??u.length);if((!Number.isFinite(f)||f<0)&&(f=u.length),f=Math.min(f,u.length),f>=0)for(let p=0;p0){let p=o.filter(m=>m.fileKind===sL).length;n.shareId,n.shareMode,o.length,o.length-p,o.slice(0,3).map(m=>m.name)}return o}catch(s){return console.warn(`[Cloud ShareFile] ${e} failed: ${s?.message||s}`),null}}async fetchShareTextFileFromUrl(e,r={}){let n=Cl(e);if(!n)return"";Wt(n,260),eb(r?.Cookie||r?.cookie);try{let s=await Ae.get(n,{headers:{...OV,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[a=>a],maxRedirects:5,validateStatus:()=>!0}),i=typeof s.data=="string"?s.data:"";return s.status<200||s.status>=300?(Wt(n,260),s.status,s.headers?.["content-type"],Wt(i),""):(Wt(n,260),s.status,s.headers?.["content-type"],i.length,Wt(i),i)}catch(s){return Wt(n,260),s?.message||String(s),""}}buildShareTextApiCandidates(e,r,n="",s=""){let i=a=>{let o=new URLSearchParams({shareId:String(r||""),fileId:String(e||""),key:"noCache",dt:"1",noCache:String(Math.random())});return n&&o.set("shareMode",String(n)),s&&o.set("accessCode",String(s)),`${this.api}${a}?${o.toString()}`};return[i("/portal/getShareFileUrl.action"),i("/portal/getFileDownloadUrl.action"),i("/open/share/getFileDownloadUrl.action"),i("/open/share/getShareFileDownloadUrl.action"),i("/open/file/getFileDownloadUrl.action")]}async tryResolveShareTextPlayableFromApi(e,r={}){let n=e;try{n=new URL(e).pathname}catch{}Wt(e,260),eb(r?.Cookie||r?.cookie);try{let s=await Ae.get(e,{headers:{...OV,...r&&typeof r=="object"?r:{}},responseType:"text",transformResponse:[l=>l],maxRedirects:0,validateStatus:()=>!0}),i=s.status===400||s.status===401||s.status===403;if(s.status>=300&&s.status<400&&s.headers?.location){s.status,Wt(s.headers.location,260);let l=await this.fetchShareTextFileFromUrl(s.headers.location,r),d=Zx(l);return d?.url,pa(d?.url),d?.header,{playable:d,authError:!1}}if(s.status<200||s.status>=300)return s.status,s.headers?.["content-type"],Wt(s.data),{playable:null,authError:i};let a=typeof s.data=="string"?s.data:"",o=String(s.headers?.["content-type"]||"");if(s.status,Wt(a),/json/i.test(o)){let l=vo(a),d=aC(l);d.length,d.slice(0,3).map(f=>Wt(f,260));for(let f of d){let p=await this.fetchShareTextFileFromUrl(f,r),m=Zx(p);if(m)return Wt(f,260),pa(m.url),m.header,{playable:m,authError:!1}}return{playable:null,authError:i}}let c=a.trim();if(/^[^\r\n]+$/.test(c)&&Cl(c)){Wt(c,260);let l=await this.fetchShareTextFileFromUrl(c,r),d=Zx(l);return d?.url,pa(d?.url),d?.header,{playable:d,authError:!1}}let u=Zx(a);return u?.url,pa(u?.url),u?.header,{playable:u,authError:!1}}catch(s){return s?.message||String(s),{playable:null,authError:!1}}}async probeShareTextCandidateUrl(e,r={}){let n=Cl(e);if(!n)return{type:"invalid"};Wt(n,260),pa(n),Object.keys(r||{}).join(",");try{let s=await Ae.get(n,{headers:{...OV,Range:"bytes=0-511",...r&&typeof r=="object"?r:{}},responseType:"arraybuffer",maxRedirects:5,timeout:15e3,validateStatus:()=>!0}),a=(Buffer.isBuffer(s.data)?s.data:Buffer.from(s.data||"")).toString("utf8").replace(/^\uFEFF/,""),o=Cl(s?.request?.res?.responseUrl||s?.config?.url||n)||n,c=String(s.headers?.["content-type"]||""),u=String(s.headers?.["content-range"]||""),l=Number(s.headers?.["content-length"]||0),d=Inr(u)||(Number.isFinite(l)?l:0);Wt(n,260),Wt(o,260),s.status,Wt(a);let f=Tnr(a);if(f)return Wt(n,260),Wt(o,260),DV(f.data),Wt(f.raw),{type:"cas_metadata",metadata:f.data};let p=Zx(a);return p?.url&&p.url!==n?(Wt(n,260),Wt(p.url,260),pa(p.url),p.header,{type:"nested_playable",playable:p}):/^video\//i.test(c)||/^audio\//i.test(c)||/application\/(?:vnd\.apple\.mpegurl|x-mpegurl|dash\+xml)/i.test(c)||i6e(o)||(s.status===200||s.status===206)&&d>1024*1024?(Wt(n,260),Wt(o,260),pa(o),{type:"playable"}):(Wt(n,260),Wt(o,260),s.status,{type:"unknown"})}catch(s){return Wt(n,260),s?.message||String(s),{type:"error"}}}async confirmShareTextPlayableCandidate(e,r={},n={},s=0){if(!e?.url)return null;let i=e.header&&typeof e.header=="object"?e.header:null,a={...r&&typeof r=="object"?r:{},...i||{}},o={...n,depth:s,url:Wt(e.url,260),host:pa(e.url),headerKeys:Object.keys(i||{}).join(",")||"-"};if(i6e(e.url))return{...o},e;if(s>=2)return null;let c=await this.probeShareTextCandidateUrl(e.url,a);if(c.type==="playable")return{...o},e;if(c.type==="nested_playable"&&c.playable?.url)return{...o,nestedUrl:Wt(c.playable.url,260),nestedHost:pa(c.playable.url)},await this.confirmShareTextPlayableCandidate(c.playable,r,n,s+1);if(c.type==="cas_metadata"){try{let d=await this.getCasPlayableByRestoringToCloudDrive(c.metadata);if(d?.url)return{...o,restoredHost:pa(d.url)},d}catch(d){let p=`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25${c.metadata?.name?` (${c.metadata.name})`:""}: ${d?.message||d}`;return this.setShareTextResolveReason(p),{...o,metadata:DV(c.metadata)},null}let l=`\u5F53\u524D\u5206\u4EAB\u8FD4\u56DE\u7684\u662FCAS\u79D2\u4F20\u5143\u6570\u636E\uFF0C\u4E0D\u662F\u771F\u5B9E\u89C6\u9891\u5730\u5740${c.metadata?.name?` (${c.metadata.name})`:""}`;return this.setShareTextResolveReason(l),{...o,metadata:DV(c.metadata)},null}return{...o,probeType:c.type},null}async initCloudPcLoginParam(){let e=this.cookie||"",r=Ae.create({headers:{"User-Agent":Ec["User-Agent"],"Accept-Encoding":Ec["Accept-Encoding"],Referer:sC,...e?{Cookie:e}:{}},maxRedirects:5,validateStatus:()=>!0}),n=await R0({method:"GET",url:`${sC}/api/portal/unifyLoginForPC.action`,params:{appId:tL,clientType:KMe,returnURL:YMe,timeStamp:Date.now()},headers:r.defaults.headers,maxRedirects:5,validateStatus:()=>!0,responseType:"text",transformResponse:[d=>d]},"pc-unify-login"),s=typeof n.data=="string"?n.data:"",i=d=>{let f=s.match(d);return f?f[1]:""},a={cookie:PV(e,n.headers?.["set-cookie"]),captchaToken:i(/'captchaToken' value='(.+?)'/),lt:i(/lt = "(.+?)"/),paramId:i(/paramId = "(.+?)"/),reqId:i(/reqId = "(.+?)"/)};if(!a.lt||!a.paramId||!a.reqId)throw new Error("189PC\u767B\u5F55\u53C2\u6570\u521D\u59CB\u5316\u5931\u8D25");let o=await R0({method:"POST",url:`${iC}/api/logbox/config/encryptConf.do`,data:Gh.default.stringify({appId:tL}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":Ec["User-Agent"],Referer:sC},validateStatus:()=>!0},"pc-encrypt-conf"),c=o?.data?.data?.pubKey||"",u=o?.data?.data?.pre||"{RSA}";if(!c)throw new Error("189PC\u83B7\u53D6RSA\u516C\u94A5\u5931\u8D25");let l=`-----BEGIN PUBLIC KEY----- ${c} ------END PUBLIC KEY-----`;return a.rsaUsername=`${u}${zMe(l,this.account)}`,a.rsaPassword=`${u}${zMe(l,this.password)}`,a}async loginForCloudPc(e=!1){if(!e&&this.pcLoginState?.tokenInfo?.sessionKey&&this.pcLoginState?.tokenInfo?.sessionSecret)return this.pcLoginState;if(!this.account||!this.password)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\uFF0C\u65E0\u6CD5\u6267\u884CCAS\u79D2\u4F20\u6062\u590D");let r=await this.initCloudPcLoginParam(),n=await w0({method:"POST",url:`${sI}/api/logbox/oauth2/needcaptcha.do`,data:Gh.default.stringify({appKey:Z3,accountType:QMe,userName:r.rsaUsername}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":_c["User-Agent"],Referer:sI+"/",REQID:r.reqId,...r.cookie?{Cookie:r.cookie}:{}},responseType:"text",transformResponse:[d=>d],validateStatus:()=>!0},"pc-needcaptcha"),s=String(n?.data||"").trim();if(n.status,Mt(s,80),s&&s!=="0")throw new Error("189PC\u767B\u5F55\u9700\u8981\u9A8C\u8BC1\u7801\uFF0C\u5F53\u524D\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u5904\u7406");let i=await w0({method:"POST",url:`${sI}/api/logbox/oauth2/loginSubmit.do`,data:Gh.default.stringify({appKey:Z3,accountType:QMe,userName:r.rsaUsername,password:r.rsaPassword,validateCode:"",captchaToken:r.captchaToken,returnUrl:KMe,dynamicCheck:"FALSE",clientType:GMe,cb_SaveName:"1",isOauth2:"false",state:"",paramId:r.paramId}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":_c["User-Agent"],Referer:sI+"/",REQID:r.reqId,lt:r.lt,...r.cookie?{Cookie:r.cookie}:{}},validateStatus:()=>!0},"pc-login-submit"),a=OK(r.cookie,i.headers?.["set-cookie"]),o=i?.data?.toUrl||"";if(!o)throw new Error(`189PC\u767B\u5F55\u5931\u8D25: ${i?.data?.msg||i?.status||"unknown"}`);let c=await w0({method:"POST",url:`${Gi}/getSessionForPC.action`,params:{...VMe(),redirectURL:o},headers:{"User-Agent":_c["User-Agent"],Referer:nI,...a?{Cookie:a}:{}},validateStatus:()=>!0},"pc-get-session"),u=gnr(c?.data)||c?.data||{};if(!u?.sessionKey||!u?.sessionSecret)throw new Error(`189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25: ${fa(c?.data)||c?.status||"unknown"}`);let l=OK(a,c.headers?.["set-cookie"]);return l&&T0.set("cloud_cookie",l),this.pcLoginState={cookie:l,tokenInfo:{loginName:u.loginName||"",sessionKey:u.sessionKey,sessionSecret:u.sessionSecret,familySessionKey:u.familySessionKey||"",familySessionSecret:u.familySessionSecret||"",accessToken:u.accessToken||"",refreshToken:u.refreshToken||""}},this.pcLoginState?.tokenInfo?.sessionKey,this.pcLoginState?.tokenInfo?.sessionSecret,this.pcLoginState?.tokenInfo?.familySessionKey,this.pcLoginState?.tokenInfo?.familySessionSecret,eb(l),this.pcLoginState}getCloudPcTokenInfo(e=!1){let r=this.pcLoginState?.tokenInfo||{};return e?{loginName:r.loginName||"",sessionKey:r.familySessionKey||"",sessionSecret:r.familySessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}:{loginName:r.loginName||"",sessionKey:r.sessionKey||"",sessionSecret:r.sessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}}async requestCloudPc(e,r="GET",n={}){let s=n&&typeof n=="object"?n:{},i=!!s.isFamily,a=await this.loginForCloudPc(!1),o=this.getCloudPcTokenInfo(i);if(!o.sessionKey||!o.sessionSecret){if(!s._retried)return await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0});throw new Error(i?"189PC\u5BB6\u5EAD\u4E91\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25":"189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25")}let c=VMe(),u=s.query&&typeof s.query=="object"?s.query:{},l=s.form&&typeof s.form=="object"?s.form:null,d=s.encryptedParams&&typeof s.encryptedParams=="object"?mnr(s.encryptedParams,o.sessionSecret):"",f=pnr(),p=hnr(o.sessionSecret,o.sessionKey,r,e,f,d),m=await w0({method:r,url:e,params:{...c,...u,...d?{params:d}:{}},...l?{data:Gh.default.stringify(l)}:{},headers:{"User-Agent":_c["User-Agent"],Referer:nI,Date:f,SessionKey:o.sessionKey,"X-Request-ID":R0.default.randomUUID(),Signature:p,...l?{"Content-Type":"application/x-www-form-urlencoded"}:{},...a?.cookie?{Cookie:a.cookie}:{},...s.headers||{}},responseType:s.responseType||"json",transformResponse:s.transformResponse||void 0,timeout:s.timeout||15e3,validateStatus:()=>!0},`pc-request:${r}:${new URL(e).pathname}`),h=ma(m.data);return(m.status===401||m.status===403||h.includes("InvalidSessionKey")||h.includes("userSessionBO is null"))&&!s._retried?(await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0})):m}async getCloudPcFamilyId(e=!1){if(!e&&this.pcFamilyId)return this.pcFamilyId;let r=await this.requestCloudPc(`${Gi}/family/manage/getFamilyList.action`,"GET",{isFamily:!0}),n=bnr(r?.data);if(n.length===0)throw new Error(`\u672A\u83B7\u53D6\u5230\u53EF\u7528\u7684189\u5BB6\u5EAD\u4E91 body=${Mt(ma(r?.data),260)}`);let s=String(this.pcLoginState?.tokenInfo?.loginName||""),i=n.find(o=>s&&o.remarkName&&s.includes(o.remarkName))||n.find(o=>Number(o?.useFlag||0)===1)||n[0],a=String(i?.familyId||"");if(!a)throw new Error(`189\u5BB6\u5EAD\u4E91ID\u89E3\u6790\u5931\u8D25 body=${Mt(JSON.stringify(n),260)}`);return this.pcFamilyId=a,n.length,n.map(o=>o.remarkName||"").filter(Boolean).slice(0,3),a}async ensureCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=r?"pcFamilyRestoreFolderId":"pcRestoreFolderId";if(this[n])return this[n];let s=r?"":"-11",i=r?await this.getCloudPcFamilyId():"",a=tB,o=r?`${Gi}/family/file/listFiles.action`:`${Gi}/listFiles.action`,c=1;for(;c<=10;){let f=await this.requestCloudPc(o,"GET",{isFamily:r,query:{folderId:s,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(c),pageSize:"100",...r?{familyId:i,orderBy:"1",descending:"false"}:{recursive:"0",orderBy:"filename",descending:"false"}}}),m=(f?.data?.fileListAO?.folderList||[]).find(A=>String(A?.name||"")===a);if(m?.id)return this[n]=String(m.id),this[n];if(!Number(f?.data?.fileListAO?.count||0))break;c+=1}let u=r?`${Gi}/family/file/createFolder.action`:`${Gi}/createFolder.action`,l=await this.requestCloudPc(u,"POST",{isFamily:r,query:{folderName:a,...r?{familyId:i}:{relativePath:"",parentFolderId:s}}});if(l.status>=400||fa(l.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${fa(l.data)||l.status}`);let d=String(l?.data?.id||br(l?.data,"id")||"");if(d)return this[n]=d,this[n];throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55")}async createCloudPcBatchTaskV2(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=n&&typeof n=="object"?n:{},{isFamily:a=!1,...o}=i,c=await this.requestCloudPc(`${Gi}/batch/createBatchTask.action`,"POST",{isFamily:a,form:{type:e,taskInfos:JSON.stringify(s),...o}}),u=String(t6e(c?.data)||""),l=fa(c?.data);if(c.status>=400||l||!u)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${l||c.status||"unknown"} body=${Mt(ma(c?.data),260)}`);return u}async permanentlyDeleteCloudPcItemsV2(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=!!r?.isFamily,i=s?String(r?.familyId||await this.getCloudPcFamilyId()):"",a=s?{familyId:i,isFamily:!0}:{},o=await this.createCloudPcBatchTaskV2("DELETE",n,a);await this.waitCloudPcBatchTask("DELETE",o);let c=await this.createCloudPcBatchTaskV2("CLEAR_RECYCLE",n,a);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",c)}async removeCloudPcRestoreFolderV2(e,r={}){if(!e)return;let s=!!r?.isFamily?"pcFamilyRestoreFolderId":"pcRestoreFolderId",i=[{fileId:String(e),fileName:tB,isFolder:1}];await this.permanentlyDeleteCloudPcItemsV2(i,r),this[s]=""}async resetCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=await this.ensureCloudPcRestoreFolderV2({isFamily:r});return await this.removeCloudPcRestoreFolderV2(n,{isFamily:r}),await this.ensureCloudPcRestoreFolderV2({isFamily:r})}async restoreCasMetadataToCloudDriveV2(e,r={}){let n=!!r?.isFamily,s=String(e?.md5||"").trim().toUpperCase(),i=Number(e?.size||0),a=String(e?.name||"").trim(),o=String(e?.sliceMd5||"").trim().toUpperCase();if(!s||!i||!a)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let c=n?await this.getCloudPcFamilyId():"",u=await this.resetCloudPcRestoreFolderV2({isFamily:n}),l=YMe(i),d=n?`${eB}/family`:`${eB}/person`,f=await this.requestCloudPc(`${d}/initMultiUpload`,"GET",{isFamily:n,encryptedParams:{parentFolderId:u,fileName:a,fileSize:String(i),fileMd5:s,sliceSize:String(l),...n&&c?{familyId:c}:{},...o?{sliceMd5:o}:{}}}),p=JMe(f?.data)||{},m=fa(f?.data);if(f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${m||f.status}`);let h=String(p?.uploadFileId||p?.uploadFileID||"");if(Number(p?.fileDataExists)!==1||!h)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let A=await this.requestCloudPc(`${d}/commitMultiUploadFile`,"GET",{isFamily:n,encryptedParams:{uploadFileId:h,isLog:"0",opertype:"3"}}),g=XMe(A?.data)||{},b=fa(A?.data);if(A.status>=400||b)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${b||A.status}`);let y=String(g?.userFileId||g?.id||""),x=String(g?.fileName||a);if(!y)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:y,fileName:x,folderId:u,familyId:c,isFamily:n}}async getCloudPcFileDownloadUrlV2(e,r={}){let n=!!r?.isFamily,s=n?String(r?.familyId||await this.getCloudPcFamilyId()):"",i=n?`${Gi}/family/file/getFileDownloadUrl.action`:`${Gi}/getFileDownloadUrl.action`,a=await this.requestCloudPc(i,"GET",{isFamily:n,query:{fileId:String(e||""),...n?{familyId:s}:{dt:"3",flag:"1"}},responseType:"text",transformResponse:[d=>d]}),o=String(ZMe(a?.data)||""),c=Sc(o).replace(/^http:\/\//i,"https://"),u=fa(a?.data);if(a.status>=400||u)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${u||a.status}`);if(!c)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let l=await w0({method:"GET",url:c,headers:{"User-Agent":_c["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return l.status>=300&&l.status<400&&l.headers?.location?Sc(String(l.headers.location||"")):c}async listOwnFiles(e="-11",r=1,n=100){let s=Math.max(Number(r)||1,1),i=Math.min(Math.max(Number(n)||100,1),200),a=e==null||e===""?"-11":String(e),o=await this.requestCloudPc(`${Gi}/listFiles.action`,"GET",{query:{folderId:a,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(s),pageSize:String(i),recursive:"0",orderBy:"filename",descending:"false"},responseType:"text",transformResponse:[u=>u]}),c=fa(o?.data);if(o.status>=400||c)throw new Error(`\u5929\u7FFC\u76EE\u5F55\u83B7\u53D6\u5931\u8D25: ${c||o.status}`);return ynr(o?.data)}async getOwnDownload(e){return{url:await this.getCloudPcFileDownloadUrlV2(e,{isFamily:!1}),data:{fileId:String(e||""),source:"189CloudPC"}}}async ensureCloudPcRestoreFolder(){if(this.pcRestoreFolderId)return this.pcRestoreFolderId;let e="-11",r=tB,n=1;for(;n<=10;){let u=await this.requestCloudPc(`${Gi}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(n),pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}),d=(u?.data?.fileListAO?.folderList||[]).find(p=>String(p?.name||"")===r);if(d?.id)return this.pcRestoreFolderId=String(d.id),this.pcRestoreFolderId;if(!Number(u?.data?.fileListAO?.count||0))break;n+=1}let s=await this.requestCloudPc(`${Gi}/createFolder.action`,"POST",{query:{folderName:r,relativePath:"",parentFolderId:e}});if(s.status,Mt(JSON.stringify(s.data||{}),220),s.status>=400||fa(s.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${fa(s.data)||s.status}`);let i=String(s?.data?.id||br(s?.data,"id")||"");if(i)return this.pcRestoreFolderId=i,this.pcRestoreFolderId;let c=((await this.requestCloudPc(`${Gi}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:"1",pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}))?.data?.fileListAO?.folderList||[]).find(u=>String(u?.name||"")===r);if(!c?.id)throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55");return this.pcRestoreFolderId=String(c.id),this.pcRestoreFolderId}async createCloudPcBatchTask(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=await this.requestCloudPc(`${Gi}/batch/createBatchTask.action`,"POST",{form:{type:e,taskInfos:JSON.stringify(s),...n||{}}}),a=String(t6e(i?.data)||""),o=fa(i?.data);if(i.status>=400||o||!a)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${o||i.status||"unknown"} body=${Mt(ma(i?.data),260)}`);return a}async permanentlyDeleteCloudPcItems(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=await this.createCloudPcBatchTask("DELETE",n,r);await this.waitCloudPcBatchTask("DELETE",s);let i=await this.createCloudPcBatchTask("CLEAR_RECYCLE",n,r);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",i)}async waitCloudPcBatchTask(e,r,n=300){let s=Date.now();for(;Date.now()-s<15e3;){let i=await this.requestCloudPc(`${Gi}/batch/checkBatchTask.action`,"POST",{form:{type:e,taskId:r}}),a=i?.data||{},o=fa(a);if(i.status>=400||o)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u72B6\u6001\u67E5\u8BE2\u5931\u8D25: ${o||i.status||"unknown"} body=${Mt(ma(a),260)}`);let c=xnr(a);if(c===4)return;if(c===2)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u5B58\u5728\u51B2\u7A81`);await new Promise(u=>setTimeout(u,n))}throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u7B49\u5F85\u8D85\u65F6`)}async removeCloudPcRestoreFolder(e){if(!e)return;let r=[{fileId:String(e),fileName:tB,isFolder:1}];await this.permanentlyDeleteCloudPcItems(r),this.pcRestoreFolderId=""}async resetCloudPcRestoreFolder(){let e=await this.ensureCloudPcRestoreFolder();await this.removeCloudPcRestoreFolder(e);for(let r=0;r<3;r+=1)try{return await this.ensureCloudPcRestoreFolder()}catch(n){if(r>=2)throw n;await new Promise(s=>setTimeout(s,300*(r+1)))}}async restoreCasMetadataToCloudDrive(e){let r=String(e?.md5||"").trim().toUpperCase(),n=Number(e?.size||0),s=String(e?.name||"").trim(),i=String(e?.sliceMd5||"").trim().toUpperCase();if(!r||!n||!s)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let a=await this.resetCloudPcRestoreFolder(),o=YMe(n);e?.create_time;let c=await this.requestCloudPc(`${eB}/person/initMultiUpload`,"GET",{encryptedParams:{parentFolderId:a,fileName:s,fileSize:String(n),fileMd5:r,sliceSize:String(o),...i?{sliceMd5:i}:{}}}),u=JMe(c?.data)||{},l=fa(c?.data);if(c.status,u?.fileDataExists,u?.uploadFileId||u?.uploadFileID,u?.uploadHost,Mt(JSON.stringify(c?.data||{}),260),c.status>=400||l)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${l||c.status}`);let d=String(u?.uploadFileId||u?.uploadFileID||"");if(Number(u?.fileDataExists)!==1||!d)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let f=await this.requestCloudPc(`${eB}/person/commitMultiUploadFile`,"GET",{encryptedParams:{uploadFileId:d,isLog:"0",opertype:"3"}}),p=XMe(f?.data)||{},m=fa(f?.data);if(f.status,p?.userFileId||p?.id,p?.fileName,Mt(JSON.stringify(f?.data||{}),260),f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${m||f.status}`);let h=String(p?.userFileId||p?.id||""),A=String(p?.fileName||s);if(!h)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:h,fileName:A,folderId:a}}async getCloudPcFileDownloadUrl(e){let r=await this.requestCloudPc(`${Gi}/getFileDownloadUrl.action`,"GET",{query:{fileId:String(e||""),dt:"3",flag:"1"},responseType:"text",transformResponse:[o=>o]}),n=String(ZMe(r?.data)||""),s=Sc(n).replace(/^http:\/\//i,"https://"),i=fa(r?.data);if(r.status,pa(s),Mt(s,260),r.status>=400||i)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${i||r.status}`);if(!s)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let a=await w0({method:"GET",url:s,headers:{"User-Agent":_c["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return a.status>=300&&a.status<400&&a.headers?.location?Sc(String(a.headers.location||"")):s}async getCasPlayableByRestoringToCloudDrive(e){let r=[],n=[{isFamily:!0,scope:"family"},{isFamily:!1,scope:"personal"}];for(let s of n)try{let i=await this.restoreCasMetadataToCloudDriveV2(e,{isFamily:s.isFamily}),a=await this.getCloudPcFileDownloadUrlV2(i.fileId,{isFamily:s.isFamily,familyId:i.familyId});return s.scope,i.fileId,i.fileName,pa(a),{url:a}}catch(i){r.push(`${s.scope}: ${i?.message||i}`)}throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25: ${r.join(" ; ")}`)}async getShareTextPlayable(e,r,n="",s="",i=0){if(!e||!r)return null;this.setShareTextResolveReason(""),!this.cookie&&this.account&&this.password&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F"));let a=this.getCachedShareFileItem(e,r),o=n||a?.shareMode||"",c=s||a?.accessCode||"",u=this.cookie?{Cookie:this.cookie}:{};this.cookie,eb(this.cookie),a?.name,pa(a?.downloadUrl);let l=iI(a);l.length,l.slice(0,3).map(p=>Mt(p,260));for(let p of l){let m=await this.fetchShareTextFileFromUrl(p,u),h=Zx(m),A=await this.confirmShareTextPlayableCandidate(h,u,{source:"cached",fileId:e,shareId:r,candidate:Mt(p,260)});if(A)return Mt(p,260),pa(A.url),A.header,A}let d=!1,f=this.buildShareTextApiCandidates(e,r,o,c);for(let p of f){let{playable:m,authError:h}=await this.tryResolveShareTextPlayableFromApi(p,u);if(m){let A=await this.confirmShareTextPlayableCandidate(m,u,{source:"api",fileId:e,shareId:r,api:(()=>{try{return new URL(p).pathname}catch{return p}})()});if(!A)continue;return(()=>{try{return new URL(p).pathname}catch{return p}})(),pa(A.url),A.header,A}h&&(d=!0,(()=>{try{return new URL(p).pathname}catch{return p}})(),void 0)}return d&&i<1&&this.account&&this.password?(T0.set("cloud_cookie",""),await this.login(this.account,this.password),await this.getShareTextPlayable(e,r,o,c,i+1)):(this.cookie,eb(this.cookie),this.getShareTextResolveReason(),null)}async getShareUrl(e,r){let n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"};!this.cookie&&this.account&&this.password&&this.index<2&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F")),n.Cookie=this.cookie;try{let s=await Ae.get(`${this.api}/portal/getNewVlcVideoPlayUrl.action?shareId=${r}&dt=1&fileId=${e}&type=4&key=noCache`,{headers:n}),i=await Ae.get(s.data.normal.url,{maxRedirects:0,validateStatus:function(o){return o>=200&&o<400}}),a="";return i.status>=300&&i.status<400&&i.headers.location?a=i.headers.location:a=s.data.normal.url,a}catch(s){if(s.response&&s.response.status===400&&this.index<2)return console.log("\u83B7\u53D6\u64AD\u653E\u5730\u5740\u5931\u8D25\uFF0C\u9519\u8BEF\u4FE1\u606F\u4E3A\uFF1A"+s.response.data),console.log("cookie\u5931\u6548\uFF0C\u6B63\u5728\u91CD\u65B0\u83B7\u53D6cookie"),T0.set("cloud_cookie",""),this.index+=1,await this.getShareUrl(e,r);console.error("Error during getShareUrl:",s.message,s.response?s.response.status:"N/A")}finally{this.index>=2&&(this.index=0,messageToDart({action:"toast",opt:{message:"\u5929\u7FFC\u8D26\u53F7\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}))}}},tf=new LK;var Bs=Re(Jn(),1);function mu(t,e){let r=nB();return mu=function(n,s){n=n-(13978+-166*83);let i=r[n];if(mu.sbuiTY===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h{let e=$e,r={aAgsa:function(a,o){return a(o)}},n=r[e(586,"rNH4")](String,t[e(377,"Lrz%")]||t[e(496,")!nc")]||"")[e(561,"@WPP")]()[e(388,"jYoQ")](/^\./,"")[e(248,"1zMZ")+"e"]();if(n)return n;let s=r[e(541,"1zMZ")](String,t[e(216,"I)@B")]||t[e(575,"jYoQ")]||"")[e(252,"h42)")]()[e(251,"XMYa")+"e"](),i=s[e(604,"#RnD")](/\.([a-z0-9]{1,10})$/i);return i?i[31*-129+3907+93]:""},Onr=t=>Nnr[$e(470,"LKbS")](c6e(t)),Pnr=t=>{let e=$e,r={CUesa:function(n,s){return n(s)},MGxFp:function(n,s){return n||s}};try{return r[e(410,"NvW]")](decodeURIComponent,r[e(624,"uMo)")](t,""))}catch{return r[e(531,"Mp2^")](t,"")}},knr=t=>encodeURIComponent(String(t||""))[$e(388,"jYoQ")](/\*/g,$e(395,"UcnF")),Dnr=t=>{let e=$e,r={bVhWb:function(s,i){return s(i)},exLGD:function(s,i){return s||i},wKvbk:function(s,i){return s===i},YqXUk:e(285,"T0jF"),rbUZx:e(328,"2xOe"),TMxLR:e(588,"c*Ao")},n=r[e(556,"Zp5*")](String,r[e(351,"BiJP")](t,""));if(!n)return"";if(r[e(633,"T0jF")](typeof globalThis[e(245,"m8gi")],r[e(463,"MyyY")])){let s=globalThis[e(502,"1zMZ")](n),i=Uint8Array[e(350,"!%np")](s,a=>a[e(485,"URX%")](-9008+557*2+7894));return new TextDecoder()[e(279,"Q]Gf")](i)}return globalThis[e(472,"MyyY")]?globalThis[e(423,"d47*")][e(236,"Z@eI")](n,r[e(540,"lWdt")])[e(452,"e&rs")](r[e(616,"G4bI")]):""};function nB(){let t=["emoEW7a+ESoznSobWP4R","WQpdRmk0WQ4","nmoDutNdPmoTWPa+WPZcVG","ArlcMCkDpSoJW5fUv8k9","WOldPw3cOSomWOBcIaW","Cmk/W6tcIcBcS8oHW4vmWOW","WPG2cSkEW7xcUCkzW7hdQuK","iCoYW4tdISomWQFcU8ouWQSZ","WP/dKSkvWRSi","zCk/W6dcTcVcSCo9","WQVdRCkJWPKCwSoWWPpcLmkn","dmorW4XaWP7dOthcLSolbW","nmkwjeJcU8odW7S","fSoeWPniW4RcOq","WQDOWOy","r8kyWQ5L","bHJcLmkyvW","WQ7dPSk/WPGstSo2","r8olW45FWP/cTsFdGSootq","mCoaafLjW7lcHSonE8kb","ECoiaSkpsSkoAmo2kq","D8opW4emW7W","W6KKW6FdOCkqWQ3cTNOC","W7SBW6f9W4S","WRxdQqzB","W60wW6u","wxNcGGVdVCoZvmof","qmochmkECq","W6aGjq","ux3dIGhcVXqSjmoBW6pcICodWP4","W6nVW65NWPRdLW","WRFdPwRcGColWONcIqZdSCow","hComWO8","oWP2","W50TkqGGWO8","y8oHlmkZWPZdLCkvlSkrWRS","AsGFmSkFy8kEWQtcJCkW","oWXhrCoO","m8kuaaaeWQ/dHa","WP3cRCknWPyCW57cLr9ecq","ASkdWRuNjCkiuCknW4rv","W6utW5v/W6m","y8kkmhJcT8oUW4GL","W5WtW704WPRcLfK9wKe","W6PKW7y","iLlcJSoEyCk0W5fQoSohWRiF","bCk7W7biDa","FZqlW50","WQuPh8kvoq","d8oYza","rSkAnGubWR7dRf/dMv4","WOxdTmkqWOm5","n8knta","emo2zmoMW4JdUHe","WQDIWOa","WR7dOxpcTW","o8oaEmkDuSkqWQtcMCkKW68","qSobW7aQW4BdPSkHW500W6W","WRFdJ8kxncT+sICyDa","smkeWQH8","dfqt","uZmXWOFdGG","usnzWRxdGCoImSoo","lrbHvG","tHaS","W7KYamkbW6ddTSo0","W7mLnazFW78","qxpcVXJdU8oY","WPBcOCkxWQ49W7S","CCo4WPBcUSkKW5bnaqDL","WQRdPmopW7JcQSoQtK/cRCkn","r8kiWQ5pEa","W6xcGSk4dIPbAG","W5O+kajKWPStW6biWPC","W6XLW5nPWPtdMG","WR4qhmkeW7O","aCkPWQL6F8owa8kmW4zq","cSoNymo6W5RcO1ShWOVcTa","hHrlyCkq","lWLb","p8kpW50riSocWOL3WQ7cLa","jWXh","W4VdUmokW71fWOBdLqnDaGdcT8ke","xSk7WQyoW5W","kSoCrSodW7pdMcbHWRFcKG","cCoEmG","fCkQW79jzq","eNiFWRJdVSoNBG","W505paTZW4K","D8oZWO3cH8k1W5Xqet0","DCoYWRBcKmk8W5q","WRZdPxdcTCoxWOa","FCkQWPeyW6bo","xxFcTq","DdpdHmkb","D8odkCkmB8kvDSo3kXm","E8oLcmkPWR4","pmoycrWEWQ8","cMWqW6C","sWCHWOBdTtWA","BYOBWRVdLa","WQ1SWOlcTIhdK34HWQNdHG","yZPsW64GWR3cHhmQWPK","W7y/gX9KW5OA","WRpdQ8kLWO3cN8kI","wWK9WPC","pSovFmkwFSksWOxcMmk1W40","oJzgDmoi","DxvWWRpcUMXa","W74mlmklW7e","b8oHzSoLW5S","W6u7W7bTW4hdMHCXjrS","C8oucmkhuSkkDq","W701W6hdM8kwWQVcRxKSWRu","j8o1gmkTkG","WROohSkrnW","WO3dU8k/WRibdCoUWQ3cLmkp","y8k1W4pcRdJcU8o2W4m","W5iGmSkwWQtcOW","WRBdRh/cPG","tmklWRe","WOfGuCk/WQ1pfSo5Cmk9","oCoUWP57W7O","D3P8WRlcQG","l8oPFmkZwG","iW9m","FSojnCk1","cCoXiCkyqGzArCoAya","nCobcCk9bG","WORdOmkQWO4r","WQynEK7dKW7dRCoQySoD","WQdcR1FcNCowWPZcTWddJ8or","wCkhnq","zZbh","W67cRfWBWO7dNIFcICoVsG","WRxdVae","bG7cU8kTAIBcNW","lSofn8kocba","etTLxGJdKhzyW7rD","fXlcSCkY","jCkQW5hdNmkRW4jWiczi","guz6WRtdIsasxmonaW","WRmWh8kJW7m","WRhdP8knWPVcPG","FudcLJVdUmo3wCouWOTS","AtWtW4hdV3K","WOmLaCkBoa","WQ8DhSknia","cmoCW7G0W4ddPSkrW50OW7O","AmkKWOpcLSoeWRRcTCoZWQaF","W7tcJ8k9dJXCyM55Ba","WQRdOwRcU8omWOBcRWBdISoF","W6aGnCkB","W6CQcSkyW5C","zZ5IWP4v","yxOvW4BdTwxdRCkfW6OV","WRhdUbXmW5tcHG","W7CKnCkGW7RdTSo/uNBdMq","WO7dLSo5WQesdSkGW5K","WRZdR8khWPNcNW","WP3dVCkRW6u","a8oyWPLAW4BcQW","WPDOumkPWOq","aIZcILZdHKH/oCo3W7y","kmoCxCkbACkm","WPTfcmokpa","WO8nnCkNba","WQumFea","j8ocWO1yW67cOw3dHCkf","WR5aWPJcGYy","W6FcHSkUdXO","xSopW7ygW4JdQ8kD","W6FcHSkOfa","ESkef2tcVSoMW7uYWPldRW","dqNcNSkUxG","rmookCk/WRxdKSkun8kxWQa","WOVdNCkCWQu9","nSkwfW4","WOtdL8kTWOu/","qSkdiq","WQ/dVbXpW4/cGW","WPVcPmkv","FYCAW4BdV2xcTCoWW4Wg","W77cLmkDdG1sFW","W6LCW4nwWP8","x3NcVGS","WRL5WPRcJd0","nIJcLCkvDG","aa/cTSk8CIi","d8oJCCoT","WQewCa","ebtcQSk2FthcGSoxBW","WPbbd8oCmq","WQVdPSkJWQKwq8oQWPBcNW","W7SvW6b6","ENLNW7ZcVgDafLBdMW","fSouW4JdPCot","eSk/W6bu","WO7dG8o4","W48KW7pcSa","jmoJWOpdQaRcKcK","DSkJW5lcOq7cVCoVW4PcWO8","WR3dR3RcTW","gwWOW7ZcPa","W7WToqvZ","y8kTWQOLW6W","WQu5DfhdLG","uwjPW57dImkA","dNzsWOG","W6WFW6DpW5VdMXeQhHW","FCoppmkKWQddImkAkmk9WPq","z3P6WR/cQG","W6PKW6nYWPFdJWm","dCo+o8oZW5ZdT1LBWPdcVq","WQOrvvpdUG","amovp8kpgqO","W7GkW79NW43dIG","W70XjG","smopW7C3W7RdOmkuW4a6W4G","W4WKoX9ZW7GmW7XtWPe","bYJcJwRdPKXSomoBW6O","sIxdSmkaWRS","W4OiesH3","W5ZdVCknW6HnwmoHW5m6WQO","dWNcTSk0wHi","amovmmkBcejCuSoxFa","zrtdN8ka","pSkEdqq4WOu","WQJdR8oy","qCorW41aWPZcRY/dMmoivq","W7W5W7NdVmkBWRG","taGXWPhdMt4c","WPZcOCkvWRerW40","hb1hxG","WRdcRWzy","tGmMWQldLtOExmoigq","W78+W7y","W4jDW4foWOO","mCo/WO8","DCoBcmkDtG","dmoYECoV","WRbRfSoWeHZcR3T0WRO","W5CuWQa","yWVdGmkp","qCkEW4CkWPJdPI3dSmkmyCk8WPK+","W78Jk8kwW7hdOW","AJial8kuDG","WR7dOSkN","q8oKWOVcUCkn","WQKxD0C","uHldRmk+WRyanHfLWPW","BmoHkmkJWPi","cCoLi8ke","W7P+W6y4","CaRdMG","wmkEyW","WQxdUSkDWOCYl8kqWQjuW54","rSkpWRvBEmoAfmogWQir","Cmk/WO8tW71fnHNcMCoV","W7CKnCkGW7RdTSo/uNNdTa","cMWwW7ZcTtHStCoNWP8","WPOed8krzq","fIfZqYq","nHtcVSoN","D8odkCkmAmkvB8oTiHi","tSoufCk4WPq","hmori8kBca","wHBcUmkZWRGAh04","cxKfW7VcPrG","f2WqW6ZcUa","hMWqW64","tmkPlwJcNW","iSkwerWu","W5e0nCkBW73dPCoKtvhdHa","zeZcKcVdHSovDa","WPi3emknW7RcQSoqW63dRWG","AZ4ycmkzzComWRlcTCk9","WQ0kgmkJj8oHid/dG8oh","W6O4W4BcMxJcHZ9YWRJcTa","BYLsWQ0","amoMFCoMW43dMHTfWPxcSW","BmoTW7WpW7S","WQTaDq","W68TlGu","WQmDz2pdGJNdQSoOFCoB","WRrqfmoTdG","WPXfmmoy","C8ouca","WRpdKb9tW4m","WRhdTmkHWO4m","sJGv","WP/dVafoWPBdMG","CmkCjrGhW63dI0tdGLu","AJOEmSoEmCknW6ddI8oI","BYnfWQev","jCoDgW","AdalW6BdSMRcS8oaW5OR","WRPCF8kn","WR0KgSkaoq","EmoooW","AdalW7tdR3/cQCoMW78P","WQddOmol","e8kYma","W47cJSk4eXfur35mCa","WQTCzmkpWP4","WRbOWOlcJcBdNe0NWOpdRq","zGNdHmkjiq","qZGyW7xcUezhySoPWOy","DSkQWOSSW7XhjqJcOmoS","n8kkt8oC","Ad4pkCkiDmok","WPncWOdcLte","r8oEWRC","WQddOwZcOCog","eSo8z8o+W7RdSrvAWP3cNq","WQTDzCkjWOj9ySocv8ko","Emk8WR4nW6zhlG","mmkweaOKWRpdNa","z8k7W6tcSa","W4ejW6ddPSkJW6RcNMKrWRm","W7TLW5n0WPZdLHNdKG","n8oysG","WOZdNmkQWRWVamkUWPfKW4S","WQ1SWOlcPdZdHMqRWPldQW","bCo2ymolW5ZdRrXhWORcTq","W6NcV8oYW5pdK8o+WOHQzSkMa8ot","WQddSNVcOCogWOBcJYhdTmoO","dmosD8oPW4BdRbPCWRhcSG","F8oZWOVcNq","WRRdUaz7W4ZcJ3ddMmoXeW","FSk1W74","cxKwW6BcVGXTsSoS","FSkPW4dcTcVcQ8o5W4zcWOu","qx/cVXtdHSoE","AZ4ycmkzzComWRlcO8k4","imoYz8oJW4RcUq","WRpdR0RcQ8otWO0","mIJcIKNdOunToa","WQjAW5j+W57dGXWscrC","d8kPW5jsy8kAWQ8","W50vjSk0W6O","WPTlcSoyjtG","dItcV0JdGW","cSktWRX1WP/cVmknW70pW5SHW7S","W4FcJmk/d0G","a35pWOxdICozimodaJS","k2arW4RcLa","waJdKmkcbmk0","WQRdPmopW6JcRCoLse/cK8kv","W7BcHmk/eWPDCG","WPBcOCkxWQ49W7VdHXnNrq","cxKwW6BcVGW","WQ54A1T8W5KZW7boWRW","W5RcImkMfrnFzYqnnG","a3zCWOxdIq","vSoGu8opW4pdKI4","WP4QlCkoW6VcUW","WQtdOmkJWRy6Aq","WQ/dRmk5WPWgwCo2WRdcICkf","W7OImmkIW4u","yCkve2hcUmoRW4aPWPddPq","W7yZlSkE","imo7WPKNW7LVmqu","WRL9WOtcJcFdLwuIWPK","sb8qWPRdPcebxCowhW","WPDVtmkXWOK","ECoLW5C","cgnlWP0","WQmjuMZdMW","wSobW7CMW6hdRCkuW5y6W7S","W7SKW7RdQG","WQmDz3hdNYZdSmoIsCoB","EN9vWQ3cGG","WRaxx03dGcJdSmoeBSob","WQ/dI8k2WRiQ","WOtdIdTpW4S","ySoYWQ7cHSk7W5rnjY94","lSolu8kj","pwHuBCogmCkmWOpcLCkzWRyZpW","EcKfnG","WQnbCSkf","uIFdOSk9e8ovW6DzmSoz","amoFWPPpW4RcVwVdQmkPEW","BMBcOYZdOa","zSoOWPhcGq","w8omW7qAW50","n8o+WQldQGlcHG","ztOwW5S","WPmSp8kgW5y","WRpdP8kLWOhcOSko","W7hcImkUor5qBG","W7SNW4BdI3NcNdXKWRpdOW","WRVdQ8kOWPJcKSk6WQ8","fSoeWPfy","dSofomkecsfqxSowFW","c8ovjCk7bqnnvSoUyG","hSovnSknfre","WQjSWR3cGda","CSkGWPelW7fiiYtcLa","bcZcJvG","krPCxCosWQJcICoRW795","pH5AyCocWO/cRCoJW6n3","EZqEp8kc","WQFdQ8kNWRGqwq","WRVdQ8kOWOxcJ8kV","WP4QnCkeW68","hmornq","WOBdKSkTWQetbSkBWOXQW68","6kE15PYn6lEe5yYE5AE96lAu","CCoFh8kMq8kBC8o8fXa","WQWAaSkbjSo8jXi","WPhcVmkUWQCK","dsZcIq","ESkQWOym","WQNdMmkFWPRcIG","lW1np8omWRJdQmoSW7TH","W64JW6DhW60","pGPBEG","W6HVW7rtWOBdNGxdKmkxdq","WP9bmmoXltZcN1DjWOC","x8ofW7aqW4hdQCkhW5CkW7S","rJldU8k0WRyBeabnWPy","nSkNW4m","CCoFh8k0xSkoACo2nru","baxcRmkxDJFcJ8ouzmoJ","mCoCq8kx","jSogcmkDwCkvBmo8o00","ymopoq","WOBdKSkTWQetbSkhWOzGW64","E8k/W77cVZ7cUG","hIldQuZcVmkSu8oiWQXfdKe","WQfEEmkkWQG","a3HZWP7dMa","pX/dG8kdFmkZWOS5vCo+","iCo/WPG","W6/cRKODWPBdMNhdTSodlw/cMq","xXldQSk5","dSkrWR16WPhcVmkMW6yRW6a1W4m","nmkBaHS","tNFcNX7dOSo/","hSovFSkAbafxx8osDG","WPfkl8oVEW","WR5MWQxcKtVdM2iJ","W6uQi8kWW6S","w8opW5a6W5NdRq","tcu6WRFdJq","sNpcPsZdP8o7smohWQT2","CCoomr4hWR7dJXG","WQ7dRSovW4/cOmoQtMpcRCkF","WQtdSmkAWQmv","WRZdHCkKWRmy","gWTokG","WPVdOCkSWQ8wBSoXWRhcJ8kj","WQHOWOxcGh/cHG","u8kHjCk+WPhcRe0yWRNcSKCnfCoB","WRPiWQi6WPBcMKb1lrS+WR8Zma","WQRdUbbg","kJzsWRO0WRdcHMOGW7K","bh5VWPFdMq","WR/dSCkA"];return nB=function(){return t},nB()}var MK=class{constructor(){let e=$e,r={clpYt:e(564,")!nc")+"5",xdtMC:e(228,"URX%")+e(476,"UcnF")+e(558,"uMo)")+e(378,"dkje")+e(213,"dkje")+e(375,"!%np")+e(393,"URX%")+e(437,")IqX")+e(411,"!%np")+e(266,"2xOe")+e(628,"lNDX")+"6",zUcdb:e(593,"lWdt")+e(490,"D*Ik")+e(338,"@WPP")+e(625,"ZtCn"),gqANl:e(235,"Lrz%")+e(432,"OkFO"),EbYEV:e(346,")!nc")+e(301,"JFO4")+e(469,"LKbS")+e(354,"OkFO")+e(337,"Lrz%")+e(353,")!nc")+e(483,"G4bI")+e(613,"2xOe")+e(642,"#RnD")+"|",oFswk:e(479,"j8@4")+e(542,"ZtCn"),vSsFm:e(412,"jYoQ")+e(290,"@tA8")+e(308,"@WPP")+e(548,"jYoQ")+e(315,"MyyY")+e(462,"MyyY")+e(466,"IM[A")+"/"},n=r[e(260,"G4bI")][e(421,"4zyD")]("|"),s=950*1+2*2657+-1044*6;for(;;){switch(n[s++]){case"0":this[e(498,"8irg")]={"User-Agent":r[e(513,"uMo)")],Accept:r[e(396,"UcnF")],"Content-Type":r[e(243,"1zMZ")],"hcy-cool-flag":"1","x-deviceinfo":r[e(501,"T0jF")]};continue;case"1":this[e(271,"MyyY")]=[/https:\/\/yun.139.com\/shareweb\/#\/w\/i\/([^&/?#]+)/,/https:\/\/caiyun.139.com\/m\/i\?([^&/?#]+)/,/https:\/\/caiyun.139.com\/w\/i\/([^&/?#]+)/];continue;case"2":this.x=Bs.default[e(525,"1zMZ")][e(534,"m8gi")][e(648,"IM[A")](r[e(383,"T0jF")]);continue;case"3":this[e(652,"OkFO")]=r[e(464,"uMo)")];continue;case"4":this[e(403,"Xaj^")]="";continue;case"5":this[e(381,"4zyD")]={};continue}break}}[$e(658,"2xOe")+$e(508,"Lrz%")+"n"](){let e=$e,r={OtYqH:function(s,i){return s(i)}},n=Rnr[e(636,"55K9")](s=>globalThis[e(535,"i1ho")]?.[e(379,"c*Ao")]?.[s])[e(268,")!nc")](s=>String(s||"")[e(632,"$aIC")]());return r[e(418,"lWdt")](String,globalThis[e(638,"URX%")+e(355,"JFO4")]||n||"")[e(254,"lNDX")]()[e(344,"e&rs")](/^Basic\s+/i,"")[e(252,"h42)")]()}[$e(544,"dkje")+$e(585,"Zp5*")+"er"](){let e=$e,r=this[e(659,"jYoQ")+e(282,"uMo)")+"n"]();return r?e(210,"jYoQ")+r:""}[$e(619,"1zMZ")+$e(342,"Mp2^")+$e(634,"rNH4")](){let e=$e,r={KEIEG:function(s,i){return s(i)},LtPTF:e(654,"m8gi")+e(610,"NvW]")+e(283,"XMYa")},n=this[e(570,"UcnF")+e(486,"IM[A")+"n"]();if(!n)return"";try{return r[e(449,"MyyY")](Dnr,n)[e(521,"2xOe")](":")[5908*-1+-4847*-2+-3785*1]||""}catch{return console[e(311,"Zp5*")](r[e(620,"I)@B")]),""}}[$e(294,"I)@B")](e={}){let r=$e,n={...this[r(244,"G4bI")],...e},s=this[r(233,"o@gK")+r(303,"uMo)")+"er"]();return s&&(n[r(608,"Z@eI")+r(205,"e&rs")]=s),n}[$e(612,"T0jF")+$e(272,"2xOe")](){let e=$e,r={CprSo:e(424,"XMYa")},n=this[e(619,"1zMZ")+e(392,"G4bI")+"n"]();return n?Bs.default[e(577,"m8gi")](n)[e(317,"2xOe")]()[e(546,"@W9e")](0,5919+-9197*1+-53*-62):r[e(258,"j8@4")]}[$e(276,"@tA8")+$e(339,"IM[A")](e){let r=$e,n={NufTh:function(i,a){return i===a},CtZhg:r(580,"Z@eI"),eYtIC:function(i,a){return i(a)},jcqQW:function(i,a){return i||a}};if(e&&n[r(477,"NvW]")](typeof e,n[r(600,"rNH4")]))return e;let s=n[r(291,"dkje")](String,n[r(234,"Z@eI")](e,""))[r(474,"BiJP")]();if(!s)return null;try{let i=this[r(645,"lNDX")](s);if(i)return JSON[r(601,"MyyY")](i)}catch{}try{return JSON[r(450,"T0jF")](s)}catch{return null}}async[$e(649,"jYoQ")+"pi"](e,r,n=-11290+3215*6){let s=$e,i={vVTpa:function(c,u){return c+u},MTgGx:function(c,u){return c!==u}},a=JSON[s(206,"#RnD")](this[s(447,"JFO4")](JSON[s(238,"2xOe")](r))),o=await Ae[s(529,"dkje")](i[s(289,"Q]Gf")](this[s(434,"UcnF")],e),a,{headers:this[s(299,"BiJP")](),timeout:n});return i[s(215,"Z@eI")](o[s(603,"#RnD")],200)?null:this[s(595,"#RnD")+s(212,"8irg")](o[s(605,"#RnD")])}[$e(465,"1zMZ")+$e(446,"dkje")+"fo"](){let e=$e;return{account:this[e(298,"JFO4")+e(640,"2xOe")+e(309,"i1ho")](),accountType:1}}[$e(207,"e&rs")+$e(554,"d47*")+"nt"](e){let r=$e,n={UDKEa:function(s,i){return s===i},UyiPA:function(s,i){return s===i},ICaGU:function(s,i){return s(i)}};return e?n[r(557,"d47*")](e[r(231,"NvW]")],27*-181+7525+-2635)?!0:n[r(583,"XMYa")](e[r(211,"IM[A")],-7511*-1+107+26*-293)&&n[r(457,")!nc")](Onr,e):!1}[$e(471,"BiJP")](e){let r=$e,n={opnjD:function(a,o){return a==o},SxozV:r(226,"#RnD"),diPzu:function(a,o){return a===o},IJmyj:r(278,"o@gK"),UHMJe:function(a,o){return a!==o}},s=Bs.default[r(467,"pA$z")][r(503,")!nc")][r(515,"LKbS")](-7*-941+528+-1*7099),i="";if(n[r(306,"$aIC")](n[r(249,"uMo)")],typeof e)){let a=Bs.default[r(420,"MyyY")][r(598,"BiJP")][r(607,"OkFO")](e);i=Bs.default[r(637,"OkFO")][r(566,"UcnF")](a,this.x,{iv:s,mode:Bs.default[r(255,"$aIC")][r(533,"55K9")],padding:Bs.default[r(281,"MyyY")][r(219,"URX%")]})}else if(n[r(333,"ZtCn")](typeof e,n[r(481,"T0jF")])&&n[r(522,"BiJP")](e,null)){let a=JSON[r(357,"m8gi")](e),o=Bs.default[r(563,"55K9")][r(495,"o@gK")][r(358,"dkje")](a);i=Bs.default[r(399,"D*Ik")][r(547,"c*Ao")](o,this.x,{iv:s,mode:Bs.default[r(584,"1zMZ")][r(368,"e]tE")],padding:Bs.default[r(363,"Z@eI")][r(596,"T0jF")]})}return Bs.default[r(617,"$aIC")][r(369,"d47*")][r(526,"BiJP")](s[r(523,"BiJP")](i[r(220,"ZtCn")]))}[$e(645,"lNDX")](e){let r=$e,n=Bs.default[r(571,"m8gi")][r(453,"Z@eI")][r(505,"URX%")](e),s=n[r(458,"@W9e")](),i=s[r(277,"lNDX")][r(551,"dkje")](2554+2*-1139+-272);s[r(203,"XMYa")](s[r(641,"@WPP")]),n[r(394,"!%np")](i);let a=Bs.default[r(622,"JFO4")][r(626,"LKbS")][r(238,"2xOe")](n);return Bs.default[r(241,"G4bI")][r(267,"Q]Gf")](a,this.x,{iv:s,mode:Bs.default[r(537,"IM[A")][r(334,"uMo)")],padding:Bs.default[r(428,"j8@4")][r(413,"@tA8")]})[r(655,"c*Ao")](Bs.default[r(573,"i1ho")][r(326,"@tA8")])[r(361,"j8@4")]()}async[$e(436,"2xOe")](e){let r=$e;this[r(499,"h42)")][r(506,"G4bI")](n=>{let s=r,i=n[s(614,")IqX")](e);i&&i[1*1865+-230*-21+-6694]&&(this[s(208,"j8@4")]=i[-6295+-3148*-2])})}async[$e(555,"8irg")+"fo"](e){let r=$e,n={VxwkZ:r(225,"Xaj^")+r(530,"@W9e")+r(560,"MyyY")+r(332,")IqX")+r(322,"pA$z"),XCCki:r(275,"@tA8")+r(222,"@WPP"),YUIdk:r(451,"o@gK")+r(371,"lNDX")+r(493,"uMo)")};if(!this[r(562,"OkFO")])return console[r(639,"$aIC")](n[r(362,"JFO4")]),null;let s=this[r(635,"D*Ik")+r(527,"I)@B")]()+"-"+this[r(264,"Q]Gf")]+"-"+e;if(this[r(539,"d47*")][s])return this[r(229,"ZtCn")][s];let i=this[r(269,"MyyY")+r(202,"jYoQ")+"fo"](),a={getOutLinkInfoReq:{account:i[r(373,"OkFO")],linkID:this[r(559,"BiJP")],passwd:"",caSrt:0,coSrt:0,srtDr:1,bNum:1,pCaID:e,eNum:200},commonAccountInfo:i};try{let o=(await this[r(657,"uMo)")+"pi"](n[r(324,"uMo)")],a))?.[r(512,"OkFO")];return this[r(574,"JFO4")][s]=o,o}catch(o){return console[r(482,"T0jF")](n[r(250,"LKbS")],o),null}}async[$e(631,"D*Ik")+"ta"](e){let r=$e,n={fVCVq:function(c,u){return c in u},uPFWK:function(c,u){return c>u},yGIKE:function(c,u){return c(u)},wnEmA:r(359,"LKbS"),niFqM:r(520,"j8@4"),wkKkE:function(c,u){return c===u},LLNeN:function(c,u){return c===u},YKvpx:function(c,u){return c>u}};if(!e)return{};let s=e[r(385,"pA$z")](n[r(511,"uMo)")]),i=s?n[r(263,"NvW]")]:e;s&&await this[r(594,"Z@eI")](e);let a={},o=await this[r(492,"Z@eI")+"le"](i);o&&Array[r(438,"d47*")](o)&&await Promise[r(589,"@WPP")](o[r(468,")IqX")](async c=>{let u=r,l=c[u(487,"Z@eI")]||c[u(390,"IM[A")];!n[u(519,"c*Ao")](l,a)&&(a[l]=[]);let d=await this[u(295,"G4bI")+"l"](c[u(618,"d47*")]);d&&n[u(459,"h42)")](d[u(402,"j8@4")],2734+1*-2734)&&a[l][u(259,"XMYa")](...d)}));for(let c in a)(!Array[r(214,"4zyD")](a[c])||n[r(488,"Z@eI")](a[c][r(439,"Q]Gf")],6110+1661*-1+-4449*1))&&delete a[c];if(n[r(606,"Lrz%")](Object[r(288,"lWdt")](a)[r(426,"IM[A")],-7547*-1+-4836+2711*-1)){let c=await this[r(592,"!%np")+"l"](n[r(376,"dkje")]);c&&Array[r(518,"URX%")](c)&&n[r(646,"2xOe")](c[r(427,"lWdt")],-2959*1+-7060+-1*-10019)?a[n[r(478,"Q]Gf")]]=c:(a[n[r(217,"8irg")]]=await this[r(321,"j8@4")+"le"](e),a[n[r(597,"e]tE")]]&&Array[r(651,"lWdt")](a[n[r(509,"BiJP")]])&&(a[n[r(247,"@W9e")]]=a[n[r(549,"1zMZ")]][r(565,"m8gi")](u=>u&&Object[r(336,"o@gK")](u)[r(304,"e&rs")]>2*-1402+-1*4219+7023)))}return Object[r(300,"h42)")](a)[r(352,"o@gK")](c=>{let u=r,l={usoWO:function(f,p){return n[mu(386,"uMo)")](f,p)}},d=Array[u(400,"Z@eI")](a[c])?a[c]:[];a[c]=d[u(480,"D*Ik")](f=>f&&f[u(273,"lWdt")]&&f[u(562,"OkFO")])[u(349,"2xOe")](f=>{let p=u;return{vod_name:f[p(543,"ZtCn")],vod_id:[f[p(528,"o@gK")],f[p(401,"d47*")],l[p(372,"@tA8")](knr,f[p(382,"D*Ik")]),f[p(425,"XMYa")]??""][p(262,"D*Ik")]("*"),vod_size:f[p(461,"rNH4")]}}),!a[c][u(491,"LKbS")]&&delete a[c]}),a}async[$e(209,"lNDX")+"le"](e){let r=$e,n={moUPr:r(242,"ZtCn"),QmuED:r(440,"UcnF"),ukbCy:function(s,i){return s>i},FLIXt:r(627,"pA$z")+r(341,"NvW]")+r(602,"Zp5*")};if(!e)return null;try{e=e[r(385,"pA$z")](n[r(489,")IqX")])?n[r(221,"#RnD")]:e;let i=await this[r(448,"m8gi")+"fo"](e);if(!i||!i[r(538,"#RnD")])return null;let a=i?.[r(500,"I)@B")],o=a[r(287,"8irg")](d=>d[r(314,"j8@4")]),c=a[r(367,")!nc")](d=>d[r(507,"URX%")]),u=/App|活动中心|免费|1T空间|免流/,l=[];if(a&&n[r(318,"Z@eI")](a[r(365,"c*Ao")],-2324+51*103+-2929)){o[r(265,"URX%")]((f,p)=>{let m=r;!u[m(532,"4zyD")](f)&&l[m(292,"@tA8")]({name:f,path:c[p]})});let d=await Promise[r(582,"Q]Gf")](c[r(656,"h42)")](async f=>this[r(246,"1zMZ")+"le"](f)));return d=d[r(581,"lNDX")](f=>f!=null),[...l,...d[r(313,"OkFO")]()]}}catch(s){return console[r(445,"jYoQ")](n[r(435,"UcnF")],s),null}}async[$e(270,"MyyY")+"l"](e){let r=$e,n={vEGyM:function(s,i){return s in i},fboGh:r(280,"NvW]"),YAZQe:function(s,i){return s!==i},eChTm:function(s,i){return s!==i},MWANd:r(408,"d47*")+r(650,"$aIC")+r(422,"ZtCn")};try{let s=await this[r(404,"XMYa")+"fo"](e);if(!s||!n[r(431,"rNH4")](n[r(406,"!%np")],s))return null;let i=s[r(307,"ZtCn")];if(n[r(240,"$aIC")](i,null))return i[r(348,")!nc")](o=>this[r(473,"e]tE")+r(327,"o@gK")+"nt"](o))[r(455,"!%np")](o=>({name:o[r(261,"i1ho")],contentId:o[r(398,"@tA8")],linkID:this[r(232,"o@gK")],size:o[r(409,"c*Ao")],path:o[r(653,"e&rs")]||"",coType:o[r(319,"G4bI")],suffix:c6e(o)}));if(n[r(320,"UcnF")](s[r(494,"Q]Gf")],null)){let a=s[r(343,"uMo)")][r(384,"jYoQ")](c=>c[r(433,"#RnD")]),o=await Promise[r(516,"Xaj^")](a[r(287,"8irg")](c=>this[r(293,"c*Ao")+"l"](c)));return o=o[r(567,"Xaj^")](c=>c&&c[r(550,"MyyY")]>1*-1130+-5721+6851),o[r(454,"IM[A")]()}}catch(s){return console[r(629,")IqX")](n[r(572,"c*Ao")],s),null}}[$e(340,"e&rs")+$e(587,"MyyY")](e){let r=$e;return e&&(e[r(517,"D*Ik")]||e[r(257,")!nc")+"L"]||e[r(201,"IM[A")+"L"]||e[r(345,"o@gK")+r(568,"e]tE")])||""}async[$e(643,"lWdt")+$e(599,"JFO4")+$e(442,"@tA8")](e,r){let n=$e,s={YFFIh:n(405,"55K9")+n(510,"rNH4")+n(325,"o@gK")},i=this[n(615,"jYoQ")+n(370,"rNH4")+"fo"](),a={getContentInfoFromOutLinkReq:{contentId:e,linkID:r,account:i[n(224,"URX%")]},commonAccountInfo:i},o=await this[n(545,"rNH4")+"pi"](s[n(497,"$aIC")],a);return this[n(204,"LKbS")+n(429,"@WPP")](o?.[n(621,"I)@B")]?.[n(323,"55K9")+"o"])}async[$e(284,"JFO4")+$e(239,"UcnF")+"ad"](e,r){let n=$e,s={OoEOU:n(441,"h42)")+n(316,"I)@B")};if(!e)return"";let i=this[n(615,"jYoQ")+n(296,"Zp5*")+"fo"](),a={dlFromOutLinkReqV3:{account:i[n(443,"@W9e")],linkID:r,coIDLst:{item:[e]}},commonAccountInfo:i};return(await this[n(553,"G4bI")+"pi"](s[n(356,"G4bI")],a))?.[n(274,"8irg")]?.[n(407,"URX%")]||""}async[$e(374,"Xaj^")+"ay"](e,r,n="",s=""){let i=$e,a={nMmxc:function(l,d){return l(d)},ktWbP:function(l,d){return l===d}},o=a[i(623,"LKbS")](Pnr,n),c=a[i(444,"Z@eI")](Number,s);if(a[i(286,"Xaj^")](c,7*-820+4*731+-704*-4)){let l=await this[i(366,"IM[A")+i(430,"JFO4")+"ad"](o,r);if(l)return l}let u=await this[i(223,"55K9")+i(391,"h42)")+i(504,"2xOe")](e,r);return u||await this[i(611,"lNDX")+i(536,"e&rs")+"ad"](o,r)}},WK=new MK;var A9r=Re(Jn(),1),$r=Cs;(function(t,e){let r=Cs,n=t();for(;;)try{if(parseInt(r(477,"wAG8"))/1*(parseInt(r(799,"owGi"))/2)+-parseInt(r(683,"&1aG"))/3*(parseInt(r(504,"&1aG"))/4)+parseInt(r(484,"Zi77"))/5*(parseInt(r(700,"%pyk"))/6)+parseInt(r(882,"KKCQ"))/7+-parseInt(r(611,"KLQ)"))/8*(parseInt(r(898,"KLQ)"))/9)+parseInt(r(571,"J9r#"))/10*(parseInt(r(967,"bS5h"))/11)+-parseInt(r(875,"aj)6"))/12===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(iB,759989);function FK(t){let e=Cs,r={aQTMv:e(518,"gKLo"),Xhcaf:e(588,"wAG8")};return Buffer[e(837,"&1aG")](t,r[e(500,"*N*l")])[e(784,"HEZz")](r[e(903,"Ao3N")])}function Bnr(t){let e=Cs,r={ucHpM:function(n,s){return n(s)},ofBhN:function(n,s){return n||s},VcqJp:function(n,s){return n+s},kbRIh:function(n,s){return n%s},THvmR:function(n,s){return n-s},KQCCl:function(n,s){return n%s}};try{let n=r[e(954,"owGi")](String,r[e(660,"oHWm")](t,""))[e(600,"J9r#")](".")[1]||"";if(!n)return null;let s=n[e(573,"Ao3N")](/-/g,"+")[e(710,"aj)6")](/_/g,"/"),i=r[e(927,"MXDr")](s,"="[e(539,"QmV5")](r[e(857,"Iz)7")](r[e(544,"J9r#")](-5810+5*665+2489*1,r[e(521,"g3tn")](s[e(966,"KKCQ")],-1*5317+5900+-579)),-2872*-1+1*263+-3131*1)));return JSON[e(668,"&Q7w")](r[e(688,"&Q7w")](FK,i))}catch{return null}}function Cs(t,e){let r=iB();return Cs=function(n,s){n=n-(5*809+2686+-2094*3);let i=r[n];if(Cs.fbcJKL===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;hn[e(883,"KLQ)")+"ms"][e(486,"J9r#")](s)),n[e(894,"gKLo")]()}catch{return""}}function Mnr(t){let e=Cs,r={bEzLj:function(n,s){return n(s)},PvRXA:function(n,s){return n||s},SIpct:function(n,s){return n||s}};try{return r[e(480,"Zi77")](decodeURIComponent,r[e(916,"!njl")](String,r[e(804,"KKCQ")](t,"")))}catch{return r[e(726,"g3tn")](String,r[e(819,"aj)6")](t,""))}}function Wnr(t){let e=Cs,r={EWYnw:function(n,s){return n(s)},sMmAJ:function(n,s){return n(s)},SkCVI:function(n,s){return n||s},cIAyN:e(796,"HEZz")};try{return r[e(666,"aj)6")](encodeURIComponent,r[e(649,"2yCc")](String,r[e(597,"$pzm")](t,"")))[e(582,"KKCQ")](/\*/g,r[e(523,"YOvU")])}catch{return""}}var $K=(t,e)=>t?t+"/"+e:e,UK,qK={},sB={set(t,e){let r=Cs;qK[t]=e,UK[r(887,"^[8e")](r(918,"u0f9")+t,e)},get(t){return qK[t]}};function iB(){let t=["gCkEW6u","W4BdMSormCoVhCoroW","DmkRWONdRmkJpSotWR3dQ1C","dSonWOiECW","fCo+WPOhW6X5W54Y","CsdcS8o1AX/cQ8kYWQxcLW","W7JdMvzeCZfygCkecW","W4PsWPfdwvpdH8keW7pcOG","dmoiisVcJ8oIWQe","aCoUW49cmCoUW5O","f8o7W5K3j000umosW4u","WRv8WQldSa93WPG","nbCpsa","sSo/W5Pn","B8k0WONcT8oYaSo0WO/dQqe","f8oEesZcMmoWWQW","W6NcGmkeW7fXWRBcKmkx","l3BdKNlcPmk4qW","gSoEctdcNG","sqtdId4N","ta3cLW/dTSoNWP8","vmkJE3bpW6VdMYVdHCoK","rCosihjbW6JcKxldHSo5","edSHW4xcHeZdMNhdISocW4JdTG","ls7cTSkfkge","tZNdHf/dKW","W67dKw1of8kUxmk5","hLxdI0NcT8oTWPtdNLz8","W44XW40Wia","W695WOKRE8kyk8knemoi","WPOcW6zUWQPBWRKWW5ZcPW","vmkPxsf0W4jBatjS","c8kRWQWyuvNdQte","amkJWRu3tW","W5KDW5qq","xmkrumkzWQmLW6/dLSkjWQ0","o8kIWRKpu33dVJe","cXes","WOPFWPxdTWq","W7BcH8kOW4zE","vSogWR5vWOG","qSoHC8kWWQ8","W7hcRsZcIW","W7lcPmo3nG","W5OzW5q","mCk3sMXx","mqKh","WQ3dUHRcGSke","ggtdJwhcPa","ASoXW5LcBmkZWOHbW7i9","W5tdIK1oamkFuG","xsZcS8kvpeBdUCo/W6ldPq","W7C4W5K4ca","lYBcRSkb","WQvZW7nAW4K","ar8zxHW","WPr4WPZdVqi","u2TfWQddKCoEW6VcGM7dJfHDda","sgjhEmk6","h8kUWP4","umoopZpdHCoYWRdcUmkfrW","zCoDWR1w","FCo7W6PkrM/dJbNcK8kV","W5JdKCk8W6fTW4mXWRZdHfe","hupdMYRdSmoGWP/dNaD8","drRcUCk3WOK","lxldJvJcOmk+qXy","WQJdUcdcGCkS","uGaUW5WCtmo9iCk6dq","W4BdKSoppCkUsCkpACkfiG","W4/dLMni","xmo1FCk3WO4","vbaUW7a","W4BcPmoJFCkElmogW5BdImkI","btSfW7a","tSk4wJ5RWPiCkxGW","zrVdVf7dSa","bepcSG3dQCoIWP7dPbvT","FmkgsmoHWR5ZdNFdK8kUWP8","mCkaW6GtW5/dRSkubCoMW6S+wmks","vgD1WOpdLbW","CmkIWP/cSmkUmmof","WQ7dRXRcMmkpW5mJfIS","r8oWW4Dy","W4hcIt7cSmkY","a3ddVSoJ","lclcRG","W7tcUCkHWPq","t8k4scnKWO84iwu/","bSkfy25bW6xdMW","hctcS8kRWQJdVmoZvq","CthcQ8kBcW","W6FdPSkeWPpcHK/cVsBdUL4","o8kVWQOlu0q","tq7dRhxdUW","mZpcT8kjda","W6JdQSoUnSor","smosWQfsWQtcJwPvWR/dPq","AWHbzHi","xSoTgmo3","AmkgWQ/dGSoVv8kd","W7JdPCo0n8o7","nmk7W4KTje9UhmkpWOO","yaZcIrtdTCoIWPRcNeuH","WPBdOWtcSmk0","ya7dP3RdTq","xCoiWRWkzSo+dGNcRI0","CSkQW4pcOSk/pSkpWQ/cRvu","kcBcRSkf","hq0FxZm","ECkPsdy","pWCgBWm7Ba","5yIf5B2k44oi6ysW572y44cN56Mc5RUy6lYs6kks","cslcU8ksbhFcUG","WRWPW4L1jmo0t8oRzmkk","rCovqSkFWOm","rZaHduJcM8ohWPb6Ea","Aaz8","aSkxdCkQu3efWR8","nIlcTSkG","dmovcSkXW6bnlK0","WQP4WQm","sIJcS8kY","lNVdGNxcPmkzuHKdWP8","jmkVWRyAqL4","xmoyWRjeWOG","W47cNmoxj8oUeG","W7xdOSkvWOVcML8","fmkDW64","zSkDWRNdK8oLyCkxWQ0vsG","lSo4WR8irW","W5dcKCkKW5DJW45I","W7aoW7KyjG","W4C/W48YgW","dmkMW7HbWPq","W4/dVCodWPtdHW","Bqy8W4e/","gCoija3cGSoWWQFcS8k4ta","lYJcRCkodwRdU3PEW5m","ucWLW4pcHatdIfNcH8oB","WOnwWQVdLXi","W4FcV8kMWPXb","W5pcHSkZW7e","EaldTd0B","BLO9qtGRFmom","WPSrW7a","rSoREmkQ","W43cP8kTWRTB","W6ddV8kyWPRcPKG","W4tcV8kIyCkzmmofWOJcNSoI","AL5oDSk0","umksqbrf","gGFcK8o6BXZcSSkSWQ3cGq","BqddJb46Aa","WRhdVgDebwqvqSoqaG","aCk1bmkkxa","gmkfWOSP","ds7cTSkfl2tdT3S","yMFcM8kqewNdV0KuW5G","WRNdUHZcKa","WQzQWRa","pgBdL28","W63cPmkK","smkYEIv1WO4gjW","WP8vW61QWQPS","sSo6WOnQEa0/e8oPW4u","WPX8W4HdW5O","W7tdL2PtpSkxwmkP","qSoXW4LfBSkjWPTj","oSocjZdcHSo+WRtcSSkKua","W5VdT8owWRtdNSkDkW","W7y3W6pcQ1OQW5ZdICoyWRa","tmouWQ1tWOG","tNfvWOpdHrxdKa","iGOusG","gCoVAa","W73cRSkTWPK","B8kFBJXn","WQpcIGzvb2ydfmksDZRdS8kw","ASkhWQ/dLq","DCkZtZ5lWO4Bna","nmkZeCkcAa","qCoJFG","WPDVWOhdNsS","es8cW7K","rmoSWPecW6T4","W47dQmoiWPJdIW","W67dMSk8WO3cPq","W7/cKmkWW71oW4r5WQS","cmktW71TWQpcGMnF","ls7cTSkfpMVdU3mu","WR5RW65jW5/cL3RdNfldVa","sNnaWOldSq","W73cL8kIWR03WP49W7hcNWy","W67dHmofh8ov","t8oSWOS","xSo/W51FCmkZWPTr","W6tdPSoRW50VW6dcM8kXqmkV","j8kPy2fu","WRr1WRRdPG8","hc7cTmowvt7cUMzhWO4","uGaUW4SBwSoHkmkrdq","yGFdHHq/zCkTW64","kCoDeSkGW6jq","aW0yqJC","W7dcKSkRW5XIWQlcNq","W5/cImkgW4TzWQC","W5JdMv0cwq","WPpdVHdcHq","xSoOfmkJW43dULxcUXSp","FbH8","WR4PW499","W40jW5mz","xmoMWP4wW6S","eSkpyuDbW6xdLG","mCkJdmkKWRi","lSk4WRCq","WO0HW5uQp8o6xmkKFmkn","rSo2umkSWOG7W7W","AWRcNXJdKmoQ","W73dLtZdKCoqWOrKqgK3","BCkMWP/cSmk/omosWR0","WQn4WQFdPa","B8kbWQFdLCojwG","E3KQxq","W73cRsRcJ8oV","u8kWbG","zJe+W44r","fJCyW5/cJG","W7ddLLC","W47cOmkImCkaF8kfW4/cHSk/","e8kfz05jW7ddM1dcHSk2","W43cOSoQoSobs8khW4O","wSkaWQRdGSoLBSkqWQG","WR0TW49py8kGdSk5a8ox","WQb8WQC","Cw4mFmoV","yqTJ","W77cHmkEW714WQlcLSkAW5mq","kJFcQSkmcgBdU2OyW5u","gSkRiG","pSkPlCkbDq","rg7cR3ddQghdQ8oxEs0","xaSZW6W","psJcQ8kkWONdQSoWxfuC","iMpdLN7dI1VdKmovAhm","dCoiiNhcMCo4WRlcUmkUsW","sGBcHXddOmokWPtdHb5J","sJZdJ1/dMW","BmoMWOGlW7n/W4SZuHu","gSkPgSkzWPm","d8ogECkSWPu3W6blCmos","WOG+W6Xuqa","W6hcMsVcI8kY","rSouiZmyWRxcIhBcOmkBgCkJW6W","omo3hmkKW5C","sCoSFCk7WQu0W6qjja","v2mKxmoRh3hdHrlcRq","D8odWRvp","p8kjzY0vWRxcIsRdH8oH","W7tcVde","W7aGW6BcSvK8WP/cR8oOWQVcQvu","pmorh8kMW6rkdfxdL8k4","WQOPW4HVE8kUdSkO","dSoVg2LcWOuFkxiw","B8kIWOVcPSk3","v3DNWPK","W6BcTCojn8oI","W4FdIMzooa","bfDP55Ma55Ii5B2U5AAI6lwO77+z6k6B","55I05B+H6l655P+l776l6yEV5PES55Mp5B+W","WRDQW65r","W4/cV8kMW4WAWOpdS8oLDmkN","WQ4NW6HOECkOeSk7","uCoVhSoSW7G","rNf3","l8kXW4r1WQC","FSkgsSoTWRatB2pdJSkYWP8IW7e","ACoSFCk7WRm+","WRHWW60","oX/cLSkPWQa","WQFcKGjvarzjhCkCuq","rCkVWO/cOSkP","A8kUxWnW","6i6l5yYl55UXydxdLoI1JUwoT+AiH+wlGq","WRWNW4LzASkIfa","z8oqWQHd","W6RcS8k5WO9lW4VcPW","bmkRamk/WRu","nbyuxXZdU8kEW4q","dSk0Ehfl","WPCrW7DS","ve9FWOhdHq","Eb7dTZyz","WPpdJCoNW6DZ","A8kTWRhdVmoQ","u8oIbCoI","zdFcU8koudFcQte","i8kBfCkCDxeAWR/cSgG","nCk8dSk/Da","W4NdNCouia","r8oIh8oCW7RdVKxcOWrj","WQpdTSofW4jYW6dcKG","dSkJWRqyEfFdTI0","W7VdSCoiWPtdSCkFlHy","ywT4WPtdVHa","eSkDemkfBq","WPJdGJdcGCkK","WRCFW7rJWRjRWQ0MW6xdQa","W7BdT8kaWPC","i8kjFtquWR3cNNZdGSoJ","jYJcVq","oc/cU8ksbfFdV3KuW4i","WQv6W64","W5hcUmkUWPvIW5hcOmoP","qxi6W5NcVCkLWP/dOGldTq","6i295y2t55MCWOeYWRlLRk3NO5NMIB/LIyu","BG9K","W5RdNhG","WRS7W5G","jmkVqfy","q8oQDG","WRZdRmoGW5vVW57cM8k0dSkJ","lSoqgG","yYjjySk+gW7dNJuo","vbuZ","wmkvtdbJWOiA","WRj+W65y","W7FcT8kS","BCo5WO9NWOS","umkYtG","W77cHmkE","W57cPmk+","W6tdKxSuEq","zb7dPuldQW","dSk2W6vKvmkrWQujWOCd","l2ddHNpdVmkEyZHlW58","gsZcQ8kRWOhdSSoSsq","vGOHzWhdPSkL","tqxdIWWw","W6FcQsJcHSkHCwu","jYlcTmkhfw0","zmk+wSkbW7BcUbtcINC","kCktWRCuEa","adyD","WQT8WR3dOH5S","bLDSWQ1kASobdSkJg8ox","cSkEW6zIWQtcJtfiWQ3dSG","cLS/tXSEAmoAuq","rNDGWPK","pmkkdmkMCa","ESkIWPJcSCkGomouWQtcVv8","wWJdJIqdBCkTW6NdGq8","W6tdJeLyhq","m8oqumo9lMajWRtdL2u","FCoVzSkMWRm","W6ldT8kaWP4","oYpcU8k8WONdTmo6","W47dKw1of8k1tSkK","W5JdSfTPiW","W7VdKgbzo8kA","WOZcQmo+WRtdNmkridK","AqZdGqKwFSo+","qalcGW","W5ZdQmouWP3dLSkDiGFcUSkm","aX8bta","BCkMWP7cOSkIja","WR5UW6bUW6i","W64uW4eddY7cMSoj","obGerGS7zCopx8kd","FaS8W7C/uSoGoq","W4FdLSoj","wmoAW4jnWPNcRKiwW6JdUG","55Mt5B+C5OUV5yU6","vtpcPrddNq","lSkJWRqju0q","WPjWW61xW4ddGJtcL3ddMq","gSk8WO81Fq","phL3w8kPohK","fCovnIFcSG","WQOPW4HVFmkUdSk4","W7FcIslcPSkQ","FcdcQ8k/f0G","f8kwamk9EeaFWR4","lCoAaCofW7z5W78","WQtdValcR8kJFwn7","W4NdL8oyo8kUdmoqp8ospG","gCoUWRGDFCo2","W5pcMmk3W6DUW5K","emkCiSk6Da","cX4JyIK","stNcQ8kZkG","ECkjWR/dMa","W73cGmkEW48","W63dL8o3WQu","CCkVWOBdMSoI","fSomiW","lc7cTmooudFcQw4qW5q","ANrnACkb","umozWR1qWOlcImoBlq","emkDW6rGWOhcIN1oWO7dVW","W5ZdQfHXba","abSbFHhdISkBW4unmq","eSkbywSpWRpcJtpdMSoK","heuBW6Gdv8o2gSkWdG","ESo4W6PfC1tdRchcRmkw","gCo9mtBcHq","W4pdOSkvWPG","f8kzW7Gvlq","hCkPa8kGtq","jCklfCkN","phFdHW","W6VcKSkpW5OTWPBcSmk5WRjb","WQ5pW4XuW6G","WRyGW4TjBG","W4hdG8ou","WO5sWPbFwKVdJ8kqWO7cOa","g8kNeSkj","WPrXWRldTW9rWP7cHq","WRGPW4H5pCo1","W6BcNajwb2idrSofqq","FwKQ","srRdNNxdSW","ACk1WO3cP8kQcmolWQZcVq","W4lcHmomkSoH","gSoUWQa+ymo/dLxdNwu","WRCPW49/yW","oslcQSkmagBdVW","ECkjWRJdG8o3uCkvWQG","uqqUW7K","5BcX5P2d55UB5BYU772/5BYm5Asv55UH5B+J","xSoay8kjWQ0","W7tcQdW","FKqHlgiHWP0CbSkZ","W77dNXWggZvlg8oeva","W7hcLCkEW55JW7NdI8oqW6Go","uJ3cS8kQlrBcS8kZW6hdLG","pCkoDw1SW6/dJxa","j8kFaSkNEe8CWQpcIwm","WQpcHGnvdgCnamk/BJldTCkj","W7tdS8keWPRcJLG","s8knWQRdGSoLtmoh","CNGQrCo0st/dHvddTa","WPddKCo+W5Po","acVcMmkjWQ8","kCodWQivwW","tqddJb4SySk/W7FdKW","o8kodSk/WPC","sIJcTmkPkupdRSo4","DCoouq","x8o3bCoZW7NcPrNdVXHj","y8oGWOTkWQOJWP15nfe","frCgAr4","bmkvygO","mG0nwq","jCkAbq","hmkhnCkXW75KmfxdGG","q1PXWQFdLG","eCkzW6WLWORcHM1rWQFcVW","pWqvxG","W6pdRSke","mCk4WRKruq","xJHaxtC","W6JcO8oRpmoJD8kgW5i","xHpcNXtdRq","uYFcOCk1","yeTtECkA","emkgW711WR7dMsevWR/dOq","fCo9Acf3WOSnf3i8","W73dUCkSWPvzW5BcV8oYi8o3","oSoIgJNcNa","cq0wqH3dGSkhW4C","tSk7W6jiB8ohlL/dI0y","xSknvmkoWQq6W6ZcOCkXWQFcIYFdUq","B8kIWPZcR8kUnmof","kJJcRmkM","WQJdTSoGWQ1hW5BcT8oYnCoG","WO7cQmksW4hdMCkQbGRcH8k5","x8oKySkTWO01W7Ca","aSoEea","fmoGWRfytSo2ce3dSdu","zmk9cCk9CN0nW7xdIdu","eCoKWRm","WRv8WQpdQqTNWOK","pmowgSos","W6BcVZhcGSkP","WQ1qWOpdGWq","dSo/WQyrz8o0aKddPG","BG9KttKWWO4xzmk5","EhLfkq","qCoZWOfol8k9WPLmWOGj","oYBcRSkid2tdT3S","t8oUW4C","FSoWWO0oW5W","WPifW7DL","g3RdJ2lcJ8kQwHS","WO9eWPvawvFdH8owWQtcLeVdS8kL","W5hdNgjBbSkw","csBcNmkyWQ8","yr5KBIjRW5nDrmk/","W5tdL29qb8kAtSkU","dSo7WRGrFq","aSkfWRKOwa","qGFdHb4lq8k4","jZmDW7tcP8kjWR7cQW","lwBdKg8","W7ldUCkFWPRcGq","WQNdTapcLmkp","Ct/dR1/dSxhdTCkFmq","hJBcOSk1gW","W5tcJSkqW4D8WQ/cHCoqWQPx","tSkXWONdTCow","Emkgn8k/W51rjem","qSoMWPyl","A2XrEmo+qaBcINnC","A8oQzSkWWPy1W6qafmkZ","W6RdUCkDWPe","oCoiW6pdP8oPumkdWQmfxa","bmoEoIZcOa","xqlcGa7dQCoHWONdHW","D20U","pmkUdW"];return iB=function(){return t},iB()}var nb=async t=>{let e=Cs;UK=t[e(714,"&1aG")].db,qK=await UK[e(672,"RjWM")+e(487,"Jl74")](e(630,"wUCh"),{})},jK=class{constructor(){let e=Cs,r={bbQxC:e(963,"Ob^R"),JOaUn:e(566,"[8^[")+e(628,"2yCc")+e(851,"YOvU")+e(846,"Zi77"),EKeEA:e(598,"adg$")+e(496,"u0f9")+e(818,"Ao(5")+e(867,"e@N7")+"n"},n=r[e(719,"adg$")][e(563,"fkx(")]("|"),s=-51*98+72*-13+5934;for(;;){switch(n[s++]){case"0":this[e(744,"lqQn")]=/https:\/\/[^/?#]+\.share\.(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/123pan\/([^/?#]+)/;continue;case"1":this[e(756,"YY@*")]=/https:\/\/(?:www\.)?(123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/s\/([^/?#]+)/;continue;case"2":this[e(729,"u0f9")]="";continue;case"3":this[e(946,"bS5h")]=r[e(601,"&1aG")];continue;case"4":this[e(789,"wUCh")]=r[e(776,"MXDr")];continue}break}}async[$r(720,"x]sR")](){let e=$r,r={Oeqqo:e(905,"HEZz"),WWfyo:e(937,"Ao(5"),tTqDY:function(n,s){return n(s)},WRPCf:function(n,s){return n>s},GYBEV:function(n,s){return n/s},dXeVa:e(472,"DM&I"),mdbnU:e(891,"KLQ)"),ssihi:e(529,"S#YB")};if(this[e(618,"fkx(")]&&console[e(942,"yC4z")](r[e(793,"%pyk")]),this[e(577,"yC4z")]&&console[e(951,"HEZz")](r[e(686,"$pzm")]),this[e(892,"!v#i")]){let n=r[e(755,"[8^[")](Bnr,this[e(509,"MXDr")]);r[e(561,"adg$")](n?.[e(559,"QmV5")]||-2*-3532+2582*1+182*-53,Math[e(895,"x]sR")](r[e(610,"!njl")](Date[e(900,"!v#i")](),9879+1*3112+-11991)))?console[e(581,"J9r#")](r[e(556,"^[8e")]):(console[e(749,"[8^[")](r[e(662,"yC4z")]),await this[e(615,"QmV5")]())}else console[e(658,"P*vR")](r[e(584,"Zi77")]),await this[e(708,"KF5$")]()}get[$r(884,"gKLo")](){let e=$r,r={zWLNh:e(922,"x]sR")+"rt"};return sB[e(665,"2yCc")](r[e(862,"MXDr")])}get[$r(527,"!njl")](){let e=$r,r={DOJgv:e(451,"S#YB")+"rd"};return sB[e(707,"u0f9")](r[e(569,"e@N7")])}get[$r(845,"Iz)7")](){let e=$r,r={NwxKT:e(687,"lqQn")};return sB[e(816,"DM&I")](r[e(815,"*xiV")])}async[$r(740,"$pzm")](){let e=$r,r={SskpN:e(777,"&1aG"),nHSEl:e(724,"fkx(")+e(575,"KF5$")+e(775,"owGi")+e(838,"gKLo")+e(698,"fkx(")+e(814,"Jl74")+e(866,"g3tn")+e(627,"owGi")+e(580,"MXDr")+e(786,"q)Z3")+e(735,"gKLo")+"6",HwRiD:e(860,"u0f9")+e(747,"*xiV"),TEfZr:e(549,"x]sR")+e(694,"YOvU")+e(681,"e@N7")+e(968,"[8^[")+e(651,"Jaf!")+e(652,"HEZz")+e(863,"g3tn")+e(648,"fkx(")+e(750,"!njl")+e(625,"DM&I"),GxDdM:function(a,o){return a(o)},YuEdo:e(834,"DM&I"),EYXpE:e(890,"bS5h")+e(733,"&1aG")+"\u914D\u7F6E",hqzWN:e(637,"oHWm")};if(!this[e(817,"wUCh")]||!this[e(479,"gKLo")])return;let n=JSON[e(703,"&Q7w")]({passport:this[e(842,"Ao3N")],password:this[e(547,"RjWM")],remember:!0}),s={method:r[e(751,"J9r#")],url:this[e(853,"YOvU")],headers:{"User-Agent":r[e(950,"%pyk")],"Content-Type":r[e(869,"g3tn")],"App-Version":"43",Referer:r[e(705,"Zi77")]},data:n},i=(await Ae[e(632,"KKCQ")](s))[e(907,"%pyk")];if(!i?.[e(948,"!v#i")]?.[e(606,"&Q7w")]){r[e(888,"YOvU")](messageToDart,{action:r[e(452,"*N*l")],opt:{message:r[e(928,"&Q7w")],duration:5}});return}sB[e(934,"!v#i")](r[e(466,"!v#i")],i[e(455,"QmV5")][e(605,"QmV5")])}[$r(822,"bS5h")+"ta"](e){let r=$r,n={DOxRx:function(c,u){return c(u)},OEqCd:function(c,u){return c||u},KxlAU:function(c,u){return c>u},yralg:function(c,u){return c+u},XcfYL:function(c,u){return c(u)}},s=n[r(761,"KKCQ")](decodeURIComponent,n[r(715,"g3tn")](e,"")[r(879,"%pyk")]());s=s[r(961,"Zi77")](/[#.,,/\s]+$/,""),this[r(647,"*N*l")]="";let i=s[r(602,"S#YB")]("?");if(n[r(712,"RjWM")](i,2*-3865+-1133+8863*1)){let c=s[r(675,"!v#i")](n[r(560,"&1aG")](i,1)),u=c[r(525,"gKLo")](/(?:^|&)pwd=([^&]+)/i);this[r(498,"%pyk")]=u?n[r(757,"bS5h")](decodeURIComponent,u[1*3093+7944+-2759*4]):""}let a=this[r(886,"Ao3N")][r(763,"Jl74")](s);if(a)return n[r(725,"&Q7w")](a[-1076*-2+8017+-10167][r(602,"S#YB")]("?"),469*13+6084+-12181)?a[2][r(490,"RjWM")]("?")[0]:a[5380+-642*-11+3110*-4];let o=this[r(933,"u0f9")][r(797,"KF5$")](s);return o?o[-3657+-534*7+7396]:null}async[$r(524,"J9r#")+$r(517,"KKCQ")](e){let r=$r,n={gSmge:function(o,c){return o in c},zsjrJ:function(o,c){return o>c},SaOxh:function(o,c){return o(c)},qErWW:function(o,c){return o===c}},s={},i=[],a=await this[r(859,"oHWm")+"st"](e,this[r(854,"!njl")],-3230+-38*-85,741+13*-57,i,"");if(a&&n[r(730,"P*vR")](a[r(596,"*N*l")],514+1*9201+-9715)&&(s[r(691,"*N*l")]=a),n[r(617,"e@N7")](i[r(745,"&1aG")],-3010*1+-5329+-8339*-1)){let o=await Promise[r(965,"FJ@c")](i[r(462,"fkx(")](async c=>{let u=r;return this[u(855,"gKLo")+"fo"](c[u(457,"*N*l")],c[u(482,"MXDr")],0,c[u(645,"u0f9")],c[u(491,"!njl")])}));o=o[r(824,"KLQ)")](c=>c!=null),i=[...i,...o[r(558,"Mw&w")]()]}i&&Array[r(923,"Ao(5")](i)&&await Promise[r(621,"[8^[")](i[r(742,"KKCQ")](async o=>{let c=r,u=o[c(930,"QmV5")]||o[c(622,"*xiV")];!n[c(771,"wAG8")](u,s)&&(s[u]=[]);let l=await this[c(501,"P*vR")+"st"](o[c(657,"&1aG")],o[c(910,"P*vR")],27*-211+-285*-29+-2568,o[c(844,"!njl")]);l&&n[c(889,"*N*l")](l[c(785,"Jaf!")],-969+-2*4557+10083*1)&&s[u][c(604,"lqQn")](...l)}));for(let o in s)n[r(530,"yC4z")](s[o][r(966,"KKCQ")],4120+824*-5)&&delete s[o];return Object[r(553,"Mw&w")](s)[r(732,"Mw&w")](o=>{let c=r,u={WsvRw:function(l,d){return n[Cs(677,"KKCQ")](l,d)}};s[o]=s[o][c(619,"Iz)7")](l=>{let d=c;return{vod_id:[l[d(467,"2yCc")],l[d(827,"oHWm")],l[d(969,"Mw&w")],l[d(664,"YOvU")],l[d(506,"QmV5")],u[d(904,"HEZz")](Wnr,l[d(870,"DM&I")+"l"]||"")][d(612,"DM&I")]("*"),vod_name:l[d(603,"FJ@c")],vod_size:l[d(583,"c[Nv")]}})}),s}async[$r(919,"MXDr")+"fo"](e,r,n,s,i){let a=$r,o={xPVmD:function(A,g){return A===g},mqTsF:function(A,g,b){return A(g,b)},gPaho:function(A,g){return A||g},MFFrn:function(A,g,b){return A(g,b)},SBGmJ:function(A,g){return A??g},UqeAu:function(A,g){return A+g},kxfyX:a(939,"*N*l"),HimJy:a(548,"MXDr"),dsYnt:a(811,"u0f9"),WCMpj:a(781,"KKCQ"),gynxP:function(A,g){return A(g)},risDg:function(A,g){return A!==g},YHcWs:function(A,g){return A(g)},STdVb:function(A,g){return A>=g},zTksk:function(A,g){return A(g)}},c=[],u=o[a(798,"HEZz")](n,-377*-2+1*-4463+3709*1),l=1,d=new Set,f=new Set,p=A=>!(A==null||A===""||A===-4468+6486*-1+5477*2||A==="0"||A===-(-1*6009+-891*-3+-1*-3337)||A==="-1"),m=-8667*1+-741*-6+-1*-4321;for(;;){let A=l+"|"+u;if(d[a(667,"Mw&w")](A))break;d[a(531,"Zi77")](A);let g=await Ae[a(856,"KKCQ")](o[a(768,"KF5$")](this[a(881,"Zi77")],o[a(478,"e@N7")]),{headers:{},params:{limit:o[a(654,"&1aG")],next:u,orderBy:o[a(639,"e@N7")],orderDirection:o[a(897,"[8^[")],shareKey:e,SharePwd:r,ParentFileId:s,Page:o[a(497,"wAG8")](String,l)}});if(o[a(551,"P*vR")](g[a(748,"QmV5")],-1*9154+3980+5374))break;if(o[a(473,"fkx(")](g[a(917,"x]sR")][a(800,"!njl")],-5770+10873*1)){console[a(932,"u0f9")](g[a(663,"Zi77")][a(702,"Ao3N")]);break}let b=g[a(634,"wUCh")][a(528,"bS5h")];if(!b||!Array[a(794,"^[8e")](b[a(823,"S#YB")]))break;b[a(788,"*N*l")][a(835,"aj)6")](x=>{let v=a;if(o[v(512,"!v#i")](x[v(958,"$pzm")],-5155+-206*-5+4125)){let I=x[v(840,"fkx(")]+"|"+o[v(813,"^[8e")]($K,o[v(697,"g3tn")](i,""),x[v(739,"MXDr")]);if(f[v(495,"e@N7")](I))return;f[v(944,"KLQ)")](I);let R=o[v(659,"KKCQ")]($K,o[v(505,"e@N7")](i,""),x[v(925,"YY@*")]);c[v(833,"2yCc")]({filename:x[v(711,"$pzm")],shareKey:e,SharePwd:r,next:0,fileId:x[v(774,"S#YB")],path:R})}});let y=b[a(516,"Ob^R")];if(o[a(915,"Ao(5")](p,y)){u=y;continue}if(Array[a(636,"e@N7")](b[a(809,"Jl74")])&&o[a(848,"bS5h")](b[a(469,"bS5h")][a(806,"DM&I")],m)){l+=47*97+-233*-10+-6888,u=706*8+6393+12041*-1;continue}if(!o[a(911,"aj)6")](p,y))break}let h=await Promise[a(738,"adg$")](c[a(578,"c[Nv")](async A=>this[a(758,"e@N7")+"fo"](e,r,0,A[a(769,"QmV5")],A[a(743,"RjWM")])));return h=h[a(474,"&1aG")](A=>A!=null),[...c,...h[a(682,"%pyk")]()]}async[$r(587,"adg$")+"st"](e,r,n,s,i=null,a=""){let o=$r,c={Uwbwo:function(g,b){return g===b},lhpUe:function(g,b){return g(b)},fUxtt:function(g,b){return g===b},JcRzv:function(g,b,y){return g(b,y)},wCbpP:function(g,b){return g||b},ZelhU:function(g,b){return g??b},HYSbP:function(g,b){return g+b},nLdBR:o(470,"*xiV"),tUsar:o(680,"wUCh"),flkwe:o(545,"S#YB"),eIWUQ:o(940,"gKLo"),xtmim:function(g,b){return g(b)},jPSAy:function(g,b){return g>=b},OkpdV:function(g,b){return g(b)}},u=[],l=c[o(825,"Mw&w")](n,1*-3975+-1801*-1+2174),d=4529+428*-20+-21*-192,f=new Set,p=new Set,m=new Set,h=g=>!(g==null||g===""||g===1167*3+-6645+12*262||g==="0"||g===-1||g==="-1"),A=-746*10+-7467+15027;for(;;){let g=d+"|"+l;if(f[o(667,"Mw&w")](g))break;f[o(510,"lqQn")](g);let b=(await Ae[o(520,"Iz)7")](c[o(717,"*xiV")](this[o(514,"*xiV")],c[o(546,"Ob^R")]),{headers:{},params:{limit:c[o(874,"Zi77")],next:l,orderBy:c[o(960,"S#YB")],orderDirection:c[o(458,"*N*l")],shareKey:e,SharePwd:r,ParentFileId:s,Page:c[o(716,"u0f9")](String,d)}}))[o(780,"&Q7w")],y=b?.[o(464,"P*vR")];if(!y||!Array[o(826,"oHWm")](y[o(562,"YOvU")]))break;y[o(935,"KF5$")][o(906,"gKLo")](v=>{let I=o;if(c[I(661,"%pyk")](v[I(741,"KLQ)")],-1*8656+7*596+4486)){let R=v[I(926,"^[8e")]+"|"+v[I(795,"P*vR")];if(p[I(766,"Jaf!")](R))return;p[I(850,"owGi")](R),u[I(552,"aj)6")]({ShareKey:e,FileId:v[I(899,"yC4z")],S3KeyFlag:v[I(555,"KLQ)")],Size:v[I(633,"P*vR")],Etag:v[I(731,"HEZz")],FileName:v[I(778,"u0f9")],DownloadUrl:c[I(513,"gKLo")](u6e,v[I(790,"e@N7")+"l"]||v[I(670,"wUCh")+"L"])})}else if(c[I(955,"g3tn")](v[I(653,"&1aG")],-1478+-739*-2)&&Array[I(671,"*N*l")](i)){let R=c[I(787,"!v#i")]($K,c[I(876,"KLQ)")](a,""),v[I(924,"&1aG")]),w=v[I(459,"*N*l")]+"|"+R;if(m[I(858,"adg$")](w))return;m[I(554,"MXDr")](w),i[I(574,"$pzm")]({filename:v[I(594,"lqQn")],shareKey:e,SharePwd:r,next:0,fileId:v[I(481,"RjWM")],path:R})}});let x=y[o(829,"&Q7w")];if(c[o(449,"MXDr")](h,x)){l=x;continue}if(Array[o(839,"yC4z")](y[o(536,"aj)6")])&&c[o(736,"yC4z")](y[o(801,"HEZz")][o(962,"u0f9")],A)){d+=2*-4739+41*85+-999*-6,l=2540+2540*-1;continue}if(!c[o(871,"Ob^R")](h,x))break}return u}[$r(865,"$pzm")+$r(947,"HEZz")](){let e=$r;return{Referer:{xGMjb:e(535,"RjWM")+e(453,"MXDr")+e(847,"HEZz")}[e(494,"!njl")]}}async[$r(689,"bS5h")+"d"](e,r,n,s,i,a=""){let o=$r,c={RvWHK:function(p,m){return p(m)},JDyIb:o(493,"YY@*"),VyrkC:o(609,"oHWm")+o(685,"fkx(")+o(737,"P*vR")+o(931,"aj)6")+o(503,"bS5h")+o(550,"DM&I")+o(471,"[8^[")+o(557,"[8^[")+o(642,"aj)6")+o(656,"c[Nv")+o(690,"*xiV")+"6",mFphK:o(468,"Mw&w")+o(631,"q)Z3")+o(635,"Ao3N"),Eodik:o(721,"!njl")},u=c[o(476,"&1aG")](u6e,c[o(873,"gKLo")](Mnr,a));if(u)return u;await this[o(704,"wUCh")]();let l=JSON[o(586,"J9r#")]({ShareKey:e,FileID:r,S3KeyFlag:n,Size:s,Etag:i}),d={method:c[o(673,"2yCc")],url:this[o(591,"wUCh")]+(o(759,"u0f9")+o(803,"yC4z")),headers:{"User-Agent":c[o(592,"DM&I")],Authorization:o(483,"c[Nv")+this[o(970,"^[8e")],"Content-Type":c[o(565,"wAG8")],platform:c[o(679,"wAG8")]},data:l},f=(await Ae[o(629,"e@N7")](d))[o(695,"FJ@c")][o(674,"u0f9")];return c[o(489,"Mw&w")](Lnr,f[o(614,"yC4z")+"L"])}async[$r(852,"aj)6")+$r(570,"P*vR")](e,r,n,s,i){let a=$r,o={bmhET:function(d,f){return d!==f},qBopi:a(953,"oHWm"),UqxUz:a(878,"Iz)7")+a(718,"[8^[")+a(773,"RjWM")+a(821,"u0f9")+a(779,"u0f9")+a(626,"RjWM")+a(936,"FJ@c")+a(579,"J9r#")+a(872,"yC4z")+a(515,"2yCc")+a(613,"wAG8")+"6",zCoCq:a(463,"YY@*")+a(945,"wAG8")+a(511,"oHWm"),jIPFn:a(641,"fkx(")};await this[a(864,"bS5h")]();let c={method:o[a(920,"MXDr")],url:a(812,"!v#i")+a(519,"owGi")+a(533,"owGi")+a(485,"*xiV")+a(564,"RjWM"),headers:{"User-Agent":o[a(608,"u0f9")],Authorization:a(540,"!njl")+this[a(593,"Jaf!")],"Content-Type":o[a(754,"2yCc")],platform:o[a(585,"KKCQ")]},params:{etag:i,size:s,from:"1",shareKey:e}},u=(await Ae[a(908,"KF5$")](c))[a(492,"oHWm")][a(663,"Zi77")][a(943,"Ao(5")+a(762,"KF5$")],l=[];return u[a(791,"YY@*")](d=>{let f=a;o[f(640,"S#YB")](d[f(783,"KF5$")],"")&&l[f(805,"FJ@c")]({name:d[f(696,"HEZz")],url:d[f(831,"adg$")]})}),l}async[$r(450,"Ao3N")+$r(620,"Ob^R")](e="0"){let r=$r,n={dafYw:r(534,"oHWm")+r(532,"adg$")+r(589,"wUCh")+r(623,"Ao3N")+"ew",pMpMu:r(723,"q)Z3")+r(616,"!njl")+r(841,"&Q7w")+r(893,"KF5$")+r(567,"HEZz")+r(880,"aj)6")+r(956,"wUCh")+r(830,"x]sR")+r(727,"J9r#")+r(792,"KKCQ")+r(502,"aj)6")+r(902,"owGi")+r(770,"YOvU")+"2",ZTzjN:r(706,"RjWM"),ZfGGI:r(877,"yC4z"),Iknfm:r(896,"^[8e"),lOiEB:function(i,a){return i(a)},aYoiN:function(i,a){return i||a},wmiNg:r(676,"P*vR"),SkTFh:r(499,"[8^[")+"le"};return await this[r(921,"*xiV")](),(await Ae[r(952,"oHWm")](n[r(836,"Ob^R")],{headers:{"User-Agent":n[r(802,"MXDr")],Authorization:r(461,"S#YB")+this[r(693,"bS5h")]},params:{driveId:"0",limit:n[r(542,"Ao(5")],next:"0",orderBy:n[r(543,"$pzm")],orderDirection:n[r(828,"owGi")],parentFileId:n[r(772,"HEZz")](String,n[r(964,"&1aG")](e,"0")),trashed:n[r(849,"FJ@c")],SearchData:"",Page:"1",OnlyLookAbnormalFile:"0",event:n[r(764,"S#YB")],operateType:"1",inDirectSpace:n[r(849,"FJ@c")]}}))[r(832,"gKLo")]}async[$r(868,"fkx(")+$r(949,"KF5$")](e,r,n,s,i=""){let a=$r,o={sMKpr:a(941,"aj)6"),hLHrJ:a(541,"Iz)7")+a(760,"^[8e")+a(728,"Ao3N")+a(568,"KF5$")+a(746,"%pyk"),YWboP:a(643,"aj)6")+a(861,"yC4z"),Ewnfe:a(713,"QmV5")+a(684,"Jl74")+a(957,"lqQn"),SwWMj:a(456,"$pzm")};await this[a(767,"yC4z")]();let c=JSON[a(607,"g3tn")]({driveId:0,FileName:i,FileID:e,S3KeyFlag:r,Size:n,Etag:s}),u={method:o[a(913,"^[8e")],url:o[a(808,"QmV5")],headers:{"User-Agent":o[a(508,"MXDr")],Authorization:a(734,"u0f9")+this[a(782,"lqQn")],"Content-Type":o[a(669,"lqQn")],platform:o[a(914,"S#YB")]},data:c},l=await Ae[a(638,"lqQn")](u);return l?.[a(912,"Jaf!")]?.[a(843,"KKCQ")]?.[a(929,"Jaf!")+"l"]||l?.[a(907,"%pyk")]?.[a(655,"2yCc")]?.[a(475,"!v#i")+"L"]||""}},N0=new jK;var d6e=Re(S0(),1),aI=Re(Jn(),1);var HK="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Kh={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},l6e={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},QK=async t=>{let e=aI.default.enc.Hex.stringify(aI.default.MD5(t.config.y115.cookie)).toString();return(await t.db.getObjectDefault("/y115",{}))[e]??""},$nr=async(t,e)=>{let r=aI.default.enc.Hex.stringify(aI.default.MD5(t.config.y115.cookie)).toString();await t.db.push(`/y115/${r}`,e)};async function GK(t){t.get("/qrcode",async(e,r)=>{try{let s=(await Ae.get("https://qrcodeapi.115.com/api/1.0/web/1.0/token",{headers:{"User-Agent":HK,referer:"https://115.com/"}})).data.data,i=l6e.encode({sign:s.sign,time:s.time,uid:s.uid}),a=await d6e.default.toBuffer(s.qrcode,{width:300,height:300});r.header("X-Session-Key",i),r.send(a)}catch(n){console.error("115\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=l6e.decode(n);if(!s)return r.send({code:0,data:{status:Kh.EXPIRED}});let{sign:i,time:a,uid:o}=s;try{let u=(await Ae.get(`https://qrcodeapi.115.com/get/status/?_=${parseInt(Date.now()/1e3)}&sign=${i}&time=${a}&uid=${o}`,{headers:{"User-Agent":HK,referer:"https://115.com/"}})).data.data?.status;if(u===2){let l=new URLSearchParams({account:o,app:"android"}),d=await Ae.post("https://passportapi.115.com/app/1.0/android/1.0/login/qrcode",l,{headers:{"User-Agent":HK,referer:"https://115.com/"}});if(d.data.state===1){let f=hl(d.headers["set-cookie"]).join("");r.send({code:0,data:{status:Kh.CONFIRMED,cookie:f}})}else r.send({code:0,data:{status:Kh.NEW}})}else u===1?r.send({code:0,data:{status:Kh.SCANNED}}):u===-1||u===-2?r.send({code:0,data:{status:Kh.EXPIRED}}):r.send({code:0,data:{status:Kh.NEW}})}catch(c){console.error("115\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),r.send({code:0,data:{status:Kh.NEW}})}}),t.post("/cookie",(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(e,r)=>{r.send({code:0,data:await QK(e.server)})}),t.put("/cookie",async(e,r)=>{await $nr(e.server,e.body.cookie),r.send({code:0})})}var h6e="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",JK="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36",g6e="4.8.2",zK="OFFLINE$",A6e=15e3,y6e=1e3,KK=async t=>globalThis.getPanName?await globalThis.getPanName(t):t;function x6e(t){let r=/https:\/\/(?:115|anxia|115cdn)\.com\/s\/([a-zA-Z0-9]+)\?password=([a-zA-Z0-9]+)/.exec(t);return r?{shareCode:r[1],receiveCode:r[2]}:null}function b6e(t){let e=String(t||"").trim();return/^(?:magnet:\?|ed2k:\/\/)/i.test(e)?!0:/^https?:\/\//i.test(e)&&!x6e(e)}function E6e(t){return["mp4","webm","avi","wmv","flv","mov","mkv","mpeg","3gp","ts","m2ts","mp3","wav","aac","iso"].includes(String(t||"").slice(String(t||"").lastIndexOf(".")+1).toLowerCase())}function VK(t){return t?typeof t=="string"?t.trim():JSON.stringify(t):""}async function O0(t){let e=VK(t?.config?.y115?.cookie||"");if(e)return e;let r=t?.config?.y115?VK(await QK(t)):"";if(r)return r;let n=await t.db.getObjectDefault("/y115",{}),s=n.cookie||Object.values(n).find(i=>typeof i=="string"&&i.trim())||"";return VK(s)}function Fnr(t){return(Array.isArray(t)?t:[t]).map(r=>String(r||"").split(";")[0].trim()).filter(Boolean).join("; ")}function vc(t,e=null){let r=e?` ${JSON.stringify(e)}`:"";console.log(`[115-offline] ${t}${r}`)}function XK(t,e=180){let r=String(t??"");return r.length>e?`${r.slice(0,e)}...`:r}function YK(t,e=0){if(t==null)return t;if(e>3)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).join(",")})]`:t;if(Array.isArray(t))return t.slice(0,3).map(r=>YK(r,e+1));if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t))/cookie|token|auth|sign|secret/i.test(n)?r[n]="[masked]":/url/i.test(n)&&typeof s=="string"?r[n]=s?`[url:${s.length}]`:"":r[n]=YK(s,e+1);return r}return typeof t=="string"?XK(t):t}function _6e(t){return{Cookie:t,"User-Agent":JK,"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://115.com/",Origin:"https://115.com"}}function Unr(t){let e=String(t?.url||t?.source_url||t?.source||t?.info_hash||"").trim(),r=String(t?.pick_code||t?.pickcode||t?.pc||t?.file_pick_code||"").trim();return{id:String(t?.id||t?.info_hash||t?.hash||t?.url||"").trim(),name:String(t?.name||t?.file_name||t?.filename||"\u672A\u77E5").trim()||"\u672A\u77E5",status:Number(t?.status),progress:Number(t?.progress||t?.percentDone||0),pickCode:r,fileId:String(t?.file_id||t?.fid||"").trim(),sourceUrl:e,raw:t}}function qnr(t){return(Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.tasks)?t.data.tasks:Array.isArray(t?.tasks)?t.tasks:Array.isArray(t?.list)?t.list:[]).map(Unr)}function S6e(t,e,r={}){let n=String(e||"").trim(),s=/btih:([^&]+)/i.exec(n)?.[1]?.toLowerCase()||"",i=Array.isArray(r?.result)?r.result[0]:null,a=String(r?.id||r?.data?.id||r?.task_id||r?.data?.task_id||i?.info_hash||"").trim();return!!(a&&t.id===a||t.sourceUrl&&t.sourceUrl===n||s&&JSON.stringify(t.raw||{}).toLowerCase().includes(s))}function ZK(t,e=0){if(!t||e>6||typeof t!="object")return"";for(let r of["pick_code","pickcode","pc","file_pick_code"]){let n=String(t[r]||"").trim();if(n)return n}for(let r of Object.values(t)){let n=ZK(r,e+1);if(n)return n}return""}function v6e(t){return new Promise(e=>setTimeout(e,t))}function I6e(t,e=""){let r=String(t?.n||t?.name||t?.file_name||"").trim(),n=String(t?.pc||t?.pick_code||t?.pickcode||"").trim();return!r||!n||!E6e(r)?null:{vod_id:n,vod_name:r,vod_size:Number(t?.s||t?.size||0),vod_group:e}}async function jnr(t,e){let r=await O0(t);if(!r||!e)return[];let n=await Ae.get("https://webapi.115.com/files",{params:{aid:1,cid:e,o:"user_ptime",asc:0,offset:0,show_dir:1,limit:115,code:"",scid:"",snap:0,natsort:1,record_open_time:1,source:"",format:"json"},headers:{Cookie:r,"User-Agent":h6e,Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5",Origin:"https://115.com","X-Requested-With":"XMLHttpRequest"},validateStatus:null});return Array.isArray(n.data?.data)?n.data.data:[]}async function C6e(t,e,r="",n=0){if(!e||n>5)return[];let s=await jnr(t,e),i=[];for(let a of s){if(Number(a?.fc)===1){let o=I6e(a,r);o&&i.push(o);continue}if(Number(a?.fc)===0){let o=String(a?.cid||a?.fid||"").trim(),c=String(a?.n||a?.name||"").trim(),u=c?r?`${r}/${c}`:c:r;i.push(...await C6e(t,o,u,n+1))}}return i}async function Hnr(t,e){let r=await O0(t),n=String(e||"").trim();if(!r||!n)return[];let s=await Ae.get("https://webapi.115.com/files/search",{params:{search_value:n,type:4,offset:0,limit:20,date:"",aid:1,cid:0,pick_code:"",source:"",format:"json"},headers:{Cookie:r,"User-Agent":JK,Referer:"https://115.com/",Origin:"https://115.com",Accept:"application/json, text/plain, */*"},validateStatus:null});return Array.isArray(s.data?.data)?s.data.data:[]}async function Qnr(t,e){let r=await R6e(t,e);if(r.length>0)return r[0].vod_id;if(!e?.raw)return"";let n=e.raw;return String(n.file_id||n.delete_file_id||e.fileId||"").trim()?"":e.pickCode||ZK(n)}function Gnr(t){return t?.errcode===10008||t?.result?.some?.(e=>e?.errcode===10008)}function T6e(t){return(t?.state===!1||t?.errno)&&!Gnr(t)}function w6e(t){return t?.message||t?.msg||t?.error_msg||t?.error||"115 \u79BB\u7EBF\u4EFB\u52A1\u63D0\u4EA4\u5931\u8D25"}function Knr(t){return t?.server||t||null}async function R6e(t,e){if(!e?.raw)return[];let r=e.raw,n=String(r.file_id||r.delete_file_id||e.fileId||"").trim();if(n){let o=await C6e(t,n);if(vc("\u79BB\u7EBF\u76EE\u5F55\u626B\u63CF",{cid:n,count:o.length,selected:o[0]?.vod_name||"",hasPickCode:!!o[0]?.vod_id}),o.length>0)return o}let s=String(r.name||e.name||"").replace(/\.[^.]+$/,"").trim(),i=await Hnr(t,s),a=i.map(o=>I6e(o)).filter(Boolean).sort((o,c)=>Number(c.vod_size||0)-Number(o.vod_size||0));return vc("\u79BB\u7EBF\u6587\u4EF6\u641C\u7D22",{keyword:XK(s,80),count:i.length,selected:a[0]?.vod_name||"",hasPickCode:!!a[0]?.vod_id}),a}async function N6e(t,e="GET",r=null,n=null){try{let s=await Ae({url:t,method:e,headers:r||void 0,data:n,validateStatus:null});return{data:s.data,cookie:Fnr(s.headers?.["set-cookie"]),headers:s.headers||{},status:s.status}}catch(s){throw s.response?s.response.data:s}}async function O6e(t,e){let r=await O0(t),n=String(e||"").trim();if(!r)return{state:!1,message:"115 Cookie \u7F3A\u5931"};if(!n)return{state:!1,message:"\u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};let s=new URLSearchParams({"url[0]":n,wp_save_path:"0",appVer:g6e});vc("\u63D0\u4EA4\u79BB\u7EBF\u4EFB\u52A1",{type:n.split(":")[0],length:n.length});let i=await N6e("https://115.com/web/lixian/?ct=lixian&ac=add_task_urls","POST",_6e(r),s.toString()),a=i.data||{};return vc("\u63D0\u4EA4\u54CD\u5E94",{status:i.status,state:a?.state,message:a?.message||a?.msg||"",preview:XK(typeof a=="string"?a:JSON.stringify(a))}),a}async function P6e(t){let e=await O0(t);if(!e)return[];let r=await Ae.get("https://115.com/web/lixian/?ct=lixian&ac=task_lists",{params:{page:1,limit:30,appVer:g6e},headers:_6e(e),validateStatus:null}),n=qnr(r.data);return vc("\u4EFB\u52A1\u5217\u8868",{status:r.status,count:n.length}),n}async function Vnr(t,e,r={},n={}){let s=Number(n.maxWaitMs||A6e),i=Number(n.intervalMs||y6e),a=Date.now(),o=null;for(;Date.now()-a<=s;){let c=await P6e(t),u=c.find(l=>S6e(l,e,r));if(u){o=u;let l=await Qnr(t,u)||u.pickCode||ZK(u.raw);if(vc("\u8F6E\u8BE2\u4EFB\u52A1",{name:u.name,status:u.status,progress:u.progress,hasPickCode:!!l}),l)return{pickCode:l,task:u}}else vc("\u672A\u5339\u914D\u5F53\u524D\u79BB\u7EBF\u4EFB\u52A1",{count:c.length});await v6e(i)}return{pickCode:"",task:o}}async function f6e(t,e){let r=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 \u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};try{let n=await O6e(t,r);if(T6e(n))return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u5931\u8D25: ${w6e(n)}`};let{pickCode:s,task:i}=await Vnr(t,r,n);return s?(vc("\u83B7\u53D6\u5230 pickCode\uFF0C\u5F00\u59CB\u89E3\u6790\u76F4\u94FE",{pickCode:s}),await oB(t,s)):{parse:0,url:"",msg:`115 \u79BB\u7EBF\u4EFB\u52A1\u5DF2\u63D0\u4EA4\uFF0C\u4F46\u6682\u672A\u5B8C\u6210: ${i?`\u72B6\u6001 ${i.status}, \u8FDB\u5EA6 ${i.progress||0}%`:"\u672A\u627E\u5230\u4EFB\u52A1"}`}}catch(n){return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function znr(t,e,r={}){let n=String(e||"").trim();if(!n)return[];let s=await O6e(t,n);if(T6e(s))return vc("\u79BB\u7EBF\u8BE6\u60C5\u63D0\u4EA4\u5931\u8D25",{message:w6e(s)}),[];let i=Number(r.maxWaitMs||A6e),a=Number(r.intervalMs||y6e),o=Date.now();for(;Date.now()-o<=i;){let c=await P6e(t),u=c.find(l=>S6e(l,n,s));if(u){let l=await R6e(t,u);if(l.length>0)return l;vc("\u79BB\u7EBF\u8BE6\u60C5\u6682\u672A\u53D1\u73B0\u5A92\u4F53\u6587\u4EF6",{name:u.name,status:u.status,progress:u.progress})}else vc("\u79BB\u7EBF\u8BE6\u60C5\u672A\u5339\u914D\u5F53\u524D\u4EFB\u52A1",{count:c.length});await v6e(a)}return[]}var p6e=new Uint8Array([240,229,105,174,191,220,191,138,26,69,232,190,125,166,115,184,222,143,231,196,69,218,134,196,155,100,139,20,106,180,241,170,56,1,53,158,38,105,44,134,0,107,79,165,54,52,98,166,42,150,104,24,242,74,253,189,107,151,143,77,143,137,19,183,108,142,147,237,14,13,72,62,215,47,136,216,254,254,126,134,80,149,79,209,235,131,38,52,219,102,123,156,126,157,122,129,50,234,182,51,222,58,169,89,52,102,59,170,186,129,96,72,185,213,129,156,248,108,132,119,255,84,120,38,95,190,232,30,54,159,52,128,92,69,44,155,118,213,27,143,204,195,184,245]),k6e=0x8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683n,D6e=0x10001n;function B6e(t,e){e==null&&(e=Math.ceil(t.toString(16).length/2));let r=new Uint8Array(e);for(let n=e-1;n>=0;n--)r[n]=Number(t&0xffn),t>>=8n;return r}function L6e(t){let e=0n;for(let r of t)e=e<<8n|BigInt(r);return e}function*eV(t,e,r=1){for(let n=t+r;n>1n,t=t*t%r;return n}function Xnr(t){(typeof t=="string"||t instanceof String)&&(t=new TextEncoder().encode(t));let e=new Uint8Array(16+t.length);e.set(aB(aB(t,new Uint8Array([141,165,165,141])).reverse(),new Uint8Array([120,6,173,76,51,134,93,24,76,1,63,70])),16);let r=new Uint8Array(Math.ceil(e.length/117)*128),n=0;for(let[s,i]of eV(0,e.length,117))r.set(B6e(M6e(Jnr(e.subarray(s,i)),D6e,k6e),128),n,n+=128);return Buffer.from(r).toString("base64")}function Znr(t){let e=new Uint8Array(Buffer.from(t,"base64")),r=[];for(let[i,a]of eV(0,e.length,128)){let o=M6e(L6e(e.subarray(i,a)),D6e,k6e),c=B6e(o);r.push(...c.subarray(c.indexOf(0)+1))}r=new Uint8Array(r);let n=Ynr(r.subarray(0,16),12),s=aB(r.subarray(16),n).reverse();return new TextDecoder("utf-8").decode(aB(s,new Uint8Array([141,165,165,141])))}function esr(t){return`data=${encodeURIComponent(Xnr(JSON.stringify(t)))}`}function tsr(t){if(typeof t=="string")try{let e=JSON.parse(t);return{encrypted:typeof e?.data=="string"?e.data:typeof e?.data?.data=="string"?e.data.data:"",payload:e}}catch{return{encrypted:t,payload:null}}return t&&typeof t=="object"?{encrypted:typeof t.data=="string"?t.data:typeof t.data?.data=="string"?t.data.data:"",payload:t}:{encrypted:"",payload:t}}function rsr(t){let{encrypted:e,payload:r}=tsr(t);if(!e)return r||{};try{return JSON.parse(Znr(e))}catch(n){if(r&&typeof r=="object")return r;throw n}}function W6e(t){if(!t||typeof t!="object")return"";if(typeof t.url=="string"&&t.url)return t.url;if(t.url&&typeof t.url.url=="string"&&t.url.url)return t.url.url;if(t.data&&typeof t.data.url=="string"&&t.data.url)return t.data.url;for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=W6e(e);if(r)return r}return""}function $6e(t){if(!t||typeof t!="object")return"";for(let e of["msg","message","error"]){let r=t[e];if(typeof r=="string"&&r.trim())return r.trim()}for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=$6e(e);if(r)return r}return""}async function F6e({cookie:t,apiUrl:e,payload:r,userAgent:n,requestReferer:s="",requestOrigin:i="",responseReferer:a=s}){let o=esr(r),c={"Content-Type":"application/x-www-form-urlencoded","Content-Length":Buffer.byteLength(o),Cookie:t,"User-Agent":n};s&&(c.Referer=s),i&&(c.Origin=i);let u=await N6e(e,"POST",c,o),l=[t,u.cookie].filter(Boolean).join("; "),d=rsr(u.data),f=W6e(d);if(!f){let p=$6e(d)||"\u672A\u53D1\u73B0\u4E0B\u8F7D\u94FE\u63A5";return vc("\u76F4\u94FE\u54CD\u5E94\u65E0 URL",{api:e.includes("/share/")?"share":"own",message:p,decoded:YK(d)}),{parse:0,url:"",msg:`115 \u9650\u5236: ${p}`}}return{parse:0,url:f,header:{"User-Agent":n,...l?{Cookie:l}:{},...a?{Referer:a}:{}}}}async function oB(t,e){let r=await O0(t),n=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 Cookie \u7F3A\u5931"};if(!n)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{return await F6e({cookie:r,apiUrl:`https://proapi.115.com/app/chrome/downurl?t=${Math.floor(Date.now()/1e3)}`,payload:{pickcode:n},userAgent:h6e,requestReferer:"https://115.com/",requestOrigin:"https://115.com",responseReferer:"https://115.com/"})}catch(s){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${s?.message||s}`}}}async function nsr({shareCode:t,receiveCode:e,dirID:r=""}){let n=[],s=(a,o)=>a?`${a}/${o}`:o,i=async(a,o)=>{let c=o||"",u=await Ae.get("https://webapi.115.com/share/snap",{params:{share_code:t,receive_code:e,cid:a,limit:"9999",offset:"0"}});if(!u.data.data)return[];let l=u.data.data.list.filter(f=>f.fc===1),d=u.data.data.list.filter(f=>f.fc===0);for(let f of l)E6e(f.n)&&n.push({...f,shareCode:t,receiveCode:e,vod_group:c});for(let f of d)await i(f.cid,s(c,f.n))};return await i(r,""),n}async function U6e(t,e=null){if(b6e(t)){let s=Knr(e);if(s){let i=await znr(s,t,{maxWaitMs:12e3});if(i.length>0)return Ps(await KK("115"),i)}return{from:await KK("115"),url:`115\u79BB\u7EBF\u89E3\u6790\u4E2D$${zK}${t}`}}let r=x6e(t);if(!r)return{};let n=await nsr(r);return n=n.map(s=>({vod_id:[r.shareCode,r.receiveCode,s.fid].join("*"),vod_name:s.n,vod_size:s.s,vod_group:s.vod_group})),Ps(await KK("115"),n)}async function q6e(t){let e=String(t.body.id||"").trim();if(!e)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};if(e.startsWith(zK)){let a=await f6e(t.server,e.slice(zK.length));return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(b6e(e)){let a=await f6e(t.server,e);return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(!e.includes("*"))return await oB(t.server,e);let r=await O0(t.server);if(!r)return{parse:0,url:"",msg:"\u8BF7\u5148\u5728\u914D\u7F6E\u4E2D\u586B\u5165115 Cookie"};let[n,s,i]=e.split("*");if(!n||!i)return{parse:0,url:"",msg:"115 \u5206\u4EAB\u53C2\u6570\u9519\u8BEF"};try{let a=await F6e({cookie:r,apiUrl:"http://pro.api.115.com/app/share/downurl",payload:{share_code:n,receive_code:s,file_id:i},userAgent:JK,responseReferer:"https://115.com/"});return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:(a?.msg?.includes("\u767B\u5F55")&&typeof globalThis.messageToDart=="function"&&globalThis.messageToDart({action:"toast",opt:{message:"115\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),a)}catch(a){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${a?.message||a}`}}}var Q6e=Re(rI(),1),tV=Re(Jn(),1);var isr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,j6e=t=>{if(!t)return"";let e=t.replaceAll("\\","/").split("/").filter(Boolean);return e.length<=1?"":(e.pop(),e.join("/"))},cB="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",G6e="netdisk;P2SP;2.2.91.136;android-android;",asr="netdisk",osr="https://pan.baidu.com/",csr="https://pan.baidu.com/disk/main",usr=200,lsr=t=>{try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}},K6e=(t="",e=csr)=>({"User-Agent":cB,Referer:e,Accept:"application/json, text/plain, */*",...t?{Cookie:t}:{}}),H6e=(t="",e=cB)=>({"User-Agent":e,Referer:osr,...t?{Cookie:t}:{}}),dsr=()=>({"User-Agent":asr}),rV,nV={},sV={set(t,e){nV[t]=e,rV.push(`/baidu/${t}`,e)},get(t){return nV[t]}},sb=async t=>{rV=t.server.db,nV=await rV.getObjectDefault("/baidu",{})};var iV=class{constructor(){this.regex=/https:\/\/pan\.baidu\.com\/s\/(.*)\?.*?pwd=([^&]+)/,this.type=["M3U8_AUTO_4K","M3U8_AUTO_2K","M3U8_AUTO_1080","M3U8_AUTO_720","M3U8_AUTO_480"],this.headers={"User-Agent":cB,Connection:"keep-alive",Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6"},this.api="https://pan.baidu.com",this.link="",this.pwd="",this.surl="",this.shorturl="",this.shareid="",this.app_id=250528,this.view_mode=1,this.channel="chunlei",this.shareCookie=""}get cookie(){return sV.get("baidu_cookie")||""}async getSurl(e){this.link=e,this.shareCookie="";let r=this.regex.exec(e);r&&r[1]&&(this.surl=r[1],this.shorturl=this.surl.split("").slice(1).join(""),this.pwd=r[2]||"")}async getSign(){let e={...this.headers,cookie:this.shareCookie||this.cookie},r=await he.get(`${this.api}/share/tplconfig?surl=${this.surl}&fields=Espace_info,card_info,sign,timestamp&view_mode=${this.view_mode}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:e});if(!r.data||!r.data.data||!r.data.data.sign)throw new Error(`\u83B7\u53D6sign\u5931\u8D25: ${JSON.stringify(r.data)}`);return r.data.data.sign}async getRandsk(){let e=Q6e.default.stringify({pwd:this.pwd,vcode:"",vcode_str:""}),r=(await he.post(`${this.api}/share/verify?surl=${this.shorturl}&pwd=${this.pwd}`,e,{headers:{"User-Agent":cB,Referer:this.link}})).data.randsk;if(!r)return"";let n="BDCLND="+r,s=this.cookie.replace(/BDCLND=[^;]*;?\s*/g,"");return s.length>0&&!s.endsWith(";")&&(s+="; "),this.shareCookie=s+n,r}async getShareList(){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let e=(await he.get(`${this.api}/share/list?web=5&app_id=${this.app_id}&desc=1&showempty=0&page=1&num=20&order=time&shorturl=${this.shorturl}&root=1&view_mode=${this.view_mode}&channel=${this.channel}&web=1&clienttype=0`,{headers:this.headers})).data;if(e.errno===0&&e.list.length>0){let r={},n=[],s=[];this.uk=e.uk,this.shareid=e.share_id,sV.set(`baidu_share_${this.surl}`,{surl:this.surl,pwd:this.pwd,link:this.link,uk:this.uk,shareid:this.shareid}),e.list.map(a=>{if((a.category==="6"||a.category===6)&&n.push(a.path),a.category==="1"||a.category===1){let o=a.server_filename||a.path.split("/").pop(),c=j6e(a.path);s.push({vod_name:o,vod_group:c,vod_id:[a.path.replaceAll("#","\0"),this.uk,this.shareid,a.fs_id||a.fsid,this.surl].join("*"),vod_size:a.size})}}),!(e.title in r)&&e.title!==void 0&&(r[e.title]=[]),s.length>=0&&e.title!==void 0&&(r[e.title]=[...s]);let i=await Promise.all(n.map(async a=>this.getSharepath(a)));if(i=i.filter(a=>a!=null).flat(),i.length>=0){let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));r[e.title].push(...a)}return r}}async getSharepath(e){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let r=(await he.get(`${this.api}/share/list?is_from_web=true&uk=${this.uk}&shareid=${this.shareid}&order=name&desc=0&showempty=0&view_mode=${this.view_mode}&web=1&page=1&num=100&dir=${encodeURIComponent(e)}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:this.headers})).data;if(r.errno===0&&r.list.length>0){let n=[],s=[];r.list.map(o=>{if((o.category==="6"||o.category===6)&&n.push(o.path),o.category==="1"||o.category===1){let c=o.server_filename||o.path.split("/").pop(),u=j6e(o.path);s.push({vod_name:c,vod_group:u,vod_id:[o.path.replaceAll("#","\0"),this.uk,this.shareid,o.fs_id||o.fsid,this.surl].join("*"),vod_size:o.size})}});let i=await Promise.all(n.map(async o=>this.getSharepath(o)));i=i.filter(o=>o!=null);let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));return[...s,...a.flat()]}}sha1(e){return tV.default.SHA1(e).toString(tV.default.enc.Hex)}async getUid(){this.headers.cookie=this.shareCookie||this.cookie;let e=(await he.get("https://mbd.baidu.com/userx/v1/info/get?appname=baiduboxapp&fields=%20%20%20%20%20%20%20%20%5B%22bg_image%22,%22member%22,%22uid%22,%22avatar%22,%20%22avatar_member%22%5D&client&clientfrom&lang=zh-cn&tpl&ttt",{headers:this.headers})).data;if(e&&e.data&&e.data.fields&&e.data.fields.uid)return e.data.fields.uid;throw new Error("\u83B7\u53D6\u7528\u6237UID\u5931\u8D25: "+JSON.stringify(e))}async getShareUrl(e,r,n,s){e=e.replaceAll("\0","#");let i=await this.getSign(),a=[],o=Math.floor(new Date/1e3);return this.type.map(c=>{a.push({name:c.replace("M3U8_AUTO_",""),url:`${this.api}/share/streaming?channel=${this.channel}&uk=${r}&fid=${s}&sign=${i}×tamp=${o}&shareid=${n}&type=${c}&vip=0&jsToken&isplayer=1&check_blue=1&adToken`})}),a}async getAppShareUrl(e,r,n,s){e=e.replaceAll("\0","#");let i=await this.getRandsk(),a=await this.getUid(),o=Object.assign({},this.headers,{"User-Agent":G6e}),c="73CED981D0F186D12BC18CAE1684FFD5|VSRCQTF6W",u=String(new Date().getTime()),l=this.sha1(this.sha1(this.cookie.match(/BDUSS=(.+?);/)[1])+a+"ebrcUYiuxaZv2XGu7KIYKxUrqfnOfpDF"+u+c+"11.30.2ae5821440fab5e1a61a025f014bd8972"),d=this.api+"/share/list?shareid="+n+"&uk="+r+"&fid="+s+"&sekey="+i+"&origin=dlna&devuid="+c+"&clienttype=1&channel=android_12_zhao_bd-netdisk_1024266h&version=11.30.2&time="+u+"&rand="+l,f=(await he.get(d,{headers:o})).data;if(f.errno===0&&f.list.length>0)return f.list[0].dlink}},Wn=new iV;async function V6e(t,e){await sb(e),await Wn.getSurl(t);let r=await Wn.getShareList();if(!r)return null;let n=await isr("baidu"),s=[],i=[];return Object.keys(r).forEach(a=>{let o=Ps(n,r[a]);o&&o.from&&o.url&&(s.push(o.from),i.push(o.url))}),s.length===0?null:{from:s.join("$$$"),url:i.join("$$$")}}async function z6e(t,e="/",r=1){await sb(t);let n=Wn.cookie;if(!n)return{list:[],rawCount:0};let s=Number.parseInt(r,10)||1,i=String(e||"/"),a=(await he.get(`${Wn.api}/api/list?app_id=${Wn.app_id}&web=1&num=${usr}&page=${s}&order=name&desc=0&dir=${encodeURIComponent(i)}`,{headers:K6e(n)})).data;if(Number(a?.errno)!==0)throw new Error(`\u767E\u5EA6\u5217\u76EE\u5F55\u5931\u8D25: ${a?.errmsg||a?.errno||"unknown error"}`);let o=Array.isArray(a?.list)?a.list:[];return{list:o,rawCount:o.length}}async function fsr(t,e){await sb(t);let r=Wn.cookie;if(!r)return null;let n=String(typeof e=="object"?e?.fileId||"":e||""),s=typeof e=="object"?String(e?.path||""):"";if(!n||!s)return null;let i=new URLSearchParams({type:"VideoURL",path:s,fs_id:n,devuid:"0%1",clienttype:"1",channel:"android_15_25010PN30C_bd-netdisk_1523a",nom3u8:"1",dlink:"1",media:"1",origin:"dlna"}),a=(await he.get(`${Wn.api}/api/mediainfo?${i.toString()}`,{headers:K6e(r),validateStatus:()=>!0})).data,o=String(a?.info?.dlink||a?.info?.[0]?.dlink||a?.dlink||"").trim();if(!o){let c=a?.errno,u=a?.errmsg||a?.show_msg||a?.message||"";throw new Error(`\u767E\u5EA6\u89C6\u9891\u76F4\u94FE\u83B7\u53D6\u5931\u8D25: ${u||c||"empty dlink"}`)}return{dlink:o,data:a}}var psr={};async function uB(t,e){let r=String(t.body.id||"").split("*");if(await sb(t),r[0]==="own"){let c=String(r[1]||"").trim(),u=lsr(r[2]||"");if(!Wn.cookie)return{parse:0,url:"",msg:"\u767E\u5EA6 Cookie \u7F3A\u5931"};if(!c&&!u)return{parse:0,url:"",msg:"\u767E\u5EA6\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let l=await fsr(t,{fileId:c,path:u});return l?.dlink?{parse:0,url:["\u539F\u753B",l.dlink],header:dsr()}:{parse:0,url:"",msg:"\u767E\u5EA6\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(l){return{parse:0,url:"",msg:`\u767E\u5EA6\u63A5\u53E3\u5F02\u5E38: ${l?.message||l}`}}}let n=r[4],s=sV.get(`baidu_share_${n}`);s&&(Wn.surl=s.surl,Wn.pwd=s.pwd,Wn.link=s.link,Wn.uk=s.uk,Wn.shareid=s.shareid,Wn.shorturl=Wn.surl?Wn.surl.split("").slice(1).join(""):"",Wn.shareCookie="",Wn.pwd&&(await Wn.getRandsk(),Wn.headers.cookie=Wn.shareCookie||Wn.cookie));let i={...H6e("",G6e)},a={...H6e()};try{let c=await Wn.getAppShareUrl(r[0],r[1],r[2],r[3]);if(c)return{parse:0,url:["\u539F\u753B",c],header:i}}catch(c){console.log("App\u7248API\u5931\u8D25\uFF0C\u964D\u7EA7\u5230Web\u7248API:",c.message)}let o=await Wn.getShareUrl(r[0],r[1],r[2],r[3]);if(o&&o.length>0){let c=[];return o.forEach(u=>{c.push(u.name,u.url)}),{parse:0,url:c,header:a}}throw new Error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25")}async function lB(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId,a=t.params.flag;if(r!=="baidu")return e.status(400).send({error:"Invalid site"});let o=psr[s];if(!o)return e.status(404).send({error:"Play URL not found in cache"});let c,u=o.headers;if(o.type==="app")c=o.url;else if(o.type==="web"){let l=o.urls.find(d=>d.name===a);if(!l)return e.status(404).send({error:"Quality not found"});c=l.url}else return e.status(500).send({error:"Invalid cache type"});return e.redirect(c)}var Cl=Re(Jn(),1);var Te=to;(function(t,e){let r=to,n=t();for(;;)try{if(-parseInt(r(1178,"j(Pm"))/1*(parseInt(r(1676,"ky6h"))/2)+-parseInt(r(1220,"WFzA"))/3+-parseInt(r(663,"%SDn"))/4*(parseInt(r(275,"RAI2"))/5)+-parseInt(r(665,"!DZ@"))/6*(parseInt(r(1240,"6cH]"))/7)+parseInt(r(1801,"DiMt"))/8+parseInt(r(2053,"HZbC"))/9+parseInt(r(1573,"kM4s"))/10===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(fB,953568+-215*3058);var dB,aV={},es={set(t,e){let r=to;aV[t]=e,dB&&dB[r(876,"IXUY")](r(1482,"lbro")+t,e)},get(t){return aV[t]}},ib=async t=>{let e=to;dB=t[e(1564,"5y@]")].db,aV=await dB[e(1353,"@pEn")+e(1600,"Tl!3")](e(807,"]tXZ"),{})},msr=async t=>{let e=to;return globalThis[e(1750,"w8pn")]?await globalThis[e(814,"p1lY")](t):t},oV=class{constructor(){let e=to,r={KlICH:e(1237,"SxCa")+e(445,"FO4*")+e(1296,"KdbQ")+e(1142,"4b1b"),wkKaw:e(1377,"GXhD"),PCyLb:e(329,"yn!2")+e(1355,"DiMt")+e(593,"#CM4"),xgZMX:e(585,"a&Z$")+e(369,"GXhD"),oMfiM:e(2084,"KdbQ")+e(644,"kM4s")+e(2052,"GXhD"),yrVIt:e(406,"j(Pm")+e(1383,"KdbQ")+e(1211,"6!X(")+e(927,"KdbQ")+e(915,"K&$@")+e(1832,"o]EO")+e(955,"IXUY")+e(1003,"DiMt")+e(334,"6!X(")+e(1862,"#Hok")+e(830,"RAI2")+"6",dXsGd:e(1071,"lsgr"),ofCPv:e(466,"mH&s")+e(328,"cf3y")+e(258,"U(wg")+e(1627,"WLav"),EKpCI:e(1756,"mPFZ")+e(1081,"U(wg"),IpMFU:e(488,"DiMt")+e(1530,"SxCa")+e(525,"WFzA")+e(1293,"kM4s")+e(1275,"UUoF"),Zovsx:e(519,"MTVZ")+e(1779,"mPFZ")},n=r[e(750,"]tXZ")][e(621,"mPFZ")]("|"),s=5*-1498+179+3*2437;for(;;){switch(n[s++]){case"0":this[e(763,"lsgr")]=r[e(794,"4b1b")];continue;case"1":this[e(661,"Ab)Y")+e(409,"U(wg")]="";continue;case"2":this[e(670,"o]EO")]=r[e(854,"lsgr")];continue;case"3":this[e(592,"c0A9")+"d"]=r[e(1488,"WFzA")];continue;case"4":this[e(1528,"j(Pm")]="";continue;case"5":this[e(881,"fbFQ")]=/https:\/\/pan\.xunlei\.com\/s\/([^?#]+)(?:\?[^#]*pwd=([^&#]+))?/;continue;case"6":this[e(1784,"jrYj")]=r[e(1284,"p1lY")];continue;case"7":this[e(766,"eKKZ")]={"User-Agent":r[e(460,"U(wg")],Connection:r[e(1051,"Tl!3")],Accept:r[e(1768,"p1lY")],"Accept-Encoding":r[e(1429,"@pEn")],"Accept-Language":r[e(331,"W7VB")]};continue;case"8":this[e(1797,"WFzA")]="";continue;case"9":this[e(508,"mH&s")]="";continue;case"10":this[e(1169,"lrSf")]="";continue;case"11":this[e(637,"w8pn")]="";continue;case"12":this[e(494,"X7W[")]=r[e(1008,"lbro")];continue;case"13":this[e(323,"a&Z$")+e(1642,"ky6h")]="";continue;case"14":this[e(1161,"UUoF")]="";continue}break}}async[Te(890,"o]EO")](){let e=Te,r={oQAOf:function(n,s){return n>s},YboBH:function(n,s){return n/s},RcsuW:e(1124,"2k6H")+e(759,"lbro"),kjGoG:e(1251,"c0A9")+"\u767B\u5F55",FpDUZ:e(1130,"GXhD")+e(733,"MTVZ")};if(this[e(1093,"KdbQ")])try{let n=JSON[e(692,"jrYj")](Cl.default[e(1835,"X7W[")][e(526,"U(wg")][e(1985,"SxCa")](this[e(491,"6!X(")][e(1905,"U(wg")](".")[1])[e(1465,"lbro")](Cl.default[e(1772,"fbFQ")][e(452,"4b1b")]));r[e(942,"a&Z$")](n[e(298,"p1lY")],Math[e(2020,"UUoF")](r[e(1453,"Tl!3")](Date[e(424,"SxCa")](),-3*-977+2176*4+-3545*3)))?console[e(800,"%SDn")](r[e(1018,"@pEn")]):console[e(1826,"#CM4")](r[e(371,"6cH]")])}catch{console[e(1015,"fbFQ")](r[e(493,"RAI2")])}}get[Te(584,"HZbC")](){let e=Te,r={ptMtb:e(1785,"RAI2")},n=es[e(1701,"GXhD")](r[e(383,"lsgr")]);return!n&&(n=this[e(392,"MTVZ")](),es[e(1817,"fbFQ")](r[e(289,"K&$@")],n)),n}get[Te(752,"WFzA")](){let e=Te,r={jQSOt:e(1486,"mPFZ")+"me"};return es[e(285,"kM4s")](r[e(1534,"a&Z$")])}get[Te(340,"WLav")](){let e=Te,r={TXfpn:e(1012,"K!]D")+"rd"};return es[e(796,"w8pn")](r[e(1931,"mPFZ")])}get[Te(1167,"GXhD")](){let e=Te,r={vrnVt:e(777,"K!]D")};return es[e(1400,"ky6h")](r[e(1840,"WFzA")])}get[Te(1123,"SxCa")+Te(1517,"UUoF")](){let e=Te,r={wAkpl:e(1483,"2k6H")+e(610,"RAI2")};return es[e(1494,"Ab)Y")](r[e(317,"fbFQ")])}get[Te(857,"jrYj")](){let e=Te,r={GTahk:e(1810,"KdbQ")+"d"};return es[e(1462,"o]EO")](r[e(1705,"2k6H")])}[Te(2093,"c0A9")](e){return new Promise(r=>setTimeout(r,e))}[Te(1887,"5y@]")](e){let r=Te;return Cl.default[r(721,"2k6H")](e)[r(1780,"6!X(")]()}[Te(1757,"o]EO")](e){let r=Te;return Cl.default[r(590,"cf3y")](e)[r(662,"o]EO")]()}[Te(825,"]tXZ")](){let e=Te,r={HtoWh:function(n,s){return n|s},eqLja:function(n,s){return n*s},EFlsU:function(n,s){return n===s},imCaB:function(n,s){return n&s},lUGHh:e(2085,"kM4s")+e(1706,"lbro")+e(1135,"eKKZ")+"xx"};return r[e(1057,"a&Z$")][e(739,"U(wg")](/[xy]/g,function(n){let s=e,i=r[s(1774,"FO4*")](r[s(993,"U(wg")](Math[s(1761,"p1lY")](),7377+-1*-4615+-11976),14662+-7331*2);return(r[s(1744,"5y@]")](n,"x")?i:r[s(322,"yn!2")](r[s(1900,"p1lY")](i,3),-5*-239+-6662+1095*5))[s(1780,"6!X(")](-4251+-30*13+4673)})}[Te(834,"mH&s")+Te(1034,"c0A9")](e){let r=Te,n={NmccL:function(s,i){return s+i},NjcwE:r(1783,"Ab)Y")+r(1510,"UUoF")+r(438,"lbro"),bxStp:r(1151,"lsgr")+r(676,"%SDn")+r(1440,"WLav")+"21"};return this[r(2007,"jrYj")](this[r(2013,"kM4s")](n[r(1350,"K!]D")](n[r(1347,"p1lY")](e,n[r(447,"6cH]")]),n[r(1327,"a&Z$")])))}[Te(516,"WLav")+Te(1006,"a&Z$")](e){let r=Te,n={lnJjQ:function(a,o){return a+o},cCtIv:r(1101,"K&$@")+r(668,"kM4s"),CNweO:r(1581,"c0A9")+r(1413,"c0A9")+r(1656,"KdbQ")+r(470,"kM4s"),VdDgo:r(2100,"DiMt")+r(765,"W7VB"),APaZK:r(1786,"K&$@")+r(699,"c0A9")+r(659,"!DZ@"),nZWqE:r(2064,"Ab)Y")+r(1608,"K!]D")+r(1995,"2k6H")+r(1549,"UUoF"),pkdWS:r(1710,"a&Z$")+"1",YwwoA:r(1258,"KdbQ")+r(1212,"lrSf"),AuUBo:r(444,"WLav")+r(1896,"mH&s")+r(954,"a&Z$")+r(1108,"j(Pm")+r(543,"HZbC"),USzbT:r(1213,"FO4*")+r(571,"W7VB")+r(271,"fbFQ"),EtsaD:r(1561,"%SDn")+r(684,"ky6h"),rheud:r(988,"!DZ@")+r(1814,"HZbC"),tVcJe:r(1013,"cf3y")+r(1601,"kM4s")+r(1659,"K!]D")+r(1267,"#Hok"),DgeSj:r(1027,"2k6H")+r(1626,"a&Z$")},s;return s=n[r(1787,"WLav")](n[r(523,"mPFZ")](n[r(1066,"U(wg")](n[r(430,"UUoF")],n[r(380,"lsgr")]),e),n[r(1399,"SxCa")]),[n[r(2023,"jrYj")],n[r(1037,"@pEn")],n[r(1439,"KdbQ")],n[r(1401,"Ab)Y")],n[r(1390,"K&$@")],n[r(1371,"lbro")],n[r(1929,"a&Z$")],n[r(1863,"j(Pm")],n[r(1723,"K&$@")],n[r(1436,"p1lY")]][r(2043,"DiMt")](a=>{let o=r;s=this[o(1070,"K&$@")](n[o(1038,"lrSf")](s,a))}),s}async[Te(767,"mPFZ")](e){let r=Te,n={tiZJa:function(i,a){return i(a)}};this[r(886,"GXhD")]=e;let s=this[r(1541,"cf3y")][r(542,"Ab)Y")](e);s&&s[2434*-4+5*-611+328*39]&&(this[r(1959,"a&Z$")]=s[4022+4021*-1],this[r(2079,"2k6H")]=n[r(2082,"DiMt")](decodeURIComponent,s[523*-1+-3*-1497+-3966]||""))}async[Te(1442,"KdbQ")](){let e=Te,r={QhHzq:e(1253,"yn!2"),svjaK:e(882,"eKKZ"),rwLnd:e(1289,"DiMt")+"7",phDEU:e(848,"lbro")+e(1023,"mPFZ")+e(606,"]tXZ")+"f1",kYvlP:e(2011,"FO4*")+e(2038,"DiMt")+e(1198,"IXUY")+e(1010,"eKKZ"),veRiN:e(879,"@pEn"),YCuzS:e(1724,"cf3y")+e(1614,"6cH]")+e(1854,"KdbQ")+e(1829,"RAI2")+e(1726,"o]EO")+e(852,"Ab)Y")+e(2102,"Tl!3")+"c",zpuix:e(1808,"cf3y"),nWZWm:e(643,"W7VB"),vMAdy:e(1302,"UUoF")+e(1443,"Tl!3"),NDOmJ:e(1195,"c0A9"),BNBTs:e(1571,"KdbQ"),PpJBQ:e(1295,"%SDn")+e(2094,"!DZ@"),JxAaI:function(a,o){return a===o},eAnEg:e(484,"GXhD")},n=JSON[e(2060,"6cH]")]({protocolVersion:r[e(964,"KC!H")],sequenceNo:r[e(1075,"mH&s")],platformVersion:"10",isCompressed:"0",appid:"40",clientVersion:r[e(957,"jrYj")],peerID:r[e(446,"mPFZ")],appName:r[e(1874,"mPFZ")],sdkVersion:r[e(1469,"P6I4")],devicesign:r[e(1056,"P6I4")],netWorkType:"2G",providerName:r[e(1047,"5y@]")],deviceModel:r[e(2017,"#Hok")],deviceName:r[e(608,"Ab)Y")],OSVersion:"12",creditkey:"",hl:r[e(1477,"cf3y")],userName:this[e(1520,"yn!2")],passWord:this[e(1733,"KdbQ")],verifyKey:"",verifyCode:"",isMd5Pwd:"0"}),s={method:r[e(893,"lsgr")],url:this[e(1260,"HZbC")]+(e(1680,"HZbC")+e(1597,"MTVZ")+e(1758,"o]EO")),headers:{"Content-Type":r[e(1376,"HZbC")]},data:n},i=await Ae[e(1963,"p1lY")](s);if(r[e(1950,"MTVZ")](i[e(753,"MTVZ")],1086+1*-886))return console[e(342,"ky6h")](r[e(754,"GXhD")]),i[e(741,"]tXZ")][e(720,"@pEn")]}async[Te(1924,"WFzA")+Te(1753,"yn!2")](){let e=Te,r={qCxBG:e(2008,"4b1b")+e(619,"ky6h")+e(1648,"a&Z$"),wjqvH:e(1468,"mPFZ"),HNwPd:e(1839,"DiMt")+e(358,"a&Z$")+e(700,"KdbQ")+e(356,"ky6h")+e(1747,"c0A9")+e(1582,"%SDn")+e(480,"6cH]")+e(1498,"MTVZ")+e(334,"6!X(")+e(1697,"mPFZ")+e(1570,"IXUY")+"6",BWnBb:e(2055,"w8pn")+e(885,"ky6h"),oZofk:function(a,o){return a===o}},n=JSON[e(756,"GXhD")]({client_id:this[e(419,"5y@]")+"d"],action:r[e(1378,"K!]D")],device_id:this[e(497,"GXhD")],captcha_token:"",meta:{phone_number:e(1937,"a&Z$")+this[e(1172,"%SDn")]}}),s={method:r[e(567,"cf3y")],url:this[e(595,"yn!2")]+(e(1160,"#Hok")+e(563,"U(wg")+"it"),headers:{"User-Agent":r[e(1341,"X7W[")],"Content-Type":r[e(1807,"o]EO")]},data:n},i=await Ae[e(1054,"mPFZ")](s);if(r[e(1492,"KC!H")](i[e(798,"Ab)Y")],-6*179+-1*9001+137*75))return i[e(728,"MTVZ")][e(821,"Tl!3")+e(465,"p1lY")]}async[Te(2096,"GXhD")+Te(347,"6cH]")](){let e=Te,r={ogPFy:e(822,"mPFZ"),WKdfJ:function(o,c){return o===c},PpRYy:e(351,"lrSf"),iFner:e(1825,"@pEn"),bVUWK:e(499,"cf3y"),jaGbi:e(1806,"w8pn"),dXnoh:e(1359,"W7VB")+e(788,"mH&s")+e(774,"MTVZ")+e(393,"5y@]")+e(1714,"4b1b")+e(731,"lsgr")+e(536,"%SDn")+e(506,"fbFQ")+e(425,"X7W[")+e(1640,"@pEn")+e(1891,"K&$@")+e(302,"c0A9")+e(1727,"#CM4")+e(968,"c0A9")+e(681,"KC!H")+"6",dpUgy:e(1202,"K!]D")+e(722,"o]EO"),hOrDf:function(o,c){return o===c},wKcOA:e(2036,"6cH]")};if(console[e(1446,"lrSf")](r[e(423,"w8pn")]),r[e(2073,"SxCa")](this[e(2062,"MTVZ")],"")||r[e(1352,"K!]D")](this[e(636,"%SDn")],void 0)){let o=this[e(373,"GXhD")]();es[e(1102,"j(Pm")](r[e(1016,"RAI2")],o)}let n=await this[e(311,"cf3y")+e(1908,"U(wg")](),s=JSON[e(578,"c0A9")]({phone_number:e(1173,"WLav")+this[e(920,"4b1b")],target:r[e(906,"W7VB")],usage:r[e(1005,"Tl!3")],client_id:this[e(1819,"2k6H")+"d"]}),i={method:r[e(898,"lrSf")],url:this[e(980,"U(wg")]+(e(529,"eKKZ")+e(921,"K!]D")),headers:{"User-Agent":r[e(359,"j(Pm")],"Content-Type":r[e(600,"%SDn")],"x-captcha-token":n,"x-client-id":this[e(1243,"a&Z$")+"d"],"x-device-id":this[e(511,"]tXZ")]},data:s},a=await Ae[e(612,"mH&s")](i)[e(1110,"ky6h")](o=>o[e(1974,"K&$@")]);r[e(856,"U(wg")](a[e(1932,"#CM4")],-11457+11657*1)&&(console[e(900,"6!X(")](r[e(428,"6!X(")]),this[e(1181,"MTVZ")+e(1682,"]tXZ")]=a[e(1250,"Tl!3")][e(307,"GXhD")+e(416,"K&$@")])}async[Te(1716,"c0A9")](e){let r=Te,n={LKcLQ:r(922,"yn!2"),yMQEz:r(1491,"]tXZ")+r(1119,"HZbC")+r(1577,"FO4*")+r(1139,"GXhD")+r(835,"cf3y")+r(1739,"IXUY")+r(1174,"FO4*")+r(1935,"#CM4")+r(729,"P6I4")+r(1145,"jrYj")+r(589,"HZbC")+r(1966,"fbFQ")+r(1428,"5y@]")+r(1456,"RAI2")+r(646,"6cH]")+"6",BirBp:r(1404,"]tXZ")+r(1009,"yn!2"),mvIJu:function(s,i){return s===i}};if(e){let s=JSON[r(642,"X7W[")]({verification_code:e,verification_id:this[r(1069,"jrYj")+r(1979,"W7VB")],client_id:this[r(2056,"]tXZ")+"d"]}),i={method:n[r(548,"ky6h")],url:this[r(415,"FO4*")]+(r(1618,"W7VB")+r(1553,"WFzA")+r(836,"#CM4")),headers:{"user-agent":n[r(365,"mH&s")],"content-type":n[r(1042,"lbro")],"x-client-id":this[r(944,"FO4*")+"d"],"x-device-id":this[r(1226,"a&Z$")]},data:s},a=await Ae[r(1113,"#CM4")](i)[r(1540,"P6I4")](o=>o[r(877,"lrSf")]);if(n[r(1619,"HZbC")](a[r(918,"6!X(")],19*-21+1*-8309+-4454*-2)){let o=a[r(463,"X7W[")][r(1444,"!DZ@")+r(1708,"MTVZ")];await this[r(2048,"Tl!3")+"n"](e,o)}}}async[Te(1633,"W7VB")+"n"](e,r){let n=Te,s={MNIWs:n(290,"K!]D"),JqqKm:n(615,"yn!2")+n(1617,"WFzA")+n(824,"c0A9")+n(776,"yn!2")+n(1361,"#CM4")+n(1073,"j(Pm")+n(1346,"WLav")+n(1968,"5y@]")+n(874,"#CM4")+n(671,"%SDn")+n(1457,"w8pn")+n(436,"eKKZ")+n(997,"mPFZ")+n(1064,"#Hok")+n(660,"@pEn")+"6",AiOOz:n(1264,"Ab)Y")+n(1516,"MTVZ"),DJMNX:function(u,l){return u===l},AvuNe:n(2015,"FO4*"),wckus:n(2025,"HZbC"),QRWoe:function(u,l){return u+l},oOnoo:n(1762,"mH&s")+"d",hiYjL:n(459,"#Hok")+n(403,"kM4s"),JZGAg:function(u,l){return u+l},VKmGm:n(849,"%SDn")},i=await this[n(1447,"6!X(")+n(1547,"c0A9")](),a=JSON[n(642,"X7W[")]({username:n(2045,"W7VB")+this[n(713,"mPFZ")],verification_code:e,verification_token:r,client_id:this[n(2056,"]tXZ")+"d"]}),o={method:s[n(1594,"!DZ@")],url:this[n(1868,"ky6h")]+(n(1851,"WFzA")+n(773,"lsgr")),headers:{"User-Agent":s[n(1405,"W7VB")],"Content-Type":s[n(1568,"6cH]")],"x-captcha-token":i,"x-client-id":this[n(647,"yn!2")+"d"],"x-device-model":"PC","x-device-id":this[n(1885,"eKKZ")]},data:a},c=await Ae[n(1125,"KC!H")](o)[n(1671,"5y@]")](u=>u[n(333,"X7W[")]);s[n(570,"P6I4")](c[n(1778,"X7W[")],-1*8679+-5587+14466*1)?(console[n(1063,"eKKZ")](s[n(482,"GXhD")]),es[n(943,"p1lY")](s[n(1621,"yn!2")],s[n(1930,"IXUY")](s[n(280,"Tl!3")](c[n(1811,"5y@]")][n(338,"GXhD")]," "),c[n(350,"RAI2")][n(891,"U(wg")+"en"])),es[n(1817,"fbFQ")](s[n(967,"@pEn")],c[n(1190,"P6I4")][n(1209,"#CM4")]),es[n(1987,"FO4*")](s[n(1748,"U(wg")],c[n(1952,"FO4*")][n(1077,"GXhD")+n(809,"HZbC")])):console[n(1216,"K!]D")](s[n(820,"RAI2")](s[n(2065,"Tl!3")],c[n(1952,"FO4*")]))}async[Te(688,"!DZ@")+Te(1208,"ky6h")](){let e=Te,r={LbdNc:e(2002,"yn!2")+e(1612,"#Hok"),QxIvN:e(1468,"mPFZ"),tQTIi:e(655,"mPFZ")+e(1820,"2k6H")+e(2e3,"jrYj")+e(1877,"#CM4")+e(1961,"KC!H")+e(1364,"UUoF")+e(1396,"K!]D")+e(1866,"IXUY")+e(866,"KdbQ")+e(295,"FO4*")+e(1244,"c0A9")+"6",jFBQV:e(278,"5y@]")+e(1502,"mH&s"),vwjmD:function(a,o){return a===o}},n=JSON[e(629,"2k6H")]({client_id:this[e(2091,"RAI2")+"d"],action:r[e(1325,"SxCa")],device_id:this[e(475,"lbro")],captcha_token:"",meta:{phone_number:e(1229,"mPFZ")+this[e(752,"WFzA")]}}),s={method:r[e(1472,"P6I4")],url:this[e(880,"KC!H")]+(e(1188,"yn!2")+e(1616,"X7W[")+"it"),headers:{"User-Agent":r[e(1895,"cf3y")],"Content-Type":r[e(1340,"j(Pm")]},data:n},i=await Ae[e(1146,"4b1b")](s);if(r[e(534,"p1lY")](i[e(1219,"lrSf")],-2*4027+-6546+370*40))return i[e(1811,"5y@]")][e(535,"eKKZ")+e(1430,"j(Pm")]}async[Te(355,"a&Z$")](){let e=Te,r={gdfea:function(n,s){return n===s},uadMD:e(1424,"FO4*"),ATPyf:e(1519,"SxCa")+e(2027,"p1lY")+e(1941,"lsgr")+e(262,"lsgr")+e(1394,"U(wg")+e(558,"6cH]")+e(1550,"HZbC")+e(1580,"Ab)Y")+e(1809,"#Hok")+e(1559,"WFzA")+e(1163,"6!X(")+"6",lNCDu:e(1696,"MTVZ")+e(1791,"lsgr"),BgKWK:e(1336,"SxCa"),BpWdT:e(1688,"eKKZ"),bFZaS:function(n,s){return n+s},vdlZq:e(1743,"Tl!3")+"d",uvziL:function(n,s){return n>s},KLMep:function(n,s){return n/s},rfnYB:e(448,"5y@]"),uCakz:e(950,"6!X(")};if(r[e(345,"WLav")](this[e(1026,"jrYj")],void 0)||r[e(394,"ky6h")](this[e(1167,"GXhD")],"")){let n=await this[e(346,"p1lY")+e(978,"mH&s")](),s=JSON[e(1506,"yn!2")]({username:e(996,"p1lY")+this[e(713,"mPFZ")],password:this[e(1273,"lbro")],client_id:this[e(1094,"cf3y")+"d"]}),i={method:r[e(2042,"c0A9")],url:this[e(1418,"X7W[")]+(e(903,"eKKZ")+e(853,"X7W[")),headers:{"User-Agent":r[e(1653,"kM4s")],"Content-Type":r[e(649,"yn!2")],"accept-language":r[e(395,"a&Z$")],"x-captcha-token":n,"x-client-id":this[e(912,"6cH]")+"d"],"x-device-id":this[e(611,"KdbQ")]},data:s},a=await Ae[e(1764,"WFzA")](i)[e(349,"#Hok")](o=>o[e(1965,"U(wg")]);r[e(1184,"GXhD")](a[e(1778,"X7W[")],-2*979+-77+-15*-149)&&(es[e(2029,"U(wg")](r[e(1544,"p1lY")],r[e(715,"]tXZ")](r[e(1332,"K!]D")](a[e(1811,"5y@]")][e(1855,"WFzA")]," "),a[e(1952,"FO4*")][e(891,"U(wg")+"en"])),es[e(432,"6!X(")](r[e(405,"lsgr")],a[e(863,"@pEn")][e(479,"eKKZ")])),await this[e(449,"FO4*")+"a"]()}else{let n=JSON[e(1978,"U(wg")](Cl.default[e(1233,"yn!2")][e(1751,"K!]D")][e(1917,"DiMt")](this[e(491,"6!X(")][e(941,"lbro")](".")[1])[e(1513,"#Hok")](Cl.default[e(1902,"RAI2")][e(847,"kM4s")]));r[e(530,"DiMt")](n[e(732,"w8pn")],Math[e(407,"p1lY")](r[e(1306,"yn!2")](Date[e(424,"SxCa")](),2487*4+-3545+-5403)))?console[e(1215,"#Hok")](r[e(1062,"!DZ@")]):(console[e(1279,"2k6H")](r[e(2044,"6cH]")]),es[e(2029,"U(wg")](r[e(1657,"K&$@")],""),await this[e(524,"c0A9")]())}}async[Te(1977,"K&$@")+"a"](){let e=Te,r={pjAEy:e(458,"GXhD")+e(326,"#Hok")+e(1693,"Ab)Y")+e(313,"6cH]")+e(1028,"Ab)Y"),xDhos:e(1386,"WFzA")+e(1818,"6!X("),GDeHw:e(1104,"fbFQ"),JpUSj:e(1652,"@pEn")+e(963,"kM4s")+e(1501,"j(Pm")+e(1689,"jrYj"),aItsV:e(1521,"6cH]")+e(652,"eKKZ"),wjrLj:e(1403,"RAI2"),fiYYo:e(1150,"K&$@")+e(779,"SxCa")+e(1490,"RAI2")+e(296,"RAI2")+e(429,"fbFQ")+"it",mpDJX:e(701,"MTVZ")+e(1487,"o]EO")+e(367,"WLav")+e(970,"HZbC")+e(1312,"K!]D")+e(558,"6cH]")+e(1343,"fbFQ")+e(1003,"DiMt")+e(334,"6!X(")+e(937,"j(Pm")+e(389,"kM4s")+"6",LDHoT:e(2055,"w8pn")+e(785,"X7W["),ErQjq:e(1408,"KdbQ")+e(1770,"fbFQ")+e(2021,"mH&s")+e(702,"#Hok")+e(1499,"MTVZ"),hDatb:e(421,"MTVZ")+e(2090,"MTVZ")+e(274,"lrSf"),PiSQz:e(913,"4b1b"),rFKAA:e(1415,"w8pn")+e(1897,"6!X(")+e(442,"2k6H")+e(902,"IXUY")+e(1155,"lrSf")+e(391,"w8pn")+e(1294,"j(Pm"),BxmNA:function(u,l){return u(l)}},n=JSON[e(1136,"IXUY")]({client_id:this[e(772,"kM4s")+"d"],action:r[e(1827,"6cH]")],device_id:this[e(1986,"SxCa")],captcha_token:"",meta:{username:"",phone_number:this[e(1045,"kM4s")],email:"",package_name:r[e(1362,"]tXZ")],client_version:r[e(1194,"#Hok")],captcha_sign:r[e(1041,"P6I4")],timestamp:r[e(598,"X7W[")],user_id:this[e(654,"lsgr")]}}),s={method:r[e(1557,"6cH]")],url:r[e(924,"X7W[")],headers:{"User-Agent":r[e(878,"c0A9")],"Content-Type":r[e(1409,"w8pn")],"accept-language":r[e(1878,"]tXZ")],"content-type":r[e(1033,"WFzA")]},data:n},i=await Ae[e(746,"FO4*")](s)[e(2067,"lrSf")](u=>u[e(312,"ky6h")]),a=i[e(926,"a&Z$")][e(1722,"!DZ@")+e(528,"RAI2")],o={method:r[e(1922,"K&$@")],url:r[e(1200,"Ab)Y")],headers:{"User-Agent":r[e(1556,"j(Pm")],"accept-language":r[e(1335,"RAI2")],authorization:this[e(1872,"IXUY")],"content-type":r[e(532,"U(wg")],"x-captcha-token":a,"x-client-id":this[e(1819,"2k6H")+"d"],"x-device-id":this[e(1885,"eKKZ")]}},c=(await r[e(1466,"#CM4")](Ae,o)[e(793,"MTVZ")](u=>u[e(1121,"lbro")]))[e(1790,"cf3y")]}async[Te(2039,"MTVZ")+Te(1328,"ky6h")](e,r){let n=Te,s={JpDTm:n(613,"w8pn")+n(2077,"MTVZ"),SoJRm:n(1984,"lsgr")+n(1587,"jrYj")+n(2047,"fbFQ")+"6a",hHFwZ:n(819,"j(Pm")+n(1911,"WLav"),XEatx:n(990,"a&Z$"),GKxNU:n(2087,"#Hok")+n(306,"K!]D")+n(283,"lbro")+n(352,"X7W["),bIScY:n(1420,"2k6H")+n(2032,"c0A9"),pdJfB:n(1427,"P6I4"),dbjkd:n(1106,"jrYj")+n(1562,"yn!2")+n(2057,"2k6H")+n(780,"%SDn")+n(1647,"#CM4")+n(2014,"mH&s")+n(1579,"w8pn")+n(810,"FO4*")+n(1263,"lrSf")+n(628,"mH&s")+n(330,"W7VB")+"6",ncjTi:n(1725,"DiMt")+n(1981,"KdbQ"),IrAaH:function(u,l){return u===l}},i=r+":"+e,a=JSON[n(1560,"W7VB")]({client_id:s[n(1964,"Tl!3")],action:i,device_id:s[n(1666,"W7VB")],captcha_token:"",meta:{username:"",phone_number:"",email:"",package_name:s[n(512,"GXhD")],client_version:s[n(1479,"6!X(")],captcha_sign:s[n(1199,"Ab)Y")],timestamp:s[n(2074,"p1lY")],user_id:this[n(1873,"IXUY")]}}),o={method:s[n(802,"j(Pm")],url:this[n(1260,"HZbC")]+(n(517,"Tl!3")+n(520,"kM4s")+"it"),headers:{"User-Agent":s[n(1948,"W7VB")],"Content-Type":s[n(1603,"Ab)Y")]},data:a},c=await Ae[n(1342,"]tXZ")](o);if(s[n(1518,"6cH]")](c[n(357,"HZbC")],8545+-407*-19+-16078*1))return c[n(863,"@pEn")][n(401,"DiMt")+n(577,"K&$@")]}async[Te(1536,"KdbQ")+Te(557,"cf3y")](e,r){let n=Te,s={spNdC:n(626,"#Hok")+n(1276,"eKKZ")+n(994,"RAI2"),jxiGg:n(1649,"6cH]")+"7",jpJIz:n(1745,"4b1b")+n(496,"WLav"),Zqxue:n(1951,"5y@]"),FjBEA:n(2104,"HZbC")+n(316,"p1lY")+n(704,"6!X(")+n(559,"K!]D")+n(2083,"w8pn")+n(940,"#CM4")+n(947,"jrYj")+n(775,"%SDn")+n(1972,"cf3y")+n(1236,"a&Z$")+n(1205,"c0A9")+n(1755,"6cH]")+n(297,"mPFZ")+n(1860,"UUoF")+n(1242,"RAI2")+n(1074,"IXUY")+n(544,"kM4s")+n(939,"U(wg")+n(2030,"eKKZ")+n(321,"ky6h")+n(433,"!DZ@")+n(1232,"j(Pm")+n(566,"4b1b"),XmPZg:n(408,"kM4s")+n(303,"p1lY"),Mjxrx:function(l,d){return l===d}},i=r+":"+e,a=this[n(591,"RAI2")+n(343,"KC!H")](this[n(1843,"K!]D")]),o=JSON[n(1022,"a&Z$")]({client_id:this[n(1243,"a&Z$")+"d"],action:i,device_id:this[n(889,"jrYj")],captcha_token:"",meta:{package_name:s[n(1115,"KC!H")],client_version:s[n(2035,"p1lY")],captcha_sign:"1."+a,timestamp:s[n(828,"UUoF")],user_id:this[n(1873,"IXUY")]}}),c={method:s[n(1816,"fbFQ")],url:this[n(952,"lbro")]+(n(397,"X7W[")+n(376,"DiMt")+"it"),headers:{"User-Agent":s[n(1356,"Ab)Y")],"Content-Type":s[n(1285,"cf3y")]},data:o},u=await Ae[n(1113,"#CM4")](c);if(s[n(1166,"KC!H")](u[n(762,"UUoF")],-8426+38*227))return u[n(901,"j(Pm")][n(1217,"%SDn")+n(809,"HZbC")]}[Te(390,"WFzA")](){let e=Te,r={vozfE:e(1143,"HZbC")+e(1464,"eKKZ"),PViHV:e(1939,"c0A9")+e(2072,"lbro"),jFmJu:e(1906,"@pEn")+e(1737,"eKKZ"),YNolP:e(1942,"yn!2")+e(490,"]tXZ")+e(620,"#CM4"),xStyi:e(1765,"jrYj")+e(672,"MTVZ"),bZkon:e(1189,"fbFQ")+e(2050,"WLav")+e(645,"ky6h")+"0S",UfOFx:e(718,"%SDn")+e(1883,"W7VB")+e(2026,"yn!2")+"rt",AutwO:e(1668,"GXhD")+e(287,"W7VB"),flAXz:e(1782,"j(Pm")+e(1638,"mH&s"),jsNbt:e(1644,"SxCa")+e(2012,"FO4*")+e(337,"6cH]"),SaVKX:e(634,"X7W[")+e(1910,"fbFQ")+e(1473,"K&$@")+"Xs",XuSxW:e(887,"p1lY")+e(1537,"IXUY"),NIhbI:e(1575,"kM4s"),mZjhO:e(740,"#CM4")+e(1882,"jrYj"),MbDOY:e(1303,"SxCa")+e(1857,"Ab)Y")+e(1927,"ky6h")+"6a",oMvjn:function(o,c){return o+c},dNqGr:function(o,c){return o+c},tGnlv:e(1309,"cf3y")+e(450,"kM4s"),RmJuU:function(o,c){return ou},iUvjQ:function(c,u){return c!==u},aBWDk:function(c,u){return c>=u}},n=r[e(381,"lsgr")],s=r[e(384,"fbFQ")],i=await this[e(1268,"U(wg")+e(683,"w8pn")](n,s),a={method:r[e(972,"Tl!3")],url:this[e(1059,"mPFZ")]+(e(1129,"yn!2")+e(560,"K&$@")+e(1563,"jrYj"))+this[e(1876,"WFzA")]+(e(1828,"mPFZ")+"=")+this[e(1799,"SxCa")]+(e(1588,"cf3y")+e(467,"@pEn")+e(1044,"MTVZ")+e(1360,"GXhD")+e(1936,"eKKZ")),headers:{"User-Agent":r[e(1307,"p1lY")],"accept-language":r[e(738,"P6I4")],authorization:"","x-captcha-token":i,"x-client-id":r[e(1990,"DiMt")],"x-device-id":r[e(565,"W7VB")]}},o=await Ae[e(540,"5y@]")](a);if(r[e(273,"mH&s")](o[e(1698,"@pEn")],-8429*1+8129+-250*-2)){let c={},u=[],l=[];this[e(1721,"K!]D")+e(564,"WFzA")]=o[e(1912,"mH&s")][e(378,"#CM4")+e(641,"kM4s")],o[e(1790,"cf3y")][e(842,"yn!2")][e(951,"5y@]")](f=>{let p=e;if(r[p(707,"jrYj")](f[p(1711,"lsgr")],""))u[p(1970,"yn!2")](f.id);else if(r[p(609,"HZbC")](f[p(362,"P6I4")+p(999,"fbFQ")],r[p(1411,"FO4*")])){let m=/[#|'"\[\]&<>]/g,h=m[p(1344,"cf3y")](f[p(1707,"#Hok")])?f[p(1609,"eKKZ")][p(739,"U(wg")](m,""):f[p(569,"j(Pm")];l[p(675,"cf3y")]({name:h,size:r[p(987,"o]EO")](Number,f[p(1029,"mPFZ")])||-8093+181*28+3025,fileId:f.id,share_id:this[p(363,"UUoF")],parent_id:f[p(1738,"K&$@")],pass_code_token:r[p(1752,"@pEn")](encodeURIComponent,this[p(696,"P6I4")+p(469,"jrYj")]),pass_code:this[p(1892,"lbro")]})}}),!r[e(1907,"lsgr")](o[e(1790,"cf3y")][e(1454,"lrSf")],c)&&r[e(1798,"UUoF")](o[e(1912,"mH&s")][e(1879,"cf3y")],void 0)&&(c[o[e(1103,"IXUY")][e(919,"%SDn")]]=[]),r[e(2037,"DiMt")](l[e(1158,"4b1b")],-3760*2+-4813+12333)&&r[e(795,"DiMt")](o[e(728,"MTVZ")][e(1092,"KC!H")],void 0)&&(c[o[e(1190,"P6I4")][e(1331,"W7VB")]]=[...l]);let d=await Promise[e(386,"a&Z$")](u[e(761,"6!X(")](async f=>this[e(764,"HZbC")+e(1320,"5y@]")](f)));return d=d[e(949,"cf3y")](f=>f!=null)[e(1478,"RAI2")](),r[e(1655,"cf3y")](d[e(1370,"c0A9")],0)&&c[o[e(1035,"WFzA")][e(919,"%SDn")]][e(2005,"fbFQ")](...d),c}}async[Te(833,"jrYj")+Te(1067,"yn!2")](e){let r=Te,n={wJWtz:function(u,l){return u===l},ctlsy:r(808,"KC!H"),sZlmJ:function(u,l){return u(l)},YnLpk:r(505,"KC!H")+r(1148,"%SDn"),ruRQy:r(992,"!DZ@"),Pjrgr:r(554,"UUoF"),Szeyc:r(745,"lbro")+r(1654,"4b1b")+r(679,"%SDn")+r(1823,"DiMt")+r(1961,"KC!H")+r(558,"6cH]")+r(1777,"kM4s")+r(1348,"5y@]")+r(1398,"eKKZ")+r(859,"GXhD")+r(755,"o]EO")+"6",WsPFH:r(770,"KC!H")+r(1455,"kM4s")+r(1545,"P6I4")+r(561,"K!]D")+r(1438,"SxCa"),VgIVQ:r(985,"a&Z$")+r(1734,"w8pn"),NfGkS:r(1460,"GXhD")+r(1503,"@pEn"),EMzqI:r(1191,"K!]D")+r(2070,"4b1b")+r(320,"@pEn")+"6a",KeJkO:function(u,l){return u===l}},s=n[r(1322,"DiMt")],i=n[r(1956,"Ab)Y")],a=await this[r(1837,"lsgr")+r(1043,"fbFQ")](s,i),o={method:n[r(1849,"Ab)Y")],url:this[r(575,"fbFQ")]+(r(2046,"6!X(")+r(784,"eKKZ")+r(669,"K!]D")+"=")+this[r(1876,"WFzA")]+(r(2001,"eKKZ")+"=")+e+(r(1828,"mPFZ")+r(1380,"RAI2"))+n[r(1310,"c0A9")](encodeURIComponent,this[r(1800,"@pEn")+r(375,"eKKZ")])+(r(1658,"mPFZ")+r(2031,"p1lY")+r(909,"mPFZ")+r(673,"!DZ@")+r(1665,"P6I4")),headers:{"User-Agent":n[r(1480,"GXhD")],"accept-language":n[r(1434,"@pEn")],authorization:"","content-type":n[r(1228,"mH&s")],"x-captcha-token":a,"x-client-id":n[r(1555,"K&$@")],"x-device-id":n[r(1298,"4b1b")]}},c=await Ae[r(1764,"WFzA")](o);if(n[r(1920,"SxCa")](c[r(1406,"jrYj")],-1*-7271+2*2921+1*-12913)){let u=[],l=[];c[r(1811,"5y@]")][r(418,"lbro")][r(547,"FO4*")](f=>{let p=r;if(n[p(748,"#Hok")](f[p(1504,"U(wg")],""))u[p(550,"jrYj")](f.id);else if(n[p(555,"a&Z$")](f[p(1613,"WFzA")+p(635,"FO4*")],n[p(708,"KC!H")])){let m=/[#|'"\[\]&<>]/g,h=m[p(1319,"WLav")](f[p(553,"WLav")])?f[p(725,"WFzA")][p(372,"eKKZ")](m,""):f[p(1050,"yn!2")];l[p(1960,"WLav")]({name:h,size:n[p(781,"#CM4")](Number,f[p(1565,"lrSf")])||5162+2551*-1+-2611,fileId:f.id,share_id:this[p(1193,"K!]D")],parent_id:f[p(991,"yn!2")],pass_code_token:n[p(1584,"U(wg")](encodeURIComponent,this[p(1800,"@pEn")+p(1416,"#Hok")]),pass_code:this[p(1869,"W7VB")]})}});let d=await Promise[r(1349,"KC!H")](u[r(710,"6cH]")](async f=>this[r(1947,"fbFQ")+r(789,"w8pn")](f)));return d=d[r(1358,"RAI2")](f=>f!=null),[...l,...d[r(677,"a&Z$")]()]}}async[Te(1288,"RAI2")+"l"](e,r,n,s=""){let i=Te,a={GjuBH:function(p,m){return p!==m},VTxPS:function(p,m){return p===m},pqCFf:function(p,m){return p+m},gmzob:i(1096,"%SDn")+i(743,"Ab)Y")+i(1470,"j(Pm")+i(1523,"X7W[")+i(639,"a&Z$")+"l=",lbVaJ:function(p,m){return p(m)},WphNd:i(1223,"WLav")+i(1e3,"DiMt"),xJEJB:i(1886,"5y@]"),Fvwoz:i(1388,"P6I4"),dsANa:function(p,m){return p(m)},cqaKP:i(500,"%SDn")+i(1687,"]tXZ")+i(679,"%SDn")+i(703,"jrYj")+i(1893,"!DZ@")+i(1061,"w8pn")+i(1277,"yn!2")+i(366,"]tXZ")+i(1606,"4b1b")+i(1660,"SxCa")+i(521,"fbFQ")+"6",NnUqT:i(605,"!DZ@")+i(737,"w8pn")+i(461,"6!X(")+i(1566,"ky6h")+i(492,"2k6H"),dcKhR:i(324,"4b1b"),QqZfo:i(860,"RAI2")+i(885,"ky6h"),ktdrU:i(279,"lbro")+i(1508,"DiMt"),PIJBl:i(2041,"Ab)Y")+i(597,"o]EO")+i(868,"mH&s")+"6a"},o=a[i(691,"kM4s")],c=a[i(803,"4b1b")],u=await this[i(1351,"P6I4")+i(435,"2k6H")](o,c),l=s||this[i(1449,"o]EO")]||"",d={method:a[i(627,"WFzA")],url:this[i(1020,"#CM4")]+(i(1842,"%SDn")+i(1822,"yn!2")+i(870,"p1lY")+i(1636,"U(wg")+"=")+a[i(1944,"X7W[")](encodeURIComponent,n)+(i(1903,"mPFZ")+i(1132,"#CM4"))+e+i(1278,"KC!H")+r+(i(576,"K!]D")+"e=")+l,headers:{"User-Agent":a[i(339,"!DZ@")],"accept-language":a[i(2080,"cf3y")],authorization:"","cache-control":a[i(603,"5y@]")],"content-type":a[i(1838,"4b1b")],"x-captcha-token":u,"x-client-id":a[i(1548,"GXhD")],"x-device-id":a[i(1645,"mH&s")]}},f=await Ae[i(749,"HZbC")](d);if(a[i(778,"IXUY")](f[i(1084,"DiMt")],7699+5158*-1+-2341)){this[i(1247,"c0A9")]="";let p=[];return f[i(2069,"lsgr")][i(1736,"%SDn")][i(1552,"U(wg")][i(751,"jrYj")](m=>{let h=i;a[h(332,"j(Pm")](m[h(1019,"WLav")],null)&&(a[h(981,"lsgr")](this[h(498,"IXUY")],"")&&(this[h(1112,"j(Pm")]=new URL(m[h(549,"mH&s")][h(1324,"SxCa")])[h(1053,"4b1b")]),p[h(1635,"Ab)Y")](m[h(1628,"yn!2")],a[h(1131,"W7VB")](a[h(514,"lbro")],a[h(1815,"K!]D")](encodeURIComponent,m[h(2063,"kM4s")][h(888,"K!]D")]))))}),p}return[]}async[Te(1604,"o]EO")+"ta"](e){let r=Te,n={lxuSB:r(434,"WFzA")};if(e[r(293,"RAI2")](n[r(771,"HZbC")]))return await this[r(487,"%SDn")](e),await this[r(1567,"p1lY")+"st"]()}async[Te(1210,"lrSf")](e,r,n){let s=Te,i={nGyWt:s(1339,"K!]D")+s(1017,"eKKZ"),ssEzY:s(782,"DiMt"),QExzW:function(f,p){return f(p)},cmQUI:s(653,"lrSf"),Xqkub:s(1519,"SxCa")+s(1695,"mH&s")+s(1368,"X7W[")+s(703,"jrYj")+s(1105,"MTVZ")+s(1280,"2k6H")+s(2101,"U(wg")+s(2071,"KC!H")+s(1945,"p1lY")+s(361,"U(wg")+s(812,"yn!2")+"6",thDGk:s(1725,"DiMt")+s(1256,"j(Pm"),YHgSB:s(1558,"IXUY")+s(1583,"KdbQ")+s(268,"#Hok")+s(537,"U(wg")+s(841,"eKKZ"),yTKJR:function(f,p){return f===p},VUJoT:function(f,p){return f===p},dRNcF:s(1953,"@pEn"),URQjc:s(483,"KdbQ")},a=i[s(1039,"W7VB")],o=i[s(2066,"#Hok")],c=await this[s(1032,"#CM4")+s(2040,"p1lY")](a,o),u=JSON[s(578,"c0A9")]({parent_id:this[s(1664,"KdbQ")],share_id:r,pass_code_token:i[s(1329,"ky6h")](decodeURIComponent,n),ancestor_ids:[],file_ids:[e],specify_parent_id:!0}),l={method:i[s(1539,"#CM4")],url:this[s(1861,"a&Z$")]+(s(471,"6cH]")+s(805,"o]EO")+"re"),headers:{"User-Agent":i[s(625,"UUoF")],"Content-Type":i[s(1527,"fbFQ")],"accept-language":i[s(364,"UUoF")],authorization:this[s(1266,"!DZ@")],"x-captcha-token":c,"x-client-id":this[s(284,"Tl!3")+"d"],"x-device-id":this[s(1419,"W7VB")]},data:u},d=await Ae[s(1533,"lrSf")](l)[s(1776,"GXhD")](f=>f[s(877,"lrSf")]);return i[s(1259,"fbFQ")](d?.[s(1592,"K&$@")],-6974+2242*-1+9416)&&i[s(687,"#Hok")](d?.[s(926,"a&Z$")]?.[s(1992,"UUoF")+"us"],"OK")?(console[s(1391,"j(Pm")](i[s(1969,"]tXZ")]),!0):(console[s(1391,"j(Pm")](d?.[s(1811,"5y@]")]?.[s(1120,"WLav")+"us"]||s(973,"kM4s")+(d?.[s(315,"eKKZ")]||i[s(533,"DiMt")])),!1)}async[Te(1763,"mH&s")](e,r,n){let s=Te,i={FfgOq:function(a,o){return a!==o},ZWRIB:s(674,"K!]D")+s(1643,"Ab)Y"),FwPpu:s(917,"Tl!3")};if(await this[s(1650,"#CM4")](),i[s(1052,"6cH]")](this[s(2004,"5y@]")],"")&&i[s(1551,"lrSf")](this[s(300,"c0A9")],void 0)){if(!await this[s(797,"]tXZ")](e,r,n))throw new Error(i[s(1144,"U(wg")])}else throw new Error(i[s(264,"p1lY")])}async[Te(1423,"DiMt")](){let e=Te,r={iTUXI:function(u,l){return u===l},mcKVQ:function(u,l){return u===l},NAaPi:e(742,"X7W[")+e(1773,"P6I4"),ngueR:e(904,"MTVZ"),KmybT:e(1079,"j(Pm"),vQdKB:e(1988,"2k6H")+e(481,"Ab)Y")+e(473,"cf3y")+e(596,"DiMt")+e(2010,"KdbQ")+e(1203,"KdbQ")+e(995,"DiMt")+e(1072,"FO4*")+e(513,"yn!2")+e(2006,"SxCa")+e(1021,"Tl!3")+e(962,"DiMt")+e(1971,"UUoF")+e(1272,"5y@]")+e(2058,"FO4*")+e(1741,"lsgr")+e(1090,"FO4*")+e(552,"K!]D")+e(1511,"GXhD")+e(294,"j(Pm")+e(946,"Tl!3")+e(1337,"kM4s")+e(1375,"j(Pm"),KbZpT:e(272,"w8pn")+e(1338,"6!X(")+e(1474,"jrYj")+e(855,"RAI2")+e(1275,"UUoF"),veruj:e(689,"IXUY")+e(303,"p1lY")};(r[e(1983,"mH&s")](this[e(935,"]tXZ")],void 0)||r[e(945,"c0A9")](this[e(399,"@pEn")],""))&&await this[e(1681,"]tXZ")]();let n=r[e(1673,"]tXZ")],s=r[e(288,"X7W[")],i=await this[e(368,"FO4*")+e(867,"K&$@")](n,s),a=this[e(1024,"Tl!3")]+(e(1923,"2k6H")+e(1871,"X7W[")+e(719,"Tl!3")+e(843,"W7VB")+e(1975,"WFzA")+e(1238,"lrSf")+e(2028,"fbFQ")+e(310,"a&Z$")+e(1794,"mH&s")+e(382,"]tXZ")+e(1111,"IXUY")+e(1231,"mPFZ")+e(1452,"o]EO")+e(1867,"KC!H")+e(1159,"GXhD")+e(1201,"P6I4")+e(1888,"jrYj")+e(1049,"DiMt")+e(1082,"WLav")),o={method:r[e(1252,"WFzA")],url:a,headers:{"User-Agent":r[e(1507,"6cH]")],"accept-language":r[e(884,"IXUY")],authorization:this[e(1133,"ky6h")],"content-type":r[e(522,"j(Pm")],"x-captcha-token":i,"x-client-id":this[e(1980,"P6I4")+"d"],"x-device-id":this[e(497,"GXhD")]}},c=await Ae[e(929,"lsgr")](o);if(r[e(736,"!DZ@")](c[e(1357,"p1lY")],-1548+-8534*-1+-6786)){let u=c[e(728,"MTVZ")][e(574,"W7VB")][e(1014,"5y@]")](l=>l[e(725,"WFzA")]===this[e(705,"@pEn")]);u?this[e(1157,"!DZ@")]=u.id:this[e(263,"cf3y")]=""}}async[Te(1269,"c0A9")](){let e=Te,r={uNCuj:function(n,s){return n===s},dphUS:e(846,"lbro")+e(2019,"!DZ@"),tUELw:e(1730,"%SDn"),tNmLW:e(319,"IXUY")+"er",BfoNR:e(290,"K!]D"),YsQjM:e(1126,"2k6H")+e(690,"SxCa")+e(679,"%SDn")+e(1162,"WLav")+e(1607,"j(Pm")+e(1257,"5y@]")+e(1087,"]tXZ")+e(1254,"w8pn")+e(1281,"]tXZ")+e(1274,"6!X(")+e(1532,"cf3y")+"6",RlLro:e(451,"eKKZ")+e(1646,"lrSf"),KeFHA:e(1080,"2k6H")+e(1234,"!DZ@")+e(461,"6!X(")+e(757,"fbFQ")+e(1225,"P6I4"),GlWSR:e(1107,"]tXZ")+"\u5B58"};if(await this[e(1505,"p1lY")](),r[e(895,"Tl!3")](this[e(1316,"p1lY")],"")||r[e(1629,"UUoF")](this[e(1085,"X7W[")],void 0)){let n=r[e(1286,"!DZ@")],s=r[e(817,"!DZ@")],i=await this[e(1976,"K&$@")+e(2040,"p1lY")](n,s),a=JSON[e(1781,"ky6h")]({parent_id:"",name:this[e(1207,"X7W[")],kind:r[e(1620,"yn!2")],space:""}),o={method:r[e(478,"FO4*")],url:this[e(515,"lsgr")]+(e(1176,"KC!H")+e(2003,"mPFZ")),headers:{"User-Agent":r[e(1283,"WLav")],"Content-Type":r[e(1036,"K&$@")],"accept-language":r[e(1991,"lrSf")],authorization:this[e(308,"DiMt")],"x-captcha-token":i,"x-client-id":this[e(439,"ky6h")+"d"],"x-device-id":this[e(475,"lbro")]},data:a},c=await Ae[e(928,"cf3y")](o);r[e(791,"kM4s")](c[e(457,"GXhD")],-31*-121+-1*1709+-1842)&&(this[e(790,"%SDn")]=c[e(463,"X7W[")][e(724,"w8pn")].id,console[e(1154,"cf3y")](r[e(1076,"6cH]")]))}}async[Te(388,"GXhD")](){let e=Te,r={xmBXF:e(1333,"a&Z$")+e(456,"yn!2"),CGHgb:e(1789,"6cH]"),sQFTT:e(1002,"K&$@"),cGBDY:e(1769,"ky6h")+e(1007,"%SDn")+e(1152,"#Hok")+e(883,"mPFZ")+e(2088,"%SDn")+e(1694,"!DZ@")+e(1249,"WFzA")+e(1866,"IXUY")+e(1140,"cf3y")+e(295,"FO4*")+e(1451,"K&$@")+"6",WhMBq:e(594,"]tXZ")+e(1630,"c0A9")+e(586,"4b1b")+e(769,"lrSf")+e(396,"fbFQ"),hvsdf:e(408,"kM4s")+e(960,"FO4*"),NVPDM:function(u,l){return u===l}};this[e(1957,"X7W[")]="";let n=r[e(440,"SxCa")],s=r[e(1760,"p1lY")],i=await this[e(1147,"ky6h")+e(979,"lbro")](n,s),a=this[e(1861,"a&Z$")]+(e(1495,"UUoF")+e(2086,"HZbC")+e(474,"SxCa"))+this[e(414,"a&Z$")]+(e(1192,"%SDn")+e(1086,"c0A9")+e(1686,"p1lY")+e(2016,"eKKZ")+e(975,"jrYj")+e(651,"lrSf")+e(1395,"lsgr")+e(1997,"fbFQ")+e(1674,"c0A9")+e(1317,"4b1b")+e(1095,"W7VB")+e(1940,"a&Z$")+e(1287,"UUoF")+e(462,"WLav")+e(709,"jrYj")+e(1719,"lbro")+e(1853,"2k6H")),o={method:r[e(1134,"!DZ@")],url:a,headers:{"User-Agent":r[e(507,"o]EO")],"accept-language":r[e(1850,"KC!H")],authorization:this[e(1133,"ky6h")],"content-type":r[e(1732,"K&$@")],"x-captcha-token":i,"x-client-id":this[e(439,"ky6h")+"d"],"x-device-id":this[e(936,"Ab)Y")]}},c=await Ae[e(1804,"kM4s")](o);if(r[e(786,"MTVZ")](c[e(918,"6!X(")],37*-79+31*88+395)){let u=Array[e(1323,"HZbC")](c[e(1856,"#Hok")]?.[e(730,"6!X(")])?c[e(455,"c0A9")][e(582,"j(Pm")]:[],l=u[e(1599,"W7VB")](d=>d?.id);l&&(this[e(477,"yn!2")]=l.id)}return this[e(1467,"4b1b")]}async[Te(832,"eKKZ")+"Id"](e=8,r=2268*3+2678+-8282){let n=Te,s={CUijw:function(i,a){return i<=a},WBDeG:function(i,a){return i"");if(a)return a;s[n(318,"SxCa")](i,e)&&await this[n(616,"kM4s")](r)}return""}async[Te(1894,"K!]D")](){let e=Te,r={ZPhdc:function(n,s){return n!==s},WwjQX:e(1397,"#CM4")+e(1414,"a&Z$"),VXhVa:e(864,"a&Z$"),PXEdY:e(1314,"KC!H"),CLJTr:e(965,"FO4*")+e(1562,"yn!2")+e(1152,"#Hok")+e(1448,"cf3y")+e(1004,"a&Z$")+e(1118,"lbro")+e(1550,"HZbC")+e(1585,"jrYj")+e(1836,"w8pn")+e(1697,"mPFZ")+e(1244,"c0A9")+"6",XVUHQ:e(1531,"lsgr")+e(2094,"!DZ@"),KFlkw:e(1408,"KdbQ")+e(892,"mH&s")+e(1746,"IXUY")+e(1293,"kM4s")+e(1186,"%SDn"),HiATS:function(n,s){return n===s},Dvxkm:e(1788,"UUoF"),eYADq:function(n,s){return n===s},saLnh:e(527,"IXUY")};if(await this[e(908,"]tXZ")](),r[e(758,"WFzA")](this[e(1122,"ky6h")],"")&&r[e(1717,"o]EO")](this[e(934,"2k6H")],void 0)){let n=r[e(1379,"WLav")],s=r[e(2068,"X7W[")],i=await this[e(441,"SxCa")+e(531,"K!]D")](n,s),a=JSON[e(2024,"HZbC")]({ids:[this[e(485,"o]EO")]],space:""}),o={method:r[e(1463,"W7VB")],url:this[e(575,"fbFQ")]+(e(1833,"fbFQ")+e(871,"#Hok")+e(1590,"Ab)Y")),headers:{"User-Agent":r[e(1852,"DiMt")],"Content-Type":r[e(1089,"#CM4")],"accept-language":r[e(1509,"HZbC")],authorization:this[e(399,"@pEn")],"x-captcha-token":i,"x-client-id":this[e(1471,"KC!H")+"d"],"x-device-id":this[e(1385,"mPFZ")]},data:a},c=await Ae[e(1631,"DiMt")](o)[e(1596,"!DZ@")](u=>u[e(1974,"K&$@")]);r[e(1497,"p1lY")](c[e(762,"UUoF")],200)?console[e(1224,"!DZ@")](r[e(1973,"lsgr")]):r[e(299,"!DZ@")](c[e(2033,"6cH]")],404)&&console[e(800,"%SDn")](r[e(1058,"lrSf")])}}async[Te(804,"DiMt")+Te(1605,"o]EO")+Te(580,"Ab)Y")](){let e=Te,r={jfUjY:e(572,"4b1b")+e(711,"eKKZ"),yyBcO:e(1382,"SxCa")+e(1031,"X7W[")+e(656,"KC!H"),znnhb:e(1649,"6cH]")+"7",asaHp:e(1098,"c0A9")+e(1304,"mH&s"),WKcof:e(1427,"P6I4"),YKxAQ:e(1271,"5y@]")+e(1426,"cf3y")+e(538,"j(Pm")+e(1001,"GXhD")+e(911,"kM4s")+e(933,"]tXZ")+e(1373,"X7W[")+e(792,"ky6h")+e(503,"#Hok")+e(727,"6cH]")+e(1372,"!DZ@")+e(1088,"lsgr")+e(1514,"lrSf")+e(618,"SxCa")+e(1432,"KC!H")+e(723,"#Hok")+e(454,"yn!2")+e(1679,"]tXZ")+e(1928,"lsgr")+e(551,"cf3y")+e(806,"#Hok")+e(1796,"X7W[")+e(858,"#CM4"),tcYxQ:e(1441,"c0A9")+e(1766,"lsgr"),qTsZZ:e(985,"a&Z$")+e(829,"Ab)Y"),jRZCo:function(o,c){return o===c}},n=this[e(2075,"cf3y")+e(1901,"kM4s")](this[e(617,"ky6h")]),s={client_id:this[e(787,"K&$@")+"d"],action:r[e(938,"fbFQ")],device_id:this[e(281,"#Hok")],captcha_token:"",meta:{package_name:r[e(1735,"P6I4")],client_version:r[e(1870,"FO4*")],captcha_sign:"1."+n,timestamp:r[e(1410,"]tXZ")],user_id:this[e(654,"lsgr")]}},i={method:r[e(404,"#CM4")],url:this[e(1048,"Tl!3")]+(e(2054,"mPFZ")+e(260,"eKKZ")+"it"),headers:{"User-Agent":r[e(840,"HZbC")],"Accept-Encoding":r[e(1262,"lrSf")],"Content-Type":r[e(815,"lsgr")]},data:s},a=await Ae[e(1125,"KC!H")](i);if(r[e(1949,"eKKZ")](a[e(315,"eKKZ")],18*-318+349+5575))return a[e(741,"]tXZ")][e(697,"mPFZ")+e(1369,"!DZ@")]}async[Te(1065,"K!]D")+Te(714,"lbro")](){let e=Te,r={IfBiz:e(896,"KdbQ")+e(1690,"!DZ@"),PEzRj:e(1625,"eKKZ")+e(291,"4b1b"),mdRzn:e(734,"Ab)Y"),cJXTP:e(1459,"RAI2")+e(694,"Tl!3")+e(1996,"SxCa")+e(1431,"!DZ@")+e(360,"SxCa")+e(624,"kM4s")+e(1663,"p1lY")+e(1458,"#CM4")+e(977,"mPFZ")+e(1660,"SxCa")+e(282,"2k6H")+"6",Eltoc:e(633,"fbFQ")+e(1792,"Tl!3"),tYcPB:function(a,o){return a===o}},n=JSON[e(799,"WLav")]({client_id:r[e(1913,"ky6h")],action:r[e(486,"SxCa")],device_id:this[e(1450,"mH&s")],captcha_token:"",meta:{phone_number:e(1381,"5y@]")+this[e(1661,"@pEn")]}}),s={method:r[e(1662,"eKKZ")],url:this[e(693,"mH&s")]+(e(1218,"5y@]")+e(932,"!DZ@")+"it"),headers:{"User-Agent":r[e(2059,"KdbQ")],"Content-Type":r[e(581,"6!X(")]},data:n},i=await Ae[e(1141,"IXUY")](s);if(r[e(910,"MTVZ")](i[e(1389,"a&Z$")],5653+2777*-1+-2676))return i[e(2049,"#CM4")][e(1938,"K&$@")+e(465,"p1lY")]}async[Te(1055,"eKKZ")](){let e=Te,r={LmyWD:e(623,"!DZ@"),XsKiv:e(837,"RAI2")+e(1109,"Tl!3")+e(622,"!DZ@")+e(1767,"WLav")+e(398,"p1lY")+e(1824,"IXUY")+e(1678,"SxCa")+e(1554,"a&Z$")+e(982,"RAI2")+e(1321,"4b1b")+e(413,"cf3y")+e(1290,"WLav")+e(948,"RAI2")+e(1880,"IXUY")+e(599,"5y@]"),vyqDi:e(1696,"MTVZ")+e(1256,"j(Pm"),vXrwc:function(o,c){return o===c},UbWeH:e(1515,"6!X(")+e(894,"#CM4"),rfUZR:e(1688,"eKKZ"),eVGsW:function(o,c){return o+c},moKPi:function(o,c){return o+c},VIOgu:e(869,"GXhD")+"d"},n=await this[e(716,"U(wg")+e(510,"mH&s")](),s=JSON[e(1318,"MTVZ")]({username:e(1381,"5y@]")+this[e(1632,"2k6H")],password:this[e(587,"mPFZ")],client_id:this[e(472,"%SDn")+"d"]}),i={method:r[e(1812,"UUoF")],url:this[e(420,"K&$@")]+(e(1667,"fbFQ")+e(1239,"yn!2")),headers:{"User-Agent":r[e(1481,"UUoF")],"Content-Type":r[e(2078,"@pEn")],"x-captcha-token":n,"x-client-id":this[e(1598,"#CM4")+"d"],"x-device-id":this[e(925,"K&$@")]},data:s},a=await Ae[e(712,"w8pn")](i);r[e(664,"KdbQ")](a[e(1884,"FO4*")],-1849+-3*-117+1698)&&(es[e(464,"mPFZ")](r[e(682,"SxCa")],a[e(501,"mPFZ")][e(974,"4b1b")+e(2051,"lrSf")]),es[e(1595,"UUoF")](r[e(1313,"MTVZ")],r[e(562,"4b1b")](r[e(823,"6cH]")](a[e(2009,"yn!2")][e(1179,"ky6h")]," "),a[e(863,"@pEn")][e(1512,"X7W[")+"en"])),es[e(1046,"W7VB")](r[e(556,"c0A9")],a[e(1265,"o]EO")][e(1669,"RAI2")]))}async[Te(1749,"kM4s")+Te(1261,"@pEn")](){let e=Te,r={ycril:function(n,s){return n===s},DGrCX:function(n,s){return n===s},MYWjj:e(1793,"WLav")+e(1292,"GXhD")+e(1489,"lbro")+e(1301,"4b1b")+e(1574,"lsgr"),TJdyU:e(850,"X7W[")+e(1369,"!DZ@"),rByPD:e(1675,"fbFQ"),rRXkv:e(1359,"W7VB")+e(1526,"2k6H")+e(614,"6cH]")+e(1299,"Ab)Y")+e(1713,"lbro")+e(961,"o]EO")+e(831,"o]EO")+e(862,"HZbC")+e(1624,"jrYj")+e(1803,"j(Pm")+e(1740,"p1lY")+e(1546,"j(Pm")+e(545,"lbro")+e(1958,"c0A9")+e(953,"P6I4"),XVkcH:e(860,"RAI2")+e(1622,"W7VB"),pJMzg:function(n,s){return n(s)},WfgHD:e(269,"lsgr"),kNYRt:e(1153,"mPFZ")+e(1011,"KdbQ"),oFEVz:e(1524,"jrYj"),zOrbF:function(n,s){return n+s},EYhfy:e(341,"kM4s")+e(1387,"lbro"),kJwGy:function(n,s){return n>s},shRXK:function(n,s){return n/s},iXkwA:e(1881,"WFzA")+e(1909,"j(Pm"),QvWKo:e(1848,"Tl!3")+"\u767B\u5F55"};if(r[e(1185,"!DZ@")](this[e(1282,"K!]D")],void 0)||r[e(1683,"p1lY")](this[e(986,"K&$@")],"")){if(this[e(286,"jrYj")+e(1610,"KdbQ")]){let n=JSON[e(2089,"p1lY")]({client_id:this[e(1677,"lbro")+"d"],client_secret:r[e(971,"FO4*")],grant_type:r[e(640,"]tXZ")],refresh_token:this[e(1326,"RAI2")+e(1915,"6cH]")]}),s={method:r[e(760,"yn!2")],url:this[e(1048,"Tl!3")]+(e(1445,"X7W[")+e(265,"5y@]")),headers:{"User-Agent":r[e(1246,"!DZ@")],"Content-Type":r[e(353,"jrYj")],"x-client-id":this[e(1392,"eKKZ")+"d"],"x-device-id":this[e(1412,"6!X(")]},data:n},i=await r[e(1651,"FO4*")](Ae,s)[e(793,"MTVZ")](a=>a[e(685,"fbFQ")]);if(r[e(632,"K&$@")](i?.[e(798,"Ab)Y")],1*5262+2*-1081+-290*10)){console[e(800,"%SDn")](r[e(539,"KC!H")]),es[e(304,"lsgr")](r[e(1898,"a&Z$")],i[e(1790,"cf3y")][e(850,"X7W[")+e(1989,"6!X(")]),es[e(2095,"w8pn")](r[e(744,"P6I4")],r[e(1291,"5y@]")](r[e(476,"6cH]")](i[e(838,"Ab)Y")][e(1493,"cf3y")]," "),i[e(1250,"Tl!3")][e(1542,"2k6H")+"en"]));return}}if(await this[e(1685,"K!]D")](),!this[e(1699,"j(Pm")])throw new Error(r[e(899,"P6I4")])}else try{let n=JSON[e(1759,"fbFQ")](Cl.default[e(573,"%SDn")][e(1576,"UUoF")][e(277,"P6I4")](this[e(1805,"mPFZ")][e(1634,"DiMt")](".")[1])[e(387,"@pEn")](Cl.default[e(1845,"#CM4")][e(607,"p1lY")]));r[e(976,"!DZ@")](n[e(1030,"KdbQ")],Math[e(604,"%SDn")](r[e(1954,"KdbQ")](Date[e(602,"U(wg")](),-4765+11*547+9*-28)))?console[e(1943,"HZbC")](r[e(1315,"lbro")]):(console[e(1180,"jrYj")](r[e(2076,"WLav")]),es[e(1692,"cf3y")](r[e(1933,"Tl!3")],""),await this[e(1955,"WLav")+e(1196,"lsgr")]())}catch{es[e(998,"KdbQ")](r[e(1407,"WFzA")],""),await this[e(1484,"fbFQ")+e(1496,"P6I4")]()}}async[Te(411,"5y@]")+Te(410,"K&$@")](e,r,n){let s=Te,i={GGQpV:s(579,"GXhD")+s(1637,"KdbQ"),ydelK:s(1241,"6cH]"),koIny:s(1700,"6!X(")+s(2038,"DiMt")+s(2034,"#CM4")+s(1117,"lsgr")+s(301,"#CM4")+s(916,"W7VB")+s(1602,"a&Z$")+s(1091,"W7VB")+s(989,"Ab)Y")+s(1255,"!DZ@")+s(1205,"c0A9")+s(1994,"#Hok")+s(1795,"K&$@")+s(1834,"mH&s")+s(1704,"SxCa")+s(309,"GXhD")+s(1919,"W7VB")+s(1859,"eKKZ")+s(686,"KdbQ")+s(680,"MTVZ")+s(1967,"lrSf")+s(667,"#CM4")+s(1998,"fbFQ"),thMbx:s(1904,"w8pn"),IsjIQ:s(431,"mPFZ"),VujEJ:s(813,"@pEn")+s(1197,"ky6h"),mzROv:s(1529,"4b1b")+s(1569,"lbro"),utbtm:function(a,o){return a===o},hXIQl:s(1060,"SxCa")+"4",GdGNR:s(818,"WLav")+s(601,"Tl!3"),Zkiue:function(a,o){return a===o},qwZRs:s(1138,"Tl!3")+s(1171,"4b1b"),HaNGV:s(1529,"4b1b")+s(1858,"W7VB")+s(1702,"!DZ@"),RWemc:function(a,o){return a!==o}};try{await this[s(314,"p1lY")](),await this[s(695,"P6I4")+s(1709,"WFzA")](),await this[s(261,"%SDn")](),await this[s(1999,"!DZ@")](e,r,n);let a=await this[s(1754,"lbro")+"Id"]();if(!a)throw new Error(i[s(958,"Tl!3")]);let o=await this[s(1078,"RAI2")+s(2103,"GXhD")+s(650,"Tl!3")](),c={method:i[s(1214,"o]EO")],url:this[s(1177,"ky6h")]+(s(1844,"WFzA")+s(1421,"c0A9"))+a+(s(1083,"lbro")+s(1461,"lrSf")+s(1127,"WLav")+s(1742,"j(Pm")+s(747,"w8pn")),headers:{"User-Agent":i[s(1586,"lbro")],Connection:i[s(1712,"2k6H")],Accept:i[s(1916,"#CM4")],"Accept-Encoding":i[s(509,"SxCa")],"x-captcha-token":o,authorization:this[s(1282,"K!]D")],"content-type":i[s(1538,"5y@]")],"x-device-id":this[s(1802,"#CM4")]}},u;try{u=await Ae[s(379,"K&$@")](c)}catch(l){if(i[s(648,"lsgr")](l?.[s(1500,"jrYj")]?.[s(1366,"!DZ@")],7165*1+-3*1045+-3626)){let d=i[s(1367,"j(Pm")][s(489,"GXhD")]("|"),f=0;for(;;){switch(d[f++]){case"0":c[s(657,"UUoF")]=this[s(1861,"a&Z$")]+(s(875,"#Hok")+s(2018,"P6I4"))+a+(s(1921,"K!]D")+s(1374,"GXhD")+s(502,"j(Pm")+s(583,"X7W[")+s(1165,"j(Pm"));continue;case"1":await this[s(923,"ky6h")](-124*-61+-7566+2*601);continue;case"2":console[s(1230,"yn!2")](i[s(1684,"mPFZ")]);continue;case"3":if(!a)throw l;continue;case"4":u=await Ae[s(546,"lbro")](c);continue;case"5":a=await this[s(1100,"]tXZ")+"Id"](3,2909*-2+-5674+2*6346);continue}break}}else throw l}if(i[s(1270,"a&Z$")](u[s(276,"%SDn")],-6007*1+-685*9+12372)){let l=u[s(1311,"ky6h")][i[s(1914,"jrYj")]]||u[s(1187,"6!X(")][s(1720,"o]EO")][i[s(959,"eKKZ")]][s(888,"K!]D")],d=new URL(l)[s(354,"Ab)Y")];return i[s(1847,"U(wg")](this[s(1775,"X7W[")],"")&&(l=l[s(1433,"a&Z$")](d,this[s(1771,"%SDn")])),l}}catch(a){return console[s(768,"mPFZ")](a),""}}},Vh=new oV;async function X6e(t,e){let r=Te,n={LFAAQ:function(c,u){return c(u)},MwZUU:function(c,u){return c===u},TjYHA:r(717,"X7W["),uxbsp:function(c,u,l){return c(u,l)},KrcKy:function(c,u){return c(u)},SQqRS:function(c,u){return c(u)},ijYiL:r(826,"FO4*"),SzAZz:r(658,"jrYj")};await n[r(402,"c0A9")](ib,e);let s=await Vh[r(417,"DiMt")+"ta"](t);if(!s)return null;let i=await n[r(873,"j(Pm")](msr,n[r(914,"kM4s")]),a=[],o=[];return Object[r(1703,"p1lY")](s)[r(1248,"WLav")](c=>{let u=r,l=Array[u(1204,"KC!H")](s[c])?s[c]:[],d=l[u(1593,"X7W[")](p=>{let m=u;return{vod_id:[p[m(638,"fbFQ")],p[m(1876,"WFzA")],p[m(1365,"KdbQ")],p[m(1475,"IXUY")+m(1572,"]tXZ")],p[m(1137,"jrYj")]||""][m(437,"K&$@")]("*"),vod_name:p[m(844,"lbro")],vod_size:n[m(1925,"P6I4")](Number,p[m(1962,"Ab)Y")])||0,vod_group:n[m(1334,"UUoF")](c,n[m(1875,"IXUY")])?"":c}}),f=n[u(2099,"5y@]")](Ps,i,d);f&&f[u(851,"HZbC")]&&f[u(1168,"U(wg")]&&(a[u(443,"6cH]")](f[u(1841,"2k6H")]),o[u(861,"!DZ@")](f[u(1402,"eKKZ")]))}),a[r(1522,"@pEn")]?{from:a[r(1297,"]tXZ")](n[r(1114,"mH&s")]),url:o[r(905,"KdbQ")](n[r(1918,"WLav")])}:null}var J6e=t=>{let e=Te,r={DhqqU:function(i,a){return i(a)},RdJaH:function(i,a){return i||a}},n=r[e(1982,"#Hok")](String,r[e(374,"jrYj")](t,""))[e(1728,"!DZ@")+"e"]();if(!n)return-1*-5029+-8*62+-4533;if(n[e(1672,"#CM4")]("\u539F\u753B"))return-41*-2994+-16*-6368+-124642;if(n[e(344,"mPFZ")]("4k"))return-5406+4703*2;if(n[e(344,"mPFZ")]("2k"))return-1*9660+9*661+-1*-5711;let s=n[e(1934,"4b1b")](/(\d+)\s*p/);return s?r[e(1670,"FO4*")](Number,s[-1*6805+1857*3+-13*-95])||-17*453+-9786+17487:n[e(412,"6cH]")]("\u84DD\u5149")?11750+-10*1055:n[e(1354,"X7W[")]("\u8D85\u6E05")?-8*-752+-24*171+-416*2:n[e(1525,"kM4s")]("\u9AD8\u6E05")?-3847+-894*11+14401:n[e(412,"6cH]")]("\u6D41\u7545")?9628+-1*6706+37*-66:n[e(2097,"W7VB")]("\u6807\u6E05")?3734*-2+-5430+13438:n[e(1182,"Ab)Y")]("\u666E\u753B")?1090+1*-2639+-23*-83:n[e(1330,"lbro")]("\u6781\u901F")?1945*3+-1257*-3+-1561*6:0},hsr=t=>{let e=Te,r={FcujK:function(s,i){return s>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;hJ6e(d[-3297+5*1193+-2668])-J6e(l[-8119+2*-4343+16805*1]));let c=[];o&&c[r(1691,"ky6h")](o),a[r(1830,"]tXZ")](l=>{let d=r;n[d(969,"X7W[")](l[0],"\u539F\u753B")&&c[d(327,"p1lY")](l)});let u=c[r(422,"UUoF")]();if(!u[r(1535,"ky6h")])throw new Error(n[r(631,"%SDn")]);return{parse:0,url:u,header:i}}var n5e=require("crypto");var Asr="https://api.guangyapan.com",ysr="https://account.guangyapan.com",s5e="aMe-8VSlkrbQXpUR",i5e=200,xsr="0123456789abcdef0123456789abcdef",a5e={Accept:"application/json, text/plain, */*","Content-Type":"application/json"},bsr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],pB,cV={},P0={set(t,e){cV[t]=e,pB&&pB.push(`/guangyapan/${t}`,e)},get(t){return cV[t]}},Esr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,cI=async t=>{pB=t.server.db,cV=await pB.getObjectDefault("/guangyapan",{})};function _sr(t){let e=/https?:\/\/(?:www\.)?guangyapan\.com\/s\/([^/#?]+)/i.exec(String(t||"").trim());return e?.[1]?{shareId:e[1]}:null}function o5e(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{msg:t}}return t}function uI(t,e=""){return[t?.msg,t?.message,t?.error_description,t?.error,e].map(n=>String(n||"").trim()).filter(Boolean)[0]||"unknown error"}function Ssr(t){let e=String(t||"").toLowerCase();return bsr.some(r=>e.endsWith(r))}function vsr(t,e){return t?`${t}/${e}`:e}function Isr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}function c5e(){let t=Isr(P0.get("device_id"));if(t)return t;try{t=(0,n5e.randomBytes)(16).toString("hex")}catch{t=xsr}return P0.set("device_id",t),t}function Csr(t=""){let e={...a5e,Did:c5e(),Dt:"4"},r=String(t||"").trim();return r&&(e.Authorization=`Bearer ${r}`),e}function Tsr(){let t=c5e();return{...a5e,"X-Client-Id":s5e,"X-Client-Version":"0.0.1","X-Device-Id":t,"X-Device-Model":"chrome%2F147.0.0.0","X-Device-Name":"PC-Chrome","X-Device-Sign":`wdi10.${t}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,"X-Net-Work-Type":"NONE","X-OS-Version":"Win32","X-Platform-Version":"1","X-Protocol-Version":"301","X-Provider-Name":"NONE","X-SDK-Version":"9.0.2"}}async function oI(t,e,r=""){let n=await he.request({url:`${Asr}${t}`,method:"POST",headers:Csr(r),data:e,validateStatus:()=>!0});return{status:Number(n?.status||0),data:o5e(n?.data)}}async function wsr(){let t=String(P0.get("refresh_token")||"").trim();if(!t)return"";let e=await he.request({url:`${ysr}/v1/auth/token`,method:"POST",headers:Tsr(),data:{client_id:s5e,grant_type:"refresh_token",refresh_token:t},validateStatus:()=>!0}),r=o5e(e?.data),n=String(r?.access_token||"").trim();if(!n)throw new Error(`\u5237\u65B0\u5149\u9E2D access_token \u5931\u8D25: ${uI(r,`status=${e?.status||0}`)}`);P0.set("access_token",n);let s=String(r?.refresh_token||"").trim();return s&&P0.set("refresh_token",s),n}async function uV(t=!1){let e=t?"":String(P0.get("access_token")||"").trim();return e||await wsr()}async function u5e(t){let{status:e,data:r}=await oI("/nd.bizuserres.s/v1/get_share_access_token",{shareId:t}),n=String(r?.data?.accessToken||"").trim();if(!n)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB accessToken \u5931\u8D25: ${uI(r,`status=${e}`)}`);return n}async function Rsr(t,e="",r=0){let n={pageSize:i5e,accessToken:t,parentId:e,orderBy:0,sortType:0};r>0&&(n.cursor=r);let{status:s,data:i}=await oI("/nd.bizuserres.s/v1/get_share_page_files_list",n);if(s<200||s>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB\u76EE\u5F55\u5931\u8D25: ${uI(i,`status=${s}`)}`);return i?.data||{list:[]}}async function Nsr(t){let e=await u5e(t),r=[{parentId:"",folderPath:""}],n=[];for(;r.length>0;){let{parentId:s,folderPath:i}=r.shift(),a=0,o=!0;for(;o;){let c=await Rsr(e,s,a);(Array.isArray(c?.list)?c.list:[]).forEach(d=>{let f=String(d?.fileId||"").trim(),p=String(d?.fileName||"").trim();if(!(!f||!p)){if(Number(d?.resType||0)===2){r.push({parentId:f,folderPath:vsr(i,p)});return}Ssr(p)&&n.push({vod_id:`${t}*${f}`,vod_name:p,vod_size:Number(d?.fileSize||d?.size||0),vod_group:i})}}),o=!!c?.hasMore;let l=Number(c?.cursor||0);if(!o||l<=a)break;a=l}}return n}async function lV(t,e,r=""){let{status:n,data:s}=await oI("/nd.bizuserres.s/v1/get_share_download_url",{fileId:t,accessToken:e},r);return{status:n,code:Number(s?.code||0),msg:uI(s,`status=${n}`),url:String(s?.data?.downloadUrl||"").trim()}}function e5e(t,e){return{status:t,code:Number(e?.code||0),msg:uI(e,`status=${t}`),data:e?.data||{}}}function t5e(t,e){return{status:500,code:0,msg:String(t?.message||t||e||"\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38"),data:{}}}function l5e(t){let e=String(t?.msg||"").toLowerCase();return t?.status===401||t?.status===403||t?.code===401||t?.code===403||e.includes("token expired")||e.includes("unauthorized")}async function r5e(t=!1){let e=await uV(t);if(!e)throw new Error("\u5149\u9E2D\u767B\u5F55\u6001\u7F3A\u5931");return e}async function d5e(t,e){let r="";try{r=await r5e(!1)}catch(i){return t5e(i,"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}let n=await oI(t,e,r),s=e5e(n.status,n.data);if(!l5e(s))return s;try{r=await r5e(!0),n=await oI(t,e,r),s=e5e(n.status,n.data)}catch(i){return t5e(i,"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}return s}async function Osr(t,e){let r="";try{r=await uV(!1)}catch(s){return{status:500,code:0,msg:String(s?.message||s||"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}let n=await lV(t,e,r);if(!n.url&&l5e(n))try{r=await uV(!0),n=await lV(t,e,r)}catch(s){n={status:500,code:0,msg:String(s?.message||s||"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}return n}async function f5e(t,e=""){await cI(t);let r=await d5e("/nd.bizuserres.s/v1/file/get_file_list",{parentId:String(e||"").trim(),pageSize:i5e,orderBy:3,sortType:1,fileTypes:[]});if(r.status<200||r.status>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u4E2A\u4EBA\u76EE\u5F55\u5931\u8D25: ${r.msg}`);return{total:Number(r.data?.total||0),list:Array.isArray(r.data?.list)?r.data.list:[]}}async function p5e(t,e){await cI(t);let r=String(e||"").trim();if(!r)return{url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await d5e("/nd.bizuserres.s/v1/get_res_download_url",{fileId:r}),s=String(n.data?.signedURL||n.data?.downloadUrl||"").trim();return s?{url:s,msg:""}:{url:"",msg:n.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}async function m5e(t){let e=_sr(t);if(!e?.shareId)return{};let r=await Nsr(e.shareId);return Ps(await Esr("guangyapan"),r)}async function h5e(t){try{await cI(t);let[e,r]=String(t.body?.id||"").trim().split("*");if(!e||!r)return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await u5e(e),s=await lV(r,n);return s.url||(String(P0.get("access_token")||"").trim()||String(P0.get("refresh_token")||"").trim())&&(s=await Osr(r,n)),s.url?{parse:0,url:["\u539F\u753B",s.url]}:{parse:0,url:"",msg:s.code===207||String(s.msg||"").includes("\u514D\u767B\u5F55\u4E0B\u8F7D")?"\u5149\u9E2D\u4E91\u76D8\u5206\u4EAB\u672A\u5F00\u542F\u514D\u767B\u5F55\u4E0B\u8F7D\uFF0C\u8BF7\u5148\u5728\u201C\u767B\u5F55-\u5149\u9E2D\u201D\u4E2D\u586B\u5165 access_token \u6216 refresh_token":s.msg||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25"}}catch(e){return{parse:0,url:"",msg:String(e?.message||e||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25")}}}var Co=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,Tl=t=>{let e=globalThis.Pans?.find(r=>r.key===t)?.name;return String(e||t)};var Gr=l0,Psr=t=>t==null||t==="root"?"":String(t),dV=t=>{if(!t)return[];if(Array.isArray(t))return t;let e=[];return Object.keys(t).forEach(r=>{let n=t[r];if(!Array.isArray(n))return;let s=Psr(r);n.forEach(i=>{e.push({...i,vod_group:i?.vod_group??s})})}),e};async function qr(t,e){return{}}async function wr(t,e){t=Array.isArray(t)?t:[t];let r=t.map(o=>{let c=rf().find(u=>u.validator(o))?.key;return{key:c,url:o,order:globalThis.Pans.findIndex(u=>u.key===c)}}).filter(o=>o.key);r.sort((o,c)=>o.order-c.order);let n=[],s=[];(await Promise.allSettled(r.map(async({key:o,url:c})=>{if(o==="ali")return await tBe(c);if(o==="quark")return await hBe(c);if(o==="uc")return await M4e(c);if(o==="tianyi"){let u=await tf.getShareData(c);if(!u)return null;let l=await Co("tianyi");return Ps(l,dV(u))}if(o==="yidong"){let u=await WK.getShareData(c),l=await Co("yidong");return Ps(l,dV(u))}if(o==="123"){let u=await N0.getShareData(c),l=await N0.getFilesByShareUrl(u),d=await Co("123");return Ps(d,dV(l))}return o==="115"?await U6e(c,e):o==="baidu"?await V6e(c,e):o==="xunlei"?await X6e(c,e):o==="guangyapan"?await m5e(c):null}))).forEach((o,c)=>{if(o.status==="fulfilled"){let d=o.value;d&&d.from&&d.url&&(n.push(d.from),s.push(d.url));return}let u=String(r[c]?.key||"unknown"),l=String(o.reason?.message||o.reason||"unknown error");console.warn(`[Pan Detail] ${u} detail failed: ${l}`)});let a={};return n.forEach((o,c)=>{a[o]?n[c]=`${o}-${++a[o]}`:a[o]=1}),{froms:n.join("$$$"),urls:s.join("$$$")}}async function Rr(t,e){let r=t.params.site;if(r=="ali")return await g3(t,e);if(r=="quark")return await E3(t,e);if(r=="uc")return await W4e(t,e);if(r=="baidu")return await lB(t,e)}async function Nr(t,e){let r=t.body.flag;if(r.startsWith(await Co("ali")))return await A3(t,e);if(r.startsWith(await Co("quark")))return await _3(t,e);if(r.startsWith(await Co("uc")))return await $4e(t,e);if(r.startsWith(await Co("tianyi"))){let n=t.body.id.split("*");await rb(t);let s=n[2]||"video",i=n[3]||"",a=n[4]||"";if(s==="cas")try{let c=await tf.getShareTextPlayable(n[0],n[1],i,a);if(!c?.url){let u=tf.getShareTextResolveReason?tf.getShareTextResolveReason():"";throw new Error(u||"\u5929\u7FFCCAS\u89E3\u6790\u5931\u8D25")}return{parse:0,url:["\u539F\u753B",c.url],...c.header?{header:c.header}:{}}}catch(c){throw c}return{parse:0,url:["\u539F\u753B",await tf.getShareUrl(n[0],n[1])]}}else if(r.startsWith(await Co("yidong"))){let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await WK.getSharePlay(n[0],n[1],n[2]||"",n[3]||"")]}}else if(r.startsWith(await Co("123"))){await nb(t);let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await N0.getDownload(...n)],header:N0.getDownloadHeader()}}else{if(r.startsWith(await Co("115")))return await q6e(t,e);if(r.startsWith(await Co("baidu")))return await uB(t,e);if(r.startsWith(await Co("xunlei")))return await Z6e(t,e);if(r.startsWith(await Co("guangyapan")))return await h5e(t,e)}}async function y5e(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);n.init=s.json(),lI(s.json()),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),lI(s.json());let i=!1;if(n.home.class&&n.home.class.length>0){let a=n.home.class[0].type_id,o={};if(n.home.filters){let c=n.home.filters[a];if(c)for(let u of c){let l=u.init;if(l){for(let d of u.value)if(d.v==l){o[u.key]=l;break}}}}if(s=await t.server.inject().post(`${r}/category`).payload({id:a,page:1,filter:!0,filters:o}),n.category=s.json(),lI(s.json()),n.category.list.length>0){i=!0;let c=n.category.list[0].vod_id;await A5e(t,c,n)}}if(s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),!i&&n.search.list.length>0){let a=n.search.list[0].vod_id;await A5e(t,a,n)}return lI(s.json()),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}async function A5e(t,e,r){let n=t.server.prefix,s=await t.server.inject().post(`${n}/detail`).payload({id:e});if(r.detail=s.json(),lI(s.json()),r.detail.list&&r.detail.list.length>0){r.play=[];for(let i of r.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c{let e=globalThis.Pans?.find(n=>n.key===t)?.pic,r=String(e||"").trim();return r||ksr[t]||""},rf=()=>[{key:"quark",name:Tl("quark"),validator:d3,pic:wl("quark")},{key:"uc",name:Tl("uc"),validator:f3,pic:wl("uc")},{key:"ali",name:Tl("ali"),validator:l3,pic:wl("ali")},{key:"baidu",name:Tl("baidu"),validator:M3e,pic:wl("baidu")},{key:"xunlei",name:Tl("xunlei"),validator:W3e,pic:wl("xunlei")},{key:"tianyi",name:Tl("tianyi"),validator:k3e,pic:wl("tianyi")},{key:"yidong",name:Tl("yidong"),validator:D3e,pic:wl("yidong")},{key:"123",name:Tl("123"),validator:B3e,pic:wl("123")},{key:"115",name:Tl("115"),validator:L3e,pic:wl("115")},{key:"guangyapan",name:Tl("guangyapan"),validator:$3e,pic:wl("guangyapan")}];var Dsr=["https://tv.yydsys.cc","https://tv.yydsys.top","https://tv.214521.xyz","https://yydsys.de5.net"],fV=async t=>(await t.db.getObjectDefault("/duoduo",{}))?.urls||t.config.duoduo?.urls||Dsr,Bsr=async(t,e)=>{await t.db.push("/duoduo/urls",e)},Lsr=async t=>{await t.db.delete("/duoduo/urls")};async function pV(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await fV(e.server)})}),t.put("/urls",async(e,r)=>{await Bsr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Lsr(e.server),r.send({code:0})})}var mV,mB=t=>{if(!mV){let e=Date.now();mV=new Promise(async r=>{let n=await fV(t),s=await Xn(n,{"User-Agent":Gr});console.log("\u591A\u591A\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return mV};function Msr(t){if(typeof t!="string"||t.length===0)return t;let r=t.indexOf('"0?a:t}catch{return t}}async function hV(t){let e=await he.get(t,{headers:{"User-Agent":Gr}});return Msr(e.data)}function gV(t){return String(t||"").replace(/\/$/,"")}function Wsr(t,e){let r=e;return t("#page a").each((n,s)=>{let i=t(s).attr("href"),a=i&&i.match(/\/page\/(\d+)\.html/i);if(!a)return;let o=parseInt(a[1],10);Number.isNaN(o)||(r=Math.max(r,o))}),r}async function $sr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"20",type_name:"\u7EAA\u5F55"}],filters:{}}}async function Fsr(t,e){let r=await mB(t.server),n=t.body.id,s=t.body.page,i=parseInt(s,10);(!i||i<1)&&(i=1);let o=`${gV(r)}/index.php/vod/show/id/${n}/page/${i}.html`,c=await hV(o),u=Me(c),l=u("#main .module-item").map((f,p)=>{let m=u(p).find(".module-item-pic a").attr("href"),h=u(p).find(".module-item-pic img").attr("alt"),A=u(p).find(".module-item-pic img").attr("data-src")||u(p).find(".module-item-pic img").attr("src"),g=u(p).find(".module-item-text").text().trim();return{vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g}}).get().filter(f=>f.vod_id&&f.vod_name),d=Wsr(u,i);return{page:i,pagecount:d,limit:72,total:72*d,list:l}}async function Usr(t,e){let r=await mB(t.server),n=gV(r),s=Array.isArray(t.body.id)?t.body.id:[t.body.id],i=[];for(let a of s)try{let o=await hV(`${n}${a}`),c=Me(o),u={vod_id:a,vod_name:c(".page-title").first().text().trim(),vod_pic:c(".mobile-play .lazyload").first().attr("data-src")||c(".mobile-play img").first().attr("data-src")||c(".mobile-play img").first().attr("src"),vod_remarks:c('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""};c(".video-info-itemtitle").each((f,p)=>{let m=c(p).text(),h=c(p).next().find("a").map((A,g)=>c(g).text().trim()).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?u.vod_content=c(p).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?u.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(u.vod_actor=h.trim())});let l=c(".module-row-info p").map((f,p)=>c(p).text().trim()).get().filter(Boolean),d=await wr(l,t);d&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls),i.push(u)}catch(o){console.error("duoduo detail fetch failed",a,o)}return{list:i}}async function qsr(t,e){let r=await mB(t.server),n=gV(r),s=t.body.page,i=t.body.wd,a=parseInt(s,10);(!a||a<1)&&(a=1);let o=encodeURIComponent(i||""),c=[`${n}/index.php/vod/search/page/${a}/wd/${o}.html`,`${n}/index.php/vod/search/wd/${o}.html`,`${n}/index.php/vod/search.html?wd=${o}&page=${a}`];for(let u of c)try{let l=await hV(u),d=Me(l),f=d(".module-search-item").map((p,m)=>{let h=d(m).find(".video-serial"),A=d(m).find(".module-item-pic > img");return{vod_id:h.attr("href"),vod_name:h.attr("title"),vod_pic:A.attr("data-src")||A.attr("src"),vod_remarks:h.text()}}).get().filter(p=>p.vod_id&&p.vod_name);if(f.length>0)return{page:a,pagecount:f.length<10?a:a+1,list:f}}catch{}return{page:a,pagecount:a,list:[]}}var x5e={meta:{key:"duoduo",name:"\u300C\u76D8\u300D\u591A\u591A",type:3},api:async t=>{t.post("/init",qr),t.post("/home",$sr),t.post("/category",Fsr),t.post("/detail",Usr),t.post("/play",Nr),t.post("/search",qsr),t.get("/test",y5e),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:mB};var yw=Re(Jn(),1),kit=Re(S0(),1);var Iit=Re(require("http"),1);var gw=Re(require("fs"),1),nae=Re(require("path"),1);var b5e=Re(require("os"),1),jsr=t=>{if(!t)return!1;let e=typeof t.family=="string"?t.family:String(t.family||"");return e==="IPv4"||e==="4"},Hsr=t=>{let e=String(t||"").trim();return/^\d{1,3}(\.\d{1,3}){3}$/.test(e)?e.split(".").every(r=>{let n=Number(r);return Number.isInteger(n)&&n>=0&&n<=255}):!1},Qsr=t=>/^192\.168\./.test(t)||/^10\./.test(t)||/^172\.(1[6-9]|2\d|3[0-1])\./.test(t),AV=t=>/^100\.(6[4-9]|[7-9]\d|1[01]\d|12[0-7])\./.test(t),Gsr=t=>{let e=String(t||"").trim();return/^0\./.test(e)||/^127\./.test(e)||/^169\.254\./.test(e)||/^192\.0\.0\./.test(e)||/^192\.0\.2\./.test(e)||/^198\.18\./.test(e)||/^198\.19\./.test(e)||/^198\.51\.100\./.test(e)||/^203\.0\.113\./.test(e)||/^22[4-9]\./.test(e)||/^23\d\./.test(e)||/^24\d\./.test(e)||/^25[0-5]\./.test(e)},yV=(t="")=>/(rmnet|ccmni|pdp|wwan|cell|mobile|clat|v4-rmnet)/i.test(String(t||"")),Ksr=(t="")=>/(wlan|wi-?fi|eth|en\d|lan|bridge)/i.test(String(t||"")),xV=(t="")=>/(virtual|veth|vethernet|vmware|vbox|hyper-v|docker|podman|br-|wsl|utun|tun|tap|tailscale|zerotier|wireguard|wg|clash|mihomo|loopback|pseudo)/i.test(String(t||"")),Vsr=t=>{let e=0;return/^192\.168\./.test(t.ip)?e+=300:/^172\.(1[6-9]|2\d|3[0-1])\./.test(t.ip)?e+=260:/^10\./.test(t.ip)?e+=220:AV(t.ip)||(e+=180),Ksr(t.name)&&(e+=80),yV(t.name)&&(e-=320),xV(t.name)&&(e-=260),AV(t.ip)&&(e-=220),e},k0=function(){let t=String(process.env.CATPAW_HOST_IP||process.env.HOST_IP||"").trim();if(Hsr(t))return t;let e=b5e.default.networkInterfaces()||{},r=[];Object.entries(e).forEach(([a,o])=>{Array.isArray(o)&&o.forEach(c=>{if(!jsr(c)||c.internal)return;let u=String(c.address||"").trim();!u||u.startsWith("169.254.")||Gsr(u)||r.push({ip:u,name:String(a||"")})})});let n=r.map(a=>({...a,score:Vsr(a)})).sort((a,o)=>o.score-a.score),s=n.find(a=>{let o=yV(a.name),c=xV(a.name);return!o&&!c&&!AV(a.ip)});if(s)return s.ip;let i=n.find(a=>Qsr(a.ip)&&!yV(a.name)&&!xV(a.name));return i?i.ip:"127.0.0.1"};Ot();ir();_t();kB();$n();Ot();_t();ir();so();function Pir(t,e,r=!1){if(e===0&&!r)return t.map(i=>({...i,t:i.t!==void 0?i.t:parseFloat(i.p.split(",")[0])}));let n=t.reduce((i,a)=>{let o=a.t!==void 0?a.t:parseFloat(a.p.split(",")[0]),c=e===0?o.toFixed(2):Math.floor(o/(e*60));return i[c]||(i[c]=[]),i[c].push({...a,t:o}),i},{});return Object.keys(n).map(i=>{let o=n[i].reduce((c,u)=>{let l=u.m.split(" X")[0].trim();if(c[l]||(c[l]={count:0,earliestT:u.t,cid:u.cid,p:u.p,like:0,sources:new Set}),c[l].count+=1,c[l].earliestT=Math.min(c[l].earliestT,u.t),c[l].like+=u.like!==void 0?u.like:0,u.p){let d=u.p.match(/\[([^\]]*)\]$/);d&&d[1]&&d[1].split(/[&&]/).forEach(f=>{f.trim()&&c[l].sources.add(f.trim())})}return c},{});return Object.keys(o).map(c=>{let u=o[c],l=Math.max(1,u.sources.size),d=Math.round(u.count/l);d<1&&(d=1);let f=Array.from(u.sources).join("\uFF06"),p=u.p.replace(/\[([^\]]*)\]$/,`[${f}]`);return{cid:u.cid,p,m:d>1?`${c}\u200Ax\u200A${d}`:c,t:u.earliestT,like:u.like}})}).flat().sort((i,a)=>i.t-a.t)}function kir(t){if(!O.likeSwitch)return t;let e=new Set(["[hanjutv]","[sohu]","[bilibili1]","[migu]"]);return t.map(r=>{if(!r.like||r.like<5)return r;let n=r.p.match(/,(\[[^\]]+\])$/)?.[1]||"",a=n.includes("\u97E9\u5C0F\u5708")||n.includes("\u6781\u901F\u7248")||e.has(n)?100:1e3,o=r.like>=a?"\u{1F525}":"\uFE0F\u2661",c;r.like>=1e4?c=(r.like/1e4).toFixed(1)+"w":r.like>=1e3?c=(r.like/1e3).toFixed(1)+"k":c=r.like.toString();let u=`\u200A${o}${c}`,l=r.m+u,{like:d,...f}=r;return{...f,m:l}})}function Dir(t,e){if(e===0)return t;let r=e*1e3,n=t.length;if(n<=r)return t;let s=n/r,i=[];for(let a=0;a([^<]+)<\/d>/g)].map(f=>({p:f[1],m:f[2]}));else if(t&&Array.isArray(t.danmuku)){let f={right:1,top:4,bottom:5},p=m=>m?parseInt(m.replace("#",""),16):16777215;i=t.danmuku.map(m=>({timepoint:m[0],ct:f[m[1]]!==void 0?f[m[1]]:1,color:p(m[2]),content:m[4]}))}else Array.isArray(t)&&(i=t);if(!i.length)return[];for(let f of i){let p,m,h,A,g;if("progress"in f&&"mode"in f&&"content"in f)h=(f.progress/1e3).toFixed(2),A=f.mode||1,g=f.color||16777215,m=f.content;else if("timepoint"in f)h=parseFloat(f.timepoint).toFixed(2),A=f.ct||0,g=f.color||16777215,m=f.content;else{if(!("p"in f))continue;let y=f.p.split(",");h=parseFloat(y[0]).toFixed(2),A=y[1]||0,y.length===4?g=y[2]||16777215:y.length>=8?g=y[3]||16777215:g=y[3]||y[2]||16777215,m=f.m}let b=f._sourceLabel||e;f.realTimeSource&&!b.includes(f.realTimeSource)&&(b=`${b}\uFF06${f.realTimeSource}`),!s&&/[&&]/.test(b)&&(s=!0),p=[h,A,g,`[${b}]`].join(","),r.push({p,m,cid:n++,like:f?.like})}let a=O.blockedWords.split(/(?<=\/),(?=\/)/).map(f=>{let p=f.trim();if(p.startsWith("/")&&p.endsWith("/"))try{return new RegExp(p.slice(1,-1))}catch(m){return _("error",`[Utils] [Danmu] \u65E0\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F: ${p}`,m),null}return null}).filter(f=>f!==null);_("info",`[Utils] [Danmu] \u539F\u59CB\u5C4F\u853D\u8BCD\u5B57\u7B26\u4E32: ${O.blockedWords}`),_("info",`[Utils] [Danmu] \u5C4F\u853D\u8BCD\u5217\u8868: ${(f=>Array.isArray(f)?f.map(p=>p.toString()).join(` -`):String(f))(a)}`);let c=r.filter(f=>!a.some(p=>p.test(f.m)));_("info",`[Utils] [Danmu] \u53BB\u91CD\u5206\u949F\u6570: ${O.groupMinute}`);let u=Pir(c,O.groupMinute,s),l=kir(u),d=Dir(l,O.danmuLimit);if(O.convertTopBottomToScroll||O.convertColor==="white"||O.convertColor==="color"){let f=0,p=0;d=d.map(m=>{let h=m.p.split(",");if(h.length<3)return m;let A=parseInt(h[1],10),g=parseInt(h[2],10),b=!1;O.convertTopBottomToScroll&&(A===4||A===5)&&(f++,A=1,b=!0),O.convertColor==="white"&&g!==16777215&&(p++,g=16777215,b=!0);let y=O.colorPool.split(",").map(v=>parseInt(v.trim(),10)).filter(v=>!isNaN(v)&&v>=0&&v<=16777215),x=y[Math.floor(Math.random()*y.length)];if(O.convertColor==="color"&&g===16777215&&g!==x&&(p++,g=x,b=!0),b){let v=[h[0],A,g,...h.slice(3)].join(",");return{...m,p:v}}return m}),f>0&&_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${f} \u6761\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u4E3A\u6D6E\u52A8\u5F39\u5E55`),p>0&&_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${p} \u6761\u5F39\u5E55\u989C\u8272`)}return O.danmuSimplifiedTraditional==="traditional"&&(d=d.map(f=>({...f,m:No(f.m)})),_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${d.length} \u6761\u5F39\u5E55\u4E3A\u7E41\u4F53\u5B57`)),_("info",`[Utils] [Danmu] danmus_original: ${r.length}`),_("info",`[Utils] [Danmu] danmus_filter: ${c.length}`),_("info",`[Utils] [Danmu] danmus_group: ${u.length}`),_("info",`[Utils] [Danmu] danmus_limit: ${d.length}`),_("info","[Utils] [Danmu] Top 5 danmus:",JSON.stringify(d.slice(0,5),null,2)),d}function cz(t){return typeof t.r!="number"||t.r<0||t.r>255||typeof t.g!="number"||t.g<0||t.g>255||typeof t.b!="number"||t.b<0||t.b>255?-1:t.r*256*256+t.g*256+t.b}function hb(t){return typeof t!="string"||t.length!==6||!/^[0-9A-Fa-f]{6}$/.test(t)?16777215:parseInt(t,16)}function Bir(t){let e=` +-----END PUBLIC KEY-----`;return a.rsaUsername=`${u}${XMe(l,this.account)}`,a.rsaPassword=`${u}${XMe(l,this.password)}`,a}async loginForCloudPc(e=!1){if(!e&&this.pcLoginState?.tokenInfo?.sessionKey&&this.pcLoginState?.tokenInfo?.sessionSecret)return this.pcLoginState;if(!this.account||!this.password)throw new Error("\u7F3A\u5C11\u5929\u7FFC\u8D26\u53F7\u6216\u5BC6\u7801\uFF0C\u65E0\u6CD5\u6267\u884CCAS\u79D2\u4F20\u6062\u590D");let r=await this.initCloudPcLoginParam(),n=await R0({method:"POST",url:`${iC}/api/logbox/oauth2/needcaptcha.do`,data:Gh.default.stringify({appKey:tL,accountType:zMe,userName:r.rsaUsername}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":Ec["User-Agent"],Referer:iC+"/",REQID:r.reqId,...r.cookie?{Cookie:r.cookie}:{}},responseType:"text",transformResponse:[d=>d],validateStatus:()=>!0},"pc-needcaptcha"),s=String(n?.data||"").trim();if(n.status,Wt(s,80),s&&s!=="0")throw new Error("189PC\u767B\u5F55\u9700\u8981\u9A8C\u8BC1\u7801\uFF0C\u5F53\u524D\u6682\u4E0D\u652F\u6301\u81EA\u52A8\u5904\u7406");let i=await R0({method:"POST",url:`${iC}/api/logbox/oauth2/loginSubmit.do`,data:Gh.default.stringify({appKey:tL,accountType:zMe,userName:r.rsaUsername,password:r.rsaPassword,validateCode:"",captchaToken:r.captchaToken,returnUrl:YMe,dynamicCheck:"FALSE",clientType:KMe,cb_SaveName:"1",isOauth2:"false",state:"",paramId:r.paramId}),headers:{"Content-Type":"application/x-www-form-urlencoded","User-Agent":Ec["User-Agent"],Referer:iC+"/",REQID:r.reqId,lt:r.lt,...r.cookie?{Cookie:r.cookie}:{}},validateStatus:()=>!0},"pc-login-submit"),a=PV(r.cookie,i.headers?.["set-cookie"]),o=i?.data?.toUrl||"";if(!o)throw new Error(`189PC\u767B\u5F55\u5931\u8D25: ${i?.data?.msg||i?.status||"unknown"}`);let c=await R0({method:"POST",url:`${Qi}/getSessionForPC.action`,params:{...JMe(),redirectURL:o},headers:{"User-Agent":Ec["User-Agent"],Referer:sC,...a?{Cookie:a}:{}},validateStatus:()=>!0},"pc-get-session"),u=ynr(c?.data)||c?.data||{};if(!u?.sessionKey||!u?.sessionSecret)throw new Error(`189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25: ${fa(c?.data)||c?.status||"unknown"}`);let l=PV(a,c.headers?.["set-cookie"]);return l&&w0.set("cloud_cookie",l),this.pcLoginState={cookie:l,tokenInfo:{loginName:u.loginName||"",sessionKey:u.sessionKey,sessionSecret:u.sessionSecret,familySessionKey:u.familySessionKey||"",familySessionSecret:u.familySessionSecret||"",accessToken:u.accessToken||"",refreshToken:u.refreshToken||""}},this.pcLoginState?.tokenInfo?.sessionKey,this.pcLoginState?.tokenInfo?.sessionSecret,this.pcLoginState?.tokenInfo?.familySessionKey,this.pcLoginState?.tokenInfo?.familySessionSecret,eb(l),this.pcLoginState}getCloudPcTokenInfo(e=!1){let r=this.pcLoginState?.tokenInfo||{};return e?{loginName:r.loginName||"",sessionKey:r.familySessionKey||"",sessionSecret:r.familySessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}:{loginName:r.loginName||"",sessionKey:r.sessionKey||"",sessionSecret:r.sessionSecret||"",accessToken:r.accessToken||"",refreshToken:r.refreshToken||""}}async requestCloudPc(e,r="GET",n={}){let s=n&&typeof n=="object"?n:{},i=!!s.isFamily,a=await this.loginForCloudPc(!1),o=this.getCloudPcTokenInfo(i);if(!o.sessionKey||!o.sessionSecret){if(!s._retried)return await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0});throw new Error(i?"189PC\u5BB6\u5EAD\u4E91\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25":"189PC\u4F1A\u8BDD\u83B7\u53D6\u5931\u8D25")}let c=JMe(),u=s.query&&typeof s.query=="object"?s.query:{},l=s.form&&typeof s.form=="object"?s.form:null,d=s.encryptedParams&&typeof s.encryptedParams=="object"?gnr(s.encryptedParams,o.sessionSecret):"",f=hnr(),p=Anr(o.sessionSecret,o.sessionKey,r,e,f,d),m=await R0({method:r,url:e,params:{...c,...u,...d?{params:d}:{}},...l?{data:Gh.default.stringify(l)}:{},headers:{"User-Agent":Ec["User-Agent"],Referer:sC,Date:f,SessionKey:o.sessionKey,"X-Request-ID":N0.default.randomUUID(),Signature:p,...l?{"Content-Type":"application/x-www-form-urlencoded"}:{},...a?.cookie?{Cookie:a.cookie}:{},...s.headers||{}},responseType:s.responseType||"json",transformResponse:s.transformResponse||void 0,timeout:s.timeout||15e3,validateStatus:()=>!0},`pc-request:${r}:${new URL(e).pathname}`),h=ma(m.data);return(m.status===401||m.status===403||h.includes("InvalidSessionKey")||h.includes("userSessionBO is null"))&&!s._retried?(await this.loginForCloudPc(!0),await this.requestCloudPc(e,r,{...s,_retried:!0})):m}async getCloudPcFamilyId(e=!1){if(!e&&this.pcFamilyId)return this.pcFamilyId;let r=await this.requestCloudPc(`${Qi}/family/manage/getFamilyList.action`,"GET",{isFamily:!0}),n=_nr(r?.data);if(n.length===0)throw new Error(`\u672A\u83B7\u53D6\u5230\u53EF\u7528\u7684189\u5BB6\u5EAD\u4E91 body=${Wt(ma(r?.data),260)}`);let s=String(this.pcLoginState?.tokenInfo?.loginName||""),i=n.find(o=>s&&o.remarkName&&s.includes(o.remarkName))||n.find(o=>Number(o?.useFlag||0)===1)||n[0],a=String(i?.familyId||"");if(!a)throw new Error(`189\u5BB6\u5EAD\u4E91ID\u89E3\u6790\u5931\u8D25 body=${Wt(JSON.stringify(n),260)}`);return this.pcFamilyId=a,n.length,n.map(o=>o.remarkName||"").filter(Boolean).slice(0,3),a}async ensureCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=r?"pcFamilyRestoreFolderId":"pcRestoreFolderId";if(this[n])return this[n];let s=r?"":"-11",i=r?await this.getCloudPcFamilyId():"",a=nL,o=r?`${Qi}/family/file/listFiles.action`:`${Qi}/listFiles.action`,c=1;for(;c<=10;){let f=await this.requestCloudPc(o,"GET",{isFamily:r,query:{folderId:s,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(c),pageSize:"100",...r?{familyId:i,orderBy:"1",descending:"false"}:{recursive:"0",orderBy:"filename",descending:"false"}}}),m=(f?.data?.fileListAO?.folderList||[]).find(A=>String(A?.name||"")===a);if(m?.id)return this[n]=String(m.id),this[n];if(!Number(f?.data?.fileListAO?.count||0))break;c+=1}let u=r?`${Qi}/family/file/createFolder.action`:`${Qi}/createFolder.action`,l=await this.requestCloudPc(u,"POST",{isFamily:r,query:{folderName:a,...r?{familyId:i}:{relativePath:"",parentFolderId:s}}});if(l.status>=400||fa(l.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${fa(l.data)||l.status}`);let d=String(l?.data?.id||Er(l?.data,"id")||"");if(d)return this[n]=d,this[n];throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55")}async createCloudPcBatchTaskV2(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=n&&typeof n=="object"?n:{},{isFamily:a=!1,...o}=i,c=await this.requestCloudPc(`${Qi}/batch/createBatchTask.action`,"POST",{isFamily:a,form:{type:e,taskInfos:JSON.stringify(s),...o}}),u=String(s6e(c?.data)||""),l=fa(c?.data);if(c.status>=400||l||!u)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${l||c.status||"unknown"} body=${Wt(ma(c?.data),260)}`);return u}async permanentlyDeleteCloudPcItemsV2(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=!!r?.isFamily,i=s?String(r?.familyId||await this.getCloudPcFamilyId()):"",a=s?{familyId:i,isFamily:!0}:{},o=await this.createCloudPcBatchTaskV2("DELETE",n,a);await this.waitCloudPcBatchTask("DELETE",o);let c=await this.createCloudPcBatchTaskV2("CLEAR_RECYCLE",n,a);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",c)}async removeCloudPcRestoreFolderV2(e,r={}){if(!e)return;let s=!!r?.isFamily?"pcFamilyRestoreFolderId":"pcRestoreFolderId",i=[{fileId:String(e),fileName:nL,isFolder:1}];await this.permanentlyDeleteCloudPcItemsV2(i,r),this[s]=""}async resetCloudPcRestoreFolderV2(e={}){let r=!!e?.isFamily,n=await this.ensureCloudPcRestoreFolderV2({isFamily:r});return await this.removeCloudPcRestoreFolderV2(n,{isFamily:r}),await this.ensureCloudPcRestoreFolderV2({isFamily:r})}async restoreCasMetadataToCloudDriveV2(e,r={}){let n=!!r?.isFamily,s=String(e?.md5||"").trim().toUpperCase(),i=Number(e?.size||0),a=String(e?.name||"").trim(),o=String(e?.sliceMd5||"").trim().toUpperCase();if(!s||!i||!a)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let c=n?await this.getCloudPcFamilyId():"",u=await this.resetCloudPcRestoreFolderV2({isFamily:n}),l=ZMe(i),d=n?`${rL}/family`:`${rL}/person`,f=await this.requestCloudPc(`${d}/initMultiUpload`,"GET",{isFamily:n,encryptedParams:{parentFolderId:u,fileName:a,fileSize:String(i),fileMd5:s,sliceSize:String(l),...n&&c?{familyId:c}:{},...o?{sliceMd5:o}:{}}}),p=e6e(f?.data)||{},m=fa(f?.data);if(f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${m||f.status}`);let h=String(p?.uploadFileId||p?.uploadFileID||"");if(Number(p?.fileDataExists)!==1||!h)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let A=await this.requestCloudPc(`${d}/commitMultiUploadFile`,"GET",{isFamily:n,encryptedParams:{uploadFileId:h,isLog:"0",opertype:"3"}}),g=t6e(A?.data)||{},b=fa(A?.data);if(A.status>=400||b)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${b||A.status}`);let y=String(g?.userFileId||g?.id||""),x=String(g?.fileName||a);if(!y)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:y,fileName:x,folderId:u,familyId:c,isFamily:n}}async getCloudPcFileDownloadUrlV2(e,r={}){let n=!!r?.isFamily,s=n?String(r?.familyId||await this.getCloudPcFamilyId()):"",i=n?`${Qi}/family/file/getFileDownloadUrl.action`:`${Qi}/getFileDownloadUrl.action`,a=await this.requestCloudPc(i,"GET",{isFamily:n,query:{fileId:String(e||""),...n?{familyId:s}:{dt:"3",flag:"1"}},responseType:"text",transformResponse:[d=>d]}),o=String(r6e(a?.data)||""),c=_c(o).replace(/^http:\/\//i,"https://"),u=fa(a?.data);if(a.status>=400||u)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${u||a.status}`);if(!c)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let l=await R0({method:"GET",url:c,headers:{"User-Agent":Ec["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return l.status>=300&&l.status<400&&l.headers?.location?_c(String(l.headers.location||"")):c}async listOwnFiles(e="-11",r=1,n=100){let s=Math.max(Number(r)||1,1),i=Math.min(Math.max(Number(n)||100,1),200),a=e==null||e===""?"-11":String(e),o=await this.requestCloudPc(`${Qi}/listFiles.action`,"GET",{query:{folderId:a,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(s),pageSize:String(i),recursive:"0",orderBy:"filename",descending:"false"},responseType:"text",transformResponse:[u=>u]}),c=fa(o?.data);if(o.status>=400||c)throw new Error(`\u5929\u7FFC\u76EE\u5F55\u83B7\u53D6\u5931\u8D25: ${c||o.status}`);return bnr(o?.data)}async getOwnDownload(e){return{url:await this.getCloudPcFileDownloadUrlV2(e,{isFamily:!1}),data:{fileId:String(e||""),source:"189CloudPC"}}}async ensureCloudPcRestoreFolder(){if(this.pcRestoreFolderId)return this.pcRestoreFolderId;let e="-11",r=nL,n=1;for(;n<=10;){let u=await this.requestCloudPc(`${Qi}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:String(n),pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}),d=(u?.data?.fileListAO?.folderList||[]).find(p=>String(p?.name||"")===r);if(d?.id)return this.pcRestoreFolderId=String(d.id),this.pcRestoreFolderId;if(!Number(u?.data?.fileListAO?.count||0))break;n+=1}let s=await this.requestCloudPc(`${Qi}/createFolder.action`,"POST",{query:{folderName:r,relativePath:"",parentFolderId:e}});if(s.status,Wt(JSON.stringify(s.data||{}),220),s.status>=400||fa(s.data))throw new Error(`\u521B\u5EFACAS\u6062\u590D\u76EE\u5F55\u5931\u8D25: ${fa(s.data)||s.status}`);let i=String(s?.data?.id||Er(s?.data,"id")||"");if(i)return this.pcRestoreFolderId=i,this.pcRestoreFolderId;let c=((await this.requestCloudPc(`${Qi}/listFiles.action`,"GET",{query:{folderId:e,fileType:"0",mediaAttr:"0",iconOption:"5",pageNum:"1",pageSize:"100",recursive:"0",orderBy:"filename",descending:"false"}}))?.data?.fileListAO?.folderList||[]).find(u=>String(u?.name||"")===r);if(!c?.id)throw new Error("\u65E0\u6CD5\u5B9A\u4F4DCAS\u6062\u590D\u76EE\u5F55");return this.pcRestoreFolderId=String(c.id),this.pcRestoreFolderId}async createCloudPcBatchTask(e,r,n={}){let s=Array.isArray(r)?r.filter(Boolean):[];if(s.length===0)return"";let i=await this.requestCloudPc(`${Qi}/batch/createBatchTask.action`,"POST",{form:{type:e,taskInfos:JSON.stringify(s),...n||{}}}),a=String(s6e(i?.data)||""),o=fa(i?.data);if(i.status>=400||o||!a)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u521B\u5EFA\u5931\u8D25: ${o||i.status||"unknown"} body=${Wt(ma(i?.data),260)}`);return a}async permanentlyDeleteCloudPcItems(e,r={}){let n=Array.isArray(e)?e.filter(Boolean):[];if(n.length===0)return;let s=await this.createCloudPcBatchTask("DELETE",n,r);await this.waitCloudPcBatchTask("DELETE",s);let i=await this.createCloudPcBatchTask("CLEAR_RECYCLE",n,r);await this.waitCloudPcBatchTask("CLEAR_RECYCLE",i)}async waitCloudPcBatchTask(e,r,n=300){let s=Date.now();for(;Date.now()-s<15e3;){let i=await this.requestCloudPc(`${Qi}/batch/checkBatchTask.action`,"POST",{form:{type:e,taskId:r}}),a=i?.data||{},o=fa(a);if(i.status>=400||o)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u72B6\u6001\u67E5\u8BE2\u5931\u8D25: ${o||i.status||"unknown"} body=${Wt(ma(a),260)}`);let c=Enr(a);if(c===4)return;if(c===2)throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u5B58\u5728\u51B2\u7A81`);await new Promise(u=>setTimeout(u,n))}throw new Error(`${e}\u6279\u91CF\u4EFB\u52A1\u7B49\u5F85\u8D85\u65F6`)}async removeCloudPcRestoreFolder(e){if(!e)return;let r=[{fileId:String(e),fileName:nL,isFolder:1}];await this.permanentlyDeleteCloudPcItems(r),this.pcRestoreFolderId=""}async resetCloudPcRestoreFolder(){let e=await this.ensureCloudPcRestoreFolder();await this.removeCloudPcRestoreFolder(e);for(let r=0;r<3;r+=1)try{return await this.ensureCloudPcRestoreFolder()}catch(n){if(r>=2)throw n;await new Promise(s=>setTimeout(s,300*(r+1)))}}async restoreCasMetadataToCloudDrive(e){let r=String(e?.md5||"").trim().toUpperCase(),n=Number(e?.size||0),s=String(e?.name||"").trim(),i=String(e?.sliceMd5||"").trim().toUpperCase();if(!r||!n||!s)throw new Error("CAS\u5143\u6570\u636E\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u65E0\u6CD5\u6267\u884C\u79D2\u4F20\u6062\u590D");let a=await this.resetCloudPcRestoreFolder(),o=ZMe(n);e?.create_time;let c=await this.requestCloudPc(`${rL}/person/initMultiUpload`,"GET",{encryptedParams:{parentFolderId:a,fileName:s,fileSize:String(n),fileMd5:r,sliceSize:String(o),...i?{sliceMd5:i}:{}}}),u=e6e(c?.data)||{},l=fa(c?.data);if(c.status,u?.fileDataExists,u?.uploadFileId||u?.uploadFileID,u?.uploadHost,Wt(JSON.stringify(c?.data||{}),260),c.status>=400||l)throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u521D\u59CB\u5316\u5931\u8D25: ${l||c.status}`);let d=String(u?.uploadFileId||u?.uploadFileID||"");if(Number(u?.fileDataExists)!==1||!d)throw new Error("CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25\uFF0C189\u672A\u547D\u4E2D\u6587\u4EF6");let f=await this.requestCloudPc(`${rL}/person/commitMultiUploadFile`,"GET",{encryptedParams:{uploadFileId:d,isLog:"0",opertype:"3"}}),p=t6e(f?.data)||{},m=fa(f?.data);if(f.status,p?.userFileId||p?.id,p?.fileName,Wt(JSON.stringify(f?.data||{}),260),f.status>=400||m)throw new Error(`CAS\u79D2\u4F20\u63D0\u4EA4\u5931\u8D25: ${m||f.status}`);let h=String(p?.userFileId||p?.id||""),A=String(p?.fileName||s);if(!h)throw new Error("CAS\u79D2\u4F20\u63D0\u4EA4\u540E\u672A\u8FD4\u56DE\u6587\u4EF6ID");return{fileId:h,fileName:A,folderId:a}}async getCloudPcFileDownloadUrl(e){let r=await this.requestCloudPc(`${Qi}/getFileDownloadUrl.action`,"GET",{query:{fileId:String(e||""),dt:"3",flag:"1"},responseType:"text",transformResponse:[o=>o]}),n=String(r6e(r?.data)||""),s=_c(n).replace(/^http:\/\//i,"https://"),i=fa(r?.data);if(r.status,pa(s),Wt(s,260),r.status>=400||i)throw new Error(`\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u83B7\u53D6\u5931\u8D25: ${i||r.status}`);if(!s)throw new Error("\u6062\u590D\u6587\u4EF6\u4E0B\u8F7D\u5730\u5740\u4E3A\u7A7A");let a=await R0({method:"GET",url:s,headers:{"User-Agent":Ec["User-Agent"]},maxRedirects:0,validateStatus:()=>!0},"pc-download-redirect");return a.status>=300&&a.status<400&&a.headers?.location?_c(String(a.headers.location||"")):s}async getCasPlayableByRestoringToCloudDrive(e){let r=[],n=[{isFamily:!0,scope:"family"},{isFamily:!1,scope:"personal"}];for(let s of n)try{let i=await this.restoreCasMetadataToCloudDriveV2(e,{isFamily:s.isFamily}),a=await this.getCloudPcFileDownloadUrlV2(i.fileId,{isFamily:s.isFamily,familyId:i.familyId});return s.scope,i.fileId,i.fileName,pa(a),{url:a}}catch(i){r.push(`${s.scope}: ${i?.message||i}`)}throw new Error(`CAS\u79D2\u4F20\u6062\u590D\u5931\u8D25: ${r.join(" ; ")}`)}async getShareTextPlayable(e,r,n="",s="",i=0){if(!e||!r)return null;this.setShareTextResolveReason(""),!this.cookie&&this.account&&this.password&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F"));let a=this.getCachedShareFileItem(e,r),o=n||a?.shareMode||"",c=s||a?.accessCode||"",u=this.cookie?{Cookie:this.cookie}:{};this.cookie,eb(this.cookie),a?.name,pa(a?.downloadUrl);let l=aC(a);l.length,l.slice(0,3).map(p=>Wt(p,260));for(let p of l){let m=await this.fetchShareTextFileFromUrl(p,u),h=Zx(m),A=await this.confirmShareTextPlayableCandidate(h,u,{source:"cached",fileId:e,shareId:r,candidate:Wt(p,260)});if(A)return Wt(p,260),pa(A.url),A.header,A}let d=!1,f=this.buildShareTextApiCandidates(e,r,o,c);for(let p of f){let{playable:m,authError:h}=await this.tryResolveShareTextPlayableFromApi(p,u);if(m){let A=await this.confirmShareTextPlayableCandidate(m,u,{source:"api",fileId:e,shareId:r,api:(()=>{try{return new URL(p).pathname}catch{return p}})()});if(!A)continue;return(()=>{try{return new URL(p).pathname}catch{return p}})(),pa(A.url),A.header,A}h&&(d=!0,(()=>{try{return new URL(p).pathname}catch{return p}})(),void 0)}return d&&i<1&&this.account&&this.password?(w0.set("cloud_cookie",""),await this.login(this.account,this.password),await this.getShareTextPlayable(e,r,o,c,i+1)):(this.cookie,eb(this.cookie),this.getShareTextResolveReason(),null)}async getShareUrl(e,r){let n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Accept:"application/json;charset=UTF-8","Accept-Encoding":"gzip, deflate, br, zstd"};!this.cookie&&this.account&&this.password&&this.index<2&&(console.log("\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u7A0D\u7B49...."),await this.login(this.account,this.password),console.log("\u767B\u5F55\u6210\u529F,\u83B7\u53D6cookie\u6210\u529F")),n.Cookie=this.cookie;try{let s=await Ae.get(`${this.api}/portal/getNewVlcVideoPlayUrl.action?shareId=${r}&dt=1&fileId=${e}&type=4&key=noCache`,{headers:n}),i=await Ae.get(s.data.normal.url,{maxRedirects:0,validateStatus:function(o){return o>=200&&o<400}}),a="";return i.status>=300&&i.status<400&&i.headers.location?a=i.headers.location:a=s.data.normal.url,a}catch(s){if(s.response&&s.response.status===400&&this.index<2)return console.log("\u83B7\u53D6\u64AD\u653E\u5730\u5740\u5931\u8D25\uFF0C\u9519\u8BEF\u4FE1\u606F\u4E3A\uFF1A"+s.response.data),console.log("cookie\u5931\u6548\uFF0C\u6B63\u5728\u91CD\u65B0\u83B7\u53D6cookie"),w0.set("cloud_cookie",""),this.index+=1,await this.getShareUrl(e,r);console.error("Error during getShareUrl:",s.message,s.response?s.response.status:"N/A")}finally{this.index>=2&&(this.index=0,messageToDart({action:"toast",opt:{message:"\u5929\u7FFC\u8D26\u53F7\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}))}}},rf=new MV;var ks=Re(Jn(),1),$e=pu;(function(t,e){let r=pu,n=t();for(;;)try{if(-parseInt(r(620,"1$*q"))/1*(parseInt(r(533,"Q*]n"))/2)+parseInt(r(672,"NUA^"))/3*(-parseInt(r(442,"&L(#"))/4)+parseInt(r(580,"Z*B!"))/5*(-parseInt(r(707,"SjKy"))/6)+-parseInt(r(630,"tPoy"))/7*(-parseInt(r(269,"&7e0"))/8)+-parseInt(r(409,"5K@$"))/9*(parseInt(r(350,"3H)Z"))/10)+-parseInt(r(435,"Z*B!"))/11+parseInt(r(505,"$hvt"))/12*(parseInt(r(616,"SjKy"))/13)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(iL,470*990+-61486+-1957*19);function pu(t,e){let r=iL();return pu=function(n,s){n=n-(-9718+-824*5+1*14087);let i=r[n];if(pu.GJXIGO===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h{let e=$e,r={OiPnC:function(a,o){return a(o)}},n=r[e(510,"yuUx")](String,t[e(642,"#*4]")]||t[e(696,"&k0w")]||"")[e(498,"8DL5")]()[e(602,"^([h")](/^\./,"")[e(509,"A[3w")+"e"]();if(n)return n;let s=r[e(574,"5K@$")](String,t[e(276,"wIP%")]||t[e(601,"vbM7")]||"")[e(252,"wIP%")]()[e(323,"wIP%")+"e"](),i=s[e(635,"uUex")](/\.([a-z0-9]{1,10})$/i);return i?i[47*32+1*3538+1*-5041]:""},Dnr=t=>Pnr[$e(274,"lET8")](d6e(t)),knr=t=>{let e=$e,r={UptDJ:function(n,s){return n(s)},SRcnu:function(n,s){return n||s},czDjR:function(n,s){return n||s}};try{return r[e(338,"NCIB")](decodeURIComponent,r[e(275,"mL$T")](t,""))}catch{return r[e(397,"iBpX")](t,"")}},Lnr=t=>encodeURIComponent(String(t||""))[$e(486,"5K@$")](/\*/g,$e(416,"lHXy")),Bnr=t=>{let e=$e,r={MoWMN:function(s,i){return s(i)},MpPbj:function(s,i){return s||i},ABJQS:function(s,i){return s===i},SdKwh:e(599,"vbM7"),iGRcE:e(576,"kI1Y"),hPGUi:e(713,"&k0w")},n=r[e(711,"hTux")](String,r[e(359,"cSk2")](t,""));if(!n)return"";if(r[e(518,"nM1l")](typeof globalThis[e(446,"nM1l")],r[e(418,"&k0w")])){let s=globalThis[e(643,"kI1Y")](n),i=Uint8Array[e(307,"#*4]")](s,a=>a[e(688,"&7e0")](1264*-2+8216*-1+79*136));return new TextDecoder()[e(266,"iBpX")](i)}return globalThis[e(379,"]oQm")]?globalThis[e(270,"!dbI")][e(320,"hTux")](n,r[e(278,"KdvK")])[e(539,"lHXy")](r[e(502,"1$*q")]):""},WV=class{constructor(){let e=$e,r={ptlsM:e(647,"YzKM")+"4",WlSfi:e(365,"NCIB")+e(677,"1$*q")+e(293,"rTn$")+e(290,"A[3w")+e(621,"A[3w")+e(535,"s1R8")+e(291,"!ahM")+"/",jCmBR:e(632,"*I%q")+e(548,"^([h"),dyIRw:e(262,"uUex")+e(354,"B49t")+e(357,"&k0w")+e(622,"yuUx")+e(568,"NUA^")+e(459,"#*4]")+e(649,"kI1Y")+e(362,"&k0w")+e(684,"XXV0")+e(455,"(O@[")+e(703,"Q*]n")+"6",bipwl:e(352,"KdvK")+e(331,"#*4]")+e(583,"Z*B!")+e(644,"]sJ3"),nLoiD:e(712,"&k0w")+e(702,"wIP%"),fGDII:e(257,"3BhN")+e(445,"mL$T")+e(424,"kI1Y")+e(272,"20ct")+e(366,"H#%j")+e(709,"!dbI")+e(249,"Z*B!")+e(408,"B49t")+e(680,"!dbI")+"|"},n=r[e(471,"3H)Z")][e(561,"&k0w")]("|"),s=-6*-48+-239*29+6643;for(;;){switch(n[s++]){case"0":this[e(674,"s1R8")]=[/https:\/\/yun.139.com\/shareweb\/#\/w\/i\/([^&/?#]+)/,/https:\/\/caiyun.139.com\/m\/i\?([^&/?#]+)/,/https:\/\/caiyun.139.com\/w\/i\/([^&/?#]+)/];continue;case"1":this[e(670,"5K@$")]=r[e(294,"iBpX")];continue;case"2":this.x=ks.default[e(667,"nM1l")][e(612,"A[3w")][e(613,"SjKy")](r[e(551,"H#%j")]);continue;case"3":this[e(611,"H#%j")]={"User-Agent":r[e(698,"20ct")],Accept:r[e(662,"!dbI")],"Content-Type":r[e(381,"lHXy")],"hcy-cool-flag":"1","x-deviceinfo":r[e(590,"kI1Y")]};continue;case"4":this[e(330,"lET8")]={};continue;case"5":this[e(514,"Q*]n")]="";continue}break}}[$e(631,"yuUx")+$e(714,"#*4]")+"n"](){let e=$e,r={QyscH:function(s,i){return s(i)}},n=Onr[e(282,"]oQm")](s=>globalThis[e(273,"F3h)")]?.[e(517,"vFQ3")]?.[s])[e(411,"*I%q")](s=>String(s||"")[e(464,"IfEw")]());return r[e(607,"3BhN")](String,globalThis[e(404,"XXV0")+e(522,"iBpX")]||n||"")[e(474,"3H)Z")]()[e(402,"#*4]")](/^Basic\s+/i,"")[e(618,"mL$T")]()}[$e(558,"mL$T")+$e(681,"f2C6")+"er"](){let e=$e,r=this[e(324,"3BhN")+e(685,"F3h)")+"n"]();return r?e(300,"3H)Z")+r:""}[$e(614,"H#%j")+$e(483,"*I%q")+$e(427,"F3h)")](){let e=$e,r={wjwtp:function(s,i){return s(i)},VVdSI:e(453,"F3h)")+e(259,"*I%q")+e(279,"vbM7")},n=this[e(693,"hTux")+e(451,"uUex")+"n"]();if(!n)return"";try{return r[e(371,"]sJ3")](Bnr,n)[e(369,"8DL5")](":")[-44*-134+-2123+943*-4]||""}catch{return console[e(686,"mL$T")](r[e(341,"Q*]n")]),""}}[$e(417,"s1R8")](e={}){let r=$e,n={...this[r(673,"Z*B!")],...e},s=this[r(497,"cSk2")+r(287,"YzKM")+"er"]();return s&&(n[r(462,"20ct")+r(532,"IfEw")]=s),n}[$e(264,"(O@[")+$e(349,"20ct")](){let e=$e,r={IGrkL:e(355,"uUex")},n=this[e(545,"1$*q")+e(348,"yuUx")+"n"]();return n?ks.default[e(443,"lET8")](n)[e(694,"3H)Z")]()[e(682,"tPoy")](373*-1+5167+1*-4794,-3232*-3+-7101+-199*13):r[e(536,"qf0c")]}[$e(554,"NUA^")+$e(383,"hTux")](e){let r=$e,n={MAVQr:function(i,a){return i===a},AUpQC:r(261,"cSk2"),SSOvU:function(i,a){return i(a)},dFtoJ:function(i,a){return i||a}};if(e&&n[r(651,"$hvt")](typeof e,n[r(475,"f2C6")]))return e;let s=n[r(706,"&k0w")](String,n[r(447,"SjKy")](e,""))[r(317,"#*4]")]();if(!s)return null;try{let i=this[r(655,"Q*]n")](s);if(i)return JSON[r(325,"&k0w")](i)}catch{}try{return JSON[r(342,"yuUx")](s)}catch{return null}}async[$e(646,"hTux")+"pi"](e,r,n=1*2589+5*-2371+17266){let s=$e,i={qexYT:function(c,u){return c+u},LYDcw:function(c,u){return c!==u}},a=JSON[s(656,"F3h)")](this[s(394,"mL$T")](JSON[s(542,"Q*]n")](r))),o=await Ae[s(428,"]oQm")](i[s(265,"#*4]")](this[s(444,"s1R8")],e),a,{headers:this[s(410,"!dbI")](),timeout:n});return i[s(431,"KdvK")](o[s(334,"8DL5")],200)?null:this[s(689,"kI1Y")+s(592,"XXV0")](o[s(541,"f2C6")])}[$e(360,"20ct")+$e(333,"]sJ3")+"fo"](){let e=$e;return{account:this[e(465,"20ct")+e(374,"5K@$")+e(295,"XXV0")](),accountType:1}}[$e(492,"&7e0")+$e(640,"NCIB")+"nt"](e){let r=$e,n={QVwkN:function(s,i){return s===i},LECin:function(s,i){return s(i)}};return e?n[r(426,"Z*B!")](e[r(421,"cSk2")],3023+278*-24+3652)?!0:n[r(392,"nM1l")](e[r(387,"qf0c")],-578*15+-4310+12980)&&n[r(499,"3H)Z")](Dnr,e):!1}[$e(433,"(O@[")](e){let r=$e,n={uvcIG:function(a,o){return a==o},WStHG:r(506,"$hvt"),SLESc:function(a,o){return a===o},jZeFu:r(487,"tPoy"),NAUrk:function(a,o){return a!==o}},s=ks.default[r(490,"XXV0")][r(629,"&L(#")][r(495,"lHXy")](1286*-2+-1001+3589),i="";if(n[r(347,"kI1Y")](n[r(385,"kI1Y")],typeof e)){let a=ks.default[r(550,"rTn$")][r(543,"H#%j")][r(679,"YzKM")](e);i=ks.default[r(653,"B49t")][r(253,"cSk2")](a,this.x,{iv:s,mode:ks.default[r(572,"1$*q")][r(480,"SjKy")],padding:ks.default[r(312,"cSk2")][r(546,"NUA^")]})}else if(n[r(460,"uUex")](typeof e,n[r(284,"B49t")])&&n[r(461,"cSk2")](e,null)){let a=JSON[r(437,"SjKy")](e),o=ks.default[r(531,"d$GU")][r(458,"*I%q")][r(328,"s1R8")](a);i=ks.default[r(500,"(O@[")][r(299,"!ahM")](o,this.x,{iv:s,mode:ks.default[r(589,"#*4]")][r(322,"^([h")],padding:ks.default[r(395,"20ct")][r(700,"lET8")]})}return ks.default[r(667,"nM1l")][r(559,"kI1Y")][r(658,"(O@[")](s[r(718,"20ct")](i[r(391,"$hvt")]))}[$e(627,"d$GU")](e){let r=$e,n=ks.default[r(378,"KdvK")][r(286,"1$*q")][r(344,"IfEw")](e),s=n[r(695,"1$*q")](),i=s[r(507,"mL$T")][r(645,"f2C6")](1*-2267+-8154+2085*5);s[r(388,"qf0c")](s[r(301,"F3h)")]),n[r(587,"&L(#")](i);let a=ks.default[r(669,"20ct")][r(267,"F3h)")][r(494,"&L(#")](n);return ks.default[r(600,"]sJ3")][r(370,"3H)Z")](a,this.x,{iv:s,mode:ks.default[r(466,"NCIB")][r(329,"kI1Y")],padding:ks.default[r(595,"yuUx")][r(292,"iBpX")]})[r(513,"IfEw")](ks.default[r(557,"#*4]")][r(479,"vbM7")])[r(503,"lET8")]()}async[$e(512,"qf0c")](e){let r=$e;this[r(639,"5K@$")][r(609,"vbM7")](n=>{let s=r,i=n[s(598,"20ct")](e);i&&i[362*-7+8522+-5987]&&(this[s(553,"uUex")]=i[1])})}async[$e(441,"vbM7")+"fo"](e){let r=$e,n={FeybT:r(289,"3BhN")+r(477,"!ahM")+r(281,"3H)Z")+r(577,"nM1l")+r(671,"XXV0"),YoiBc:r(549,"wIP%")+r(540,"KdvK"),ftJtN:r(463,"NCIB")+r(623,"]sJ3")+r(584,"B49t")};if(!this[r(528,"(O@[")])return console[r(593,"mL$T")](n[r(314,"3BhN")]),null;let s=this[r(634,"mL$T")+r(562,"IfEw")]()+"-"+this[r(648,"A[3w")]+"-"+e;if(this[r(641,"nM1l")][s])return this[r(346,"vbM7")][s];let i=this[r(373,"*I%q")+r(263,"]oQm")+"fo"](),a={getOutLinkInfoReq:{account:i[r(663,"Z*B!")],linkID:this[r(530,"&7e0")],passwd:"",caSrt:0,coSrt:0,srtDr:1,bNum:1,pCaID:e,eNum:200},commonAccountInfo:i};try{let o=(await this[r(319,"1$*q")+"pi"](n[r(715,"kI1Y")],a))?.[r(377,"(O@[")];return this[r(582,"H#%j")][s]=o,o}catch(o){return console[r(326,"F3h)")](n[r(468,"8DL5")],o),null}}async[$e(485,"uUex")+"ta"](e){let r=$e,n={DGHIp:function(c,u){return c in u},ewGUF:function(c,u){return c>u},FfOfh:function(c,u){return c(u)},qNAwx:r(555,"&7e0"),iQvUm:r(566,"$hvt"),sReYy:function(c,u){return c===u}};if(!e)return{};let s=e[r(304,"3BhN")](n[r(454,"XXV0")]),i=s?n[r(448,"]sJ3")]:e;s&&await this[r(650,"20ct")](e);let a={},o=await this[r(652,"H#%j")+"le"](i);o&&Array[r(254,"XXV0")](o)&&await Promise[r(396,"]oQm")](o[r(340,"YzKM")](async c=>{let u=r,l=c[u(488,"vFQ3")]||c[u(384,"F3h)")];!n[u(308,"3H)Z")](l,a)&&(a[l]=[]);let d=await this[u(368,"Q*]n")+"l"](c[u(501,"A[3w")]);d&&n[u(260,"H#%j")](d[u(399,"f2C6")],-15182+-7591*-2)&&a[l][u(704,"KdvK")](...d)}));for(let c in a)(!Array[r(380,"Z*B!")](a[c])||n[r(336,"vFQ3")](a[c][r(482,"YzKM")],6842+-69*129+29*71))&&delete a[c];if(n[r(567,"KdvK")](Object[r(519,"^([h")](a)[r(399,"f2C6")],1*5314+-4*1117+-94*9)){let c=await this[r(423,"Z*B!")+"l"](n[r(573,"wIP%")]);c&&Array[r(556,"F3h)")](c)&&n[r(260,"H#%j")](c[r(412,"H#%j")],-5935+-34*98+9267*1)?a[n[r(255,"5K@$")]]=c:(a[n[r(544,"uUex")]]=await this[r(524,"A[3w")+"le"](e),a[n[r(364,"NCIB")]]&&Array[r(699,"SjKy")](a[n[r(520,"KdvK")]])&&(a[n[r(624,"mL$T")]]=a[n[r(606,"F3h)")]][r(708,"SjKy")](u=>u&&Object[r(413,"hTux")](u)[r(337,"NCIB")]>7110*-1+-47*-169+-833)))}return Object[r(664,"IfEw")](a)[r(403,"KdvK")](c=>{let u=r,l={kPRcT:function(f,p){return n[pu(491,"lHXy")](f,p)}},d=Array[u(637,"$hvt")](a[c])?a[c]:[];a[c]=d[u(516,"IfEw")](f=>f&&f[u(356,"A[3w")]&&f[u(277,"#*4]")])[u(298,"^([h")](f=>{let p=u;return{vod_name:f[p(401,"*I%q")],vod_id:[f[p(283,"iBpX")],f[p(436,"NUA^")],l[p(660,"NCIB")](Lnr,f[p(306,"f2C6")]),f[p(407,"B49t")]??""][p(603,"&7e0")]("*"),vod_size:f[p(665,"H#%j")]}}),!a[c][u(358,"d$GU")]&&delete a[c]}),a}async[$e(615,"&L(#")+"le"](e){let r=$e,n={zOYRK:r(429,"NCIB"),WqADz:r(256,"Z*B!"),SmdCI:function(s,i){return s>i},NJIsK:r(687,"vbM7")+r(309,"tPoy")+r(316,"B49t")};if(!e)return null;try{e=e[r(303,"H#%j")](n[r(675,"vbM7")])?n[r(467,"(O@[")]:e;let i=await this[r(311,"!ahM")+"fo"](e);if(!i||!i[r(565,"lHXy")])return null;let a=i?.[r(305,"YzKM")],o=a[r(422,"nM1l")](d=>d[r(628,"s1R8")]),c=a[r(585,"XXV0")](d=>d[r(398,"mL$T")]),u=/App|活动中心|免费|1T空间|免流/,l=[];if(a&&n[r(547,"3BhN")](a[r(638,"8DL5")],-8*266+20*-179+5708)){o[r(552,"!dbI")]((f,p)=>{let m=r;!u[m(472,"yuUx")](f)&&l[m(439,"#*4]")]({name:f,path:c[p]})});let d=await Promise[r(481,"tPoy")](c[r(375,"3H)Z")](async f=>this[r(659,"d$GU")+"le"](f)));return d=d[r(280,"YzKM")](f=>f!=null),[...l,...d[r(636,"Z*B!")]()]}}catch(s){return console[r(400,"qf0c")](n[r(363,"wIP%")],s),null}}async[$e(271,"!dbI")+"l"](e){let r=$e,n={IhITm:function(s,i){return s in i},pCuOm:r(564,"s1R8"),yXpTv:function(s,i){return s!==i},uubvP:function(s,i){return s!==i},diwTx:r(581,"20ct")+r(430,"lET8")+r(438,"iBpX")};try{let s=await this[r(705,"wIP%")+"fo"](e);if(!s||!n[r(420,"3H)Z")](n[r(406,"kI1Y")],s))return null;let i=s[r(523,"XXV0")];if(n[r(361,"KdvK")](i,null))return i[r(457,"yuUx")](o=>this[r(563,"nM1l")+r(579,"YzKM")+"nt"](o))[r(440,"kI1Y")](o=>({name:o[r(327,"lET8")],contentId:o[r(386,"8DL5")],linkID:this[r(515,"!dbI")],size:o[r(452,"*I%q")],path:o[r(398,"mL$T")]||"",coType:o[r(405,"wIP%")],suffix:d6e(o)}));if(n[r(382,"1$*q")](s[r(511,"mL$T")],null)){let a=s[r(661,"KdvK")][r(697,"cSk2")](c=>c[r(588,"#*4]")]),o=await Promise[r(315,"rTn$")](a[r(469,"iBpX")](c=>this[r(415,"tPoy")+"l"](c)));return o=o[r(288,"NUA^")](c=>c&&c[r(657,"cSk2")]>0),o[r(335,"SjKy")]()}}catch(s){return console[r(534,"nM1l")](n[r(617,"mL$T")],s),null}}[$e(575,"kI1Y")+$e(690,"SjKy")](e){let r=$e;return e&&(e[r(701,"20ct")]||e[r(313,"XXV0")+"L"]||e[r(594,"8DL5")+"L"]||e[r(605,"f2C6")+r(318,"s1R8")])||""}async[$e(449,"hTux")+$e(484,"$hvt")+$e(434,"*I%q")](e,r){let n=$e,s={nYdVd:n(676,"NUA^")+n(250,"]oQm")+n(571,"uUex")},i=this[n(537,"^([h")+n(372,"8DL5")+"fo"](),a={getContentInfoFromOutLinkReq:{contentId:e,linkID:r,account:i[n(586,"$hvt")]},commonAccountInfo:i},o=await this[n(302,"lHXy")+"pi"](s[n(425,"nM1l")],a);return this[n(297,"lET8")+n(560,"]oQm")](o?.[n(493,"&L(#")]?.[n(478,"kI1Y")+"o"])}async[$e(473,"^([h")+$e(527,"yuUx")+"ad"](e,r){let n=$e,s={BSYvU:n(489,"lET8")+n(432,"!dbI")};if(!this[n(633,"!ahM")+n(508,"d$GU")+"er"]()||!e)return"";let i=this[n(683,"3BhN")+n(353,"mL$T")+"fo"](),a={dlFromOutLinkReqV3:{account:i[n(343,"mL$T")],linkID:r,coIDLst:{item:[e]}},commonAccountInfo:i};return(await this[n(646,"hTux")+"pi"](s[n(625,"^([h")],a))?.[n(414,"lHXy")]?.[n(525,"3H)Z")]||""}async[$e(596,"d$GU")+"ay"](e,r,n="",s=""){let i=$e,a={NUWoV:function(c,u){return c(u)},KEOlY:function(c,u){return c||u}},o=a[i(496,"20ct")](knr,n);return this[i(678,"(O@[")+i(578,"F3h)")+"er"]()?await this[i(608,"NUA^")+i(691,"8DL5")+"ad"](a[i(476,"8DL5")](o,e),r):await this[i(504,"vbM7")+i(419,"yuUx")+i(332,"F3h)")](e,r)}},$V=new WV;var Sqr=Re(Jn(),1),_t=Il;(function(t,e){let r=Il,n=t();for(;;)try{if(parseInt(r(552,"EBu["))/1+-parseInt(r(588,"2CNl"))/2*(-parseInt(r(423,"$K(D"))/3)+-parseInt(r(679,"7WHS"))/4*(-parseInt(r(464,"KEzV"))/5)+parseInt(r(911,"n#dP"))/6*(parseInt(r(678,"jJi*"))/7)+parseInt(r(768,"KVv4"))/8*(parseInt(r(636,"spAe"))/9)+-parseInt(r(777,"n$nf"))/10+-parseInt(r(921,"Z3]t"))/11*(parseInt(r(507,"7WHS"))/12)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(aL,-222221+-15551*-58);var nb=_t(856,"^oo)")+_t(480,"2iTo")+"n",f6e=_t(775,"KVv4")+_t(729,"3Ga)")+_t(402,"$K(D");function UV(t){let e=_t,r={RSKpd:e(895,"sI6$"),SRmrB:e(650,"PBWo")};return Buffer[e(847,"Z#jd")](t,r[e(491,"PBWo")])[e(415,"sI6$")](r[e(487,"$K(D")])}function Mnr(t){let e=_t,r={QNVxs:function(n,s){return n(s)},JzzQp:function(n,s){return n||s},bagPy:function(n,s){return n+s},bXQLA:function(n,s){return n%s},unavS:function(n,s){return n-s},cgpFk:function(n,s){return n%s}};try{let n=r[e(892,"^oo)")](String,r[e(592,"KEzV")](t,""))[e(476,"[g$U")](".")[1]||"";if(!n)return null;let s=n[e(743,"aL3e")](/-/g,"+")[e(915,"Z3]t")](/_/g,"/"),i=r[e(710,"aL3e")](s,"="[e(632,"3Ga)")](r[e(586,"^oo)")](r[e(468,"Pqls")](8174*1+-2544+-5626,r[e(629,"8rP)")](s[e(857,"aL3e")],-4644+-8*-581)),-1480+-134*2+1752)));return JSON[e(897,"1Jsl")](r[e(725,"zTXO")](UV,i))}catch{return null}}function Wnr(t){let e=_t,r={LXxCM:function(n,s){return n(s)},snpaw:function(n,s){return n||s},fKIBH:e(794,"3Ga)"),droKK:function(n,s){return n(s)}};try{let n=new URL(r[e(494,"3Ga)")](String,r[e(666,"GBUh")](t,""))),s=n[e(569,"[g$U")+"ms"][e(742,"pd]6")](r[e(604,"GBUh")]);if(s)return r[e(551,"1g%Z")](UV,s);let i=n[e(483,"x&B#")][e(796,"q5v@")](293*19+1*-5577+-1*-11)[e(680,"2CNl")]("&")[-8691+-17*-98+7025]||"",a=i[e(820,"Bc2A")]("=")?i[e(560,"7WHS")]("=")[-5096+1*5097]:"";return a?r[e(789,"gIJp")](UV,a):""}catch{return""}}function p6e(t){let e=_t,r={wYryw:function(n,s){return n(s)},PhDPF:function(n,s){return n||s},pkqlq:e(572,"7HAV"),uQfcY:e(550,"gIJp")};try{let n=new URL(r[e(905,"7%IF")](String,r[e(693,"2CNl")](t,"")));return n[e(824,"dfe3")]=n[e(784,"[g$U")][e(589,"KEzV")](/_24_24(?=\/|$)/g,""),["w","h",r[e(461,"n$nf")],r[e(420,"8rP)")]][e(505,"[U(&")](s=>n[e(511,"^oo)")+"ms"][e(835,"4jZl")](s)),n[e(851,"u^kX")]()}catch{return""}}function $nr(t){let e=_t,r={htgGZ:function(n,s){return n(s)},HcwgG:function(n,s){return n(s)},EPvQz:function(n,s){return n||s},qqmzy:function(n,s){return n(s)},ZgGyO:function(n,s){return n||s}};try{return r[e(727,"8#fg")](decodeURIComponent,r[e(697,"3Ga)")](String,r[e(840,"$ac(")](t,"")))}catch{return r[e(530,"7HAV")](String,r[e(810,"1Jsl")](t,""))}}function aL(){let t=["WP9vwSoVW5eLW5BcUNldLa","ymkpWPLyvmkUW7e","W77dNmkVFay","W4RcQSkYWO7cUSkuWPm","WROPWQi","WQD1W5C+","WOpcRXSdaW","W5PKi1tdUG","v0WXqa","WPJcNCoIzr8qASojW7VcMq","WOKpzSk2lq","rCo+Eru","W5ldNCkGAaXSrdldONG","W45kW5fqna0b","W5/cRv3dTSoKn8kJW4hcSJ0","eCoyDG","WO7cL8kSzXazq8khW6dcLG","W4jFW4S","abyv","FCkoWRLoq8kqW6m+W6G","WOagASkmWRmTbSkgbqu","sWVdRg3dGCkNqfVdJrO","cfdcQhldTq","WPW6Fa","W5FdRKOJ","WOSVW6ZcRCoZW6RdG3eqW4G","WPJcIIKE","WOxcHISp","ff7cQZpcJCkoAuhdSJrE","ASoyWRJdVSo2","WPDWDCoYpSkYW7nG","WQtdM1FcOYDdfG","zSoJDbFcPWv6hCkz","zCkNmCkdW5K","WQCknCk7Bf3dV8k7WO9E","CCo9jGZcPCoWWQNdTSki","vSoUWOFdN8oJE0m","yComW4eyht4fW4FcS8kh","W4pdRKOQ","BSoXWO3dOSoY","W6xcHKlcHGbGmWe","W6JdJCkYrmkbW6e6WQjula","v8owBa","WQZcRuXWWQuYjKVdUN0","yCo/BbO","Fqz+","WOymFmkqWROWrW","W7JdKMvkvSkoW5GquSoAAq","WQ9em8k7zG","ECkDWRz1r8k6W7WZ","cSocW4yFxIqxW4BcLmo6","W7ldVmouvmoQ","FCoBW74MpG","rSkmd8kSW5u","WRzXFSo4pSkYW7nGWRO1","iSoniq","xtOqESkn","WRpdOGlcP8kkWQhcNmkM","WOpdGs/cHCkq","W6DsW6xcNY9ana","eCkFtSoJW44","WOzZzCkZWOm","jmkhDSoeW6FcU1BdPa","W7ddHCoFz8ok","W69rW5tcGtrclmkNWRX3","hCk/tSoMW4a","WOxdVH3cQG","qdevwSkW","W7NdUvumjG","jCkfjq8","CvuGrIrrm8oR","zqCqWRLfW4/dTa","WQFdH0pcPq","WQ9XW404eCo7","WOhdTSkPAaztrhRcTJm","qKhdSNpdL8knfe/dIXC","uqWlBmkH","WRaTWQBdPSk8iY3dKh7dNG","W5BcTeZcMa","W4CiW4BdPqyr","zSkpemkJW7euW6VdL35P","WOrDWOBcSLjvsrDlDfZdUmoLqq","WRqiBSkrWQGTfCkg","nmk7lcJcJGvqaSkg","WOpdGJtcMmkQ","W6vgW45ggWSjlW","fhVcHJNcLN3dSW","W5pdI8kFWPm+","Df04rGPA","DY5oW6Xy","WPRdNuRcPbrggxBcJ30","WP/dRaBdKSo6nSk1W4O","W7VdI8kRhmozWRv7WR43sG","WRVdLCkYD8osWONcG1tdVZm","WP8RWRe","ymkdrgFdUSkwW7FcQmoPqq","WQX7ySoOf8kOW7q","WRBdIMhdVG","W4/dKCkVgG","cJ5XW6JdSSkoW68","W5XMiW","WQykpCoTWQJcIW","l8oRAbVdLW1YhmkzCa","sCkRgCkeW6i","W7RdOvGTl1ZcM3K","gwNcSYO","W5ldQ1O","f0hcReldTmoh","W6PaW5dcJa","xH3dVxtcHCk2E2RcJK4","55QL5B2l5OId5yIc","u0q9","WOJdNSkxaSonWO18","W6FdMCoTD8ov","WRJdPbVcL8k5ySoNW5BdS3O","WPVdRqe","sa/dRge","W6tcOmk0WPxcSCkZW4hcPG","z1ycWRVcMMWHWOS","W4ecW53dPqK","xSobEW","xLSZsI1Rm8o+","WOVdRahdGa","W6tdLSoUzCovWO/dNLy","mmkznbHZk1a","gXtdK3ddGmk0sq","WPGHFuxdPafHWQpcLa","m8k9Fc7cVW","WO7dKx3cRZeZi2/cP8oy","WQZcHIC","WR7dNfNcUq","WOHfxCoi","W4BcQ8kRiCk3","WO4OW7ZcP8k5","wftcMCkXz8od","W4xdLmk1EW","ytWBWRbd","r8omW5KAfdak","ESkuWRLyq8kDW608W7tcQa","j8ksD8oEW7NcS03dTSos","emkLvbFcJq","W4ddSSo0E8o4","W45xW5HUoG","WQ0hFSkoWQOMaSkr","W70oW4hdPYa","WQ/dKwa","d0BdVezk","imkuBmoA","rGqqt8kK","mmkSFHJcU8ohWQRdQ8kLdG","yCoIWOldN8om","xSoNWRldL8oT","gs51W6W","WQ/cQZyAa8kCW4S","yHen","WQ3dQbtdK8oOk8oN","W5FdLSoPC8ofWO/dNKS","m8kwnZPL","jSkKFclcGSoc","hZ51W5FdU8kmW7JcPsBdKa","WPaMCmk8kaX+W4ZcO3G","WRBdJdpdHSoe","W5BdISk4f8onWPv8","hJrZW4hdSSkoW6i","W43dNSkfCtS","WOxdL2VcOXq7","WPNcK8k5Da","c8k9fbnW","WRbulCkhBq","hCokzq","B8kvWRrEq8k9","yafpW7nH","W4ZdPmkaWQqC","WRv4umkN","W6zvW4pcQGC","dwNcTdJcLhpdUeq","W5ieW5JcRLzxtLDDBW","qGOpqG","W7pdKSoP","hCovAG","WQvamCkVD1S","5yQB5B6z44c06yAp576D44c+56M+5RU46l2t6kof","W5pdRCkuFsa","rZ01CCkEWQRcT8kay8ka","WPK8pmkWW7hcHCkgWROJwG","W7VcMCkMWRtcRa","W7ldS8ohxSop","WPvfW73dIdmOmqSCBq","WRP/z8o8","WOORW6O","i8ksiaz9ive","zCkAn8olWQFcQbddRmky","qeCXv35RfCouW5Ow","ECkmWOT9Cq","W4VcS8k8mCkW","W4JdNSkKoI5BqJ7dQcK","W5tdQKO","v1njbSogW7tdVCoFl8ot","W7BdU18L","W6/cQSkN","wGNcObSFW7rjWQhcG8kH","W7nxke/dGa","lJVcJc7cNvRdPLhcKa","pCkiumooW5u","WO/cL8k9ErisDG","W6naW5q","nG9uW6NdTa","W5X+WQ4","WRHaFSk2WQy","fIHIW6VdT8keW6tcPW","A1K6Aai","WQ1UF8o0bG","W5VdRK0","yLuJWQ/cKa","WP9BzCotma","babNexTke8oyWRzzWQa","ASkEfmkSW7a","qSogW4i","EflcH8krt8oeyW","WR9Uy8oXg8k4W6fGWPuZ","CYW/C8kS","zSoRAHVdL14Or8osBa","wKaGuZaeBSk9WPTb","mMtcTMVdNa","WR3cTtCkW4rpxLFcRwtcGSoRahu","CSostrxcSq","fdrOW6O","WPr8rCkWWPzDWOC","WRy6p8oXWQJdMCoqW7bpbq","WOyRW6FcTW","W45Xo3hdPXfcWOFcT0C","WO3cK8k5Fr0qFSkd","WR0pWPtdG20pFCoZWOz5","WQuAFG","qtKRw8kc","W6ddP18WbMxcN2K","BGirWP5H","r8oDECkCW6BcIfSOB20","W7tdJCkOxCkaW6KTW7rrlG","W63cVCo8W47dQCoiWOpdPmksW50","WPuGuSkwma","W4umW4tdOqOw","c8oOWPldNCo2FvtdRuFdPG","W5bdW4Tama","sWVdReBdKCkpsL/dOq8","WOmZC8k/lrPRW5hcPxK","WP5zqSofW6WHW5lcTgm","sWVdRa","vmkwgSkQ","zSoJDaBcNrK","W7/cMmkuWOxcLa","W4JdM8o+AaXAscFdOMm","dSkpzSo6W6e","qSkvWQWfe8o8WR91WQldPG","WQv1W5e2sSkMsColfZu","xqr9W6zocGHJ","edPY","WRxdQJldMmoc","FchdI1q","Dmo4Cr8","W4r1pW","sSkKWP3dGmoTDG","FWqbq8kMWQxcUmkZCZ0","tLmGiCoFW7BdVmoNpCoc","WOqQB8k2gXDRW4JcQq","WQ9UsCkRWPu","WQxcJcq","D1pcLSk4w8odBSo+","CCo4iJ/cOCoaWP/dQmkd","W5PGpvtdOaboWRxcVa","gmoyCSoL","W5hdLmk1CGDFtda","W53dReLAWRi","EWFdTJBcJmoyd1tcLui","W6tdT1ydla","g8koxCkOW7/cLLSCFKS","W7pdRSktcSo8","bGKycmoL","mv7cJGpcNa","mmkSyZtcU8ojWQVdRa","whnkW4ZdH8kGW4BdReRdLq","FrLAW7TWaGi","W6ZcQSk/WPNcQ8kd","dKldPgzhWRSlW6tcMCkU","WQFcMCkTomksW47cNbldHt4","6i2G5y6E55IkWOtdPNhLRPNNORtMIklLIkG","WR/cJb8uemkCW4SAzCoD","iImxamov","WRNcHJqEhW","W4FdMCkGBG","W5ZcJCkvla","ur56W64","oSkpCCo7W7O","W51jW4xcNZHXoSk3","g3RcQcy","WQaiACkd","WOJcLCkaAHLsraldOMi","W6NcO8k/","vva9WQRcPMqIWOK","sahdR27dLmkmtKJcJb8","W4/dHCkOgG","WR3dNvNcOW","pSkapGzZi1a","B8klfmk/W6TnWQxcJgbX","pCkspG1OkG","WQSTzCk8cbb5W5e","W77dOhznWPqmhG","W7ecW4hdRGSkhenPCW","iCk4zc8","qW/dR0VdVG","W71jW4xcNZHQkmkQ","m8kdCq","WOTvxmowW5y9","WQOdhmoOWR0","jmkhDSoeW6dcU1BdTa","b0hdVW","WP9Gf8kdCG","nCkwjaS","mmkhCCow","WOJdQahdPCoIlSkPW4lcQI8","WRxdJHldK8od","WQ5sFmo7jq","BaCKWRPh","WPDAvSkhWQyec8kdnW","xviY","rdNdThNdKs7dS3/cMeRcN8ka","WOXdDmk6WOi","B8kqWRDfva","W5nTm8o9DfC6WOxcN3C","WOvCW41wjWKbfsDI","WQq4WR7dNmkG","WPv3z8kYr8oOWRC6W49Q","DmoJWPhdO8oO","WPtdRWO","W4WJW5/dRqy","W67cOmkHWRNcVSkfW5S","W63dHSoVwCom","WQFdN3pcPW","pJjTW6hdMSkj","vSkXnSk3W6S","WRBdJwlcMtK2mcxdSCkc","5BgM5P6t55M95B+r77+B5B6+5AsT55QL5B+X","WOaICmk2CK0","omkjyG","WP/dRaFdKSoO","l07dVfbMWR4","W4jlW4y","6i2y5y2B55QTWPdcV2ROT6hLJzNMI5xLI5e","W6CPfa","wCkUWPvTDa","WOBdVJtdK8o/omk+","WP0VW63cT8kSWRdcGJi","W5NcU8kiiCkr","hComCSoS","W5O8W53dKca","vColAmklW6FcM0WUuKC","W7BdISk6hCo5WRnPWQ4","W63dShnq","rHRdTr/cJSkqiHLXbmkTWQhdQq","rZaji8oaW7FdVmkFACkr","mmk4yY8","W4lcJCktnG","v8ogW4yAedib","W47cPSk/WPNcKCkhW57cRW","WPtcNmkKyq","fCk5W4tNMAVNM7NLVy3LPjFOTQtVVktORBy","avBdNMn5","WQrXW5CBcSoKfmkqvMC","fmktWO5orMHqWPdcTmkZafO9W7S","Dxea","WRjNWR7dNmkNnNddM1FdGa","WOtdMLhcVX1/cJu","WRzNW4yBdmoHh8kFtui","eSkpACosW5NcTuNdTq","WOxdQGdcNCkLWRxcHCkR","uSoAACoP","zH8z","W4JcI8kwpCkVWPm","WQxdL0hcUb1zda","WOyID8kY","ySoHt8km","WOOICa","DSoHW6yYmW","W51jW4xcNZHQkmkQ","duBdPfq","WRicumkuWRy","WPxcHmo1qb9qAIFdVq","Fa9CW6n4","WPySumkNnHbKW4i","W43dKSoLqHOFD8kjW6xcHa","W61jxmksWQ8UaSk1nru","WP4RW6O","WRe6lmo6","rZODsCkt","WRXxmW","feVcRs3cKa","t8kimmk1W6BdICkhWPFdSNfQ","mmkQmcxcKqv/h8klla","WPpdNuFcOXrfgt3dRYe","CgVcP8kUAa","zqddVM/dTmkkxfG","W6FcRSk3","mu3cLmk6h8kvoa","luFcLb8","frjfW4BdLq","W4/dGYhcGCk8ACoPWP7dVM4","W7ZdPgLNWOeEgrtcQN4","W7JdKSoZCCowWOG","W5/dOfCS","W4dcLCkBWQtcSq","WOFdRH/cT8kHWRpcHq","W6RdRgTDWP8EbWi","WRL7zW","rKxcV1rFWRnwW7lcUmkH","fCoxB8oW","WQ3dNYFcMSkk","WQZdJgVcJba","lmkIDW","CLJcM8kZwSop","emoCAmoJWQpdLG","xmokWP/dN8o2","W5xdIaBcSmkRWQ3cLmoShJa","B30HWPFcGG","W6ZcUSkrd8kE","W7HiW4dcIdj+pCk/WRrH","WRtdNHNcPmkb","iCkJDdxcPmopWR0","gh7cK0/dJW","svtcM8oIgSkCk8o1W5/dLq","W7qMWPzNvSkGsmk2AMxcKSouwa","55QY5B2W6l6y5P+x77Yp6yE+5Pw055QJ5B6Y","WRS7iCoR","W73dHmoCzmoqWOhdLq","swNdHbuEW6PxWRhdQ8oG","W7ZdRNzuWOa","Dq5/","BmkAWRLFsSk7","hmk7W4tcGmk3DwddRhNdG8oV","WPSnCSkvWReUcmkdna","tmonW58c","tNSWWRxcPSkVW7JcRX3dIG","heNdSun8","etvIW6JdPSkjW6/cSW","gM3cSZNcI3pdVL3cJLq","imkIuZRcRczxxmoCmW","WOBdVW/cTSkXWRm","FYZdIetdUG","WQr8q8kNWOS","WPfGW7i2iG","WO7cGSkHFaC","h8kskb4","W5hcI8k2aCoAWRqHWRKkEq","WQ7cM8k3Ca","WRq6WPjTvSoJg8ksf2u","qCoABSkXW6hcNvCTyG","W4fkW7ZcQdO","zW96W7THcW","W63dN8kLWRq","BSkzW6vDq8kTW7SYW6xcTq","W63dQ2nkWP4wdG","l8oRA8o2WPu","wSopBW","W4/cKSkt","WORdKghcQre2mtq","WPhdRuZcTJK","W6FcSSkqhCk0","WReRySkHisL9W4e","W7K1W47dGYO","CmknWQPLsa","WOrFWOxdSayluLeolW","geBcPeldHCoSDG","WRm7BCkQkG","vSo4WPldH8k/txldHWxcUq","WOiaCCkhWPyM","d8orz8o2WRldTCkdWQC","kmkeqt7cMG","CLCpWQZcSv07WOO","W6ZdJMBcQgXTCw8","WQigB8kNWR4HdW","bSkKFclcHCohWRtdVq","WPSGpxBdTI1SWOS","sSooWPNdLCoO","ELJcVSkYwG","W6HoW5BcQdXcjq","DmkAaCk9W7SFW5RdGMvN","W5ddJfGooq","WOzVsmkKWRu","WPdcHCo5iL4hfwBdLwBdTupdQmoM","W4ddR1RdGmo9mmoOW5JcRcO","WQ0cEmocWPGNbmkjp14","p8oiW6SyhSk7W5OrW5dcP8os","gt9L","eXWaiSoB","ACoAurpcKG","yCo6Cq","W4BdGCkV","WPCbFmkqWROsemkg","W6boW5zgmGuwmW","W51fW4hcUJa","WP/dKSome8kiWQhcJSkXaW","sWmrWRzN","W63dTMq","WOekr8kLWQ0","EmknWRvqxW","WRuWpmomWQZdL8odW7fCbq","WR3dQCk+WQ4aW4TTW7ZcVwi","W7tdH1GOfG","WR9Rz8o1","qmksWR5fASkMW7SV","WQXDoSkR","W6RdQwzm","WP46W6ZcRCkYWRG","WOqLW7VdPmkBWRRcKY1rW5i","CLJcJCkmtq","z8oVBchcKaPPfCk4pG","WPPXzmoZhSk0W6fWWQKo","xLe6rdDw","ErWxWRzp","W57dT0ncWR4","W4BdVCk0wrm","emkjxmoaW5S","Eav8","WOKVW6RcPq","AreDWR1pW7hdPmk+n8os","nan5W4FdNG","W68Of8oWW4yDW54NW6FdSrjA"];return aL=function(){return t},aL()}function Fnr(t){let e=_t,r={TEimZ:function(n,s){return n(s)},NBOIV:function(n,s){return n(s)},YmnKA:function(n,s){return n||s},IYKQW:e(608,"^oo)")};try{return r[e(694,"GBUh")](encodeURIComponent,r[e(449,"u^kX")](String,r[e(763,"KVv4")](t,"")))[e(652,"1g%Z")](/\*/g,r[e(618,"Nh71")])}catch{return""}}function Unr(t,e=!1){let r=_t,n={YAFgI:function(s,i){return s===i},LJOxI:r(690,"Z3]t"),deKft:function(s,i){return s===i},NTyKz:r(538,"pd]6"),zlEdo:r(622,"aL3e"),XTIXN:r(522,"(Uhe"),fwZom:r(601,"Vk8Z"),orlJM:r(877,"KVv4")};if(n[r(714,"1Jsl")](typeof t,n[r(829,"(Uhe")]))return t;if(n[r(509,"Bc2A")](typeof t,n[r(656,"^oo)")])){let s=t[r(812,"spAe")]()[r(839,"iq9T")+"e"]();if(["1",n[r(704,"KEzV")],n[r(442,"!kc1")],"on"][r(696,"[U(&")](s))return!0;if(["0",n[r(875,"gIJp")],"no",n[r(443,"PBWo")]][r(469,"1g%Z")](s))return!1}return e}var FV=(t,e)=>t?t+"/"+e:e,qV,jV={};function Il(t,e){let r=aL();return Il=function(n,s){n=n-(2*-3329+13*-430+12645);let i=r[n];if(Il.fOcFCk===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h{let e=_t;qV=t[e(865,"GvrG")].db,jV=await qV[e(553,"GvrG")+e(463,"7HAV")](e(429,"Bc2A"),{})},HV=class{constructor(){let e=_t,r={sVuHs:e(744,"Nh71")},n=r[e(738,"4jZl")][e(764,"xhg1")]("|"),s=-1054*4+-8*-982+-28*130;for(;;){switch(n[s++]){case"0":this[e(489,"7%IF")]=nb+(e(440,"Pqls")+e(647,"pd]6"));continue;case"1":this[e(474,"EBu[")]=/https:\/\/(?:www\.)?(123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/s\/([^/?#]+)/;continue;case"2":this[e(691,"7HAV")]=/https:\/\/[^/?#]+\.share\.(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)\/123pan\/([^/?#]+)/;continue;case"3":this[e(726,"EBu[")]="";continue;case"4":this[e(674,"KVv4")]=f6e+(e(603,"Z3]t")+e(584,"@GrP"));continue}break}}async[_t(458,"xFMZ")](){let e=_t,r={CLvLa:e(900,"1Jsl"),ZicMv:e(838,"#cY9"),pLofW:function(n,s){return n(s)},cfbce:function(n,s){return n>s},oawKF:function(n,s){return n/s},VEHKq:e(663,"xhg1"),BXkWx:e(457,"Vk8Z"),yxhUH:e(894,"$K(D")};if(this[e(728,"Z#jd")]&&console[e(698,"PBWo")](r[e(776,"n#dP")]),this[e(644,"1Jsl")]&&console[e(548,"x&B#")](r[e(805,"Nh71")]),this[e(597,"spAe")]){let n=r[e(874,"xhg1")](Mnr,this[e(910,"n$nf")]);r[e(686,"pd]6")](n?.[e(595,"sVp(")]||0,Math[e(880,"7HAV")](r[e(862,"jJi*")](Date[e(819,"iq9T")](),2455*3+1*-1153+-5212)))?console[e(896,"Nh71")](r[e(869,"Vk8Z")]):(console[e(444,"2CNl")](r[e(450,"7%IF")]),await this[e(914,"7%IF")]())}else console[e(403,"gIJp")](r[e(575,"n#dP")]),await this[e(779,"1g%Z")]()}get[_t(615,"Nh71")](){let e=_t,r={iCjft:e(433,"n$nf")+"rt"};return oC[e(752,"4jZl")](r[e(422,"Z#jd")])}get[_t(635,"[U(&")](){let e=_t,r={IPjER:e(702,"2CNl")+"rd"};return oC[e(571,"$ac(")](r[e(492,"7%IF")])}get[_t(705,"1g%Z")](){let e=_t,r={mIDBF:e(602,"7HAV")};return oC[e(800,"jJi*")](r[e(431,"1g%Z")])}get[_t(399,"2iTo")+_t(855,"aL3e")](){let e=_t,r={RtQiG:function(n,s,i){return n(s,i)},NTUmg:e(893,"PBWo")+e(465,"[U(&")};return r[e(475,"2iTo")](Unr,oC[e(439,"xhg1")](r[e(759,"1g%Z")]),!0)}async[_t(435,"0j^Z")](){let e=_t,r={AGDYf:e(430,"Z#jd"),nVRzF:e(681,"PBWo")+e(567,"1Jsl")+e(460,"Pqls")+e(826,"jJi*")+e(816,"$ac(")+e(791,"(Uhe")+e(740,"3Ga)")+e(539,"pd]6")+e(532,"zTXO")+e(753,"Pqls")+e(578,"pd]6")+"6",cCfLZ:e(772,"xhg1")+e(814,"KEzV"),lexXc:function(a,o){return a(o)},XxHPO:function(a,o){return a(o)},mxzMo:e(519,"$ac("),gHuCz:e(918,"KEzV")+e(734,"EBu[")+"\u914D\u7F6E",PjAqp:e(401,"!kc1")};if(!this[e(904,"pd]6")]||!this[e(867,"Nh71")])return;let n=JSON[e(481,"sVp(")]({passport:this[e(832,"2CNl")],password:this[e(676,"GBUh")],remember:!0}),s={method:r[e(773,"8rP)")],url:this[e(670,"4jZl")],headers:{"User-Agent":r[e(426,"Bc2A")],"Content-Type":r[e(512,"0j^Z")],"App-Version":"43",Referer:f6e+(e(795,"KEzV")+e(804,"dfe3")+e(654,"xFMZ"))+r[e(540,"Bc2A")](encodeURIComponent,nb)+(e(882,"q5v@")+e(485,"7HAV"))},data:n},i=(await Ae[e(437,"!kc1")](s))[e(406,"sI6$")];if(!i?.[e(558,"2iTo")]?.[e(701,"8rP)")]){r[e(605,"Z3]t")](messageToDart,{action:r[e(695,"q5v@")],opt:{message:r[e(546,"dfe3")],duration:5}});return}oC[e(418,"pd]6")](r[e(614,"EBu[")],i[e(719,"[g$U")][e(672,"3Ga)")])}[_t(541,"spAe")+"ta"](e){let r=_t,n={WxhAO:function(c,u){return c(u)},EcZGr:function(c,u){return c||u},hIQyQ:function(c,u){return c>u},sRPqH:function(c,u){return c+u},yNima:function(c,u){return c(u)}},s=n[r(827,"0j^Z")](decodeURIComponent,n[r(529,"[U(&")](e,"")[r(700,"Nh71")]());s=s[r(757,"[g$U")](/[#.,,/\s]+$/,""),this[r(523,"[U(&")]="";let i=s[r(497,"n#dP")]("?");if(n[r(685,"7%IF")](i,-4088+28*146)){let c=s[r(544,"gIJp")](n[r(787,"8rP)")](i,1)),u=c[r(769,"^oo)")](/(?:^|&)pwd=([^&]+)/i);this[r(846,"8#fg")]=u?n[r(887,"3Ga)")](decodeURIComponent,u[1705+-94*14+1*-388]):""}let a=this[r(841,"iq9T")][r(561,"KVv4")](s);if(a)return n[r(502,"2CNl")](a[3209*-3+-1*2417+12046][r(715,"(Uhe")]("?"),3394*1+-23*307+193*19)?a[-1*-7554+-2889+-4663][r(883,"#cY9")]("?")[8818*1+5*-955+-4043]:a[9146+-29*-13+-9521];let o=this[r(565,"dfe3")][r(536,"Vk8Z")](s);return o?o[15116+-5*3023]:null}async[_t(797,"jJi*")+_t(398,"@GrP")](e){let r=_t,n={fDZHm:function(o,c){return o in c},AsocM:function(o,c){return o>c},hqNVV:function(o,c){return o(c)},GHfju:function(o,c){return o>c},xVTwy:function(o,c){return o===c}},s={},i=[],a=await this[r(630,"#cY9")+"st"](e,this[r(503,"u^kX")],-523*-12+-3*2677+-45*-39,0,i,"");if(a&&n[r(533,"0j^Z")](a[r(626,"2iTo")],-1*-4511+-107*4+-1361*3)&&(s[r(843,"7%IF")]=a),n[r(606,"^oo)")](i[r(543,"KVv4")],-9378+-1*2494+11872)){let o=await Promise[r(850,"4jZl")](i[r(568,"$K(D")](async c=>{let u=r;return this[u(908,"sVp(")+"fo"](c[u(501,"$K(D")],c[u(493,"sI6$")],0,c[u(404,"7%IF")],c[u(853,"(Uhe")])}));o=o[r(723,"7HAV")](c=>c!=null),i=[...i,...o[r(537,"n$nf")]()]}i&&Array[r(554,"7HAV")](i)&&await Promise[r(850,"4jZl")](i[r(557,"#cY9")](async o=>{let c=r,u=o[c(591,"0j^Z")]||o[c(438,"n$nf")];!n[c(739,"GBUh")](u,s)&&(s[u]=[]);let l=await this[c(712,"1g%Z")+"st"](o[c(863,"8#fg")],o[c(788,"0j^Z")],4*1712+2*4649+-16146,o[c(660,"n#dP")]);l&&n[c(527,"gIJp")](l[c(445,"Bc2A")],-1647+183*9)&&s[u][c(484,"zTXO")](...l)}));for(let o in s)n[r(866,"xFMZ")](s[o][r(434,"GBUh")],-1*5153+-1*-9757+-1*4604)&&delete s[o];return Object[r(782,"pd]6")](s)[r(716,"1g%Z")](o=>{let c=r;s[o]=s[o][c(813,"7WHS")](u=>{let l=c;return{vod_id:[u[l(410,"8#fg")],u[l(891,"1g%Z")],u[l(876,"[U(&")],u[l(579,"iq9T")],u[l(564,"spAe")],n[l(919,"Pqls")](Fnr,u[l(860,"3Ga)")+"l"]||"")][l(854,"@GrP")]("*"),vod_name:u[l(638,"q5v@")],vod_size:u[l(479,"[g$U")]}})}),s}async[_t(836,"Pqls")+"fo"](e,r,n,s,i){let a=_t,o={rXUgI:function(A,g){return A===g},kLeei:function(A,g,b){return A(g,b)},PRMGR:function(A,g){return A||g},ywmif:function(A,g){return A||g},OkXEg:function(A,g){return A??g},iVShr:function(A,g){return A+g},SdeWm:a(682,"iq9T"),vkMvi:a(901,"EBu["),ZZPxq:a(817,"sI6$"),wWGyK:a(722,"$K(D"),yqrOn:function(A,g){return A(g)},drBqh:function(A,g){return A!==g},EiulN:function(A,g){return A>=g}},c=[],u=o[a(482,"8#fg")](n,0),l=-5060+117*-9+2038*3,d=new Set,f=new Set,p=A=>!(A==null||A===""||A===-9*-78+7862+-8564||A==="0"||A===-(8545*-1+-8641+17187)||A==="-1"),m=1*-2531+-2*4421+1639*7;for(;;){let A=l+"|"+u;if(d[a(765,"0j^Z")](A))break;d[a(886,"!kc1")](A);let g=await Ae[a(864,"Nh71")](o[a(454,"n#dP")](this[a(521,"spAe")],o[a(525,"8#fg")]),{headers:{},params:{limit:o[a(412,"[U(&")],next:u,orderBy:o[a(879,"EBu[")],orderDirection:o[a(803,"4jZl")],shareKey:e,SharePwd:r,ParentFileId:s,Page:o[a(495,"7HAV")](String,l)}});if(o[a(616,"GBUh")](g[a(472,"!kc1")],-6*-213+-127*-33+-1*5269))break;if(o[a(778,"spAe")](g[a(741,"xhg1")][a(419,"xFMZ")],832+-561*-14+-1*3583)){console[a(673,"sVp(")](g[a(675,"1Jsl")][a(566,"q5v@")]);break}let b=g[a(675,"1Jsl")][a(658,"Z#jd")];if(!b||!Array[a(639,"Z#jd")](b[a(535,"7HAV")]))break;b[a(808,"x&B#")][a(510,"8#fg")](x=>{let v=a;if(o[v(735,"dfe3")](x[v(709,"GBUh")],7*233+-569*-6+-1*5045)){let C=x[v(687,"Bc2A")]+"|"+o[v(689,"gIJp")](FV,o[v(902,"7HAV")](i,""),x[v(610,"!kc1")]);if(f[v(408,"sI6$")](C))return;f[v(659,"0j^Z")](C);let R=o[v(563,"sI6$")](FV,o[v(818,"EBu[")](i,""),x[v(916,"4jZl")]);c[v(619,"!kc1")]({filename:x[v(638,"q5v@")],shareKey:e,SharePwd:r,next:0,fileId:x[v(687,"Bc2A")],path:R})}});let y=b[a(580,"iq9T")];if(o[a(721,"Vk8Z")](p,y)){u=y;continue}if(Array[a(834,"x&B#")](b[a(583,"xhg1")])&&o[a(703,"KEzV")](b[a(909,"(Uhe")][a(446,"$K(D")],m)){l+=1727+1726*-1,u=2*-2932+14*197+3106;continue}if(!o[a(889,"GBUh")](p,y))break}let h=await Promise[a(732,"$K(D")](c[a(758,"8#fg")](async A=>this[a(908,"sVp(")+"fo"](e,r,-753+-1*-753,A[a(711,"2CNl")],A[a(730,"8rP)")])));return h=h[a(802,"spAe")](A=>A!=null),[...c,...h[a(842,"dfe3")]()]}async[_t(531,"xFMZ")+"st"](e,r,n,s,i=null,a=""){let o=_t,c={wcQEt:function(g,b){return g===b},SBPDB:function(g,b){return g(b)},CjMqD:function(g,b){return g===b},nYZtU:function(g,b,y){return g(b,y)},AEvNB:function(g,b){return g||b},cDUeZ:function(g,b){return g??b},nitLm:function(g,b){return g+b},QiNbC:o(770,"Z3]t"),HZHXn:o(760,"pd]6"),Qxnyn:o(585,"spAe"),EyKTY:o(786,"[U(&"),iPIaj:function(g,b){return g(b)},rZnpz:function(g,b){return g>=b},JvkNE:function(g,b){return g(b)}},u=[],l=c[o(642,"x&B#")](n,-2062*1+2196*1+-134),d=1,f=new Set,p=new Set,m=new Set,h=g=>!(g==null||g===""||g===-8884+-28*-80+6644||g==="0"||g===-(4*370+-13*71+4*-139)||g==="-1"),A=20*197+-4*916+-176;for(;;){let g=d+"|"+l;if(f[o(488,"sVp(")](g))break;f[o(899,"q5v@")](g);let b=(await Ae[o(731,"GBUh")](c[o(845,"Nh71")](this[o(570,"q5v@")],c[o(825,"n$nf")]),{headers:{},params:{limit:c[o(436,"4jZl")],next:l,orderBy:c[o(498,"sI6$")],orderDirection:c[o(613,"Nh71")],shareKey:e,SharePwd:r,ParentFileId:s,Page:c[o(473,"jJi*")](String,d)}}))[o(890,"PBWo")],y=b?.[o(577,"0j^Z")];if(!y||!Array[o(459,"GBUh")](y[o(490,"PBWo")]))break;y[o(427,"jJi*")][o(888,"4jZl")](v=>{let C=o;if(c[C(793,"sI6$")](v[C(524,"q5v@")],-1*2654+-5014+7670*1)){let R=v[C(718,"PBWo")]+"|"+v[C(844,"x&B#")];if(p[C(707,"gIJp")](R))return;p[C(518,"1g%Z")](R),u[C(913,"2CNl")]({ShareKey:e,FileId:v[C(500,"[U(&")],S3KeyFlag:v[C(755,"Z#jd")],Size:v[C(801,"^oo)")],Etag:v[C(751,"0j^Z")],FileName:v[C(671,"u^kX")],DownloadUrl:c[C(409,"Z3]t")](p6e,v[C(425,"@GrP")+"l"]||v[C(590,"Z3]t")+"L"])})}else if(c[C(766,"u^kX")](v[C(623,"KVv4")],1995+95*-21)&&Array[C(612,"8#fg")](i)){let R=c[C(761,"EBu[")](FV,c[C(767,"xhg1")](a,""),v[C(400,"Nh71")]),w=v[C(898,"Pqls")]+"|"+R;if(m[C(809,"1g%Z")](w))return;m[C(462,"x&B#")](w),i[C(684,"GvrG")]({filename:v[C(506,"2CNl")],shareKey:e,SharePwd:r,next:0,fileId:v[C(641,"KVv4")],path:R})}});let x=y[o(477,"aL3e")];if(c[o(520,"spAe")](h,x)){l=x;continue}if(Array[o(903,"1Jsl")](y[o(858,"sI6$")])&&c[o(620,"8rP)")](y[o(657,"0j^Z")][o(733,"Vk8Z")],A)){d+=-201*-31+2424*-3+1042,l=0;continue}if(!c[o(621,"0j^Z")](h,x))break}return u}[_t(872,"1Jsl")+_t(706,"iq9T")](){return{Referer:nb+"/"}}async[_t(920,"2iTo")+"d"](e,r,n,s,i,a=""){let o=_t,c={ZCgrN:function(p,m){return p(m)},PvlfF:function(p,m){return p(m)},vIZZn:o(407,"sVp("),xAhlt:o(815,"8rP)")+o(416,"[g$U")+o(736,"$ac(")+o(594,"(Uhe")+o(828,"sVp(")+o(737,"xFMZ")+o(471,"spAe")+o(748,"dfe3")+o(627,"dfe3")+o(785,"8#fg")+o(807,"2iTo")+"6",DoYwL:o(798,"sI6$")+o(587,"Vk8Z")+o(499,"KEzV"),tkTzc:o(486,"n$nf")},u=c[o(754,"7WHS")](p6e,c[o(513,"EBu[")]($nr,a));if(u&&this[o(790,"sVp(")+o(624,"gIJp")])return u;await this[o(917,"[g$U")]();let l=JSON[o(692,"Nh71")]({ShareKey:e,FileID:r,S3KeyFlag:n,Size:s,Etag:i}),d={method:c[o(637,"!kc1")],url:this[o(664,"KVv4")]+(o(852,"jJi*")+o(668,"!kc1")),headers:{"User-Agent":c[o(447,"KEzV")],Authorization:o(780,"EBu[")+this[o(906,"$K(D")],"Content-Type":c[o(547,"Nh71")],platform:c[o(724,"x&B#")]},data:l},f=(await Ae[o(649,"xhg1")](d))[o(669,"jJi*")][o(871,"Nh71")];return c[o(873,"1Jsl")](Wnr,f[o(542,"xhg1")+"L"])}async[_t(783,"7WHS")+_t(762,"1g%Z")](e,r,n,s,i){let a=_t,o={NaIOQ:function(d,f){return d!==f},ZJDyl:a(922,"KVv4"),nEnfj:a(815,"8rP)")+a(424,"spAe")+a(648,"2CNl")+a(455,"Bc2A")+a(417,"[U(&")+a(806,"7HAV")+a(596,"n$nf")+a(516,"[U(&")+a(448,"!kc1")+a(837,"GBUh")+a(774,"spAe")+"6",HLHxd:a(617,"8#fg")+a(628,"jJi*")+a(662,"jJi*"),eQFiV:a(677,"aL3e")};await this[a(441,"$K(D")]();let c={method:o[a(720,"aL3e")],url:nb+(a(515,"1Jsl")+a(562,"[g$U")+"fo"),headers:{"User-Agent":o[a(508,"KEzV")],Authorization:a(708,"1Jsl")+this[a(861,"2CNl")],"Content-Type":o[a(559,"iq9T")],platform:o[a(747,"7%IF")]},params:{etag:i,size:s,from:"1",shareKey:e}},u=(await Ae[a(405,"@GrP")](c))[a(823,"$K(D")][a(870,"aL3e")][a(451,"8#fg")+a(555,"dfe3")],l=[];return u[a(771,"Bc2A")](d=>{let f=a;o[f(640,"zTXO")](d[f(421,"Vk8Z")],"")&&l[f(651,"(Uhe")]({name:d[f(713,"sI6$")],url:d[f(653,"7WHS")]})}),l}async[_t(470,"Z#jd")+_t(598,"x&B#")](e="0"){let r=_t,n={lkDkR:r(643,"@GrP")+r(750,"$ac(")+r(432,"1Jsl")+r(667,"1Jsl")+r(849,"dfe3")+r(884,"xhg1")+r(833,"1g%Z")+r(539,"pd]6")+r(912,"$ac(")+r(881,"sI6$")+r(774,"spAe")+r(467,"1g%Z")+r(792,"4jZl")+"2",azyYJ:r(631,"1Jsl"),RrDzO:r(799,"GvrG"),LVIHx:r(528,"n$nf"),vJAGT:function(i,a){return i(a)},inUyB:function(i,a){return i||a},oQkPG:r(699,"Pqls"),PhfPj:r(607,"xhg1")+"le"};return await this[r(683,"@GrP")](),(await Ae[r(749,"0j^Z")](nb+(r(646,"GBUh")+r(397,"#cY9")),{headers:{"User-Agent":n[r(717,"dfe3")],Authorization:r(556,"4jZl")+this[r(861,"2CNl")]},params:{driveId:"0",limit:n[r(830,"$ac(")],next:"0",orderBy:n[r(545,"n$nf")],orderDirection:n[r(831,"Z#jd")],parentFileId:n[r(611,"!kc1")](String,n[r(756,"Nh71")](e,"0")),trashed:n[r(907,"3Ga)")],SearchData:"",Page:"1",OnlyLookAbnormalFile:"0",event:n[r(885,"KEzV")],operateType:"1",inDirectSpace:n[r(609,"8rP)")]}}))[r(848,"[U(&")]}async[_t(574,"jJi*")+_t(428,"4jZl")](e,r,n,s,i=""){let a=_t,o={ppSWW:a(811,"jJi*"),NSOMt:a(496,"3Ga)")+a(576,"7WHS"),AUwfE:a(633,"^oo)")+a(478,"(Uhe")+a(745,"KVv4"),heGjz:a(453,"2CNl")};await this[a(466,"Z3]t")]();let c=JSON[a(822,"7WHS")]({driveId:0,FileName:i,FileID:e,S3KeyFlag:r,Size:n,Etag:s}),u={method:o[a(746,"7HAV")],url:nb+(a(655,"spAe")+a(781,"xFMZ")+a(868,"Pqls")),headers:{"User-Agent":o[a(582,"KEzV")],Authorization:a(599,"[U(&")+this[a(534,"xhg1")],"Content-Type":o[a(452,"!kc1")],platform:o[a(414,"x&B#")]},data:c},l=await Ae[a(859,"n$nf")](u);return l?.[a(688,"dfe3")]?.[a(661,"8#fg")]?.[a(573,"[U(&")+"l"]||l?.[a(411,"Pqls")]?.[a(549,"pd]6")]?.[a(645,"(Uhe")+"L"]||""}},O0=new HV;var h6e=Re(v0(),1),cC=Re(Jn(),1);var QV="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",Vh={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},m6e={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},GV=async t=>{let e=cC.default.enc.Hex.stringify(cC.default.MD5(t.config.y115.cookie)).toString();return(await t.db.getObjectDefault("/y115",{}))[e]??""},qnr=async(t,e)=>{let r=cC.default.enc.Hex.stringify(cC.default.MD5(t.config.y115.cookie)).toString();await t.db.push(`/y115/${r}`,e)};async function VV(t){t.get("/qrcode",async(e,r)=>{try{let s=(await Ae.get("https://qrcodeapi.115.com/api/1.0/web/1.0/token",{headers:{"User-Agent":QV,referer:"https://115.com/"}})).data.data,i=m6e.encode({sign:s.sign,time:s.time,uid:s.uid}),a=await h6e.default.toBuffer(s.qrcode,{width:300,height:300});r.header("X-Session-Key",i),r.send(a)}catch(n){console.error("115\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=m6e.decode(n);if(!s)return r.send({code:0,data:{status:Vh.EXPIRED}});let{sign:i,time:a,uid:o}=s;try{let u=(await Ae.get(`https://qrcodeapi.115.com/get/status/?_=${parseInt(Date.now()/1e3)}&sign=${i}&time=${a}&uid=${o}`,{headers:{"User-Agent":QV,referer:"https://115.com/"}})).data.data?.status;if(u===2){let l=new URLSearchParams({account:o,app:"android"}),d=await Ae.post("https://passportapi.115.com/app/1.0/android/1.0/login/qrcode",l,{headers:{"User-Agent":QV,referer:"https://115.com/"}});if(d.data.state===1){let f=hl(d.headers["set-cookie"]).join("");r.send({code:0,data:{status:Vh.CONFIRMED,cookie:f}})}else r.send({code:0,data:{status:Vh.NEW}})}else u===1?r.send({code:0,data:{status:Vh.SCANNED}}):u===-1||u===-2?r.send({code:0,data:{status:Vh.EXPIRED}}):r.send({code:0,data:{status:Vh.NEW}})}catch(c){console.error("115\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),r.send({code:0,data:{status:Vh.NEW}})}}),t.post("/cookie",(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(e,r)=>{r.send({code:0,data:await GV(e.server)})}),t.put("/cookie",async(e,r)=>{await qnr(e.server,e.body.cookie),r.send({code:0})})}var x6e="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",XV="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36",b6e="4.8.2",YV="OFFLINE$",E6e=15e3,_6e=1e3,zV=async t=>globalThis.getPanName?await globalThis.getPanName(t):t;function S6e(t){let r=/https:\/\/(?:115|anxia|115cdn)\.com\/s\/([a-zA-Z0-9]+)\?password=([a-zA-Z0-9]+)/.exec(t);return r?{shareCode:r[1],receiveCode:r[2]}:null}function v6e(t){let e=String(t||"").trim();return/^(?:magnet:\?|ed2k:\/\/)/i.test(e)?!0:/^https?:\/\//i.test(e)&&!S6e(e)}function C6e(t){return["mp4","webm","avi","wmv","flv","mov","mkv","mpeg","3gp","ts","m2ts","mp3","wav","aac","iso"].includes(String(t||"").slice(String(t||"").lastIndexOf(".")+1).toLowerCase())}function KV(t){return t?typeof t=="string"?t.trim():JSON.stringify(t):""}async function P0(t){let e=KV(t?.config?.y115?.cookie||"");if(e)return e;let r=t?.config?.y115?KV(await GV(t)):"";if(r)return r;let n=await t.db.getObjectDefault("/y115",{}),s=n.cookie||Object.values(n).find(i=>typeof i=="string"&&i.trim())||"";return KV(s)}function jnr(t){return(Array.isArray(t)?t:[t]).map(r=>String(r||"").split(";")[0].trim()).filter(Boolean).join("; ")}function Sc(t,e=null){let r=e?` ${JSON.stringify(e)}`:"";console.log(`[115-offline] ${t}${r}`)}function ZV(t,e=180){let r=String(t??"");return r.length>e?`${r.slice(0,e)}...`:r}function JV(t,e=0){if(t==null)return t;if(e>3)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).join(",")})]`:t;if(Array.isArray(t))return t.slice(0,3).map(r=>JV(r,e+1));if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t))/cookie|token|auth|sign|secret/i.test(n)?r[n]="[masked]":/url/i.test(n)&&typeof s=="string"?r[n]=s?`[url:${s.length}]`:"":r[n]=JV(s,e+1);return r}return typeof t=="string"?ZV(t):t}function I6e(t){return{Cookie:t,"User-Agent":XV,"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://115.com/",Origin:"https://115.com"}}function Hnr(t){let e=String(t?.url||t?.source_url||t?.source||t?.info_hash||"").trim(),r=String(t?.pick_code||t?.pickcode||t?.pc||t?.file_pick_code||"").trim();return{id:String(t?.id||t?.info_hash||t?.hash||t?.url||"").trim(),name:String(t?.name||t?.file_name||t?.filename||"\u672A\u77E5").trim()||"\u672A\u77E5",status:Number(t?.status),progress:Number(t?.progress||t?.percentDone||0),pickCode:r,fileId:String(t?.file_id||t?.fid||"").trim(),sourceUrl:e,raw:t}}function Qnr(t){return(Array.isArray(t?.data)?t.data:Array.isArray(t?.data?.tasks)?t.data.tasks:Array.isArray(t?.tasks)?t.tasks:Array.isArray(t?.list)?t.list:[]).map(Hnr)}function T6e(t,e,r={}){let n=String(e||"").trim(),s=/btih:([^&]+)/i.exec(n)?.[1]?.toLowerCase()||"",i=Array.isArray(r?.result)?r.result[0]:null,a=String(r?.id||r?.data?.id||r?.task_id||r?.data?.task_id||i?.info_hash||"").trim();return!!(a&&t.id===a||t.sourceUrl&&t.sourceUrl===n||s&&JSON.stringify(t.raw||{}).toLowerCase().includes(s))}function ez(t,e=0){if(!t||e>6||typeof t!="object")return"";for(let r of["pick_code","pickcode","pc","file_pick_code"]){let n=String(t[r]||"").trim();if(n)return n}for(let r of Object.values(t)){let n=ez(r,e+1);if(n)return n}return""}function w6e(t){return new Promise(e=>setTimeout(e,t))}function R6e(t,e=""){let r=String(t?.n||t?.name||t?.file_name||"").trim(),n=String(t?.pc||t?.pick_code||t?.pickcode||"").trim();return!r||!n||!C6e(r)?null:{vod_id:n,vod_name:r,vod_size:Number(t?.s||t?.size||0),vod_group:e}}async function Gnr(t,e){let r=await P0(t);if(!r||!e)return[];let n=await Ae.get("https://webapi.115.com/files",{params:{aid:1,cid:e,o:"user_ptime",asc:0,offset:0,show_dir:1,limit:115,code:"",scid:"",snap:0,natsort:1,record_open_time:1,source:"",format:"json"},headers:{Cookie:r,"User-Agent":x6e,Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5",Origin:"https://115.com","X-Requested-With":"XMLHttpRequest"},validateStatus:null});return Array.isArray(n.data?.data)?n.data.data:[]}async function N6e(t,e,r="",n=0){if(!e||n>5)return[];let s=await Gnr(t,e),i=[];for(let a of s){if(Number(a?.fc)===1){let o=R6e(a,r);o&&i.push(o);continue}if(Number(a?.fc)===0){let o=String(a?.cid||a?.fid||"").trim(),c=String(a?.n||a?.name||"").trim(),u=c?r?`${r}/${c}`:c:r;i.push(...await N6e(t,o,u,n+1))}}return i}async function Vnr(t,e){let r=await P0(t),n=String(e||"").trim();if(!r||!n)return[];let s=await Ae.get("https://webapi.115.com/files/search",{params:{search_value:n,type:4,offset:0,limit:20,date:"",aid:1,cid:0,pick_code:"",source:"",format:"json"},headers:{Cookie:r,"User-Agent":XV,Referer:"https://115.com/",Origin:"https://115.com",Accept:"application/json, text/plain, */*"},validateStatus:null});return Array.isArray(s.data?.data)?s.data.data:[]}async function znr(t,e){let r=await D6e(t,e);if(r.length>0)return r[0].vod_id;if(!e?.raw)return"";let n=e.raw;return String(n.file_id||n.delete_file_id||e.fileId||"").trim()?"":e.pickCode||ez(n)}function Knr(t){return t?.errcode===10008||t?.result?.some?.(e=>e?.errcode===10008)}function O6e(t){return(t?.state===!1||t?.errno)&&!Knr(t)}function P6e(t){return t?.message||t?.msg||t?.error_msg||t?.error||"115 \u79BB\u7EBF\u4EFB\u52A1\u63D0\u4EA4\u5931\u8D25"}function Ynr(t){return t?.server||t||null}async function D6e(t,e){if(!e?.raw)return[];let r=e.raw,n=String(r.file_id||r.delete_file_id||e.fileId||"").trim();if(n){let o=await N6e(t,n);if(Sc("\u79BB\u7EBF\u76EE\u5F55\u626B\u63CF",{cid:n,count:o.length,selected:o[0]?.vod_name||"",hasPickCode:!!o[0]?.vod_id}),o.length>0)return o}let s=String(r.name||e.name||"").replace(/\.[^.]+$/,"").trim(),i=await Vnr(t,s),a=i.map(o=>R6e(o)).filter(Boolean).sort((o,c)=>Number(c.vod_size||0)-Number(o.vod_size||0));return Sc("\u79BB\u7EBF\u6587\u4EF6\u641C\u7D22",{keyword:ZV(s,80),count:i.length,selected:a[0]?.vod_name||"",hasPickCode:!!a[0]?.vod_id}),a}async function k6e(t,e="GET",r=null,n=null){try{let s=await Ae({url:t,method:e,headers:r||void 0,data:n,validateStatus:null});return{data:s.data,cookie:jnr(s.headers?.["set-cookie"]),headers:s.headers||{},status:s.status}}catch(s){throw s.response?s.response.data:s}}async function L6e(t,e){let r=await P0(t),n=String(e||"").trim();if(!r)return{state:!1,message:"115 Cookie \u7F3A\u5931"};if(!n)return{state:!1,message:"\u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};let s=new URLSearchParams({"url[0]":n,wp_save_path:"0",appVer:b6e});Sc("\u63D0\u4EA4\u79BB\u7EBF\u4EFB\u52A1",{type:n.split(":")[0],length:n.length});let i=await k6e("https://115.com/web/lixian/?ct=lixian&ac=add_task_urls","POST",I6e(r),s.toString()),a=i.data||{};return Sc("\u63D0\u4EA4\u54CD\u5E94",{status:i.status,state:a?.state,message:a?.message||a?.msg||"",preview:ZV(typeof a=="string"?a:JSON.stringify(a))}),a}async function B6e(t){let e=await P0(t);if(!e)return[];let r=await Ae.get("https://115.com/web/lixian/?ct=lixian&ac=task_lists",{params:{page:1,limit:30,appVer:b6e},headers:I6e(e),validateStatus:null}),n=Qnr(r.data);return Sc("\u4EFB\u52A1\u5217\u8868",{status:r.status,count:n.length}),n}async function Jnr(t,e,r={},n={}){let s=Number(n.maxWaitMs||E6e),i=Number(n.intervalMs||_6e),a=Date.now(),o=null;for(;Date.now()-a<=s;){let c=await B6e(t),u=c.find(l=>T6e(l,e,r));if(u){o=u;let l=await znr(t,u)||u.pickCode||ez(u.raw);if(Sc("\u8F6E\u8BE2\u4EFB\u52A1",{name:u.name,status:u.status,progress:u.progress,hasPickCode:!!l}),l)return{pickCode:l,task:u}}else Sc("\u672A\u5339\u914D\u5F53\u524D\u79BB\u7EBF\u4EFB\u52A1",{count:c.length});await w6e(i)}return{pickCode:"",task:o}}async function g6e(t,e){let r=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 \u79BB\u7EBF\u94FE\u63A5\u4E3A\u7A7A"};try{let n=await L6e(t,r);if(O6e(n))return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u5931\u8D25: ${P6e(n)}`};let{pickCode:s,task:i}=await Jnr(t,r,n);return s?(Sc("\u83B7\u53D6\u5230 pickCode\uFF0C\u5F00\u59CB\u89E3\u6790\u76F4\u94FE",{pickCode:s}),await cL(t,s)):{parse:0,url:"",msg:`115 \u79BB\u7EBF\u4EFB\u52A1\u5DF2\u63D0\u4EA4\uFF0C\u4F46\u6682\u672A\u5B8C\u6210: ${i?`\u72B6\u6001 ${i.status}, \u8FDB\u5EA6 ${i.progress||0}%`:"\u672A\u627E\u5230\u4EFB\u52A1"}`}}catch(n){return{parse:0,url:"",msg:`115 \u79BB\u7EBF\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function Xnr(t,e,r={}){let n=String(e||"").trim();if(!n)return[];let s=await L6e(t,n);if(O6e(s))return Sc("\u79BB\u7EBF\u8BE6\u60C5\u63D0\u4EA4\u5931\u8D25",{message:P6e(s)}),[];let i=Number(r.maxWaitMs||E6e),a=Number(r.intervalMs||_6e),o=Date.now();for(;Date.now()-o<=i;){let c=await B6e(t),u=c.find(l=>T6e(l,n,s));if(u){let l=await D6e(t,u);if(l.length>0)return l;Sc("\u79BB\u7EBF\u8BE6\u60C5\u6682\u672A\u53D1\u73B0\u5A92\u4F53\u6587\u4EF6",{name:u.name,status:u.status,progress:u.progress})}else Sc("\u79BB\u7EBF\u8BE6\u60C5\u672A\u5339\u914D\u5F53\u524D\u4EFB\u52A1",{count:c.length});await w6e(a)}return[]}var A6e=new Uint8Array([240,229,105,174,191,220,191,138,26,69,232,190,125,166,115,184,222,143,231,196,69,218,134,196,155,100,139,20,106,180,241,170,56,1,53,158,38,105,44,134,0,107,79,165,54,52,98,166,42,150,104,24,242,74,253,189,107,151,143,77,143,137,19,183,108,142,147,237,14,13,72,62,215,47,136,216,254,254,126,134,80,149,79,209,235,131,38,52,219,102,123,156,126,157,122,129,50,234,182,51,222,58,169,89,52,102,59,170,186,129,96,72,185,213,129,156,248,108,132,119,255,84,120,38,95,190,232,30,54,159,52,128,92,69,44,155,118,213,27,143,204,195,184,245]),M6e=0x8686980c0f5a24c4b9d43020cd2c22703ff3f450756529058b1cf88f09b8602136477198a6e2683149659bd122c33592fdb5ad47944ad1ea4d36c6b172aad6338c3bb6ac6227502d010993ac967d1aef00f0c8e038de2e4d3bc2ec368af2e9f10a6f1eda4f7262f136420c07c331b871bf139f74f3010e3c4fe57df3afb71683n,W6e=0x10001n;function $6e(t,e){e==null&&(e=Math.ceil(t.toString(16).length/2));let r=new Uint8Array(e);for(let n=e-1;n>=0;n--)r[n]=Number(t&0xffn),t>>=8n;return r}function F6e(t){let e=0n;for(let r of t)e=e<<8n|BigInt(r);return e}function*tz(t,e,r=1){for(let n=t+r;n>1n,t=t*t%r;return n}function tsr(t){(typeof t=="string"||t instanceof String)&&(t=new TextEncoder().encode(t));let e=new Uint8Array(16+t.length);e.set(oL(oL(t,new Uint8Array([141,165,165,141])).reverse(),new Uint8Array([120,6,173,76,51,134,93,24,76,1,63,70])),16);let r=new Uint8Array(Math.ceil(e.length/117)*128),n=0;for(let[s,i]of tz(0,e.length,117))r.set($6e(U6e(esr(e.subarray(s,i)),W6e,M6e),128),n,n+=128);return Buffer.from(r).toString("base64")}function rsr(t){let e=new Uint8Array(Buffer.from(t,"base64")),r=[];for(let[i,a]of tz(0,e.length,128)){let o=U6e(F6e(e.subarray(i,a)),W6e,M6e),c=$6e(o);r.push(...c.subarray(c.indexOf(0)+1))}r=new Uint8Array(r);let n=Znr(r.subarray(0,16),12),s=oL(r.subarray(16),n).reverse();return new TextDecoder("utf-8").decode(oL(s,new Uint8Array([141,165,165,141])))}function nsr(t){return`data=${encodeURIComponent(tsr(JSON.stringify(t)))}`}function ssr(t){if(typeof t=="string")try{let e=JSON.parse(t);return{encrypted:typeof e?.data=="string"?e.data:typeof e?.data?.data=="string"?e.data.data:"",payload:e}}catch{return{encrypted:t,payload:null}}return t&&typeof t=="object"?{encrypted:typeof t.data=="string"?t.data:typeof t.data?.data=="string"?t.data.data:"",payload:t}:{encrypted:"",payload:t}}function isr(t){let{encrypted:e,payload:r}=ssr(t);if(!e)return r||{};try{return JSON.parse(rsr(e))}catch(n){if(r&&typeof r=="object")return r;throw n}}function q6e(t){if(!t||typeof t!="object")return"";if(typeof t.url=="string"&&t.url)return t.url;if(t.url&&typeof t.url.url=="string"&&t.url.url)return t.url.url;if(t.data&&typeof t.data.url=="string"&&t.data.url)return t.data.url;for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=q6e(e);if(r)return r}return""}function j6e(t){if(!t||typeof t!="object")return"";for(let e of["msg","message","error"]){let r=t[e];if(typeof r=="string"&&r.trim())return r.trim()}for(let e of Object.values(t)){if(!e||typeof e!="object")continue;let r=j6e(e);if(r)return r}return""}async function H6e({cookie:t,apiUrl:e,payload:r,userAgent:n,requestReferer:s="",requestOrigin:i="",responseReferer:a=s}){let o=nsr(r),c={"Content-Type":"application/x-www-form-urlencoded","Content-Length":Buffer.byteLength(o),Cookie:t,"User-Agent":n};s&&(c.Referer=s),i&&(c.Origin=i);let u=await k6e(e,"POST",c,o),l=[t,u.cookie].filter(Boolean).join("; "),d=isr(u.data),f=q6e(d);if(!f){let p=j6e(d)||"\u672A\u53D1\u73B0\u4E0B\u8F7D\u94FE\u63A5";return Sc("\u76F4\u94FE\u54CD\u5E94\u65E0 URL",{api:e.includes("/share/")?"share":"own",message:p,decoded:JV(d)}),{parse:0,url:"",msg:`115 \u9650\u5236: ${p}`}}return{parse:0,url:f,header:{"User-Agent":n,...l?{Cookie:l}:{},...a?{Referer:a}:{}}}}async function cL(t,e){let r=await P0(t),n=String(e||"").trim();if(!r)return{parse:0,url:"",msg:"115 Cookie \u7F3A\u5931"};if(!n)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{return await H6e({cookie:r,apiUrl:`https://proapi.115.com/app/chrome/downurl?t=${Math.floor(Date.now()/1e3)}`,payload:{pickcode:n},userAgent:x6e,requestReferer:"https://115.com/",requestOrigin:"https://115.com",responseReferer:"https://115.com/"})}catch(s){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${s?.message||s}`}}}async function asr({shareCode:t,receiveCode:e,dirID:r=""}){let n=[],s=(a,o)=>a?`${a}/${o}`:o,i=async(a,o)=>{let c=o||"",u=await Ae.get("https://webapi.115.com/share/snap",{params:{share_code:t,receive_code:e,cid:a,limit:"9999",offset:"0"}});if(!u.data.data)return[];let l=u.data.data.list.filter(f=>f.fc===1),d=u.data.data.list.filter(f=>f.fc===0);for(let f of l)C6e(f.n)&&n.push({...f,shareCode:t,receiveCode:e,vod_group:c});for(let f of d)await i(f.cid,s(c,f.n))};return await i(r,""),n}async function Q6e(t,e=null){if(v6e(t)){let s=Ynr(e);if(s){let i=await Xnr(s,t,{maxWaitMs:12e3});if(i.length>0)return Os(await zV("115"),i)}return{from:await zV("115"),url:`115\u79BB\u7EBF\u89E3\u6790\u4E2D$${YV}${t}`}}let r=S6e(t);if(!r)return{};let n=await asr(r);return n=n.map(s=>({vod_id:[r.shareCode,r.receiveCode,s.fid].join("*"),vod_name:s.n,vod_size:s.s,vod_group:s.vod_group})),Os(await zV("115"),n)}async function G6e(t){let e=String(t.body.id||"").trim();if(!e)return{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};if(e.startsWith(YV)){let a=await g6e(t.server,e.slice(YV.length));return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(v6e(e)){let a=await g6e(t.server,e);return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:a}if(!e.includes("*"))return await cL(t.server,e);let r=await P0(t.server);if(!r)return{parse:0,url:"",msg:"\u8BF7\u5148\u5728\u914D\u7F6E\u4E2D\u586B\u5165115 Cookie"};let[n,s,i]=e.split("*");if(!n||!i)return{parse:0,url:"",msg:"115 \u5206\u4EAB\u53C2\u6570\u9519\u8BEF"};try{let a=await H6e({cookie:r,apiUrl:"http://pro.api.115.com/app/share/downurl",payload:{share_code:n,receive_code:s,file_id:i},userAgent:XV,responseReferer:"https://115.com/"});return a.url?{parse:0,url:["\u539F\u753B",a.url],header:a.header}:(a?.msg?.includes("\u767B\u5F55")&&typeof globalThis.messageToDart=="function"&&globalThis.messageToDart({action:"toast",opt:{message:"115\u76D8\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u524D\u5F80\u3010\u914D\u7F6E\u3011\u7AD9\u6E90\u8FDB\u884C\u914D\u7F6E",duration:5}}),a)}catch(a){return{parse:0,url:"",msg:`115 \u63A5\u53E3\u5F02\u5E38: ${a?.message||a}`}}}var K6e=Re(nC(),1),rz=Re(Jn(),1);var csr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,V6e=t=>{if(!t)return"";let e=t.replaceAll("\\","/").split("/").filter(Boolean);return e.length<=1?"":(e.pop(),e.join("/"))},uL="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",Y6e="netdisk;P2SP;2.2.91.136;android-android;",usr="netdisk",lsr="https://pan.baidu.com/",dsr="https://pan.baidu.com/disk/main",fsr=200,psr=t=>{try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}},J6e=(t="",e=dsr)=>({"User-Agent":uL,Referer:e,Accept:"application/json, text/plain, */*",...t?{Cookie:t}:{}}),z6e=(t="",e=uL)=>({"User-Agent":e,Referer:lsr,...t?{Cookie:t}:{}}),msr=()=>({"User-Agent":usr}),nz,sz={},iz={set(t,e){sz[t]=e,nz.push(`/baidu/${t}`,e)},get(t){return sz[t]}},ib=async t=>{nz=t.server.db,sz=await nz.getObjectDefault("/baidu",{})};var az=class{constructor(){this.regex=/https:\/\/pan\.baidu\.com\/s\/(.*)\?.*?pwd=([^&]+)/,this.type=["M3U8_AUTO_4K","M3U8_AUTO_2K","M3U8_AUTO_1080","M3U8_AUTO_720","M3U8_AUTO_480"],this.headers={"User-Agent":uL,Connection:"keep-alive",Accept:"application/json, text/plain, */*","Accept-Encoding":"gzip, deflate, br","Accept-Language":"zh,en-GB;q=0.9,en-US;q=0.8,en;q=0.7,zh-CN;q=0.6"},this.api="https://pan.baidu.com",this.link="",this.pwd="",this.surl="",this.shorturl="",this.shareid="",this.app_id=250528,this.view_mode=1,this.channel="chunlei",this.shareCookie=""}get cookie(){return iz.get("baidu_cookie")||""}async getSurl(e){this.link=e,this.shareCookie="";let r=this.regex.exec(e);r&&r[1]&&(this.surl=r[1],this.shorturl=this.surl.split("").slice(1).join(""),this.pwd=r[2]||"")}async getSign(){let e={...this.headers,cookie:this.shareCookie||this.cookie},r=await he.get(`${this.api}/share/tplconfig?surl=${this.surl}&fields=Espace_info,card_info,sign,timestamp&view_mode=${this.view_mode}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:e});if(!r.data||!r.data.data||!r.data.data.sign)throw new Error(`\u83B7\u53D6sign\u5931\u8D25: ${JSON.stringify(r.data)}`);return r.data.data.sign}async getRandsk(){let e=K6e.default.stringify({pwd:this.pwd,vcode:"",vcode_str:""}),r=(await he.post(`${this.api}/share/verify?surl=${this.shorturl}&pwd=${this.pwd}`,e,{headers:{"User-Agent":uL,Referer:this.link}})).data.randsk;if(!r)return"";let n="BDCLND="+r,s=this.cookie.replace(/BDCLND=[^;]*;?\s*/g,"");return s.length>0&&!s.endsWith(";")&&(s+="; "),this.shareCookie=s+n,r}async getShareList(){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let e=(await he.get(`${this.api}/share/list?web=5&app_id=${this.app_id}&desc=1&showempty=0&page=1&num=20&order=time&shorturl=${this.shorturl}&root=1&view_mode=${this.view_mode}&channel=${this.channel}&web=1&clienttype=0`,{headers:this.headers})).data;if(e.errno===0&&e.list.length>0){let r={},n=[],s=[];this.uk=e.uk,this.shareid=e.share_id,iz.set(`baidu_share_${this.surl}`,{surl:this.surl,pwd:this.pwd,link:this.link,uk:this.uk,shareid:this.shareid}),e.list.map(a=>{if((a.category==="6"||a.category===6)&&n.push(a.path),a.category==="1"||a.category===1){let o=a.server_filename||a.path.split("/").pop(),c=V6e(a.path);s.push({vod_name:o,vod_group:c,vod_id:[a.path.replaceAll("#","\0"),this.uk,this.shareid,a.fs_id||a.fsid,this.surl].join("*"),vod_size:a.size})}}),!(e.title in r)&&e.title!==void 0&&(r[e.title]=[]),s.length>=0&&e.title!==void 0&&(r[e.title]=[...s]);let i=await Promise.all(n.map(async a=>this.getSharepath(a)));if(i=i.filter(a=>a!=null).flat(),i.length>=0){let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));r[e.title].push(...a)}return r}}async getSharepath(e){await this.getRandsk(),this.headers.cookie=this.shareCookie||this.cookie;let r=(await he.get(`${this.api}/share/list?is_from_web=true&uk=${this.uk}&shareid=${this.shareid}&order=name&desc=0&showempty=0&view_mode=${this.view_mode}&web=1&page=1&num=100&dir=${encodeURIComponent(e)}&channel=${this.channel}&web=1&app_id=${this.app_id}`,{headers:this.headers})).data;if(r.errno===0&&r.list.length>0){let n=[],s=[];r.list.map(o=>{if((o.category==="6"||o.category===6)&&n.push(o.path),o.category==="1"||o.category===1){let c=o.server_filename||o.path.split("/").pop(),u=V6e(o.path);s.push({vod_name:c,vod_group:u,vod_id:[o.path.replaceAll("#","\0"),this.uk,this.shareid,o.fs_id||o.fsid,this.surl].join("*"),vod_size:o.size})}});let i=await Promise.all(n.map(async o=>this.getSharepath(o)));i=i.filter(o=>o!=null);let a=i.map(o=>(o.vod_name&&o.vod_name.includes("/")&&(o.vod_name=o.vod_name.split("/").pop()),o));return[...s,...a.flat()]}}sha1(e){return rz.default.SHA1(e).toString(rz.default.enc.Hex)}async getUid(){this.headers.cookie=this.shareCookie||this.cookie;let e=(await he.get("https://mbd.baidu.com/userx/v1/info/get?appname=baiduboxapp&fields=%20%20%20%20%20%20%20%20%5B%22bg_image%22,%22member%22,%22uid%22,%22avatar%22,%20%22avatar_member%22%5D&client&clientfrom&lang=zh-cn&tpl&ttt",{headers:this.headers})).data;if(e&&e.data&&e.data.fields&&e.data.fields.uid)return e.data.fields.uid;throw new Error("\u83B7\u53D6\u7528\u6237UID\u5931\u8D25: "+JSON.stringify(e))}async getShareUrl(e,r,n,s){e=e.replaceAll("\0","#");let i=await this.getSign(),a=[],o=Math.floor(new Date/1e3);return this.type.map(c=>{a.push({name:c.replace("M3U8_AUTO_",""),url:`${this.api}/share/streaming?channel=${this.channel}&uk=${r}&fid=${s}&sign=${i}×tamp=${o}&shareid=${n}&type=${c}&vip=0&jsToken&isplayer=1&check_blue=1&adToken`})}),a}async getAppShareUrl(e,r,n,s){e=e.replaceAll("\0","#");let i=await this.getRandsk(),a=await this.getUid(),o=Object.assign({},this.headers,{"User-Agent":Y6e}),c="73CED981D0F186D12BC18CAE1684FFD5|VSRCQTF6W",u=String(new Date().getTime()),l=this.sha1(this.sha1(this.cookie.match(/BDUSS=(.+?);/)[1])+a+"ebrcUYiuxaZv2XGu7KIYKxUrqfnOfpDF"+u+c+"11.30.2ae5821440fab5e1a61a025f014bd8972"),d=this.api+"/share/list?shareid="+n+"&uk="+r+"&fid="+s+"&sekey="+i+"&origin=dlna&devuid="+c+"&clienttype=1&channel=android_12_zhao_bd-netdisk_1024266h&version=11.30.2&time="+u+"&rand="+l,f=(await he.get(d,{headers:o})).data;if(f.errno===0&&f.list.length>0)return f.list[0].dlink}},Wn=new az;async function X6e(t,e){await ib(e),await Wn.getSurl(t);let r=await Wn.getShareList();if(!r)return null;let n=await csr("baidu"),s=[],i=[];return Object.keys(r).forEach(a=>{let o=Os(n,r[a]);o&&o.from&&o.url&&(s.push(o.from),i.push(o.url))}),s.length===0?null:{from:s.join("$$$"),url:i.join("$$$")}}async function Z6e(t,e="/",r=1){await ib(t);let n=Wn.cookie;if(!n)return{list:[],rawCount:0};let s=Number.parseInt(r,10)||1,i=String(e||"/"),a=(await he.get(`${Wn.api}/api/list?app_id=${Wn.app_id}&web=1&num=${fsr}&page=${s}&order=name&desc=0&dir=${encodeURIComponent(i)}`,{headers:J6e(n)})).data;if(Number(a?.errno)!==0)throw new Error(`\u767E\u5EA6\u5217\u76EE\u5F55\u5931\u8D25: ${a?.errmsg||a?.errno||"unknown error"}`);let o=Array.isArray(a?.list)?a.list:[];return{list:o,rawCount:o.length}}async function hsr(t,e){await ib(t);let r=Wn.cookie;if(!r)return null;let n=String(typeof e=="object"?e?.fileId||"":e||""),s=typeof e=="object"?String(e?.path||""):"";if(!n||!s)return null;let i=new URLSearchParams({type:"VideoURL",path:s,fs_id:n,devuid:"0%1",clienttype:"1",channel:"android_15_25010PN30C_bd-netdisk_1523a",nom3u8:"1",dlink:"1",media:"1",origin:"dlna"}),a=(await he.get(`${Wn.api}/api/mediainfo?${i.toString()}`,{headers:J6e(r),validateStatus:()=>!0})).data,o=String(a?.info?.dlink||a?.info?.[0]?.dlink||a?.dlink||"").trim();if(!o){let c=a?.errno,u=a?.errmsg||a?.show_msg||a?.message||"";throw new Error(`\u767E\u5EA6\u89C6\u9891\u76F4\u94FE\u83B7\u53D6\u5931\u8D25: ${u||c||"empty dlink"}`)}return{dlink:o,data:a}}var gsr={};async function lL(t,e){let r=String(t.body.id||"").split("*");if(await ib(t),r[0]==="own"){let c=String(r[1]||"").trim(),u=psr(r[2]||"");if(!Wn.cookie)return{parse:0,url:"",msg:"\u767E\u5EA6 Cookie \u7F3A\u5931"};if(!c&&!u)return{parse:0,url:"",msg:"\u767E\u5EA6\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let l=await hsr(t,{fileId:c,path:u});return l?.dlink?{parse:0,url:["\u539F\u753B",l.dlink],header:msr()}:{parse:0,url:"",msg:"\u767E\u5EA6\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(l){return{parse:0,url:"",msg:`\u767E\u5EA6\u63A5\u53E3\u5F02\u5E38: ${l?.message||l}`}}}let n=r[4],s=iz.get(`baidu_share_${n}`);s&&(Wn.surl=s.surl,Wn.pwd=s.pwd,Wn.link=s.link,Wn.uk=s.uk,Wn.shareid=s.shareid,Wn.shorturl=Wn.surl?Wn.surl.split("").slice(1).join(""):"",Wn.shareCookie="",Wn.pwd&&(await Wn.getRandsk(),Wn.headers.cookie=Wn.shareCookie||Wn.cookie));let i={...z6e("",Y6e)},a={...z6e()};try{let c=await Wn.getAppShareUrl(r[0],r[1],r[2],r[3]);if(c)return{parse:0,url:["\u539F\u753B",c],header:i}}catch(c){console.log("App\u7248API\u5931\u8D25\uFF0C\u964D\u7EA7\u5230Web\u7248API:",c.message)}let o=await Wn.getShareUrl(r[0],r[1],r[2],r[3]);if(o&&o.length>0){let c=[];return o.forEach(u=>{c.push(u.name,u.url)}),{parse:0,url:c,header:a}}throw new Error("\u83B7\u53D6\u64AD\u653E\u94FE\u63A5\u5931\u8D25")}async function dL(t,e){let r=t.params.site,n=t.params.what,s=t.params.shareId,i=t.params.fileId,a=t.params.flag;if(r!=="baidu")return e.status(400).send({error:"Invalid site"});let o=gsr[s];if(!o)return e.status(404).send({error:"Play URL not found in cache"});let c,u=o.headers;if(o.type==="app")c=o.url;else if(o.type==="web"){let l=o.urls.find(d=>d.name===a);if(!l)return e.status(404).send({error:"Quality not found"});c=l.url}else return e.status(500).send({error:"Invalid cache type"});return e.redirect(c)}var Tl=Re(Jn(),1);var Te=Gi;(function(t,e){let r=Gi,n=t();for(;;)try{if(parseInt(r(1692,"6m)Q"))/1*(-parseInt(r(482,"di2y"))/2)+-parseInt(r(878,"0D8d"))/3+-parseInt(r(1814,"s45X"))/4+parseInt(r(1858,"6m)Q"))/5+-parseInt(r(1036,"&4j("))/6+-parseInt(r(637,"%g5L"))/7*(parseInt(r(2041,"1IiW"))/8)+-parseInt(r(563,"J02["))/9*(-parseInt(r(1295,"]#Cr"))/10)===e)break;n.push(n.shift())}catch{n.push(n.shift())}})(pL,-485*-2885+-16*-105169+-529460*4);var fL,oz={},es={set(t,e){let r=Gi;oz[t]=e,fL&&fL[r(1878,"EWEh")](r(1469,"TYk6")+t,e)},get(t){return oz[t]}},ab=async t=>{let e=Gi;fL=t[e(1144,"OKeq")].db,oz=await fL[e(350,"oCn^")+e(318,"@)NM")](e(1805,"XIK8"),{})},Asr=async t=>{let e=Gi;return globalThis[e(1418,"EhkZ")]?await globalThis[e(806,"di2y")](t):t},cz=class{constructor(){let e=Gi,r={oAIoS:e(869,"LQMX")+e(619,"L$sR")+e(1263,"woD7")+e(1411,"di2y"),ldYle:e(746,"TYk6")+e(1279,"sBHZ")+e(917,"n(Tw"),HOkUz:e(309,"woD7"),bERZw:e(315,"5V(o")+e(1627,"nHvT")+e(922,"[zZc"),BClVE:e(933,"5V(o")+e(1796,"%g5L"),BRWul:e(899,"68p[")+e(1004,"NQR8")+e(1784,"Rf!$")+e(612,"1IiW")+e(1258,"XIK8")+e(1639,"Rf!$")+e(1212,"^04V")+e(1514,"LQMX")+e(1357,"TYk6")+e(493,"L$sR")+e(1919,"xwLD")+"6",rqbsV:e(1525,"OKeq"),LCTYA:e(1975,"METZ")+e(1866,"$FUM")+e(1570,"xwLD")+e(377,"wv7J"),OheQE:e(1360,"YsCI")+e(1117,"htl8"),SjHNU:e(1352,"&4j(")+e(919,"GiqO")+e(1636,"nHvT")+e(1909,"METZ")+e(2061,"woD7"),DUyhO:e(842,"0D8d")+e(2136,"a(V)")},n=r[e(2118,"a(V)")][e(1306,"nHvT")]("|"),s=-1*-3532+-4*-346+-4916;for(;;){switch(n[s++]){case"0":this[e(411,"EhkZ")]=r[e(1729,"METZ")];continue;case"1":this[e(2092,"68F4")]=/https:\/\/pan\.xunlei\.com\/s\/([^?#]+)(?:\?[^#]*pwd=([^&#]+))?/;continue;case"2":this[e(1529,"1IiW")]=r[e(1511,"^04V")];continue;case"3":this[e(402,"%g5L")]=r[e(1551,"YsCI")];continue;case"4":this[e(1426,"qInX")]=r[e(970,"&4j(")];continue;case"5":this[e(1765,"U6cg")+e(1552,"68F4")]="";continue;case"6":this[e(1458,"U6cg")]={"User-Agent":r[e(771,"5V(o")],Connection:r[e(523,"Rf!$")],Accept:r[e(1697,"wv7J")],"Accept-Encoding":r[e(1185,"NQR8")],"Accept-Language":r[e(1900,"h1&F")]};continue;case"7":this[e(1967,"5V(o")]="";continue;case"8":this[e(491,"a(V)")]="";continue;case"9":this[e(1613,"Rf!$")]="";continue;case"10":this[e(1739,"NQR8")]="";continue;case"11":this[e(732,"68F4")]="";continue;case"12":this[e(1870,"&4j(")]="";continue;case"13":this[e(2133,"TYk6")+"d"]=r[e(602,"U6cg")];continue;case"14":this[e(1165,"htl8")+e(456,"*uMz")]="";continue}break}}async[Te(739,"L$sR")](){let e=Te,r={sqBTW:function(n,s){return n>s},SgZqI:function(n,s){return n/s},teIcV:e(1543,"n(Tw")+e(617,"METZ"),YWWus:e(947,"t2$F")+"\u767B\u5F55",yDFvY:e(1082,"TYk6")+e(1683,"METZ")};if(this[e(594,"OKeq")])try{let n=JSON[e(1434,"1IiW")](Tl.default[e(1712,"nHvT")][e(1513,"EWEh")][e(1889,"n(Tw")](this[e(1420,"TYk6")][e(648,"[zZc")](".")[1])[e(343,"6m)Q")](Tl.default[e(354,"h1&F")][e(1145,"@)NM")]));r[e(937,"attV")](n[e(2043,"di2y")],Math[e(884,"TYk6")](r[e(1642,"jO!N")](Date[e(1713,"EWEh")](),-41*232+707+9805)))?console[e(1656,"1IiW")](r[e(1350,"XIK8")]):console[e(1810,"METZ")](r[e(1764,"*uMz")])}catch{console[e(349,"sBHZ")](r[e(1098,"$5xR")])}}get[Te(1092,"EWEh")](){let e=Te,r={nkyhX:e(1502,"^04V")},n=es[e(1272,"@)NM")](r[e(1528,"$FUM")]);return!n&&(n=this[e(2119,"veG&")](),es[e(802,"@)NM")](r[e(1580,"jO!N")],n)),n}get[Te(408,"XIK8")](){let e=Te,r={vqVKW:e(1045,"3*7L")+"me"};return es[e(503,"xwLD")](r[e(1633,"$FUM")])}get[Te(783,"OKeq")](){let e=Te,r={vXGvS:e(424,"nHvT")+"rd"};return es[e(1086,"sBHZ")](r[e(1067,"woD7")])}get[Te(1019,"YsCI")](){let e=Te,r={lFysF:e(383,"veG&")};return es[e(352,"YsCI")](r[e(1589,"$5xR")])}get[Te(1818,"oCn^")+Te(1546,"OKeq")](){let e=Te,r={cRsxe:e(589,"NQR8")+e(582,"68p[")};return es[e(552,"a(V)")](r[e(1243,"NQR8")])}get[Te(609,"jO!N")](){let e=Te,r={dyQQD:e(827,"*uMz")+"d"};return es[e(352,"YsCI")](r[e(1285,"EWEh")])}[Te(400,"veG&")](e){return new Promise(r=>setTimeout(r,e))}[Te(1300,"jO!N")](e){let r=Te;return Tl.default[r(323,"0D8d")](e)[r(485,"nHvT")]()}[Te(1852,"NQR8")](e){let r=Te;return Tl.default[r(839,"J02[")](e)[r(861,"L$sR")]()}[Te(415,"$FUM")](){let e=Te,r={HxsFC:function(n,s){return n|s},cqcQD:function(n,s){return n*s},jjUKz:function(n,s){return n===s},aJbJp:function(n,s){return n|s},NLXpN:function(n,s){return n&s},WxhTC:e(2120,"nHvT")+e(1184,"sBHZ")+e(1675,"YsCI")+"xx"};return r[e(1653,"1IiW")][e(428,"$5xR")](/[xy]/g,function(n){let s=e,i=r[s(1080,"u38W")](r[s(825,"CdtI")](Math[s(436,"U6cg")](),-173+1*4946+-71*67),-1320+1*8972+-1*7652);return(r[s(755,"68p[")](n,"x")?i:r[s(1726,"]#Cr")](r[s(1867,"]#Cr")](i,4484+-4481*1),-997*-3+6943+-9926))[s(1038,"di2y")](-3961*-2+-7504+-386)})}[Te(1365,"t2$F")+Te(2115,"3*7L")](e){let r=Te,n={unGgu:function(s,i){return s+i},xlOMv:function(s,i){return s+i},iLTQV:r(1669,"$5xR")+r(692,"3*7L")+r(1696,"METZ"),GFkyo:r(2036,"h1&F")+r(1792,"qInX")+r(1871,"0D8d")+"21"};return this[r(1274,"]#Cr")](this[r(1673,"%g5L")](n[r(1686,"EWEh")](n[r(476,"a(V)")](e,n[r(1236,"GiqO")]),n[r(758,"qInX")])))}[Te(1043,"L$sR")+Te(974,"sBHZ")](e){let r=Te,n={eWXEq:function(a,o){return a+o},yKZpQ:function(a,o){return a+o},OOyUJ:function(a,o){return a+o},MoIyu:function(a,o){return a+o},xjncb:r(555,"wv7J")+r(1560,"^04V"),dWTeP:r(1482,"wv7J")+r(1425,"veG&")+r(928,"#Vf$")+r(1283,"jO!N"),kHJrO:r(1293,"sBHZ")+r(846,"veG&"),KZrUq:r(1667,"wv7J")+r(1003,"METZ")+r(872,"nHvT"),MnRSt:r(772,"a(V)")+r(1677,"&4j(")+r(1242,"TYk6")+r(949,"3*7L"),tXuyo:r(1609,"YsCI")+"1",VKhFE:r(1579,"U6cg")+r(659,"NQR8"),IsxcY:r(1736,"wv7J")+r(611,"Rf!$")+r(1031,"attV")+r(1625,"68F4")+r(1233,"wv7J"),hbNLi:r(1780,"xwLD")+r(2142,"htl8")+r(531,"xwLD"),fInOX:r(2023,"h1&F")+r(492,"METZ"),zzNSc:r(1926,"68F4")+r(382,"EWEh"),sUCiS:r(1643,"a(V)")+r(1153,"Rf!$")+r(641,"XIK8")+r(433,"nHvT"),vwGxo:r(517,"METZ")+r(723,"di2y")},s;return s=n[r(2150,"6m)Q")](n[r(1171,"METZ")](n[r(1503,"68F4")](n[r(2082,"wv7J")],n[r(1421,"TYk6")]),e),n[r(395,"TYk6")]),[n[r(583,"XIK8")],n[r(1767,"a(V)")],n[r(649,"1IiW")],n[r(813,"U6cg")],n[r(1189,"qInX")],n[r(757,"wv7J")],n[r(550,"5V(o")],n[r(421,"68F4")],n[r(1728,"]#Cr")],n[r(631,"METZ")]][r(358,"NQR8")](a=>{let o=r;s=this[o(1300,"jO!N")](n[o(1903,"qInX")](s,a))}),s}async[Te(700,"U6cg")](e){let r=Te,n={EsZKt:function(i,a){return i(a)}};this[r(1344,"$FUM")]=e;let s=this[r(807,"YsCI")][r(1978,"woD7")](e);s&&s[30*-46+-4597*1+5978]&&(this[r(797,"YsCI")]=s[1],this[r(2072,"htl8")]=n[r(1880,"NQR8")](decodeURIComponent,s[-17*227+-7354+11215]||""))}async[Te(1857,"@)NM")](){let e=Te,r={KYNag:e(464,"h1&F"),pqYFF:e(1129,"^04V"),DkShf:e(1888,"nHvT")+"7",SyVos:e(569,"3*7L")+e(1939,"1IiW")+e(1457,"$FUM")+"f1",DRrFK:e(344,"6m)Q")+e(1644,"woD7")+e(606,"t2$F")+e(967,"$FUM"),kVcPz:e(1240,"[zZc"),BZdtL:e(1561,"xwLD")+e(1447,"U6cg")+e(1703,"]#Cr")+e(1136,"t2$F")+e(1324,"n(Tw")+e(1971,"1IiW")+e(1679,"$FUM")+"c",FQgER:e(1794,"u38W"),tgZiF:e(1040,"h1&F"),BQcxz:e(1401,"woD7")+e(511,"qInX"),juuAq:e(1051,"TYk6"),weTll:e(979,"#Vf$"),lnpqk:e(1975,"METZ")+e(351,"*uMz"),HxsFe:function(a,o){return a===o},AGpYU:e(2047,"nHvT")},n=JSON[e(1548,"CdtI")]({protocolVersion:r[e(1782,"qInX")],sequenceNo:r[e(1167,"%g5L")],platformVersion:"10",isCompressed:"0",appid:"40",clientVersion:r[e(1853,"*uMz")],peerID:r[e(2110,"68F4")],appName:r[e(907,"di2y")],sdkVersion:r[e(1504,"s45X")],devicesign:r[e(670,"sBHZ")],netWorkType:"2G",providerName:r[e(767,"YsCI")],deviceModel:r[e(547,"3*7L")],deviceName:r[e(1075,"J02[")],OSVersion:"12",creditkey:"",hl:r[e(2057,"%g5L")],userName:this[e(334,"nHvT")],passWord:this[e(1414,"METZ")],verifyKey:"",verifyCode:"",isMd5Pwd:"0"}),s={method:r[e(1604,"3*7L")],url:this[e(1476,"oCn^")]+(e(1617,"t2$F")+e(1001,"s45X")+e(1385,"s45X")),headers:{"Content-Type":r[e(1180,"nHvT")]},data:n},i=await Ae[e(525,"s45X")](s);if(r[e(1564,"di2y")](i[e(472,"]#Cr")],-2105*-1+1*-784+59*-19))return console[e(2031,"$5xR")](r[e(2088,"XIK8")]),i[e(522,"@)NM")][e(1628,"J02[")]}async[Te(1787,"CdtI")+Te(1445,"Rf!$")](){let e=Te,r={lbpJJ:e(2012,"&4j(")+e(731,"u38W")+e(1740,"EhkZ"),HKuOV:e(1102,"woD7"),fttuB:e(480,"METZ")+e(1623,"5V(o")+e(1577,"XIK8")+e(1230,"nHvT")+e(823,"veG&")+e(2049,"u38W")+e(1211,"n(Tw")+e(509,"s45X")+e(1979,"L$sR")+e(805,"h1&F")+e(1255,"t2$F")+"6",PrYZl:e(1848,"0D8d")+e(2027,"J02["),WKiZg:function(a,o){return a===o}},n=JSON[e(898,"veG&")]({client_id:this[e(1952,"]#Cr")+"d"],action:r[e(2117,"n(Tw")],device_id:this[e(2138,"$FUM")],captcha_token:"",meta:{phone_number:e(518,"U6cg")+this[e(409,"METZ")]}}),s={method:r[e(921,"di2y")],url:this[e(1286,"n(Tw")]+(e(467,"t2$F")+e(990,"GiqO")+"it"),headers:{"User-Agent":r[e(1097,"htl8")],"Content-Type":r[e(446,"oCn^")]},data:n},i=await Ae[e(1574,"#Vf$")](s);if(r[e(647,"h1&F")](i[e(520,"0D8d")],1599*1+-6187+4788))return i[e(327,"CdtI")][e(1497,"1IiW")+e(1671,"n(Tw")]}async[Te(1827,"TYk6")+Te(796,"3*7L")](){let e=Te,r={YnZZu:e(438,"NQR8"),yWkJo:function(o,c){return o===c},FITcL:function(o,c){return o===c},jaqtU:e(1678,"L$sR"),OXxLf:e(701,"u38W"),zgweA:e(399,"6m)Q"),mlfjX:e(848,"Rf!$"),rsNqj:e(886,"J02[")+e(1989,"@)NM")+e(1215,"XIK8")+e(1530,"J02[")+e(2091,"#Vf$")+e(2014,"di2y")+e(626,"EhkZ")+e(2037,"n(Tw")+e(2059,"s45X")+e(777,"attV")+e(329,"[zZc")+e(1887,"s45X")+e(2148,"%g5L")+e(1355,"sBHZ")+e(675,"3*7L")+"6",bjTcl:e(798,"EhkZ")+e(346,"$5xR"),pRDtg:function(o,c){return o===c},ykfqu:e(429,"[zZc")};if(console[e(1997,"u38W")](r[e(546,"t2$F")]),r[e(845,"woD7")](this[e(521,"U6cg")],"")||r[e(320,"EWEh")](this[e(505,"qInX")],void 0)){let o=this[e(2119,"veG&")]();es[e(1875,"5V(o")](r[e(2126,"woD7")],o)}let n=await this[e(1518,"L$sR")+e(1297,"U6cg")](),s=JSON[e(1071,"LQMX")]({phone_number:e(1188,"EWEh")+this[e(331,"$FUM")],target:r[e(545,"woD7")],usage:r[e(780,"h1&F")],client_id:this[e(1378,"u38W")+"d"]}),i={method:r[e(1938,"nHvT")],url:this[e(572,"u38W")]+(e(1557,"n(Tw")+e(306,"s45X")),headers:{"User-Agent":r[e(1576,"h1&F")],"Content-Type":r[e(980,"NQR8")],"x-captcha-token":n,"x-client-id":this[e(1882,"1IiW")+"d"],"x-device-id":this[e(1248,"GiqO")]},data:s},a=await Ae[e(1273,"a(V)")](i)[e(2125,"s45X")](o=>o[e(1777,"h1&F")]);r[e(489,"XIK8")](a[e(1865,"@)NM")],7459*1+625+73*-108)&&(console[e(2031,"$5xR")](r[e(481,"L$sR")]),this[e(1704,"68p[")+e(1066,"68F4")]=a[e(1441,"YsCI")][e(663,"attV")+e(803,"3*7L")])}async[Te(2068,"$FUM")](e){let r=Te,n={shoWm:r(1610,"XIK8"),MhuJE:r(2130,"OKeq")+r(673,"*uMz")+r(877,"oCn^")+r(1719,"Rf!$")+r(1024,"XIK8")+r(1222,"#Vf$")+r(1990,"h1&F")+r(1977,"di2y")+r(1053,"veG&")+r(1345,"jO!N")+r(1329,"0D8d")+r(1325,"jO!N")+r(1218,"LQMX")+r(1331,"TYk6")+r(931,"68F4")+"6",uBdsx:r(1364,"5V(o")+r(963,"@)NM"),arOQt:function(s,i){return s===i}};if(e){let s=JSON[r(696,"#Vf$")]({verification_code:e,verification_id:this[r(1214,"t2$F")+r(986,"OKeq")],client_id:this[r(410,"U6cg")+"d"]}),i={method:n[r(1044,"t2$F")],url:this[r(1286,"n(Tw")]+(r(896,"htl8")+r(1148,"xwLD")+r(1072,"@)NM")),headers:{"user-agent":n[r(1556,"attV")],"content-type":n[r(1986,"xwLD")],"x-client-id":this[r(1884,"GiqO")+"d"],"x-device-id":this[r(674,"n(Tw")]},data:s},a=await Ae[r(1090,"woD7")](i)[r(1532,"0D8d")](o=>o[r(1862,"t2$F")]);if(n[r(1526,"n(Tw")](a[r(1200,"J02[")],-2039*-1+-4163+4*581)){let o=a[r(484,"GiqO")][r(1151,"J02[")+r(483,"n(Tw")];await this[r(1366,"&4j(")+"n"](e,o)}}}async[Te(1793,"OKeq")+"n"](e,r){let n=Te,s={PHkaO:n(1953,"1IiW"),RCIiq:n(854,"attV")+n(623,"&4j(")+n(1407,"a(V)")+n(1687,"EhkZ")+n(883,"htl8")+n(1531,"68F4")+n(1990,"h1&F")+n(1486,"#Vf$")+n(321,"LQMX")+n(1377,"$FUM")+n(977,"^04V")+n(651,"u38W")+n(1741,"s45X")+n(1957,"htl8")+n(313,"%g5L")+"6",hOEXo:n(2007,"LQMX")+n(1768,"^04V"),LXcMw:function(u,l){return u===l},tTpnf:n(2060,"Rf!$"),eUDQW:n(876,"%g5L"),dHmgc:function(u,l){return u+l},EstUd:function(u,l){return u+l},ulcUx:n(2025,"h1&F")+"d",uuYAR:n(910,"attV")+n(596,"t2$F"),JkrdO:function(u,l){return u+l},wHlib:n(1934,"U6cg")},i=await this[n(1632,"68F4")+n(662,"GiqO")](),a=JSON[n(968,"1IiW")]({username:n(2050,"t2$F")+this[n(1192,"jO!N")],verification_code:e,verification_token:r,client_id:this[n(2133,"TYk6")+"d"]}),o={method:s[n(488,"qInX")],url:this[n(337,"LQMX")]+(n(1754,"@)NM")+n(1424,"68p[")),headers:{"User-Agent":s[n(625,"^04V")],"Content-Type":s[n(741,"68F4")],"x-captcha-token":i,"x-client-id":this[n(1970,"XIK8")+"d"],"x-device-model":"PC","x-device-id":this[n(455,"]#Cr")]},data:a},c=await Ae[n(680,"6m)Q")](o)[n(475,"METZ")](u=>u[n(1412,"jO!N")]);s[n(1220,"*uMz")](c[n(1507,"U6cg")],-2*-310+11*547+-6437)?(console[n(1340,"NQR8")](s[n(584,"veG&")]),es[n(1456,"EWEh")](s[n(1303,"GiqO")],s[n(708,"t2$F")](s[n(1288,"1IiW")](c[n(998,"[zZc")][n(653,"wv7J")]," "),c[n(1175,"Rf!$")][n(430,"oCn^")+"en"])),es[n(1446,"wv7J")](s[n(551,"h1&F")],c[n(2104,"LQMX")][n(526,"wv7J")]),es[n(1611,"t2$F")](s[n(1459,"wv7J")],c[n(373,"U6cg")][n(360,"Rf!$")+n(404,"L$sR")])):console[n(590,"di2y")](s[n(865,"xwLD")](s[n(810,"*uMz")],c[n(643,"]#Cr")]))}async[Te(1174,"U6cg")+Te(912,"sBHZ")](){let e=Te,r={vJkpz:e(1972,"NQR8")+e(1648,"di2y"),oFmIL:e(1770,"68p["),ysxiA:e(1077,"XIK8")+e(575,"[zZc")+e(904,"qInX")+e(1701,"u38W")+e(1149,"5V(o")+e(1654,"CdtI")+e(2029,"GiqO")+e(1672,"NQR8")+e(1461,"EWEh")+e(1228,"jO!N")+e(1999,"#Vf$")+"6",ivpik:e(1694,"1IiW")+e(398,"L$sR"),EPHZD:function(a,o){return a===o}},n=JSON[e(1363,"attV")]({client_id:this[e(1964,"NQR8")+"d"],action:r[e(1922,"EhkZ")],device_id:this[e(364,"h1&F")],captcha_token:"",meta:{phone_number:e(580,"$5xR")+this[e(1996,"wv7J")]}}),s={method:r[e(819,"wv7J")],url:this[e(401,"U6cg")]+(e(1663,"J02[")+e(1079,"YsCI")+"it"),headers:{"User-Agent":r[e(381,"$FUM")],"Content-Type":r[e(1963,"EWEh")]},data:n},i=await Ae[e(1205,"GiqO")](s);if(r[e(707,"jO!N")](i[e(1305,"n(Tw")],200))return i[e(1084,"htl8")][e(2127,"di2y")+e(1091,"J02[")]}async[Te(620,"attV")](){let e=Te,r={semlw:function(n,s){return n===s},xsJbL:e(774,"wv7J"),guAkM:e(2010,"u38W")+e(1018,"J02[")+e(1103,"$5xR")+e(1537,"jO!N")+e(1105,"]#Cr")+e(1152,"oCn^")+e(2001,"TYk6")+e(1083,"nHvT")+e(362,"htl8")+e(1618,"3*7L")+e(1932,"&4j(")+"6",ReSGp:e(1896,"]#Cr")+e(2145,"sBHZ"),BBHKG:e(871,"U6cg"),PFFro:e(383,"veG&"),YNWBL:function(n,s){return n+s},BkLHk:e(452,"veG&")+"d",iHmGa:function(n,s){return n>s},rbemP:function(n,s){return n/s},nuSZN:e(669,"h1&F"),rutpw:e(1143,"woD7")};if(r[e(638,"NQR8")](this[e(1223,"%g5L")],void 0)||r[e(751,"Rf!$")](this[e(750,"]#Cr")],"")){let n=await this[e(1898,"wv7J")+e(1828,"attV")](),s=JSON[e(413,"h1&F")]({username:e(2050,"t2$F")+this[e(1372,"6m)Q")],password:this[e(507,"$5xR")],client_id:this[e(412,"^04V")+"d"]}),i={method:r[e(759,"a(V)")],url:this[e(337,"LQMX")]+(e(923,"]#Cr")+e(925,"%g5L")),headers:{"User-Agent":r[e(1307,"nHvT")],"Content-Type":r[e(833,"L$sR")],"accept-language":r[e(1170,"TYk6")],"x-captcha-token":n,"x-client-id":this[e(553,"3*7L")+"d"],"x-device-id":this[e(447,"#Vf$")]},data:s},a=await Ae[e(629,"3*7L")](i)[e(1892,"&4j(")](o=>o[e(1050,"@)NM")]);r[e(638,"NQR8")](a[e(1823,"xwLD")],-2624+1*2824)&&(es[e(728,"Rf!$")](r[e(866,"68F4")],r[e(1981,"GiqO")](r[e(1981,"GiqO")](a[e(998,"[zZc")][e(916,"sBHZ")]," "),a[e(930,"s45X")][e(1157,"^04V")+"en"])),es[e(1592,"CdtI")](r[e(2017,"LQMX")],a[e(1766,"t2$F")][e(1544,"6m)Q")])),await this[e(1894,"CdtI")+"a"]()}else{let n=JSON[e(459,"Rf!$")](Tl.default[e(599,"*uMz")][e(756,"Rf!$")][e(527,"u38W")](this[e(939,"LQMX")][e(460,"htl8")](".")[1])[e(1275,"GiqO")](Tl.default[e(2064,"68p[")][e(1022,"LQMX")]));r[e(1698,"TYk6")](n[e(1651,"1IiW")],Math[e(1280,"CdtI")](r[e(2128,"LQMX")](Date[e(1124,"attV")](),-2*4496+-1903*1+11895)))?console[e(978,"jO!N")](r[e(2077,"NQR8")]):(console[e(775,"YsCI")](r[e(1732,"woD7")]),es[e(494,"EhkZ")](r[e(1321,"5V(o")],""),await this[e(1572,"di2y")]())}}async[Te(1108,"s45X")+"a"](){let e=Te,r={wwKwE:e(500,"L$sR")+e(363,"EhkZ")+e(1056,"u38W")+e(957,"attV")+e(1958,"attV"),zJneF:e(1845,"&4j(")+e(1948,"htl8"),etZPm:e(965,"EWEh"),mWxRW:e(1112,"68p[")+e(658,"veG&")+e(1603,"TYk6")+e(1631,"qInX"),qGfQD:e(1966,"3*7L")+e(656,"6m)Q"),nujel:e(774,"wv7J"),myXIq:e(601,"t2$F")+e(1641,"^04V")+e(1904,"5V(o")+e(779,"@)NM")+e(1025,"n(Tw")+"it",mtKnv:e(1417,"LQMX")+e(1915,"TYk6")+e(442,"woD7")+e(316,"@)NM")+e(1258,"XIK8")+e(1319,"n(Tw")+e(2079,"LQMX")+e(887,"di2y")+e(711,"CdtI")+e(2005,"EhkZ")+e(497,"METZ")+"6",hNUIF:e(1472,"TYk6")+e(1872,"XIK8"),yJDIv:e(1668,"$FUM")+e(800,"qInX")+e(1195,"htl8")+e(1315,"woD7")+e(1052,"3*7L"),gjgoy:e(379,"a(V)")+e(1125,"[zZc")+e(1430,"TYk6"),SwAtW:e(1899,"xwLD"),taRRu:e(1007,"xwLD")+e(1444,"sBHZ")+e(332,"oCn^")+e(1203,"CdtI")+e(1927,"6m)Q")+e(396,"h1&F")+e(1358,"L$sR"),HGPRp:function(u,l){return u(l)}},n=JSON[e(1548,"CdtI")]({client_id:this[e(1121,"Rf!$")+"d"],action:r[e(1998,"nHvT")],device_id:this[e(1014,"@)NM")],captcha_token:"",meta:{username:"",phone_number:this[e(1515,"TYk6")],email:"",package_name:r[e(390,"6m)Q")],client_version:r[e(1433,"t2$F")],captcha_sign:r[e(831,"TYk6")],timestamp:r[e(557,"$FUM")],user_id:this[e(676,"n(Tw")]}}),s={method:r[e(419,"68F4")],url:r[e(1494,"qInX")],headers:{"User-Agent":r[e(1382,"attV")],"Content-Type":r[e(2016,"68p[")],"accept-language":r[e(817,"s45X")],"content-type":r[e(915,"$FUM")]},data:n},i=await Ae[e(1294,"U6cg")](s)[e(1725,"a(V)")](u=>u[e(1841,"veG&")]),a=i[e(938,"woD7")][e(576,"jO!N")+e(1343,"GiqO")],o={method:r[e(720,"woD7")],url:r[e(1837,"htl8")],headers:{"User-Agent":r[e(1299,"YsCI")],"accept-language":r[e(1260,"xwLD")],authorization:this[e(1420,"TYk6")],"content-type":r[e(2102,"EWEh")],"x-captcha-token":a,"x-client-id":this[e(1057,"htl8")+"d"],"x-device-id":this[e(1131,"LQMX")]}},c=(await r[e(1995,"di2y")](Ae,o)[e(1954,"OKeq")](u=>u[e(1682,"XIK8")]))[e(930,"s45X")]}async[Te(1821,"t2$F")+Te(652,"TYk6")](e,r){let n=Te,s={qgJwj:n(308,"woD7")+n(431,"htl8"),vCtsz:n(1008,"qInX")+n(450,"GiqO")+n(2008,"wv7J")+"6a",gKdCI:n(999,"[zZc")+n(2020,"68p["),cHymB:n(776,"a(V)"),YFLlo:n(307,"htl8")+n(2116,"$5xR")+n(1101,"0D8d")+n(1037,"jO!N"),eQQNM:n(684,"J02[")+n(470,"jO!N"),AFOEU:n(975,"U6cg"),ascCo:n(1271,"68F4")+n(1708,"68p[")+n(1666,"5V(o")+n(785,"veG&")+n(1738,"68F4")+n(1854,"LQMX")+n(2029,"GiqO")+n(1309,"jO!N")+n(2073,"woD7")+n(1608,"$5xR")+n(2094,"^04V")+"6",YIxOF:n(512,"Rf!$")+n(801,"TYk6"),DMise:function(u,l){return u===l}},i=r+":"+e,a=JSON[n(1781,"]#Cr")]({client_id:s[n(1788,"CdtI")],action:i,device_id:s[n(1232,"htl8")],captcha_token:"",meta:{username:"",phone_number:"",email:"",package_name:s[n(1237,"L$sR")],client_version:s[n(510,"qInX")],captcha_sign:s[n(1622,"68F4")],timestamp:s[n(1500,"L$sR")],user_id:this[n(1058,"METZ")]}}),o={method:s[n(533,"jO!N")],url:this[n(2151,"Rf!$")]+(n(1506,"3*7L")+n(445,"METZ")+"it"),headers:{"User-Agent":s[n(1737,"xwLD")],"Content-Type":s[n(2030,"[zZc")]},data:a},c=await Ae[n(1141,"wv7J")](o);if(s[n(2071,"wv7J")](c[n(1901,"GiqO")],5188+-678*1+-4310))return c[n(1523,"XIK8")][n(1468,"u38W")+n(1481,"$FUM")]}async[Te(468,"68F4")+Te(1943,"oCn^")](e,r){let n=Te,s={iTFXY:n(567,"GiqO")+n(535,"qInX")+n(1566,"1IiW"),fZBuj:n(1844,"%g5L")+"7",uEapQ:n(2022,"@)NM")+n(1256,"sBHZ"),QBCTB:n(774,"wv7J"),FuzIn:n(1054,"veG&")+n(1718,"TYk6")+n(1409,"METZ")+n(1453,"a(V)")+n(1856,"NQR8")+n(1374,"di2y")+n(1807,"68p[")+n(644,"YsCI")+n(1442,"LQMX")+n(1216,"$5xR")+n(1467,"68F4")+n(600,"nHvT")+n(1565,"nHvT")+n(1410,"di2y")+n(1825,"jO!N")+n(836,"LQMX")+n(1563,"a(V)")+n(682,"qInX")+n(2095,"[zZc")+n(1249,"a(V)")+n(1081,"6m)Q")+n(1201,"Rf!$")+n(375,"EhkZ"),aFHvz:n(1779,"%g5L")+n(1138,"a(V)"),wILUS:function(l,d){return l===d}},i=r+":"+e,a=this[n(1048,"J02[")+n(1769,"di2y")](this[n(627,"oCn^")]),o=JSON[n(1363,"attV")]({client_id:this[n(1799,"veG&")+"d"],action:i,device_id:this[n(1620,"xwLD")],captcha_token:"",meta:{package_name:s[n(1231,"*uMz")],client_version:s[n(961,"@)NM")],captcha_sign:"1."+a,timestamp:s[n(1437,"YsCI")],user_id:this[n(969,"68p[")]}}),c={method:s[n(1498,"68p[")],url:this[n(1747,"1IiW")]+(n(1302,"xwLD")+n(1941,"OKeq")+"it"),headers:{"User-Agent":s[n(745,"%g5L")],"Content-Type":s[n(357,"68F4")]},data:o},u=await Ae[n(1574,"#Vf$")](c);if(s[n(632,"$FUM")](u[n(1961,"veG&")],4513*-2+-4717+1*13943))return u[n(1341,"J02[")][n(326,"woD7")+n(1702,"#Vf$")]}[Te(2069,"u38W")](){let e=Te,r={jqPjK:e(368,"attV")+e(1235,"woD7"),HMGnp:e(385,"woD7")+e(457,"]#Cr"),qFAOw:e(690,"$5xR")+e(454,"5V(o"),sekWS:e(1783,"@)NM")+e(1795,"6m)Q")+e(1074,"#Vf$"),DLVXn:e(1721,"#Vf$")+e(539,"GiqO"),LdWpt:e(1451,"J02[")+e(1834,"3*7L")+e(1883,"3*7L")+"0S",rYGYr:e(1011,"n(Tw")+e(1891,"YsCI")+e(945,"TYk6")+"rt",xCRsm:e(330,"s45X")+e(1049,"s45X"),LIVZs:e(843,"u38W")+e(1809,"1IiW"),bePxy:e(2028,"EWEh")+e(1380,"U6cg")+e(2040,"GiqO"),gdcoh:e(1893,"L$sR")+e(1415,"OKeq")+e(2149,"xwLD")+"Xs",khHNT:e(356,"attV")+e(487,"$FUM"),eyjsi:e(782,"nHvT"),pyrLm:e(1373,"nHvT")+e(1948,"htl8"),PEexz:e(1836,"METZ")+e(1602,"*uMz")+e(537,"]#Cr")+"6a",pudkT:function(o,c){return o+c},pxgwZ:function(o,c){return o+c},xWdyI:function(o,c){return o+c},XgdXe:e(893,"@)NM")+e(2113,"$FUM"),jjUvA:function(o,c){return ou},zzWOA:function(c,u){return c>=u}},n=r[e(880,"L$sR")],s=r[e(1060,"%g5L")],i=await this[e(1861,"oCn^")+e(1956,"*uMz")](n,s),a={method:r[e(960,"sBHZ")],url:this[e(2015,"s45X")]+(e(1270,"J02[")+e(1177,"&4j(")+e(733,"t2$F"))+this[e(895,"1IiW")]+(e(1976,"Rf!$")+"=")+this[e(2055,"jO!N")]+(e(1771,"J02[")+e(1257,"n(Tw")+e(1443,"TYk6")+e(1284,"a(V)")+e(1384,"GiqO")),headers:{"User-Agent":r[e(597,"68p[")],"accept-language":r[e(1264,"a(V)")],authorization:"","x-captcha-token":i,"x-client-id":r[e(610,"$FUM")],"x-device-id":r[e(2011,"xwLD")]}},o=await Ae[e(1450,"CdtI")](a);if(r[e(405,"OKeq")](o[e(1439,"$5xR")],-1224+-1*-8702+-7278*1)){let c={},u=[],l=[];this[e(1707,"@)NM")+e(2013,"EWEh")]=o[e(1172,"sBHZ")][e(2131,"1IiW")+e(681,"LQMX")],o[e(938,"woD7")][e(837,"GiqO")][e(432,"di2y")](f=>{let p=e;if(r[p(1949,"L$sR")](f[p(1987,"Rf!$")],""))u[p(556,"woD7")](f.id);else if(r[p(1076,"]#Cr")](f[p(867,"0D8d")+p(348,"J02[")],r[p(1722,"di2y")])){let m=/[#|'"\[\]&<>]/g,h=m[p(790,"EWEh")](f[p(458,"3*7L")])?f[p(370,"L$sR")][p(2033,"attV")](m,""):f[p(2051,"*uMz")];l[p(1662,"sBHZ")]({name:h,size:r[p(1594,"xwLD")](Number,f[p(461,"#Vf$")])||-1*-6975+-4672+-2303,fileId:f.id,share_id:this[p(2124,"jO!N")],parent_id:f[p(416,"]#Cr")],pass_code_token:r[p(1863,"LQMX")](encodeURIComponent,this[p(2131,"1IiW")+p(824,"di2y")]),pass_code:this[p(1600,"@)NM")]})}}),!r[e(1020,"OKeq")](o[e(1266,"3*7L")][e(697,"$5xR")],c)&&r[e(1016,"jO!N")](o[e(930,"s45X")][e(890,"LQMX")],void 0)&&(c[o[e(2152,"NQR8")][e(1126,"6m)Q")]]=[]),r[e(1351,"METZ")](l[e(1427,"CdtI")],-121*-35+-433*1+-1901*2)&&r[e(2054,"wv7J")](o[e(1085,"1IiW")][e(1210,"1IiW")],void 0)&&(c[o[e(1475,"^04V")][e(934,"NQR8")]]=[...l]);let d=await Promise[e(2034,"di2y")](u[e(355,"jO!N")](async f=>this[e(788,"attV")+e(1135,"wv7J")](f)));return d=d[e(1652,"#Vf$")](f=>f!=null)[e(1615,"EWEh")](),r[e(501,"wv7J")](d[e(2044,"68F4")],1014*6+1226*7+-14666*1)&&c[o[e(930,"s45X")][e(1527,"^04V")]][e(2096,"a(V)")](...d),c}}async[Te(504,"YsCI")+Te(498,"#Vf$")](e){let r=Te,n={Ccsiz:function(u,l){return u===l},BBSQo:r(1398,"5V(o"),YeuMy:function(u,l){return u(l)},eZaFy:function(u,l){return u(l)},mapEQ:r(821,"oCn^")+r(1812,"nHvT"),vDRKv:r(1802,"5V(o"),TXrID:r(463,"veG&"),tqHoN:function(u,l){return u(l)},OvlkC:r(1156,"L$sR")+r(1311,"sBHZ")+r(1784,"Rf!$")+r(1791,"qInX")+r(1149,"5V(o")+r(1122,"&4j(")+r(920,"68F4")+r(799,"1IiW")+r(1681,"LQMX")+r(1559,"s45X")+r(1069,"J02[")+"6",pjUja:r(466,"%g5L")+r(499,"%g5L")+r(1259,"a(V)")+r(1252,"Rf!$")+r(1646,"veG&"),tgKQb:r(1848,"0D8d")+r(1207,"htl8"),NjFhg:r(826,"XIK8")+r(1982,"attV"),nzrUW:r(1817,"oCn^")+r(709,"oCn^")+r(1484,"qInX")+"6a",mlwrE:function(u,l){return u===l}},s=n[r(829,"n(Tw")],i=n[r(754,"OKeq")],a=await this[r(540,"#Vf$")+r(634,"CdtI")](s,i),o={method:n[r(1115,"#Vf$")],url:this[r(1980,"a(V)")]+(r(705,"U6cg")+r(695,"u38W")+r(815,"u38W")+"=")+this[r(1709,"3*7L")]+(r(1762,"di2y")+"=")+e+(r(996,"3*7L")+r(1715,"XIK8"))+n[r(1289,"6m)Q")](encodeURIComponent,this[r(650,"LQMX")+r(479,"EhkZ")])+(r(1992,"%g5L")+r(725,"LQMX")+r(1693,"[zZc")+r(1369,"n(Tw")+r(2046,"^04V")),headers:{"User-Agent":n[r(1269,"[zZc")],"accept-language":n[r(1647,"YsCI")],authorization:"","content-type":n[r(2123,"n(Tw")],"x-captcha-token":a,"x-client-id":n[r(1268,"&4j(")],"x-device-id":n[r(950,"[zZc")]}},c=await Ae[r(1583,"sBHZ")](o);if(n[r(1234,"6m)Q")](c[r(984,"sBHZ")],1848+1*4500+-6148)){let u=[],l=[];c[r(1523,"XIK8")][r(1776,"TYk6")][r(1917,"0D8d")](f=>{let p=r;if(n[p(738,"s45X")](f[p(1987,"Rf!$")],""))u[p(613,"0D8d")](f.id);else if(n[p(593,"htl8")](f[p(1838,"wv7J")+p(704,"LQMX")],n[p(2139,"EhkZ")])){let m=/[#|'"\[\]&<>]/g,h=m[p(1724,"u38W")](f[p(1908,"h1&F")])?f[p(1785,"68p[")][p(1591,"OKeq")](m,""):f[p(1778,"wv7J")];l[p(1878,"EWEh")]({name:h,size:n[p(2070,"$FUM")](Number,f[p(532,"veG&")])||1387+169*42+-8485,fileId:f.id,share_id:this[p(1474,"nHvT")],parent_id:f[p(710,"CdtI")],pass_code_token:n[p(914,"METZ")](encodeURIComponent,this[p(1094,"U6cg")+p(2143,"%g5L")]),pass_code:this[p(1376,"*uMz")]})}});let d=await Promise[r(1933,"GiqO")](u[r(311,"$5xR")](async f=>this[r(982,"CdtI")+r(768,"*uMz")](f)));return d=d[r(624,"U6cg")](f=>f!=null),[...l,...d[r(1717,"oCn^")]()]}}async[Te(668,"L$sR")+"l"](e,r,n,s=""){let i=Te,a={JfHjC:function(p,m){return p!==m},JImLj:function(p,m){return p===m},yfZBJ:function(p,m){return p+m},JmFUH:i(1510,"OKeq")+i(1890,"@)NM")+i(1429,"#Vf$")+i(1150,"woD7")+i(1886,"woD7")+"l=",hqdxy:function(p,m){return p(m)},Zwapx:i(1575,"U6cg")+i(1806,"]#Cr"),iMZNK:i(1616,"]#Cr"),WoNrB:i(1247,"[zZc"),pwTaP:i(1619,"n(Tw")+i(654,"attV")+i(773,"#Vf$")+i(1789,"5V(o")+i(380,"METZ")+i(2049,"u38W")+i(1212,"^04V")+i(1988,"*uMz")+i(913,"0D8d")+i(897,"attV")+i(1120,"OKeq")+"6",uurcf:i(1465,"68F4")+i(655,"Rf!$")+i(971,"$FUM")+i(1649,"@)NM")+i(2053,"qInX"),tmGHs:i(952,"]#Cr"),NpfEt:i(894,"^04V")+i(1923,"u38W"),YHDCx:i(1002,"%g5L")+i(858,"*uMz"),MYzvP:i(1836,"METZ")+i(1730,"]#Cr")+i(1354,"^04V")+"6a"},o=a[i(1670,"s45X")],c=a[i(985,"]#Cr")],u=await this[i(595,"h1&F")+i(1629,"U6cg")](o,c),l=s||this[i(706,"LQMX")]||"",d={method:a[i(900,"U6cg")],url:this[i(1985,"L$sR")]+(i(2097,"EhkZ")+i(1403,"^04V")+i(889,"htl8")+i(367,"CdtI")+"=")+a[i(1522,"attV")](encodeURIComponent,n)+(i(929,"EhkZ")+i(1431,"6m)Q"))+e+i(781,"5V(o")+r+(i(1006,"L$sR")+"e=")+l,headers:{"User-Agent":a[i(1509,"oCn^")],"accept-language":a[i(853,"a(V)")],authorization:"","cache-control":a[i(581,"*uMz")],"content-type":a[i(371,"U6cg")],"x-captcha-token":u,"x-client-id":a[i(1829,"OKeq")],"x-device-id":a[i(927,"CdtI")]}},f=await Ae[i(1294,"U6cg")](d);if(a[i(1349,"5V(o")](f[i(1492,"nHvT")],4309*-1+-1*-5598+-99*11)){this[i(339,"$FUM")]="";let p=[];return f[i(1175,"Rf!$")][i(1391,"h1&F")][i(791,"3*7L")][i(1542,"&4j(")](m=>{let h=i;a[h(2122,"5V(o")](m[h(1936,"s45X")],null)&&(a[h(943,"s45X")](this[h(719,"GiqO")],"")&&(this[h(1292,"LQMX")]=new URL(m[h(1907,"$5xR")][h(1194,"L$sR")])[h(325,"nHvT")]),p[h(942,"NQR8")](m[h(2039,"YsCI")],a[h(1147,"6m)Q")](a[h(1034,"GiqO")],a[h(1790,"%g5L")](encodeURIComponent,m[h(605,"EWEh")][h(1568,"sBHZ")]))))}),p}return[]}async[Te(1026,"u38W")+"ta"](e){let r=Te,n={ywVmL:r(2003,"EhkZ")};if(e[r(1028,"%g5L")](n[r(1397,"s45X")]))return await this[r(1238,"@)NM")](e),await this[r(1132,"attV")+"st"]()}async[Te(1811,"0D8d")](e,r,n){let s=Te,i={mDdCo:s(1449,"wv7J")+s(1969,"qInX"),oQzbz:s(1802,"5V(o"),GSqbG:function(f,p){return f(p)},syPSw:s(1953,"1IiW"),HsZBk:s(1064,"GiqO")+s(844,"$5xR")+s(1666,"5V(o")+s(1849,"*uMz")+s(392,"wv7J")+s(1448,"^04V")+s(1596,"h1&F")+s(324,"$5xR")+s(1346,"XIK8")+s(2141,"^04V")+s(1069,"J02[")+"6",hJANV:s(660,"h1&F")+s(1659,"U6cg"),ZOxCN:s(513,"3*7L")+s(1179,"*uMz")+s(1061,"XIK8")+s(1637,"n(Tw")+s(2107,"YsCI"),GctvN:function(f,p){return f===p},sBLoO:s(2146,"XIK8"),RBMQM:s(1224,"h1&F")},a=i[s(808,"NQR8")],o=i[s(2052,"*uMz")],c=await this[s(1571,"XIK8")+s(2075,"n(Tw")](a,o),u=JSON[s(1208,"OKeq")]({parent_id:this[s(1480,"^04V")],share_id:r,pass_code_token:i[s(541,"$FUM")](decodeURIComponent,n),ancestor_ids:[],file_ids:[e],specify_parent_id:!0}),l={method:i[s(911,"0D8d")],url:this[s(2076,"#Vf$")]+(s(1688,"68F4")+s(1974,"TYk6")+"re"),headers:{"User-Agent":i[s(1027,"$5xR")],"Content-Type":i[s(678,"EhkZ")],"accept-language":i[s(2078,"wv7J")],authorization:this[s(1533,"n(Tw")],"x-captcha-token":c,"x-client-id":this[s(1916,"$FUM")+"d"],"x-device-id":this[s(1239,"3*7L")]},data:u},d=await Ae[s(478,"veG&")](l)[s(1213,"attV")](f=>f[s(664,"oCn^")]);return i[s(319,"OKeq")](d?.[s(1100,"#Vf$")],-58*10+3459+-2679)&&i[s(761,"htl8")](d?.[s(1441,"YsCI")]?.[s(508,"woD7")+"us"],"OK")?(console[s(1116,"]#Cr")](i[s(1438,"Rf!$")]),!0):(console[s(548,"#Vf$")](d?.[s(486,"&4j(")]?.[s(687,"L$sR")+"us"]||s(1030,"xwLD")+(d?.[s(592,"68p[")]||i[s(1851,"#Vf$")])),!1)}async[Te(2018,"GiqO")](e,r,n){let s=Te,i={NMxYc:function(a,o){return a!==o},KQYhk:function(a,o){return a!==o},hSypq:s(1689,"*uMz")+s(1973,"5V(o"),jqmeI:s(1843,"68p[")};if(await this[s(734,"YsCI")](),i[s(1842,"NQR8")](this[s(672,"EWEh")],"")&&i[s(2058,"TYk6")](this[s(579,"LQMX")],void 0)){if(!await this[s(1826,"a(V)")](e,r,n))throw new Error(i[s(2129,"sBHZ")])}else throw new Error(i[s(1063,"sBHZ")])}async[Te(1361,"u38W")](){let e=Te,r={hHlby:function(u,l){return u===l},xDJpk:e(1727,"h1&F")+e(1885,"J02["),sMGvd:e(1553,"METZ"),WdAOl:e(1924,"EWEh"),Bimzz:e(735,"xwLD")+e(1206,"qInX")+e(345,"h1&F")+e(1010,"nHvT")+e(1550,"xwLD")+e(1925,"XIK8")+e(1745,"htl8")+e(972,"s45X")+e(988,"s45X")+e(976,"&4j(")+e(849,"nHvT")+e(686,"sBHZ")+e(1386,"#Vf$")+e(407,"xwLD")+e(1519,"J02[")+e(1404,"jO!N")+e(1876,"u38W")+e(1154,"$5xR")+e(1800,"htl8")+e(764,"n(Tw")+e(2063,"J02[")+e(906,"&4j(")+e(1832,"s45X"),zjHNW:e(892,"6m)Q")+e(1471,"@)NM")+e(1296,"#Vf$")+e(992,"CdtI")+e(909,"EhkZ"),hHBzq:e(604,"L$sR")+e(1700,"3*7L")};(r[e(1334,"*uMz")](this[e(1420,"TYk6")],void 0)||r[e(1547,"a(V)")](this[e(1758,"jO!N")],""))&&await this[e(856,"[zZc")]();let n=r[e(1225,"5V(o")],s=r[e(1920,"xwLD")],i=await this[e(1405,"t2$F")+e(1945,"nHvT")](n,s),a=this[e(1389,"n(Tw")]+(e(1383,"GiqO")+e(1419,"NQR8")+e(538,"^04V")+e(795,"n(Tw")+e(1322,"woD7")+e(1733,"$5xR")+e(388,"OKeq")+e(1881,"YsCI")+e(1624,"s45X")+e(811,"%g5L")+e(763,"#Vf$")+e(2045,"3*7L")+e(635,"wv7J")+e(1750,"68F4")+e(1710,"%g5L")+e(1593,"GiqO")+e(1634,"sBHZ")+e(752,"EWEh")+e(374,"YsCI")),o={method:r[e(633,"attV")],url:a,headers:{"User-Agent":r[e(1873,"qInX")],"accept-language":r[e(1032,"U6cg")],authorization:this[e(2086,"$5xR")],"content-type":r[e(1746,"OKeq")],"x-captcha-token":i,"x-client-id":this[e(1378,"u38W")+"d"],"x-device-id":this[e(855,"Rf!$")]}},c=await Ae[e(2006,"oCn^")](o);if(r[e(1246,"%g5L")](c[e(1333,"%g5L")],1*-2989+-3138+6327)){let u=c[e(938,"woD7")][e(1123,"^04V")][e(1691,"CdtI")](l=>l[e(736,"#Vf$")]===this[e(2111,"woD7")]);u?this[e(1464,"jO!N")]=u.id:this[e(317,"woD7")]=""}}async[Te(908,"veG&")](){let e=Te,r={FXrLG:function(n,s){return n===s},EiHHZ:e(683,"veG&")+e(1994,"NQR8"),gtcvU:e(1731,"TYk6"),WxAtA:e(789,"[zZc")+"er",auxae:e(979,"#Vf$"),eYqqM:e(902,"wv7J")+e(417,"u38W")+e(959,"h1&F")+e(1789,"5V(o")+e(435,"EhkZ")+e(688,"#Vf$")+e(1276,"NQR8")+e(397,"^04V")+e(434,"oCn^")+e(496,"J02[")+e(615,"YsCI")+"6",iUXcF:e(1217,"n(Tw")+e(801,"TYk6"),Tbcci:e(892,"6m)Q")+e(499,"%g5L")+e(983,"veG&")+e(439,"]#Cr")+e(765,"$FUM"),lqBkZ:function(n,s){return n===s},yNyNk:e(860,"68F4")+"\u5B58"};if(await this[e(1479,"di2y")](),r[e(1399,"1IiW")](this[e(1607,"sBHZ")],"")||r[e(1314,"68F4")](this[e(1387,"J02[")],void 0)){let n=r[e(1119,"di2y")],s=r[e(1287,"Rf!$")],i=await this[e(1584,"U6cg")+e(2099,"*uMz")](n,s),a=JSON[e(608,"EWEh")]({parent_id:"",name:this[e(1454,"LQMX")],kind:r[e(1423,"nHvT")],space:""}),o={method:r[e(1202,"attV")],url:this[e(1389,"n(Tw")]+(e(1488,"1IiW")+e(1562,"jO!N")),headers:{"User-Agent":r[e(1356,"J02[")],"Content-Type":r[e(437,"YsCI")],"accept-language":r[e(1316,"68p[")],authorization:this[e(1661,"oCn^")],"x-captcha-token":i,"x-client-id":this[e(1089,"nHvT")+"d"],"x-device-id":this[e(1087,"s45X")]},data:a},c=await Ae[e(1586,"xwLD")](o);r[e(335,"a(V)")](c[e(1186,"u38W")],-4468+-1*830+5498)&&(this[e(2103,"68F4")]=c[e(973,"#Vf$")][e(1835,"0D8d")].id,console[e(1262,"J02[")](r[e(1330,"s45X")]))}}async[Te(427,"$5xR")](){let e=Te,r={aDGqk:e(661,"oCn^")+e(818,"TYk6"),djJvB:e(1460,"u38W"),UurWO:e(1308,"*uMz"),GCevT:e(1064,"GiqO")+e(693,"L$sR")+e(389,"*uMz")+e(1221,"U6cg")+e(1388,"$5xR")+e(490,"3*7L")+e(1059,"68p[")+e(1902,"Rf!$")+e(863,"68p[")+e(441,"veG&")+e(1120,"OKeq")+"6",VOYjL:e(1110,"h1&F")+e(1168,"n(Tw")+e(1665,"[zZc")+e(1416,"J02[")+e(885,"J02["),cMYmR:e(1158,"OKeq")+e(1744,"NQR8"),VJivx:function(u,l){return u===l}};this[e(2089,"YsCI")]="";let n=r[e(1348,"METZ")],s=r[e(1714,"68p[")],i=await this[e(1571,"XIK8")+e(784,"[zZc")](n,s),a=this[e(1078,"YsCI")]+(e(903,"LQMX")+e(2153,"1IiW")+e(1291,"attV"))+this[e(322,"$5xR")]+(e(420,"Rf!$")+e(1041,"nHvT")+e(2026,"s45X")+e(1470,"XIK8")+e(418,"a(V)")+e(951,"$5xR")+e(406,"$FUM")+e(874,"attV")+e(1674,"Rf!$")+e(1496,"Rf!$")+e(1540,"u38W")+e(2090,"]#Cr")+e(814,"METZ")+e(1918,"htl8")+e(2080,"t2$F")+e(2132,"YsCI")+e(1485,"htl8")),o={method:r[e(384,"GiqO")],url:a,headers:{"User-Agent":r[e(1466,"[zZc")],"accept-language":r[e(694,"htl8")],authorization:this[e(618,"Rf!$")],"content-type":r[e(715,"6m)Q")],"x-captcha-token":i,"x-client-id":this[e(1723,"#Vf$")+"d"],"x-device-id":this[e(1368,"u38W")]}},c=await Ae[e(680,"6m)Q")](o);if(r[e(1495,"U6cg")](c[e(1865,"@)NM")],-926*7+-1*4733+11415)){let u=Array[e(554,"OKeq")](c[e(1475,"^04V")]?.[e(1944,"n(Tw")])?c[e(1962,"68p[")][e(2065,"5V(o")]:[],l=u[e(1705,"woD7")](d=>d?.id);l&&(this[e(714,"METZ")]=l.id)}return this[e(1400,"xwLD")]}async[Te(1209,"^04V")+"Id"](e=-59*-65+9864+13691*-1,r=-1975+154*50+5*-905){let n=Te,s={dacOL:function(i,a){return i<=a},qSRFh:function(i,a){return i"");if(a)return a;s[n(2066,"1IiW")](i,e)&&await this[n(991,"woD7")](r)}return""}async[Te(1191,"GiqO")](){let e=Te,r={Omwst:function(n,s){return n!==s},REbni:e(1590,"xwLD")+e(1614,"h1&F"),rxGMy:e(722,"NQR8"),DwxgT:e(1483,"u38W"),apLeL:e(2062,"YsCI")+e(841,"nHvT")+e(1950,"1IiW")+e(1537,"jO!N")+e(380,"METZ")+e(1436,"wv7J")+e(1874,"EhkZ")+e(887,"di2y")+e(703,"1IiW")+e(905,"#Vf$")+e(1255,"t2$F")+"6",IYYhM:e(376,"#Vf$")+e(1555,"LQMX"),CFjPm:e(1029,"TYk6")+e(1491,"J02[")+e(850,"t2$F")+e(1538,"L$sR")+e(1968,"a(V)"),aNlkc:function(n,s){return n===s},mpcru:e(1808,"EhkZ"),hcjBT:function(n,s){return n===s},FgYvP:e(1490,"[zZc")};if(await this[e(742,"&4j(")](),r[e(1839,"EhkZ")](this[e(1140,"xwLD")],"")&&r[e(1536,"qInX")](this[e(1198,"EhkZ")],void 0)){let n=r[e(1290,"woD7")],s=r[e(1798,"u38W")],i=await this[e(394,"%g5L")+e(792,"METZ")](n,s),a=JSON[e(1983,"6m)Q")]({ids:[this[e(474,"U6cg")]],space:""}),o={method:r[e(762,"J02[")],url:this[e(1824,"]#Cr")]+(e(1539,"0D8d")+e(744,"t2$F")+e(1432,"[zZc")),headers:{"User-Agent":r[e(1137,"OKeq")],"Content-Type":r[e(361,"n(Tw")],"accept-language":r[e(1658,"u38W")],authorization:this[e(561,"68p[")],"x-captcha-token":i,"x-client-id":this[e(1884,"GiqO")+"d"],"x-device-id":this[e(924,"*uMz")]},data:a},c=await Ae[e(340,"$FUM")](o)[e(1954,"OKeq")](u=>u[e(372,"LQMX")]);r[e(995,"LQMX")](c[e(462,"68F4")],14550+2*-7175)?console[e(978,"jO!N")](r[e(1070,"&4j(")]):r[e(2081,"J02[")](c[e(1912,"TYk6")],-43*-45+-7462+5931)&&console[e(978,"jO!N")](r[e(2108,"&4j(")])}}async[Te(1587,"METZ")+Te(888,"68p[")+Te(1462,"*uMz")](){let e=Te,r={IeXcK:e(1173,"h1&F")+e(1487,"n(Tw"),QSyUD:e(1906,"YsCI")+e(1128,"L$sR")+e(573,"U6cg"),jbfEl:e(1895,"EhkZ")+"7",OTNLt:e(1860,"u38W")+e(519,"nHvT"),bwMNo:e(2134,"jO!N"),OqoMY:e(966,"5V(o")+e(989,"U6cg")+e(1127,"GiqO")+e(1585,"METZ")+e(1856,"NQR8")+e(1493,"EhkZ")+e(665,"veG&")+e(1133,"TYk6")+e(1440,"nHvT")+e(305,"%g5L")+e(1690,"TYk6")+e(1911,"3*7L")+e(718,"sBHZ")+e(1099,"u38W")+e(312,"CdtI")+e(587,"$FUM")+e(2032,"$FUM")+e(748,"a(V)")+e(1073,"sBHZ")+e(536,"*uMz")+e(341,"GiqO")+e(1017,"EWEh")+e(1062,"METZ"),Zdqvv:e(1545,"68p[")+e(1164,"EWEh"),QvgPw:e(2019,"di2y")+e(809,"oCn^"),QRjzB:function(o,c){return o===c}},n=this[e(2114,"CdtI")+e(378,"a(V)")](this[e(657,"^04V")]),s={client_id:this[e(1065,"EWEh")+"d"],action:r[e(1244,"jO!N")],device_id:this[e(1379,"NQR8")],captcha_token:"",meta:{package_name:r[e(1187,"EhkZ")],client_version:r[e(1991,"XIK8")],captcha_sign:"1."+n,timestamp:r[e(940,"*uMz")],user_id:this[e(2154,"J02[")]}},i={method:r[e(868,"68F4")],url:this[e(1286,"n(Tw")]+(e(1578,"LQMX")+e(1406,"u38W")+"it"),headers:{"User-Agent":r[e(642,"sBHZ")],"Accept-Encoding":r[e(712,"attV")],"Content-Type":r[e(740,"^04V")]},data:s},a=await Ae[e(679,"u38W")](i);if(r[e(1298,"$5xR")](a[e(1473,"Rf!$")],-9*-715+9647+-15882))return a[e(870,"oCn^")][e(1342,"$FUM")+e(529,"]#Cr")]}async[Te(1743,"LQMX")+Te(1204,"&4j(")](){let e=Te,r={MzfBj:e(882,"GiqO")+e(1477,"woD7"),sAfoj:e(1638,"jO!N")+e(879,"0D8d"),kQELn:e(2134,"jO!N"),OrvZI:e(1394,"Rf!$")+e(1708,"68p[")+e(1897,"TYk6")+e(1230,"nHvT")+e(834,"*uMz")+e(2049,"u38W")+e(543,"wv7J")+e(1910,"CdtI")+e(1162,"s45X")+e(747,"LQMX")+e(1255,"t2$F")+"6",recnM:e(820,"nHvT")+e(1055,"0D8d"),plIWN:function(a,o){return a===o}},n=JSON[e(1757,"@)NM")]({client_id:r[e(2112,"0D8d")],action:r[e(1749,"METZ")],device_id:this[e(1092,"EWEh")],captcha_token:"",meta:{phone_number:e(1253,"YsCI")+this[e(528,"68F4")]}}),s={method:r[e(1847,"EWEh")],url:this[e(337,"LQMX")]+(e(964,"woD7")+e(1039,"#Vf$")+"it"),headers:{"User-Agent":r[e(1993,"L$sR")],"Content-Type":r[e(1396,"xwLD")]},data:n},i=await Ae[e(1141,"wv7J")](s);if(r[e(901,"a(V)")](i[e(1505,"LQMX")],5243+123*-41))return i[e(973,"#Vf$")][e(1478,"xwLD")+e(1046,"1IiW")]}async[Te(1323,"u38W")](){let e=Te,r={dczMi:e(979,"#Vf$"),KhOJM:e(1840,"^04V")+e(425,"Rf!$")+e(1245,"[zZc")+e(1516,"GiqO")+e(666,"68F4")+e(1816,"GiqO")+e(636,"#Vf$")+e(1338,"YsCI")+e(333,"$5xR")+e(506,"u38W")+e(753,"OKeq")+e(1820,"5V(o")+e(1278,"U6cg")+e(1463,"U6cg")+e(2101,"]#Cr"),JQcUB:e(578,"u38W")+e(1138,"a(V)"),Ohsyp:function(o,c){return o===c},gEocm:e(955,"U6cg")+e(1088,"h1&F"),eMmTH:e(1868,"nHvT"),mDcoW:function(o,c){return o+c},QCsHh:e(444,"LQMX")+"d"},n=await this[e(542,"68p[")+e(2144,"n(Tw")](),s=JSON[e(1846,"J02[")]({username:e(1742,"[zZc")+this[e(1190,"CdtI")],password:this[e(1320,"J02[")],client_id:this[e(1685,"a(V)")+"d"]}),i={method:r[e(2024,"LQMX")],url:this[e(997,"[zZc")]+(e(1512,"METZ")+e(946,"3*7L")),headers:{"User-Agent":r[e(630,"woD7")],"Content-Type":r[e(816,"OKeq")],"x-captcha-token":n,"x-client-id":this[e(1489,"J02[")+"d"],"x-device-id":this[e(674,"n(Tw")]},data:s},a=await Ae[e(338,"1IiW")](i);r[e(2084,"wv7J")](a[e(743,"EhkZ")],-3*-2802+3943*-1+-4263)&&(es[e(802,"@)NM")](r[e(1267,"6m)Q")],a[e(2152,"NQR8")][e(1833,"xwLD")+e(529,"]#Cr")]),es[e(534,"veG&")](r[e(1521,"sBHZ")],r[e(1877,"YsCI")](r[e(1601,"J02[")](a[e(1441,"YsCI")][e(453,"1IiW")]," "),a[e(1475,"^04V")][e(822,"h1&F")+"en"])),es[e(1095,"oCn^")](r[e(1362,"&4j(")],a[e(1524,"wv7J")][e(1093,"a(V)")]))}async[Te(944,"CdtI")+Te(1775,"]#Cr")](){let e=Te,r={PZqdF:function(n,s){return n===s},qFQZY:function(n,s){return n===s},sjCUJ:e(1965,"]#Cr")+e(530,"68p[")+e(926,"sBHZ")+e(614,"3*7L")+e(1371,"u38W"),PMkrD:e(828,"EhkZ")+e(685,"sBHZ"),NBdBP:e(1953,"1IiW"),FbhCU:e(730,"veG&")+e(1104,"[zZc")+e(1699,"]#Cr")+e(1282,"s45X")+e(1118,"s45X")+e(1166,"YsCI")+e(1452,"&4j(")+e(1929,"EWEh")+e(993,"veG&")+e(1804,"LQMX")+e(726,"1IiW")+e(516,"XIK8")+e(729,"#Vf$")+e(1035,"oCn^")+e(2155,"qInX"),XJfuf:e(1848,"0D8d")+e(2145,"sBHZ"),BXRxT:function(n,s){return n(s)},BsfeU:e(667,"xwLD"),NsCpS:e(1657,"5V(o")+e(393,"veG&"),lzdgI:e(646,"6m)Q"),unEef:function(n,s){return n+s},mXGUB:function(n,s){return n+s},rtSoR:e(1830,"a(V)")+e(794,"&4j("),ZTdkY:function(n,s){return n>s},daall:function(n,s){return n/s},twTFK:e(702,"u38W")+e(1735,"LQMX"),CcsBV:e(391,"attV")+"\u767B\u5F55"};if(r[e(422,"]#Cr")](this[e(1959,"0D8d")],void 0)||r[e(336,"jO!N")](this[e(939,"LQMX")],"")){if(this[e(353,"68p[")+e(1435,"wv7J")]){let n=JSON[e(1161,"t2$F")]({client_id:this[e(1759,"5V(o")+"d"],client_secret:r[e(1393,"*uMz")],grant_type:r[e(2137,"htl8")],refresh_token:this[e(1942,"$FUM")+e(404,"L$sR")]}),s={method:r[e(2087,"xwLD")],url:this[e(1226,"di2y")]+(e(1734,"L$sR")+e(566,"CdtI")),headers:{"User-Agent":r[e(1937,"u38W")],"Content-Type":r[e(918,"CdtI")],"x-client-id":this[e(366,"&4j(")+"d"],"x-device-id":this[e(627,"oCn^")]},data:n},i=await r[e(1554,"#Vf$")](Ae,s)[e(1499,"YsCI")](a=>a[e(622,"qInX")]);if(r[e(1879,"METZ")](i?.[e(1337,"&4j(")],200)){console[e(1146,"6m)Q")](r[e(495,"U6cg")]),es[e(875,"a(V)")](r[e(1859,"LQMX")],i[e(486,"&4j(")][e(451,"sBHZ")+e(568,"&4j(")]),es[e(1250,"&4j(")](r[e(628,"1IiW")],r[e(1183,"6m)Q")](r[e(2042,"L$sR")](i[e(2104,"LQMX")][e(347,"n(Tw")]," "),i[e(1855,"TYk6")][e(1755,"XIK8")+"en"]));return}}if(await this[e(2009,"t2$F")](),!this[e(640,"attV")])throw new Error(r[e(386,"U6cg")])}else try{let n=JSON[e(1960,"xwLD")](Tl.default[e(1013,"3*7L")][e(2002,"OKeq")][e(1756,"3*7L")](this[e(1019,"YsCI")][e(1370,"METZ")](".")[1])[e(1275,"GiqO")](Tl.default[e(2064,"68p[")][e(577,"Rf!$")]));r[e(1219,"xwLD")](n[e(1160,"[zZc")],Math[e(956,"0D8d")](r[e(1182,"1IiW")](Date[e(713,"U6cg")](),2551+337*-7+808)))?console[e(1822,"$FUM")](r[e(1428,"6m)Q")]):(console[e(585,"n(Tw")](r[e(1375,"OKeq")]),es[e(2121,"htl8")](r[e(1197,"NQR8")],""),await this[e(1068,"veG&")+e(1005,"NQR8")]())}catch{es[e(802,"@)NM")](r[e(365,"YsCI")],""),await this[e(953,"XIK8")+e(1304,"htl8")]()}}async[Te(1761,"YsCI")+Te(1869,"t2$F")](e,r,n){let s=Te,i={HqtKk:s(559,"*uMz")+s(1301,"1IiW"),GzSQu:s(698,"METZ"),Jrnsn:s(691,"oCn^")+s(1774,"attV")+s(469,"XIK8")+s(2038,"*uMz")+s(1107,"L$sR")+s(936,"&4j(")+s(1e3,"woD7")+s(1650,"NQR8")+s(1655,"]#Cr")+s(1216,"$5xR")+s(1914,"68p[")+s(1241,"OKeq")+s(1142,"6m)Q")+s(1099,"u38W")+s(1772,"qInX")+s(1109,"NQR8")+s(1751,"*uMz")+s(804,"@)NM")+s(443,"s45X")+s(699,"1IiW")+s(1921,"OKeq")+s(2147,"LQMX")+s(981,"J02["),sFSxm:s(2093,"#Vf$"),lXsgS:s(1928,"TYk6"),qAnwa:s(2085,"GiqO")+s(1164,"EWEh"),druCG:s(1096,"s45X")+s(1567,"$FUM"),yNmfy:function(a,o){return a===o},EbWlz:s(717,"[zZc")+"4",LhoMK:s(449,"wv7J")+s(607,"di2y"),uKYAX:function(a,o){return a===o},NYIHo:s(1009,"LQMX")+s(1955,"]#Cr"),kiQTs:s(2019,"di2y")+s(987,"5V(o")+s(1508,"6m)Q"),KBjJY:function(a,o){return a!==o}};try{await this[s(1332,"1IiW")](),await this[s(1023,"htl8")+s(1801,"1IiW")](),await this[s(310,"XIK8")](),await this[s(1984,"n(Tw")](e,r,n);let a=await this[s(954,"xwLD")+"Id"]();if(!a)throw new Error(i[s(1626,"veG&")]);let o=await this[s(1558,"U6cg")+s(857,"&4j(")+s(1605,"n(Tw")](),c={method:i[s(564,"NQR8")],url:this[s(402,"%g5L")]+(s(1753,"[zZc")+s(689,"s45X"))+a+(s(1155,"jO!N")+s(864,"#Vf$")+s(1196,"^04V")+s(2021,"#Vf$")+s(1684,"xwLD")),headers:{"User-Agent":i[s(1535,"L$sR")],Connection:i[s(1281,"xwLD")],Accept:i[s(1595,"1IiW")],"Accept-Encoding":i[s(962,"J02[")],"x-captcha-token":o,authorization:this[s(1114,"&4j(")],"content-type":i[s(1033,"68F4")],"x-device-id":this[s(403,"YsCI")]}},u;try{u=await Ae[s(1261,"XIK8")](c)}catch(l){if(i[s(1797,"OKeq")](l?.[s(1050,"@)NM")]?.[s(1946,"$FUM")],-9519+-1*-6497+3426)){let d=i[s(1402,"]#Cr")][s(2135,"TYk6")]("|"),f=5268+-1*269+-4999;for(;;){switch(d[f++]){case"0":if(!a)throw l;continue;case"1":console[s(359,"htl8")](i[s(1327,"0D8d")]);continue;case"2":await this[s(2106,"*uMz")](-6661*1+29*334+-1825);continue;case"3":c[s(1042,"3*7L")]=this[s(402,"%g5L")]+(s(1353,"U6cg")+s(544,"jO!N"))+a+(s(1773,"YsCI")+s(471,"[zZc")+s(565,"%g5L")+s(1336,"wv7J")+s(2074,"@)NM"));continue;case"4":u=await Ae[s(314,"]#Cr")](c);continue;case"5":a=await this[s(1015,"*uMz")+"Id"](-8157+-3*-2359+1083,-1*3561+-1*4267+9028);continue}break}}else throw l}if(i[s(932,"@)NM")](u[s(1865,"@)NM")],200)){let l=u[s(1169,"jO!N")][i[s(1635,"u38W")]]||u[s(2100,"n(Tw")][s(1716,"CdtI")][i[s(832,"@)NM")]][s(1748,"oCn^")],d=new URL(l)[s(766,"J02[")];return i[s(1367,"TYk6")](this[s(716,"XIK8")],"")&&(l=l[s(1930,"h1&F")](d,this[s(749,"oCn^")])),l}}catch(a){return console[s(1335,"attV")](a),""}}};function Gi(t,e){let r=pL();return Gi=function(n,s){n=n-(-1*8163+1971*3+1*2555);let i=r[n];if(Gi.XJtBQt===void 0){var a=function(d){let f="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=",p="",m="";for(let h=0,A,g,b=0;g=d.charAt(b++);~g&&(A=h%4?A*64+g:g,h++%4)?p+=String.fromCharCode(255&A>>(-2*h&6)):0)g=f.indexOf(g);for(let h=0,A=p.length;h{let u=r,l={JxhhQ:function(m,h){return n[Gi(2056,"[zZc")](m,h)},BNcIi:function(m,h){return n[Gi(477,"EWEh")](m,h)},foIkD:n[u(328,"oCn^")]},d=Array[u(524,"$FUM")](s[c])?s[c]:[],f=d[u(1935,"L$sR")](m=>{let h=u;return{vod_id:[m[h(1951,"nHvT")],m[h(1474,"nHvT")],m[h(1317,"1IiW")],m[h(1599,"#Vf$")+h(1720,"68F4")],m[h(1376,"*uMz")]||""][h(1706,"nHvT")]("*"),vod_name:m[h(727,"]#Cr")],vod_size:l[h(1163,"1IiW")](Number,m[h(1534,"di2y")])||-5801*1+-4110+9911*1,vod_group:l[h(1113,"attV")](c,l[h(1947,"#Vf$")])?"":c}}),p=n[u(591,"6m)Q")](Os,i,f);p&&p[u(881,"oCn^")]&&p[u(1277,"t2$F")]&&(a[u(851,"wv7J")](p[u(786,"XIK8")]),o[u(2067,"TYk6")](p[u(1630,"qInX")]))}),a[r(1676,"1IiW")]?{from:a[r(1265,"6m)Q")](n[r(1159,"METZ")]),url:o[r(571,"oCn^")](n[r(1752,"h1&F")])}:null}var t5e=t=>{let e=Te,r={NPJFK:function(i,a){return i(a)},DYUOC:function(i,a){return i||a}},n=r[e(616,"qInX")](String,r[e(941,"h1&F")](t,""))[e(448,"XIK8")+"e"]();if(!n)return 3372+-559*-13+1*-10639;if(n[e(502,"EhkZ")]("\u539F\u753B"))return-3*-24419+-184559+3354*63;if(n[e(1139,"attV")]("4k"))return 3*487+2537+2;if(n[e(1815,"CdtI")]("2k"))return-143*-19+-4783+4066;let s=n[e(935,"veG&")](/(\d+)\s*p/);return s?r[e(1588,"LQMX")](Number,s[-2998+-181*-7+1732])||-2*4269+-7*421+-1*-11485:n[e(1012,"NQR8")]("\u84DD\u5149")?-5563*-1+8078+-12441:n[e(1786,"METZ")]("\u8D85\u6E05")?1080:n[e(1139,"attV")]("\u9AD8\u6E05")?-678*-12+-7053*1+-363:n[e(2035,"U6cg")]("\u6D41\u7545")?86*-106+3819+109*53:n[e(1422,"6m)Q")]("\u6807\u6E05")?540:n[e(426,"68p[")]("\u666E\u753B")?-5801+-1*-6161:n[e(1455,"*uMz")]("\u6781\u901F")?240:-589+58*3+415},ysr=t=>{let e=Te,r={rLCxq:function(s,i){return st5e(d[-5027+-61*-139+-3452])-t5e(l[21*-275+-9284+15059]));let c=[];o&&c[r(1940,"htl8")](o),a[r(1695,"NQR8")](l=>{let d=r;n[d(1318,"METZ")](l[-3252+1626*2],"\u539F\u753B")&&c[d(1408,"#Vf$")](l)});let u=c[r(1645,"68p[")]();if(!u[r(760,"@)NM")])throw new Error(n[r(891,"YsCI")]);return{parse:0,url:u,header:i}}var o5e=require("crypto");var bsr="https://api.guangyapan.com",Esr="https://account.guangyapan.com",c5e="aMe-8VSlkrbQXpUR",u5e=200,_sr="0123456789abcdef0123456789abcdef",l5e={Accept:"application/json, text/plain, */*","Content-Type":"application/json"},Ssr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],mL,uz={},wl={set(t,e){uz[t]=e,mL&&mL.push(`/guangyapan/${t}`,e)},get(t){return uz[t]}},vsr=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,lC=async t=>{mL=t.server.db,uz=await mL.getObjectDefault("/guangyapan",{})};function Csr(t){let e=/https?:\/\/(?:www\.)?guangyapan\.com\/s\/([^/#?]+)/i.exec(String(t||"").trim());return e?.[1]?{shareId:e[1]}:null}function d5e(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{msg:t}}return t}function dC(t,e=""){return[t?.msg,t?.message,t?.error_description,t?.error,e].map(n=>String(n||"").trim()).filter(Boolean)[0]||"unknown error"}function Isr(t){let e=String(t||"").toLowerCase();return Ssr.some(r=>e.endsWith(r))}function Tsr(t,e){return t?`${t}/${e}`:e}function wsr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}function f5e(){let t=wsr(wl.get("device_id"));if(t)return t;try{t=(0,o5e.randomBytes)(16).toString("hex")}catch{t=_sr}return wl.set("device_id",t),t}function Rsr(t=""){let e={...l5e,Did:f5e(),Dt:"4"},r=String(t||"").trim();return r&&(e.Authorization=`Bearer ${r}`),e}function Nsr(){let t=f5e();return{...l5e,"X-Client-Id":c5e,"X-Client-Version":"0.0.1","X-Device-Id":t,"X-Device-Model":"chrome%2F147.0.0.0","X-Device-Name":"PC-Chrome","X-Device-Sign":`wdi10.${t}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,"X-Net-Work-Type":"NONE","X-OS-Version":"Win32","X-Platform-Version":"1","X-Protocol-Version":"301","X-Provider-Name":"NONE","X-SDK-Version":"9.0.2"}}async function uC(t,e,r=""){let n=await he.request({url:`${bsr}${t}`,method:"POST",headers:Rsr(r),data:e,validateStatus:()=>!0});return{status:Number(n?.status||0),data:d5e(n?.data)}}async function Osr(){let t=String(wl.get("refresh_token")||"").trim();if(!t)return"";let e=await he.request({url:`${Esr}/v1/auth/token`,method:"POST",headers:Nsr(),data:{client_id:c5e,grant_type:"refresh_token",refresh_token:t},validateStatus:()=>!0}),r=d5e(e?.data),n=String(r?.access_token||r?.accessToken||"").trim();if(!n)throw new Error(`\u5237\u65B0\u5149\u9E2D access_token \u5931\u8D25: ${dC(r,`status=${e?.status||0}`)}`);wl.set("access_token",n);let s=String(r?.refresh_token||r?.refreshToken||"").trim();return s&&wl.set("refresh_token",s),n}async function lz(t=!1){let e=t?"":String(wl.get("access_token")||"").trim();return e||await Osr()}async function p5e(t){let{status:e,data:r}=await uC("/nd.bizuserres.s/v1/get_share_access_token",{shareId:t}),n=String(r?.data?.accessToken||"").trim();if(!n)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB accessToken \u5931\u8D25: ${dC(r,`status=${e}`)}`);return n}async function Psr(t,e="",r=0){let n={pageSize:u5e,accessToken:t,parentId:e,orderBy:0,sortType:0};r>0&&(n.cursor=r);let{status:s,data:i}=await uC("/nd.bizuserres.s/v1/get_share_page_files_list",n);if(s<200||s>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u5206\u4EAB\u76EE\u5F55\u5931\u8D25: ${dC(i,`status=${s}`)}`);return i?.data||{list:[]}}async function Dsr(t){let e=await p5e(t),r=[{parentId:"",folderPath:""}],n=[];for(;r.length>0;){let{parentId:s,folderPath:i}=r.shift(),a=0,o=!0;for(;o;){let c=await Psr(e,s,a);(Array.isArray(c?.list)?c.list:[]).forEach(d=>{let f=String(d?.fileId||"").trim(),p=String(d?.fileName||"").trim();if(!(!f||!p)){if(Number(d?.resType||0)===2){r.push({parentId:f,folderPath:Tsr(i,p)});return}Isr(p)&&n.push({vod_id:`${t}*${f}`,vod_name:p,vod_size:Number(d?.fileSize||d?.size||0),vod_group:i})}}),o=!!c?.hasMore;let l=Number(c?.cursor||0);if(!o||l<=a)break;a=l}}return n}async function dz(t,e,r=""){let{status:n,data:s}=await uC("/nd.bizuserres.s/v1/get_share_download_url",{fileId:t,accessToken:e},r);return{status:n,code:Number(s?.code||0),msg:dC(s,`status=${n}`),url:String(s?.data?.downloadUrl||"").trim()}}function s5e(t,e){return{status:t,code:Number(e?.code||0),msg:dC(e,`status=${t}`),data:e?.data||{}}}function i5e(t,e){return{status:500,code:0,msg:String(t?.message||t||e||"\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38"),data:{}}}function m5e(t){let e=String(t?.msg||"").toLowerCase();return t?.status===401||t?.status===403||t?.code===401||t?.code===403||e.includes("token expired")||e.includes("unauthorized")}function ksr(){return!!String(wl.get("refresh_token")||"").trim()}function Lsr(t){let e=String(t?.msg||"");return m5e(t)||t?.code===207||e.includes("\u514D\u767B\u5F55\u4E0B\u8F7D")}async function a5e(t=!1){let e=await lz(t);if(!e)throw new Error("\u5149\u9E2D\u767B\u5F55\u6001\u7F3A\u5931");return e}async function h5e(t,e){let r="";try{r=await a5e(!1)}catch(i){return i5e(i,"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}let n=await uC(t,e,r),s=s5e(n.status,n.data);if(!m5e(s))return s;try{r=await a5e(!0),n=await uC(t,e,r),s=s5e(n.status,n.data)}catch(i){return i5e(i,"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25")}return s}async function Bsr(t,e){let r="",n=String(wl.get("access_token")||"").trim();try{r=await lz(!1)}catch(i){return{status:500,code:0,msg:String(i?.message||i||"\u83B7\u53D6\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}let s=await dz(t,e,r);if(!s.url&&n&&ksr()&&Lsr(s))try{r=await lz(!0),s=await dz(t,e,r)}catch(i){s={status:500,code:0,msg:String(i?.message||i||"\u5237\u65B0\u5149\u9E2D\u767B\u5F55\u6001\u5931\u8D25"),url:""}}return s}async function g5e(t,e=""){await lC(t);let r=await h5e("/nd.bizuserres.s/v1/file/get_file_list",{parentId:String(e||"").trim(),pageSize:u5e,orderBy:3,sortType:1,fileTypes:[]});if(r.status<200||r.status>=300)throw new Error(`\u83B7\u53D6\u5149\u9E2D\u4E2A\u4EBA\u76EE\u5F55\u5931\u8D25: ${r.msg}`);return{total:Number(r.data?.total||0),list:Array.isArray(r.data?.list)?r.data.list:[]}}async function A5e(t,e){await lC(t);let r=String(e||"").trim();if(!r)return{url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await h5e("/nd.bizuserres.s/v1/get_res_download_url",{fileId:r}),s=String(n.data?.signedURL||n.data?.downloadUrl||"").trim();return s?{url:s,msg:""}:{url:"",msg:n.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}async function y5e(t){let e=Csr(t);if(!e?.shareId)return{};let r=await Dsr(e.shareId);return Os(await vsr("guangyapan"),r)}async function x5e(t){try{await lC(t);let[e,r]=String(t.body?.id||"").trim().split("*");if(!e||!r)return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};let n=await p5e(e),s=await dz(r,n);return s.url||(String(wl.get("access_token")||"").trim()||String(wl.get("refresh_token")||"").trim())&&(s=await Bsr(r,n)),s.url?{parse:0,url:["\u539F\u753B",s.url]}:{parse:0,url:"",msg:s.code===207||String(s.msg||"").includes("\u514D\u767B\u5F55\u4E0B\u8F7D")?"\u5149\u9E2D\u4E91\u76D8\u5206\u4EAB\u672A\u5F00\u542F\u514D\u767B\u5F55\u4E0B\u8F7D\uFF0C\u8BF7\u5148\u5728\u201C\u767B\u5F55-\u5149\u9E2D\u201D\u4E2D\u586B\u5165 access_token \u6216 refresh_token":s.msg||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25"}}catch(e){return{parse:0,url:"",msg:String(e?.message||e||"\u83B7\u53D6\u5149\u9E2D\u4E0B\u8F7D\u5730\u5740\u5931\u8D25")}}}var Co=async t=>globalThis.getPanName?await globalThis.getPanName(t):t,mu=t=>{let e=globalThis.Pans?.find(r=>r.key===t)?.name;return String(e||t)};var Gr=d0,Msr=t=>t==null||t==="root"?"":String(t),fz=t=>{if(!t)return[];if(Array.isArray(t))return t;let e=[];return Object.keys(t).forEach(r=>{let n=t[r];if(!Array.isArray(n))return;let s=Msr(r);n.forEach(i=>{e.push({...i,vod_group:i?.vod_group??s})})}),e};async function qr(t,e){return{}}async function Rr(t,e){t=Array.isArray(t)?t:[t];let r=t.map(u=>{let l=nf().find(f=>f.validator(u)),d=l?.key;return{key:d,name:l?.name||mu(d),url:u,order:globalThis.Pans.findIndex(f=>f.key===d)}}).filter(u=>u.key);r.sort((u,l)=>u.order-l.order);let n=[],s=[],i=[];(await Promise.allSettled(r.map(async({key:u,url:l})=>{if(u==="ali")return await sLe(l);if(u==="quark")return await yLe(l);if(u==="uc")return await F4e(l);if(u==="tianyi"){let d=await rf.getShareData(l);if(!d)return null;let f=await Co("tianyi");return Os(f,fz(d))}if(u==="yidong"){let d=await $V.getShareData(l),f=await Co("yidong");return Os(f,fz(d))}if(u==="123"){let d=await O0.getShareData(l),f=await O0.getFilesByShareUrl(d),p=await Co("123");return Os(p,fz(f))}return u==="115"?await Q6e(l,e):u==="baidu"?await X6e(l,e):u==="xunlei"?await r5e(l,e):u==="guangyapan"?await y5e(l):null}))).forEach((u,l)=>{if(u.status==="fulfilled"){let p=u.value;p&&p.from&&p.url&&(n.push(p.from),s.push(p.url),i.push({name:r[l].name,url:r[l].url}));return}let d=String(r[l]?.key||"unknown"),f=String(u.reason?.message||u.reason||"unknown error");console.warn(`[Pan Detail] ${d} detail failed: ${f}`)});let o={};n.forEach((u,l)=>{o[u]?n[l]=`${u}-${++o[u]}`:o[u]=1});let c={};return i.forEach((u,l)=>{c[u.name]?i[l].name+=++c[u.name]:c[u.name]=1}),{froms:n.join("$$$"),urls:s.join("$$$"),links:i}}async function Nr(t,e){let r=t.params.site;if(r=="ali")return await yk(t,e);if(r=="quark")return await Sk(t,e);if(r=="uc")return await U4e(t,e);if(r=="baidu")return await dL(t,e)}async function Or(t,e){let r=t.body.flag;if(r.startsWith(await Co("ali")))return await xk(t,e);if(r.startsWith(await Co("quark")))return await vk(t,e);if(r.startsWith(await Co("uc")))return await q4e(t,e);if(r.startsWith(await Co("tianyi"))){let n=t.body.id.split("*");await rb(t);let s=n[2]||"video",i=n[3]||"",a=n[4]||"";if(s==="cas")try{let c=await rf.getShareTextPlayable(n[0],n[1],i,a);if(!c?.url){let u=rf.getShareTextResolveReason?rf.getShareTextResolveReason():"";throw new Error(u||"\u5929\u7FFCCAS\u89E3\u6790\u5931\u8D25")}return{parse:0,url:["\u539F\u753B",c.url],...c.header?{header:c.header}:{}}}catch(c){throw c}return{parse:0,url:["\u539F\u753B",await rf.getShareUrl(n[0],n[1])]}}else if(r.startsWith(await Co("yidong"))){let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await $V.getSharePlay(n[0],n[1],n[2]||"",n[3]||"")]}}else if(r.startsWith(await Co("123"))){await sb(t);let n=t.body.id.split("*");return{parse:0,url:["\u539F\u753B",await O0.getDownload(...n)],header:O0.getDownloadHeader()}}else{if(r.startsWith(await Co("115")))return await G6e(t,e);if(r.startsWith(await Co("baidu")))return await lL(t,e);if(r.startsWith(await Co("xunlei")))return await n5e(t,e);if(r.startsWith(await Co("guangyapan")))return await x5e(t,e)}}async function _5e(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);n.init=s.json(),fC(s.json()),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),fC(s.json());let i=!1;if(n.home.class&&n.home.class.length>0){let a=n.home.class[0].type_id,o={};if(n.home.filters){let c=n.home.filters[a];if(c)for(let u of c){let l=u.init;if(l){for(let d of u.value)if(d.v==l){o[u.key]=l;break}}}}if(s=await t.server.inject().post(`${r}/category`).payload({id:a,page:1,filter:!0,filters:o}),n.category=s.json(),fC(s.json()),n.category.list.length>0){i=!0;let c=n.category.list[0].vod_id;await E5e(t,c,n)}}if(s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),!i&&n.search.list.length>0){let a=n.search.list[0].vod_id;await E5e(t,a,n)}return fC(s.json()),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}async function E5e(t,e,r){let n=t.server.prefix,s=await t.server.inject().post(`${n}/detail`).payload({id:e});if(r.detail=s.json(),fC(s.json()),r.detail.list&&r.detail.list.length>0){r.play=[];for(let i of r.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c{let e=globalThis.Pans?.find(n=>n.key===t)?.pic,r=String(e||"").trim();return r||Wsr[t]||""},nf=()=>[{key:"quark",name:mu("quark"),validator:pk,pic:Rl("quark")},{key:"uc",name:mu("uc"),validator:mk,pic:Rl("uc")},{key:"ali",name:mu("ali"),validator:fk,pic:Rl("ali")},{key:"baidu",name:mu("baidu"),validator:Fke,pic:Rl("baidu")},{key:"xunlei",name:mu("xunlei"),validator:Uke,pic:Rl("xunlei")},{key:"tianyi",name:mu("tianyi"),validator:Bke,pic:Rl("tianyi")},{key:"yidong",name:mu("yidong"),validator:Mke,pic:Rl("yidong")},{key:"123",name:mu("123"),validator:Wke,pic:Rl("123")},{key:"115",name:mu("115"),validator:$ke,pic:Rl("115")},{key:"guangyapan",name:mu("guangyapan"),validator:qke,pic:Rl("guangyapan")}];var $sr=["https://tv.yydsys.cc","https://tv.yydsys.top","https://tv.214521.xyz","https://yydsys.de5.net"],pz=async t=>(await t.db.getObjectDefault("/duoduo",{}))?.urls||t.config.duoduo?.urls||$sr,Fsr=async(t,e)=>{await t.db.push("/duoduo/urls",e)},Usr=async t=>{await t.db.delete("/duoduo/urls")};async function mz(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await pz(e.server)})}),t.put("/urls",async(e,r)=>{await Fsr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Usr(e.server),r.send({code:0})})}var hz,hL=t=>{if(!hz){let e=Date.now();hz=new Promise(async r=>{let n=await pz(t),s=await Xn(n,{"User-Agent":Gr});console.log("\u591A\u591A\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return hz};function qsr(t){if(typeof t!="string"||t.length===0)return t;let r=t.indexOf('"0?a:t}catch{return t}}async function gz(t){let e=await he.get(t,{headers:{"User-Agent":Gr}});return qsr(e.data)}function Az(t){return String(t||"").replace(/\/$/,"")}function jsr(t,e){let r=e;return t("#page a").each((n,s)=>{let i=t(s).attr("href"),a=i&&i.match(/\/page\/(\d+)\.html/i);if(!a)return;let o=parseInt(a[1],10);Number.isNaN(o)||(r=Math.max(r,o))}),r}async function Hsr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"20",type_name:"\u7EAA\u5F55"}],filters:{}}}async function Qsr(t,e){let r=await hL(t.server),n=t.body.id,s=t.body.page,i=parseInt(s,10);(!i||i<1)&&(i=1);let o=`${Az(r)}/index.php/vod/show/id/${n}/page/${i}.html`,c=await gz(o),u=Me(c),l=u("#main .module-item").map((f,p)=>{let m=u(p).find(".module-item-pic a").attr("href"),h=u(p).find(".module-item-pic img").attr("alt"),A=u(p).find(".module-item-pic img").attr("data-src")||u(p).find(".module-item-pic img").attr("src"),g=u(p).find(".module-item-text").text().trim();return{vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g}}).get().filter(f=>f.vod_id&&f.vod_name),d=jsr(u,i);return{page:i,pagecount:d,limit:72,total:72*d,list:l}}async function Gsr(t,e){let r=await hL(t.server),n=Az(r),s=Array.isArray(t.body.id)?t.body.id:[t.body.id],i=[];for(let a of s)try{let o=await gz(`${n}${a}`),c=Me(o),u={vod_id:a,vod_name:c(".page-title").first().text().trim(),vod_pic:c(".mobile-play .lazyload").first().attr("data-src")||c(".mobile-play img").first().attr("data-src")||c(".mobile-play img").first().attr("src"),vod_remarks:c('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""};c(".video-info-itemtitle").each((f,p)=>{let m=c(p).text(),h=c(p).next().find("a").map((A,g)=>c(g).text().trim()).get().filter(Boolean).join(", ");m.includes("\u5267\u60C5")?u.vod_content=c(p).next().find("p").text().trim():m.includes("\u5BFC\u6F14")?u.vod_director=h.trim():m.includes("\u4E3B\u6F14")&&(u.vod_actor=h.trim())});let l=c(".module-row-info p").map((f,p)=>c(p).text().trim()).get().filter(Boolean),d=await Rr(l,t);d&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls,u.vod_links=d.links),i.push(u)}catch(o){console.error("duoduo detail fetch failed",a,o)}return{list:i}}async function Vsr(t,e){let r=await hL(t.server),n=Az(r),s=t.body.page,i=t.body.wd,a=parseInt(s,10);(!a||a<1)&&(a=1);let o=encodeURIComponent(i||""),c=[`${n}/index.php/vod/search/page/${a}/wd/${o}.html`,`${n}/index.php/vod/search/wd/${o}.html`,`${n}/index.php/vod/search.html?wd=${o}&page=${a}`];for(let u of c)try{let l=await gz(u),d=Me(l),f=d(".module-search-item").map((p,m)=>{let h=d(m).find(".video-serial"),A=d(m).find(".module-item-pic > img");return{vod_id:h.attr("href"),vod_name:h.attr("title"),vod_pic:A.attr("data-src")||A.attr("src"),vod_remarks:h.text()}}).get().filter(p=>p.vod_id&&p.vod_name);if(f.length>0)return{page:a,pagecount:f.length<10?a:a+1,list:f}}catch{}return{page:a,pagecount:a,list:[]}}var S5e={meta:{key:"duoduo",name:"\u300C\u76D8\u300D\u591A\u591A",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Hsr),t.post("/category",Qsr),t.post("/detail",Gsr),t.post("/play",Or),t.post("/search",Vsr),t.get("/test",_5e),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:hL};var bw=Re(Jn(),1),Mit=Re(v0(),1);var Rit=Re(require("http"),1);var yw=Re(require("fs"),1),sae=Re(require("path"),1);var v5e=Re(require("os"),1),zsr=t=>{if(!t)return!1;let e=typeof t.family=="string"?t.family:String(t.family||"");return e==="IPv4"||e==="4"},Ksr=t=>{let e=String(t||"").trim();return/^\d{1,3}(\.\d{1,3}){3}$/.test(e)?e.split(".").every(r=>{let n=Number(r);return Number.isInteger(n)&&n>=0&&n<=255}):!1},Ysr=t=>/^192\.168\./.test(t)||/^10\./.test(t)||/^172\.(1[6-9]|2\d|3[0-1])\./.test(t),yz=t=>/^100\.(6[4-9]|[7-9]\d|1[01]\d|12[0-7])\./.test(t),Jsr=t=>{let e=String(t||"").trim();return/^0\./.test(e)||/^127\./.test(e)||/^169\.254\./.test(e)||/^192\.0\.0\./.test(e)||/^192\.0\.2\./.test(e)||/^198\.18\./.test(e)||/^198\.19\./.test(e)||/^198\.51\.100\./.test(e)||/^203\.0\.113\./.test(e)||/^22[4-9]\./.test(e)||/^23\d\./.test(e)||/^24\d\./.test(e)||/^25[0-5]\./.test(e)},xz=(t="")=>/(rmnet|ccmni|pdp|wwan|cell|mobile|clat|v4-rmnet)/i.test(String(t||"")),Xsr=(t="")=>/(wlan|wi-?fi|eth|en\d|lan|bridge)/i.test(String(t||"")),bz=(t="")=>/(virtual|veth|vethernet|vmware|vbox|hyper-v|docker|podman|br-|wsl|utun|tun|tap|tailscale|zerotier|wireguard|wg|clash|mihomo|loopback|pseudo)/i.test(String(t||"")),Zsr=t=>{let e=0;return/^192\.168\./.test(t.ip)?e+=300:/^172\.(1[6-9]|2\d|3[0-1])\./.test(t.ip)?e+=260:/^10\./.test(t.ip)?e+=220:yz(t.ip)||(e+=180),Xsr(t.name)&&(e+=80),xz(t.name)&&(e-=320),bz(t.name)&&(e-=260),yz(t.ip)&&(e-=220),e},D0=function(){let t=String(process.env.CATPAW_HOST_IP||process.env.HOST_IP||"").trim();if(Ksr(t))return t;let e=v5e.default.networkInterfaces()||{},r=[];Object.entries(e).forEach(([a,o])=>{Array.isArray(o)&&o.forEach(c=>{if(!zsr(c)||c.internal)return;let u=String(c.address||"").trim();!u||u.startsWith("169.254.")||Jsr(u)||r.push({ip:u,name:String(a||"")})})});let n=r.map(a=>({...a,score:Zsr(a)})).sort((a,o)=>o.score-a.score),s=n.find(a=>{let o=xz(a.name),c=bz(a.name);return!o&&!c&&!yz(a.ip)});if(s)return s.ip;let i=n.find(a=>Ysr(a.ip)&&!xz(a.name)&&!bz(a.name));return i?i.ip:"127.0.0.1"};Pt();ar();St();kL();$n();Pt();St();ar();no();function Mir(t,e,r=!1){if(e===0&&!r)return t.map(i=>({...i,t:i.t!==void 0?i.t:parseFloat(i.p.split(",")[0])}));let n=t.reduce((i,a)=>{let o=a.t!==void 0?a.t:parseFloat(a.p.split(",")[0]),c=e===0?o.toFixed(2):Math.floor(o/(e*60));return i[c]||(i[c]=[]),i[c].push({...a,t:o}),i},{});return Object.keys(n).map(i=>{let o=n[i].reduce((c,u)=>{let l=u.m.split(" X")[0].trim();if(c[l]||(c[l]={count:0,earliestT:u.t,cid:u.cid,p:u.p,like:0,sources:new Set}),c[l].count+=1,c[l].earliestT=Math.min(c[l].earliestT,u.t),c[l].like+=u.like!==void 0?u.like:0,u.p){let d=u.p.match(/\[([^\]]*)\]$/);d&&d[1]&&d[1].split(/[&&]/).forEach(f=>{f.trim()&&c[l].sources.add(f.trim())})}return c},{});return Object.keys(o).map(c=>{let u=o[c],l=Math.max(1,u.sources.size),d=Math.round(u.count/l);d<1&&(d=1);let f=Array.from(u.sources).join("\uFF06"),p=u.p.replace(/\[([^\]]*)\]$/,`[${f}]`);return{cid:u.cid,p,m:d>1?`${c}\u200Ax\u200A${d}`:c,t:u.earliestT,like:u.like}})}).flat().sort((i,a)=>i.t-a.t)}function Wir(t){if(!O.likeSwitch)return t;let e=new Set(["[hanjutv]","[sohu]","[bilibili1]","[migu]"]);return t.map(r=>{if(!r.like||r.like<5)return r;let n=r.p.match(/,(\[[^\]]+\])$/)?.[1]||"",a=n.includes("\u97E9\u5C0F\u5708")||n.includes("\u6781\u901F\u7248")||e.has(n)?100:1e3,o=r.like>=a?"\u{1F525}":"\uFE0F\u2661",c;r.like>=1e4?c=(r.like/1e4).toFixed(1)+"w":r.like>=1e3?c=(r.like/1e3).toFixed(1)+"k":c=r.like.toString();let u=`\u200A${o}${c}`,l=r.m+u,{like:d,...f}=r;return{...f,m:l}})}function $ir(t,e){if(e===0)return t;let r=e*1e3,n=t.length;if(n<=r)return t;let s=n/r,i=[];for(let a=0;a([^<]+)<\/d>/g)].map(f=>({p:f[1],m:f[2]}));else if(t&&Array.isArray(t.danmuku)){let f={right:1,top:4,bottom:5},p=m=>m?parseInt(m.replace("#",""),16):16777215;i=t.danmuku.map(m=>({timepoint:m[0],ct:f[m[1]]!==void 0?f[m[1]]:1,color:p(m[2]),content:m[4]}))}else Array.isArray(t)&&(i=t);if(!i.length)return[];for(let f of i){let p,m,h,A,g;if("progress"in f&&"mode"in f&&"content"in f)h=(f.progress/1e3).toFixed(2),A=f.mode||1,g=f.color||16777215,m=f.content;else if("timepoint"in f)h=parseFloat(f.timepoint).toFixed(2),A=f.ct||0,g=f.color||16777215,m=f.content;else{if(!("p"in f))continue;let y=f.p.split(",");h=parseFloat(y[0]).toFixed(2),A=y[1]||0,y.length===4?g=y[2]||16777215:y.length>=8?g=y[3]||16777215:g=y[3]||y[2]||16777215,m=f.m}let b=f._sourceLabel||e;f.realTimeSource&&!b.includes(f.realTimeSource)&&(b=`${b}\uFF06${f.realTimeSource}`),!s&&/[&&]/.test(b)&&(s=!0),p=[h,A,g,`[${b}]`].join(","),r.push({p,m,cid:n++,like:f?.like})}let a=O.blockedWords.split(/(?<=\/),(?=\/)/).map(f=>{let p=f.trim();if(p.startsWith("/")&&p.endsWith("/"))try{return new RegExp(p.slice(1,-1))}catch(m){return _("error",`[Utils] [Danmu] \u65E0\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F: ${p}`,m),null}return null}).filter(f=>f!==null);_("info",`[Utils] [Danmu] \u539F\u59CB\u5C4F\u853D\u8BCD\u5B57\u7B26\u4E32: ${O.blockedWords}`),_("info",`[Utils] [Danmu] \u5C4F\u853D\u8BCD\u5217\u8868: ${(f=>Array.isArray(f)?f.map(p=>p.toString()).join(` +`):String(f))(a)}`);let c=r.filter(f=>!a.some(p=>p.test(f.m)));_("info",`[Utils] [Danmu] \u53BB\u91CD\u5206\u949F\u6570: ${O.groupMinute}`);let u=Mir(c,O.groupMinute,s),l=Wir(u),d=$ir(l,O.danmuLimit);if(O.convertTopBottomToScroll||O.convertColor==="white"||O.convertColor==="color"){let f=0,p=0;d=d.map(m=>{let h=m.p.split(",");if(h.length<3)return m;let A=parseInt(h[1],10),g=parseInt(h[2],10),b=!1;O.convertTopBottomToScroll&&(A===4||A===5)&&(f++,A=1,b=!0),O.convertColor==="white"&&g!==16777215&&(p++,g=16777215,b=!0);let y=O.colorPool.split(",").map(v=>parseInt(v.trim(),10)).filter(v=>!isNaN(v)&&v>=0&&v<=16777215),x=y[Math.floor(Math.random()*y.length)];if(O.convertColor==="color"&&g===16777215&&g!==x&&(p++,g=x,b=!0),b){let v=[h[0],A,g,...h.slice(3)].join(",");return{...m,p:v}}return m}),f>0&&_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${f} \u6761\u9876\u90E8/\u5E95\u90E8\u5F39\u5E55\u4E3A\u6D6E\u52A8\u5F39\u5E55`),p>0&&_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${p} \u6761\u5F39\u5E55\u989C\u8272`)}return O.danmuSimplifiedTraditional==="traditional"&&(d=d.map(f=>({...f,m:Ro(f.m)})),_("info",`[Utils] [Danmu] [danmu convert] \u8F6C\u6362\u4E86 ${d.length} \u6761\u5F39\u5E55\u4E3A\u7E41\u4F53\u5B57`)),_("info",`[Utils] [Danmu] danmus_original: ${r.length}`),_("info",`[Utils] [Danmu] danmus_filter: ${c.length}`),_("info",`[Utils] [Danmu] danmus_group: ${u.length}`),_("info",`[Utils] [Danmu] danmus_limit: ${d.length}`),_("info","[Utils] [Danmu] Top 5 danmus:",JSON.stringify(d.slice(0,5),null,2)),d}function uK(t){return typeof t.r!="number"||t.r<0||t.r>255||typeof t.g!="number"||t.g<0||t.g>255||typeof t.b!="number"||t.b<0||t.b>255?-1:t.r*256*256+t.g*256+t.b}function gb(t){return typeof t!="string"||t.length!==6||!/^[0-9A-Fa-f]{6}$/.test(t)?16777215:parseInt(t,16)}function Fir(t){let e=` `;e+=` -`;let r=t.comments||[];if(Array.isArray(r))for(let n of r){let s=Mir(n);e+=' '+$ir(n.m)+` -`}return e+="",e}function Lir(){let e=(Date.now()%1e8).toString().padStart(8,"0"),r=Math.floor(Math.random()*1e3).toString().padStart(3,"0");return e+r}function Mir(t){let e=t.p.split(","),n=(parseFloat(e[0])||0).toFixed(1),s=e[1]||"1",i="25",a=e[2]||"16777215",o="1751533608",c="0",u="0",l=Lir();return`${n},${s},${i},${a},${o},${c},${u},${l}`}function Wir(t){return t?String(t).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"):""}function $ir(t){return t?String(t).replace(/&/g,"&").replace(//g,">"):""}function ag(t,e){let r=e||O.danmuOutputFormat;if(r=r.toLowerCase(),_("info",`[Utils] [Danmu] [Format] Using format: ${r}`),r==="xml")try{let n=Bir(t);return _8e(n)}catch(n){return _("error",`[Utils] [Danmu] Failed to convert to XML: ${n.message}`),Le(t)}return Le(t)}ir();var df=class{constructor({apiKey:e,baseURL:r="https://api.openai.com/v1",model:n="gpt-4o",systemPrompt:s=""}){this.apiKey=e,this.baseURL=r.replace(/\/$/,""),this.model=n,this.systemPrompt=s}async chat(e,r={}){let n={model:r.model||this.model,messages:e,temperature:r.temperature??0,max_tokens:r.maxTokens??8192,stream:!1},s=await Kr(`${this.baseURL}/chat/completions`,JSON.stringify(n),{headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},timeout:6e4}),i=s.data;if(i?.error){let a=i.error.message;throw new Error(`AI API error ${s.status}: ${a}`)}return i.choices[0].message.content}async ask(e,r={}){let n=[];return this.systemPrompt&&n.push({role:"system",content:this.systemPrompt}),n.push({role:"user",content:e}),this.chat(n,r)}session(e={}){let r=[],n=this.chat.bind(this),s=this.systemPrompt;return s&&r.push({role:"system",content:s}),{async send(i){r.push({role:"user",content:i});let a=await n(r,e);return r.push({role:"assistant",content:a}),a},clear(){r.length=0,s&&r.push({role:"system",content:s})},getHistory(){return[...r]}}}async verify(){try{return{ok:!0,reply:await this.ask("hi",{maxTokens:1})}}catch(e){return{ok:!1,error:e.message}}}};var ga=Re(require("fs"),1),zB=Re(require("path"),1);bI();Ot();_t();hn();so();var Hn=null,KB=0,Oo=!1,GB=0,gb="0.00",LI=!1,U0=new Map,H8e="custom",Q8e=null,G8e=null,VB=zB.default.join(process.cwd(),".cache"),Y8e="bangumi-data-cache.json",Fir=2e4,og=new Map,K8e={custom:["https://cdn.jsdelivr.net/npm/@wan0ge/bangumi-data@0.3/dist/data.json","https://unpkg.com/@wan0ge/bangumi-data@0.3/dist/data.json"],official:["https://cdn.jsdelivr.net/npm/bangumi-data@0.3/dist/data.json","https://unpkg.com/bangumi-data@0.3/dist/data.json"]},Uir="@wan0ge/bangumi-data",qir="bangumi-data",jir=/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|æ—¥[语語]|日配|原版|原[声聲])(?:版)?/,J8e=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|åŠ‡å ´ç‰ˆ|ç»­[篇集]|å¤–ä¼ )(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/gi,Hir=/\s+/g,Qir=/[,,]/,Gir=/[::]/;function lz(t){let e=new Map,r=t.length;for(let n=0;n=0?"custom":"official";return _("info",`[Utils] [Bangumi-Data] \u7248\u672C\u5BF9\u6BD4: @wan0ge/bangumi-data@${t} vs bangumi-data@${e} => \u4F7F\u7528${n==="custom"?"\u81EA\u5B9A\u4E49":"\u5B98\u65B9"}\u6E90`),n}catch(t){return _("warn",`[Utils] [Bangumi-Data] \u6570\u636E\u6E90\u9009\u62E9\u5F02\u5E38\uFF0C\u56DE\u9000\u5230\u81EA\u5B9A\u4E49\u6E90: ${t.message}`),"custom"}}async function YB(t,e=!1,r=null){if(!O.useBangumiData)return;let n=null,s=O.bangumiDataCacheDays!==void 0?O.bangumiDataCacheDays:7,i=s*24*60*60*1e3;if(t==="node"?ga.default.existsSync(VB)?n=zB.default.join(VB,Y8e):LI||(_("warn","[Utils] [Bangumi-Data] \u672A\u68C0\u6D4B\u5230\u6839\u76EE\u5F55\u7684 .cache \u6587\u4EF6\u5939\uFF01"),_("warn","[Utils] [Bangumi-Data] \u6309\u7167\u9879\u76EE\u89C4\u8303\uFF0C\u8BF7\u624B\u52A8\u6302\u8F7D\u6216\u521B\u5EFA .cache \u76EE\u5F55\u4EE5\u542F\u7528\u6301\u4E45\u5316\u3002"),_("warn","[Utils] [Bangumi-Data] \u672C\u6B21\u8FD0\u884C\u5DF2\u9000\u5316\u4E3A\u7EAF\u5185\u5B58\u6A21\u5F0F (\u91CD\u542F\u540E\u9700\u91CD\u65B0\u4E0B\u8F7D)\u3002"),LI=!0):LI||(_("info",`[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230 ${t} \u4E91\u73AF\u5883\uFF0C\u5F53\u524D\u8FD0\u884C\u4E8E\u7EAF\u5185\u5B58\u52A0\u901F\u6A21\u5F0F\u3002`),LI=!0),Oo&&Date.now()-GB>Fir&&(_("warn","[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230\u4E0B\u8F7D\u72B6\u6001\u9501\u6B7B (\u7531\u4E8E Serverless \u8FDB\u7A0B\u4F11\u7720/\u5F3A\u6740\u5BFC\u81F4)\uFF0C\u5F3A\u5236\u91CA\u653E\u9501..."),Oo=!1),Hn){if(s>0&&Date.now()-KB{Oo=!1}));return}if(n&&ga.default.existsSync(n))try{let a=ga.default.statSync(n),o=process.memoryUsage().heapUsed,c=Date.now();Hn=JSON.parse(ga.default.readFileSync(n,"utf-8")),Hn?.items?.length>0&&Hn.items[0]._flatText===void 0?(Hn=X8e(Hn),ga.default.writeFileSync(n,JSON.stringify(Hn),"utf-8"),lz(Hn.items)):Hn?.items?.length>0&&lz(Hn.items);let u=process.memoryUsage().heapUsed,l=Date.now()-c;gb=Math.max(0,(u-o)/1024/1024).toFixed(2);let d=(process.memoryUsage().rss/1024/1024).toFixed(2);KB=Date.now(),_("info",`[Utils] [Bangumi-Data] \u6210\u529F\u4ECE\u672C\u5730\u78C1\u76D8\u52A0\u8F7D\u57FA\u7840\u6570\u636E\uFF0C\u6761\u76EE\u6570: ${Hn.items.length}\uFF0C\u89E3\u6790\u8017\u65F6: ${l} ms\uFF0C\u7EA6\u5360\u5185\u5B58: ${gb} MB`),(s===0||Date.now()-a.mtimeMs>=i)&&e&&!Oo&&(_("info",`[Utils] [Bangumi-Data] \u78C1\u76D8\u6570\u636E${s===0?"\u5F3A\u5236\u66F4\u65B0":"\u5DF2\u8FC7\u671F"}\uFF0C\u4FDD\u7559\u8001\u6570\u636E\u670D\u52A1\u672C\u6B21\u8BF7\u6C42\uFF0C\u542F\u52A8\u540E\u53F0\u9759\u9ED8\u66F4\u65B0...`),Oo=!0,GB=Date.now(),uz(n).finally(()=>{Oo=!1}));return}catch(a){_("error","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u89E3\u6790\u5931\u8D25\uFF0C\u51C6\u5907\u91CD\u65B0\u4E0B\u8F7D",a.message),Hn=null}if(Oo){if(e){_("info","[Utils] [Bangumi-Data] \u6B63\u5728\u7B49\u5F85\u57FA\u7840\u6570\u636E\u4E0B\u8F7D\u5B8C\u6210...");let a=0;for(;Oo;){if(a>150){_("warn","[Utils] [Bangumi-Data] \u7B49\u5F85\u6392\u961F\u8D85\u65F6\uFF0C\u653E\u5F03\u7B49\u5F85"),Oo=!1;break}await new Promise(o=>setTimeout(o,100)),a++}}}else{_("info","[Utils] [Bangumi-Data] \u672A\u547D\u4E2D\u4EFB\u4F55\u6709\u6548\u7F13\u5B58\uFF0C\u6B63\u5728\u83B7\u53D6\u57FA\u7840\u6570\u636E..."),Oo=!0,GB=Date.now();let a=uz(n).finally(()=>{Oo=!1});e?await a:(_("info","[Utils] [Bangumi-Data] \u5F53\u524D\u975E\u6838\u5FC3\u8BF7\u6C42\uFF0C\u6570\u636E\u83B7\u53D6\u8F6C\u5165\u540E\u53F0\u5F02\u6B65\u6267\u884C"),r&&typeof r.waitUntil=="function"&&(_("info","[Utils] [Bangumi-Data] \u8C03\u7528 ctx.waitUntil \u5EF6\u957F Serverless \u751F\u547D\u5468\u671F"),r.waitUntil(a)))}}var zir=new Set(["anidb","bangumi","gamer","gamer_hk","bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw","tmdb"]);function X8e(t){if(!t||!t.items)return{items:[]};let e=[];for(let r of t.items){let n=[];if(r.sites){for(let o of r.sites)if(zir.has(o.site)){let c={site:o.site,id:o.id};o.season_id&&(c.season_id=String(o.season_id)),o.video_sn&&(c.video_sn=String(o.video_sn)),o.comment&&(c.comment=o.comment),o.related&&(c.related=o.related),n.push(c)}}if(n.length===0)continue;let s={title:r.title,type:r.type,sites:n};r.begin&&(s.begin=r.begin),r.titleTranslate&&(s.titleTranslate=r.titleTranslate);let i=r.title;if(r.titleTranslate)for(let o in r.titleTranslate){let c=r.titleTranslate[o];for(let u=0;unew AbortController);s.forEach(p=>{_("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${p}`)});let o=s.map(async(p,m)=>{let h=a[m],A=await cb(p,{...i,signal:h.signal});if(!A.ok)throw new Error(`HTTP error ${A.status} from ${p}`);let g=await A.json(),b=g.items?g.items.length:0;if(h.signal.aborted)throw new Error("Aborted before parsing");let y=Date.now(),x=X8e(g),v=Date.now()-y,I=null;return t&&!h.signal.aborted&&(I=`${t}.tmp${m}`,ga.default.writeFileSync(I,JSON.stringify(x),"utf-8")),{index:m,url:p,tempFilePath:I,resultData:x,pruneCost:v,originalCount:b}}),c=await Promise.any(o);a.forEach((p,m)=>{m!==c.index&&p.abort()}),t&&(s.forEach((p,m)=>{if(m!==c.index){let h=`${t}.tmp${m}`;if(ga.default.existsSync(h))try{ga.default.unlinkSync(h)}catch{}}}),ga.default.renameSync(c.tempFilePath,t));let u=((Date.now()-r)/1e3).toFixed(2);_("info",`[Utils] [Bangumi-Data] \u7CBE\u7B80\u6570\u636E\u5DF2\u6210\u529F\u5199\u5165\u78C1\u76D8 (\u8282\u70B9: ${new URL(c.url).hostname} ,\u9636\u6BB5\u8017\u65F6: ${u} \u79D2)`),Hn=c.resultData,n=c.pruneCost,lz(Hn.items),og.clear();let l=process.memoryUsage().heapUsed,d=((Date.now()-r)/1e3).toFixed(2);gb=Math.max(0,(l-e)/1024/1024).toFixed(2);let f=(process.memoryUsage().rss/1024/1024).toFixed(2);KB=Date.now(),_("info",`[Utils] [Bangumi-Data] \u52A0\u8F7D\u5230\u5185\u5B58\u6210\u529F\uFF0C\u4FDD\u7559/\u539F\u59CB\u6761\u76EE\u6570: ${Hn.items.length} / ${c.originalCount}\uFF0C\u5904\u7406\u8017\u65F6: ${n} ms\uFF0C\u5168\u94FE\u8DEF\u603B\u8017\u65F6: ${d} \u79D2\uFF0C\u51C0\u589E\u5185\u5B58: ${gb} MB (\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${f} MB)`)}catch(e){let r=e instanceof AggregateError?e.errors.map(n=>n.message).join(" | "):e.message;_("error","[Utils] [Bangumi-Data] \u4E0B\u8F7D\u5931\u8D25 (\u6240\u6709 CDN \u5747\u672A\u54CD\u5E94\u6216\u62A5\u9519):",r)}}async function Au(t,e){if(!Hn||!Hn.items)return[];let r=og.get(t);if(!r){if(r=(async()=>{let c=[],u=[t];try{u=[...new Set([t,Qt(t),No(t)])]}catch{}let d=[Qt(t)].map(h=>{let A=h.replace(J8e,"");return A=Fr(A).toLowerCase(),A.length>=2?A:Fr(h).toLowerCase()}).filter(h=>h.length>0),f=null;if(typeof U0<"u"&&U0.size>0&&d.length>0){let h=new Set;for(let A of d){let g=Array.from(new Set(A.replace(Hir,"")));if(g.length===0)continue;g.sort((x,v)=>{let I=U0.get(x)?.length||0,R=U0.get(v)?.length||0;return I-R});let b=U0.get(g[0]);if(!b||b.length===0)continue;let y=new Set(b);for(let x=1;xA);let p=Hn.items,m=u.length;for(let h=0;h100){let c=og.keys().next().value;og.delete(c)}og.set(t,r)}let n=await r,s=n,i=Wt(t);if(i!==null){let c=n.filter(({item:u})=>{let l=Ct(u.title).season;if(l===null&&u.titleTranslate)for(let d in u.titleTranslate){let f=u.titleTranslate[d];for(let p=0;p1?(l||1)===i:i===1?l===null||l===1:!0});c.length>0&&(s=c)}let a=jir,o=[];for(let{item:c,titles:u}of s){if(!c.sites)continue;let l=c.sites.filter(d=>e.includes(d.site));for(let d of l){let f="TV\u52A8\u753B",p="tvseries";c.type==="movie"?(f="\u5267\u573A\u7248",p="movie"):c.type==="tv"?(f="TV\u52A8\u753B",p="tvseries"):c.type==="ova"?(f="OVA",p="ova"):c.type==="web"&&(f="WEB\u52A8\u753B",p="web");let m="";["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(d.site)&&(m="\uFF08\u6E2F\u6FB3\u53F0\uFF09");let h=[],A=[];if(d.comment){let b=d.comment.split(Qir),y=new Map;if(d.related&&Array.isArray(d.related))for(let x of d.related)x.id&&y.set(String(x.id),x.season_id||null);for(let x of b){let v=x.split(Gir);if(v.length>=2){let I=v[0].trim(),R=v[1].trim();R&&a.test(I)&&h.push({title:c.title,titles:[...u],begin:c.begin,siteId:R,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:` ${I}${m}`,season_id:y.get(R)||null})}else if(v.length===1&&v[0].trim()){let I=v[0].trim();a.test(I)&&A.push(I)}}}let g="";A.length>0&&(g+=` ${A.join(" ")}`),g+=m,o.push({title:c.title,titles:[...u],begin:c.begin,siteId:d.id,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:g,season_id:d.season_id||null,video_sn:d.video_sn||null}),o.push(...h)}}return o}function Z8e(t=!1){if(Hn!==null){let e=Hn.items?Hn.items.length:0;Hn=null,KB=0,og.clear(),U0.clear();let r=(process.memoryUsage().rss/1024/1024).toFixed(2);_("info",`[Utils] [Bangumi-Data] \u5185\u5B58\u7F13\u5B58\u5DF2\u4E3B\u52A8\u91CA\u653E (\u539F\u6761\u76EE\u6570: ${e}\uFF0C\u91CA\u653E: ${gb} MB\uFF0C\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${r} MB)`),gb="0.00",LI=!1}if(t&&ga.default.existsSync(VB))try{let e=zB.default.join(VB,Y8e);ga.default.existsSync(e)&&ga.default.unlinkSync(e);for(let r=0;r<5;r++){let n=`${e}.tmp${r}`;ga.default.existsSync(n)&&ga.default.unlinkSync(n)}_("info","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u5DF2\u540C\u6B65\u6E05\u7406")}catch(e){_("error",`[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ${e.message}`)}}Ot();ir();_t();so();kB();$T();$n();_V();hn();Ot();_t();ir();so();var JL=new Map;async function FT(t,e={}){let n=`https://api.tmdb.org/3/${t}`,s=O.makeProxyUrl(n);try{let i=await ge(s,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:e.signal});return i.status!=200?null:i}catch(i){if(i.name==="AbortError")throw i;return _("error","[Utils] [TMDB] Api error:",{message:i.message,name:i.name,stack:i.stack}),null}}async function XL(t,e="multi",r={}){let{page:n=1,maxPages:s=3,signal:i=null}=r;if(r.page!==void 0){let o=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${n}`;return await FT(o,{signal:i})}let a=[];for(let o=1;o<=s;o++){if(i&&i.aborted)throw new DOMException("Aborted","AbortError");let c=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${o}`,u=await FT(c,{signal:i});if(!u||!u.data)break;let l=typeof u.data=="string"?JSON.parse(u.data):u.data;if(!l.results||l.results.length===0||(a.push(...l.results),l.results.length<20))break}return _("info",`[Utils] [TMDB] \u5171\u83B7\u53D6\u5230 ${a.length} \u6761\u641C\u7D22\u7ED3\u679C\uFF08\u6700\u591A${s}\u9875\uFF09`),{data:{results:a},status:200}}async function S0r(t,e,r={}){let n=`${t}/${e}?api_key=${O.tmdbApiKey}&language=ja-JP`;return await FT(n,r)}async function mnt(t,e,r={}){let n=`${t}/${e}/external_ids?api_key=${O.tmdbApiKey}`;return await FT(n,r)}async function v0r(t,e,r={}){let n=`${t}/${e}/alternative_titles?api_key=${O.tmdbApiKey}`;return await FT(n,r)}function I0r(t,e,r=""){let n=t?.data?.results||t?.data?.titles||[];if(!n.length)return null;let s=(r||"").toLowerCase().trim(),i=o=>o.title||o.name||"",a=[o=>s&&i(o).toLowerCase().trim()===s,...["CN","TW","HK","SG"].map(o=>c=>(c.iso_3166_1||c.iso_639_1)===o&&!cf(i(c))),o=>!cf(i(o))];for(let o of a){let c=n.find(o);if(c){let u=i(c);return _("info",`[Utils] [TMDB] \u6309\u4F18\u5148\u7EA7\u7B56\u7565\u6210\u529F\u63D0\u53D6\u6700\u4F73\u4E2D\u6587\u522B\u540D: ${u}`),u}}return null}async function C0r(t,e,r=""){let n=t.name||t.title||"";if(r&&n.toLowerCase().trim()===r.toLowerCase().trim()||!(cf(n)||r&&n.toLowerCase().trim()!==r.toLowerCase().trim()))return n;_("info",`[Utils] [TMDB] \u5C1D\u8BD5\u83B7\u53D6\u4E2D\u6587\u522B\u540D\u4EE5\u5BFB\u627E\u66F4\u4F18\u5339\u914D (\u5F53\u524D\u6807\u9898: "${n}")`);let i=t.media_type||(t.name?"tv":"movie");try{if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let a=await v0r(i,t.id,{signal:e});if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let o=I0r(a,i,r);return o?(_("info",`[Utils] [TMDB] \u5C06\u4F7F\u7528\u4E2D\u6587\u522B\u540D\u8FDB\u884C\u76F8\u4F3C\u5339\u914D: ${o}`),o):(_("info",`[Utils] [TMDB] \u672A\u627E\u5230\u4E2D\u6587\u522B\u540D\uFF0C\u4F7F\u7528\u539F\u6807\u9898: ${n}`),n)}catch(a){if(a.name==="AbortError")throw a;return _("error",`[Utils] [TMDB] \u83B7\u53D6\u522B\u540D\u5931\u8D25: ${a.message}`),n}}async function Xb(t,e=null,r="Unknown"){let n=ynt(t);if(n!==t&&_("info",`[Utils] [TMDB] \u4F18\u5316\u641C\u7D22\u5173\u952E\u8BCD: "${t}" -> "${n}"`),O.useBangumiData){let o=await Au(n,["tmdb","bangumi","anidb"]);if(o&&o.length>0){let c=o[0],u=c.titles.find(d=>d&&d.includes(n))||c.titles[1]||c.title,l=c.title;return _("info",`[Utils] [TMDB] Bangumi-Data \u672C\u5730\u547D\u4E2D\uFF0C\u63D0\u53D6\u539F\u540D\u6210\u529F: \u539F\u540D=${l}, \u522B\u540D=${u}\uFF08\u68C0\u7D22\u8BCD\uFF1A${n}\uFF09`),{title:l,cnAlias:u}}}if(!O.tmdbApiKey)return _("info","[Utils] [TMDB] \u672A\u914D\u7F6EAPI\u5BC6\u94A5\uFF0C\u8DF3\u8FC7TMDB\u7F51\u7EDC\u641C\u7D22"),null;let s=JL.get(n);if(s)_("info",`[Utils] [TMDB] \u52A0\u5165\u6B63\u5728\u8FDB\u884C\u7684\u641C\u7D22: ${n} (${r})`);else{let o=new AbortController;s={controller:o,refCount:0,promise:(async()=>{try{let u=o.signal,l=P=>{let B=P.genre_ids||[],M=P.genres||[],D=B.length>0?B:M.map(W=>W.id),L=P.original_language||"";return D.includes(16)?{isValid:!0,reason:"\u660E\u786E\u52A8\u753B\u7C7B\u578B(genre_id: 16)"}:L==="ja"?{isValid:!0,reason:"\u539F\u59CB\u8BED\u8A00\u4E3A\u65E5\u8BED(ja),\u53EF\u80FD\u662F\u65E5\u5267/\u65E5\u5F71/\u65E5\u7EFC\u827A"}:{isValid:!1,reason:`\u975E\u52A8\u753B\u4E14\u975E\u65E5\u8BED\u5185\u5BB9(language: ${L}, genres: ${D.join(",")})`}},d=(P,B)=>{let M=J=>J.toLowerCase().replace(/\s+/g,"").replace(/[::、,。!?;""''()【】《》]/g,"").trim(),D=M(P),L=M(B);if(D===L)return 1;let Z=D.length=L.length?D:L;if(W.includes(Z)&&Z.length>0)return .6+Z.length/W.length*.3;let F=P.length>B.length?P:B,K=P.length>B.length?B:P;if(F.length===0)return 1;let j=(J,se)=>{J=J.toLowerCase(),se=se.toLowerCase();let oe=[];for(let ue=0;ue<=J.length;ue++){let Ie=ue;for(let we=0;we<=se.length;we++)if(ue===0)oe[we]=we;else if(we>0){let qe=oe[we-1];J.charAt(ue-1)!==se.charAt(we-1)&&(qe=Math.min(Math.min(qe,Ie),oe[we])+1),oe[we-1]=Ie,Ie=qe}ue>0&&(oe[se.length]=Ie)}return oe[se.length]};return(F.length-j(F,K))/F.length};if(_("info",`[Utils] [TMDB] \u6B63\u5728\u641C\u7D22 (Shared Task): ${n}`),u.aborted)throw new DOMException("Aborted","AbortError");let f=await XL(n,"multi",{signal:u});if(!f||!f.data)return _("info","[Utils] [TMDB] TMDB\u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),null;let p=typeof f.data=="string"?JSON.parse(f.data):f.data;if(!p.results||p.results.length===0)return _("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),null;let m=[],h=[];for(let P of p.results){let B=l(P);if(B.isValid)m.push(P);else{let M=P.name||P.title||"\u672A\u77E5";h.push(`${M}(${B.reason})`)}}if(m.length===0)return _("info","[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u62E6\u622A: \u641C\u7D22\u7ED3\u679C\u4E2D\u6CA1\u6709\u4EFB\u4F55\u76EE\u6807\u7C7B\u578B(\u52A8\u753B/\u65E5\u6587)\u7684\u5185\u5BB9"),null;_("info",`[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u5B8C\u6210: \u4FDD\u7559 ${m.length} \u4E2A\u6709\u6548\u6761\u76EE\u53C2\u4E0E\u5339\u914D\uFF0C\u8FC7\u6EE4 ${h.length} \u4E2A\u65E0\u5173\u6761\u76EE${h.length>0?"\uFF0C\u8FC7\u6EE4\u8BE6\u60C5: "+h.join(", "):""}`);let A=null,g=-1,b=null,y=0,x=5,v=!1;for(let P of m){let B=P.name||P.title||"";if(!B)continue;let M=d(n,B),D=P.original_name||P.original_title||"",L=D?d(n,D):0,Z=Math.max(M,L);if(Z===1&&!v){v=!0,_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: 100.00% (\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22)`),Z>g&&(g=Z,A=P,b=B);continue}let W,F,K=B.toLowerCase().trim()===n.toLowerCase().trim();if(v||K)W=B,F=Z,v&&K?_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: ${(F*100).toFixed(2)}% (\u5DF2\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u522B\u540D\u641C\u7D22)`):_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${B}" - \u76F8\u4F3C\u5EA6: ${(F*100).toFixed(2)}%`);else{if(yg&&(g=F,A=P,b=W)}if(!A||g<.4)return _("info",`[Utils] [TMDB] \u6700\u4F73\u5339\u914D\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\u6216\u672A\u627E\u5230\u5339\u914D (${A?(g*100).toFixed(2)+"%":"N/A"}),\u8DF3\u8FC7`),null;_("info",`[Utils] [TMDB] TMDB\u6700\u4F73\u5339\u914D: ${b}, \u76F8\u4F3C\u5EA6: ${(g*100).toFixed(2)}%`);let R=A.media_type||(A.name?"tv":"movie"),w=await S0r(R,A.id,{signal:u}),N;if(!w||!w.data)N=A.name||A.title,_("info",`[Utils] [TMDB] \u4F7F\u7528\u4E2D\u6587\u641C\u7D22\u7ED3\u679C\u6807\u9898: ${N}`);else{let P=typeof w.data=="string"?JSON.parse(w.data):w.data;N=P.original_name||P.original_title||P.name||P.title,_("info",`[Utils] [TMDB] \u627E\u5230\u65E5\u8BED\u539F\u540D: ${N}`)}return{title:N,cnAlias:b}}catch(u){return u.name==="AbortError"?(_("info",`[Utils] [TMDB] \u540E\u53F0\u641C\u7D22\u4EFB\u52A1\u5DF2\u5B8C\u5168\u7EC8\u6B62 (${n})`),null):(_("error","[Utils] [TMDB] Background Search error:",{message:u.message,name:u.name,stack:u.stack}),null)}})().finally(()=>{JL.delete(n)})},JL.set(n,s),_("info",`[Utils] [TMDB] \u542F\u52A8\u65B0\u641C\u7D22\u4EFB\u52A1: ${n}`)}s.refCount++;let i=()=>{JL.get(n)===s&&(s.refCount--,s.refCount<=0&&(_("info",`[Utils] [TMDB] \u6240\u6709\u8C03\u7528\u8005\u5DF2\u53D6\u6D88\uFF0C\u7EC8\u6B62\u540E\u53F0\u8BF7\u6C42: ${n}`),s.controller.abort()))},a;if(e){if(e.aborted)return i(),_("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null;e.addEventListener("abort",i)}try{let o=new Promise((c,u)=>{e&&(a=()=>u(new DOMException("Aborted","AbortError")),e.addEventListener("abort",a))});return await Promise.race([s.promise,o])}catch(o){return o.name==="AbortError"?(_("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null):(_("error",`[Utils] [TMDB] \u641C\u7D22\u5F02\u5E38: ${o.message}`),null)}finally{e&&(e.removeEventListener("abort",i),a&&e.removeEventListener("abort",a))}}async function hnt(t,e=null,r=null){if(!cf(t))return t;if(O.useBangumiData){let i=ynt(t),a=Au(i,["tmdb","bangumi","anidb"]);if(a&&a.length>0){let o=a[0],c=o.titles.find(u=>u&&!cf(u))||o.titles[1];if(c&&!cf(c))return _("info",`[Utils] [TMDB] \u547D\u4E2D\u672C\u5730 Bangumi Data: ${t} -> ${c}\uFF08\u68C0\u7D22\u8BCD\uFF1A${i}\uFF09`),c}}let n=e!=null,s=n?"tv":"movie";try{let i=await XL(t,s);if(!i.data.results||i.data.results.length===0)return _("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),t;let o=i.data.results.find(u=>{let l=n?u.name:u.title;return l&&!cf(l)})||i.data.results[0],c=n?o.name:o.title;return c?(_("info",`\u539F\u6807\u9898: ${t} -> \u4E2D\u6587\u6807\u9898: ${c}`),c):t}catch(i){return _("error","\u67E5\u8BE2 TMDB \u65F6\u51FA\u9519:",i),t}}var gnt=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|åŠ‡å ´ç‰ˆ|ç»­[篇集]|å¤–ä¼ )(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/i,pnt=/[ ::~~]/;function Ant(t){let e=t.match(gnt);return e?e.index:t.length}function ynt(t){let e=Ant(t);return e{let a=i.org_title||i.title||"";return a.substring(0,Ant(a))}),s="";if(n.length>0){let i=n.concat().sort(),a=i[0],o=i[i.length-1],c=0;for(;c1&&_("info",`[Utils] [TMDB] \u8BA1\u7B97\u51FA\u6700\u957F\u516C\u5171\u524D\u7F00 (LCP): "${s}"`);for(let i of t){let a=i.title||"";if(!(i.isLocalPriority||a.includes(e)))if(s&&s.length>1&&a.startsWith(s)){let o=a.substring(s.length).trim();i._displayTitle=o?`${e}${o.match(/^[~~::]/)?"":" "}${o}`:e,_("info",`[Utils] [TMDB] [LCP\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else{let o=a.match(pnt);if(o){let c=a.substring(0,o.index).trim(),u=a.substring(o.index);if(c&&gnt.test(c)){let l=u.trim().match(pnt),d=l?u.trim().substring(l.index):"";i._displayTitle=`${c} ${e}${d}`,_("info",`[Utils] [TMDB] [\u524D\u7F00\u4FDD\u62A4\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else i._displayTitle=e+u,_("info",`[Utils] [TMDB] [\u5206\u9694\u7B26\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else cf(a)?(i._displayTitle=e,_("info",`[Utils] [TMDB] [\u7EAF\u5916\u6587\u5168\u66FF\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)):_("info",`[Utils] [TMDB] [\u8DF3\u8FC7\u66FF\u6362] "${a}" \u542B\u6709\u4E2D\u6587\u4E14\u7279\u5F81\u4E0D\u7B26\uFF0C\u62D2\u7EDD\u5F3A\u5236\u5168\u66FF\u4EE5\u9632\u8BEF\u6740`)}}}Ot();_t();$n();so();hn();var Cu="$$$",Sg="&",T0r=!1,oi=Object.freeze({TITLE_STRUCTURE_CONFLICT:-.3,LANG_MATCH_CN:.15,LANG_MISMATCH:-.2,DATE_MATCH:0,EP_ALIGN:{MOVIE_TYPE_MISMATCH:-5,SPECIAL_STRICT_MISMATCH:-8,LANG_MATCH:3,LANG_MISMATCH:-5,SEASON_NUM_MISMATCH:-10,SPECIAL_TYPE_MISMATCH:-10,SPECIAL_TYPE_MATCH:3,IS_SPECIAL_MATCH:3,SEASON_SHIFT_EXACT:15,CN_STRICT_MATCH:25,CN_STRICT_MISMATCH:-5,NUMERIC_MATCH:2,PATTERN_CONSISTENCY_BONUS:2,ZERO_DIFF_BONUS_BASE:100,ZERO_DIFF_BONUS_PER_HIT:5}}),Hl=Object.freeze({SIMILARITY_MIN:.65,SIMILARITY_STRONG:.98,TIER_DEFAULT:.001,TIER_CN:.4,TIER_PART:.5,COLLECTION_RATIO:4,COLLECTION_DIFF:6});function mt(t,...e){typeof e[0]=="string"&&e[0].includes("[Merge-Check]")&&!T0r||_(t,...e)}var ye={Lang:{CN:/(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])(?:版)?/,JP:/(æ—¥[语語]|日配|原版|原[声聲])(?:版)?/,CN_DUB_VER:/(\(|(|\[)?(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])版?(\)|)|\])?/g,JP_DUB_VER:/(\(|(|\[)?(æ—¥[语語]|日配|原版|原[声聲])版?(\)|)|\])?/g,KEYWORDS_STRONG:/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|æ—¥[语語]|日配|原版|原[声聲])(?:版)?/g,CN_STD:/普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]/g,JP_STD:/æ—¥[语語]|日配|原版|原[声聲]/g},Season:{PURE_PART:/^(?:(?:第|S(?:eason)?)\s*\d+(?:å­£|期|部)?|(?:Part|P|第)\s*\d+(?:部分)?)$/i,PART_NORM:/第\s*(\d+)\s*部分/g,PART_NORM_2:/(?:Part|P)[\s.]*(\d+)/gi,FINAL:/(?:The\s+)?Final\s+Season/gi,NORM:/(?:Season|S)\s*(\d+)/gi,CN:/第\s*([一二三四五六七八九十])\s*å­£/g,ROMAN:/(\s|^)(IV|III|II|I)(\s|$)/g,INFO_STRONG:/(?:season|s|第)\s*[0-9一二三四五六七八九十]+\s*(?:å­£|期|部(?!分))?/gi,PART_INFO_STRONG:/(?:part|p|第)\s*\d+\s*(?:部分)?/gi,PART_ANY:/(?:part|p)\s*\d+/gi,CN_STRUCTURE:/(?:^|\s|×\d+\s?)(承|转|结)(?=$|[\s\(\(\[【])/i,SUFFIX_AMBIGUOUS:/(?:[\s\u4e00-\u9fa5]|^)(S|T|R|II|III|IV)(?=$|[\s\(\(\[【])/i,SUFFIX_SEQUEL:/(?:续篇|续集|The Sequel)/i},Clean:{NA_TAG:/(\(|(|\[)N\/A(\)|)|\])/gi,SOURCE_TAG:/【.*?】/g,REGION_LIMIT:/(\(|(|\[)仅限.*?地区(\)|)|\])/g,PUNCTUATION:/[!!??,,.。、~~::\-–—_]/g,WHITESPACE:/\s+/g,FROM_SUFFIX:/\s*from\s+.*$/i,PARENTHESES_CONTENT:/(\(|(|\[).*?(\)|)|\])/g,MOVIE_KEYWORDS:/剧场版|åŠ‡å ´ç‰ˆ|the\s*movie|theatrical|movie|film|电影/gi,LONE_VER_CHAR:/(\s|^)版(\s|$)/g,NON_ALPHANUM_CN:/[^\u4e00-\u9fa5a-zA-Z0-9]/g,META_SUFFIX:/(\(|(|\[)(续篇|TV版|æ— ä¿®|æœªåˆ å‡|完整版)(\)|)|\])/gi,YEAR_TAG:/(\(|(|\[)\d{4}(\)|)|\]).*$/i,SUBTITLE_SEPARATOR:/^[\s::\-–—((\[【]/,SPACE_STRUCTURE:/.+[\s\u00A0\u3000].+/,SPLIT_SPACES:/[\s\u00A0\u3000]+/,REDUNDANT_SEPARATOR:/[\s::~~]/,REDUNDANT_UNSAFE_END:/[\(\(\[【::~~\-]$/,REDUNDANT_VALID_CHARS:/[\u4e00-\u9fa5a-zA-Z]{2,}/},Episode:{SUFFIX_DIGIT:/_\d+(?=$|\s)/g,FILE_NOISE:/_(\d{2,4})(?=\.)/g,SEASON_PREFIX:/(?:^|\s)(?:第\s*[0-9一二三四五六七八九十]+\s*å­£|S(?:eason)?\s*\d+)(?:\s+|_)/gi,CLEAN_SMART:/(?:^|\s)(?:EP|E|Vol|Episode|No|Part|第)\s*\d+(?:\.\d+)?(?:\s*[话話集])?(?!\s*[季期部])/gi,PUNCTUATION:/[!!??,,.。、~~::\-–—]/g,DANDAN_TAG:/^【(dandan|animeko)】/i,SPECIAL_START:/^S\d+/i,MOVIE_CHECK:/剧场版|åŠ‡å ´ç‰ˆ|movie|film/i,PV_CHECK:/(pv|trailer|预告)/i,SPECIAL_CHECK:/^(s|o|sp|special)\d/i,SEASON_MATCH:/(?:^|\s)(?:第|S)\s*(\d+)\s*[å­£S]/i,NUM_STRATEGY_A:/(?:第|s)\s*(\d+)\s*[å­£s]\s*(?:第|ep|e)\s*(\d+)/i,NUM_STRATEGY_B:/(?:ep|e|vol|episode|chapter|no|part|第)\s*(\d+(\.\d+)?)(?:\s*[话話集])?(?!\s*[季期部])/i,NUM_STRATEGY_C:/(?:^|\s)(?:第)?(\d+(\.\d+)?)(?:话|集|\s|$)/,DANDAN_IGNORE:/^[SC]\d+/i,MAP_EXCLUDE_KEYWORDS:/(?:^|\s)(?:PV|OP|ED|SP|Special|Drama|OAD|OVA|Opening|Ending|特番|特典|Behind\s+the\s+Scenes|Making|Interview)(?:\s|$|[::])/i,SINK_TITLE_STRICT:/^(?:S\d+|C\d+|SP\d*|OP\d*|ED\d*|PV\d*|Trailers?|Interview|Making|特番|特典)(?:\s|$|[::.\-]|\u3000)/i},Category:{ANIME_KW:/(动画|TV动画|动漫|日漫|国漫)/,REAL_KW:/(电视剧|真人剧|综艺|纪录片)/,ANIMEKO_SOURCE:/animeko/i},Similarity:{CN_STRICT_CORE_REMOVE:/[0-9a-zA-Z\s第季集话partEPep._\-–—::【】()()]/gi}},t4=[{regex:/(?:\s|^)A's$/i,val:"S2"},{regex:/(?:\s|^)StrikerS$/i,val:"S3"},{regex:/(?:\s|^)ViVid$/i,val:"S4"},{regex:/(?:\s|^)SuperS$/i,val:"S4"}],w0r=[{regex:/(?:第)?\s*(\d+)\s*(?:å­£|期|部(?!分))/,prefix:"S"},{regex:/\bseason\s*(\d+)/i,prefix:"S"},{regex:/\bs\s*(\d+)\b/i,prefix:"S"},{regex:/\bpart\s*(\d+)/i,prefix:"P"},{regex:/\b(ova|oad)\d*\b/i,val:"OVA"},{regex:/(剧场版|åŠ‡å ´ç‰ˆ|the\s*movie|theatrical|movie|film|电影)/i,val:"MOVIE"},{regex:/(续篇|续集)/,val:"SEQUEL"},{regex:/\b(sp|special)\d*\b/i,val:"SP"},{regex:/[^0-9](\d)$/,prefix:"S",useCleaned:!0}],R0r=[{seriesKeywords:["\u7F8E\u5C11\u5973\u6218\u58EB"],mappings:[{markers:["R"],targetStandard:"\u7B2C\u4E8C\u5B63"},{markers:["S"],targetStandard:"\u7B2C\u4E09\u5B63"},{markers:["SuperS","Super S"],targetStandard:"\u7B2C\u56DB\u5B63"},{markers:["Sailor Stars","\u6700\u540E\u7684\u661F\u5149"],targetStandard:"\u7B2C\u4E94\u5B63"}]},{seriesKeywords:["\u5C0F\u6797\u5BB6\u7684\u9F99\u5973\u4EC6"],mappings:[{markers:["S"],targetStandard:"\u7B2C\u4E8C\u5B63"}]},{seriesKeywords:["\u53EF\u80FD\u6210\u4E3A\u604B\u4EBA","\u4E0D\u884C"],mappings:[{markers:["NEXT SHINE","\u518D\u6B21\u95EA\u8000"],targetStandard:"\u7EED\u7BC7"}]},{seriesKeywords:["\u7EA2\u732A","\u5343\u4E0E\u5343\u5BFB","\u9F99\u732B"],defaultStandard:"\u5267\u573A\u7248"}];function N0r(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Sie(t){if(typeof structuredClone=="function")try{return structuredClone(t)}catch{}return JSON.parse(JSON.stringify(t))}function co(t){if(!t)return"Unspecified";let e=t.toLowerCase();return ye.Lang.CN.test(e)?"CN":ye.Lang.JP.test(e)?"JP":"Unspecified"}function Rnt(t){if(!t)return"";let e=t,r=e.toUpperCase();for(let n of R0r){if(!n.seriesKeywords.every(a=>r.includes(a.toUpperCase())))continue;let i=!1;if(n.mappings)for(let a of n.mappings)a.markers.forEach(o=>{let c=new RegExp(N0r(o),"gi");c.test(e)&&(e=e.replace(c,` ${a.targetStandard} `),i=!0)});!i&&n.defaultStandard&&(e+=` ${n.defaultStandard} `)}return e}function K0(t){if(!t)return"";let e=Qt(t);e=e.replace(ye.Clean.NA_TAG,""),e=e.replace(ye.Season.PART_NORM,"part $1"),e=e.replace(ye.Season.PART_NORM_2,"part $1"),e=e.replace(ye.Season.FINAL,"\u6700\u7EC8\u5B63"),e=e.replace(ye.Season.NORM,"\u7B2C$1\u5B63");let r={\u4E00:"1",\u4E8C:"2",\u4E09:"3",\u56DB:"4",\u4E94:"5",\u516D:"6",\u4E03:"7",\u516B:"8",\u4E5D:"9",\u5341:"10"};return e=e.replace(ye.Season.CN,(n,s)=>`\u7B2C${r[s]}\u5B63`),e=e.replace(ye.Season.ROMAN,(n,s,i,a)=>`${s}\u7B2C${{I:"1",II:"2",III:"3",IV:"4"}[i]}\u5B63${a}`),e=e.replace(ye.Lang.CN_DUB_VER,"\u4E2D\u914D\u7248"),e=e.replace(ye.Lang.JP_DUB_VER,""),e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Clean.REGION_LIMIT,""),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(ye.Clean.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(ye.Clean.WHITESPACE," ").toLowerCase().trim()}function wc(t){if(!t)return"";let e=Rnt(t);e=Qt(e);let r=e.match(/^(?:【|\[)(.+?)(?:】|\])/);if(r){let n=r[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(n)||(e=e.replace(r[0],n+" "))}return e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Clean.FROM_SUFFIX,""),e=e.replace(ye.Clean.NA_TAG,""),e=e.replace(ye.Clean.PARENTHESES_CONTENT,""),e=e.replace(ye.Season.INFO_STRONG,""),e=e.replace(ye.Season.PART_INFO_STRONG,""),e=e.replace(ye.Clean.MOVIE_KEYWORDS,""),e=e.replace(ye.Lang.KEYWORDS_STRONG,""),e=e.replace(ye.Clean.LONE_VER_CHAR,""),e=e.replace(ye.Clean.NON_ALPHANUM_CN,""),e.toLowerCase()}function eE(t){if(!t)return"";let e=Qt(t);return e=e.replace(ye.Episode.SUFFIX_DIGIT,""),e=e.replace(ye.Episode.FILE_NOISE,""),e=e.replace(ye.Episode.SEASON_PREFIX," "),e=e.replace(ye.Episode.CLEAN_SMART," "),e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Lang.CN_STD,"\u4E2D\u6587"),e=e.replace(ye.Lang.JP_STD,"\u65E5\u6587"),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(ye.Episode.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(ye.Clean.WHITESPACE," ").toLowerCase().trim()}function xnt(t){return t?t.replace(ye.Clean.PARENTHESES_CONTENT,"").trim():""}function Iie(t){if(!t)return"";let e=String(t).split(Cu)[0].trim();if(e.startsWith("//"))return"https:"+e;let r=e.match(/^([^:]+):(.+)$/);if(r){let n=r[1].toLowerCase(),s=r[2];return n==="http"||n==="https"?e:/^https?:\/\//i.test(s)?s:s.startsWith("//")?"https:"+s:s}return e}function bnt(t){if(!t||t==="N/A")return{year:null,month:null};let e=new Date(t),r=e.getTime();if(isNaN(r))return{year:null,month:null};let n=e.getFullYear();return n>2030?{year:null,month:null}:{year:n,month:e.getMonth()+1}}function O0r(t,e){let r=t.length,n=e.length;if(r===0)return n;if(n===0)return r;let s=new Array(n+1),i=new Array(n+1);for(let a=0;a<=n;a++)s[a]=a;for(let a=1;a<=r;a++){i[0]=a;let o=t.charCodeAt(a-1);for(let u=1;u<=n;u++){let l=o===e.charCodeAt(u-1)?0:1;i[u]=Math.min(i[u-1]+1,s[u]+1,s[u-1]+l)}let c=s;s=i,i=c}return s[n]}function P0r(t,e){if(!t||!e)return 0;let r=new Set(t.replace(ye.Clean.WHITESPACE,"")),n=new Set(e.replace(ye.Clean.WHITESPACE,"")),s=r.size,i=n.size;if(s===0&&i===0)return 1;if(s===0||i===0)return 0;let a=0,[o,c]=s.5)return .8+x*.2}let c=O0r(r,n),u=a===0?1:1-c/a,l=new Set(r.replace(ye.Clean.WHITESPACE,"")),d=new Set(n.replace(ye.Clean.WHITESPACE,"")),f=l.size,p=d.size;if(f===0||p===0)return 0;let m=0,[h,A]=f2&&(b=m/y,b>.6&&y/Math.max(f,p)<.6&&(b-=.25)),Math.max(u,g,b)}function uo(t,e="",r=[]){let n=new Set,s=K0(e||""),i=l=>{let d=K0(Rnt(l)),f=d.replace(ye.Season.PART_ANY,""),p=f.match(ye.Season.CN_STRUCTURE);if(p){let A={\u627F:"S2",\u8F6C:"S3",\u7ED3:"S4"};A[p[1]]&&n.add(A[p[1]])}if(w0r.forEach(A=>{let g=(A.useCleaned?f:d).match(A.regex);g&&n.add(A.prefix?`${A.prefix}${parseInt(g[1])}`:A.val)}),!t4.some(A=>{if(A.regex.test(f))return n.add(A.val),!0})){let A=f.match(ye.Season.SUFFIX_AMBIGUOUS);if(A){n.add("AMBIGUOUS");let g={II:"S2",III:"S3",IV:"S4"},b=A[1].toUpperCase();g[b]&&n.add(g[b])}}ye.Season.SUFFIX_SEQUEL.test(d)&&n.add("SEQUEL");let h={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,final:99};for(let[A,g]of Object.entries(h))d.includes(`\u7B2C${A}\u5B63`)&&n.add(`S${g}`)};[t,...Array.isArray(r)?r:[]].filter(Boolean).forEach(i),s.includes("\u7EED\u7BC7")&&n.add("SEQUEL"),/(剧场版|movie|film|电影)/i.test(s)&&n.add("MOVIE"),/\b(ova|oad)\b/i.test(s)&&n.add("OVA"),/\b(sp|special)\b/i.test(s)&&n.add("SP");let a=Array.from(n),o=a.some(l=>l.startsWith("S")),c=a.some(l=>l.startsWith("P")),u=["MOVIE","OVA","SP","SEQUEL","AMBIGUOUS"].some(l=>n.has(l));return c&&!o&&n.add("S1"),!o&&!c&&!u&&n.add("S1"),n}function Ei(t,e="",r=[]){let n=uo(t,e,r),s=null;for(let i of n)if(i.startsWith("S")){let a=parseInt(i.substring(1));isNaN(a)||(s===null||a>s)&&(s=a)}return s}function vg(t,e){let r=(t+" "+(e||"")).toLowerCase(),n=r.includes("\u7535\u5F71"),s=r.includes("\u7535\u89C6\u5267");return n&&!s?"MOVIE":s&&!n?"TV":null}function tE(t,e,r){if(r&&ye.Category.ANIMEKO_SOURCE.test(r))return"ANIME";let n=(t+" "+(e||"")).toLowerCase();return ye.Category.ANIME_KW.test(n)?"ANIME":ye.Category.REAL_KW.test(n)?"REAL":"UNKNOWN"}function k0r(t,e,r=!0){if(!t||!e||wc(t)===wc(e))return!1;let n=d=>{if(!d)return"";let f=Qt(d);return f=f.replace(ye.Clean.META_SUFFIX,"").replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").replace(ye.Clean.WHITESPACE," "),f.trim().toLowerCase()},s=n(t),i=n(e);if(s===i)return!1;let a=d=>{let f=[":","\uFF1A"," code:"," code\uFF1A"," season"," part"];for(let m of f){let h=d.indexOf(m);if(h!==-1)return d.substring(h).trim()}let p=d.split(ye.Clean.WHITESPACE);return p.length>=2?p.slice(1).join(" "):null},o=a(s),c=a(i),[u,l]=s.length1||f.length>2)return!0}}return!!(o&&c&&P0r(o,c)<.2)}function Nnt(t,e,r,n){if(!((r||"").includes("\u5267\u573A\u7248")||(n||"").includes("\u5267\u573A\u7248")))return!1;let i=c=>c?Qt(c).replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim():"",a=i(t),o=i(e);if(ye.Clean.SPACE_STRUCTURE.test(a)&&ye.Clean.SPACE_STRUCTURE.test(o)){let c=d=>{let f=d.split(ye.Clean.SPLIT_SPACES);return f.length>1?f.slice(1).join(" "):""},u=c(a),l=c(o);return!(ye.Season.PURE_PART.test(u)||ye.Season.PURE_PART.test(l))}return!1}function D0r(t,e,r,n,s,i,a="",o=""){let c=tE(t,r,a),u=tE(e,n,o);if(c==="REAL"&&u==="ANIME"||c==="ANIME"&&u==="REAL")return!0;let l=(r||"").includes("3D"),d=(n||"").includes("3D"),f=(r||"").includes("2D"),p=(n||"").includes("2D"),m=!l&&!f,h=!d&&!p;if(!m&&h?/3[dD]/.test(e)?d=!0:/2[dD]/.test(e)&&(p=!0):!h&&m&&(/3[dD]/.test(t)?l=!0:/2[dD]/.test(t)&&(f=!0)),(l||f)&&(d||p)&&l!==d)return!0;let b=vg(t,r),y=vg(e,n);return!b||!y||b===y||Nnt(t,e,r,n)?!1:s>0&&i>0?Math.abs(s-i)>5:!0}function B0r(t,e,r,n,s=[],i=[]){let a=uo(t,r,s),o=uo(e,n,i);if(a.size===0&&o.size===0)return!1;let c=f=>Array.from(f).some(p=>p.startsWith("S")&&parseInt(p.substring(1))>=2),u=f=>f.has("SEQUEL"),l=f=>f.has("AMBIGUOUS"),d=f=>f.has("S1");if(a.size>0&&o.size>0){if(l(a)&&d(o)||l(o)&&d(a))return!0;if(l(a)&&(c(o)||u(o))||l(o)&&(c(a)||u(a))||c(a)&&u(o)||c(o)&&u(a))return!1;for(let f of a)if(f.startsWith("S")){let p=o.has(f),m=Array.from(o).some(h=>h.startsWith("S"));if(!p&&m)return!0}return!1}return a.size!==o.size?!Nnt(t,e,r,n):!1}function L0r(t,e,r,n,s=[],i=[]){let a=uo(t,r,s),o=uo(e,n,i),c=Array.from(a).filter(l=>l.startsWith("S")),u=Array.from(o).filter(l=>l.startsWith("S"));return c.length>0&&u.length>0?c.some(l=>u.includes(l)):!1}function M0r(t,e,r=!1){if(!t.year||!e.year)return .05;let n=t.year-e.year;if(n===0){if(t.month&&e.month){let i=Math.abs(t.month-e.month);return i>2?0:i===0?.2:.1}return .1}let s=Math.abs(n);return r&&s<=10?0:s>1?-1:0}function W0r(t,e,r,n,s,i=!1){if(/^(dandan|animeko)$/i.test(n)||/^(dandan|animeko)$/i.test(s))return!0;if(i){let c=Math.min(e,r);return c>0&&t/c>.5?!0:!(t<2)}let a=Math.max(e,r);if(a===0)return!1;let o=t/a;return!(a>5&&o<.18)}function ZL(t){if(!t)return null;let e=t.toLowerCase();return e.includes("opening")?"opening":e.includes("ending")?"ending":e.includes("interview")?"interview":e.includes("bloopers")?"Bloopers":null}function Aa(t,e=""){let r=!1,n=e;if(t){let m=t.match(ye.Episode.DANDAN_TAG);m&&(n=m[1].toLowerCase())}if(/^(dandan|animeko)$/i.test(n)&&t){let m=t.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();(ye.Episode.SPECIAL_START.test(m)||ye.Episode.DANDAN_IGNORE.test(m))&&(r=!0)}let i=K0(t||""),a=ye.Episode.MOVIE_CHECK.test(i),o=ye.Episode.PV_CHECK.test(i),c=null,u=null,l=ZL(t),d=o||r||!!l||ye.Episode.SPECIAL_CHECK.test(i),f=i.match(ye.Episode.SEASON_MATCH);f&&(u=parseInt(f[1]));let p=i.match(ye.Episode.NUM_STRATEGY_A);if(p)c=parseFloat(p[2]);else{let m=i.match(ye.Episode.NUM_STRATEGY_B);if(m)c=parseFloat(m[1]);else{let h=i.match(ye.Episode.NUM_STRATEGY_C);h&&(c=parseFloat(h[1]))}}return{isMovie:a,num:c,isSpecial:d,isPV:o,season:u,isStrictSpecial:r}}function Cie(t,e,r=""){if(!t)return[];let s=["animeko","bilibili","bilibili1","bahamut","dandan"].includes(r);if(!e||s)return t.map((o,c)=>({link:o,originalIndex:c}));let i=[],a=[];if(t.forEach((o,c)=>{let u=o.title||o.name||"";e.test(u)?a.push(u):i.push({link:o,originalIndex:c})}),a.length>0){let o=r?`[${r}] `:"";mt("info",`[Merge-Check] ${o}\u547D\u4E2DEPISODE_TITLE_FILTER\u8FC7\u6EE4\uFF0C\u5DF2\u524D\u7F6E\u5254\u9664 ${a.length} \u96C6: ${a.join(", ")}`)}return i}var Ent=new Map;function e4(t,e,r){if(!t||t.length<2||!e)return"";let n=l=>{if(!l||!r)return l||"";try{let d=Ent.get(r);if(!d){let f=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");d=new RegExp(`(\\[|\u3010|\\s)?${f}(\\]|\u3011|\\s)?`,"gi"),Ent.set(r,d)}return l.replace(d,"").trim()}catch{return l}},s=n(e),i=s.match(ye.Clean.REDUNDANT_SEPARATOR);i&&(s=s.substring(0,i.index));let a=t.map(l=>{let d=l.link||l;return d?n(d.title||d.name||""):""});if(a.some(l=>!l))return"";let o=(l,d)=>{let f="";for(let p=0;pf.length&&(f=h)}return f},c=o(a[0],a[1]);if(c.length<2)return"";for(let l=2;l=2&&s.startsWith(l)?l:""}return u.length>=2&&(ye.Clean.REDUNDANT_VALID_CHARS.test(u)||u.length>3)?(mt("info",`[Merge-Check] \u68C0\u6D4B\u5230\u96C6\u5185\u5197\u4F59\u6807\u9898\u5B57\u6BB5: "${u}" (\u5DF2\u5FFD\u7565\u6765\u6E90: ${r}, \u951A\u5B9A\u9A8C\u8BC1\u901A\u8FC7)`),u):""}function _nt(t,e){let r=new Set;if(!t)return r;let n=-1;for(let s=0;s{let a=s.title||s.name||"",o=Aa(a,e);o.num!==null&&!o.isSpecial&&!o.isPV&&o.num%1!==0&&i{let c=o.title||o.name||"",u=Aa(c,r);u.num!==null&&e.has(u.num)?(i.push(o),a++):s.push(o)}),a>0&&(t.length=0,t.push(...s,...i),mt("info",`[Merge-Check] [${n}] \u81EA\u52A8\u6C89\u5E95: \u79FB\u52A8\u4E86 ${a} \u4E2A\u4E2D\u95F4\u63D2\u503C\u96C6\u6570 (${Array.from(e).join(",")}) \u5230\u672B\u5C3E`))}function vnt(t,e,r="Unspecified",n="Unspecified",s="",i="",a="",o=""){if(t.length===0||e.length===0)return 0;let c=e4(t,a,s),u=e4(e,o,i),l=(R,w)=>R?w&&R.includes(w)?R.replace(w,""):R:"",d=(R,w,N,P)=>{let B=R.link.title||"",M=l(B,P),D=Aa(M,w),L=co(M),Z=L!=="Unspecified"?L:N,W=Z==="Unspecified"&&/^(dandan|animeko)$/i.test(w)?"JP":Z,F=eE(M),K=W==="CN"?M.replace(ye.Similarity.CN_STRICT_CORE_REMOVE,""):null;return{info:D,effLang:W,specialType:ZL(M),cleanEpText:F,strictCnCore:K}},f=t.map(R=>d(R,s,r,c)),p=e.map(R=>d(R,i,n,u)),m=null,h=null;f.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(m=m===null?R.num:Math.min(m,R.num))}),p.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(h=h===null?R.num:Math.min(h,R.num))});let A=m!==null&&h!==null?m-h:null,g=15,b=A!==null?-A:0,y=Math.max(Math.min(-g,b-g),-Math.max(t.length,e.length)),x=Math.min(Math.max(g,b+g),Math.max(t.length,e.length)),v=0,I=-9999;for(let R=y;R<=x;R++){let w=0,N=0,P=0,B=new Map,M=!1,D=null;for(let L=0;L=t.length)continue;let W=f[Z],F=p[L],K=W.info,j=F.info,J=0;K.isMovie!==j.isMovie&&(J+=oi.EP_ALIGN.MOVIE_TYPE_MISMATCH),(K.isStrictSpecial&&!j.isSpecial||j.isStrictSpecial&&!K.isSpecial)&&(J+=oi.EP_ALIGN.SPECIAL_STRICT_MISMATCH);let se=W.effLang==="Unspecified"?"JP":W.effLang,oe=F.effLang==="Unspecified"?"JP":F.effLang;se===oe?J+=oi.EP_ALIGN.LANG_MATCH:J+=oi.EP_ALIGN.LANG_MISMATCH,K.season!==null&&j.season!==null&&K.season!==j.season&&(J+=oi.EP_ALIGN.SEASON_NUM_MISMATCH),(W.specialType||F.specialType)&&(W.specialType!==F.specialType?J+=oi.EP_ALIGN.SPECIAL_TYPE_MISMATCH:J+=oi.EP_ALIGN.SPECIAL_TYPE_MATCH),K.isSpecial===j.isSpecial&&(J+=oi.EP_ALIGN.IS_SPECIAL_MATCH),A!==null&&!K.isSpecial&&!j.isSpecial&&K.num-j.num===A&&(J+=oi.EP_ALIGN.SEASON_SHIFT_EXACT,M=!0);let ue=0;W.effLang==="CN"&&F.effLang==="CN"&&W.strictCnCore&&F.strictCnCore&&(W.strictCnCore.includes(F.strictCnCore)||F.strictCnCore.includes(W.strictCnCore))?ue=K.num!==null&&j.num!==null&&K.num===j.num?oi.EP_ALIGN.CN_STRICT_MATCH:oi.EP_ALIGN.CN_STRICT_MISMATCH:ue=G0(W.cleanEpText,F.cleanEpText),J+=ue,N+=ue,K.num!==null&&j.num!==null&&K.num===j.num&&(J+=oi.EP_ALIGN.NUMERIC_MATCH);let Ie=1;if(K.num!==null&&!K.isSpecial&&(D!==null&&K.num-D>1?Ie=.1:D=K.num),J*=Ie,ue*=Ie,N+=ue,w+=J,K.num!==null&&j.num!==null){let we=(j.num-K.num).toFixed(4);B.set(we,(B.get(we)||0)+Ie)}P++}if(P>0){let L=w/P,Z=0;for(let j of B.values())Z=Math.max(Z,j);let W=Z/P,F=N/P;W>.6&&(M||F>.33)&&(L+=oi.EP_ALIGN.PATTERN_CONSISTENCY_BONUS),L+=Math.min(P*.15,1.5);let K=B.get("0.0000")||0;K>3?(L+=oi.EP_ALIGN.ZERO_DIFF_BONUS_BASE,L+=K*oi.EP_ALIGN.ZERO_DIFF_BONUS_PER_HIT):K>0&&(L+=K*2),L>I&&(I=L,v=R)}}return I>.3?v:0}function $0r(t,e,r){let n=new Map,s=[];for(let o of t){if(r&&r.has(o.animeId))continue;let c=O.animes.find(f=>String(f.animeId)===String(o.animeId))||o;if(tE(c.animeTitle,c.typeDescription,c.source)==="REAL"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u771F\u4EBA\u5267/REAL)`);continue}if(vg(c.animeTitle,c.typeDescription)==="MOVIE"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u7535\u5F71/MOVIE)`);continue}let d=Ei(c.animeTitle,c.typeDescription,c.aliases);if(d!==null&&c.links){let p=Cie(c.links,e,c.source).filter(m=>{let h=m.link.title||m.link.name||"",g=K0(h).replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();return!(/^(dandan|animeko)$/i.test(c.source)&&(ye.Episode.SPECIAL_CHECK.test(g)||ye.Episode.DANDAN_IGNORE.test(g))||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(g)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(h))}).length;if(p>0){n.has(d)||n.set(d,new Map);let m=n.get(d);m.has(p)||m.set(p,[]),m.get(p).push(c.source),s.push(` [\u91C7\u7EB3] [${c.source}] S${d} = ${p}\u96C6 ("${c.animeTitle}")`)}else s.push(` [\u5FFD\u7565] [${c.source}] S${d} (\u6709\u6548\u96C6\u6570\u4E3A 0)`)}}let i=new Map,a=[];for(let[o,c]of n.entries()){let u=0,l=0,d=[];for(let[p,m]of c.entries()){let h=m.length;h>l?(l=h,u=p,d=m):h===l&&p`${p}\u96C6(x${m.length})[${m.join(",")}]`).join(", ");a.push(`S${o}=${u} (\u63A8\u65AD\u6765\u6E90: ${d.join(",")} | \u7EDF\u8BA1: ${f})`)}return(s.length>0||a.length>0)&&mt("info",`[Merge-Check] [Map-Build] \u5B63\u5EA6\u5730\u56FE\u6784\u5EFA\u8BE6\u60C5: +`;let r=t.comments||[];if(Array.isArray(r))for(let n of r){let s=qir(n);e+=' '+Hir(n.m)+` +`}return e+="",e}function Uir(){let e=(Date.now()%1e8).toString().padStart(8,"0"),r=Math.floor(Math.random()*1e3).toString().padStart(3,"0");return e+r}function qir(t){let e=t.p.split(","),n=(parseFloat(e[0])||0).toFixed(1),s=e[1]||"1",i="25",a=e[2]||"16777215",o="1751533608",c="0",u="0",l=Uir();return`${n},${s},${i},${a},${o},${c},${u},${l}`}function jir(t){return t?String(t).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'"):""}function Hir(t){return t?String(t).replace(/&/g,"&").replace(//g,">"):""}function ag(t,e){let r=e||O.danmuOutputFormat;if(r=r.toLowerCase(),_("info",`[Utils] [Danmu] [Format] Using format: ${r}`),r==="xml")try{let n=Fir(t);return I8e(n)}catch(n){return _("error",`[Utils] [Danmu] Failed to convert to XML: ${n.message}`),Be(t)}return Be(t)}ar();var ff=class{constructor({apiKey:e,baseURL:r="https://api.openai.com/v1",model:n="gpt-4o",systemPrompt:s=""}){this.apiKey=e,this.baseURL=r.replace(/\/$/,""),this.model=n,this.systemPrompt=s}async chat(e,r={}){let n={model:r.model||this.model,messages:e,temperature:r.temperature??0,max_tokens:r.maxTokens??8192,stream:!1},s=await Vr(`${this.baseURL}/chat/completions`,JSON.stringify(n),{headers:{"Content-Type":"application/json",Authorization:`Bearer ${this.apiKey}`},timeout:6e4}),i=s.data;if(i?.error){let a=i.error.message;throw new Error(`AI API error ${s.status}: ${a}`)}return i.choices[0].message.content}async ask(e,r={}){let n=[];return this.systemPrompt&&n.push({role:"system",content:this.systemPrompt}),n.push({role:"user",content:e}),this.chat(n,r)}session(e={}){let r=[],n=this.chat.bind(this),s=this.systemPrompt;return s&&r.push({role:"system",content:s}),{async send(i){r.push({role:"user",content:i});let a=await n(r,e);return r.push({role:"assistant",content:a}),a},clear(){r.length=0,s&&r.push({role:"system",content:s})},getHistory(){return[...r]}}}async verify(){try{return{ok:!0,reply:await this.ask("hi",{maxTokens:1})}}catch(e){return{ok:!1,error:e.message}}}};var ga=Re(require("fs"),1),YL=Re(require("path"),1);_C();Pt();St();hn();no();var Hn=null,zL=0,No=!1,VL=0,Ab="0.00",WC=!1,U0=new Map,z8e="custom",K8e=null,Y8e=null,KL=YL.default.join(process.cwd(),".cache"),eWe="bangumi-data-cache.json",Qir=2e4,og=new Map,J8e={custom:["https://cdn.jsdelivr.net/npm/@wan0ge/bangumi-data@0.3/dist/data.json","https://unpkg.com/@wan0ge/bangumi-data@0.3/dist/data.json"],official:["https://cdn.jsdelivr.net/npm/bangumi-data@0.3/dist/data.json","https://unpkg.com/bangumi-data@0.3/dist/data.json"]},Gir="@wan0ge/bangumi-data",Vir="bangumi-data",zir=/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|æ—¥[语語]|日配|原版|原[声聲])(?:版)?/,tWe=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|åŠ‡å ´ç‰ˆ|ç»­[篇集]|å¤–ä¼ )(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/gi,Kir=/\s+/g,Yir=/[,,]/,Jir=/[::]/;function dK(t){let e=new Map,r=t.length;for(let n=0;n=0?"custom":"official";return _("info",`[Utils] [Bangumi-Data] \u7248\u672C\u5BF9\u6BD4: @wan0ge/bangumi-data@${t} vs bangumi-data@${e} => \u4F7F\u7528${n==="custom"?"\u81EA\u5B9A\u4E49":"\u5B98\u65B9"}\u6E90`),n}catch(t){return _("warn",`[Utils] [Bangumi-Data] \u6570\u636E\u6E90\u9009\u62E9\u5F02\u5E38\uFF0C\u56DE\u9000\u5230\u81EA\u5B9A\u4E49\u6E90: ${t.message}`),"custom"}}async function JL(t,e=!1,r=null){if(!O.useBangumiData)return;let n=null,s=O.bangumiDataCacheDays!==void 0?O.bangumiDataCacheDays:7,i=s*24*60*60*1e3;if(t==="node"?ga.default.existsSync(KL)?n=YL.default.join(KL,eWe):WC||(_("warn","[Utils] [Bangumi-Data] \u672A\u68C0\u6D4B\u5230\u6839\u76EE\u5F55\u7684 .cache \u6587\u4EF6\u5939\uFF01"),_("warn","[Utils] [Bangumi-Data] \u6309\u7167\u9879\u76EE\u89C4\u8303\uFF0C\u8BF7\u624B\u52A8\u6302\u8F7D\u6216\u521B\u5EFA .cache \u76EE\u5F55\u4EE5\u542F\u7528\u6301\u4E45\u5316\u3002"),_("warn","[Utils] [Bangumi-Data] \u672C\u6B21\u8FD0\u884C\u5DF2\u9000\u5316\u4E3A\u7EAF\u5185\u5B58\u6A21\u5F0F (\u91CD\u542F\u540E\u9700\u91CD\u65B0\u4E0B\u8F7D)\u3002"),WC=!0):WC||(_("info",`[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230 ${t} \u4E91\u73AF\u5883\uFF0C\u5F53\u524D\u8FD0\u884C\u4E8E\u7EAF\u5185\u5B58\u52A0\u901F\u6A21\u5F0F\u3002`),WC=!0),No&&Date.now()-VL>Qir&&(_("warn","[Utils] [Bangumi-Data] \u68C0\u6D4B\u5230\u4E0B\u8F7D\u72B6\u6001\u9501\u6B7B (\u7531\u4E8E Serverless \u8FDB\u7A0B\u4F11\u7720/\u5F3A\u6740\u5BFC\u81F4)\uFF0C\u5F3A\u5236\u91CA\u653E\u9501..."),No=!1),Hn){if(s>0&&Date.now()-zL{No=!1}));return}if(n&&ga.default.existsSync(n))try{let a=ga.default.statSync(n),o=process.memoryUsage().heapUsed,c=Date.now();Hn=JSON.parse(ga.default.readFileSync(n,"utf-8")),Hn?.items?.length>0&&Hn.items[0]._flatText===void 0?(Hn=rWe(Hn),ga.default.writeFileSync(n,JSON.stringify(Hn),"utf-8"),dK(Hn.items)):Hn?.items?.length>0&&dK(Hn.items);let u=process.memoryUsage().heapUsed,l=Date.now()-c;Ab=Math.max(0,(u-o)/1024/1024).toFixed(2);let d=(process.memoryUsage().rss/1024/1024).toFixed(2);zL=Date.now(),_("info",`[Utils] [Bangumi-Data] \u6210\u529F\u4ECE\u672C\u5730\u78C1\u76D8\u52A0\u8F7D\u57FA\u7840\u6570\u636E\uFF0C\u6761\u76EE\u6570: ${Hn.items.length}\uFF0C\u89E3\u6790\u8017\u65F6: ${l} ms\uFF0C\u7EA6\u5360\u5185\u5B58: ${Ab} MB`),(s===0||Date.now()-a.mtimeMs>=i)&&e&&!No&&(_("info",`[Utils] [Bangumi-Data] \u78C1\u76D8\u6570\u636E${s===0?"\u5F3A\u5236\u66F4\u65B0":"\u5DF2\u8FC7\u671F"}\uFF0C\u4FDD\u7559\u8001\u6570\u636E\u670D\u52A1\u672C\u6B21\u8BF7\u6C42\uFF0C\u542F\u52A8\u540E\u53F0\u9759\u9ED8\u66F4\u65B0...`),No=!0,VL=Date.now(),lK(n).finally(()=>{No=!1}));return}catch(a){_("error","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u89E3\u6790\u5931\u8D25\uFF0C\u51C6\u5907\u91CD\u65B0\u4E0B\u8F7D",a.message),Hn=null}if(No){if(e){_("info","[Utils] [Bangumi-Data] \u6B63\u5728\u7B49\u5F85\u57FA\u7840\u6570\u636E\u4E0B\u8F7D\u5B8C\u6210...");let a=0;for(;No;){if(a>150){_("warn","[Utils] [Bangumi-Data] \u7B49\u5F85\u6392\u961F\u8D85\u65F6\uFF0C\u653E\u5F03\u7B49\u5F85"),No=!1;break}await new Promise(o=>setTimeout(o,100)),a++}}}else{_("info","[Utils] [Bangumi-Data] \u672A\u547D\u4E2D\u4EFB\u4F55\u6709\u6548\u7F13\u5B58\uFF0C\u6B63\u5728\u83B7\u53D6\u57FA\u7840\u6570\u636E..."),No=!0,VL=Date.now();let a=lK(n).finally(()=>{No=!1});e?await a:(_("info","[Utils] [Bangumi-Data] \u5F53\u524D\u975E\u6838\u5FC3\u8BF7\u6C42\uFF0C\u6570\u636E\u83B7\u53D6\u8F6C\u5165\u540E\u53F0\u5F02\u6B65\u6267\u884C"),r&&typeof r.waitUntil=="function"&&(_("info","[Utils] [Bangumi-Data] \u8C03\u7528 ctx.waitUntil \u5EF6\u957F Serverless \u751F\u547D\u5468\u671F"),r.waitUntil(a)))}}var ear=new Set(["anidb","bangumi","gamer","gamer_hk","bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw","tmdb"]);function rWe(t){if(!t||!t.items)return{items:[]};let e=[];for(let r of t.items){let n=[];if(r.sites){for(let o of r.sites)if(ear.has(o.site)){let c={site:o.site,id:o.id};o.season_id&&(c.season_id=String(o.season_id)),o.video_sn&&(c.video_sn=String(o.video_sn)),o.comment&&(c.comment=o.comment),o.related&&(c.related=o.related),n.push(c)}}if(n.length===0)continue;let s={title:r.title,type:r.type,sites:n};r.begin&&(s.begin=r.begin),r.titleTranslate&&(s.titleTranslate=r.titleTranslate);let i=r.title;if(r.titleTranslate)for(let o in r.titleTranslate){let c=r.titleTranslate[o];for(let u=0;unew AbortController);s.forEach(p=>{_("info",`[\u8BF7\u6C42\u6A21\u62DF] HTTP GET: ${p}`)});let o=s.map(async(p,m)=>{let h=a[m],A=await ub(p,{...i,signal:h.signal});if(!A.ok)throw new Error(`HTTP error ${A.status} from ${p}`);let g=await A.json(),b=g.items?g.items.length:0;if(h.signal.aborted)throw new Error("Aborted before parsing");let y=Date.now(),x=rWe(g),v=Date.now()-y,C=null;return t&&!h.signal.aborted&&(C=`${t}.tmp${m}`,ga.default.writeFileSync(C,JSON.stringify(x),"utf-8")),{index:m,url:p,tempFilePath:C,resultData:x,pruneCost:v,originalCount:b}}),c=await Promise.any(o);a.forEach((p,m)=>{m!==c.index&&p.abort()}),t&&(s.forEach((p,m)=>{if(m!==c.index){let h=`${t}.tmp${m}`;if(ga.default.existsSync(h))try{ga.default.unlinkSync(h)}catch{}}}),ga.default.renameSync(c.tempFilePath,t));let u=((Date.now()-r)/1e3).toFixed(2);_("info",`[Utils] [Bangumi-Data] \u7CBE\u7B80\u6570\u636E\u5DF2\u6210\u529F\u5199\u5165\u78C1\u76D8 (\u8282\u70B9: ${new URL(c.url).hostname} ,\u9636\u6BB5\u8017\u65F6: ${u} \u79D2)`),Hn=c.resultData,n=c.pruneCost,dK(Hn.items),og.clear();let l=process.memoryUsage().heapUsed,d=((Date.now()-r)/1e3).toFixed(2);Ab=Math.max(0,(l-e)/1024/1024).toFixed(2);let f=(process.memoryUsage().rss/1024/1024).toFixed(2);zL=Date.now(),_("info",`[Utils] [Bangumi-Data] \u52A0\u8F7D\u5230\u5185\u5B58\u6210\u529F\uFF0C\u4FDD\u7559/\u539F\u59CB\u6761\u76EE\u6570: ${Hn.items.length} / ${c.originalCount}\uFF0C\u5904\u7406\u8017\u65F6: ${n} ms\uFF0C\u5168\u94FE\u8DEF\u603B\u8017\u65F6: ${d} \u79D2\uFF0C\u51C0\u589E\u5185\u5B58: ${Ab} MB (\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${f} MB)`)}catch(e){let r=e instanceof AggregateError?e.errors.map(n=>n.message).join(" | "):e.message;_("error","[Utils] [Bangumi-Data] \u4E0B\u8F7D\u5931\u8D25 (\u6240\u6709 CDN \u5747\u672A\u54CD\u5E94\u6216\u62A5\u9519):",r)}}async function Au(t,e){if(!Hn||!Hn.items)return[];let r=og.get(t);if(!r){if(r=(async()=>{let c=[],u=[t];try{u=[...new Set([t,Gt(t),Ro(t)])]}catch{}let d=[Gt(t)].map(h=>{let A=h.replace(tWe,"");return A=Fr(A).toLowerCase(),A.length>=2?A:Fr(h).toLowerCase()}).filter(h=>h.length>0),f=null;if(typeof U0<"u"&&U0.size>0&&d.length>0){let h=new Set;for(let A of d){let g=Array.from(new Set(A.replace(Kir,"")));if(g.length===0)continue;g.sort((x,v)=>{let C=U0.get(x)?.length||0,R=U0.get(v)?.length||0;return C-R});let b=U0.get(g[0]);if(!b||b.length===0)continue;let y=new Set(b);for(let x=1;xA);let p=Hn.items,m=u.length;for(let h=0;h100){let c=og.keys().next().value;og.delete(c)}og.set(t,r)}let n=await r,s=n,i=$t(t);if(i!==null){let c=n.filter(({item:u})=>{let l=Tt(u.title).season;if(l===null&&u.titleTranslate)for(let d in u.titleTranslate){let f=u.titleTranslate[d];for(let p=0;p1?(l||1)===i:i===1?l===null||l===1:!0});c.length>0&&(s=c)}let a=zir,o=[];for(let{item:c,titles:u}of s){if(!c.sites)continue;let l=c.sites.filter(d=>e.includes(d.site));for(let d of l){let f="TV\u52A8\u753B",p="tvseries";c.type==="movie"?(f="\u5267\u573A\u7248",p="movie"):c.type==="tv"?(f="TV\u52A8\u753B",p="tvseries"):c.type==="ova"?(f="OVA",p="ova"):c.type==="web"&&(f="WEB\u52A8\u753B",p="web");let m="";["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(d.site)&&(m="\uFF08\u6E2F\u6FB3\u53F0\uFF09");let h=[],A=[];if(d.comment){let b=d.comment.split(Yir),y=new Map;if(d.related&&Array.isArray(d.related))for(let x of d.related)x.id&&y.set(String(x.id),x.season_id||null);for(let x of b){let v=x.split(Jir);if(v.length>=2){let C=v[0].trim(),R=v[1].trim();R&&a.test(C)&&h.push({title:c.title,titles:[...u],begin:c.begin,siteId:R,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:` ${C}${m}`,season_id:y.get(R)||null})}else if(v.length===1&&v[0].trim()){let C=v[0].trim();a.test(C)&&A.push(C)}}}let g="";A.length>0&&(g+=` ${A.join(" ")}`),g+=m,o.push({title:c.title,titles:[...u],begin:c.begin,siteId:d.id,matchedSiteKey:d.site,type:c.type,typeStr:f,typeId:p,titleSuffix:g,season_id:d.season_id||null,video_sn:d.video_sn||null}),o.push(...h)}}return o}function nWe(t=!1){if(Hn!==null){let e=Hn.items?Hn.items.length:0;Hn=null,zL=0,og.clear(),U0.clear();let r=(process.memoryUsage().rss/1024/1024).toFixed(2);_("info",`[Utils] [Bangumi-Data] \u5185\u5B58\u7F13\u5B58\u5DF2\u4E3B\u52A8\u91CA\u653E (\u539F\u6761\u76EE\u6570: ${e}\uFF0C\u91CA\u653E: ${Ab} MB\uFF0C\u5F53\u524D\u9879\u76EE\u603B\u5360\u7528: ${r} MB)`),Ab="0.00",WC=!1}if(t&&ga.default.existsSync(KL))try{let e=YL.default.join(KL,eWe);ga.default.existsSync(e)&&ga.default.unlinkSync(e);for(let r=0;r<5;r++){let n=`${e}.tmp${r}`;ga.default.existsSync(n)&&ga.default.unlinkSync(n)}_("info","[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u5DF2\u540C\u6B65\u6E05\u7406")}catch(e){_("error",`[Utils] [Bangumi-Data] \u78C1\u76D8\u7F13\u5B58\u6E05\u7406\u5931\u8D25: ${e.message}`)}}Pt();ar();St();no();kL();UT();$n();Sz();hn();Pt();St();ar();no();var XB=new Map;async function qT(t,e={}){let n=`https://api.tmdb.org/3/${t}`,s=O.makeProxyUrl(n);try{let i=await ge(s,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:e.signal});return i.status!=200?null:i}catch(i){if(i.name==="AbortError")throw i;return _("error","[Utils] [TMDB] Api error:",{message:i.message,name:i.name,stack:i.stack}),null}}async function ZB(t,e="multi",r={}){let{page:n=1,maxPages:s=3,signal:i=null}=r;if(r.page!==void 0){let o=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${n}`;return await qT(o,{signal:i})}let a=[];for(let o=1;o<=s;o++){if(i&&i.aborted)throw new DOMException("Aborted","AbortError");let c=`search/${e}?api_key=${O.tmdbApiKey}&query=${encodeURIComponent(t)}&language=zh-CN&page=${o}`,u=await qT(c,{signal:i});if(!u||!u.data)break;let l=typeof u.data=="string"?JSON.parse(u.data):u.data;if(!l.results||l.results.length===0||(a.push(...l.results),l.results.length<20))break}return _("info",`[Utils] [TMDB] \u5171\u83B7\u53D6\u5230 ${a.length} \u6761\u641C\u7D22\u7ED3\u679C\uFF08\u6700\u591A${s}\u9875\uFF09`),{data:{results:a},status:200}}async function w0r(t,e,r={}){let n=`${t}/${e}?api_key=${O.tmdbApiKey}&language=ja-JP`;return await qT(n,r)}async function ynt(t,e,r={}){let n=`${t}/${e}/external_ids?api_key=${O.tmdbApiKey}`;return await qT(n,r)}async function R0r(t,e,r={}){let n=`${t}/${e}/alternative_titles?api_key=${O.tmdbApiKey}`;return await qT(n,r)}function N0r(t,e,r=""){let n=t?.data?.results||t?.data?.titles||[];if(!n.length)return null;let s=(r||"").toLowerCase().trim(),i=o=>o.title||o.name||"",a=[o=>s&&i(o).toLowerCase().trim()===s,...["CN","TW","HK","SG"].map(o=>c=>(c.iso_3166_1||c.iso_639_1)===o&&!uf(i(c))),o=>!uf(i(o))];for(let o of a){let c=n.find(o);if(c){let u=i(c);return _("info",`[Utils] [TMDB] \u6309\u4F18\u5148\u7EA7\u7B56\u7565\u6210\u529F\u63D0\u53D6\u6700\u4F73\u4E2D\u6587\u522B\u540D: ${u}`),u}}return null}async function O0r(t,e,r=""){let n=t.name||t.title||"";if(r&&n.toLowerCase().trim()===r.toLowerCase().trim()||!(uf(n)||r&&n.toLowerCase().trim()!==r.toLowerCase().trim()))return n;_("info",`[Utils] [TMDB] \u5C1D\u8BD5\u83B7\u53D6\u4E2D\u6587\u522B\u540D\u4EE5\u5BFB\u627E\u66F4\u4F18\u5339\u914D (\u5F53\u524D\u6807\u9898: "${n}")`);let i=t.media_type||(t.name?"tv":"movie");try{if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let a=await R0r(i,t.id,{signal:e});if(e&&e.aborted)throw new DOMException("Aborted","AbortError");let o=N0r(a,i,r);return o?(_("info",`[Utils] [TMDB] \u5C06\u4F7F\u7528\u4E2D\u6587\u522B\u540D\u8FDB\u884C\u76F8\u4F3C\u5339\u914D: ${o}`),o):(_("info",`[Utils] [TMDB] \u672A\u627E\u5230\u4E2D\u6587\u522B\u540D\uFF0C\u4F7F\u7528\u539F\u6807\u9898: ${n}`),n)}catch(a){if(a.name==="AbortError")throw a;return _("error",`[Utils] [TMDB] \u83B7\u53D6\u522B\u540D\u5931\u8D25: ${a.message}`),n}}async function Zb(t,e=null,r="Unknown"){let n=_nt(t);if(n!==t&&_("info",`[Utils] [TMDB] \u4F18\u5316\u641C\u7D22\u5173\u952E\u8BCD: "${t}" -> "${n}"`),O.useBangumiData){let o=await Au(n,["tmdb","bangumi","anidb"]);if(o&&o.length>0){let c=o[0],u=c.titles.find(d=>d&&d.includes(n))||c.titles[1]||c.title,l=c.title;return _("info",`[Utils] [TMDB] Bangumi-Data \u672C\u5730\u547D\u4E2D\uFF0C\u63D0\u53D6\u539F\u540D\u6210\u529F: \u539F\u540D=${l}, \u522B\u540D=${u}\uFF08\u68C0\u7D22\u8BCD\uFF1A${n}\uFF09`),{title:l,cnAlias:u}}}if(!O.tmdbApiKey)return _("info","[Utils] [TMDB] \u672A\u914D\u7F6EAPI\u5BC6\u94A5\uFF0C\u8DF3\u8FC7TMDB\u7F51\u7EDC\u641C\u7D22"),null;let s=XB.get(n);if(s)_("info",`[Utils] [TMDB] \u52A0\u5165\u6B63\u5728\u8FDB\u884C\u7684\u641C\u7D22: ${n} (${r})`);else{let o=new AbortController;s={controller:o,refCount:0,promise:(async()=>{try{let u=o.signal,l=P=>{let L=P.genre_ids||[],M=P.genres||[],k=L.length>0?L:M.map(W=>W.id),B=P.original_language||"";return k.includes(16)?{isValid:!0,reason:"\u660E\u786E\u52A8\u753B\u7C7B\u578B(genre_id: 16)"}:B==="ja"?{isValid:!0,reason:"\u539F\u59CB\u8BED\u8A00\u4E3A\u65E5\u8BED(ja),\u53EF\u80FD\u662F\u65E5\u5267/\u65E5\u5F71/\u65E5\u7EFC\u827A"}:{isValid:!1,reason:`\u975E\u52A8\u753B\u4E14\u975E\u65E5\u8BED\u5185\u5BB9(language: ${B}, genres: ${k.join(",")})`}},d=(P,L)=>{let M=J=>J.toLowerCase().replace(/\s+/g,"").replace(/[::、,。!?;""''()【】《》]/g,"").trim(),k=M(P),B=M(L);if(k===B)return 1;let Z=k.length=B.length?k:B;if(W.includes(Z)&&Z.length>0)return .6+Z.length/W.length*.3;let F=P.length>L.length?P:L,V=P.length>L.length?L:P;if(F.length===0)return 1;let j=(J,se)=>{J=J.toLowerCase(),se=se.toLowerCase();let oe=[];for(let ue=0;ue<=J.length;ue++){let Ce=ue;for(let we=0;we<=se.length;we++)if(ue===0)oe[we]=we;else if(we>0){let qe=oe[we-1];J.charAt(ue-1)!==se.charAt(we-1)&&(qe=Math.min(Math.min(qe,Ce),oe[we])+1),oe[we-1]=Ce,Ce=qe}ue>0&&(oe[se.length]=Ce)}return oe[se.length]};return(F.length-j(F,V))/F.length};if(_("info",`[Utils] [TMDB] \u6B63\u5728\u641C\u7D22 (Shared Task): ${n}`),u.aborted)throw new DOMException("Aborted","AbortError");let f=await ZB(n,"multi",{signal:u});if(!f||!f.data)return _("info","[Utils] [TMDB] TMDB\u641C\u7D22\u7ED3\u679C\u4E3A\u7A7A"),null;let p=typeof f.data=="string"?JSON.parse(f.data):f.data;if(!p.results||p.results.length===0)return _("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),null;let m=[],h=[];for(let P of p.results){let L=l(P);if(L.isValid)m.push(P);else{let M=P.name||P.title||"\u672A\u77E5";h.push(`${M}(${L.reason})`)}}if(m.length===0)return _("info","[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u62E6\u622A: \u641C\u7D22\u7ED3\u679C\u4E2D\u6CA1\u6709\u4EFB\u4F55\u76EE\u6807\u7C7B\u578B(\u52A8\u753B/\u65E5\u6587)\u7684\u5185\u5BB9"),null;_("info",`[Utils] [TMDB] \u6570\u636E\u6E05\u6D17\u5B8C\u6210: \u4FDD\u7559 ${m.length} \u4E2A\u6709\u6548\u6761\u76EE\u53C2\u4E0E\u5339\u914D\uFF0C\u8FC7\u6EE4 ${h.length} \u4E2A\u65E0\u5173\u6761\u76EE${h.length>0?"\uFF0C\u8FC7\u6EE4\u8BE6\u60C5: "+h.join(", "):""}`);let A=null,g=-1,b=null,y=0,x=5,v=!1;for(let P of m){let L=P.name||P.title||"";if(!L)continue;let M=d(n,L),k=P.original_name||P.original_title||"",B=k?d(n,k):0,Z=Math.max(M,B);if(Z===1&&!v){v=!0,_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${L}" - \u76F8\u4F3C\u5EA6: 100.00% (\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u540E\u7EED\u6240\u6709\u522B\u540D\u641C\u7D22)`),Z>g&&(g=Z,A=P,b=L);continue}let W,F,V=L.toLowerCase().trim()===n.toLowerCase().trim();if(v||V)W=L,F=Z,v&&V?_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${L}" - \u76F8\u4F3C\u5EA6: ${(F*100).toFixed(2)}% (\u5DF2\u627E\u5230\u5B8C\u5168\u5339\u914D\uFF0C\u8DF3\u8FC7\u522B\u540D\u641C\u7D22)`):_("info",`[Utils] [TMDB] \u5339\u914D\u68C0\u67E5 "${L}" - \u76F8\u4F3C\u5EA6: ${(F*100).toFixed(2)}%`);else{if(yg&&(g=F,A=P,b=W)}if(!A||g<.4)return _("info",`[Utils] [TMDB] \u6700\u4F73\u5339\u914D\u76F8\u4F3C\u5EA6\u8FC7\u4F4E\u6216\u672A\u627E\u5230\u5339\u914D (${A?(g*100).toFixed(2)+"%":"N/A"}),\u8DF3\u8FC7`),null;_("info",`[Utils] [TMDB] TMDB\u6700\u4F73\u5339\u914D: ${b}, \u76F8\u4F3C\u5EA6: ${(g*100).toFixed(2)}%`);let R=A.media_type||(A.name?"tv":"movie"),w=await w0r(R,A.id,{signal:u}),N;if(!w||!w.data)N=A.name||A.title,_("info",`[Utils] [TMDB] \u4F7F\u7528\u4E2D\u6587\u641C\u7D22\u7ED3\u679C\u6807\u9898: ${N}`);else{let P=typeof w.data=="string"?JSON.parse(w.data):w.data;N=P.original_name||P.original_title||P.name||P.title,_("info",`[Utils] [TMDB] \u627E\u5230\u65E5\u8BED\u539F\u540D: ${N}`)}return{title:N,cnAlias:b}}catch(u){return u.name==="AbortError"?(_("info",`[Utils] [TMDB] \u540E\u53F0\u641C\u7D22\u4EFB\u52A1\u5DF2\u5B8C\u5168\u7EC8\u6B62 (${n})`),null):(_("error","[Utils] [TMDB] Background Search error:",{message:u.message,name:u.name,stack:u.stack}),null)}})().finally(()=>{XB.delete(n)})},XB.set(n,s),_("info",`[Utils] [TMDB] \u542F\u52A8\u65B0\u641C\u7D22\u4EFB\u52A1: ${n}`)}s.refCount++;let i=()=>{XB.get(n)===s&&(s.refCount--,s.refCount<=0&&(_("info",`[Utils] [TMDB] \u6240\u6709\u8C03\u7528\u8005\u5DF2\u53D6\u6D88\uFF0C\u7EC8\u6B62\u540E\u53F0\u8BF7\u6C42: ${n}`),s.controller.abort()))},a;if(e){if(e.aborted)return i(),_("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null;e.addEventListener("abort",i)}try{let o=new Promise((c,u)=>{e&&(a=()=>u(new DOMException("Aborted","AbortError")),e.addEventListener("abort",a))});return await Promise.race([s.promise,o])}catch(o){return o.name==="AbortError"?(_("info",`[Utils] [TMDB] \u641C\u7D22\u5DF2\u88AB\u4E2D\u65AD (Source: ${r})`),null):(_("error",`[Utils] [TMDB] \u641C\u7D22\u5F02\u5E38: ${o.message}`),null)}finally{e&&(e.removeEventListener("abort",i),a&&e.removeEventListener("abort",a))}}async function xnt(t,e=null,r=null){if(!uf(t))return t;if(O.useBangumiData){let i=_nt(t),a=Au(i,["tmdb","bangumi","anidb"]);if(a&&a.length>0){let o=a[0],c=o.titles.find(u=>u&&!uf(u))||o.titles[1];if(c&&!uf(c))return _("info",`[Utils] [TMDB] \u547D\u4E2D\u672C\u5730 Bangumi Data: ${t} -> ${c}\uFF08\u68C0\u7D22\u8BCD\uFF1A${i}\uFF09`),c}}let n=e!=null,s=n?"tv":"movie";try{let i=await ZB(t,s);if(!i.data.results||i.data.results.length===0)return _("info","[Utils] [TMDB] TMDB\u672A\u627E\u5230\u4EFB\u4F55\u7ED3\u679C"),t;let o=i.data.results.find(u=>{let l=n?u.name:u.title;return l&&!uf(l)})||i.data.results[0],c=n?o.name:o.title;return c?(_("info",`\u539F\u6807\u9898: ${t} -> \u4E2D\u6587\u6807\u9898: ${c}`),c):t}catch(i){return _("error","\u67E5\u8BE2 TMDB \u65F6\u51FA\u9519:",i),t}}var bnt=/(?:\s+|^)(?:第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|season\s*\d+|s\d+|part\s*\d+|act\s*\d+|phase\s*\d+|the\s+final\s+season|(?:movie|film|ova|oad|sp|剧场版|åŠ‡å ´ç‰ˆ|ç»­[篇集]|å¤–ä¼ )(?![a-z]))|[::~~]|\s+.*?篇|(?<=\s|^)\d+$/i,Ant=/[ ::~~]/;function Ent(t){let e=t.match(bnt);return e?e.index:t.length}function _nt(t){let e=Ent(t);return e{let a=i.org_title||i.title||"";return a.substring(0,Ent(a))}),s="";if(n.length>0){let i=n.concat().sort(),a=i[0],o=i[i.length-1],c=0;for(;c1&&_("info",`[Utils] [TMDB] \u8BA1\u7B97\u51FA\u6700\u957F\u516C\u5171\u524D\u7F00 (LCP): "${s}"`);for(let i of t){let a=i.title||"";if(!(i.isLocalPriority||a.includes(e)))if(s&&s.length>1&&a.startsWith(s)){let o=a.substring(s.length).trim();i._displayTitle=o?`${e}${o.match(/^[~~::]/)?"":" "}${o}`:e,_("info",`[Utils] [TMDB] [LCP\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else{let o=a.match(Ant);if(o){let c=a.substring(0,o.index).trim(),u=a.substring(o.index);if(c&&bnt.test(c)){let l=u.trim().match(Ant),d=l?u.trim().substring(l.index):"";i._displayTitle=`${c} ${e}${d}`,_("info",`[Utils] [TMDB] [\u524D\u7F00\u4FDD\u62A4\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else i._displayTitle=e+u,_("info",`[Utils] [TMDB] [\u5206\u9694\u7B26\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)}else uf(a)?(i._displayTitle=e,_("info",`[Utils] [TMDB] [\u7EAF\u5916\u6587\u5168\u66FF\u6A21\u5F0F] "${a}" -> "${i._displayTitle}"`)):_("info",`[Utils] [TMDB] [\u8DF3\u8FC7\u66FF\u6362] "${a}" \u542B\u6709\u4E2D\u6587\u4E14\u7279\u5F81\u4E0D\u7B26\uFF0C\u62D2\u7EDD\u5F3A\u5236\u5168\u66FF\u4EE5\u9632\u8BEF\u6740`)}}}Pt();St();$n();no();hn();var Iu="$$$",Sg="&",P0r=!1,ai=Object.freeze({TITLE_STRUCTURE_CONFLICT:-.3,LANG_MATCH_CN:.15,LANG_MISMATCH:-.2,DATE_MATCH:0,EP_ALIGN:{MOVIE_TYPE_MISMATCH:-5,SPECIAL_STRICT_MISMATCH:-8,LANG_MATCH:3,LANG_MISMATCH:-5,SEASON_NUM_MISMATCH:-10,SPECIAL_TYPE_MISMATCH:-10,SPECIAL_TYPE_MATCH:3,IS_SPECIAL_MATCH:3,SEASON_SHIFT_EXACT:15,CN_STRICT_MATCH:25,CN_STRICT_MISMATCH:-5,NUMERIC_MATCH:2,PATTERN_CONSISTENCY_BONUS:2,ZERO_DIFF_BONUS_BASE:100,ZERO_DIFF_BONUS_PER_HIT:5}}),Ql=Object.freeze({SIMILARITY_MIN:.65,SIMILARITY_STRONG:.98,TIER_DEFAULT:.001,TIER_CN:.4,TIER_PART:.5,COLLECTION_RATIO:4,COLLECTION_DIFF:6});function mt(t,...e){typeof e[0]=="string"&&e[0].includes("[Merge-Check]")&&!P0r||_(t,...e)}var ye={Lang:{CN:/(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])(?:版)?/,JP:/(æ—¥[语語]|日配|原版|原[声聲])(?:版)?/,CN_DUB_VER:/(\(|(|\[)?(普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽])版?(\)|)|\])?/g,JP_DUB_VER:/(\(|(|\[)?(æ—¥[语語]|日配|原版|原[声聲])版?(\)|)|\])?/g,KEYWORDS_STRONG:/(?:普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]|æ—¥[语語]|日配|原版|原[声聲])(?:版)?/g,CN_STD:/普通[话話]|[国國][语語]|中文配音|中配|中文|[粤粵][语語]配音|[粤粵]配|[粤粵][语語]|[台臺]配|[台臺][语語]|港配|港[语語]|字幕|助[听聽]/g,JP_STD:/æ—¥[语語]|日配|原版|原[声聲]/g},Season:{PURE_PART:/^(?:(?:第|S(?:eason)?)\s*\d+(?:å­£|期|部)?|(?:Part|P|第)\s*\d+(?:部分)?)$/i,PART_NORM:/第\s*(\d+)\s*部分/g,PART_NORM_2:/(?:Part|P)[\s.]*(\d+)/gi,FINAL:/(?:The\s+)?Final\s+Season/gi,NORM:/(?:Season|S)\s*(\d+)/gi,CN:/第\s*([一二三四五六七八九十])\s*å­£/g,ROMAN:/(\s|^)(IV|III|II|I)(\s|$)/g,INFO_STRONG:/(?:season|s|第)\s*[0-9一二三四五六七八九十]+\s*(?:å­£|期|部(?!分))?/gi,PART_INFO_STRONG:/(?:part|p|第)\s*\d+\s*(?:部分)?/gi,PART_ANY:/(?:part|p)\s*\d+/gi,CN_STRUCTURE:/(?:^|\s|×\d+\s?)(承|转|结)(?=$|[\s\(\(\[【])/i,SUFFIX_AMBIGUOUS:/(?:[\s\u4e00-\u9fa5]|^)(S|T|R|II|III|IV)(?=$|[\s\(\(\[【])/i,SUFFIX_SEQUEL:/(?:续篇|续集|The Sequel)/i},Clean:{NA_TAG:/(\(|(|\[)N\/A(\)|)|\])/gi,SOURCE_TAG:/【.*?】/g,REGION_LIMIT:/(\(|(|\[)仅限.*?地区(\)|)|\])/g,PUNCTUATION:/[!!??,,.。、~~::\-–—_]/g,WHITESPACE:/\s+/g,FROM_SUFFIX:/\s*from\s+.*$/i,PARENTHESES_CONTENT:/(\(|(|\[).*?(\)|)|\])/g,MOVIE_KEYWORDS:/剧场版|åŠ‡å ´ç‰ˆ|the\s*movie|theatrical|movie|film|电影/gi,LONE_VER_CHAR:/(\s|^)版(\s|$)/g,NON_ALPHANUM_CN:/[^\u4e00-\u9fa5a-zA-Z0-9]/g,META_SUFFIX:/(\(|(|\[)(续篇|TV版|æ— ä¿®|æœªåˆ å‡|完整版)(\)|)|\])/gi,YEAR_TAG:/(\(|(|\[)\d{4}(\)|)|\]).*$/i,SUBTITLE_SEPARATOR:/^[\s::\-–—((\[【]/,SPACE_STRUCTURE:/.+[\s\u00A0\u3000].+/,SPLIT_SPACES:/[\s\u00A0\u3000]+/,REDUNDANT_SEPARATOR:/[\s::~~]/,REDUNDANT_UNSAFE_END:/[\(\(\[【::~~\-]$/,REDUNDANT_VALID_CHARS:/[\u4e00-\u9fa5a-zA-Z]{2,}/},Episode:{SUFFIX_DIGIT:/_\d+(?=$|\s)/g,FILE_NOISE:/_(\d{2,4})(?=\.)/g,SEASON_PREFIX:/(?:^|\s)(?:第\s*[0-9一二三四五六七八九十]+\s*å­£|S(?:eason)?\s*\d+)(?:\s+|_)/gi,CLEAN_SMART:/(?:^|\s)(?:EP|E|Vol|Episode|No|Part|第)\s*\d+(?:\.\d+)?(?:\s*[话話集])?(?!\s*[季期部])/gi,PUNCTUATION:/[!!??,,.。、~~::\-–—]/g,DANDAN_TAG:/^【(dandan|animeko)】/i,SPECIAL_START:/^S\d+/i,MOVIE_CHECK:/剧场版|åŠ‡å ´ç‰ˆ|movie|film/i,PV_CHECK:/(pv|trailer|预告)/i,SPECIAL_CHECK:/^(s|o|sp|special)\d/i,SEASON_MATCH:/(?:^|\s)(?:第|S)\s*(\d+)\s*[å­£S]/i,NUM_STRATEGY_A:/(?:第|s)\s*(\d+)\s*[å­£s]\s*(?:第|ep|e)\s*(\d+)/i,NUM_STRATEGY_B:/(?:ep|e|vol|episode|chapter|no|part|第)\s*(\d+(\.\d+)?)(?:\s*[话話集])?(?!\s*[季期部])/i,NUM_STRATEGY_C:/(?:^|\s)(?:第)?(\d+(\.\d+)?)(?:话|集|\s|$)/,DANDAN_IGNORE:/^[SC]\d+/i,MAP_EXCLUDE_KEYWORDS:/(?:^|\s)(?:PV|OP|ED|SP|Special|Drama|OAD|OVA|Opening|Ending|特番|特典|Behind\s+the\s+Scenes|Making|Interview)(?:\s|$|[::])/i,SINK_TITLE_STRICT:/^(?:S\d+|C\d+|SP\d*|OP\d*|ED\d*|PV\d*|Trailers?|Interview|Making|特番|特典)(?:\s|$|[::.\-]|\u3000)/i},Category:{ANIME_KW:/(动画|TV动画|动漫|日漫|国漫)/,REAL_KW:/(电视剧|真人剧|综艺|纪录片)/,ANIMEKO_SOURCE:/animeko/i},Similarity:{CN_STRICT_CORE_REMOVE:/[0-9a-zA-Z\s第季集话partEPep._\-–—::【】()()]/gi}},r4=[{regex:/(?:\s|^)A's$/i,val:"S2"},{regex:/(?:\s|^)StrikerS$/i,val:"S3"},{regex:/(?:\s|^)ViVid$/i,val:"S4"},{regex:/(?:\s|^)SuperS$/i,val:"S4"}],D0r=[{regex:/(?:第)?\s*(\d+)\s*(?:å­£|期|部(?!分))/,prefix:"S"},{regex:/\bseason\s*(\d+)/i,prefix:"S"},{regex:/\bs\s*(\d+)\b/i,prefix:"S"},{regex:/\bpart\s*(\d+)/i,prefix:"P"},{regex:/\b(ova|oad)\d*\b/i,val:"OVA"},{regex:/(剧场版|åŠ‡å ´ç‰ˆ|the\s*movie|theatrical|movie|film|电影)/i,val:"MOVIE"},{regex:/(续篇|续集)/,val:"SEQUEL"},{regex:/\b(sp|special)\d*\b/i,val:"SP"},{regex:/[^0-9](\d)$/,prefix:"S",useCleaned:!0}],k0r=[{seriesKeywords:["\u7F8E\u5C11\u5973\u6218\u58EB"],mappings:[{markers:["R"],targetStandard:"\u7B2C\u4E8C\u5B63"},{markers:["S"],targetStandard:"\u7B2C\u4E09\u5B63"},{markers:["SuperS","Super S"],targetStandard:"\u7B2C\u56DB\u5B63"},{markers:["Sailor Stars","\u6700\u540E\u7684\u661F\u5149"],targetStandard:"\u7B2C\u4E94\u5B63"}]},{seriesKeywords:["\u5C0F\u6797\u5BB6\u7684\u9F99\u5973\u4EC6"],mappings:[{markers:["S"],targetStandard:"\u7B2C\u4E8C\u5B63"}]},{seriesKeywords:["\u53EF\u80FD\u6210\u4E3A\u604B\u4EBA","\u4E0D\u884C"],mappings:[{markers:["NEXT SHINE","\u518D\u6B21\u95EA\u8000"],targetStandard:"\u7EED\u7BC7"}]},{seriesKeywords:["\u7EA2\u732A","\u5343\u4E0E\u5343\u5BFB","\u9F99\u732B"],defaultStandard:"\u5267\u573A\u7248"}];function L0r(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function vie(t){if(typeof structuredClone=="function")try{return structuredClone(t)}catch{}return JSON.parse(JSON.stringify(t))}function oo(t){if(!t)return"Unspecified";let e=t.toLowerCase();return ye.Lang.CN.test(e)?"CN":ye.Lang.JP.test(e)?"JP":"Unspecified"}function Dnt(t){if(!t)return"";let e=t,r=e.toUpperCase();for(let n of k0r){if(!n.seriesKeywords.every(a=>r.includes(a.toUpperCase())))continue;let i=!1;if(n.mappings)for(let a of n.mappings)a.markers.forEach(o=>{let c=new RegExp(L0r(o),"gi");c.test(e)&&(e=e.replace(c,` ${a.targetStandard} `),i=!0)});!i&&n.defaultStandard&&(e+=` ${n.defaultStandard} `)}return e}function V0(t){if(!t)return"";let e=Gt(t);e=e.replace(ye.Clean.NA_TAG,""),e=e.replace(ye.Season.PART_NORM,"part $1"),e=e.replace(ye.Season.PART_NORM_2,"part $1"),e=e.replace(ye.Season.FINAL,"\u6700\u7EC8\u5B63"),e=e.replace(ye.Season.NORM,"\u7B2C$1\u5B63");let r={\u4E00:"1",\u4E8C:"2",\u4E09:"3",\u56DB:"4",\u4E94:"5",\u516D:"6",\u4E03:"7",\u516B:"8",\u4E5D:"9",\u5341:"10"};return e=e.replace(ye.Season.CN,(n,s)=>`\u7B2C${r[s]}\u5B63`),e=e.replace(ye.Season.ROMAN,(n,s,i,a)=>`${s}\u7B2C${{I:"1",II:"2",III:"3",IV:"4"}[i]}\u5B63${a}`),e=e.replace(ye.Lang.CN_DUB_VER,"\u4E2D\u914D\u7248"),e=e.replace(ye.Lang.JP_DUB_VER,""),e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Clean.REGION_LIMIT,""),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(ye.Clean.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(ye.Clean.WHITESPACE," ").toLowerCase().trim()}function Tc(t){if(!t)return"";let e=Dnt(t);e=Gt(e);let r=e.match(/^(?:【|\[)(.+?)(?:】|\])/);if(r){let n=r[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(n)||(e=e.replace(r[0],n+" "))}return e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Clean.FROM_SUFFIX,""),e=e.replace(ye.Clean.NA_TAG,""),e=e.replace(ye.Clean.PARENTHESES_CONTENT,""),e=e.replace(ye.Season.INFO_STRONG,""),e=e.replace(ye.Season.PART_INFO_STRONG,""),e=e.replace(ye.Clean.MOVIE_KEYWORDS,""),e=e.replace(ye.Lang.KEYWORDS_STRONG,""),e=e.replace(ye.Clean.LONE_VER_CHAR,""),e=e.replace(ye.Clean.NON_ALPHANUM_CN,""),e.toLowerCase()}function tE(t){if(!t)return"";let e=Gt(t);return e=e.replace(ye.Episode.SUFFIX_DIGIT,""),e=e.replace(ye.Episode.FILE_NOISE,""),e=e.replace(ye.Episode.SEASON_PREFIX," "),e=e.replace(ye.Episode.CLEAN_SMART," "),e=e.replace(ye.Clean.SOURCE_TAG,""),e=e.replace(ye.Lang.CN_STD,"\u4E2D\u6587"),e=e.replace(ye.Lang.JP_STD,"\u65E5\u6587"),e=e.replace(/(\d+)\.(\d+)/g,"$1{{DOT}}$2"),e=e.replace(ye.Episode.PUNCTUATION," "),e=e.replace(/{{DOT}}/g,"."),e.replace(ye.Clean.WHITESPACE," ").toLowerCase().trim()}function Snt(t){return t?t.replace(ye.Clean.PARENTHESES_CONTENT,"").trim():""}function Iie(t){if(!t)return"";let e=String(t).split(Iu)[0].trim();if(e.startsWith("//"))return"https:"+e;let r=e.match(/^([^:]+):(.+)$/);if(r){let n=r[1].toLowerCase(),s=r[2];return n==="http"||n==="https"?e:/^https?:\/\//i.test(s)?s:s.startsWith("//")?"https:"+s:s}return e}function vnt(t){if(!t||t==="N/A")return{year:null,month:null};let e=new Date(t),r=e.getTime();if(isNaN(r))return{year:null,month:null};let n=e.getFullYear();return n>2030?{year:null,month:null}:{year:n,month:e.getMonth()+1}}function B0r(t,e){let r=t.length,n=e.length;if(r===0)return n;if(n===0)return r;let s=new Array(n+1),i=new Array(n+1);for(let a=0;a<=n;a++)s[a]=a;for(let a=1;a<=r;a++){i[0]=a;let o=t.charCodeAt(a-1);for(let u=1;u<=n;u++){let l=o===e.charCodeAt(u-1)?0:1;i[u]=Math.min(i[u-1]+1,s[u]+1,s[u-1]+l)}let c=s;s=i,i=c}return s[n]}function M0r(t,e){if(!t||!e)return 0;let r=new Set(t.replace(ye.Clean.WHITESPACE,"")),n=new Set(e.replace(ye.Clean.WHITESPACE,"")),s=r.size,i=n.size;if(s===0&&i===0)return 1;if(s===0||i===0)return 0;let a=0,[o,c]=s.5)return .8+x*.2}let c=B0r(r,n),u=a===0?1:1-c/a,l=new Set(r.replace(ye.Clean.WHITESPACE,"")),d=new Set(n.replace(ye.Clean.WHITESPACE,"")),f=l.size,p=d.size;if(f===0||p===0)return 0;let m=0,[h,A]=f2&&(b=m/y,b>.6&&y/Math.max(f,p)<.6&&(b-=.25)),Math.max(u,g,b)}function co(t,e="",r=[]){let n=new Set,s=V0(e||""),i=l=>{let d=V0(Dnt(l)),f=d.replace(ye.Season.PART_ANY,""),p=f.match(ye.Season.CN_STRUCTURE);if(p){let A={\u627F:"S2",\u8F6C:"S3",\u7ED3:"S4"};A[p[1]]&&n.add(A[p[1]])}if(D0r.forEach(A=>{let g=(A.useCleaned?f:d).match(A.regex);g&&n.add(A.prefix?`${A.prefix}${parseInt(g[1])}`:A.val)}),!r4.some(A=>{if(A.regex.test(f))return n.add(A.val),!0})){let A=f.match(ye.Season.SUFFIX_AMBIGUOUS);if(A){n.add("AMBIGUOUS");let g={II:"S2",III:"S3",IV:"S4"},b=A[1].toUpperCase();g[b]&&n.add(g[b])}}ye.Season.SUFFIX_SEQUEL.test(d)&&n.add("SEQUEL");let h={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,final:99};for(let[A,g]of Object.entries(h))d.includes(`\u7B2C${A}\u5B63`)&&n.add(`S${g}`)};[t,...Array.isArray(r)?r:[]].filter(Boolean).forEach(i),s.includes("\u7EED\u7BC7")&&n.add("SEQUEL"),/(剧场版|movie|film|电影)/i.test(s)&&n.add("MOVIE"),/\b(ova|oad)\b/i.test(s)&&n.add("OVA"),/\b(sp|special)\b/i.test(s)&&n.add("SP");let a=Array.from(n),o=a.some(l=>l.startsWith("S")),c=a.some(l=>l.startsWith("P")),u=["MOVIE","OVA","SP","SEQUEL","AMBIGUOUS"].some(l=>n.has(l));return c&&!o&&n.add("S1"),!o&&!c&&!u&&n.add("S1"),n}function bi(t,e="",r=[]){let n=co(t,e,r),s=null;for(let i of n)if(i.startsWith("S")){let a=parseInt(i.substring(1));isNaN(a)||(s===null||a>s)&&(s=a)}return s}function vg(t,e){let r=(t+" "+(e||"")).toLowerCase(),n=r.includes("\u7535\u5F71"),s=r.includes("\u7535\u89C6\u5267");return n&&!s?"MOVIE":s&&!n?"TV":null}function rE(t,e,r){if(r&&ye.Category.ANIMEKO_SOURCE.test(r))return"ANIME";let n=(t+" "+(e||"")).toLowerCase();return ye.Category.ANIME_KW.test(n)?"ANIME":ye.Category.REAL_KW.test(n)?"REAL":"UNKNOWN"}function W0r(t,e,r=!0){if(!t||!e||Tc(t)===Tc(e))return!1;let n=d=>{if(!d)return"";let f=Gt(d);return f=f.replace(ye.Clean.META_SUFFIX,"").replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").replace(ye.Clean.WHITESPACE," "),f.trim().toLowerCase()},s=n(t),i=n(e);if(s===i)return!1;let a=d=>{let f=[":","\uFF1A"," code:"," code\uFF1A"," season"," part"];for(let m of f){let h=d.indexOf(m);if(h!==-1)return d.substring(h).trim()}let p=d.split(ye.Clean.WHITESPACE);return p.length>=2?p.slice(1).join(" "):null},o=a(s),c=a(i),[u,l]=s.length1||f.length>2)return!0}}return!!(o&&c&&M0r(o,c)<.2)}function knt(t,e,r,n){if(!((r||"").includes("\u5267\u573A\u7248")||(n||"").includes("\u5267\u573A\u7248")))return!1;let i=c=>c?Gt(c).replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim():"",a=i(t),o=i(e);if(ye.Clean.SPACE_STRUCTURE.test(a)&&ye.Clean.SPACE_STRUCTURE.test(o)){let c=d=>{let f=d.split(ye.Clean.SPLIT_SPACES);return f.length>1?f.slice(1).join(" "):""},u=c(a),l=c(o);return!(ye.Season.PURE_PART.test(u)||ye.Season.PURE_PART.test(l))}return!1}function $0r(t,e,r,n,s,i,a="",o=""){let c=rE(t,r,a),u=rE(e,n,o);if(c==="REAL"&&u==="ANIME"||c==="ANIME"&&u==="REAL")return!0;let l=(r||"").includes("3D"),d=(n||"").includes("3D"),f=(r||"").includes("2D"),p=(n||"").includes("2D"),m=!l&&!f,h=!d&&!p;if(!m&&h?/3[dD]/.test(e)?d=!0:/2[dD]/.test(e)&&(p=!0):!h&&m&&(/3[dD]/.test(t)?l=!0:/2[dD]/.test(t)&&(f=!0)),(l||f)&&(d||p)&&l!==d)return!0;let b=vg(t,r),y=vg(e,n);return!b||!y||b===y||knt(t,e,r,n)?!1:s>0&&i>0?Math.abs(s-i)>5:!0}function F0r(t,e,r,n,s=[],i=[]){let a=co(t,r,s),o=co(e,n,i);if(a.size===0&&o.size===0)return!1;let c=f=>Array.from(f).some(p=>p.startsWith("S")&&parseInt(p.substring(1))>=2),u=f=>f.has("SEQUEL"),l=f=>f.has("AMBIGUOUS"),d=f=>f.has("S1");if(a.size>0&&o.size>0){if(l(a)&&d(o)||l(o)&&d(a))return!0;if(l(a)&&(c(o)||u(o))||l(o)&&(c(a)||u(a))||c(a)&&u(o)||c(o)&&u(a))return!1;for(let f of a)if(f.startsWith("S")){let p=o.has(f),m=Array.from(o).some(h=>h.startsWith("S"));if(!p&&m)return!0}return!1}return a.size!==o.size?!knt(t,e,r,n):!1}function U0r(t,e,r,n,s=[],i=[]){let a=co(t,r,s),o=co(e,n,i),c=Array.from(a).filter(l=>l.startsWith("S")),u=Array.from(o).filter(l=>l.startsWith("S"));return c.length>0&&u.length>0?c.some(l=>u.includes(l)):!1}function q0r(t,e,r=!1){if(!t.year||!e.year)return .05;let n=t.year-e.year;if(n===0){if(t.month&&e.month){let i=Math.abs(t.month-e.month);return i>2?0:i===0?.2:.1}return .1}let s=Math.abs(n);return r&&s<=10?0:s>1?-1:0}function j0r(t,e,r,n,s,i=!1){if(/^(dandan|animeko)$/i.test(n)||/^(dandan|animeko)$/i.test(s))return!0;if(i){let c=Math.min(e,r);return c>0&&t/c>.5?!0:!(t<2)}let a=Math.max(e,r);if(a===0)return!1;let o=t/a;return!(a>5&&o<.18)}function e4(t){if(!t)return null;let e=t.toLowerCase();return e.includes("opening")?"opening":e.includes("ending")?"ending":e.includes("interview")?"interview":e.includes("bloopers")?"Bloopers":null}function Aa(t,e=""){let r=!1,n=e;if(t){let m=t.match(ye.Episode.DANDAN_TAG);m&&(n=m[1].toLowerCase())}if(/^(dandan|animeko)$/i.test(n)&&t){let m=t.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();(ye.Episode.SPECIAL_START.test(m)||ye.Episode.DANDAN_IGNORE.test(m))&&(r=!0)}let i=V0(t||""),a=ye.Episode.MOVIE_CHECK.test(i),o=ye.Episode.PV_CHECK.test(i),c=null,u=null,l=e4(t),d=o||r||!!l||ye.Episode.SPECIAL_CHECK.test(i),f=i.match(ye.Episode.SEASON_MATCH);f&&(u=parseInt(f[1]));let p=i.match(ye.Episode.NUM_STRATEGY_A);if(p)c=parseFloat(p[2]);else{let m=i.match(ye.Episode.NUM_STRATEGY_B);if(m)c=parseFloat(m[1]);else{let h=i.match(ye.Episode.NUM_STRATEGY_C);h&&(c=parseFloat(h[1]))}}return{isMovie:a,num:c,isSpecial:d,isPV:o,season:u,isStrictSpecial:r}}function Tie(t,e,r=""){if(!t)return[];let s=["animeko","bilibili","bilibili1","bahamut","dandan"].includes(r);if(!e||s)return t.map((o,c)=>({link:o,originalIndex:c}));let i=[],a=[];if(t.forEach((o,c)=>{let u=o.title||o.name||"";e.test(u)?a.push(u):i.push({link:o,originalIndex:c})}),a.length>0){let o=r?`[${r}] `:"";mt("info",`[Merge-Check] ${o}\u547D\u4E2DEPISODE_TITLE_FILTER\u8FC7\u6EE4\uFF0C\u5DF2\u524D\u7F6E\u5254\u9664 ${a.length} \u96C6: ${a.join(", ")}`)}return i}var Cnt=new Map;function t4(t,e,r){if(!t||t.length<2||!e)return"";let n=l=>{if(!l||!r)return l||"";try{let d=Cnt.get(r);if(!d){let f=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");d=new RegExp(`(\\[|\u3010|\\s)?${f}(\\]|\u3011|\\s)?`,"gi"),Cnt.set(r,d)}return l.replace(d,"").trim()}catch{return l}},s=n(e),i=s.match(ye.Clean.REDUNDANT_SEPARATOR);i&&(s=s.substring(0,i.index));let a=t.map(l=>{let d=l.link||l;return d?n(d.title||d.name||""):""});if(a.some(l=>!l))return"";let o=(l,d)=>{let f="";for(let p=0;pf.length&&(f=h)}return f},c=o(a[0],a[1]);if(c.length<2)return"";for(let l=2;l=2&&s.startsWith(l)?l:""}return u.length>=2&&(ye.Clean.REDUNDANT_VALID_CHARS.test(u)||u.length>3)?(mt("info",`[Merge-Check] \u68C0\u6D4B\u5230\u96C6\u5185\u5197\u4F59\u6807\u9898\u5B57\u6BB5: "${u}" (\u5DF2\u5FFD\u7565\u6765\u6E90: ${r}, \u951A\u5B9A\u9A8C\u8BC1\u901A\u8FC7)`),u):""}function Int(t,e){let r=new Set;if(!t)return r;let n=-1;for(let s=0;s{let a=s.title||s.name||"",o=Aa(a,e);o.num!==null&&!o.isSpecial&&!o.isPV&&o.num%1!==0&&i{let c=o.title||o.name||"",u=Aa(c,r);u.num!==null&&e.has(u.num)?(i.push(o),a++):s.push(o)}),a>0&&(t.length=0,t.push(...s,...i),mt("info",`[Merge-Check] [${n}] \u81EA\u52A8\u6C89\u5E95: \u79FB\u52A8\u4E86 ${a} \u4E2A\u4E2D\u95F4\u63D2\u503C\u96C6\u6570 (${Array.from(e).join(",")}) \u5230\u672B\u5C3E`))}function wnt(t,e,r="Unspecified",n="Unspecified",s="",i="",a="",o=""){if(t.length===0||e.length===0)return 0;let c=t4(t,a,s),u=t4(e,o,i),l=(R,w)=>R?w&&R.includes(w)?R.replace(w,""):R:"",d=(R,w,N,P)=>{let L=R.link.title||"",M=l(L,P),k=Aa(M,w),B=oo(M),Z=B!=="Unspecified"?B:N,W=Z==="Unspecified"&&/^(dandan|animeko)$/i.test(w)?"JP":Z,F=tE(M),V=W==="CN"?M.replace(ye.Similarity.CN_STRICT_CORE_REMOVE,""):null;return{info:k,effLang:W,specialType:e4(M),cleanEpText:F,strictCnCore:V}},f=t.map(R=>d(R,s,r,c)),p=e.map(R=>d(R,i,n,u)),m=null,h=null;f.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(m=m===null?R.num:Math.min(m,R.num))}),p.forEach(({info:R})=>{R.num!==null&&!R.isSpecial&&R.num%1===0&&(h=h===null?R.num:Math.min(h,R.num))});let A=m!==null&&h!==null?m-h:null,g=15,b=A!==null?-A:0,y=Math.max(Math.min(-g,b-g),-Math.max(t.length,e.length)),x=Math.min(Math.max(g,b+g),Math.max(t.length,e.length)),v=0,C=-9999;for(let R=y;R<=x;R++){let w=0,N=0,P=0,L=new Map,M=!1,k=null;for(let B=0;B=t.length)continue;let W=f[Z],F=p[B],V=W.info,j=F.info,J=0;V.isMovie!==j.isMovie&&(J+=ai.EP_ALIGN.MOVIE_TYPE_MISMATCH),(V.isStrictSpecial&&!j.isSpecial||j.isStrictSpecial&&!V.isSpecial)&&(J+=ai.EP_ALIGN.SPECIAL_STRICT_MISMATCH);let se=W.effLang==="Unspecified"?"JP":W.effLang,oe=F.effLang==="Unspecified"?"JP":F.effLang;se===oe?J+=ai.EP_ALIGN.LANG_MATCH:J+=ai.EP_ALIGN.LANG_MISMATCH,V.season!==null&&j.season!==null&&V.season!==j.season&&(J+=ai.EP_ALIGN.SEASON_NUM_MISMATCH),(W.specialType||F.specialType)&&(W.specialType!==F.specialType?J+=ai.EP_ALIGN.SPECIAL_TYPE_MISMATCH:J+=ai.EP_ALIGN.SPECIAL_TYPE_MATCH),V.isSpecial===j.isSpecial&&(J+=ai.EP_ALIGN.IS_SPECIAL_MATCH),A!==null&&!V.isSpecial&&!j.isSpecial&&V.num-j.num===A&&(J+=ai.EP_ALIGN.SEASON_SHIFT_EXACT,M=!0);let ue=0;W.effLang==="CN"&&F.effLang==="CN"&&W.strictCnCore&&F.strictCnCore&&(W.strictCnCore.includes(F.strictCnCore)||F.strictCnCore.includes(W.strictCnCore))?ue=V.num!==null&&j.num!==null&&V.num===j.num?ai.EP_ALIGN.CN_STRICT_MATCH:ai.EP_ALIGN.CN_STRICT_MISMATCH:ue=G0(W.cleanEpText,F.cleanEpText),J+=ue,N+=ue,V.num!==null&&j.num!==null&&V.num===j.num&&(J+=ai.EP_ALIGN.NUMERIC_MATCH);let Ce=1;if(V.num!==null&&!V.isSpecial&&(k!==null&&V.num-k>1?Ce=.1:k=V.num),J*=Ce,ue*=Ce,N+=ue,w+=J,V.num!==null&&j.num!==null){let we=(j.num-V.num).toFixed(4);L.set(we,(L.get(we)||0)+Ce)}P++}if(P>0){let B=w/P,Z=0;for(let j of L.values())Z=Math.max(Z,j);let W=Z/P,F=N/P;W>.6&&(M||F>.33)&&(B+=ai.EP_ALIGN.PATTERN_CONSISTENCY_BONUS),B+=Math.min(P*.15,1.5);let V=L.get("0.0000")||0;V>3?(B+=ai.EP_ALIGN.ZERO_DIFF_BONUS_BASE,B+=V*ai.EP_ALIGN.ZERO_DIFF_BONUS_PER_HIT):V>0&&(B+=V*2),B>C&&(C=B,v=R)}}return C>.3?v:0}function H0r(t,e,r){let n=new Map,s=[];for(let o of t){if(r&&r.has(o.animeId))continue;let c=O.animes.find(f=>String(f.animeId)===String(o.animeId))||o;if(rE(c.animeTitle,c.typeDescription,c.source)==="REAL"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u771F\u4EBA\u5267/REAL)`);continue}if(vg(c.animeTitle,c.typeDescription)==="MOVIE"){s.push(` [\u5254\u9664] [${c.source}] ${c.animeTitle} (\u7C7B\u578B: \u7535\u5F71/MOVIE)`);continue}let d=bi(c.animeTitle,c.typeDescription,c.aliases);if(d!==null&&c.links){let p=Tie(c.links,e,c.source).filter(m=>{let h=m.link.title||m.link.name||"",g=V0(h).replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();return!(/^(dandan|animeko)$/i.test(c.source)&&(ye.Episode.SPECIAL_CHECK.test(g)||ye.Episode.DANDAN_IGNORE.test(g))||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(g)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(h))}).length;if(p>0){n.has(d)||n.set(d,new Map);let m=n.get(d);m.has(p)||m.set(p,[]),m.get(p).push(c.source),s.push(` [\u91C7\u7EB3] [${c.source}] S${d} = ${p}\u96C6 ("${c.animeTitle}")`)}else s.push(` [\u5FFD\u7565] [${c.source}] S${d} (\u6709\u6548\u96C6\u6570\u4E3A 0)`)}}let i=new Map,a=[];for(let[o,c]of n.entries()){let u=0,l=0,d=[];for(let[p,m]of c.entries()){let h=m.length;h>l?(l=h,u=p,d=m):h===l&&p`${p}\u96C6(x${m.length})[${m.join(",")}]`).join(", ");a.push(`S${o}=${u} (\u63A8\u65AD\u6765\u6E90: ${d.join(",")} | \u7EDF\u8BA1: ${f})`)}return(s.length>0||a.length>0)&&mt("info",`[Merge-Check] [Map-Build] \u5B63\u5EA6\u5730\u56FE\u6784\u5EFA\u8BE6\u60C5: ${s.join(` `)} - => \u6700\u7EC8\u5224\u5B9A: { ${a.join("; ")} }`),i}function F0r(t,e,r=""){let n=`${t}_${e}_${r}`,s=0;for(let i=0;i=0;l--){let d=t.links[l],f=d.title||d.name||"",p=Aa(f,t.source);if(!p.isSpecial&&!p.isPV&&!p.isStrictSpecial&&p.num!==null){o=l;break}}for(let l of e){let d=l.relativeIndex,f=l.info&&l.info.isStrictSpecial,p=l.info&&!l.info.isSpecial&&!l.info.isPV&&!f&&l.info.num!==null;d<0&&!f?n.push(l):d>=a&&!f||p&&d>o?s.push(l):i.push(l)}let c=[],u=(l,d,f)=>{l.length>0&&(l.sort((p,m)=>p.originalIndex-m.originalIndex),d.push(...l.map(p=>Int(p,r))),c.push(` [\u8865\u5168-${f}] \u63D2\u5165/\u8FFD\u52A0 ${l.length} \u96C6 (${l.map(p=>p.link.title).join(", ")})`))};n.length>0&&(n.sort((l,d)=>l.originalIndex-d.originalIndex),t.links.unshift(...n.map(l=>Int(l,r))),c.push(` [\u8865\u5168-\u5934\u90E8] \u63D2\u5165 ${n.length} \u96C6 (${n.map(l=>l.link.title).join(", ")})`)),u(s,t.links,"\u5C3E\u90E8"),u(i,t.links,"\u7279\u6B8A"),c.length>0&&mt("info",`[Merge] [${r}] \u667A\u80FD\u8865\u5168: + => \u6700\u7EC8\u5224\u5B9A: { ${a.join("; ")} }`),i}function Q0r(t,e,r=""){let n=`${t}_${e}_${r}`,s=0;for(let i=0;i=0;l--){let d=t.links[l],f=d.title||d.name||"",p=Aa(f,t.source);if(!p.isSpecial&&!p.isPV&&!p.isStrictSpecial&&p.num!==null){o=l;break}}for(let l of e){let d=l.relativeIndex,f=l.info&&l.info.isStrictSpecial,p=l.info&&!l.info.isSpecial&&!l.info.isPV&&!f&&l.info.num!==null;d<0&&!f?n.push(l):d>=a&&!f||p&&d>o?s.push(l):i.push(l)}let c=[],u=(l,d,f)=>{l.length>0&&(l.sort((p,m)=>p.originalIndex-m.originalIndex),d.push(...l.map(p=>Rnt(p,r))),c.push(` [\u8865\u5168-${f}] \u63D2\u5165/\u8FFD\u52A0 ${l.length} \u96C6 (${l.map(p=>p.link.title).join(", ")})`))};n.length>0&&(n.sort((l,d)=>l.originalIndex-d.originalIndex),t.links.unshift(...n.map(l=>Rnt(l,r))),c.push(` [\u8865\u5168-\u5934\u90E8] \u63D2\u5165 ${n.length} \u96C6 (${n.map(l=>l.link.title).join(", ")})`)),u(s,t.links,"\u5C3E\u90E8"),u(i,t.links,"\u7279\u6B8A"),c.length>0&&mt("info",`[Merge] [${r}] \u667A\u80FD\u8865\u5168: ${c.join(` -`)}`)}function q0r(t){let e=new Map;if(!t||t.length<2)return e;let r=t.map(s=>{let i=s.animeTitle||"",a=K0(i).replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();return{id:s.animeId,raw:i,clean:a}}),n=new Set(r.map(s=>s.clean));for(let s of r){let i=null;for(let a of t4)if(s.clean.match(a.regex)){i=s.clean.replace(a.regex,"").trim();break}if(!i){let a=s.clean.match(ye.Season.SUFFIX_AMBIGUOUS);if(a){let o=a[1];s.clean.endsWith(o)&&(i=s.clean.substring(0,s.clean.length-o.length).trim())}}i&&i.length>1&&n.has(i)&&(e.set(String(s.id),i),mt("info",`[Merge-Check] \u4E0A\u4E0B\u6587\u611F\u77E5: \u5224\u5B9A [${s.raw}] \u4E3A\u7EED\u4F5C (Base: "${i}" \u540C\u65F6\u4E5F\u5B58\u5728\u4E8E\u5217\u8868)`))}return e}function j0r(t,e){let r={isStrongMatch:!1,isStrongMismatch:!1};if(!t.links||!e.links||!t.links.length||!e.links.length)return r;let n=h=>h.filter(A=>{let g=(A.title||A.name||"").toLowerCase();return!ye.Episode.PV_CHECK.test(g)&&!ye.Episode.SPECIAL_CHECK.test(g)}).length,s=n(t.links),i=n(e.links);s>5&&i>5&&Math.min(s,i)/Math.max(s,i)<.4;let a=h=>h.map(A=>eE(A.title||A.name||"").replace(/\d+/g,"").trim()).filter(A=>A.length>1),o=a(t.links),c=a(e.links);if(o.length<3||c.length<3)return r;let u=co(o.join(" ")),l=co(c.join(" "));if(u!==l||u==="Unspecified")return r;let d=Math.min(o.length,c.length,5),f=0,p=0,m=[];for(let h=0;h.6?f++:b<.3&&p++}return f>=Math.ceil(d*.6)?(r.isStrongMatch=!0,mt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Match): ${m.join(", ")}`)):p>=Math.ceil(d*.8)&&(r.isStrongMismatch=!0,mt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Mismatch): ${m.join(", ")}`)),r}function Tie(t,e){let r=O.customMergeRules||[];if(r.length===0)return null;let n=Ei(t.animeTitle,t.typeDescription,t.aliases),s=Ei(e.animeTitle,e.typeDescription,e.aliases),i=(a,o)=>{let c=Qt(a||"").toLowerCase().replace(ye.Clean.FROM_SUFFIX,""),u=Qt(o||"").toLowerCase(),l=/[\((\[]?\d{4}[\))\]]?/.test(u),d=/【.*?】/.test(u)||/\[.*?\]/.test(u);if(l||(c=c.replace(/[\((\[]\d{4}[\))\]]/g,"")),!d){let f=c.match(/^(?:【|\[)(.+?)(?:】|\])/);if(f){let p=f[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|电影|电视剧|连续剧|综艺|真人秀|纪录片|日剧|韩剧|美剧|英剧|泰剧|国产剧|港剧|台剧|短剧|微短剧|特摄|OVA|OAD|SP|AVC|HEVC|MP4|MKV)$/i.test(p)||(c=c.replace(f[0],p+" "))}c=c.replace(ye.Clean.SOURCE_TAG,"").replace(/\[.*?\]/g,"")}return!u.includes("\u5B63")&&!u.includes("season")&&(c=c.replace(ye.Season.INFO_STRONG,"")),c=c.replace(ye.Clean.MOVIE_KEYWORDS,""),{target:Fr(c).replace(/\s+/g,""),rule:Fr(u).replace(/\s+/g,"")}};for(let a of r){let o=A=>String(A).split(Sg)[0],c=o(a.primary.source),u=o(a.secondary.source),l=String(t.source).split(Sg),d=String(e.source).split(Sg);if(!l.includes(c)||!d.includes(u))continue;let f=i(t.animeTitle,a.primary.title),p=i(e.animeTitle,a.secondary.title),m=f.target===f.rule,h=p.target===p.rule;if(!(!m||!h)&&!(a.primary.season!==null&&(n||1)!==a.primary.season)&&!(a.secondary.season!==null&&(s||1)!==a.secondary.season))return a}return null}function H0r(t,e,r=new Set,n=[]){if(!e||e.length===0)return[];let s=t.animeTitle||"",i=s.replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),a=!!i.match(ye.Lang.CN_DUB_VER)||ye.Lang.CN.test(i),o=t.source==="hanjutv",c=s.includes("N/A")||o?{year:null,month:null}:bnt(t.startDate),u=t.episodeCount||(t.links?t.links.length:0),l=co(s),d=K0(i),f=wc(i),p=uo(s,t.typeDescription,t.aliases),m=Array.from(p).filter(w=>w.startsWith("S")),h=[{animeId:t.animeId,animeTitle:s},...e],A=q0r(h),g=A.has(String(t.animeId)),b=A.get(String(t.animeId)),y=r.has(t.animeId),x=(w,N)=>{mt("info",`[Merge-Check] \u62D2\u7EDD: [${t.source}] ${s} vs [${w}] -> ${N}`)},v=[],I=0;for(let w of e){let N=w.animeTitle||"",P=Tie(t,w);if(P){if(P.action==="block"){x(N,"\u88AB\u6620\u5C04\u8868 [\xD7] \u660E\u786E\u7981\u6B62\u4E0E\u4E3B\u6E90\u5408\u5E76");continue}let X=co(N);v.push({anime:w,score:1,lang:X,debugTitle:N,isCustomMapped:!0}),mt("info",`[Merge-Check] \u5408\u5E76\u6620\u5C04\u8868\u7279\u6743\u653E\u884C: [${t.source}] ${s} <-> [${w.source}] ${N}`);continue}if(!n.includes(w.source)){x(N,"\u8BE5\u6765\u6E90\u4E3A\u6620\u5C04\u8868\u52A8\u6001\u6CE8\u5165\uFF0C\u4E14\u672A\u547D\u4E2D\u7279\u6743\u89C4\u5219\uFF0C\u53D7\u9650\u4E8E\u6743\u9650\u6C99\u7BB1\u4E88\u4EE5\u963B\u65AD");continue}let B=r.has(w.animeId),M=y||B,D=w.source==="hanjutv",L=N.includes("N/A")||D?{year:null,month:null}:bnt(w.startDate),Z=co(N),W=N.replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),F=!!W.match(ye.Lang.CN_DUB_VER)||ye.Lang.CN.test(W),K=a||F,j=w.episodeCount||(w.links?w.links.length:0);if(W.includes("\u4E4B")){let X=W.split("\u4E4B"),ie=K0(X[0]);if(d===ie){x(N,`\u7ED3\u6784\u51B2\u7A81: \u4E3B\u6807\u9898\u662F\u526F\u6807\u9898\u7684\u524D\u7F00\u7236\u96C6 (Prefix: "${ie}")`);continue}}if(D0r(s,N,t.typeDescription,w.typeDescription,u,j,t.source,w.source)){let X=tE(s,t.typeDescription,t.source),ie=tE(N,w.typeDescription,w.source);x(N,`\u5A92\u4F53\u7C7B\u578B\u6216\u7EF4\u6570\u4E0D\u5339\u914D (P:${X}/${vg(s,t.typeDescription)} [${t.typeDescription}] vs S:${ie}/${vg(N,w.typeDescription)} [${w.typeDescription}])`);continue}let J=c.year!==null&&L.year!==null,se=k0r(s,N,J);if(A.has(String(w.animeId))){let X=A.get(String(w.animeId));if(f===wc(X)&&!(ye.Season.SUFFIX_AMBIGUOUS.test(d)||t4.some(ce=>ce.regex.test(d)))){x(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S1) vs \u526F\u6E90(S2/S\u7EED\u4F5C) (Base: "${X}")`);continue}}if(g&&wc(W)===wc(b)){x(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S2/Sequel) vs \u526F\u6E90(Base/S1) (Base: "${b}")`);continue}if(!J&&se){x(N,"\u6807\u9898\u7ED3\u6784\u51B2\u7A81\u4E14\u65E5\u671F\u65E0\u6548");continue}let ue=L0r(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases),Ie=j0r(t,w),we=s.search(ye.Clean.MOVIE_KEYWORDS)!==-1,qe=N.search(ye.Clean.MOVIE_KEYWORDS)!==-1;if(we!==qe){let X=uo(N,w.typeDescription,w.aliases),ie=Ne=>wc(Ne.replace(ye.Clean.MOVIE_KEYWORDS,"")),ce=ie(s),fe=ie(N);if(G0(ce,fe)>.9&&!p.has("SEQUEL")&&!X.has("SEQUEL")){x(N,`\u5267\u573A\u7248\u6807\u9898\u963B\u65AD: [${we?"Movie":"TV"}] vs [${qe?"Movie":"TV"}] (\u65E0\u7EED\u7BC7\u6807\u8BC6)`);continue}}let Fe=M?0:M0r(c,L,K);if(Fe===-1){let X=ue;if(Ie.isStrongMatch&&(X=!0),M&&(X=!0),se&&!M&&(X=!1),X&&c.year&&L.year&&Math.abs(c.year-L.year)>2&&!Ie.isStrongMatch&&!M&&(X=!1),!X){x(N,`\u65E5\u671F\u4E25\u91CD\u4E0D\u5339\u914D\u4E14\u65E0\u8C41\u514D (P:${c.year} vs S:${L.year}, IsDub:${K})`);continue}}if(!M&&B0r(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases))if(Ie.isStrongMatch)mt("info",`[Merge-Check] \u5B63\u5EA6\u51B2\u7A81\u8C41\u514D: [${s}] vs [${N}] (Probe\u5F3A\u5339\u914D)`);else{x(N,"\u5B63\u5EA6\u6807\u8BB0\u51B2\u7A81");continue}let _e=X=>X?String(X).replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim():"",U=Array.from(new Set([i,...t.aliases||[]].map(_e).filter(Boolean))),G=Array.from(new Set([W,...w.aliases||[]].map(_e).filter(Boolean))),V=0,q=0;for(let X of U){let ie=xnt(X);for(let ce of G)V=Math.max(V,G0(X,ce)),q=Math.max(q,G0(ie,xnt(ce)))}let H=Math.max(V,q),ee=H;se&&(H+=oi.TITLE_STRUCTURE_CONFLICT),Fe!==-1&&(H+=Fe);let ne=l==="CN",re=Z==="CN";if(ne&&re?H+=oi.LANG_MATCH_CN:ne!==re&&(H+=oi.LANG_MISMATCH),Ie.isStrongMatch?(mt("info",`[Merge-Check] \u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u5339\u914D! \u63D0\u5347\u5206\u6570 (\u539F\u5206: ${H.toFixed(2)}) -> ${Hl.SIMILARITY_STRONG}`),H=Math.max(H,Hl.SIMILARITY_STRONG)):Ie.isStrongMismatch&&(x(N,"\u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u4E0D\u5339\u914D (\u96C6\u6807\u9898/\u5185\u5BB9\u5DEE\u5F02\u5DE8\u5927)"),H=0),HI&&(I=H),v.push({anime:w,score:H,lang:Z,debugTitle:N}),mt("info",`[Merge-Check] \u5019\u9009\u9009\u4E2D: ${N} Score=${H.toFixed(2)} (BestSoFar=${I.toFixed(2)})`)}if(v.length===0||Iw.isCustomMapped))return[];let R=v.filter(w=>{if(w.isCustomMapped||w.score>=I-Hl.TIER_DEFAULT||w.lang==="CN"&&w.score>=I-Hl.TIER_CN)return!0;let N=uo(w.debugTitle,w.anime.typeDescription,w.anime.aliases);if(Array.from(N).some(B=>B.startsWith("P"))&&w.score>=I-Hl.TIER_PART){let B=Array.from(N).filter(M=>M.startsWith("S"));if(m.length>0&&B.length>0){if(m.some(D=>B.includes(D)))return!0}else return!0}return!1});return R.sort((w,N)=>w.isCustomMapped&&!N.isCustomMapped?-1:!w.isCustomMapped&&N.isCustomMapped?1:N.score-w.score),R.map(w=>w.anime)}function Q0r(t){let e=new Set;if(!t||t.length===0)return e;let r={\u4E00:"1",\u4E8C:"2",\u4E09:"3",\u56DB:"4",\u4E94:"5",\u516D:"6",\u4E03:"7",\u516B:"8",\u4E5D:"9",\u5341:"10"},n=new Map;t.forEach(s=>{let i=O.animes.find(f=>String(f.animeId)===String(s.animeId))||s,a=uo(i.animeTitle,i.typeDescription,i.aliases);if(a.has("MOVIE")||a.has("OVA")||a.has("SP")||a.has("SEQUEL"))return;let o=Qt(s.animeTitle||""),c=o.match(/^(?:【|\[)(.+?)(?:】|\])/);if(c){let f=c[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(f)||(o=o.replace(c[0],f+" "))}o=o.replace(/第([一二三四五六七八九十])å­£/g,(f,p)=>`\u7B2C${r[p]}\u5B63`);let u=o.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.META_SUFFIX,"").replace(ye.Lang.KEYWORDS_STRONG,"");if(t4.forEach(f=>u=u.replace(f.regex,"")),u=u.replace(ye.Season.SUFFIX_AMBIGUOUS,"").replace(/(?:第|S)\d+(?:å­£|期|部)/gi,"").replace(/(?:Part|P)\s*\d+/gi,"").replace(/\s+/g,"").toLowerCase().trim(),!u)return;let l=tE(s.animeTitle,i.typeDescription,i.source),d=`${u}|${l}`;n.has(d)||n.set(d,[]),n.get(d).push(s)});for(let[s,i]of n.entries()){if(i.length<2)continue;let[a,o]=s.split("|"),c=i.map(f=>` - [${f.source}] ${f.animeTitle}`).join(` +`)}`)}function V0r(t){let e=new Map;if(!t||t.length<2)return e;let r=t.map(s=>{let i=s.animeTitle||"",a=V0(i).replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();return{id:s.animeId,raw:i,clean:a}}),n=new Set(r.map(s=>s.clean));for(let s of r){let i=null;for(let a of r4)if(s.clean.match(a.regex)){i=s.clean.replace(a.regex,"").trim();break}if(!i){let a=s.clean.match(ye.Season.SUFFIX_AMBIGUOUS);if(a){let o=a[1];s.clean.endsWith(o)&&(i=s.clean.substring(0,s.clean.length-o.length).trim())}}i&&i.length>1&&n.has(i)&&(e.set(String(s.id),i),mt("info",`[Merge-Check] \u4E0A\u4E0B\u6587\u611F\u77E5: \u5224\u5B9A [${s.raw}] \u4E3A\u7EED\u4F5C (Base: "${i}" \u540C\u65F6\u4E5F\u5B58\u5728\u4E8E\u5217\u8868)`))}return e}function z0r(t,e){let r={isStrongMatch:!1,isStrongMismatch:!1};if(!t.links||!e.links||!t.links.length||!e.links.length)return r;let n=h=>h.filter(A=>{let g=(A.title||A.name||"").toLowerCase();return!ye.Episode.PV_CHECK.test(g)&&!ye.Episode.SPECIAL_CHECK.test(g)}).length,s=n(t.links),i=n(e.links);s>5&&i>5&&Math.min(s,i)/Math.max(s,i)<.4;let a=h=>h.map(A=>tE(A.title||A.name||"").replace(/\d+/g,"").trim()).filter(A=>A.length>1),o=a(t.links),c=a(e.links);if(o.length<3||c.length<3)return r;let u=oo(o.join(" ")),l=oo(c.join(" "));if(u!==l||u==="Unspecified")return r;let d=Math.min(o.length,c.length,5),f=0,p=0,m=[];for(let h=0;h.6?f++:b<.3&&p++}return f>=Math.ceil(d*.6)?(r.isStrongMatch=!0,mt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Match): ${m.join(", ")}`)):p>=Math.ceil(d*.8)&&(r.isStrongMismatch=!0,mt("info",`[Merge-Check] [Probe] \u91C7\u6837\u5BF9\u6BD4 (Mismatch): ${m.join(", ")}`)),r}function wie(t,e){let r=O.customMergeRules||[];if(r.length===0)return null;let n=bi(t.animeTitle,t.typeDescription,t.aliases),s=bi(e.animeTitle,e.typeDescription,e.aliases),i=(a,o)=>{let c=Gt(a||"").toLowerCase().replace(ye.Clean.FROM_SUFFIX,""),u=Gt(o||"").toLowerCase(),l=/[\((\[]?\d{4}[\))\]]?/.test(u),d=/【.*?】/.test(u)||/\[.*?\]/.test(u);if(l||(c=c.replace(/[\((\[]\d{4}[\))\]]/g,"")),!d){let f=c.match(/^(?:【|\[)(.+?)(?:】|\])/);if(f){let p=f[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|电影|电视剧|连续剧|综艺|真人秀|纪录片|日剧|韩剧|美剧|英剧|泰剧|国产剧|港剧|台剧|短剧|微短剧|特摄|OVA|OAD|SP|AVC|HEVC|MP4|MKV)$/i.test(p)||(c=c.replace(f[0],p+" "))}c=c.replace(ye.Clean.SOURCE_TAG,"").replace(/\[.*?\]/g,"")}return!u.includes("\u5B63")&&!u.includes("season")&&(c=c.replace(ye.Season.INFO_STRONG,"")),c=c.replace(ye.Clean.MOVIE_KEYWORDS,""),{target:Fr(c).replace(/\s+/g,""),rule:Fr(u).replace(/\s+/g,"")}};for(let a of r){let o=A=>String(A).split(Sg)[0],c=o(a.primary.source),u=o(a.secondary.source),l=String(t.source).split(Sg),d=String(e.source).split(Sg);if(!l.includes(c)||!d.includes(u))continue;let f=i(t.animeTitle,a.primary.title),p=i(e.animeTitle,a.secondary.title),m=f.target===f.rule,h=p.target===p.rule;if(!(!m||!h)&&!(a.primary.season!==null&&(n||1)!==a.primary.season)&&!(a.secondary.season!==null&&(s||1)!==a.secondary.season))return a}return null}function K0r(t,e,r=new Set,n=[]){if(!e||e.length===0)return[];let s=t.animeTitle||"",i=s.replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),a=!!i.match(ye.Lang.CN_DUB_VER)||ye.Lang.CN.test(i),o=t.source==="hanjutv",c=s.includes("N/A")||o?{year:null,month:null}:vnt(t.startDate),u=t.episodeCount||(t.links?t.links.length:0),l=oo(s),d=V0(i),f=Tc(i),p=co(s,t.typeDescription,t.aliases),m=Array.from(p).filter(w=>w.startsWith("S")),h=[{animeId:t.animeId,animeTitle:s},...e],A=V0r(h),g=A.has(String(t.animeId)),b=A.get(String(t.animeId)),y=r.has(t.animeId),x=(w,N)=>{mt("info",`[Merge-Check] \u62D2\u7EDD: [${t.source}] ${s} vs [${w}] -> ${N}`)},v=[],C=0;for(let w of e){let N=w.animeTitle||"",P=wie(t,w);if(P){if(P.action==="block"){x(N,"\u88AB\u6620\u5C04\u8868 [\xD7] \u660E\u786E\u7981\u6B62\u4E0E\u4E3B\u6E90\u5408\u5E76");continue}let X=oo(N);v.push({anime:w,score:1,lang:X,debugTitle:N,isCustomMapped:!0}),mt("info",`[Merge-Check] \u5408\u5E76\u6620\u5C04\u8868\u7279\u6743\u653E\u884C: [${t.source}] ${s} <-> [${w.source}] ${N}`);continue}if(!n.includes(w.source)){x(N,"\u8BE5\u6765\u6E90\u4E3A\u6620\u5C04\u8868\u52A8\u6001\u6CE8\u5165\uFF0C\u4E14\u672A\u547D\u4E2D\u7279\u6743\u89C4\u5219\uFF0C\u53D7\u9650\u4E8E\u6743\u9650\u6C99\u7BB1\u4E88\u4EE5\u963B\u65AD");continue}let L=r.has(w.animeId),M=y||L,k=w.source==="hanjutv",B=N.includes("N/A")||k?{year:null,month:null}:vnt(w.startDate),Z=oo(N),W=N.replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim(),F=!!W.match(ye.Lang.CN_DUB_VER)||ye.Lang.CN.test(W),V=a||F,j=w.episodeCount||(w.links?w.links.length:0);if(W.includes("\u4E4B")){let X=W.split("\u4E4B"),ie=V0(X[0]);if(d===ie){x(N,`\u7ED3\u6784\u51B2\u7A81: \u4E3B\u6807\u9898\u662F\u526F\u6807\u9898\u7684\u524D\u7F00\u7236\u96C6 (Prefix: "${ie}")`);continue}}if($0r(s,N,t.typeDescription,w.typeDescription,u,j,t.source,w.source)){let X=rE(s,t.typeDescription,t.source),ie=rE(N,w.typeDescription,w.source);x(N,`\u5A92\u4F53\u7C7B\u578B\u6216\u7EF4\u6570\u4E0D\u5339\u914D (P:${X}/${vg(s,t.typeDescription)} [${t.typeDescription}] vs S:${ie}/${vg(N,w.typeDescription)} [${w.typeDescription}])`);continue}let J=c.year!==null&&B.year!==null,se=W0r(s,N,J);if(A.has(String(w.animeId))){let X=A.get(String(w.animeId));if(f===Tc(X)&&!(ye.Season.SUFFIX_AMBIGUOUS.test(d)||r4.some(ce=>ce.regex.test(d)))){x(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S1) vs \u526F\u6E90(S2/S\u7EED\u4F5C) (Base: "${X}")`);continue}}if(g&&Tc(W)===Tc(b)){x(N,`\u4E0A\u4E0B\u6587\u963B\u65AD: \u4E3B\u6E90(S2/Sequel) vs \u526F\u6E90(Base/S1) (Base: "${b}")`);continue}if(!J&&se){x(N,"\u6807\u9898\u7ED3\u6784\u51B2\u7A81\u4E14\u65E5\u671F\u65E0\u6548");continue}let ue=U0r(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases),Ce=z0r(t,w),we=s.search(ye.Clean.MOVIE_KEYWORDS)!==-1,qe=N.search(ye.Clean.MOVIE_KEYWORDS)!==-1;if(we!==qe){let X=co(N,w.typeDescription,w.aliases),ie=Ne=>Tc(Ne.replace(ye.Clean.MOVIE_KEYWORDS,"")),ce=ie(s),fe=ie(N);if(G0(ce,fe)>.9&&!p.has("SEQUEL")&&!X.has("SEQUEL")){x(N,`\u5267\u573A\u7248\u6807\u9898\u963B\u65AD: [${we?"Movie":"TV"}] vs [${qe?"Movie":"TV"}] (\u65E0\u7EED\u7BC7\u6807\u8BC6)`);continue}}let Fe=M?0:q0r(c,B,V);if(Fe===-1){let X=ue;if(Ce.isStrongMatch&&(X=!0),M&&(X=!0),se&&!M&&(X=!1),X&&c.year&&B.year&&Math.abs(c.year-B.year)>2&&!Ce.isStrongMatch&&!M&&(X=!1),!X){x(N,`\u65E5\u671F\u4E25\u91CD\u4E0D\u5339\u914D\u4E14\u65E0\u8C41\u514D (P:${c.year} vs S:${B.year}, IsDub:${V})`);continue}}if(!M&&F0r(i,W,t.typeDescription,w.typeDescription,t.aliases,w.aliases))if(Ce.isStrongMatch)mt("info",`[Merge-Check] \u5B63\u5EA6\u51B2\u7A81\u8C41\u514D: [${s}] vs [${N}] (Probe\u5F3A\u5339\u914D)`);else{x(N,"\u5B63\u5EA6\u6807\u8BB0\u51B2\u7A81");continue}let _e=X=>X?String(X).replace(ye.Clean.YEAR_TAG,"").replace(/【(电影|电视剧)】/g,"").trim():"",U=Array.from(new Set([i,...t.aliases||[]].map(_e).filter(Boolean))),G=Array.from(new Set([W,...w.aliases||[]].map(_e).filter(Boolean))),z=0,q=0;for(let X of U){let ie=Snt(X);for(let ce of G)z=Math.max(z,G0(X,ce)),q=Math.max(q,G0(ie,Snt(ce)))}let H=Math.max(z,q),ee=H;se&&(H+=ai.TITLE_STRUCTURE_CONFLICT),Fe!==-1&&(H+=Fe);let ne=l==="CN",re=Z==="CN";if(ne&&re?H+=ai.LANG_MATCH_CN:ne!==re&&(H+=ai.LANG_MISMATCH),Ce.isStrongMatch?(mt("info",`[Merge-Check] \u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u5339\u914D! \u63D0\u5347\u5206\u6570 (\u539F\u5206: ${H.toFixed(2)}) -> ${Ql.SIMILARITY_STRONG}`),H=Math.max(H,Ql.SIMILARITY_STRONG)):Ce.isStrongMismatch&&(x(N,"\u96C6\u5185\u5BB9\u63A2\u6D4B: \u5F3A\u4E0D\u5339\u914D (\u96C6\u6807\u9898/\u5185\u5BB9\u5DEE\u5F02\u5DE8\u5927)"),H=0),HC&&(C=H),v.push({anime:w,score:H,lang:Z,debugTitle:N}),mt("info",`[Merge-Check] \u5019\u9009\u9009\u4E2D: ${N} Score=${H.toFixed(2)} (BestSoFar=${C.toFixed(2)})`)}if(v.length===0||Cw.isCustomMapped))return[];let R=v.filter(w=>{if(w.isCustomMapped||w.score>=C-Ql.TIER_DEFAULT||w.lang==="CN"&&w.score>=C-Ql.TIER_CN)return!0;let N=co(w.debugTitle,w.anime.typeDescription,w.anime.aliases);if(Array.from(N).some(L=>L.startsWith("P"))&&w.score>=C-Ql.TIER_PART){let L=Array.from(N).filter(M=>M.startsWith("S"));if(m.length>0&&L.length>0){if(m.some(k=>L.includes(k)))return!0}else return!0}return!1});return R.sort((w,N)=>w.isCustomMapped&&!N.isCustomMapped?-1:!w.isCustomMapped&&N.isCustomMapped?1:N.score-w.score),R.map(w=>w.anime)}function Y0r(t){let e=new Set;if(!t||t.length===0)return e;let r={\u4E00:"1",\u4E8C:"2",\u4E09:"3",\u56DB:"4",\u4E94:"5",\u516D:"6",\u4E03:"7",\u516B:"8",\u4E5D:"9",\u5341:"10"},n=new Map;t.forEach(s=>{let i=O.animes.find(f=>String(f.animeId)===String(s.animeId))||s,a=co(i.animeTitle,i.typeDescription,i.aliases);if(a.has("MOVIE")||a.has("OVA")||a.has("SP")||a.has("SEQUEL"))return;let o=Gt(s.animeTitle||""),c=o.match(/^(?:【|\[)(.+?)(?:】|\])/);if(c){let f=c[1];/^(TV|剧场版|åŠ‡å ´ç‰ˆ|movie|film|anime|动漫|动画|AVC|HEVC|MP4|MKV)$/i.test(f)||(o=o.replace(c[0],f+" "))}o=o.replace(/第([一二三四五六七八九十])å­£/g,(f,p)=>`\u7B2C${r[p]}\u5B63`);let u=o.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.META_SUFFIX,"").replace(ye.Lang.KEYWORDS_STRONG,"");if(r4.forEach(f=>u=u.replace(f.regex,"")),u=u.replace(ye.Season.SUFFIX_AMBIGUOUS,"").replace(/(?:第|S)\d+(?:å­£|期|部)/gi,"").replace(/(?:Part|P)\s*\d+/gi,"").replace(/\s+/g,"").toLowerCase().trim(),!u)return;let l=rE(s.animeTitle,i.typeDescription,i.source),d=`${u}|${l}`;n.has(d)||n.set(d,[]),n.get(d).push(s)});for(let[s,i]of n.entries()){if(i.length<2)continue;let[a,o]=s.split("|"),c=i.map(f=>` - [${f.source}] ${f.animeTitle}`).join(` `);mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u6B63\u5728\u68C0\u67E5\u5206\u7EC4: "${a}" [${o}] (\u5305\u542B ${i.length} \u4E2A\u6761\u76EE): -${c}`);let u=new Map,l=0;if(i.forEach(f=>{let p=O.animes.find(b=>String(b.animeId)===String(f.animeId))||f,m=uo(p.animeTitle,p.typeDescription,p.aliases),h=1;for(let b of m)if(b.startsWith("S")){let y=parseInt(b.substring(1));isNaN(y)||(h=y)}if(h===1){let b=m.has("SEQUEL")||ye.Season.SUFFIX_SEQUEL.test(p.animeTitle),y=m.has("AMBIGUOUS")||ye.Season.SUFFIX_AMBIGUOUS.test(p.animeTitle);(b||y)&&(h=2,mt("info",`[Merge-Check] [Detail] [${p.source}] "${p.animeTitle}" -> \u5224\u5B9A\u4E3A S2 (Reason: Sequel/Ambiguous Suffix)`))}h>l&&(l=h);let A=0;p.links&&(/^(dandan|animeko)$/i.test(p.source)?A=p.links.filter(b=>{let y=b.title||b.name||"",x=y.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();if(ye.Episode.SPECIAL_CHECK.test(x)||ye.Episode.DANDAN_IGNORE.test(x))return!1;let v=K0(y);return!(ye.Episode.SPECIAL_CHECK.test(v)||ye.Episode.DANDAN_IGNORE.test(v)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(x)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(y))}).length:A=p.links.length),u.has(p.source)||u.set(p.source,{seasonCounts:{},maxSeason:0,s1Candidates:[]});let g=u.get(p.source);g.seasonCounts[h]||(g.seasonCounts[h]=0),g.seasonCounts[h]=Math.max(g.seasonCounts[h],A),h>g.maxSeason&&(g.maxSeason=h),h===1&&g.s1Candidates.push({anime:p,originalCount:A})}),l<=1)continue;let d=Array.from(u.keys());for(let[f,p]of u.entries()){if(p.maxSeason>1)continue;let m=0,h=!1;for(let g of d){if(g===f)continue;let b=u.get(g);b.seasonCounts[1]&&(h=!0,b.seasonCounts[1]>m&&(m=b.seasonCounts[1]))}if(!h)continue;let A=m+Hl.COLLECTION_DIFF;p.s1Candidates.forEach(g=>{let b=m>0?g.originalCount/m:0;if(g.originalCount>A){if(b>Hl.COLLECTION_RATIO){mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u62D2\u7EDD: [${f}] ${g.anime.animeTitle} (Ratio too high: ${b.toFixed(2)} > ${Hl.COLLECTION_RATIO})`);return}e.add(g.anime.animeId),mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u53D1\u73B0\u7591\u4F3C\u5408\u96C6(\u5355\u4F53): [${f}] ${g.anime.animeTitle} (Count:${g.originalCount} > Thr:${A}, Ratio:${b.toFixed(2)}) -> \u6807\u8BB0\u4E3A\u5408\u96C6`)}else mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u672A\u547D\u4E2D: [${f}] ${g.anime.animeTitle} (Count:${g.originalCount} <= Threshold:${A})`)})}}return e}async function vie(t){let{pAnime:e,availableSecondaries:r,curAnimes:n,groupConsumedIds:s,globalConsumedIds:i,generatedSignatures:a,epFilter:o,groupFingerprint:c,currentPrimarySource:u,logPrefix:l,limitSecondaryLang:d,collectionAnimeIds:f,allowReuseIds:p,collectionProgress:m,baseSecondaries:h}=t;if(f.has(e.animeId)&&s.has(e.animeId))return mt("info",`${l} \u8DF3\u8FC7: [${u}] \u662F\u5408\u96C6\u4E14\u5DF2\u4F5C\u4E3A\u7EC4\u5185\u526F\u6E90\u53C2\u4E0E\u8FC7\u5408\u5E76\u3002`),null;let A=Sie(e);if(!A.links){let D=O.animes.find(L=>String(L.animeId)===String(e.animeId));A.links=D?.links?Sie(D.links):[]}if(!A.links||A.links.length===0)return mt("warn",`${l} \u4E3B\u6E90\u6570\u636E\u4E0D\u5B8C\u6574\uFF0C\u8DF3\u8FC7: ${e.animeTitle}`),null;let g=e.animeTitle.replace(ye.Clean.FROM_SUFFIX,""),b=[],y=[e.animeId],x=!1,v=co(e.animeTitle),I=e4(A.links,e.animeTitle,u),R=f.has(e.animeId),w=(D,L)=>D?L&&D.includes(L)?D.replace(L,""):D:"",N=wc(e.animeTitle),P=n.filter(D=>wc(D.animeTitle)===N),B=$0r(P,o,f);if(B.size>0){let D=Array.from(B.entries()).map(([L,Z])=>`S${L}=${Z}`).join(", ");(R||r.some(L=>n.some(Z=>Z.source===L&&f.has(Z.animeId))))&&mt("info",`${l} [\u5408\u96C6\u5904\u7406] \u6784\u5EFA\u5B63\u5EA6\u96C6\u6570\u5730\u56FE (Mode\u7B56\u7565): { ${D} }`)}let M=[];for(let D of r){let L=n.filter(K=>{if(K.source!==D)return!1;let j=Tie(e,K);if(j)return j.action==="block"?(mt("info",`${l} \u62E6\u622A: \u526F\u6E90 [${K.source}] ${K.animeTitle} \u88AB\u6620\u5C04\u8868 [\xD7] \u89C4\u5219\u660E\u786E\u963B\u65AD`),!1):!0;if(R)return!0;let J=s.has(K.animeId),se=p&&p.has(K.animeId);return!(J&&!se)}),Z=[],W=new Set;for(let K of L)W.has(K.animeId)||(W.add(K.animeId),Z.push(K));if(L=Z,d&&(L=L.filter(K=>co(K.animeTitle)===d)),L.length>1&&L.sort((K,j)=>{let J=co(K.animeTitle)==="CN",se=co(j.animeTitle)==="CN";return J===se?0:J?1:-1}),L.length===0)continue;let F=H0r(e,L,f,h);M.push(...F)}if(M.length>0){if(M.length>1&&(R||M.some(D=>f.has(D.animeId)))){M.sort((L,Z)=>{let W=Ei(L.animeTitle,L.typeDescription,L.aliases)||1,F=Ei(Z.animeTitle,Z.typeDescription,Z.aliases)||1;if(W!==F)return W-F;let K=r.indexOf(L.source),j=r.indexOf(Z.source);return K-j});let D=M.map(L=>`[${L.source}]S${Ei(L.animeTitle,L.typeDescription,L.aliases)||1}`);mt("info",`${l} [\u5408\u96C6\u65F6\u5E8F] \u5DF2\u5C06\u8DE8\u6E90\u5339\u914D\u961F\u5217\u6309\u5B63\u6570\u5347\u5E8F\u6392\u5217\uFF0C\u4FDD\u969C\u5207\u7247\u63A8\u65AD\u4E25\u683C\u81EA\u4E3E: ${D.join(" -> ")}`)}for(let D of M){let L=D.source,Z=Tie(e,D);if(Z&&Z.action==="block"){mt("info",`${l} [\u5B89\u5168\u7F51\u62E6\u622A] \u5173\u8054\u53D6\u6D88: [${u}] ${e.animeTitle} <-> [${L}] ${D.animeTitle} \u88AB\u660E\u786E\u963B\u65AD`);continue}if(!R&&!(p&&p.has(D.animeId))&&!Z&&s.has(D.animeId))continue;let W=O.animes.find(Pe=>String(Pe.animeId)===String(D.animeId));if(!W?.links)continue;let F=Sie(W),K=[],j=new Set,J=[],se=[],oe=F.animeTitle.replace(ye.Clean.FROM_SUFFIX,""),ue=_nt(A.links,u),Ie=_nt(F.links,L),we=new Set([...Ie].filter(Pe=>!ue.has(Pe))),qe=new Set([...ue].filter(Pe=>!Ie.has(Pe)));qe.size>0&&Snt(A.links,qe,u,`\u4E3B\u6E90:${u}`),we.size>0&&Snt(F.links,we,L,`\u526F\u6E90:${L}`);let Fe=F.links,_e=Cie(A.links,o,u),U=Cie(Fe,o,L),G=co(F.animeTitle),V=_e,q=U,H=0,ee=0,ne=f.has(D.animeId),re=(Pe,Ue,ze)=>{let Ye=0,Ze=Ue;if(ze&&ze>1){let nt=!1,ct=Pe?e.animeId:D.animeId;if(m&&m.has(ct)){let tt=m.get(ct),Pt=ze-1;if(tt[`S${Pt}`]!==void 0){let lt=tt[`S${Pt}`]+1;lt>0&<=Ue.length){let lt=(ze-1)*12;lt Total ${Ue.length}\uFF0C\u542F\u7528\u56DE\u9000\u4F30\u7B97 (S${ze} -> Index ${lt})`),Pt=Math.max(0,lt-2))}if(Pt>0&&PtPe.isSpecial||Pe.isStrictSpecial||Pe.num!==null&&Pe.num%1!==0,fe=new Map,Ne=0;if(Z&&Z.hasRoutes){mt("info",`${l} \u542F\u7528\u6620\u5C04\u8868\u7CBE\u786E\u8DEF\u7531: ${e.animeTitle} <-> ${D.animeTitle}`);let Ue=vnt(V,q,v,G,u,L,e.animeTitle,F.animeTitle)+H-ee;Ne=Ue;let ze=new Map;for(let Ye of Z.routes){let Ze=Ye.sec.end-Ye.sec.start+1,nt=Ye.prim.end-Ye.prim.start+1;if(Ze!==nt){mt("warn",`[Merge] [\u6620\u5C04\u8868] \u8DEF\u7531\u533A\u95F4\u8DE8\u5EA6\u4E0D\u5BF9\u7B49\uFF0C\u8DF3\u8FC7\u6B64\u6BB5: E${Ye.sec.start}~E${Ye.sec.end} > E${Ye.prim.start}~E${Ye.prim.end}`);continue}for(let ct=0;ct{let An=Aa(w(rt.link.title||rt.link.name,I),u),vt=An.num;return vt===null&&!An.isStrictSpecial&&(vt=bt+1),vt===Je&&!An.isSpecial&&!An.isStrictSpecial});if(ft!==-1){fe.set(Ye,ft),lt.relativeIndex=ft;let rt=_e[ft].originalIndex,bt=A.links[rt],An=bt.name||bt.title||`Index ${rt}`,vt=Iie(nt.url),_r=bt.url,qs=`${L}:${vt}`;_r.includes(Cu)||_r.startsWith(u+":")||(_r=`${u}:${_r}`);let Pr=`${_r}${Cu}${qs}`,js=bt.title;if(js){let Hs=L,ys=(nt.title||"").match(/^【([^】\d]+)(?:\d*)】/);ys&&(Hs=ys[1].trim()),js=js.replace(/^【([^】]+)】/,(Qs,Bu)=>`\u3010${Bu}${Sg}${Hs}\u3011`)}K.push({idx:ft,text:` [\u5DF2\u8DEF\u7531\u6620\u5C04] ${An} <-> ${ct} (Rule: E${ke}>E${Je})`}),j.add(ft),X++,J.push({linkIndex:rt,newUrl:Pr,newTitle:js})}else lt.relativeIndex=Ye+Ue,K.push({idx:lt.relativeIndex,text:` [\u8DEF\u7531\u5931\u8D25] \u4E3B\u6E90\u627E\u4E0D\u5230 E${Je} <-> ${ct}`}),se.push(lt)}}else{Z&&mt("info",`${l} \u547D\u4E2D\u6620\u5C04\u8868\u5E38\u89C4\u5408\u5E76: [${L}] ${D.animeTitle} -> [${u}] ${e.animeTitle} (\u5DF2\u514D\u68C0\u653E\u884C\uFF0C\u4EA4\u7531\u7CFB\u7EDF\u81EA\u52A8\u5BF9\u9F50)`),Ne=vnt(V,q,v,G,u,L,e.animeTitle,F.animeTitle)+H-ee,Ne!==0&&mt("info",`${l} \u96C6\u6570\u81EA\u52A8\u5BF9\u9F50 (${L}): Offset=${Ne} (P:${_e.length}, S:${U.length})`);let Ue=new Map,ze=null;U.forEach((ct,tt)=>{let Pt=_e[tt+Ne];if(!Pt)return;let lt=w(Pt.link.title||Pt.link.name,I),ke=w(ct.link.title||ct.link.name,ie),Je=Aa(lt,u),ft=Aa(ke,L);if(Je.num===null||ft.num===null||ce(Je)||ce(ft))return;let rt=Je.num-ft.num,An=1+(G0(eE(lt),eE(ke))>.45?1:0);ze!==null&&Je.num-ze>1?An=.1:ze=Je.num,Ue.set(rt,(Ue.get(rt)||0)+An)});let Ye=Ue.size>0?[...Ue.entries()].reduce((ct,tt)=>tt[1]>ct[1]?tt:ct)[0]:null,Ze=_e.reduce((ct,tt,Pt)=>{let lt=Aa(w(tt.link.title||tt.link.name,I),u);return ce(lt)&&!lt.isPV&&ct.push(Pt),ct},[]),nt=0;for(let ct=0;ct{let _r=Aa(w(vt.link.title||vt.link.name,I),u);return _r.num===An&&!ce(_r)}),tt!==-1)rt.relativeIndex=tt;else{let vt=-.5;for(let _r=_e.length-1;_r>=0;_r--){let qs=Aa(w(_e[_r].link.title||_e[_r].link.name,I),u);if(qs.num!==null&&!qs.isSpecial&&qs.numvt&&(vt=Hs,An=qs)}An===-1&&!ft.isPV&&nt=0&&tt<_e.length){fe.set(ct,tt);let An=_e[tt].originalIndex,vt=A.links[An],_r=vt.name||vt.title||`Index ${An}`,qs=w(vt.title,I),Pr=ZL(qs),js=ZL(Je),Hs=Aa(qs,u);if(ft.isPV&&!Pr){K.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${_r} =/= ${ke} (PV\u4E0D\u5339\u914D\u6B63\u7247)`}),se.push(rt);continue}if(Pr!==js){K.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${_r} =/= ${ke} (\u7279\u6B8A\u96C6\u7C7B\u578B\u4E0D\u5339\u914D)`}),se.push(rt);continue}let ys=Hs.isStrictSpecial||Hs.num!==null&&Hs.num%1!==0,Qs=ft.isStrictSpecial||ft.num!==null&&ft.num%1!==0,Bu=!Hs.isSpecial&&(Hs.num===null||Hs.num%1===0),Ao=!ft.isSpecial&&(ft.num===null||ft.num%1===0);if(ys&&Ao||Qs&&Bu){K.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${_r} =/= ${ke} (\u6B63\u7247\u4E0E\u756A\u5916\u963B\u65AD)`}),se.push(rt);continue}let Dc=Iie(lt.url),Ta=vt.url,yn=`${L}:${Dc}`;Ta.includes(Cu)||Ta.startsWith(u+":")||(Ta=`${u}:${Ta}`);let wa=`${Ta}${Cu}${yn}`,td=vt.title;if(td){let yo=L;if(lt.title){let bA=lt.title.match(/^【([^】\d]+)(?:\d*)】/);bA&&(yo=bA[1].trim())}td=td.replace(/^【([^】]+)】/,(bA,u6)=>`\u3010${u6}${Sg}${yo}\u3011`)}K.push({idx:rt.relativeIndex,text:` [\u5339\u914D] ${_r} <-> ${ke}`}),j.add(tt),X++,J.push({linkIndex:An,newUrl:wa,newTitle:td})}else K.push({idx:rt.relativeIndex,text:` [\u843D\u5355] (\u4E3B\u6E90\u8D8A\u754C) <-> ${ke}`}),se.push(rt)}}for(let Pe=0;Pe<_e.length;Pe++)if(!j.has(Pe)){let Ue=_e[Pe].originalIndex,ze=A.links[Ue],Ye=ze.name||ze.title||`Index ${Ue}`;K.push({idx:Pe,text:` [\u843D\u5355] ${Ye} <-> (\u526F\u6E90\u7F3A\u5931\u6216\u88AB\u7565\u8FC7)`})}if(X>0){let Pe=f.has(e.animeId)||f.has(D.animeId),Ue=!1;if(Z?Ue=X>0:Ue=W0r(X,_e.length,U.length,u,L,Pe),Ue){for(let ke of J){let Je=A.links[ke.linkIndex];Je.url=ke.newUrl,Je.title=ke.newTitle}let ze=ke=>ke?ke.replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim():"",Ye=ze(A.animeTitle);A.aliases=[...new Set([...A.aliases||[],...F.aliases||[],...D.aliases||[],ze(F.animeTitle)])].filter(ke=>ke&&ke!==Ye),mt("info",`${l} \u5173\u8054\u6210\u529F: [${u}] ${g} <-> [${L}] ${oe} (\u672C\u6B21\u5408\u5E76 ${X} \u96C6)`),K.length>0&&(K.sort((ke,Je)=>ke.idx-Je.idx),mt("info",`${l} [${L}] \u6620\u5C04\u8BE6\u60C5: -${K.map(ke=>ke.text).join(` -`)}`)),A.mergedChildren=A.mergedChildren||[],A.mergedChildren.some(ke=>String(ke.animeId)===String(D.animeId)&&ke.source===D.source)||A.mergedChildren.push({animeId:D.animeId,animeTitle:D.animeTitle,source:D.source,episodes:F.links?F.links.length:0,imageUrl:D.imageUrl||""});let Ze=O.animes.find(ke=>String(ke.animeId)===String(D.animeId)&&ke.source===D.source);if(Ze&&(Ze.isHiddenChild=!0),m&&(ne||R)){let ke=-1;if(R&&!ne){for(let Je=0;Jeke&&(ke=rt)}}if(ke!==-1){let Je=Ei(F.animeTitle,F.typeDescription,F.aliases)||1;m.has(e.animeId)||m.set(e.animeId,{});let ft=m.get(e.animeId);X>=3&&(ft[`S${Je}`]=ke)}}else if(!R&&ne){for(let Je=0;Jeke&&(ke=rt.originalIndex)}}if(ke!==-1){let Je=Ei(e.animeTitle,e.typeDescription,e.aliases)||1;m.has(D.animeId)||m.set(D.animeId,{});let ft=m.get(D.animeId);X>=3&&(ft[`S${Je}`]=ke,mt("info",`[Merge-Check] \u66F4\u65B0\u5408\u96C6\u8FDB\u5EA6 [${D.animeId}]: S${Je} -> MaxIndex ${ke}`))}}}let nt=Ei(e.animeTitle,e.typeDescription,e.aliases)||1,ct=Ei(F.animeTitle,F.typeDescription,F.aliases)||1,tt=Z&&nt!==ct;f.has(D.animeId)||tt?mt("info",`${l} [\u667A\u80FD\u8865\u5168] \u8DF3\u8FC7: \u526F\u6E90 [${L}] \u4E3A\u5408\u96C6\u6216\u89E6\u53D1\u8DE8\u5B63\u5EA6\u6620\u5C04\uFF0C\u4E3A\u907F\u514D\u6DF7\u5165\u5176\u4ED6\u5B63\u5EA6\u96C6\u6570\uFF0C\u4E0D\u6267\u884C\u8865\u5168\u3002`):U0r(A,se,L);let Pt=[],lt=[];A.links.forEach(ke=>{let Je=ke.title.replace(ye.Clean.SOURCE_TAG,"").trim();ye.Episode.SINK_TITLE_STRICT.test(Je)?lt.push(ke):Pt.push(ke)}),lt.length>0&&(A.links=[...Pt,...lt],mt("info",`${l} [\u6392\u5E8F\u4F18\u5316] \u7ACB\u5373\u6267\u884C\u756A\u5916\u6C89\u5E95: \u79FB\u52A8\u4E86 ${lt.length} \u4E2A\u756A\u5916\u96C6\u5230\u672B\u5C3E`)),x=!0,b.push(L),y.push(D.animeId)}else mt("info",`${l} \u5173\u8054\u53D6\u6D88: [${u}] ${g} <-> [${L}] ${oe} (\u5339\u914D\u7387\u8FC7\u4F4E: ${X}/${Math.max(_e.length,U.length)})`)}}}if(x){let D=y.join("|");if(a.has(D))return mt("info",`${l} \u68C0\u6D4B\u5230\u91CD\u590D\u7684\u5408\u5E76\u7ED3\u679C (Signature: ${D})\uFF0C\u5DF2\u81EA\u52A8\u9690\u53BB\u5197\u4F59\u6761\u76EE\u3002`),null;a.add(D);let L=O.animes.find(W=>String(W.animeId)===String(e.animeId)&&W.source===e.source);L&&(L.isHiddenChild=!0);for(let W=1;W({primary:p.primary,secondaries:[...p.secondaries],baseSecondaries:[...p.secondaries]}));for(let[p,m]of s.entries()){let h=i.find(A=>A.primary===p);h||(h={primary:p,secondaries:[],baseSecondaries:[]},i.push(h));for(let A of m)h.secondaries.includes(A)||h.secondaries.push(A)}if(!i||i.length===0)return;mt("info",`[Merge] \u542F\u52A8\u6E90\u5408\u5E76\u7B56\u7565\uFF0C\u7EC4\u5408\u8BA1\u7B97\u540E\u7684\u914D\u7F6E: ${JSON.stringify(i)}`);let a=O.episodeTitleFilter;if(a&&typeof a=="string")try{a=new RegExp(a,"i")}catch{a=null}let o=Q0r(t),c=new Map,u=[],l=new Set,d=new Set,f=new Set;i.forEach(p=>{p.secondaries.length===0&&f.add(p.primary)});for(let p of i){if(p.secondaries.length===0)continue;let m=new Map,h=[p.primary,...p.secondaries];h.forEach((w,N)=>m.set(w,N));let A=h.join("&"),g=new Set,b=(w,N)=>{if(!w||w.length<2)return w;mt("info",`[Merge-Check] [Sort] ${N} \u6392\u5E8F\u524D\u9996\u4E2A\u5143\u7D20: ${w[0].animeTitle}`),w.sort((B,M)=>{let D=m.get(B.source)??99,L=m.get(M.source)??99;if(D!==L)return D-L;let Z=J=>{let se=uo(J.animeTitle,J.typeDescription,J.aliases);return se.has("MOVIE")||se.has("OVA")||se.has("SP")||vg(J.animeTitle,J.typeDescription)==="MOVIE"?2:1},W=Z(B),F=Z(M);if(W!==F)return W-F;let K=Ei(B.animeTitle,B.typeDescription,B.aliases)||1,j=Ei(M.animeTitle,M.typeDescription,M.aliases)||1;return K-j});let P=w.map(B=>{let M=Ei(B.animeTitle,B.typeDescription,B.aliases)||1,D=uo(B.animeTitle,B.typeDescription,B.aliases).has("MOVIE")||vg(B.animeTitle,B.typeDescription)==="MOVIE"?"Movie":`S${M}`;return`[P${m.get(B.source)??"?"}] [${D}] [${B.source}] ${B.animeTitle}`});return mt("info",`[Merge-Check] [Sort] ${N} \u6267\u884C\u987A\u5E8F: +${c}`);let u=new Map,l=0;if(i.forEach(f=>{let p=O.animes.find(b=>String(b.animeId)===String(f.animeId))||f,m=co(p.animeTitle,p.typeDescription,p.aliases),h=1;for(let b of m)if(b.startsWith("S")){let y=parseInt(b.substring(1));isNaN(y)||(h=y)}if(h===1){let b=m.has("SEQUEL")||ye.Season.SUFFIX_SEQUEL.test(p.animeTitle),y=m.has("AMBIGUOUS")||ye.Season.SUFFIX_AMBIGUOUS.test(p.animeTitle);(b||y)&&(h=2,mt("info",`[Merge-Check] [Detail] [${p.source}] "${p.animeTitle}" -> \u5224\u5B9A\u4E3A S2 (Reason: Sequel/Ambiguous Suffix)`))}h>l&&(l=h);let A=0;p.links&&(/^(dandan|animeko)$/i.test(p.source)?A=p.links.filter(b=>{let y=b.title||b.name||"",x=y.replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim();if(ye.Episode.SPECIAL_CHECK.test(x)||ye.Episode.DANDAN_IGNORE.test(x))return!1;let v=V0(y);return!(ye.Episode.SPECIAL_CHECK.test(v)||ye.Episode.DANDAN_IGNORE.test(v)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(x)||ye.Episode.MAP_EXCLUDE_KEYWORDS.test(y))}).length:A=p.links.length),u.has(p.source)||u.set(p.source,{seasonCounts:{},maxSeason:0,s1Candidates:[]});let g=u.get(p.source);g.seasonCounts[h]||(g.seasonCounts[h]=0),g.seasonCounts[h]=Math.max(g.seasonCounts[h],A),h>g.maxSeason&&(g.maxSeason=h),h===1&&g.s1Candidates.push({anime:p,originalCount:A})}),l<=1)continue;let d=Array.from(u.keys());for(let[f,p]of u.entries()){if(p.maxSeason>1)continue;let m=0,h=!1;for(let g of d){if(g===f)continue;let b=u.get(g);b.seasonCounts[1]&&(h=!0,b.seasonCounts[1]>m&&(m=b.seasonCounts[1]))}if(!h)continue;let A=m+Ql.COLLECTION_DIFF;p.s1Candidates.forEach(g=>{let b=m>0?g.originalCount/m:0;if(g.originalCount>A){if(b>Ql.COLLECTION_RATIO){mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u62D2\u7EDD: [${f}] ${g.anime.animeTitle} (Ratio too high: ${b.toFixed(2)} > ${Ql.COLLECTION_RATIO})`);return}e.add(g.anime.animeId),mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u53D1\u73B0\u7591\u4F3C\u5408\u96C6(\u5355\u4F53): [${f}] ${g.anime.animeTitle} (Count:${g.originalCount} > Thr:${A}, Ratio:${b.toFixed(2)}) -> \u6807\u8BB0\u4E3A\u5408\u96C6`)}else mt("info",`[Merge-Check] [\u5408\u96C6\u63A2\u6D4B] \u672A\u547D\u4E2D: [${f}] ${g.anime.animeTitle} (Count:${g.originalCount} <= Threshold:${A})`)})}}return e}async function Cie(t){let{pAnime:e,availableSecondaries:r,curAnimes:n,groupConsumedIds:s,globalConsumedIds:i,generatedSignatures:a,epFilter:o,groupFingerprint:c,currentPrimarySource:u,logPrefix:l,limitSecondaryLang:d,collectionAnimeIds:f,allowReuseIds:p,collectionProgress:m,baseSecondaries:h}=t;if(f.has(e.animeId)&&s.has(e.animeId))return mt("info",`${l} \u8DF3\u8FC7: [${u}] \u662F\u5408\u96C6\u4E14\u5DF2\u4F5C\u4E3A\u7EC4\u5185\u526F\u6E90\u53C2\u4E0E\u8FC7\u5408\u5E76\u3002`),null;let A=vie(e);if(!A.links){let k=O.animes.find(B=>String(B.animeId)===String(e.animeId));A.links=k?.links?vie(k.links):[]}if(!A.links||A.links.length===0)return mt("warn",`${l} \u4E3B\u6E90\u6570\u636E\u4E0D\u5B8C\u6574\uFF0C\u8DF3\u8FC7: ${e.animeTitle}`),null;let g=e.animeTitle.replace(ye.Clean.FROM_SUFFIX,""),b=[],y=[e.animeId],x=!1,v=oo(e.animeTitle),C=t4(A.links,e.animeTitle,u),R=f.has(e.animeId),w=(k,B)=>k?B&&k.includes(B)?k.replace(B,""):k:"",N=Tc(e.animeTitle),P=n.filter(k=>Tc(k.animeTitle)===N),L=H0r(P,o,f);if(L.size>0){let k=Array.from(L.entries()).map(([B,Z])=>`S${B}=${Z}`).join(", ");(R||r.some(B=>n.some(Z=>Z.source===B&&f.has(Z.animeId))))&&mt("info",`${l} [\u5408\u96C6\u5904\u7406] \u6784\u5EFA\u5B63\u5EA6\u96C6\u6570\u5730\u56FE (Mode\u7B56\u7565): { ${k} }`)}let M=[];for(let k of r){let B=n.filter(V=>{if(V.source!==k)return!1;let j=wie(e,V);if(j)return j.action==="block"?(mt("info",`${l} \u62E6\u622A: \u526F\u6E90 [${V.source}] ${V.animeTitle} \u88AB\u6620\u5C04\u8868 [\xD7] \u89C4\u5219\u660E\u786E\u963B\u65AD`),!1):!0;if(R)return!0;let J=s.has(V.animeId),se=p&&p.has(V.animeId);return!(J&&!se)}),Z=[],W=new Set;for(let V of B)W.has(V.animeId)||(W.add(V.animeId),Z.push(V));if(B=Z,d&&(B=B.filter(V=>oo(V.animeTitle)===d)),B.length>1&&B.sort((V,j)=>{let J=oo(V.animeTitle)==="CN",se=oo(j.animeTitle)==="CN";return J===se?0:J?1:-1}),B.length===0)continue;let F=K0r(e,B,f,h);M.push(...F)}if(M.length>0){if(M.length>1&&(R||M.some(k=>f.has(k.animeId)))){M.sort((B,Z)=>{let W=bi(B.animeTitle,B.typeDescription,B.aliases)||1,F=bi(Z.animeTitle,Z.typeDescription,Z.aliases)||1;if(W!==F)return W-F;let V=r.indexOf(B.source),j=r.indexOf(Z.source);return V-j});let k=M.map(B=>`[${B.source}]S${bi(B.animeTitle,B.typeDescription,B.aliases)||1}`);mt("info",`${l} [\u5408\u96C6\u65F6\u5E8F] \u5DF2\u5C06\u8DE8\u6E90\u5339\u914D\u961F\u5217\u6309\u5B63\u6570\u5347\u5E8F\u6392\u5217\uFF0C\u4FDD\u969C\u5207\u7247\u63A8\u65AD\u4E25\u683C\u81EA\u4E3E: ${k.join(" -> ")}`)}for(let k of M){let B=k.source,Z=wie(e,k);if(Z&&Z.action==="block"){mt("info",`${l} [\u5B89\u5168\u7F51\u62E6\u622A] \u5173\u8054\u53D6\u6D88: [${u}] ${e.animeTitle} <-> [${B}] ${k.animeTitle} \u88AB\u660E\u786E\u963B\u65AD`);continue}if(!R&&!(p&&p.has(k.animeId))&&!Z&&s.has(k.animeId))continue;let W=O.animes.find(Pe=>String(Pe.animeId)===String(k.animeId));if(!W?.links)continue;let F=vie(W),V=[],j=new Set,J=[],se=[],oe=F.animeTitle.replace(ye.Clean.FROM_SUFFIX,""),ue=Int(A.links,u),Ce=Int(F.links,B),we=new Set([...Ce].filter(Pe=>!ue.has(Pe))),qe=new Set([...ue].filter(Pe=>!Ce.has(Pe)));qe.size>0&&Tnt(A.links,qe,u,`\u4E3B\u6E90:${u}`),we.size>0&&Tnt(F.links,we,B,`\u526F\u6E90:${B}`);let Fe=F.links,_e=Tie(A.links,o,u),U=Tie(Fe,o,B),G=oo(F.animeTitle),z=_e,q=U,H=0,ee=0,ne=f.has(k.animeId),re=(Pe,Ue,Ke)=>{let Ye=0,Ze=Ue;if(Ke&&Ke>1){let nt=!1,ct=Pe?e.animeId:k.animeId;if(m&&m.has(ct)){let tt=m.get(ct),Dt=Ke-1;if(tt[`S${Dt}`]!==void 0){let lt=tt[`S${Dt}`]+1;lt>0&<=Ue.length){let lt=(Ke-1)*12;lt Total ${Ue.length}\uFF0C\u542F\u7528\u56DE\u9000\u4F30\u7B97 (S${Ke} -> Index ${lt})`),Dt=Math.max(0,lt-2))}if(Dt>0&&DtPe.isSpecial||Pe.isStrictSpecial||Pe.num!==null&&Pe.num%1!==0,fe=new Map,Ne=0;if(Z&&Z.hasRoutes){mt("info",`${l} \u542F\u7528\u6620\u5C04\u8868\u7CBE\u786E\u8DEF\u7531: ${e.animeTitle} <-> ${k.animeTitle}`);let Ue=wnt(z,q,v,G,u,B,e.animeTitle,F.animeTitle)+H-ee;Ne=Ue;let Ke=new Map;for(let Ye of Z.routes){let Ze=Ye.sec.end-Ye.sec.start+1,nt=Ye.prim.end-Ye.prim.start+1;if(Ze!==nt){mt("warn",`[Merge] [\u6620\u5C04\u8868] \u8DEF\u7531\u533A\u95F4\u8DE8\u5EA6\u4E0D\u5BF9\u7B49\uFF0C\u8DF3\u8FC7\u6B64\u6BB5: E${Ye.sec.start}~E${Ye.sec.end} > E${Ye.prim.start}~E${Ye.prim.end}`);continue}for(let ct=0;ct{let An=Aa(w(rt.link.title||rt.link.name,C),u),Ct=An.num;return Ct===null&&!An.isStrictSpecial&&(Ct=bt+1),Ct===Je&&!An.isSpecial&&!An.isStrictSpecial});if(ft!==-1){fe.set(Ye,ft),lt.relativeIndex=ft;let rt=_e[ft].originalIndex,bt=A.links[rt],An=bt.name||bt.title||`Index ${rt}`,Ct=Iie(nt.url),Sr=bt.url,Us=`${B}:${Ct}`;Sr.includes(Iu)||Sr.startsWith(u+":")||(Sr=`${u}:${Sr}`);let Dr=`${Sr}${Iu}${Us}`,qs=bt.title;if(qs){let js=B,ys=(nt.title||"").match(/^【([^】\d]+)(?:\d*)】/);ys&&(js=ys[1].trim()),qs=qs.replace(/^【([^】]+)】/,(Hs,Lu)=>`\u3010${Lu}${Sg}${js}\u3011`)}V.push({idx:ft,text:` [\u5DF2\u8DEF\u7531\u6620\u5C04] ${An} <-> ${ct} (Rule: E${De}>E${Je})`}),j.add(ft),X++,J.push({linkIndex:rt,newUrl:Dr,newTitle:qs})}else lt.relativeIndex=Ye+Ue,V.push({idx:lt.relativeIndex,text:` [\u8DEF\u7531\u5931\u8D25] \u4E3B\u6E90\u627E\u4E0D\u5230 E${Je} <-> ${ct}`}),se.push(lt)}}else{Z&&mt("info",`${l} \u547D\u4E2D\u6620\u5C04\u8868\u5E38\u89C4\u5408\u5E76: [${B}] ${k.animeTitle} -> [${u}] ${e.animeTitle} (\u5DF2\u514D\u68C0\u653E\u884C\uFF0C\u4EA4\u7531\u7CFB\u7EDF\u81EA\u52A8\u5BF9\u9F50)`),Ne=wnt(z,q,v,G,u,B,e.animeTitle,F.animeTitle)+H-ee,Ne!==0&&mt("info",`${l} \u96C6\u6570\u81EA\u52A8\u5BF9\u9F50 (${B}): Offset=${Ne} (P:${_e.length}, S:${U.length})`);let Ue=new Map,Ke=null;U.forEach((ct,tt)=>{let Dt=_e[tt+Ne];if(!Dt)return;let lt=w(Dt.link.title||Dt.link.name,C),De=w(ct.link.title||ct.link.name,ie),Je=Aa(lt,u),ft=Aa(De,B);if(Je.num===null||ft.num===null||ce(Je)||ce(ft))return;let rt=Je.num-ft.num,An=1+(G0(tE(lt),tE(De))>.45?1:0);Ke!==null&&Je.num-Ke>1?An=.1:Ke=Je.num,Ue.set(rt,(Ue.get(rt)||0)+An)});let Ye=Ue.size>0?[...Ue.entries()].reduce((ct,tt)=>tt[1]>ct[1]?tt:ct)[0]:null,Ze=_e.reduce((ct,tt,Dt)=>{let lt=Aa(w(tt.link.title||tt.link.name,C),u);return ce(lt)&&!lt.isPV&&ct.push(Dt),ct},[]),nt=0;for(let ct=0;ct{let Sr=Aa(w(Ct.link.title||Ct.link.name,C),u);return Sr.num===An&&!ce(Sr)}),tt!==-1)rt.relativeIndex=tt;else{let Ct=-.5;for(let Sr=_e.length-1;Sr>=0;Sr--){let Us=Aa(w(_e[Sr].link.title||_e[Sr].link.name,C),u);if(Us.num!==null&&!Us.isSpecial&&Us.numCt&&(Ct=js,An=Us)}An===-1&&!ft.isPV&&nt=0&&tt<_e.length){fe.set(ct,tt);let An=_e[tt].originalIndex,Ct=A.links[An],Sr=Ct.name||Ct.title||`Index ${An}`,Us=w(Ct.title,C),Dr=e4(Us),qs=e4(Je),js=Aa(Us,u);if(ft.isPV&&!Dr){V.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${Sr} =/= ${De} (PV\u4E0D\u5339\u914D\u6B63\u7247)`}),se.push(rt);continue}if(Dr!==qs){V.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${Sr} =/= ${De} (\u7279\u6B8A\u96C6\u7C7B\u578B\u4E0D\u5339\u914D)`}),se.push(rt);continue}let ys=js.isStrictSpecial||js.num!==null&&js.num%1!==0,Hs=ft.isStrictSpecial||ft.num!==null&&ft.num%1!==0,Lu=!js.isSpecial&&(js.num===null||js.num%1===0),go=!ft.isSpecial&&(ft.num===null||ft.num%1===0);if(ys&&go||Hs&&Lu){V.push({idx:rt.relativeIndex,text:` [\u7565\u8FC7] ${Sr} =/= ${De} (\u6B63\u7247\u4E0E\u756A\u5916\u963B\u65AD)`}),se.push(rt);continue}let Dc=Iie(lt.url),Ta=Ct.url,yn=`${B}:${Dc}`;Ta.includes(Iu)||Ta.startsWith(u+":")||(Ta=`${u}:${Ta}`);let wa=`${Ta}${Iu}${yn}`,rd=Ct.title;if(rd){let Ao=B;if(lt.title){let bA=lt.title.match(/^【([^】\d]+)(?:\d*)】/);bA&&(Ao=bA[1].trim())}rd=rd.replace(/^【([^】]+)】/,(bA,l6)=>`\u3010${l6}${Sg}${Ao}\u3011`)}V.push({idx:rt.relativeIndex,text:` [\u5339\u914D] ${Sr} <-> ${De}`}),j.add(tt),X++,J.push({linkIndex:An,newUrl:wa,newTitle:rd})}else V.push({idx:rt.relativeIndex,text:` [\u843D\u5355] (\u4E3B\u6E90\u8D8A\u754C) <-> ${De}`}),se.push(rt)}}for(let Pe=0;Pe<_e.length;Pe++)if(!j.has(Pe)){let Ue=_e[Pe].originalIndex,Ke=A.links[Ue],Ye=Ke.name||Ke.title||`Index ${Ue}`;V.push({idx:Pe,text:` [\u843D\u5355] ${Ye} <-> (\u526F\u6E90\u7F3A\u5931\u6216\u88AB\u7565\u8FC7)`})}if(X>0){let Pe=f.has(e.animeId)||f.has(k.animeId),Ue=!1;if(Z?Ue=X>0:Ue=j0r(X,_e.length,U.length,u,B,Pe),Ue){for(let De of J){let Je=A.links[De.linkIndex];Je.url=De.newUrl,Je.title=De.newTitle}let Ke=De=>De?De.replace(ye.Clean.YEAR_TAG,"").replace(ye.Clean.SOURCE_TAG,"").replace(ye.Clean.FROM_SUFFIX,"").trim():"",Ye=Ke(A.animeTitle);A.aliases=[...new Set([...A.aliases||[],...F.aliases||[],...k.aliases||[],Ke(F.animeTitle)])].filter(De=>De&&De!==Ye),mt("info",`${l} \u5173\u8054\u6210\u529F: [${u}] ${g} <-> [${B}] ${oe} (\u672C\u6B21\u5408\u5E76 ${X} \u96C6)`),V.length>0&&(V.sort((De,Je)=>De.idx-Je.idx),mt("info",`${l} [${B}] \u6620\u5C04\u8BE6\u60C5: +${V.map(De=>De.text).join(` +`)}`)),A.mergedChildren=A.mergedChildren||[],A.mergedChildren.some(De=>String(De.animeId)===String(k.animeId)&&De.source===k.source)||A.mergedChildren.push({animeId:k.animeId,animeTitle:k.animeTitle,source:k.source,episodes:F.links?F.links.length:0,imageUrl:k.imageUrl||""});let Ze=O.animes.find(De=>String(De.animeId)===String(k.animeId)&&De.source===k.source);if(Ze&&(Ze.isHiddenChild=!0),m&&(ne||R)){let De=-1;if(R&&!ne){for(let Je=0;JeDe&&(De=rt)}}if(De!==-1){let Je=bi(F.animeTitle,F.typeDescription,F.aliases)||1;m.has(e.animeId)||m.set(e.animeId,{});let ft=m.get(e.animeId);X>=3&&(ft[`S${Je}`]=De)}}else if(!R&&ne){for(let Je=0;JeDe&&(De=rt.originalIndex)}}if(De!==-1){let Je=bi(e.animeTitle,e.typeDescription,e.aliases)||1;m.has(k.animeId)||m.set(k.animeId,{});let ft=m.get(k.animeId);X>=3&&(ft[`S${Je}`]=De,mt("info",`[Merge-Check] \u66F4\u65B0\u5408\u96C6\u8FDB\u5EA6 [${k.animeId}]: S${Je} -> MaxIndex ${De}`))}}}let nt=bi(e.animeTitle,e.typeDescription,e.aliases)||1,ct=bi(F.animeTitle,F.typeDescription,F.aliases)||1,tt=Z&&nt!==ct;f.has(k.animeId)||tt?mt("info",`${l} [\u667A\u80FD\u8865\u5168] \u8DF3\u8FC7: \u526F\u6E90 [${B}] \u4E3A\u5408\u96C6\u6216\u89E6\u53D1\u8DE8\u5B63\u5EA6\u6620\u5C04\uFF0C\u4E3A\u907F\u514D\u6DF7\u5165\u5176\u4ED6\u5B63\u5EA6\u96C6\u6570\uFF0C\u4E0D\u6267\u884C\u8865\u5168\u3002`):G0r(A,se,B);let Dt=[],lt=[];A.links.forEach(De=>{let Je=De.title.replace(ye.Clean.SOURCE_TAG,"").trim();ye.Episode.SINK_TITLE_STRICT.test(Je)?lt.push(De):Dt.push(De)}),lt.length>0&&(A.links=[...Dt,...lt],mt("info",`${l} [\u6392\u5E8F\u4F18\u5316] \u7ACB\u5373\u6267\u884C\u756A\u5916\u6C89\u5E95: \u79FB\u52A8\u4E86 ${lt.length} \u4E2A\u756A\u5916\u96C6\u5230\u672B\u5C3E`)),x=!0,b.push(B),y.push(k.animeId)}else mt("info",`${l} \u5173\u8054\u53D6\u6D88: [${u}] ${g} <-> [${B}] ${oe} (\u5339\u914D\u7387\u8FC7\u4F4E: ${X}/${Math.max(_e.length,U.length)})`)}}}if(x){let k=y.join("|");if(a.has(k))return mt("info",`${l} \u68C0\u6D4B\u5230\u91CD\u590D\u7684\u5408\u5E76\u7ED3\u679C (Signature: ${k})\uFF0C\u5DF2\u81EA\u52A8\u9690\u53BB\u5197\u4F59\u6761\u76EE\u3002`),null;a.add(k);let B=O.animes.find(W=>String(W.animeId)===String(e.animeId)&&W.source===e.source);B&&(B.isHiddenChild=!0);for(let W=1;W({primary:p.primary,secondaries:[...p.secondaries],baseSecondaries:[...p.secondaries]}));for(let[p,m]of s.entries()){let h=i.find(A=>A.primary===p);h||(h={primary:p,secondaries:[],baseSecondaries:[]},i.push(h));for(let A of m)h.secondaries.includes(A)||h.secondaries.push(A)}if(!i||i.length===0)return;mt("info",`[Merge] \u542F\u52A8\u6E90\u5408\u5E76\u7B56\u7565\uFF0C\u7EC4\u5408\u8BA1\u7B97\u540E\u7684\u914D\u7F6E: ${JSON.stringify(i)}`);let a=O.episodeTitleFilter;if(a&&typeof a=="string")try{a=new RegExp(a,"i")}catch{a=null}let o=Y0r(t),c=new Map,u=[],l=new Set,d=new Set,f=new Set;i.forEach(p=>{p.secondaries.length===0&&f.add(p.primary)});for(let p of i){if(p.secondaries.length===0)continue;let m=new Map,h=[p.primary,...p.secondaries];h.forEach((w,N)=>m.set(w,N));let A=h.join("&"),g=new Set,b=(w,N)=>{if(!w||w.length<2)return w;mt("info",`[Merge-Check] [Sort] ${N} \u6392\u5E8F\u524D\u9996\u4E2A\u5143\u7D20: ${w[0].animeTitle}`),w.sort((L,M)=>{let k=m.get(L.source)??99,B=m.get(M.source)??99;if(k!==B)return k-B;let Z=J=>{let se=co(J.animeTitle,J.typeDescription,J.aliases);return se.has("MOVIE")||se.has("OVA")||se.has("SP")||vg(J.animeTitle,J.typeDescription)==="MOVIE"?2:1},W=Z(L),F=Z(M);if(W!==F)return W-F;let V=bi(L.animeTitle,L.typeDescription,L.aliases)||1,j=bi(M.animeTitle,M.typeDescription,M.aliases)||1;return V-j});let P=w.map(L=>{let M=bi(L.animeTitle,L.typeDescription,L.aliases)||1,k=co(L.animeTitle,L.typeDescription,L.aliases).has("MOVIE")||vg(L.animeTitle,L.typeDescription)==="MOVIE"?"Movie":`S${M}`;return`[P${m.get(L.source)??"?"}] [${k}] [${L.source}] ${L.animeTitle}`});return mt("info",`[Merge-Check] [Sort] ${N} \u6267\u884C\u987A\u5E8F: ${P.join(` - `)}`),w},y=[];h.forEach(w=>{t.filter(P=>P.source===w&&!g.has(P.animeId)&&co(P.animeTitle)==="CN").forEach(P=>y.push(P))});let x=!1;for(let w of h)if(t.some(N=>N.source===w&&!g.has(N.animeId)&&co(N.animeTitle)==="CN")){x=!0;break}if(y.length>0&&x){mt("info",`[Merge] [Phase 1] \u542F\u52A8 CN \u9694\u79BB\u7B56\u7565: \u5305\u542B ${y.length} \u4E2A CN \u8D44\u6E90\u3002`),b(y,"Phase 1");for(let w of y){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let B=await vie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1: CN-Strict]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});B&&(u.push(B),g.add(w.animeId),d.add(w.animeId))}}let v=[];for(let w=1;wB.source===N&&!g.has(B.animeId)&&co(B.animeTitle)==="CN").forEach(B=>v.push(B))}if(v.length>=2){mt("info",`[Merge] [Phase 1.5] \u542F\u52A8\u526F\u6E90 CN \u81EA\u7EC4\u7EC7: \u68C0\u6D4B\u5230 ${v.length} \u4E2A\u5269\u4F59 CN \u8D44\u6E90\u3002`),b(v,"Phase 1.5");for(let w of v){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let B=await vie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1.5: CN-Secondary]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});B&&(u.push(B),g.add(w.animeId),d.add(w.animeId))}}let I=[];h.forEach(w=>{t.filter(P=>P.source===w&&!g.has(P.animeId)).forEach(P=>I.push(P))});let R=new Set(I.map(w=>w.source));if(I.length>0&&R.size>=2){mt("info",`[Merge] [Phase 2] \u542F\u52A8\u6807\u51C6\u56DE\u9000\u5339\u914D: \u5269\u4F59 ${I.length} \u4E2A\u8D44\u6E90\u3002`),b(I,"Phase 2");for(let w of I){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let B=uo(w.animeTitle,w.typeDescription,w.aliases),M=Array.from(B).some(Z=>Z.startsWith("P")),D=null;if(M){D=new Set;let Z=Ei(w.animeTitle,w.typeDescription,w.aliases)||1;for(let W of d){let F=O.animes.find(J=>String(J.animeId)===String(W));if(!F||!P.includes(F.source))continue;let K=uo(F.animeTitle,F.typeDescription,F.aliases);if(Array.from(K).some(J=>J.startsWith("P")))continue;let j=Ei(F.animeTitle,F.typeDescription,F.aliases)||1;Z===j&&D.add(F.animeId)}}let L=await vie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 2: Standard]",collectionAnimeIds:o,allowReuseIds:D,collectionProgress:c,baseSecondaries:p.baseSecondaries});L&&(u.push(L),g.add(w.animeId),d.add(w.animeId))}}}if(u.length>0){for(let p of u)Dt(p,e);t.unshift(...u)}if(f.size>0)for(let p of t)d.has(p.animeId)&&f.has(p.source)&&d.delete(p.animeId);for(let p=t.length-1;p>=0;p--){let m=t[p];(m._isMerged||d.has(m.animeId))&&t.splice(p,1)}u.length>0?mt("info",`[Merge] \u5408\u5E76\u6267\u884C\u5B8C\u6BD5\uFF0C\u65B0\u589E\u4E86 ${u.length} \u4E2A\u5408\u5E76\u9879\uFF0C\u6700\u7EC8\u5217\u8868\u6570\u91CF: ${t.length}`):mt("info",`[Merge] \u626B\u63CF\u5B8C\u6BD5\uFF0C\u672A\u4EA7\u751F\u4EFB\u4F55\u5408\u5E76\uFF0C\u5217\u8868\u4FDD\u6301\u4E0D\u53D8 (\u6570\u91CF: ${t.length})`)}function Cnt(t){if(t.p&&typeof t.p=="string"){let e=parseFloat(t.p.split(",")[0]);if(!isNaN(e))return e}return t.t!==void 0&&t.t!==null?Number(t.t):typeof t.progress=="number"?t.progress/1e3:0}function Tnt(t){if(t){if(typeof t.m=="string")return t.m;if(typeof t.text=="string")return t.text;if(typeof t.content=="string")return t.content}return""}function wnt(t){return!t||typeof t!="string"?"":t.replace(/[\s.,!?"'(){}\[\]<>;:,。!?、""''()【】《》;:~~]/g,"").toLowerCase()}function Pnt(t,e){let r=[...t||[],...e||[]],n=s=>{if(!s)return 0;if(s.t!==void 0&&s.t!==null)return Number(s.t);if(s.p&&typeof s.p=="string"){let i=parseFloat(s.p.split(",")[0]);return isNaN(i)?0:i}return 0};return r.sort((s,i)=>n(s)-n(i)),r}function knt(t,e,r,n=.8,s=1){let i=e.indexOf("dandan");if(i===-1||!t[i]?.length)return mt("info","[Merge][AlignTimeline] \u65E0 dandan \u6E90\u6216\u65E0\u6570\u636E\uFF0C\u8DF3\u8FC7\u65F6\u95F4\u8F74\u5BF9\u9F50"),t;let a=t[i],o=a.length,c=new Map;return a.forEach(u=>{let l=wnt(Tnt(u)),d=Cnt(u);l&&(!c.has(l)||d{let d=e[l];if(d==="dandan"||!u?.length)return;let f=new Map,p=[],m=0;u.forEach(x=>{let v=wnt(Tnt(x)),I=Cnt(x);if(p.push({danmu:x,time:I}),v&&c.has(v)){m++;let R=Math.round(I-c.get(v));f.set(R,(f.get(R)||0)+1)}});let h=0,A=0;f.forEach((x,v)=>{x>A&&(A=x,h=v)});let g=Math.min(o,u.length),b=A/g,y=m>0?A/m:0;if(m/g{let I=Math.max(0,v-h);typeof x.p=="string"&&(x.p=x.p.replace(/^[^,]+(?=,)/,I.toFixed(2))),x.t!=null&&(x.t=I),typeof x.progress=="number"&&(x.progress=Math.round(I*1e3))})}),t}Ts();function Mnt(t,e=Date.now()){let r=Number(t);return Number.isFinite(r)&&r>0?Math.trunc(r):Math.trunc(Number(e)||Date.now())}function G0r(t=""){return OB(eg(t)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function K0r(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(e.length/4)*4,"=");return Cc(vI(r))}var Wnt="6.8.2",V0r="a_8280",z0r="xiaomi",$nt="Redmi Note 12",Y0r="Xiaomi",Fnt="14",J0r=`HanjuTV/${Wnt} (${$nt}; Android ${Fnt}; Scale/2.00)`,Unt=14*24*60*60*1e3,Dnt="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",qnt="f349wghhe784tqwh",jnt="d3w8hf94fidk38lk",X0r="34F9Q53w/HJW8E6Q",Bnt="fb3597b87601d5a7";function qT(t){return typeof TextEncoder<"u"?new TextEncoder().encode(t):eg(t)}function Z0r(t){return typeof TextDecoder<"u"?new TextDecoder().decode(t):Cc(t)}function Hnt(t,e){let r=new Uint8Array(t.length);for(let n=0;n>=1}return r}function rmr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=Un(n[0],2)^Un(n[1],3)^n[2]^n[3],e[4*r+1]=n[0]^Un(n[1],2)^Un(n[2],3)^n[3],e[4*r+2]=n[0]^n[1]^Un(n[2],2)^Un(n[3],3),e[4*r+3]=Un(n[0],3)^n[1]^n[2]^Un(n[3],2)}return e}function nmr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=Un(n[0],14)^Un(n[1],11)^Un(n[2],13)^Un(n[3],9),e[4*r+1]=Un(n[0],9)^Un(n[1],14)^Un(n[2],11)^Un(n[3],13),e[4*r+2]=Un(n[0],13)^Un(n[1],9)^Un(n[2],14)^Un(n[3],11),e[4*r+3]=Un(n[0],11)^Un(n[1],13)^Un(n[2],9)^Un(n[3],14)}return e}function smr(t,e){let r=new Uint8Array(t);r=rE(r,e,0);for(let n=1;n<=9;n++)r=RB(r),r=Lnt(r),r=rmr(r),r=rE(r,e,n);return r=RB(r),r=Lnt(r),r=rE(r,e,10),r}function imr(t,e){let r=new Uint8Array(t);r=rE(r,e,10);for(let n=9;n>=1;n--)r=SI(r),r=_I(r),r=rE(r,e,n),r=nmr(r);return r=SI(r),r=_I(r),r=rE(r,e,0),r}function amr(t,e,r){let n=emr(t,16),s=NB(e),i=new Uint8Array(n.length),a=new Uint8Array(r);for(let o=0;on!==null).sort((n,s)=>{let i=W0(n.animeTitle),a=W0(s.animeTitle);if(i!=null&&a!==null&&a!==void 0){if(a!==i)return a-i;let o=zV(n.animeTitle),c=zV(s.animeTitle);return o.length-c.length}return i!=null&&a==null?-1:i==null&&a!=null?1:0}).forEach(n=>{r.findIndex(i=>i.animeId===n.animeId)===-1&&r.push(n)})}};Ot();_t();ir();function Or(t){let e=parseInt(t);return isNaN(e)||e<1900||e>2100?`${new Date().getFullYear()}-01-01T00:00:00Z`:`${e}-01-01T00:00:00Z`}function Ig(t){let e=t.split(":").map(Number),r=0;return e.length===3?r=e[0]*3600+e[1]*60+e[2]:e.length===2?r=e[0]*60+e[1]:r=e[0],r}$n();hn();var jT=class extends Tt{async get360Zongyi(e,r,n,s){try{let i=[];for(let a=0;a<=10;a++){let u=(await(await ge(`https://api.so.360kan.com/episodeszongyi?entid=${r}&site=${n}&y=${s}&count=20&offset=${a*20}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data).data.list;if(_("info",`[360kan] 360kan zongyi response: \u7B2C${a}\u9875\u83B7\u53D6\u5230${u?u.length:0}\u6761\u5267\u96C6`),!u)break;for(let l of u){let d=l.name.match(/第(\d+)期([上中下])?/)||l.period.match(/第(\d+)期([上中下])?/),f=d?d[1]:null;f&&d[2]&&(f=d[2]==="\u4E0A"?`${f}.1`:d[2]==="\u4E2D"?`${f}.2`:`${f}.3`),i.push({name:l.id,url:l.url,title:`\u3010${n}\u3011 ${l.name} ${l.period}`,sort:f||l.sort||null})}_("info",`[360kan] links.length: ${i.length}`)}return i.sort((a,o)=>{if(!a.sort||!o.sort)return 0;let c=parseFloat(a.sort),u=parseFloat(o.sort);return c-u}),i}catch(i){return _("error","[360kan] get360Animes error:",{message:i.message,name:i.name,stack:i.stack}),[]}}async getNumber(e,r,n){try{let s=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&site=${n}`,a=(await ge(s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(a&&a.data&&a.data.allupinfo)return Number(a.data.allupinfo[n])}catch(s){_("error","[360kan] getNumber error:",s&&s.message?s.message:s)}return null}async get360Detail(e,r,n,s,i){try{let a=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&start=${s}&end=${i}&site=${n}`;return(await ge(a,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data}catch(a){_("error","[360kan] get360Detail error:",a&&a.message?a.message:a)}return null}async getEpisodesV1(e,r,n,s){try{if(!s||Number(s)===0)return[];let i=200,a=1,o=[],c=Number(s);for(;a<=c;){let u=Math.min(a+i-1,c);try{let l=await this.get360Detail(e,r,n,a,u);if(l&&l.data&&l.data.allepidetail&&l.data.allepidetail[n])for(let d of l.data.allepidetail[n])o.push({name:d.playlink_num,url:d.url});else{if(a===1)return[];break}}catch(l){if(_("error",`[360kan] getEpisodesV1 batch ${a}-${u} failed for site ${n}: ${l&&l.message?l.message:l}`),a===1)return[];break}a=u+1}return o}catch(i){return _("error",`getEpisodesV1 error: ${i&&i.message?i.message:i}`),[]}}async getEpisodesV2(e,r,n){try{let s=JSON.stringify([{cat_id:String(e),ent_id:String(r),site:n}]),i=`https://api.so.360kan.com/episodesv2?v_ap=1&s=${encodeURIComponent(s)}`,o=(await ge(i,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(typeof o=="string")try{o=JSON.parse(o)}catch(c){return _("error",`[360kan] getEpisodesV2 JSON parse error: ${c.message}`),[]}if(!o)return[];if(o.code===0&&Array.isArray(o.data)&&o.data.length>0){let c=o.data[0].seriesHTML||{},u=c.seriesPlaylinks||c.series_playlinks||[],l=[];for(let d=0;dd.url)}return[]}catch(s){return _("error","[360kan] getEpisodesV2 error:",{message:s&&s.message?s.message:String(s),stack:s&&s.stack?s.stack:void 0}),[]}}async search(e){try{let n=(await ge(`https://api.so.360kan.com/index?force_v=1&kw=${encodeURIComponent(e)}&from=&pageno=1&v_ap=1&tab=all`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data,s=[];return"rows"in n.data.longData&&(s=n.data.longData.rows),_("info",`[360kan] 360kan response: ${JSON.stringify(s)}`),_("info",`[360kan] 360kan animes.length: ${s.length}`),s}catch(r){return _("error","[360kan] get360Animes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[360kan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.titleTxt,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.titleTxt).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[360kan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=[];if(l.cat_name==="\u7535\u5F71")for(let f of Object.keys(l.playlinks))O.vodAllowedPlatforms.includes(f)&&d.push({name:f.toString(),url:l.playlinks[f],title:`\u3010${f}\u3011 ${l.titleTxt}(${l.year})`});else if(l.cat_name==="\u7535\u89C6\u5267"||l.cat_name==="\u52A8\u6F2B"){let f=0;l.cat_name==="\u7535\u89C6\u5267"?f=2:l.cat_name==="\u52A8\u6F2B"&&(f=4);let p=null;if(Array.isArray(l.seriesPlaylinks)&&l.seriesPlaylinks.length>0){if(O.vodAllowedPlatforms.includes(l.seriesSite))for(let m=0;m0)for(let g of A)d.push({name:g.name,url:g.url,title:`\u3010${m}\u3011 \u7B2C${g.name}\u96C6`,sort:g.name});else try{let g=await this.getNumber(f,h,m);if(g&&Number(g)>0){let b=await this.getEpisodesV1(f,h,m,g);if(b&&b.length>0)for(let y of b)d.push({name:y.name,url:y.url,title:`\u3010${m}\u3011 \u7B2C${y.name}\u96C6`,sort:y.name})}}catch(g){_("error",`[360kan] fallback detail fetch failed for site ${m}: ${g&&g.message?g.message:g}`)}}catch(h){_("error",`[360kan] failed to fetch episodesv2 for site ${m}: ${h&&h.message?h.message:h}`)}}}else l.cat_name==="\u7EFC\u827A"&&(d=(await Promise.all(Object.keys(l.playlinks_year).map(async p=>O.vodAllowedPlatforms.includes(p)?(await Promise.all(l.playlinks_year[p].map(async h=>await this.get360Zongyi(l.titleTxt,l.id,p,h)))).flat():[]))).flat());if(d.length>0){let f={animeId:Number(l.id),bangumiId:String(l.id),animeTitle:`${l.titleTxt}(${l.year})\u3010${l.cat_name}\u3011from 360`,type:l.cat_name,typeDescription:l.cat_name,imageUrl:l.cover,startDate:Or(l.year),episodeCount:d.length,rating:0,isFavorited:!0,source:"360"};a.push(f),Dt({...f,links:d},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[360kan] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};Ot();_t();ir();$n();hn();var HT=class extends Tt{async getVodAnimes(e,r,n){try{let s=B8e(e),i=encodeURIComponent(s),a=await ge(`${r}/api.php/provide/vod/?ac=detail&wd=${i}&pg=1`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});if(a&&a.data&&a.data.list&&a.data.list.length>0){_("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F`);let o=a.data;return _("info",`[VOD] ${n} response: \u2193\u2193\u2193`),ts(o),{serverName:n,list:o.list}}else return _("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F\uFF0C\u4F46 response.data.list \u4E3A\u7A7A`),{serverName:n,list:[]}}catch(s){return _("error",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u5931\u8D25:`,{message:s.message,name:s.name,stack:s.stack}),{serverName:n,list:[]}}}async getVodAnimesFromAllServersImpl(e,r){let n=r.map(i=>this.getVodAnimes(e,i.url,i.name));return(await Promise.allSettled(n)).filter(i=>i.status==="fulfilled").map(i=>i.value)}async getVodAnimesFromFastestServer(e,r,n=null,s=null){if(!r||r.length===0)return[];let i=r.map(l=>this.getVodAnimes(e,l.url,l.name)),a;try{a=await Promise.race(i)}catch(l){return _("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u76F4\u63A5\u629B\u9519",l),[]}let o=l=>!n||s!=="vod"?!0:(JSON.stringify(l)?.toLowerCase()||"").includes(String(n).toLowerCase());if(o(a)&&a&&a.list&&a.list.length>0)return _("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName}${s==="vod"?" \u5B57\u7B26\u4E32\u5305\u542B preferAnimeId \u2192 \u4F18\u5148\u4F7F\u7528":""}`),[a];_("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName} \u4E0D\u542B preferAnimeId\uFF0C\u7B49\u5F85\u5176\u4ED6\u670D\u52A1\u5668\u2026`);let c=await Promise.allSettled(i);if(n){for(let l of c)if(l.status==="fulfilled"&&o(l.value)&&l.value&&l.value.list&&l.value.list.length>0)return _("info",`[VOD fastest mode] \u627E\u5230\u5305\u542B preferAnimeId \u7684\u670D\u52A1\u5668: ${l.value.serverName}`),[l.value];_("info","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u90FD\u4E0D\u5305\u542B preferAnimeId\uFF0C\u56DE\u9000\u5230\u201C\u771F\u6B63\u6709\u6570\u636E\u201D\u7684\u6700\u5FEB\u670D\u52A1\u5668")}let u=c.filter(l=>l.status==="fulfilled").map(l=>l.value).filter(l=>l&&l.list&&l.list.length>0);if(u.length>0){let l=u[0];return _("info",`[VOD fastest mode] \u4F7F\u7528\u6700\u5FEB\u6709\u6570\u636E\u7684\u670D\u52A1\u5668: ${l.serverName}`),[l]}return _("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u5747\u65E0\u6709\u6548\u6570\u636E"),[]}async search(e,r=null,n=null){return!O.vodServers||O.vodServers.length===0?[]:O.vodReturnMode==="fastest"?await this.getVodAnimesFromFastestServer(e,O.vodServers,r,n):await this.getVodAnimesFromAllServersImpl(e,O.vodServers)}async getEpisodes(e){}async handleAnimes(e,r,n,s,i=null,a=null){let o=[];if(!e||!Array.isArray(e))return _("error","[VOD] sourceAnimes is not a valid array"),[];let c=e.filter(d=>yt(d.vod_name,r,a)),u=a!==null?a:Wt(r);if(u!==null){let d=c.filter(f=>{let p=Ct(f.vod_name).season;return p===u||u===1&&p===null});d.length>0&&(c=d,_("info",`[VOD] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=await Promise.all(c.map(async d=>{try{let f=d.vod_play_from.split("$$$");f=f.map(g=>g==="mgtv"?"imgo":g==="bilibili"?"bilibili1":g);let p=d.vod_play_url.split("$$$"),m=f.map((g,b)=>O.vodAllowedPlatforms.includes(g)?b:-1).filter(g=>g!==-1),h=[],A=0;for(let g of m){let b=f[g],y=p[g].split("#");for(let x of y){let v=x.split("$");A++,h.push({name:A.toString(),url:v[1],title:`\u3010${b}\u3011 ${v[0]}`})}}if(h.length>0){let g={animeId:Number(d.vod_id),bangumiId:String(d.vod_id),animeTitle:`${d.vod_name}(${d.vod_year})\u3010${d.type_name}\u3011from ${s}`,type:d.type_name,typeDescription:d.type_name,imageUrl:d.vod_pic,startDate:Or(d.vod_year),episodeCount:h.length,rating:0,isFavorited:!0,source:"vod"};o.push(g),Dt({...g,links:h},i),O.animes.length>O.MAX_ANIMES&&$t()}}catch(f){_("error",`[VOD] Error processing anime: ${f.message}`)}}));return this.sortAndPushAnimesByYear(o,n),l}async getEpisodeDanmu(e){}formatComments(e){}};_t();_t();ir();Ot();async function Xnt(t){let e="https://m.douban.com/rexxar/api/v2",r={Referer:"https://m.douban.com/movie/","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"};O.doubanCookie&&(r.Cookie=O.doubanCookie);try{let n=await ge(`${e}${t}`,{method:"GET",headers:r});return n.status!=200?null:n}catch(n){return _("error","[Utils] [Douban] GET API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function Znt(t,e={}){let r="https://api.douban.com/v2";try{let n=await Kr(`${r}${t}`,JSON.stringify({...e,apikey:"0ac44ae016490db2204ce0a042db2916"}),{method:"GET",headers:{Referer:"https://api.douban.com","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return n.status!=200?null:n}catch(n){return _("error","[Utils] [Douban] POST API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function est(t,e=20){let r=`/search?q=${t}&start=0&count=${e}&type=movie`;return await Xnt(r)}async function tst(t,e=20){return await Znt("/movie/search",{q:t,start:0,count:e})}async function rst(t){let e=`/movie/${t}?for_mobile=1`;return await Xnt(e)}async function nst(t){let e=`/movie/imdb/${t}`;return await Znt(e)}_t();ir();async function sst(t){let e="https://api.imdbapi.dev";try{let r=await ge(`${e}${t}`,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return r.status!=200?null:r}catch(r){return _("error","[Utils] [IMDB] API error:",{message:r.message,name:r.name,stack:r.stack}),null}}async function ist(t){let e=`/titles/${t}/seasons`;return await sst(e)}async function ast(t,e){let r=`/titles/${t}/episodes?season=${e}`;return await sst(r)}var QT=class extends Tt{constructor(e){super("BaseSource"),this.doubanSource=e}async _getDoubanInfo(e,r,n){if(!e)return;let s=await nst(e);if(!s||!s?.data)return;let i=s?.data?.id;if(i){let o=i.split("/").pop(),c=r==="movie"?"\u7535\u5F71":"\u7535\u89C6\u5267";o&&n.push({layout:"subject",target_id:o,type_name:c,target:{cover_url:s.data?.image,title:s.data?.alt_title}})}}async getDoubanIdByTmdbId(e,r){try{let n=[],i=(await mnt(e,r)).data?.imdb_id;if(!i)return[];if(e==="movie")await this._getDoubanInfo(i,e,n);else{let a=await ist(i);_("info","[TMDB] imdb seasons:",a.data.seasons);let o=(a?.data?.seasons??[]).map(async c=>{let u=i;_("info","[TMDB] imdb season:",c.season);try{Number(c.season)!==1&&(u=(await ast(i,c.season)).data?.episodes.find(d=>d.episodeNumber===1)?.id??""),await this._getDoubanInfo(u,e,n)}catch(l){_("error",`[TMDB] \u5904\u7406\u7B2C ${c.season} \u5B63\u5931\u8D25\uFF0C\u7EE7\u7EED\u6267\u884C\u5176\u4ED6\u5B63:`,l)}});await Promise.all(o)}return n}catch(n){return _("error","[TMDB] getTmdbIds error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async search(e){try{let n=(await XL(e)).data,s=[],i=[];n?.results?.length>0&&(i=n.results.filter(c=>(c.name||c.title)===e)),_("info",`[TMDB] tmdb items.length: ${i.length}`);let a=i.map(async c=>{try{return await this.getDoubanIdByTmdbId(c.media_type,c.id)}catch(u){return _("error",`[TMDB] \u83B7\u53D6 TMDB ID ${c.id} \u7684\u8C46\u74E3 ID \u5931\u8D25\uFF0C\u7EE7\u7EED\u5904\u7406\u5176\u4ED6\u6761\u76EE:`,u),[]}}),o=await Promise.all(a);return s=[...s,...o.flat()],s}catch(r){return _("error","[TMDB] getTmdbAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){return this.doubanSource.handleAnimes(e,r,n,s,i)}async getEpisodeDanmu(e){}formatComments(e){}};_t();hn();var GT=class extends Tt{constructor(e,r,n,s,i){super("BaseSource"),this.tencentSource=e,this.iqiyiSource=r,this.youkuSource=n,this.bilibiliSource=s,this.miguSource=i}async search(e){try{let n=(await est(e))?.data;if(!n||!n?.subjects?.items?.length&&!n?.smart_box?.length){_("info","[Douban] searchDoubanTitles failed or empty, trying searchDoubanTitlesByPublic");let a=(await tst(e))?.data;a?.subjects?.length>0&&(n={subjects:{items:a.subjects.map(o=>this.convertToOriginalFormat(o))}})}let s=[];return n?.subjects?.items?.length>0&&(s=[...s,...n.subjects.items]),n?.smart_box?.length>0&&(s=[...s,...n.smart_box]),_("info",`[Douban] douban animes.length: ${s.length}`),s}catch(r){return _("error","[Douban] getDoubanAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}convertToOriginalFormat(e){let n={movie:"\u7535\u5F71",tv:"\u7535\u89C6\u5267"}[e.subtype]||e.subtype,s=e.images?.large||e.images?.medium||e.images?.small||"",i="";if(s){let u=s.match(/\/(p\d+)\.jpg/);u&&u[1]&&(i=`https://qnmob3.doubanio.com/view/photo/large/public/${u[1]}.jpg?imageView2/0/q/80/w/9999/h/120/format/jpg`)}let a=e.directors?.map(u=>u.name).join(" ")||"",o=e.casts?.slice(0,3).map(u=>u.name).join(" ")||"",c=`${e.year} / ${e.genres?.join(" / ")||""} / ${a}${o?" / "+o:""}`;return{layout:"subject",type_name:n,target_id:String(e.id),target:{rating:{count:e.collect_count||0,max:e.rating?.max||10,star_count:e.rating?.stars?parseInt(e.rating.stars)/10:0,value:e.rating?.average||0},controversy_reason:"",title:e.title,abstract:"",has_linewatch:!1,uri:`douban://douban.com/${e.subtype==="movie"?"movie":"tv"}/${e.id}`,cover_url:i,year:String(e.year||""),card_subtitle:c,id:String(e.id),null_rating_reason:""},target_type:e.subtype==="movie"?"movie":"tv"}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Douban] sourceAnimes is not a valid array"),[];let o=e.filter(l=>{let d=l?.target?.title||"";return yt(d,r,i)}),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=d?.target?.title||"",p=Ct(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("info",`[Douban] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.allSettled(o.map(async l=>{try{if(l?.layout!=="subject")return;let d=l.target_id,f=l?.type_name;if(f!=="\u7535\u5F71"&&f!=="\u7535\u89C6\u5267")return;_("info","[Douban] doubanId: ",d,l?.target?.title,f);let p=await rst(d),m=[];for(let h of p.data?.vendors??[]){if(!h)continue;_("info","[Douban] vendor uri: ",h.uri),p.data?.genres.includes("\u771F\u4EBA\u79C0")?f="\u7EFC\u827A":p.data?.genres.includes("\u7EAA\u5F55\u7247")?f="\u7EAA\u5F55\u7247":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u6F2B":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.includes("\u65E5\u672C")?f="\u65E5\u756A":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u6F2B":f==="\u7535\u5F71"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u753B\u7535\u5F71":f==="\u7535\u5F71"&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u534E\u8BED\u7535\u5F71":f==="\u7535\u5F71"?f="\u5916\u8BED\u7535\u5F71":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u4EA7\u5267":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>["\u65E5\u672C","\u97E9\u56FD"].includes(g))?f="\u65E5\u97E9\u5267":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>["\u7F8E\u56FD","\u82F1\u56FD","\u52A0\u62FF\u5927","\u6CD5\u56FD","\u5FB7\u56FD","\u610F\u5927\u5229","\u897F\u73ED\u7259","\u6FB3\u5927\u5229\u4E9A"].includes(g))&&(f="\u6B27\u7F8E\u5267");let A=[{title:p.data?.title,year:p.data?.year,type:f,imageUrl:l?.target?.cover_url}];switch(h.id){case"qq":{let g=new URL(h.uri).searchParams.get("cid");g&&(A[0].provider="tencent",A[0].mediaId=g,await this.tencentSource.handleAnimes(A,p.data?.title,a,s,i));break}case"iqiyi":{let g=new URL(h.uri).searchParams.get("tvid");g&&(A[0].provider="iqiyi",A[0].mediaId=l?.type_name==="\u7535\u5F71"?`movie_${g}`:g,await this.iqiyiSource.handleAnimes(A,p.data?.title,a,s,i));break}case"youku":{let g=new URL(h.uri).searchParams.get("showid");g&&(A[0].provider="youku",A[0].mediaId=g,await this.youkuSource.handleAnimes(A,p.data?.title,a,s,i));break}case"bilibili":{let g=new URL(h.uri).pathname.split("/").pop();g&&(A[0].provider="bilibili",A[0].mediaId=`ss${g}`,await this.bilibiliSource.handleAnimes(A,p.data?.title,a,s,i));break}case"miguvideo":{let g=null,y=decodeURIComponent(h.uri).match(/"contentID":"([^"]+)"/);y&&y[1]&&(g=y[1]),g&&(A[0].provider="migu",A[0].mediaId=`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${g}/1`,await this.miguSource.handleAnimes(A,p.data?.title,a,s,i));break}}}return m}catch(d){return _("error",`[Douban] Error processing anime: ${d.message}`),[]}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};Ot();_t();ir();Ts();$n();hn();hs();var Uf=null,KT=0,VT=0,Vi={search:"WIN",detail:"TV",danmu:"TV"},zT=class extends Tt{constructor(){super(),this.isBatchMode=!1}API_CONFIG={TV_SECRET_KEY:"cf65GPholnICgyw1xbrpA79XVkizOdMq",TV_HOST:"api.gorafie.com",TV_DANMU_HOST:"static-dm.qwdjapp.com",TV_VERSION:"1.2.2",TV_USER_AGENT:"okhttp/3.12.13",TV_CLIENT_TYPE:"android_qwtv_RRSP",TV_PKT:"rrmj",MAC_HOST:"api.cluuid.cn",MAC_DANMU_HOST:"static-dm.lequkeji.com",MAC_VERSION:"1.2.3",MAC_USER_AGENT:"%E4%BA%BA%E4%BA%BA%E8%A7%86%E9%A2%91%20for%20Mac/1.0 CFNetwork/3860.600.21 Darwin/25.5.0",MAC_CLIENT_TYPE:"mac_rrsp",WIN_HOST:"api.pleasfun.com",WIN_DANMU_HOST:"static-dm.lequkeji.com",WIN_VERSION:"1.24.2",WIN_USER_AGENT:"Boost.Beast/351",WIN_CLIENT_TYPE:"win_rrsp_gw",WEB_HOST:"api.rrmj.plus",WEB_DANMU_HOST:"static-dm.rrmj.plus"};generateRandomAliId(){let e="aY",r=24-e.length,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=e;for(let i=0;iMath.floor(Math.random()*16).toString(16)).join("").toUpperCase()}generateDeviceId(){return Math.random().toString(36).slice(2).toUpperCase()}rotateAliId(){let e=Uf;Uf=this.generateRandomAliId(),KT=0,VT=Math.floor(Math.random()*31)+30,e?_("info",`[Renren] AliID \u8F6E\u6362\u5B8C\u6210: ${e} -> ${Uf}`):_("info",`[Renren] AliID \u521D\u59CB\u5316\u5B8C\u6210: ${Uf}`),_("info",`[Renren] AliID \u4E0B\u6B21\u8F6E\u6362\u5C06\u5728 ${VT} \u6B21\u64CD\u4F5C\u540E\u89E6\u53D1`)}checkAndIncrementUsage(){Uf||this.rotateAliId(),KT>=VT&&(_("info",`[Renren] AliID \u89E6\u53D1\u9608\u503C (${KT}/${VT})\uFF0C\u6B63\u5728\u8F6E\u6362 ID...`),this.rotateAliId()),KT++,_("info",`[Renren] AliID \u8BA1\u6570\u589E\u52A0: ${KT}/${VT} (\u5F53\u524DID: ...${Uf.slice(-6)})`)}getAliId(){return Uf||this.rotateAliId(),this.isBatchMode||this.checkAndIncrementUsage(),Uf}generateTvHeaders(e,r){let n=this.getAliId();return{clientVersion:this.API_CONFIG.TV_VERSION,p:"Android",deviceid:"tWEtIN7JG2DTDkBBigvj6A%3D%3D",token:"",aliid:n,umid:"",clienttype:this.API_CONFIG.TV_CLIENT_TYPE,pkt:this.API_CONFIG.TV_PKT,t:e.toString(),sign:r,isAgree:"1",et:"2","Accept-Encoding":"gzip","User-Agent":this.API_CONFIG.TV_USER_AGENT}}buildMacHeaders(){return{aliId:this.generateMacAliId(),ct:this.API_CONFIG.MAC_CLIENT_TYPE,cv:this.API_CONFIG.MAC_VERSION,token:"",Accept:"*/*","Accept-Language":"zh-CN,zh-Hans;q=0.9","User-Agent":this.API_CONFIG.MAC_USER_AGENT}}buildWinHeaders(){return{aliId:this.generateWinAliId(),ct:this.API_CONFIG.WIN_CLIENT_TYPE,cv:this.API_CONFIG.WIN_VERSION,token:"","Content-Type":"application/json","User-Agent":this.API_CONFIG.WIN_USER_AGENT}}generateSignature(e,r,n,s,i,a,o,c){let u=`${e.toUpperCase()} + `)}`),w},y=[];h.forEach(w=>{t.filter(P=>P.source===w&&!g.has(P.animeId)&&oo(P.animeTitle)==="CN").forEach(P=>y.push(P))});let x=!1;for(let w of h)if(t.some(N=>N.source===w&&!g.has(N.animeId)&&oo(N.animeTitle)==="CN")){x=!0;break}if(y.length>0&&x){mt("info",`[Merge] [Phase 1] \u542F\u52A8 CN \u9694\u79BB\u7B56\u7565: \u5305\u542B ${y.length} \u4E2A CN \u8D44\u6E90\u3002`),b(y,"Phase 1");for(let w of y){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let L=await Cie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1: CN-Strict]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});L&&(u.push(L),g.add(w.animeId),d.add(w.animeId))}}let v=[];for(let w=1;wL.source===N&&!g.has(L.animeId)&&oo(L.animeTitle)==="CN").forEach(L=>v.push(L))}if(v.length>=2){mt("info",`[Merge] [Phase 1.5] \u542F\u52A8\u526F\u6E90 CN \u81EA\u7EC4\u7EC7: \u68C0\u6D4B\u5230 ${v.length} \u4E2A\u5269\u4F59 CN \u8D44\u6E90\u3002`),b(v,"Phase 1.5");for(let w of v){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let L=await Cie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 1.5: CN-Secondary]",limitSecondaryLang:"CN",collectionAnimeIds:o,collectionProgress:c,baseSecondaries:p.baseSecondaries});L&&(u.push(L),g.add(w.animeId),d.add(w.animeId))}}let C=[];h.forEach(w=>{t.filter(P=>P.source===w&&!g.has(P.animeId)).forEach(P=>C.push(P))});let R=new Set(C.map(w=>w.source));if(C.length>0&&R.size>=2){mt("info",`[Merge] [Phase 2] \u542F\u52A8\u6807\u51C6\u56DE\u9000\u5339\u914D: \u5269\u4F59 ${C.length} \u4E2A\u8D44\u6E90\u3002`),b(C,"Phase 2");for(let w of C){if(g.has(w.animeId))continue;let N=m.get(w.source),P=h.slice(N+1);if(P.length===0)continue;let L=co(w.animeTitle,w.typeDescription,w.aliases),M=Array.from(L).some(Z=>Z.startsWith("P")),k=null;if(M){k=new Set;let Z=bi(w.animeTitle,w.typeDescription,w.aliases)||1;for(let W of d){let F=O.animes.find(J=>String(J.animeId)===String(W));if(!F||!P.includes(F.source))continue;let V=co(F.animeTitle,F.typeDescription,F.aliases);if(Array.from(V).some(J=>J.startsWith("P")))continue;let j=bi(F.animeTitle,F.typeDescription,F.aliases)||1;Z===j&&k.add(F.animeId)}}let B=await Cie({pAnime:w,availableSecondaries:P,curAnimes:t,groupConsumedIds:g,globalConsumedIds:d,generatedSignatures:l,epFilter:a,groupFingerprint:A,currentPrimarySource:w.source,logPrefix:"[Merge][Phase 2: Standard]",collectionAnimeIds:o,allowReuseIds:k,collectionProgress:c,baseSecondaries:p.baseSecondaries});B&&(u.push(B),g.add(w.animeId),d.add(w.animeId))}}}if(u.length>0){for(let p of u)Lt(p,e);t.unshift(...u)}if(f.size>0)for(let p of t)d.has(p.animeId)&&f.has(p.source)&&d.delete(p.animeId);for(let p=t.length-1;p>=0;p--){let m=t[p];(m._isMerged||d.has(m.animeId))&&t.splice(p,1)}u.length>0?mt("info",`[Merge] \u5408\u5E76\u6267\u884C\u5B8C\u6BD5\uFF0C\u65B0\u589E\u4E86 ${u.length} \u4E2A\u5408\u5E76\u9879\uFF0C\u6700\u7EC8\u5217\u8868\u6570\u91CF: ${t.length}`):mt("info",`[Merge] \u626B\u63CF\u5B8C\u6BD5\uFF0C\u672A\u4EA7\u751F\u4EFB\u4F55\u5408\u5E76\uFF0C\u5217\u8868\u4FDD\u6301\u4E0D\u53D8 (\u6570\u91CF: ${t.length})`)}function Nnt(t){if(t.p&&typeof t.p=="string"){let e=parseFloat(t.p.split(",")[0]);if(!isNaN(e))return e}return t.t!==void 0&&t.t!==null?Number(t.t):typeof t.progress=="number"?t.progress/1e3:0}function Ont(t){if(t){if(typeof t.m=="string")return t.m;if(typeof t.text=="string")return t.text;if(typeof t.content=="string")return t.content}return""}function Pnt(t){return!t||typeof t!="string"?"":t.replace(/[\s.,!?"'(){}\[\]<>;:,。!?、""''()【】《》;:~~]/g,"").toLowerCase()}function Bnt(t,e){let r=[...t||[],...e||[]],n=s=>{if(!s)return 0;if(s.t!==void 0&&s.t!==null)return Number(s.t);if(s.p&&typeof s.p=="string"){let i=parseFloat(s.p.split(",")[0]);return isNaN(i)?0:i}return 0};return r.sort((s,i)=>n(s)-n(i)),r}function Mnt(t,e,r,n=.8,s=1){let i=e.indexOf("dandan");if(i===-1||!t[i]?.length)return mt("info","[Merge][AlignTimeline] \u65E0 dandan \u6E90\u6216\u65E0\u6570\u636E\uFF0C\u8DF3\u8FC7\u65F6\u95F4\u8F74\u5BF9\u9F50"),t;let a=t[i],o=a.length,c=new Map;return a.forEach(u=>{let l=Pnt(Ont(u)),d=Nnt(u);l&&(!c.has(l)||d{let d=e[l];if(d==="dandan"||!u?.length)return;let f=new Map,p=[],m=0;u.forEach(x=>{let v=Pnt(Ont(x)),C=Nnt(x);if(p.push({danmu:x,time:C}),v&&c.has(v)){m++;let R=Math.round(C-c.get(v));f.set(R,(f.get(R)||0)+1)}});let h=0,A=0;f.forEach((x,v)=>{x>A&&(A=x,h=v)});let g=Math.min(o,u.length),b=A/g,y=m>0?A/m:0;if(m/g{let C=Math.max(0,v-h);typeof x.p=="string"&&(x.p=x.p.replace(/^[^,]+(?=,)/,C.toFixed(2))),x.t!=null&&(x.t=C),typeof x.progress=="number"&&(x.progress=Math.round(C*1e3))})}),t}Is();function Unt(t,e=Date.now()){let r=Number(t);return Number.isFinite(r)&&r>0?Math.trunc(r):Math.trunc(Number(e)||Date.now())}function J0r(t=""){return PL(eg(t)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function X0r(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.replace(/-/g,"+").replace(/_/g,"/").padEnd(Math.ceil(e.length/4)*4,"=");return Cc(IC(r))}var qnt="6.8.2",Z0r="a_8280",emr="xiaomi",jnt="Redmi Note 12",tmr="Xiaomi",Hnt="14",rmr=`HanjuTV/${qnt} (${jnt}; Android ${Hnt}; Scale/2.00)`,Qnt=14*24*60*60*1e3,Wnt="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Gnt="f349wghhe784tqwh",Vnt="d3w8hf94fidk38lk",nmr="34F9Q53w/HJW8E6Q",$nt="fb3597b87601d5a7";function HT(t){return typeof TextEncoder<"u"?new TextEncoder().encode(t):eg(t)}function smr(t){return typeof TextDecoder<"u"?new TextDecoder().decode(t):Cc(t)}function znt(t,e){let r=new Uint8Array(t.length);for(let n=0;n>=1}return r}function omr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=Un(n[0],2)^Un(n[1],3)^n[2]^n[3],e[4*r+1]=n[0]^Un(n[1],2)^Un(n[2],3)^n[3],e[4*r+2]=n[0]^n[1]^Un(n[2],2)^Un(n[3],3),e[4*r+3]=Un(n[0],3)^n[1]^n[2]^Un(n[3],2)}return e}function cmr(t){let e=new Uint8Array(16);for(let r=0;r<4;r++){let n=t.slice(4*r,4*r+4);e[4*r+0]=Un(n[0],14)^Un(n[1],11)^Un(n[2],13)^Un(n[3],9),e[4*r+1]=Un(n[0],9)^Un(n[1],14)^Un(n[2],11)^Un(n[3],13),e[4*r+2]=Un(n[0],13)^Un(n[1],9)^Un(n[2],14)^Un(n[3],11),e[4*r+3]=Un(n[0],11)^Un(n[1],13)^Un(n[2],9)^Un(n[3],14)}return e}function umr(t,e){let r=new Uint8Array(t);r=nE(r,e,0);for(let n=1;n<=9;n++)r=NL(r),r=Fnt(r),r=omr(r),r=nE(r,e,n);return r=NL(r),r=Fnt(r),r=nE(r,e,10),r}function lmr(t,e){let r=new Uint8Array(t);r=nE(r,e,10);for(let n=9;n>=1;n--)r=CC(r),r=vC(r),r=nE(r,e,n),r=cmr(r);return r=CC(r),r=vC(r),r=nE(r,e,0),r}function dmr(t,e,r){let n=imr(t,16),s=OL(e),i=new Uint8Array(n.length),a=new Uint8Array(r);for(let o=0;on!==null).sort((n,s)=>{let i=W0(n.animeTitle),a=W0(s.animeTitle);if(i!=null&&a!==null&&a!==void 0){if(a!==i)return a-i;let o=Yz(n.animeTitle),c=Yz(s.animeTitle);return o.length-c.length}return i!=null&&a==null?-1:i==null&&a!=null?1:0}).forEach(n=>{r.findIndex(i=>i.animeId===n.animeId)===-1&&r.push(n)})}};Pt();St();ar();function Pr(t){let e=parseInt(t);return isNaN(e)||e<1900||e>2100?`${new Date().getFullYear()}-01-01T00:00:00Z`:`${e}-01-01T00:00:00Z`}function Cg(t){let e=t.split(":").map(Number),r=0;return e.length===3?r=e[0]*3600+e[1]*60+e[2]:e.length===2?r=e[0]*60+e[1]:r=e[0],r}$n();hn();var QT=class extends wt{async get360Zongyi(e,r,n,s){try{let i=[];for(let a=0;a<=10;a++){let u=(await(await ge(`https://api.so.360kan.com/episodeszongyi?entid=${r}&site=${n}&y=${s}&count=20&offset=${a*20}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data).data.list;if(_("info",`[360kan] 360kan zongyi response: \u7B2C${a}\u9875\u83B7\u53D6\u5230${u?u.length:0}\u6761\u5267\u96C6`),!u)break;for(let l of u){let d=l.name.match(/第(\d+)期([上中下])?/)||l.period.match(/第(\d+)期([上中下])?/),f=d?d[1]:null;f&&d[2]&&(f=d[2]==="\u4E0A"?`${f}.1`:d[2]==="\u4E2D"?`${f}.2`:`${f}.3`),i.push({name:l.id,url:l.url,title:`\u3010${n}\u3011 ${l.name} ${l.period}`,sort:f||l.sort||null})}_("info",`[360kan] links.length: ${i.length}`)}return i.sort((a,o)=>{if(!a.sort||!o.sort)return 0;let c=parseFloat(a.sort),u=parseFloat(o.sort);return c-u}),i}catch(i){return _("error","[360kan] get360Animes error:",{message:i.message,name:i.name,stack:i.stack}),[]}}async getNumber(e,r,n){try{let s=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&site=${n}`,a=(await ge(s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(a&&a.data&&a.data.allupinfo)return Number(a.data.allupinfo[n])}catch(s){_("error","[360kan] getNumber error:",s&&s.message?s.message:s)}return null}async get360Detail(e,r,n,s,i){try{let a=`https://api.web.360kan.com/v1/detail?cat=${e}&id=${r}&start=${s}&end=${i}&site=${n}`;return(await ge(a,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data}catch(a){_("error","[360kan] get360Detail error:",a&&a.message?a.message:a)}return null}async getEpisodesV1(e,r,n,s){try{if(!s||Number(s)===0)return[];let i=200,a=1,o=[],c=Number(s);for(;a<=c;){let u=Math.min(a+i-1,c);try{let l=await this.get360Detail(e,r,n,a,u);if(l&&l.data&&l.data.allepidetail&&l.data.allepidetail[n])for(let d of l.data.allepidetail[n])o.push({name:d.playlink_num,url:d.url});else{if(a===1)return[];break}}catch(l){if(_("error",`[360kan] getEpisodesV1 batch ${a}-${u} failed for site ${n}: ${l&&l.message?l.message:l}`),a===1)return[];break}a=u+1}return o}catch(i){return _("error",`getEpisodesV1 error: ${i&&i.message?i.message:i}`),[]}}async getEpisodesV2(e,r,n){try{let s=JSON.stringify([{cat_id:String(e),ent_id:String(r),site:n}]),i=`https://api.so.360kan.com/episodesv2?v_ap=1&s=${encodeURIComponent(s)}`,o=(await ge(i,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data;if(typeof o=="string")try{o=JSON.parse(o)}catch(c){return _("error",`[360kan] getEpisodesV2 JSON parse error: ${c.message}`),[]}if(!o)return[];if(o.code===0&&Array.isArray(o.data)&&o.data.length>0){let c=o.data[0].seriesHTML||{},u=c.seriesPlaylinks||c.series_playlinks||[],l=[];for(let d=0;dd.url)}return[]}catch(s){return _("error","[360kan] getEpisodesV2 error:",{message:s&&s.message?s.message:String(s),stack:s&&s.stack?s.stack:void 0}),[]}}async search(e){try{let n=(await ge(`https://api.so.360kan.com/index?force_v=1&kw=${encodeURIComponent(e)}&from=&pageno=1&v_ap=1&tab=all`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})).data,s=[];return"rows"in n.data.longData&&(s=n.data.longData.rows),_("info",`[360kan] 360kan response: ${JSON.stringify(s)}`),_("info",`[360kan] 360kan animes.length: ${s.length}`),s}catch(r){return _("error","[360kan] get360Animes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[360kan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.titleTxt,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.titleTxt).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[360kan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=[];if(l.cat_name==="\u7535\u5F71")for(let f of Object.keys(l.playlinks))O.vodAllowedPlatforms.includes(f)&&d.push({name:f.toString(),url:l.playlinks[f],title:`\u3010${f}\u3011 ${l.titleTxt}(${l.year})`});else if(l.cat_name==="\u7535\u89C6\u5267"||l.cat_name==="\u52A8\u6F2B"){let f=0;l.cat_name==="\u7535\u89C6\u5267"?f=2:l.cat_name==="\u52A8\u6F2B"&&(f=4);let p=null;if(Array.isArray(l.seriesPlaylinks)&&l.seriesPlaylinks.length>0){if(O.vodAllowedPlatforms.includes(l.seriesSite))for(let m=0;m0)for(let g of A)d.push({name:g.name,url:g.url,title:`\u3010${m}\u3011 \u7B2C${g.name}\u96C6`,sort:g.name});else try{let g=await this.getNumber(f,h,m);if(g&&Number(g)>0){let b=await this.getEpisodesV1(f,h,m,g);if(b&&b.length>0)for(let y of b)d.push({name:y.name,url:y.url,title:`\u3010${m}\u3011 \u7B2C${y.name}\u96C6`,sort:y.name})}}catch(g){_("error",`[360kan] fallback detail fetch failed for site ${m}: ${g&&g.message?g.message:g}`)}}catch(h){_("error",`[360kan] failed to fetch episodesv2 for site ${m}: ${h&&h.message?h.message:h}`)}}}else l.cat_name==="\u7EFC\u827A"&&(d=(await Promise.all(Object.keys(l.playlinks_year).map(async p=>O.vodAllowedPlatforms.includes(p)?(await Promise.all(l.playlinks_year[p].map(async h=>await this.get360Zongyi(l.titleTxt,l.id,p,h)))).flat():[]))).flat());if(d.length>0){let f={animeId:Number(l.id),bangumiId:String(l.id),animeTitle:`${l.titleTxt}(${l.year})\u3010${l.cat_name}\u3011from 360`,type:l.cat_name,typeDescription:l.cat_name,imageUrl:l.cover,startDate:Pr(l.year),episodeCount:d.length,rating:0,isFavorited:!0,source:"360"};a.push(f),Lt({...f,links:d},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[360kan] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};Pt();St();ar();$n();hn();var GT=class extends wt{async getVodAnimes(e,r,n){try{let s=$8e(e),i=encodeURIComponent(s),a=await ge(`${r}/api.php/provide/vod/?ac=detail&wd=${i}&pg=1`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});if(a&&a.data&&a.data.list&&a.data.list.length>0){_("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F`);let o=a.data;return _("info",`[VOD] ${n} response: \u2193\u2193\u2193`),ts(o),{serverName:n,list:o.list}}else return _("info",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u6210\u529F\uFF0C\u4F46 response.data.list \u4E3A\u7A7A`),{serverName:n,list:[]}}catch(s){return _("error",`[VOD] \u8BF7\u6C42 ${n}(${r}) \u5931\u8D25:`,{message:s.message,name:s.name,stack:s.stack}),{serverName:n,list:[]}}}async getVodAnimesFromAllServersImpl(e,r){let n=r.map(i=>this.getVodAnimes(e,i.url,i.name));return(await Promise.allSettled(n)).filter(i=>i.status==="fulfilled").map(i=>i.value)}async getVodAnimesFromFastestServer(e,r,n=null,s=null){if(!r||r.length===0)return[];let i=r.map(l=>this.getVodAnimes(e,l.url,l.name)),a;try{a=await Promise.race(i)}catch(l){return _("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u76F4\u63A5\u629B\u9519",l),[]}let o=l=>!n||s!=="vod"?!0:(JSON.stringify(l)?.toLowerCase()||"").includes(String(n).toLowerCase());if(o(a)&&a&&a.list&&a.list.length>0)return _("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName}${s==="vod"?" \u5B57\u7B26\u4E32\u5305\u542B preferAnimeId \u2192 \u4F18\u5148\u4F7F\u7528":""}`),[a];_("info",`[VOD fastest mode] \u6700\u5FEB\u670D\u52A1\u5668 ${a.serverName} \u4E0D\u542B preferAnimeId\uFF0C\u7B49\u5F85\u5176\u4ED6\u670D\u52A1\u5668\u2026`);let c=await Promise.allSettled(i);if(n){for(let l of c)if(l.status==="fulfilled"&&o(l.value)&&l.value&&l.value.list&&l.value.list.length>0)return _("info",`[VOD fastest mode] \u627E\u5230\u5305\u542B preferAnimeId \u7684\u670D\u52A1\u5668: ${l.value.serverName}`),[l.value];_("info","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u90FD\u4E0D\u5305\u542B preferAnimeId\uFF0C\u56DE\u9000\u5230\u201C\u771F\u6B63\u6709\u6570\u636E\u201D\u7684\u6700\u5FEB\u670D\u52A1\u5668")}let u=c.filter(l=>l.status==="fulfilled").map(l=>l.value).filter(l=>l&&l.list&&l.list.length>0);if(u.length>0){let l=u[0];return _("info",`[VOD fastest mode] \u4F7F\u7528\u6700\u5FEB\u6709\u6570\u636E\u7684\u670D\u52A1\u5668: ${l.serverName}`),[l]}return _("error","[VOD fastest mode] \u6240\u6709\u670D\u52A1\u5668\u5747\u65E0\u6709\u6548\u6570\u636E"),[]}async search(e,r=null,n=null){return!O.vodServers||O.vodServers.length===0?[]:O.vodReturnMode==="fastest"?await this.getVodAnimesFromFastestServer(e,O.vodServers,r,n):await this.getVodAnimesFromAllServersImpl(e,O.vodServers)}async getEpisodes(e){}async handleAnimes(e,r,n,s,i=null,a=null){let o=[];if(!e||!Array.isArray(e))return _("error","[VOD] sourceAnimes is not a valid array"),[];let c=e.filter(d=>yt(d.vod_name,r,a)),u=a!==null?a:$t(r);if(u!==null){let d=c.filter(f=>{let p=Tt(f.vod_name).season;return p===u||u===1&&p===null});d.length>0&&(c=d,_("info",`[VOD] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=await Promise.all(c.map(async d=>{try{let f=d.vod_play_from.split("$$$");f=f.map(g=>g==="mgtv"?"imgo":g==="bilibili"?"bilibili1":g);let p=d.vod_play_url.split("$$$"),m=f.map((g,b)=>O.vodAllowedPlatforms.includes(g)?b:-1).filter(g=>g!==-1),h=[],A=0;for(let g of m){let b=f[g],y=p[g].split("#");for(let x of y){let v=x.split("$");A++,h.push({name:A.toString(),url:v[1],title:`\u3010${b}\u3011 ${v[0]}`})}}if(h.length>0){let g={animeId:Number(d.vod_id),bangumiId:String(d.vod_id),animeTitle:`${d.vod_name}(${d.vod_year})\u3010${d.type_name}\u3011from ${s}`,type:d.type_name,typeDescription:d.type_name,imageUrl:d.vod_pic,startDate:Pr(d.vod_year),episodeCount:h.length,rating:0,isFavorited:!0,source:"vod"};o.push(g),Lt({...g,links:h},i),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(f){_("error",`[VOD] Error processing anime: ${f.message}`)}}));return this.sortAndPushAnimesByYear(o,n),l}async getEpisodeDanmu(e){}formatComments(e){}};St();St();ar();Pt();async function rst(t){let e="https://m.douban.com/rexxar/api/v2",r={Referer:"https://m.douban.com/movie/","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"};O.doubanCookie&&(r.Cookie=O.doubanCookie);try{let n=await ge(`${e}${t}`,{method:"GET",headers:r});return n.status!=200?null:n}catch(n){return _("error","[Utils] [Douban] GET API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function nst(t,e={}){let r="https://api.douban.com/v2";try{let n=await Vr(`${r}${t}`,JSON.stringify({...e,apikey:"0ac44ae016490db2204ce0a042db2916"}),{method:"GET",headers:{Referer:"https://api.douban.com","Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return n.status!=200?null:n}catch(n){return _("error","[Utils] [Douban] POST API error:",{message:n.message,name:n.name,stack:n.stack}),null}}async function sst(t,e=20){let r=`/search?q=${t}&start=0&count=${e}&type=movie`;return await rst(r)}async function ist(t,e=20){return await nst("/movie/search",{q:t,start:0,count:e})}async function ast(t){let e=`/movie/${t}?for_mobile=1`;return await rst(e)}async function ost(t){let e=`/movie/imdb/${t}`;return await nst(e)}St();ar();async function cst(t){let e="https://api.imdbapi.dev";try{let r=await ge(`${e}${t}`,{method:"GET",headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return r.status!=200?null:r}catch(r){return _("error","[Utils] [IMDB] API error:",{message:r.message,name:r.name,stack:r.stack}),null}}async function ust(t){let e=`/titles/${t}/seasons`;return await cst(e)}async function lst(t,e){let r=`/titles/${t}/episodes?season=${e}`;return await cst(r)}var VT=class extends wt{constructor(e){super("BaseSource"),this.doubanSource=e}async _getDoubanInfo(e,r,n){if(!e)return;let s=await ost(e);if(!s||!s?.data)return;let i=s?.data?.id;if(i){let o=i.split("/").pop(),c=r==="movie"?"\u7535\u5F71":"\u7535\u89C6\u5267";o&&n.push({layout:"subject",target_id:o,type_name:c,target:{cover_url:s.data?.image,title:s.data?.alt_title}})}}async getDoubanIdByTmdbId(e,r){try{let n=[],i=(await ynt(e,r)).data?.imdb_id;if(!i)return[];if(e==="movie")await this._getDoubanInfo(i,e,n);else{let a=await ust(i);_("info","[TMDB] imdb seasons:",a.data.seasons);let o=(a?.data?.seasons??[]).map(async c=>{let u=i;_("info","[TMDB] imdb season:",c.season);try{Number(c.season)!==1&&(u=(await lst(i,c.season)).data?.episodes.find(d=>d.episodeNumber===1)?.id??""),await this._getDoubanInfo(u,e,n)}catch(l){_("error",`[TMDB] \u5904\u7406\u7B2C ${c.season} \u5B63\u5931\u8D25\uFF0C\u7EE7\u7EED\u6267\u884C\u5176\u4ED6\u5B63:`,l)}});await Promise.all(o)}return n}catch(n){return _("error","[TMDB] getTmdbIds error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async search(e){try{let n=(await ZB(e)).data,s=[],i=[];n?.results?.length>0&&(i=n.results.filter(c=>(c.name||c.title)===e)),_("info",`[TMDB] tmdb items.length: ${i.length}`);let a=i.map(async c=>{try{return await this.getDoubanIdByTmdbId(c.media_type,c.id)}catch(u){return _("error",`[TMDB] \u83B7\u53D6 TMDB ID ${c.id} \u7684\u8C46\u74E3 ID \u5931\u8D25\uFF0C\u7EE7\u7EED\u5904\u7406\u5176\u4ED6\u6761\u76EE:`,u),[]}}),o=await Promise.all(a);return s=[...s,...o.flat()],s}catch(r){return _("error","[TMDB] getTmdbAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){return this.doubanSource.handleAnimes(e,r,n,s,i)}async getEpisodeDanmu(e){}formatComments(e){}};St();hn();var zT=class extends wt{constructor(e,r,n,s,i){super("BaseSource"),this.tencentSource=e,this.iqiyiSource=r,this.youkuSource=n,this.bilibiliSource=s,this.miguSource=i}async search(e){try{let n=(await sst(e))?.data;if(!n||!n?.subjects?.items?.length&&!n?.smart_box?.length){_("info","[Douban] searchDoubanTitles failed or empty, trying searchDoubanTitlesByPublic");let a=(await ist(e))?.data;a?.subjects?.length>0&&(n={subjects:{items:a.subjects.map(o=>this.convertToOriginalFormat(o))}})}let s=[];return n?.subjects?.items?.length>0&&(s=[...s,...n.subjects.items]),n?.smart_box?.length>0&&(s=[...s,...n.smart_box]),_("info",`[Douban] douban animes.length: ${s.length}`),s}catch(r){return _("error","[Douban] getDoubanAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}convertToOriginalFormat(e){let n={movie:"\u7535\u5F71",tv:"\u7535\u89C6\u5267"}[e.subtype]||e.subtype,s=e.images?.large||e.images?.medium||e.images?.small||"",i="";if(s){let u=s.match(/\/(p\d+)\.jpg/);u&&u[1]&&(i=`https://qnmob3.doubanio.com/view/photo/large/public/${u[1]}.jpg?imageView2/0/q/80/w/9999/h/120/format/jpg`)}let a=e.directors?.map(u=>u.name).join(" ")||"",o=e.casts?.slice(0,3).map(u=>u.name).join(" ")||"",c=`${e.year} / ${e.genres?.join(" / ")||""} / ${a}${o?" / "+o:""}`;return{layout:"subject",type_name:n,target_id:String(e.id),target:{rating:{count:e.collect_count||0,max:e.rating?.max||10,star_count:e.rating?.stars?parseInt(e.rating.stars)/10:0,value:e.rating?.average||0},controversy_reason:"",title:e.title,abstract:"",has_linewatch:!1,uri:`douban://douban.com/${e.subtype==="movie"?"movie":"tv"}/${e.id}`,cover_url:i,year:String(e.year||""),card_subtitle:c,id:String(e.id),null_rating_reason:""},target_type:e.subtype==="movie"?"movie":"tv"}}async getEpisodes(e){}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Douban] sourceAnimes is not a valid array"),[];let o=e.filter(l=>{let d=l?.target?.title||"";return yt(d,r,i)}),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d?.target?.title||"",p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("info",`[Douban] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.allSettled(o.map(async l=>{try{if(l?.layout!=="subject")return;let d=l.target_id,f=l?.type_name;if(f!=="\u7535\u5F71"&&f!=="\u7535\u89C6\u5267")return;_("info","[Douban] doubanId: ",d,l?.target?.title,f);let p=await ast(d),m=[];for(let h of p.data?.vendors??[]){if(!h)continue;_("info","[Douban] vendor uri: ",h.uri),p.data?.genres.includes("\u771F\u4EBA\u79C0")?f="\u7EFC\u827A":p.data?.genres.includes("\u7EAA\u5F55\u7247")?f="\u7EAA\u5F55\u7247":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u6F2B":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")&&p.data?.countries.includes("\u65E5\u672C")?f="\u65E5\u756A":f==="\u7535\u89C6\u5267"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u6F2B":f==="\u7535\u5F71"&&p.data?.genres.includes("\u52A8\u753B")?f="\u52A8\u753B\u7535\u5F71":f==="\u7535\u5F71"&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u534E\u8BED\u7535\u5F71":f==="\u7535\u5F71"?f="\u5916\u8BED\u7535\u5F71":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>g.includes("\u4E2D\u56FD"))?f="\u56FD\u4EA7\u5267":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>["\u65E5\u672C","\u97E9\u56FD"].includes(g))?f="\u65E5\u97E9\u5267":f==="\u7535\u89C6\u5267"&&p.data?.countries.some(g=>["\u7F8E\u56FD","\u82F1\u56FD","\u52A0\u62FF\u5927","\u6CD5\u56FD","\u5FB7\u56FD","\u610F\u5927\u5229","\u897F\u73ED\u7259","\u6FB3\u5927\u5229\u4E9A"].includes(g))&&(f="\u6B27\u7F8E\u5267");let A=[{title:p.data?.title,year:p.data?.year,type:f,imageUrl:l?.target?.cover_url}];switch(h.id){case"qq":{let g=new URL(h.uri).searchParams.get("cid");g&&(A[0].provider="tencent",A[0].mediaId=g,await this.tencentSource.handleAnimes(A,p.data?.title,a,s,i));break}case"iqiyi":{let g=new URL(h.uri).searchParams.get("tvid");g&&(A[0].provider="iqiyi",A[0].mediaId=l?.type_name==="\u7535\u5F71"?`movie_${g}`:g,await this.iqiyiSource.handleAnimes(A,p.data?.title,a,s,i));break}case"youku":{let g=new URL(h.uri).searchParams.get("showid");g&&(A[0].provider="youku",A[0].mediaId=g,await this.youkuSource.handleAnimes(A,p.data?.title,a,s,i));break}case"bilibili":{let g=new URL(h.uri).pathname.split("/").pop();g&&(A[0].provider="bilibili",A[0].mediaId=`ss${g}`,await this.bilibiliSource.handleAnimes(A,p.data?.title,a,s,i));break}case"miguvideo":{let g=null,y=decodeURIComponent(h.uri).match(/"contentID":"([^"]+)"/);y&&y[1]&&(g=y[1]),g&&(A[0].provider="migu",A[0].mediaId=`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${g}/1`,await this.miguSource.handleAnimes(A,p.data?.title,a,s,i));break}}}return m}catch(d){return _("error",`[Douban] Error processing anime: ${d.message}`),[]}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){}formatComments(e){}};Pt();St();ar();Is();$n();hn();hs();var qf=null,KT=0,YT=0,zi={search:"WIN",detail:"TV",danmu:"TV"},JT=class extends wt{constructor(){super(),this.isBatchMode=!1}API_CONFIG={TV_SECRET_KEY:"cf65GPholnICgyw1xbrpA79XVkizOdMq",TV_HOST:"api.gorafie.com",TV_DANMU_HOST:"static-dm.qwdjapp.com",TV_VERSION:"1.2.2",TV_USER_AGENT:"okhttp/3.12.13",TV_CLIENT_TYPE:"android_qwtv_RRSP",TV_PKT:"rrmj",MAC_HOST:"api.cluuid.cn",MAC_DANMU_HOST:"static-dm.lequkeji.com",MAC_VERSION:"1.2.3",MAC_USER_AGENT:"%E4%BA%BA%E4%BA%BA%E8%A7%86%E9%A2%91%20for%20Mac/1.0 CFNetwork/3860.600.21 Darwin/25.5.0",MAC_CLIENT_TYPE:"mac_rrsp",WIN_HOST:"api.pleasfun.com",WIN_DANMU_HOST:"static-dm.lequkeji.com",WIN_VERSION:"1.24.2",WIN_USER_AGENT:"Boost.Beast/351",WIN_CLIENT_TYPE:"win_rrsp_gw",WEB_HOST:"api.rrmj.plus",WEB_DANMU_HOST:"static-dm.rrmj.plus"};generateRandomAliId(){let e="aY",r=24-e.length,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=e;for(let i=0;iMath.floor(Math.random()*16).toString(16)).join("").toUpperCase()}generateDeviceId(){return Math.random().toString(36).slice(2).toUpperCase()}rotateAliId(){let e=qf;qf=this.generateRandomAliId(),KT=0,YT=Math.floor(Math.random()*31)+30,e?_("info",`[Renren] AliID \u8F6E\u6362\u5B8C\u6210: ${e} -> ${qf}`):_("info",`[Renren] AliID \u521D\u59CB\u5316\u5B8C\u6210: ${qf}`),_("info",`[Renren] AliID \u4E0B\u6B21\u8F6E\u6362\u5C06\u5728 ${YT} \u6B21\u64CD\u4F5C\u540E\u89E6\u53D1`)}checkAndIncrementUsage(){qf||this.rotateAliId(),KT>=YT&&(_("info",`[Renren] AliID \u89E6\u53D1\u9608\u503C (${KT}/${YT})\uFF0C\u6B63\u5728\u8F6E\u6362 ID...`),this.rotateAliId()),KT++,_("info",`[Renren] AliID \u8BA1\u6570\u589E\u52A0: ${KT}/${YT} (\u5F53\u524DID: ...${qf.slice(-6)})`)}getAliId(){return qf||this.rotateAliId(),this.isBatchMode||this.checkAndIncrementUsage(),qf}generateTvHeaders(e,r){let n=this.getAliId();return{clientVersion:this.API_CONFIG.TV_VERSION,p:"Android",deviceid:"tWEtIN7JG2DTDkBBigvj6A%3D%3D",token:"",aliid:n,umid:"",clienttype:this.API_CONFIG.TV_CLIENT_TYPE,pkt:this.API_CONFIG.TV_PKT,t:e.toString(),sign:r,isAgree:"1",et:"2","Accept-Encoding":"gzip","User-Agent":this.API_CONFIG.TV_USER_AGENT}}buildMacHeaders(){return{aliId:this.generateMacAliId(),ct:this.API_CONFIG.MAC_CLIENT_TYPE,cv:this.API_CONFIG.MAC_VERSION,token:"",Accept:"*/*","Accept-Language":"zh-CN,zh-Hans;q=0.9","User-Agent":this.API_CONFIG.MAC_USER_AGENT}}buildWinHeaders(){return{aliId:this.generateWinAliId(),ct:this.API_CONFIG.WIN_CLIENT_TYPE,cv:this.API_CONFIG.WIN_VERSION,token:"","Content-Type":"application/json","User-Agent":this.API_CONFIG.WIN_USER_AGENT}}generateSignature(e,r,n,s,i,a,o,c){let u=`${e.toUpperCase()} aliId:${r} ct:${n} cv:${s} t:${i} -${a}?${o}`;return R8e(c,u)}buildSignedHeaders({method:e,url:r,params:n={},deviceId:s,token:i}){let a={client_type:"web_pc",client_version:"1.0.0",user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},o=S8e(r),c=EI(n),u=Date.now(),d=this.generateSignature(e,s,a.client_type,a.client_version,u,o,c,"ES513W0B1CsdUrR13Qk5EgDAKPeeKZY");return{clientVersion:a.client_version,deviceId:s,clientType:a.client_type,t:String(u),aliId:s,umid:s,token:i||"",cv:a.client_version,ct:a.client_type,uet:"9","x-ca-sign":d,Accept:"application/json","User-Agent":a.user_agent,Origin:a.origin,Referer:a.referer}}async fetchStandardDanmu(e,r,n){try{let s=await ge(e,{headers:r,timeout:5e3,validStatusCodes:[404]});if(s.status===404)return s.data&&s.data.error==="Document not found"?[]:(_("info",`[Renren] ${n} \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548`),null);if(!s.data)return null;let i=s.data;return Array.isArray(i)?i:i&&i.data&&Array.isArray(i.data)?i.data:[]}catch(s){return _("info",`[Renren] ${n} \u7AEF\u5F39\u5E55\u62C9\u53D6\u5F02\u5E38: ${s.message}`),null}}async renrenHttpGet(e,{params:r={},headers:n={},validStatusCodes:s=[]}={}){let i=lb(e,r);return await ge(i,{headers:n,timeout:5e3,validStatusCodes:s})}async renrenRequest(e,r,n={}){let s=this.generateDeviceId(),i=this.buildSignedHeaders({method:e,url:r,params:n,deviceId:s});return await ge(r+"?"+EI(n),{headers:i,timeout:5e3})}async searchAppContent(e,r=30){try{let n=Date.now(),s="/qwtv/search",i={searchWord:e,num:r,searchNext:"",well:"match"},a=CI(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p==null?"":String(p))}`).join("&"),c=this.generateTvHeaders(n,a),u=`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,l=await ge(u,{headers:c,timeout:5e3});return!l.data||l.data.code!=="0000"?(_("info",`[Renren] TV\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${l?.data?.code}, msg=${l?.data?.msg}`),null):(l.data.data||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:null,currentEpisodeIndex:null}})}catch(n){return _("info","[Renren] searchAppContent error:",n.message),null}}async performMacSearch(e,r=20){try{let n="/search/v5/season",s={keywords:e,order:"match",search_after:"",size:r},i=this.buildMacHeaders(),a=EI(s),o=`https://${this.API_CONFIG.MAC_HOST}${n}?${a}`,c=await ge(o,{headers:i,timeout:5e3});return!c.data||c.data.code!=="0000"?(_("info",`[Renren] Mac\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${c?.data?.code}`),null):(c.data.data||[]).map(l=>{let d=[];if(l.highlights&&(l.highlights.alias&&(d=l.highlights.alias.split(",").map(f=>f.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),l.highlights.original_name)){let f=l.highlights.original_name.replace(/<[^>]+>/g,"").trim();f&&!d.includes(f)&&d.push(f)}return{provider:"renren",mediaId:String(l.id),title:String(l.title||l.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:d,type:l.classify||l.cat||"Renren",season:null,year:l.year||null,imageUrl:l.cover||l.cover3||"",episodeCount:null,currentEpisodeIndex:null}})}catch(n){return _("info","[Renren] performMacSearch error:",n.message),null}}async performWinSearch(e,r=30){try{let n=`https://${this.API_CONFIG.WIN_HOST}/search/comprehensive/precise-mixed`,i=EI({keywords:e,searchAfter:"",size:r}),a=this.buildWinHeaders(),o=await ge(`${n}?${i}`,{headers:a,timeout:5e3});if(!o.data||o.data.code!=="0000")return _("info",`[Renren] Win\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${o?.data?.code}`),null;let c=o.data.data||{},u=[],l=c.seasonList||[],d=c.fuzzySeasonList||[],f=c.seriesList||[],p=m=>{let h=[];if(m.highlights&&(m.highlights.alias&&(h=m.highlights.alias.split(",").map(A=>A.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),m.highlights.original_name)){let A=m.highlights.original_name.replace(/<[^>]+>/g,"").trim();A&&!h.includes(A)&&h.push(A)}return{provider:"renren",mediaId:String(m.id),title:String(m.title||m.alias||m.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:h,type:m.classify||m.cat||"Renren",season:null,year:m.year||null,imageUrl:m.cover||m.coverUrl,episodeCount:null,currentEpisodeIndex:null}};return l.forEach(m=>u.push(p(m))),d.forEach(m=>u.push(p(m))),f.forEach(m=>{m.seasonList&&Array.isArray(m.seasonList)&&m.seasonList.forEach(h=>{u.push(p(h))})}),u}catch(n){return _("info","[Renren] performWinSearch error:",n.message),null}}async performNetworkSearch(e,{lockRef:r=null,lastRequestTimeRef:n={value:0},minInterval:s=500}={}){try{let i=`https://${this.API_CONFIG.WEB_HOST}/m-station/search/drama`,a={keywords:e,size:20,order:"match",search_after:"",isExecuteVipActivity:!0};if(r){for(;r.value;)await new Promise(f=>setTimeout(f,50));r.value=!0}let c=Date.now()-n.value;csetTimeout(f,s-c));let u=await this.renrenRequest("GET",i,a);return n.value=Date.now(),r&&(r.value=!1),u.data?(II(u.data)?.data?.searchDramaList||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:f.episodeTotal,currentEpisodeIndex:null}}):(_("info","[Renren] \u7F51\u9875\u7248\u641C\u7D22\u65E0\u54CD\u5E94\u6570\u636E"),null)}catch(i){return _("info","[Renren] performNetworkSearch error:",i.message),null}}async search(e){_("info",`[Renren] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=[],n=!1,s=["WIN","TV","MAC","WEB"],i=s.indexOf(Vi.search);i===-1&&(i=0);for(let a=i;a ${o}`),Vi.search=o);break}else _("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38\u6216\u8BF7\u6C42\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){_("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return n||(_("info","[Renren] \u641C\u7D22\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5F02\u5E38\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 WIN \u7AEF"),Vi.search="WIN"),r}async getAppDramaDetail(e,r=""){try{let n=Date.now(),s="/qwtv/drama/details",i={isAgeLimit:"false",seriesId:String(e),episodeId:String(r),clarity:"HD",caption:"0",hevcOpen:"1"},a=CI(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p)}`).join("&"),c=this.generateTvHeaders(n,a),u=await ge(`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,{headers:c,timeout:5e3});if(!u||!u.data)return _("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A: ID=${e}`),null;let l=u.data,d=l.msg||l.message||"";return d.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(_("info",`[Renren] TV\u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):l.code!=="0000"?(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${l.code}, msg=${d} (ID=${e})`),null):!l.data||!l.data.episodeList||l.data.episodeList.length===0?l.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),l.data.episodeList||(l.data.episodeList=[]),l.data):(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (ID=${e})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(_("info",`[Renren] TV\u7AEF\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${l.data.episodeList.length}`),l.data)}catch(n){return _("info","[Renren] getAppDramaDetail error:",n.message),null}}async getGatewayDramaDetail(e,r,n=""){try{let s=Date.now(),i="/qwtv/drama/details",a={isAgeLimit:"false",seriesId:String(r),episodeId:String(n),clarity:"HD",caption:"0",hevcOpen:"1"},o=CI(i,s,a,this.API_CONFIG.TV_SECRET_KEY),c=Object.entries(a).map(([m,h])=>`${m}=${encodeURIComponent(h)}`).join("&"),u=this.generateTvHeaders(s,o),l=`https://${e}${i}?${c}`,d=await ge(l,{headers:u,timeout:5e3});if(!d||!d.data)return _("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A (${e}): ID=${r}`),null;let f=d.data,p=f.msg||f.message||"";return p.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(_("info",`[Renren] \u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):f.code!=="0000"?(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${f.code}, msg=${p} (${e}) (ID=${r})`),null):!f.data||!f.data.episodeList||f.data.episodeList.length===0?f.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),f.data.episodeList||(f.data.episodeList=[]),f.data):(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (${e}) (ID=${r})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(_("info",`[Renren] \u8DE8\u534F\u8BAE\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F (${e}): ID=${r}, \u5305\u542B\u96C6\u6570=${f.data.episodeList.length}`),f.data)}catch(s){return _("info",`[Renren] getGatewayDramaDetail error (${e}):`,s.message),null}}async getWebDramaDetailFallback(e){let r=`https://${this.API_CONFIG.WEB_HOST}/m-station/drama/page`,n={hsdrOpen:0,isAgeLimit:0,dramaId:String(e),hevcOpen:1};try{let s=await this.renrenRequest("GET",r,n);if(!s.data)return null;let i=II(s.data);return i&&i.data&&i.data.episodeList&&i.data.episodeList.length>0?(_("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${i.data.episodeList.length}`),i.data):null}catch(s){return _("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u8BF7\u6C42\u5931\u8D25: ${s.message}`),null}}async getDetail(e,r=""){let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(Vi.detail);i===-1&&(i=0);for(let a=i;a ${o}`),Vi.detail=o),n;_("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5931\u8D25\u6216\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){_("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return _("info","[Renren] \u8BE6\u60C5\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),Vi.detail="TV",null}async getEpisodes(e){let r=await this.getDetail(e);if(!r)return _("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: \u8BE6\u60C5\u5BF9\u8C61\u4E3A\u7A7A ID=${e}`),[];if(!r.episodeList||!Array.isArray(r.episodeList))return _("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: episodeList \u5B57\u6BB5\u7F3A\u5931\u6216\u975E\u6570\u7EC4 ID=${e}`),[];let n=[],s=String(e);r.episodeList.forEach((a,o)=>{let c=String(a.sid||"").trim();if(!c)return;let u=a.title?String(a.title):`\u7B2C${String(a.episodeNo||o+1).padStart(2,"0")}\u96C6`,l=`${s}-${c}`;n.push({sid:l,order:a.episodeNo||o+1,title:u})});let i=n.map(a=>({provider:"renren",episodeId:a.sid,title:a.title,episodeIndex:a.order,url:null}));if(r.dramaInfo&&(r.dramaInfo.enName&&(i.enName=r.dramaInfo.enName),r.dramaInfo.year&&(i.year=r.dramaInfo.year),r.dramaInfo.dramaType)){let a=r.dramaInfo.dramaType,o=r.dramaInfo.plotType||"";a==="TV"?a="\u7535\u89C6\u5267":a==="MOVIE"?o.includes("\u52A8\u753B")?a="\u5267\u573A\u7248":a="\u7535\u5F71":a==="COMIC"?a="\u52A8\u753B":a==="VARIETY"?a="\u7EFC\u827A":a==="DOCUMENTARY"&&(a="\u7EAA\u5F55\u7247"),i.type=a}return i}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("info","[Renren] sourceAnimes is not a valid array"),[];let o=e.filter(d=>yt(d.title,r,i)?!0:d.aliases&&Array.isArray(d.aliases)?d.aliases.some(f=>yt(f,r,i)):!1),c=i!==null?i:Wt(r);if(c!==null){let d=o.filter(f=>{let p=Ct(f.title).season;return p===c||c===1&&p===null});d.length>0&&(o=d,_("info",`[Renren] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l={TV:"TV",MAC:"Mac",WIN:"Win",WEB:"\u7F51\u9875"}[Vi.search]||"\u672A\u77E5";_("info",`[Renren] ${l}\u7AEF\u641C\u7D22\u63D0\u53D6\u7ED3\u679C\u6570\u91CF: ${e.length} \u6709\u6548\u7ED3\u679C\u6570\u91CF\uFF1A${o.length}`),this.isBatchMode=!0;try{await Promise.all(o.map(async d=>{try{let f=await this.getEpisodes(d.mediaId),p=[];for(let m of f)p.push({name:m.episodeIndex.toString(),url:m.episodeId,title:`\u3010${m.provider}\u3011 ${m.title}`});if(p.length>0){let m=d.aliases||[];f.enName&&!m.includes(f.enName)&&m.push(f.enName);let h=f.year||d.year||"",A=f.type||(d.type&&d.type!=="Renren"?d.type:"Renren"),g={animeId:Number(d.mediaId),bangumiId:String(d.mediaId),animeTitle:`${d.title}(${h})\u3010${A}\u3011from renren`,aliases:m,type:A,typeDescription:A,imageUrl:d.imageUrl,startDate:Or(h),episodeCount:p.length,rating:0,isFavorited:!0,source:"renren"};a.push(g),Dt({...g,links:p},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(f){_("info",`[Renren] Error processing anime: ${f.message}`)}}))}finally{this.isBatchMode=!1,this.checkAndIncrementUsage()}return this.sortAndPushAnimesByYear(a,n),a}async getAppDanmu(e){try{let r=Date.now(),n=e;String(e).includes("-")&&(n=String(e).split("-")[1]);let s=`/v1/produce/danmu/EPISODE/${n}`,a=CI(s,r,{},this.API_CONFIG.TV_SECRET_KEY),o=this.generateTvHeaders(r,a),c=`https://${this.API_CONFIG.TV_DANMU_HOST}${s}`,u=await ge(c,{headers:o,timeout:5e3,validStatusCodes:[404]});if(u.status===404)return u.data&&u.data.error==="Document not found"?[]:(_("info","[Renren] TV \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!u.data)return null;let l=II(u.data);return Array.isArray(l)?l:l&&l.data&&Array.isArray(l.data)?l.data:[]}catch(r){return _("info","[Renren] getAppDanmu error:",r.message),null}}async getMacDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,n=`https://${this.API_CONFIG.MAC_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.MAC_USER_AGENT,Accept:"*/*"};return this.fetchStandardDanmu(n,s,"MAC")}async getWinDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,n=`https://${this.API_CONFIG.WIN_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.WIN_USER_AGENT};return this.fetchStandardDanmu(n,s,"WIN")}async getWebDanmuFallback(e){let r=e;String(e).includes("-")&&(r=String(e).split("-")[1]);let n={user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},s=`https://${this.API_CONFIG.WEB_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,i={Accept:"application/json","User-Agent":n.user_agent,Origin:n.origin,Referer:n.referer};try{let a=await this.renrenHttpGet(s,{headers:i,validStatusCodes:[404]});if(a.status===404)return a.data&&a.data.error==="Document not found"?[]:(_("info","[Renren] WEB \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!a.data)return null;let o=II(a.data),c=[];return Array.isArray(o)?c=o:o?.data&&Array.isArray(o.data)&&(c=o.data),c}catch(a){return _("info",`[Renren] \u7F51\u9875\u7248\u5F39\u5E55\u964D\u7EA7\u5931\u8D25: ${a.message}`),null}}async getEpisodeDanmu(e){let r=0;if(String(e).includes("-")){let[o,c]=String(e).split("-"),u=await this.getDetail(o,c);if(u&&u.watchInfo){let l=u.watchInfo.m3u8||u.watchInfo.tria4kPlayInfo||{},d=parseInt(l.startingLength)||0,f=parseInt(l.openingLength)||0;r=d>0?d:f>0?f:0}}let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(Vi.danmu);i===-1&&(i=0);for(let o=i;o ${c}`),Vi.danmu=c),n.length>0?_("info",`[Renren] \u6210\u529F\u83B7\u53D6 ${n.length} \u6761\u5F39\u5E55 (${c}\u7AEF)`):_("info",`[Renren] \u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55 (${c}\u7AEF)`),n.adDurationMs=r,n.episodeId=e,n;_("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(u){_("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${u.message}`)}}_("info","[Renren] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),Vi.danmu="TV";let a=[];return a.adDurationMs=r,a.episodeId=e,a}async getEpisodeDanmuSegments(e){return new St({type:"renren",segmentList:[{type:"renren",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}parseRRSPPFields(e){let r=String(e).split(","),n=(l,d,f)=>{if(l==null||l==="")return f;let p=d(l);return isNaN(p)?f:p},s=n(r[0],parseFloat,0),i=n(r[1],l=>parseInt(l,10),1),a=n(r[2],l=>parseInt(l,10),25),o=n(r[3],l=>parseInt(l,10),16777215),c=r[6]||"",u=r[7]||`${s}:${c}`;return{timestamp:s,mode:i,size:a,color:o,userId:c,contentId:u}}formatComments(e){let r=e.adDurationMs||0,n=e.episodeId||"\u672A\u77E5",s=r/1e3,i=0,a=e.map(o=>{let c=String(o.d||"");if(!c&&o.content&&(c=String(o.content)),!c)return null;if(o.p){let u=this.parseRRSPPFields(o.p),l=u.timestamp-s;return l<0?(i++,null):{cid:Number(u.contentId)||0,p:`${l.toFixed(2)},${u.mode},${u.color},[renren]`,m:c,t:l}}return null}).filter(Boolean);return r>0&&_("info",`[Renren] \u8BC6\u522B\u5230\u524D\u7F6E\u5E7F\u544A(${r}ms)\uFF0C\u5DF2\u81EA\u52A8\u504F\u79FB\u65F6\u95F4\u8F74\u3002\u6210\u529F\u8F6C\u6362 ${a.length} \u6761\uFF0C\u5254\u9664\u65E0\u6548\u5F39\u5E55 ${i} \u6761 (ID=${n})`),a}};Ot();_t();ir();Ts();$n();hn();hs();var fmr={1:"\u97E9\u5267",2:"\u7EFC\u827A",3:"\u7535\u5F71",4:"\u65E5\u5267",5:"\u7F8E\u5267",6:"\u6CF0\u5267",7:"\u56FD\u4EA7\u5267"},Cg=1e8,ost=6e4,As=Object.freeze({HXQ:"hxq",TV:"tv",MERGED:"merged"}),YT=class extends Tt{constructor(){super(),this.appHost="https://hxqapi.hiyun.tv",this.tvHost="https://api.xiawen.tv",this.fallbackDanmuHost="https://hxqapi.zmdcq.com",this.danmuHosts=Array.from(new Set([this.appHost,this.fallbackDanmuHost])),this.defaultRefer="2JGztvGjRVpkxcr0T4ZWG2k+tOlnHmDGUNMwAGSeq548YV2FMbs0h0bXNi6DJ00L",this.danmuUserAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",this.appUserAgent="HanjuTV/6.8.2 (Redmi Note 12; Android 14; Scale/2.00)",this._mobileMakeHeaders=null,this._tvMakeHeaders=null,this._mobileWarmupPromise=null,this._mobileWarmupAttempted=!1}getDanmuHeaders(){return{"Content-Type":"application/json","User-Agent":this.danmuUserAgent}}getAppHeaders(){return{vc:"a_8280",vn:"6.8.2",ch:"xiaomi",app:"hj","User-Agent":this.appUserAgent,"Accept-Encoding":"gzip"}}getCategory(e){return fmr[e]||"\u5176\u4ED6"}async buildTvHeaders(){return this._tvMakeHeaders||(this._tvMakeHeaders=await Vnt(Date.now())),this._tvMakeHeaders(Date.now())}async buildMobileHeaders(){return this._mobileMakeHeaders||(this._mobileMakeHeaders=await Knt(Date.now())),this._mobileMakeHeaders(Date.now())}async tvGet(e,r={}){let n=await this.buildTvHeaders(),s=await ge(`${this.tvHost}${e}`,{headers:n.headers,timeout:1e4,retries:1,...r});return wie(s?.data,n.uid)}logError(e,r){_("error",`[Hanjutv] ${e}:`,{message:r.message,name:r.name,stack:r.stack})}attachDanmuSourceLabel(e=[],r=""){let n=s4(r);return Array.isArray(e)?e.map(s=>({...s,_sourceLabel:n})):[]}async tryGet(e,r,n){try{return await e()}catch(s){return n&&_("warn",`${n}: ${s.message}`),r}}normalizeSearchItems(e=[]){return Array.isArray(e)?e.map(r=>{if(!r||typeof r!="object")return null;let n=r.sid||r.seriesId||r.id||r.series_id,s=r.name||r.title||r.seriesName||r.showName;if(!n||!s)return null;let i=typeof r.image=="object"&&r.image!==null?r.image:{},a=i.thumb||i.poster||i.url||r.thumb||r.poster||"";return{...r,sid:String(n),name:String(s),image:{...i,thumb:a}}}).filter(Boolean):[]}normalizeEpisodes(e=[]){return Array.isArray(e)?e.map((r,n)=>{if(!r||typeof r!="object")return null;let s=r.pid||r.eid||r.id||r.programId||r.episodeId;if(!s)return null;let i=r.serialNo??r.serial_no??r.sort??r.sortNo??r.num??r.episodeNo??n+1,a=Number(i),o=r.pid||r.programId||r.episodeId||r.id||"",c=r.eid||r.id||r.episodeId||"";return{...r,episodeId:String(s),pid:o?String(o):"",eid:c?String(c):"",serialNo:Number.isFinite(a)&&a>0?a:n+1,title:r.title||r.name||r.programName||r.episodeTitle||""}}).filter(Boolean).sort((r,n)=>r.serialNo-n.serialNo):[]}normalizeHxqEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.pid).map(r=>({...r,pid:String(r.pid)}))}normalizeTvEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.eid||r.episodeId).map(r=>({...r,eid:String(r.eid||r.episodeId)}))}extractSearchItems(e){let r=e?.seriesData?.seriesList||e?.seriesList||e?.seriesData?.series||[];return this.normalizeSearchItems(r)}dedupeBySid(e=[]){let r=new Map;for(let n of e){if(!n?.sid)continue;let s=String(n.sid);r.has(s)||r.set(s,n)}return Array.from(r.values())}isMergeableSearchPair(e,r,n=""){return!e?.name||!r?.name||n&&(!yt(e.name,n)||!yt(r.name,n))?!1:yt(e.name,r.name)&&yt(r.name,e.name)}buildSearchCandidate(e,r,n=""){if(!e?.sid)return null;let s=String(e.sid),i=String(n||"").trim(),a=r===As.MERGED?Yr(`hxq:${s}|tv:${i}`):Yr(s);return{...e,animeId:a,_variant:r,...i?{tvSid:i}:{}}}mergeSearchCandidates(e,r=[],n=[]){let s=this.dedupeBySid(r),i=this.dedupeBySid(n),a=p=>{let m=[],h=[];for(let A of p)(yt(A?.name||"",e)?m:h).push(A);return{matched:m,unmatched:h}},o=a(s),c=a(i),u=o.matched.length+c.matched.length>0,l=[],d=new Set;for(let p of o.matched){let m=c.matched.find(h=>!d.has(String(h.sid))&&this.isMergeableSearchPair(p,h,e));m?(d.add(String(m.sid)),l.push(this.buildSearchCandidate(p,As.MERGED,m.sid))):l.push(this.buildSearchCandidate(p,As.HXQ))}c.matched.filter(p=>!d.has(String(p.sid))).forEach(p=>{l.push(this.buildSearchCandidate(p,As.TV))}),u?l.push(...o.unmatched.map(p=>this.buildSearchCandidate(p,As.HXQ)).filter(Boolean),...c.unmatched.map(p=>this.buildSearchCandidate(p,As.TV)).filter(Boolean)):l.push(...s.map(p=>this.buildSearchCandidate(p,As.HXQ)).filter(Boolean),...i.map(p=>this.buildSearchCandidate(p,As.TV)).filter(Boolean));let f=p=>p.map(m=>m.name);return{resultList:l,stats:{s5Total:s.length,s5Matched:o.matched.length,tvTotal:i.length,tvMatched:c.matched.length,mergedCount:u?l.filter(p=>p?._variant===As.MERGED).length:0,s5MatchedList:f(o.matched),s5UnmatchedList:f(o.unmatched),tvMatchedList:f(c.matched),tvUnmatchedList:f(c.unmatched)}}}async extractFromPayload(e,r,n){if(!e||typeof e!="object")throw new Error(`${n} \u54CD\u5E94\u4E3A\u7A7A`);if(typeof e.data=="string"&&e.data.length>0){let i;try{i=await wie(e,r)}catch(o){throw new Error(`${n} \u54CD\u5E94\u89E3\u5BC6\u5931\u8D25: ${o.message}`)}let a=this.extractSearchItems(i);if(a.length===0)throw new Error(`${n} \u89E3\u5BC6\u540E\u65E0\u6709\u6548\u7ED3\u679C`);return a}let s=this.extractSearchItems(e);if(s.length===0)throw new Error(`${n} \u65E0\u6709\u6548\u7ED3\u679C`);return s}async warmupMobileIdentity(e){try{await ge(`${this.appHost}/api/common/configs`,{headers:e,timeout:8e3,retries:0})}catch{}}async ensureMobileIdentityWarmed(){if(this._mobileWarmupAttempted){await this._mobileWarmupPromise;return}this._mobileWarmupAttempted=!0,this._mobileWarmupPromise=(async()=>{let e=await this.buildMobileHeaders();await this.warmupMobileIdentity(e.headers)})(),await this._mobileWarmupPromise}async searchWithS5Api(e){await this.ensureMobileIdentityWarmed();let{uid:r,headers:n}=await this.buildMobileHeaders(),s=encodeURIComponent(e),i=await ge(`https://hxqapi.hiyun.tv/api/search/s5?k=${s}&srefer=search_input&type=0&page=1`,{headers:n,timeout:1e4,retries:1});return this.extractFromPayload(i?.data,r,"s5")}async searchWithTvApi(e){let r=encodeURIComponent(e),n=await this.buildTvHeaders(),s=await ge(`https://api.xiawen.tv/api/v1/aggregate/search?key=${r}&scope=101&page=1`,{headers:n.headers,timeout:1e4,retries:1});return this.extractFromPayload(s?.data,n.uid,"tv")}async search(e){try{let r=String(e||"").trim();if(!r)return[];let[n,s]=await Promise.all([this.tryGet(()=>this.searchWithS5Api(r),[],"[Hanjutv] s5 \u641C\u7D22\u5931\u8D25"),this.tryGet(()=>this.searchWithTvApi(r),[],"[Hanjutv] TV \u641C\u7D22\u5931\u8D25")]),{resultList:i,stats:a}=this.mergeSearchCandidates(r,n,s),o=a.s5Matched+a.tvMatched;return i.length>0&&o===0?(_("warn",`[Hanjutv] \u6240\u6709\u5019\u9009\u5747\u672A\u547D\u4E2D\u5173\u952E\u8BCD\uFF0C\u4E22\u5F03\u7591\u4F3C\u63A8\u8350\u6D41\u7ED3\u679C: ${r}`),[]):i.length===0?(_("info","[Hanjutv] hanjutvSearchresp: s5 \u4E0E TV \u63A5\u53E3\u5747\u65E0\u6709\u6548\u7ED3\u679C"),[]):(_("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5MatchedList=${JSON.stringify(a.s5MatchedList)}, s5UnmatchedList=${JSON.stringify(a.s5UnmatchedList)}, tvMatchedList=${JSON.stringify(a.tvMatchedList)}, tvUnmatchedList=${JSON.stringify(a.tvUnmatchedList)}`),_("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5=${a.s5Total}(\u547D\u4E2D${a.s5Matched}), tv=${a.tvTotal}(\u547D\u4E2D${a.tvMatched}), merged=${a.mergedCount}`),_("info",`[Hanjutv] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i.filter(Boolean))}catch(r){return this.logError("getHanjutvAnimes error",r),[]}}async getSeriesDetail(e,r,n,s){try{let i=String(e||"").trim();if(!i)return null;let a=await this.tryGet(()=>r(i),null,s);return a||(_("info",`[Hanjutv] ${n}: series \u4E0D\u5B58\u5728`),null)}catch(i){return this.logError(s,i),null}}async getHxqDetail(e){return this.getSeriesDetail(e,async r=>(await ge(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data?.series??null,"getHanjutvHxqDetail","getHanjutvHxqDetail error")}async getTvDetail(e){return this.getSeriesDetail(e,async r=>(await this.tvGet(`/api/v1/series/detail/query?sid=${r}`))?.series??null,"getHanjutvTvDetail","getHanjutvTvDetail error")}async getHxqEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=[async()=>{let i=await ge(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1});return this.normalizeHxqEpisodes(Array.isArray(i?.data?.playItems)?i.data.playItems:[])},async()=>{let a=(await ge(`${this.appHost}/api/series2/episodes?sid=${r}&refer=${encodeURIComponent(this.defaultRefer)}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes(a?.programs||a?.episodes||a?.qxkPrograms||[])},async()=>{let a=(await ge(`${this.appHost}/api/series/programs_v2?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes([...Array.isArray(a?.programs)?a.programs:[],...Array.isArray(a?.qxkPrograms)?a.qxkPrograms:[]])}],s=[];for(let i of n){if(s.length>0)break;s=await this.tryGet(i,[])}return s.length===0?(_("info","[Hanjutv] getHanjutvHxqEpisodes: episodes \u4E0D\u5B58\u5728"),[]):s.sort((i,a)=>i.serialNo-a.serialNo)}catch(r){return this.logError("getHanjutvHxqEpisodes error",r),[]}}async getTvEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=await this.tryGet(async()=>{let s=await this.tvGet(`/api/v1/series/detail/query?sid=${r}`);return this.normalizeTvEpisodes(s?.episodes||[])},[],"getHanjutvTvEpisodes error");return n.length===0?(_("info","[Hanjutv] getHanjutvTvEpisodes: episodes \u4E0D\u5B58\u5728"),[]):n.sort((s,i)=>s.serialNo-i.serialNo)}catch(r){return this.logError("getHanjutvTvEpisodes error",r),[]}}resolveAnimeYear(e,...r){let n=[e?.updateTime,e?.publishTime,...r.map(s=>s?.updateTime),...r.map(s=>s?.publishTime)];for(let s of n){if(!s)continue;let a=new Date(s).getFullYear();if(Number.isFinite(a)&&a>1900)return a}return new Date().getFullYear()}buildEpisodeTitle(e,r=""){let n=String(r||"").trim();return n?`\u7B2C${e}\u96C6\uFF1A${n}`:`\u7B2C${e}\u96C6`}buildEpisodeLink(e,r){let n=e?.serialNo??r?.serialNo??1,s=this.buildEpisodeTitle(n,e?.title||r?.title||""),i="";if(e?.pid&&r?.eid){let a=Ynt(e.pid,r.eid);i=a?`hanjutv:${a}`:""}else e?.pid?i=`hxq:${e.pid}`:r?.eid&&(i=`tv:${r.eid}`);return i?{name:s,url:i,title:`\u3010hanjutv\u3011 ${s}`}:null}mergeVariantEpisodes(e=[],r=[]){let n=new Map(e.map(a=>[Number(a.serialNo),a])),s=new Map(r.map(a=>[Number(a.serialNo),a]));return Array.from(new Set([...n.keys(),...s.keys()])).filter(Number.isFinite).sort((a,o)=>a-o).map(a=>this.buildEpisodeLink(n.get(a),s.get(a))).filter(Boolean)}buildAnimeSummary(e,r,n,s){let i=this.getCategory(r?.category??e?.category),a=this.resolveAnimeYear(e,r);return{animeId:s,bangumiId:String(s),animeTitle:`${e.name}(${a})\u3010${i}\u3011from hanjutv`,type:i,typeDescription:i,imageUrl:e?.image?.thumb||"",startDate:Or(a),episodeCount:n.length,rating:Number(r?.rank??0),isFavorited:!0,source:"hanjutv"}}async getHxqBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getHxqDetail(e),this.getHxqEpisodes(e)]);return{detail:r,episodes:n}}async getTvBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getTvDetail(e),this.getTvEpisodes(e)]);return{detail:r,episodes:n}}async buildAnimePayload(e){let r=e?._variant||As.HXQ,n=String(e?.sid||"").trim(),s=String(e?.tvSid||"").trim(),i=s||(r===As.TV?n:""),a=Number(e?.animeId),o=r===As.MERGED&&n&&s?Number.isFinite(a)&&a>0?a:Yr(`hxq:${n}|tv:${s}`):null,c=(r===As.HXQ||r===As.MERGED)&&n,u=(r===As.TV||r===As.MERGED)&&i,[l,d]=await Promise.all([c?this.getHxqBundle(n):Promise.resolve({detail:null,episodes:[]}),u?this.getTvBundle(i):Promise.resolve({detail:null,episodes:[]})]);if(r===As.MERGED&&n&&s){let f=this.mergeVariantEpisodes(l.episodes,d.episodes);if(f.length>0){let p=l.detail?.category?l.detail:d.detail?.category?d.detail:l.detail||d.detail;return{summary:this.buildAnimeSummary(e,p,f,o),links:f}}}if((r===As.HXQ||r===As.MERGED)&&n){let f=l.episodes.map(p=>this.buildEpisodeLink(p,null)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,l.detail,f,o??Yr(n)),links:f}}if((r===As.TV||r===As.MERGED)&&i){let f=d.episodes.map(p=>this.buildEpisodeLink(null,p)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,d.detail,f,o??Yr(i)),links:f}}return null}async handleAnimes(e,r,n,s=null,i=null){if(!Array.isArray(e))return _("error","[Hanjutv] sourceAnimes is not a valid array"),[];let a=[],o=e.filter(u=>yt(u.name,r,i)),c=i!==null?i:Wt(r);if(c!==null){let u=o.filter(l=>{let d=Ct(l.name).season;return d===c||c===1&&d===null});u.length>0&&(o=u,_("info",`[Hanjutv] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}return await Promise.all(o.map(async u=>{try{let l=await this.buildAnimePayload(u);if(!l||!l.summary||!Array.isArray(l.links)||l.links.length===0)return;a.push(l.summary),Dt({...l.summary,links:l.links},s),O.animes.length>O.MAX_ANIMES&&$t()}catch(l){_("error",`[Hanjutv] Error processing anime: ${l.message}`)}})),this.sortAndPushAnimesByYear(a,n),a}async fetchEpisodeDanmuByRef(e){let r=String(e?.id||"").trim();if(!r)return[];let n=[];if(!e.preferTv){let s=this.getDanmuHeaders();for(let i of this.danmuHosts){let a=[];try{let o=0,c=0,u=ost,l=0,d=240;for(;c0&&a.push(...p);let m=Number(f?.data?.more??0)===1||f?.data?.more===!0||f?.data?.more==="1",h=Number(f?.data?.nextAxis??Cg),A=Number(f?.data?.lastId??o);if(!Number.isFinite(h)||h<=c||h>=Cg)break;if(Number.isFinite(A)&&A>o&&(o=A),c=h,!m){if(p.length===0)break;u=c+ost}}if(a.length>0){n=a;break}}catch(o){if(this.logError(`fetchHanjutvEpisodeDanmu(\u97E9\u5C0F\u5708\u5F39\u5E55:${i})`,o),a.length>0){n=a;break}}}}if(n.length===0){let s=0,i=0,a=0,o=120;for(;i0&&n.push(...u);let l=Number(c.more??0)===1||c.more===!0||c.more==="1",d=Number(c.nextAxis??Cg),f=Number(c.lastId??s);if(!Number.isFinite(d)||d<=i||d>=Cg||(Number.isFinite(f)&&f>s&&(s=f),i=d,l||(s=0),u.length===0&&!l))break}catch(c){this.logError("fetchHanjutvEpisodeDanmu(TV\u7AEF)",c);break}}return n}async getEpisodeDanmu(e){let r=Jnt(e),n=Array.isArray(r?.refs)?r.refs.filter(i=>i?.id):[];if(n.length===0)return[];if(n.length===1){let i=await this.fetchEpisodeDanmuByRef(n[0]);return this.attachDanmuSourceLabel(i,n[0].rawId)}return(await Promise.all(n.map(async i=>{let a=await this.fetchEpisodeDanmuByRef(i);return this.attachDanmuSourceLabel(a,i.rawId)}))).flat()}async getEpisodeDanmuSegments(e){return _("info","[Hanjutv] \u83B7\u53D6\u97E9\u5267TV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"hanjutv",duration:0,segmentList:[{type:"hanjutv",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>({cid:Number(r.did),p:`${(r.t/1e3).toFixed(2)},${r.tp===2?5:r.tp},${Number(r.sc)},[${r._sourceLabel||"hanjutv"}]`,m:r.con,t:r.t/1e3,like:r.lc,_sourceLabel:r._sourceLabel}))}};Ot();_t();ir();$n();so();hn();hs();var Tg=class extends Tt{async search(e){try{let r=[];O.useBangumiData&&(r=await Au(e,["gamer","gamer_hk"]),_("info",`[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(p=>p.video_sn);if(r.length>0&&r.length===n.length)return _("info","[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D\u5747\u542B video_sn\uFF0C\u542F\u7528\u6570\u636E\u6E90\u76F4\u901A\u6A21\u5F0F\uFF08\u8DF3\u8FC7\u641C\u7D22\u63A5\u53E3\uFF09"),r.map(p=>{let h=(p.titles.find(A=>A&&A.includes(e))||p.titles[1]||p.title)+(p.titleSuffix||"");return{video_sn:parseInt(p.video_sn),title:h,_displayTitle:h,isLocalPriority:!0,aliases:[...p.titles],_typeStr:p.typeStr,_fromDataSourceDirectHit:!0,_originalQuery:e,_bangumiBegin:p.begin||null}});let s=No(e),i=e,a=encodeURIComponent(s);_("info",`[Bahamut] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`),_("info",`[Bahamut] \u5DF4\u54C8\u4F7F\u7528\u641C\u7D22\u8BCD: ${s}`);let o=new AbortController,c=(async()=>{try{let p=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${a}`,m=O.makeProxyUrl(p),h=await ge(m,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(h&&h.data&&h.data.anime&&h.data.anime.length>0){o.abort();let A=h.data.anime;for(let g of A)try{g._originalQuery=e,g._searchUsedTitle=s}catch{}return _("info",`[Bahamut] bahamutSearchresp (original): ${JSON.stringify(A)}`),_("info",`[Bahamut] \u8FD4\u56DE ${A.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:A,source:"original"}}return _("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"}}catch(p){return _("error","[Bahamut] \u539F\u59CB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"original"}}})(),u=(async()=>{try{await new Promise(x=>setTimeout(x,100));let p=await Xb(i,o.signal,"Bahamut");if(!p||!p.title)return _("info","[Bahamut] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:m,cnAlias:h}=p;_("info",`[Bahamut] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u8FDB\u884C\u641C\u7D22: ${m}`);let g=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${encodeURIComponent(m)}`,b=O.makeProxyUrl(g),y=await ge(b,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},signal:o.signal,retries:3});if(y&&y.data&&y.data.anime&&y.data.anime.length>0){let x=y.data.anime;for(let v of x)try{v._originalQuery=e,v._searchUsedTitle=m,v._tmdbCnAlias=h}catch{}return _("info",`[Bahamut] bahamutSearchresp (TMDB): ${JSON.stringify(x)}`),_("info",`[Bahamut] \u8FD4\u56DE ${x.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:x,source:"tmdb"}}return _("info","[Bahamut] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"}}catch(p){return p.name==="AbortError"?(_("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0}):(_("error","[Bahamut] TMDB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"tmdb"})}})(),[l,d]=await Promise.all([c,u]),f=[];if(l.success?f=l.data:d.success?f=d.data:_("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C"),f.length>0&&r.length>0)for(let p of f){if(!p||!p.acg_sn)continue;let m=r.find(h=>String(p.acg_sn)===String(h.siteId))||r.find(h=>p.title&&h.title===p.title);if(m){let h=p.title,g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.isLocalPriority=!0,p.aliases=[...m.titles],h&&!p.aliases.includes(h)&&p.aliases.push(h),p._typeStr=m.typeStr,_("info",`[Bahamut] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}}return f}catch(r){return _("error","[Bahamut] getBahamutAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=`https://api.gamer.com.tw/anime/v1/video.php?videoSn=${e}`,n=O.makeProxyUrl(r),s=await ge(n,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(!s||!s.data)return _("info","[Bahamut] getBahamutEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];if(!s.data.data||!s.data.data.video||!s.data.data.anime)return _("info","[Bahamut] getBahamutEposides: video \u6216 anime \u4E0D\u5B58\u5728"),[];let{video:i,anime:a}=s.data.data;return _("info",`[Bahamut] getBahamutEposides: videoSn=${i.videoSn}, animeSn=${a.animeSn}, title=${a.title}, totalEpisode=${a.totalEpisode}, episodes=${JSON.stringify(a.episodes)}`),s.data.data}catch(r){return _("error","[Bahamut] getBahamutEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[],o=/[\u3040-\u309F\u30A0-\u30FF]/.test(r);r=No(r);function c(A,g,b){if(!A)return!1;let y=String(A),x=String(g||""),v=String(b||"");if(O.strictTitleMatch){if($0(y,x)||v&&$0(y,v))return!0;try{if($0(y,No(x))||$0(y,Qt(x))||v&&($0(y,No(v))||$0(y,Qt(v))))return!0}catch{}return!1}let I=Fr(y),R=Fr(x),w=v?Fr(v):"";if(I.includes(R)||w&&I.includes(w))return!0;try{if(I.includes(Fr(No(x)))||I.includes(Fr(Qt(x)))||w&&(I.includes(Fr(No(v)))||I.includes(Fr(Qt(v)))))return!0}catch{}try{if(I.toLowerCase().includes(R.toLowerCase())||w&&I.toLowerCase().includes(w.toLowerCase()))return!0}catch{}return!1}let l=(Array.isArray(e)?e:[]).filter(A=>{let g=A.title||"",b=A._searchUsedTitle||A._originalQuery||"";return o||A._searchUsedTitle&&A._searchUsedTitle!==r?(_("info",`[Bahamut] \u547D\u4E2D\u65E5\u8BED\u5173\u952E\u8BCD\u6216TMDB\u7ED3\u679C\uFF0C\u7ED5\u8FC7\u5339\u914D\u89C4\u5219\u76F4\u63A5\u4FDD\u7559: ${g}`),!0):c(g,r,b)||Array.isArray(A.aliases)&&A.aliases.some(y=>c(y,r,b))});l.forEach(A=>{A._originalTitleAlias=A.title?Qt(A.title):""});let d=l.length>0?l[0]._tmdbCnAlias:null;Zb(l,d);let f=i!==null?i:Wt(r),p=l;if(f!==null){let A=l.filter(g=>{let b=g._displayTitle||g.title,y=Ct(b).season;return y===f||f===1&&y===null});A.length>0&&(p=A,_("info",`[Bahamut] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${f}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let m=new Map,h=await Promise.all(p.map(async A=>{try{let g=String(A.video_sn);m.has(g)||m.set(g,this.getEpisodes(A.video_sn));let b=await m.get(g);if(!b||typeof b!="object"||Array.isArray(b))return null;let y=b.video,x=null;b.anime.episodes&&(x=b.anime.episodes[0]||Object.values(b.anime.episodes)[0]);let v=[];if(x&&Array.isArray(x))for(let I of x){let R=`\u7B2C${I.episode}\u96C6`;v.push({name:I.episode.toString(),url:I.videoSn.toString(),title:`\u3010bahamut\u3011 ${R}`})}if(v.length>0){let I=null;if(A._bangumiBegin&&(I=parseInt(A._bangumiBegin.substring(0,4))),!I&&b.anime&&b.anime.seasonStart&&(I=new Date(b.anime.seasonStart).getFullYear()),!I&&y&&y.upTime){let L=String(y.upTime).match(/(\d{4})/);L&&(I=parseInt(L[1]))}if(!I){let D=(A.info||"").match(/(\d{4})/);D&&(I=parseInt(D[1]))}let R=b.anime&&b.anime.cover||A.cover||y&&y.cover||"",w=A._displayTitle||Qt(A.title),N=Array.isArray(A.aliases)?[...A.aliases]:[];A._originalTitleAlias&&A._originalTitleAlias!==w&&!N.includes(A._originalTitleAlias)&&N.push(A._originalTitleAlias);let P=A._typeStr||"\u52A8\u6F2B",B=b.anime&&b.anime.title||y&&y.title||"";B.includes("[\u96FB\u5F71]")?P="\u5267\u573A\u7248":B.includes("[\u7279\u5225\u7BC7]")&&(P="OVA");let M={animeId:A.video_sn,bangumiId:String(A.video_sn),animeTitle:`${w}(${I||"N/A"})\u3010${P}\u3011from bahamut`,aliases:N,type:"\u52A8\u6F2B",typeDescription:"\u52A8\u6F2B",imageUrl:R,startDate:I?Or(I):Or(b.anime.seasonStart?new Date(b.anime.seasonStart).getFullYear():null),episodeCount:v.length,rating:y.rating,isFavorited:!0,source:"bahamut"};a.push(M),Dt({...M,links:v},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(g){_("error",`[Bahamut] Error processing anime: ${g.message}`)}}));return this.sortAndPushAnimesByYear(a,n),h}async getEpisodeDanmu(e){let r=[];try{let n=`https://api.gamer.com.tw/anime/v1/danmu.php?geo=TW%2CHK&videoSn=${e}`,s=O.makeProxyUrl(n),i=await ge(s,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});return i.data&&i.data.data&&i.data.data.danmu&&(r=i.data.data.danmu),r}catch(n){return _("error","[Bahamut] fetchBahamutEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return _("info","[Bahamut] \u83B7\u53D6\u5DF4\u54C8\u59C6\u7279\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"bahamut",segmentList:[{type:"bahamut",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){let r={0:1,1:5,2:4};return e.map(n=>({cid:Number(n.sn),p:`${(n.time/10).toFixed(2)},${r[n.position]||n.tp},${parseInt(n.color.slice(1),16)},[bahamut]`,m:O.danmuSimplifiedTraditional==="simplified"?Qt(n.text):n.text,t:n.time/10}))}};Ot();_t();ir();$n();so();hs();Ot();_t();ir();Ts();$n();hn();hs();var wg=class extends Tt{extractAliasesFromHintWords(e){if(!e||typeof e!="string")return[];let r=[],n=i=>{let a=String(i||"").replace(/<\/?em>/g,"").trim();a&&!r.includes(a)&&r.push(a)},s=e.match(/(?:又名|别名)\s*[::]\s*(.+)$/);return s&&s[1].split(/[、,,/|]+/).forEach(n),r}titleOrAliasMatches(e,r,n=null){return yt(e.title,r,n)?!0:Array.isArray(e.aliases)&&e.aliases.some(s=>yt(s,r,n))}filterTencentSearchItem(e,r){if(!e.videoInfo||!e.doc)return null;let n=e.videoInfo,s=e.doc.id;if(!n.year||n.year===0||n.subTitle==="\u5168\u7F51\u641C"||n.playFlag===2)return null;let i=n.title.replace(//g,"").replace(/<\/em>/g,"");if(!i||!s)return null;let a=n.typeName;if(a.includes("\u77ED\u5267")||!["\u7535\u89C6\u5267","\u52A8\u6F2B","\u7535\u5F71","\u7EAA\u5F55\u7247","\u7EFC\u827A","\u7EFC\u827A\u8282\u76EE"].includes(a))return null;let c=a,u=!1,l=!1;n.coverDoc&&(n.coverDoc.richTags&&Array.isArray(n.coverDoc.richTags)&&n.coverDoc.richTags.forEach(m=>{m.text&&m.text.includes("3D")&&(u=!0),m.text&&m.text.includes("2D")&&(l=!0)}),n.coverDoc.tags&&Array.isArray(n.coverDoc.tags)&&n.coverDoc.tags.forEach(m=>{m&&m.includes("3D")&&(u=!0),m&&m.includes("2D")&&(l=!0)})),u?c="3D"+c:l&&(c="2D"+c);let d=(n.playSites||[]).concat(n.episodeSites||[]);if(d.length>0&&!d.some(m=>m.enName==="qq")||a==="\u7535\u5F71"&&["\u82B1\u7D6E","\u5F69\u86CB","\u5E55\u540E","\u72EC\u5BB6","\u89E3\u8BF4","\u7279\u8F91","\u63A2\u73ED","\u62CD\u6444","\u5236\u4F5C","\u5BFC\u6F14","\u8BB0\u5F55","\u56DE\u987E","\u76D8\u70B9","\u6DF7\u526A","\u89E3\u6790","\u62A2\u5148"].some(h=>i.includes(h)))return null;let f=a==="\u7535\u5F71"?1:n.subjectDoc?n.subjectDoc.videoNum:0,p=this.extractAliasesFromHintWords(n.hintWords).filter(m=>m!==i);return{provider:"tencent",mediaId:s,title:i,aliases:p,type:c,year:n.year,imageUrl:n.imgUrl,episodeCount:f}}async search(e){try{_("info",`[Tencent] \u5F00\u59CB\u641C\u7D22: ${e}`);let r="https://pbaccess.video.qq.com/trpc.videosearch.mobile_search.MultiTerminalSearch/MbSearch?vplatform=2",n={version:"25071701",clientType:1,filterValue:"",uuid:"0379274D-05A0-4EB6-A89C-878C9A460426",query:e,retry:0,pagenum:0,isPrefetch:!0,pagesize:30,queryFrom:0,searchDatakey:"",transInfo:"",isneedQc:!0,preQid:"",adClientInfo:"",extraInfo:{multi_terminal_pc:"1",themeType:"1",sugRelatedIds:"{}",appVersion:""}},s={"Content-Type":"application/json",Origin:"https://v.qq.com","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`https://v.qq.com/x/search/?q=${encodeURIComponent(e)}&stag=&smartbox_ab=`,H38:"220496a1fb1498325e9be6d938",H42:"335a00a80ab9bbbef56793d8e7a97e87b9341dee34ebd83d61afc0cdb303214caaece3",Uk:"8e91af25d3af99d0f0640327e7307666",Cookie:"tvfe_boss_uuid=ee8f05103d59226f; pgv_pvid=3155633511; video_platform=2; ptag=v_qq_com; main_login=qq"},i=await Kr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("info","[Tencent] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return _("error",`[Tencent] API\u8FD4\u56DE\u9519\u8BEF: ${a.msg} (ret: ${a.ret})`),[];let o=[];if(a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.boxId==="MainNeed"&&u.itemList){_("info",`[Tencent] \u4ECE MainNeed box \u627E\u5230 ${u.itemList.length} \u4E2A\u9879\u76EE`),o=u.itemList;break}}if(o.length===0&&a.data&&a.data.normalList&&a.data.normalList.itemList&&(_("info","[Tencent] MainNeed box \u672A\u627E\u5230\uFF0C\u4F7F\u7528 normalList"),o=a.data.normalList.itemList),a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.itemList&&u.boxTitle&&Array.isArray(u.boxTitle.boxTitles)&&u.boxTitle.boxTitles.includes("\u76F8\u5173\u5F71\u89C6")){let l=u.itemList.filter(d=>d.videoInfo&&d.videoInfo.title&&d.videoInfo.title.includes(e));l.length>0?(_("info",`[Tencent] \u8FFD\u52A0\u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u5339\u914D "${e}" \u7684 ${l.length} \u4E2A\u9879\u76EE`),o=[...o,...l]):_("info",`[Tencent] \u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u65E0\u5339\u914D "${e}" \u7684\u9879\u76EE`);break}}if(o.length===0)return _("info","[Tencent] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o){let l=this.filterTencentSearchItem(u,e);l&&c.push(l)}return _("info",`[Tencent] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return _("error","[Tencent] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Tencent] \u83B7\u53D6\u5206\u96C6\u5217\u8868: cid=${e}`);let r="https://pbaccess.video.qq.com/trpc.universal_backend_service.page_server_rpc.PageServer/GetPageData?video_appid=3000010&vversion_name=8.2.96&vversion_platform=2",n={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:e,vid:"",lid:"",page_num:"",page_context:`cid=${e}&detail_page_type=1&req_from=web_vsite&req_from_second_type=&req_type=0`,detail_page_type:"1"}},s={"Content-Type":"application/json",Origin:"https://v.qq.com",Referer:`https://v.qq.com/x/cover/${e}.html`,"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/537.36 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Accept:"application/json","Accept-Language":"zh-CN,zh;q=0.9"},i=await Kr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("info","[Tencent] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return _("error",`[Tencent] \u5206\u96C6API\u8FD4\u56DE\u9519\u8BEF: ret=${a.ret}`),[];let o=[];if(a.data&&a.data.module_list_datas)for(let u of a.data.module_list_datas){for(let l of u.module_datas)if(l.module_params&&l.module_params.tabs)try{o=JSON.parse(l.module_params.tabs);break}catch(d){_("error","[Tencent] \u89E3\u6790tabs\u5931\u8D25:",d.message)}if(o.length>0)break}let c=[];if(o.length===0){if(_("info","[Tencent] \u672A\u627E\u5230\u5206\u9875\u4FE1\u606F,\u5C1D\u8BD5\u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5206\u96C6"),a.data&&a.data.module_list_datas){for(let u of a.data.module_list_datas)for(let l of u.module_datas)if(l.item_data_lists&&l.item_data_lists.item_datas)for(let d of l.item_data_lists.item_datas)d.item_params&&d.item_params.vid&&d.item_params.is_trailer!=="1"&&c.push({vid:d.item_params.vid,title:d.item_params.title,unionTitle:d.item_params.union_title||d.item_params.title})}if(c.length===0)return _("info","[Tencent] \u521D\u59CB\u54CD\u5E94\u4E2D\u4E5F\u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];_("info",`[Tencent] \u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5230 ${c.length} \u96C6`)}else{_("info",`[Tencent] \u627E\u5230 ${o.length} \u4E2A\u5206\u9875`);for(let u of o){if(!u.page_context)continue;let l={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:e,vid:"",lid:"",page_num:"",page_context:u.page_context,detail_page_type:"1"}},d=await Kr(r,JSON.stringify(l),{headers:s});if(!d||!d.data)continue;let f=typeof d.data=="string"?JSON.parse(d.data):d.data;if(!(f.ret!==0||!f.data)&&f.data.module_list_datas){for(let p of f.data.module_list_datas)for(let m of p.module_datas)if(m.item_data_lists&&m.item_data_lists.item_datas)for(let h of m.item_data_lists.item_datas)h.item_params&&h.item_params.vid&&h.item_params.is_trailer!=="1"&&c.push({vid:h.item_params.vid,title:h.item_params.title,unionTitle:h.item_params.union_title||h.item_params.title})}}}return _("info",`[Tencent] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return _("error","[Tencent] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Tencent] sourceAnimes is not a valid array"),[];let o=e.filter(l=>this.titleOrAliasMatches(l,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Tencent] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p0){let p=d[0].unionTitle||d[0].title||"\u7B2C1\u96C6",m=l.title,h=p.match(/\[.+版\]/);h&&p.includes(l.title)&&(m=`${l.title}${h[0]}`);let g={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${m}(${l.year})\u3010${l.type}\u3011from tencent`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"tencent",aliases:l.aliases||[]};a.push(g),Dt({...g,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Tencent] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}extractVid(e){let r=e;if(typeof e=="string"&&(e.startsWith("http")||e.includes("vid="))){let n=e.match(/[?&]vid=([^&]+)/);if(n)r=n[1];else{let s=e.split("/");r=s[s.length-1].split(".")[0]}}return r}async getEpisodeDanmu(e){_("info","[Tencent] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u817E\u8BAF\u89C6\u9891\u5F39\u5E55...",e);let r=this.extractVid(e);_("info",`[Tencent] vid: ${r}`);let n;try{n=await ge(e,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(l){return _("error","[Tencent] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",l),[]}let s=n.data.match(/]*>(.*?)<\/title>/i),i=s?s[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";_("info",`[Tencent] \u6807\u9898: ${i}`);let a=await this.getEpisodeDanmuSegments(e);if(!a||!a.segmentList||a.segmentList.length===0)return[];let o=a.segmentList;_("info",`[Tencent] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o.length}`);let c=[];for(let l of o)c.push(ge(l.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let u=[];try{(await Promise.allSettled(c)).filter(f=>f.status==="fulfilled").map(f=>f.value&&f.value.data?f.value.data:null).filter(f=>f!==null).forEach(f=>{f=typeof f=="string"?JSON.parse(f):f,u.push(...f.barrage_list)})}catch(l){return _("error","[Tencent] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",l),[]}return ts(u),u}async getEpisodeDanmuSegments(e){_("info","[Tencent] \u83B7\u53D6\u817E\u8BAF\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://dm.video.qq.com/barrage/base/",n="https://dm.video.qq.com/barrage/segment/",s=this.extractVid(e);_("info",`[Tencent] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - vid: ${s}`);let i;try{i=await ge(r+s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return u.response?.status===404?new St({type:"qq",segmentList:[]}):(_("error","[Tencent] \u8BF7\u6C42\u5F39\u5E55\u57FA\u7840\u6570\u636E\u5931\u8D25:",u),new St({type:"qq",segmentList:[]}))}let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=Object.values(a.segment_index);for(let u of c)o.push({type:"qq",segment_start:(Number(u.segment_start)||0)/1e3,segment_end:(Number(u.segment_name.split("/").pop())||0)/1e3,url:`${n}${s}/${u.segment_name}`});return new St({type:"qq",segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=await ge(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.barrage_list)}return n}catch(r){return _("error","[Tencent] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>{let n={timepoint:r.time_offset/1e3,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:r.content};if(r.content_style&&r.content_style!=="")try{let s=JSON.parse(r.content_style);s.gradient_colors&&s.gradient_colors.length>0?n.color=parseInt(s.gradient_colors[0].replace("#",""),16):s.color&&s.color!=="ffffff"&&(n.color=parseInt(s.color.replace("#",""),16)),s.position===2?n.ct=5:s.position===3&&(n.ct=4)}catch{}return n.like=parseInt(r.up_count)||0,n})}};_t();ir();hn();Ts();$n();Ot();hs();var Rg=class t extends Tt{static XOR_KEY=0x75706971676c;static SECRET_KEY="howcuteitis";static KEY_NAME="secret_key";async search(e){try{_("info",`[iQiyi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,current_page:"1",mode:"1",source:"input",suggest:"",pcv:"13.074.22699",version:"13.074.22699",pageNum:"1",pageSize:"25",pu:"",u:"f6440fc5d919dca1aea12b6aff56e1c7",scale:"200",token:"",userVip:"0",conduit:"",vipType:"-1",os:"",osShortName:"win10",dataType:"",appMode:"",ad:JSON.stringify({lm:3,azd:0xe8d4a513b7,azt:733,position:"feed"}),adExt:JSON.stringify({r:"2.1.5-ares6-pure"})},s=`https://mesh.if.iqiyi.com/portal/lw/search/homePageV3?${yi(r)}`,i=await ge(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!i||!i.data)return _("info","[iQiyi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.data||!a.data.templates)return _("info","[iQiyi] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[],c=a.data.templates;for(let u of c){let l=[];u.template===112&&u.intentAlbumInfos?(_("info",`[iQiyi] \u627E\u5230\u610F\u56FE\u5361\u7247 (template 112)\uFF0C\u5904\u7406 ${u.intentAlbumInfos.length} \u4E2A\u7ED3\u679C`),l=u.intentAlbumInfos):[101,102,103].includes(u.template)&&u.albumInfo&&(_("info",`[iQiyi] \u627E\u5230\u666E\u901A\u7ED3\u679C\u5361\u7247 (template ${u.template})`),l=[u.albumInfo]);for(let d of l){let f=this._filterIqiyiSearchItem(d,e);f&&o.push(f)}}return _("info",`[iQiyi] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[iQiyi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}_filterIqiyiSearchItem(e,r){if(!e.title)return null;if(e.btnText==="\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E")return _("info",`[iQiyi] \u8FC7\u6EE4\u6389\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E\u5185\u5BB9: ${e.title}`),null;let n=e.channel||"",s="\u7535\u89C6\u5267";if(n.includes("\u7535\u5F71"))s="\u7535\u5F71";else if(n.includes("\u52A8\u6F2B"))s="\u52A8\u6F2B";else if(n.includes("\u7EFC\u827A"))s="\u7EFC\u827A";else if(n.includes("\u7EAA\u5F55\u7247"))s="\u7EAA\u5F55\u7247";else if(n.includes("\u7535\u89C6\u5267"))s="\u7535\u89C6\u5267";else return null;let i=!1,a=!1;if(e.metaTags&&Array.isArray(e.metaTags)&&e.metaTags.forEach(p=>{p.name==="3D"&&(i=!0),p.name==="2D"&&(a=!0)}),e.baseTags&&Array.isArray(e.baseTags)&&e.baseTags.forEach(p=>{p.value==="3D"&&(i=!0),p.value==="2D"&&(a=!0)}),i?s="3D"+s:a&&(s="2D"+s),s.includes("\u7535\u5F71")){let p=e.qipuId||e.playQipuId;if(!p)return _("info",`[iQiyi] \u7535\u5F71\u7F3A\u5C11 qipuId: ${e.title}`),null;let m=null;if(e.year){let A=e.year.value||e.year.name;A&&typeof A=="string"&&A.length===4&&/^\d{4}$/.test(A)&&(m=parseInt(A))}let h=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:`movie_${p}`,title:h,type:s,year:m,imageUrl:e.img||e.imgH,episodeCount:1,_qipuId:p}}let o=e.pageUrl;if(!o)return _("info",`[iQiyi] \u975E\u7535\u5F71\u5185\u5BB9\u7F3A\u5C11 pageUrl: ${e.title}`),null;let c=o.match(/v_(\w+?)\.html/);if(!c)return _("info",`[iQiyi] \u65E0\u6CD5\u4ECE pageUrl \u63D0\u53D6 link_id: ${o}`),null;let u=c[1],l=null;if(e.year){let p=e.year.value||e.year.name;p&&typeof p=="string"&&p.length===4&&/^\d{4}$/.test(p)&&(l=parseInt(p))}let d=null;if(e.videos&&e.videos.length>0)d=e.videos.length;else if(e.subscriptContent){let p=e.subscriptContent.match(/(?:更新至|å…¨|å…±)\s*(\d+)\s*(?:集|话|期)/);if(p)d=parseInt(p[1]);else{let m=e.subscriptContent.trim().match(/^(\d+)$/);m&&(d=parseInt(m[1]))}}let f=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:u,title:f,type:s,year:l,imageUrl:e.img||e.imgH,episodeCount:d}}async getEpisodes(e){try{if(_("info",`[iQiyi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`),e.startsWith("movie_")){let p=e.substring(6);_("info",`[iQiyi] \u7535\u5F71\u7C7B\u578B\uFF0C\u8C03\u7528 base_info API \u83B7\u53D6\u89C6\u9891ID: qipuId=${p}`);let m=await this._getMovieVideoId(p);return m?(_("info",`[iQiyi] \u7535\u5F71\u89C6\u9891ID: ${m}`),[{id:m,title:"\u6B63\u7247",order:1,link:`https://www.iqiyi.com/v_${m}.html`}]):(_("error",`[iQiyi] \u65E0\u6CD5\u83B7\u53D6\u7535\u5F71\u7684\u89C6\u9891ID: qipuId=${p}`),[])}let r=/^\d+$/.test(e)?e:this._videoIdToEntityId(e);if(!r)return _("error",`[iQiyi] \u65E0\u6CD5\u5C06 media_id '${e}' \u8F6C\u6362\u4E3A entity_id`),[];let n={entity_id:r,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.082.22866",app_version:"13.082.22866",ext:"",app_mode:"standard",scale:"100",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.2.0-ares6-pure"}'};n.sign=this._createSign(n);let i=`https://www.iqiyi.com/prelw/tvg/v2/lw/base_info?${yi(n)}`,a=await ge(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.iqiyi.com/"}});if(!a||!a.data)return _("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.status_code!==0||!o.data||!o.data.template)return _("error",`[iQiyi] API \u8FD4\u56DE\u9519\u8BEF\uFF0Cstatus_code: ${o.status_code}`),[];let c=[],u=o.data.template.tabs||[];if(u.length===0)return _("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6807\u7B7E\u9875"),[];let l=u[0].blocks||[],d=!1;for(let p of l)if(p.bk_type==="video_list"&&p.data?.data){if(_("info",`[iQiyi] \u627E\u5230 video_list \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757, bk_id: ${p.bk_id}`),!p.tag||!p.tag.includes("episodes")){_("info",`[iQiyi] \u8DF3\u8FC7\u975E\u5206\u96C6\u5757: ${p.bk_id}`);continue}d=!0;let m=p.data.data;if(!Array.isArray(m)){_("warn","[iQiyi] data.data \u4E0D\u662F\u6570\u7EC4\uFF0C\u8DF3\u8FC7\u6B64\u5757");continue}for(let h of m)if(!(!h.videos||!Array.isArray(h.videos))){for(let A of h.videos)if(!(!A.data||!Array.isArray(A.data)))for(let g of A.data){if(g.content_type!==1)continue;let y=(g.play_url||"").match(/tvid=(\d+)/);if(!y)continue;let x=y[1],v=g.short_display_name||g.title||"\u672A\u77E5\u5206\u96C6",I=g.subtitle;I&&!v.includes(I)&&(v=`${v} ${I}`);let R=g.album_order,w=g.page_url;x&&v&&w&&c.push({id:x,title:v,order:R!==void 0?R:c.length,link:w})}}}else if(p.bk_type==="album_episodes"&&p.data?.data){_("info","[iQiyi] \u627E\u5230 album_episodes \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757"),d=!0;let m=p.data.data;for(let h of m){let A=h.videos;if(typeof A=="string"){_("info",`[iQiyi] \u53D1\u73B0\u5206\u5B63URL\uFF0C\u6B63\u5728\u83B7\u53D6: ${A}`);try{let g=await ge(A);A=typeof g.data=="string"?JSON.parse(g.data):g.data}catch(g){_("error",`[iQiyi] \u83B7\u53D6\u5206\u5B63\u6570\u636E\u5931\u8D25: ${g.message}`);continue}}if(A&&typeof A=="object"&&A.feature_paged)for(let g in A.feature_paged){let b=A.feature_paged[g];for(let y of b){if(y.content_type!==1)continue;let v=(y.play_url||"").match(/tvid=(\d+)/);if(!v)continue;let I=v[1],R=y.short_display_name||y.title||"\u672A\u77E5\u5206\u96C6",w=y.subtitle;w&&!R.includes(w)&&(R=`${R} ${w}`);let N=y.album_order,P=y.page_url;I&&R&&N&&P&&c.push({id:I,title:R,order:N,link:P})}}}}if(!d)return _("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6570\u636E\u5757"),[];let f=Array.from(new Map(c.map(p=>[p.id,p])).values());return f.sort((p,m)=>p.order-m.order),_("info",`[iQiyi] \u6210\u529F\u83B7\u53D6 ${f.length} \u4E2A\u5206\u96C6`),f}catch(r){return _("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieVideoId(e){try{let r={entity_id:e,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.103.23529",app_version:"13.103.23529",ext:"",app_mode:"standard",scale:"125",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.5.0-ares6-pure"}'};r.sign=this._createSign(r);let s=`https://mesh.if.iqiyi.com/tvg/v2/lw/base_info?${yi(r)}`;_("info",`[iQiyi] \u8BF7\u6C42\u7535\u5F71\u8BE6\u60C5: ${s}`);let i=await ge(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!i||!i.data)return _("error","[iQiyi] base_info API \u54CD\u5E94\u4E3A\u7A7A"),null;let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.data&&a.data.base_data){let o=a.data.base_data;if(o.share_url){let c=o.share_url.match(/v_(\w+)\.html/);if(c){let u=c[1];return _("info",`[iQiyi] \u4ECE share_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}if(o.page_url){let c=o.page_url.match(/v_(\w+)\.html/);if(c){let u=c[1];return _("info",`[iQiyi] \u4ECE page_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}}return _("error","[iQiyi] base_info API \u54CD\u5E94\u4E2D\u672A\u627E\u5230\u89C6\u9891ID"),_("info",`[iQiyi] \u54CD\u5E94\u6570\u636E\u7ED3\u6784: ${JSON.stringify(a).substring(0,1e3)}...`),null}catch(r){return _("error",`[iQiyi] \u83B7\u53D6\u7535\u5F71\u89C6\u9891ID\u65F6\u51FA\u9519: ${r.message}`),null}}_videoIdToEntityId(e){try{let r=parseInt(e,36),n=this._xorOperation(r),s=n<9e5?100*(n+9e5):n;return String(s)}catch(r){return _("error",`[iQiyi] \u5C06 video_id '${e}' \u8F6C\u6362\u4E3A entity_id \u65F6\u51FA\u9519: ${r.message}`),null}}_xorOperation(e){let r=e.toString(2),n=t.XOR_KEY.toString(2),s=r.split("").reverse(),i=n.split("").reverse(),a=[],o=Math.max(s.length,i.length);for(let u=0;uyt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[iQiyi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p of d){let m=p.link||`https://www.iqiyi.com/v_${l.mediaId}.html`;f.push({name:p.order.toString(),url:m,title:`\u3010qiyi\u3011 ${p.title}`})}if(f.length>0){let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from iqiyi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"iqiyi"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[iQiyi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[iQiyi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u7231\u5947\u827A\u5F39\u5E55...",e);let r;try{r=await ge(e,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return _("error","[iQiyi] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",u),[]}let n=r.data.match(/]*>(.*?)<\/title>/i),s=n?n[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";_("info",`[iQiyi] \u6807\u9898: ${s}`);let i=await this.getEpisodeDanmuSegments(e);if(!i||!i.segmentList||i.segmentList.length===0)return[];let a=i.segmentList;_("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${a.length}`);let o=[];for(let u of a)o.push(this.getEpisodeSegmentDanmu(u));let c=[];try{(await Promise.allSettled(o)).filter(d=>d.status==="fulfilled").map(d=>d.value).filter(d=>d!==null).forEach(d=>{c.push(...d)})}catch(u){return _("error","[iQiyi] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",u),[]}return ts(c),c}async getEpisodeDanmuSegments(e){_("info","[iQiyi] \u83B7\u53D6\u7231\u5947\u827A\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcw-api.iq.com/api/decode/",n="https://pcw-api.iqiyi.com/video/video/baseinfo/",s;try{let d=e.match(/v_(\w+)/);if(!d)return _("error","[iQiyi] \u65E0\u6CD5\u4ECE URL \u4E2D\u63D0\u53D6 tvid"),new St({type:"qiyi",segmentList:[]});s=d[1],_("info",`[iQiyi] tvid: ${s}`);let f=`${r}${s}?platformId=3&modeCode=intl&langCode=sg`,p=await ge(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});s=(typeof p.data=="string"?JSON.parse(p.data):p.data).data.toString(),_("info",`[iQiyi] \u89E3\u7801\u540E tvid: ${s}`)}catch(d){return _("error","[iQiyi] \u8BF7\u6C42\u89E3\u7801\u4FE1\u606F\u5931\u8D25:",d),new St({type:"qiyi",segmentList:[]})}let i;try{let d=`${n}${s}`,f=await ge(d,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=(typeof f.data=="string"?JSON.parse(f.data):f.data).data;if(i=Number(m.durationSec)||0,m.displayBarrage===!1)return _("info","[iQiyi] \u7231\u5947\u827A\u89C6\u9891\u672A\u5F00\u542F\u5F39\u5E55"),new St({type:"qiyi",duration:i,segmentList:[]});_("info",`[iQiyi] \u65F6\u957F: ${i}`)}catch(d){return _("error","[iQiyi] \u8BF7\u6C42\u89C6\u9891\u57FA\u7840\u4FE1\u606F\u5931\u8D25:",d),new St({type:"qiyi",segmentList:[]})}let a=60,o=Math.ceil(i/a);_("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o}`);let c=[],u=`0000${s}`,l=`${u.slice(-4,-2)}/${u.slice(-2)}`;for(let d=0;d(.*?)`,"g");return e.match(c)?.map(u=>u.substring(o.length+2,u.length-o.length-3))||[]}let n=r("content"),s=r("showTime"),i=r("color"),a=r("likeCount");return n.map((o,c)=>({content:o,showTime:s[c],color:i[c],like:parseInt(a[c],10)||0}))}_parseIqiyiProtoDanmu(e){let r=[],n=this._parseIqiyiProtoFields(e);for(let s of n){if(s.number!==6||!s.bytes)continue;let i=this._parseIqiyiProtoFields(s.bytes),a=this._getIqiyiProtoString(i,1);for(let o of i){if(o.number!==2||!o.bytes)continue;let c=this._parseIqiyiProtoFields(o.bytes),u=this._getIqiyiProtoString(c,2);u&&r.push({content:u,showTime:this._getIqiyiProtoString(c,6)||a||"0",color:this._getIqiyiProtoString(c,8)||"ffffff",like:parseInt(this._getIqiyiProtoString(c,14),10)||0})}}return r}_parseIqiyiProtoFields(e){let r=[],n=0,s=new TextDecoder("utf-8");for(;n>3n),c=Number(a&7n);if(o===0)break;if(c===0){let u=this._readIqiyiVarint(e,n);r.push({number:o,wireType:c,value:u.value.toString()}),n=u.offset}else if(c===1)r.push({number:o,wireType:c}),n+=8;else if(c===2){let u=this._readIqiyiVarint(e,n),l=Number(u.value);n=u.offset;let d=n+l;if(d>e.length)break;let f=e.subarray(n,d);r.push({number:o,wireType:c,bytes:f,value:s.decode(f)}),n=d}else if(c===5)r.push({number:o,wireType:c}),n+=4;else break}return r}_readIqiyiVarint(e,r){let n=0n,s=0n,i=r;for(;in.number===r)?.value||""}formatComments(e){return e.map(r=>{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return n.timepoint=parseFloat(r.showTime),n.color=parseInt(r.color,16),n.content=of(r.content),n.size=25,n.like=r.like,n})}};Ot();_t();ir();hn();Ts();$n();hs();var Ng=class extends Tt{transformV2Color(e){if(!e)return-1;let n=cz(e.color_left),s=cz(e.color_right);return n===-1&&s===-1?-1:n===-1?s:s===-1?n:Math.floor((n+s)/2)}_extractMediaType(e){let r=(e||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u52A8\u6F2B")||r.includes("\u52A8\u753B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EFC\u827A")||r.includes("\u771F\u4EBA\u79C0")||r.includes("variety")?"\u7EFC\u827A":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(e){try{_("info",`[Mango] \u5F00\u59CB\u641C\u7D22: ${e}`);let n=`https://mobileso.bz.mgtv.com/msite/search/v2?q=${encodeURIComponent(e)}&pc=30&pn=1&sort=-99&ty=0&du=0&pt=0&corr=1&abroad=0&_support=10000000000000000`,s=await ge(n,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json",Referer:"https://www.mgtv.com/"}});if(!s||!s.data)return _("info","[Mango] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let i=typeof s.data=="string"?JSON.parse(s.data):s.data;if(!i.data||!i.data.contents)return _("info","[Mango] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let a=[];for(let o of i.data.contents)if(o.type==="media")for(let c of o.data){if(c.source!=="imgo")continue;let u=c.url?c.url.match(/\/b\/(\d+)/):null;if(!u)continue;let l=u[1],d=c.title?c.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"):"",f=c.desc&&c.desc[0]?c.desc[0].match(/[12][890][0-9][0-9]/):null,p=f?parseInt(f[0]):null,m=c.desc&&c.desc[0]?c.desc[0].split("/")[0].replace("\u7C7B\u578B:","").trim():"",h=this._extractMediaType(m);a.push({provider:"imgo",mediaId:l,title:d,type:h,year:p,imageUrl:c.img||null,episodeCount:c.videoCount||null})}return _("info",`[Mango] \u641C\u7D22\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),a}catch(r){return _("error","[Mango] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Mango] \u83B7\u53D6\u5206\u96C6\u5217\u8868: collection_id=${e}`);let r=[],n="",s=0,i=1;for(;s0&&r.push(...d.data.list.filter(f=>f.src_clip_id===e)),s===0&&(i=d.data.tab_m&&d.data.tab_m.length>0?d.data.tab_m.length:1,_("info",`[Mango] \u68C0\u6D4B\u5230 ${i} \u4E2A\u6708\u4EFD\u5206\u9875`)),s++,s{let l=`${u.t2||""} ${u.t1||""}`.trim();return u.isnew==="2"?(_("info",`[Mango] \u8FC7\u6EE4\u9884\u544A\u7247: ${l}`),!1):a.test(l)?(_("info",`[Mango] \u9ED1\u540D\u5355\u8FC7\u6EE4: ${l}`),!1):!0}),c=this._processVarietyEpisodes(o);return _("info",`[Mango] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return _("error","[Mango] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieEpisode(e){try{_("info",`[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247: collection_id=${e}`);let r=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${e}&month=&page=1&_support=10000000`,n=await ge(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.mgtv.com/"}});if(!n||!n.data)return _("info","[Mango] \u672A\u627E\u5230\u7535\u5F71\u4FE1\u606F"),null;let s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(!s.data||!s.data.list||s.data.list.length===0)return _("info","[Mango] \u7535\u5F71\u5217\u8868\u4E3A\u7A7A"),null;let i=s.data.list.find(a=>a.isIntact==="1");return i||(i=s.data.list.find(a=>a.isnew!=="2")),i||(i=s.data.list[0]),_("info",`[Mango] \u627E\u5230\u7535\u5F71\u6B63\u7247: ${i.t3||i.t1||"\u6B63\u7247"}`),i}catch(r){return _("error","[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247\u51FA\u9519:",r.message),null}}_processVarietyEpisodes(e){if(!e||e.length===0)return[];_("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5F00\u59CB\uFF0C\u539F\u59CB\u5206\u96C6\u6570: ${e.length}`);let r=e.some(i=>{let a=`${i.t2||""} ${i.t1||""}`.trim();return/第\d+期/.test(a)});_("info",`[Mango] \u7EFC\u827A\u683C\u5F0F\u5206\u6790: \u6709\u671F\u6570\u683C\u5F0F=${r}`);let n=[],s=new Map;for(let i of e){let a=`${i.t2||""} ${i.t1||""}`.trim();if(r){let o=a.match(/第(\d+)期([上中下])/),c=a.match(/第(\d+)期/),u=/第\d+期[上中下]/.test(a);if(o){let l=o[1],d=o[2],f=`\u7B2C${l}\u671F${d}`,p=a.substring(a.indexOf(f)+f.length);/^(åŠ æ›´|会员版|纯享版|特别版|独家版|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后)/.test(p)?_("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u4E0A\u4E2D\u4E0B\u683C\u5F0F+\u540E\u7F00: ${a}`):(s.set(i,[parseInt(l),d]),n.push(i),_("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u4E0A\u4E2D\u4E0B\u683C\u5F0F: ${a}`))}else if(c&&!u&&!/会员版|纯享版|特别版|独家版|åŠ æ›´|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后|访谈|采访|混剪|合集|盘点|总结|åˆ å‡|未播放|NG|番外|片段|看点|精彩|制作|导演|演员|拍摄|片尾曲|插曲|主题曲|背景音乐|OST|音乐|歌曲/.test(a)){let l=c[1];s.set(i,[parseInt(l),""]),n.push(i),_("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u6807\u51C6\u671F\u6570: ${a}`)}else _("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u975E\u6807\u51C6\u671F\u6570\u683C\u5F0F: ${a}`)}else{if(a.includes("\u5E7F\u544A")||a.includes("\u63A8\u5E7F")){_("info",`[Mango] \u8DF3\u8FC7\u5E7F\u544A\u5185\u5BB9: ${a}`);continue}n.push(i),_("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u539F\u59CB\u6807\u9898: ${a}`)}}return r?n.sort((i,a)=>{let o=s.get(i)||[0,""],c=s.get(a)||[0,""];if(o[0]!==c[0])return o[0]-c[0];let u={"":0,\u4E0A:1,\u4E2D:2,\u4E0B:3};return(u[o[1]]||0)-(u[c[1]]||0)}):n.sort((i,a)=>{let o=l=>{let f=`${l.t2||""} ${l.t1||""}`.trim().match(/第(\d+)集/);return f?parseInt(f[1]):999999},c=o(i),u=o(a);if(c===999999&&u===999999){let l=i.ts||"0",d=a.ts||"0";return l.localeCompare(d)}return c-u}),_("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5B8C\u6210\uFF0C\u8FC7\u6EE4\u540E\u5206\u96C6\u6570: ${n.length}`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Mango] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Mango] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{if(l.type==="\u7535\u5F71"){let p=await this._getMovieEpisode(l.mediaId);if(!p)return;let m=`https://www.mgtv.com/b/${l.mediaId}/${p.video_id}.html`,h=p.t3||p.t1||"\u6B63\u7247",A=[{name:"1",url:m,title:`\u3010imgo\u3011 ${h}`}],b={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:1,rating:0,isFavorited:!0,source:"imgo"};a.push(b),Dt({...b,links:A},s),O.animes.length>O.MAX_ANIMES&&$t();return}let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p0){let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"imgo"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Mango] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Mango] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u8292\u679CTV\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Mango] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=[];for(let a of n)s.push(ge(a.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let i=[];try{(await Promise.allSettled(s)).filter(c=>c.status==="fulfilled").map(c=>c.value&&c.value.data?c.value.data:null).filter(c=>c!==null).forEach(c=>{c=typeof c=="string"?JSON.parse(c):c,c.data?.items&&i.push(...c.data.items)})}catch(a){return _("error","[Mango] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",a),[]}return ts(i),i}async getEpisodeDanmuSegments(e){_("info","[Mango] \u83B7\u53D6\u8292\u679CTV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcweb.api.mgtv.com/video/info",n="https://galaxy.bz.mgtv.com/getctlbarrage",s="https://galaxy.bz.mgtv.com/rdbarrage",i=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,a=e.match(i),o;if(a)o=a[2].split("/").filter(Boolean);else return _("error","[Mango] Invalid URL"),new St({type:"imgo",segmentList:[]});let c=o[o.length-2],u=o[o.length-1].split(".")[0];_("info",`[Mango] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - cid: ${c}, vid: ${u}`);let l;try{let m=`${r}?cid=${c}&vid=${u}`;l=await ge(m,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(m){return m.response?.status===404?new St({type:"imgo",segmentList:[]}):(_("error","[Mango] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m),new St({type:"imgo",segmentList:[]}))}let f=(typeof l.data=="string"?JSON.parse(l.data):l.data).data.info.time,p=!0;try{let m=`${n}?version=8.1.39&abroad=0&uuid=&os=10.15.7&platform=0&mac=&vid=${u}&pid=&cid=${c}&ticket=`,h=await ge(m,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),A=typeof h.data=="string"?JSON.parse(h.data):h.data;(!A.data||!A.data.cdn_list||!A.data.cdn_version)&&(_("warn","[Mango] \u65B0API\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u8FD4\u56DE\u7A7A\u5206\u6BB5\u5217\u8868"),p=!1);let g=[];if(p){let b=Math.ceil(Ig(f)/60),y=A.data.cdn_list.split(",")[0],x=A.data.cdn_version;for(let v=0;v{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return r?.v2_color&&(n.color=this.transformV2Color(r?.v2_color)),r?.v2_position&&(r?.v2_position===1?n.ct=5:r?.v2_position===2&&(n.ct=4)),n.timepoint=r.time/1e3,n.content=r.content,n.uid=r.uid,n.like=r.v2_up_count,n})}};Ot();_t();ir();Ts();$n();hn();hs();so();var Og=class t extends Tt{static WBI_MIXIN_KEY_CACHE={key:null,timestamp:0};static WBI_MIXIN_KEY_CACHE_TTL=3600;static WBI_MIXIN_KEY_TABLE=[46,47,18,2,53,8,23,32,15,50,10,31,58,3,45,35,27,43,5,49,33,9,42,19,29,28,14,39,12,38,41,13,37,48,7,16,24,55,40,61,26,17,0,1,60,51,30,4,22,25,54,21,56,59,6,63,57,62,11,36,20,34,44,52];static APP_KEY="1d8b6e7d45233436";static APP_SEC="560c52ccd288fed045859ed18bffd973";async resolveB23Link(e){let r;try{_("info",`[Bilibili] \u6B63\u5728\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5: ${e}`);let n=parseInt(O.vodRequestTimeout||"5000",10)||5e3,s=new AbortController;r=setTimeout(()=>s.abort(),n);let a=await(typeof fetch=="function"?fetch:(await Promise.resolve().then(()=>(bI(),TB))).default)(e,{method:"GET",headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:s.signal,redirect:"manual"}),o=a.headers?.get?.("location")||a.headers?.get?.("Location"),c=o?new URL(o,e).toString():a.url;return c&&c!==e?(_("info",`[Bilibili] b23.tv \u77ED\u94FE\u63A5\u5DF2\u89E3\u6790\u4E3A: ${c}`),c):(_("error","[Bilibili] \u65E0\u6CD5\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5"),e)}catch(n){return _("error","[Bilibili] \u89E3\u6790 b23.tv \u77ED\u94FE\u63A5\u5931\u8D25:",n),e}finally{r&&clearTimeout(r)}}async _getWbiMixinKey(){let e=Math.floor(Date.now()/1e3),r=t.WBI_MIXIN_KEY_CACHE;if(r.key&&e-r.timestamp(c+u)[d]).join("").substring(0,32);return r.key=l,r.timestamp=e,_("info","[Bilibili] \u6210\u529F\u83B7\u53D6\u65B0\u7684 WBI mixin key"),l}catch(n){return _("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",n.message),"dba4a5925b345b4598b7452c75070bca"}}_getWbiSignedParams(e,r){let n={...e};n.wts=Math.floor(Date.now()/1e3);let o=Object.keys(n).sort().map(u=>{let l=n[u]??"";return`${encodeURIComponent(u)}=${encodeURIComponent(l)}`}).join("&")+r,c=Ls(o);return n.w_rid=c,n}async _searchByType(e,r,n){try{_("info",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}'\uFF0C\u5173\u952E\u8BCD '${e}'`);let s={keyword:e,search_type:r},i=this._getWbiSignedParams(s,n),o=`https://api.bilibili.com/x/web-interface/wbi/search/type?${Object.keys(i).map(d=>`${encodeURIComponent(d)}=${encodeURIComponent(i[d])}`).join("&")}`,c=await ge(o,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),u=typeof c.data=="string"?JSON.parse(c.data):c.data;if(u.code!==0||!u.data?.result)return _("info",`[Bilibili] \u7C7B\u578B '${r}' \u65E0\u7ED3\u679C (Code: ${u.code})`),[];let l=[];for(let d of u.data.result){let f=d.season_id?`ss${d.season_id}`:d.bvid?`bv${d.bvid}`:"";if(!f)continue;let p=this._extractMediaType(d.season_type_name),m=p==="\u7535\u5F71"?1:d.ep_size||0,h=null;try{d.pubdate?typeof d.pubdate=="number"?h=new Date(d.pubdate*1e3).getFullYear():typeof d.pubdate=="string"&&d.pubdate.length>=4&&(h=parseInt(d.pubdate.substring(0,4))):d.pubtime&&(h=new Date(d.pubtime*1e3).getFullYear())}catch{}let A=of((d.title||"").replace(/<[^>]+>/g,"")).replace(/:/g,"\uFF1A").trim(),g=of((d.org_title||"").replace(/<[^>]+>/g,"")).trim(),b={provider:"bilibili",mediaId:f,mdId:d.media_id?`md${d.media_id}`:null,title:A,org_title:g,type:p,year:h,imageUrl:d.cover||null,episodeCount:m};d.eps&&d.eps.length>0&&(b._eps=d.eps),l.push(b)}return _("info",`[Bilibili] \u7C7B\u578B '${r}' \u627E\u5230 ${l.length} \u4E2A\u7ED3\u679C`),l}catch(s){return _("error",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}' \u5931\u8D25:`,s.message),[]}}_extractMediaType(e){let r=(e||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u756A\u5267")||r.includes("\u56FD\u521B")||r.includes("\u52A8\u6F2B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":r.includes("\u7EFC\u827A")||r.includes("variety")?"\u7EFC\u827A":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(e){let r=[];O.useBangumiData&&(r=await Au(e,["bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"]),_("info",`[Bilibili] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(s=>["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(s.matchedSiteKey));try{_("info",`[Bilibili] \u5F00\u59CB\u641C\u7D22: ${e}`);let s=await this._getWbiMixinKey(),i=this._searchByType(e,"media_bangumi",s),a=this._searchByType(e,"media_ft",s),o=Promise.resolve([]);this._hasBilibiliProxy()&&(_("info","[Bilibili] \u68C0\u6D4B\u5230\u4EE3\u7406\u914D\u7F6E\uFF0C\u542F\u7528\u6E2F\u6FB3\u53F0\u5E76\u884C\u641C\u7D22"),o=this._searchOversea(e,n.length>0));let c=(await Promise.all([i,a,o])).flat(),u=[],l=new Set,d=new Set;for(let p of c){if(!p||!p.mediaId&&!p.season_id)continue;let m=r.find(A=>p.mdId&&p.mdId===`md${A.siteId}`)||r.find(A=>p.org_title&&A.title===p.org_title);if(m){let g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.aliases=[...m.titles],p.type=m.typeStr||p.type,p.isLocalPriority=!0,d.add(`md${m.siteId}`),_("info",`[Bilibili] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}let h=p.mediaId||(p.season_id?`ss${p.season_id}`:null);h&&l.has(h)||(h&&l.add(h),u.push(p))}let f=r.filter(p=>!d.has(`md${p.siteId}`));if(f.length>0){let p=f.filter(h=>h.season_id),m=f.filter(h=>!h.season_id);if(p.length>0){_("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${p.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5....\uFF08\u5305\u542B season_id \uFF09`);for(let h of p){let g=(h.titles.find(x=>x&&x.includes(e))||h.titles[1]||h.title)+(h.titleSuffix||""),b={provider:"bilibili",mediaId:`ss${h.season_id}`,mdId:`md${h.siteId}`,title:g,org_title:h.title,aliases:[...h.titles],_displayTitle:g,type:h.typeStr,year:h.begin?parseInt(h.begin.substring(0,4)):null,imageUrl:"",episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(h.matchedSiteKey),isLocalPriority:!0},y=b.mediaId;y&&!l.has(y)&&(l.add(y),u.unshift(b))}}if(m.length>0){_("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${m.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5...`);let h=m.map(async g=>{let b=await this._resolveMediaInfo(g.siteId),x=(g.titles.find(v=>v&&v.includes(e))||g.titles[1]||g.title)+(g.titleSuffix||"");return{provider:"bilibili",mediaId:b.seasonId||`md${g.siteId}`,mdId:`md${g.siteId}`,title:x,org_title:g.title,aliases:[...g.titles],_displayTitle:x,type:g.typeStr,year:g.begin?parseInt(g.begin.substring(0,4)):null,imageUrl:b.cover,episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(g.matchedSiteKey),isLocalPriority:!0}}),A=await Promise.all(h);for(let g of A){let b=g.mediaId;b&&l.has(b)||b&&(l.add(b),u.unshift(g))}}}return _("info",`[Bilibili] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${u.length} \u4E2A\u6709\u6548\u7ED3\u679C`),u}catch(s){return _("error","[Bilibili] \u641C\u7D22\u51FA\u9519:",s.message),[]}}async _resolveMediaInfo(e){try{let r=await ge(`https://api.bilibili.com/pgc/review/user?media_id=${e}`),n=typeof r.data=="string"?JSON.parse(r.data):r.data;if(n.code===0&&n.result&&n.result.media){let s=n.result.media;return{seasonId:`ss${s.season_id}`,cover:s.cover||s.horizontal_picture||""}}}catch(r){_("error",`[Bilibili] \u83B7\u53D6\u5A92\u4F53\u4FE1\u606F\u5931\u8D25 (md${e}):`,r.message)}return{seasonId:null,cover:""}}async _getPgcEpisodes(e){let r=[],n=[`https://api.bilibili.com/pgc/view/web/season?season_id=${e}`,`https://api.bilibili.com/pgc/web/season/section?season_id=${e}`];for(let i of n)try{let a=await ge(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.code===0&&o.result&&(r=o.result.main_section?.episodes||o.result.episodes||[],o.result.cover&&(r._cover=o.result.cover),r.length>0))break}catch{}if(r.length===0)return _("error",`[Bilibili] \u83B7\u53D6\u756A\u5267\u5206\u96C6\u5931\u8D25 (season_id=${e}): \u6240\u6709\u63A5\u53E3\u5747\u65E0\u6570\u636E`),[];let s=r.map((i,a)=>{let o="";if(i.show_title)o=i.show_title;else{let c=i.title||String(a+1),u=i.long_title||"";o=/^\d+(\.\d+)?$/.test(c)?`\u7B2C${c}\u8BDD`:c,u&&u!==c&&(o+=` ${u}`)}return{vid:`${i.aid},${i.cid}`,id:i.id,title:o.trim(),link:`https://www.bilibili.com/bangumi/play/ep${i.id}`}});return r._cover&&(s._cover=r._cover),_("info",`[Bilibili] \u83B7\u53D6\u5230 ${s.length} \u4E2A\u756A\u5267\u5206\u96C6`),s}async _getUgcEpisodes(e){try{let r=`https://api.bilibili.com/x/web-interface/view?bvid=${e}`,n=await ge(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(s.code!==0||!s.data)return _("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u5931\u8D25 (bvid=${e}):`,s.message),[];let i=s.data.pages||[];if(i.length===0)return _("info",`[Bilibili] \u89C6\u9891 bvid=${e} \u65E0\u5206\u96C6\u6570\u636E`),[];let a=i.map((o,c)=>({vid:`${s.data.aid},${o.cid}`,id:o.cid,title:(o.part||`P${o.page}`).trim(),link:`https://www.bilibili.com/video/${e}?p=${o.page}`}));return _("info",`[Bilibili] \u83B7\u53D6\u5230 ${a.length} \u4E2A\u89C6\u9891\u5206\u96C6`),a}catch(r){return _("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u51FA\u9519 (bvid=${e}):`,r.message),[]}}async getEpisodes(e){if(e.startsWith("md")){let r=e.substring(2),n=await this._resolveMediaInfo(r);if(n.seasonId){let s=await this._getPgcEpisodes(n.seasonId.substring(2));return s._cover=n.cover,s}return[]}if(e.startsWith("ss")){let r=e.substring(2);return await this._getPgcEpisodes(r)}else if(e.startsWith("bv")){let r=e.substring(2);return await this._getUgcEpisodes(r)}return _("error",`[Bilibili] \u4E0D\u652F\u6301\u7684 ID \u683C\u5F0F: ${e}`),[]}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Bilibili] sourceAnimes is not a valid array"),[];e.forEach(d=>{d.aliases=d.aliases||[],d.title&&!d.aliases.includes(d.title)&&d.aliases.push(d.title),d.org_title&&!d.aliases.includes(d.org_title)&&d.aliases.push(d.org_title)});let o=e.length>0?e[0]._tmdbCnAlias:null;Zb(e,o);let c=e.filter(d=>d.isOversea||yt(d.title,r,i)||d.aliases&&d.aliases.some(f=>yt(f,r,i))),u=i!==null?i:Wt(r);if(u!==null){let d=c.filter(f=>{let p=f._displayTitle||f.title,m=Ct(p).season;return m===u||u===1&&m===null});d.length>0&&(c=d,_("info",`[Bilibili] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=c.map(async d=>{try{let f=[],p=d.checkMore?.content?.includes("\u67E5\u770B\u5168\u90E8");if(d._eps&&d._eps.length>0&&!p){f=d._eps.map((b,y)=>{let x;d.isOversea&&b.position?x=b.position.toString():x=b.index_title||b.index||(y+1).toString();let v=b.title||b.index_title||x,I=b.long_title||"",R=/^\d+(\.\d+)?$/.test(v)?`\u7B2C${v}\u8BDD`:v;I&&I!==v&&(R+=` ${I}`);let w=b.id||b.param,N=`https://www.bilibili.com/bangumi/play/ep${w}?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(N+="&area=hkmt"),{name:x,url:N,title:`\u3010bilibili1\u3011 ${R.trim()}`,_id:parseInt(w,10)||0}});let g=f.map(b=>uf(b.name));g.every(b=>b!==null)?(f.forEach((b,y)=>b._sortKey=g[y]),f.sort((b,y)=>b._sortKey-y._sortKey)):f.sort((b,y)=>b._id-y._id),_("info",`[Bilibili] \u76F4\u63A5\u4F7F\u7528\u641C\u7D22\u7ED3\u679C\u4E2D\u7684 ${f.length} \u96C6\u5206\u96C6`)}else{let g=await this.getEpisodes(d.mediaId);if(g.length===0){_("info",`[Bilibili] ${d.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}g._cover&&(d.imageUrl=g._cover),f=g.map((b,y)=>{let x=b.link+`?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(x+="&area=hkmt"),{name:`${y+1}`,url:x,title:`\u3010bilibili1\u3011 ${b.title}`,_id:parseInt(b.id,10)||0}}),f.sort((b,y)=>b._id-y._id)}if(f.length===0)return;let m=Yr(d.mediaId),h=d._displayTitle||Qt(d.title),A={animeId:m,bangumiId:d.mediaId,animeTitle:`${h}(${d.year||"N/A"})\u3010${d.type}\u3011from bilibili`,type:d.type,typeDescription:d.type,imageUrl:d.imageUrl,startDate:Or(d.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"bilibili",aliases:d.aliases};a.push(A),Dt({...A,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}catch(f){_("error",`[Bilibili] \u5904\u7406 ${d.title} \u5931\u8D25:`,f.message)}});return await Promise.all(l),this.sortAndPushAnimesByYear(a,n),a}async _extractVideoInfo(e){_("info","[Bilibili] \u63D0\u53D6B\u7AD9\u89C6\u9891\u4FE1\u606F...",e);let r="https://api.bilibili.com/x/web-interface/view",n="https://api.bilibili.com/pgc/view/web/season",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),_("info","[Bilibili] ",a);else return _("error","[Bilibili] Invalid URL"),null;let o,c,u,l;if(e.includes("video/"))try{let d=e.split("?")[1],f=1;if(d){let A=d.split("&");for(let g of A){let[b,y]=g.split("=");b==="p"&&(f=y||1)}}_("info",`[Bilibili] p: ${f}`);let p;e.includes("BV")?p=`${r}?bvid=${a[2]}`:(c=a[2].substring(2),p=`${r}?aid=${a[2].substring(2)}`);let m=await ge(p,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),h=typeof m.data=="string"?JSON.parse(m.data):m.data;if(h.code!==0)return _("error","[Bilibili] \u83B7\u53D6\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",h.message),null;u=h.data.duration,o=h.data.pages[f-1].cid}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ep"))try{let d=a.slice(-1)[0].slice(2),f=e.split("?")[1]||"",p=null,m=!1;f.split("&").forEach(A=>{let[g,b]=A.split("=");g==="season_id"&&(p=b),g==="area"&&b==="hkmt"&&(m=!0)});let h=!1;if(!m){let A=await ge(`${n}?ep_id=${d}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0"}}),g=typeof A.data=="string"?JSON.parse(A.data):A.data;if(g.code===0&&g.result){let b=g.result.episodes.find(y=>y.id==d);b&&(o=b.cid,u=b.duration/1e3,l=b.share_copy,h=!0)}}if((!h||m)&&p&&this._hasBilibiliProxy()){try{let A=this._makeProxyUrl(`https://api.bilibili.com/pgc/view/web/season?season_id=${p}`),g=await ge(A,{headers:{Cookie:O.bilibliCookie||"","User-Agent":"Mozilla/5.0"}}),b=typeof g.data=="string"?JSON.parse(g.data):g.data;if(b.code===0&&b.result){let y=(b.result.episodes||b.result.main_section?.episodes||[]).find(x=>x.id==d);y&&(o=y.cid,c=y.aid,u=y.duration/1e3,l=y.long_title,h=!0)}}catch{}if(!h)try{let A=await ge(`https://api.bilibili.com/pgc/web/season/section?season_id=${p}`,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||""}}),g=typeof A.data=="string"?JSON.parse(A.data):A.data;if(g.code===0&&g.result?.main_section?.episodes){let b=g.result.main_section.episodes.find(y=>y.id==d);b&&(o=b.cid,c=b.aid,u=b.duration?b.duration/1e3:0,l=b.long_title,h=!0)}}catch{}}if(!o)return _("error","[Bilibili] \u672A\u627E\u5230\u5339\u914D\u7684\u756A\u5267\u96C6\u4FE1\u606F"),null;!u&&u!==0&&(u=0)}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ss"))try{let d=a.slice(-1)[0].slice(2).split("?")[0],f=`${n}?season_id=${d}`;_("info",`[Bilibili] \u83B7\u53D6\u756A\u5267\u4FE1\u606F: season_id=${d}`);let p=await ge(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return _("error","[Bilibili] \u83B7\u53D6\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m.message),null;if(!m.result.episodes||m.result.episodes.length===0)return _("error","[Bilibili] \u756A\u5267\u6CA1\u6709\u53EF\u7528\u7684\u96C6\u6570"),null;let h=m.result.episodes[0];o=h.cid,u=h.duration/1e3,l=h.share_copy,_("info",`[Bilibili] \u4F7F\u7528\u7B2C\u4E00\u96C6: ${l}, cid=${o}`)}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else return _("error","[Bilibili] \u4E0D\u652F\u6301\u7684B\u7AD9\u89C6\u9891\u7F51\u5740\uFF0C\u4EC5\u652F\u6301\u666E\u901A\u89C6\u9891(av,bv)\u3001\u5267\u96C6\u89C6\u9891(ep,ss)"),null;return _("info",`[Bilibili] \u63D0\u53D6\u89C6\u9891\u4FE1\u606F\u5B8C\u6210: cid=${o}, aid=${c}, duration=${u}`),{cid:o,aid:c,duration:u,title:l}}async getEpisodeDanmu(e){_("info","[Bilibili] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42B\u7AD9\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Bilibili] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=6,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(d).then(f=>({status:"ok",value:f})).catch(f=>({status:"err",error:f}))),u=await Promise.all(c),l=!1;for(let d of u)d.status==="ok"&&d.value?i.push(...d.value):(_("info","[Bilibili] \u6355\u83B7\u5230\u5206\u6BB5\u8BF7\u6C42\u51FA\u9519\uFF0C\u8BF4\u660E\u8BF7\u6C42\u5B8C\u6BD5\uFF0C\u505C\u6B62\u540E\u7EED\u8BF7\u6C42"),l=!0);if(l)break}return i}async getEpisodeDanmuSegments(e){if(_("info","[Bilibili] \u83B7\u53D6B\u7AD9\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),typeof e=="string"&&e.includes("/combine?")){let c=[],u=0,l=0,d=e.startsWith("http")?e:`https://www.bilibili.com${e}`,f=new URL(d);for(let[p,m]of f.searchParams.entries()){if(!p.startsWith("cid"))continue;let h=p.substring(3),[A,g]=m.split("-"),b=parseFloat(A)||0,y=parseFloat(g)||0,x=y-b;if(x<=0)continue;l+=x;let v=Math.ceil(y/360);for(let I=0;I0?Math.ceil(i/360):36;_("info",`[Bilibili] maxLen: ${a}`);let o=[];for(let c=0;c0?Math.min((c+1)*360,i):(c+1)*360,url:u})}return new St({type:"bilibili1",duration:i>0?i:0,segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=new URL(e.url),n=e.url.split("#")[0],s=await ge(n,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Cookie:O.bilibliCookie},base64Data:!0,retries:1}),i=[];if(s&&s.data&&(i=T8e(s.data)),r.hash&&r.hash.includes("combine_offset")){let a=new URLSearchParams(r.hash.substring(1)),o=parseFloat(a.get("combine_start"))||0,c=parseFloat(a.get("combine_end"))||0,u=parseFloat(a.get("combine_offset"))||0,l=[];for(let d of i){let f=0;if(d.p&&typeof d.p=="string"?f=parseFloat(d.p.split(",")[0]):d.t!==void 0?f=Number(d.t):d.progress!==void 0&&(f=d.progress/1e3),!isNaN(f)&&f>=o&&f<=c){let p=f-o+u;if(d.p&&typeof d.p=="string"){let m=d.p.split(",");m[0]=p.toFixed(5),d.p=m.join(",")}d.t!==void 0&&(d.t=p),d.progress!==void 0&&(d.progress=Math.round(p*1e3)),l.push(d)}}return l}return i}catch(r){throw r}}formatComments(e){return e.map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=Qt(r.m)),r.like=r.like_num,r))}_makeProxyUrl(e){return O.makeProxyUrl(e)}_hasBilibiliProxy(){return(O.proxyUrl||"").split(",").some(e=>{let r=e.trim();return r.startsWith("bilibili@")||r.startsWith("@")})}_javaUrlEncode(e){return encodeURIComponent(e).replace(/!/g,"%21").replace(/'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/\*/g,"%2A").replace(/%20/g,"+")}async _searchOverseaRequest(e,r,n,s="Original",i=null){let o=(O.bilibliCookie||"").match(/([0-9a-fA-F]{32})/);if(!((O.proxyUrl||"").includes("bilibili@")||(O.proxyUrl||"").includes("@")))return[];if(o){_("info",`[Bilibili-Proxy][${s}] \u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 APP \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${r})...`);try{let u={keyword:e,type:r,area:"tw",mobi_app:"android",platform:"android",build:"8140200",ts:Math.floor(Date.now()/1e3),appkey:t.APP_KEY,access_key:o[1],disable_rcmd:1},l=Object.keys(u).sort().map(h=>`${h}=${this._javaUrlEncode(String(u[h]))}`).join("&"),d=Ls(l+t.APP_SEC),f=`https://app.bilibili.com/x/v2/search/type?${l}&sign=${d}`,p=O.makeProxyUrl(f),m=await this._fetchAppSearchWithStream(p,{"User-Agent":"Mozilla/5.0 Android","X-From-Biliroaming":"1.0.0"},s,i);if(m&&m.code===0)return(m.data?.items||m.data?.result||m.data||[]).filter(h=>h.goto!=="recommend_tips"&&h.area!=="\u6F2B\u6E38"&&h.badge!=="\u516C\u544A").map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:h.uri.match(/season\/(\d+)/)?.[1]?`ss${h.uri.match(/season\/(\d+)/)[1]}`:"",title:of((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:of((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.ptime?new Date(h.ptime*1e3).getFullYear():null,imageUrl:h.cover||h.pic||"",episodeCount:0,_eps:h.episodes||h.episodes_new,checkMore:h.check_more,isOversea:!0})).filter(h=>h.mediaId);m&&m.code!==0&&_("warn",`[Bilibili-Proxy] App \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`)}catch(u){if(u.name==="AbortError")throw u;_("error",`[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}`)}_("info","[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5931\u8D25\uFF0C\u81EA\u52A8\u964D\u7EA7\u81F3 Web \u63A5\u53E3...")}else _("info",`[Bilibili-Proxy][${s}] \u672A\u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 Web \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${n})...`);try{let u={keyword:e,search_type:n,area:"tw",page:1,order:"totalrank",__refresh__:!0,_timestamp:Date.now()},d=`https://api.bilibili.com/x/web-interface/search/type?${Object.keys(u).map(h=>`${encodeURIComponent(h)}=${encodeURIComponent(u[h])}`).join("&")}`,f=O.makeProxyUrl(d),p=await ge(f,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||"","X-From-Biliroaming":"1.0.0"},signal:i}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return _("warn",`[Bilibili-Proxy] Web \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`),[];if(m.data?.result)return m.data.result.filter(h=>h.url?.includes("bilibili.com")&&!h.areas?.includes("\u6F2B\u6E38")).map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:"",mdId:h.media_id?`md${h.media_id}`:null,title:of((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:of((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.pubtime?new Date(h.pubtime*1e3).getFullYear():null,imageUrl:h.cover||null,episodeCount:h.ep_size||0,_eps:h.eps,isOversea:!0})).filter(h=>h.mediaId)}catch(u){if(u.name==="AbortError")throw u;_("error",`[Bilibili-Proxy] Web \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}\uFF08\u5982\u679C\u662F-500/-502\u8BF4\u660E\u53EA\u662F\u98CE\u63A7\uFF09`)}return[]}async _searchOversea(e,r=!1){let n=new AbortController,s=r?[{appType:8,webType:"media_ft"}]:[{appType:7,webType:"media_bangumi"},{appType:8,webType:"media_ft"}],i=Promise.all(s.map(async(o,c)=>(c>0&&await new Promise(u=>setTimeout(u,c*300)),this._searchOverseaRequest(e,o.appType,o.webType,"Original")))).then(o=>{let c=o.flat();return c.length&&n.abort(),c.forEach(u=>u._originalQuery=e),c}).catch(()=>[]),a=O.tmdbApiKey?new Promise(o=>setTimeout(o,100)).then(async()=>{let o=await Xb(e,n.signal,"Bilibili");if(o&&o.title&&o.title!==e){let{title:c,cnAlias:u}=o,l=s.map(async(f,p)=>(p>0&&await new Promise(m=>setTimeout(m,p*300)),this._searchOverseaRequest(c,f.appType,f.webType,"TMDB",n.signal))),d=(await Promise.all(l)).flat();return d.forEach(f=>{f._originalQuery=e,f._searchUsedTitle=c,f._tmdbCnAlias=u}),d}return[]}).catch(()=>[]):Promise.resolve([]);return(await Promise.all([i,a])).flat()}async _fetchAppSearchWithStream(e,r,n,s){if(typeof $V!="function")return null;let i=!1,a=!1,o=await $V(e,{headers:r,sniffLimit:8192,signal:s},c=>i?!0:c.includes('"goto":"recommend_tips"')||c.includes("\u6682\u65E0\u641C\u7D22\u7ED3\u679C")?(_("info",`[Bilibili-Proxy][${n}] \u55C5\u63A2\u5230\u65E0\u6548\u6570\u636E\uFF0C\u4E2D\u65AD`),a=!0,!1):((c.includes('"season_id"')||c.includes('"episodes"'))&&(i=!0),!0));return a?{code:0,data:{items:[]}}:o}};Ot();_t();ir();hn();Ts();$n();hs();var Pg=class extends Tt{convertYoukuUrl(e){let r=e.match(/vid=([^&]+)/);return!r||!r[1]?null:`https://v.youku.com/v_show/id_${r[1]}.html`}filterYoukuSearchItem(e,r){let n=e.commonData;if(!n||!n.titleDTO||n.isYouku!==1&&n.hasYouku!==1)return null;let s=n.titleDTO.displayName;if(["\u4E2D\u914D\u7248","\u62A2\u5148\u770B","\u975E\u6B63\u7247","\u89E3\u8BFB","\u63ED\u79D8","\u8D4F\u6790","\u300A"].some(f=>s.includes(f)))return null;let a=n.feature.match(/[12][890][0-9][0-9]/),o=a?parseInt(a[0]):null,c=s.replace(/<[^>]+>/g,"").replace(/【.+?】/g,"").trim().replace(/:/g,"\uFF1A"),u="\u7535\u89C6\u5267",l=(n.cats||"").toLowerCase(),d=(n.feature||"").toLowerCase();return l.includes("\u52A8\u6F2B")||l.includes("anime")?u="\u52A8\u6F2B":l.includes("\u7535\u5F71")||l.includes("movie")?u="\u7535\u5F71":l.includes("\u7535\u89C6\u5267")||l.includes("drama")?u="\u7535\u89C6\u5267":l.includes("\u7EFC\u827A")||l.includes("variety")?u="\u7EFC\u827A":d.includes("\u52A8\u6F2B")?u="\u52A8\u6F2B":d.includes("\u7535\u5F71")?u="\u7535\u5F71":d.includes("\u7535\u89C6\u5267")?u="\u7535\u89C6\u5267":d.includes("\u7EFC\u827A")&&(u="\u7EFC\u827A"),{provider:"youku",mediaId:n.showId,title:c,type:u,year:o,imageUrl:n.posterDTO?n.posterDTO.vThumbUrl:null,episodeCount:n.episodeTotal,cats:n.cats}}async search(e){try{_("info",`[Youku] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=encodeURIComponent(e),n=encodeURIComponent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"),s=`https://search.youku.com/api/search?keyword=${r}&userAgent=${n}&site=1&categories=0&ftype=0&ob=0&pg=1`,i=await ge(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Accept:"application/json",Referer:"https://www.youku.com/"}});if(!i||!i.data)return _("info","[Youku] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.pageComponentList)return _("info","[Youku] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[];for(let c of a.pageComponentList){let u=this.filterYoukuSearchItem(c,e);u&&o.push(u)}return _("info",`[Youku] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Youku] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Youku] \u83B7\u53D6\u5206\u96C6\u5217\u8868: show_id=${e}`);let r=100,n=await this._getEpisodesPage(e,1,r);if(!n||!n.videos||n.videos.length===0)return _("info","[Youku] \u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];let s=[...n.videos],i=n.total;if(i>r){let a=Math.ceil(i/r);_("info",`[Youku] \u68C0\u6D4B\u5230 ${i} \u4E2A\u5206\u96C6\uFF0C\u5C06\u5E76\u53D1\u8BF7\u6C42 ${a} \u9875`);let o=[];for(let u=2;u<=a;u++)o.push(this._getEpisodesPage(e,u,r));let c=await Promise.allSettled(o);for(let u=0;uyt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Youku] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=this._extractMediaType(l.cats,l.type),p=this._processAndFormatEpisodes(d,f),m=[];for(let h of p){let A=h.link||`https://v.youku.com/v_show/id_${h.vid}.html`;m.push({name:h.episodeIndex.toString(),url:A,title:`\u3010youku\u3011 ${h.title}`})}if(m.length>0){let A={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from youku`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:m.length,rating:0,isFavorited:!0,source:"youku"};a.push(A),Dt({...A,links:m},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Youku] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}_processAndFormatEpisodes(e,r="variety"){return[...e].map((i,a)=>{let o=a+1,c=this._formatEpisodeTitle(i,o,r);return{vid:i.id,title:c,episodeIndex:o,link:i.link}})}_formatEpisodeTitle(e,r,n){let s=e.displayName||e.title,i=/^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*(?=(?:第\d+期))|^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*:\s*/;if(s=s.replace(i,"").trim(),n==="movie")return s;if(n==="variety"){let a=s.match(/第(\d+)期/);return a?`\u7B2C${a[1]}\u671F ${e.published?.split(" ")[0]??""} ${s}`:`\u7B2C${r}\u671F ${e.published?.split(" ")[0]??""} ${s}`}return/^第\d+集/.test(s)?s:`\u7B2C${r}\u96C6 ${s}`}_extractMediaType(e,r){let n=(e||"").toLowerCase(),s=(r||"").toLowerCase();return n.includes("\u7EFC\u827A")||n.includes("variety")?"variety":n.includes("\u7535\u5F71")||n.includes("movie")?"movie":n.includes("\u52A8\u6F2B")||n.includes("anime")?"anime":n.includes("\u7535\u89C6\u5267")||n.includes("drama")?"drama":s.includes("\u7EFC\u827A")?"variety":s.includes("\u7535\u5F71")?"movie":s.includes("\u52A8\u6F2B")?"anime":(s.includes("\u7535\u89C6\u5267"),"drama")}async getEpisodeDanmu(e){if(_("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5F39\u5E55...",e),!e)return[];let n=(await this.getEpisodeDanmuSegments(e)).segmentList,s=[],i=O.youkuConcurrency,a=[...n];for(let o=0;o{let l=await Kr(u.url,yi({data:u.data}),{headers:{Cookie:`_m_h5_tk=${u._m_h5_tk};_m_h5_tk_enc=${u._m_h5_tk_enc};`,Referer:"https://v.youku.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1,retries:1}),d=[];if(l.data?.data&&l.data.data.result){let f=JSON.parse(l.data.data.result);f.code!=="-1"&&d.push(...f.data.result)}return d});try{let u=await Promise.allSettled(c);for(let l of u)l.status==="fulfilled"&&Array.isArray(l.value)&&(s=s.concat(l.value))}catch(u){_("error","[Youku] \u4F18\u9177\u5206\u6BB5\u6279\u91CF\u8BF7\u6C42\u5931\u8D25:",u.message)}}return ts(s),s}async getEpisodeDanmuSegments(e){if(_("info","[Youku] \u83B7\u53D6\u4F18\u9177\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),!e)return new St({type:"youku",segmentList:[]});e.includes("youku.com/video?vid")&&(e=this.convertYoukuUrl(e));let r="https://openapi.youku.com/v2/videos/show.json",n="https://acs.youku.com/h5/mopen.youku.danmu.list/1.0/",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),_("info","[Youku]",a);else return _("error","[Youku] Invalid URL"),[];let o=a[a.length-1].split(".")[0].slice(3);_("info",`[Youku] video_id: ${o}`);let c;try{let x=`${r}?client_id=53e6cc67237fc59a&video_id=${o}&package=com.huawei.hwvplayer.youku&ext=show`;c=await ge(x,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1})}catch(x){return _("error","[Youku] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",x),[]}let u=typeof c.data=="string"?JSON.parse(c.data):c.data,l=u.title,d=u.duration;_("info",`[Youku] \u6807\u9898: ${l}, \u65F6\u957F: ${d}`);let f,p,m;try{let x="https://log.mmstat.com/eg.js",v="https://acs.youku.com/h5/mtop.com.youku.aplatform.weakget/1.0/?jsv=2.5.1&appKey=24679788",I=await ge(x,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});_("info",`[Youku] cnaRes: ${JSON.stringify(I)}`),_("info",`[Youku] cnaRes.headers: ${JSON.stringify(I.headers)}`);let R=I.headers.etag||I.headers.Etag;_("info",`[Youku] etag: ${R}`),f=R.replace(/^"|"$/g,""),_("info",`[Youku] cna: ${f}`);let w;for(;!w;)w=await ge(v,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});_("info",`[Youku] tkEncRes: ${JSON.stringify(w)}`),_("info",`[Youku] tkEncRes.headers: ${JSON.stringify(w.headers)}`);let N=w.headers["set-cookie"]||w.headers["Set-Cookie"];_("info",`[Youku] tkEncSetCookie: ${N}`);let P=N.match(/_m_h5_tk_enc=([^;]+)/);p=P?P[1]:null;let B=N.match(/_m_h5_tk=([^;]+)/);m=B?B[1]:null,_("info",`[Youku] _m_h5_tk_enc: ${p}`),_("info",`[Youku] _m_h5_tk: ${m}`)}catch(x){return _("error","[Youku] \u83B7\u53D6 cna \u6216 tk_enc \u5931\u8D25:",x),[]}let h=60,A=Math.floor(d/h)+1,g=[],b=async x=>{let v={ctime:Date.now(),ctype:10004,cver:"v1.0",guid:f,mat:x,mcount:1,pid:0,sver:"3.1.0",type:1,vid:o},I=JSON.stringify(v);function R(Z){let W="";for(let F=0;F255?W+=encodeURIComponent(Z[F]):W+=Z[F];return W}function w(Z){let W="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",F="",K=0,j=0;for(let J=0;J=6;)F+=W[K>>j-6&63],j-=6;for(j>0&&(F+=W[K<<6-j&63]);F.length%4!==0;)F+="=";return F}let N=w(R(I));v.msg=N,v.sign=Ls(`${N}MkmC9SoIw6xCkSKHhJ7b5D2r51kBiREr`).toString().toLowerCase();let P=JSON.stringify(v),B=Date.now(),M={jsv:"2.5.6",appKey:"24679788",t:B,sign:Ls([m.slice(0,32),B,"24679788",P].join("&")).toString().toLowerCase(),api:"mopen.youku.danmu.list",v:"1.0",type:"originaljson",dataType:"jsonp",timeout:"20000",jsonpIncPrefix:"utility"},D=yi(M),L=`${n}?${D}`;return _("info",`[Youku] piece_url: ${L}`),{type:"youku",segment_start:x*h,segment_end:Math.min((x+1)*h,d),url:L,data:P,_m_h5_tk:m,_m_h5_tk_enc:p}},y=Array.from({length:A},(x,v)=>v);for(let x=0;x{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};n.timepoint=r.playat/1e3;let s=JSON.parse(r.propertis);if(s?.color&&(n.color=typeof s.color=="string"?parseInt(s.color,10):s.color),s?.pos){let i=s.pos;i===1?n.ct=5:i===2&&(n.ct=4)}return n.content=r.content,n.like=r.extFields.voteUp,n})}};hn();var ysn=new wg,xsn=new Rg,bsn=new Ng,Esn=new Og,_sn=new Pg,Ssn=new Tg,i4=`LogVar Danmu API/${O.version}`,JT=class extends Tt{async search(e,r=!1){if(O.useBangumiData&&!r){let n=await Au(e,["anidb"]);if(n.length>0)return _("info",`[Dandan] Bangumi-Data \u672C\u5730\u547D\u4E2D ${n.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`),n.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||s.titles[1]||s.title)+(s.titleSuffix||"");return{animeId:parseInt(s.siteId),animeTitle:a,type:s.typeId,typeDescription:s.typeStr,imageUrl:"",startDate:s.begin,rating:0,aliases:[...s.titles]}})}try{_("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`);let n=new AbortController,s=(async()=>{try{let c=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":i4},retries:1});if(!c||!c.data)return _("info","[Dandan] \u539F\u59CB\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: original)"),{success:!1,source:"original"};if(!c.data.animes||c.data.animes.length===0)return _("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"};n.abort();let u=c.data.animes;return _("info",`[Dandan] dandanSearchresp (original): ${JSON.stringify(u)}`),_("info",`[Dandan] \u8FD4\u56DE ${u.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:u,source:"original"}}catch(c){return _("error","[Dandan] getDandanAnimes error:",{message:c.message,name:c.name,stack:c.stack}),{success:!1,source:"original"}}})(),i=(async()=>{try{await new Promise(p=>setTimeout(p,100));let c=await Xb(e,n.signal,"Dandan");if(!c||!c.title)return _("info","[Dandan] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:u,cnAlias:l}=c;_("info",`[Dandan] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u901A\u8FC7 episodes \u63A5\u53E3\u8FDB\u884C\u641C\u7D22: ${u}`);let d=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/episodes?anime=${encodeURIComponent(u)}`,{headers:{"Content-Type":"application/json","User-Agent":i4},signal:n.signal,retries:1});if(!d||!d.data)return _("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: tmdb)"),{success:!1,source:"tmdb"};if(!d.data.animes||d.data.animes.length===0)return _("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"};let f=d.data.animes;for(let p of f)p.isTmdbSource=!0,p._tmdbCnAlias=l;return _("info",`[Dandan] dandanSearchresp (tmdb): ${JSON.stringify(f)}`),_("info",`[Dandan] \u8FD4\u56DE ${f.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:f,source:"tmdb"}}catch(c){if(c.name==="AbortError")return _("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0};throw c}})(),[a,o]=await Promise.all([s,i]);if(a.success)return a.data;if(o.success)return o.data;if(_("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (\u5F53\u524D\u641C\u7D22\u8BCD: ${e})`),!r){let c=e.replace(/(?:第\s*[0-9一二三四五六七八九十百千万]+\s*[季期部])|(?:S(?:eason)?\s*\d+)|(?:Part\s*\d+)/gi,"").trim();if(c&&c!==e)return _("info",`[Dandan] \u5C1D\u8BD5\u53BB\u9664\u5B63\u5EA6\u4FE1\u606F\u8FDB\u884C\u964D\u7EA7\u641C\u7D22: ${c}`),await this.search(c,!0)}return[]}catch(n){return _("error","[Dandan] getDandanAnimes error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async getEpisodes(e){try{let r=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":i4},retries:1});if(!r||!r.data)return _("info","[Dandan] getDandanEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};if(!r.data.bangumi)return _("info","[Dandan] getDandanEposides: bangumi \u6570\u636E\u4E0D\u5B58\u5728"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};let n=r.data.bangumi,s=Array.isArray(n.episodes)?n.episodes:[],i=Array.isArray(n.titles)?n.titles.map(f=>f.title):[],a=Array.isArray(n.relateds)?n.relateds:[],o=n.type||null,c=n.typeDescription||null,u=!1,l=!1;n.tags&&Array.isArray(n.tags)&&n.tags.forEach(f=>{f.name&&f.name.toUpperCase().includes("3D")&&(u=!0),f.name&&f.name.toUpperCase().includes("2D")&&(l=!0)}),u?c="3D"+(c||""):l&&(c="2D"+(c||""));let d=n.imageUrl||null;return _("info",`[Dandan] getDandanEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),{episodes:s,titles:i,relateds:a,type:o,typeDescription:c,imageUrl:d}}catch(r){return _("error","[Dandan] getDandanEposides error:",{message:r.message,name:r.name,stack:r.stack}),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null,imageUrl:null}}}calculateSimilarity(e,r){if(!e||!r)return 0;let n=new Set(e.toLowerCase()),s=new Set(r.toLowerCase()),i=[...n].filter(o=>s.has(o)).length,a=new Set([...n,...s]).size;return i/a}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Dandan] sourceAnimes is not a valid array"),[];e.forEach(m=>{m.title=m.animeTitle});let o=e.length>0?e[0]._tmdbCnAlias:null;Zb(e,o);let c=e.length,u=new Set,l=[],d=i!==null?i:Wt(r),f=e,p=!1;if(d!==null){let m=e.filter(h=>{let A=h._displayTitle||h.animeTitle,g=Ct(A).season;return g===d||d===1&&g===null});m.length>0&&(f=m,p=!0,_("info",`[Dandan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${d}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}for(let m of f)u.add(m.animeId),l.push({...m,isRelated:!1});for(;l.length>0;){let m=l.splice(0,l.length);await Promise.all(m.map(async h=>{try{let A=await this.getEpisodes(h.animeId),g=A.episodes,b=A.titles||[],y=this.calculateSimilarity(r,h.animeTitle),x=!p;if(y>=.1&&A.relateds&&Array.isArray(A.relateds)&&x)for(let w of A.relateds){let N=Ct(w.animeTitle).season!==null;!u.has(w.animeId)&&(N||c>=25)&&(u.add(w.animeId),l.push({animeId:w.animeId,animeTitle:w.animeTitle,imageUrl:w.imageUrl,rating:w.rating||0,isRelated:!0}))}let v=[h.animeTitle,...b,...h.aliases||[]],I=!1;if(h.isRelated||h.isTmdbSource)if(d!==null){let w=null;for(let N of v){if(!N)continue;let P=Wt(N);if(P!==null){w=P;break}}d>1?I=(w||1)===d:d===1&&(I=w===null||w===1)}else I=!0;else I=v.some(w=>w&&yt(w,r,d));if(!I)return;let R=[];for(let w of g){let N=w.episodeTitle&&w.episodeTitle.trim()!==""?`${w.episodeTitle}`:`\u7B2C${w.episodeNumber}\u96C6`;R.push({name:N,url:w.episodeId.toString(),title:`\u3010dandan\u3011 ${N}`})}if(R.length>0){let w=h._displayTitle||h.animeTitle,N=[...new Set([...b,...h.aliases||[]])];h.animeTitle&&h.animeTitle!==w&&!N.includes(h.animeTitle)&&N.push(h.animeTitle);let P=A.type||h.type||"tvseries",B=A.typeDescription||h.typeDescription||"TV\u52A8\u753B",M=h.startDate||(g.length>0?g[0].airDate:null),D=M?new Date(M).getFullYear():"\u672A\u77E5",L={animeId:h.animeId,bangumiId:String(h.animeId),animeTitle:`${w}(${D})\u3010${B}\u3011from dandan`,aliases:N,type:P,typeDescription:B,imageUrl:A.imageUrl||h.imageUrl,startDate:M,episodeCount:R.length,rating:h.rating||0,isFavorited:!0,source:"dandan"};a.push(L),Dt({...L,links:R},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(A){_("error",`[Dandan] Error processing anime: ${A.message}`)}}))}return this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e,r=[]){let n=[],s={};try{let a=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=%2Fv2%2Fcomment%2F${e}%3Ffrom%3D0%26withRelated%3Dtrue%26chConvert%3D0`,{headers:{"Content-Type":"application/json","User-Agent":i4},retries:1}).catch(o=>(_("error",`[Dandan] dandan base comments error: ${o.message}`),null));a&&a.data&&a.data.comments?(n=a.data.comments,s.dandan=n.length):s.dandan=0}catch(i){_("error","[Dandan] getEpisodeDanmu error:",{message:i.message,name:i.name,stack:i.stack})}return n}async getEpisodeDanmuSegments(e){return _("info","[Dandan] \u83B7\u53D6\u5F39\u5F39play\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"dandan",segmentList:[{type:"dandan",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>r.isRealTimePulled?O.danmuSimplifiedTraditional==="simplified"&&r.m?{...r,m:Qt(r.m)}:r:{cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:O.danmuSimplifiedTraditional==="simplified"?Qt(r.m):r.m})}};Ot();_t();ir();$n();so();hs();var XT=class extends Tt{async search(e){try{let r=await ge(`${O.customSourceApiUrl}/api/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(_("info","[Custom] customSourceSearchresp: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):r.data.animes?(_("info",`[Custom] \u641C\u7D22\u627E\u5230 ${r.data.animes.length} \u4E2A\u6709\u6548\u7ED3\u679C`),r.data.animes):(_("info","[Custom] customSourceSearchresp: seriesData \u6216 seriesList \u4E0D\u5B58\u5728"),[])}catch(r){return _("error","[Custom] getCustomSourceAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=await ge(`${O.customSourceApiUrl}/api/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(_("info","[Custom] getCustomSourceEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):!r.data.bangumi||!r.data.bangumi.episodes?(_("info",`[Custom] getCustomSourceEposides: episodes \u4E0D\u5B58\u5728. Response: ${JSON.stringify(r.data)}`),[]):(_("info",`[Custom] getCustomSourceEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),r.data.bangumi.episodes)}catch(r){return _("error","[Custom] getCustomSourceEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null){let i=[];if(!e||!Array.isArray(e))return _("error","[Custom] sourceAnimes is not a valid array"),[];let a=await Promise.all(e.map(async o=>{try{let c=await this.getEpisodes(o.bangumiId),u=[];for(let l of c){let d=l.episodeTitle&&l.episodeTitle.trim()!==""?`${l.episodeTitle}`:`\u7B2C${l.episodeNumber}\u96C6`;u.push({name:d,url:l.episodeId.toString(),title:`\u3010custom\u3011 ${d}`})}if(u.length>0){let l={animeId:o.animeId,bangumiId:String(o.bangumiId),animeTitle:`${o.animeTitle}(${new Date(o.startDate).getFullYear()})\u3010${o.typeDescription}\u3011from custom`,type:o.type,typeDescription:o.typeDescription,imageUrl:o.imageUrl,startDate:o.startDate,episodeCount:u.length,rating:o.rating,isFavorited:!0,source:"custom"};i.push(l),Dt({...l,links:u},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(c){_("error",`[Custom] Error processing anime: ${c.message}`)}}));return this.sortAndPushAnimesByYear(i,n),a}async getEpisodeDanmu(e){let r=[];try{let n=await ge(`${O.customSourceApiUrl}/api/v2/comment/${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1});return n.data&&n.data.comments&&(r=n.data.comments),r}catch(n){return _("error","[Custom] fetchCustomSourceEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return _("info","[Custom] \u83B7\u53D6Custom Source\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"custom",segmentList:[{type:"custom",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>({cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:O.danmuSimplifiedTraditional==="simplified"?Qt(r.m):r.m}))}};Ot();_t();ir();Ts();$n();Ts();var pmr=` +${a}?${o}`;return D8e(c,u)}buildSignedHeaders({method:e,url:r,params:n={},deviceId:s,token:i}){let a={client_type:"web_pc",client_version:"1.0.0",user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},o=T8e(r),c=SC(n),u=Date.now(),d=this.generateSignature(e,s,a.client_type,a.client_version,u,o,c,"ES513W0B1CsdUrR13Qk5EgDAKPeeKZY");return{clientVersion:a.client_version,deviceId:s,clientType:a.client_type,t:String(u),aliId:s,umid:s,token:i||"",cv:a.client_version,ct:a.client_type,uet:"9","x-ca-sign":d,Accept:"application/json","User-Agent":a.user_agent,Origin:a.origin,Referer:a.referer}}async fetchStandardDanmu(e,r,n){try{let s=await ge(e,{headers:r,timeout:5e3,validStatusCodes:[404]});if(s.status===404)return s.data&&s.data.error==="Document not found"?[]:(_("info",`[Renren] ${n} \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548`),null);if(!s.data)return null;let i=s.data;return Array.isArray(i)?i:i&&i.data&&Array.isArray(i.data)?i.data:[]}catch(s){return _("info",`[Renren] ${n} \u7AEF\u5F39\u5E55\u62C9\u53D6\u5F02\u5E38: ${s.message}`),null}}async renrenHttpGet(e,{params:r={},headers:n={},validStatusCodes:s=[]}={}){let i=db(e,r);return await ge(i,{headers:n,timeout:5e3,validStatusCodes:s})}async renrenRequest(e,r,n={}){let s=this.generateDeviceId(),i=this.buildSignedHeaders({method:e,url:r,params:n,deviceId:s});return await ge(r+"?"+SC(n),{headers:i,timeout:5e3})}async searchAppContent(e,r=30){try{let n=Date.now(),s="/qwtv/search",i={searchWord:e,num:r,searchNext:"",well:"match"},a=wC(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p==null?"":String(p))}`).join("&"),c=this.generateTvHeaders(n,a),u=`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,l=await ge(u,{headers:c,timeout:5e3});return!l.data||l.data.code!=="0000"?(_("info",`[Renren] TV\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${l?.data?.code}, msg=${l?.data?.msg}`),null):(l.data.data||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:null,currentEpisodeIndex:null}})}catch(n){return _("info","[Renren] searchAppContent error:",n.message),null}}async performMacSearch(e,r=20){try{let n="/search/v5/season",s={keywords:e,order:"match",search_after:"",size:r},i=this.buildMacHeaders(),a=SC(s),o=`https://${this.API_CONFIG.MAC_HOST}${n}?${a}`,c=await ge(o,{headers:i,timeout:5e3});return!c.data||c.data.code!=="0000"?(_("info",`[Renren] Mac\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${c?.data?.code}`),null):(c.data.data||[]).map(l=>{let d=[];if(l.highlights&&(l.highlights.alias&&(d=l.highlights.alias.split(",").map(f=>f.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),l.highlights.original_name)){let f=l.highlights.original_name.replace(/<[^>]+>/g,"").trim();f&&!d.includes(f)&&d.push(f)}return{provider:"renren",mediaId:String(l.id),title:String(l.title||l.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:d,type:l.classify||l.cat||"Renren",season:null,year:l.year||null,imageUrl:l.cover||l.cover3||"",episodeCount:null,currentEpisodeIndex:null}})}catch(n){return _("info","[Renren] performMacSearch error:",n.message),null}}async performWinSearch(e,r=30){try{let n=`https://${this.API_CONFIG.WIN_HOST}/search/comprehensive/precise-mixed`,i=SC({keywords:e,searchAfter:"",size:r}),a=this.buildWinHeaders(),o=await ge(`${n}?${i}`,{headers:a,timeout:5e3});if(!o.data||o.data.code!=="0000")return _("info",`[Renren] Win\u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38: code=${o?.data?.code}`),null;let c=o.data.data||{},u=[],l=c.seasonList||[],d=c.fuzzySeasonList||[],f=c.seriesList||[],p=m=>{let h=[];if(m.highlights&&(m.highlights.alias&&(h=m.highlights.alias.split(",").map(A=>A.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),m.highlights.original_name)){let A=m.highlights.original_name.replace(/<[^>]+>/g,"").trim();A&&!h.includes(A)&&h.push(A)}return{provider:"renren",mediaId:String(m.id),title:String(m.title||m.alias||m.name||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:h,type:m.classify||m.cat||"Renren",season:null,year:m.year||null,imageUrl:m.cover||m.coverUrl,episodeCount:null,currentEpisodeIndex:null}};return l.forEach(m=>u.push(p(m))),d.forEach(m=>u.push(p(m))),f.forEach(m=>{m.seasonList&&Array.isArray(m.seasonList)&&m.seasonList.forEach(h=>{u.push(p(h))})}),u}catch(n){return _("info","[Renren] performWinSearch error:",n.message),null}}async performNetworkSearch(e,{lockRef:r=null,lastRequestTimeRef:n={value:0},minInterval:s=500}={}){try{let i=`https://${this.API_CONFIG.WEB_HOST}/m-station/search/drama`,a={keywords:e,size:20,order:"match",search_after:"",isExecuteVipActivity:!0};if(r){for(;r.value;)await new Promise(f=>setTimeout(f,50));r.value=!0}let c=Date.now()-n.value;csetTimeout(f,s-c));let u=await this.renrenRequest("GET",i,a);return n.value=Date.now(),r&&(r.value=!1),u.data?(TC(u.data)?.data?.searchDramaList||[]).map(f=>{let p=[];if(f.highlights&&(f.highlights.alias&&(p=f.highlights.alias.split(",").map(m=>m.trim().replace(/<[^>]+>/g,"")).filter(Boolean)),f.highlights.original_name)){let m=f.highlights.original_name.replace(/<[^>]+>/g,"").trim();m&&!p.includes(m)&&p.push(m)}return{provider:"renren",mediaId:String(f.id),title:String(f.title||"").replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"),aliases:p,type:f.classify||"Renren",season:null,year:f.year,imageUrl:f.cover,episodeCount:f.episodeTotal,currentEpisodeIndex:null}}):(_("info","[Renren] \u7F51\u9875\u7248\u641C\u7D22\u65E0\u54CD\u5E94\u6570\u636E"),null)}catch(i){return _("info","[Renren] performNetworkSearch error:",i.message),null}}async search(e){_("info",`[Renren] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=[],n=!1,s=["WIN","TV","MAC","WEB"],i=s.indexOf(zi.search);i===-1&&(i=0);for(let a=i;a ${o}`),zi.search=o);break}else _("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u63A5\u53E3\u5F02\u5E38\u6216\u8BF7\u6C42\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){_("info",`[Renren] ${o} \u7AEF\u641C\u7D22\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return n||(_("info","[Renren] \u641C\u7D22\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5F02\u5E38\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 WIN \u7AEF"),zi.search="WIN"),r}async getAppDramaDetail(e,r=""){try{let n=Date.now(),s="/qwtv/drama/details",i={isAgeLimit:"false",seriesId:String(e),episodeId:String(r),clarity:"HD",caption:"0",hevcOpen:"1"},a=wC(s,n,i,this.API_CONFIG.TV_SECRET_KEY),o=Object.entries(i).map(([f,p])=>`${f}=${encodeURIComponent(p)}`).join("&"),c=this.generateTvHeaders(n,a),u=await ge(`https://${this.API_CONFIG.TV_HOST}${s}?${o}`,{headers:c,timeout:5e3});if(!u||!u.data)return _("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A: ID=${e}`),null;let l=u.data,d=l.msg||l.message||"";return d.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(_("info",`[Renren] TV\u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):l.code!=="0000"?(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${l.code}, msg=${d} (ID=${e})`),null):!l.data||!l.data.episodeList||l.data.episodeList.length===0?l.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (ID=${e})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),l.data.episodeList||(l.data.episodeList=[]),l.data):(_("info",`[Renren] TV\u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (ID=${e})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(_("info",`[Renren] TV\u7AEF\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${l.data.episodeList.length}`),l.data)}catch(n){return _("info","[Renren] getAppDramaDetail error:",n.message),null}}async getGatewayDramaDetail(e,r,n=""){try{let s=Date.now(),i="/qwtv/drama/details",a={isAgeLimit:"false",seriesId:String(r),episodeId:String(n),clarity:"HD",caption:"0",hevcOpen:"1"},o=wC(i,s,a,this.API_CONFIG.TV_SECRET_KEY),c=Object.entries(a).map(([m,h])=>`${m}=${encodeURIComponent(h)}`).join("&"),u=this.generateTvHeaders(s,o),l=`https://${e}${i}?${c}`,d=await ge(l,{headers:u,timeout:5e3});if(!d||!d.data)return _("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u7F51\u7EDC\u65E0\u54CD\u5E94\u6216\u6570\u636E\u4E3A\u7A7A (${e}): ID=${r}`),null;let f=d.data,p=f.msg||f.message||"";return p.includes("\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD")?(_("info",`[Renren] \u63A5\u53E3\u63D0\u793A'\u8BE5\u5267\u6682\u4E0D\u53EF\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7EF4\u62A4\u4E2D\uFF0C\u89E6\u53D1\u964D\u7EA7`),null):f.code!=="0000"?(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF\u7801: ${f.code}, msg=${p} (${e}) (ID=${r})`),null):!f.data||!f.data.episodeList||f.data.episodeList.length===0?f.data?.dramaInfo?.playStatus?.includes("\u5373\u5C06\u5F00\u64AD")?(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u63D0\u793A'\u5373\u5C06\u5F00\u64AD' (${e}) (ID=${r})\uFF0C\u89C6\u4E3A\u7A7A\u7ED3\u679C`),f.data.episodeList||(f.data.episodeList=[]),f.data):(_("info",`[Renren] \u8BE6\u60C5\u63A5\u53E3\u8FD4\u56DE\u6570\u636E\u7F3A\u5931\u5206\u96C6\u5217\u8868 (${e}) (ID=${r})\uFF0C\u5C1D\u8BD5\u964D\u7EA7`),null):(_("info",`[Renren] \u8DE8\u534F\u8BAE\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F (${e}): ID=${r}, \u5305\u542B\u96C6\u6570=${f.data.episodeList.length}`),f.data)}catch(s){return _("info",`[Renren] getGatewayDramaDetail error (${e}):`,s.message),null}}async getWebDramaDetailFallback(e){let r=`https://${this.API_CONFIG.WEB_HOST}/m-station/drama/page`,n={hsdrOpen:0,isAgeLimit:0,dramaId:String(e),hevcOpen:1};try{let s=await this.renrenRequest("GET",r,n);if(!s.data)return null;let i=TC(s.data);return i&&i.data&&i.data.episodeList&&i.data.episodeList.length>0?(_("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u83B7\u53D6\u4E0E\u5206\u96C6\u89E3\u6790\u6210\u529F: ID=${e}, \u5305\u542B\u96C6\u6570=${i.data.episodeList.length}`),i.data):null}catch(s){return _("info",`[Renren] \u7F51\u9875\u7248\u8BE6\u60C5\u8BF7\u6C42\u5931\u8D25: ${s.message}`),null}}async getDetail(e,r=""){let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(zi.detail);i===-1&&(i=0);for(let a=i;a ${o}`),zi.detail=o),n;_("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5931\u8D25\u6216\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(c){_("info",`[Renren] ${o} \u8BE6\u60C5\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${c.message}`)}}return _("info","[Renren] \u8BE6\u60C5\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),zi.detail="TV",null}async getEpisodes(e){let r=await this.getDetail(e);if(!r)return _("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: \u8BE6\u60C5\u5BF9\u8C61\u4E3A\u7A7A ID=${e}`),[];if(!r.episodeList||!Array.isArray(r.episodeList))return _("info",`[Renren] \u83B7\u53D6\u5206\u96C6\u5931\u8D25: episodeList \u5B57\u6BB5\u7F3A\u5931\u6216\u975E\u6570\u7EC4 ID=${e}`),[];let n=[],s=String(e);r.episodeList.forEach((a,o)=>{let c=String(a.sid||"").trim();if(!c)return;let u=a.title?String(a.title):`\u7B2C${String(a.episodeNo||o+1).padStart(2,"0")}\u96C6`,l=`${s}-${c}`;n.push({sid:l,order:a.episodeNo||o+1,title:u})});let i=n.map(a=>({provider:"renren",episodeId:a.sid,title:a.title,episodeIndex:a.order,url:null}));if(r.dramaInfo&&(r.dramaInfo.enName&&(i.enName=r.dramaInfo.enName),r.dramaInfo.year&&(i.year=r.dramaInfo.year),r.dramaInfo.dramaType)){let a=r.dramaInfo.dramaType,o=r.dramaInfo.plotType||"";a==="TV"?a="\u7535\u89C6\u5267":a==="MOVIE"?o.includes("\u52A8\u753B")?a="\u5267\u573A\u7248":a="\u7535\u5F71":a==="COMIC"?a="\u52A8\u753B":a==="VARIETY"?a="\u7EFC\u827A":a==="DOCUMENTARY"&&(a="\u7EAA\u5F55\u7247"),i.type=a}return i}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("info","[Renren] sourceAnimes is not a valid array"),[];let o=e.filter(d=>yt(d.title,r,i)?!0:d.aliases&&Array.isArray(d.aliases)?d.aliases.some(f=>yt(f,r,i)):!1),c=i!==null?i:$t(r);if(c!==null){let d=o.filter(f=>{let p=Tt(f.title).season;return p===c||c===1&&p===null});d.length>0&&(o=d,_("info",`[Renren] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l={TV:"TV",MAC:"Mac",WIN:"Win",WEB:"\u7F51\u9875"}[zi.search]||"\u672A\u77E5";_("info",`[Renren] ${l}\u7AEF\u641C\u7D22\u63D0\u53D6\u7ED3\u679C\u6570\u91CF: ${e.length} \u6709\u6548\u7ED3\u679C\u6570\u91CF\uFF1A${o.length}`),this.isBatchMode=!0;try{await Promise.all(o.map(async d=>{try{let f=await this.getEpisodes(d.mediaId),p=[];for(let m of f)p.push({name:m.episodeIndex.toString(),url:m.episodeId,title:`\u3010${m.provider}\u3011 ${m.title}`});if(p.length>0){let m=d.aliases||[];f.enName&&!m.includes(f.enName)&&m.push(f.enName);let h=f.year||d.year||"",A=f.type||(d.type&&d.type!=="Renren"?d.type:"Renren"),g={animeId:Number(d.mediaId),bangumiId:String(d.mediaId),animeTitle:`${d.title}(${h})\u3010${A}\u3011from renren`,aliases:m,type:A,typeDescription:A,imageUrl:d.imageUrl,startDate:Pr(h),episodeCount:p.length,rating:0,isFavorited:!0,source:"renren"};a.push(g),Lt({...g,links:p},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(f){_("info",`[Renren] Error processing anime: ${f.message}`)}}))}finally{this.isBatchMode=!1,this.checkAndIncrementUsage()}return this.sortAndPushAnimesByYear(a,n),a}async getAppDanmu(e){try{let r=Date.now(),n=e;String(e).includes("-")&&(n=String(e).split("-")[1]);let s=`/v1/produce/danmu/EPISODE/${n}`,a=wC(s,r,{},this.API_CONFIG.TV_SECRET_KEY),o=this.generateTvHeaders(r,a),c=`https://${this.API_CONFIG.TV_DANMU_HOST}${s}`,u=await ge(c,{headers:o,timeout:5e3,validStatusCodes:[404]});if(u.status===404)return u.data&&u.data.error==="Document not found"?[]:(_("info","[Renren] TV \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!u.data)return null;let l=TC(u.data);return Array.isArray(l)?l:l&&l.data&&Array.isArray(l.data)?l.data:[]}catch(r){return _("info","[Renren] getAppDanmu error:",r.message),null}}async getMacDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,n=`https://${this.API_CONFIG.MAC_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.MAC_USER_AGENT,Accept:"*/*"};return this.fetchStandardDanmu(n,s,"MAC")}async getWinDanmu(e){let r=String(e).includes("-")?String(e).split("-")[1]:e,n=`https://${this.API_CONFIG.WIN_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,s={"User-Agent":this.API_CONFIG.WIN_USER_AGENT};return this.fetchStandardDanmu(n,s,"WIN")}async getWebDanmuFallback(e){let r=e;String(e).includes("-")&&(r=String(e).split("-")[1]);let n={user_agent:"Mozilla/5.0",origin:"https://rrsp.com.cn",referer:"https://rrsp.com.cn/"},s=`https://${this.API_CONFIG.WEB_DANMU_HOST}/v1/produce/danmu/EPISODE/${r}`,i={Accept:"application/json","User-Agent":n.user_agent,Origin:n.origin,Referer:n.referer};try{let a=await this.renrenHttpGet(s,{headers:i,validStatusCodes:[404]});if(a.status===404)return a.data&&a.data.error==="Document not found"?[]:(_("info","[Renren] WEB \u5F39\u5E55\u63A5\u53E3\u8FD4\u56DE\u672A\u77E5 404 \u54CD\u5E94\uFF0C\u7591\u4F3C\u63A5\u53E3\u5931\u6548"),null);if(!a.data)return null;let o=TC(a.data),c=[];return Array.isArray(o)?c=o:o?.data&&Array.isArray(o.data)&&(c=o.data),c}catch(a){return _("info",`[Renren] \u7F51\u9875\u7248\u5F39\u5E55\u964D\u7EA7\u5931\u8D25: ${a.message}`),null}}async getEpisodeDanmu(e){let r=0;if(String(e).includes("-")){let[o,c]=String(e).split("-"),u=await this.getDetail(o,c);if(u&&u.watchInfo){let l=u.watchInfo.m3u8||u.watchInfo.tria4kPlayInfo||{},d=parseInt(l.startingLength)||0,f=parseInt(l.openingLength)||0;r=d>0?d:f>0?f:0}}let n=null,s=["TV","MAC","WIN","WEB"],i=s.indexOf(zi.danmu);i===-1&&(i=0);for(let o=i;o ${c}`),zi.danmu=c),n.length>0?_("info",`[Renren] \u6210\u529F\u83B7\u53D6 ${n.length} \u6761\u5F39\u5E55 (${c}\u7AEF)`):_("info",`[Renren] \u8BE5\u5267\u96C6\u6682\u65E0\u5F39\u5E55 (${c}\u7AEF)`),n.adDurationMs=r,n.episodeId=e,n;_("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5931\u8D25\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(u){_("info",`[Renren] ${c} \u5F39\u5E55\u63A5\u53E3\u5F02\u5E38\uFF0C\u89E6\u53D1\u964D\u7EA7: ${u.message}`)}}_("info","[Renren] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u63A5\u53E3\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3 TV \u7AEF"),zi.danmu="TV";let a=[];return a.adDurationMs=r,a.episodeId=e,a}async getEpisodeDanmuSegments(e){return new vt({type:"renren",segmentList:[{type:"renren",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}parseRRSPPFields(e){let r=String(e).split(","),n=(l,d,f)=>{if(l==null||l==="")return f;let p=d(l);return isNaN(p)?f:p},s=n(r[0],parseFloat,0),i=n(r[1],l=>parseInt(l,10),1),a=n(r[2],l=>parseInt(l,10),25),o=n(r[3],l=>parseInt(l,10),16777215),c=r[6]||"",u=r[7]||`${s}:${c}`;return{timestamp:s,mode:i,size:a,color:o,userId:c,contentId:u}}formatComments(e){let r=e.adDurationMs||0,n=e.episodeId||"\u672A\u77E5",s=r/1e3,i=0,a=e.map(o=>{let c=String(o.d||"");if(!c&&o.content&&(c=String(o.content)),!c)return null;if(o.p){let u=this.parseRRSPPFields(o.p),l=u.timestamp-s;return l<0?(i++,null):{cid:Number(u.contentId)||0,p:`${l.toFixed(2)},${u.mode},${u.color},[renren]`,m:c,t:l}}return null}).filter(Boolean);return r>0&&_("info",`[Renren] \u8BC6\u522B\u5230\u524D\u7F6E\u5E7F\u544A(${r}ms)\uFF0C\u5DF2\u81EA\u52A8\u504F\u79FB\u65F6\u95F4\u8F74\u3002\u6210\u529F\u8F6C\u6362 ${a.length} \u6761\uFF0C\u5254\u9664\u65E0\u6548\u5F39\u5E55 ${i} \u6761 (ID=${n})`),a}};Pt();St();ar();Is();$n();hn();hs();var Amr={1:"\u97E9\u5267",2:"\u7EFC\u827A",3:"\u7535\u5F71",4:"\u65E5\u5267",5:"\u7F8E\u5267",6:"\u6CF0\u5267",7:"\u56FD\u4EA7\u5267"},Ig=1e8,dst=6e4,As=Object.freeze({HXQ:"hxq",TV:"tv",MERGED:"merged"}),XT=class extends wt{constructor(){super(),this.appHost="https://hxqapi.hiyun.tv",this.tvHost="https://api.xiawen.tv",this.fallbackDanmuHost="https://hxqapi.zmdcq.com",this.danmuHosts=Array.from(new Set([this.appHost,this.fallbackDanmuHost])),this.defaultRefer="2JGztvGjRVpkxcr0T4ZWG2k+tOlnHmDGUNMwAGSeq548YV2FMbs0h0bXNi6DJ00L",this.danmuUserAgent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",this.appUserAgent="HanjuTV/6.8.2 (Redmi Note 12; Android 14; Scale/2.00)",this._mobileMakeHeaders=null,this._tvMakeHeaders=null,this._mobileWarmupPromise=null,this._mobileWarmupAttempted=!1}getDanmuHeaders(){return{"Content-Type":"application/json","User-Agent":this.danmuUserAgent}}getAppHeaders(){return{vc:"a_8280",vn:"6.8.2",ch:"xiaomi",app:"hj","User-Agent":this.appUserAgent,"Accept-Encoding":"gzip"}}getCategory(e){return Amr[e]||"\u5176\u4ED6"}async buildTvHeaders(){return this._tvMakeHeaders||(this._tvMakeHeaders=await Xnt(Date.now())),this._tvMakeHeaders(Date.now())}async buildMobileHeaders(){return this._mobileMakeHeaders||(this._mobileMakeHeaders=await Jnt(Date.now())),this._mobileMakeHeaders(Date.now())}async tvGet(e,r={}){let n=await this.buildTvHeaders(),s=await ge(`${this.tvHost}${e}`,{headers:n.headers,timeout:1e4,retries:1,...r});return Rie(s?.data,n.uid)}logError(e,r){_("error",`[Hanjutv] ${e}:`,{message:r.message,name:r.name,stack:r.stack})}attachDanmuSourceLabel(e=[],r=""){let n=i4(r);return Array.isArray(e)?e.map(s=>({...s,_sourceLabel:n})):[]}async tryGet(e,r,n){try{return await e()}catch(s){return n&&_("warn",`${n}: ${s.message}`),r}}normalizeSearchItems(e=[]){return Array.isArray(e)?e.map(r=>{if(!r||typeof r!="object")return null;let n=r.sid||r.seriesId||r.id||r.series_id,s=r.name||r.title||r.seriesName||r.showName;if(!n||!s)return null;let i=typeof r.image=="object"&&r.image!==null?r.image:{},a=i.thumb||i.poster||i.url||r.thumb||r.poster||"";return{...r,sid:String(n),name:String(s),image:{...i,thumb:a}}}).filter(Boolean):[]}normalizeEpisodes(e=[]){return Array.isArray(e)?e.map((r,n)=>{if(!r||typeof r!="object")return null;let s=r.pid||r.eid||r.id||r.programId||r.episodeId;if(!s)return null;let i=r.serialNo??r.serial_no??r.sort??r.sortNo??r.num??r.episodeNo??n+1,a=Number(i),o=r.pid||r.programId||r.episodeId||r.id||"",c=r.eid||r.id||r.episodeId||"";return{...r,episodeId:String(s),pid:o?String(o):"",eid:c?String(c):"",serialNo:Number.isFinite(a)&&a>0?a:n+1,title:r.title||r.name||r.programName||r.episodeTitle||""}}).filter(Boolean).sort((r,n)=>r.serialNo-n.serialNo):[]}normalizeHxqEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.pid).map(r=>({...r,pid:String(r.pid)}))}normalizeTvEpisodes(e=[]){return this.normalizeEpisodes(e).filter(r=>r.eid||r.episodeId).map(r=>({...r,eid:String(r.eid||r.episodeId)}))}extractSearchItems(e){let r=e?.seriesData?.seriesList||e?.seriesList||e?.seriesData?.series||[];return this.normalizeSearchItems(r)}dedupeBySid(e=[]){let r=new Map;for(let n of e){if(!n?.sid)continue;let s=String(n.sid);r.has(s)||r.set(s,n)}return Array.from(r.values())}isMergeableSearchPair(e,r,n=""){return!e?.name||!r?.name||n&&(!yt(e.name,n)||!yt(r.name,n))?!1:yt(e.name,r.name)&&yt(r.name,e.name)}buildSearchCandidate(e,r,n=""){if(!e?.sid)return null;let s=String(e.sid),i=String(n||"").trim(),a=r===As.MERGED?Yr(`hxq:${s}|tv:${i}`):Yr(s);return{...e,animeId:a,_variant:r,...i?{tvSid:i}:{}}}mergeSearchCandidates(e,r=[],n=[]){let s=this.dedupeBySid(r),i=this.dedupeBySid(n),a=p=>{let m=[],h=[];for(let A of p)(yt(A?.name||"",e)?m:h).push(A);return{matched:m,unmatched:h}},o=a(s),c=a(i),u=o.matched.length+c.matched.length>0,l=[],d=new Set;for(let p of o.matched){let m=c.matched.find(h=>!d.has(String(h.sid))&&this.isMergeableSearchPair(p,h,e));m?(d.add(String(m.sid)),l.push(this.buildSearchCandidate(p,As.MERGED,m.sid))):l.push(this.buildSearchCandidate(p,As.HXQ))}c.matched.filter(p=>!d.has(String(p.sid))).forEach(p=>{l.push(this.buildSearchCandidate(p,As.TV))}),u?l.push(...o.unmatched.map(p=>this.buildSearchCandidate(p,As.HXQ)).filter(Boolean),...c.unmatched.map(p=>this.buildSearchCandidate(p,As.TV)).filter(Boolean)):l.push(...s.map(p=>this.buildSearchCandidate(p,As.HXQ)).filter(Boolean),...i.map(p=>this.buildSearchCandidate(p,As.TV)).filter(Boolean));let f=p=>p.map(m=>m.name);return{resultList:l,stats:{s5Total:s.length,s5Matched:o.matched.length,tvTotal:i.length,tvMatched:c.matched.length,mergedCount:u?l.filter(p=>p?._variant===As.MERGED).length:0,s5MatchedList:f(o.matched),s5UnmatchedList:f(o.unmatched),tvMatchedList:f(c.matched),tvUnmatchedList:f(c.unmatched)}}}async extractFromPayload(e,r,n){if(!e||typeof e!="object")throw new Error(`${n} \u54CD\u5E94\u4E3A\u7A7A`);if(typeof e.data=="string"&&e.data.length>0){let i;try{i=await Rie(e,r)}catch(o){throw new Error(`${n} \u54CD\u5E94\u89E3\u5BC6\u5931\u8D25: ${o.message}`)}let a=this.extractSearchItems(i);if(a.length===0)throw new Error(`${n} \u89E3\u5BC6\u540E\u65E0\u6709\u6548\u7ED3\u679C`);return a}let s=this.extractSearchItems(e);if(s.length===0)throw new Error(`${n} \u65E0\u6709\u6548\u7ED3\u679C`);return s}async warmupMobileIdentity(e){try{await ge(`${this.appHost}/api/common/configs`,{headers:e,timeout:8e3,retries:0})}catch{}}async ensureMobileIdentityWarmed(){if(this._mobileWarmupAttempted){await this._mobileWarmupPromise;return}this._mobileWarmupAttempted=!0,this._mobileWarmupPromise=(async()=>{let e=await this.buildMobileHeaders();await this.warmupMobileIdentity(e.headers)})(),await this._mobileWarmupPromise}async searchWithS5Api(e){await this.ensureMobileIdentityWarmed();let{uid:r,headers:n}=await this.buildMobileHeaders(),s=encodeURIComponent(e),i=await ge(`https://hxqapi.hiyun.tv/api/search/s5?k=${s}&srefer=search_input&type=0&page=1`,{headers:n,timeout:1e4,retries:1});return this.extractFromPayload(i?.data,r,"s5")}async searchWithTvApi(e){let r=encodeURIComponent(e),n=await this.buildTvHeaders(),s=await ge(`https://api.xiawen.tv/api/v1/aggregate/search?key=${r}&scope=101&page=1`,{headers:n.headers,timeout:1e4,retries:1});return this.extractFromPayload(s?.data,n.uid,"tv")}async search(e){try{let r=String(e||"").trim();if(!r)return[];let[n,s]=await Promise.all([this.tryGet(()=>this.searchWithS5Api(r),[],"[Hanjutv] s5 \u641C\u7D22\u5931\u8D25"),this.tryGet(()=>this.searchWithTvApi(r),[],"[Hanjutv] TV \u641C\u7D22\u5931\u8D25")]),{resultList:i,stats:a}=this.mergeSearchCandidates(r,n,s),o=a.s5Matched+a.tvMatched;return i.length>0&&o===0?(_("warn",`[Hanjutv] \u6240\u6709\u5019\u9009\u5747\u672A\u547D\u4E2D\u5173\u952E\u8BCD\uFF0C\u4E22\u5F03\u7591\u4F3C\u63A8\u8350\u6D41\u7ED3\u679C: ${r}`),[]):i.length===0?(_("info","[Hanjutv] hanjutvSearchresp: s5 \u4E0E TV \u63A5\u53E3\u5747\u65E0\u6709\u6548\u7ED3\u679C"),[]):(_("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5MatchedList=${JSON.stringify(a.s5MatchedList)}, s5UnmatchedList=${JSON.stringify(a.s5UnmatchedList)}, tvMatchedList=${JSON.stringify(a.tvMatchedList)}, tvUnmatchedList=${JSON.stringify(a.tvUnmatchedList)}`),_("info",`[Hanjutv] \u641C\u7D22\u5019\u9009\u7EDF\u8BA1 s5=${a.s5Total}(\u547D\u4E2D${a.s5Matched}), tv=${a.tvTotal}(\u547D\u4E2D${a.tvMatched}), merged=${a.mergedCount}`),_("info",`[Hanjutv] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i.filter(Boolean))}catch(r){return this.logError("getHanjutvAnimes error",r),[]}}async getSeriesDetail(e,r,n,s){try{let i=String(e||"").trim();if(!i)return null;let a=await this.tryGet(()=>r(i),null,s);return a||(_("info",`[Hanjutv] ${n}: series \u4E0D\u5B58\u5728`),null)}catch(i){return this.logError(s,i),null}}async getHxqDetail(e){return this.getSeriesDetail(e,async r=>(await ge(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data?.series??null,"getHanjutvHxqDetail","getHanjutvHxqDetail error")}async getTvDetail(e){return this.getSeriesDetail(e,async r=>(await this.tvGet(`/api/v1/series/detail/query?sid=${r}`))?.series??null,"getHanjutvTvDetail","getHanjutvTvDetail error")}async getHxqEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=[async()=>{let i=await ge(`${this.appHost}/api/series/detail?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1});return this.normalizeHxqEpisodes(Array.isArray(i?.data?.playItems)?i.data.playItems:[])},async()=>{let a=(await ge(`${this.appHost}/api/series2/episodes?sid=${r}&refer=${encodeURIComponent(this.defaultRefer)}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes(a?.programs||a?.episodes||a?.qxkPrograms||[])},async()=>{let a=(await ge(`${this.appHost}/api/series/programs_v2?sid=${r}`,{headers:this.getAppHeaders(),timeout:1e4,retries:1}))?.data;return this.normalizeHxqEpisodes([...Array.isArray(a?.programs)?a.programs:[],...Array.isArray(a?.qxkPrograms)?a.qxkPrograms:[]])}],s=[];for(let i of n){if(s.length>0)break;s=await this.tryGet(i,[])}return s.length===0?(_("info","[Hanjutv] getHanjutvHxqEpisodes: episodes \u4E0D\u5B58\u5728"),[]):s.sort((i,a)=>i.serialNo-a.serialNo)}catch(r){return this.logError("getHanjutvHxqEpisodes error",r),[]}}async getTvEpisodes(e){try{let r=String(e||"").trim();if(!r)return[];let n=await this.tryGet(async()=>{let s=await this.tvGet(`/api/v1/series/detail/query?sid=${r}`);return this.normalizeTvEpisodes(s?.episodes||[])},[],"getHanjutvTvEpisodes error");return n.length===0?(_("info","[Hanjutv] getHanjutvTvEpisodes: episodes \u4E0D\u5B58\u5728"),[]):n.sort((s,i)=>s.serialNo-i.serialNo)}catch(r){return this.logError("getHanjutvTvEpisodes error",r),[]}}resolveAnimeYear(e,...r){let n=[e?.updateTime,e?.publishTime,...r.map(s=>s?.updateTime),...r.map(s=>s?.publishTime)];for(let s of n){if(!s)continue;let a=new Date(s).getFullYear();if(Number.isFinite(a)&&a>1900)return a}return new Date().getFullYear()}buildEpisodeTitle(e,r=""){let n=String(r||"").trim();return n?`\u7B2C${e}\u96C6\uFF1A${n}`:`\u7B2C${e}\u96C6`}buildEpisodeLink(e,r){let n=e?.serialNo??r?.serialNo??1,s=this.buildEpisodeTitle(n,e?.title||r?.title||""),i="";if(e?.pid&&r?.eid){let a=est(e.pid,r.eid);i=a?`hanjutv:${a}`:""}else e?.pid?i=`hxq:${e.pid}`:r?.eid&&(i=`tv:${r.eid}`);return i?{name:s,url:i,title:`\u3010hanjutv\u3011 ${s}`}:null}mergeVariantEpisodes(e=[],r=[]){let n=new Map(e.map(a=>[Number(a.serialNo),a])),s=new Map(r.map(a=>[Number(a.serialNo),a]));return Array.from(new Set([...n.keys(),...s.keys()])).filter(Number.isFinite).sort((a,o)=>a-o).map(a=>this.buildEpisodeLink(n.get(a),s.get(a))).filter(Boolean)}buildAnimeSummary(e,r,n,s){let i=this.getCategory(r?.category??e?.category),a=this.resolveAnimeYear(e,r);return{animeId:s,bangumiId:String(s),animeTitle:`${e.name}(${a})\u3010${i}\u3011from hanjutv`,type:i,typeDescription:i,imageUrl:e?.image?.thumb||"",startDate:Pr(a),episodeCount:n.length,rating:Number(r?.rank??0),isFavorited:!0,source:"hanjutv"}}async getHxqBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getHxqDetail(e),this.getHxqEpisodes(e)]);return{detail:r,episodes:n}}async getTvBundle(e){if(!e)return{detail:null,episodes:[]};let[r,n]=await Promise.all([this.getTvDetail(e),this.getTvEpisodes(e)]);return{detail:r,episodes:n}}async buildAnimePayload(e){let r=e?._variant||As.HXQ,n=String(e?.sid||"").trim(),s=String(e?.tvSid||"").trim(),i=s||(r===As.TV?n:""),a=Number(e?.animeId),o=r===As.MERGED&&n&&s?Number.isFinite(a)&&a>0?a:Yr(`hxq:${n}|tv:${s}`):null,c=(r===As.HXQ||r===As.MERGED)&&n,u=(r===As.TV||r===As.MERGED)&&i,[l,d]=await Promise.all([c?this.getHxqBundle(n):Promise.resolve({detail:null,episodes:[]}),u?this.getTvBundle(i):Promise.resolve({detail:null,episodes:[]})]);if(r===As.MERGED&&n&&s){let f=this.mergeVariantEpisodes(l.episodes,d.episodes);if(f.length>0){let p=l.detail?.category?l.detail:d.detail?.category?d.detail:l.detail||d.detail;return{summary:this.buildAnimeSummary(e,p,f,o),links:f}}}if((r===As.HXQ||r===As.MERGED)&&n){let f=l.episodes.map(p=>this.buildEpisodeLink(p,null)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,l.detail,f,o??Yr(n)),links:f}}if((r===As.TV||r===As.MERGED)&&i){let f=d.episodes.map(p=>this.buildEpisodeLink(null,p)).filter(Boolean);if(f.length>0)return{summary:this.buildAnimeSummary(e,d.detail,f,o??Yr(i)),links:f}}return null}async handleAnimes(e,r,n,s=null,i=null){if(!Array.isArray(e))return _("error","[Hanjutv] sourceAnimes is not a valid array"),[];let a=[],o=e.filter(u=>yt(u.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let u=o.filter(l=>{let d=Tt(l.name).season;return d===c||c===1&&d===null});u.length>0&&(o=u,_("info",`[Hanjutv] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}return await Promise.all(o.map(async u=>{try{let l=await this.buildAnimePayload(u);if(!l||!l.summary||!Array.isArray(l.links)||l.links.length===0)return;a.push(l.summary),Lt({...l.summary,links:l.links},s),O.animes.length>O.MAX_ANIMES&&Ft()}catch(l){_("error",`[Hanjutv] Error processing anime: ${l.message}`)}})),this.sortAndPushAnimesByYear(a,n),a}async fetchEpisodeDanmuByRef(e){let r=String(e?.id||"").trim();if(!r)return[];let n=[];if(!e.preferTv){let s=this.getDanmuHeaders();for(let i of this.danmuHosts){let a=[];try{let o=0,c=0,u=dst,l=0,d=240;for(;c0&&a.push(...p);let m=Number(f?.data?.more??0)===1||f?.data?.more===!0||f?.data?.more==="1",h=Number(f?.data?.nextAxis??Ig),A=Number(f?.data?.lastId??o);if(!Number.isFinite(h)||h<=c||h>=Ig)break;if(Number.isFinite(A)&&A>o&&(o=A),c=h,!m){if(p.length===0)break;u=c+dst}}if(a.length>0){n=a;break}}catch(o){if(this.logError(`fetchHanjutvEpisodeDanmu(\u97E9\u5C0F\u5708\u5F39\u5E55:${i})`,o),a.length>0){n=a;break}}}}if(n.length===0){let s=0,i=0,a=0,o=120;for(;i0&&n.push(...u);let l=Number(c.more??0)===1||c.more===!0||c.more==="1",d=Number(c.nextAxis??Ig),f=Number(c.lastId??s);if(!Number.isFinite(d)||d<=i||d>=Ig||(Number.isFinite(f)&&f>s&&(s=f),i=d,l||(s=0),u.length===0&&!l))break}catch(c){this.logError("fetchHanjutvEpisodeDanmu(TV\u7AEF)",c);break}}return n}async getEpisodeDanmu(e){let r=tst(e),n=Array.isArray(r?.refs)?r.refs.filter(i=>i?.id):[];if(n.length===0)return[];if(n.length===1){let i=await this.fetchEpisodeDanmuByRef(n[0]);return this.attachDanmuSourceLabel(i,n[0].rawId)}return(await Promise.all(n.map(async i=>{let a=await this.fetchEpisodeDanmuByRef(i);return this.attachDanmuSourceLabel(a,i.rawId)}))).flat()}async getEpisodeDanmuSegments(e){return _("info","[Hanjutv] \u83B7\u53D6\u97E9\u5267TV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new vt({type:"hanjutv",duration:0,segmentList:[{type:"hanjutv",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>({cid:Number(r.did),p:`${(r.t/1e3).toFixed(2)},${r.tp===2?5:r.tp},${Number(r.sc)},[${r._sourceLabel||"hanjutv"}]`,m:r.con,t:r.t/1e3,like:r.lc,_sourceLabel:r._sourceLabel}))}};Pt();St();ar();$n();no();hn();hs();var Tg=class extends wt{async search(e){try{let r=[];O.useBangumiData&&(r=await Au(e,["gamer","gamer_hk"]),_("info",`[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(p=>p.video_sn);if(r.length>0&&r.length===n.length)return _("info","[Bahamut] Bangumi-Data \u672C\u5730\u547D\u4E2D\u5747\u542B video_sn\uFF0C\u542F\u7528\u6570\u636E\u6E90\u76F4\u901A\u6A21\u5F0F\uFF08\u8DF3\u8FC7\u641C\u7D22\u63A5\u53E3\uFF09"),r.map(p=>{let h=(p.titles.find(A=>A&&A.includes(e))||p.titles[1]||p.title)+(p.titleSuffix||"");return{video_sn:parseInt(p.video_sn),title:h,_displayTitle:h,isLocalPriority:!0,aliases:[...p.titles],_typeStr:p.typeStr,_fromDataSourceDirectHit:!0,_originalQuery:e,_bangumiBegin:p.begin||null}});let s=Ro(e),i=e,a=encodeURIComponent(s);_("info",`[Bahamut] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`),_("info",`[Bahamut] \u5DF4\u54C8\u4F7F\u7528\u641C\u7D22\u8BCD: ${s}`);let o=new AbortController,c=(async()=>{try{let p=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${a}`,m=O.makeProxyUrl(p),h=await ge(m,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(h&&h.data&&h.data.anime&&h.data.anime.length>0){o.abort();let A=h.data.anime;for(let g of A)try{g._originalQuery=e,g._searchUsedTitle=s}catch{}return _("info",`[Bahamut] bahamutSearchresp (original): ${JSON.stringify(A)}`),_("info",`[Bahamut] \u8FD4\u56DE ${A.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:A,source:"original"}}return _("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"}}catch(p){return _("error","[Bahamut] \u539F\u59CB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"original"}}})(),u=(async()=>{try{await new Promise(x=>setTimeout(x,100));let p=await Zb(i,o.signal,"Bahamut");if(!p||!p.title)return _("info","[Bahamut] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:m,cnAlias:h}=p;_("info",`[Bahamut] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u8FDB\u884C\u641C\u7D22: ${m}`);let g=`https://api.gamer.com.tw/mobile_app/anime/v1/search.php?kw=${encodeURIComponent(m)}`,b=O.makeProxyUrl(g),y=await ge(b,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},signal:o.signal,retries:3});if(y&&y.data&&y.data.anime&&y.data.anime.length>0){let x=y.data.anime;for(let v of x)try{v._originalQuery=e,v._searchUsedTitle=m,v._tmdbCnAlias=h}catch{}return _("info",`[Bahamut] bahamutSearchresp (TMDB): ${JSON.stringify(x)}`),_("info",`[Bahamut] \u8FD4\u56DE ${x.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:x,source:"tmdb"}}return _("info","[Bahamut] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"}}catch(p){return p.name==="AbortError"?(_("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0}):(_("error","[Bahamut] TMDB\u641C\u7D22\u5931\u8D25:",{message:p.message,name:p.name,stack:p.stack}),{success:!1,source:"tmdb"})}})(),[l,d]=await Promise.all([c,u]),f=[];if(l.success?f=l.data:d.success?f=d.data:_("info","[Bahamut] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C"),f.length>0&&r.length>0)for(let p of f){if(!p||!p.acg_sn)continue;let m=r.find(h=>String(p.acg_sn)===String(h.siteId))||r.find(h=>p.title&&h.title===p.title);if(m){let h=p.title,g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.isLocalPriority=!0,p.aliases=[...m.titles],h&&!p.aliases.includes(h)&&p.aliases.push(h),p._typeStr=m.typeStr,_("info",`[Bahamut] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}}return f}catch(r){return _("error","[Bahamut] getBahamutAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=`https://api.gamer.com.tw/anime/v1/video.php?videoSn=${e}`,n=O.makeProxyUrl(r),s=await ge(n,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});if(!s||!s.data)return _("info","[Bahamut] getBahamutEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];if(!s.data.data||!s.data.data.video||!s.data.data.anime)return _("info","[Bahamut] getBahamutEposides: video \u6216 anime \u4E0D\u5B58\u5728"),[];let{video:i,anime:a}=s.data.data;return _("info",`[Bahamut] getBahamutEposides: videoSn=${i.videoSn}, animeSn=${a.animeSn}, title=${a.title}, totalEpisode=${a.totalEpisode}, episodes=${JSON.stringify(a.episodes)}`),s.data.data}catch(r){return _("error","[Bahamut] getBahamutEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[],o=/[\u3040-\u309F\u30A0-\u30FF]/.test(r);r=Ro(r);function c(A,g,b){if(!A)return!1;let y=String(A),x=String(g||""),v=String(b||"");if(O.strictTitleMatch){if($0(y,x)||v&&$0(y,v))return!0;try{if($0(y,Ro(x))||$0(y,Gt(x))||v&&($0(y,Ro(v))||$0(y,Gt(v))))return!0}catch{}return!1}let C=Fr(y),R=Fr(x),w=v?Fr(v):"";if(C.includes(R)||w&&C.includes(w))return!0;try{if(C.includes(Fr(Ro(x)))||C.includes(Fr(Gt(x)))||w&&(C.includes(Fr(Ro(v)))||C.includes(Fr(Gt(v)))))return!0}catch{}try{if(C.toLowerCase().includes(R.toLowerCase())||w&&C.toLowerCase().includes(w.toLowerCase()))return!0}catch{}return!1}let l=(Array.isArray(e)?e:[]).filter(A=>{let g=A.title||"",b=A._searchUsedTitle||A._originalQuery||"";return o||A._searchUsedTitle&&A._searchUsedTitle!==r?(_("info",`[Bahamut] \u547D\u4E2D\u65E5\u8BED\u5173\u952E\u8BCD\u6216TMDB\u7ED3\u679C\uFF0C\u7ED5\u8FC7\u5339\u914D\u89C4\u5219\u76F4\u63A5\u4FDD\u7559: ${g}`),!0):c(g,r,b)||Array.isArray(A.aliases)&&A.aliases.some(y=>c(y,r,b))});l.forEach(A=>{A._originalTitleAlias=A.title?Gt(A.title):""});let d=l.length>0?l[0]._tmdbCnAlias:null;eE(l,d);let f=i!==null?i:$t(r),p=l;if(f!==null){let A=l.filter(g=>{let b=g._displayTitle||g.title,y=Tt(b).season;return y===f||f===1&&y===null});A.length>0&&(p=A,_("info",`[Bahamut] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${f}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let m=new Map,h=await Promise.all(p.map(async A=>{try{let g=String(A.video_sn);m.has(g)||m.set(g,this.getEpisodes(A.video_sn));let b=await m.get(g);if(!b||typeof b!="object"||Array.isArray(b))return null;let y=b.video,x=null;b.anime.episodes&&(x=b.anime.episodes[0]||Object.values(b.anime.episodes)[0]);let v=[];if(x&&Array.isArray(x))for(let C of x){let R=`\u7B2C${C.episode}\u96C6`;v.push({name:C.episode.toString(),url:C.videoSn.toString(),title:`\u3010bahamut\u3011 ${R}`})}if(v.length>0){let C=null;if(A._bangumiBegin&&(C=parseInt(A._bangumiBegin.substring(0,4))),!C&&b.anime&&b.anime.seasonStart&&(C=new Date(b.anime.seasonStart).getFullYear()),!C&&y&&y.upTime){let B=String(y.upTime).match(/(\d{4})/);B&&(C=parseInt(B[1]))}if(!C){let k=(A.info||"").match(/(\d{4})/);k&&(C=parseInt(k[1]))}let R=b.anime&&b.anime.cover||A.cover||y&&y.cover||"",w=A._displayTitle||Gt(A.title),N=Array.isArray(A.aliases)?[...A.aliases]:[];A._originalTitleAlias&&A._originalTitleAlias!==w&&!N.includes(A._originalTitleAlias)&&N.push(A._originalTitleAlias);let P=A._typeStr||"\u52A8\u6F2B",L=b.anime&&b.anime.title||y&&y.title||"";L.includes("[\u96FB\u5F71]")?P="\u5267\u573A\u7248":L.includes("[\u7279\u5225\u7BC7]")&&(P="OVA");let M={animeId:A.video_sn,bangumiId:String(A.video_sn),animeTitle:`${w}(${C||"N/A"})\u3010${P}\u3011from bahamut`,aliases:N,type:"\u52A8\u6F2B",typeDescription:"\u52A8\u6F2B",imageUrl:R,startDate:C?Pr(C):Pr(b.anime.seasonStart?new Date(b.anime.seasonStart).getFullYear():null),episodeCount:v.length,rating:y.rating,isFavorited:!0,source:"bahamut"};a.push(M),Lt({...M,links:v},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(g){_("error",`[Bahamut] Error processing anime: ${g.message}`)}}));return this.sortAndPushAnimesByYear(a,n),h}async getEpisodeDanmu(e){let r=[];try{let n=`https://api.gamer.com.tw/anime/v1/danmu.php?geo=TW%2CHK&videoSn=${e}`,s=O.makeProxyUrl(n),i=await ge(s,{headers:{"Content-Type":"application/json","User-Agent":"Anime/2.29.2 (7N5749MM3F.tw.com.gamer.anime; build:972; iOS 26.0.0) Alamofire/5.6.4"},retries:3});return i.data&&i.data.data&&i.data.data.danmu&&(r=i.data.data.danmu),r}catch(n){return _("error","[Bahamut] fetchBahamutEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return _("info","[Bahamut] \u83B7\u53D6\u5DF4\u54C8\u59C6\u7279\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new vt({type:"bahamut",segmentList:[{type:"bahamut",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){let r={0:1,1:5,2:4};return e.map(n=>({cid:Number(n.sn),p:`${(n.time/10).toFixed(2)},${r[n.position]||n.tp},${parseInt(n.color.slice(1),16)},[bahamut]`,m:O.danmuSimplifiedTraditional==="simplified"?Gt(n.text):n.text,t:n.time/10}))}};Pt();St();ar();$n();no();hs();Pt();St();ar();Is();$n();hn();hs();var wg=class extends wt{extractAliasesFromHintWords(e){if(!e||typeof e!="string")return[];let r=[],n=i=>{let a=String(i||"").replace(/<\/?em>/g,"").trim();a&&!r.includes(a)&&r.push(a)},s=e.match(/(?:又名|别名)\s*[::]\s*(.+)$/);return s&&s[1].split(/[、,,/|]+/).forEach(n),r}titleOrAliasMatches(e,r,n=null){return yt(e.title,r,n)?!0:Array.isArray(e.aliases)&&e.aliases.some(s=>yt(s,r,n))}filterTencentSearchItem(e,r){if(!e.videoInfo||!e.doc)return null;let n=e.videoInfo,s=e.doc.id;if(!n.year||n.year===0||n.subTitle==="\u5168\u7F51\u641C"||n.playFlag===2)return null;let i=n.title.replace(//g,"").replace(/<\/em>/g,"");if(!i||!s)return null;let a=n.typeName;if(a.includes("\u77ED\u5267")||!["\u7535\u89C6\u5267","\u52A8\u6F2B","\u7535\u5F71","\u7EAA\u5F55\u7247","\u7EFC\u827A","\u7EFC\u827A\u8282\u76EE"].includes(a))return null;let c=a,u=!1,l=!1;n.coverDoc&&(n.coverDoc.richTags&&Array.isArray(n.coverDoc.richTags)&&n.coverDoc.richTags.forEach(m=>{m.text&&m.text.includes("3D")&&(u=!0),m.text&&m.text.includes("2D")&&(l=!0)}),n.coverDoc.tags&&Array.isArray(n.coverDoc.tags)&&n.coverDoc.tags.forEach(m=>{m&&m.includes("3D")&&(u=!0),m&&m.includes("2D")&&(l=!0)})),u?c="3D"+c:l&&(c="2D"+c);let d=(n.playSites||[]).concat(n.episodeSites||[]);if(d.length>0&&!d.some(m=>m.enName==="qq")||a==="\u7535\u5F71"&&["\u82B1\u7D6E","\u5F69\u86CB","\u5E55\u540E","\u72EC\u5BB6","\u89E3\u8BF4","\u7279\u8F91","\u63A2\u73ED","\u62CD\u6444","\u5236\u4F5C","\u5BFC\u6F14","\u8BB0\u5F55","\u56DE\u987E","\u76D8\u70B9","\u6DF7\u526A","\u89E3\u6790","\u62A2\u5148"].some(h=>i.includes(h)))return null;let f=a==="\u7535\u5F71"?1:n.subjectDoc?n.subjectDoc.videoNum:0,p=this.extractAliasesFromHintWords(n.hintWords).filter(m=>m!==i);return{provider:"tencent",mediaId:s,title:i,aliases:p,type:c,year:n.year,imageUrl:n.imgUrl,episodeCount:f}}async search(e){try{_("info",`[Tencent] \u5F00\u59CB\u641C\u7D22: ${e}`);let r="https://pbaccess.video.qq.com/trpc.videosearch.mobile_search.MultiTerminalSearch/MbSearch?vplatform=2",n={version:"25071701",clientType:1,filterValue:"",uuid:"0379274D-05A0-4EB6-A89C-878C9A460426",query:e,retry:0,pagenum:0,isPrefetch:!0,pagesize:30,queryFrom:0,searchDatakey:"",transInfo:"",isneedQc:!0,preQid:"",adClientInfo:"",extraInfo:{multi_terminal_pc:"1",themeType:"1",sugRelatedIds:"{}",appVersion:""}},s={"Content-Type":"application/json",Origin:"https://v.qq.com","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`https://v.qq.com/x/search/?q=${encodeURIComponent(e)}&stag=&smartbox_ab=`,H38:"220496a1fb1498325e9be6d938",H42:"335a00a80ab9bbbef56793d8e7a97e87b9341dee34ebd83d61afc0cdb303214caaece3",Uk:"8e91af25d3af99d0f0640327e7307666",Cookie:"tvfe_boss_uuid=ee8f05103d59226f; pgv_pvid=3155633511; video_platform=2; ptag=v_qq_com; main_login=qq"},i=await Vr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("info","[Tencent] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return _("error",`[Tencent] API\u8FD4\u56DE\u9519\u8BEF: ${a.msg} (ret: ${a.ret})`),[];let o=[];if(a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.boxId==="MainNeed"&&u.itemList){_("info",`[Tencent] \u4ECE MainNeed box \u627E\u5230 ${u.itemList.length} \u4E2A\u9879\u76EE`),o=u.itemList;break}}if(o.length===0&&a.data&&a.data.normalList&&a.data.normalList.itemList&&(_("info","[Tencent] MainNeed box \u672A\u627E\u5230\uFF0C\u4F7F\u7528 normalList"),o=a.data.normalList.itemList),a.data&&a.data.areaBoxList){for(let u of a.data.areaBoxList)if(u.itemList&&u.boxTitle&&Array.isArray(u.boxTitle.boxTitles)&&u.boxTitle.boxTitles.includes("\u76F8\u5173\u5F71\u89C6")){let l=u.itemList.filter(d=>d.videoInfo&&d.videoInfo.title&&d.videoInfo.title.includes(e));l.length>0?(_("info",`[Tencent] \u8FFD\u52A0\u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u5339\u914D "${e}" \u7684 ${l.length} \u4E2A\u9879\u76EE`),o=[...o,...l]):_("info",`[Tencent] \u300C\u76F8\u5173\u5F71\u89C6\u300Dbox \u4E2D\u65E0\u5339\u914D "${e}" \u7684\u9879\u76EE`);break}}if(o.length===0)return _("info","[Tencent] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let c=[];for(let u of o){let l=this.filterTencentSearchItem(u,e);l&&c.push(l)}return _("info",`[Tencent] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return _("error","[Tencent] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Tencent] \u83B7\u53D6\u5206\u96C6\u5217\u8868: cid=${e}`);let r="https://pbaccess.video.qq.com/trpc.universal_backend_service.page_server_rpc.PageServer/GetPageData?video_appid=3000010&vversion_name=8.2.96&vversion_platform=2",n={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:e,vid:"",lid:"",page_num:"",page_context:`cid=${e}&detail_page_type=1&req_from=web_vsite&req_from_second_type=&req_type=0`,detail_page_type:"1"}},s={"Content-Type":"application/json",Origin:"https://v.qq.com",Referer:`https://v.qq.com/x/cover/${e}.html`,"User-Agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/537.36 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Accept:"application/json","Accept-Language":"zh-CN,zh;q=0.9"},i=await Vr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("info","[Tencent] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.ret!==0)return _("error",`[Tencent] \u5206\u96C6API\u8FD4\u56DE\u9519\u8BEF: ret=${a.ret}`),[];let o=[];if(a.data&&a.data.module_list_datas)for(let u of a.data.module_list_datas){for(let l of u.module_datas)if(l.module_params&&l.module_params.tabs)try{o=JSON.parse(l.module_params.tabs);break}catch(d){_("error","[Tencent] \u89E3\u6790tabs\u5931\u8D25:",d.message)}if(o.length>0)break}let c=[];if(o.length===0){if(_("info","[Tencent] \u672A\u627E\u5230\u5206\u9875\u4FE1\u606F,\u5C1D\u8BD5\u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5206\u96C6"),a.data&&a.data.module_list_datas){for(let u of a.data.module_list_datas)for(let l of u.module_datas)if(l.item_data_lists&&l.item_data_lists.item_datas)for(let d of l.item_data_lists.item_datas)d.item_params&&d.item_params.vid&&d.item_params.is_trailer!=="1"&&c.push({vid:d.item_params.vid,title:d.item_params.title,unionTitle:d.item_params.union_title||d.item_params.title})}if(c.length===0)return _("info","[Tencent] \u521D\u59CB\u54CD\u5E94\u4E2D\u4E5F\u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];_("info",`[Tencent] \u4ECE\u521D\u59CB\u54CD\u5E94\u4E2D\u63D0\u53D6\u5230 ${c.length} \u96C6`)}else{_("info",`[Tencent] \u627E\u5230 ${o.length} \u4E2A\u5206\u9875`);for(let u of o){if(!u.page_context)continue;let l={has_cache:1,page_params:{req_from:"web_vsite",page_id:"vsite_episode_list",page_type:"detail_operation",id_type:"1",page_size:"",cid:e,vid:"",lid:"",page_num:"",page_context:u.page_context,detail_page_type:"1"}},d=await Vr(r,JSON.stringify(l),{headers:s});if(!d||!d.data)continue;let f=typeof d.data=="string"?JSON.parse(d.data):d.data;if(!(f.ret!==0||!f.data)&&f.data.module_list_datas){for(let p of f.data.module_list_datas)for(let m of p.module_datas)if(m.item_data_lists&&m.item_data_lists.item_datas)for(let h of m.item_data_lists.item_datas)h.item_params&&h.item_params.vid&&h.item_params.is_trailer!=="1"&&c.push({vid:h.item_params.vid,title:h.item_params.title,unionTitle:h.item_params.union_title||h.item_params.title})}}}return _("info",`[Tencent] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return _("error","[Tencent] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Tencent] sourceAnimes is not a valid array"),[];let o=e.filter(l=>this.titleOrAliasMatches(l,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Tencent] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p0){let p=d[0].unionTitle||d[0].title||"\u7B2C1\u96C6",m=l.title,h=p.match(/\[.+版\]/);h&&p.includes(l.title)&&(m=`${l.title}${h[0]}`);let g={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${m}(${l.year})\u3010${l.type}\u3011from tencent`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"tencent",aliases:l.aliases||[]};a.push(g),Lt({...g,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Tencent] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}extractVid(e){let r=e;if(typeof e=="string"&&(e.startsWith("http")||e.includes("vid="))){let n=e.match(/[?&]vid=([^&]+)/);if(n)r=n[1];else{let s=e.split("/");r=s[s.length-1].split(".")[0]}}return r}async getEpisodeDanmu(e){_("info","[Tencent] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u817E\u8BAF\u89C6\u9891\u5F39\u5E55...",e);let r=this.extractVid(e);_("info",`[Tencent] vid: ${r}`);let n;try{n=await ge(e,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(l){return _("error","[Tencent] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",l),[]}let s=n.data.match(/]*>(.*?)<\/title>/i),i=s?s[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";_("info",`[Tencent] \u6807\u9898: ${i}`);let a=await this.getEpisodeDanmuSegments(e);if(!a||!a.segmentList||a.segmentList.length===0)return[];let o=a.segmentList;_("info",`[Tencent] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o.length}`);let c=[];for(let l of o)c.push(ge(l.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let u=[];try{(await Promise.allSettled(c)).filter(f=>f.status==="fulfilled").map(f=>f.value&&f.value.data?f.value.data:null).filter(f=>f!==null).forEach(f=>{f=typeof f=="string"?JSON.parse(f):f,u.push(...f.barrage_list)})}catch(l){return _("error","[Tencent] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",l),[]}return ts(u),u}async getEpisodeDanmuSegments(e){_("info","[Tencent] \u83B7\u53D6\u817E\u8BAF\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://dm.video.qq.com/barrage/base/",n="https://dm.video.qq.com/barrage/segment/",s=this.extractVid(e);_("info",`[Tencent] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - vid: ${s}`);let i;try{i=await ge(r+s,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return u.response?.status===404?new vt({type:"qq",segmentList:[]}):(_("error","[Tencent] \u8BF7\u6C42\u5F39\u5E55\u57FA\u7840\u6570\u636E\u5931\u8D25:",u),new vt({type:"qq",segmentList:[]}))}let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=Object.values(a.segment_index);for(let u of c)o.push({type:"qq",segment_start:(Number(u.segment_start)||0)/1e3,segment_end:(Number(u.segment_name.split("/").pop())||0)/1e3,url:`${n}${s}/${u.segment_name}`});return new vt({type:"qq",segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=await ge(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.barrage_list)}return n}catch(r){return _("error","[Tencent] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>{let n={timepoint:r.time_offset/1e3,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:r.content};if(r.content_style&&r.content_style!=="")try{let s=JSON.parse(r.content_style);s.gradient_colors&&s.gradient_colors.length>0?n.color=parseInt(s.gradient_colors[0].replace("#",""),16):s.color&&s.color!=="ffffff"&&(n.color=parseInt(s.color.replace("#",""),16)),s.position===2?n.ct=5:s.position===3&&(n.ct=4)}catch{}return n.like=parseInt(r.up_count)||0,n})}};St();ar();hn();Is();$n();Pt();hs();var Rg=class t extends wt{static XOR_KEY=0x75706971676c;static SECRET_KEY="howcuteitis";static KEY_NAME="secret_key";async search(e){try{_("info",`[iQiyi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,current_page:"1",mode:"1",source:"input",suggest:"",pcv:"13.074.22699",version:"13.074.22699",pageNum:"1",pageSize:"25",pu:"",u:"f6440fc5d919dca1aea12b6aff56e1c7",scale:"200",token:"",userVip:"0",conduit:"",vipType:"-1",os:"",osShortName:"win10",dataType:"",appMode:"",ad:JSON.stringify({lm:3,azd:0xe8d4a513b7,azt:733,position:"feed"}),adExt:JSON.stringify({r:"2.1.5-ares6-pure"})},s=`https://mesh.if.iqiyi.com/portal/lw/search/homePageV3?${Ai(r)}`,i=await ge(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!i||!i.data)return _("info","[iQiyi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.data||!a.data.templates)return _("info","[iQiyi] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[],c=a.data.templates;for(let u of c){let l=[];u.template===112&&u.intentAlbumInfos?(_("info",`[iQiyi] \u627E\u5230\u610F\u56FE\u5361\u7247 (template 112)\uFF0C\u5904\u7406 ${u.intentAlbumInfos.length} \u4E2A\u7ED3\u679C`),l=u.intentAlbumInfos):[101,102,103].includes(u.template)&&u.albumInfo&&(_("info",`[iQiyi] \u627E\u5230\u666E\u901A\u7ED3\u679C\u5361\u7247 (template ${u.template})`),l=[u.albumInfo]);for(let d of l){let f=this._filterIqiyiSearchItem(d,e);f&&o.push(f)}}return _("info",`[iQiyi] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[iQiyi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}_filterIqiyiSearchItem(e,r){if(!e.title)return null;if(e.btnText==="\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E")return _("info",`[iQiyi] \u8FC7\u6EE4\u6389\u5916\u7AD9\u4ED8\u8D39\u64AD\u653E\u5185\u5BB9: ${e.title}`),null;let n=e.channel||"",s="\u7535\u89C6\u5267";if(n.includes("\u7535\u5F71"))s="\u7535\u5F71";else if(n.includes("\u52A8\u6F2B"))s="\u52A8\u6F2B";else if(n.includes("\u7EFC\u827A"))s="\u7EFC\u827A";else if(n.includes("\u7EAA\u5F55\u7247"))s="\u7EAA\u5F55\u7247";else if(n.includes("\u7535\u89C6\u5267"))s="\u7535\u89C6\u5267";else return null;let i=!1,a=!1;if(e.metaTags&&Array.isArray(e.metaTags)&&e.metaTags.forEach(p=>{p.name==="3D"&&(i=!0),p.name==="2D"&&(a=!0)}),e.baseTags&&Array.isArray(e.baseTags)&&e.baseTags.forEach(p=>{p.value==="3D"&&(i=!0),p.value==="2D"&&(a=!0)}),i?s="3D"+s:a&&(s="2D"+s),s.includes("\u7535\u5F71")){let p=e.qipuId||e.playQipuId;if(!p)return _("info",`[iQiyi] \u7535\u5F71\u7F3A\u5C11 qipuId: ${e.title}`),null;let m=null;if(e.year){let A=e.year.value||e.year.name;A&&typeof A=="string"&&A.length===4&&/^\d{4}$/.test(A)&&(m=parseInt(A))}let h=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:`movie_${p}`,title:h,type:s,year:m,imageUrl:e.img||e.imgH,episodeCount:1,_qipuId:p}}let o=e.pageUrl;if(!o)return _("info",`[iQiyi] \u975E\u7535\u5F71\u5185\u5BB9\u7F3A\u5C11 pageUrl: ${e.title}`),null;let c=o.match(/v_(\w+?)\.html/);if(!c)return _("info",`[iQiyi] \u65E0\u6CD5\u4ECE pageUrl \u63D0\u53D6 link_id: ${o}`),null;let u=c[1],l=null;if(e.year){let p=e.year.value||e.year.name;p&&typeof p=="string"&&p.length===4&&/^\d{4}$/.test(p)&&(l=parseInt(p))}let d=null;if(e.videos&&e.videos.length>0)d=e.videos.length;else if(e.subscriptContent){let p=e.subscriptContent.match(/(?:更新至|å…¨|å…±)\s*(\d+)\s*(?:集|话|期)/);if(p)d=parseInt(p[1]);else{let m=e.subscriptContent.trim().match(/^(\d+)$/);m&&(d=parseInt(m[1]))}}let f=e.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A");return{provider:"iqiyi",mediaId:u,title:f,type:s,year:l,imageUrl:e.img||e.imgH,episodeCount:d}}async getEpisodes(e){try{if(_("info",`[iQiyi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`),e.startsWith("movie_")){let p=e.substring(6);_("info",`[iQiyi] \u7535\u5F71\u7C7B\u578B\uFF0C\u8C03\u7528 base_info API \u83B7\u53D6\u89C6\u9891ID: qipuId=${p}`);let m=await this._getMovieVideoId(p);return m?(_("info",`[iQiyi] \u7535\u5F71\u89C6\u9891ID: ${m}`),[{id:m,title:"\u6B63\u7247",order:1,link:`https://www.iqiyi.com/v_${m}.html`}]):(_("error",`[iQiyi] \u65E0\u6CD5\u83B7\u53D6\u7535\u5F71\u7684\u89C6\u9891ID: qipuId=${p}`),[])}let r=/^\d+$/.test(e)?e:this._videoIdToEntityId(e);if(!r)return _("error",`[iQiyi] \u65E0\u6CD5\u5C06 media_id '${e}' \u8F6C\u6362\u4E3A entity_id`),[];let n={entity_id:r,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.082.22866",app_version:"13.082.22866",ext:"",app_mode:"standard",scale:"100",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.2.0-ares6-pure"}'};n.sign=this._createSign(n);let i=`https://www.iqiyi.com/prelw/tvg/v2/lw/base_info?${Ai(n)}`,a=await ge(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.iqiyi.com/"}});if(!a||!a.data)return _("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.status_code!==0||!o.data||!o.data.template)return _("error",`[iQiyi] API \u8FD4\u56DE\u9519\u8BEF\uFF0Cstatus_code: ${o.status_code}`),[];let c=[],u=o.data.template.tabs||[];if(u.length===0)return _("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6807\u7B7E\u9875"),[];let l=u[0].blocks||[],d=!1;for(let p of l)if(p.bk_type==="video_list"&&p.data?.data){if(_("info",`[iQiyi] \u627E\u5230 video_list \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757, bk_id: ${p.bk_id}`),!p.tag||!p.tag.includes("episodes")){_("info",`[iQiyi] \u8DF3\u8FC7\u975E\u5206\u96C6\u5757: ${p.bk_id}`);continue}d=!0;let m=p.data.data;if(!Array.isArray(m)){_("warn","[iQiyi] data.data \u4E0D\u662F\u6570\u7EC4\uFF0C\u8DF3\u8FC7\u6B64\u5757");continue}for(let h of m)if(!(!h.videos||!Array.isArray(h.videos))){for(let A of h.videos)if(!(!A.data||!Array.isArray(A.data)))for(let g of A.data){if(g.content_type!==1)continue;let y=(g.play_url||"").match(/tvid=(\d+)/);if(!y)continue;let x=y[1],v=g.short_display_name||g.title||"\u672A\u77E5\u5206\u96C6",C=g.subtitle;C&&!v.includes(C)&&(v=`${v} ${C}`);let R=g.album_order,w=g.page_url;x&&v&&w&&c.push({id:x,title:v,order:R!==void 0?R:c.length,link:w})}}}else if(p.bk_type==="album_episodes"&&p.data?.data){_("info","[iQiyi] \u627E\u5230 album_episodes \u7C7B\u578B\u7684\u5206\u96C6\u6570\u636E\u5757"),d=!0;let m=p.data.data;for(let h of m){let A=h.videos;if(typeof A=="string"){_("info",`[iQiyi] \u53D1\u73B0\u5206\u5B63URL\uFF0C\u6B63\u5728\u83B7\u53D6: ${A}`);try{let g=await ge(A);A=typeof g.data=="string"?JSON.parse(g.data):g.data}catch(g){_("error",`[iQiyi] \u83B7\u53D6\u5206\u5B63\u6570\u636E\u5931\u8D25: ${g.message}`);continue}}if(A&&typeof A=="object"&&A.feature_paged)for(let g in A.feature_paged){let b=A.feature_paged[g];for(let y of b){if(y.content_type!==1)continue;let v=(y.play_url||"").match(/tvid=(\d+)/);if(!v)continue;let C=v[1],R=y.short_display_name||y.title||"\u672A\u77E5\u5206\u96C6",w=y.subtitle;w&&!R.includes(w)&&(R=`${R} ${w}`);let N=y.album_order,P=y.page_url;C&&R&&N&&P&&c.push({id:C,title:R,order:N,link:P})}}}}if(!d)return _("info","[iQiyi] \u672A\u627E\u5230\u5206\u96C6\u6570\u636E\u5757"),[];let f=Array.from(new Map(c.map(p=>[p.id,p])).values());return f.sort((p,m)=>p.order-m.order),_("info",`[iQiyi] \u6210\u529F\u83B7\u53D6 ${f.length} \u4E2A\u5206\u96C6`),f}catch(r){return _("error","[iQiyi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieVideoId(e){try{let r={entity_id:e,device_id:"qd5fwuaj4hunxxdgzwkcqmefeb3ww5hx",auth_cookie:"",user_id:"0",vip_type:"-1",vip_status:"0",conduit_id:"",pcv:"13.103.23529",app_version:"13.103.23529",ext:"",app_mode:"standard",scale:"125",timestamp:String(Date.now()),src:"pca_tvg",os:"",ad_ext:'{"r":"2.5.0-ares6-pure"}'};r.sign=this._createSign(r);let s=`https://mesh.if.iqiyi.com/tvg/v2/lw/base_info?${Ai(r)}`;_("info",`[iQiyi] \u8BF7\u6C42\u7535\u5F71\u8BE6\u60C5: ${s}`);let i=await ge(s,{headers:{accept:"*/*",origin:"https://www.iqiyi.com",referer:"https://www.iqiyi.com/","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"}});if(!i||!i.data)return _("error","[iQiyi] base_info API \u54CD\u5E94\u4E3A\u7A7A"),null;let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(a.data&&a.data.base_data){let o=a.data.base_data;if(o.share_url){let c=o.share_url.match(/v_(\w+)\.html/);if(c){let u=c[1];return _("info",`[iQiyi] \u4ECE share_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}if(o.page_url){let c=o.page_url.match(/v_(\w+)\.html/);if(c){let u=c[1];return _("info",`[iQiyi] \u4ECE page_url \u63D0\u53D6\u89C6\u9891ID: ${u}`),u}}}return _("error","[iQiyi] base_info API \u54CD\u5E94\u4E2D\u672A\u627E\u5230\u89C6\u9891ID"),_("info",`[iQiyi] \u54CD\u5E94\u6570\u636E\u7ED3\u6784: ${JSON.stringify(a).substring(0,1e3)}...`),null}catch(r){return _("error",`[iQiyi] \u83B7\u53D6\u7535\u5F71\u89C6\u9891ID\u65F6\u51FA\u9519: ${r.message}`),null}}_videoIdToEntityId(e){try{let r=parseInt(e,36),n=this._xorOperation(r),s=n<9e5?100*(n+9e5):n;return String(s)}catch(r){return _("error",`[iQiyi] \u5C06 video_id '${e}' \u8F6C\u6362\u4E3A entity_id \u65F6\u51FA\u9519: ${r.message}`),null}}_xorOperation(e){let r=e.toString(2),n=t.XOR_KEY.toString(2),s=r.split("").reverse(),i=n.split("").reverse(),a=[],o=Math.max(s.length,i.length);for(let u=0;uyt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[iQiyi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p of d){let m=p.link||`https://www.iqiyi.com/v_${l.mediaId}.html`;f.push({name:p.order.toString(),url:m,title:`\u3010qiyi\u3011 ${p.title}`})}if(f.length>0){let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from iqiyi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"iqiyi"};a.push(m),Lt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[iQiyi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[iQiyi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u7231\u5947\u827A\u5F39\u5E55...",e);let r;try{r=await ge(e,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(u){return _("error","[iQiyi] \u8BF7\u6C42\u9875\u9762\u5931\u8D25:",u),[]}let n=r.data.match(/]*>(.*?)<\/title>/i),s=n?n[1].split("_")[0]:"\u672A\u77E5\u6807\u9898";_("info",`[iQiyi] \u6807\u9898: ${s}`);let i=await this.getEpisodeDanmuSegments(e);if(!i||!i.segmentList||i.segmentList.length===0)return[];let a=i.segmentList;_("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${a.length}`);let o=[];for(let u of a)o.push(this.getEpisodeSegmentDanmu(u));let c=[];try{(await Promise.allSettled(o)).filter(d=>d.status==="fulfilled").map(d=>d.value).filter(d=>d!==null).forEach(d=>{c.push(...d)})}catch(u){return _("error","[iQiyi] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",u),[]}return ts(c),c}async getEpisodeDanmuSegments(e){_("info","[iQiyi] \u83B7\u53D6\u7231\u5947\u827A\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcw-api.iq.com/api/decode/",n="https://pcw-api.iqiyi.com/video/video/baseinfo/",s;try{let d=e.match(/v_(\w+)/);if(!d)return _("error","[iQiyi] \u65E0\u6CD5\u4ECE URL \u4E2D\u63D0\u53D6 tvid"),new vt({type:"qiyi",segmentList:[]});s=d[1],_("info",`[iQiyi] tvid: ${s}`);let f=`${r}${s}?platformId=3&modeCode=intl&langCode=sg`,p=await ge(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});s=(typeof p.data=="string"?JSON.parse(p.data):p.data).data.toString(),_("info",`[iQiyi] \u89E3\u7801\u540E tvid: ${s}`)}catch(d){return _("error","[iQiyi] \u8BF7\u6C42\u89E3\u7801\u4FE1\u606F\u5931\u8D25:",d),new vt({type:"qiyi",segmentList:[]})}let i;try{let d=`${n}${s}`,f=await ge(d,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=(typeof f.data=="string"?JSON.parse(f.data):f.data).data;if(i=Number(m.durationSec)||0,m.displayBarrage===!1)return _("info","[iQiyi] \u7231\u5947\u827A\u89C6\u9891\u672A\u5F00\u542F\u5F39\u5E55"),new vt({type:"qiyi",duration:i,segmentList:[]});_("info",`[iQiyi] \u65F6\u957F: ${i}`)}catch(d){return _("error","[iQiyi] \u8BF7\u6C42\u89C6\u9891\u57FA\u7840\u4FE1\u606F\u5931\u8D25:",d),new vt({type:"qiyi",segmentList:[]})}let a=60,o=Math.ceil(i/a);_("info",`[iQiyi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${o}`);let c=[],u=`0000${s}`,l=`${u.slice(-4,-2)}/${u.slice(-2)}`;for(let d=0;d(.*?)`,"g");return e.match(c)?.map(u=>u.substring(o.length+2,u.length-o.length-3))||[]}let n=r("content"),s=r("showTime"),i=r("color"),a=r("likeCount");return n.map((o,c)=>({content:o,showTime:s[c],color:i[c],like:parseInt(a[c],10)||0}))}_parseIqiyiProtoDanmu(e){let r=[],n=this._parseIqiyiProtoFields(e);for(let s of n){if(s.number!==6||!s.bytes)continue;let i=this._parseIqiyiProtoFields(s.bytes),a=this._getIqiyiProtoString(i,1);for(let o of i){if(o.number!==2||!o.bytes)continue;let c=this._parseIqiyiProtoFields(o.bytes),u=this._getIqiyiProtoString(c,2);u&&r.push({content:u,showTime:this._getIqiyiProtoString(c,6)||a||"0",color:this._getIqiyiProtoString(c,8)||"ffffff",like:parseInt(this._getIqiyiProtoString(c,14),10)||0})}}return r}_parseIqiyiProtoFields(e){let r=[],n=0,s=new TextDecoder("utf-8");for(;n>3n),c=Number(a&7n);if(o===0)break;if(c===0){let u=this._readIqiyiVarint(e,n);r.push({number:o,wireType:c,value:u.value.toString()}),n=u.offset}else if(c===1)r.push({number:o,wireType:c}),n+=8;else if(c===2){let u=this._readIqiyiVarint(e,n),l=Number(u.value);n=u.offset;let d=n+l;if(d>e.length)break;let f=e.subarray(n,d);r.push({number:o,wireType:c,bytes:f,value:s.decode(f)}),n=d}else if(c===5)r.push({number:o,wireType:c}),n+=4;else break}return r}_readIqiyiVarint(e,r){let n=0n,s=0n,i=r;for(;in.number===r)?.value||""}formatComments(e){return e.map(r=>{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return n.timepoint=parseFloat(r.showTime),n.color=parseInt(r.color,16),n.content=cf(r.content),n.size=25,n.like=r.like,n})}};Pt();St();ar();hn();Is();$n();hs();var Ng=class extends wt{transformV2Color(e){if(!e)return-1;let n=uK(e.color_left),s=uK(e.color_right);return n===-1&&s===-1?-1:n===-1?s:s===-1?n:Math.floor((n+s)/2)}_extractMediaType(e){let r=(e||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u52A8\u6F2B")||r.includes("\u52A8\u753B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EFC\u827A")||r.includes("\u771F\u4EBA\u79C0")||r.includes("variety")?"\u7EFC\u827A":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(e){try{_("info",`[Mango] \u5F00\u59CB\u641C\u7D22: ${e}`);let n=`https://mobileso.bz.mgtv.com/msite/search/v2?q=${encodeURIComponent(e)}&pc=30&pn=1&sort=-99&ty=0&du=0&pt=0&corr=1&abroad=0&_support=10000000000000000`,s=await ge(n,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Accept:"application/json",Referer:"https://www.mgtv.com/"}});if(!s||!s.data)return _("info","[Mango] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let i=typeof s.data=="string"?JSON.parse(s.data):s.data;if(!i.data||!i.data.contents)return _("info","[Mango] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let a=[];for(let o of i.data.contents)if(o.type==="media")for(let c of o.data){if(c.source!=="imgo")continue;let u=c.url?c.url.match(/\/b\/(\d+)/):null;if(!u)continue;let l=u[1],d=c.title?c.title.replace(/<[^>]+>/g,"").replace(/:/g,"\uFF1A"):"",f=c.desc&&c.desc[0]?c.desc[0].match(/[12][890][0-9][0-9]/):null,p=f?parseInt(f[0]):null,m=c.desc&&c.desc[0]?c.desc[0].split("/")[0].replace("\u7C7B\u578B:","").trim():"",h=this._extractMediaType(m);a.push({provider:"imgo",mediaId:l,title:d,type:h,year:p,imageUrl:c.img||null,episodeCount:c.videoCount||null})}return _("info",`[Mango] \u641C\u7D22\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),a}catch(r){return _("error","[Mango] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Mango] \u83B7\u53D6\u5206\u96C6\u5217\u8868: collection_id=${e}`);let r=[],n="",s=0,i=1;for(;s0&&r.push(...d.data.list.filter(f=>f.src_clip_id===e)),s===0&&(i=d.data.tab_m&&d.data.tab_m.length>0?d.data.tab_m.length:1,_("info",`[Mango] \u68C0\u6D4B\u5230 ${i} \u4E2A\u6708\u4EFD\u5206\u9875`)),s++,s{let l=`${u.t2||""} ${u.t1||""}`.trim();return u.isnew==="2"?(_("info",`[Mango] \u8FC7\u6EE4\u9884\u544A\u7247: ${l}`),!1):a.test(l)?(_("info",`[Mango] \u9ED1\u540D\u5355\u8FC7\u6EE4: ${l}`),!1):!0}),c=this._processVarietyEpisodes(o);return _("info",`[Mango] \u5171\u83B7\u53D6 ${c.length} \u96C6`),c}catch(r){return _("error","[Mango] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}async _getMovieEpisode(e){try{_("info",`[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247: collection_id=${e}`);let r=`https://pcweb.api.mgtv.com/variety/showlist?allowedRC=1&collection_id=${e}&month=&page=1&_support=10000000`,n=await ge(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.mgtv.com/"}});if(!n||!n.data)return _("info","[Mango] \u672A\u627E\u5230\u7535\u5F71\u4FE1\u606F"),null;let s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(!s.data||!s.data.list||s.data.list.length===0)return _("info","[Mango] \u7535\u5F71\u5217\u8868\u4E3A\u7A7A"),null;let i=s.data.list.find(a=>a.isIntact==="1");return i||(i=s.data.list.find(a=>a.isnew!=="2")),i||(i=s.data.list[0]),_("info",`[Mango] \u627E\u5230\u7535\u5F71\u6B63\u7247: ${i.t3||i.t1||"\u6B63\u7247"}`),i}catch(r){return _("error","[Mango] \u83B7\u53D6\u7535\u5F71\u6B63\u7247\u51FA\u9519:",r.message),null}}_processVarietyEpisodes(e){if(!e||e.length===0)return[];_("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5F00\u59CB\uFF0C\u539F\u59CB\u5206\u96C6\u6570: ${e.length}`);let r=e.some(i=>{let a=`${i.t2||""} ${i.t1||""}`.trim();return/第\d+期/.test(a)});_("info",`[Mango] \u7EFC\u827A\u683C\u5F0F\u5206\u6790: \u6709\u671F\u6570\u683C\u5F0F=${r}`);let n=[],s=new Map;for(let i of e){let a=`${i.t2||""} ${i.t1||""}`.trim();if(r){let o=a.match(/第(\d+)期([上中下])/),c=a.match(/第(\d+)期/),u=/第\d+期[上中下]/.test(a);if(o){let l=o[1],d=o[2],f=`\u7B2C${l}\u671F${d}`,p=a.substring(a.indexOf(f)+f.length);/^(åŠ æ›´|会员版|纯享版|特别版|独家版|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后)/.test(p)?_("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u4E0A\u4E2D\u4E0B\u683C\u5F0F+\u540E\u7F00: ${a}`):(s.set(i,[parseInt(l),d]),n.push(i),_("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u4E0A\u4E2D\u4E0B\u683C\u5F0F: ${a}`))}else if(c&&!u&&!/会员版|纯享版|特别版|独家版|åŠ æ›´|Plus|\+|花絮|预告|彩蛋|抢先|精选|未播|回顾|特辑|幕后|访谈|采访|混剪|合集|盘点|总结|åˆ å‡|未播放|NG|番外|片段|看点|精彩|制作|导演|演员|拍摄|片尾曲|插曲|主题曲|背景音乐|OST|音乐|歌曲/.test(a)){let l=c[1];s.set(i,[parseInt(l),""]),n.push(i),_("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u6807\u51C6\u671F\u6570: ${a}`)}else _("info",`[Mango] \u7EFC\u827A\u8FC7\u6EE4\u975E\u6807\u51C6\u671F\u6570\u683C\u5F0F: ${a}`)}else{if(a.includes("\u5E7F\u544A")||a.includes("\u63A8\u5E7F")){_("info",`[Mango] \u8DF3\u8FC7\u5E7F\u544A\u5185\u5BB9: ${a}`);continue}n.push(i),_("info",`[Mango] \u7EFC\u827A\u4FDD\u7559\u539F\u59CB\u6807\u9898: ${a}`)}}return r?n.sort((i,a)=>{let o=s.get(i)||[0,""],c=s.get(a)||[0,""];if(o[0]!==c[0])return o[0]-c[0];let u={"":0,\u4E0A:1,\u4E2D:2,\u4E0B:3};return(u[o[1]]||0)-(u[c[1]]||0)}):n.sort((i,a)=>{let o=l=>{let f=`${l.t2||""} ${l.t1||""}`.trim().match(/第(\d+)集/);return f?parseInt(f[1]):999999},c=o(i),u=o(a);if(c===999999&&u===999999){let l=i.ts||"0",d=a.ts||"0";return l.localeCompare(d)}return c-u}),_("info",`[Mango] \u7EFC\u827A\u5904\u7406\u5B8C\u6210\uFF0C\u8FC7\u6EE4\u540E\u5206\u96C6\u6570: ${n.length}`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Mango] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Mango] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{if(l.type==="\u7535\u5F71"){let p=await this._getMovieEpisode(l.mediaId);if(!p)return;let m=`https://www.mgtv.com/b/${l.mediaId}/${p.video_id}.html`,h=p.t3||p.t1||"\u6B63\u7247",A=[{name:"1",url:m,title:`\u3010imgo\u3011 ${h}`}],b={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Pr(l.year),episodeCount:1,rating:0,isFavorited:!0,source:"imgo"};a.push(b),Lt({...b,links:A},s),O.animes.length>O.MAX_ANIMES&&Ft();return}let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p0){let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from imgo`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"imgo"};a.push(m),Lt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Mango] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Mango] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u8292\u679CTV\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Mango] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=[];for(let a of n)s.push(ge(a.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}));let i=[];try{(await Promise.allSettled(s)).filter(c=>c.status==="fulfilled").map(c=>c.value&&c.value.data?c.value.data:null).filter(c=>c!==null).forEach(c=>{c=typeof c=="string"?JSON.parse(c):c,c.data?.items&&i.push(...c.data.items)})}catch(a){return _("error","[Mango] \u89E3\u6790\u5F39\u5E55\u6570\u636E\u5931\u8D25:",a),[]}return ts(i),i}async getEpisodeDanmuSegments(e){_("info","[Mango] \u83B7\u53D6\u8292\u679CTV\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r="https://pcweb.api.mgtv.com/video/info",n="https://galaxy.bz.mgtv.com/getctlbarrage",s="https://galaxy.bz.mgtv.com/rdbarrage",i=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,a=e.match(i),o;if(a)o=a[2].split("/").filter(Boolean);else return _("error","[Mango] Invalid URL"),new vt({type:"imgo",segmentList:[]});let c=o[o.length-2],u=o[o.length-1].split(".")[0];_("info",`[Mango] \u83B7\u53D6\u5F39\u5E55\u5206\u6BB5\u5217\u8868 - cid: ${c}, vid: ${u}`);let l;try{let m=`${r}?cid=${c}&vid=${u}`;l=await ge(m,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}})}catch(m){return m.response?.status===404?new vt({type:"imgo",segmentList:[]}):(_("error","[Mango] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m),new vt({type:"imgo",segmentList:[]}))}let f=(typeof l.data=="string"?JSON.parse(l.data):l.data).data.info.time,p=!0;try{let m=`${n}?version=8.1.39&abroad=0&uuid=&os=10.15.7&platform=0&mac=&vid=${u}&pid=&cid=${c}&ticket=`,h=await ge(m,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),A=typeof h.data=="string"?JSON.parse(h.data):h.data;(!A.data||!A.data.cdn_list||!A.data.cdn_version)&&(_("warn","[Mango] \u65B0API\u7F3A\u5C11\u5FC5\u8981\u5B57\u6BB5\uFF0C\u8FD4\u56DE\u7A7A\u5206\u6BB5\u5217\u8868"),p=!1);let g=[];if(p){let b=Math.ceil(Cg(f)/60),y=A.data.cdn_list.split(",")[0],x=A.data.cdn_version;for(let v=0;v{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};return r?.v2_color&&(n.color=this.transformV2Color(r?.v2_color)),r?.v2_position&&(r?.v2_position===1?n.ct=5:r?.v2_position===2&&(n.ct=4)),n.timepoint=r.time/1e3,n.content=r.content,n.uid=r.uid,n.like=r.v2_up_count,n})}};Pt();St();ar();Is();$n();hn();hs();no();var Og=class t extends wt{static WBI_MIXIN_KEY_CACHE={key:null,timestamp:0};static WBI_MIXIN_KEY_CACHE_TTL=3600;static WBI_MIXIN_KEY_TABLE=[46,47,18,2,53,8,23,32,15,50,10,31,58,3,45,35,27,43,5,49,33,9,42,19,29,28,14,39,12,38,41,13,37,48,7,16,24,55,40,61,26,17,0,1,60,51,30,4,22,25,54,21,56,59,6,63,57,62,11,36,20,34,44,52];static APP_KEY="1d8b6e7d45233436";static APP_SEC="560c52ccd288fed045859ed18bffd973";async resolveB23Link(e){let r;try{_("info",`[Bilibili] \u6B63\u5728\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5: ${e}`);let n=parseInt(O.vodRequestTimeout||"5000",10)||5e3,s=new AbortController;r=setTimeout(()=>s.abort(),n);let a=await(typeof fetch=="function"?fetch:(await Promise.resolve().then(()=>(_C(),wL))).default)(e,{method:"GET",headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},signal:s.signal,redirect:"manual"}),o=a.headers?.get?.("location")||a.headers?.get?.("Location"),c=o?new URL(o,e).toString():a.url;return c&&c!==e?(_("info",`[Bilibili] b23.tv \u77ED\u94FE\u63A5\u5DF2\u89E3\u6790\u4E3A: ${c}`),c):(_("error","[Bilibili] \u65E0\u6CD5\u89E3\u6790 b23.tv \u77ED\u94FE\u63A5"),e)}catch(n){return _("error","[Bilibili] \u89E3\u6790 b23.tv \u77ED\u94FE\u63A5\u5931\u8D25:",n),e}finally{r&&clearTimeout(r)}}async _getWbiMixinKey(){let e=Math.floor(Date.now()/1e3),r=t.WBI_MIXIN_KEY_CACHE;if(r.key&&e-r.timestamp(c+u)[d]).join("").substring(0,32);return r.key=l,r.timestamp=e,_("info","[Bilibili] \u6210\u529F\u83B7\u53D6\u65B0\u7684 WBI mixin key"),l}catch(n){return _("error","[Bilibili] \u83B7\u53D6 WBI \u5BC6\u94A5\u5931\u8D25:",n.message),"dba4a5925b345b4598b7452c75070bca"}}_getWbiSignedParams(e,r){let n={...e};n.wts=Math.floor(Date.now()/1e3);let o=Object.keys(n).sort().map(u=>{let l=n[u]??"";return`${encodeURIComponent(u)}=${encodeURIComponent(l)}`}).join("&")+r,c=Ls(o);return n.w_rid=c,n}async _searchByType(e,r,n){try{_("info",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}'\uFF0C\u5173\u952E\u8BCD '${e}'`);let s={keyword:e,search_type:r},i=this._getWbiSignedParams(s,n),o=`https://api.bilibili.com/x/web-interface/wbi/search/type?${Object.keys(i).map(d=>`${encodeURIComponent(d)}=${encodeURIComponent(i[d])}`).join("&")}`,c=await ge(o,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),u=typeof c.data=="string"?JSON.parse(c.data):c.data;if(u.code!==0||!u.data?.result)return _("info",`[Bilibili] \u7C7B\u578B '${r}' \u65E0\u7ED3\u679C (Code: ${u.code})`),[];let l=[];for(let d of u.data.result){let f=d.season_id?`ss${d.season_id}`:d.bvid?`bv${d.bvid}`:"";if(!f)continue;let p=this._extractMediaType(d.season_type_name),m=p==="\u7535\u5F71"?1:d.ep_size||0,h=null;try{d.pubdate?typeof d.pubdate=="number"?h=new Date(d.pubdate*1e3).getFullYear():typeof d.pubdate=="string"&&d.pubdate.length>=4&&(h=parseInt(d.pubdate.substring(0,4))):d.pubtime&&(h=new Date(d.pubtime*1e3).getFullYear())}catch{}let A=cf((d.title||"").replace(/<[^>]+>/g,"")).replace(/:/g,"\uFF1A").trim(),g=cf((d.org_title||"").replace(/<[^>]+>/g,"")).trim(),b={provider:"bilibili",mediaId:f,mdId:d.media_id?`md${d.media_id}`:null,title:A,org_title:g,type:p,year:h,imageUrl:d.cover||null,episodeCount:m};d.eps&&d.eps.length>0&&(b._eps=d.eps),l.push(b)}return _("info",`[Bilibili] \u7C7B\u578B '${r}' \u627E\u5230 ${l.length} \u4E2A\u7ED3\u679C`),l}catch(s){return _("error",`[Bilibili] \u641C\u7D22\u7C7B\u578B '${r}' \u5931\u8D25:`,s.message),[]}}_extractMediaType(e){let r=(e||"").toLowerCase();return r.includes("\u7535\u5F71")||r.includes("movie")?"\u7535\u5F71":r.includes("\u756A\u5267")||r.includes("\u56FD\u521B")||r.includes("\u52A8\u6F2B")||r.includes("anime")?"\u52A8\u6F2B":r.includes("\u7EAA\u5F55\u7247")||r.includes("documentary")?"\u7EAA\u5F55\u7247":r.includes("\u7EFC\u827A")||r.includes("variety")?"\u7EFC\u827A":(r.includes("\u7535\u89C6\u5267")||r.includes("\u5267\u96C6")||r.includes("drama")||r.includes("tv"),"\u7535\u89C6\u5267")}async search(e){let r=[];O.useBangumiData&&(r=await Au(e,["bilibili","bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"]),_("info",`[Bilibili] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`));let n=r.filter(s=>["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(s.matchedSiteKey));try{_("info",`[Bilibili] \u5F00\u59CB\u641C\u7D22: ${e}`);let s=await this._getWbiMixinKey(),i=this._searchByType(e,"media_bangumi",s),a=this._searchByType(e,"media_ft",s),o=Promise.resolve([]);this._hasBilibiliProxy()&&(_("info","[Bilibili] \u68C0\u6D4B\u5230\u4EE3\u7406\u914D\u7F6E\uFF0C\u542F\u7528\u6E2F\u6FB3\u53F0\u5E76\u884C\u641C\u7D22"),o=this._searchOversea(e,n.length>0));let c=(await Promise.all([i,a,o])).flat(),u=[],l=new Set,d=new Set;for(let p of c){if(!p||!p.mediaId&&!p.season_id)continue;let m=r.find(A=>p.mdId&&p.mdId===`md${A.siteId}`)||r.find(A=>p.org_title&&A.title===p.org_title);if(m){let g=(m.titles.find(b=>b&&b.includes(e))||m.titles[1]||m.title)+(m.titleSuffix||"");p.title=g,p._displayTitle=g,p.aliases=[...m.titles],p.type=m.typeStr||p.type,p.isLocalPriority=!0,d.add(`md${m.siteId}`),_("info",`[Bilibili] \u7F51\u7EDC\u7ED3\u679C [${p.title}] \u6210\u529F\u5BF9\u9F50\u672C\u5730 Bangumi-Data \u6570\u636E`)}let h=p.mediaId||(p.season_id?`ss${p.season_id}`:null);h&&l.has(h)||(h&&l.add(h),u.push(p))}let f=r.filter(p=>!d.has(`md${p.siteId}`));if(f.length>0){let p=f.filter(h=>h.season_id),m=f.filter(h=>!h.season_id);if(p.length>0){_("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${p.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5....\uFF08\u5305\u542B season_id \uFF09`);for(let h of p){let g=(h.titles.find(x=>x&&x.includes(e))||h.titles[1]||h.title)+(h.titleSuffix||""),b={provider:"bilibili",mediaId:`ss${h.season_id}`,mdId:`md${h.siteId}`,title:g,org_title:h.title,aliases:[...h.titles],_displayTitle:g,type:h.typeStr,year:h.begin?parseInt(h.begin.substring(0,4)):null,imageUrl:"",episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(h.matchedSiteKey),isLocalPriority:!0},y=b.mediaId;y&&!l.has(y)&&(l.add(y),u.unshift(b))}}if(m.length>0){_("info",`[Bilibili] \u4ECE\u672C\u5730 Bangumi-Data \u8865\u5145 ${m.length} \u6761\u7F3A\u6F0F\u8BB0\u5F55\u5E76\u8BF7\u6C42\u8BE6\u60C5...`);let h=m.map(async g=>{let b=await this._resolveMediaInfo(g.siteId),x=(g.titles.find(v=>v&&v.includes(e))||g.titles[1]||g.title)+(g.titleSuffix||"");return{provider:"bilibili",mediaId:b.seasonId||`md${g.siteId}`,mdId:`md${g.siteId}`,title:x,org_title:g.title,aliases:[...g.titles],_displayTitle:x,type:g.typeStr,year:g.begin?parseInt(g.begin.substring(0,4)):null,imageUrl:b.cover,episodeCount:0,isOversea:["bilibili_hk_mo_tw","bilibili_hk_mo","bilibili_tw"].includes(g.matchedSiteKey),isLocalPriority:!0}}),A=await Promise.all(h);for(let g of A){let b=g.mediaId;b&&l.has(b)||b&&(l.add(b),u.unshift(g))}}}return _("info",`[Bilibili] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${u.length} \u4E2A\u6709\u6548\u7ED3\u679C`),u}catch(s){return _("error","[Bilibili] \u641C\u7D22\u51FA\u9519:",s.message),[]}}async _resolveMediaInfo(e){try{let r=await ge(`https://api.bilibili.com/pgc/review/user?media_id=${e}`),n=typeof r.data=="string"?JSON.parse(r.data):r.data;if(n.code===0&&n.result&&n.result.media){let s=n.result.media;return{seasonId:`ss${s.season_id}`,cover:s.cover||s.horizontal_picture||""}}}catch(r){_("error",`[Bilibili] \u83B7\u53D6\u5A92\u4F53\u4FE1\u606F\u5931\u8D25 (md${e}):`,r.message)}return{seasonId:null,cover:""}}async _getPgcEpisodes(e){let r=[],n=[`https://api.bilibili.com/pgc/view/web/season?season_id=${e}`,`https://api.bilibili.com/pgc/web/season/section?season_id=${e}`];for(let i of n)try{let a=await ge(i,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),o=typeof a.data=="string"?JSON.parse(a.data):a.data;if(o.code===0&&o.result&&(r=o.result.main_section?.episodes||o.result.episodes||[],o.result.cover&&(r._cover=o.result.cover),r.length>0))break}catch{}if(r.length===0)return _("error",`[Bilibili] \u83B7\u53D6\u756A\u5267\u5206\u96C6\u5931\u8D25 (season_id=${e}): \u6240\u6709\u63A5\u53E3\u5747\u65E0\u6570\u636E`),[];let s=r.map((i,a)=>{let o="";if(i.show_title)o=i.show_title;else{let c=i.title||String(a+1),u=i.long_title||"";o=/^\d+(\.\d+)?$/.test(c)?`\u7B2C${c}\u8BDD`:c,u&&u!==c&&(o+=` ${u}`)}return{vid:`${i.aid},${i.cid}`,id:i.id,title:o.trim(),link:`https://www.bilibili.com/bangumi/play/ep${i.id}`}});return r._cover&&(s._cover=r._cover),_("info",`[Bilibili] \u83B7\u53D6\u5230 ${s.length} \u4E2A\u756A\u5267\u5206\u96C6`),s}async _getUgcEpisodes(e){try{let r=`https://api.bilibili.com/x/web-interface/view?bvid=${e}`,n=await ge(r,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Cookie:O.bilibliCookie||""}}),s=typeof n.data=="string"?JSON.parse(n.data):n.data;if(s.code!==0||!s.data)return _("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u5931\u8D25 (bvid=${e}):`,s.message),[];let i=s.data.pages||[];if(i.length===0)return _("info",`[Bilibili] \u89C6\u9891 bvid=${e} \u65E0\u5206\u96C6\u6570\u636E`),[];let a=i.map((o,c)=>({vid:`${s.data.aid},${o.cid}`,id:o.cid,title:(o.part||`P${o.page}`).trim(),link:`https://www.bilibili.com/video/${e}?p=${o.page}`}));return _("info",`[Bilibili] \u83B7\u53D6\u5230 ${a.length} \u4E2A\u89C6\u9891\u5206\u96C6`),a}catch(r){return _("error",`[Bilibili] \u83B7\u53D6\u89C6\u9891\u5206\u96C6\u51FA\u9519 (bvid=${e}):`,r.message),[]}}async getEpisodes(e){if(e.startsWith("md")){let r=e.substring(2),n=await this._resolveMediaInfo(r);if(n.seasonId){let s=await this._getPgcEpisodes(n.seasonId.substring(2));return s._cover=n.cover,s}return[]}if(e.startsWith("ss")){let r=e.substring(2);return await this._getPgcEpisodes(r)}else if(e.startsWith("bv")){let r=e.substring(2);return await this._getUgcEpisodes(r)}return _("error",`[Bilibili] \u4E0D\u652F\u6301\u7684 ID \u683C\u5F0F: ${e}`),[]}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Bilibili] sourceAnimes is not a valid array"),[];e.forEach(d=>{d.aliases=d.aliases||[],d.title&&!d.aliases.includes(d.title)&&d.aliases.push(d.title),d.org_title&&!d.aliases.includes(d.org_title)&&d.aliases.push(d.org_title)});let o=e.length>0?e[0]._tmdbCnAlias:null;eE(e,o);let c=e.filter(d=>d.isOversea||yt(d.title,r,i)||d.aliases&&d.aliases.some(f=>yt(f,r,i))),u=i!==null?i:$t(r);if(u!==null){let d=c.filter(f=>{let p=f._displayTitle||f.title,m=Tt(p).season;return m===u||u===1&&m===null});d.length>0&&(c=d,_("info",`[Bilibili] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${u}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let l=c.map(async d=>{try{let f=[],p=d.checkMore?.content?.includes("\u67E5\u770B\u5168\u90E8");if(d._eps&&d._eps.length>0&&!p){f=d._eps.map((b,y)=>{let x;d.isOversea&&b.position?x=b.position.toString():x=b.index_title||b.index||(y+1).toString();let v=b.title||b.index_title||x,C=b.long_title||"",R=/^\d+(\.\d+)?$/.test(v)?`\u7B2C${v}\u8BDD`:v;C&&C!==v&&(R+=` ${C}`);let w=b.id||b.param,N=`https://www.bilibili.com/bangumi/play/ep${w}?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(N+="&area=hkmt"),{name:x,url:N,title:`\u3010bilibili1\u3011 ${R.trim()}`,_id:parseInt(w,10)||0}});let g=f.map(b=>lf(b.name));g.every(b=>b!==null)?(f.forEach((b,y)=>b._sortKey=g[y]),f.sort((b,y)=>b._sortKey-y._sortKey)):f.sort((b,y)=>b._id-y._id),_("info",`[Bilibili] \u76F4\u63A5\u4F7F\u7528\u641C\u7D22\u7ED3\u679C\u4E2D\u7684 ${f.length} \u96C6\u5206\u96C6`)}else{let g=await this.getEpisodes(d.mediaId);if(g.length===0){_("info",`[Bilibili] ${d.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}g._cover&&(d.imageUrl=g._cover),f=g.map((b,y)=>{let x=b.link+`?season_id=${d.mediaId.substring(2)}`;return d.isOversea&&(x+="&area=hkmt"),{name:`${y+1}`,url:x,title:`\u3010bilibili1\u3011 ${b.title}`,_id:parseInt(b.id,10)||0}}),f.sort((b,y)=>b._id-y._id)}if(f.length===0)return;let m=Yr(d.mediaId),h=d._displayTitle||Gt(d.title),A={animeId:m,bangumiId:d.mediaId,animeTitle:`${h}(${d.year||"N/A"})\u3010${d.type}\u3011from bilibili`,type:d.type,typeDescription:d.type,imageUrl:d.imageUrl,startDate:Pr(d.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"bilibili",aliases:d.aliases};a.push(A),Lt({...A,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}catch(f){_("error",`[Bilibili] \u5904\u7406 ${d.title} \u5931\u8D25:`,f.message)}});return await Promise.all(l),this.sortAndPushAnimesByYear(a,n),a}async _extractVideoInfo(e){_("info","[Bilibili] \u63D0\u53D6B\u7AD9\u89C6\u9891\u4FE1\u606F...",e);let r="https://api.bilibili.com/x/web-interface/view",n="https://api.bilibili.com/pgc/view/web/season",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),_("info","[Bilibili] ",a);else return _("error","[Bilibili] Invalid URL"),null;let o,c,u,l;if(e.includes("video/"))try{let d=e.split("?")[1],f=1;if(d){let A=d.split("&");for(let g of A){let[b,y]=g.split("=");b==="p"&&(f=y||1)}}_("info",`[Bilibili] p: ${f}`);let p;e.includes("BV")?p=`${r}?bvid=${a[2]}`:(c=a[2].substring(2),p=`${r}?aid=${a[2].substring(2)}`);let m=await ge(p,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),h=typeof m.data=="string"?JSON.parse(m.data):m.data;if(h.code!==0)return _("error","[Bilibili] \u83B7\u53D6\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",h.message),null;u=h.data.duration,o=h.data.pages[f-1].cid}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u666E\u901A\u6295\u7A3F\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ep"))try{let d=a.slice(-1)[0].slice(2),f=e.split("?")[1]||"",p=null,m=!1;f.split("&").forEach(A=>{let[g,b]=A.split("=");g==="season_id"&&(p=b),g==="area"&&b==="hkmt"&&(m=!0)});let h=!1;if(!m){let A=await ge(`${n}?ep_id=${d}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0"}}),g=typeof A.data=="string"?JSON.parse(A.data):A.data;if(g.code===0&&g.result){let b=g.result.episodes.find(y=>y.id==d);b&&(o=b.cid,u=b.duration/1e3,l=b.share_copy,h=!0)}}if((!h||m)&&p&&this._hasBilibiliProxy()){try{let A=this._makeProxyUrl(`https://api.bilibili.com/pgc/view/web/season?season_id=${p}`),g=await ge(A,{headers:{Cookie:O.bilibliCookie||"","User-Agent":"Mozilla/5.0"}}),b=typeof g.data=="string"?JSON.parse(g.data):g.data;if(b.code===0&&b.result){let y=(b.result.episodes||b.result.main_section?.episodes||[]).find(x=>x.id==d);y&&(o=y.cid,c=y.aid,u=y.duration/1e3,l=y.long_title,h=!0)}}catch{}if(!h)try{let A=await ge(`https://api.bilibili.com/pgc/web/season/section?season_id=${p}`,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||""}}),g=typeof A.data=="string"?JSON.parse(A.data):A.data;if(g.code===0&&g.result?.main_section?.episodes){let b=g.result.main_section.episodes.find(y=>y.id==d);b&&(o=b.cid,c=b.aid,u=b.duration?b.duration/1e3:0,l=b.long_title,h=!0)}}catch{}}if(!o)return _("error","[Bilibili] \u672A\u627E\u5230\u5339\u914D\u7684\u756A\u5267\u96C6\u4FE1\u606F"),null;!u&&u!==0&&(u=0)}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else if(e.includes("bangumi/")&&e.includes("ss"))try{let d=a.slice(-1)[0].slice(2).split("?")[0],f=`${n}?season_id=${d}`;_("info",`[Bilibili] \u83B7\u53D6\u756A\u5267\u4FE1\u606F: season_id=${d}`);let p=await ge(f,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return _("error","[Bilibili] \u83B7\u53D6\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",m.message),null;if(!m.result.episodes||m.result.episodes.length===0)return _("error","[Bilibili] \u756A\u5267\u6CA1\u6709\u53EF\u7528\u7684\u96C6\u6570"),null;let h=m.result.episodes[0];o=h.cid,u=h.duration/1e3,l=h.share_copy,_("info",`[Bilibili] \u4F7F\u7528\u7B2C\u4E00\u96C6: ${l}, cid=${o}`)}catch(d){return _("error","[Bilibili] \u8BF7\u6C42\u756A\u5267\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",d),null}else return _("error","[Bilibili] \u4E0D\u652F\u6301\u7684B\u7AD9\u89C6\u9891\u7F51\u5740\uFF0C\u4EC5\u652F\u6301\u666E\u901A\u89C6\u9891(av,bv)\u3001\u5267\u96C6\u89C6\u9891(ep,ss)"),null;return _("info",`[Bilibili] \u63D0\u53D6\u89C6\u9891\u4FE1\u606F\u5B8C\u6210: cid=${o}, aid=${c}, duration=${u}`),{cid:o,aid:c,duration:u,title:l}}async getEpisodeDanmu(e){_("info","[Bilibili] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42B\u7AD9\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Bilibili] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=6,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(d).then(f=>({status:"ok",value:f})).catch(f=>({status:"err",error:f}))),u=await Promise.all(c),l=!1;for(let d of u)d.status==="ok"&&d.value?i.push(...d.value):(_("info","[Bilibili] \u6355\u83B7\u5230\u5206\u6BB5\u8BF7\u6C42\u51FA\u9519\uFF0C\u8BF4\u660E\u8BF7\u6C42\u5B8C\u6BD5\uFF0C\u505C\u6B62\u540E\u7EED\u8BF7\u6C42"),l=!0);if(l)break}return i}async getEpisodeDanmuSegments(e){if(_("info","[Bilibili] \u83B7\u53D6B\u7AD9\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),typeof e=="string"&&e.includes("/combine?")){let c=[],u=0,l=0,d=e.startsWith("http")?e:`https://www.bilibili.com${e}`,f=new URL(d);for(let[p,m]of f.searchParams.entries()){if(!p.startsWith("cid"))continue;let h=p.substring(3),[A,g]=m.split("-"),b=parseFloat(A)||0,y=parseFloat(g)||0,x=y-b;if(x<=0)continue;l+=x;let v=Math.ceil(y/360);for(let C=0;C0?Math.ceil(i/360):36;_("info",`[Bilibili] maxLen: ${a}`);let o=[];for(let c=0;c0?Math.min((c+1)*360,i):(c+1)*360,url:u})}return new vt({type:"bilibili1",duration:i>0?i:0,segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=new URL(e.url),n=e.url.split("#")[0],s=await ge(n,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Cookie:O.bilibliCookie},base64Data:!0,retries:1}),i=[];if(s&&s.data&&(i=O8e(s.data)),r.hash&&r.hash.includes("combine_offset")){let a=new URLSearchParams(r.hash.substring(1)),o=parseFloat(a.get("combine_start"))||0,c=parseFloat(a.get("combine_end"))||0,u=parseFloat(a.get("combine_offset"))||0,l=[];for(let d of i){let f=0;if(d.p&&typeof d.p=="string"?f=parseFloat(d.p.split(",")[0]):d.t!==void 0?f=Number(d.t):d.progress!==void 0&&(f=d.progress/1e3),!isNaN(f)&&f>=o&&f<=c){let p=f-o+u;if(d.p&&typeof d.p=="string"){let m=d.p.split(",");m[0]=p.toFixed(5),d.p=m.join(",")}d.t!==void 0&&(d.t=p),d.progress!==void 0&&(d.progress=Math.round(p*1e3)),l.push(d)}}return l}return i}catch(r){throw r}}formatComments(e){return e.map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=Gt(r.m)),r.like=r.like_num,r))}_makeProxyUrl(e){return O.makeProxyUrl(e)}_hasBilibiliProxy(){return(O.proxyUrl||"").split(",").some(e=>{let r=e.trim();return r.startsWith("bilibili@")||r.startsWith("@")})}_javaUrlEncode(e){return encodeURIComponent(e).replace(/!/g,"%21").replace(/'/g,"%27").replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/\*/g,"%2A").replace(/%20/g,"+")}async _searchOverseaRequest(e,r,n,s="Original",i=null){let o=(O.bilibliCookie||"").match(/([0-9a-fA-F]{32})/);if(!((O.proxyUrl||"").includes("bilibili@")||(O.proxyUrl||"").includes("@")))return[];if(o){_("info",`[Bilibili-Proxy][${s}] \u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 APP \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${r})...`);try{let u={keyword:e,type:r,area:"tw",mobi_app:"android",platform:"android",build:"8140200",ts:Math.floor(Date.now()/1e3),appkey:t.APP_KEY,access_key:o[1],disable_rcmd:1},l=Object.keys(u).sort().map(h=>`${h}=${this._javaUrlEncode(String(u[h]))}`).join("&"),d=Ls(l+t.APP_SEC),f=`https://app.bilibili.com/x/v2/search/type?${l}&sign=${d}`,p=O.makeProxyUrl(f),m=await this._fetchAppSearchWithStream(p,{"User-Agent":"Mozilla/5.0 Android","X-From-Biliroaming":"1.0.0"},s,i);if(m&&m.code===0)return(m.data?.items||m.data?.result||m.data||[]).filter(h=>h.goto!=="recommend_tips"&&h.area!=="\u6F2B\u6E38"&&h.badge!=="\u516C\u544A").map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:h.uri.match(/season\/(\d+)/)?.[1]?`ss${h.uri.match(/season\/(\d+)/)[1]}`:"",title:cf((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:cf((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.ptime?new Date(h.ptime*1e3).getFullYear():null,imageUrl:h.cover||h.pic||"",episodeCount:0,_eps:h.episodes||h.episodes_new,checkMore:h.check_more,isOversea:!0})).filter(h=>h.mediaId);m&&m.code!==0&&_("warn",`[Bilibili-Proxy] App \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`)}catch(u){if(u.name==="AbortError")throw u;_("error",`[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}`)}_("info","[Bilibili-Proxy] App \u63A5\u53E3\u8BF7\u6C42\u5931\u8D25\uFF0C\u81EA\u52A8\u964D\u7EA7\u81F3 Web \u63A5\u53E3...")}else _("info",`[Bilibili-Proxy][${s}] \u672A\u68C0\u6D4B\u5230 Access Key\uFF0C\u542F\u7528 Web \u7AEF\u63A5\u53E3\u6A21\u5F0F (Type: ${n})...`);try{let u={keyword:e,search_type:n,area:"tw",page:1,order:"totalrank",__refresh__:!0,_timestamp:Date.now()},d=`https://api.bilibili.com/x/web-interface/search/type?${Object.keys(u).map(h=>`${encodeURIComponent(h)}=${encodeURIComponent(u[h])}`).join("&")}`,f=O.makeProxyUrl(d),p=await ge(f,{headers:{"User-Agent":"Mozilla/5.0",Cookie:O.bilibliCookie||"","X-From-Biliroaming":"1.0.0"},signal:i}),m=typeof p.data=="string"?JSON.parse(p.data):p.data;if(m.code!==0)return _("warn",`[Bilibili-Proxy] Web \u63A5\u53E3\u8FD4\u56DE\u9519\u8BEF Code ${m.code}: ${m.message}`),[];if(m.data?.result)return m.data.result.filter(h=>h.url?.includes("bilibili.com")&&!h.areas?.includes("\u6F2B\u6E38")).map(h=>({provider:"bilibili",mediaId:h.season_id?`ss${h.season_id}`:"",mdId:h.media_id?`md${h.media_id}`:null,title:cf((h.title||"").replace(/<[^>]+>/g,"")).trim(),org_title:cf((h.org_title||"").replace(/<[^>]+>/g,"")).trim(),type:this._extractMediaType(h.season_type_name),year:h.pubtime?new Date(h.pubtime*1e3).getFullYear():null,imageUrl:h.cover||null,episodeCount:h.ep_size||0,_eps:h.eps,isOversea:!0})).filter(h=>h.mediaId)}catch(u){if(u.name==="AbortError")throw u;_("error",`[Bilibili-Proxy] Web \u63A5\u53E3\u8BF7\u6C42\u5F02\u5E38: ${u.message}\uFF08\u5982\u679C\u662F-500/-502\u8BF4\u660E\u53EA\u662F\u98CE\u63A7\uFF09`)}return[]}async _searchOversea(e,r=!1){let n=new AbortController,s=r?[{appType:8,webType:"media_ft"}]:[{appType:7,webType:"media_bangumi"},{appType:8,webType:"media_ft"}],i=Promise.all(s.map(async(o,c)=>(c>0&&await new Promise(u=>setTimeout(u,c*300)),this._searchOverseaRequest(e,o.appType,o.webType,"Original")))).then(o=>{let c=o.flat();return c.length&&n.abort(),c.forEach(u=>u._originalQuery=e),c}).catch(()=>[]),a=O.tmdbApiKey?new Promise(o=>setTimeout(o,100)).then(async()=>{let o=await Zb(e,n.signal,"Bilibili");if(o&&o.title&&o.title!==e){let{title:c,cnAlias:u}=o,l=s.map(async(f,p)=>(p>0&&await new Promise(m=>setTimeout(m,p*300)),this._searchOverseaRequest(c,f.appType,f.webType,"TMDB",n.signal))),d=(await Promise.all(l)).flat();return d.forEach(f=>{f._originalQuery=e,f._searchUsedTitle=c,f._tmdbCnAlias=u}),d}return[]}).catch(()=>[]):Promise.resolve([]);return(await Promise.all([i,a])).flat()}async _fetchAppSearchWithStream(e,r,n,s){if(typeof Fz!="function")return null;let i=!1,a=!1,o=await Fz(e,{headers:r,sniffLimit:8192,signal:s},c=>i?!0:c.includes('"goto":"recommend_tips"')||c.includes("\u6682\u65E0\u641C\u7D22\u7ED3\u679C")?(_("info",`[Bilibili-Proxy][${n}] \u55C5\u63A2\u5230\u65E0\u6548\u6570\u636E\uFF0C\u4E2D\u65AD`),a=!0,!1):((c.includes('"season_id"')||c.includes('"episodes"'))&&(i=!0),!0));return a?{code:0,data:{items:[]}}:o}};Pt();St();ar();hn();Is();$n();hs();var Pg=class extends wt{convertYoukuUrl(e){let r=e.match(/vid=([^&]+)/);return!r||!r[1]?null:`https://v.youku.com/v_show/id_${r[1]}.html`}filterYoukuSearchItem(e,r){let n=e.commonData;if(!n||!n.titleDTO||n.isYouku!==1&&n.hasYouku!==1)return null;let s=n.titleDTO.displayName;if(["\u4E2D\u914D\u7248","\u62A2\u5148\u770B","\u975E\u6B63\u7247","\u89E3\u8BFB","\u63ED\u79D8","\u8D4F\u6790","\u300A"].some(f=>s.includes(f)))return null;let a=n.feature.match(/[12][890][0-9][0-9]/),o=a?parseInt(a[0]):null,c=s.replace(/<[^>]+>/g,"").replace(/【.+?】/g,"").trim().replace(/:/g,"\uFF1A"),u="\u7535\u89C6\u5267",l=(n.cats||"").toLowerCase(),d=(n.feature||"").toLowerCase();return l.includes("\u52A8\u6F2B")||l.includes("anime")?u="\u52A8\u6F2B":l.includes("\u7535\u5F71")||l.includes("movie")?u="\u7535\u5F71":l.includes("\u7535\u89C6\u5267")||l.includes("drama")?u="\u7535\u89C6\u5267":l.includes("\u7EFC\u827A")||l.includes("variety")?u="\u7EFC\u827A":d.includes("\u52A8\u6F2B")?u="\u52A8\u6F2B":d.includes("\u7535\u5F71")?u="\u7535\u5F71":d.includes("\u7535\u89C6\u5267")?u="\u7535\u89C6\u5267":d.includes("\u7EFC\u827A")&&(u="\u7EFC\u827A"),{provider:"youku",mediaId:n.showId,title:c,type:u,year:o,imageUrl:n.posterDTO?n.posterDTO.vThumbUrl:null,episodeCount:n.episodeTotal,cats:n.cats}}async search(e){try{_("info",`[Youku] \u5F00\u59CB\u641C\u7D22: ${e}`);let r=encodeURIComponent(e),n=encodeURIComponent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"),s=`https://search.youku.com/api/search?keyword=${r}&userAgent=${n}&site=1&categories=0&ftype=0&ob=0&pg=1`,i=await ge(s,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36",Accept:"application/json",Referer:"https://www.youku.com/"}});if(!i||!i.data)return _("info","[Youku] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.pageComponentList)return _("info","[Youku] \u641C\u7D22\u65E0\u7ED3\u679C"),[];let o=[];for(let c of a.pageComponentList){let u=this.filterYoukuSearchItem(c,e);u&&o.push(u)}return _("info",`[Youku] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Youku] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Youku] \u83B7\u53D6\u5206\u96C6\u5217\u8868: show_id=${e}`);let r=100,n=await this._getEpisodesPage(e,1,r);if(!n||!n.videos||n.videos.length===0)return _("info","[Youku] \u672A\u627E\u5230\u5206\u96C6\u4FE1\u606F"),[];let s=[...n.videos],i=n.total;if(i>r){let a=Math.ceil(i/r);_("info",`[Youku] \u68C0\u6D4B\u5230 ${i} \u4E2A\u5206\u96C6\uFF0C\u5C06\u5E76\u53D1\u8BF7\u6C42 ${a} \u9875`);let o=[];for(let u=2;u<=a;u++)o.push(this._getEpisodesPage(e,u,r));let c=await Promise.allSettled(o);for(let u=0;uyt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Youku] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=this._extractMediaType(l.cats,l.type),p=this._processAndFormatEpisodes(d,f),m=[];for(let h of p){let A=h.link||`https://v.youku.com/v_show/id_${h.vid}.html`;m.push({name:h.episodeIndex.toString(),url:A,title:`\u3010youku\u3011 ${h.title}`})}if(m.length>0){let A={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from youku`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Pr(l.year),episodeCount:m.length,rating:0,isFavorited:!0,source:"youku"};a.push(A),Lt({...A,links:m},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Youku] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}_processAndFormatEpisodes(e,r="variety"){return[...e].map((i,a)=>{let o=a+1,c=this._formatEpisodeTitle(i,o,r);return{vid:i.id,title:c,episodeIndex:o,link:i.link}})}_formatEpisodeTitle(e,r,n){let s=e.displayName||e.title,i=/^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*(?=(?:第\d+期))|^(?:\d{2,4}-\d{2}-\d{2}|\d{2}-\d{2})\s*:\s*/;if(s=s.replace(i,"").trim(),n==="movie")return s;if(n==="variety"){let a=s.match(/第(\d+)期/);return a?`\u7B2C${a[1]}\u671F ${e.published?.split(" ")[0]??""} ${s}`:`\u7B2C${r}\u671F ${e.published?.split(" ")[0]??""} ${s}`}return/^第\d+集/.test(s)?s:`\u7B2C${r}\u96C6 ${s}`}_extractMediaType(e,r){let n=(e||"").toLowerCase(),s=(r||"").toLowerCase();return n.includes("\u7EFC\u827A")||n.includes("variety")?"variety":n.includes("\u7535\u5F71")||n.includes("movie")?"movie":n.includes("\u52A8\u6F2B")||n.includes("anime")?"anime":n.includes("\u7535\u89C6\u5267")||n.includes("drama")?"drama":s.includes("\u7EFC\u827A")?"variety":s.includes("\u7535\u5F71")?"movie":s.includes("\u52A8\u6F2B")?"anime":(s.includes("\u7535\u89C6\u5267"),"drama")}async getEpisodeDanmu(e){if(_("info","[Youku] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4F18\u9177\u5F39\u5E55...",e),!e)return[];let n=(await this.getEpisodeDanmuSegments(e)).segmentList,s=[],i=O.youkuConcurrency,a=[...n];for(let o=0;o{let l=await Vr(u.url,Ai({data:u.data}),{headers:{Cookie:`_m_h5_tk=${u._m_h5_tk};_m_h5_tk_enc=${u._m_h5_tk_enc};`,Referer:"https://v.youku.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1,retries:1}),d=[];if(l.data?.data&&l.data.data.result){let f=JSON.parse(l.data.data.result);f.code!=="-1"&&d.push(...f.data.result)}return d});try{let u=await Promise.allSettled(c);for(let l of u)l.status==="fulfilled"&&Array.isArray(l.value)&&(s=s.concat(l.value))}catch(u){_("error","[Youku] \u4F18\u9177\u5206\u6BB5\u6279\u91CF\u8BF7\u6C42\u5931\u8D25:",u.message)}}return ts(s),s}async getEpisodeDanmuSegments(e){if(_("info","[Youku] \u83B7\u53D6\u4F18\u9177\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),!e)return new vt({type:"youku",segmentList:[]});e.includes("youku.com/video?vid")&&(e=this.convertYoukuUrl(e));let r="https://openapi.youku.com/v2/videos/show.json",n="https://acs.youku.com/h5/mopen.youku.danmu.list/1.0/",s=/^(https?:\/\/[^\/]+)(\/[^?#]*)/,i=e.match(s),a;if(i)a=i[2].split("/").filter(Boolean),a.unshift(""),_("info","[Youku]",a);else return _("error","[Youku] Invalid URL"),[];let o=a[a.length-1].split(".")[0].slice(3);_("info",`[Youku] video_id: ${o}`);let c;try{let x=`${r}?client_id=53e6cc67237fc59a&video_id=${o}&package=com.huawei.hwvplayer.youku&ext=show`;c=await ge(x,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1})}catch(x){return _("error","[Youku] \u8BF7\u6C42\u89C6\u9891\u4FE1\u606F\u5931\u8D25:",x),[]}let u=typeof c.data=="string"?JSON.parse(c.data):c.data,l=u.title,d=u.duration;_("info",`[Youku] \u6807\u9898: ${l}, \u65F6\u957F: ${d}`);let f,p,m;try{let x="https://log.mmstat.com/eg.js",v="https://acs.youku.com/h5/mtop.com.youku.aplatform.weakget/1.0/?jsv=2.5.1&appKey=24679788",C=await ge(x,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});_("info",`[Youku] cnaRes: ${JSON.stringify(C)}`),_("info",`[Youku] cnaRes.headers: ${JSON.stringify(C.headers)}`);let R=C.headers.etag||C.headers.Etag;_("info",`[Youku] etag: ${R}`),f=R.replace(/^"|"$/g,""),_("info",`[Youku] cna: ${f}`);let w;for(;!w;)w=await ge(v,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36"},allow_redirects:!1});_("info",`[Youku] tkEncRes: ${JSON.stringify(w)}`),_("info",`[Youku] tkEncRes.headers: ${JSON.stringify(w.headers)}`);let N=w.headers["set-cookie"]||w.headers["Set-Cookie"];_("info",`[Youku] tkEncSetCookie: ${N}`);let P=N.match(/_m_h5_tk_enc=([^;]+)/);p=P?P[1]:null;let L=N.match(/_m_h5_tk=([^;]+)/);m=L?L[1]:null,_("info",`[Youku] _m_h5_tk_enc: ${p}`),_("info",`[Youku] _m_h5_tk: ${m}`)}catch(x){return _("error","[Youku] \u83B7\u53D6 cna \u6216 tk_enc \u5931\u8D25:",x),[]}let h=60,A=Math.floor(d/h)+1,g=[],b=async x=>{let v={ctime:Date.now(),ctype:10004,cver:"v1.0",guid:f,mat:x,mcount:1,pid:0,sver:"3.1.0",type:1,vid:o},C=JSON.stringify(v);function R(Z){let W="";for(let F=0;F255?W+=encodeURIComponent(Z[F]):W+=Z[F];return W}function w(Z){let W="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",F="",V=0,j=0;for(let J=0;J=6;)F+=W[V>>j-6&63],j-=6;for(j>0&&(F+=W[V<<6-j&63]);F.length%4!==0;)F+="=";return F}let N=w(R(C));v.msg=N,v.sign=Ls(`${N}MkmC9SoIw6xCkSKHhJ7b5D2r51kBiREr`).toString().toLowerCase();let P=JSON.stringify(v),L=Date.now(),M={jsv:"2.5.6",appKey:"24679788",t:L,sign:Ls([m.slice(0,32),L,"24679788",P].join("&")).toString().toLowerCase(),api:"mopen.youku.danmu.list",v:"1.0",type:"originaljson",dataType:"jsonp",timeout:"20000",jsonpIncPrefix:"utility"},k=Ai(M),B=`${n}?${k}`;return _("info",`[Youku] piece_url: ${B}`),{type:"youku",segment_start:x*h,segment_end:Math.min((x+1)*h,d),url:B,data:P,_m_h5_tk:m,_m_h5_tk_enc:p}},y=Array.from({length:A},(x,v)=>v);for(let x=0;x{let n={timepoint:0,ct:1,size:25,color:16777215,unixtime:Math.floor(Date.now()/1e3),uid:0,content:""};n.timepoint=r.playat/1e3;let s=JSON.parse(r.propertis);if(s?.color&&(n.color=typeof s.color=="string"?parseInt(s.color,10):s.color),s?.pos){let i=s.pos;i===1?n.ct=5:i===2&&(n.ct=4)}return n.content=r.content,n.like=r.extFields.voteUp,n})}};hn();var vsn=new wg,Csn=new Rg,Isn=new Ng,Tsn=new Og,wsn=new Pg,Rsn=new Tg,a4=`LogVar Danmu API/${O.version}`,ZT=class extends wt{async search(e,r=!1){if(O.useBangumiData&&!r){let n=await Au(e,["anidb"]);if(n.length>0)return _("info",`[Dandan] Bangumi-Data \u672C\u5730\u547D\u4E2D ${n.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`),n.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||s.titles[1]||s.title)+(s.titleSuffix||"");return{animeId:parseInt(s.siteId),animeTitle:a,type:s.typeId,typeDescription:s.typeStr,imageUrl:"",startDate:s.begin,rating:0,aliases:[...s.titles]}})}try{_("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u8BCD: ${e}`);let n=new AbortController,s=(async()=>{try{let c=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":a4},retries:1});if(!c||!c.data)return _("info","[Dandan] \u539F\u59CB\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: original)"),{success:!1,source:"original"};if(!c.data.animes||c.data.animes.length===0)return _("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: original)"),{success:!1,source:"original"};n.abort();let u=c.data.animes;return _("info",`[Dandan] dandanSearchresp (original): ${JSON.stringify(u)}`),_("info",`[Dandan] \u8FD4\u56DE ${u.length} \u6761\u7ED3\u679C (source: original)`),{success:!0,data:u,source:"original"}}catch(c){return _("error","[Dandan] getDandanAnimes error:",{message:c.message,name:c.name,stack:c.stack}),{success:!1,source:"original"}}})(),i=(async()=>{try{await new Promise(p=>setTimeout(p,100));let c=await Zb(e,n.signal,"Dandan");if(!c||!c.title)return _("info","[Dandan] TMDB\u8F6C\u6362\u672A\u8FD4\u56DE\u7ED3\u679C\uFF0C\u53D6\u6D88\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb"};let{title:u,cnAlias:l}=c;_("info",`[Dandan] \u4F7F\u7528\u65E5\u8BED\u539F\u540D\u901A\u8FC7 episodes \u63A5\u53E3\u8FDB\u884C\u641C\u7D22: ${u}`);let d=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/search/episodes?anime=${encodeURIComponent(u)}`,{headers:{"Content-Type":"application/json","User-Agent":a4},signal:n.signal,retries:1});if(!d||!d.data)return _("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (source: tmdb)"),{success:!1,source:"tmdb"};if(!d.data.animes||d.data.animes.length===0)return _("info","[Dandan] \u65E5\u8BED\u539F\u540D\u641C\u7D22\u6210\u529F\uFF0C\u4F46\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (source: tmdb)"),{success:!1,source:"tmdb"};let f=d.data.animes;for(let p of f)p.isTmdbSource=!0,p._tmdbCnAlias=l;return _("info",`[Dandan] dandanSearchresp (tmdb): ${JSON.stringify(f)}`),_("info",`[Dandan] \u8FD4\u56DE ${f.length} \u6761\u7ED3\u679C (source: tmdb)`),{success:!0,data:f,source:"tmdb"}}catch(c){if(c.name==="AbortError")return _("info","[Dandan] \u539F\u59CB\u641C\u7D22\u6210\u529F\uFF0C\u4E2D\u65AD\u65E5\u8BED\u539F\u540D\u641C\u7D22"),{success:!1,source:"tmdb",aborted:!0};throw c}})(),[a,o]=await Promise.all([s,i]);if(a.success)return a.data;if(o.success)return o.data;if(_("info",`[Dandan] \u539F\u59CB\u641C\u7D22\u548C\u57FA\u4E8ETMDB\u7684\u641C\u7D22\u5747\u672A\u8FD4\u56DE\u4EFB\u4F55\u7ED3\u679C (\u5F53\u524D\u641C\u7D22\u8BCD: ${e})`),!r){let c=e.replace(/(?:第\s*[0-9一二三四五六七八九十百千万]+\s*[季期部])|(?:S(?:eason)?\s*\d+)|(?:Part\s*\d+)/gi,"").trim();if(c&&c!==e)return _("info",`[Dandan] \u5C1D\u8BD5\u53BB\u9664\u5B63\u5EA6\u4FE1\u606F\u8FDB\u884C\u964D\u7EA7\u641C\u7D22: ${c}`),await this.search(c,!0)}return[]}catch(n){return _("error","[Dandan] getDandanAnimes error:",{message:n.message,name:n.name,stack:n.stack}),[]}}async getEpisodes(e){try{let r=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":a4},retries:1});if(!r||!r.data)return _("info","[Dandan] getDandanEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};if(!r.data.bangumi)return _("info","[Dandan] getDandanEposides: bangumi \u6570\u636E\u4E0D\u5B58\u5728"),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null};let n=r.data.bangumi,s=Array.isArray(n.episodes)?n.episodes:[],i=Array.isArray(n.titles)?n.titles.map(f=>f.title):[],a=Array.isArray(n.relateds)?n.relateds:[],o=n.type||null,c=n.typeDescription||null,u=!1,l=!1;n.tags&&Array.isArray(n.tags)&&n.tags.forEach(f=>{f.name&&f.name.toUpperCase().includes("3D")&&(u=!0),f.name&&f.name.toUpperCase().includes("2D")&&(l=!0)}),u?c="3D"+(c||""):l&&(c="2D"+(c||""));let d=n.imageUrl||null;return _("info",`[Dandan] getDandanEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),{episodes:s,titles:i,relateds:a,type:o,typeDescription:c,imageUrl:d}}catch(r){return _("error","[Dandan] getDandanEposides error:",{message:r.message,name:r.name,stack:r.stack}),{episodes:[],titles:[],relateds:[],type:null,typeDescription:null,imageUrl:null}}}calculateSimilarity(e,r){if(!e||!r)return 0;let n=new Set(e.toLowerCase()),s=new Set(r.toLowerCase()),i=[...n].filter(o=>s.has(o)).length,a=new Set([...n,...s]).size;return i/a}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Dandan] sourceAnimes is not a valid array"),[];e.forEach(m=>{m.title=m.animeTitle});let o=e.length>0?e[0]._tmdbCnAlias:null;eE(e,o);let c=e.length,u=new Set,l=[],d=i!==null?i:$t(r),f=e,p=!1;if(d!==null){let m=e.filter(h=>{let A=h._displayTitle||h.animeTitle,g=Tt(A).season;return g===d||d===1&&g===null});m.length>0&&(f=m,p=!0,_("info",`[Dandan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${d}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}for(let m of f)u.add(m.animeId),l.push({...m,isRelated:!1});for(;l.length>0;){let m=l.splice(0,l.length);await Promise.all(m.map(async h=>{try{let A=await this.getEpisodes(h.animeId),g=A.episodes,b=A.titles||[],y=this.calculateSimilarity(r,h.animeTitle),x=!p;if(y>=.1&&A.relateds&&Array.isArray(A.relateds)&&x)for(let w of A.relateds){let N=Tt(w.animeTitle).season!==null;!u.has(w.animeId)&&(N||c>=25)&&(u.add(w.animeId),l.push({animeId:w.animeId,animeTitle:w.animeTitle,imageUrl:w.imageUrl,rating:w.rating||0,isRelated:!0}))}let v=[h.animeTitle,...b,...h.aliases||[]],C=!1;if(h.isRelated||h.isTmdbSource)if(d!==null){let w=null;for(let N of v){if(!N)continue;let P=$t(N);if(P!==null){w=P;break}}d>1?C=(w||1)===d:d===1&&(C=w===null||w===1)}else C=!0;else C=v.some(w=>w&&yt(w,r,d));if(!C)return;let R=[];for(let w of g){let N=w.episodeTitle&&w.episodeTitle.trim()!==""?`${w.episodeTitle}`:`\u7B2C${w.episodeNumber}\u96C6`;R.push({name:N,url:w.episodeId.toString(),title:`\u3010dandan\u3011 ${N}`})}if(R.length>0){let w=h._displayTitle||h.animeTitle,N=[...new Set([...b,...h.aliases||[]])];h.animeTitle&&h.animeTitle!==w&&!N.includes(h.animeTitle)&&N.push(h.animeTitle);let P=A.type||h.type||"tvseries",L=A.typeDescription||h.typeDescription||"TV\u52A8\u753B",M=h.startDate||(g.length>0?g[0].airDate:null),k=M?new Date(M).getFullYear():"\u672A\u77E5",B={animeId:h.animeId,bangumiId:String(h.animeId),animeTitle:`${w}(${k})\u3010${L}\u3011from dandan`,aliases:N,type:P,typeDescription:L,imageUrl:A.imageUrl||h.imageUrl,startDate:M,episodeCount:R.length,rating:h.rating||0,isFavorited:!0,source:"dandan"};a.push(B),Lt({...B,links:R},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(A){_("error",`[Dandan] Error processing anime: ${A.message}`)}}))}return this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e,r=[]){let n=[],s={};try{let a=await ge(`https://api.danmaku.weeblify.app/ddp/v1?path=%2Fv2%2Fcomment%2F${e}%3Ffrom%3D0%26withRelated%3Dtrue%26chConvert%3D0`,{headers:{"Content-Type":"application/json","User-Agent":a4},retries:1}).catch(o=>(_("error",`[Dandan] dandan base comments error: ${o.message}`),null));a&&a.data&&a.data.comments?(n=a.data.comments,s.dandan=n.length):s.dandan=0}catch(i){_("error","[Dandan] getEpisodeDanmu error:",{message:i.message,name:i.name,stack:i.stack})}return n}async getEpisodeDanmuSegments(e){return _("info","[Dandan] \u83B7\u53D6\u5F39\u5F39play\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new vt({type:"dandan",segmentList:[{type:"dandan",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>r.isRealTimePulled?O.danmuSimplifiedTraditional==="simplified"&&r.m?{...r,m:Gt(r.m)}:r:{cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:O.danmuSimplifiedTraditional==="simplified"?Gt(r.m):r.m})}};Pt();St();ar();$n();no();hs();var ew=class extends wt{async search(e){try{let r=await ge(`${O.customSourceApiUrl}/api/v2/search/anime?keyword=${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(_("info","[Custom] customSourceSearchresp: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):r.data.animes?(_("info",`[Custom] \u641C\u7D22\u627E\u5230 ${r.data.animes.length} \u4E2A\u6709\u6548\u7ED3\u679C`),r.data.animes):(_("info","[Custom] customSourceSearchresp: seriesData \u6216 seriesList \u4E0D\u5B58\u5728"),[])}catch(r){return _("error","[Custom] getCustomSourceAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getEpisodes(e){try{let r=await ge(`${O.customSourceApiUrl}/api/v2/bangumi/${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return!r||!r.data?(_("info","[Custom] getCustomSourceEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[]):!r.data.bangumi||!r.data.bangumi.episodes?(_("info",`[Custom] getCustomSourceEposides: episodes \u4E0D\u5B58\u5728. Response: ${JSON.stringify(r.data)}`),[]):(_("info",`[Custom] getCustomSourceEposides: ${JSON.stringify(r.data.bangumi.episodes)}`),r.data.bangumi.episodes)}catch(r){return _("error","[Custom] getCustomSourceEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null){let i=[];if(!e||!Array.isArray(e))return _("error","[Custom] sourceAnimes is not a valid array"),[];let a=await Promise.all(e.map(async o=>{try{let c=await this.getEpisodes(o.bangumiId),u=[];for(let l of c){let d=l.episodeTitle&&l.episodeTitle.trim()!==""?`${l.episodeTitle}`:`\u7B2C${l.episodeNumber}\u96C6`;u.push({name:d,url:l.episodeId.toString(),title:`\u3010custom\u3011 ${d}`})}if(u.length>0){let l={animeId:o.animeId,bangumiId:String(o.bangumiId),animeTitle:`${o.animeTitle}(${new Date(o.startDate).getFullYear()})\u3010${o.typeDescription}\u3011from custom`,type:o.type,typeDescription:o.typeDescription,imageUrl:o.imageUrl,startDate:o.startDate,episodeCount:u.length,rating:o.rating,isFavorited:!0,source:"custom"};i.push(l),Lt({...l,links:u},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(c){_("error",`[Custom] Error processing anime: ${c.message}`)}}));return this.sortAndPushAnimesByYear(i,n),a}async getEpisodeDanmu(e){let r=[];try{let n=await ge(`${O.customSourceApiUrl}/api/v2/comment/${e}`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1});return n.data&&n.data.comments&&(r=n.data.comments),r}catch(n){return _("error","[Custom] fetchCustomSourceEpisodeDanmu error:",{message:n.message,name:n.name,stack:n.stack}),r}}async getEpisodeDanmuSegments(e){return _("info","[Custom] \u83B7\u53D6Custom Source\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new vt({type:"custom",segmentList:[{type:"custom",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e.map(r=>({cid:r.cid,p:`${r.p.replace(/([A-Za-z]+)([0-9a-fA-F]{6})/,(n,s,i)=>{let a=parseInt(i.substring(0,2),16),o=parseInt(i.substring(2,4),16),c=parseInt(i.substring(4,6),16),u=a*256*256+o*256+c;return`${s}${u}`})}`,m:O.danmuSimplifiedTraditional==="simplified"?Gt(r.m):r.m}))}};Pt();St();ar();Is();$n();Is();var ymr=` AGFzbQEAAAABWA5gAn9/AX9gA39/fwF/YAJ/fwBgA39/fwBgAX8Bf2ABfwBgBX9/f39/AX9gBX9/f39/AGAAAX9gBH9/f38AYAR/ f39/AX9gAn5/AX9gBn9/f39/fwBgAAACXAMDd2JnGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAUDd2JnFV9fd2JpbmRnZW5f c3RyaW5nX25ldwAAA3diZxdfX3diaW5kZ2VuX2RlYnVnX3N0cmluZwACA4gBhgEEAgUBAAIGBQMFAQMBAgMCAwMCAgAGAAsABQIB @@ -1217,9 +1217,9 @@ AgICAgICAgICAgICAwMDAwMDAwMDAwMDAwMDAwQEBAQEAEGNosAAC0xOb25lU29tZQAAADIAAAAEAAAA ZjhFcnJvcnZhbGlkX3VwX3RvZXJyb3JfbGVuAAAyAAAABAAAAAQAAAA4AHsJcHJvZHVjZXJzAghsYW5ndWFnZQEEUnVzdAAMcHJv Y2Vzc2VkLWJ5AwVydXN0Yx0xLjc0LjAgKDc5ZTk3MTZjOSAyMDIzLTExLTEzKQZ3YWxydXMGMC4xOS4wDHdhc20tYmluZGdlbhIw LjIuODcgKGYwYThhZTNiOSkALA90YXJnZXRfZmVhdHVyZXMCKw9tdXRhYmxlLWdsb2JhbHMrCHNpZ24tZXh0 -`,Bo=null,ZT=null,ew=null,Nie=null,o4=0,qf=new Array(132).fill(void 0);qf.push(void 0,null,!0,!1);var tw=qf.length;function ust(t){let e=qf[t];return t>=132&&(qf[t]=tw,tw=t),e}function Rie(){return(ew===null||ew.byteLength===0)&&(ew=new Uint8Array(Nie.buffer)),ew}function a4(){return(ZT===null||ZT.byteLength===0)&&(ZT=new Int32Array(Nie.buffer)),ZT}function lst(t,e){return t=t>>>0,Cc(Rie().subarray(t,t+e))}function cst(t,e,r){if(r===void 0){let i=eg(t),a=e(i.length,1)>>>0;return Rie().subarray(a,a+i.length).set(i),o4=i.length,a}let n=eg(t),s=e(n.length,1)>>>0;return Rie().subarray(s,s+n.length).set(n),o4=n.length,s}function mmr(t){return t==null}function hmr(t){let e=atob(t.replace(/\s+/g,"")),r=new Uint8Array(e.length);for(let n=0;nust(n),__wbindgen_string_new:(n,s)=>{let i=lst(n,s);tw===qf.length&&qf.push(qf.length+1);let a=tw;return tw=qf[a],qf[a]=i,a},__wbindgen_debug_string:()=>{}}};return Bo=(await WebAssembly.instantiate(t,e)).instance.exports,Nie=Bo.memory,ZT=null,ew=null,Bo}function Amr(t,e){let r,n;try{let s=Bo.__wbindgen_add_to_stack_pointer(-16),i=cst(t,Bo.__wbindgen_malloc,Bo.__wbindgen_realloc),a=o4,o=mmr(e)?0:cst(e,Bo.__wbindgen_malloc,Bo.__wbindgen_realloc),c=o4;Bo.gateway_decrypt(s,i,a,o,c);let u=a4()[s/4+0],l=a4()[s/4+1],d=a4()[s/4+2],f=a4()[s/4+3],p=u,m=l;if(f)throw p=0,m=0,ust(d);return r=p,n=m,lst(p,m)}finally{Bo.__wbindgen_add_to_stack_pointer(16),r!==void 0&&n!==void 0&&Bo.__wbindgen_free(r,n,1)}}async function dst(t,e){return t=t.replace(/\s+/g,""),await gmr(),Amr(t,e)}hn();hs();var Oie=class extends Tt{async search(e){try{let r="https://jadeite.migu.cn/search/v3/open-search",n={appVersion:"6.1.1.00",ct:101,isCorrectWord:1,k:e,mediaSource:9e6,packId:"1002581,1002601,1003861,1003862,1003863,1003864,1003865,1003866,1004041,1004121,1004261,1004262,1004281,1004321,1004262,1004281,1004322,1004261,1004421,1004422,1002781,1004301,1004641,1004761,1005061,1005261,1005301,1005321,1005361,1005362,1005341,1005342,1005521,1005722,1005721,1015749,1015761,1015760,1015762,1015763,1015768,1015786,1015790,1015812,1015813,1015814,1015815,1015816,1015817,1015820,1015819,1015821",pageIdx:1,pageSize:20,sid:"1X4A395AL3XS3UV5MT8PQ1L5JUYK6KFM8VKDSDD48S5Y7YX5WY1MOUHRT6512988",copyrightTerminal:3,searchScene:2,uiVersion:"A3.26.0"},s={Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive","Content-Type":"application/json",Origin:"https://www.miguvideo.com",Referer:"https://www.miguvideo.com/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"cross-site","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",appId:"miguvideo","sec-ch-ua":'Not(A:Brand";v="8", "Chromium";v="144", "Google Chrome";v="144"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"Windows",terminalId:"www"},i=await Kr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("info","[Migu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let o=(typeof i.data=="string"?JSON.parse(i.data):i.data)?.body?.contentInfoList,c=[];return o.forEach(u=>{let l=u?.shortMediaAsset;if(l&&l.isLong){let d;l?.extraData?d=l?.extraData?.episodes?.[0]:d=l?.pID,c.push({name:l.name,type:l.contDisplayName,year:l.year.trim(),img:l.h5pics?.highResolutionV,url:`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${d}/1`,epsId:d})}}),_("info",`[Migu] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return _("error","[Migu] getMiguAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}extractEpId(e){let n=e.split("?")[0].split("/").filter(s=>s!=="");return n[n.length-1]||""}async getDetail(e){try{let r=await ge(`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${e}/1`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return _("info","[Migu] getMiguDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{duration:0,epsID:null};let n=r.data?.body?.data?.playing?.duration||0,s=r.data?.body?.data?.epsID||null;return{duration:n,epsID:s}}catch(r){return _("error","[Migu] getMiguDetail error:",{message:r.message,name:r.name,stack:r.stack}),{duration:0,epsID:null}}}async getEpisodes(e){try{let r=await ge(e,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return _("info","[Migu] getMiguEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let n=r.data?.body?.data?.datas;if(n)return n;{let s=r.data?.body?.data?.name,i=r.data?.body?.data?.playing?.pID;return i?[{name:s,pID:i}]:(_("info","[Migu] getMiguEposides: eps \u4E0D\u5B58\u5728"),[])}}catch(r){return _("error","[Migu] getMiguEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Migu] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name||l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=d.name||d.title,p=Ct(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("info",`[Migu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url||l.mediaId),f=[];for(let p of d)f.push({name:p.name,url:`https://webapi.miguvideo.com/gateway/live_barrage/videox/barrage/v2/list/${l.epsId??p.pID}/${p.pID}`,title:`\u3010migu\u3011 ${p.name}`});if(f.length>0){let p={animeId:Yr(l.epsId??d[0]?.pID),bangumiId:String(l.epsId??d[0]?.pID),animeTitle:`${l.name||l.title}(${l.year})\u3010${l.type}\u3011from migu`,type:l.type,typeDescription:l.type,imageUrl:l.img??l.imageUrl,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"migu"};a.push(p),Dt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Migu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Migu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u54AA\u5495\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Migu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...h)}else _("error",`[Migu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Migu] \u54AA\u5495\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Migu] \u83B7\u53D6\u54AA\u5495\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=this.extractEpId(e),n=await this.getDetail(r),s=Ig(n.duration);_("info","[Migu] itemId:",r),_("info","[Migu] durationSec:",s),_("info","[Migu] epsID:",n.epsID);let i=30,a=[];for(let o=0;o({cid:Number(r.cid),p:`${r.playtime},1,${hb(r.textcolor)},[migu]`,m:r.msg,t:r.playtime,like:r.praiseCount}))}},fst=Oie;Ot();_t();ir();Ts();$n();hn();hs();var rw=class extends Tt{constructor(){super(),this.positionMap={1:1,4:5,5:4}}filterSohuSearchItem(e,r){if(!e.aid||!e.album_name||e.is_trailer===1||e.corner_mark&&e.corner_mark.text==="\u9884\u544A")return null;let n=e.album_name.replace("<<<","").replace(">>>",""),s=null;if(e.meta&&Array.isArray(e.meta)){for(let i of e.meta)if(i.txt&&i.txt.includes("|")){let a=i.txt.split("|");if(a.length>0){let o=a[0].trim();o.includes("\u522B\u540D")&&a.length>1?s=a[1].trim():s=o;break}}}return{mediaId:String(e.aid),title:n,type:s,year:e.year||null,imageUrl:e.ver_big_pic||null,episodeCount:e.total_video_count||0}}async search(e){try{_("info",`[Sohu] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,type:"1",page:"1",page_size:"20",user_id:"",tabsChosen:"0",poster:"4",tuple:"6",extSource:"1",show_star_detail:"3",pay:"1",hl:"3",uid:String(Math.floor(Date.now()*1e3)),passport:"",plat:"-1",ssl:"0"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://so.tv.sohu.com/",Origin:"https://so.tv.sohu.com"},s=`https://m.so.tv.sohu.com/search/pc/keyword?${yi(r)}`,i=await ge(s,{headers:n});if(!i||!i.data)return _("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.data||!a.data.items)return _("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E2D\u65E0\u6570\u636E"),[];let o=[];for(let c of a.data.items){let u=this.filterSohuSearchItem(c,e);u&&o.push(u)}return _("info",`[Sohu] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Sohu] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getPlaylistData(e){let r={playlistid:e,api_key:"f351515304020cad28c92f70f002261c"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://tv.sohu.com/"},s=`https://pl.hd.sohu.com/videolist?${yi(r)}`,i=await ge(s,{headers:n,timeout:15e3});if(!i||!i.data)return null;let a=i.data;if(typeof a=="string"&&a.startsWith("jsonp")){let o=a.indexOf("(")+1,c=a.lastIndexOf(")");if(o>0&&c>o)a=JSON.parse(a.substring(o,c));else return _("error","[Sohu] \u641C\u72D0\u89C6\u9891: \u65E0\u6CD5\u89E3\u6790JSONP\u54CD\u5E94"),null}else typeof a=="string"&&(a=JSON.parse(a));return a}async getEpisodes(e){try{_("info",`[Sohu] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=await this.getPlaylistData(e);if(!r)return _("info","[Sohu] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let n=r.videos||[];if(!n||n.length===0)return _("warn",`[Sohu] \u641C\u72D0\u89C6\u9891: \u672A\u627E\u5230\u5206\u96C6\u5217\u8868 (media_id=${e})`),[];let s=[];for(let i=0;iyt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Sohu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p0){let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from sohu`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"sohu"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Sohu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDuration(e,r){if(!e)return 0;try{let n=await this.getPlaylistData(e),s=Array.isArray(n?.videos)?n.videos:[];if(!s.length)return 0;let i=s.find(o=>String(o?.vid||"")===String(r||""))||(s.length===1?s[0]:null),a=Number(i?.playLength||0);return Number.isFinite(a)&&a>0?a:0}catch(n){return _("warn",`[Sohu] \u83B7\u53D6\u771F\u5B9E\u65F6\u957F\u5931\u8D25: ${n.message}`),0}}async extractVidAndAid(e){let r,n="0",s=await ge(e,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),i=s.data.match(/vid="(\d+)"/);return i&&(r=i[1]),n=s.data.match(/id="aid"[^>]*value=['"](\d+)['"]/)?.[1],n||(n=s.data.match(/playlistId="(\d+)"/)?.[1]),{vid:r,aid:n}}async getEpisodeDanmu(e){_("info","[Sohu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u641C\u72D0\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Sohu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;athis.getDanmuSegment(l)),u=await Promise.allSettled(c);for(let l=0;l0)i.push(...h);else if(p>600)break}else _("error",`[Sohu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getDanmuSegment(e){try{let r={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Referer:"https://tv.sohu.com/"},n=await ge(e.url,{headers:r,timeout:1e4});if(!n||!n.data)return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u5F39\u5E55\u6BB5\u54CD\u5E94\u4E3A\u7A7A (${e.segment_start}-${e.segment_end}s)`),[];try{let i=(typeof n.data=="string"?JSON.parse(n.data):n.data).info?.comments||[];return i&&i.length>0&&_("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5230 ${i.length} \u6761\u5F39\u5E55 (${e.segment_start}-${e.segment_end}s)`),i||[]}catch(s){return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u89E3\u6790\u5F39\u5E55\u54CD\u5E94\u5931\u8D25: ${s.message}`),[]}}catch(r){return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (vid=${vid}, ${start}-${end}s): ${r.message}`),[]}}async getEpisodeDanmuSegments(e){_("info","[Sohu] \u83B7\u53D6\u641C\u72D0\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let{vid:r,aid:n}=await this.extractVidAndAid(e),s=await this.getEpisodeDuration(n,r),i=s>0?Math.ceil(s):10800,a=300,o=[];for(let c=0;c0?s:0,segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=await ge(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.info?.comments||[])}return n}catch(r){return _("error","[Sohu] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>{try{let n=16777215;if(r.t&&r.t.c){let l=r.t.c;typeof l=="string"&&l.startsWith("#")?n=parseInt(l.substring(1),16):n=parseInt(String(l),16)}let s=r.v||0,i=Math.floor(parseFloat(r.created||Date.now()/1e3)),a=r.uid||"",o=r.i||"",c=1;r.t&&r.t.p&&(c=this.positionMap[r.t.p]||1);let u=`${s},1,25,${n},${i},0,${a},${o}`;return{cid:String(o),p:u,m:r.c||"",t:parseFloat(s),like:r.fcount}}catch(n){return _("error",`[Sohu] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};Ot();_t();ir();Ts();$n();hn();hs();var pst={tv:"\u7535\u89C6\u5267",movie:"\u7535\u5F71",cartoon:"\u52A8\u6F2B",comic:"\u52A8\u6F2B"},nw=class extends Tt{constructor(){super(),this.positionMap={4:1,3:4,1:5,2:1}}filterLeshiSearchItem(e,r){if(!e.pid||!e.title)return null;let n=e.title,s=pst[e.type]||"\u7535\u89C6\u5267";return{mediaId:String(e.pid),title:n,type:s,year:e.year||null,imageUrl:e.imageUrl||null,episodeCount:e.episodeCount||0}}async search(e){try{_("info",`[Leshi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={wd:e,from:"pc",ref:"click",click_area:"search_button",query:e,is_default_query:"0",module:"search_rst_page"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Accept-Encoding":"gzip, deflate, br",Referer:"https://so.le.com/",Connection:"keep-alive","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin"},s=`https://so.le.com/s?${yi(r)}`,i=await ge(s,{headers:n,timeout:15e3});if(!i||!i.data)return _("info","[Leshi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=i.data;_("info",`[Leshi] \u641C\u7D22\u8BF7\u6C42\u6210\u529F\uFF0C\u54CD\u5E94\u957F\u5EA6: ${a.length} \u5B57\u7B26`);let o=[],c=/
]*data-info="({.*?})"[^>]*>/g,u,l=[];for(;(u=c.exec(a))!==null;)l.push(u);_("info",`[Leshi] \u4ECEHTML\u4E2D\u627E\u5230 ${l.length} \u4E2A data-info \u5757`);for(let d of l)try{let f=d[1];_("info",`[Leshi] \u63D0\u53D6\u5230 data-info \u539F\u59CB\u5B57\u7B26\u4E32: ${f.substring(0,200)}...`),f=f.replace(/'/g,'"'),f=f.replace(/([{,])(\w+):/g,'$1"$2":');let p=JSON.parse(f);_("info",`[Leshi] \u6210\u529F\u89E3\u6790 data-info\uFF0Cpid=${p.pid}, type=${p.type}`);let m=p.pid||"",h=p.type||"",A=p.total||"0";if(!m)continue;let g=d.index,b=[`
+`,ko=null,tw=null,rw=null,Oie=null,c4=0,jf=new Array(132).fill(void 0);jf.push(void 0,null,!0,!1);var nw=jf.length;function pst(t){let e=jf[t];return t>=132&&(jf[t]=nw,nw=t),e}function Nie(){return(rw===null||rw.byteLength===0)&&(rw=new Uint8Array(Oie.buffer)),rw}function o4(){return(tw===null||tw.byteLength===0)&&(tw=new Int32Array(Oie.buffer)),tw}function mst(t,e){return t=t>>>0,Cc(Nie().subarray(t,t+e))}function fst(t,e,r){if(r===void 0){let i=eg(t),a=e(i.length,1)>>>0;return Nie().subarray(a,a+i.length).set(i),c4=i.length,a}let n=eg(t),s=e(n.length,1)>>>0;return Nie().subarray(s,s+n.length).set(n),c4=n.length,s}function xmr(t){return t==null}function bmr(t){let e=atob(t.replace(/\s+/g,"")),r=new Uint8Array(e.length);for(let n=0;npst(n),__wbindgen_string_new:(n,s)=>{let i=mst(n,s);nw===jf.length&&jf.push(jf.length+1);let a=nw;return nw=jf[a],jf[a]=i,a},__wbindgen_debug_string:()=>{}}};return ko=(await WebAssembly.instantiate(t,e)).instance.exports,Oie=ko.memory,tw=null,rw=null,ko}function _mr(t,e){let r,n;try{let s=ko.__wbindgen_add_to_stack_pointer(-16),i=fst(t,ko.__wbindgen_malloc,ko.__wbindgen_realloc),a=c4,o=xmr(e)?0:fst(e,ko.__wbindgen_malloc,ko.__wbindgen_realloc),c=c4;ko.gateway_decrypt(s,i,a,o,c);let u=o4()[s/4+0],l=o4()[s/4+1],d=o4()[s/4+2],f=o4()[s/4+3],p=u,m=l;if(f)throw p=0,m=0,pst(d);return r=p,n=m,mst(p,m)}finally{ko.__wbindgen_add_to_stack_pointer(16),r!==void 0&&n!==void 0&&ko.__wbindgen_free(r,n,1)}}async function hst(t,e){return t=t.replace(/\s+/g,""),await Emr(),_mr(t,e)}hn();hs();var Pie=class extends wt{async search(e){try{let r="https://jadeite.migu.cn/search/v3/open-search",n={appVersion:"6.1.1.00",ct:101,isCorrectWord:1,k:e,mediaSource:9e6,packId:"1002581,1002601,1003861,1003862,1003863,1003864,1003865,1003866,1004041,1004121,1004261,1004262,1004281,1004321,1004262,1004281,1004322,1004261,1004421,1004422,1002781,1004301,1004641,1004761,1005061,1005261,1005301,1005321,1005361,1005362,1005341,1005342,1005521,1005722,1005721,1015749,1015761,1015760,1015762,1015763,1015768,1015786,1015790,1015812,1015813,1015814,1015815,1015816,1015817,1015820,1015819,1015821",pageIdx:1,pageSize:20,sid:"1X4A395AL3XS3UV5MT8PQ1L5JUYK6KFM8VKDSDD48S5Y7YX5WY1MOUHRT6512988",copyrightTerminal:3,searchScene:2,uiVersion:"A3.26.0"},s={Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9",Connection:"keep-alive","Content-Type":"application/json",Origin:"https://www.miguvideo.com",Referer:"https://www.miguvideo.com/","Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"cross-site","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",appId:"miguvideo","sec-ch-ua":'Not(A:Brand";v="8", "Chromium";v="144", "Google Chrome";v="144"',"sec-ch-ua-mobile":"?0","sec-ch-ua-platform":"Windows",terminalId:"www"},i=await Vr(r,JSON.stringify(n),{headers:s});if(!i||!i.data)return _("info","[Migu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let o=(typeof i.data=="string"?JSON.parse(i.data):i.data)?.body?.contentInfoList,c=[];return o.forEach(u=>{let l=u?.shortMediaAsset;if(l&&l.isLong){let d;l?.extraData?d=l?.extraData?.episodes?.[0]:d=l?.pID,c.push({name:l.name,type:l.contDisplayName,year:l.year.trim(),img:l.h5pics?.highResolutionV,url:`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${d}/1`,epsId:d})}}),_("info",`[Migu] \u641C\u7D22\u627E\u5230 ${c.length} \u4E2A\u6709\u6548\u7ED3\u679C`),c}catch(r){return _("error","[Migu] getMiguAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}extractEpId(e){let n=e.split("?")[0].split("/").filter(s=>s!=="");return n[n.length-1]||""}async getDetail(e){try{let r=await ge(`https://v3-sc.miguvideo.com/program/v4/cont/content-info/${e}/1`,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return _("info","[Migu] getMiguDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),{duration:0,epsID:null};let n=r.data?.body?.data?.playing?.duration||0,s=r.data?.body?.data?.epsID||null;return{duration:n,epsID:s}}catch(r){return _("error","[Migu] getMiguDetail error:",{message:r.message,name:r.name,stack:r.stack}),{duration:0,epsID:null}}}async getEpisodes(e){try{let r=await ge(e,{headers:{"user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"}});if(!r||!r.data)return _("info","[Migu] getMiguEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let n=r.data?.body?.data?.datas;if(n)return n;{let s=r.data?.body?.data?.name,i=r.data?.body?.data?.playing?.pID;return i?[{name:s,pID:i}]:(_("info","[Migu] getMiguEposides: eps \u4E0D\u5B58\u5728"),[])}}catch(r){return _("error","[Migu] getMiguEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Migu] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name||l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d.name||d.title,p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("info",`[Migu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url||l.mediaId),f=[];for(let p of d)f.push({name:p.name,url:`https://webapi.miguvideo.com/gateway/live_barrage/videox/barrage/v2/list/${l.epsId??p.pID}/${p.pID}`,title:`\u3010migu\u3011 ${p.name}`});if(f.length>0){let p={animeId:Yr(l.epsId??d[0]?.pID),bangumiId:String(l.epsId??d[0]?.pID),animeTitle:`${l.name||l.title}(${l.year})\u3010${l.type}\u3011from migu`,type:l.type,typeDescription:l.type,imageUrl:l.img??l.imageUrl,startDate:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"migu"};a.push(p),Lt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Migu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Migu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u54AA\u5495\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Migu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...h)}else _("error",`[Migu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Migu] \u54AA\u5495\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Migu] \u83B7\u53D6\u54AA\u5495\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=this.extractEpId(e),n=await this.getDetail(r),s=Cg(n.duration);_("info","[Migu] itemId:",r),_("info","[Migu] durationSec:",s),_("info","[Migu] epsID:",n.epsID);let i=30,a=[];for(let o=0;o({cid:Number(r.cid),p:`${r.playtime},1,${gb(r.textcolor)},[migu]`,m:r.msg,t:r.playtime,like:r.praiseCount}))}},gst=Pie;Pt();St();ar();Is();$n();hn();hs();var sw=class extends wt{constructor(){super(),this.positionMap={1:1,4:5,5:4}}filterSohuSearchItem(e,r){if(!e.aid||!e.album_name||e.is_trailer===1||e.corner_mark&&e.corner_mark.text==="\u9884\u544A")return null;let n=e.album_name.replace("<<<","").replace(">>>",""),s=null;if(e.meta&&Array.isArray(e.meta)){for(let i of e.meta)if(i.txt&&i.txt.includes("|")){let a=i.txt.split("|");if(a.length>0){let o=a[0].trim();o.includes("\u522B\u540D")&&a.length>1?s=a[1].trim():s=o;break}}}return{mediaId:String(e.aid),title:n,type:s,year:e.year||null,imageUrl:e.ver_big_pic||null,episodeCount:e.total_video_count||0}}async search(e){try{_("info",`[Sohu] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={key:e,type:"1",page:"1",page_size:"20",user_id:"",tabsChosen:"0",poster:"4",tuple:"6",extSource:"1",show_star_detail:"3",pay:"1",hl:"3",uid:String(Math.floor(Date.now()*1e3)),passport:"",plat:"-1",ssl:"0"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:"https://so.tv.sohu.com/",Origin:"https://so.tv.sohu.com"},s=`https://m.so.tv.sohu.com/search/pc/keyword?${Ai(r)}`,i=await ge(s,{headers:n});if(!i||!i.data)return _("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data;if(!a.data||!a.data.items)return _("info","[Sohu] \u641C\u7D22\u54CD\u5E94\u4E2D\u65E0\u6570\u636E"),[];let o=[];for(let c of a.data.items){let u=this.filterSohuSearchItem(c,e);u&&o.push(u)}return _("info",`[Sohu] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Sohu] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getPlaylistData(e){let r={playlistid:e,api_key:"f351515304020cad28c92f70f002261c"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://tv.sohu.com/"},s=`https://pl.hd.sohu.com/videolist?${Ai(r)}`,i=await ge(s,{headers:n,timeout:15e3});if(!i||!i.data)return null;let a=i.data;if(typeof a=="string"&&a.startsWith("jsonp")){let o=a.indexOf("(")+1,c=a.lastIndexOf(")");if(o>0&&c>o)a=JSON.parse(a.substring(o,c));else return _("error","[Sohu] \u641C\u72D0\u89C6\u9891: \u65E0\u6CD5\u89E3\u6790JSONP\u54CD\u5E94"),null}else typeof a=="string"&&(a=JSON.parse(a));return a}async getEpisodes(e){try{_("info",`[Sohu] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=await this.getPlaylistData(e);if(!r)return _("info","[Sohu] \u5206\u96C6\u54CD\u5E94\u4E3A\u7A7A"),[];let n=r.videos||[];if(!n||n.length===0)return _("warn",`[Sohu] \u641C\u72D0\u89C6\u9891: \u672A\u627E\u5230\u5206\u96C6\u5217\u8868 (media_id=${e})`),[];let s=[];for(let i=0;iyt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Sohu] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p0){let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from sohu`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Pr(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"sohu"};a.push(m),Lt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Sohu] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDuration(e,r){if(!e)return 0;try{let n=await this.getPlaylistData(e),s=Array.isArray(n?.videos)?n.videos:[];if(!s.length)return 0;let i=s.find(o=>String(o?.vid||"")===String(r||""))||(s.length===1?s[0]:null),a=Number(i?.playLength||0);return Number.isFinite(a)&&a>0?a:0}catch(n){return _("warn",`[Sohu] \u83B7\u53D6\u771F\u5B9E\u65F6\u957F\u5931\u8D25: ${n.message}`),0}}async extractVidAndAid(e){let r,n="0",s=await ge(e,{headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}}),i=s.data.match(/vid="(\d+)"/);return i&&(r=i[1]),n=s.data.match(/id="aid"[^>]*value=['"](\d+)['"]/)?.[1],n||(n=s.data.match(/playlistId="(\d+)"/)?.[1]),{vid:r,aid:n}}async getEpisodeDanmu(e){_("info","[Sohu] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u641C\u72D0\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Sohu] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;athis.getDanmuSegment(l)),u=await Promise.allSettled(c);for(let l=0;l0)i.push(...h);else if(p>600)break}else _("error",`[Sohu] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getDanmuSegment(e){try{let r={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Referer:"https://tv.sohu.com/"},n=await ge(e.url,{headers:r,timeout:1e4});if(!n||!n.data)return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u5F39\u5E55\u6BB5\u54CD\u5E94\u4E3A\u7A7A (${e.segment_start}-${e.segment_end}s)`),[];try{let i=(typeof n.data=="string"?JSON.parse(n.data):n.data).info?.comments||[];return i&&i.length>0&&_("info",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5230 ${i.length} \u6761\u5F39\u5E55 (${e.segment_start}-${e.segment_end}s)`),i||[]}catch(s){return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u89E3\u6790\u5F39\u5E55\u54CD\u5E94\u5931\u8D25: ${s.message}`),[]}}catch(r){return _("error",`[Sohu] \u641C\u72D0\u89C6\u9891: \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (vid=${vid}, ${start}-${end}s): ${r.message}`),[]}}async getEpisodeDanmuSegments(e){_("info","[Sohu] \u83B7\u53D6\u641C\u72D0\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let{vid:r,aid:n}=await this.extractVidAndAid(e),s=await this.getEpisodeDuration(n,r),i=s>0?Math.ceil(s):10800,a=300,o=[];for(let c=0;c0?s:0,segmentList:o})}async getEpisodeSegmentDanmu(e){try{let r=await ge(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?JSON.parse(r.data):r.data;n.push(...s.info?.comments||[])}return n}catch(r){return _("error","[Sohu] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>{try{let n=16777215;if(r.t&&r.t.c){let l=r.t.c;typeof l=="string"&&l.startsWith("#")?n=parseInt(l.substring(1),16):n=parseInt(String(l),16)}let s=r.v||0,i=Math.floor(parseFloat(r.created||Date.now()/1e3)),a=r.uid||"",o=r.i||"",c=1;r.t&&r.t.p&&(c=this.positionMap[r.t.p]||1);let u=`${s},1,25,${n},${i},0,${a},${o}`;return{cid:String(o),p:u,m:r.c||"",t:parseFloat(s),like:r.fcount}}catch(n){return _("error",`[Sohu] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};Pt();St();ar();Is();$n();hn();hs();var Ast={tv:"\u7535\u89C6\u5267",movie:"\u7535\u5F71",cartoon:"\u52A8\u6F2B",comic:"\u52A8\u6F2B"},iw=class extends wt{constructor(){super(),this.positionMap={4:1,3:4,1:5,2:1}}filterLeshiSearchItem(e,r){if(!e.pid||!e.title)return null;let n=e.title,s=Ast[e.type]||"\u7535\u89C6\u5267";return{mediaId:String(e.pid),title:n,type:s,year:e.year||null,imageUrl:e.imageUrl||null,episodeCount:e.episodeCount||0}}async search(e){try{_("info",`[Leshi] \u5F00\u59CB\u641C\u7D22: ${e}`);let r={wd:e,from:"pc",ref:"click",click_area:"search_button",query:e,is_default_query:"0",module:"search_rst_page"},n={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8","Accept-Encoding":"gzip, deflate, br",Referer:"https://so.le.com/",Connection:"keep-alive","Upgrade-Insecure-Requests":"1","Sec-Fetch-Dest":"document","Sec-Fetch-Mode":"navigate","Sec-Fetch-Site":"same-origin"},s=`https://so.le.com/s?${Ai(r)}`,i=await ge(s,{headers:n,timeout:15e3});if(!i||!i.data)return _("info","[Leshi] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=i.data;_("info",`[Leshi] \u641C\u7D22\u8BF7\u6C42\u6210\u529F\uFF0C\u54CD\u5E94\u957F\u5EA6: ${a.length} \u5B57\u7B26`);let o=[],c=/
]*data-info="({.*?})"[^>]*>/g,u,l=[];for(;(u=c.exec(a))!==null;)l.push(u);_("info",`[Leshi] \u4ECEHTML\u4E2D\u627E\u5230 ${l.length} \u4E2A data-info \u5757`);for(let d of l)try{let f=d[1];_("info",`[Leshi] \u63D0\u53D6\u5230 data-info \u539F\u59CB\u5B57\u7B26\u4E32: ${f.substring(0,200)}...`),f=f.replace(/'/g,'"'),f=f.replace(/([{,])(\w+):/g,'$1"$2":');let p=JSON.parse(f);_("info",`[Leshi] \u6210\u529F\u89E3\u6790 data-info\uFF0Cpid=${p.pid}, type=${p.type}`);let m=p.pid||"",h=p.type||"",A=p.total||"0";if(!m)continue;let g=d.index,b=[`
`,` -`,""],y=-1;for(let L of b){let Z=a.indexOf(L,g);if(Z!==-1){y=Z;break}}if(y===-1){let L=a.indexOf('
[\s\S]*?]*title="([^"]*)"[^>]*>/.exec(x);if(I&&I[1]&&(v=I[1].trim()),!v&&p.keyWord){let L=/(.*?)(?:\d{4})?(?:电影|电视剧|综艺)?$/.exec(p.keyWord);L&&L[1]&&(v=L[1].replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g,"").trim())}if(!v){let L=/]*title="([^"]*?)[^0-9\u4e00-\u9fa5][^"]*"/.exec(x);L&&L[1]&&(v=L[1].trim())}v||_("info","[Leshi] \u672A\u627E\u5230\u6807\u9898\uFF0C\u5C1D\u8BD5\u4ECE\u5176\u4ED6\u6765\u6E90\u83B7\u53D6");let R=/]*(?:src|data-src|alt)="([^"]+)"/.exec(x),w=R?R[1]:"",N=null,P=/年份:<\/b>.*?>(\d{4})<\/a>/.exec(x);P||(P=/ä¸Šæ˜ æ—¶é—´ï¼š<\/b>.*?>(\d{4})<\/a>/.exec(x)),P||(P=/_y(\d{4})_/.exec(x)),P||(P=/(\d{4})/.exec(p.keyWord||"")),P&&(N=parseInt(P[1]));let B=pst[h]||"\u7535\u89C6\u5267",M=A&&/^\d+$/.test(A)?parseInt(A):0,D={mediaId:m,title:v,type:B,year:N,imageUrl:w&&w.startsWith("http")?w:w?`https:${w}`:null,episodeCount:M};o.push(D),_("info",`[Leshi] \u89E3\u6790\u6210\u529F - ${v} (pid=${m}, type=${B}, episodes=${M})`)}catch(f){_("warn",`[Leshi] \u89E3\u6790\u641C\u7D22\u7ED3\u679C\u9879\u5931\u8D25: ${f}`);continue}if(o.length>0){_("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C\u3002`),_("info","[Leshi] \u641C\u7D22\u7ED3\u679C\u5217\u8868:");for(let d of o)_("info",`[Leshi] - ${d.title} (ID: ${d.mediaId}, \u7C7B\u578B: ${d.type}, \u5E74\u4EFD: ${d.year})`)}else _("info",`[Leshi] \u7F51\u7EDC\u641C\u7D22 '${e}' \u5B8C\u6210\uFF0C\u627E\u5230 0 \u4E2A\u7ED3\u679C\u3002`);return o}catch(r){return _("error","[Leshi] \u641C\u7D22\u51FA\u9519:",r.message),[]}}async getEpisodes(e){try{_("info",`[Leshi] \u83B7\u53D6\u5206\u96C6\u5217\u8868: media_id=${e}`);let r=[`https://www.le.com/tv/${e}.html`,`https://www.le.com/comic/${e}.html`,`https://www.le.com/playlet/${e}.html`,`https://www.le.com/movie/${e}.html`],n=null;for(let l of r)try{let d=await ge(l,{timeout:1e4});if(d&&d.data&&d.status===200){n=d.data,_("info",`[Leshi] \u6210\u529F\u83B7\u53D6\u9875\u9762: ${l}`);break}}catch(d){_("info",`[Leshi] \u5C1D\u8BD5URL\u5931\u8D25 ${l}: ${d}`);continue}if(!n)return _("error",`[Leshi] \u65E0\u6CD5\u83B7\u53D6\u4F5C\u54C1\u9875\u9762: media_id=${e}`),[];let s=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(s)return _("info","[Leshi] \u627E\u5230\u56FE\u6587\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(s[0],e);let i=/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/.exec(n);if(i)return _("info","[Leshi] \u627E\u5230\u6570\u5B57\u9009\u96C6\u5BB9\u5668"),this.parseEpisodesFromHtml(i[0],e);_("info","[Leshi] \u672A\u627E\u5230\u7279\u5B9A\u9009\u96C6\u5BB9\u5668\uFF0C\u5C1D\u8BD5\u67E5\u627E\u7B2C\u4E00\u96C6\u89C6\u9891\u5217\u8868...");let a=/
0?(_("info",`[Leshi] \u4ECEHTML\u5185\u5BB9\u4E2D\u5339\u914D\u5230 ${u.length} \u4E2A\u5267\u96C6\u94FE\u63A5`),u):[]}catch(r){return _("error","[Leshi] \u83B7\u53D6\u5206\u96C6\u51FA\u9519:",r.message),[]}}parseEpisodesFromHtml(e,r){try{let n=/
]*>[\s\S]*?<\/div>/g,s=e.match(n);if(!s||s.length===0){_("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5BB9\u5668div.col_4\uFF0C\u5C1D\u8BD5\u67E5\u627Edl.dl_temp\u5143\u7D20");let a=/
[\s\S]*?<\/dl>/g,o=e.match(a);if(!o||o.length===0){_("info","[Leshi] \u5728HTML\u4E2D\u672A\u627E\u5230\u5267\u96C6\u5143\u7D20\uFF0C\u5C1D\u8BD5\u66F4\u5E7F\u6CDB\u7684\u9009\u62E9\u5668");let c=/]*class="[^"]*dl_temp[^"]*"[^>]*>[\s\S]*?<\/dl>/g,u=e.match(c);return!u||u.length===0?(_("error",`[Leshi] \u65E0\u6CD5\u4ECEHTML\u4E2D\u89E3\u6790\u5230\u4EFB\u4F55\u5267\u96C6: media_id=${r}`),[]):this.extractEpisodes(u,r)}return this.extractEpisodes(o,r)}let i=[];for(let a of s){let o=/
[\s\S]*?<\/dl>/.exec(a);o&&i.push(o[0])}return i.length===0?(_("error",`[Leshi] \u4ECE\u5BB9\u5668\u4E2D\u672A\u80FD\u63D0\u53D6\u5230\u4EFB\u4F55dl.dl_temp\u5143\u7D20: media_id=${r}`),[]):this.extractEpisodes(i,r)}catch(n){return _("error",`[Leshi] \u89E3\u6790\u5267\u96C6HTML\u5931\u8D25: ${n.message}`),[]}}extractEpisodes(e,r){let n=[];for(let s of e)try{let i=/]+href="(\/\/www\.le\.com\/ptv\/vplay\/(\d+)\.html)"[^>]*>/.exec(s);if(!i){_("info","[Leshi] \u8DF3\u8FC7\u65E0\u6CD5\u89E3\u6790\u94FE\u63A5\u7684\u5267\u96C6\u5143\u7D20");continue}let a=i[1],o=i[2],c=`https:${a}`,u="",l=/
[\s\n\r]*]*title="([^"]*)"[^>]*>([^<]*)<\/a>/.exec(s);if(l&&l[1])u=l[1].trim();else if(l&&l[2])u=l[2].trim();else{let p=/]*title="([^"]*)"[^>]*>[\s\S]*?
/.exec(s)||/
[\s\S]*?]*title="([^"]*)"/.exec(s);if(p&&p[1])u=p[1].trim();else{let m=/
]*>([^<]*)/.exec(s);if(m&&m[1])u=m[1].trim();else{let h=/]*title="[^"]*"[^>]*>([^<]*)/.exec(s);h&&h[1]&&(u=h[1].trim())}}}if(!u){let p=/第(\d+)集|(\d+)(?:\s*预告)?/.exec(s);p?u=`\u7B2C${p[1]||p[2]}\u96C6`:u=`\u7B2C${n.length+1}\u96C6`}if(/预告|Preview|preview/.test(u)){_("info",`[Leshi] \u8DF3\u8FC7\u9884\u544A\u7247: ${u}`);continue}let f={vid:o,title:u,url:c,episodeId:`${o}:${r}`};n.push(f)}catch(i){_("warn",`[Leshi] \u89E3\u6790\u5355\u4E2A\u5267\u96C6\u5931\u8D25: ${i.message}`);continue}return _("info",`[Leshi] \u6210\u529F\u89E3\u6790\u5267\u96C6\u5217\u8868: media_id=${r}, \u5171 ${n.length} \u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Leshi] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Leshi] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId),f=[];for(let p=0;p0){let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||new Date().getFullYear()})\u3010${l.type}\u3011from leshi`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year||new Date().getFullYear()),episodeCount:f.length,rating:0,isFavorited:!0,source:"leshi"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Leshi] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Leshi] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u4E50\u89C6\u7F51\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Leshi] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=10,i=[];for(let a=0;athis.getDanmuSegment(l)),u=await Promise.allSettled(c);for(let l=0;l0)i.push(...h);else if(p>600)break}else _("error",`[Leshi] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Leshi] \u4E50\u89C6\u7F51: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getDanmuSegment(e){try{let r=await ge(e.url,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"},retries:1}),n=[];if(r&&r.data){let s=typeof r.data=="string"?r.data:JSON.stringify(r.data),i=/vjs_\d+\((.*)\)/.exec(s);if(i){let a=JSON.parse(i[1]);a.code===200&&a.data&&n.push(...a.data.list||[])}}return n}catch(r){return _("error","[Leshi] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}async getEpisodeDanmuSegments(e){_("info","[Leshi] \u83B7\u53D6\u4E50\u89C6\u7F51\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e,n=e.match(/\/vplay\/(\d+)\.html/);n&&(r=n[1]);let s=await this.getVideoDuration(r),i=[];for(let a=0;a{try{let n=this.positionMap[parseInt(r.position)]||1,s=parseFloat(r.start||0),i=r.color||"FFFFFF",a=parseInt(i,16),o=r.id||r._id||"",c=r.txt||"",u=`${s.toFixed(2)},${n},25,${a},[${this.constructor.name.toLowerCase()}]`;return{cid:String(o),p:u,m:c,t:Math.round(s*100)/100}}catch(n){return _("error",`[Leshi] \u683C\u5F0F\u5316\u5F39\u5E55\u5931\u8D25: ${n.message}, \u5F39\u5E55\u6570\u636E:`,r),null}}).filter(r=>r!==null)}};Ot();_t();ir();Ts();$n();hn();hs();var Pie=class extends Tt{async search(e){try{let r=`https://m.ixigua.com/s/${e}`,s=(await ge(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}})).data,i=[],a=/
[\s\S]*?

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

[\s\S]*?title="([^"]+)"/),h=m?m[1]:"",A=d.match(/([^<]+\/[^<]+\/\d{4})<\/p>/),y="",x="";if(b){let v=b[1].split("/");y=v[0]||"",x=v[2]||""}p&&h&&i.push({name:h,type:y,year:x,img:g,url:p})})}else return _("info","[Xigua] xiguaSearchresp: \u76F8\u5173\u89C6\u9891\u7684section \u4E0D\u5B58\u5728"),[];return _("info",`[Xigua] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i}catch(r){return _("error","[Xigua] getXiguaAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let n=`https://m.ixigua.com/video/${e.split("/").pop()}`,s=await ge(n,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!s||!s.data)return _("info","[Xigua] getXiguaDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),0;let i=s.data.match(/"duration"\s*:\s*([\d.]+)/);return i?parseFloat(i[1]):0}catch(r){return _("error","[Xigua] getXiguaDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r=`https://m.ixigua.com/video/${e}`,n=await ge(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!n||!n.data)return _("info","[Xigua] getXiguaEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let s=n.data.match(/"episodes_list"\s*:\s*(\[[\s\S]*?\})\s*\]/);if(s)try{let i=s[0].replace(/"episodes_list"\s*:\s*/,"");return JSON.parse(i).map(c=>({seq_num:c.seq_num,title:c.title||`\u7B2C${c.seq_num}\u96C6`,url:`https://m.ixigua.com/video/${c.gid}`,gid:c.gid,cover_image_url:c.cover_image_url}))}catch(i){_("error","[Xigua] \u89E3\u6790episodes_list\u5931\u8D25:",i)}else return _("info","[Xigua] getXiguaEposides: episodes_list \u4E0D\u5B58\u5728"),[]}catch(r){return _("error","[Xigua] getXiguaEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Xigua] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Xigua] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=l.url.split("/").pop(),f=await this.getEpisodes(d),p=[];for(let m of f){let h=m.title;p.push({name:h,url:m.url,title:`\u3010xigua\u3011 ${h}`})}if(p.length>0){let m={animeId:Yr(d),bangumiId:String(d),animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from xigua`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Or(l.year),episodeCount:p.length,rating:0,isFavorited:!0,source:"xigua"};a.push(m),Dt({...m,links:p},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Xigua] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Xigua] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u897F\u74DC\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Xigua] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...h)}else _("error",`[Xigua] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Xigua] \u897F\u74DC\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Xigua] \u83B7\u53D6\u897F\u74DC\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e.split("/").pop(),n=await this.getDetail(e)*1e3;_("info","[Xigua] itemId:",r),_("info","[Xigua] duration:",n);let s=3e5,i=[];for(let a=0;a({cid:Number(r.danmaku_id),p:`${(r.offset_time/1e3).toFixed(2)},1,16777215,[xigua]`,m:r.text,t:Math.round(r.offset_time/1e3)}))}},mst=Pie;Ot();_t();ir();Ts();$n();hn();hs();var kie=class extends Tt{constructor(){super(),this.domain="https://mob.mddcloud.com.cn",this.headers={"user-agent":"Mdd/5.8.00 (Android+32+)","Content-Type":"application/json",version:"5.8.00",Referer:"mdd"}}getPlayload(e,r){let n=Date.now(),s=yi(r,!1),i=`os:Android|version:5.8.00|action:${e}|time:${n}|appToken:|privateKey:e1be6b4cf4021b3d181170d1879a530a9e4130b69032144d5568abfd6cd6c1c2|data:${s}&`;return{channel:"1000",data:r,deviceNum:"853BDD7A1DC011F1C341455071C03AEB",deviceType:0,jsonSign:0,os:"Android",sign:Ls(i),sourceVersion:0,terminalType:"APP",thirdStatus:0,time:n,version:"5.8.00",visitorStatus:0}}extractByRegex(e){let r=e.match(/\/video\/([a-f0-9]+)\.html/i),n=e.match(/[?&]uuid=([a-f0-9]+)/i);return{vodUuid:r?r[1]:null,uuid:n?n[1]:null,success:!!(r&&n)}}async search(e){try{let r="/searchApi/search/getAllSearchResult4820.action",n=`${this.domain}${r}`,s={keyWord:e},i=await Kr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return _("info","[Maiduidui] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=a?.data;for(let u of c)if(u?.typeName==="\u5267\u96C6"||u?.typeName==="\u7535\u5F71"||u?.typeName==="\u7EFC\u827A")for(let l of u?.vodList)o.push({name:l.name,type:u.typeName,year:l.yearName,img:l.downImage,url:l.uuid});return _("info",`[Maiduidui] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Maiduidui] getMaiduiduiAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let r=this.extractByRegex(e),n=r.uuid,s=r.vodUuid,i="/api/vod/listVodSactions.action",a=`${this.domain}${i}`,o={hasIntroduction:0,vodUuid:s},c=await Kr(a,JSON.stringify(this.getPlayload(i,o)),{headers:this.headers});if(!c||!c.data)return _("info","[Maiduidui] \u83B7\u53D6\u8BE6\u60C5\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let u=typeof c.data=="string"?JSON.parse(c.data):c.data;for(let l of u?.data)if(l.uuid===n)return l.duration;return 0}catch(r){return _("error","[Maiduidui] getMaiduiduiDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r="/api/vod/listVodSactions.action",n=`${this.domain}${r}`,s={hasIntroduction:0,vodUuid:e},i=await Kr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return _("info","[Maiduidui] \u83B7\u53D6\u96C6\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let a=[];return(typeof i.data=="string"?JSON.parse(i.data):i.data)?.data.forEach(c=>{a.push({title:c.name,episodeId:c.uuid})}),a}catch(r){return _("error","[Maiduidui] getMaiduiduiEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Maiduidui] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Maiduidui] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url),f=[];for(let p of d){let m=p.title;f.push({name:m,url:`https://www.mddcloud.com.cn/video/${l.url}.html?uuid=${p.episodeId}`,title:`\u3010maiduidui\u3011 ${m}`})}if(f.length>0){let p={animeId:Yr(l.url),bangumiId:l.url,animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from maiduidui`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"maiduidui"};a.push(p),Dt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Maiduidui] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Maiduidui] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u57CB\u5806\u5806\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Maiduidui] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=20,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...h)}else _("error",`[Maiduidui] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Maiduidui] \u57CB\u5806\u5806: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Maiduidui] \u83B7\u53D6\u57CB\u5806\u5806\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let n=this.extractByRegex(e).uuid,s=await this.getDetail(e);_("info","[Maiduidui] uuid:",n),_("info","[Maiduidui] duration:",s);let i=60,a=[];for(let o=0;o{u.push(...f.barrageList)}),u}catch(r){return _("error","[Maiduidui] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>({cid:Number(r.uuid),p:`${r.times.toFixed(2)},1,${hb(r.color.replace("#",""))},[maiduidui]`,m:r.content,t:r.times}))}},hst=kie;_t();ir();Ts();$n();hn();so();Ot();Ot();_t();Ts();ir();var ymr="https://www.yfsp.tv/",xmr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",bmr=60*1e3;function sw(t,e,r){if(t==null)return r;let n=e.split("."),s=t;for(let i=0;i({provider:"aiyifan",mediaId:i.contxt,title:i.title,type:i.atypeName,year:new Date(i.postTime).getFullYear(),imageUrl:i.imgPath||null,episodeCount:0}));return _("info",`[Aiyifan] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${s.length} \u4E2A\u7ED3\u679C`),s}async getEpisodes(e){_("info",`[Aiyifan] \u83B7\u53D6\u5267\u96C6\u8BE6\u60C5: ${e}`);let r=await this.getPlaylist(e);if(!r.length)return _("error","[Aiyifan] \u83B7\u53D6\u64AD\u653E\u5217\u8868\u5931\u8D25"),[];let n=r.map((s,i)=>({vid:s.key,id:s.id,title:s.name||`\u7B2C${i+1}\u96C6`,link:`${this.DOMAIN_API}/${e}?id=${s.key}`}));return _("info",`[Aiyifan] \u83B7\u53D6\u5230 ${n.length} \u4E2A\u5267\u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Aiyifan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=Ct(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Aiyifan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId);if(d.length===0){_("info",`[Aiyifan] ${l.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}let f=d.map((h,A)=>({name:h.title||`${A+1}`,url:h.link,title:`\u3010aiyifan\u3011 ${h.title}`}));if(f.length===0)return;let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from aiyifan`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Or(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"aiyifan"};a.push(m),Dt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}catch(d){_("error",`[Aiyifan] \u5904\u7406 ${l.title} \u5931\u8D25:`,d.message)}});return await Promise.all(u),this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e){_("info",`[Aiyifan] \u83B7\u53D6\u5F39\u5E55: ${e}`);let r=this.extractEpisodeRequestKey(e),n=this.inflightDanmuRequests.get(r);if(n)return _("info",`[Aiyifan] \u590D\u7528\u8FDB\u884C\u4E2D\u7684\u5F39\u5E55\u8BF7\u6C42: ${r}`),await n;let s=(async()=>{let i=r,a=await this.getVideoInfo(i);if(!a)return _("error","[Aiyifan] \u83B7\u53D6\u89C6\u9891\u4FE1\u606F\u5931\u8D25"),[];let o=this.extractUniqueKey(a);if(!o)return _("error","[Aiyifan] \u672A\u83B7\u53D6\u5230uniqueKey"),[];let c=await this.fetchBarrage(o);return c.length===0?(_("info","[Aiyifan] \u672A\u83B7\u53D6\u5230\u5F39\u5E55"),[]):(c.sort((u,l)=>(u.second||0)-(l.second||0)),_("info",`[Aiyifan] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c)})();this.inflightDanmuRequests.set(r,s);try{return await s}finally{this.inflightDanmuRequests.delete(r)}}async getEpisodeDanmuSegments(e){let r=await this.getEpisodeDanmu(e),n=[{type:"aiyifan",segment_start:0,segment_end:Math.max(...r.map(s=>s.second||0),0),url:`${this.DANMU_API}?uniqueKey=${e}`}];return{type:"aiyifan",duration:Math.max(...r.map(s=>s.second||0),0),segmentList:n}}async getEpisodeSegmentDanmu(e){let r=e.url?.split("uniqueKey=")[1];return r?await this.getEpisodeDanmu(r):[]}formatComments(e){return e.map(r=>({p:`${r.second||0},${r.position===1?5:1},25,${hb(r.color.replace("#",""))},0,0,0,0`,m:r.contxt||r.content||"",like:r.good,...r})).map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=Qt(r.m)),r))}};Ot();_t();ir();$n();so();hs();hn();var Rc={danmu:null,subject:null},aw=new Map,Pmr=3*60*1e3,kmr=100,ow=class extends Tt{get headers(){return{"Content-Type":"application/json","User-Agent":`huangxd-/danmu_api/${O.version}(https://github.com/huangxd-/danmu_api)`}}_applyProxyForSearch(e){return O.makeProxyUrl(e)}_getDanmuServerPriority(){return new Date().getTimezoneOffset()===-480?["https://api.animeko.org","https://danmaku-global.myani.org","https://danmaku-cn.myani.org","https://s1.animeko.openani.org"]:["https://danmaku-global.myani.org","https://api.animeko.org","https://s1.animeko.openani.org","https://danmaku-cn.myani.org"]}_getSubjectServerPriority(){let e="https://api.bgm.tv",r="https://api.bangumi.lol",n=this._applyProxyForSearch(e),i=new Date().getTimezoneOffset()===-480?[{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"},{type:"V2",url:"https://s1.animeko.openani.org"}]:[{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://s1.animeko.openani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"}];return n!==e?[...i,{type:"V0",url:n},{type:"V0",url:r}]:[...i,{type:"V0",url:r},{type:"V0",url:e}]}async _fetchV0AllEpisodes(e,r){let n=[],s=0,i=200;try{for(;;){let a=`${e}/v0/episodes?subject_id=${r}&limit=${i}&offset=${s}`,o=await ge(a,{headers:this.headers,timeout:3e3});if(!o||!o.data||!Array.isArray(o.data.data)){s===0&&_("info",`[Animeko] Subject ${r} \u65E0\u5267\u96C6\u6570\u636E\u6216\u54CD\u5E94\u5F02\u5E38`);break}let c=o.data.data;if(c.length===0||(n=n.concat(c),c.length===i&&_("info",`[Animeko] ID:${r} \u6B63\u52A0\u8F7D\u66F4\u591A\u5267\u96C6 (\u5F53\u524D\u5DF2\u83B7: ${n.length})`),c.length1600){_("warn",`[Animeko] ID:${r} \u5267\u96C6\u6570\u91CF\u8D85\u8FC7\u5B89\u5168\u9650\u5236(1600)\uFF0C\u505C\u6B62\u7FFB\u9875`);break}}return n}catch(a){return _("error","[Animeko] V0\u5267\u96C6\u83B7\u53D6\u5F02\u5E38:",{message:a.message,id:r,offset:s}),[]}}async _fetchAnimekoSubject(e){let r=aw.get(e);if(r&&Date.now()-r.timestampa.url===s);(!s||i===-1)&&(i=0,s=n[0].url,Rc.subject=s);for(let a=0;a(_("warn",`[Animeko] V0\u5173\u8054\u83B7\u53D6\u5F02\u5E38: ${d.message}`),null))]);(u&&u.length>0||l)&&(c={id:e},u&&u.length>0&&(c.episodes=u.map(d=>({episodeId:d.id,sort:d.sort,ep:d.ep,type:d.type===0?"MAIN":d.type===1?"SP":String(d.type),name:d.name,nameCn:d.name_cn,airdate:d.airdate}))),l&&l.data&&Array.isArray(l.data)&&(c.relations=l.data))}if(c){if(Rc.subject!==o.url&&(_("info",`[Animeko] \u8BE6\u60C5\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${Rc.subject} -> ${o.url}`),Rc.subject=o.url),aw.set(e,{data:c,timestamp:Date.now()}),aw.size>kmr){let u=aw.keys().next().value;aw.delete(u)}return c}_("warn",`[Animeko] \u8282\u70B9 ${o.url} \u8FD4\u56DE\u65E0\u6548\u6570\u636E`)}catch(c){_("warn",`[Animeko] \u8282\u70B9\u8BF7\u6C42\u5931\u8D25: ${o.url} - ${c.message}`)}}return _("warn","[Animeko] \u6240\u6709\u8BE6\u60C5\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u4F18\u5148\u7EA7\u9996\u4F4D"),Rc.subject=n[0].url,null}async search(e){if(O.useBangumiData){let r=await Au(e,["bangumi"]);if(r.length>0){_("info",`[Animeko] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`);let n=r.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||s.titles[1]||s.title)+(s.titleSuffix||"");return{id:parseInt(s.siteId),name:s.title,name_cn:a,imageUrl:"",date:s.begin,score:0,platform:s.typeStr,aliases:[...s.titles]}});if(n.length>1){let s=await this.checkRelationsAndModifyTitles(n);return _("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF08Bangumi-Data + \u5173\u7CFB\u68C0\u6D4B\uFF09\uFF0C\u5171\u627E\u5230 ${s.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(s)}return this.transformResults(n)}}try{let r=e.replace(/[._]/g," ").replace(/\s+/g," ").trim();_("info",`[Animeko] \u5F00\u59CB\u641C\u7D22 (V0): ${r}`);let n=[],s=0,i=20;for(;;){let o=`/v0/search/subjects?limit=${i}&offset=${s}`,c=`https://api.bgm.tv${o}`,u=`https://api.bangumi.lol${o}`,l=this._applyProxyForSearch(c),d=[];l!==c?d=[{id:"PROXY_OFFICIAL",url:l},{id:"MIRROR",url:u}]:d=[{id:"MIRROR",url:u},{id:"OFFICIAL",url:c}];let f={keyword:r,filter:{type:[2]}},p=null;for(let A of d)try{if(p=await Kr(A.url,JSON.stringify(f),{headers:this.headers,timeout:5e3}),p&&p.data){_("info",`[Animeko] \u641C\u7D22\u8282\u70B9 [${A.id}] \u8BF7\u6C42\u6210\u529F (offset: ${s})`);break}}catch(g){_("warn",`[Animeko] \u641C\u7D22\u8282\u70B9 [${A.id}] \u8BF7\u6C42\u5931\u8D25: ${g.message}`)}if(!p||!p.data){_("info",`[Animeko] \u641C\u7D22\u8BF7\u6C42\u6240\u6709\u8282\u70B9\u5747\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (offset: ${s})`);break}let m=p.data.data||[];if(m.length===0)break;let h=this.filterSearchResults(m,e);if(h.length>0&&(n=n.concat(h)),h.length=60){_("warn","[Animeko] \u641C\u7D22\u7FFB\u9875\u8FBE\u5230\u5B89\u5168\u4E0A\u9650(60)\uFF0C\u5F3A\u5236\u505C\u6B62");break}}if(n.length===0)return _("info","[Animeko] \u8FC7\u6EE4\u540E\u65E0\u5339\u914D\u7ED3\u679C"),[];let a=Array.from(new Map(n.map(o=>[o.id,o])).values());return a.length>1&&(a=await this.checkRelationsAndModifyTitles(a)),_("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF0C\u5171\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(a)}catch(r){return _("error","[Animeko] Search error:",{message:r.message,name:r.name,stack:r.stack}),[]}}filterSearchResults(e,r){return e.filter(n=>{let s=[n.name,n.name_cn];return n.infobox&&Array.isArray(n.infobox)&&n.infobox.forEach(i=>{i.key==="\u522B\u540D"&&Array.isArray(i.value)&&i.value.forEach(a=>{a&&a.v&&s.push(a.v)}),i.key==="\u4E2D\u6587\u540D"&&typeof i.value=="string"&&s.push(n.value)}),s.some(i=>i&&yt(i,r))})}hasExplicitSeasonInfo(e){return e?/第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|Season\s*\d+|S\d+|Part\s*\d+|Act\s*\d+|Phase\s*\d+|The\s+Final\s+Season|OVA|OAD|剧场版|åŠ‡å ´ç‰ˆ|Movie|Film|ç»­[篇集]|å¤–ä¼ |SP|(?o.length){if(this.hasExplicitSeasonInfo(c))continue;let u=await this._fetchAnimekoSubject(i.id),d=this._extractRelations(u).find(f=>f.id===a.id);if(d&&(_("info",`[Animeko] \u68C0\u6D4B\u5230\u5173\u7CFB: [${o}] -> ${d.relation} -> [${c}]`),["\u7EED\u96C6","\u756A\u5916\u7BC7","\u4E3B\u7EBF\u6545\u4E8B","\u524D\u4F20","\u4E0D\u540C\u6F14\u7ECE","\u884D\u751F"].includes(d.relation))){let p=d.relation;p==="\u7EED\u96C6"&&(p="\u7EED\u7BC7"),a._relation_mark=`(${p})`}}}return e}_extractRelations(e){if(!e||!e.relations)return[];let r=e.relations;if(Array.isArray(r))return r.filter(i=>i.type===2).map(i=>({id:i.id,name:i.name_cn||i.name,relation:i.relation}));let n=[],s=(i,a)=>{Array.isArray(i)&&i.forEach(o=>{o&&n.push({id:o,name:"",relation:a})})};return s(r.sequelSubjects,"\u7EED\u96C6"),s(r.prequelSubjects,"\u524D\u4F20"),s(r.sideStorySubjects,"\u756A\u5916\u7BC7"),s(r.alternativeSettingSubjects,"\u4E0D\u540C\u6F14\u7ECE"),s(r.characterSubjects,"\u884D\u751F"),n}_extractInfoboxValue(e,r){if(!e||!e.fields||!Array.isArray(e.fields))return null;let n=e.fields.find(s=>s.key===r);return n&&n.values&&n.values.length>0&&n.values[0].v||null}_ExtractInfoboxAliases(e){let r=[];return!e||!e.fields||!Array.isArray(e.fields)||e.fields.forEach(n=>{n.key==="\u522B\u540D"&&Array.isArray(n.values)&&n.values.forEach(s=>{s&&s.v&&!r.includes(s.v)&&r.push(s.v)})}),r}transformResults(e){return e.map(r=>{let n="\u52A8\u6F2B";if(r.platform)switch(r.platform){case"TV":case 1:n="TV\u52A8\u753B";break;case"Web":n="Web\u52A8\u753B";break;case"OVA":n="OVA";break;case"Movie":n="\u5267\u573A\u7248";break;default:n=typeof r.platform=="number"?"TV\u52A8\u753B":r.platform}let s=!1,i=!1;r.tags&&Array.isArray(r.tags)&&r.tags.forEach(u=>{let l=u.name||u;l==="3D"&&(s=!0),l==="2D"&&(i=!0)}),s?n="3D"+n:i&&(n="2D"+n);let a=r._relation_mark?` ${r._relation_mark}`:"",o=Array.isArray(r.aliases)?[...r.aliases]:[];r.infobox&&(Array.isArray(r.infobox)?r.infobox.forEach(u=>{u.key==="\u522B\u540D"&&Array.isArray(u.value)&&u.value.forEach(l=>{l&&l.v&&!o.includes(l.v)&&o.push(l.v)})}):r.infobox.fields&&this._ExtractInfoboxAliases(r.infobox).forEach(l=>{o.includes(l)||o.push(l)})),r.name_cn&&r.name_cn!==r.name&&o.push(r.name_cn),r.nameCn&&r.nameCn!==r.name&&(o.includes(r.nameCn)||o.push(r.nameCn));let c=r.airDate||r.date||"";return{id:r.id,name:r.name,name_cn:(r.name_cn||r.nameCn||r.name)+a,aliases:o,images:r.images,air_date:c,score:r.score?parseFloat(r.score):0,typeDescription:n}})}async getEpisodes(e){try{let r=await this._fetchAnimekoSubject(e);return!r||!r.episodes||!Array.isArray(r.episodes)?(r&&_("info",`[Animeko] Subject ${e} \u65E0\u5267\u96C6\u6570\u636E`),[]):r.episodes.map(n=>({id:n.episodeId,sort:parseInt(n.sort)||0,ep:n.ep,type:n.type==="MAIN"?0:n.type==="SP"?1:n.type,name:n.name||"",name_cn:n.nameCn||"",airdate:n.airdate||""}))}catch(r){return _("error","[Animeko] GetEpisodes error:",{message:r.message,id:e}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return e&&_("error","[Animeko] sourceAnimes is not a valid array"),[];let o=e,c=i!==null?i:Wt(r);if(c!==null){let l=o.filter(d=>{let f=d.name_cn||d.name,p=Ct(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("info",`[Animeko] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.id),f=[],p=l.air_date||"";if(Array.isArray(d)){d.sort((m,h)=>(m.sort||0)-(h.sort||0));for(let m of d){if(m.type!==0)continue;!p&&m.airdate&&(p=m.airdate);let h=m.sort||m.ep,A=m.name_cn||m.name||"",g=`\u7B2C${h}\u8BDD ${A}`.trim();f.push({name:`${h}`,url:m.id.toString(),title:`\u3010animeko\u3011 ${g}`})}}if(f.length>0){let m=p?new Date(p).getFullYear():"",h={animeId:l.id,bangumiId:String(l.id),animeTitle:`${l.name_cn||l.name}(${m})\u3010${l.typeDescription||"\u52A8\u6F2B"}\u3011from animeko`,aliases:l.aliases||[],type:"\u52A8\u6F2B",typeDescription:l.typeDescription||"\u52A8\u6F2B",imageUrl:l.images?l.images.common||l.images.large:"",startDate:p,episodeCount:f.length,rating:l.score||0,isFavorited:!0,source:"animeko"};a.push(h),Dt({...h,links:f},s),O.animes.length>O.MAX_ANIMES&&$t()}}catch(d){_("error",`[Animeko] Error processing anime ${l.id}: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){let r=String(e).trim();if(r.includes("/")){let a=r.split("/");r=a[a.length-1]}if(r.includes("?")&&(r=r.split("?")[0]),!r)return _("error","[Animeko] \u65E0\u6548\u7684 episodeId"),[];let n=this._getDanmuServerPriority(),s=Rc.danmu,i=n.indexOf(s);(!s||i===-1)&&(i=0,s=n[0],Rc.danmu=s);for(let a=0;a ${c}`),Rc.danmu=c),_("info",`[Animeko] \u6210\u529F\u83B7\u53D6\u5F39\u5E55\uFF0C\u5171 ${d.length} \u6761 (${c}\u8282\u70B9)`),d}_("info",`[Animeko] ${c} \u8282\u70B9\u83B7\u53D6\u5931\u8D25/\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(l){_("warn",`[Animeko] \u8BF7\u6C42\u8282\u70B9\u5931\u8D25: ${c} - ${l.message}`)}}return _("info","[Animeko] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u9996\u9009\u8282\u70B9"),Rc.danmu=n[0],[]}async getEpisodeDanmuSegments(e){return new St({type:"animeko",segmentList:[{type:"animeko",segment_start:0,segment_end:3e4,url:String(e)}]})}async getEpisodeSegmentDanmu(e){let r=(e.url||"").trim();return r?this.getEpisodeDanmu(r):[]}formatComments(e){if(!Array.isArray(e))return[];let r={NORMAL:1,TOP:5,BOTTOM:4};return e.filter(n=>n&&n.danmakuInfo).map(n=>{let s=n.danmakuInfo,i=(Number(s.playTime)/1e3).toFixed(2),a=r[s.location]||1,o=s.color===-1?16777215:s.color,c=O.danmuSimplifiedTraditional==="simplified"?Qt(s.text):s.text;return{cid:n.id,p:`${i},${a},${o},[animeko]`,m:c}})}};Ot();_t();ir();hn();hs();var cw=class extends Tt{async search(e){}async getEpisodes(e){}async handleAnimes(e,r,n,s=null){}async getEpisodeDanmu(e){try{let r=await ge(`${O.otherServer}/?url=${e}&ac=dm`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return _("info",`[Other] danmu response from ${O.otherServer}: \u2193\u2193\u2193`),ts(r.data),r.data}catch(r){return _("error",`[Other] \u8BF7\u6C42 ${O.otherServer} \u5931\u8D25:`,r),[]}}async getEpisodeDanmuSegments(e){return _("info","[Other] \u83B7\u53D6\u7B2C\u4E09\u65B9\u670D\u52A1\u5668\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new St({type:"other_server",segmentList:[{type:"other_server",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e}};hs();var bst=new jT,Est=new HT,uw=new zT,lw=new YT,dw=new Tg,fw=new JT,h4=new XT,V0=new wg,z0=new Pg,Y0=new Rg,kg=new Ng,Tu=new Og,J0=new fst,Dg=new rw,Bg=new nw,Lg=new mst,Mg=new hst,Wg=new iw,pw=new ow,Bie=new cw,Lie=new GT(V0,Y0,z0,Tu,J0),_st=new QT(Lie),u4=new Map;function yst(t){let e=Number(t||0);return!Number.isFinite(e)||e<=0?0:e>6*60*60?e/1e3:e}function Sst(t,e=!1){return e?String(t||O.danmuOutputFormat||"json").toLowerCase()==="json":!1}function l4(t,e=null){return e===null?t:{videoDuration:e,...t}}function Dmr(t){let e=yst(t?.duration||t?.videoDuration||0);if(e>0)return e;let r=Array.isArray(t?.segmentList)?t.segmentList:[];if(!r.length)return 0;let n=0;return r.forEach(s=>{let i=yst(s?.segment_end||0);i<=0||i>n&&(n=i)}),n>0?n:0}async function Mie(t){if(!/^https?:\/\//i.test(t))return 0;try{let e=t,r=null;return e.includes(".qq.com")?r=await be.run("tencent",()=>V0.getComments(e,"qq",!0)):e.includes(".iqiyi.com")?r=await be.run("iqiyi",()=>Y0.getComments(e,"qiyi",!0)):e.includes(".mgtv.com")?r=await be.run("mango",()=>kg.getComments(e,"imgo",!0)):e.includes(".bilibili.com")||e.includes("b23.tv")?(e.includes("b23.tv")&&(e=await be.run("bilibili",()=>Tu.resolveB23Link(e))),r=await be.run("bilibili",()=>Tu.getComments(e,"bilibili1",!0))):e.includes(".youku.com")?r=await be.run("youku",()=>z0.getComments(e,"youku",!0)):e.includes(".miguvideo.com")?r=await be.run("migu",()=>J0.getComments(e,"migu",!0)):e.includes(".sohu.com")?r=await be.run("sohu",()=>Dg.getComments(e,"sohu",!0)):e.includes(".le.com")?r=await be.run("leshi",()=>Bg.getComments(e,"leshi",!0)):e.includes(".douyin.com")||e.includes(".ixigua.com")?r=await be.run("xigua",()=>Lg.getComments(e,"xigua",!0)):e.includes(".mddcloud.com.cn")?r=await be.run("maiduidui",()=>Mg.getComments(e,"maiduidui",!0)):e.includes(".yfsp.tv")&&(r=await be.run("aiyifan",()=>Wg.getComments(e,"aiyifan",!0))),Dmr(r)}catch(e){return _("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function Bmr(t){return String(t||"").split(Cu).map(e=>{let r=e.indexOf(":");return r===-1?e.trim():e.slice(r+1).trim()}).filter(Boolean)}async function d4(t){if(!t)return 0;try{let e=t.includes(Cu)?Bmr(t):[t];return(await Promise.all(e.map(Mie))).reduce((n,s)=>Math.max(n,s||0),0)}catch(e){return _("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function f4(t,e){if(!e)return!0;let r=W0(t.animeTitle);return r?r===e:!0}function Lmr(t,e,r){let n=t.animeTitle.match(/^(.*?)\(\d{4}\)/),s=n?n[1].trim():t.animeTitle.split("(")[0].trim(),i=Fr(s),a=Fr(e);if(i.includes(a)){if(i.startsWith(a)){let o=i.substring(a.length).trim();if(o===""&&r===1)return!0;let c=o.match(/\d+/);if(c&&c[0]===r.toString())return!0;let u=o.match(/[一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+/);if(u&&tg(u[0])===r)return!0}return!1}else return!1}function Die(t,e,r,n,s){if(r===null||e===null)return!0;let i=[];s&&(i=s.split("&").map(o=>o.trim().toLowerCase()).filter(o=>o)),i.length===0&&(i=["_any_"]);let a=!0;for(let o of i){let c=!1,u=new Map,l=!1;for(let d of t){let f=p4(d.animeTitle)||d.source;if(o!=="_any_"&&jf(f,o)===0)continue;l=!0;let p=Fg(d,n);if(p?.success&&p.bangumi?.episodes){let m=p.bangumi.episodes.filter(y=>!O.episodeTitleFilter.test(y.episodeTitle)),h=$g(m);if(h.some(y=>uf(y.episodeTitle)===r)){c=!0;break}let A=[d.animeTitle];d.aliases&&Array.isArray(d.aliases)&&A.push(...d.aliases);let g=null;for(let y of A){if(!y)continue;let x=Ct(y).season;if(x!==null){g=x;break}}g===null&&(g=1);let b=u.get(g)||0;h.length>b&&u.set(g,h.length)}}if(l&&!c){let d=0;for(let f of u.values())d+=f;if(dt[W]!==void 0),D=[];for(let W of M){let F=[],K=new Map;if(W==="360")D.push({key:W,animes:F,detailStore:K,promise:be.run(In(W),()=>bst.handleAnimes(c,e,F,K,s))});else if(W==="vod"){if(o&&Array.isArray(o)){let j=be.run(W,()=>(async()=>{for(let J of o)J&&J.list&&J.list.length>0&&await Est.handleAnimes(J.list,e,F,J.serverName,K,s)})());D.push({key:W,animes:F,detailStore:K,promise:j})}}else W==="tmdb"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>_st.handleAnimes(u,e,F,K,s))}):W==="douban"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Lie.handleAnimes(l,e,F,K,s))}):W==="renren"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>uw.handleAnimes(d,e,F,K,s))}):W==="hanjutv"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>lw.handleAnimes(f,e,F,K,s))}):W==="bahamut"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>dw.handleAnimes(p,e,F,K,s))}):W==="dandan"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>fw.handleAnimes(m,e,F,K,s))}):W==="custom"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>h4.handleAnimes(h,e,F))}):W==="tencent"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>V0.handleAnimes(A,e,F,K,s))}):W==="youku"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>z0.handleAnimes(g,e,F,K,s))}):W==="iqiyi"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Y0.handleAnimes(b,e,F,K,s))}):W==="imgo"?D.push({key:W,animes:F,detailStore:K,promise:be.run(In(W),()=>kg.handleAnimes(y,e,F,K,s))}):W==="bilibili"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Tu.handleAnimes(x,e,F,K,s))}):W==="migu"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>J0.handleAnimes(v,e,F,K,s))}):W==="sohu"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Dg.handleAnimes(I,e,F,K,s))}):W==="leshi"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Bg.handleAnimes(R,e,F,K,s))}):W==="xigua"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Lg.handleAnimes(w,e,F,K,s))}):W==="maiduidui"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Mg.handleAnimes(N,e,F,K,s))}):W==="aiyifan"?D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>Wg.handleAnimes(P,e,F,K,s))}):W==="animeko"&&D.push({key:W,animes:F,detailStore:K,promise:be.run(W,()=>pw.handleAnimes(B,e,F,K,s))})}let L=await Promise.allSettled(D.map(W=>W.promise)),Z=new Set(r.map(W=>W.animeId));for(let W=0;W ${A}`),i=A}let c=n instanceof Map?n:new Map,u=a!==null?`${i}_S${a}`:i,l=OI(u,c);if(l===null&&a!==null){let A=OI(i,c);A!==null&&(_("info",`[system] [searchAnime] Cache miss for ${u}, fallback to generic cache for ${i}`),l=A)}if(l!==null){let A=Die(l,a,o,c,s);if(A)return Le({errorCode:0,success:!0,errorMessage:"",animes:l});{let g=a+1,b=[...l],y=!1;for(;!A&&!y;){let x=`${i}_S${g}`,v=OI(x,c);v!==null&&v.length>0?(b.push(...v),A=Die(b,a,o,c,s),g++):y=!0}if(A)return _("info",`[system] [LogVar-API] Episode ${o} satisfied by combining cached seasons S${a} to S${g-1}`),Le({errorCode:0,success:!0,errorMessage:"",animes:b});_("info",`[system] [LogVar-API] Episode ${o} not satisfied in cache. Proceeding to network search.`)}}let d=[];if(/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}(:\d+)?(\/[^\s]*)?$/.test(i)){let A=F0.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u89E3\u6790",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),g="unknown";i.includes(".qq.com")?g="qq":i.includes(".iqiyi.com")?g="qiyi":i.includes(".mgtv.com")?g="imgo":i.includes(".youku.com")?g="youku":i.includes(".bilibili.com")?g="bilibili1":i.includes(".miguvideo.com")?g="migu":i.includes(".sohu.com")?g="sohu":i.includes(".le.com")?g="leshi":i.includes(".douyin.com")||i.includes(".ixigua.com")?g="xigua":i.includes(".mddcloud.com.cn")?g="maiduidui":i.includes(".yfsp.tv")&&(g="aiyifan");let b=await be.run(In(g),()=>E8e(i)),y=[{name:"\u624B\u52A8\u89E3\u6790\u94FE\u63A5\u5F39\u5E55",url:i,title:`\u3010${g}\u3011 ${b}`}];d.push(A),Dt(F0.fromJson({...A,links:y}),c),O.animes.length>O.MAX_ANIMES&&$t(),O.localCacheValid&&d.length!==0&&await QB(),O.redisValid&&d.length!==0&&await PB(),O.localRedisValid&&d.length!==0&&await zL();let x=d.map(({links:v,...I})=>I);return Le({errorCode:0,success:!0,errorMessage:"",animes:x})}try{_("info",`[system] [LogVar-API] Search sourceOrderArr: ${O.sourceOrderArr}`);let A={},g={};for(let I of O.sourceOrderArr)I==="360"?g[I]=be.run(In(I),()=>bst.search(i)):I==="vod"?g[I]=be.run(In(I),()=>Est.search(i,e,r)):I==="tmdb"?g[I]=be.run(In(I),()=>_st.search(i)):I==="douban"?g[I]=be.run(In(I),()=>Lie.search(i)):I==="renren"?g[I]=be.run(In(I),()=>uw.search(i)):I==="hanjutv"?g[I]=be.run(In(I),()=>lw.search(i)):I==="bahamut"?g[I]=be.run(In(I),()=>dw.search(i)):I==="dandan"?g[I]=be.run(In(I),()=>fw.search(i)):I==="custom"?g[I]=be.run(In(I),()=>h4.search(i)):I==="tencent"?g[I]=be.run(In(I),()=>V0.search(i)):I==="youku"?g[I]=be.run(In(I),()=>z0.search(i)):I==="iqiyi"?g[I]=be.run(In(I),()=>Y0.search(i)):I==="imgo"?g[I]=be.run(In(I),()=>kg.search(i)):I==="bilibili"?g[I]=be.run(In(I),()=>Tu.search(i)):I==="migu"?g[I]=be.run(In(I),()=>J0.search(i)):I==="sohu"?g[I]=be.run(In(I),()=>Dg.search(i)):I==="leshi"?g[I]=be.run(In(I),()=>Bg.search(i)):I==="xigua"?g[I]=be.run(In(I),()=>Lg.search(i)):I==="maiduidui"?g[I]=be.run(In(I),()=>Mg.search(i)):I==="aiyifan"?g[I]=be.run(In(I),()=>Wg.search(i)):I==="animeko"&&(g[I]=be.run(In(I),()=>pw.search(i)));let b=O.sourceOrderArr.map(I=>{let R=[],w=new Map,N=g[I].then(async P=>{A[I]=P,await xst({[I]:P},i,R,w,a,e,r)});return{key:I,animes:R,detailStore:w,promise:N}}),y=await Promise.allSettled(b.map(I=>I.promise)),x=new Set(d.map(I=>I.animeId));for(let I=0;I0&&PI(u,d.map(({links:I,...R})=>R),c),!Die(d,a,o,c,s)&&a!==null){let I=a;for(let R of O.sourceOrderArr){let w=A[R];if(Array.isArray(w))for(let N of w){let P=N&&Array.isArray(N.list)?N.list:[N];for(let B of P){if(!B)continue;let M=Ct(B.animeTitle||B.title||"").season;M!==null&&M>I&&(I=M)}}}if(I>a){_("info",`[system] [LogVar-API] Episode ${o} not satisfied in Season ${a}. Parallel mapping to S${a+1}~S${I}...`);let R=[];for(let N=a+1;N<=I;N++)R.push((async()=>{let P=[];return await xst(A,i,P,c,N,e,r),P.length>0&&PI(`${i}_S${N}`,P.map(({links:B,...M})=>M),c),P})());let w=await Promise.all(R);for(let N of w)d.push(...N)}}}catch(A){_("error","[system] [LogVar-API] \u53D1\u751F\u9519\u8BEF:",A)}let p=O.mergeSourcePairs&&O.mergeSourcePairs.length>0,m=O.customMergeRules&&O.customMergeRules.length>0;if((p||m)&&await Ont(d,c),nz(d,i),O.enableAnimeEpisodeFilter){let A=[];for(let g of d){let b=g.animeTitle||"";if(O.animeTitleFilter&&O.animeTitleFilter.test(b)){_("info",`[searchAnime] Anime ${g.animeId} filtered by name: ${b}`);continue}let y=ig(g?.bangumiId,c,g?.source)||ig(g?.animeId,c,g?.source)||sg(g?.bangumiId,c,g?.source)||sg(g?.animeId,c,g?.source);if(y&&y.links){let x=y.links.map((v,I)=>({episodeId:v.id,episodeTitle:v.title,episodeNumber:I+1}));x=x.filter(v=>!O.episodeTitleFilter.test(v.episodeTitle)),_("info",`[searchAnime] Anime ${g.animeId} filtered episodes: ${x.length}/${y.links.length}`),x.length>0&&A.push(g)}}d.length=0,d.push(...A)}O.localCacheValid&&d.length!==0&&await QB(),O.redisValid&&d.length!==0&&await PB(),O.localRedisValid&&d.length!==0&&await zL();let h=d.map(({links:A,...g})=>g);if(h.length>0){let A=a!==null?`${i}_S${a}`:i;PI(A,h,c)}return Le({errorCode:0,success:!0,errorMessage:"",animes:h})}function $g(t){return t.filter((r,n,s)=>!s.slice(0,n).some(i=>i.episodeTitle===r.episodeTitle))}function jf(t,e){if(!t||!e)return 0;let r=t.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),n=e.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),s=0;for(let i of n)r.some(o=>o===i||o.includes(i)&&i.length>2||i.includes(o)&&o.length>2)&&s++;return s===0?0:s*1e3-r.length}function p4(t){let e=t.match(/from\s+([a-zA-Z0-9&]+)/i);return e?e[1]:null}function m4(t,e,r,n=null){if(!t||t.length===0)return null;let s=t;if(n&&(s=t.filter(i=>{let a=rg(i.episodeTitle);return jf(a,n)>0})),s.length===0)return null;for(let i of s){let a=uf(i.episodeTitle);if(e===r&&a===r)return _("info",`Found episode by title number: ${i.episodeTitle} (extracted: ${a})`),i}if(s.length>=r){let i=s[r-1];return _("info",`Using fallback array index for episode ${r}: ${i.episodeTitle}`),i}for(let i of s)if(i.episodeNumber&&parseInt(i.episodeNumber,10)===r)return _("info",`Found episode by episodeNumber: ${i.episodeTitle} (episodeNumber: ${i.episodeNumber})`),i;return null}async function Mmr(t,e,r,n,s,i,a,o,c=null){let u=O.aiBaseUrl,l=O.aiModel,d=O.aiApiKey,f=O.aiMatchPrompt;if(!O.aiValid||!f)return _("warn","AI configuration is incomplete, falling back to normal matching"),{resEpisode:null,resAnime:null};let p=new df({apiKey:d,baseURL:u,model:l,systemPrompt:f}),m={title:s,season:t,episode:e,year:r,dynamicPlatformOrder:a,preferAnimeId:o,animes:n.animes.map(h=>{let A=h.animeTitle||"",g=A.match(/^(.*?)\(\d{4}\)/),b=g?g[1].trim():A.split("(")[0].trim();return{animeId:h.animeId,animeTitle:b,aliases:h.aliases||[],type:h.type,year:h.startDate?h.startDate.slice(0,4):null,episodeCount:h.episodeCount,source:h.source}})};try{let h=JSON.stringify(m,null,2),A=await p.ask(h);_("info",`AI match response: ${A}`);let g;try{let I=A.match(/```json\s*([\s\S]*?)\s*```|```([\s\S]*?)\s*```|({[\s\S]*})/),R=I?I[1]||I[2]||I[3]:A;g=JSON.parse(R.trim())}catch(I){return _("error",`Failed to parse AI response: ${I.message}`),{resEpisode:null,resAnime:null}}let b=g.animeIndex;if(b==null)return{resEpisode:null,resAnime:null};let y=n.animes[b];if(!y)return _("error",`AI returned invalid anime index: ${b}`),{resEpisode:null,resAnime:null};let x=Fg(y,c);if(!x?.success||!x?.bangumi?.episodes)return{resEpisode:null,resAnime:null};let v=null;if(t&&e){let I=x.bangumi.episodes.filter(w=>!O.episodeTitleFilter.test(w.episodeTitle)),R=$g(I);_("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",R.map(w=>w.episodeTitle)),v=m4(R,e,e)}else x.bangumi.episodes.length>0&&(v=x.bangumi.episodes[0]);return{resEpisode:v,resAnime:y}}catch(h){return _("error",`AI matching failed: ${h.message}`),{resEpisode:null,resAnime:null}}}function Fg(t,e=null){let r=ig(t?.bangumiId,e,t?.source)||ig(t?.animeId,e,t?.source);return r?$ie(r,t?.bangumiId||t?.animeId||""):(_("warn",`[matchAnime] Missing request detail snapshot for anime ${t?.animeId??t?.bangumiId}`),null)}function vst(t,e,r,n,s){let i=String(e),a=t[i].match(/^([^:]+):(.+)$/),o=Number(a?.[1])||0,c=a?.[2]||"",u=r-o,l=n.findIndex(d=>d.episodeTitle===c);return l!==-1&&(s=l+u+1,_("info",`Applying offset "${t[i]}" for S${e}E${r} -> ${s}`)),s}function Ist(t,e,r,n,s,i,a){if(!n||!s)return{resEpisode:null,resAnime:null};_("info",`[system] [Spillover] \u5F53\u524D\u5B63\u96C6\u5339\u914D\u7B56\u7565\u5931\u8D25 (S${n}E${s})\uFF0C\u6B63\u5728\u8FDB\u884C\u8DE8\u5B63\u96C6\u6570\u6620\u5C04\u5339\u914D...`);let o=Fr(e),c=new Map;for(let f of t.animes){let p=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&p.push(...f.aliases);let m=!1;for(let A of p)if(A&&Fr(A).includes(o)){if(!f4(f,r))continue;m=!0;break}if(!m)continue;let h=null;for(let A of p){if(!A)continue;let g=Ct(A).season;if(g!==null){h=g;break}}if(h===null&&(h=1),!c.has(h)){let A=Fg(f,a);if(A?.success&&A?.bangumi?.episodes){let g=A.bangumi.episodes.filter(y=>!O.episodeTitleFilter.test(y.episodeTitle)),b=$g(g);b.length>0&&c.set(h,{anime:f,episodes:b,actualPlatform:p4(f.animeTitle)||f.source})}}}let u=s,l=n,d={anime:null,episode:null,score:0};for(;c.has(l);){let f=c.get(l),p=f.episodes,m=null;for(let h of p)if(uf(h.episodeTitle)===s){m=h;break}if(m){if(i&&jf(rg(m.episodeTitle),i)===0)break;_("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u7EDD\u5BF9\u6807\u9898\u6570\u5B57) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${m.episodeTitle}`),d={anime:f.anime,episode:m,score:i?jf(f.actualPlatform,i):1};break}if(u<=p.length){let h=p[u-1];if(i&&jf(rg(h.episodeTitle),i)===0)break;_("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u76F8\u5BF9\u6392\u4F4D\u8BA1\u7B97) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${h.episodeTitle}`),d={anime:f.anime,episode:h,score:i?jf(f.actualPlatform,i):1};break}_("info",`[system] [Spillover] S${l} \u5171\u6709 ${p.length} \u96C6(\u5DF2\u8FC7\u6EE4\u756A\u5916)\uFF0C\u5269\u4F59\u76EE\u6807\u96C6\u6570\u4E3A ${u}\uFF0C\u6620\u5C04\u81F3 S${l+1} \u7EE7\u7EED\u67E5\u627E`),u-=p.length,l++}return{resEpisode:d.episode,resAnime:d.anime}}async function Wmr(t,e,r,n,s,i,a,o,c,u=null){let l={anime:null,episode:null,score:-9999},d=Fr(s);for(let f of n.animes){if(O.rememberLastSelect&&o&&String(f.bangumiId)!==String(o)&&String(f.animeId)!==String(o))continue;let m=!1,h=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&h.push(...f.aliases);for(let y of h)if(y){if(t&&e){if(Fr(y).includes(d)){if(!f4(f,r)){_("info",`Year mismatch: anime year ${W0(f.animeTitle)} vs query year ${r}`);continue}let x=O.rememberLastSelect&&o&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o)),v={...f,animeTitle:y};if(Lmr(v,s,t)||x){m=!0;break}}}else if(y.split("(")[0].trim()===s){if(!f4(f,r)){_("info",`Year mismatch: anime year ${W0(f.animeTitle)} vs query year ${r}`);continue}m=!0;break}}if(!m)continue;let A=Fg(f,u);if(!A?.success||!A?.bangumi?.episodes)continue;_("info","\u5224\u65AD\u5267\u96C6",`Anime: ${f.animeTitle}`),_("info",A);let g=null,b=O.rememberLastSelect&&o!=null&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o));if(t&&e){let y=A.bangumi.episodes.filter(I=>!O.episodeTitleFilter.test(I.episodeTitle)),x=$g(y);_("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",x.map(I=>I.episodeTitle));let v=e;c&&c[String(t)]!==void 0&&(v=vst(c,t,e,x,v)),g=m4(x,e,v,a),!g&&b&&(_("info",`[system] [Match] \u4F18\u9009\u5267\u96C6\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u96C6\u6570`),g=m4(x,e,v,null))}else if(A.bangumi.episodes.length>0)if(a){let y=A.bangumi.episodes.find(x=>{let v=rg(x.episodeTitle);return jf(v,a)>0});y?g=y:b&&(_("info",`[system] [Match] \u4F18\u9009\u7535\u5F71\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u8D44\u6E90`),g=A.bangumi.episodes[0])}else g=A.bangumi.episodes[0];if(g){let y=p4(f.animeTitle)||f.source,x=0;if(a?x=jf(y,a):x=1,b&&(x+=9999),x>l.score&&(l={anime:f,episode:g,score:x}),!a||b)break}}if(!l.episode&&t&&e){let f=Ist(n,s,r,t,e,a,u);f.resEpisode&&(l={episode:f.resEpisode,anime:f.resAnime,score:a?jf(p4(f.resAnime.animeTitle)||f.resAnime.source,a):1})}return{resEpisode:l.episode,resAnime:l.anime}}async function $mr(t,e,r,n,s,i,a,o,c,u=null){for(let d of t.animes){if(s&&!f4(d,s)){_("info",`Fallback: Year mismatch: anime year ${W0(d.animeTitle)} vs query year ${s}`);continue}let f=Fg(d,u);if(!(!f?.success||!f?.bangumi?.episodes)){if(_("info",f),r&&n){let p=f.bangumi.episodes.filter(g=>!O.episodeTitleFilter.test(g.episodeTitle)),m=$g(p);_("info","[system] [LogVar-API] \u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",m.map(g=>g.episodeTitle));let h=n;c&&c[String(r)]!==void 0&&(h=vst(c,r,n,m,h));let A=m4(m,n,h,null);if(A){a=A,o=d;break}}else if(f.bangumi.episodes.length>0){a=f.bangumi.episodes[0],o=d;break}}}let l=!1;if(!a&&r&&n){let d=Ist(t,i,s,r,n,null,u);d.resEpisode&&(a=d.resEpisode,o=d.resAnime,l=!0)}return{resEpisode:a,resAnime:o,isSpillover:l}}async function Fmr(t){let e=/^(.+?)[.\s]+S(\d+)E(\d+)/i,r=t.match(e),n,s,i,a;if(r){n=r[1].trim(),s=parseInt(r[2],10),i=parseInt(r[3],10);let o=t.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);o&&(a=parseInt(o[1],10));let c=n.match(/^[\u4e00-\u9fa5·]+[^.\r\n]*/);if(c)n=c[0];else if(/^[A-Za-z0-9]/.test(n)){let u=n.match(/^([A-Za-z0-9.&\s]+?)(?=\.\d{4}|$)/);u&&(n=u[1].trim().replace(/[._]/g," "))}else{let u=n.split(/\.(?:19|20)\d{2}|2160p|1080p|720p|H265|iPhone/)[0],l=u.match(/^[\u4e00-\u9fa5·]+/);n=l?l[0]:u.trim()}n=n.replace(/\.\d{4}$/i,"").trim()}else{let o=/^([^.\s]+(?:[.\s][^.\s]+)*?)(?:[.\s](?:\d{4}|(?:19|20)\d{2}|\d{3,4}p|S\d+|E\d+|WEB|BluRay|Blu-ray|HDTV|DVDRip|BDRip|x264|x265|H\.?264|H\.?265|AAC|AC3|DDP|TrueHD|DTS|10bit|HDR|60FPS))/i,c=t.match(o);n=c?c[1].replace(/[._]/g," ").trim():t,s=null,i=null;let u=t.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);u&&(a=parseInt(u[1],10))}return O.titleToChinese&&(n=await hnt(n.replace("."," "),s,i)),_("info","[system] [Match] Parsed title, season, episode, year",{title:n,season:s,episode:i,year:a}),{title:n,season:s,episode:i,year:a}}function Cst(t,e,r,n){let s=new URL(t),i=s.pathname.replace(/\/(?:match|search\/episodes)$/,"");return s.pathname=`${i}/search/anime`,s.search="",s.searchParams.set("keyword",e||""),r!==void 0&&s.searchParams.set("season",r||""),n!==void 0&&s.searchParams.set("episode",n||""),s}async function Tst(t,e,r){try{let n=await e.json();if(!n)return _("error","[system] [Match] Request body is empty"),Le({errorCode:400,success:!1,errorMessage:"Empty request body"},400);let{fileName:s}=n;if(!s)return _("error","[system] [Match] Missing fileName parameter in request body"),Le({errorCode:400,success:!1,errorMessage:"Missing fileName parameter"},400);let{cleanFileName:i,preferredPlatform:a}=k8e(s);_("info",`[system] [Match] Processing anime match for query: ${s}`),_("info",`[system] [Match] Parsed cleanFileName: ${i}, preferredPlatform: ${a}`);let{title:o,season:c,episode:u,year:l}=await Fmr(i);if(O.titleMappingTable&&O.titleMappingTable.size>0){let N=O.titleMappingTable.get(o);N&&(o=N,_("info",`[system] [Match] Title mapped from original: ${t.searchParams.get("keyword")} to: ${o}`))}if(O.animeTitleSimplified){let N=Qt(o);_("info",`[system] [Match] matchAnime converted traditional to simplified: ${o} -> ${N}`),o=N}let[d,f,p]=iz(o,c);_("info",`[system] [Match] prefer animeId: ${d} from ${f}`);let m=D8e(a),h=m.length>0?m[0]:null,A=new Map,g=Cst(e.url,o,c,u),y=await(await nE(g,d,f,A,h)).json();_("info",`[system] [Match] searchData: ${y.animes}`);let x,v,I=!1,R={errorCode:0,success:!0,errorMessage:"",isMatched:!1,matches:[]};_("info",`[system] [Match] Original platformOrderArr: ${O.platformOrderArr}`),_("info",`[system] [Match] Dynamic platformOrder: ${m}`),_("info",`[system] [Match] Preferred platform: ${a||"none"}`);let w=await Mmr(c,u,l,y,o,e,m,d,A);if(w.resAnime&&w.resEpisode)x=w.resAnime,v=w.resEpisode,R.isMatched=!0,_("info",`[system] [Match] AI match found: ${x.animeTitle}; episode: ${v.episodeTitle}`);else{for(let N of m){let P=await Wmr(c,u,l,y,o,e,N,d,p,A);if(v=P.resEpisode,x=P.resAnime,x){R.isMatched=!0,_("info",`[system] [Match] Found match with platform: ${N||"default"}`);break}}if(!x){let N=await $mr(y,e,c,u,l,o,v,x,p,A);v=N.resEpisode,x=N.resAnime,I=N.isSpillover}}return v&&(R.isMatched=!0,r&&!I&&ZV(r,{title:o,season:c,episode:u,episodeId:v.episodeId}),R.matches=[BB.fromJson({episodeId:v.episodeId,animeId:x.animeId,animeTitle:x.animeTitle,episodeTitle:v.episodeTitle,type:x.type,typeDescription:x.typeDescription,shift:0,imageUrl:x.imageUrl})]),_("info",`[system] [Match] resMatchData: ${R}`),Le(R)}catch(n){return _("error",`[system] [Match] Failed to parse request body: ${n.message}`),Le({errorCode:400,success:!1,errorMessage:"Invalid JSON body"},400)}}async function wst(t){let e=t.searchParams.get("anime"),r=t.searchParams.get("episode")||"";if(O.animeTitleSimplified){let c=Qt(e);_("info",`[system] [Episodes] searchEpisodes converted traditional to simplified: ${e} -> ${c}`),e=c}if(_("info",`[system] [Episodes] Search episodes with anime: ${e}, episode: ${r}`),!e)return _("error","[system] [Episodes] Missing anime parameter"),Le({errorCode:400,success:!1,errorMessage:"Missing anime parameter"},400);let n=Cst(t,e),s=new Map,a=await(await nE(n,null,null,s)).json();if(!a.success||!a.animes||a.animes.length===0)return _("info","[system] [Episodes] No anime found for the given title"),Le({errorCode:0,success:!0,errorMessage:"",hasMore:!1,animes:[]});let o=[];for(let c of a.animes){let u=sg(c.bangumiId,s,c.source)||sg(c.animeId,s,c.source),l=null;if(u)l=$ie(u,c.bangumiId);else{let d=new URL(`/bangumi/${c.bangumiId}`,t.origin);l=await(await Wie(d.pathname)).json()}if(l.success&&l.bangumi&&l.bangumi.episodes){let d=l.bangumi.episodes;if(r){if(r==="movie")d=l.bangumi.episodes.filter(f=>c.typeDescription&&(c.typeDescription.includes("\u7535\u5F71")||c.typeDescription.includes("\u5267\u573A\u7248")||f.episodeTitle.toLowerCase().includes("movie")||f.episodeTitle.includes("\u5267\u573A\u7248")));else if(/^\d+$/.test(r)){let f=parseInt(r);d=l.bangumi.episodes.filter(p=>parseInt(p.episodeNumber)===f)}}d.length>0&&o.push(MB.fromJson({animeId:c.animeId,animeTitle:c.animeTitle,type:c.type,typeDescription:c.typeDescription,episodes:d.map(f=>({episodeId:f.episodeId,episodeTitle:f.episodeTitle}))}))}}return _("info",`[system] [Episodes] Found ${o.length} animes with filtered episodes`),Le({errorCode:0,success:!0,errorMessage:"",animes:o})}async function Wie(t,e=null,r=null){let n=t.split("/").pop(),s=ig(n,e,r)||sg(n);return s?Le($ie(s,n)):(_("error",`[system] [Bangumi] Anime with ID ${n} not found`),Le({errorCode:404,success:!1,errorMessage:"Anime not found",bangumi:null},404))}function $ie(t,e=""){_("info",`[system] [Bangumi] Fetched details for anime ID: ${e||t.bangumiId}`);let r=[];for(let s=0;s!O.episodeTitleFilter.test(s.episodeTitle)),_("info",`[system] [getBangumi] Episode filter enabled. Filtered episodes: ${r.length}/${t.links.length}`),r.length===0)return _("warn",`[system] [getBangumi] No valid episodes after filtering for anime ID ${e||t.bangumiId}`),{errorCode:404,success:!1,errorMessage:"No valid episodes after filtering",bangumi:null};r=r.map((s,i)=>({...s,episodeNumber:`${i+1}`}))}return{errorCode:0,success:!0,errorMessage:"",bangumi:WB.fromJson({animeId:t.animeId,bangumiId:t.bangumiId,animeTitle:t.animeTitle,imageUrl:t.imageUrl,isOnAir:!0,airDay:1,isFavorited:t.isFavorited,rating:t.rating,type:t.type,typeDescription:t.typeDescription,seasons:[{id:`season-${t.animeId}`,airDate:t.startDate,name:"Season 1",episodeCount:t.episodeCount}],episodes:r})}}async function Umr(t,e,r){let n=t.split(Cu),s=n.map(m=>{let h=m.indexOf(":");if(h===-1)return{realId:"",logicalSource:"",sourceLabel:""};let A=m.substring(0,h),g=m.substring(h+1);return A!=="hanjutv"?{realId:g,logicalSource:A,sourceLabel:A}:{realId:g,logicalSource:"hanjutv",sourceLabel:s4(g)}}),i=s.map(m=>m.logicalSource).filter(Boolean),a=s.map(m=>m.realId),o=s.map(m=>m.sourceLabel).filter(Boolean).join("\uFF06");_("info",`[Merge] \u5F00\u59CB\u83B7\u53D6 [${o}] \u805A\u5408\u5F39\u5E55...`);let c=lf(t);if(c)return _("info",`[Merge] \u547D\u4E2D\u7F13\u5B58 [${o}]\uFF0C\u8FD4\u56DE ${c.length} \u6761`),c;let u={},l=s.map(async m=>{let h=m.logicalSource,A=m.sourceLabel||m.logicalSource,g=m.realId;if(!h||!g)return[];let b=`${h}:${g}`;if(u4.has(b)){_("info",`[Merge] \u590D\u7528\u6B63\u5728\u8FDB\u884C\u7684\u8BF7\u6C42: ${b}`);try{return await u4.get(b)||[]}catch{return[]}}let y=be.run(In(h),async()=>{let x=null;if(h==="renren"?x=uw:h==="hanjutv"?x=lw:h==="bahamut"?x=dw:h==="dandan"?x=fw:h==="tencent"?x=V0:h==="youku"?x=z0:h==="iqiyi"?x=Y0:h==="imgo"?x=kg:h==="bilibili"?x=Tu:h==="migu"?x=J0:h==="sohu"?x=Dg:h==="leshi"?x=Bg:h==="xigua"?x=Lg:h==="maiduidui"?x=Mg:h==="aiyifan"?x=Wg:h==="animeko"&&(x=pw),x)try{let v=await x.getEpisodeDanmu(g,n),I=x.formatComments(v);return _("info",`[${A}] \u83B7\u53D6\u5F39\u5E55 ${I.length} \u6761`),I&&Array.isArray(I)&&I.forEach(R=>{R._sourceLabel||(R._sourceLabel=A)}),u[A]=I.length,I}catch(v){return _("error",`[Merge] \u83B7\u53D6 ${A} \u5931\u8D25: ${v.message}`),u[A]=0,[]}return[]});u4.set(b,y);try{return await y}finally{u4.delete(b)}}),d=await Promise.all(l);if(knt(d,i,a),O.danmuOffsetRules?.length>0&&e&&r){let[,,m]=UB(r);if(m){let{baseTitle:h,season:A,episode:g}=YV(e,m);A||=1,g||=FB(r)+1;let b=`S${A.toString().padStart(2,"0")}`,y=`E${g.toString().padStart(2,"0")}`;for(let x=0;x ${i[x]} (${h}/${b}/${y})${I?.usePercent?`, duration=${N}s`:""}`),d[x]=EV(v,R,{usePercent:I?.usePercent,videoDuration:N})}}}}let f=[];d.forEach(m=>{f=Pnt(f,m)});let p=Object.entries(u).map(([m,h])=>`${m}: ${h}`).join(", ");return _("info",`[Merge] \u805A\u5408\u539F\u59CB\u6570\u636E\u5B8C\u6210: \u603B\u8BA1 ${f.length} \u6761 (${p})`),BI(f,o)}async function Fie(t,e,r,n,s=!1){let i=parseInt(t.split("/").pop()),a=rz(i),o=DI(i),c=tz(i),u=c?(c.match(/【(.*?)】/)||[null])[0]?.replace(/[【】]/g,""):null,l=Sst(e,s);if(_("info","[system] [LogVar-API] comment url...",o),_("info","[system] [LogVar-API] comment title...",c),_("info","[system] [LogVar-API] comment platform...",u),!o)return _("error",`[system] [LogVar-API] Comment with ID ${i} not found`),Le({count:0,comments:[]},404);_("info",`[system] [LogVar-API] Fetched comment ID: ${i}`);let d=lf(o);if(d!==null){let y=l4({count:d.length,comments:d},l?await d4(o):null);return ag(y,e)}_("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",o);let f=[],p=l?d4(o):null;if(o&&o.includes(Cu))f=await Umr(o,a,i);else{o.includes(".qq.com")?f=await be.run("tencent",()=>V0.getComments(o,u,r)):o.includes(".iqiyi.com")?f=await be.run("iqiyi",()=>Y0.getComments(o,u,r)):o.includes(".mgtv.com")?f=await be.run("mango",()=>kg.getComments(o,u,r)):o.includes(".bilibili.com")||o.includes("b23.tv")?(o.includes("b23.tv")&&(o=await be.run("bilibili",()=>Tu.resolveB23Link(o))),f=await be.run("bilibili",()=>Tu.getComments(o,u,r))):o.includes(".youku.com")?f=await be.run("youku",()=>z0.getComments(o,u,r)):o.includes(".miguvideo.com")?f=await be.run("migu",()=>J0.getComments(o,u,r)):o.includes(".sohu.com")?f=await be.run("sohu",()=>Dg.getComments(o,u,r)):o.includes(".le.com")?f=await be.run("leshi",()=>Bg.getComments(o,u,r)):o.includes(".douyin.com")||o.includes(".ixigua.com")?f=await be.run("xigua",()=>Lg.getComments(o,u,r)):o.includes(".mddcloud.com.cn")?f=await be.run("maiduidui",()=>Mg.getComments(o,u,r)):o.includes(".yfsp.tv")&&(f=await be.run("aiyifan",()=>Wg.getComments(o,u,r)));let y=/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i;y.test(o)||(u==="renren"?f=await be.run("renren",()=>uw.getComments(o,u,r)):u==="hanjutv"?f=await be.run("hanjutv",()=>lw.getComments(o,u,r)):u==="bahamut"?f=await be.run("bahamut",()=>dw.getComments(o,u,r)):u==="dandan"?f=await be.run("dandan",()=>fw.getComments(o,u,r)):u==="custom"?f=await be.run("custom",()=>h4.getComments(o,u,r)):u==="animeko"&&(f=await be.run("animeko",()=>pw.getComments(o,u,r)))),(!f||f.length===0)&&y.test(o)&&(f=await be.run("other",()=>Bie.getComments(o,"other_server",r)))}let[m,h,A,g]=UB(i);if(m&&h){let y=null,x=null,v=null;if(n){let R=ez(n);R&&R.title&&R.season&&R.episode&&A&&(y=R.title,x=R.season,v=`${R.episode}:${A}`,_("info",`[system] [LogVar-API] Calculated episode offset for IP ${n}: Query E${R.episode}, Selected ${A} -> Offset ${v} (Season ${x})`))}_("info",`[system] [LogVar-API] animeTitle\uFF1A${a}; lastTitle\uFF1A${y}; titleMatches\uFF1A${yt(a,y)}`),(yt(a,y)||Array.isArray(g)&&g.some(R=>yt(R,y)))&&(_("info","[system] [LogVar-API] excute setPreferByAnimeId"),sz(m,h,x,v)),O.localCacheValid&&m&&HB("lastSelectMap",JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.redisValid&&m&&jV("lastSelectMap",O.lastSelectMap).catch(R=>_("error","[system] [LogVar-API] Redis set error",R)),O.localRedisValid&&m&&VL("lastSelectMap",O.lastSelectMap)}if(a&&A&&O.danmuOffsetRules?.length>0&&!(o&&o.includes(Cu))){let{baseTitle:y,season:x,episode:v}=YV(a,A);x||=1,v||=FB(i)+1;let I=`S${x.toString().padStart(2,"0")}`,R=`E${v.toString().padStart(2,"0")}`,w=bV(O.danmuOffsetRules,{anime:y,season:I,episode:R,source:h}),N=w?.offset||0;if(N!==0){let P=w?.usePercent?await Mie(o):0;_("info",`[system] [LogVar-API] Applying danmu offset: ${N}${w?.usePercent?"%":"s"} for ${y}/${I}/${R}${w?.usePercent?`, duration=${P}s`:""}`),f=EV(f,N,{usePercent:w?.usePercent,videoDuration:P})}}r||(f&&f.comments&&(f=f.comments),Array.isArray(f)||(f=[]),f.length>0&&kI(o,f));let b=l4({count:f.length,comments:f},p?await p:null);return ag(b,e)}async function Uie(t,e,r,n=!1){try{if(!t||typeof t!="string")return _("error","[system] [LogVar-API] Missing or invalid url parameter"),Le({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);if(t=t.trim(),!t.startsWith("http"))return _("error","[system] [LogVar-API] Invalid url format, must start with http or https"),Le({errorCode:400,success:!1,errorMessage:"Invalid url format, must start with http or https",count:0,comments:[]},400);_("info",`[system] [LogVar-API] Processing comment request for URL: ${t}`);let s=t,i=Sst(e,n),a=lf(s);if(a!==null){let l=l4({errorCode:0,success:!0,errorMessage:"",count:a.length,comments:a},i?await d4(s):null);return ag(l,e)}_("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",s);let o=[],c=i?d4(s):null;s.includes(".qq.com")?o=await be.run("tencent",()=>V0.getComments(s,"qq",r)):s.includes(".iqiyi.com")?o=await be.run("iqiyi",()=>Y0.getComments(s,"qiyi",r)):s.includes(".mgtv.com")?o=await be.run("mango",()=>kg.getComments(s,"imgo",r)):s.includes(".bilibili.com")||s.includes("b23.tv")?(s.includes("b23.tv")&&(s=await be.run("bilibili",()=>Tu.resolveB23Link(s))),o=await be.run("bilibili",()=>Tu.getComments(s,"bilibili1",r))):s.includes(".youku.com")?o=await be.run("youku",()=>z0.getComments(s,"youku",r)):s.includes(".miguvideo.com")?o=await be.run("migu",()=>J0.getComments(s,"migu",r)):s.includes(".sohu.com")?o=await be.run("sohu",()=>Dg.getComments(s,"sohu",r)):s.includes(".le.com")?o=await be.run("leshi",()=>Bg.getComments(s,"leshi",r)):s.includes(".douyin.com")||s.includes(".ixigua.com")?o=await be.run("xigua",()=>Lg.getComments(s,"xigua",r)):s.includes(".mddcloud.com.cn")?o=await be.run("maiduidui",()=>Mg.getComments(s,"maiduidui",r)):s.includes(".yfsp.tv")?o=await be.run("aiyifan",()=>Wg.getComments(s,"aiyifan",r)):/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i.test(s)&&(o=await be.run("other",()=>Bie.getComments(s,"other_server",r))),_("info",`[system] [LogVar-API] Successfully fetched ${o.length} comments from URL`),o.length>0&&kI(s,o);let u=l4({errorCode:0,success:!0,errorMessage:"",count:o.length,comments:o},c?await c:null);return ag(u,e)}catch(s){return _("error",`[system] [LogVar-API] Failed to process comment by URL request: ${s.message}`),Le({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}async function Rst(t,e){try{let r=t.url,n=t.type;if(!r||typeof r!="string")return _("error","[system] [SegmentComment] Missing or invalid url parameter"),Le({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);r=r.trim(),_("info",`[system] [SegmentComment] Processing segment comment request for URL: ${r}`);let s=lf(r);if(s!==null){let o={errorCode:0,success:!0,errorMessage:"",count:s.length,comments:s};return ag(o,e)}_("info",`[system] [SegmentComment] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5206\u6BB5\u5F39\u5E55... URL: ${r}`);let i=[];n==="qq"?i=await be.run("tencent",()=>V0.getSegmentComments(t)):n==="qiyi"?i=await be.run("iqiyi",()=>Y0.getSegmentComments(t)):n==="imgo"?i=await be.run("mango",()=>kg.getSegmentComments(t)):n==="bilibili1"?i=await be.run("bilibili",()=>Tu.getSegmentComments(t)):n==="youku"?i=await be.run("youku",()=>z0.getSegmentComments(t)):n==="migu"?i=await be.run("migu",()=>J0.getSegmentComments(t)):n==="sohu"?i=await be.run("sohu",()=>Dg.getSegmentComments(t)):n==="leshi"?i=await be.run("leshi",()=>Bg.getSegmentComments(t)):n==="xigua"?i=await be.run("xigua",()=>Lg.getSegmentComments(t)):n==="maiduidui"?i=await be.run("maiduidui",()=>Mg.getSegmentComments(t)):n==="aiyifan"?i=await be.run("aiyifan",()=>Wg.getSegmentComments(t)):n==="hanjutv"?i=await be.run("hanjutv",()=>lw.getSegmentComments(t)):n==="bahamut"?i=await be.run("bahamut",()=>dw.getSegmentComments(t)):n==="renren"?i=await be.run("renren",()=>uw.getSegmentComments(t)):n==="dandan"?i=await be.run("dandan",()=>fw.getSegmentComments(t)):n==="animeko"?i=await be.run("animeko",()=>pw.getSegmentComments(t)):n==="custom"?i=await be.run("custom",()=>h4.getSegmentComments(t)):n==="other_server"&&(i=await be.run("other",()=>Bie.getSegmentComments(t))),_("info",`[system] [SegmentComment] Successfully fetched ${i.length} segment comments from URL`),i.length>0&&kI(r,i);let a={errorCode:0,success:!0,errorMessage:"",count:i.length,comments:i};return ag(a,e)}catch(r){return _("error",`[system] [SegmentComment] Failed to process segment comment request: ${r.message}`),Le({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}Ot();ir();_t();so();hn();var qmr=[[/[\(\[(【]\s*(19|20)\d{2}\s*[\)\])】]/g," "],[/\b(19|20)\d{2}\b/g," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps)\b/gi," "],[/[_.-]+/g," "]],jmr=[[/\[[^\]]*\]/g," "],[/[【((][^】))]*[】))]/g," "],[/\.(mp4|mkv|avi|rmvb|ts|flv|mov|m4v)$/gi," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps|aac|flac|dts)\b/gi," "],[/[_~.-]+/g," "]],Hmr=[{pattern:/[Ss]\d{1,2}\s*[Ee](\d{1,4})/,group:1},{pattern:/第\s*([零一二三四五六七八九十百零〇两\d]+)\s*[é›†æœŸè¯ç« å›žæ®µç¯‡]/,group:1,chinese:!0},{pattern:/[Ee][Pp]?\.?\s*(\d{1,4})/,group:1},{pattern:/[Ee](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/Episode\s*(\d{1,4})/i,group:1},{pattern:/(?:正在)?播放[::]\s*(\d{1,4})/,group:1},{pattern:/(?:第\s*)?[零一二三四五六七八九十百\d]+\s*å­£\s*[||]\s*(\d{1,4})/,group:1},{pattern:/[\[【\((](\d{1,4})[\]】\))]/,group:1},{pattern:/@@@(\d{1,4})/,group:1},{pattern:/(?:^|[\s_\-])(\d{1,4})x(?:[\s_\-]|$)/i,group:1},{pattern:/\s(\d{1,4})\.(?:mp4|mkv|avi|mov|mp3|1080|720|4k|2k)/i,group:1},{pattern:/[_\-](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/\s(\d{1,4})\s/,group:1},{pattern:/\s(\d{1,4})$/,group:1},{pattern:/^(\d{1,4})\s/,group:1},{pattern:/(\d{1,4})(?:\s|$)$/,group:1}],Qmr=[{pattern:/(\d{4})[.\-\/å¹´](\d{1,2})[.\-\/月](\d{1,2})/,type:"ymd"},{pattern:/(\d{4})(\d{2})(\d{2})/,type:"ymd_compact"}];function g4(t){let e=String(t||"").trim();if(!e)return"";if(O.animeTitleSimplified)try{e=Qt(e)}catch{}return Fr(e.toLowerCase())}function Nst(t){let e=String(t||"").replace(/\D/g,"");return e.length>=8?e.slice(0,8):""}function Gmr(t){let e=String(t||"");return qmr.forEach(([r,n])=>{e=e.replace(r,n)}),e}function Pst(t){let e=String(t||"");return jmr.forEach(([n,s],i)=>{e=e.replace(n,s)}),e.replace(/\s+/g," ").trim()}function Ost(t){if(!t)return null;let e=String(t);for(let{pattern:s,group:i,chinese:a}of Hmr){let o=e.match(s);if(o&&o[i]!==void 0){let c=o[i];if(a){let u=tg(c);if(u!==null&&!isNaN(u))return u}else{let u=parseInt(c,10);if(!isNaN(u)&&u>0&&u<1e4)return u}}}for(let{pattern:s,type:i}of Qmr){let a=e.match(s);if(a){if(i==="ymd"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}else if(i==="ymd_compact"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}}}let r=Pst(t),n=uf(r);return n!==null?n:null}function Kmr(t){let e=String(t||"").trim();if(!e)return[];let r=[],n=a=>{let o=Fr(String(a||"").trim());!o||r.includes(o)||r.push(o)};n(e);let s=Fr(Gmr(e)).trim();s&&s!==e&&n(s);let i=Fr(e.replace(/[\(\[(【].*$/,"")).trim();return i&&i!==e&&n(i),r.sort((a,o)=>a.length-o.length)}function Vmr(t){let e=new URL(t.url),r=e.pathname.replace(/\/+$/,""),n="/api/v2/",s="/danmaku",i="",a=r.indexOf(n);if(a>=0)i=r.slice(0,a);else{let o=r.indexOf(s);o>=0?i=r.slice(0,o):i=r}return`${e.origin}${i}`}async function zmr(t,e){if(e.method==="GET")return{name:t.searchParams.get("name")||"",episode:t.searchParams.get("episode")||""};try{let r=e.clone(),n=(r.headers.get("content-type")||"").toLowerCase();if(n.includes("application/json")){let i=await r.json();return{name:i?.name||"",episode:i?.episode||""}}if(n.includes("application/x-www-form-urlencoded")||n.includes("multipart/form-data")){let i=await r.formData();return{name:i.get("name")||"",episode:i.get("episode")||""}}let s=await r.text();if(s)try{let i=JSON.parse(s);return{name:i?.name||"",episode:i?.episode||""}}catch{let a=new URLSearchParams(s);return{name:a.get("name")||"",episode:a.get("episode")||""}}}catch(r){_("warn",`[system] [Fongmi] \u89E3\u6790\u8BF7\u6C42\u53C2\u6570\u5931\u8D25: ${r.message}`)}return{name:"",episode:""}}function Ymr(t,e,r,n){let s=Math.max(0,200-n),i=Pst(r),a=g4(i);if(!a)return s;let o=e?.episodeTitle||"",c=g4(o),u=g4(rg(o)),l=g4(t?.animeTitle||"");(c===a||u===a)&&(s+=1e4),(c.includes(a)||a.includes(c))&&(s+=4500),u&&(u.includes(a)||a.includes(u))&&(s+=2500);let d=Ost(i),f=Ost(o),p=parseInt(e?.episodeNumber||`${n+1}`,10);d!==null&&f!==null&&d===f&&(s+=7e3),d!==null&&Number.isFinite(p)&&d===p&&(s+=4e3);let m=Nst(i),h=Nst(o);return m&&h&&m===h&&(s+=9e3),m&&a.includes(m)&&(s+=800),l.includes("\u7EFC\u827A")&&m&&h&&(s+=1200),l.includes("\u7EFC\u827A")&&m&&!h&&d===null&&(s-=1500),s}function Jmr(t,e,r){let n=[];for(let s of t){let i=Fg(s,e);if(!i?.success||!i?.bangumi?.episodes?.length)continue;let a=i.bangumi.episodes;O.enableAnimeEpisodeFilter&&(a=a.filter(o=>!O.episodeTitleFilter.test(o.episodeTitle))),a=$g(a),a.forEach((o,c)=>{let u=`${r}/api/v2/comment/${encodeURIComponent(o.episodeId)}?format=xml`;n.push({anime:s,episode:o,index:c,commentUrl:u})})}return n}async function qie(t,e){let{name:r,episode:n}=await zmr(t,e);if(!r)return Le([],200);if(O.titleMappingTable&&O.titleMappingTable.size>0){let f=O.titleMappingTable.get(r);f&&(_("info",`[system] [Fongmi] Title mapped from original: ${r} to: ${f}`),r=f)}let s=new URL(t.toString()),i=new Map,a=Kmr(r),o=[];for(let f of a){s.searchParams.set("keyword",f);let m=await(await nE(s,null,null,i)).json();if(o=Array.isArray(m?.animes)?m.animes:[],o.length){f!==r&&_("info",`[system] [Fongmi] Search fallback hit: raw=${r}, keyword=${f}, episode=${n}`);break}}if(!o.length)return _("info",`[system] [Fongmi] No danmaku candidates for name=${r}, episode=${n}`),Le([],200);let c=Vmr(e),u=Jmr(o,i,c).map(f=>({...f,score:Ymr(f.anime,f.episode,n,f.index)})).sort((f,p)=>p.score-f.score),l=new Set,d=[];for(let f of u)if(!(!f?.commentUrl||l.has(f.commentUrl))&&(l.add(f.commentUrl),d.push({name:`${f.anime.animeTitle} - ${f.episode.episodeTitle}`,url:f.commentUrl}),d.length>=1e3))break;return _("info",`[system] [Fongmi] name=${r}, episode=${n}, candidates=${d.length}`),Le(d,200)}Ot();ir();Ot();var kst=` +

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

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

[\s\S]*?title="([^"]+)"/),h=m?m[1]:"",A=d.match(/([^<]+\/[^<]+\/\d{4})<\/p>/),y="",x="";if(b){let v=b[1].split("/");y=v[0]||"",x=v[2]||""}p&&h&&i.push({name:h,type:y,year:x,img:g,url:p})})}else return _("info","[Xigua] xiguaSearchresp: \u76F8\u5173\u89C6\u9891\u7684section \u4E0D\u5B58\u5728"),[];return _("info",`[Xigua] \u641C\u7D22\u627E\u5230 ${i.length} \u4E2A\u6709\u6548\u7ED3\u679C`),i}catch(r){return _("error","[Xigua] getXiguaAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let n=`https://m.ixigua.com/video/${e.split("/").pop()}`,s=await ge(n,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!s||!s.data)return _("info","[Xigua] getXiguaDetail: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),0;let i=s.data.match(/"duration"\s*:\s*([\d.]+)/);return i?parseFloat(i[1]):0}catch(r){return _("error","[Xigua] getXiguaDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r=`https://m.ixigua.com/video/${e}`,n=await ge(r,{headers:{"user-agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 15_0 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/17.5 Mobile/15A5370a Safari/602.1"}});if(!n||!n.data)return _("info","[Xigua] getXiguaEposides: \u8BF7\u6C42\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE"),[];let s=n.data.match(/"episodes_list"\s*:\s*(\[[\s\S]*?\})\s*\]/);if(s)try{let i=s[0].replace(/"episodes_list"\s*:\s*/,"");return JSON.parse(i).map(c=>({seq_num:c.seq_num,title:c.title||`\u7B2C${c.seq_num}\u96C6`,url:`https://m.ixigua.com/video/${c.gid}`,gid:c.gid,cover_image_url:c.cover_image_url}))}catch(i){_("error","[Xigua] \u89E3\u6790episodes_list\u5931\u8D25:",i)}else return _("info","[Xigua] getXiguaEposides: episodes_list \u4E0D\u5B58\u5728"),[]}catch(r){return _("error","[Xigua] getXiguaEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Xigua] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Xigua] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=l.url.split("/").pop(),f=await this.getEpisodes(d),p=[];for(let m of f){let h=m.title;p.push({name:h,url:m.url,title:`\u3010xigua\u3011 ${h}`})}if(p.length>0){let m={animeId:Yr(d),bangumiId:String(d),animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from xigua`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Pr(l.year),episodeCount:p.length,rating:0,isFavorited:!0,source:"xigua"};a.push(m),Lt({...m,links:p},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Xigua] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Xigua] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u897F\u74DC\u89C6\u9891\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Xigua] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=100,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...h)}else _("error",`[Xigua] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Xigua] \u897F\u74DC\u89C6\u9891: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Xigua] \u83B7\u53D6\u897F\u74DC\u89C6\u9891\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let r=e.split("/").pop(),n=await this.getDetail(e)*1e3;_("info","[Xigua] itemId:",r),_("info","[Xigua] duration:",n);let s=3e5,i=[];for(let a=0;a({cid:Number(r.danmaku_id),p:`${(r.offset_time/1e3).toFixed(2)},1,16777215,[xigua]`,m:r.text,t:Math.round(r.offset_time/1e3)}))}},yst=Die;Pt();St();ar();Is();$n();hn();hs();var kie=class extends wt{constructor(){super(),this.domain="https://mob.mddcloud.com.cn",this.headers={"user-agent":"Mdd/5.8.00 (Android+32+)","Content-Type":"application/json",version:"5.8.00",Referer:"mdd"}}getPlayload(e,r){let n=Date.now(),s=Ai(r,!1),i=`os:Android|version:5.8.00|action:${e}|time:${n}|appToken:|privateKey:e1be6b4cf4021b3d181170d1879a530a9e4130b69032144d5568abfd6cd6c1c2|data:${s}&`;return{channel:"1000",data:r,deviceNum:"853BDD7A1DC011F1C341455071C03AEB",deviceType:0,jsonSign:0,os:"Android",sign:Ls(i),sourceVersion:0,terminalType:"APP",thirdStatus:0,time:n,version:"5.8.00",visitorStatus:0}}extractByRegex(e){let r=e.match(/\/video\/([a-f0-9]+)\.html/i),n=e.match(/[?&]uuid=([a-f0-9]+)/i);return{vodUuid:r?r[1]:null,uuid:n?n[1]:null,success:!!(r&&n)}}async search(e){try{let r="/searchApi/search/getAllSearchResult4820.action",n=`${this.domain}${r}`,s={keyWord:e},i=await Vr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return _("info","[Maiduidui] \u641C\u7D22\u54CD\u5E94\u4E3A\u7A7A"),[];let a=typeof i.data=="string"?JSON.parse(i.data):i.data,o=[],c=a?.data;for(let u of c)if(u?.typeName==="\u5267\u96C6"||u?.typeName==="\u7535\u5F71"||u?.typeName==="\u7EFC\u827A")for(let l of u?.vodList)o.push({name:l.name,type:u.typeName,year:l.yearName,img:l.downImage,url:l.uuid});return _("info",`[Maiduidui] \u641C\u7D22\u627E\u5230 ${o.length} \u4E2A\u6709\u6548\u7ED3\u679C`),o}catch(r){return _("error","[Maiduidui] getMaiduiduiAnimes error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async getDetail(e){try{let r=this.extractByRegex(e),n=r.uuid,s=r.vodUuid,i="/api/vod/listVodSactions.action",a=`${this.domain}${i}`,o={hasIntroduction:0,vodUuid:s},c=await Vr(a,JSON.stringify(this.getPlayload(i,o)),{headers:this.headers});if(!c||!c.data)return _("info","[Maiduidui] \u83B7\u53D6\u8BE6\u60C5\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let u=typeof c.data=="string"?JSON.parse(c.data):c.data;for(let l of u?.data)if(l.uuid===n)return l.duration;return 0}catch(r){return _("error","[Maiduidui] getMaiduiduiDetail error:",{message:r.message,name:r.name,stack:r.stack}),0}}async getEpisodes(e){try{let r="/api/vod/listVodSactions.action",n=`${this.domain}${r}`,s={hasIntroduction:0,vodUuid:e},i=await Vr(n,JSON.stringify(this.getPlayload(r,s)),{headers:this.headers});if(!i||!i.data)return _("info","[Maiduidui] \u83B7\u53D6\u96C6\u4FE1\u606F\u54CD\u5E94\u4E3A\u7A7A"),[];let a=[];return(typeof i.data=="string"?JSON.parse(i.data):i.data)?.data.forEach(c=>{a.push({title:c.name,episodeId:c.uuid})}),a}catch(r){return _("error","[Maiduidui] getMaiduiduiEposides error:",{message:r.message,name:r.name,stack:r.stack}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Maiduidui] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.name,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.name).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Maiduidui] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.url),f=[];for(let p of d){let m=p.title;f.push({name:m,url:`https://www.mddcloud.com.cn/video/${l.url}.html?uuid=${p.episodeId}`,title:`\u3010maiduidui\u3011 ${m}`})}if(f.length>0){let p={animeId:Yr(l.url),bangumiId:l.url,animeTitle:`${l.name}(${l.year})\u3010${l.type}\u3011from maiduidui`,type:l.type,typeDescription:l.type,imageUrl:l.img,startDate:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"maiduidui"};a.push(p),Lt({...p,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Maiduidui] Error processing anime: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){_("info","[Maiduidui] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u57CB\u5806\u5806\u5F39\u5E55...",e);let r=await this.getEpisodeDanmuSegments(e);if(!r||!r.segmentList||r.segmentList.length===0)return[];let n=r.segmentList;_("info",`[Maiduidui] \u5F39\u5E55\u5206\u6BB5\u6570\u91CF: ${n.length}`);let s=20,i=[];for(let a=0;athis.getEpisodeSegmentDanmu(l)),u=await Promise.allSettled(c);for(let l=0;l0&&i.push(...h)}else _("error",`[Maiduidui] \u83B7\u53D6\u5F39\u5E55\u6BB5\u5931\u8D25 (${p}-${m}s):`,d.reason.message)}a+ssetTimeout(l,200))}return i.length===0?(_("info",`[Maiduidui] \u57CB\u5806\u5806: \u8BE5\u89C6\u9891\u6682\u65E0\u5F39\u5E55\u6570\u636E (vid=${e})`),[]):(ts(i),i)}async getEpisodeDanmuSegments(e){_("info","[Maiduidui] \u83B7\u53D6\u57CB\u5806\u5806\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e);let n=this.extractByRegex(e).uuid,s=await this.getDetail(e);_("info","[Maiduidui] uuid:",n),_("info","[Maiduidui] duration:",s);let i=60,a=[];for(let o=0;o{u.push(...f.barrageList)}),u}catch(r){return _("error","[Maiduidui] \u8BF7\u6C42\u5206\u7247\u5F39\u5E55\u5931\u8D25:",r),[]}}formatComments(e){return e.map(r=>({cid:Number(r.uuid),p:`${r.times.toFixed(2)},1,${gb(r.color.replace("#",""))},[maiduidui]`,m:r.content,t:r.times}))}},xst=kie;St();ar();Is();$n();hn();no();Pt();Pt();St();Is();ar();var Smr="https://www.yfsp.tv/",vmr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0 Safari/537.36",Cmr=60*1e3;function aw(t,e,r){if(t==null)return r;let n=e.split("."),s=t;for(let i=0;i({provider:"aiyifan",mediaId:i.contxt,title:i.title,type:i.atypeName,year:new Date(i.postTime).getFullYear(),imageUrl:i.imgPath||null,episodeCount:0}));return _("info",`[Aiyifan] \u641C\u7D22\u5B8C\u6210\uFF0C\u627E\u5230 ${s.length} \u4E2A\u7ED3\u679C`),s}async getEpisodes(e){_("info",`[Aiyifan] \u83B7\u53D6\u5267\u96C6\u8BE6\u60C5: ${e}`);let r=await this.getPlaylist(e);if(!r.length)return _("error","[Aiyifan] \u83B7\u53D6\u64AD\u653E\u5217\u8868\u5931\u8D25"),[];let n=r.map((s,i)=>({vid:s.key,id:s.id,title:s.name||`\u7B2C${i+1}\u96C6`,link:`${this.DOMAIN_API}/${e}?id=${s.key}`}));return _("info",`[Aiyifan] \u83B7\u53D6\u5230 ${n.length} \u4E2A\u5267\u96C6`),n}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return _("error","[Aiyifan] sourceAnimes is not a valid array"),[];let o=e.filter(l=>yt(l.title,r,i)),c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=Tt(d.title).season;return f===c||c===1&&f===null});l.length>0&&(o=l,_("info",`[Aiyifan] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=o.map(async l=>{try{let d=await this.getEpisodes(l.mediaId);if(d.length===0){_("info",`[Aiyifan] ${l.title} \u65E0\u5206\u96C6\uFF0C\u8DF3\u8FC7`);return}let f=d.map((h,A)=>({name:h.title||`${A+1}`,url:h.link,title:`\u3010aiyifan\u3011 ${h.title}`}));if(f.length===0)return;let m={animeId:Yr(l.mediaId),bangumiId:l.mediaId,animeTitle:`${l.title}(${l.year||"N/A"})\u3010${l.type}\u3011from aiyifan`,type:l.type,typeDescription:l.type,imageUrl:l.imageUrl,startDate:Pr(l.year),episodeCount:f.length,rating:0,isFavorited:!0,source:"aiyifan"};a.push(m),Lt({...m,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}catch(d){_("error",`[Aiyifan] \u5904\u7406 ${l.title} \u5931\u8D25:`,d.message)}});return await Promise.all(u),this.sortAndPushAnimesByYear(a,n),a}async getEpisodeDanmu(e){_("info",`[Aiyifan] \u83B7\u53D6\u5F39\u5E55: ${e}`);let r=this.extractEpisodeRequestKey(e),n=this.inflightDanmuRequests.get(r);if(n)return _("info",`[Aiyifan] \u590D\u7528\u8FDB\u884C\u4E2D\u7684\u5F39\u5E55\u8BF7\u6C42: ${r}`),await n;let s=(async()=>{let i=r,a=await this.getVideoInfo(i);if(!a)return _("error","[Aiyifan] \u83B7\u53D6\u89C6\u9891\u4FE1\u606F\u5931\u8D25"),[];let o=this.extractUniqueKey(a);if(!o)return _("error","[Aiyifan] \u672A\u83B7\u53D6\u5230uniqueKey"),[];let c=await this.fetchBarrage(o);return c.length===0?(_("info","[Aiyifan] \u672A\u83B7\u53D6\u5230\u5F39\u5E55"),[]):(c.sort((u,l)=>(u.second||0)-(l.second||0)),_("info",`[Aiyifan] \u83B7\u53D6\u5230 ${c.length} \u6761\u5F39\u5E55`),c)})();this.inflightDanmuRequests.set(r,s);try{return await s}finally{this.inflightDanmuRequests.delete(r)}}async getEpisodeDanmuSegments(e){let r=await this.getEpisodeDanmu(e),n=[{type:"aiyifan",segment_start:0,segment_end:Math.max(...r.map(s=>s.second||0),0),url:`${this.DANMU_API}?uniqueKey=${e}`}];return{type:"aiyifan",duration:Math.max(...r.map(s=>s.second||0),0),segmentList:n}}async getEpisodeSegmentDanmu(e){let r=e.url?.split("uniqueKey=")[1];return r?await this.getEpisodeDanmu(r):[]}formatComments(e){return e.map(r=>({p:`${r.second||0},${r.position===1?5:1},25,${gb(r.color.replace("#",""))},0,0,0,0`,m:r.contxt||r.content||"",like:r.good,...r})).map(r=>(O.danmuSimplifiedTraditional==="simplified"&&r.m&&(r.m=Gt(r.m)),r))}};Pt();St();ar();$n();no();hs();hn();var wc={danmu:null,subject:null},cw=new Map,Mmr=3*60*1e3,Wmr=100,uw=class extends wt{get headers(){return{"Content-Type":"application/json","User-Agent":`huangxd-/danmu_api/${O.version}(https://github.com/huangxd-/danmu_api)`}}_applyProxyForSearch(e){return O.makeProxyUrl(e)}_getDanmuServerPriority(){return new Date().getTimezoneOffset()===-480?["https://api.animeko.org","https://danmaku-global.myani.org","https://danmaku-cn.myani.org","https://s1.animeko.openani.org"]:["https://danmaku-global.myani.org","https://api.animeko.org","https://s1.animeko.openani.org","https://danmaku-cn.myani.org"]}_getSubjectServerPriority(){let e="https://api.bgm.tv",r="https://api.bangumi.lol",n=this._applyProxyForSearch(e),i=new Date().getTimezoneOffset()===-480?[{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"},{type:"V2",url:"https://s1.animeko.openani.org"}]:[{type:"V2",url:"https://danmaku-global.myani.org"},{type:"V2",url:"https://api.animeko.org"},{type:"V2",url:"https://s1.animeko.openani.org"},{type:"V2",url:"https://danmaku-cn.myani.org"}];return n!==e?[...i,{type:"V0",url:n},{type:"V0",url:r}]:[...i,{type:"V0",url:r},{type:"V0",url:e}]}async _fetchV0AllEpisodes(e,r){let n=[],s=0,i=200;try{for(;;){let a=`${e}/v0/episodes?subject_id=${r}&limit=${i}&offset=${s}`,o=await ge(a,{headers:this.headers,timeout:3e3});if(!o||!o.data||!Array.isArray(o.data.data)){s===0&&_("info",`[Animeko] Subject ${r} \u65E0\u5267\u96C6\u6570\u636E\u6216\u54CD\u5E94\u5F02\u5E38`);break}let c=o.data.data;if(c.length===0||(n=n.concat(c),c.length===i&&_("info",`[Animeko] ID:${r} \u6B63\u52A0\u8F7D\u66F4\u591A\u5267\u96C6 (\u5F53\u524D\u5DF2\u83B7: ${n.length})`),c.length1600){_("warn",`[Animeko] ID:${r} \u5267\u96C6\u6570\u91CF\u8D85\u8FC7\u5B89\u5168\u9650\u5236(1600)\uFF0C\u505C\u6B62\u7FFB\u9875`);break}}return n}catch(a){return _("error","[Animeko] V0\u5267\u96C6\u83B7\u53D6\u5F02\u5E38:",{message:a.message,id:r,offset:s}),[]}}async _fetchAnimekoSubject(e){let r=cw.get(e);if(r&&Date.now()-r.timestampa.url===s);(!s||i===-1)&&(i=0,s=n[0].url,wc.subject=s);for(let a=0;a(_("warn",`[Animeko] V0\u5173\u8054\u83B7\u53D6\u5F02\u5E38: ${d.message}`),null))]);(u&&u.length>0||l)&&(c={id:e},u&&u.length>0&&(c.episodes=u.map(d=>({episodeId:d.id,sort:d.sort,ep:d.ep,type:d.type===0?"MAIN":d.type===1?"SP":String(d.type),name:d.name,nameCn:d.name_cn,airdate:d.airdate}))),l&&l.data&&Array.isArray(l.data)&&(c.relations=l.data))}if(c){if(wc.subject!==o.url&&(_("info",`[Animeko] \u8BE6\u60C5\u8282\u70B9\u5065\u5EB7\u72B6\u6001\u66F4\u65B0: ${wc.subject} -> ${o.url}`),wc.subject=o.url),cw.set(e,{data:c,timestamp:Date.now()}),cw.size>Wmr){let u=cw.keys().next().value;cw.delete(u)}return c}_("warn",`[Animeko] \u8282\u70B9 ${o.url} \u8FD4\u56DE\u65E0\u6548\u6570\u636E`)}catch(c){_("warn",`[Animeko] \u8282\u70B9\u8BF7\u6C42\u5931\u8D25: ${o.url} - ${c.message}`)}}return _("warn","[Animeko] \u6240\u6709\u8BE6\u60C5\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u4F18\u5148\u7EA7\u9996\u4F4D"),wc.subject=n[0].url,null}async search(e){if(O.useBangumiData){let r=await Au(e,["bangumi"]);if(r.length>0){_("info",`[Animeko] Bangumi-Data \u672C\u5730\u547D\u4E2D ${r.length} \u6761\u6570\u636E\uFF08\u68C0\u7D22\u8BCD\uFF1A${e}\uFF09`);let n=r.map(s=>{let a=(s.titles.find(o=>o&&o.includes(e))||s.titles[1]||s.title)+(s.titleSuffix||"");return{id:parseInt(s.siteId),name:s.title,name_cn:a,imageUrl:"",date:s.begin,score:0,platform:s.typeStr,aliases:[...s.titles]}});if(n.length>1){let s=await this.checkRelationsAndModifyTitles(n);return _("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF08Bangumi-Data + \u5173\u7CFB\u68C0\u6D4B\uFF09\uFF0C\u5171\u627E\u5230 ${s.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(s)}return this.transformResults(n)}}try{let r=e.replace(/[._]/g," ").replace(/\s+/g," ").trim();_("info",`[Animeko] \u5F00\u59CB\u641C\u7D22 (V0): ${r}`);let n=[],s=0,i=20;for(;;){let o=`/v0/search/subjects?limit=${i}&offset=${s}`,c=`https://api.bgm.tv${o}`,u=`https://api.bangumi.lol${o}`,l=this._applyProxyForSearch(c),d=[];l!==c?d=[{id:"PROXY_OFFICIAL",url:l},{id:"MIRROR",url:u}]:d=[{id:"MIRROR",url:u},{id:"OFFICIAL",url:c}];let f={keyword:r,filter:{type:[2]}},p=null;for(let A of d)try{if(p=await Vr(A.url,JSON.stringify(f),{headers:this.headers,timeout:5e3}),p&&p.data){_("info",`[Animeko] \u641C\u7D22\u8282\u70B9 [${A.id}] \u8BF7\u6C42\u6210\u529F (offset: ${s})`);break}}catch(g){_("warn",`[Animeko] \u641C\u7D22\u8282\u70B9 [${A.id}] \u8BF7\u6C42\u5931\u8D25: ${g.message}`)}if(!p||!p.data){_("info",`[Animeko] \u641C\u7D22\u8BF7\u6C42\u6240\u6709\u8282\u70B9\u5747\u5931\u8D25\u6216\u65E0\u6570\u636E\u8FD4\u56DE (offset: ${s})`);break}let m=p.data.data||[];if(m.length===0)break;let h=this.filterSearchResults(m,e);if(h.length>0&&(n=n.concat(h)),h.length=60){_("warn","[Animeko] \u641C\u7D22\u7FFB\u9875\u8FBE\u5230\u5B89\u5168\u4E0A\u9650(60)\uFF0C\u5F3A\u5236\u505C\u6B62");break}}if(n.length===0)return _("info","[Animeko] \u8FC7\u6EE4\u540E\u65E0\u5339\u914D\u7ED3\u679C"),[];let a=Array.from(new Map(n.map(o=>[o.id,o])).values());return a.length>1&&(a=await this.checkRelationsAndModifyTitles(a)),_("info",`[Animeko] \u641C\u7D22\u5B8C\u6210\uFF0C\u5171\u627E\u5230 ${a.length} \u4E2A\u6709\u6548\u7ED3\u679C`),this.transformResults(a)}catch(r){return _("error","[Animeko] Search error:",{message:r.message,name:r.name,stack:r.stack}),[]}}filterSearchResults(e,r){return e.filter(n=>{let s=[n.name,n.name_cn];return n.infobox&&Array.isArray(n.infobox)&&n.infobox.forEach(i=>{i.key==="\u522B\u540D"&&Array.isArray(i.value)&&i.value.forEach(a=>{a&&a.v&&s.push(a.v)}),i.key==="\u4E2D\u6587\u540D"&&typeof i.value=="string"&&s.push(n.value)}),s.some(i=>i&&yt(i,r))})}hasExplicitSeasonInfo(e){return e?/第?\s*(?:\d+|[一二三四五六七八九十]+)\s*[季期部]|Season\s*\d+|S\d+|Part\s*\d+|Act\s*\d+|Phase\s*\d+|The\s+Final\s+Season|OVA|OAD|剧场版|åŠ‡å ´ç‰ˆ|Movie|Film|ç»­[篇集]|å¤–ä¼ |SP|(?o.length){if(this.hasExplicitSeasonInfo(c))continue;let u=await this._fetchAnimekoSubject(i.id),d=this._extractRelations(u).find(f=>f.id===a.id);if(d&&(_("info",`[Animeko] \u68C0\u6D4B\u5230\u5173\u7CFB: [${o}] -> ${d.relation} -> [${c}]`),["\u7EED\u96C6","\u756A\u5916\u7BC7","\u4E3B\u7EBF\u6545\u4E8B","\u524D\u4F20","\u4E0D\u540C\u6F14\u7ECE","\u884D\u751F"].includes(d.relation))){let p=d.relation;p==="\u7EED\u96C6"&&(p="\u7EED\u7BC7"),a._relation_mark=`(${p})`}}}return e}_extractRelations(e){if(!e||!e.relations)return[];let r=e.relations;if(Array.isArray(r))return r.filter(i=>i.type===2).map(i=>({id:i.id,name:i.name_cn||i.name,relation:i.relation}));let n=[],s=(i,a)=>{Array.isArray(i)&&i.forEach(o=>{o&&n.push({id:o,name:"",relation:a})})};return s(r.sequelSubjects,"\u7EED\u96C6"),s(r.prequelSubjects,"\u524D\u4F20"),s(r.sideStorySubjects,"\u756A\u5916\u7BC7"),s(r.alternativeSettingSubjects,"\u4E0D\u540C\u6F14\u7ECE"),s(r.characterSubjects,"\u884D\u751F"),n}_extractInfoboxValue(e,r){if(!e||!e.fields||!Array.isArray(e.fields))return null;let n=e.fields.find(s=>s.key===r);return n&&n.values&&n.values.length>0&&n.values[0].v||null}_ExtractInfoboxAliases(e){let r=[];return!e||!e.fields||!Array.isArray(e.fields)||e.fields.forEach(n=>{n.key==="\u522B\u540D"&&Array.isArray(n.values)&&n.values.forEach(s=>{s&&s.v&&!r.includes(s.v)&&r.push(s.v)})}),r}transformResults(e){return e.map(r=>{let n="\u52A8\u6F2B";if(r.platform)switch(r.platform){case"TV":case 1:n="TV\u52A8\u753B";break;case"Web":n="Web\u52A8\u753B";break;case"OVA":n="OVA";break;case"Movie":n="\u5267\u573A\u7248";break;default:n=typeof r.platform=="number"?"TV\u52A8\u753B":r.platform}let s=!1,i=!1;r.tags&&Array.isArray(r.tags)&&r.tags.forEach(u=>{let l=u.name||u;l==="3D"&&(s=!0),l==="2D"&&(i=!0)}),s?n="3D"+n:i&&(n="2D"+n);let a=r._relation_mark?` ${r._relation_mark}`:"",o=Array.isArray(r.aliases)?[...r.aliases]:[];r.infobox&&(Array.isArray(r.infobox)?r.infobox.forEach(u=>{u.key==="\u522B\u540D"&&Array.isArray(u.value)&&u.value.forEach(l=>{l&&l.v&&!o.includes(l.v)&&o.push(l.v)})}):r.infobox.fields&&this._ExtractInfoboxAliases(r.infobox).forEach(l=>{o.includes(l)||o.push(l)})),r.name_cn&&r.name_cn!==r.name&&o.push(r.name_cn),r.nameCn&&r.nameCn!==r.name&&(o.includes(r.nameCn)||o.push(r.nameCn));let c=r.airDate||r.date||"";return{id:r.id,name:r.name,name_cn:(r.name_cn||r.nameCn||r.name)+a,aliases:o,images:r.images,air_date:c,score:r.score?parseFloat(r.score):0,typeDescription:n}})}async getEpisodes(e){try{let r=await this._fetchAnimekoSubject(e);return!r||!r.episodes||!Array.isArray(r.episodes)?(r&&_("info",`[Animeko] Subject ${e} \u65E0\u5267\u96C6\u6570\u636E`),[]):r.episodes.map(n=>({id:n.episodeId,sort:parseInt(n.sort)||0,ep:n.ep,type:n.type==="MAIN"?0:n.type==="SP"?1:n.type,name:n.name||"",name_cn:n.nameCn||"",airdate:n.airdate||""}))}catch(r){return _("error","[Animeko] GetEpisodes error:",{message:r.message,id:e}),[]}}async handleAnimes(e,r,n,s=null,i=null){let a=[];if(!e||!Array.isArray(e))return e&&_("error","[Animeko] sourceAnimes is not a valid array"),[];let o=e,c=i!==null?i:$t(r);if(c!==null){let l=o.filter(d=>{let f=d.name_cn||d.name,p=Tt(f).season;return p===c||c===1&&p===null});l.length>0&&(o=l,_("info",`[Animeko] \u7ED3\u679C\u5DF2\u547D\u4E2D\u76EE\u6807\u5B63(\u7B2C${c}\u5B63)\uFF0C\u8DF3\u8FC7\u975E\u76EE\u6807\u5B63\u76F8\u5173\u8BF7\u6C42`))}let u=await Promise.all(o.map(async l=>{try{let d=await this.getEpisodes(l.id),f=[],p=l.air_date||"";if(Array.isArray(d)){d.sort((m,h)=>(m.sort||0)-(h.sort||0));for(let m of d){if(m.type!==0)continue;!p&&m.airdate&&(p=m.airdate);let h=m.sort||m.ep,A=m.name_cn||m.name||"",g=`\u7B2C${h}\u8BDD ${A}`.trim();f.push({name:`${h}`,url:m.id.toString(),title:`\u3010animeko\u3011 ${g}`})}}if(f.length>0){let m=p?new Date(p).getFullYear():"",h={animeId:l.id,bangumiId:String(l.id),animeTitle:`${l.name_cn||l.name}(${m})\u3010${l.typeDescription||"\u52A8\u6F2B"}\u3011from animeko`,aliases:l.aliases||[],type:"\u52A8\u6F2B",typeDescription:l.typeDescription||"\u52A8\u6F2B",imageUrl:l.images?l.images.common||l.images.large:"",startDate:p,episodeCount:f.length,rating:l.score||0,isFavorited:!0,source:"animeko"};a.push(h),Lt({...h,links:f},s),O.animes.length>O.MAX_ANIMES&&Ft()}}catch(d){_("error",`[Animeko] Error processing anime ${l.id}: ${d.message}`)}}));return this.sortAndPushAnimesByYear(a,n),u}async getEpisodeDanmu(e){let r=String(e).trim();if(r.includes("/")){let a=r.split("/");r=a[a.length-1]}if(r.includes("?")&&(r=r.split("?")[0]),!r)return _("error","[Animeko] \u65E0\u6548\u7684 episodeId"),[];let n=this._getDanmuServerPriority(),s=wc.danmu,i=n.indexOf(s);(!s||i===-1)&&(i=0,s=n[0],wc.danmu=s);for(let a=0;a ${c}`),wc.danmu=c),_("info",`[Animeko] \u6210\u529F\u83B7\u53D6\u5F39\u5E55\uFF0C\u5171 ${d.length} \u6761 (${c}\u8282\u70B9)`),d}_("info",`[Animeko] ${c} \u8282\u70B9\u83B7\u53D6\u5931\u8D25/\u65E0\u6570\u636E\uFF0C\u89E6\u53D1\u964D\u7EA7`)}catch(l){_("warn",`[Animeko] \u8BF7\u6C42\u8282\u70B9\u5931\u8D25: ${c} - ${l.message}`)}}return _("info","[Animeko] \u5F39\u5E55\u57DF\u6240\u6709\u964D\u7EA7\u8282\u70B9\u5747\u5931\u8D25\uFF0C\u91CD\u7F6E\u5065\u5EB7\u72B6\u6001\u81F3\u9996\u9009\u8282\u70B9"),wc.danmu=n[0],[]}async getEpisodeDanmuSegments(e){return new vt({type:"animeko",segmentList:[{type:"animeko",segment_start:0,segment_end:3e4,url:String(e)}]})}async getEpisodeSegmentDanmu(e){let r=(e.url||"").trim();return r?this.getEpisodeDanmu(r):[]}formatComments(e){if(!Array.isArray(e))return[];let r={NORMAL:1,TOP:5,BOTTOM:4};return e.filter(n=>n&&n.danmakuInfo).map(n=>{let s=n.danmakuInfo,i=(Number(s.playTime)/1e3).toFixed(2),a=r[s.location]||1,o=s.color===-1?16777215:s.color,c=O.danmuSimplifiedTraditional==="simplified"?Gt(s.text):s.text;return{cid:n.id,p:`${i},${a},${o},[animeko]`,m:c}})}};Pt();St();ar();hn();hs();var lw=class extends wt{async search(e){}async getEpisodes(e){}async handleAnimes(e,r,n,s=null){}async getEpisodeDanmu(e){try{let r=await ge(`${O.otherServer}/?url=${e}&ac=dm`,{headers:{"Content-Type":"application/json","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"}});return _("info",`[Other] danmu response from ${O.otherServer}: \u2193\u2193\u2193`),ts(r.data),r.data}catch(r){return _("error",`[Other] \u8BF7\u6C42 ${O.otherServer} \u5931\u8D25:`,r),[]}}async getEpisodeDanmuSegments(e){return _("info","[Other] \u83B7\u53D6\u7B2C\u4E09\u65B9\u670D\u52A1\u5668\u5F39\u5E55\u5206\u6BB5\u5217\u8868...",e),new vt({type:"other_server",segmentList:[{type:"other_server",segment_start:0,segment_end:3e4,url:e}]})}async getEpisodeSegmentDanmu(e){return this.getEpisodeDanmu(e.url)}formatComments(e){return e}};hs();var vst=new QT,Cst=new GT,dw=new JT,fw=new XT,pw=new Tg,mw=new ZT,g4=new ew,z0=new wg,K0=new Pg,Y0=new Rg,Dg=new Ng,Tu=new Og,J0=new gst,kg=new sw,Lg=new iw,Bg=new yst,Mg=new xst,Wg=new ow,hw=new uw,Bie=new lw,Mie=new zT(z0,Y0,K0,Tu,J0),Ist=new VT(Mie),l4=new Map;function _st(t){let e=Number(t||0);return!Number.isFinite(e)||e<=0?0:e>6*60*60?e/1e3:e}function Tst(t,e=!1){return e?String(t||O.danmuOutputFormat||"json").toLowerCase()==="json":!1}function d4(t,e=null){return e===null?t:{videoDuration:e,...t}}function $mr(t){let e=_st(t?.duration||t?.videoDuration||0);if(e>0)return e;let r=Array.isArray(t?.segmentList)?t.segmentList:[];if(!r.length)return 0;let n=0;return r.forEach(s=>{let i=_st(s?.segment_end||0);i<=0||i>n&&(n=i)}),n>0?n:0}async function Wie(t){if(!/^https?:\/\//i.test(t))return 0;try{let e=t,r=null;return e.includes(".qq.com")?r=await be.run("tencent",()=>z0.getComments(e,"qq",!0)):e.includes(".iqiyi.com")?r=await be.run("iqiyi",()=>Y0.getComments(e,"qiyi",!0)):e.includes(".mgtv.com")?r=await be.run("mango",()=>Dg.getComments(e,"imgo",!0)):e.includes(".bilibili.com")||e.includes("b23.tv")?(e.includes("b23.tv")&&(e=await be.run("bilibili",()=>Tu.resolveB23Link(e))),r=await be.run("bilibili",()=>Tu.getComments(e,"bilibili1",!0))):e.includes(".youku.com")?r=await be.run("youku",()=>K0.getComments(e,"youku",!0)):e.includes(".miguvideo.com")?r=await be.run("migu",()=>J0.getComments(e,"migu",!0)):e.includes(".sohu.com")?r=await be.run("sohu",()=>kg.getComments(e,"sohu",!0)):e.includes(".le.com")?r=await be.run("leshi",()=>Lg.getComments(e,"leshi",!0)):e.includes(".douyin.com")||e.includes(".ixigua.com")?r=await be.run("xigua",()=>Bg.getComments(e,"xigua",!0)):e.includes(".mddcloud.com.cn")?r=await be.run("maiduidui",()=>Mg.getComments(e,"maiduidui",!0)):e.includes(".yfsp.tv")&&(r=await be.run("aiyifan",()=>Wg.getComments(e,"aiyifan",!0))),$mr(r)}catch(e){return _("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function Fmr(t){return String(t||"").split(Iu).map(e=>{let r=e.indexOf(":");return r===-1?e.trim():e.slice(r+1).trim()}).filter(Boolean)}async function f4(t){if(!t)return 0;try{let e=t.includes(Iu)?Fmr(t):[t];return(await Promise.all(e.map(Wie))).reduce((n,s)=>Math.max(n,s||0),0)}catch(e){return _("warn",`[system] [Duration] \u83B7\u53D6\u65F6\u957F\u5931\u8D25: ${e.message}`),0}}function p4(t,e){if(!e)return!0;let r=W0(t.animeTitle);return r?r===e:!0}function Umr(t,e,r){let n=t.animeTitle.match(/^(.*?)\(\d{4}\)/),s=n?n[1].trim():t.animeTitle.split("(")[0].trim(),i=Fr(s),a=Fr(e);if(i.includes(a)){if(i.startsWith(a)){let o=i.substring(a.length).trim();if(o===""&&r===1)return!0;let c=o.match(/\d+/);if(c&&c[0]===r.toString())return!0;let u=o.match(/[一二三四五六七八九十壹贰叁肆伍陆柒捌玖拾]+/);if(u&&tg(u[0])===r)return!0}return!1}else return!1}function Lie(t,e,r,n,s){if(r===null||e===null)return!0;let i=[];s&&(i=s.split("&").map(o=>o.trim().toLowerCase()).filter(o=>o)),i.length===0&&(i=["_any_"]);let a=!0;for(let o of i){let c=!1,u=new Map,l=!1;for(let d of t){let f=m4(d.animeTitle)||d.source;if(o!=="_any_"&&Hf(f,o)===0)continue;l=!0;let p=Fg(d,n);if(p?.success&&p.bangumi?.episodes){let m=p.bangumi.episodes.filter(y=>!O.episodeTitleFilter.test(y.episodeTitle)),h=$g(m);if(h.some(y=>lf(y.episodeTitle)===r)){c=!0;break}let A=[d.animeTitle];d.aliases&&Array.isArray(d.aliases)&&A.push(...d.aliases);let g=null;for(let y of A){if(!y)continue;let x=Tt(y).season;if(x!==null){g=x;break}}g===null&&(g=1);let b=u.get(g)||0;h.length>b&&u.set(g,h.length)}}if(l&&!c){let d=0;for(let f of u.values())d+=f;if(dt[W]!==void 0),k=[];for(let W of M){let F=[],V=new Map;if(W==="360")k.push({key:W,animes:F,detailStore:V,promise:be.run(Cn(W),()=>vst.handleAnimes(c,e,F,V,s))});else if(W==="vod"){if(o&&Array.isArray(o)){let j=be.run(W,()=>(async()=>{for(let J of o)J&&J.list&&J.list.length>0&&await Cst.handleAnimes(J.list,e,F,J.serverName,V,s)})());k.push({key:W,animes:F,detailStore:V,promise:j})}}else W==="tmdb"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Ist.handleAnimes(u,e,F,V,s))}):W==="douban"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Mie.handleAnimes(l,e,F,V,s))}):W==="renren"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>dw.handleAnimes(d,e,F,V,s))}):W==="hanjutv"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>fw.handleAnimes(f,e,F,V,s))}):W==="bahamut"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>pw.handleAnimes(p,e,F,V,s))}):W==="dandan"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>mw.handleAnimes(m,e,F,V,s))}):W==="custom"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>g4.handleAnimes(h,e,F))}):W==="tencent"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>z0.handleAnimes(A,e,F,V,s))}):W==="youku"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>K0.handleAnimes(g,e,F,V,s))}):W==="iqiyi"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Y0.handleAnimes(b,e,F,V,s))}):W==="imgo"?k.push({key:W,animes:F,detailStore:V,promise:be.run(Cn(W),()=>Dg.handleAnimes(y,e,F,V,s))}):W==="bilibili"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Tu.handleAnimes(x,e,F,V,s))}):W==="migu"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>J0.handleAnimes(v,e,F,V,s))}):W==="sohu"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>kg.handleAnimes(C,e,F,V,s))}):W==="leshi"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Lg.handleAnimes(R,e,F,V,s))}):W==="xigua"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Bg.handleAnimes(w,e,F,V,s))}):W==="maiduidui"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Mg.handleAnimes(N,e,F,V,s))}):W==="aiyifan"?k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>Wg.handleAnimes(P,e,F,V,s))}):W==="animeko"&&k.push({key:W,animes:F,detailStore:V,promise:be.run(W,()=>hw.handleAnimes(L,e,F,V,s))})}let B=await Promise.allSettled(k.map(W=>W.promise)),Z=new Set(r.map(W=>W.animeId));for(let W=0;W ${A}`),i=A}let c=n instanceof Map?n:new Map,u=a!==null?`${i}_S${a}`:i,l=DC(u,c);if(l===null&&a!==null){let A=DC(i,c);A!==null&&(_("info",`[system] [searchAnime] Cache miss for ${u}, fallback to generic cache for ${i}`),l=A)}if(l!==null){let A=Lie(l,a,o,c,s);if(A)return Be({errorCode:0,success:!0,errorMessage:"",animes:l});{let g=a+1,b=[...l],y=!1;for(;!A&&!y;){let x=`${i}_S${g}`,v=DC(x,c);v!==null&&v.length>0?(b.push(...v),A=Lie(b,a,o,c,s),g++):y=!0}if(A)return _("info",`[system] [LogVar-API] Episode ${o} satisfied by combining cached seasons S${a} to S${g-1}`),Be({errorCode:0,success:!0,errorMessage:"",animes:b});_("info",`[system] [LogVar-API] Episode ${o} not satisfied in cache. Proceeding to network search.`)}}let d=[];if(/^(https?:\/\/)?([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,6}(:\d+)?(\/[^\s]*)?$/.test(i)){let A=F0.fromJson({animeId:0,bangumiId:"0",animeTitle:i,type:"",typeDescription:"\u94FE\u63A5\u89E3\u6790",imageUrl:"",startDate:"",episodeCount:1,rating:0,isFavorited:!0}),g="unknown";i.includes(".qq.com")?g="qq":i.includes(".iqiyi.com")?g="qiyi":i.includes(".mgtv.com")?g="imgo":i.includes(".youku.com")?g="youku":i.includes(".bilibili.com")?g="bilibili1":i.includes(".miguvideo.com")?g="migu":i.includes(".sohu.com")?g="sohu":i.includes(".le.com")?g="leshi":i.includes(".douyin.com")||i.includes(".ixigua.com")?g="xigua":i.includes(".mddcloud.com.cn")?g="maiduidui":i.includes(".yfsp.tv")&&(g="aiyifan");let b=await be.run(Cn(g),()=>C8e(i)),y=[{name:"\u624B\u52A8\u89E3\u6790\u94FE\u63A5\u5F39\u5E55",url:i,title:`\u3010${g}\u3011 ${b}`}];d.push(A),Lt(F0.fromJson({...A,links:y}),c),O.animes.length>O.MAX_ANIMES&&Ft(),O.localCacheValid&&d.length!==0&&await GL(),O.redisValid&&d.length!==0&&await DL(),O.localRedisValid&&d.length!==0&&await YB();let x=d.map(({links:v,...C})=>C);return Be({errorCode:0,success:!0,errorMessage:"",animes:x})}try{_("info",`[system] [LogVar-API] Search sourceOrderArr: ${O.sourceOrderArr}`);let A={},g={};for(let C of O.sourceOrderArr)C==="360"?g[C]=be.run(Cn(C),()=>vst.search(i)):C==="vod"?g[C]=be.run(Cn(C),()=>Cst.search(i,e,r)):C==="tmdb"?g[C]=be.run(Cn(C),()=>Ist.search(i)):C==="douban"?g[C]=be.run(Cn(C),()=>Mie.search(i)):C==="renren"?g[C]=be.run(Cn(C),()=>dw.search(i)):C==="hanjutv"?g[C]=be.run(Cn(C),()=>fw.search(i)):C==="bahamut"?g[C]=be.run(Cn(C),()=>pw.search(i)):C==="dandan"?g[C]=be.run(Cn(C),()=>mw.search(i)):C==="custom"?g[C]=be.run(Cn(C),()=>g4.search(i)):C==="tencent"?g[C]=be.run(Cn(C),()=>z0.search(i)):C==="youku"?g[C]=be.run(Cn(C),()=>K0.search(i)):C==="iqiyi"?g[C]=be.run(Cn(C),()=>Y0.search(i)):C==="imgo"?g[C]=be.run(Cn(C),()=>Dg.search(i)):C==="bilibili"?g[C]=be.run(Cn(C),()=>Tu.search(i)):C==="migu"?g[C]=be.run(Cn(C),()=>J0.search(i)):C==="sohu"?g[C]=be.run(Cn(C),()=>kg.search(i)):C==="leshi"?g[C]=be.run(Cn(C),()=>Lg.search(i)):C==="xigua"?g[C]=be.run(Cn(C),()=>Bg.search(i)):C==="maiduidui"?g[C]=be.run(Cn(C),()=>Mg.search(i)):C==="aiyifan"?g[C]=be.run(Cn(C),()=>Wg.search(i)):C==="animeko"&&(g[C]=be.run(Cn(C),()=>hw.search(i)));let b=O.sourceOrderArr.map(C=>{let R=[],w=new Map,N=g[C].then(async P=>{A[C]=P,await Sst({[C]:P},i,R,w,a,e,r)});return{key:C,animes:R,detailStore:w,promise:N}}),y=await Promise.allSettled(b.map(C=>C.promise)),x=new Set(d.map(C=>C.animeId));for(let C=0;C0&&kC(u,d.map(({links:C,...R})=>R),c),!Lie(d,a,o,c,s)&&a!==null){let C=a;for(let R of O.sourceOrderArr){let w=A[R];if(Array.isArray(w))for(let N of w){let P=N&&Array.isArray(N.list)?N.list:[N];for(let L of P){if(!L)continue;let M=Tt(L.animeTitle||L.title||"").season;M!==null&&M>C&&(C=M)}}}if(C>a){_("info",`[system] [LogVar-API] Episode ${o} not satisfied in Season ${a}. Parallel mapping to S${a+1}~S${C}...`);let R=[];for(let N=a+1;N<=C;N++)R.push((async()=>{let P=[];return await Sst(A,i,P,c,N,e,r),P.length>0&&kC(`${i}_S${N}`,P.map(({links:L,...M})=>M),c),P})());let w=await Promise.all(R);for(let N of w)d.push(...N)}}}catch(A){_("error","[system] [LogVar-API] \u53D1\u751F\u9519\u8BEF:",A)}let p=O.mergeSourcePairs&&O.mergeSourcePairs.length>0,m=O.customMergeRules&&O.customMergeRules.length>0;if((p||m)&&await Lnt(d,c),sK(d,i),O.enableAnimeEpisodeFilter){let A=[];for(let g of d){let b=g.animeTitle||"";if(O.animeTitleFilter&&O.animeTitleFilter.test(b)){_("info",`[searchAnime] Anime ${g.animeId} filtered by name: ${b}`);continue}let y=ig(g?.bangumiId,c,g?.source)||ig(g?.animeId,c,g?.source)||sg(g?.bangumiId,c,g?.source)||sg(g?.animeId,c,g?.source);if(y&&y.links){let x=y.links.map((v,C)=>({episodeId:v.id,episodeTitle:v.title,episodeNumber:C+1}));x=x.filter(v=>!O.episodeTitleFilter.test(v.episodeTitle)),_("info",`[searchAnime] Anime ${g.animeId} filtered episodes: ${x.length}/${y.links.length}`),x.length>0&&A.push(g)}}d.length=0,d.push(...A)}O.localCacheValid&&d.length!==0&&await GL(),O.redisValid&&d.length!==0&&await DL(),O.localRedisValid&&d.length!==0&&await YB();let h=d.map(({links:A,...g})=>g);if(h.length>0){let A=a!==null?`${i}_S${a}`:i;kC(A,h,c)}return Be({errorCode:0,success:!0,errorMessage:"",animes:h})}function $g(t){return t.filter((r,n,s)=>!s.slice(0,n).some(i=>i.episodeTitle===r.episodeTitle))}function Hf(t,e){if(!t||!e)return 0;let r=t.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),n=e.split("&").map(i=>i.trim().toLowerCase()).filter(i=>i),s=0;for(let i of n)r.some(o=>o===i||o.includes(i)&&i.length>2||i.includes(o)&&o.length>2)&&s++;return s===0?0:s*1e3-r.length}function m4(t){let e=t.match(/from\s+([a-zA-Z0-9&]+)/i);return e?e[1]:null}function h4(t,e,r,n=null){if(!t||t.length===0)return null;let s=t;if(n&&(s=t.filter(i=>{let a=rg(i.episodeTitle);return Hf(a,n)>0})),s.length===0)return null;for(let i of s){let a=lf(i.episodeTitle);if(e===r&&a===r)return _("info",`Found episode by title number: ${i.episodeTitle} (extracted: ${a})`),i}if(s.length>=r){let i=s[r-1];return _("info",`Using fallback array index for episode ${r}: ${i.episodeTitle}`),i}for(let i of s)if(i.episodeNumber&&parseInt(i.episodeNumber,10)===r)return _("info",`Found episode by episodeNumber: ${i.episodeTitle} (episodeNumber: ${i.episodeNumber})`),i;return null}async function qmr(t,e,r,n,s,i,a,o,c=null){let u=O.aiBaseUrl,l=O.aiModel,d=O.aiApiKey,f=O.aiMatchPrompt;if(!O.aiValid||!f)return _("warn","AI configuration is incomplete, falling back to normal matching"),{resEpisode:null,resAnime:null};let p=new ff({apiKey:d,baseURL:u,model:l,systemPrompt:f}),m={title:s,season:t,episode:e,year:r,dynamicPlatformOrder:a,preferAnimeId:o,animes:n.animes.map(h=>{let A=h.animeTitle||"",g=A.match(/^(.*?)\(\d{4}\)/),b=g?g[1].trim():A.split("(")[0].trim();return{animeId:h.animeId,animeTitle:b,aliases:h.aliases||[],type:h.type,year:h.startDate?h.startDate.slice(0,4):null,episodeCount:h.episodeCount,source:h.source}})};try{let h=JSON.stringify(m,null,2),A=await p.ask(h);_("info",`AI match response: ${A}`);let g;try{let C=A.match(/```json\s*([\s\S]*?)\s*```|```([\s\S]*?)\s*```|({[\s\S]*})/),R=C?C[1]||C[2]||C[3]:A;g=JSON.parse(R.trim())}catch(C){return _("error",`Failed to parse AI response: ${C.message}`),{resEpisode:null,resAnime:null}}let b=g.animeIndex;if(b==null)return{resEpisode:null,resAnime:null};let y=n.animes[b];if(!y)return _("error",`AI returned invalid anime index: ${b}`),{resEpisode:null,resAnime:null};let x=Fg(y,c);if(!x?.success||!x?.bangumi?.episodes)return{resEpisode:null,resAnime:null};let v=null;if(t&&e){let C=x.bangumi.episodes.filter(w=>!O.episodeTitleFilter.test(w.episodeTitle)),R=$g(C);_("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",R.map(w=>w.episodeTitle)),v=h4(R,e,e)}else x.bangumi.episodes.length>0&&(v=x.bangumi.episodes[0]);return{resEpisode:v,resAnime:y}}catch(h){return _("error",`AI matching failed: ${h.message}`),{resEpisode:null,resAnime:null}}}function Fg(t,e=null){let r=ig(t?.bangumiId,e,t?.source)||ig(t?.animeId,e,t?.source);return r?Fie(r,t?.bangumiId||t?.animeId||""):(_("warn",`[matchAnime] Missing request detail snapshot for anime ${t?.animeId??t?.bangumiId}`),null)}function wst(t,e,r,n,s){let i=String(e),a=t[i].match(/^([^:]+):(.+)$/),o=Number(a?.[1])||0,c=a?.[2]||"",u=r-o,l=n.findIndex(d=>d.episodeTitle===c);return l!==-1&&(s=l+u+1,_("info",`Applying offset "${t[i]}" for S${e}E${r} -> ${s}`)),s}function Rst(t,e,r,n,s,i,a){if(!n||!s)return{resEpisode:null,resAnime:null};_("info",`[system] [Spillover] \u5F53\u524D\u5B63\u96C6\u5339\u914D\u7B56\u7565\u5931\u8D25 (S${n}E${s})\uFF0C\u6B63\u5728\u8FDB\u884C\u8DE8\u5B63\u96C6\u6570\u6620\u5C04\u5339\u914D...`);let o=Fr(e),c=new Map;for(let f of t.animes){let p=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&p.push(...f.aliases);let m=!1;for(let A of p)if(A&&Fr(A).includes(o)){if(!p4(f,r))continue;m=!0;break}if(!m)continue;let h=null;for(let A of p){if(!A)continue;let g=Tt(A).season;if(g!==null){h=g;break}}if(h===null&&(h=1),!c.has(h)){let A=Fg(f,a);if(A?.success&&A?.bangumi?.episodes){let g=A.bangumi.episodes.filter(y=>!O.episodeTitleFilter.test(y.episodeTitle)),b=$g(g);b.length>0&&c.set(h,{anime:f,episodes:b,actualPlatform:m4(f.animeTitle)||f.source})}}}let u=s,l=n,d={anime:null,episode:null,score:0};for(;c.has(l);){let f=c.get(l),p=f.episodes,m=null;for(let h of p)if(lf(h.episodeTitle)===s){m=h;break}if(m){if(i&&Hf(rg(m.episodeTitle),i)===0)break;_("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u7EDD\u5BF9\u6807\u9898\u6570\u5B57) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${m.episodeTitle}`),d={anime:f.anime,episode:m,score:i?Hf(f.actualPlatform,i):1};break}if(u<=p.length){let h=p[u-1];if(i&&Hf(rg(h.episodeTitle),i)===0)break;_("info",`[system] [Spillover] \u8DE8\u5B63\u6EA2\u51FA\u67E5\u627E\u547D\u4E2D (\u6309\u76F8\u5BF9\u6392\u4F4D\u8BA1\u7B97) -> \u6240\u5728\u5B63\uFF1AS${l} \u96C6\u6807\u9898\uFF1A${h.episodeTitle}`),d={anime:f.anime,episode:h,score:i?Hf(f.actualPlatform,i):1};break}_("info",`[system] [Spillover] S${l} \u5171\u6709 ${p.length} \u96C6(\u5DF2\u8FC7\u6EE4\u756A\u5916)\uFF0C\u5269\u4F59\u76EE\u6807\u96C6\u6570\u4E3A ${u}\uFF0C\u6620\u5C04\u81F3 S${l+1} \u7EE7\u7EED\u67E5\u627E`),u-=p.length,l++}return{resEpisode:d.episode,resAnime:d.anime}}async function jmr(t,e,r,n,s,i,a,o,c,u=null){let l={anime:null,episode:null,score:-9999},d=Fr(s);for(let f of n.animes){if(O.rememberLastSelect&&o&&String(f.bangumiId)!==String(o)&&String(f.animeId)!==String(o))continue;let m=!1,h=[f.animeTitle];f.aliases&&Array.isArray(f.aliases)&&h.push(...f.aliases);for(let y of h)if(y){if(t&&e){if(Fr(y).includes(d)){if(!p4(f,r)){_("info",`Year mismatch: anime year ${W0(f.animeTitle)} vs query year ${r}`);continue}let x=O.rememberLastSelect&&o&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o)),v={...f,animeTitle:y};if(Umr(v,s,t)||x){m=!0;break}}}else if(y.split("(")[0].trim()===s){if(!p4(f,r)){_("info",`Year mismatch: anime year ${W0(f.animeTitle)} vs query year ${r}`);continue}m=!0;break}}if(!m)continue;let A=Fg(f,u);if(!A?.success||!A?.bangumi?.episodes)continue;_("info","\u5224\u65AD\u5267\u96C6",`Anime: ${f.animeTitle}`),_("info",A);let g=null,b=O.rememberLastSelect&&o!=null&&(String(f.bangumiId)===String(o)||String(f.animeId)===String(o));if(t&&e){let y=A.bangumi.episodes.filter(C=>!O.episodeTitleFilter.test(C.episodeTitle)),x=$g(y);_("info","\u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",x.map(C=>C.episodeTitle));let v=e;c&&c[String(t)]!==void 0&&(v=wst(c,t,e,x,v)),g=h4(x,e,v,a),!g&&b&&(_("info",`[system] [Match] \u4F18\u9009\u5267\u96C6\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u96C6\u6570`),g=h4(x,e,v,null))}else if(A.bangumi.episodes.length>0)if(a){let y=A.bangumi.episodes.find(x=>{let v=rg(x.episodeTitle);return Hf(v,a)>0});y?g=y:b&&(_("info",`[system] [Match] \u4F18\u9009\u7535\u5F71\u672A\u547D\u4E2D\u76EE\u6807\u5E73\u53F0 ${a}\uFF0C\u653E\u5BBD\u6761\u4EF6\u63D0\u53D6\u8D44\u6E90`),g=A.bangumi.episodes[0])}else g=A.bangumi.episodes[0];if(g){let y=m4(f.animeTitle)||f.source,x=0;if(a?x=Hf(y,a):x=1,b&&(x+=9999),x>l.score&&(l={anime:f,episode:g,score:x}),!a||b)break}}if(!l.episode&&t&&e){let f=Rst(n,s,r,t,e,a,u);f.resEpisode&&(l={episode:f.resEpisode,anime:f.resAnime,score:a?Hf(m4(f.resAnime.animeTitle)||f.resAnime.source,a):1})}return{resEpisode:l.episode,resAnime:l.anime}}async function Hmr(t,e,r,n,s,i,a,o,c,u=null){for(let d of t.animes){if(s&&!p4(d,s)){_("info",`Fallback: Year mismatch: anime year ${W0(d.animeTitle)} vs query year ${s}`);continue}let f=Fg(d,u);if(!(!f?.success||!f?.bangumi?.episodes)){if(_("info",f),r&&n){let p=f.bangumi.episodes.filter(g=>!O.episodeTitleFilter.test(g.episodeTitle)),m=$g(p);_("info","[system] [LogVar-API] \u8FC7\u6EE4\u540E\u7684\u96C6\u6807\u9898",m.map(g=>g.episodeTitle));let h=n;c&&c[String(r)]!==void 0&&(h=wst(c,r,n,m,h));let A=h4(m,n,h,null);if(A){a=A,o=d;break}}else if(f.bangumi.episodes.length>0){a=f.bangumi.episodes[0],o=d;break}}}let l=!1;if(!a&&r&&n){let d=Rst(t,i,s,r,n,null,u);d.resEpisode&&(a=d.resEpisode,o=d.resAnime,l=!0)}return{resEpisode:a,resAnime:o,isSpillover:l}}async function Qmr(t){let e=/^(.+?)[.\s]+S(\d+)E(\d+)/i,r=t.match(e),n,s,i,a;if(r){n=r[1].trim(),s=parseInt(r[2],10),i=parseInt(r[3],10);let o=t.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);o&&(a=parseInt(o[1],10));let c=n.match(/^[\u4e00-\u9fa5·]+[^.\r\n]*/);if(c)n=c[0];else if(/^[A-Za-z0-9]/.test(n)){let u=n.match(/^([A-Za-z0-9.&\s]+?)(?=\.\d{4}|$)/);u&&(n=u[1].trim().replace(/[._]/g," "))}else{let u=n.split(/\.(?:19|20)\d{2}|2160p|1080p|720p|H265|iPhone/)[0],l=u.match(/^[\u4e00-\u9fa5·]+/);n=l?l[0]:u.trim()}n=n.replace(/\.\d{4}$/i,"").trim()}else{let o=/^([^.\s]+(?:[.\s][^.\s]+)*?)(?:[.\s](?:\d{4}|(?:19|20)\d{2}|\d{3,4}p|S\d+|E\d+|WEB|BluRay|Blu-ray|HDTV|DVDRip|BDRip|x264|x265|H\.?264|H\.?265|AAC|AC3|DDP|TrueHD|DTS|10bit|HDR|60FPS))/i,c=t.match(o);n=c?c[1].replace(/[._]/g," ").trim():t,s=null,i=null;let u=t.match(/(?:\.|\(|()((?:19|20)\d{2})(?:\)|)|\.|$)/);u&&(a=parseInt(u[1],10))}return O.titleToChinese&&(n=await xnt(n.replace("."," "),s,i)),_("info","[system] [Match] Parsed title, season, episode, year",{title:n,season:s,episode:i,year:a}),{title:n,season:s,episode:i,year:a}}function Nst(t,e,r,n){let s=new URL(t),i=s.pathname.replace(/\/(?:match|search\/episodes)$/,"");return s.pathname=`${i}/search/anime`,s.search="",s.searchParams.set("keyword",e||""),r!==void 0&&s.searchParams.set("season",r||""),n!==void 0&&s.searchParams.set("episode",n||""),s}async function Ost(t,e,r){try{let n=await e.json();if(!n)return _("error","[system] [Match] Request body is empty"),Be({errorCode:400,success:!1,errorMessage:"Empty request body"},400);let{fileName:s}=n;if(!s)return _("error","[system] [Match] Missing fileName parameter in request body"),Be({errorCode:400,success:!1,errorMessage:"Missing fileName parameter"},400);let{cleanFileName:i,preferredPlatform:a}=M8e(s);_("info",`[system] [Match] Processing anime match for query: ${s}`),_("info",`[system] [Match] Parsed cleanFileName: ${i}, preferredPlatform: ${a}`);let{title:o,season:c,episode:u,year:l}=await Qmr(i);if(O.titleMappingTable&&O.titleMappingTable.size>0){let N=O.titleMappingTable.get(o);N&&(o=N,_("info",`[system] [Match] Title mapped from original: ${t.searchParams.get("keyword")} to: ${o}`))}if(O.animeTitleSimplified){let N=Gt(o);_("info",`[system] [Match] matchAnime converted traditional to simplified: ${o} -> ${N}`),o=N}let[d,f,p]=aK(o,c);_("info",`[system] [Match] prefer animeId: ${d} from ${f}`);let m=W8e(a),h=m.length>0?m[0]:null,A=new Map,g=Nst(e.url,o,c,u),y=await(await sE(g,d,f,A,h)).json();_("info",`[system] [Match] searchData: ${y.animes}`);let x,v,C=!1,R={errorCode:0,success:!0,errorMessage:"",isMatched:!1,matches:[]};_("info",`[system] [Match] Original platformOrderArr: ${O.platformOrderArr}`),_("info",`[system] [Match] Dynamic platformOrder: ${m}`),_("info",`[system] [Match] Preferred platform: ${a||"none"}`);let w=await qmr(c,u,l,y,o,e,m,d,A);if(w.resAnime&&w.resEpisode)x=w.resAnime,v=w.resEpisode,R.isMatched=!0,_("info",`[system] [Match] AI match found: ${x.animeTitle}; episode: ${v.episodeTitle}`);else{for(let N of m){let P=await jmr(c,u,l,y,o,e,N,d,p,A);if(v=P.resEpisode,x=P.resAnime,x){R.isMatched=!0,_("info",`[system] [Match] Found match with platform: ${N||"default"}`);break}}if(!x){let N=await Hmr(y,e,c,u,l,o,v,x,p,A);v=N.resEpisode,x=N.resAnime,C=N.isSpillover}}return v&&(R.isMatched=!0,r&&!C&&eK(r,{title:o,season:c,episode:u,episodeId:v.episodeId}),R.matches=[BL.fromJson({episodeId:v.episodeId,animeId:x.animeId,animeTitle:x.animeTitle,episodeTitle:v.episodeTitle,type:x.type,typeDescription:x.typeDescription,shift:0,imageUrl:x.imageUrl})]),_("info",`[system] [Match] resMatchData: ${R}`),Be(R)}catch(n){return _("error",`[system] [Match] Failed to parse request body: ${n.message}`),Be({errorCode:400,success:!1,errorMessage:"Invalid JSON body"},400)}}async function Pst(t){let e=t.searchParams.get("anime"),r=t.searchParams.get("episode")||"";if(O.animeTitleSimplified){let c=Gt(e);_("info",`[system] [Episodes] searchEpisodes converted traditional to simplified: ${e} -> ${c}`),e=c}if(_("info",`[system] [Episodes] Search episodes with anime: ${e}, episode: ${r}`),!e)return _("error","[system] [Episodes] Missing anime parameter"),Be({errorCode:400,success:!1,errorMessage:"Missing anime parameter"},400);let n=Nst(t,e),s=new Map,a=await(await sE(n,null,null,s)).json();if(!a.success||!a.animes||a.animes.length===0)return _("info","[system] [Episodes] No anime found for the given title"),Be({errorCode:0,success:!0,errorMessage:"",hasMore:!1,animes:[]});let o=[];for(let c of a.animes){let u=sg(c.bangumiId,s,c.source)||sg(c.animeId,s,c.source),l=null;if(u)l=Fie(u,c.bangumiId);else{let d=new URL(`/bangumi/${c.bangumiId}`,t.origin);l=await(await $ie(d.pathname)).json()}if(l.success&&l.bangumi&&l.bangumi.episodes){let d=l.bangumi.episodes;if(r){if(r==="movie")d=l.bangumi.episodes.filter(f=>c.typeDescription&&(c.typeDescription.includes("\u7535\u5F71")||c.typeDescription.includes("\u5267\u573A\u7248")||f.episodeTitle.toLowerCase().includes("movie")||f.episodeTitle.includes("\u5267\u573A\u7248")));else if(/^\d+$/.test(r)){let f=parseInt(r);d=l.bangumi.episodes.filter(p=>parseInt(p.episodeNumber)===f)}}d.length>0&&o.push(WL.fromJson({animeId:c.animeId,animeTitle:c.animeTitle,type:c.type,typeDescription:c.typeDescription,episodes:d.map(f=>({episodeId:f.episodeId,episodeTitle:f.episodeTitle}))}))}}return _("info",`[system] [Episodes] Found ${o.length} animes with filtered episodes`),Be({errorCode:0,success:!0,errorMessage:"",animes:o})}async function $ie(t,e=null,r=null){let n=t.split("/").pop(),s=ig(n,e,r)||sg(n);return s?Be(Fie(s,n)):(_("error",`[system] [Bangumi] Anime with ID ${n} not found`),Be({errorCode:404,success:!1,errorMessage:"Anime not found",bangumi:null},404))}function Fie(t,e=""){_("info",`[system] [Bangumi] Fetched details for anime ID: ${e||t.bangumiId}`);let r=[];for(let s=0;s!O.episodeTitleFilter.test(s.episodeTitle)),_("info",`[system] [getBangumi] Episode filter enabled. Filtered episodes: ${r.length}/${t.links.length}`),r.length===0)return _("warn",`[system] [getBangumi] No valid episodes after filtering for anime ID ${e||t.bangumiId}`),{errorCode:404,success:!1,errorMessage:"No valid episodes after filtering",bangumi:null};r=r.map((s,i)=>({...s,episodeNumber:`${i+1}`}))}return{errorCode:0,success:!0,errorMessage:"",bangumi:$L.fromJson({animeId:t.animeId,bangumiId:t.bangumiId,animeTitle:t.animeTitle,imageUrl:t.imageUrl,isOnAir:!0,airDay:1,isFavorited:t.isFavorited,rating:t.rating,type:t.type,typeDescription:t.typeDescription,seasons:[{id:`season-${t.animeId}`,airDate:t.startDate,name:"Season 1",episodeCount:t.episodeCount}],episodes:r})}}async function Gmr(t,e,r){let n=t.split(Iu),s=n.map(m=>{let h=m.indexOf(":");if(h===-1)return{realId:"",logicalSource:"",sourceLabel:""};let A=m.substring(0,h),g=m.substring(h+1);return A!=="hanjutv"?{realId:g,logicalSource:A,sourceLabel:A}:{realId:g,logicalSource:"hanjutv",sourceLabel:i4(g)}}),i=s.map(m=>m.logicalSource).filter(Boolean),a=s.map(m=>m.realId),o=s.map(m=>m.sourceLabel).filter(Boolean).join("\uFF06");_("info",`[Merge] \u5F00\u59CB\u83B7\u53D6 [${o}] \u805A\u5408\u5F39\u5E55...`);let c=df(t);if(c)return _("info",`[Merge] \u547D\u4E2D\u7F13\u5B58 [${o}]\uFF0C\u8FD4\u56DE ${c.length} \u6761`),c;let u={},l=s.map(async m=>{let h=m.logicalSource,A=m.sourceLabel||m.logicalSource,g=m.realId;if(!h||!g)return[];let b=`${h}:${g}`;if(l4.has(b)){_("info",`[Merge] \u590D\u7528\u6B63\u5728\u8FDB\u884C\u7684\u8BF7\u6C42: ${b}`);try{return await l4.get(b)||[]}catch{return[]}}let y=be.run(Cn(h),async()=>{let x=null;if(h==="renren"?x=dw:h==="hanjutv"?x=fw:h==="bahamut"?x=pw:h==="dandan"?x=mw:h==="tencent"?x=z0:h==="youku"?x=K0:h==="iqiyi"?x=Y0:h==="imgo"?x=Dg:h==="bilibili"?x=Tu:h==="migu"?x=J0:h==="sohu"?x=kg:h==="leshi"?x=Lg:h==="xigua"?x=Bg:h==="maiduidui"?x=Mg:h==="aiyifan"?x=Wg:h==="animeko"&&(x=hw),x)try{let v=await x.getEpisodeDanmu(g,n),C=x.formatComments(v);return _("info",`[${A}] \u83B7\u53D6\u5F39\u5E55 ${C.length} \u6761`),C&&Array.isArray(C)&&C.forEach(R=>{R._sourceLabel||(R._sourceLabel=A)}),u[A]=C.length,C}catch(v){return _("error",`[Merge] \u83B7\u53D6 ${A} \u5931\u8D25: ${v.message}`),u[A]=0,[]}return[]});l4.set(b,y);try{return await y}finally{l4.delete(b)}}),d=await Promise.all(l);if(Mnt(d,i,a),O.danmuOffsetRules?.length>0&&e&&r){let[,,m]=qL(r);if(m){let{baseTitle:h,season:A,episode:g}=Jz(e,m);A||=1,g||=UL(r)+1;let b=`S${A.toString().padStart(2,"0")}`,y=`E${g.toString().padStart(2,"0")}`;for(let x=0;x ${i[x]} (${h}/${b}/${y})${C?.usePercent?`, duration=${N}s`:""}`),d[x]=_z(v,R,{usePercent:C?.usePercent,videoDuration:N})}}}}let f=[];d.forEach(m=>{f=Bnt(f,m)});let p=Object.entries(u).map(([m,h])=>`${m}: ${h}`).join(", ");return _("info",`[Merge] \u805A\u5408\u539F\u59CB\u6570\u636E\u5B8C\u6210: \u603B\u8BA1 ${f.length} \u6761 (${p})`),MC(f,o)}async function Uie(t,e,r,n,s=!1){let i=parseInt(t.split("/").pop()),a=nK(i),o=BC(i),c=rK(i),u=c?(c.match(/【(.*?)】/)||[null])[0]?.replace(/[【】]/g,""):null,l=Tst(e,s);if(_("info","[system] [LogVar-API] comment url...",o),_("info","[system] [LogVar-API] comment title...",c),_("info","[system] [LogVar-API] comment platform...",u),!o)return _("error",`[system] [LogVar-API] Comment with ID ${i} not found`),Be({count:0,comments:[]},404);_("info",`[system] [LogVar-API] Fetched comment ID: ${i}`);let d=df(o);if(d!==null){let y=d4({count:d.length,comments:d},l?await f4(o):null);return ag(y,e)}_("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",o);let f=[],p=l?f4(o):null;if(o&&o.includes(Iu))f=await Gmr(o,a,i);else{o.includes(".qq.com")?f=await be.run("tencent",()=>z0.getComments(o,u,r)):o.includes(".iqiyi.com")?f=await be.run("iqiyi",()=>Y0.getComments(o,u,r)):o.includes(".mgtv.com")?f=await be.run("mango",()=>Dg.getComments(o,u,r)):o.includes(".bilibili.com")||o.includes("b23.tv")?(o.includes("b23.tv")&&(o=await be.run("bilibili",()=>Tu.resolveB23Link(o))),f=await be.run("bilibili",()=>Tu.getComments(o,u,r))):o.includes(".youku.com")?f=await be.run("youku",()=>K0.getComments(o,u,r)):o.includes(".miguvideo.com")?f=await be.run("migu",()=>J0.getComments(o,u,r)):o.includes(".sohu.com")?f=await be.run("sohu",()=>kg.getComments(o,u,r)):o.includes(".le.com")?f=await be.run("leshi",()=>Lg.getComments(o,u,r)):o.includes(".douyin.com")||o.includes(".ixigua.com")?f=await be.run("xigua",()=>Bg.getComments(o,u,r)):o.includes(".mddcloud.com.cn")?f=await be.run("maiduidui",()=>Mg.getComments(o,u,r)):o.includes(".yfsp.tv")&&(f=await be.run("aiyifan",()=>Wg.getComments(o,u,r)));let y=/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i;y.test(o)||(u==="renren"?f=await be.run("renren",()=>dw.getComments(o,u,r)):u==="hanjutv"?f=await be.run("hanjutv",()=>fw.getComments(o,u,r)):u==="bahamut"?f=await be.run("bahamut",()=>pw.getComments(o,u,r)):u==="dandan"?f=await be.run("dandan",()=>mw.getComments(o,u,r)):u==="custom"?f=await be.run("custom",()=>g4.getComments(o,u,r)):u==="animeko"&&(f=await be.run("animeko",()=>hw.getComments(o,u,r)))),(!f||f.length===0)&&y.test(o)&&(f=await be.run("other",()=>Bie.getComments(o,"other_server",r)))}let[m,h,A,g]=qL(i);if(m&&h){let y=null,x=null,v=null;if(n){let R=tK(n);R&&R.title&&R.season&&R.episode&&A&&(y=R.title,x=R.season,v=`${R.episode}:${A}`,_("info",`[system] [LogVar-API] Calculated episode offset for IP ${n}: Query E${R.episode}, Selected ${A} -> Offset ${v} (Season ${x})`))}_("info",`[system] [LogVar-API] animeTitle\uFF1A${a}; lastTitle\uFF1A${y}; titleMatches\uFF1A${yt(a,y)}`),(yt(a,y)||Array.isArray(g)&&g.some(R=>yt(R,y)))&&(_("info","[system] [LogVar-API] excute setPreferByAnimeId"),iK(m,h,x,v)),O.localCacheValid&&m&&QL("lastSelectMap",JSON.stringify(Object.fromEntries(O.lastSelectMap))),O.redisValid&&m&&Hz("lastSelectMap",O.lastSelectMap).catch(R=>_("error","[system] [LogVar-API] Redis set error",R)),O.localRedisValid&&m&&KB("lastSelectMap",O.lastSelectMap)}if(a&&A&&O.danmuOffsetRules?.length>0&&!(o&&o.includes(Iu))){let{baseTitle:y,season:x,episode:v}=Jz(a,A);x||=1,v||=UL(i)+1;let C=`S${x.toString().padStart(2,"0")}`,R=`E${v.toString().padStart(2,"0")}`,w=Ez(O.danmuOffsetRules,{anime:y,season:C,episode:R,source:h}),N=w?.offset||0;if(N!==0){let P=w?.usePercent?await Wie(o):0;_("info",`[system] [LogVar-API] Applying danmu offset: ${N}${w?.usePercent?"%":"s"} for ${y}/${C}/${R}${w?.usePercent?`, duration=${P}s`:""}`),f=_z(f,N,{usePercent:w?.usePercent,videoDuration:P})}}r||(f&&f.comments&&(f=f.comments),Array.isArray(f)||(f=[]),f.length>0&&LC(o,f));let b=d4({count:f.length,comments:f},p?await p:null);return ag(b,e)}async function qie(t,e,r,n=!1){try{if(!t||typeof t!="string")return _("error","[system] [LogVar-API] Missing or invalid url parameter"),Be({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);if(t=t.trim(),!t.startsWith("http"))return _("error","[system] [LogVar-API] Invalid url format, must start with http or https"),Be({errorCode:400,success:!1,errorMessage:"Invalid url format, must start with http or https",count:0,comments:[]},400);_("info",`[system] [LogVar-API] Processing comment request for URL: ${t}`);let s=t,i=Tst(e,n),a=df(s);if(a!==null){let l=d4({errorCode:0,success:!0,errorMessage:"",count:a.length,comments:a},i?await f4(s):null);return ag(l,e)}_("info","[system] [LogVar-API] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5F39\u5E55...",s);let o=[],c=i?f4(s):null;s.includes(".qq.com")?o=await be.run("tencent",()=>z0.getComments(s,"qq",r)):s.includes(".iqiyi.com")?o=await be.run("iqiyi",()=>Y0.getComments(s,"qiyi",r)):s.includes(".mgtv.com")?o=await be.run("mango",()=>Dg.getComments(s,"imgo",r)):s.includes(".bilibili.com")||s.includes("b23.tv")?(s.includes("b23.tv")&&(s=await be.run("bilibili",()=>Tu.resolveB23Link(s))),o=await be.run("bilibili",()=>Tu.getComments(s,"bilibili1",r))):s.includes(".youku.com")?o=await be.run("youku",()=>K0.getComments(s,"youku",r)):s.includes(".miguvideo.com")?o=await be.run("migu",()=>J0.getComments(s,"migu",r)):s.includes(".sohu.com")?o=await be.run("sohu",()=>kg.getComments(s,"sohu",r)):s.includes(".le.com")?o=await be.run("leshi",()=>Lg.getComments(s,"leshi",r)):s.includes(".douyin.com")||s.includes(".ixigua.com")?o=await be.run("xigua",()=>Bg.getComments(s,"xigua",r)):s.includes(".mddcloud.com.cn")?o=await be.run("maiduidui",()=>Mg.getComments(s,"maiduidui",r)):s.includes(".yfsp.tv")?o=await be.run("aiyifan",()=>Wg.getComments(s,"aiyifan",r)):/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i.test(s)&&(o=await be.run("other",()=>Bie.getComments(s,"other_server",r))),_("info",`[system] [LogVar-API] Successfully fetched ${o.length} comments from URL`),o.length>0&&LC(s,o);let u=d4({errorCode:0,success:!0,errorMessage:"",count:o.length,comments:o},c?await c:null);return ag(u,e)}catch(s){return _("error",`[system] [LogVar-API] Failed to process comment by URL request: ${s.message}`),Be({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}async function Dst(t,e){try{let r=t.url,n=t.type;if(!r||typeof r!="string")return _("error","[system] [SegmentComment] Missing or invalid url parameter"),Be({errorCode:400,success:!1,errorMessage:"Missing or invalid url parameter",count:0,comments:[]},400);r=r.trim(),_("info",`[system] [SegmentComment] Processing segment comment request for URL: ${r}`);let s=df(r);if(s!==null){let o={errorCode:0,success:!0,errorMessage:"",count:s.length,comments:s};return ag(o,e)}_("info",`[system] [SegmentComment] \u5F00\u59CB\u4ECE\u672C\u5730\u8BF7\u6C42\u5206\u6BB5\u5F39\u5E55... URL: ${r}`);let i=[];n==="qq"?i=await be.run("tencent",()=>z0.getSegmentComments(t)):n==="qiyi"?i=await be.run("iqiyi",()=>Y0.getSegmentComments(t)):n==="imgo"?i=await be.run("mango",()=>Dg.getSegmentComments(t)):n==="bilibili1"?i=await be.run("bilibili",()=>Tu.getSegmentComments(t)):n==="youku"?i=await be.run("youku",()=>K0.getSegmentComments(t)):n==="migu"?i=await be.run("migu",()=>J0.getSegmentComments(t)):n==="sohu"?i=await be.run("sohu",()=>kg.getSegmentComments(t)):n==="leshi"?i=await be.run("leshi",()=>Lg.getSegmentComments(t)):n==="xigua"?i=await be.run("xigua",()=>Bg.getSegmentComments(t)):n==="maiduidui"?i=await be.run("maiduidui",()=>Mg.getSegmentComments(t)):n==="aiyifan"?i=await be.run("aiyifan",()=>Wg.getSegmentComments(t)):n==="hanjutv"?i=await be.run("hanjutv",()=>fw.getSegmentComments(t)):n==="bahamut"?i=await be.run("bahamut",()=>pw.getSegmentComments(t)):n==="renren"?i=await be.run("renren",()=>dw.getSegmentComments(t)):n==="dandan"?i=await be.run("dandan",()=>mw.getSegmentComments(t)):n==="animeko"?i=await be.run("animeko",()=>hw.getSegmentComments(t)):n==="custom"?i=await be.run("custom",()=>g4.getSegmentComments(t)):n==="other_server"&&(i=await be.run("other",()=>Bie.getSegmentComments(t))),_("info",`[system] [SegmentComment] Successfully fetched ${i.length} segment comments from URL`),i.length>0&&LC(r,i);let a={errorCode:0,success:!0,errorMessage:"",count:i.length,comments:i};return ag(a,e)}catch(r){return _("error",`[system] [SegmentComment] Failed to process segment comment request: ${r.message}`),Be({errorCode:500,success:!1,errorMessage:"Internal server error",count:0,comments:[]},500)}}Pt();ar();St();no();hn();var Vmr=[[/[\(\[(【]\s*(19|20)\d{2}\s*[\)\])】]/g," "],[/\b(19|20)\d{2}\b/g," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps)\b/gi," "],[/[_.-]+/g," "]],zmr=[[/\[[^\]]*\]/g," "],[/[【((][^】))]*[】))]/g," "],[/\.(mp4|mkv|avi|rmvb|ts|flv|mov|m4v)$/gi," "],[/\b(?:2160p|1080p|720p|4k|web-?dl|web-?rip|blu-?ray|hdr|dv|x265|x264|h\.?265|h\.?264|60fps|aac|flac|dts)\b/gi," "],[/[_~.-]+/g," "]],Kmr=[{pattern:/[Ss]\d{1,2}\s*[Ee](\d{1,4})/,group:1},{pattern:/第\s*([零一二三四五六七八九十百零〇两\d]+)\s*[é›†æœŸè¯ç« å›žæ®µç¯‡]/,group:1,chinese:!0},{pattern:/[Ee][Pp]?\.?\s*(\d{1,4})/,group:1},{pattern:/[Ee](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/Episode\s*(\d{1,4})/i,group:1},{pattern:/(?:正在)?播放[::]\s*(\d{1,4})/,group:1},{pattern:/(?:第\s*)?[零一二三四五六七八九十百\d]+\s*å­£\s*[||]\s*(\d{1,4})/,group:1},{pattern:/[\[【\((](\d{1,4})[\]】\))]/,group:1},{pattern:/@@@(\d{1,4})/,group:1},{pattern:/(?:^|[\s_\-])(\d{1,4})x(?:[\s_\-]|$)/i,group:1},{pattern:/\s(\d{1,4})\.(?:mp4|mkv|avi|mov|mp3|1080|720|4k|2k)/i,group:1},{pattern:/[_\-](\d{1,4})(?:\s|$|\.)/,group:1},{pattern:/\s(\d{1,4})\s/,group:1},{pattern:/\s(\d{1,4})$/,group:1},{pattern:/^(\d{1,4})\s/,group:1},{pattern:/(\d{1,4})(?:\s|$)$/,group:1}],Ymr=[{pattern:/(\d{4})[.\-\/å¹´](\d{1,2})[.\-\/月](\d{1,2})/,type:"ymd"},{pattern:/(\d{4})(\d{2})(\d{2})/,type:"ymd_compact"}];function A4(t){let e=String(t||"").trim();if(!e)return"";if(O.animeTitleSimplified)try{e=Gt(e)}catch{}return Fr(e.toLowerCase())}function kst(t){let e=String(t||"").replace(/\D/g,"");return e.length>=8?e.slice(0,8):""}function Jmr(t){let e=String(t||"");return Vmr.forEach(([r,n])=>{e=e.replace(r,n)}),e}function Bst(t){let e=String(t||"");return zmr.forEach(([n,s],i)=>{e=e.replace(n,s)}),e.replace(/\s+/g," ").trim()}function Lst(t){if(!t)return null;let e=String(t);for(let{pattern:s,group:i,chinese:a}of Kmr){let o=e.match(s);if(o&&o[i]!==void 0){let c=o[i];if(a){let u=tg(c);if(u!==null&&!isNaN(u))return u}else{let u=parseInt(c,10);if(!isNaN(u)&&u>0&&u<1e4)return u}}}for(let{pattern:s,type:i}of Ymr){let a=e.match(s);if(a){if(i==="ymd"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}else if(i==="ymd_compact"){let o=parseInt(a[1],10),c=parseInt(a[2],10),u=parseInt(a[3],10);if(o>=2e3&&o<=2099&&c>=1&&c<=12&&u>=1&&u<=31)return o*1e4+c*100+u}}}let r=Bst(t),n=lf(r);return n!==null?n:null}function Xmr(t){let e=String(t||"").trim();if(!e)return[];let r=[],n=a=>{let o=Fr(String(a||"").trim());!o||r.includes(o)||r.push(o)};n(e);let s=Fr(Jmr(e)).trim();s&&s!==e&&n(s);let i=Fr(e.replace(/[\(\[(【].*$/,"")).trim();return i&&i!==e&&n(i),r.sort((a,o)=>a.length-o.length)}function Zmr(t){let e=new URL(t.url),r=e.pathname.replace(/\/+$/,""),n="/api/v2/",s="/danmaku",i="",a=r.indexOf(n);if(a>=0)i=r.slice(0,a);else{let o=r.indexOf(s);o>=0?i=r.slice(0,o):i=r}return`${e.origin}${i}`}async function ehr(t,e){if(e.method==="GET")return{name:t.searchParams.get("name")||"",episode:t.searchParams.get("episode")||""};try{let r=e.clone(),n=(r.headers.get("content-type")||"").toLowerCase();if(n.includes("application/json")){let i=await r.json();return{name:i?.name||"",episode:i?.episode||""}}if(n.includes("application/x-www-form-urlencoded")||n.includes("multipart/form-data")){let i=await r.formData();return{name:i.get("name")||"",episode:i.get("episode")||""}}let s=await r.text();if(s)try{let i=JSON.parse(s);return{name:i?.name||"",episode:i?.episode||""}}catch{let a=new URLSearchParams(s);return{name:a.get("name")||"",episode:a.get("episode")||""}}}catch(r){_("warn",`[system] [Fongmi] \u89E3\u6790\u8BF7\u6C42\u53C2\u6570\u5931\u8D25: ${r.message}`)}return{name:"",episode:""}}function thr(t,e,r,n){let s=Math.max(0,200-n),i=Bst(r),a=A4(i);if(!a)return s;let o=e?.episodeTitle||"",c=A4(o),u=A4(rg(o)),l=A4(t?.animeTitle||"");(c===a||u===a)&&(s+=1e4),(c.includes(a)||a.includes(c))&&(s+=4500),u&&(u.includes(a)||a.includes(u))&&(s+=2500);let d=Lst(i),f=Lst(o),p=parseInt(e?.episodeNumber||`${n+1}`,10);d!==null&&f!==null&&d===f&&(s+=7e3),d!==null&&Number.isFinite(p)&&d===p&&(s+=4e3);let m=kst(i),h=kst(o);return m&&h&&m===h&&(s+=9e3),m&&a.includes(m)&&(s+=800),l.includes("\u7EFC\u827A")&&m&&h&&(s+=1200),l.includes("\u7EFC\u827A")&&m&&!h&&d===null&&(s-=1500),s}function rhr(t,e,r){let n=[];for(let s of t){let i=Fg(s,e);if(!i?.success||!i?.bangumi?.episodes?.length)continue;let a=i.bangumi.episodes;O.enableAnimeEpisodeFilter&&(a=a.filter(o=>!O.episodeTitleFilter.test(o.episodeTitle))),a=$g(a),a.forEach((o,c)=>{let u=`${r}/api/v2/comment/${encodeURIComponent(o.episodeId)}?format=xml`;n.push({anime:s,episode:o,index:c,commentUrl:u})})}return n}async function jie(t,e){let{name:r,episode:n}=await ehr(t,e);if(!r)return Be([],200);if(O.titleMappingTable&&O.titleMappingTable.size>0){let f=O.titleMappingTable.get(r);f&&(_("info",`[system] [Fongmi] Title mapped from original: ${r} to: ${f}`),r=f)}let s=new URL(t.toString()),i=new Map,a=Xmr(r),o=[];for(let f of a){s.searchParams.set("keyword",f);let m=await(await sE(s,null,null,i)).json();if(o=Array.isArray(m?.animes)?m.animes:[],o.length){f!==r&&_("info",`[system] [Fongmi] Search fallback hit: raw=${r}, keyword=${f}, episode=${n}`);break}}if(!o.length)return _("info",`[system] [Fongmi] No danmaku candidates for name=${r}, episode=${n}`),Be([],200);let c=Zmr(e),u=rhr(o,i,c).map(f=>({...f,score:thr(f.anime,f.episode,n,f.index)})).sort((f,p)=>p.score-f.score),l=new Set,d=[];for(let f of u)if(!(!f?.commentUrl||l.has(f.commentUrl))&&(l.add(f.commentUrl),d.push({name:`${f.anime.animeTitle} - ${f.episode.episodeTitle}`,url:f.commentUrl}),d.length>=1e3))break;return _("info",`[system] [Fongmi] name=${r}, episode=${n}, candidates=${d.length}`),Be(d,200)}Pt();ar();Pt();var Mst=` /* \u57FA\u7840\u6837\u5F0F - Zen-iOS Hybrid Design */ @import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;800&display=swap'); @@ -1517,7 +1517,7 @@ h2 { .text-monospace { font-family: 'SF Mono', 'Menlo', monospace; } -`;var Dst=` +`;var Wst=` /* \u7EC4\u4EF6\u6837\u5F0F - Zen-iOS Hybrid Design */ /* \u5BFC\u822A\u6309\u94AE\uFF1A\u80F6\u56CA\u5F0F\u8BBE\u8BA1 */ @@ -3441,7 +3441,7 @@ h2 { .mapping-status.success { color: #28a745; } .mapping-status.warning { color: #d39e00; } .mapping-text { color: #555; word-break: break-all; } -`;var Bst=` +`;var $st=` /* \u8868\u5355\u6837\u5F0F - Zen-iOS Hybrid Design */ .form-group { margin-bottom: 24px; @@ -3883,7 +3883,7 @@ input:checked + .slider:before { font-family: 'SF Mono', monospace; font-size: 13px; } -`;var Lst=` +`;var Fst=` /* \u54CD\u5E94\u5F0F\u6837\u5F0F - Zen-iOS Hybrid Design */ @media (max-width: 768px) { body { @@ -4054,7 +4054,7 @@ input:checked + .slider:before { margin-top: 16px; } } -`;var Mst=` +`;var Ust=` // \u81EA\u5B9A\u4E49\u5F39\u7A97\u7EC4\u4EF6 function createCustomAlert() { // \u68C0\u67E5\u662F\u5426\u5DF2\u5B58\u5728\u81EA\u5B9A\u4E49\u5F39\u7A97\u5143\u7D20 @@ -4655,7 +4655,7 @@ function escapeHtml(text) { // \u9875\u9762\u52A0\u8F7D\u5B8C\u6210\u540E\u521D\u59CB\u5316 init(); -`;var Wst=` +`;var qst=` // \u6E32\u67D3\u914D\u7F6E\u9884\u89C8 let currentPreviewCategory = 'api'; @@ -4753,7 +4753,7 @@ function getCategoryName(category) { }; return names[category] || category; } -`;var $st=` +`;var jst=` // \u65E5\u5FD7\u5168\u5C40\u8FC7\u6EE4\u72B6\u6001 let currentLogFilter = 'ALL'; @@ -5010,7 +5010,7 @@ function highlightJSON(obj) { return '' + match + ''; }); } -`;var Fst=` +`;var Hst=` // API \u914D\u7F6E const apiConfigs = { searchAnime: { @@ -6443,7 +6443,7 @@ function renderDanmuList() { function loadMoreDanmu() { renderDanmuList(); } -`;var Ust=` +`;var Qst=` // \u63A8\u9001\u5F39\u5E55\u529F\u80FD\u76F8\u5173 // \u4ECE\u73AF\u5883\u53D8\u91CF\u83B7\u53D6\u9ED8\u8BA4\u63A8\u9001\u5730\u5740 @@ -6688,7 +6688,7 @@ async function pushDanmu(pushUrl, commentUrl, episodeTitle) { } } } -`;var qst=` +`;var Gst=` // \u8BF7\u6C42\u8BB0\u5F55\u76F8\u5173\u529F\u80FD async function renderRequestRecords() { const recordsContainer = document.getElementById('request-records-list'); @@ -6797,7 +6797,7 @@ document.addEventListener('DOMContentLoaded', function() { } }); -`;var jst=` +`;var Vst=` // \u5168\u5C40\u53D8\u91CF\u5B9A\u4E49 let isMergeMode = false; let stagingTags = []; @@ -9625,7 +9625,7 @@ function fillOffsetEntity(title, source) { applyInputFeedback(inputEl); } } -`;var Hst=` +`;var zst=` @@ -9634,10 +9634,10 @@ function fillOffsetEntity(title, source) { LogVar\u5F39\u5E55API - - - - + + + + @@ -9990,33 +9990,33 @@ function fillOffsetEntity(title, source) { -`;_t();var ya=class{static async getHandler(e){switch(e?.toLowerCase()){case"cloudflare":let{CloudflareHandler:r}=await Promise.resolve().then(()=>(Gst(),Qst));return new r;case"vercel":let{VercelHandler:n}=await Promise.resolve().then(()=>(Vst(),Kst));return new n;case"netlify":let{NetlifyHandler:s}=await Promise.resolve().then(()=>(Yst(),zst));return new s;case"edgeone":let{EdgeoneHandler:i}=await Promise.resolve().then(()=>(Xst(),Jst));return new i;case"huggingface":let{HuggingfaceHandler:a}=await Promise.resolve().then(()=>(eit(),Zst));return new a;case"node":let{NodeHandler:o}=await import(["./node-handler",".js"].join(""));return new o;default:let{NodeHandler:c}=await import(["./node-handler",".js"].join(""));return new c}}static getSupportedPlatforms(){return["cloudflare","vercel","netlify","edgeone","huggingface","node"]}};function zie(){return new Response(Hst.replace("globals.currentToken",O.currentToken),{headers:{"Content-Type":"text/html; charset=utf-8","Access-Control-Allow-Origin":"*"}})}function A4(t=!1){let e=O.envVarConfig,r={api:[],source:[],match:[],danmu:[],cache:[],system:[]},n={...O.accessedEnvVars,localCacheValid:O.localCacheValid,redisValid:O.redisValid,localRedisValid:O.localRedisValid,aiValid:O.aiValid,deployPlatform:O.deployPlatform};Object.keys(n).forEach(o=>{let c=e[o]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"},u=c.category||"system";r[u].push({key:o,value:n[o].value||n[o],type:n[o].type||c.type||"text",description:c.description||"\u65E0\u63CF\u8FF0",options:n[o].options||c.options})});let i=(O.adminToken||"").trim()!=="",a={...O.originalEnvVars};return(!t||O.currentToken!==O.adminToken)&&Object.keys(a).forEach(o=>{(O.currentToken!==O.token||o!=="TOKEN")&&o in n&&/^\*+$/.test(n[o])&&(a[o]=n[o])}),Le({message:"Welcome to the LogVar Danmu API server",version:O.VERSION,envs:n,categorizedEnvVars:r,envVarConfig:e,originalEnvVars:a,hasAdminToken:i,repository:"https://github.com/huangxd-/danmu_api.git",description:"\u4E00\u4E2A\u4EBA\u4EBA\u90FD\u80FD\u90E8\u7F72\u7684\u57FA\u4E8E js \u7684\u5F39\u5E55 API \u670D\u52A1\u5668\uFF0C\u652F\u6301\u7231\u4F18\u817E\u8292\u54D4\u54AA\u4EBA\u97E9\u5DF4\u72D0\u4E50\u897F\u57CB\u5E06\u5F39\u5E55\u76F4\u63A5\u83B7\u53D6\uFF0C\u517C\u5BB9\u5F39\u5F39play\u7684\u641C\u7D22\u3001\u8BE6\u60C5\u67E5\u8BE2\u548C\u5F39\u5E55\u83B7\u53D6\u63A5\u53E3\u89C4\u8303\uFF0C\u5E76\u63D0\u4F9B\u65E5\u5FD7\u8BB0\u5F55\uFF0C\u652F\u6301vercel/netlify/edgeone/cloudflare/docker/hf\u7B49\u90E8\u7F72\u65B9\u5F0F\uFF0C\u4E0D\u7528\u63D0\u524D\u4E0B\u8F7D\u5F39\u5E55\uFF0C\u6CA1\u6709nas\u6216\u5C0F\u9E21\u4E5F\u80FD\u4E00\u952E\u90E8\u7F72\u3002",notice:"\u672C\u9879\u76EE\u4EC5\u4E3A\u4E2A\u4EBA\u5B66\u4E60\u7231\u597D\u5F00\u53D1\uFF0C\u4EE3\u7801\u5F00\u6E90\u3002\u5982\u6709\u4EFB\u4F55\u4FB5\u6743\u884C\u4E3A\uFF0C\u8BF7\u8054\u7CFB\u672C\u4EBA\u5220\u9664\u3002\u6709\u95EE\u9898\u63D0issue\u6216\u79C1\u4FE1\u673A\u5668\u4EBA\u90FDok\uFF0CTG MSG ROBOT: [https://t.me/ddjdd_bot]; \u63A8\u8350\u52A0\u4E92\u52A9\u7FA4\u54A8\u8BE2\uFF0CTG GROUP: [https://t.me/logvar_danmu_group]; \u5173\u6CE8\u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0\u5185\u5BB9\uFF0CTG CHANNEL: [https://t.me/logvar_danmu_channel]\u3002"})}async function tit(){try{let t=O.deployPlatform;if(_("info",`[system] [Server] Deployment request received for platform: ${t}`),t.toLowerCase()==="node")return _("info","[system] [Server] Node/Docker deployment - no redeployment needed, config changes take effect automatically"),Le({success:!0,message:"Node/Docker deployment - configuration changes take effect automatically"},200);let e=await ya.getHandler(t);return e?await e.deploy()?(_("info",`[system] [Server] Deployment triggered successfully for platform: ${t}`),Le({success:!0,message:"Deployment triggered successfully"},200)):(_("error",`[system] [Server] Failed to trigger deployment for platform: ${t}`),Le({success:!1,message:"Failed to trigger deployment"},500)):(_("error",`[system] [Server] No handler found for platform: ${t}`),Le({success:!1,message:`No handler found for platform: ${t}`},400))}catch(t){return _("error",`[system] [Server] Deployment error: ${t.message}`),Le({success:!1,message:`Deployment failed: ${t.message}`},500)}}function rit(){let t=O.logBuffer.map(r=>`[${r.timestamp}] ${r.level}: ${C5e(r.message)}`).join(` -`),e=t;return O.currentToken!==O.adminToken&&(e=t.replace(/(client\s+ip:\s*)([^\n\r]*)/gi,(r,n,s)=>{let i=s.replace(/[^.\s\n\r]/g,"*");return n+i})),new Response(e,{headers:{"Content-Type":"text/plain; charset=utf-8"}})}function nit(){return O.logBuffer=[],Le({success:!0,message:"Logs cleared"},200)}async function sit(){try{O.animes=[],O.episodeIds=[],O.episodeNum=10001,O.lastSelectMap=new Map,O.reqRecords=[],O.todayReqNum=0,O.searchCache=new Map,O.commentCache=new Map,O.requestHistory=new Map;try{Z8e(!0),O.useBangumiData&&YB(O.deployPlatform,!1).catch(t=>{_("warn",`[system] [Server] Bangumi-Data background reload failed: ${t.message}`)})}catch(t){_("error",`[system] [Server] Failed to clear Bangumi-Data cache: ${t.message}`)}_("info","[system] [Server] Memory cache cleared successfully");try{if(O.localCacheValid){let{updateLocalCaches:t}=await Promise.resolve().then(()=>($n(),j8e));await t(),_("info","[system] [Server] Local cache cleared successfully")}}catch(t){_("warn",`[system] [Server] Local cache may not be available: ${t.message}`)}try{if(O.redisValid){let{updateRedisCaches:t}=await Promise.resolve().then(()=>(kB(),O8e));await t(),_("info","[system] [Server] Redis cache cleared successfully")}}catch(t){_("warn",`[system] [Server] Redis may not be available: ${t.message}`)}try{if(O.localRedisValid){let{updateLocalRedisCaches:t}=await Promise.resolve().then(()=>($T(),YL));await t(),_("info","[system] [Server] LocalRedis cache cleared successfully")}}catch(t){_("warn",`[system] [Server] LocalRedis may not be available: ${t.message}`)}return _("info","[system] [Server] All caches cleared successfully"),Le({success:!0,message:"Cache cleared successfully",clearedItems:{animes:0,episodeIds:0,episodeNum:10001,lastSelectMap:0,searchCache:0,commentCache:0,requestHistory:0,reqRecords:0,todayReqNum:0}},200)}catch(t){return _("error",`[system] [Server] Cache clear failed: ${t.message}`),Le({success:!1,message:`Cache clear failed: ${t.message}`},500)}}function Xmr(t){let e=t.indexOf("?");if(e===-1)return t;let r=t.slice(0,e),s=t.slice(e+1).replace(/([^&=]+)=([^&]*)/g,(i,a)=>`${a}=***`);return`${r}?${s}`}function Vie(t){if(t==null)return t;if(Array.isArray(t))return t.map(Vie);if(typeof t=="object"){let e={};for(let r of Object.keys(t))e[r]=Vie(t[r]);return e}return"***"}function iit(){let t=[...O.reqRecords].reverse(),e=O.todayReqNum||0;return O.currentToken!==O.adminToken&&(t=t.map(r=>{let n={...r};return n.clientIp&&(n.clientIp=n.clientIp.replace(/[^.]/g,"*")),typeof n.interface=="string"&&(n.interface=Xmr(n.interface)),n.params!=null&&(n.params=Vie(n.params)),n})),Le({records:t,todayReqNum:e},200)}function ait(){try{let t=[...O.animes||[]].reverse(),e=new Map;t.forEach(n=>{n?.source&&n?.animeId&&e.set(`${n.source}_${n.animeId}`,n)});let r=t.filter(n=>!n.isHiddenChild).map(n=>{let s=typeof n.toJson=="function"?n.toJson():{...n},{links:i=[],mergedChildren:a=[],...o}=s;return{...o,episodes:o.episodeCount||o.episodes||1,links:i,mergedChildren:a.map(c=>{let u=e.get(`${c.source}_${c.animeId}`),l=typeof u?.toJson=="function"?u.toJson():u,d=l?.links?.length>0?l.links:c.links||[];return{...c,episodes:c.episodeCount||c.episodes||1,links:d}})}});return Le({success:!0,data:r},200)}catch(t){return _("error",`[system] [Server] Fetch cache animes failed: ${t.message}`),Le({success:!1,message:`\u83B7\u53D6\u7F13\u5B58\u5931\u8D25: ${t.message}`},500)}}ir();_t();Ot();async function oit(t){try{let{key:e,value:r}=await t.json();if(!e)return Le({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await ya.getHandler(n)).setEnv(e,r)?Le({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u6210\u529F`}):Le({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Le({success:!1,message:`\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function cit(t){try{let{key:e,value:r}=await t.json();if(!e)return Le({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await ya.getHandler(n)).addEnv(e,r)?Le({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u6210\u529F`}):Le({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Le({success:!1,message:`\u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function uit(t){try{let{key:e}=await t.json();if(!e)return Le({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let r=O.deployPlatform;return await(await ya.getHandler(r)).delEnv(e)?Le({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u6210\u529F`}):Le({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Le({success:!1,message:`\u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function lit(t){try{let e=await t.json(),r=e.aiBaseUrl||O.aiBaseUrl||"https://api.openai.com/v1",n=e.aiModel||O.aiModel||"gpt-4o",s=e.aiApiKey||O.aiApiKey;if(!s)return Le({success:!1,ok:!1,message:"AI_API_KEY \u672A\u914D\u7F6E"},400);let a=await new df({baseURL:r,model:n,apiKey:s,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify();return a.ok?Le({success:!0,ok:!0,message:"AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F"}):Le({success:!1,ok:!1,message:`AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25: ${a.error}`},200)}catch(e){return _("error","[system] [Server] AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25:",e),Le({success:!1,ok:!1,message:`AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25: ${e.message}`},500)}}hs();ir();_t();Ot();var dit=new Map;function fit(){try{if(O&&typeof O.bilibliCookie=="string"&&O.bilibliCookie)return O.bilibliCookie}catch{}try{if(O&&O.env&&typeof O.env.BILIBILI_COOKIE=="string"&&O.env.BILIBILI_COOKIE)return O.env.BILIBILI_COOKIE}catch{}return typeof process<"u"&&process.env&&typeof process.env.BILIBILI_COOKIE=="string"&&process.env.BILIBILI_COOKIE?process.env.BILIBILI_COOKIE:""}function Zmr(t){try{let e=t.match(/SESSDATA=([^;]+)/);if(!e)return Math.floor(Date.now()/1e3)+30*24*60*60;let r=e[1],n=decodeURIComponent(r),s=Math.floor(Date.now()/1e3),i=(n.match(/\d{10,}/g)||[]).map(c=>Number(c)).filter(c=>Number.isFinite(c)),a=10*365*24*60*60,o=i.filter(c=>c>s&&c0)return Math.max(...o);if(n.includes(",")){let c=n.split(",");if(c.length>1){let u=parseInt(c[1],10);if(!isNaN(u)&&u>s)return u}}}catch{}return Math.floor(Date.now()/1e3)+30*24*60*60}async function pit(t){if(!t)return{isValid:!1,error:"\u7F3A\u5C11Cookie"};if(!t.includes("SESSDATA")||!t.includes("bili_jct"))return{isValid:!1,error:"Cookie\u683C\u5F0F\u4E0D\u5B8C\u6574\uFF08\u9700\u8981\u5305\u542B SESSDATA \u548C bili_jct\uFF09"};try{let e=await fetch("https://api.bilibili.com/x/web-interface/nav",{method:"GET",headers:{Cookie:t,"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}});if(!e.ok){let n=await e.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25\uFF1AHTTP ${e.status}${n?" - "+n.slice(0,80):""}`}}let r;try{r=await e.json()}catch(n){let s=await e.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${s?s.slice(0,80):n.message}`}}return r?.code===0&&r?.data?.isLogin?{isValid:!0,data:{uname:r.data.uname,mid:r.data.mid,face:r.data.face}}:r?.code===0&&r?.data&&r.data.isLogin===!1?{isValid:!1,error:"\u8D26\u53F7\u672A\u767B\u5F55\uFF08Cookie \u5DF2\u5931\u6548\uFF09"}:{isValid:!1,error:r?.message||"Cookie\u65E0\u6548\u6216\u5DF2\u8FC7\u671F"}}catch(e){return{isValid:!1,error:"\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25: "+e.message}}}async function mit(t,e="saved"){if(!t)return{success:!0,data:{isValid:!1,checked:e,error:"\u672A\u914D\u7F6ECookie"}};let r=await pit(t);return r.isValid?{success:!0,data:{isValid:!0,checked:e,uname:r.data?.uname||"\u672A\u77E5\u7528\u6237",expiresAt:Zmr(t)}}:{success:!0,data:{isValid:!1,checked:e,error:r.error||"Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548"}}}async function hit(){try{let t=fit(),e=await mit(t,"saved");return Le(e)}catch(t){return Le({success:!1,message:t.message},500)}}async function git(t){try{let e={};try{e=await t.json()}catch{e={}}let r=typeof e.cookie=="string"?e.cookie.trim():"",n=!r||/^\*+$/.test(r),s=n?fit():r,a=await mit(s,n?"saved":"input");return Le(a)}catch(e){return Le({success:!1,message:e.message},500)}}async function Ait(){try{let e=await(await fetch("https://passport.bilibili.com/x/passport-login/web/qrcode/generate",{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}})).json();return e.code!==0?Le({success:!1,message:e.message||"\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25"},500):(dit.set(e.data.qrcode_key,{createTime:Date.now(),status:"generated"}),Le({success:!0,data:e.data}))}catch(t){return Le({success:!1,message:t.message},500)}}function ehr(t){let e=new Map,r=[];try{if(t?.headers&&typeof t.headers.getSetCookie=="function")r=t.headers.getSetCookie()||[];else{let u=t?.headers?.get?.("set-cookie");u&&(r=[u])}}catch{r=[]}for(let u of r){if(!u||typeof u!="string")continue;let l=u.split(";")[0],d=l.indexOf("=");if(d<=0)continue;let f=l.slice(0,d).trim(),p=l.slice(d+1).trim();f&&e.set(f,p)}let n=e.get("SESSDATA"),s=e.get("bili_jct"),i=e.get("DedeUserID"),a=e.get("DedeUserID__ckMd5"),o=e.get("sid");if(!n)return null;let c=[`SESSDATA=${n}`];return s&&c.push(`bili_jct=${s}`),i&&c.push(`DedeUserID=${i}`),a&&c.push(`DedeUserID__ckMd5=${a}`),o&&c.push(`sid=${o}`),c.join("; ")}async function yit(t){let e=null;try{let r=await t.json();if(e=r.qrcodeKey||r.qrcode_key,!e)return Le({success:!1,message:"\u7F3A\u5C11qrcodeKey\u53C2\u6570"},400);let n=await fetch(`https://passport.bilibili.com/x/passport-login/web/qrcode/poll?qrcode_key=${e}`,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}}),s=await n.json(),i=null;if(s?.data?.code===0&&(i=ehr(n),!i&&s?.data?.url))try{let o=new URL(s.data.url),c=new URLSearchParams(o.search),u=decodeURIComponent(c.get("SESSDATA")||""),l=decodeURIComponent(c.get("bili_jct")||""),d=decodeURIComponent(c.get("DedeUserID")||"");if(u){let f=[`SESSDATA=${u}`];l&&f.push(`bili_jct=${l}`),d&&f.push(`DedeUserID=${d}`),i=f.join("; ")}}catch{}let a={success:!0,data:{code:s?.data?.code,message:s?.data?.message||""}};return i&&(a.data.cookie=i),Le(a)}catch(r){return Le({success:!1,message:r.message},500)}finally{e&&dit.delete(e)}}async function xit(t){try{let r=((await t.json()).cookie||"").trim();if(!r)return Le({success:!1,message:"\u7F3A\u5C11cookie\u53C2\u6570"},400);if(!r.includes("SESSDATA")||!r.includes("bili_jct"))return Le({success:!1,message:"Cookie\u683C\u5F0F\u4E0D\u6B63\u786E"},400);let n=await pit(r);if(!n.isValid)return Le({success:!1,message:"Cookie\u9A8C\u8BC1\u5931\u8D25: "+(n.error||"\u65E0\u6548")},400);let s=O.deployPlatform,i=await ya.getHandler(s);return i?await i.setEnv("BILIBILI_COOKIE",r)?Le({success:!0,data:{uname:n.data?.uname},message:"Cookie\u4FDD\u5B58\u6210\u529F"}):Le({success:!1,message:"Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u73AF\u5883\u53D8\u91CF\u5199\u5165\u5931\u8D25"},500):Le({success:!1,message:`Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u4E0D\u652F\u6301\u7684\u90E8\u7F72\u5E73\u53F0 ${s||"unknown"}`},400)}catch(e){return Le({success:!1,message:e.message},500)}}var gt;async function Eit(t,e,r,n,s){gt=zh.init(e);let i=new URL(t.url),a=i.pathname,o=t.method,c=a.includes("/search")||a.includes("/match")||a.includes("/danmaku");if(gt.useBangumiData&&await YB(r,c,s),gt.deployPlatform=r,r==="node"){await oz(a,r);let{judgeLocalRedisValid:h}=await Promise.resolve().then(()=>($T(),YL));await h(a)}if(await GV(a),!gt.aiValid&>.aiBaseUrl&>.aiModel&>.aiApiKey&&a!=="/favicon.ico"&&a!=="/robots.txt"&&(await new df({baseURL:gt.aiBaseUrl,model:gt.aiModel,apiKey:gt.aiApiKey,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify()).ok&&(gt.aiValid=!0),_("info",`[system] [Server] request url: ${JSON.stringify(i)}`),_("info",`[system] [Server] request path: ${a}`),_("info",`[system] [Server] client ip: ${n}`),gt.ipBlacklist?.length&>.ipBlacklist.some(A=>thr(A,n)))return _("warn",`[Utils] [IP Blacklist] Blocked request from IP: ${n}`),Le({errorCode:403,success:!1,errorMessage:"Forbidden"},403);let u=a.split("/").filter(Boolean),l=["api","v1","v2","search","match","bangumi","comment","danmaku"],d=u[0]||"",f=gt.token==="87654321",p=d===gt.token||d===gt.adminToken;if(gt.currentToken=p?d:f&&(d==="87654321"||l.includes(d))?d==="87654321"?d:"87654321":"",r==="node"&>.localCacheValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await az(),gt.redisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await QV(),r==="node"&>.localRedisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"){let{getLocalRedisCaches:h}=await Promise.resolve().then(()=>($T(),YL));await h()}if(["/api/v2/search/anime","/api/v2/match","/api/v2/search/episodes","/api/v2/fongmi/danmaku","/danmaku","/api/v2/bangumi","/api/v2/comment","/api/v2/segmentcomment"].some(h=>a.includes(h))){let h=gt.reqRecords.length>0?gt.reqRecords[gt.reqRecords.length-1]:null,A=new Date().toDateString();if(h){let v=new Date(h.timestamp).toDateString();_("info",`[system] [Server] currentDate: ${A}`),_("info",`[system] [Server] lastDate: ${v}`),v!==A?gt.todayReqNum=1:gt.todayReqNum++}else gt.todayReqNum=1;let g=t.url,b=g.indexOf("/api/v2");b!==-1&&(g=g.substring(b));let y=null;if(o==="POST"||o==="PUT"||o==="PATCH")try{let v=t.clone();if((v.headers.get("content-type")||"").includes("application/json"))y=await v.json();else{let R=await v.text();R&&(y=JSON.parse(R))}}catch{y=null}let x={interface:g,params:y,timestamp:new Date().toISOString(),method:o,clientIp:n};gt.reqRecords.push(x),gt.reqRecords.length>gt.MAX_RECORDS&&(gt.reqRecords=gt.reqRecords.slice(-gt.MAX_RECORDS))}if(a==="/"&&o==="GET")return zie();if(a==="/favicon.ico"||a==="/robots.txt"||o==="OPTIONS")return new Response(null,{status:204,headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, User-Agent"}});if(gt.token==="87654321"){if(u.length>0){if(u[0]==="87654321"||u[0]===gt.adminToken)a="/"+u.slice(1).join("/");else if(!l.includes(u[0]))return a==="/api/config"&&o==="GET"?A4(!1):(_("error",`[system] [Server] Invalid token in path: ${a}`),Le({errorCode:401,success:!1,errorMessage:"Unauthorized"},401))}}else{if(u.length<1||u[0]!==gt.token&&u[0]!==gt.adminToken)return a==="/api/config"&&o==="GET"?A4(!1):(_("error",`[system] [Server] Invalid or missing token in path: ${a}`),Le({errorCode:401,success:!1,errorMessage:"Unauthorized"},401));a="/"+u.slice(1).join("/")}if(a.endsWith("/danmaku/api/v2/fongmi/danmaku")&&(_("info",`[Path Fix] Collapsed nested danmaku path: "${a}" -> "/danmaku"`),a="/danmaku"),a==="/api/config"&&o==="GET")return A4(!0);if(a==="/api/reqrecords"&&o==="GET")return iit();if(_("info",`[system] [Server] ${a}`),a!=="/"&&a!=="/danmaku"&&a!=="/api/logs"&&!a.startsWith("/api/env")&&!a.startsWith("/api/deploy")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")){_("info",`[Path Check] Starting path normalization for: "${a}"`);let h=a;for(a=a.replace(/\/+/g,"/");a.startsWith("/api/v2/api/v2/");)_("info","[Path Check] Found redundant /api/v2 prefix. Cleaning..."),a=a.substring(7);a!==h?_("info",`[Path Check] Path after cleanup: "${a}"`):_("info","[Path Check] Path after cleanup: No cleanup needed.");let A=a;!a.startsWith("/api/v2")&&a!=="/"&&!a.startsWith("/api/logs")&&!a.startsWith("/api/env")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")&&(a.startsWith("/v2/")||a==="/v2"?(_("info","[Path Check] Path is missing /api prefix. Adding /api..."),a="/api"+a):a.startsWith("/api/")||a==="/api"?(_("info","[Path Check] Path is missing /v2 prefix. Adding /v2..."),a="/api/v2"+a.substring(4)):(_("info","[Path Check] Path is missing /api/v2 prefix. Adding /api/v2..."),a="/api/v2"+(a.startsWith("/")?a:"/"+a))),a===A&&_("info","[Path Check] Prefix Check: No prefix addition needed."),_("info",`[Path Check] Final normalized path: "${a}"`)}if(a==="/"&&o==="GET")return zie();if(a==="/api/v2/search/anime"&&o==="GET")return nE(i);if(a==="/api/v2/search/episodes"&&o==="GET")return wst(i);if(a==="/api/v2/fongmi/danmaku"&&(o==="GET"||o==="POST"))return qie(i,t);if(a==="/danmaku"&&(o==="GET"||o==="POST"))return qie(i,t);if(a==="/api/v2/match"&&o==="POST")return Tst(i,t,n);if(a.startsWith("/api/v2/bangumi/")&&o==="GET")return Wie(a);if((a.startsWith("/api/v2/comment")||a.startsWith("/api/v2/extcomment"))&&o==="GET"){let h=i.searchParams.get("format"),A=i.searchParams.get("url"),g=i.searchParams.get("segmentflag"),b=i.searchParams.get("duration"),y=g==="true"||g==="1",x=b==="true"||b==="1";if(A){if(lf(A)!==null)return _("info",`[Utils] [Rate Limit] Cache hit for URL: ${A}, skipping rate limit check`),Uie(A,h,y,x);if(gt.rateLimitMaxRequests>0){let w=Date.now(),N=60*1e3;qB(w),gt.requestHistory.has(n)||gt.requestHistory.set(n,[]);let B=gt.requestHistory.get(n).filter(M=>w-M<=N);if(B.length>=gt.rateLimitMaxRequests)return _("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${B.length}/${gt.rateLimitMaxRequests} requests in 1 minute)`),Le({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);B.push(w),gt.requestHistory.set(n,B),_("info",`[Utils] [Rate Limit] IP ${n} request count: ${B.length}/${gt.rateLimitMaxRequests}`)}return Uie(A,h,y,x)}if(!a.startsWith("/api/v2/comment/"))return _("error","[system] [Server] Missing commentId or url parameter"),Le({errorCode:400,success:!1,errorMessage:"Missing commentId or url parameter"},400);let v=parseInt(a.split("/").pop()),I=DI(v);if(I&&lf(I)!==null)return _("info",`[Utils] [Rate Limit] Cache hit for URL: ${I}, skipping rate limit check`),Fie(a,h,y,n,x);if(gt.rateLimitMaxRequests>0){let R=Date.now(),w=60*1e3;qB(R),gt.requestHistory.has(n)||gt.requestHistory.set(n,[]);let P=gt.requestHistory.get(n).filter(B=>R-B<=w);if(P.length>=gt.rateLimitMaxRequests)return _("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${P.length}/${gt.rateLimitMaxRequests} requests in 1 minute)`),Le({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);P.push(R),gt.requestHistory.set(n,P),_("info",`[Utils] [Rate Limit] IP ${n} request count: ${P.length}/${gt.rateLimitMaxRequests}`)}return Fie(a,h,y,n,x)}if(a.startsWith("/api/v2/segmentcomment")&&o==="POST")try{let h=i.searchParams.get("format"),A=await t.json(),g;try{g=fb.fromJson(A)}catch{return _("error","[system] [Server] Invalid JSON in request body for segment"),Le({errorCode:400,success:!1,errorMessage:"Invalid JSON in request body"},400)}return Rst(g,h)}catch(h){return _("error",`[system] [Server] Error processing segmentcomment request: ${h.message}`),Le({errorCode:500,success:!1,errorMessage:"Internal server error"},500)}return a==="/api/logs"&&o==="GET"?rit():a==="/api/logs/clear"&&o==="POST"?nit():a==="/api/env/set"&&o==="POST"?oit(t):a==="/api/env/add"&&o==="POST"?cit(t):a==="/api/env/del"&&o==="POST"?uit(t):a==="/api/deploy"&&o==="POST"?tit():a==="/api/cache/animes"&&o==="GET"?ait():a==="/api/cache/clear"&&o==="POST"?sit():a==="/api/cookie/status"&&o==="GET"?hit():a==="/api/cookie/qr/generate"&&o==="POST"?Ait():a==="/api/cookie/qr/check"&&o==="POST"?yit(t):a==="/api/cookie/verify"&&o==="POST"?git(t):a==="/api/cookie/save"&&o==="POST"?xit(t):a==="/api/ai/verify"&&o==="POST"?lit(t):Le({message:"Not found"},404)}function thr(t,e){return!t||!e||e==="unknown"?!1:t.type==="exact"?t.value===e:t.type==="regex"?t.value.test(e):t.type==="cidr"?rhr(e,t.ip,t.prefix):!1}function rhr(t,e,r){if(t.includes(":")||e.includes(":")){let o=bit(t),c=bit(e);if(!o||!c||r<0||r>128)return!1;let u=Math.floor(r/8),l=r%8;for(let d=0;d0){let d=255<<8-l&255;return(o[u]&d)===(c[u]&d)}return!0}let s=Yie(t),i=Yie(e);if(s===null||i===null||r<0||r>32)return!1;let a=r===0?0:4294967295<<32-r>>>0;return(s&a)===(i&a)}function Yie(t){let e=t.split(".");if(e.length!==4)return null;let r=e.map(n=>Number(n));return r.some(n=>Number.isNaN(n)||n<0||n>255)?null:(r[0]<<24>>>0)+(r[1]<<16)+(r[2]<<8)+r[3]}function bit(t){if(!t||typeof t!="string"||!t.includes(":"))return null;let r=t.trim().split("::");if(r.length>2)return null;let n=r[0]?r[0].split(":").filter(Boolean):[],s=r[1]?r[1].split(":").filter(Boolean):[],i=c=>{if(c.length===0)return c;let u=c[c.length-1];if(!u.includes("."))return c;let l=Yie(u);if(l===null)return null;let d=(l>>>16&65535).toString(16),f=(l&65535).toString(16);return[...c.slice(0,-1),d,f]};if(n=i(n),s=i(s),!n||!s)return null;if(r.length===1){if(n.length!==8)return null}else{let c=n.length+s.length;if(c>8)return null;let u=8-c;s=new Array(u).fill("0").concat(s)}let a=n.concat(s);if(a.length!==8)return null;let o=[];for(let c of a){if(!/^[0-9a-fA-F]{1,4}$/.test(c))return null;let u=parseInt(c,16);o.push(u>>8&255,u&255)}return o}var wu=null,aE=9321,y4=0,Ug=null,_it=!1,iE={...process.env,ADMIN_TOKEN:"douer"},x4=!1,mw=null,Nc=null,Tn={overrides:{},deletedKeys:[]};function _i(...t){}function hw(...t){}function Cit(){return y4>0}function nhr(){try{let byEval=eval("1 + 1")===2,byFunction=Function("return 2 + 2")()===4;return byEval&&byFunction}catch{return!1}}function Xie(){return{overrides:{},deletedKeys:[]}}function Tit(){let t=String(process.env.DANMU_ENV_STORE_FILE||"").trim();if(t)return t;let e=String(process.env.NODE_PATH||"").trim()||process.cwd();return nae.default.resolve(e,"danmu_env_overrides.json")}function shr(t){let e=Xie();if(!t||typeof t!="object")return e;let r=Array.isArray(t.deletedKeys)?t.deletedKeys.map(s=>String(s||"").trim()).filter(s=>s):[];e.deletedKeys=Array.from(new Set(r));let n=new Set(e.deletedKeys);return t.overrides&&typeof t.overrides=="object"&&!Array.isArray(t.overrides)&&Object.entries(t.overrides).forEach(([s,i])=>{let a=String(s||"").trim();!a||n.has(a)||(e.overrides[a]=i==null?"":String(i))}),e}function ihr(){Nc=Tit();try{if(!gw.default.existsSync(Nc)){Tn=Xie(),_i("loadPersistedEnvStore()",{loaded:!1,reason:"store file not found",path:Nc});return}let t=gw.default.readFileSync(Nc,"utf8"),e=t?JSON.parse(t):{};Tn=shr(e),_i("loadPersistedEnvStore()",{loaded:!0,path:Nc,overrides:Object.keys(Tn.overrides).length,deleted:Tn.deletedKeys.length})}catch(t){Tn=Xie(),hw("loadPersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Nc})}}function ahr(){try{Nc||(Nc=Tit());let t=nae.default.dirname(Nc);gw.default.mkdirSync(t,{recursive:!0});let e={version:1,updatedAt:new Date().toISOString(),overrides:Tn.overrides,deletedKeys:Tn.deletedKeys};return gw.default.writeFileSync(Nc,JSON.stringify(e,null,2),"utf8"),!0}catch(t){return hw("savePersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Nc||""}),!1}}function Zie(){let t={...process.env};return Object.entries(Tn.overrides).forEach(([e,r])=>{t[e]=r}),Tn.deletedKeys.forEach(e=>{delete t[e]}),ohr(t)}function ohr(t){let e=t||{},r=String(e.TOKEN||"").trim();e.TOKEN=r||"87654321";let n=String(e.SOURCE_ORDER||"").trim();e.SOURCE_ORDER=n||"tencent,youku,iqiyi,imgo,bilibili,dandan,renren,hanjutv";let s=String(e.STRICT_TITLE_MATCH||"").trim();e.STRICT_TITLE_MATCH=s||"true";let i=String(e.RATE_LIMIT_MAX_REQUESTS||"").trim();e.RATE_LIMIT_MAX_REQUESTS=i||"0";let a=String(e.ADMIN_TOKEN||"").trim();return e.ADMIN_TOKEN=a||"douer",e}function chr(t){return t==null?null:Array.isArray(t)?t.map(e=>String(e)).join(","):typeof t=="string"?t:typeof t=="number"||typeof t=="boolean"?String(t):null}function uhr(t,e){if(!t||typeof t!="object"||!t.originalEnvVars||typeof t.originalEnvVars!="object")return t;let r=t.originalEnvVars,n=t.envs&&typeof t.envs=="object"?t.envs:{};return Object.keys(r).forEach(s=>{let i=r[s];if(!(i==null||String(i).trim()===""))return;if(s==="TOKEN"){r[s]=String(e.TOKEN||"87654321");return}if(s==="ADMIN_TOKEN"){r[s]=String(e.ADMIN_TOKEN||"");return}let o=e[s];if(o!=null&&String(o).trim()!==""){r[s]=String(o);return}if(!Object.prototype.hasOwnProperty.call(n,s))return;let c=n[s];if(typeof c=="string"&&/^\*+$/.test(c))return;let u=chr(c);u!==null&&u!==""&&(r[s]=u)}),t}function Jie(t,e,r=!1){let n=String(t||"").trim();if(!n)return!1;let s=Object.prototype.hasOwnProperty.call(process.env,n),i=process.env[n],a=Object.prototype.hasOwnProperty.call(Tn.overrides,n),o=Tn.overrides[n],c=Tn.deletedKeys.includes(n);if(r)delete process.env[n],delete Tn.overrides[n],Tn.deletedKeys.includes(n)||Tn.deletedKeys.push(n);else{let u=e==null?"":String(e);process.env[n]=u,Tn.overrides[n]=u,Tn.deletedKeys=Tn.deletedKeys.filter(l=>l!==n)}return ahr()?(iE=Zie(),!0):(a?Tn.overrides[n]=o:delete Tn.overrides[n],c&&!Tn.deletedKeys.includes(n)&&Tn.deletedKeys.push(n),c||(Tn.deletedKeys=Tn.deletedKeys.filter(u=>u!==n)),s?process.env[n]=i:delete process.env[n],iE=Zie(),!1)}var lhr={async setEnv(t,e){return Jie(t,e,!1)?(_i("memoryNodeEnvHandler.setEnv()",{key:String(t||"")}),!0):!1},async addEnv(t,e){return Jie(t,e,!1)?(_i("memoryNodeEnvHandler.addEnv()",{key:String(t||"")}),!0):!1},async delEnv(t){return Jie(t,"",!0)?(_i("memoryNodeEnvHandler.delEnv()",{key:String(t||"")}),!0):!1}};function dhr(){x4||(mw=ya.getHandler,ya.getHandler=async function(e){let r=String(e||"").toLowerCase();return!r||r==="node"?lhr:mw.call(ya,e)},x4=!0,_i("installNodeEnvHotReloadPatch()",{patched:!0}))}function fhr(){!x4||!mw||(ya.getHandler=mw,mw=null,x4=!1,_i("uninstallNodeEnvHotReloadPatch()",{patched:!1}))}function phr(t){return t==null?Buffer.alloc(0):Buffer.isBuffer(t)?t:t instanceof ArrayBuffer?Buffer.from(t):ArrayBuffer.isView(t)?Buffer.from(t.buffer,t.byteOffset,t.byteLength):Buffer.from(String(t),"utf8")}async function mhr(t){if(!t||typeof t.getReader!="function")return Buffer.from(String(t??""),"utf8");let e=t.getReader(),r=[];try{for(;;){let{done:n,value:s}=await e.read();if(n)break;if(s!=null){if(Buffer.isBuffer(s)){r.push(s);continue}if(s instanceof Uint8Array){r.push(Buffer.from(s));continue}if(s instanceof ArrayBuffer){r.push(Buffer.from(s));continue}if(ArrayBuffer.isView(s)){r.push(Buffer.from(s.buffer,s.byteOffset,s.byteLength));continue}r.push(Buffer.from(String(s),"utf8"))}}}finally{typeof e.releaseLock=="function"&&e.releaseLock()}return r.length?Buffer.concat(r):Buffer.alloc(0)}async function hhr(t){if(t==null)return Buffer.alloc(0);if(Buffer.isBuffer(t))return t;if(t instanceof ArrayBuffer)return Buffer.from(t);if(ArrayBuffer.isView(t))return Buffer.from(t.buffer,t.byteOffset,t.byteLength);if(typeof t=="string")return Buffer.from(t,"utf8");if(typeof Blob=="function"&&t instanceof Blob){let e=await t.arrayBuffer();return Buffer.from(e)}return typeof t.getReader=="function"?mhr(t):Buffer.from(String(t),"utf8")}var Aw=class{constructor(e=void 0){if(this._map=new Map,!!e){if(typeof e.forEach=="function"){e.forEach((r,n)=>this.set(n,r));return}if(Array.isArray(e)){e.forEach(([r,n])=>this.set(r,n));return}typeof e=="object"&&Object.entries(e).forEach(([r,n])=>this.set(r,n))}}set(e,r){this._map.set(String(e).toLowerCase(),String(r))}get(e){let r=this._map.get(String(e).toLowerCase());return r===void 0?null:r}has(e){return this._map.has(String(e).toLowerCase())}delete(e){this._map.delete(String(e).toLowerCase())}forEach(e,r=void 0){for(let[n,s]of this._map.entries())e.call(r,s,n,this)}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}},eae=class t{constructor(e,r={}){this.url=String(e||""),this.method=String(r.method||"GET").toUpperCase();let n=globalThis.Headers||Aw;this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this._bodyBuffer=phr(r.body)}clone(){return new t(this.url,{method:this.method,headers:Object.fromEntries(this.headers.entries()),body:this._bodyBuffer})}async text(){return this._bodyBuffer.toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){return this._bodyBuffer.buffer.slice(this._bodyBuffer.byteOffset,this._bodyBuffer.byteOffset+this._bodyBuffer.byteLength)}},tae=class{constructor(e=null,r={}){let n=globalThis.Headers||Aw;this.status=Number(r.status||200),this.statusText=String(r.statusText||""),this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this.ok=this.status>=200&&this.status<300,this.body=e,this.bodyUsed=!1,this._bodyBuffer=null,this._bodyBufferPromise=null}async _ensureBodyBuffer(){return this._bodyBuffer?this._bodyBuffer:(this._bodyBufferPromise||(this._bodyBufferPromise=hhr(this.body).then(e=>(this._bodyBuffer=e,this.bodyUsed=!0,e))),this._bodyBufferPromise)}async text(){return(await this._ensureBodyBuffer()).toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){let e=await this._ensureBodyBuffer();return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}};function ghr(){_it||(typeof globalThis.Headers!="function"&&(globalThis.Headers=Aw),typeof globalThis.Response!="function"&&(globalThis.Response=tae),typeof globalThis.Request!="function"&&(globalThis.Request=eae),_it=!0,_i("installWebApiPolyfills()",{hasFetch:typeof globalThis.fetch=="function",hasRequest:typeof globalThis.Request=="function",hasHeaders:typeof globalThis.Headers=="function",hasResponse:typeof globalThis.Response=="function"}))}async function Sit(t,e={}){let r=await Ae({url:t,method:e.method||"GET",headers:e.headers||{},data:e.body,signal:e.signal,responseType:"arraybuffer",validateStatus:()=>!0,timeout:1e4}),n=Buffer.from(r.data),s={};return Object.entries(r.headers||{}).forEach(([i,a])=>{s[i]=String(a)}),{ok:r.status>=200&&r.status<300,status:r.status,statusText:r.statusText||"",headers:new Headers(s),url:String(t),async text(){return n.toString("utf8")},async json(){return JSON.parse(n.toString("utf8"))},async arrayBuffer(){return n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}}}function Ahr(){_i("installPatches()",{hasFetch:typeof globalThis.fetch=="function"}),Ug=globalThis.fetch,globalThis.fetch=function(e,r){return y4>0?Sit(e,r):typeof Ug=="function"?Ug(e,r):Sit(e,r)}}function rae(){if(_i("uninstallPatches()",{hasOriginalFetch:!!Ug}),typeof Ug=="function")globalThis.fetch=Ug;else try{delete globalThis.fetch}catch{globalThis.fetch=void 0}Ug=null}function wit(t=9321){if(aE=t,ghr(),dhr(),ihr(),iE=Zie(),_i("loadDanmuEnv()",{source:"process.env + persisted store",adminTokenFallback:iE.ADMIN_TOKEN==="douer",persistedEnvStorePath:Nc,persistedOverrides:Object.keys(Tn.overrides).length,persistedDeletedKeys:Tn.deletedKeys.length}),_i("start()",{port:t,alreadyRunning:!!wu,node:process.version,platform:`${process.platform}/${process.arch}`,v8:process.versions?.v8,dynamicCode:nhr()}),!wu){Ahr();try{wu=Iit.default.createServer(async(e,r)=>{y4++;let n=`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,s=Date.now();_i(`[${n}] inbound`,{method:e.method,url:e.url,host:e.headers.host,remote:e.socket?.remoteAddress||"unknown"});try{let i=`http://${e.headers.host||`127.0.0.1:${t}`}${e.url}`,a=(()=>{try{return new URL(i).pathname||""}catch{return String(e.url||"")}})(),o=e.method==="GET"&&a.endsWith("/api/config"),c;(e.method==="POST"||e.method==="PUT")&&(c=await new Promise(p=>{let m="";e.on("data",h=>m+=h),e.on("end",()=>p(m))}));let u=new Request(i,{method:e.method,headers:Object.fromEntries(Object.entries(e.headers).map(([p,m])=>[p,String(m)])),body:c||void 0}),l={...iE},d=await Eit(u,l,"node",e.socket?.remoteAddress||"unknown");_i(`[${n}] worker done`,{status:d.status}),r.statusCode=d.status,d.headers.forEach((p,m)=>{let h=m.toLowerCase();h!=="content-encoding"&&h!=="content-length"&&r.setHeader(m,p)});let f;if(o){let p=await d.text();try{let m=JSON.parse(p),h=uhr(m,l);f=Buffer.from(JSON.stringify(h),"utf8")}catch{f=Buffer.from(p||"","utf8")}}else f=Buffer.from(await d.arrayBuffer());r.setHeader("Content-Length",f.length),r.end(f)}catch(i){hw(`[${n}] request failed`,{message:i?.message||String(i),stack:i?.stack||""}),r.statusCode=500,r.end("Internal Server Error")}finally{_i(`[${n}] complete`,{costMs:Date.now()-s}),y4--}}),wu.listen(t,"0.0.0.0",()=>{let e=wu?.address?.();_i("listen ok",{address:e})}),wu.on("error",e=>{hw("server error",{message:e?.message||String(e),code:e?.code}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),rae(),wu=null})}catch(e){hw("start() failed",{message:e?.message||String(e),stack:e?.stack||""}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),rae()}}}function Rit(){_i("stop()",{hasServer:!!wu,port:aE}),wu&&(wu.close(),wu=null),fhr(),rae()}function qcn(){return aE}function vit(t){let e=String(t||"").trim().toLowerCase();return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function yhr(t){let e=String(t||"").trim();if(!e)return"";try{return new URL(e).hostname||""}catch{try{return new URL(`http://${e}`).hostname||""}catch{return e.replace(/^\w+:\/\//,"").split("/")[0].split(":")[0].trim()}}}function xhr(t){let e=yhr(t);if(e&&!vit(e))return e;let r=String(k0()||"").trim();return r&&!vit(r)?r:"127.0.0.1"}function bhr(t){let e=Number.parseInt(String(t??""),10);return Number.isFinite(e)&&e>0?e:aE}function sae(t,e=aE){let r=xhr(t),n=bhr(e);return`http://${r}:${n}`}function iae(t,e=aE){let r=sae(t,e),n=String(Ehr()||"").trim();return n?`${r}/${encodeURIComponent(n)}`:r}function Ehr(){return String(iE?.ADMIN_TOKEN||"").trim()||"douer"}function Shr(t){return yw.default.enc.Utf8.stringify(yw.default.enc.Base64.parse(t))}function Nit(t){return yw.default.enc.Base64.stringify(yw.default.enc.Utf8.parse(t))}function Dit(t){return String(t||"").split(",")[0].trim()}function Oit(t){return Dit(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function Pit(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function b4(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=Oit(t?.headers?.["x-forwarded-host"])||Oit(t?.headers?.host),s=Dit(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http",a=s||String(t?.protocol||"").trim()||i;if(n&&!Pit(n))return`${a}://${n}`;let o=String(k0()||"").trim(),c=Number.parseInt(String(t?.server?.address?.()?.port||""),10);return o&&!Pit(o)?Number.isFinite(c)&&c>0?`${a}://${o}:${c}`:`${a}://${o}`:e}async function vhr(t,e){return{}}async function Ihr(t,e){return{class:[{type_id:"setting",type_name:`${b4(t)}/website`}]}}async function Chr(t,e){let r=b4(t),n=r+t.server.prefix+"/proxy",s=iae(r);return{page:1,pagecount:1,limit:1,total:1,list:[{vod_id:"openInternalWebsite",vod_name:"\u901A\u7528\u914D\u7F6E",vod_pic:n+"/"+Nit(`${r}/website`)},{vod_id:"builtinDanmuApiQr",vod_name:"\u5F39\u5E55\u670D\u52A1",vod_pic:n+"/"+Nit(s)}]}}async function Thr(t,e){if(t.body.id==="openInternalWebsite"){let r=b4(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:`${r}/website`}}),{list:[{vod_name:"",vod_content:""}]}}if(t.body.id==="builtinDanmuApiQr"){let r=b4(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:iae(r)}}),{list:[{vod_name:"",vod_content:""}]}}return{list:[{vod_name:"",vod_content:""}]}}async function whr(t,e){let r=t.params.img,n=Shr(r),s=await kit.default.toBuffer(n,{width:120,height:120,margin:15});e.send(s)}var Bit={meta:{key:"baseset",name:"\u300C\u8BBE\u300D\u914D\u7F6E",type:3},api:async t=>{t.post("/init",vhr),t.post("/home",Ihr),t.post("/category",Chr),t.post("/detail",Thr),t.get("/proxy/:img",whr)}};var Rhr=["https://666.666291.xyz","https://www.muou.asia","https://www.muou.site"],aae=async t=>(await t.db.getObjectDefault("/muou",{}))?.urls||t.config.muou?.urls||Rhr,Nhr=async(t,e)=>{await t.db.push("/muou/urls",e)},Ohr=async t=>{await t.db.delete("/muou/urls")};async function oae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await aae(e.server)})}),t.put("/urls",async(e,r)=>{await Nhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Ohr(e.server),r.send({code:0})})}var cae,E4=t=>{if(!cae){let e=Date.now();cae=new Promise(async r=>{let n=await aae(t),s=await Xn(n);console.log("\u6728\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return cae};async function uae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Phr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EAA\u5F55"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"25",type_name:"115"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[29]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[25]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function khr(t,e){let r=await E4(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`),i.by&&(o+=`/by/${i.by}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let c=await uae(o,Gr),u=Me(c),l=u("#main .module-item"),d=[];for(var f of l){let h=u(f).find(".module-item-pic a").attr("href"),A=u(f).find(".module-item-pic img").attr("alt"),g=u(f).find(".module-item-pic img").attr("data-src"),b=u(f).find(".module-item-text").text();d.push({vod_id:h,vod_name:A,vod_pic:g,vod_remarks:b})}let m=u("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:m,limit:72,total:72*m,list:d}}async function Dhr(t,e){let r=await E4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await uae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function Bhr(t,e){let r=await E4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await uae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Lit={meta:{key:"muou",name:"\u300C\u76D8\u300D\u6728\u5076",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Phr),t.post("/category",khr),t.post("/detail",Dhr),t.post("/play",Nr),t.post("/search",Bhr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:E4};var Lhr=["http://xiaocge.fun","http://xiaocgege.shop"],lae=async t=>(await t.db.getObjectDefault("/labi",{}))?.urls||t.config.labi?.urls||Lhr,Mhr=async(t,e)=>{await t.db.push("/labi/urls",e)},Whr=async t=>{await t.db.delete("/labi/urls")};async function dae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await lae(e.server)})}),t.put("/urls",async(e,r)=>{await Mhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Whr(e.server),r.send({code:0})})}var fae,_4=t=>{if(!fae){let e=Date.now();fae=new Promise(async r=>{let n=await lae(t),s=await Xn(n);console.log("\u8721\u7B14\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return fae};async function pae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function $hr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"24",type_name:"4K"},{type_id:"29",type_name:"\u81FB\u5F69"},{type_id:"5",type_name:"\u77ED\u5267"}],filters:{}}}async function Fhr(t,e){let r=await _4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await pae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Uhr(t,e){let r=await _4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await pae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function qhr(t,e){let r=await _4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await pae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Mit={meta:{key:"labi",name:"\u300C\u76D8\u300D\u8721\u7B14",type:3},api:async t=>{t.post("/init",qr),t.post("/home",$hr),t.post("/category",Fhr),t.post("/detail",Uhr),t.post("/play",Nr),t.post("/search",qhr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:_4};var jhr=["http://shandian.blog","http://sd.sduc.site"],mae=async t=>(await t.db.getObjectDefault("/shandian",{}))?.urls||t.config.shandian?.urls||jhr,Hhr=async(t,e)=>{await t.db.push("/shandian/urls",e)},Qhr=async t=>{await t.db.delete("/shandian/urls")};async function hae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await mae(e.server)})}),t.put("/urls",async(e,r)=>{await Hhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Qhr(e.server),r.send({code:0})})}var gae,S4=t=>{if(!gae){let e=Date.now();gae=new Promise(async r=>{let n=await mae(t),s=await Xn(n);console.log("\u95EA\u7535\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return gae};async function Aae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Ghr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"30",type_name:"\u77ED\u5267"}],filters:{}}}async function Khr(t,e){let r=await S4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await Aae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Vhr(t,e){let r=await S4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Aae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function zhr(t,e){let r=await S4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Aae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Wit={meta:{key:"shandian",name:"\u300C\u76D8\u300D\u95EA\u7535",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Ghr),t.post("/category",Khr),t.post("/detail",Vhr),t.post("/play",Nr),t.post("/search",zhr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:S4};var Yhr=["https://woog.nxog.eu.org"],yae=async t=>(await t.db.getObjectDefault("/ouge",{}))?.urls||t.config.ouge?.urls||Yhr,Jhr=async(t,e)=>{await t.db.push("/ouge/urls",e)},Xhr=async t=>{await t.db.delete("/ouge/urls")};async function xae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await yae(e.server)})}),t.put("/urls",async(e,r)=>{await Jhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Xhr(e.server),r.send({code:0})})}var bae,v4=t=>{if(!bae){let e=Date.now();bae=new Promise(async r=>{let n=await yae(t),s=await Xn(n);console.log("\u6B27\u54E5\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return bae};async function Eae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Zhr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"21",type_name:"\u7EFC\u5408"}],filters:{}}}async function egr(t,e){let r=await v4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await Eae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function tgr(t,e){let r=await v4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Eae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function rgr(t,e){let r=await v4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Eae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var $it={meta:{key:"ouge",name:"\u300C\u76D8\u300D\u6B27\u6B4C",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Zhr),t.post("/category",egr),t.post("/detail",tgr),t.post("/play",Nr),t.post("/search",rgr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:v4};var ngr=["https://www.wexwp.cc","https://www.erxiaozhan.top","https://www.2xiaopan.top","https://www.2xiaozhan.top"],_ae=async t=>(await t.db.getObjectDefault("/erxiao",{}))?.urls||t.config.erxiao?.urls||ngr,sgr=async(t,e)=>{await t.db.push("/erxiao/urls",e)},igr=async t=>{await t.db.delete("/erxiao/urls")};async function Sae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await _ae(e.server)})}),t.put("/urls",async(e,r)=>{await sgr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await igr(e.server),r.send({code:0})})}var vae,I4=t=>{if(!vae){let e=Date.now();vae=new Promise(async r=>{let n=await _ae(t),s=await Xn(n);console.log("\u4E8C\u5C0F\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return vae};async function Iae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function agr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"22",type_name:"\u771F\u5F69"},{type_id:"21",type_name:"\u7EFC\u827A"}],filters:{}}}async function ogr(t,e){let r=await I4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await Iae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function cgr(t,e){let r=await I4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Iae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function ugr(t,e){let r=await I4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Iae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Fit={meta:{key:"erxiao",name:"\u300C\u76D8\u300D\u4E8C\u5C0F",type:3},api:async t=>{t.post("/init",qr),t.post("/home",agr),t.post("/category",ogr),t.post("/detail",cgr),t.post("/play",Nr),t.post("/search",ugr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:I4};var lgr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",dgr="https://img.icons8.com/color/48/video.png",fgr="https://img.icons8.com/color/48/file.png",pgr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],mgr=[".srt",".ass",".scc",".stl",".ttml"];async function hgr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Uit(t){return t?.dir===!0||t?.dir===1||t?.type==="dir"||t?.type==="folder"}function qit(t){let e=String(t?.file_name||"").toLowerCase();return t?.obj_category==="video"||pgr.some(r=>e.endsWith(r))}function ggr(t){let e=String(t?.file_name||"").toLowerCase();return mgr.some(r=>e.endsWith(r))}function Agr(t,e){return`folder@@@${t}@@@${e}`}function ygr(t){let e=["own","",t.fid,"",t.subtitle?t.subtitle.fid:"",t.subtitle&&t.subtitle.share_fid_token||""];return`file@@@${t.file_name}@@@${e.join("*")}`}async function xgr(t,e,r=1){let n=[],s=[],i=await dBe(t,e||"0",r);i.forEach(o=>{let c=Uit(o),u=o.file===!0||o.file===1||o.type==="file";if(!c){if(u&&qit(o)){if(Number(o.size||0)<1024*1024*5)return;n.push(o);return}u&&ggr(o)&&s.push(o)}}),s.length>0&&n.forEach(o=>{let c=ml({name:o.file_name},s.map(u=>({...u,name:u.file_name})));c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return i.forEach(o=>{let c=Uit(o);if(!c&&!qit(o))return;let u=String(o.file_name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=fgr;c?l=lgr:l=dgr,a.push({vod_id:c?Agr(u,o.fid):ygr(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":Hi(Number(o.size||0)),...c?{cate:{id:o.fid,name:u}}:{},ratio:1.33})}),{rawCount:i.length,list:a}}async function bgr(t,e){return await kv(t),{}}async function Egr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684\u5938\u514B\u7F51\u76D8"}]}}async function _gr(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await xgr(t,r==="0"?"0":r,n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function Sgr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await hgr("quark","\u5938\u514B");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function vgr(t,e){return await _3(t,e)}async function Igr(t,e){return{page:1,pagecount:1,list:[]}}async function Cgr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var jit={meta:{key:"myquark",name:"\u300C\u76D8\u300D\u5938\u514B",type:3},api:async t=>{t.post("/init",bgr),t.post("/home",Egr),t.post("/category",_gr),t.post("/detail",Sgr),t.post("/play",vgr),t.post("/search",Igr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",E3),t.get("/test",Cgr)}};var Tgr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",wgr="https://img.icons8.com/color/48/video.png",Rgr="https://img.icons8.com/color/48/file.png",Ngr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],Ogr=[".srt",".ass",".scc",".stl",".ttml"];async function Pgr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function kgr(t){return t?.type==="folder"}function Hit(t){let e=`.${String(t?.file_extension||"").toLowerCase()}`;return t?.category==="video"||Ngr.includes(e)}function Dgr(t,e){return`folder@@@${t}@@@${e}`}function Bgr(t){return`file@@@${t.name}@@@own*${t.file_id}*${t.subtitle?t.subtitle.file_id:""}`}async function Lgr(t,e){let r=[],n=[],s=[],i="";do{let o=await J3e(t,e||"root",i);s.push(...Array.isArray(o.items)?o.items:[]),i=String(o.next_marker||"")}while(i);s.forEach(o=>{if(o.type==="file"&&Hit(o)){if(Number(o.size||0)<1024*1024*5)return;r.push(o);return}let c=String(o.file_extension||"").toLowerCase();o.type==="file"&&Ogr.some(u=>c.endsWith(u))&&n.push(o)}),n.length>0&&r.forEach(o=>{let c=ml(o,n);c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return s.forEach(o=>{let c=kgr(o);if(!c&&!Hit(o))return;let u=String(o.name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=Rgr;c?l=Tgr:l=wgr,a.push({vod_id:c?Dgr(u,o.file_id):Bgr(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":Hi(Number(o.size||0)),...c?{cate:{id:o.file_id,name:u}}:{},ratio:1.33})}),a}async function Mgr(t,e){return await Pv(t),{}}async function Wgr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u963F\u91CC\u7F51\u76D8"}]}}async function $gr(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"root");let n=Number.parseInt(t.body.page,10)||1,s=await Lgr(t,r||"root");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function Fgr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Pgr("ali","\u963F\u91CC");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function Ugr(t,e){return await A3(t,e)}async function qgr(t,e){return{page:1,pagecount:1,list:[]}}async function jgr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Qit={meta:{key:"myali",name:"\u300C\u76D8\u300D\u963F\u91CC",type:3},api:async t=>{t.post("/init",Mgr),t.post("/home",Wgr),t.post("/category",$gr),t.post("/detail",Fgr),t.post("/play",Ugr),t.post("/search",qgr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",g3),t.get("/test",jgr)}};var Kit="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Hgr="https://img.icons8.com/color/48/video.png",Qgr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],C4=100,Ggr=5,Kgr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36";async function Git(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Vgr(t){if(Number(t?.mediaType)===3)return!0;let e=String(t?.name||t?.fileName||"").toLowerCase();return Qgr.some(r=>e.endsWith(r))}function Cae(t){return String(t?.name||t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Tae(t){return String(t?.id||t?.fileId||t?.folderId||t?.fileID||t?.fId||"")}function zgr(t){return Number(t?.size||t?.fileSize||0)}function Ygr(t,e){return`folder@@@${t}@@@${e}`}function Jgr(t){return`file@@@${Cae(t)}@@@own*${Tae(t)}`}function Xgr(t){return String(t?.vod_id||"").startsWith("file@@@")}function Zgr(t){let e=String(t?.vod_id||"").split("@@@"),r=e[1]||t?.vod_name||"\u89C6\u9891\u64AD\u653E",n=e[2]||"";return n?`${r}$${n}`:""}function wae(t,e=4,r=4){let n=String(t||"").trim();return n?n.length<=e+r+1?n:`${n.slice(0,e)}...${n.slice(-r)}`:""}function eAr(t){return wae(t,36,10)}async function Vit(t,e="-11",r=1){await rb(t);let n=await tf.listOwnFiles(e,r,C4),s=[];return(n.folderList||[]).forEach(i=>{let a=Tae(i);if(!a)return;let o=Cae(i);s.push({vod_id:Ygr(o,a),vod_name:o,vod_pic:Kit,vod_remarks:"\u76EE\u5F55",cate:{id:a,name:o},ratio:1.33})}),(n.fileList||[]).forEach(i=>{if(!Tae(i)||!Vgr(i))return;let a=Cae(i);s.push({vod_id:Jgr(i),vod_name:a,vod_pic:Hgr,vod_remarks:Hi(zgr(i)),ratio:1.33})}),{rawCount:Number(n.count||0),list:s}}async function tAr(t,e){return await rb(t),{}}async function rAr(t,e){return{class:[{type_id:"-11",type_name:"\u6211\u7684\u5929\u7FFC\u4E91\u76D8"}]}}async function nAr(t,e){let r=String(t.body.id||"-11");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"-11");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await Vit(t,r||"-11",n);return{page:n,pagecount:s>=C4?n+1:n,limit:C4,total:9999,list:i}}async function sAr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@")){let o=r.split("@@@"),c=o[1]||"\u76EE\u5F55",u=o[2]||"-11",l=[],d=1;for(;d<=Ggr;){let{rawCount:f,list:p}=await Vit(t,u,d);if(l.push(...p.filter(Xgr)),f0){let f=await Git("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:c,vod_pic:Kit,vod_remarks:`${l.length}\u4E2A\u89C6\u9891`,vod_content:`\u76EE\u5F55: ${c}`,vod_play_from:f,vod_play_url:l.map(Zgr).filter(Boolean).join("#")}]}}return{list:[{vod_id:r,vod_name:c,vod_remarks:"\u76EE\u5F55",vod_content:"\u5F53\u524D\u76EE\u5F55\u6CA1\u6709\u53EF\u64AD\u653E\u89C6\u9891"}]}}let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Git("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function iAr(t,e){await rb(t);let r=Date.now(),n=String(t.body.id||""),s=n.split("*"),i=wae(n,8,6),a=wae(s[1],4,4);if(console.log("[mytianyi][play] request",{rawId:i,source:s[0]||"",fileId:a}),s[0]!=="own"||!s[1])return console.warn("[mytianyi][play] invalid params",{rawId:i,source:s[0]||"",hasFileId:!!s[1]}),{parse:0,url:"",msg:"\u5929\u7FFC\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let o=await tf.getOwnDownload(s[1]),c=String(o?.url||"").trim();return c?(console.log("[mytianyi][play] success",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,urlPreview:eAr(c),costMs:Date.now()-r}),{parse:0,url:["\u539F\u753B",c],header:{"User-Agent":Kgr}}):(console.warn("[mytianyi][play] empty download url",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,resMsg:o?.data?.res_message||"",costMs:Date.now()-r}),{parse:0,url:"",msg:"\u5929\u7FFC\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"})}catch(o){return console.error("[mytianyi][play] failed",{fileId:a,rawId:i,costMs:Date.now()-r,message:String(o?.message||o),stack:String(o?.stack||"").split(` -`).slice(0,2).join(" | ")}),{parse:0,url:"",msg:`\u5929\u7FFC\u63A5\u53E3\u5F02\u5E38: ${o?.message||o}`}}}async function aAr(t,e){return{page:1,pagecount:1,list:[]}}async function oAr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var zit={meta:{key:"mytianyi",name:"\u300C\u76D8\u300D\u5929\u7FFC",type:3},api:async t=>{t.post("/init",tAr),t.post("/home",rAr),t.post("/category",nAr),t.post("/detail",sAr),t.post("/play",iAr),t.post("/search",aAr),t.get("/test",oAr)}};var cAr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",uAr="https://img.icons8.com/color/48/video.png",lAr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function dAr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function fAr(t){return encodeURIComponent(String(t||""))}function pAr(t){return Number(t?.isdir)===1||Number(t?.category)===6}function mAr(t){if(Number(t?.category)===1)return!0;let e=String(t?.server_filename||t?.path||"").toLowerCase();return lAr.some(r=>e.endsWith(r))}function Yit(t){return String(t?.server_filename||t?.path?.split("/").pop()||"\u672A\u77E5").trim()||"\u672A\u77E5"}function hAr(t,e){return`folder@@@${t}@@@${e}`}function gAr(t){let e=Yit(t),r=String(t?.fs_id||t?.fsid||""),n=String(t?.path||"");return`file@@@${e}@@@own*${r}*${fAr(n)}`}async function AAr(t,e="/",r=1){let{list:n,rawCount:s}=await z6e(t,e||"/",r);return{rawCount:s,list:n.reduce((i,a)=>{let o=pAr(a);if(!o&&!mAr(a))return i;let c=Yit(a);return i.push({vod_id:o?hAr(c,String(a?.path||"/")):gAr(a),vod_name:c,vod_pic:o?cAr:uAr,vod_remarks:o?"\u76EE\u5F55":Hi(Number(a?.size||0)),...o?{cate:{id:String(a?.path||"/"),name:c}}:{},ratio:1.33}),i},[])}}async function yAr(t,e){return await sb(t),{}}async function xAr(t,e){return{class:[{type_id:"/",type_name:"\u6211\u7684\u767E\u5EA6\u7F51\u76D8"}]}}async function bAr(t,e){let r=String(t.body.id||"/");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"/");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await AAr(t,r||"/",n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function EAr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55",vod_remarks:"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await dAr("baidu","\u767E\u5EA6");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function _Ar(t,e){return await uB(t,e)}async function SAr(t,e){return{page:1,pagecount:1,list:[]}}async function vAr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Jit={meta:{key:"mybaidu",name:"\u300C\u76D8\u300D\u767E\u5EA6",type:3},api:async t=>{t.post("/init",yAr),t.post("/home",xAr),t.post("/category",bAr),t.post("/detail",EAr),t.post("/play",_Ar),t.post("/search",SAr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",lB),t.get("/test",vAr)}};var IAr="115Drive",Xit="https://img.icons8.com/fluency/96/folder-invoices--v1.png",CAr="https://img.icons8.com/color/48/video.png",TAr={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5","X-Requested-With":"XMLHttpRequest",Origin:"https://115.com"};async function wAr(t,e="0",r=1){let n=await O0(t);if(!n)return{list:[],count:0};let s=Number.parseInt(r,10)||1,i=115,a=(s-1)*i,o=`https://webapi.115.com/files?aid=1&cid=${encodeURIComponent(e)}&o=user_ptime&asc=0&offset=${a}&show_dir=1&limit=${i}&code=&scid=&snap=0&natsort=1&record_open_time=1&source=&format=json`;try{let u=(await he.get(o,{headers:{...TAr,Cookie:n}}))?.data;if(u?.state)return{list:Array.isArray(u.data)?u.data:[],count:Number.parseInt(u.count,10)||0}}catch(c){console.error("[my115] list error:",c.message)}return{list:[],count:0}}function RAr(t){return encodeURIComponent(String(t||""))}function NAr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function OAr(t,e,r){return`LOCAL###${t}###${RAr(e)}###${r}`}function Zit(t){let e=String(t||"");if(!e.startsWith("LOCAL###"))return{id:e,name:"115\u8D44\u6E90",value:e,kind:"file",isOwn:!1};let r=e.split("###");if(r.length>=4&&["dir","file"].includes(r[1]))return{id:e,kind:r[1],name:NAr(r[2])||"115\u8D44\u6E90",value:r.slice(3).join("###"),isOwn:!0};let[,n="115\u8D44\u6E90",s=""]=r;return{id:e,name:n,value:s,kind:/^\d+$/.test(s)?"dir":"file",isOwn:!0}}function PAr(t){let e=Number(t.fc)===0,r=String(t.n||t.name||"\u672A\u77E5").trim()||"\u672A\u77E5",n=String(e?t.cid||"":t.pc||t.pick_code||"");return{vod_id:OAr(e?"dir":"file",r,n),vod_name:r,vod_pic:e?Xit:CAr,vod_remarks:e?"\u76EE\u5F55":Hi(Number(t.s||t.size||0)),...e?{cate:{id:n,name:r}}:{},ratio:1.33}}async function kAr(t,e){return{}}async function DAr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684115\u7F51\u76D8"}]}}async function BAr(t,e){let r=String(t.body.id||"0");r.startsWith("LOCAL###")&&(r=Zit(r).value||"0");let n=Number.parseInt(t.body.page,10)||1,{list:s,count:i}=await wAr(t.server,r,n);return{page:n,pagecount:Math.max(1,Math.ceil(i/115)),limit:115,total:i,list:s.map(PAr)}}async function LAr(t,e){return{list:(Array.isArray(t.body.id)?t.body.id:[t.body.id]).map(s=>{let i=Zit(s);return i.isOwn?i.kind==="dir"?{vod_id:i.id,vod_name:i.name||"\u76EE\u5F55",vod_pic:Xit,vod_remarks:"\u76EE\u5F55",vod_content:`\u76EE\u5F55: ${i.name||"115\u8D44\u6E90"}`}:{vod_id:i.id,vod_name:i.name,vod_content:`\u6587\u4EF6\u540D: ${i.name}`,vod_play_from:IAr,vod_play_url:`OWN$${i.value}`}:{vod_id:i.id,vod_name:"115\u8D44\u6E90"}})}}async function MAr(t,e){let r=String(t.body.id||"").trim(),n=r.startsWith("OWN$")?r.slice(4):r;return n?await oB(t.server,n):{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"}}async function WAr(t,e){return{page:1,pagecount:1,list:[]}}async function $Ar(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var eat={meta:{key:"my115",name:"\u300C\u76D8\u300D115",type:3},api:async t=>{t.post("/init",kAr),t.post("/home",DAr),t.post("/category",BAr),t.post("/detail",LAr),t.post("/play",MAr),t.post("/search",WAr),t.get("/test",$Ar)}};var FAr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",UAr="https://img.icons8.com/color/48/video.png",qAr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function jAr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function HAr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function QAr(t){return t?.data??t??{}}function GAr(t){let e=QAr(t);return[e.InfoList,e.infoList,e.list,t?.InfoList,t?.infoList,t?.list].find(n=>Array.isArray(n))||[]}function Nae(t){return String(t?.FileName||t?.file_name||t?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Rae(t){return String(t?.FileId||t?.fileId||t?.file_id||"")}function tat(t){return Number(t?.Size||t?.size||0)}function KAr(t){return String(t?.S3KeyFlag||t?.s3KeyFlag||"")}function VAr(t){return String(t?.Etag||t?.etag||"")}function zAr(t){return Number(t?.Category)===0||Number(t?.Type)===1||t?.type==="folder"}function YAr(t){let e=Nae(t).toLowerCase();return Number(t?.Category)===2||qAr.some(r=>e.endsWith(r))}function JAr(t,e){return`folder@@@${t}@@@${e}`}function XAr(t){let e=Nae(t),r=["own",Rae(t),KAr(t),String(tat(t)),VAr(t),encodeURIComponent(e)];return`file@@@${e}@@@${r.join("*")}`}async function ZAr(t,e="0"){await nb(t);let r=await N0.getrootmyfile(e||"0"),n=GAr(r),s=[];return n.forEach(i=>{let a=zAr(i);if(!a&&!YAr(i))return;let o=Nae(i);s.push({vod_id:a?JAr(o,Rae(i)):XAr(i),vod_name:o,vod_pic:a?FAr:UAr,vod_remarks:a?"\u76EE\u5F55":Hi(tat(i)),...a?{cate:{id:Rae(i),name:o}}:{},ratio:1.33})}),s}async function eyr(t,e){return await nb(t),{}}async function tyr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684123\u7F51\u76D8"}]}}async function ryr(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,s=await ZAr(t,r||"0");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function nyr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await jAr("123","123");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function syr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||r.length<5)return{parse:0,url:"",msg:"123 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};await nb(t);try{let n=await N0.getmyDownload(r[1],r[2],r[3],r[4],HAr(r[5]||""));return n?{parse:0,url:["\u539F\u753B",n]}:{parse:0,url:"",msg:"123 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`123 \u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function iyr(t,e){return{page:1,pagecount:1,list:[]}}async function ayr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var rat={meta:{key:"my123",name:"\u300C\u76D8\u300D123",type:3},api:async t=>{t.post("/init",eyr),t.post("/home",tyr),t.post("/category",ryr),t.post("/detail",nyr),t.post("/play",syr),t.post("/search",iyr),t.get("/test",ayr)}};var iat="https://pan1.me";function nat(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function aat(t){return String(t||"").trim().replace(/\/+$/,"")||iat}var oat=async(t,e,r)=>{let n=await t.db.getObjectDefault("/123ypzysq",{});if(nat(n,e))return n[e];let s=t.config?.["123ypzysq"]||{};return nat(s,e)?s[e]:r},oyr=async t=>aat(await oat(t,"url",iat)),cyr=async t=>String(await oat(t,"cookie","")||"").trim(),Oae=async t=>({url:await oyr(t),cookie:await cyr(t)}),sat=async(t,e,r)=>{await t.db.push(`/123ypzysq/${e}`,r)},uyr=async t=>{await t.db.delete("/123ypzysq")};async function Pae(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await Oae(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await sat(e.server,"url",aat(n.url)),await sat(e.server,"cookie",String(n.cookie||"").trim()),r.send({code:0})}),t.delete("/config",async(e,r)=>{await uyr(e.server),r.send({code:0})})}var T4="https://pan1.me",lyr=["CATPAW_123YPZYSQ_COOKIE","PAN1_ME_COOKIE","YPZYSQ_COOKIE"],dyr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",fyr=/https?:\/\/[A-Za-z0-9._~:/?#[\]@!$&'()*+,;=%-]+/g,pyr=/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/i,dat=[{type_id:"2",type_name:"\u7535\u5F71"},{type_id:"48",type_name:"\u7535\u89C6\u5267"},{type_id:"37",type_name:"\u52A8\u6F2B"},{type_id:"52",type_name:"\u7EFC\u827A"},{type_id:"56",type_name:"4K\u539F\u76D8"}],cat=["\u54C8\u54C8\uFF0C\u4E0D\u9519\u54E6\uFF01","\u4E0D\u9519\u7684\u5E16\u5B50\uFF01","\u975E\u5E38\u68D2\uFF01\uFF01\uFF01","\u611F\u8C22\u5206\u4EAB,\u592A\u68D2\u4E86\uFF01","\u8FD9\u4E0D\u6B63\u662F\u6211\u82E6\u82E6\u5BFB\u627E\u7684\u8D44\u6E90\u5417\uFF01","\u597D\u4EBA\u4E00\u80CE\u751F\u5341\u4E2A\uFF01","\u770B\u5B8C\u697C\u4E3B\u7684\u8FD9\u4E2A\u5E16\u5B50\u4EE5\u540E\uFF0C\u6211\u7684\u5FC3\u4E45\u4E45\u4E0D\u80FD\u5E73\u9759\uFF0C\u9707\u64BC\u554A\uFF01","\u4E3A\u4EC0\u4E48\u4F1A\u6709\u5982\u6B64\u597D\u7684\u5E16\u5B50\uFF01","\u864E\u8EAF\u4E00\u9707\uFF0C\u4E09\u5206\u8D70\u4EBA\u3002","\u6E2F\uFF0C\u662F\u4E00\u79CD\u7F8E\u5FB7\u3002","\u6D41\u6C13\u5E76\u4E0D\u53EF\u6015\uFF0C\u53EF\u6015\u7684\u662F\u6D41\u6C13\u6709\u6587\u5316\u3002","\u597D\u4EBA\u4E00\u80CE\u751F10086\u4E2A"];function Hf(t){return String(t||"").replace(/\s+/g," ").trim()}async function kae(t){let e=await Oae(t.server).catch(()=>({url:T4,cookie:""})),r=String(e.url||T4).trim().replace(/\/+$/,""),n=lyr.map(s=>process.env[s]).find(Boolean);return{baseUrl:r||T4,cookie:String(e.cookie||n||"").trim()}}function myr(t,e=!1){let r={"User-Agent":dyr,Referer:t.baseUrl,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"};return e&&(r.Origin=t.baseUrl,r["X-Requested-With"]="XMLHttpRequest",r["Content-Type"]="application/x-www-form-urlencoded"),t.cookie&&(r.Cookie=t.cookie),r}function fat(t,e=T4){let r=String(t||"").trim();return r?new URL(r,e).toString():""}async function xw(t,e,r,n={}){let s=await he.request({url:fat(t,r.baseUrl),method:n.method||"GET",headers:myr(r,n.ajax),data:n.data||void 0});return String(s?.data||"")}function pat(t){let e=String(t||"");return e.match(/thread-(\d+)/)?.[1]||e.match(/^\d+$/)?.[0]||""}function mat(t){let e=Me(t),r=[];return e("li.media.thread.tap").each((n,s)=>{let i=e(s),a=i.find('a[href*="thread-"]').first(),o=Hf(a.text()),c=i.attr("data-tid")||pat(a.attr("href"));if(!o||!c)return;let u=Hf(i.find(".date.text-grey").text()),l=i.find("a.badge.badge-pill.badge-dark").map((d,f)=>Hf(e(f).text())).get().filter(Boolean).join(" / ");r.push({vod_id:c,vod_name:o,vod_remarks:[l,u].filter(Boolean).join(" \xB7 "),topRightRemarks:l})}),{$:e,list:r}}function hat(t,e,r,n){let s=String(n||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=r==="search"?new RegExp(`search-${s}-(\\d+)\\.htm`):new RegExp(`forum-${s}-(\\d+)\\.htm`),a=Number.parseInt(e,10)||1;return t("a[href]").each((o,c)=>{let u=String(t(c).attr("href")||""),l=Number.parseInt(u.match(i)?.[1]||"",10);Number.isFinite(l)&&(a=Math.max(a,l))}),a}function hyr(){return cat[Math.floor(Math.random()*cat.length)]}async function gyr(t,e,r){if(r.cookie)try{let n=new URLSearchParams({doctype:"1",return_html:"1",quotepid:"0",message:hyr()}).toString();await xw(`/?post-create-${t}-1.htm`,e,r,{method:"POST",ajax:!0,data:n}),await new Promise(s=>setTimeout(s,500))}catch(n){console.warn("[123ypzysq] \u81EA\u52A8\u56DE\u590D\u5931\u8D25:",n?.message||n)}}function uat(t){return Hf(t).match(/(?:æå–ç |è®¿é—®ç |å¯†ç |code)[::\s]*([A-Za-z0-9]{4})/i)?.[1]||""}function Ayr(t){return String(t||"").replace(/&/g,"&").replace(/[)\])】,,。;;\s]+$/g,"").trim()}function yyr(t,e){try{let r=new URL(t);return r.searchParams.has("pwd")||r.searchParams.set("pwd",e),r.toString()}catch{let n=t.includes("?")?"&":"?";return`${t}${n}pwd=${encodeURIComponent(e)}`}}function lat(t,e){let r=Ayr(t);return pyr.test(r)?e?yyr(r,e):r:""}function xyr(t){let e=t(".alert.alert-success").length?t(".alert.alert-success"):t(".post, .message, body"),r=new Set;return e.each((n,s)=>{let i=t(s),a=i.text(),o=uat(a);i.find("a[href]").each((c,u)=>{let l=t(u).attr("href"),d=uat(t(u).parent().text())||o,f=lat(l,d);f&&r.add(f)});for(let c of i.html()?.match(fyr)||[]){let u=lat(c,o);u&&r.add(u)}}),[...r]}function byr(t,e,r){let n={vod_id:e,vod_name:Hf(t(".movie-title").first().text())||Hf(t("h1, h2, .title").first().text())||"123\u4E91\u76D8\u8D44\u6E90",vod_pic:fat(t(".movie-poster img").first().attr("src")||"",r),vod_content:Hf(t(".plot-content").first().text())};return t(".detail-label").each((s,i)=>{let a=Hf(t(i).text()),o=Hf(t(i).next().text());o&&(a.includes("\u5E74\u4EFD")&&(n.vod_year=o),a.includes("\u7C7B\u578B")&&(n.vod_type=o),a.includes("\u5BFC\u6F14")&&(n.vod_director=o),a.includes("\u4E3B\u6F14")&&(n.vod_actor=o))}),n}async function Eyr(t,e){return await qr(t,e),{}}async function _yr(t,e){return{class:dat}}async function Syr(t,e){let r=String(t.body.id||dat[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=await kae(t),i=await xw(`/?forum-${r}-${n}.htm`,t,s),{$:a,list:o}=mat(i);return{page:n,pagecount:hat(a,n,"forum",r),limit:o.length,total:o.length,list:o}}async function vyr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[],s=await kae(t);for(let i of r){let a=pat(i);if(!a)continue;let o=await xw(`/?thread-${a}.htm`,t,s),c=Me(o);c(".alert.alert-warning").text().includes("\u8BF7\u56DE\u590D\u540E\u518D\u67E5\u770B")&&(await gyr(a,t,s),o=await xw(`/?thread-${a}.htm`,t,s),c=Me(o));let u=byr(c,a,s.baseUrl),l=xyr(c),d=l.length>0?await wr(l,t):null;d?.froms&&d?.urls&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls),!u.vod_content&&l.length>0&&(u.vod_content=`\u5171\u53D1\u73B0${l.length}\u4E2A123\u7F51\u76D8\u94FE\u63A5`),n.push(u)}return{list:n}}async function Iyr(t,e){let r=String(t.body.wd||"").trim(),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:1,list:[]};let s=encodeURIComponent(r),i=await kae(t),a=await xw(`/?search-${s}-${n}.htm`,t,i),{$:o,list:c}=mat(a);return{page:n,pagecount:hat(o,n,"search",s),limit:c.length,total:c.length,list:c}}async function Cyr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/home`);if(n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var gat={meta:{key:"123ypzysq",name:"\u300C\u76D8\u300D123\u793E\u533A",type:3},api:async t=>{t.post("/init",Eyr),t.post("/home",_yr),t.post("/category",Syr),t.post("/detail",vyr),t.post("/play",Nr),t.post("/search",Iyr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr),t.get("/test",Cyr)}};var Tyr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",wyr="https://img.icons8.com/color/48/video.png",Aat=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function Ryr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Nyr(t){return Number(t?.resType||0)===2}function Oyr(t){if(Number(t?.resType||0)!==1)return!1;let e=String(t?.ext||"").toLowerCase(),r=String(t?.mineType||"").toLowerCase(),n=String(t?.fileName||"").toLowerCase();return Number(t?.fileType||0)===2||r.startsWith("video/")||Aat.includes(e)||Aat.some(s=>n.endsWith(s))}function yat(t){return String(t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Dae(t){return String(t?.fileId||"")}function Pyr(t){return Number(t?.fileSize||t?.size||0)}function kyr(t,e){return`folder@@@${t}@@@${e}`}function Dyr(t){return`file@@@${yat(t)}@@@own*${Dae(t)}`}async function Byr(t,e=""){let r=await f5e(t,e||""),n=Array.isArray(r?.list)?r.list:[],s=[];return n.forEach(i=>{let a=Nyr(i);if(!a&&!Oyr(i))return;let o=yat(i);s.push({vod_id:a?kyr(o,Dae(i)):Dyr(i),vod_name:o,vod_pic:a?Tyr:String(i?.thumbnail||"").trim()||wyr,vod_remarks:a?"\u76EE\u5F55":Hi(Pyr(i)),...a?{cate:{id:Dae(i),name:o}}:{},ratio:1.33})}),{rawCount:n.length,total:Number(r?.total||n.length),list:s}}async function Lyr(t,e){return await cI(t),{}}async function Myr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u5149\u9E2D"}]}}async function Wyr(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||""),r==="root"&&(r="");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,total:i,list:a}=await Byr(t,r||"");return{page:n,pagecount:1,limit:s,total:Math.max(i,s),list:a}}async function $yr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Ryr("guangyapan","\u5149\u9E2D");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function Fyr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||!r[1])return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let n=await p5e(t,r[1]);return n?.url?{parse:0,url:["\u539F\u753B",n.url]}:{parse:0,url:"",msg:n?.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function Uyr(t,e){return{page:1,pagecount:1,list:[]}}async function qyr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var xat={meta:{key:"myguangyapan",name:"\u300C\u76D8\u300D\u5149\u9E2D",type:3},api:async t=>{t.post("/init",Lyr),t.post("/home",Myr),t.post("/category",Wyr),t.post("/detail",$yr),t.post("/play",Fyr),t.post("/search",Uyr),t.get("/test",qyr)}};var jyr=["http://103.217.192.130:16969"],Bae=async t=>(await t.db.getObjectDefault("/huban",{}))?.urls||t.config.huban?.urls||jyr,Hyr=async(t,e)=>{await t.db.push("/huban/urls",e)},Qyr=async t=>{await t.db.delete("/huban/urls")};async function Lae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Bae(e.server)})}),t.put("/urls",async(e,r)=>{await Hyr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Qyr(e.server),r.send({code:0})})}var Mae,w4=t=>{if(!Mae){let e=Date.now();Mae=new Promise(async r=>{let n=await Bae(t),s=await Xn(n);console.log("\u864E\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Mae};async function Wae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Gyr(t,e){return{class:[{type_id:"1",type_name:"\u98CE"},{type_id:"2",type_name:"\u82B1"},{type_id:"3",type_name:"\u96EA"},{type_id:"4",type_name:"\u6708"},{type_id:"5",type_name:"\u7CBE"},{type_id:"6",type_name:"\u77ED"},{type_id:"30",type_name:"115"}],filters:{}}}async function Kyr(t,e){let r=await w4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await Wae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Vyr(t,e){let r=await w4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Wae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function zyr(t,e){let r=await w4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Wae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var bat={meta:{key:"huban",name:"\u300C\u76D8\u300D\u864E\u6591",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Gyr),t.post("/category",Kyr),t.post("/detail",Vyr),t.post("/play",Nr),t.post("/search",zyr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:w4};var Yyr=["http://103.217.192.184:12512"],$ae=async t=>(await t.db.getObjectDefault("/xiaoban",{}))?.urls||t.config.xiaoban?.urls||Yyr,Jyr=async(t,e)=>{await t.db.push("/xiaoban/urls",e)},Xyr=async t=>{await t.db.delete("/xiaoban/urls")};async function Fae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await $ae(e.server)})}),t.put("/urls",async(e,r)=>{await Jyr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Xyr(e.server),r.send({code:0})})}var Uae,R4=t=>{if(!Uae){let e=Date.now();Uae=new Promise(async r=>{let n=await $ae(t),s=await Xn(n);console.log("\u5C0F\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Uae};async function qae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Zyr(t,e){return{class:[{type_id:"1",type_name:"\u6885"},{type_id:"2",type_name:"\u5170"},{type_id:"3",type_name:"\u7AF9"},{type_id:"4",type_name:"\u83CA"},{type_id:"6",type_name:"\u77ED"},{type_id:"5",type_name:"\u7CBE"}],filters:{}}}async function exr(t,e){let r=await R4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await qae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function txr(t,e){let r=await R4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await qae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function rxr(t,e){let r=await R4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await qae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Eat={meta:{key:"xiaoban",name:"\u300C\u76D8\u300D\u5C0F\u6591",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Zyr),t.post("/category",exr),t.post("/detail",txr),t.post("/play",Nr),t.post("/search",rxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:R4};var Sat=Re(require("vm"),1),Hae=class{add(e,r,n){if(typeof arguments[0]!="string")for(let s in arguments[0])this.add(s,arguments[0][s],arguments[1]);else(Array.isArray(e)?e:[e]).forEach(function(s){this[s]=this[s]||[],r&&this[s][n?"unshift":"push"](r)},this)}run(e,r){this[e]=this[e]||[],this[e].forEach(function(n){n.call(r&&r.context?r.context:r,r)})}},Qae=class{constructor(e){this.jsep=e,this.registered={}}register(...e){e.forEach(r=>{if(typeof r!="object"||!r.name||!r.init)throw new Error("Invalid JSEP plugin format");this.registered[r.name]||(r.init(this.jsep),this.registered[r.name]=r)})}},lo=class t{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+t.version}static addUnaryOp(e){return t.max_unop_len=Math.max(e.length,t.max_unop_len),t.unary_ops[e]=1,t}static addBinaryOp(e,r,n){return t.max_binop_len=Math.max(e.length,t.max_binop_len),t.binary_ops[e]=r,n?t.right_associative.add(e):t.right_associative.delete(e),t}static addIdentifierChar(e){return t.additional_identifier_chars.add(e),t}static addLiteral(e,r){return t.literals[e]=r,t}static removeUnaryOp(e){return delete t.unary_ops[e],e.length===t.max_unop_len&&(t.max_unop_len=t.getMaxKeyLen(t.unary_ops)),t}static removeAllUnaryOps(){return t.unary_ops={},t.max_unop_len=0,t}static removeIdentifierChar(e){return t.additional_identifier_chars.delete(e),t}static removeBinaryOp(e){return delete t.binary_ops[e],e.length===t.max_binop_len&&(t.max_binop_len=t.getMaxKeyLen(t.binary_ops)),t.right_associative.delete(e),t}static removeAllBinaryOps(){return t.binary_ops={},t.max_binop_len=0,t}static removeLiteral(e){return delete t.literals[e],t}static removeAllLiterals(){return t.literals={},t}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(e){this.expr=e,this.index=0}static parse(e){return new t(e).parse()}static getMaxKeyLen(e){return Math.max(0,...Object.keys(e).map(r=>r.length))}static isDecimalDigit(e){return e>=48&&e<=57}static binaryPrecedence(e){return t.binary_ops[e]||0}static isIdentifierStart(e){return e>=65&&e<=90||e>=97&&e<=122||e>=128&&!t.binary_ops[String.fromCharCode(e)]||t.additional_identifier_chars.has(String.fromCharCode(e))}static isIdentifierPart(e){return t.isIdentifierStart(e)||t.isDecimalDigit(e)}throwError(e){let r=new Error(e+" at character "+this.index);throw r.index=this.index,r.description=e,r}runHook(e,r){if(t.hooks[e]){let n={context:this,node:r};return t.hooks.run(e,n),n.node}return r}searchHook(e){if(t.hooks[e]){let r={context:this};return t.hooks[e].find(function(n){return n.call(r.context,r),r.node}),r.node}}gobbleSpaces(){let e=this.code;for(;e===t.SPACE_CODE||e===t.TAB_CODE||e===t.LF_CODE||e===t.CR_CODE;)e=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");let e=this.gobbleExpressions(),r=e.length===1?e[0]:{type:t.COMPOUND,body:e};return this.runHook("after-all",r)}gobbleExpressions(e){let r=[],n,s;for(;this.index0;){if(t.binary_ops.hasOwnProperty(e)&&(!t.isIdentifierStart(this.code)||this.index+e.lengthi.right_a&&d.right_a?n>d.prec:n<=d.prec;for(;s.length>2&&l(s[s.length-2]);)o=s.pop(),r=s.pop().value,a=s.pop(),e={type:t.BINARY_EXP,operator:r,left:a,right:o},s.push(e);e=this.gobbleToken(),e||this.throwError("Expected expression after "+u),s.push(i,e)}for(c=s.length-1,e=s[c];c>1;)e={type:t.BINARY_EXP,operator:s[c-1].value,left:s[c-2],right:e},c-=2;return e}gobbleToken(){let e,r,n,s;if(this.gobbleSpaces(),s=this.searchHook("gobble-token"),s)return this.runHook("after-token",s);if(e=this.code,t.isDecimalDigit(e)||e===t.PERIOD_CODE)return this.gobbleNumericLiteral();if(e===t.SQUOTE_CODE||e===t.DQUOTE_CODE)s=this.gobbleStringLiteral();else if(e===t.OBRACK_CODE)s=this.gobbleArray();else{for(r=this.expr.substr(this.index,t.max_unop_len),n=r.length;n>0;){if(t.unary_ops.hasOwnProperty(r)&&(!t.isIdentifierStart(this.code)||this.index+r.length=r.length&&this.throwError("Unexpected token "+String.fromCharCode(e));break}else if(i===t.COMMA_CODE){if(this.index++,s++,s!==r.length){if(e===t.CPAREN_CODE)this.throwError("Unexpected token ,");else if(e===t.CBRACK_CODE)for(let a=r.length;a":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"});lo.max_unop_len=lo.getMaxKeyLen(lo.unary_ops);lo.max_binop_len=lo.getMaxKeyLen(lo.binary_ops);var Qf=t=>new lo(t).parse(),sxr=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(lo).filter(t=>!sxr.includes(t)&&Qf[t]===void 0).forEach(t=>{Qf[t]=lo[t]});Qf.Jsep=lo;var ixr="ConditionalExpression",axr={name:"ternary",init(t){t.hooks.add("after-expression",function(r){if(r.node&&this.code===t.QUMARK_CODE){this.index++;let n=r.node,s=this.gobbleExpression();if(s||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===t.COLON_CODE){this.index++;let i=this.gobbleExpression();if(i||this.throwError("Expected expression"),r.node={type:ixr,test:n,consequent:s,alternate:i},n.operator&&t.binary_ops[n.operator]<=.9){let a=n;for(;a.right.operator&&t.binary_ops[a.right.operator]<=.9;)a=a.right;r.node.test=a.right,a.right=r.node,r.node=n}}else this.throwError("Expected :")}})}};Qf.plugins.register(axr);var _at=47,oxr=92,cxr={name:"regex",init(t){t.hooks.add("gobble-token",function(r){if(this.code===_at){let n=++this.index,s=!1;for(;this.index=97&&c<=122||c>=65&&c<=90||c>=48&&c<=57)a+=this.char;else break}let o;try{o=new RegExp(i,a)}catch(c){this.throwError(c.message)}return r.node={type:t.LITERAL,value:o,raw:this.expr.slice(n-1,this.index)},r.node=this.gobbleTokenProperty(r.node),r.node}this.code===t.OBRACK_CODE?s=!0:s&&this.code===t.CBRACK_CODE&&(s=!1),this.index+=this.code===oxr?2:1}this.throwError("Unclosed Regex")}})}},jae=43,uxr=45,oE={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[jae,uxr],assignmentPrecedence:.9,init(t){let e=[t.IDENTIFIER,t.MEMBER_EXP];oE.assignmentOperators.forEach(n=>t.addBinaryOp(n,oE.assignmentPrecedence,!0)),t.hooks.add("gobble-token",function(s){let i=this.code;oE.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(this.index+=2,s.node={type:"UpdateExpression",operator:i===jae?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},(!s.node.argument||!e.includes(s.node.argument.type))&&this.throwError(`Unexpected ${s.node.operator}`))}),t.hooks.add("after-token",function(s){if(s.node){let i=this.code;oE.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(e.includes(s.node.type)||this.throwError(`Unexpected ${s.node.operator}`),this.index+=2,s.node={type:"UpdateExpression",operator:i===jae?"++":"--",argument:s.node,prefix:!1})}}),t.hooks.add("after-expression",function(s){s.node&&r(s.node)});function r(n){oE.assignmentOperators.has(n.operator)?(n.type="AssignmentExpression",r(n.left),r(n.right)):n.operator||Object.values(n).forEach(s=>{s&&typeof s=="object"&&r(s)})}}};Qf.plugins.register(cxr,oE);Qf.addUnaryOp("typeof");Qf.addLiteral("null",null);Qf.addLiteral("undefined",void 0);var lxr=new Set(["constructor","__proto__","__defineGetter__","__defineSetter__"]),cn={evalAst(t,e){switch(t.type){case"BinaryExpression":case"LogicalExpression":return cn.evalBinaryExpression(t,e);case"Compound":return cn.evalCompound(t,e);case"ConditionalExpression":return cn.evalConditionalExpression(t,e);case"Identifier":return cn.evalIdentifier(t,e);case"Literal":return cn.evalLiteral(t,e);case"MemberExpression":return cn.evalMemberExpression(t,e);case"UnaryExpression":return cn.evalUnaryExpression(t,e);case"ArrayExpression":return cn.evalArrayExpression(t,e);case"CallExpression":return cn.evalCallExpression(t,e);case"AssignmentExpression":return cn.evalAssignmentExpression(t,e);default:throw SyntaxError("Unexpected expression",t)}},evalBinaryExpression(t,e){return{"||":(n,s)=>n||s(),"&&":(n,s)=>n&&s(),"|":(n,s)=>n|s(),"^":(n,s)=>n^s(),"&":(n,s)=>n&s(),"==":(n,s)=>n==s(),"!=":(n,s)=>n!=s(),"===":(n,s)=>n===s(),"!==":(n,s)=>n!==s(),"<":(n,s)=>n":(n,s)=>n>s(),"<=":(n,s)=>n<=s(),">=":(n,s)=>n>=s(),"<<":(n,s)=>n<>":(n,s)=>n>>s(),">>>":(n,s)=>n>>>s(),"+":(n,s)=>n+s(),"-":(n,s)=>n-s(),"*":(n,s)=>n*s(),"/":(n,s)=>n/s(),"%":(n,s)=>n%s()}[t.operator](cn.evalAst(t.left,e),()=>cn.evalAst(t.right,e))},evalCompound(t,e){let r;for(let n=0;n-cn.evalAst(n,e),"!":n=>!cn.evalAst(n,e),"~":n=>~cn.evalAst(n,e),"+":n=>+cn.evalAst(n,e),typeof:n=>typeof cn.evalAst(n,e)}[t.operator](t.argument)},evalArrayExpression(t,e){return t.elements.map(r=>cn.evalAst(r,e))},evalCallExpression(t,e){let r=t.arguments.map(s=>cn.evalAst(s,e));return cn.evalAst(t.callee,e)(...r)},evalAssignmentExpression(t,e){if(t.left.type!=="Identifier")throw SyntaxError("Invalid left-hand side in assignment");let r=t.left.name,n=cn.evalAst(t.right,e);return e[r]=n,e[r]}},Gae=class{constructor(e){this.code=e,this.ast=Qf(this.code)}runInNewContext(e){let r=Object.assign(Object.create(null),e);return cn.evalAst(this.ast,r)}};function X0(t,e){return t=t.slice(),t.push(e),t}function Kae(t,e){return e=e.slice(),e.unshift(t),e}var Vae=class extends Error{constructor(e){super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'),this.avoidNew=!0,this.value=e,this.name="NewError"}};function Ur(t,e,r,n,s){if(!(this instanceof Ur))try{return new Ur(t,e,r,n,s)}catch(a){if(!a.avoidNew)throw a;return a.value}typeof t=="string"&&(s=n,n=r,r=e,e=t,t=null);let i=t&&typeof t=="object";if(t=t||{},this.json=t.json||r,this.path=t.path||e,this.resultType=t.resultType||"value",this.flatten=t.flatten||!1,this.wrap=Object.hasOwn(t,"wrap")?t.wrap:!0,this.sandbox=t.sandbox||{},this.eval=t.eval===void 0?"safe":t.eval,this.ignoreEvalErrors=typeof t.ignoreEvalErrors>"u"?!1:t.ignoreEvalErrors,this.parent=t.parent||null,this.parentProperty=t.parentProperty||null,this.callback=t.callback||n||null,this.otherTypeCallback=t.otherTypeCallback||s||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},t.autostart!==!1){let a={path:i?t.path:e};i?"json"in t&&(a.json=t.json):a.json=r;let o=this.evaluate(a);if(!o||typeof o!="object")throw new Vae(o);return o}}Ur.prototype.evaluate=function(t,e,r,n){let s=this.parent,i=this.parentProperty,{flatten:a,wrap:o}=this;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,e=e||this.json,t=t||this.path,t&&typeof t=="object"&&!Array.isArray(t)){if(!t.path&&t.path!=="")throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!Object.hasOwn(t,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');({json:e}=t),a=Object.hasOwn(t,"flatten")?t.flatten:a,this.currResultType=Object.hasOwn(t,"resultType")?t.resultType:this.currResultType,this.currSandbox=Object.hasOwn(t,"sandbox")?t.sandbox:this.currSandbox,o=Object.hasOwn(t,"wrap")?t.wrap:o,this.currEval=Object.hasOwn(t,"eval")?t.eval:this.currEval,r=Object.hasOwn(t,"callback")?t.callback:r,this.currOtherTypeCallback=Object.hasOwn(t,"otherTypeCallback")?t.otherTypeCallback:this.currOtherTypeCallback,s=Object.hasOwn(t,"parent")?t.parent:s,i=Object.hasOwn(t,"parentProperty")?t.parentProperty:i,t=t.path}if(s=s||null,i=i||null,Array.isArray(t)&&(t=Ur.toPathString(t)),!t&&t!==""||!e)return;let c=Ur.toPathArray(t);c[0]==="$"&&c.length>1&&c.shift(),this._hasParentSelector=null;let u=this._trace(c,e,["$"],s,i,r).filter(function(l){return l&&!l.isParentSelector});return u.length?!o&&u.length===1&&!u[0].hasArrExpr?this._getPreferredOutput(u[0]):u.reduce((l,d)=>{let f=this._getPreferredOutput(d);return a&&Array.isArray(f)?l=l.concat(f):l.push(f),l},[]):o?[]:void 0};Ur.prototype._getPreferredOutput=function(t){let e=this.currResultType;switch(e){case"all":{let r=Array.isArray(t.path)?t.path:Ur.toPathArray(t.path);return t.pointer=Ur.toPointer(r),t.path=typeof t.path=="string"?t.path:Ur.toPathString(t.path),t}case"value":case"parent":case"parentProperty":return t[e];case"path":return Ur.toPathString(t[e]);case"pointer":return Ur.toPointer(t.path);default:throw new TypeError("Unknown result type")}};Ur.prototype._handleCallback=function(t,e,r){if(e){let n=this._getPreferredOutput(t);t.path=typeof t.path=="string"?t.path:Ur.toPathString(t.path),e(n,r,t)}};Ur.prototype._trace=function(t,e,r,n,s,i,a,o){let c;if(!t.length)return c={path:r,value:e,parent:n,parentProperty:s,hasArrExpr:a},this._handleCallback(c,i,"value"),c;let u=t[0],l=t.slice(1),d=[];function f(p){Array.isArray(p)?p.forEach(m=>{d.push(m)}):d.push(p)}if((typeof u!="string"||o)&&e&&Object.hasOwn(e,u))f(this._trace(l,e[u],X0(r,u),e,u,i,a));else if(u==="*")this._walk(e,p=>{f(this._trace(l,e[p],X0(r,p),e,p,i,!0,!0))});else if(u==="..")f(this._trace(l,e,r,n,s,i,a)),this._walk(e,p=>{typeof e[p]=="object"&&f(this._trace(t.slice(),e[p],X0(r,p),e,p,i,!0))});else{if(u==="^")return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:l,isParentSelector:!0};if(u==="~")return c={path:X0(r,u),value:s,parent:n,parentProperty:null},this._handleCallback(c,i,"property"),c;if(u==="$")f(this._trace(l,e,r,null,null,i,a));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(u))f(this._slice(u,l,e,r,n,s,i));else if(u.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");let p=u.replace(/^\?\((.*?)\)$/u,"$1"),m=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(p);m?this._walk(e,h=>{let A=[m[2]],g=m[1]?e[h][m[1]]:e[h];this._trace(A,g,r,n,s,i,!0).length>0&&f(this._trace(l,e[h],X0(r,h),e,h,i,!0))}):this._walk(e,h=>{this._eval(p,e[h],h,r,n,s)&&f(this._trace(l,e[h],X0(r,h),e,h,i,!0))})}else if(u[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");f(this._trace(Kae(this._eval(u,e,r.at(-1),r.slice(0,-1),n,s),l),e,r,n,s,i,a))}else if(u[0]==="@"){let p=!1,m=u.slice(1,-2);switch(m){case"scalar":(!e||!["object","function"].includes(typeof e))&&(p=!0);break;case"boolean":case"string":case"undefined":case"function":typeof e===m&&(p=!0);break;case"integer":Number.isFinite(e)&&!(e%1)&&(p=!0);break;case"number":Number.isFinite(e)&&(p=!0);break;case"nonFinite":typeof e=="number"&&!Number.isFinite(e)&&(p=!0);break;case"object":e&&typeof e===m&&(p=!0);break;case"array":Array.isArray(e)&&(p=!0);break;case"other":p=this.currOtherTypeCallback(e,r,n,s);break;case"null":e===null&&(p=!0);break;default:throw new TypeError("Unknown value type "+m)}if(p)return c={path:r,value:e,parent:n,parentProperty:s},this._handleCallback(c,i,"value"),c}else if(u[0]==="`"&&e&&Object.hasOwn(e,u.slice(1))){let p=u.slice(1);f(this._trace(l,e[p],X0(r,p),e,p,i,a,!0))}else if(u.includes(",")){let p=u.split(",");for(let m of p)f(this._trace(Kae(m,l),e,r,n,s,i,!0))}else!o&&e&&Object.hasOwn(e,u)&&f(this._trace(l,e[u],X0(r,u),e,u,i,a,!0))}if(this._hasParentSelector)for(let p=0;p{e(r)})};Ur.prototype._slice=function(t,e,r,n,s,i,a){if(!Array.isArray(r))return;let o=r.length,c=t.split(":"),u=c[2]&&Number.parseInt(c[2])||1,l=c[0]&&Number.parseInt(c[0])||0,d=c[1]&&Number.parseInt(c[1])||o;l=l<0?Math.max(0,l+o):Math.min(o,l),d=d<0?Math.max(0,d+o):Math.min(o,d);let f=[];for(let p=l;p{f.push(h)});return f};Ur.prototype._eval=function(t,e,r,n,s,i){this.currSandbox._$_parentProperty=i,this.currSandbox._$_parent=s,this.currSandbox._$_property=r,this.currSandbox._$_root=this.json,this.currSandbox._$_v=e;let a=t.includes("@path");a&&(this.currSandbox._$_path=Ur.toPathString(n.concat([r])));let o=this.currEval+"Script:"+t;if(!Ur.cache[o]){let c=t.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(a&&(c=c.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)Ur.cache[o]=new this.safeVm.Script(c);else if(this.currEval==="native")Ur.cache[o]=new this.vm.Script(c);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){let u=this.currEval;Ur.cache[o]=new u(c)}else if(typeof this.currEval=="function")Ur.cache[o]={runInNewContext:u=>this.currEval(c,u)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Ur.cache[o].runInNewContext(this.currSandbox)}catch(c){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+c.message+": "+t)}};Ur.cache={};Ur.toPathString=function(t){let e=t,r=e.length,n="$";for(let s=1;s(t=t||"",e=e||"",resolve(t,e)),Iat={query(t,e){return Ur.JSONPath({path:e,json:t})}},zae=!0,Cat=":eq|:lt|:gt|:first|:last|:not|:even|:odd|:has|:contains|:matches|:empty|^body$|^#",dxr="(url|src|href|-original|-src|-play|-url|style)$|^(data-|url-|src-)",fxr="^(ftp|magnet|thunder|ws):",Yae=class{constructor(e=""){this.MY_URL=e,this.pdfh_html="",this.pdfa_html="",this.pdfh_doc=null,this.pdfa_doc=null}test(e,r){return!!new RegExp(e,"mi").exec(r)}contains(e,r){return e.indexOf(r)!==-1}parseHikerToJq(e,r=!1){if(this.contains(e,"&&")){let n=e.split("&&"),s=[];for(let i=0;i=n.length-1?s.push(n[i]):s.push(`${n[i]}:eq(0)`)}e=s.join(" ")}else{let n=e.split(" "),s=n[n.length-1];!this.test(Cat,s)&&r&&(e=`${e}:eq(0)`)}return e}getParseInfo(e){let r=[],n=0,s=e;if(this.contains(e,":eq")){s=e.split(":eq")[0];let i=e.split(":eq")[1];this.contains(s,"--")?(r=s.split("--").slice(1),s=s.split("--")[0]):this.contains(i,"--")&&(r=i.split("--").slice(1),i=i.split("--")[0]);try{n=parseInt(i.split("(")[1].split(")")[0])}catch{}}else this.contains(e,"--")&&(s=e.split("--")[0],r=e.split("--").slice(1));return{nparse_rule:s,nparse_index:n,excludes:r}}reorderAdjacentLtAndGt(e){let r=/:gt\((\d+)\):lt\((\d+)\)/,n;for(;(n=r.exec(e))!==null;){let s=`:lt(${n[2]}):gt(${n[1]})`;e=e.substring(0,n.index)+s+e.substring(n.index+n[0].length),r.lastIndex=n.index}return e}parseOneRule(e,r,n){let{nparse_rule:s,nparse_index:i,excludes:a}=this.getParseInfo(r);if(s=this.reorderAdjacentLtAndGt(s),n?n=n.find(s):n=e(s),this.contains(r,":eq")&&(n=n.eq(i)),a.length>0&&n){n=n.clone();for(let o of a)n.find(o).remove()}return n}parseText(e){return e=e.replace(/[\s]+/gm,` +`;St();var ya=class{static async getHandler(e){switch(e?.toLowerCase()){case"cloudflare":let{CloudflareHandler:r}=await Promise.resolve().then(()=>(Yst(),Kst));return new r;case"vercel":let{VercelHandler:n}=await Promise.resolve().then(()=>(Xst(),Jst));return new n;case"netlify":let{NetlifyHandler:s}=await Promise.resolve().then(()=>(eit(),Zst));return new s;case"edgeone":let{EdgeoneHandler:i}=await Promise.resolve().then(()=>(rit(),tit));return new i;case"huggingface":let{HuggingfaceHandler:a}=await Promise.resolve().then(()=>(sit(),nit));return new a;case"node":let{NodeHandler:o}=await import(["./node-handler",".js"].join(""));return new o;default:let{NodeHandler:c}=await import(["./node-handler",".js"].join(""));return new c}}static getSupportedPlatforms(){return["cloudflare","vercel","netlify","edgeone","huggingface","node"]}};function Yie(){return new Response(zst.replace("globals.currentToken",O.currentToken),{headers:{"Content-Type":"text/html; charset=utf-8","Access-Control-Allow-Origin":"*"}})}function y4(t=!1){let e=O.envVarConfig,r={api:[],source:[],match:[],danmu:[],cache:[],system:[]},n={...O.accessedEnvVars,localCacheValid:O.localCacheValid,redisValid:O.redisValid,localRedisValid:O.localRedisValid,aiValid:O.aiValid,deployPlatform:O.deployPlatform};Object.keys(n).forEach(o=>{let c=e[o]||{category:"system",type:"text",description:"\u672A\u5206\u7C7B\u914D\u7F6E\u9879"},u=c.category||"system";r[u].push({key:o,value:n[o].value||n[o],type:n[o].type||c.type||"text",description:c.description||"\u65E0\u63CF\u8FF0",options:n[o].options||c.options})});let i=(O.adminToken||"").trim()!=="",a={...O.originalEnvVars};return(!t||O.currentToken!==O.adminToken)&&Object.keys(a).forEach(o=>{(O.currentToken!==O.token||o!=="TOKEN")&&o in n&&/^\*+$/.test(n[o])&&(a[o]=n[o])}),Be({message:"Welcome to the LogVar Danmu API server",version:O.VERSION,envs:n,categorizedEnvVars:r,envVarConfig:e,originalEnvVars:a,hasAdminToken:i,repository:"https://github.com/huangxd-/danmu_api.git",description:"\u4E00\u4E2A\u4EBA\u4EBA\u90FD\u80FD\u90E8\u7F72\u7684\u57FA\u4E8E js \u7684\u5F39\u5E55 API \u670D\u52A1\u5668\uFF0C\u652F\u6301\u7231\u4F18\u817E\u8292\u54D4\u54AA\u4EBA\u97E9\u5DF4\u72D0\u4E50\u897F\u57CB\u5E06\u5F39\u5E55\u76F4\u63A5\u83B7\u53D6\uFF0C\u517C\u5BB9\u5F39\u5F39play\u7684\u641C\u7D22\u3001\u8BE6\u60C5\u67E5\u8BE2\u548C\u5F39\u5E55\u83B7\u53D6\u63A5\u53E3\u89C4\u8303\uFF0C\u5E76\u63D0\u4F9B\u65E5\u5FD7\u8BB0\u5F55\uFF0C\u652F\u6301vercel/netlify/edgeone/cloudflare/docker/hf\u7B49\u90E8\u7F72\u65B9\u5F0F\uFF0C\u4E0D\u7528\u63D0\u524D\u4E0B\u8F7D\u5F39\u5E55\uFF0C\u6CA1\u6709nas\u6216\u5C0F\u9E21\u4E5F\u80FD\u4E00\u952E\u90E8\u7F72\u3002",notice:"\u672C\u9879\u76EE\u4EC5\u4E3A\u4E2A\u4EBA\u5B66\u4E60\u7231\u597D\u5F00\u53D1\uFF0C\u4EE3\u7801\u5F00\u6E90\u3002\u5982\u6709\u4EFB\u4F55\u4FB5\u6743\u884C\u4E3A\uFF0C\u8BF7\u8054\u7CFB\u672C\u4EBA\u5220\u9664\u3002\u6709\u95EE\u9898\u63D0issue\u6216\u79C1\u4FE1\u673A\u5668\u4EBA\u90FDok\uFF0CTG MSG ROBOT: [https://t.me/ddjdd_bot]; \u63A8\u8350\u52A0\u4E92\u52A9\u7FA4\u54A8\u8BE2\uFF0CTG GROUP: [https://t.me/logvar_danmu_group]; \u5173\u6CE8\u9891\u9053\u83B7\u53D6\u6700\u65B0\u66F4\u65B0\u5185\u5BB9\uFF0CTG CHANNEL: [https://t.me/logvar_danmu_channel]\u3002"})}async function iit(){try{let t=O.deployPlatform;if(_("info",`[system] [Server] Deployment request received for platform: ${t}`),t.toLowerCase()==="node")return _("info","[system] [Server] Node/Docker deployment - no redeployment needed, config changes take effect automatically"),Be({success:!0,message:"Node/Docker deployment - configuration changes take effect automatically"},200);let e=await ya.getHandler(t);return e?await e.deploy()?(_("info",`[system] [Server] Deployment triggered successfully for platform: ${t}`),Be({success:!0,message:"Deployment triggered successfully"},200)):(_("error",`[system] [Server] Failed to trigger deployment for platform: ${t}`),Be({success:!1,message:"Failed to trigger deployment"},500)):(_("error",`[system] [Server] No handler found for platform: ${t}`),Be({success:!1,message:`No handler found for platform: ${t}`},400))}catch(t){return _("error",`[system] [Server] Deployment error: ${t.message}`),Be({success:!1,message:`Deployment failed: ${t.message}`},500)}}function ait(){let t=O.logBuffer.map(r=>`[${r.timestamp}] ${r.level}: ${N5e(r.message)}`).join(` +`),e=t;return O.currentToken!==O.adminToken&&(e=t.replace(/(client\s+ip:\s*)([^\n\r]*)/gi,(r,n,s)=>{let i=s.replace(/[^.\s\n\r]/g,"*");return n+i})),new Response(e,{headers:{"Content-Type":"text/plain; charset=utf-8"}})}function oit(){return O.logBuffer=[],Be({success:!0,message:"Logs cleared"},200)}async function cit(){try{O.animes=[],O.episodeIds=[],O.episodeNum=10001,O.lastSelectMap=new Map,O.reqRecords=[],O.todayReqNum=0,O.searchCache=new Map,O.commentCache=new Map,O.requestHistory=new Map;try{nWe(!0),O.useBangumiData&&JL(O.deployPlatform,!1).catch(t=>{_("warn",`[system] [Server] Bangumi-Data background reload failed: ${t.message}`)})}catch(t){_("error",`[system] [Server] Failed to clear Bangumi-Data cache: ${t.message}`)}_("info","[system] [Server] Memory cache cleared successfully");try{if(O.localCacheValid){let{updateLocalCaches:t}=await Promise.resolve().then(()=>($n(),V8e));await t(),_("info","[system] [Server] Local cache cleared successfully")}}catch(t){_("warn",`[system] [Server] Local cache may not be available: ${t.message}`)}try{if(O.redisValid){let{updateRedisCaches:t}=await Promise.resolve().then(()=>(kL(),L8e));await t(),_("info","[system] [Server] Redis cache cleared successfully")}}catch(t){_("warn",`[system] [Server] Redis may not be available: ${t.message}`)}try{if(O.localRedisValid){let{updateLocalRedisCaches:t}=await Promise.resolve().then(()=>(UT(),JB));await t(),_("info","[system] [Server] LocalRedis cache cleared successfully")}}catch(t){_("warn",`[system] [Server] LocalRedis may not be available: ${t.message}`)}return _("info","[system] [Server] All caches cleared successfully"),Be({success:!0,message:"Cache cleared successfully",clearedItems:{animes:0,episodeIds:0,episodeNum:10001,lastSelectMap:0,searchCache:0,commentCache:0,requestHistory:0,reqRecords:0,todayReqNum:0}},200)}catch(t){return _("error",`[system] [Server] Cache clear failed: ${t.message}`),Be({success:!1,message:`Cache clear failed: ${t.message}`},500)}}function nhr(t){let e=t.indexOf("?");if(e===-1)return t;let r=t.slice(0,e),s=t.slice(e+1).replace(/([^&=]+)=([^&]*)/g,(i,a)=>`${a}=***`);return`${r}?${s}`}function Kie(t){if(t==null)return t;if(Array.isArray(t))return t.map(Kie);if(typeof t=="object"){let e={};for(let r of Object.keys(t))e[r]=Kie(t[r]);return e}return"***"}function uit(){let t=[...O.reqRecords].reverse(),e=O.todayReqNum||0;return O.currentToken!==O.adminToken&&(t=t.map(r=>{let n={...r};return n.clientIp&&(n.clientIp=n.clientIp.replace(/[^.]/g,"*")),typeof n.interface=="string"&&(n.interface=nhr(n.interface)),n.params!=null&&(n.params=Kie(n.params)),n})),Be({records:t,todayReqNum:e},200)}function lit(){try{let t=[...O.animes||[]].reverse(),e=new Map;t.forEach(n=>{n?.source&&n?.animeId&&e.set(`${n.source}_${n.animeId}`,n)});let r=t.filter(n=>!n.isHiddenChild).map(n=>{let s=typeof n.toJson=="function"?n.toJson():{...n},{links:i=[],mergedChildren:a=[],...o}=s;return{...o,episodes:o.episodeCount||o.episodes||1,links:i,mergedChildren:a.map(c=>{let u=e.get(`${c.source}_${c.animeId}`),l=typeof u?.toJson=="function"?u.toJson():u,d=l?.links?.length>0?l.links:c.links||[];return{...c,episodes:c.episodeCount||c.episodes||1,links:d}})}});return Be({success:!0,data:r},200)}catch(t){return _("error",`[system] [Server] Fetch cache animes failed: ${t.message}`),Be({success:!1,message:`\u83B7\u53D6\u7F13\u5B58\u5931\u8D25: ${t.message}`},500)}}ar();St();Pt();async function dit(t){try{let{key:e,value:r}=await t.json();if(!e)return Be({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await ya.getHandler(n)).setEnv(e,r)?Be({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u6210\u529F`}):Be({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u8BBE\u7F6E\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Be({success:!1,message:`\u8BBE\u7F6E\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function fit(t){try{let{key:e,value:r}=await t.json();if(!e)return Be({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let n=O.deployPlatform;return await(await ya.getHandler(n)).addEnv(e,r)?Be({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u6210\u529F`}):Be({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u6DFB\u52A0\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Be({success:!1,message:`\u6DFB\u52A0\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function pit(t){try{let{key:e}=await t.json();if(!e)return Be({success:!1,message:"\u7F3A\u5C11\u73AF\u5883\u53D8\u91CF\u540D\u79F0"},400);let r=O.deployPlatform;return await(await ya.getHandler(r)).delEnv(e)?Be({success:!0,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u6210\u529F`}):Be({success:!1,message:`\u73AF\u5883\u53D8\u91CF ${e} \u5220\u9664\u5931\u8D25`},500)}catch(e){return _("error","[system] [Server] \u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25:",e),Be({success:!1,message:`\u5220\u9664\u73AF\u5883\u53D8\u91CF\u5931\u8D25: ${e.message}`},500)}}async function mit(t){try{let e=await t.json(),r=e.aiBaseUrl||O.aiBaseUrl||"https://api.openai.com/v1",n=e.aiModel||O.aiModel||"gpt-4o",s=e.aiApiKey||O.aiApiKey;if(!s)return Be({success:!1,ok:!1,message:"AI_API_KEY \u672A\u914D\u7F6E"},400);let a=await new ff({baseURL:r,model:n,apiKey:s,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify();return a.ok?Be({success:!0,ok:!0,message:"AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u6210\u529F"}):Be({success:!1,ok:!1,message:`AI \u670D\u52A1\u8FDE\u901A\u6027\u6D4B\u8BD5\u5931\u8D25: ${a.error}`},200)}catch(e){return _("error","[system] [Server] AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25:",e),Be({success:!1,ok:!1,message:`AI \u8FDE\u901A\u6027\u9A8C\u8BC1\u5931\u8D25: ${e.message}`},500)}}hs();ar();St();Pt();var hit=new Map;function git(){try{if(O&&typeof O.bilibliCookie=="string"&&O.bilibliCookie)return O.bilibliCookie}catch{}try{if(O&&O.env&&typeof O.env.BILIBILI_COOKIE=="string"&&O.env.BILIBILI_COOKIE)return O.env.BILIBILI_COOKIE}catch{}return typeof process<"u"&&process.env&&typeof process.env.BILIBILI_COOKIE=="string"&&process.env.BILIBILI_COOKIE?process.env.BILIBILI_COOKIE:""}function shr(t){try{let e=t.match(/SESSDATA=([^;]+)/);if(!e)return Math.floor(Date.now()/1e3)+30*24*60*60;let r=e[1],n=decodeURIComponent(r),s=Math.floor(Date.now()/1e3),i=(n.match(/\d{10,}/g)||[]).map(c=>Number(c)).filter(c=>Number.isFinite(c)),a=10*365*24*60*60,o=i.filter(c=>c>s&&c0)return Math.max(...o);if(n.includes(",")){let c=n.split(",");if(c.length>1){let u=parseInt(c[1],10);if(!isNaN(u)&&u>s)return u}}}catch{}return Math.floor(Date.now()/1e3)+30*24*60*60}async function Ait(t){if(!t)return{isValid:!1,error:"\u7F3A\u5C11Cookie"};if(!t.includes("SESSDATA")||!t.includes("bili_jct"))return{isValid:!1,error:"Cookie\u683C\u5F0F\u4E0D\u5B8C\u6574\uFF08\u9700\u8981\u5305\u542B SESSDATA \u548C bili_jct\uFF09"};try{let e=await fetch("https://api.bilibili.com/x/web-interface/nav",{method:"GET",headers:{Cookie:t,"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/",Origin:"https://www.bilibili.com",Accept:"application/json, text/plain, */*","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"}});if(!e.ok){let n=await e.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25\uFF1AHTTP ${e.status}${n?" - "+n.slice(0,80):""}`}}let r;try{r=await e.json()}catch(n){let s=await e.text().catch(()=>"");return{isValid:!1,error:`\u9A8C\u8BC1\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${s?s.slice(0,80):n.message}`}}return r?.code===0&&r?.data?.isLogin?{isValid:!0,data:{uname:r.data.uname,mid:r.data.mid,face:r.data.face}}:r?.code===0&&r?.data&&r.data.isLogin===!1?{isValid:!1,error:"\u8D26\u53F7\u672A\u767B\u5F55\uFF08Cookie \u5DF2\u5931\u6548\uFF09"}:{isValid:!1,error:r?.message||"Cookie\u65E0\u6548\u6216\u5DF2\u8FC7\u671F"}}catch(e){return{isValid:!1,error:"\u9A8C\u8BC1\u8BF7\u6C42\u5931\u8D25: "+e.message}}}async function yit(t,e="saved"){if(!t)return{success:!0,data:{isValid:!1,checked:e,error:"\u672A\u914D\u7F6ECookie"}};let r=await Ait(t);return r.isValid?{success:!0,data:{isValid:!0,checked:e,uname:r.data?.uname||"\u672A\u77E5\u7528\u6237",expiresAt:shr(t)}}:{success:!0,data:{isValid:!1,checked:e,error:r.error||"Cookie\u65E0\u6548\u6216\u5DF2\u5931\u6548"}}}async function xit(){try{let t=git(),e=await yit(t,"saved");return Be(e)}catch(t){return Be({success:!1,message:t.message},500)}}async function bit(t){try{let e={};try{e=await t.json()}catch{e={}}let r=typeof e.cookie=="string"?e.cookie.trim():"",n=!r||/^\*+$/.test(r),s=n?git():r,a=await yit(s,n?"saved":"input");return Be(a)}catch(e){return Be({success:!1,message:e.message},500)}}async function Eit(){try{let e=await(await fetch("https://passport.bilibili.com/x/passport-login/web/qrcode/generate",{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}})).json();return e.code!==0?Be({success:!1,message:e.message||"\u751F\u6210\u4E8C\u7EF4\u7801\u5931\u8D25"},500):(hit.set(e.data.qrcode_key,{createTime:Date.now(),status:"generated"}),Be({success:!0,data:e.data}))}catch(t){return Be({success:!1,message:t.message},500)}}function ihr(t){let e=new Map,r=[];try{if(t?.headers&&typeof t.headers.getSetCookie=="function")r=t.headers.getSetCookie()||[];else{let u=t?.headers?.get?.("set-cookie");u&&(r=[u])}}catch{r=[]}for(let u of r){if(!u||typeof u!="string")continue;let l=u.split(";")[0],d=l.indexOf("=");if(d<=0)continue;let f=l.slice(0,d).trim(),p=l.slice(d+1).trim();f&&e.set(f,p)}let n=e.get("SESSDATA"),s=e.get("bili_jct"),i=e.get("DedeUserID"),a=e.get("DedeUserID__ckMd5"),o=e.get("sid");if(!n)return null;let c=[`SESSDATA=${n}`];return s&&c.push(`bili_jct=${s}`),i&&c.push(`DedeUserID=${i}`),a&&c.push(`DedeUserID__ckMd5=${a}`),o&&c.push(`sid=${o}`),c.join("; ")}async function _it(t){let e=null;try{let r=await t.json();if(e=r.qrcodeKey||r.qrcode_key,!e)return Be({success:!1,message:"\u7F3A\u5C11qrcodeKey\u53C2\u6570"},400);let n=await fetch(`https://passport.bilibili.com/x/passport-login/web/qrcode/poll?qrcode_key=${e}`,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Referer:"https://www.bilibili.com/"}}),s=await n.json(),i=null;if(s?.data?.code===0&&(i=ihr(n),!i&&s?.data?.url))try{let o=new URL(s.data.url),c=new URLSearchParams(o.search),u=decodeURIComponent(c.get("SESSDATA")||""),l=decodeURIComponent(c.get("bili_jct")||""),d=decodeURIComponent(c.get("DedeUserID")||"");if(u){let f=[`SESSDATA=${u}`];l&&f.push(`bili_jct=${l}`),d&&f.push(`DedeUserID=${d}`),i=f.join("; ")}}catch{}let a={success:!0,data:{code:s?.data?.code,message:s?.data?.message||""}};return i&&(a.data.cookie=i),Be(a)}catch(r){return Be({success:!1,message:r.message},500)}finally{e&&hit.delete(e)}}async function Sit(t){try{let r=((await t.json()).cookie||"").trim();if(!r)return Be({success:!1,message:"\u7F3A\u5C11cookie\u53C2\u6570"},400);if(!r.includes("SESSDATA")||!r.includes("bili_jct"))return Be({success:!1,message:"Cookie\u683C\u5F0F\u4E0D\u6B63\u786E"},400);let n=await Ait(r);if(!n.isValid)return Be({success:!1,message:"Cookie\u9A8C\u8BC1\u5931\u8D25: "+(n.error||"\u65E0\u6548")},400);let s=O.deployPlatform,i=await ya.getHandler(s);return i?await i.setEnv("BILIBILI_COOKIE",r)?Be({success:!0,data:{uname:n.data?.uname},message:"Cookie\u4FDD\u5B58\u6210\u529F"}):Be({success:!1,message:"Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u73AF\u5883\u53D8\u91CF\u5199\u5165\u5931\u8D25"},500):Be({success:!1,message:`Cookie\u4FDD\u5B58\u5931\u8D25\uFF1A\u4E0D\u652F\u6301\u7684\u90E8\u7F72\u5E73\u53F0 ${s||"unknown"}`},400)}catch(e){return Be({success:!1,message:e.message},500)}}var gt;async function Cit(t,e,r,n,s){gt=Kh.init(e);let i=new URL(t.url),a=i.pathname,o=t.method,c=a.includes("/search")||a.includes("/match")||a.includes("/danmaku");if(gt.useBangumiData&&await JL(r,c,s),gt.deployPlatform=r,r==="node"){await cK(a,r);let{judgeLocalRedisValid:h}=await Promise.resolve().then(()=>(UT(),JB));await h(a)}if(await Vz(a),!gt.aiValid&>.aiBaseUrl&>.aiModel&>.aiApiKey&&a!=="/favicon.ico"&&a!=="/robots.txt"&&(await new ff({baseURL:gt.aiBaseUrl,model:gt.aiModel,apiKey:gt.aiApiKey,systemPrompt:"\u56DE\u7B54\u5C3D\u91CF\u7B80\u6D01"}).verify()).ok&&(gt.aiValid=!0),_("info",`[system] [Server] request url: ${JSON.stringify(i)}`),_("info",`[system] [Server] request path: ${a}`),_("info",`[system] [Server] client ip: ${n}`),gt.ipBlacklist?.length&>.ipBlacklist.some(A=>ahr(A,n)))return _("warn",`[Utils] [IP Blacklist] Blocked request from IP: ${n}`),Be({errorCode:403,success:!1,errorMessage:"Forbidden"},403);let u=a.split("/").filter(Boolean),l=["api","v1","v2","search","match","bangumi","comment","danmaku"],d=u[0]||"",f=gt.token==="87654321",p=d===gt.token||d===gt.adminToken;if(gt.currentToken=p?d:f&&(d==="87654321"||l.includes(d))?d==="87654321"?d:"87654321":"",r==="node"&>.localCacheValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await oK(),gt.redisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"&&await Gz(),r==="node"&>.localRedisValid&&a!=="/favicon.ico"&&a!=="/robots.txt"){let{getLocalRedisCaches:h}=await Promise.resolve().then(()=>(UT(),JB));await h()}if(["/api/v2/search/anime","/api/v2/match","/api/v2/search/episodes","/api/v2/fongmi/danmaku","/danmaku","/api/v2/bangumi","/api/v2/comment","/api/v2/segmentcomment"].some(h=>a.includes(h))){let h=gt.reqRecords.length>0?gt.reqRecords[gt.reqRecords.length-1]:null,A=new Date().toDateString();if(h){let v=new Date(h.timestamp).toDateString();_("info",`[system] [Server] currentDate: ${A}`),_("info",`[system] [Server] lastDate: ${v}`),v!==A?gt.todayReqNum=1:gt.todayReqNum++}else gt.todayReqNum=1;let g=t.url,b=g.indexOf("/api/v2");b!==-1&&(g=g.substring(b));let y=null;if(o==="POST"||o==="PUT"||o==="PATCH")try{let v=t.clone();if((v.headers.get("content-type")||"").includes("application/json"))y=await v.json();else{let R=await v.text();R&&(y=JSON.parse(R))}}catch{y=null}let x={interface:g,params:y,timestamp:new Date().toISOString(),method:o,clientIp:n};gt.reqRecords.push(x),gt.reqRecords.length>gt.MAX_RECORDS&&(gt.reqRecords=gt.reqRecords.slice(-gt.MAX_RECORDS))}if(a==="/"&&o==="GET")return Yie();if(a==="/favicon.ico"||a==="/robots.txt"||o==="OPTIONS")return new Response(null,{status:204,headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, POST, PUT, DELETE, OPTIONS","Access-Control-Allow-Headers":"Content-Type, Authorization, User-Agent"}});if(gt.token==="87654321"){if(u.length>0){if(u[0]==="87654321"||u[0]===gt.adminToken)a="/"+u.slice(1).join("/");else if(!l.includes(u[0]))return a==="/api/config"&&o==="GET"?y4(!1):(_("error",`[system] [Server] Invalid token in path: ${a}`),Be({errorCode:401,success:!1,errorMessage:"Unauthorized"},401))}}else{if(u.length<1||u[0]!==gt.token&&u[0]!==gt.adminToken)return a==="/api/config"&&o==="GET"?y4(!1):(_("error",`[system] [Server] Invalid or missing token in path: ${a}`),Be({errorCode:401,success:!1,errorMessage:"Unauthorized"},401));a="/"+u.slice(1).join("/")}if(a.endsWith("/danmaku/api/v2/fongmi/danmaku")&&(_("info",`[Path Fix] Collapsed nested danmaku path: "${a}" -> "/danmaku"`),a="/danmaku"),a==="/api/config"&&o==="GET")return y4(!0);if(a==="/api/reqrecords"&&o==="GET")return uit();if(_("info",`[system] [Server] ${a}`),a!=="/"&&a!=="/danmaku"&&a!=="/api/logs"&&!a.startsWith("/api/env")&&!a.startsWith("/api/deploy")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")){_("info",`[Path Check] Starting path normalization for: "${a}"`);let h=a;for(a=a.replace(/\/+/g,"/");a.startsWith("/api/v2/api/v2/");)_("info","[Path Check] Found redundant /api/v2 prefix. Cleaning..."),a=a.substring(7);a!==h?_("info",`[Path Check] Path after cleanup: "${a}"`):_("info","[Path Check] Path after cleanup: No cleanup needed.");let A=a;!a.startsWith("/api/v2")&&a!=="/"&&!a.startsWith("/api/logs")&&!a.startsWith("/api/env")&&!a.startsWith("/api/cache")&&!a.startsWith("/api/cookie")&&!a.startsWith("/api/config")&&!a.startsWith("/api/ai")&&(a.startsWith("/v2/")||a==="/v2"?(_("info","[Path Check] Path is missing /api prefix. Adding /api..."),a="/api"+a):a.startsWith("/api/")||a==="/api"?(_("info","[Path Check] Path is missing /v2 prefix. Adding /v2..."),a="/api/v2"+a.substring(4)):(_("info","[Path Check] Path is missing /api/v2 prefix. Adding /api/v2..."),a="/api/v2"+(a.startsWith("/")?a:"/"+a))),a===A&&_("info","[Path Check] Prefix Check: No prefix addition needed."),_("info",`[Path Check] Final normalized path: "${a}"`)}if(a==="/"&&o==="GET")return Yie();if(a==="/api/v2/search/anime"&&o==="GET")return sE(i);if(a==="/api/v2/search/episodes"&&o==="GET")return Pst(i);if(a==="/api/v2/fongmi/danmaku"&&(o==="GET"||o==="POST"))return jie(i,t);if(a==="/danmaku"&&(o==="GET"||o==="POST"))return jie(i,t);if(a==="/api/v2/match"&&o==="POST")return Ost(i,t,n);if(a.startsWith("/api/v2/bangumi/")&&o==="GET")return $ie(a);if((a.startsWith("/api/v2/comment")||a.startsWith("/api/v2/extcomment"))&&o==="GET"){let h=i.searchParams.get("format"),A=i.searchParams.get("url"),g=i.searchParams.get("segmentflag"),b=i.searchParams.get("duration"),y=g==="true"||g==="1",x=b==="true"||b==="1";if(A){if(df(A)!==null)return _("info",`[Utils] [Rate Limit] Cache hit for URL: ${A}, skipping rate limit check`),qie(A,h,y,x);if(gt.rateLimitMaxRequests>0){let w=Date.now(),N=60*1e3;jL(w),gt.requestHistory.has(n)||gt.requestHistory.set(n,[]);let L=gt.requestHistory.get(n).filter(M=>w-M<=N);if(L.length>=gt.rateLimitMaxRequests)return _("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${L.length}/${gt.rateLimitMaxRequests} requests in 1 minute)`),Be({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);L.push(w),gt.requestHistory.set(n,L),_("info",`[Utils] [Rate Limit] IP ${n} request count: ${L.length}/${gt.rateLimitMaxRequests}`)}return qie(A,h,y,x)}if(!a.startsWith("/api/v2/comment/"))return _("error","[system] [Server] Missing commentId or url parameter"),Be({errorCode:400,success:!1,errorMessage:"Missing commentId or url parameter"},400);let v=parseInt(a.split("/").pop()),C=BC(v);if(C&&df(C)!==null)return _("info",`[Utils] [Rate Limit] Cache hit for URL: ${C}, skipping rate limit check`),Uie(a,h,y,n,x);if(gt.rateLimitMaxRequests>0){let R=Date.now(),w=60*1e3;jL(R),gt.requestHistory.has(n)||gt.requestHistory.set(n,[]);let P=gt.requestHistory.get(n).filter(L=>R-L<=w);if(P.length>=gt.rateLimitMaxRequests)return _("warn",`[Utils] [Rate Limit] IP ${n} exceeded rate limit (${P.length}/${gt.rateLimitMaxRequests} requests in 1 minute)`),Be({errorCode:429,success:!1,errorMessage:"Too many requests, please try again later"},429);P.push(R),gt.requestHistory.set(n,P),_("info",`[Utils] [Rate Limit] IP ${n} request count: ${P.length}/${gt.rateLimitMaxRequests}`)}return Uie(a,h,y,n,x)}if(a.startsWith("/api/v2/segmentcomment")&&o==="POST")try{let h=i.searchParams.get("format"),A=await t.json(),g;try{g=pb.fromJson(A)}catch{return _("error","[system] [Server] Invalid JSON in request body for segment"),Be({errorCode:400,success:!1,errorMessage:"Invalid JSON in request body"},400)}return Dst(g,h)}catch(h){return _("error",`[system] [Server] Error processing segmentcomment request: ${h.message}`),Be({errorCode:500,success:!1,errorMessage:"Internal server error"},500)}return a==="/api/logs"&&o==="GET"?ait():a==="/api/logs/clear"&&o==="POST"?oit():a==="/api/env/set"&&o==="POST"?dit(t):a==="/api/env/add"&&o==="POST"?fit(t):a==="/api/env/del"&&o==="POST"?pit(t):a==="/api/deploy"&&o==="POST"?iit():a==="/api/cache/animes"&&o==="GET"?lit():a==="/api/cache/clear"&&o==="POST"?cit():a==="/api/cookie/status"&&o==="GET"?xit():a==="/api/cookie/qr/generate"&&o==="POST"?Eit():a==="/api/cookie/qr/check"&&o==="POST"?_it(t):a==="/api/cookie/verify"&&o==="POST"?bit(t):a==="/api/cookie/save"&&o==="POST"?Sit(t):a==="/api/ai/verify"&&o==="POST"?mit(t):Be({message:"Not found"},404)}function ahr(t,e){return!t||!e||e==="unknown"?!1:t.type==="exact"?t.value===e:t.type==="regex"?t.value.test(e):t.type==="cidr"?ohr(e,t.ip,t.prefix):!1}function ohr(t,e,r){if(t.includes(":")||e.includes(":")){let o=vit(t),c=vit(e);if(!o||!c||r<0||r>128)return!1;let u=Math.floor(r/8),l=r%8;for(let d=0;d0){let d=255<<8-l&255;return(o[u]&d)===(c[u]&d)}return!0}let s=Jie(t),i=Jie(e);if(s===null||i===null||r<0||r>32)return!1;let a=r===0?0:4294967295<<32-r>>>0;return(s&a)===(i&a)}function Jie(t){let e=t.split(".");if(e.length!==4)return null;let r=e.map(n=>Number(n));return r.some(n=>Number.isNaN(n)||n<0||n>255)?null:(r[0]<<24>>>0)+(r[1]<<16)+(r[2]<<8)+r[3]}function vit(t){if(!t||typeof t!="string"||!t.includes(":"))return null;let r=t.trim().split("::");if(r.length>2)return null;let n=r[0]?r[0].split(":").filter(Boolean):[],s=r[1]?r[1].split(":").filter(Boolean):[],i=c=>{if(c.length===0)return c;let u=c[c.length-1];if(!u.includes("."))return c;let l=Jie(u);if(l===null)return null;let d=(l>>>16&65535).toString(16),f=(l&65535).toString(16);return[...c.slice(0,-1),d,f]};if(n=i(n),s=i(s),!n||!s)return null;if(r.length===1){if(n.length!==8)return null}else{let c=n.length+s.length;if(c>8)return null;let u=8-c;s=new Array(u).fill("0").concat(s)}let a=n.concat(s);if(a.length!==8)return null;let o=[];for(let c of a){if(!/^[0-9a-fA-F]{1,4}$/.test(c))return null;let u=parseInt(c,16);o.push(u>>8&255,u&255)}return o}var wu=null,oE=9321,x4=0,Ug=null,Iit=!1,aE={...process.env,ADMIN_TOKEN:"douer"},b4=!1,gw=null,Rc=null,Tn={overrides:{},deletedKeys:[]};function Ei(...t){}function Aw(...t){}function Nit(){return x4>0}function chr(){try{let byEval=eval("1 + 1")===2,byFunction=Function("return 2 + 2")()===4;return byEval&&byFunction}catch{return!1}}function Zie(){return{overrides:{},deletedKeys:[]}}function Oit(){let t=String(process.env.DANMU_ENV_STORE_FILE||"").trim();if(t)return t;let e=String(process.env.NODE_PATH||"").trim()||process.cwd();return sae.default.resolve(e,"danmu_env_overrides.json")}function uhr(t){let e=Zie();if(!t||typeof t!="object")return e;let r=Array.isArray(t.deletedKeys)?t.deletedKeys.map(s=>String(s||"").trim()).filter(s=>s):[];e.deletedKeys=Array.from(new Set(r));let n=new Set(e.deletedKeys);return t.overrides&&typeof t.overrides=="object"&&!Array.isArray(t.overrides)&&Object.entries(t.overrides).forEach(([s,i])=>{let a=String(s||"").trim();!a||n.has(a)||(e.overrides[a]=i==null?"":String(i))}),e}function lhr(){Rc=Oit();try{if(!yw.default.existsSync(Rc)){Tn=Zie(),Ei("loadPersistedEnvStore()",{loaded:!1,reason:"store file not found",path:Rc});return}let t=yw.default.readFileSync(Rc,"utf8"),e=t?JSON.parse(t):{};Tn=uhr(e),Ei("loadPersistedEnvStore()",{loaded:!0,path:Rc,overrides:Object.keys(Tn.overrides).length,deleted:Tn.deletedKeys.length})}catch(t){Tn=Zie(),Aw("loadPersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Rc})}}function dhr(){try{Rc||(Rc=Oit());let t=sae.default.dirname(Rc);yw.default.mkdirSync(t,{recursive:!0});let e={version:1,updatedAt:new Date().toISOString(),overrides:Tn.overrides,deletedKeys:Tn.deletedKeys};return yw.default.writeFileSync(Rc,JSON.stringify(e,null,2),"utf8"),!0}catch(t){return Aw("savePersistedEnvStore() failed",{message:t?.message||String(t),stack:t?.stack||"",path:Rc||""}),!1}}function eae(){let t={...process.env};return Object.entries(Tn.overrides).forEach(([e,r])=>{t[e]=r}),Tn.deletedKeys.forEach(e=>{delete t[e]}),fhr(t)}function fhr(t){let e=t||{},r=String(e.TOKEN||"").trim();e.TOKEN=r||"87654321";let n=String(e.SOURCE_ORDER||"").trim();e.SOURCE_ORDER=n||"tencent,youku,iqiyi,imgo,bilibili,dandan,renren,hanjutv";let s=String(e.STRICT_TITLE_MATCH||"").trim();e.STRICT_TITLE_MATCH=s||"true";let i=String(e.RATE_LIMIT_MAX_REQUESTS||"").trim();e.RATE_LIMIT_MAX_REQUESTS=i||"0";let a=String(e.ADMIN_TOKEN||"").trim();return e.ADMIN_TOKEN=a||"douer",e}function phr(t){return t==null?null:Array.isArray(t)?t.map(e=>String(e)).join(","):typeof t=="string"?t:typeof t=="number"||typeof t=="boolean"?String(t):null}function mhr(t,e){if(!t||typeof t!="object"||!t.originalEnvVars||typeof t.originalEnvVars!="object")return t;let r=t.originalEnvVars,n=t.envs&&typeof t.envs=="object"?t.envs:{};return Object.keys(r).forEach(s=>{let i=r[s];if(!(i==null||String(i).trim()===""))return;if(s==="TOKEN"){r[s]=String(e.TOKEN||"87654321");return}if(s==="ADMIN_TOKEN"){r[s]=String(e.ADMIN_TOKEN||"");return}let o=e[s];if(o!=null&&String(o).trim()!==""){r[s]=String(o);return}if(!Object.prototype.hasOwnProperty.call(n,s))return;let c=n[s];if(typeof c=="string"&&/^\*+$/.test(c))return;let u=phr(c);u!==null&&u!==""&&(r[s]=u)}),t}function Xie(t,e,r=!1){let n=String(t||"").trim();if(!n)return!1;let s=Object.prototype.hasOwnProperty.call(process.env,n),i=process.env[n],a=Object.prototype.hasOwnProperty.call(Tn.overrides,n),o=Tn.overrides[n],c=Tn.deletedKeys.includes(n);if(r)delete process.env[n],delete Tn.overrides[n],Tn.deletedKeys.includes(n)||Tn.deletedKeys.push(n);else{let u=e==null?"":String(e);process.env[n]=u,Tn.overrides[n]=u,Tn.deletedKeys=Tn.deletedKeys.filter(l=>l!==n)}return dhr()?(aE=eae(),!0):(a?Tn.overrides[n]=o:delete Tn.overrides[n],c&&!Tn.deletedKeys.includes(n)&&Tn.deletedKeys.push(n),c||(Tn.deletedKeys=Tn.deletedKeys.filter(u=>u!==n)),s?process.env[n]=i:delete process.env[n],aE=eae(),!1)}var hhr={async setEnv(t,e){return Xie(t,e,!1)?(Ei("memoryNodeEnvHandler.setEnv()",{key:String(t||"")}),!0):!1},async addEnv(t,e){return Xie(t,e,!1)?(Ei("memoryNodeEnvHandler.addEnv()",{key:String(t||"")}),!0):!1},async delEnv(t){return Xie(t,"",!0)?(Ei("memoryNodeEnvHandler.delEnv()",{key:String(t||"")}),!0):!1}};function ghr(){b4||(gw=ya.getHandler,ya.getHandler=async function(e){let r=String(e||"").toLowerCase();return!r||r==="node"?hhr:gw.call(ya,e)},b4=!0,Ei("installNodeEnvHotReloadPatch()",{patched:!0}))}function Ahr(){!b4||!gw||(ya.getHandler=gw,gw=null,b4=!1,Ei("uninstallNodeEnvHotReloadPatch()",{patched:!1}))}function yhr(t){return t==null?Buffer.alloc(0):Buffer.isBuffer(t)?t:t instanceof ArrayBuffer?Buffer.from(t):ArrayBuffer.isView(t)?Buffer.from(t.buffer,t.byteOffset,t.byteLength):Buffer.from(String(t),"utf8")}async function xhr(t){if(!t||typeof t.getReader!="function")return Buffer.from(String(t??""),"utf8");let e=t.getReader(),r=[];try{for(;;){let{done:n,value:s}=await e.read();if(n)break;if(s!=null){if(Buffer.isBuffer(s)){r.push(s);continue}if(s instanceof Uint8Array){r.push(Buffer.from(s));continue}if(s instanceof ArrayBuffer){r.push(Buffer.from(s));continue}if(ArrayBuffer.isView(s)){r.push(Buffer.from(s.buffer,s.byteOffset,s.byteLength));continue}r.push(Buffer.from(String(s),"utf8"))}}}finally{typeof e.releaseLock=="function"&&e.releaseLock()}return r.length?Buffer.concat(r):Buffer.alloc(0)}async function bhr(t){if(t==null)return Buffer.alloc(0);if(Buffer.isBuffer(t))return t;if(t instanceof ArrayBuffer)return Buffer.from(t);if(ArrayBuffer.isView(t))return Buffer.from(t.buffer,t.byteOffset,t.byteLength);if(typeof t=="string")return Buffer.from(t,"utf8");if(typeof Blob=="function"&&t instanceof Blob){let e=await t.arrayBuffer();return Buffer.from(e)}return typeof t.getReader=="function"?xhr(t):Buffer.from(String(t),"utf8")}var xw=class{constructor(e=void 0){if(this._map=new Map,!!e){if(typeof e.forEach=="function"){e.forEach((r,n)=>this.set(n,r));return}if(Array.isArray(e)){e.forEach(([r,n])=>this.set(r,n));return}typeof e=="object"&&Object.entries(e).forEach(([r,n])=>this.set(r,n))}}set(e,r){this._map.set(String(e).toLowerCase(),String(r))}get(e){let r=this._map.get(String(e).toLowerCase());return r===void 0?null:r}has(e){return this._map.has(String(e).toLowerCase())}delete(e){this._map.delete(String(e).toLowerCase())}forEach(e,r=void 0){for(let[n,s]of this._map.entries())e.call(r,s,n,this)}entries(){return this._map.entries()}[Symbol.iterator](){return this._map[Symbol.iterator]()}},tae=class t{constructor(e,r={}){this.url=String(e||""),this.method=String(r.method||"GET").toUpperCase();let n=globalThis.Headers||xw;this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this._bodyBuffer=yhr(r.body)}clone(){return new t(this.url,{method:this.method,headers:Object.fromEntries(this.headers.entries()),body:this._bodyBuffer})}async text(){return this._bodyBuffer.toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){return this._bodyBuffer.buffer.slice(this._bodyBuffer.byteOffset,this._bodyBuffer.byteOffset+this._bodyBuffer.byteLength)}},rae=class{constructor(e=null,r={}){let n=globalThis.Headers||xw;this.status=Number(r.status||200),this.statusText=String(r.statusText||""),this.headers=r.headers instanceof n?r.headers:new n(r.headers||{}),this.ok=this.status>=200&&this.status<300,this.body=e,this.bodyUsed=!1,this._bodyBuffer=null,this._bodyBufferPromise=null}async _ensureBodyBuffer(){return this._bodyBuffer?this._bodyBuffer:(this._bodyBufferPromise||(this._bodyBufferPromise=bhr(this.body).then(e=>(this._bodyBuffer=e,this.bodyUsed=!0,e))),this._bodyBufferPromise)}async text(){return(await this._ensureBodyBuffer()).toString("utf8")}async json(){let e=await this.text();return e?JSON.parse(e):null}async arrayBuffer(){let e=await this._ensureBodyBuffer();return e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)}};function Ehr(){Iit||(typeof globalThis.Headers!="function"&&(globalThis.Headers=xw),typeof globalThis.Response!="function"&&(globalThis.Response=rae),typeof globalThis.Request!="function"&&(globalThis.Request=tae),Iit=!0,Ei("installWebApiPolyfills()",{hasFetch:typeof globalThis.fetch=="function",hasRequest:typeof globalThis.Request=="function",hasHeaders:typeof globalThis.Headers=="function",hasResponse:typeof globalThis.Response=="function"}))}async function Tit(t,e={}){let r=await Ae({url:t,method:e.method||"GET",headers:e.headers||{},data:e.body,signal:e.signal,responseType:"arraybuffer",validateStatus:()=>!0,timeout:1e4}),n=Buffer.from(r.data),s={};return Object.entries(r.headers||{}).forEach(([i,a])=>{s[i]=String(a)}),{ok:r.status>=200&&r.status<300,status:r.status,statusText:r.statusText||"",headers:new Headers(s),url:String(t),async text(){return n.toString("utf8")},async json(){return JSON.parse(n.toString("utf8"))},async arrayBuffer(){return n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength)}}}function _hr(){Ei("installPatches()",{hasFetch:typeof globalThis.fetch=="function"}),Ug=globalThis.fetch,globalThis.fetch=function(e,r){return x4>0?Tit(e,r):typeof Ug=="function"?Ug(e,r):Tit(e,r)}}function nae(){if(Ei("uninstallPatches()",{hasOriginalFetch:!!Ug}),typeof Ug=="function")globalThis.fetch=Ug;else try{delete globalThis.fetch}catch{globalThis.fetch=void 0}Ug=null}function Pit(t=9321){if(oE=t,Ehr(),ghr(),lhr(),aE=eae(),Ei("loadDanmuEnv()",{source:"process.env + persisted store",adminTokenFallback:aE.ADMIN_TOKEN==="douer",persistedEnvStorePath:Rc,persistedOverrides:Object.keys(Tn.overrides).length,persistedDeletedKeys:Tn.deletedKeys.length}),Ei("start()",{port:t,alreadyRunning:!!wu,node:process.version,platform:`${process.platform}/${process.arch}`,v8:process.versions?.v8,dynamicCode:chr()}),!wu){_hr();try{wu=Rit.default.createServer(async(e,r)=>{x4++;let n=`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,s=Date.now();Ei(`[${n}] inbound`,{method:e.method,url:e.url,host:e.headers.host,remote:e.socket?.remoteAddress||"unknown"});try{let i=`http://${e.headers.host||`127.0.0.1:${t}`}${e.url}`,a=(()=>{try{return new URL(i).pathname||""}catch{return String(e.url||"")}})(),o=e.method==="GET"&&a.endsWith("/api/config"),c;(e.method==="POST"||e.method==="PUT")&&(c=await new Promise(p=>{let m="";e.on("data",h=>m+=h),e.on("end",()=>p(m))}));let u=new Request(i,{method:e.method,headers:Object.fromEntries(Object.entries(e.headers).map(([p,m])=>[p,String(m)])),body:c||void 0}),l={...aE},d=await Cit(u,l,"node",e.socket?.remoteAddress||"unknown");Ei(`[${n}] worker done`,{status:d.status}),r.statusCode=d.status,d.headers.forEach((p,m)=>{let h=m.toLowerCase();h!=="content-encoding"&&h!=="content-length"&&r.setHeader(m,p)});let f;if(o){let p=await d.text();try{let m=JSON.parse(p),h=mhr(m,l);f=Buffer.from(JSON.stringify(h),"utf8")}catch{f=Buffer.from(p||"","utf8")}}else f=Buffer.from(await d.arrayBuffer());r.setHeader("Content-Length",f.length),r.end(f)}catch(i){Aw(`[${n}] request failed`,{message:i?.message||String(i),stack:i?.stack||""}),r.statusCode=500,r.end("Internal Server Error")}finally{Ei(`[${n}] complete`,{costMs:Date.now()-s}),x4--}}),wu.listen(t,"0.0.0.0",()=>{let e=wu?.address?.();Ei("listen ok",{address:e})}),wu.on("error",e=>{Aw("server error",{message:e?.message||String(e),code:e?.code}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),nae(),wu=null})}catch(e){Aw("start() failed",{message:e?.message||String(e),stack:e?.stack||""}),console.warn(`[danmu] \u5185\u7F6E\u5F39\u5E55\u670D\u52A1\u542F\u52A8\u5931\u8D25: ${e.message}`),nae()}}}function Dit(){Ei("stop()",{hasServer:!!wu,port:oE}),wu&&(wu.close(),wu=null),Ahr(),nae()}function zcn(){return oE}function wit(t){let e=String(t||"").trim().toLowerCase();return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function Shr(t){let e=String(t||"").trim();if(!e)return"";try{return new URL(e).hostname||""}catch{try{return new URL(`http://${e}`).hostname||""}catch{return e.replace(/^\w+:\/\//,"").split("/")[0].split(":")[0].trim()}}}function vhr(t){let e=Shr(t);if(e&&!wit(e))return e;let r=String(D0()||"").trim();return r&&!wit(r)?r:"127.0.0.1"}function Chr(t){let e=Number.parseInt(String(t??""),10);return Number.isFinite(e)&&e>0?e:oE}function iae(t,e=oE){let r=vhr(t),n=Chr(e);return`http://${r}:${n}`}function aae(t,e=oE){let r=iae(t,e),n=String(Ihr()||"").trim();return n?`${r}/${encodeURIComponent(n)}`:r}function Ihr(){return String(aE?.ADMIN_TOKEN||"").trim()||"douer"}function whr(t){return bw.default.enc.Utf8.stringify(bw.default.enc.Base64.parse(t))}function kit(t){return bw.default.enc.Base64.stringify(bw.default.enc.Utf8.parse(t))}function Wit(t){return String(t||"").split(",")[0].trim()}function Lit(t){return Wit(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function Bit(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function E4(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=Lit(t?.headers?.["x-forwarded-host"])||Lit(t?.headers?.host),s=Wit(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http",a=s||String(t?.protocol||"").trim()||i;if(n&&!Bit(n))return`${a}://${n}`;let o=String(D0()||"").trim(),c=Number.parseInt(String(t?.server?.address?.()?.port||""),10);return o&&!Bit(o)?Number.isFinite(c)&&c>0?`${a}://${o}:${c}`:`${a}://${o}`:e}async function Rhr(t,e){return{}}async function Nhr(t,e){return{class:[{type_id:"setting",type_name:`${E4(t)}/website`}]}}async function Ohr(t,e){let r=E4(t),n=r+t.server.prefix+"/proxy",s=aae(r);return{page:1,pagecount:1,limit:1,total:1,list:[{vod_id:"openInternalWebsite",vod_name:"\u901A\u7528\u914D\u7F6E",vod_pic:n+"/"+kit(`${r}/website`)},{vod_id:"builtinDanmuApiQr",vod_name:"\u5F39\u5E55\u670D\u52A1",vod_pic:n+"/"+kit(s)}]}}async function Phr(t,e){if(t.body.id==="openInternalWebsite"){let r=E4(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:`${r}/website`}}),{list:[{vod_name:"",vod_content:""}]}}if(t.body.id==="builtinDanmuApiQr"){let r=E4(t);return await t.server.messageToDart({action:"openInternalWebview",opt:{url:aae(r)}}),{list:[{vod_name:"",vod_content:""}]}}return{list:[{vod_name:"",vod_content:""}]}}async function Dhr(t,e){let r=t.params.img,n=whr(r),s=await Mit.default.toBuffer(n,{width:120,height:120,margin:15});e.send(s)}var $it={meta:{key:"baseset",name:"\u300C\u8BBE\u300D\u914D\u7F6E",type:3},api:async t=>{t.post("/init",Rhr),t.post("/home",Nhr),t.post("/category",Ohr),t.post("/detail",Phr),t.get("/proxy/:img",Dhr)}};var khr=["https://666.666291.xyz","https://www.muou.asia","https://www.muou.site"],oae=async t=>(await t.db.getObjectDefault("/muou",{}))?.urls||t.config.muou?.urls||khr,Lhr=async(t,e)=>{await t.db.push("/muou/urls",e)},Bhr=async t=>{await t.db.delete("/muou/urls")};async function cae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await oae(e.server)})}),t.put("/urls",async(e,r)=>{await Lhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Bhr(e.server),r.send({code:0})})}var uae,_4=t=>{if(!uae){let e=Date.now();uae=new Promise(async r=>{let n=await oae(t),s=await Xn(n);console.log("\u6728\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return uae};async function lae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Mhr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EAA\u5F55"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"25",type_name:"115"}],n={};return n[1]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u753B",v:"\u52A8\u753B"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u519C\u6751",v:"\u519C\u6751"},{n:"\u513F\u7AE5",v:"\u513F\u7AE5"},{n:"\u7F51\u7EDC\u7535\u5F71",v:"\u7F51\u7EDC\u7535\u5F71"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[2]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u9752\u6625\u5076\u50CF",v:"\u9752\u6625\u5076\u50CF"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u4E61\u6751",v:"\u4E61\u6751"},{n:"\u60C5\u666F",v:"\u60C5\u666F"},{n:"\u5546\u6218",v:"\u5546\u6218"},{n:"\u7F51\u5267",v:"\u7F51\u5267"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u5185\u5730",v:"\u5185\u5730"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65B0\u52A0\u5761",v:"\u65B0\u52A0\u5761"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[3]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[4]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[29]=[{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],n[25]=[{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}]},{key:"by",name:"",init:"time",value:[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}]}],{class:r,filters:n}}async function Whr(t,e){let r=await _4(t.server),n=t.body.id,s=t.body.page,i=t.body.filters||{},a=s||1;a==0&&(a=1);let o=r+"/index.php/vod/show";i.area&&(o+=`/area/${i.area}`),i.by&&(o+=`/by/${i.by}`),i.class&&(o+=`/class/${i.class}`),o+=`/id/${n}/page/${a}`,i.year&&(o+=`/year/${i.year}`),o+=".html";let c=await lae(o,Gr),u=Me(c),l=u("#main .module-item"),d=[];for(var f of l){let h=u(f).find(".module-item-pic a").attr("href"),A=u(f).find(".module-item-pic img").attr("alt"),g=u(f).find(".module-item-pic img").attr("data-src"),b=u(f).find(".module-item-text").text();d.push({vod_id:h,vod_name:A,vod_pic:g,vod_remarks:b})}let m=u("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(a)+1:parseInt(a);return{page:parseInt(a),pagecount:m,limit:72,total:72*m,list:d}}async function $hr(t,e){let r=await _4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await lae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function Fhr(t,e){let r=await _4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await lae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Fit={meta:{key:"muou",name:"\u300C\u76D8\u300D\u6728\u5076",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Mhr),t.post("/category",Whr),t.post("/detail",$hr),t.post("/play",Or),t.post("/search",Fhr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:_4};var Uhr=["http://xiaocge.fun","http://xiaocgege.shop"],dae=async t=>(await t.db.getObjectDefault("/labi",{}))?.urls||t.config.labi?.urls||Uhr,qhr=async(t,e)=>{await t.db.push("/labi/urls",e)},jhr=async t=>{await t.db.delete("/labi/urls")};async function fae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await dae(e.server)})}),t.put("/urls",async(e,r)=>{await qhr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await jhr(e.server),r.send({code:0})})}var pae,S4=t=>{if(!pae){let e=Date.now();pae=new Promise(async r=>{let n=await dae(t),s=await Xn(n);console.log("\u8721\u7B14\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return pae};async function mae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Hhr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"24",type_name:"4K"},{type_id:"29",type_name:"\u81FB\u5F69"},{type_id:"5",type_name:"\u77ED\u5267"}],filters:{}}}async function Qhr(t,e){let r=await S4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await mae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Ghr(t,e){let r=await S4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await mae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function Vhr(t,e){let r=await S4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await mae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Uit={meta:{key:"labi",name:"\u300C\u76D8\u300D\u8721\u7B14",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Hhr),t.post("/category",Qhr),t.post("/detail",Ghr),t.post("/play",Or),t.post("/search",Vhr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:S4};var zhr=["http://shandian.blog","http://sd.sduc.site"],hae=async t=>(await t.db.getObjectDefault("/shandian",{}))?.urls||t.config.shandian?.urls||zhr,Khr=async(t,e)=>{await t.db.push("/shandian/urls",e)},Yhr=async t=>{await t.db.delete("/shandian/urls")};async function gae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await hae(e.server)})}),t.put("/urls",async(e,r)=>{await Khr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Yhr(e.server),r.send({code:0})})}var Aae,v4=t=>{if(!Aae){let e=Date.now();Aae=new Promise(async r=>{let n=await hae(t),s=await Xn(n);console.log("\u95EA\u7535\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Aae};async function yae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Jhr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"30",type_name:"\u77ED\u5267"}],filters:{}}}async function Xhr(t,e){let r=await v4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await yae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Zhr(t,e){let r=await v4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await yae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function egr(t,e){let r=await v4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await yae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var qit={meta:{key:"shandian",name:"\u300C\u76D8\u300D\u95EA\u7535",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Jhr),t.post("/category",Xhr),t.post("/detail",Zhr),t.post("/play",Or),t.post("/search",egr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:v4};var tgr=["https://woog.nxog.eu.org"],xae=async t=>(await t.db.getObjectDefault("/ouge",{}))?.urls||t.config.ouge?.urls||tgr,rgr=async(t,e)=>{await t.db.push("/ouge/urls",e)},ngr=async t=>{await t.db.delete("/ouge/urls")};async function bae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await xae(e.server)})}),t.put("/urls",async(e,r)=>{await rgr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await ngr(e.server),r.send({code:0})})}var Eae,C4=t=>{if(!Eae){let e=Date.now();Eae=new Promise(async r=>{let n=await xae(t),s=await Xn(n);console.log("\u6B27\u54E5\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Eae};async function _ae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function sgr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"21",type_name:"\u7EFC\u5408"}],filters:{}}}async function igr(t,e){let r=await C4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await _ae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function agr(t,e){let r=await C4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await _ae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function ogr(t,e){let r=await C4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await _ae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var jit={meta:{key:"ouge",name:"\u300C\u76D8\u300D\u6B27\u6B4C",type:3},api:async t=>{t.post("/init",qr),t.post("/home",sgr),t.post("/category",igr),t.post("/detail",agr),t.post("/play",Or),t.post("/search",ogr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:C4};var cgr=["https://www.wexwp.cc","https://www.erxiaozhan.top","https://www.2xiaopan.top","https://www.2xiaozhan.top"],Sae=async t=>(await t.db.getObjectDefault("/erxiao",{}))?.urls||t.config.erxiao?.urls||cgr,ugr=async(t,e)=>{await t.db.push("/erxiao/urls",e)},lgr=async t=>{await t.db.delete("/erxiao/urls")};async function vae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Sae(e.server)})}),t.put("/urls",async(e,r)=>{await ugr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await lgr(e.server),r.send({code:0})})}var Cae,I4=t=>{if(!Cae){let e=Date.now();Cae=new Promise(async r=>{let n=await Sae(t),s=await Xn(n);console.log("\u4E8C\u5C0F\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Cae};async function Iae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function dgr(t,e){return{class:[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"22",type_name:"\u771F\u5F69"},{type_id:"21",type_name:"\u7EFC\u827A"}],filters:{}}}async function fgr(t,e){let r=await I4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await Iae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function pgr(t,e){let r=await I4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await Iae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function mgr(t,e){let r=await I4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await Iae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Hit={meta:{key:"erxiao",name:"\u300C\u76D8\u300D\u4E8C\u5C0F",type:3},api:async t=>{t.post("/init",qr),t.post("/home",dgr),t.post("/category",fgr),t.post("/detail",pgr),t.post("/play",Or),t.post("/search",mgr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:I4};var hgr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",ggr="https://img.icons8.com/color/48/video.png",Agr="https://img.icons8.com/color/48/file.png",ygr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],xgr=[".srt",".ass",".scc",".stl",".ttml"];async function bgr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Qit(t){return t?.dir===!0||t?.dir===1||t?.type==="dir"||t?.type==="folder"}function Git(t){let e=String(t?.file_name||"").toLowerCase();return t?.obj_category==="video"||ygr.some(r=>e.endsWith(r))}function Egr(t){let e=String(t?.file_name||"").toLowerCase();return xgr.some(r=>e.endsWith(r))}function _gr(t,e){return`folder@@@${t}@@@${e}`}function Sgr(t){let e=["own","",t.fid,"",t.subtitle?t.subtitle.fid:"",t.subtitle&&t.subtitle.share_fid_token||""];return`file@@@${t.file_name}@@@${e.join("*")}`}async function vgr(t,e,r=1){let n=[],s=[],i=await mLe(t,e||"0",r);i.forEach(o=>{let c=Qit(o),u=o.file===!0||o.file===1||o.type==="file";if(!c){if(u&&Git(o)){if(Number(o.size||0)<1024*1024*5)return;n.push(o);return}u&&Egr(o)&&s.push(o)}}),s.length>0&&n.forEach(o=>{let c=ml({name:o.file_name},s.map(u=>({...u,name:u.file_name})));c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return i.forEach(o=>{let c=Qit(o);if(!c&&!Git(o))return;let u=String(o.file_name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=Agr;c?l=hgr:l=ggr,a.push({vod_id:c?_gr(u,o.fid):Sgr(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":ji(Number(o.size||0)),...c?{cate:{id:o.fid,name:u}}:{},ratio:1.33})}),{rawCount:i.length,list:a}}async function Cgr(t,e){return await kv(t),{}}async function Igr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684\u5938\u514B\u7F51\u76D8"}]}}async function Tgr(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await vgr(t,r==="0"?"0":r,n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function wgr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await bgr("quark","\u5938\u514B");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function Rgr(t,e){return await vk(t,e)}async function Ngr(t,e){return{page:1,pagecount:1,list:[]}}async function Ogr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Vit={meta:{key:"myquark",name:"\u300C\u76D8\u300D\u5938\u514B",type:3},api:async t=>{t.post("/init",Cgr),t.post("/home",Igr),t.post("/category",Tgr),t.post("/detail",wgr),t.post("/play",Rgr),t.post("/search",Ngr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Sk),t.get("/test",Ogr)}};var Pgr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Dgr="https://img.icons8.com/color/48/video.png",kgr="https://img.icons8.com/color/48/file.png",Lgr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],Bgr=[".srt",".ass",".scc",".stl",".ttml"];async function Mgr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Wgr(t){return t?.type==="folder"}function zit(t){let e=`.${String(t?.file_extension||"").toLowerCase()}`;return t?.category==="video"||Lgr.includes(e)}function $gr(t,e){return`folder@@@${t}@@@${e}`}function Fgr(t){return`file@@@${t.name}@@@own*${t.file_id}*${t.subtitle?t.subtitle.file_id:""}`}async function Ugr(t,e){let r=[],n=[],s=[],i="";do{let o=await eLe(t,e||"root",i);s.push(...Array.isArray(o.items)?o.items:[]),i=String(o.next_marker||"")}while(i);s.forEach(o=>{if(o.type==="file"&&zit(o)){if(Number(o.size||0)<1024*1024*5)return;r.push(o);return}let c=String(o.file_extension||"").toLowerCase();o.type==="file"&&Bgr.some(u=>c.endsWith(u))&&n.push(o)}),n.length>0&&r.forEach(o=>{let c=ml(o,n);c.bestMatch&&(o.subtitle=c.bestMatch.target)});let a=[];return s.forEach(o=>{let c=Wgr(o);if(!c&&!zit(o))return;let u=String(o.name||"\u672A\u77E5").trim()||"\u672A\u77E5",l=kgr;c?l=Pgr:l=Dgr,a.push({vod_id:c?$gr(u,o.file_id):Fgr(o),vod_name:u,vod_pic:l,vod_remarks:c?"\u76EE\u5F55":ji(Number(o.size||0)),...c?{cate:{id:o.file_id,name:u}}:{},ratio:1.33})}),a}async function qgr(t,e){return await Dv(t),{}}async function jgr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u963F\u91CC\u7F51\u76D8"}]}}async function Hgr(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"root");let n=Number.parseInt(t.body.page,10)||1,s=await Ugr(t,r||"root");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function Qgr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Mgr("ali","\u963F\u91CC");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function Ggr(t,e){return await xk(t,e)}async function Vgr(t,e){return{page:1,pagecount:1,list:[]}}async function zgr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Kit={meta:{key:"myali",name:"\u300C\u76D8\u300D\u963F\u91CC",type:3},api:async t=>{t.post("/init",qgr),t.post("/home",jgr),t.post("/category",Hgr),t.post("/detail",Qgr),t.post("/play",Ggr),t.post("/search",Vgr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",yk),t.get("/test",zgr)}};var Jit="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Kgr="https://img.icons8.com/color/48/video.png",Ygr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"],T4=100,Jgr=5,Xgr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36";async function Yit(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Zgr(t){if(Number(t?.mediaType)===3)return!0;let e=String(t?.name||t?.fileName||"").toLowerCase();return Ygr.some(r=>e.endsWith(r))}function Tae(t){return String(t?.name||t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function wae(t){return String(t?.id||t?.fileId||t?.folderId||t?.fileID||t?.fId||"")}function eAr(t){return Number(t?.size||t?.fileSize||0)}function tAr(t,e){return`folder@@@${t}@@@${e}`}function rAr(t){return`file@@@${Tae(t)}@@@own*${wae(t)}`}function nAr(t){return String(t?.vod_id||"").startsWith("file@@@")}function sAr(t){let e=String(t?.vod_id||"").split("@@@"),r=e[1]||t?.vod_name||"\u89C6\u9891\u64AD\u653E",n=e[2]||"";return n?`${r}$${n}`:""}function Rae(t,e=4,r=4){let n=String(t||"").trim();return n?n.length<=e+r+1?n:`${n.slice(0,e)}...${n.slice(-r)}`:""}function iAr(t){return Rae(t,36,10)}async function Xit(t,e="-11",r=1){await rb(t);let n=await rf.listOwnFiles(e,r,T4),s=[];return(n.folderList||[]).forEach(i=>{let a=wae(i);if(!a)return;let o=Tae(i);s.push({vod_id:tAr(o,a),vod_name:o,vod_pic:Jit,vod_remarks:"\u76EE\u5F55",cate:{id:a,name:o},ratio:1.33})}),(n.fileList||[]).forEach(i=>{if(!wae(i)||!Zgr(i))return;let a=Tae(i);s.push({vod_id:rAr(i),vod_name:a,vod_pic:Kgr,vod_remarks:ji(eAr(i)),ratio:1.33})}),{rawCount:Number(n.count||0),list:s}}async function aAr(t,e){return await rb(t),{}}async function oAr(t,e){return{class:[{type_id:"-11",type_name:"\u6211\u7684\u5929\u7FFC\u4E91\u76D8"}]}}async function cAr(t,e){let r=String(t.body.id||"-11");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"-11");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await Xit(t,r||"-11",n);return{page:n,pagecount:s>=T4?n+1:n,limit:T4,total:9999,list:i}}async function uAr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@")){let o=r.split("@@@"),c=o[1]||"\u76EE\u5F55",u=o[2]||"-11",l=[],d=1;for(;d<=Jgr;){let{rawCount:f,list:p}=await Xit(t,u,d);if(l.push(...p.filter(nAr)),f0){let f=await Yit("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:c,vod_pic:Jit,vod_remarks:`${l.length}\u4E2A\u89C6\u9891`,vod_content:`\u76EE\u5F55: ${c}`,vod_play_from:f,vod_play_url:l.map(sAr).filter(Boolean).join("#")}]}}return{list:[{vod_id:r,vod_name:c,vod_remarks:"\u76EE\u5F55",vod_content:"\u5F53\u524D\u76EE\u5F55\u6CA1\u6709\u53EF\u64AD\u653E\u89C6\u9891"}]}}let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await Yit("tianyi","\u5929\u7FFC");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function lAr(t,e){await rb(t);let r=Date.now(),n=String(t.body.id||""),s=n.split("*"),i=Rae(n,8,6),a=Rae(s[1],4,4);if(console.log("[mytianyi][play] request",{rawId:i,source:s[0]||"",fileId:a}),s[0]!=="own"||!s[1])return console.warn("[mytianyi][play] invalid params",{rawId:i,source:s[0]||"",hasFileId:!!s[1]}),{parse:0,url:"",msg:"\u5929\u7FFC\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let o=await rf.getOwnDownload(s[1]),c=String(o?.url||"").trim();return c?(console.log("[mytianyi][play] success",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,urlPreview:iAr(c),costMs:Date.now()-r}),{parse:0,url:["\u539F\u753B",c],header:{"User-Agent":Xgr}}):(console.warn("[mytianyi][play] empty download url",{fileId:a,hasCookie:!!o?.cookie,resCode:o?.data?.res_code,resMsg:o?.data?.res_message||"",costMs:Date.now()-r}),{parse:0,url:"",msg:"\u5929\u7FFC\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"})}catch(o){return console.error("[mytianyi][play] failed",{fileId:a,rawId:i,costMs:Date.now()-r,message:String(o?.message||o),stack:String(o?.stack||"").split(` +`).slice(0,2).join(" | ")}),{parse:0,url:"",msg:`\u5929\u7FFC\u63A5\u53E3\u5F02\u5E38: ${o?.message||o}`}}}async function dAr(t,e){return{page:1,pagecount:1,list:[]}}async function fAr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Zit={meta:{key:"mytianyi",name:"\u300C\u76D8\u300D\u5929\u7FFC",type:3},api:async t=>{t.post("/init",aAr),t.post("/home",oAr),t.post("/category",cAr),t.post("/detail",uAr),t.post("/play",lAr),t.post("/search",dAr),t.get("/test",fAr)}};var pAr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",mAr="https://img.icons8.com/color/48/video.png",hAr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function gAr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function AAr(t){return encodeURIComponent(String(t||""))}function yAr(t){return Number(t?.isdir)===1||Number(t?.category)===6}function xAr(t){if(Number(t?.category)===1)return!0;let e=String(t?.server_filename||t?.path||"").toLowerCase();return hAr.some(r=>e.endsWith(r))}function eat(t){return String(t?.server_filename||t?.path?.split("/").pop()||"\u672A\u77E5").trim()||"\u672A\u77E5"}function bAr(t,e){return`folder@@@${t}@@@${e}`}function EAr(t){let e=eat(t),r=String(t?.fs_id||t?.fsid||""),n=String(t?.path||"");return`file@@@${e}@@@own*${r}*${AAr(n)}`}async function _Ar(t,e="/",r=1){let{list:n,rawCount:s}=await Z6e(t,e||"/",r);return{rawCount:s,list:n.reduce((i,a)=>{let o=yAr(a);if(!o&&!xAr(a))return i;let c=eat(a);return i.push({vod_id:o?bAr(c,String(a?.path||"/")):EAr(a),vod_name:c,vod_pic:o?pAr:mAr,vod_remarks:o?"\u76EE\u5F55":ji(Number(a?.size||0)),...o?{cate:{id:String(a?.path||"/"),name:c}}:{},ratio:1.33}),i},[])}}async function SAr(t,e){return await ib(t),{}}async function vAr(t,e){return{class:[{type_id:"/",type_name:"\u6211\u7684\u767E\u5EA6\u7F51\u76D8"}]}}async function CAr(t,e){let r=String(t.body.id||"/");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"/");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,list:i}=await _Ar(t,r||"/",n);return{page:n,pagecount:s>=200?n+1:n,limit:200,total:9999,list:i}}async function IAr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55",vod_remarks:"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await gAr("baidu","\u767E\u5EA6");return{list:[{vod_id:r,vod_name:s,vod_remarks:"",vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function TAr(t,e){return await lL(t,e)}async function wAr(t,e){return{page:1,pagecount:1,list:[]}}async function RAr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var tat={meta:{key:"mybaidu",name:"\u300C\u76D8\u300D\u767E\u5EA6",type:3},api:async t=>{t.post("/init",SAr),t.post("/home",vAr),t.post("/category",CAr),t.post("/detail",IAr),t.post("/play",TAr),t.post("/search",wAr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",dL),t.get("/test",RAr)}};var NAr="115Drive",rat="https://img.icons8.com/fluency/96/folder-invoices--v1.png",OAr="https://img.icons8.com/color/48/video.png",PAr={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36 115Browser/36.0.0 Chromium/125.0",Referer:"https://webapi.115.com/bridge_2.0.html?namespace=Core.DataAccess&api=UDataAPI&_t=v5","X-Requested-With":"XMLHttpRequest",Origin:"https://115.com"};async function DAr(t,e="0",r=1){let n=await P0(t);if(!n)return{list:[],count:0};let s=Number.parseInt(r,10)||1,i=115,a=(s-1)*i,o=`https://webapi.115.com/files?aid=1&cid=${encodeURIComponent(e)}&o=user_ptime&asc=0&offset=${a}&show_dir=1&limit=${i}&code=&scid=&snap=0&natsort=1&record_open_time=1&source=&format=json`;try{let u=(await he.get(o,{headers:{...PAr,Cookie:n}}))?.data;if(u?.state)return{list:Array.isArray(u.data)?u.data:[],count:Number.parseInt(u.count,10)||0}}catch(c){console.error("[my115] list error:",c.message)}return{list:[],count:0}}function kAr(t){return encodeURIComponent(String(t||""))}function LAr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function BAr(t,e,r){return`LOCAL###${t}###${kAr(e)}###${r}`}function nat(t){let e=String(t||"");if(!e.startsWith("LOCAL###"))return{id:e,name:"115\u8D44\u6E90",value:e,kind:"file",isOwn:!1};let r=e.split("###");if(r.length>=4&&["dir","file"].includes(r[1]))return{id:e,kind:r[1],name:LAr(r[2])||"115\u8D44\u6E90",value:r.slice(3).join("###"),isOwn:!0};let[,n="115\u8D44\u6E90",s=""]=r;return{id:e,name:n,value:s,kind:/^\d+$/.test(s)?"dir":"file",isOwn:!0}}function MAr(t){let e=Number(t.fc)===0,r=String(t.n||t.name||"\u672A\u77E5").trim()||"\u672A\u77E5",n=String(e?t.cid||"":t.pc||t.pick_code||"");return{vod_id:BAr(e?"dir":"file",r,n),vod_name:r,vod_pic:e?rat:OAr,vod_remarks:e?"\u76EE\u5F55":ji(Number(t.s||t.size||0)),...e?{cate:{id:n,name:r}}:{},ratio:1.33}}async function WAr(t,e){return{}}async function $Ar(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684115\u7F51\u76D8"}]}}async function FAr(t,e){let r=String(t.body.id||"0");r.startsWith("LOCAL###")&&(r=nat(r).value||"0");let n=Number.parseInt(t.body.page,10)||1,{list:s,count:i}=await DAr(t.server,r,n);return{page:n,pagecount:Math.max(1,Math.ceil(i/115)),limit:115,total:i,list:s.map(MAr)}}async function UAr(t,e){return{list:(Array.isArray(t.body.id)?t.body.id:[t.body.id]).map(s=>{let i=nat(s);return i.isOwn?i.kind==="dir"?{vod_id:i.id,vod_name:i.name||"\u76EE\u5F55",vod_pic:rat,vod_remarks:"\u76EE\u5F55",vod_content:`\u76EE\u5F55: ${i.name||"115\u8D44\u6E90"}`}:{vod_id:i.id,vod_name:i.name,vod_content:`\u6587\u4EF6\u540D: ${i.name}`,vod_play_from:NAr,vod_play_url:`OWN$${i.value}`}:{vod_id:i.id,vod_name:"115\u8D44\u6E90"}})}}async function qAr(t,e){let r=String(t.body.id||"").trim(),n=r.startsWith("OWN$")?r.slice(4):r;return n?await cL(t.server,n):{parse:0,url:"",msg:"115 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"}}async function jAr(t,e){return{page:1,pagecount:1,list:[]}}async function HAr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var sat={meta:{key:"my115",name:"\u300C\u76D8\u300D115",type:3},api:async t=>{t.post("/init",WAr),t.post("/home",$Ar),t.post("/category",FAr),t.post("/detail",UAr),t.post("/play",qAr),t.post("/search",jAr),t.get("/test",HAr)}};var QAr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",GAr="https://img.icons8.com/color/48/video.png",VAr=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function zAr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function KAr(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function YAr(t){return t?.data??t??{}}function JAr(t){let e=YAr(t);return[e.InfoList,e.infoList,e.list,t?.InfoList,t?.infoList,t?.list].find(n=>Array.isArray(n))||[]}function Oae(t){return String(t?.FileName||t?.file_name||t?.name||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Nae(t){return String(t?.FileId||t?.fileId||t?.file_id||"")}function iat(t){return Number(t?.Size||t?.size||0)}function XAr(t){return String(t?.S3KeyFlag||t?.s3KeyFlag||"")}function ZAr(t){return String(t?.Etag||t?.etag||"")}function eyr(t){return Number(t?.Category)===0||Number(t?.Type)===1||t?.type==="folder"}function tyr(t){let e=Oae(t).toLowerCase();return Number(t?.Category)===2||VAr.some(r=>e.endsWith(r))}function ryr(t,e){return`folder@@@${t}@@@${e}`}function nyr(t){let e=Oae(t),r=["own",Nae(t),XAr(t),String(iat(t)),ZAr(t),encodeURIComponent(e)];return`file@@@${e}@@@${r.join("*")}`}async function syr(t,e="0"){await sb(t);let r=await O0.getrootmyfile(e||"0"),n=JAr(r),s=[];return n.forEach(i=>{let a=eyr(i);if(!a&&!tyr(i))return;let o=Oae(i);s.push({vod_id:a?ryr(o,Nae(i)):nyr(i),vod_name:o,vod_pic:a?QAr:GAr,vod_remarks:a?"\u76EE\u5F55":ji(iat(i)),...a?{cate:{id:Nae(i),name:o}}:{},ratio:1.33})}),s}async function iyr(t,e){return await sb(t),{}}async function ayr(t,e){return{class:[{type_id:"0",type_name:"\u6211\u7684123\u7F51\u76D8"}]}}async function oyr(t,e){let r=String(t.body.id||"0");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||"0");let n=Number.parseInt(t.body.page,10)||1,s=await syr(t,r||"0");return{page:n,pagecount:1,limit:s.length,total:s.length,list:s}}async function cyr(t,e){let r=String(t.body.id||""),n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await zAr("123","123");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function uyr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||r.length<5)return{parse:0,url:"",msg:"123 \u64AD\u653E\u53C2\u6570\u9519\u8BEF"};await sb(t);try{let n=await O0.getmyDownload(r[1],r[2],r[3],r[4],KAr(r[5]||""));return n?{parse:0,url:["\u539F\u753B",n]}:{parse:0,url:"",msg:"123 \u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`123 \u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function lyr(t,e){return{page:1,pagecount:1,list:[]}}async function dyr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var aat={meta:{key:"my123",name:"\u300C\u76D8\u300D123",type:3},api:async t=>{t.post("/init",iyr),t.post("/home",ayr),t.post("/category",oyr),t.post("/detail",cyr),t.post("/play",uyr),t.post("/search",lyr),t.get("/test",dyr)}};var uat="https://pan1.me";function oat(t,e){return Object.prototype.hasOwnProperty.call(t||{},e)}function lat(t){return String(t||"").trim().replace(/\/+$/,"")||uat}var dat=async(t,e,r)=>{let n=await t.db.getObjectDefault("/123ypzysq",{});if(oat(n,e))return n[e];let s=t.config?.["123ypzysq"]||{};return oat(s,e)?s[e]:r},fyr=async t=>lat(await dat(t,"url",uat)),pyr=async t=>String(await dat(t,"cookie","")||"").trim(),Pae=async t=>({url:await fyr(t),cookie:await pyr(t)}),cat=async(t,e,r)=>{await t.db.push(`/123ypzysq/${e}`,r)},myr=async t=>{await t.db.delete("/123ypzysq")};async function Dae(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await Pae(e.server)})}),t.put("/config",async(e,r)=>{let n=e.body||{};await cat(e.server,"url",lat(n.url)),await cat(e.server,"cookie",String(n.cookie||"").trim()),r.send({code:0})}),t.delete("/config",async(e,r)=>{await myr(e.server),r.send({code:0})})}var w4="https://pan1.me",hyr=["CATPAW_123YPZYSQ_COOKIE","PAN1_ME_COOKIE","YPZYSQ_COOKIE"],gyr="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",Ayr=/https?:\/\/[A-Za-z0-9._~:/?#[\]@!$&'()*+,;=%-]+/g,yyr=/(?:www\.)?(?:123684\.com|123865\.com|123912\.com|123pan\.com|123pan\.cn|123592\.com)/i,hat=[{type_id:"2",type_name:"\u7535\u5F71"},{type_id:"48",type_name:"\u7535\u89C6\u5267"},{type_id:"37",type_name:"\u52A8\u6F2B"},{type_id:"52",type_name:"\u7EFC\u827A"},{type_id:"56",type_name:"4K\u539F\u76D8"}],fat=["\u54C8\u54C8\uFF0C\u4E0D\u9519\u54E6\uFF01","\u4E0D\u9519\u7684\u5E16\u5B50\uFF01","\u975E\u5E38\u68D2\uFF01\uFF01\uFF01","\u611F\u8C22\u5206\u4EAB,\u592A\u68D2\u4E86\uFF01","\u8FD9\u4E0D\u6B63\u662F\u6211\u82E6\u82E6\u5BFB\u627E\u7684\u8D44\u6E90\u5417\uFF01","\u597D\u4EBA\u4E00\u80CE\u751F\u5341\u4E2A\uFF01","\u770B\u5B8C\u697C\u4E3B\u7684\u8FD9\u4E2A\u5E16\u5B50\u4EE5\u540E\uFF0C\u6211\u7684\u5FC3\u4E45\u4E45\u4E0D\u80FD\u5E73\u9759\uFF0C\u9707\u64BC\u554A\uFF01","\u4E3A\u4EC0\u4E48\u4F1A\u6709\u5982\u6B64\u597D\u7684\u5E16\u5B50\uFF01","\u864E\u8EAF\u4E00\u9707\uFF0C\u4E09\u5206\u8D70\u4EBA\u3002","\u6E2F\uFF0C\u662F\u4E00\u79CD\u7F8E\u5FB7\u3002","\u6D41\u6C13\u5E76\u4E0D\u53EF\u6015\uFF0C\u53EF\u6015\u7684\u662F\u6D41\u6C13\u6709\u6587\u5316\u3002","\u597D\u4EBA\u4E00\u80CE\u751F10086\u4E2A"];function Qf(t){return String(t||"").replace(/\s+/g," ").trim()}async function kae(t){let e=await Pae(t.server).catch(()=>({url:w4,cookie:""})),r=String(e.url||w4).trim().replace(/\/+$/,""),n=hyr.map(s=>process.env[s]).find(Boolean);return{baseUrl:r||w4,cookie:String(e.cookie||n||"").trim()}}function xyr(t,e=!1){let r={"User-Agent":gyr,Referer:t.baseUrl,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8","Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8"};return e&&(r.Origin=t.baseUrl,r["X-Requested-With"]="XMLHttpRequest",r["Content-Type"]="application/x-www-form-urlencoded"),t.cookie&&(r.Cookie=t.cookie),r}function gat(t,e=w4){let r=String(t||"").trim();return r?new URL(r,e).toString():""}async function Ew(t,e,r,n={}){let s=await he.request({url:gat(t,r.baseUrl),method:n.method||"GET",headers:xyr(r,n.ajax),data:n.data||void 0});return String(s?.data||"")}function Aat(t){let e=String(t||"");return e.match(/thread-(\d+)/)?.[1]||e.match(/^\d+$/)?.[0]||""}function yat(t){let e=Me(t),r=[];return e("li.media.thread.tap").each((n,s)=>{let i=e(s),a=i.find('a[href*="thread-"]').first(),o=Qf(a.text()),c=i.attr("data-tid")||Aat(a.attr("href"));if(!o||!c)return;let u=Qf(i.find(".date.text-grey").text()),l=i.find("a.badge.badge-pill.badge-dark").map((d,f)=>Qf(e(f).text())).get().filter(Boolean).join(" / ");r.push({vod_id:c,vod_name:o,vod_remarks:[l,u].filter(Boolean).join(" \xB7 "),topRightRemarks:l})}),{$:e,list:r}}function xat(t,e,r,n){let s=String(n||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=r==="search"?new RegExp(`search-${s}-(\\d+)\\.htm`):new RegExp(`forum-${s}-(\\d+)\\.htm`),a=Number.parseInt(e,10)||1;return t("a[href]").each((o,c)=>{let u=String(t(c).attr("href")||""),l=Number.parseInt(u.match(i)?.[1]||"",10);Number.isFinite(l)&&(a=Math.max(a,l))}),a}function byr(){return fat[Math.floor(Math.random()*fat.length)]}async function Eyr(t,e,r){if(r.cookie)try{let n=new URLSearchParams({doctype:"1",return_html:"1",quotepid:"0",message:byr()}).toString();await Ew(`/?post-create-${t}-1.htm`,e,r,{method:"POST",ajax:!0,data:n}),await new Promise(s=>setTimeout(s,500))}catch(n){console.warn("[123ypzysq] \u81EA\u52A8\u56DE\u590D\u5931\u8D25:",n?.message||n)}}function pat(t){return Qf(t).match(/(?:æå–ç |è®¿é—®ç |å¯†ç |code)[::\s]*([A-Za-z0-9]{4})/i)?.[1]||""}function _yr(t){return String(t||"").replace(/&/g,"&").replace(/[)\])】,,。;;\s]+$/g,"").trim()}function Syr(t,e){try{let r=new URL(t);return r.searchParams.has("pwd")||r.searchParams.set("pwd",e),r.toString()}catch{let n=t.includes("?")?"&":"?";return`${t}${n}pwd=${encodeURIComponent(e)}`}}function mat(t,e){let r=_yr(t);return yyr.test(r)?e?Syr(r,e):r:""}function vyr(t){let e=t(".alert.alert-success").length?t(".alert.alert-success"):t(".post, .message, body"),r=new Set;return e.each((n,s)=>{let i=t(s),a=i.text(),o=pat(a);i.find("a[href]").each((c,u)=>{let l=t(u).attr("href"),d=pat(t(u).parent().text())||o,f=mat(l,d);f&&r.add(f)});for(let c of i.html()?.match(Ayr)||[]){let u=mat(c,o);u&&r.add(u)}}),[...r]}function Cyr(t,e,r){let n={vod_id:e,vod_name:Qf(t(".movie-title").first().text())||Qf(t("h1, h2, .title").first().text())||"123\u4E91\u76D8\u8D44\u6E90",vod_pic:gat(t(".movie-poster img").first().attr("src")||"",r),vod_content:Qf(t(".plot-content").first().text())};return t(".detail-label").each((s,i)=>{let a=Qf(t(i).text()),o=Qf(t(i).next().text());o&&(a.includes("\u5E74\u4EFD")&&(n.vod_year=o),a.includes("\u7C7B\u578B")&&(n.vod_type=o),a.includes("\u5BFC\u6F14")&&(n.vod_director=o),a.includes("\u4E3B\u6F14")&&(n.vod_actor=o))}),n}async function Iyr(t,e){return await qr(t,e),{}}async function Tyr(t,e){return{class:hat}}async function wyr(t,e){let r=String(t.body.id||hat[0].type_id),n=Number.parseInt(t.body.page,10)||1,s=await kae(t),i=await Ew(`/?forum-${r}-${n}.htm`,t,s),{$:a,list:o}=yat(i);return{page:n,pagecount:xat(a,n,"forum",r),limit:o.length,total:o.length,list:o}}async function Ryr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[],s=await kae(t);for(let i of r){let a=Aat(i);if(!a)continue;let o=await Ew(`/?thread-${a}.htm`,t,s),c=Me(o);c(".alert.alert-warning").text().includes("\u8BF7\u56DE\u590D\u540E\u518D\u67E5\u770B")&&(await Eyr(a,t,s),o=await Ew(`/?thread-${a}.htm`,t,s),c=Me(o));let u=Cyr(c,a,s.baseUrl),l=vyr(c),d=l.length>0?await Rr(l,t):null;d?.froms&&d?.urls&&(u.vod_play_from=d.froms,u.vod_play_url=d.urls,u.vod_links=d.links),!u.vod_content&&l.length>0&&(u.vod_content=`\u5171\u53D1\u73B0${l.length}\u4E2A123\u7F51\u76D8\u94FE\u63A5`),n.push(u)}return{list:n}}async function Nyr(t,e){let r=String(t.body.wd||"").trim(),n=Number.parseInt(t.body.page,10)||1;if(!r)return{page:n,pagecount:1,list:[]};let s=encodeURIComponent(r),i=await kae(t),a=await Ew(`/?search-${s}-${n}.htm`,t,i),{$:o,list:c}=yat(a);return{page:n,pagecount:xat(o,n,"search",s),limit:c.length,total:c.length,list:c}}async function Oyr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/home`);if(n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return s=await t.server.inject().post(`${r}/search`).payload({wd:"\u4ED9\u9006",page:1}),n.search=s.json(),n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var bat={meta:{key:"123ypzysq",name:"\u300C\u76D8\u300D123\u793E\u533A",type:3},api:async t=>{t.post("/init",Iyr),t.post("/home",Tyr),t.post("/category",wyr),t.post("/detail",Ryr),t.post("/play",Or),t.post("/search",Nyr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr),t.get("/test",Oyr)}};var Pyr="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Dyr="https://img.icons8.com/color/48/video.png",Eat=[".mp4",".mkv",".webm",".avi",".wmv",".flv",".mov",".mpeg",".mpg",".m4v",".ts",".m2ts",".3gp",".rm",".rmvb",".iso"];async function kyr(t,e){let r=globalThis.getPanName?await globalThis.getPanName(t):"";return String(r||e)}function Lyr(t){return Number(t?.resType||0)===2}function Byr(t){if(Number(t?.resType||0)!==1)return!1;let e=String(t?.ext||"").toLowerCase(),r=String(t?.mineType||"").toLowerCase(),n=String(t?.fileName||"").toLowerCase();return Number(t?.fileType||0)===2||r.startsWith("video/")||Eat.includes(e)||Eat.some(s=>n.endsWith(s))}function _at(t){return String(t?.fileName||"\u672A\u77E5").trim()||"\u672A\u77E5"}function Lae(t){return String(t?.fileId||"")}function Myr(t){return Number(t?.fileSize||t?.size||0)}function Wyr(t,e){return`folder@@@${t}@@@${e}`}function $yr(t){return`file@@@${_at(t)}@@@own*${Lae(t)}`}async function Fyr(t,e=""){let r=await g5e(t,e||""),n=Array.isArray(r?.list)?r.list:[],s=[];return n.forEach(i=>{let a=Lyr(i);if(!a&&!Byr(i))return;let o=_at(i);s.push({vod_id:a?Wyr(o,Lae(i)):$yr(i),vod_name:o,vod_pic:a?Pyr:String(i?.thumbnail||"").trim()||Dyr,vod_remarks:a?"\u76EE\u5F55":ji(Myr(i)),...a?{cate:{id:Lae(i),name:o}}:{},ratio:1.33})}),{rawCount:n.length,total:Number(r?.total||n.length),list:s}}async function Uyr(t,e){return await lC(t),{}}async function qyr(t,e){return{class:[{type_id:"root",type_name:"\u6211\u7684\u5149\u9E2D"}]}}async function jyr(t,e){let r=String(t.body.id||"root");r.startsWith("folder@@@")&&(r=r.split("@@@")[2]||""),r==="root"&&(r="");let n=Number.parseInt(t.body.page,10)||1,{rawCount:s,total:i,list:a}=await Fyr(t,r||"");return{page:n,pagecount:1,limit:s,total:Math.max(i,s),list:a}}async function Hyr(t,e){let r=String(t.body.id||"");if(r.startsWith("folder@@@"))return{list:[{vod_id:r,vod_name:r.split("@@@")[1]||"\u76EE\u5F55"}]};let n=r.split("@@@"),s=n[1]||"\u89C6\u9891\u64AD\u653E",i=n[2]||"",a=await kyr("guangyapan","\u5149\u9E2D");return{list:[{vod_id:r,vod_name:s,vod_content:`\u6587\u4EF6\u540D: ${s}`,vod_play_from:a,vod_play_url:`${a}$${i}`}]}}async function Qyr(t,e){let r=String(t.body.id||"").split("*");if(r[0]!=="own"||!r[1])return{parse:0,url:"",msg:"\u5149\u9E2D\u64AD\u653E\u53C2\u6570\u9519\u8BEF"};try{let n=await A5e(t,r[1]);return n?.url?{parse:0,url:["\u539F\u753B",n.url]}:{parse:0,url:"",msg:n?.msg||"\u5149\u9E2D\u672A\u8FD4\u56DE\u4E0B\u8F7D\u5730\u5740"}}catch(n){return{parse:0,url:"",msg:`\u5149\u9E2D\u63A5\u53E3\u5F02\u5E38: ${n?.message||n}`}}}async function Gyr(t,e){return{page:1,pagecount:1,list:[]}}async function Vyr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home?.class?.length){s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1,filter:!0,filters:{}}),n.category=s.json();let i=n.category?.list?.find(a=>!a.cate)||n.category?.list?.[0];i?.vod_id&&(s=await t.server.inject().post(`${r}/detail`).payload({id:i.vod_id}),n.detail=s.json())}return n}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Sat={meta:{key:"myguangyapan",name:"\u300C\u76D8\u300D\u5149\u9E2D",type:3},api:async t=>{t.post("/init",Uyr),t.post("/home",qyr),t.post("/category",jyr),t.post("/detail",Hyr),t.post("/play",Qyr),t.post("/search",Gyr),t.get("/test",Vyr)}};var zyr=["http://103.217.192.130:16969"],Bae=async t=>(await t.db.getObjectDefault("/huban",{}))?.urls||t.config.huban?.urls||zyr,Kyr=async(t,e)=>{await t.db.push("/huban/urls",e)},Yyr=async t=>{await t.db.delete("/huban/urls")};async function Mae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Bae(e.server)})}),t.put("/urls",async(e,r)=>{await Kyr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Yyr(e.server),r.send({code:0})})}var Wae,R4=t=>{if(!Wae){let e=Date.now();Wae=new Promise(async r=>{let n=await Bae(t),s=await Xn(n);console.log("\u864E\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return Wae};async function $ae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Jyr(t,e){return{class:[{type_id:"1",type_name:"\u98CE"},{type_id:"2",type_name:"\u82B1"},{type_id:"3",type_name:"\u96EA"},{type_id:"4",type_name:"\u6708"},{type_id:"5",type_name:"\u7CBE"},{type_id:"6",type_name:"\u77ED"},{type_id:"30",type_name:"115"}],filters:{}}}async function Xyr(t,e){let r=await R4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await $ae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Zyr(t,e){let r=await R4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await $ae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function exr(t,e){let r=await R4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await $ae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var vat={meta:{key:"huban",name:"\u300C\u76D8\u300D\u864E\u6591",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Jyr),t.post("/category",Xyr),t.post("/detail",Zyr),t.post("/play",Or),t.post("/search",exr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:R4};var txr=["http://103.217.192.184:12512"],Fae=async t=>(await t.db.getObjectDefault("/xiaoban",{}))?.urls||t.config.xiaoban?.urls||txr,rxr=async(t,e)=>{await t.db.push("/xiaoban/urls",e)},nxr=async t=>{await t.db.delete("/xiaoban/urls")};async function Uae(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Fae(e.server)})}),t.put("/urls",async(e,r)=>{await rxr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await nxr(e.server),r.send({code:0})})}var qae,N4=t=>{if(!qae){let e=Date.now();qae=new Promise(async r=>{let n=await Fae(t),s=await Xn(n);console.log("\u5C0F\u6591\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return qae};async function jae(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function sxr(t,e){return{class:[{type_id:"1",type_name:"\u6885"},{type_id:"2",type_name:"\u5170"},{type_id:"3",type_name:"\u7AF9"},{type_id:"4",type_name:"\u83CA"},{type_id:"6",type_name:"\u77ED"},{type_id:"5",type_name:"\u7CBE"}],filters:{}}}async function ixr(t,e){let r=await N4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await jae(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function axr(t,e){let r=await N4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await jae(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function oxr(t,e){let r=await N4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await jae(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Cat={meta:{key:"xiaoban",name:"\u300C\u76D8\u300D\u5C0F\u6591",type:3},api:async t=>{t.post("/init",qr),t.post("/home",sxr),t.post("/category",ixr),t.post("/detail",axr),t.post("/play",Or),t.post("/search",oxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:N4};var Tat=Re(require("vm"),1),Qae=class{add(e,r,n){if(typeof arguments[0]!="string")for(let s in arguments[0])this.add(s,arguments[0][s],arguments[1]);else(Array.isArray(e)?e:[e]).forEach(function(s){this[s]=this[s]||[],r&&this[s][n?"unshift":"push"](r)},this)}run(e,r){this[e]=this[e]||[],this[e].forEach(function(n){n.call(r&&r.context?r.context:r,r)})}},Gae=class{constructor(e){this.jsep=e,this.registered={}}register(...e){e.forEach(r=>{if(typeof r!="object"||!r.name||!r.init)throw new Error("Invalid JSEP plugin format");this.registered[r.name]||(r.init(this.jsep),this.registered[r.name]=r)})}},uo=class t{static get version(){return"1.4.0"}static toString(){return"JavaScript Expression Parser (JSEP) v"+t.version}static addUnaryOp(e){return t.max_unop_len=Math.max(e.length,t.max_unop_len),t.unary_ops[e]=1,t}static addBinaryOp(e,r,n){return t.max_binop_len=Math.max(e.length,t.max_binop_len),t.binary_ops[e]=r,n?t.right_associative.add(e):t.right_associative.delete(e),t}static addIdentifierChar(e){return t.additional_identifier_chars.add(e),t}static addLiteral(e,r){return t.literals[e]=r,t}static removeUnaryOp(e){return delete t.unary_ops[e],e.length===t.max_unop_len&&(t.max_unop_len=t.getMaxKeyLen(t.unary_ops)),t}static removeAllUnaryOps(){return t.unary_ops={},t.max_unop_len=0,t}static removeIdentifierChar(e){return t.additional_identifier_chars.delete(e),t}static removeBinaryOp(e){return delete t.binary_ops[e],e.length===t.max_binop_len&&(t.max_binop_len=t.getMaxKeyLen(t.binary_ops)),t.right_associative.delete(e),t}static removeAllBinaryOps(){return t.binary_ops={},t.max_binop_len=0,t}static removeLiteral(e){return delete t.literals[e],t}static removeAllLiterals(){return t.literals={},t}get char(){return this.expr.charAt(this.index)}get code(){return this.expr.charCodeAt(this.index)}constructor(e){this.expr=e,this.index=0}static parse(e){return new t(e).parse()}static getMaxKeyLen(e){return Math.max(0,...Object.keys(e).map(r=>r.length))}static isDecimalDigit(e){return e>=48&&e<=57}static binaryPrecedence(e){return t.binary_ops[e]||0}static isIdentifierStart(e){return e>=65&&e<=90||e>=97&&e<=122||e>=128&&!t.binary_ops[String.fromCharCode(e)]||t.additional_identifier_chars.has(String.fromCharCode(e))}static isIdentifierPart(e){return t.isIdentifierStart(e)||t.isDecimalDigit(e)}throwError(e){let r=new Error(e+" at character "+this.index);throw r.index=this.index,r.description=e,r}runHook(e,r){if(t.hooks[e]){let n={context:this,node:r};return t.hooks.run(e,n),n.node}return r}searchHook(e){if(t.hooks[e]){let r={context:this};return t.hooks[e].find(function(n){return n.call(r.context,r),r.node}),r.node}}gobbleSpaces(){let e=this.code;for(;e===t.SPACE_CODE||e===t.TAB_CODE||e===t.LF_CODE||e===t.CR_CODE;)e=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}parse(){this.runHook("before-all");let e=this.gobbleExpressions(),r=e.length===1?e[0]:{type:t.COMPOUND,body:e};return this.runHook("after-all",r)}gobbleExpressions(e){let r=[],n,s;for(;this.index0;){if(t.binary_ops.hasOwnProperty(e)&&(!t.isIdentifierStart(this.code)||this.index+e.lengthi.right_a&&d.right_a?n>d.prec:n<=d.prec;for(;s.length>2&&l(s[s.length-2]);)o=s.pop(),r=s.pop().value,a=s.pop(),e={type:t.BINARY_EXP,operator:r,left:a,right:o},s.push(e);e=this.gobbleToken(),e||this.throwError("Expected expression after "+u),s.push(i,e)}for(c=s.length-1,e=s[c];c>1;)e={type:t.BINARY_EXP,operator:s[c-1].value,left:s[c-2],right:e},c-=2;return e}gobbleToken(){let e,r,n,s;if(this.gobbleSpaces(),s=this.searchHook("gobble-token"),s)return this.runHook("after-token",s);if(e=this.code,t.isDecimalDigit(e)||e===t.PERIOD_CODE)return this.gobbleNumericLiteral();if(e===t.SQUOTE_CODE||e===t.DQUOTE_CODE)s=this.gobbleStringLiteral();else if(e===t.OBRACK_CODE)s=this.gobbleArray();else{for(r=this.expr.substr(this.index,t.max_unop_len),n=r.length;n>0;){if(t.unary_ops.hasOwnProperty(r)&&(!t.isIdentifierStart(this.code)||this.index+r.length=r.length&&this.throwError("Unexpected token "+String.fromCharCode(e));break}else if(i===t.COMMA_CODE){if(this.index++,s++,s!==r.length){if(e===t.CPAREN_CODE)this.throwError("Unexpected token ,");else if(e===t.CBRACK_CODE)for(let a=r.length;a":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10,"**":11},right_associative:new Set(["**"]),additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"});uo.max_unop_len=uo.getMaxKeyLen(uo.unary_ops);uo.max_binop_len=uo.getMaxKeyLen(uo.binary_ops);var Gf=t=>new uo(t).parse(),uxr=Object.getOwnPropertyNames(class{});Object.getOwnPropertyNames(uo).filter(t=>!uxr.includes(t)&&Gf[t]===void 0).forEach(t=>{Gf[t]=uo[t]});Gf.Jsep=uo;var lxr="ConditionalExpression",dxr={name:"ternary",init(t){t.hooks.add("after-expression",function(r){if(r.node&&this.code===t.QUMARK_CODE){this.index++;let n=r.node,s=this.gobbleExpression();if(s||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===t.COLON_CODE){this.index++;let i=this.gobbleExpression();if(i||this.throwError("Expected expression"),r.node={type:lxr,test:n,consequent:s,alternate:i},n.operator&&t.binary_ops[n.operator]<=.9){let a=n;for(;a.right.operator&&t.binary_ops[a.right.operator]<=.9;)a=a.right;r.node.test=a.right,a.right=r.node,r.node=n}}else this.throwError("Expected :")}})}};Gf.plugins.register(dxr);var Iat=47,fxr=92,pxr={name:"regex",init(t){t.hooks.add("gobble-token",function(r){if(this.code===Iat){let n=++this.index,s=!1;for(;this.index=97&&c<=122||c>=65&&c<=90||c>=48&&c<=57)a+=this.char;else break}let o;try{o=new RegExp(i,a)}catch(c){this.throwError(c.message)}return r.node={type:t.LITERAL,value:o,raw:this.expr.slice(n-1,this.index)},r.node=this.gobbleTokenProperty(r.node),r.node}this.code===t.OBRACK_CODE?s=!0:s&&this.code===t.CBRACK_CODE&&(s=!1),this.index+=this.code===fxr?2:1}this.throwError("Unclosed Regex")}})}},Hae=43,mxr=45,cE={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|=","||=","&&=","??="]),updateOperators:[Hae,mxr],assignmentPrecedence:.9,init(t){let e=[t.IDENTIFIER,t.MEMBER_EXP];cE.assignmentOperators.forEach(n=>t.addBinaryOp(n,cE.assignmentPrecedence,!0)),t.hooks.add("gobble-token",function(s){let i=this.code;cE.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(this.index+=2,s.node={type:"UpdateExpression",operator:i===Hae?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},(!s.node.argument||!e.includes(s.node.argument.type))&&this.throwError(`Unexpected ${s.node.operator}`))}),t.hooks.add("after-token",function(s){if(s.node){let i=this.code;cE.updateOperators.some(a=>a===i&&a===this.expr.charCodeAt(this.index+1))&&(e.includes(s.node.type)||this.throwError(`Unexpected ${s.node.operator}`),this.index+=2,s.node={type:"UpdateExpression",operator:i===Hae?"++":"--",argument:s.node,prefix:!1})}}),t.hooks.add("after-expression",function(s){s.node&&r(s.node)});function r(n){cE.assignmentOperators.has(n.operator)?(n.type="AssignmentExpression",r(n.left),r(n.right)):n.operator||Object.values(n).forEach(s=>{s&&typeof s=="object"&&r(s)})}}};Gf.plugins.register(pxr,cE);Gf.addUnaryOp("typeof");Gf.addLiteral("null",null);Gf.addLiteral("undefined",void 0);var hxr=new Set(["constructor","__proto__","__defineGetter__","__defineSetter__"]),cn={evalAst(t,e){switch(t.type){case"BinaryExpression":case"LogicalExpression":return cn.evalBinaryExpression(t,e);case"Compound":return cn.evalCompound(t,e);case"ConditionalExpression":return cn.evalConditionalExpression(t,e);case"Identifier":return cn.evalIdentifier(t,e);case"Literal":return cn.evalLiteral(t,e);case"MemberExpression":return cn.evalMemberExpression(t,e);case"UnaryExpression":return cn.evalUnaryExpression(t,e);case"ArrayExpression":return cn.evalArrayExpression(t,e);case"CallExpression":return cn.evalCallExpression(t,e);case"AssignmentExpression":return cn.evalAssignmentExpression(t,e);default:throw SyntaxError("Unexpected expression",t)}},evalBinaryExpression(t,e){return{"||":(n,s)=>n||s(),"&&":(n,s)=>n&&s(),"|":(n,s)=>n|s(),"^":(n,s)=>n^s(),"&":(n,s)=>n&s(),"==":(n,s)=>n==s(),"!=":(n,s)=>n!=s(),"===":(n,s)=>n===s(),"!==":(n,s)=>n!==s(),"<":(n,s)=>n":(n,s)=>n>s(),"<=":(n,s)=>n<=s(),">=":(n,s)=>n>=s(),"<<":(n,s)=>n<>":(n,s)=>n>>s(),">>>":(n,s)=>n>>>s(),"+":(n,s)=>n+s(),"-":(n,s)=>n-s(),"*":(n,s)=>n*s(),"/":(n,s)=>n/s(),"%":(n,s)=>n%s()}[t.operator](cn.evalAst(t.left,e),()=>cn.evalAst(t.right,e))},evalCompound(t,e){let r;for(let n=0;n-cn.evalAst(n,e),"!":n=>!cn.evalAst(n,e),"~":n=>~cn.evalAst(n,e),"+":n=>+cn.evalAst(n,e),typeof:n=>typeof cn.evalAst(n,e)}[t.operator](t.argument)},evalArrayExpression(t,e){return t.elements.map(r=>cn.evalAst(r,e))},evalCallExpression(t,e){let r=t.arguments.map(s=>cn.evalAst(s,e));return cn.evalAst(t.callee,e)(...r)},evalAssignmentExpression(t,e){if(t.left.type!=="Identifier")throw SyntaxError("Invalid left-hand side in assignment");let r=t.left.name,n=cn.evalAst(t.right,e);return e[r]=n,e[r]}},Vae=class{constructor(e){this.code=e,this.ast=Gf(this.code)}runInNewContext(e){let r=Object.assign(Object.create(null),e);return cn.evalAst(this.ast,r)}};function X0(t,e){return t=t.slice(),t.push(e),t}function zae(t,e){return e=e.slice(),e.unshift(t),e}var Kae=class extends Error{constructor(e){super('JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)'),this.avoidNew=!0,this.value=e,this.name="NewError"}};function Ur(t,e,r,n,s){if(!(this instanceof Ur))try{return new Ur(t,e,r,n,s)}catch(a){if(!a.avoidNew)throw a;return a.value}typeof t=="string"&&(s=n,n=r,r=e,e=t,t=null);let i=t&&typeof t=="object";if(t=t||{},this.json=t.json||r,this.path=t.path||e,this.resultType=t.resultType||"value",this.flatten=t.flatten||!1,this.wrap=Object.hasOwn(t,"wrap")?t.wrap:!0,this.sandbox=t.sandbox||{},this.eval=t.eval===void 0?"safe":t.eval,this.ignoreEvalErrors=typeof t.ignoreEvalErrors>"u"?!1:t.ignoreEvalErrors,this.parent=t.parent||null,this.parentProperty=t.parentProperty||null,this.callback=t.callback||n||null,this.otherTypeCallback=t.otherTypeCallback||s||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},t.autostart!==!1){let a={path:i?t.path:e};i?"json"in t&&(a.json=t.json):a.json=r;let o=this.evaluate(a);if(!o||typeof o!="object")throw new Kae(o);return o}}Ur.prototype.evaluate=function(t,e,r,n){let s=this.parent,i=this.parentProperty,{flatten:a,wrap:o}=this;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,e=e||this.json,t=t||this.path,t&&typeof t=="object"&&!Array.isArray(t)){if(!t.path&&t.path!=="")throw new TypeError('You must supply a "path" property when providing an object argument to JSONPath.evaluate().');if(!Object.hasOwn(t,"json"))throw new TypeError('You must supply a "json" property when providing an object argument to JSONPath.evaluate().');({json:e}=t),a=Object.hasOwn(t,"flatten")?t.flatten:a,this.currResultType=Object.hasOwn(t,"resultType")?t.resultType:this.currResultType,this.currSandbox=Object.hasOwn(t,"sandbox")?t.sandbox:this.currSandbox,o=Object.hasOwn(t,"wrap")?t.wrap:o,this.currEval=Object.hasOwn(t,"eval")?t.eval:this.currEval,r=Object.hasOwn(t,"callback")?t.callback:r,this.currOtherTypeCallback=Object.hasOwn(t,"otherTypeCallback")?t.otherTypeCallback:this.currOtherTypeCallback,s=Object.hasOwn(t,"parent")?t.parent:s,i=Object.hasOwn(t,"parentProperty")?t.parentProperty:i,t=t.path}if(s=s||null,i=i||null,Array.isArray(t)&&(t=Ur.toPathString(t)),!t&&t!==""||!e)return;let c=Ur.toPathArray(t);c[0]==="$"&&c.length>1&&c.shift(),this._hasParentSelector=null;let u=this._trace(c,e,["$"],s,i,r).filter(function(l){return l&&!l.isParentSelector});return u.length?!o&&u.length===1&&!u[0].hasArrExpr?this._getPreferredOutput(u[0]):u.reduce((l,d)=>{let f=this._getPreferredOutput(d);return a&&Array.isArray(f)?l=l.concat(f):l.push(f),l},[]):o?[]:void 0};Ur.prototype._getPreferredOutput=function(t){let e=this.currResultType;switch(e){case"all":{let r=Array.isArray(t.path)?t.path:Ur.toPathArray(t.path);return t.pointer=Ur.toPointer(r),t.path=typeof t.path=="string"?t.path:Ur.toPathString(t.path),t}case"value":case"parent":case"parentProperty":return t[e];case"path":return Ur.toPathString(t[e]);case"pointer":return Ur.toPointer(t.path);default:throw new TypeError("Unknown result type")}};Ur.prototype._handleCallback=function(t,e,r){if(e){let n=this._getPreferredOutput(t);t.path=typeof t.path=="string"?t.path:Ur.toPathString(t.path),e(n,r,t)}};Ur.prototype._trace=function(t,e,r,n,s,i,a,o){let c;if(!t.length)return c={path:r,value:e,parent:n,parentProperty:s,hasArrExpr:a},this._handleCallback(c,i,"value"),c;let u=t[0],l=t.slice(1),d=[];function f(p){Array.isArray(p)?p.forEach(m=>{d.push(m)}):d.push(p)}if((typeof u!="string"||o)&&e&&Object.hasOwn(e,u))f(this._trace(l,e[u],X0(r,u),e,u,i,a));else if(u==="*")this._walk(e,p=>{f(this._trace(l,e[p],X0(r,p),e,p,i,!0,!0))});else if(u==="..")f(this._trace(l,e,r,n,s,i,a)),this._walk(e,p=>{typeof e[p]=="object"&&f(this._trace(t.slice(),e[p],X0(r,p),e,p,i,!0))});else{if(u==="^")return this._hasParentSelector=!0,{path:r.slice(0,-1),expr:l,isParentSelector:!0};if(u==="~")return c={path:X0(r,u),value:s,parent:n,parentProperty:null},this._handleCallback(c,i,"property"),c;if(u==="$")f(this._trace(l,e,r,null,null,i,a));else if(/^(-?\d*):(-?\d*):?(\d*)$/u.test(u))f(this._slice(u,l,e,r,n,s,i));else if(u.indexOf("?(")===0){if(this.currEval===!1)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");let p=u.replace(/^\?\((.*?)\)$/u,"$1"),m=/@.?([^?]*)[['](\??\(.*?\))(?!.\)\])[\]']/gu.exec(p);m?this._walk(e,h=>{let A=[m[2]],g=m[1]?e[h][m[1]]:e[h];this._trace(A,g,r,n,s,i,!0).length>0&&f(this._trace(l,e[h],X0(r,h),e,h,i,!0))}):this._walk(e,h=>{this._eval(p,e[h],h,r,n,s)&&f(this._trace(l,e[h],X0(r,h),e,h,i,!0))})}else if(u[0]==="("){if(this.currEval===!1)throw new Error("Eval [(expr)] prevented in JSONPath expression.");f(this._trace(zae(this._eval(u,e,r.at(-1),r.slice(0,-1),n,s),l),e,r,n,s,i,a))}else if(u[0]==="@"){let p=!1,m=u.slice(1,-2);switch(m){case"scalar":(!e||!["object","function"].includes(typeof e))&&(p=!0);break;case"boolean":case"string":case"undefined":case"function":typeof e===m&&(p=!0);break;case"integer":Number.isFinite(e)&&!(e%1)&&(p=!0);break;case"number":Number.isFinite(e)&&(p=!0);break;case"nonFinite":typeof e=="number"&&!Number.isFinite(e)&&(p=!0);break;case"object":e&&typeof e===m&&(p=!0);break;case"array":Array.isArray(e)&&(p=!0);break;case"other":p=this.currOtherTypeCallback(e,r,n,s);break;case"null":e===null&&(p=!0);break;default:throw new TypeError("Unknown value type "+m)}if(p)return c={path:r,value:e,parent:n,parentProperty:s},this._handleCallback(c,i,"value"),c}else if(u[0]==="`"&&e&&Object.hasOwn(e,u.slice(1))){let p=u.slice(1);f(this._trace(l,e[p],X0(r,p),e,p,i,a,!0))}else if(u.includes(",")){let p=u.split(",");for(let m of p)f(this._trace(zae(m,l),e,r,n,s,i,!0))}else!o&&e&&Object.hasOwn(e,u)&&f(this._trace(l,e[u],X0(r,u),e,u,i,a,!0))}if(this._hasParentSelector)for(let p=0;p{e(r)})};Ur.prototype._slice=function(t,e,r,n,s,i,a){if(!Array.isArray(r))return;let o=r.length,c=t.split(":"),u=c[2]&&Number.parseInt(c[2])||1,l=c[0]&&Number.parseInt(c[0])||0,d=c[1]&&Number.parseInt(c[1])||o;l=l<0?Math.max(0,l+o):Math.min(o,l),d=d<0?Math.max(0,d+o):Math.min(o,d);let f=[];for(let p=l;p{f.push(h)});return f};Ur.prototype._eval=function(t,e,r,n,s,i){this.currSandbox._$_parentProperty=i,this.currSandbox._$_parent=s,this.currSandbox._$_property=r,this.currSandbox._$_root=this.json,this.currSandbox._$_v=e;let a=t.includes("@path");a&&(this.currSandbox._$_path=Ur.toPathString(n.concat([r])));let o=this.currEval+"Script:"+t;if(!Ur.cache[o]){let c=t.replaceAll("@parentProperty","_$_parentProperty").replaceAll("@parent","_$_parent").replaceAll("@property","_$_property").replaceAll("@root","_$_root").replaceAll(/@([.\s)[])/gu,"_$_v$1");if(a&&(c=c.replaceAll("@path","_$_path")),this.currEval==="safe"||this.currEval===!0||this.currEval===void 0)Ur.cache[o]=new this.safeVm.Script(c);else if(this.currEval==="native")Ur.cache[o]=new this.vm.Script(c);else if(typeof this.currEval=="function"&&this.currEval.prototype&&Object.hasOwn(this.currEval.prototype,"runInNewContext")){let u=this.currEval;Ur.cache[o]=new u(c)}else if(typeof this.currEval=="function")Ur.cache[o]={runInNewContext:u=>this.currEval(c,u)};else throw new TypeError(`Unknown "eval" property "${this.currEval}"`)}try{return Ur.cache[o].runInNewContext(this.currSandbox)}catch(c){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+c.message+": "+t)}};Ur.cache={};Ur.toPathString=function(t){let e=t,r=e.length,n="$";for(let s=1;s(t=t||"",e=e||"",resolve(t,e)),Rat={query(t,e){return Ur.JSONPath({path:e,json:t})}},Yae=!0,Nat=":eq|:lt|:gt|:first|:last|:not|:even|:odd|:has|:contains|:matches|:empty|^body$|^#",gxr="(url|src|href|-original|-src|-play|-url|style)$|^(data-|url-|src-)",Axr="^(ftp|magnet|thunder|ws):",Jae=class{constructor(e=""){this.MY_URL=e,this.pdfh_html="",this.pdfa_html="",this.pdfh_doc=null,this.pdfa_doc=null}test(e,r){return!!new RegExp(e,"mi").exec(r)}contains(e,r){return e.indexOf(r)!==-1}parseHikerToJq(e,r=!1){if(this.contains(e,"&&")){let n=e.split("&&"),s=[];for(let i=0;i=n.length-1?s.push(n[i]):s.push(`${n[i]}:eq(0)`)}e=s.join(" ")}else{let n=e.split(" "),s=n[n.length-1];!this.test(Nat,s)&&r&&(e=`${e}:eq(0)`)}return e}getParseInfo(e){let r=[],n=0,s=e;if(this.contains(e,":eq")){s=e.split(":eq")[0];let i=e.split(":eq")[1];this.contains(s,"--")?(r=s.split("--").slice(1),s=s.split("--")[0]):this.contains(i,"--")&&(r=i.split("--").slice(1),i=i.split("--")[0]);try{n=parseInt(i.split("(")[1].split(")")[0])}catch{}}else this.contains(e,"--")&&(s=e.split("--")[0],r=e.split("--").slice(1));return{nparse_rule:s,nparse_index:n,excludes:r}}reorderAdjacentLtAndGt(e){let r=/:gt\((\d+)\):lt\((\d+)\)/,n;for(;(n=r.exec(e))!==null;){let s=`:lt(${n[2]}):gt(${n[1]})`;e=e.substring(0,n.index)+s+e.substring(n.index+n[0].length),r.lastIndex=n.index}return e}parseOneRule(e,r,n){let{nparse_rule:s,nparse_index:i,excludes:a}=this.getParseInfo(r);if(s=this.reorderAdjacentLtAndGt(s),n?n=n.find(s):n=e(s),this.contains(r,":eq")&&(n=n.eq(i)),a.length>0&&n){n=n.clone();for(let o of a)n.find(o).remove()}return n}parseText(e){return e=e.replace(/[\s]+/gm,` `),e=e.replace(/\n+/g,` -`).replace(/^\s+/,""),e=e.replace(/\n/g," "),e}pdfa(e,r){if(!e||!r)return[];r=this.parseHikerToJq(r);let n=Me(e);zae&&this.pdfa_html!==e&&(this.pdfa_html=e,this.pdfa_doc=n);let s=r.split(" "),i=null;for(let o of s)if(i=this.parseOneRule(n,o,i),!i)return[];return(i?.toArray()??[]).map(o=>{let c=`${n(o)}`;return c||""})}pdfl(e,r,n,s,i){if(!e||!r)return[];r=this.parseHikerToJq(r,!1);let a=[],o=Me(e),c=r.split(" "),u=null;for(let l of c)if(u=this.parseOneRule(o,l,u),!u)return[];return u.each((l,d)=>{a.push(`${o(d)}`)}),a}pdfh(e,r,n=""){if(!e||!r)return"";let s=Me(e);if(typeof zae<"u"&&zae&&this.pdfa_html!==e&&(this.pdfa_html=e,this.pdfa_doc=s),r==="body&&Text"||r==="Text")return this.parseText(s.text());if(r==="body&&Html"||r==="Html")return s.html();let i;if(this.contains(r,"&&")){let c=r.split("&&");i=c.pop(),r=c.join("&&")}r=this.parseHikerToJq(r,!0);let a=r.split(" "),o=null;for(let c of a)if(o=this.parseOneRule(s,c,o),!o)return"";if(i)switch(i){case"Text":o=o?this.parseText(o.text()):"";break;case"Html":o=o?o.html():"";break;default:let c=o.clone(),u=i.split("||");for(let l of u){if(o=c?.attr(l)||"",this.contains(l.toLowerCase(),"style")&&this.contains(o,"url("))try{o=o.match(/url\((.*?)\)/)[1],o=o.replace(/^['"]|['"]$/g,"")}catch{}if(o&&n&&this.test(dxr,l)&&!this.test(fxr,o)&&(o=o.includes("http")?o.slice(o.indexOf("http")):vat(n,o)),o)break}}else o=`${o}`;return o}pd(e,r,n=""){return n||(n=this.MY_URL),this.pdfh(e,r,n)}pq(e){return Me(e)}pjfh(e,r,n=!1){if(!e||!r)return"";try{e=typeof e=="string"?JSON.parse(e):e}catch{return console.log("\u5B57\u7B26\u4E32\u8F6C JSON \u5931\u8D25"),""}r.startsWith("$.")||(r="$."+r);let s="",i=r.split("||");for(let a of i){let o=Iat.query(e,a);if(s=Array.isArray(o)?o[0]||"":o||"",n&&s&&(s=vat(this.MY_URL,s)),s)break}return s}pj(e,r){return this.pjfh(e,r,!0)}pjfa(e,r){if(!e||!r)return[];try{e=typeof e=="string"?JSON.parse(e):e}catch{return[]}r.startsWith("$.")||(r="$."+r);let n=Iat.query(e,r);return Array.isArray(n)&&Array.isArray(n[0])&&n.length===1?n[0]:n||[]}},Tat=Yae;async function pxr(t){try{return await Ae.request(typeof t=="string"?t:{url:t.url,method:t.method||"GET",headers:t.headers||{"User-Agent":sDe},data:t.data||"",responseType:t.responseType||""})}catch(e){return e.response}}async function wat(t){return(await he.get(t,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36"}})).data}var Jae="https://www.91panta.cn",Xae=t=>new Tat().pq(t),Rat=[{type_id:"39765285016165",type_name:"\u7535\u5F71"},{type_id:"39765284616164",type_name:"\u7535\u89C6\u5267"},{type_id:"39724839640293",type_name:"\u7EFC\u827A"},{type_id:"39724838540291",type_name:"\u52A8\u6F2B"},{type_id:"44732560408431",type_name:"\u77ED\u5267"},{type_id:"39956600861068",type_name:"\u7EAA\u5F55\u7247"}],mxr=Rat.map(t=>t.type_name.trim());async function hxr(t,e){return{class:Rat,filters:{}}}async function gxr(t,e){let r=t.body.id,s=t.body.page||1;s==0&&(s=1);let i=await wat(`${Jae}/?tagId=${r}&page=${s}`),a=Xae(i),o=[];a(".topicList .topicItem").each((d,f)=>{let p=a(f).find("h2 a:first")[0];if(!p||!p.children||!p.children[0]||!p.attribs)return;let m=p.children[0].data;if(!m)return;let h=a(f).find(".tm-m-photos-thumb li:first")[0]?.attribs["data-src"];o.push({vod_name:m.split(" ")[0],vod_id:p.attribs.href,vod_pic:h?`https://www.91panta.cn/${h}`:"https://www.91panta.cn/favicon.ico"})});let c=a(".topicPage .pg")[0],u=o.length,l=1;if(c){let d=a(c).find(".count")[0];if(d&&d.children&&d.children[0]){let p=d.children[0].data.match(/\d+/);p&&(u=p[0])}let f=a(c).find(".last")[0];if(f&&f.attribs&&f.attribs.title){let p=f.attribs.title.match(/\d+/);p&&(l=p[0])}}return{page:parseInt(s),pagecount:l?parseInt(l):1,limit:o.length,total:u?parseInt(u):o.length,list:o}}async function Axr(t,e){let r=await wat(`${Jae}/${t.body.id}`),n=Xae(r),s=n(".title")[0];if(!s||!s.children||!s.children[0])return{list:[]};let i={vod_name:s.children[0].data.trim(),vod_id:`/${t.body.id}`,vod_content:n("div.topicContent p:nth-child(1)").text().replace(/\s+/g,"")},a=n(".topicContent").html(),o=a.match(/]*?\s+)?href=["'](https:\/\/(?:caiyun|yun)\.139\.com\/[^"']*)["'][^>]*>/gi);if(!o||o.length===0)if(o=a.match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^<]*<\/span>/gi),o&&o.length>0){let c=o[0].match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^<]*/);o=c?c[0]:null}else{let c=a.match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^<\s]*/);o=c?c[0]:null}else{let c=o[0].match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^"']*/);o=c?c[0]:null}if(o){let c=await wr(o,t);c&&c.froms&&c.urls&&(i.vod_play_from=c.froms,i.vod_play_url=c.urls)}return{list:[i]}}async function yxr(t,e){let r=t.body.page||1,n=t.body.wd,s=(await pxr(`${Jae}/search?keyword=${encodeURIComponent(decodeURIComponent(n))}&page=${r}`)).data,i=Xae(s),a=[];return i(".topicList .topicItem").each((o,c)=>{let u=i(c).find(".tag")[0],l=u?i(u).html().trim():null;if(u&&mxr.includes(l)){let d=i(c).find(".title a:first")[0];if(!d||!d.attribs)return;let f=i(c).find(".tm-m-photos-thumb li:first")[0]?.attribs["data-src"],p=i(d).html().replace(/<[^>]*>/g,"").replace(/\s+/g,"");a.push({vod_name:p,vod_id:d.attribs.href,vod_remarks:"",vod_pic:f?`https://www.91panta.cn/${f}`:"https://www.91panta.cn/favicon.ico"})}}),{page:r,pagecount:1,list:a}}var Nat={meta:{key:"panta",name:"\u300C\u76D8\u300D\u76D8Ta",type:3},api:async t=>{t.post("/init",qr),t.post("/home",hxr),t.post("/category",gxr),t.post("/detail",Axr),t.post("/play",Nr),t.post("/search",yxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var xxr=["https://wogg.xxooo.cf","https://www.wogg.net"],Zae=async t=>(await t.db.getObjectDefault("/wanou",{}))?.urls||t.config.wanou?.urls||xxr,bxr=async(t,e)=>{await t.db.push("/wanou/urls",e)},Exr=async t=>{await t.db.delete("/wanou/urls")};async function eoe(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await Zae(e.server)})}),t.put("/urls",async(e,r)=>{await bxr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Exr(e.server),r.send({code:0})})}var toe,P4=t=>{if(!toe){let e=Date.now();toe=new Promise(async r=>{let n=await Zae(t),s=await Xn(n);console.log("\u73A9\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return toe};async function N4(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function _xr(t,e){return await qr(t,e),{}}async function Sxr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"44",type_name:"\u81FB\u5F69"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"46",type_name:"\u7EAA\u5F55"},{type_id:"6",type_name:"\u77ED\u5267"},{type_id:"5",type_name:"\u97F3\u4E50"}],n=[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}],s=[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}],i=[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}],a=[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],o={};return o[1]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[2]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[44]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[46]=[{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[6]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7537\u9891",v:"\u7537\u9891"},{n:"\u5973\u9891",v:"\u5973\u9891"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u751C\u5BA0",v:"\u751C\u5BA0"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u7A7F\u8D8A",v:"\u7A7F\u8D8A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u4EB2\u60C5",v:"\u4EB2\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u840C\u5B9D",v:"\u840C\u5B9D"},{n:"\u91CD\u751F",v:"\u91CD\u751F"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u9006\u88AD",v:"\u9006\u88AD"},{n:"\u8650\u604B",v:"\u8650\u604B"},{n:"\u9274\u5B9D",v:"\u9274\u5B9D"},{n:"\u590D\u4EC7",v:"\u590D\u4EC7"},{n:"\u4FEE\u4ED9",v:"\u4FEE\u4ED9"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"}]},{key:"by",name:"",init:"time",value:s}],o[5]=[{key:"by",name:"",init:"time",value:s}],{class:r,filters:o}}function vxr(t,e){let r=String(e||"").trim();if(!r)return"";if(/^https?:\/\//i.test(r)){if(/^https?:\/\/[^/]*gimg\d*\.baidu\.com\/gimg\//i.test(r)){let n=r.lastIndexOf("src=");if(n!==-1&&r.slice(n+4).includes("data:image/"))return""}return r}return r.startsWith("/img.php?url=")?r.slice(13):r.startsWith("/db.php?url=")?new URL(r,`${String(t||"").replace(/\/+$/,"")}/`).toString():new URL(r.replace(/^\/+/,""),`${String(t||"").replace(/\/+$/,"")}/`).toString()}function O4(t,e){return vxr(t,e?.attribs?.["data-src"]||e?.attribs?.src||"")}function Ixr(t){let e=Array.isArray(t)?t:t.split("-");for(let r=1;r div.module-search-item").map((f,p)=>{let m=l(p).find("div.video-info-header h3 a")[0];return{vod_id:m.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:m.attribs.title,vod_pic:O4(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("a.video-serial").text()}}).get();return{page:a,pagecount:d.length<10?a:a+1,list:d}}else{let o=[n,"","","","","","","",a,"","",""];i.area&&(o[1]=i.area),i.by&&(o[2]=i.by),i.class&&(o[3]=i.class),i.year&&(o[11]=i.year);let c=`${r}/index.php/vodshow/${o.join("-")}.html`,u=await N4(c),l=Me(u),d=l("div.module-items > div.module-item").map((f,p)=>{let m=l(p).find("div.video-name a")[0];return{vod_id:m.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:m.attribs.title,vod_pic:O4(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("div.module-item-text").text()}}).get();return{page:a,pagecount:d.length<70?a:a+1,list:d}}}async function Txr(t,e){let r=await P4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await N4(`${r}/index.php/voddetail/${i}.html`),o=Me(a),c=[],u=[],l="";o("div.video-info-items a[href*=/vodsearch/]").each((m,h)=>{let A=h.attribs.href.match(/vodsearch\/(.*).html/)[1].split("-"),g=o(h).text().trim(),b=Ixr(A);if(b===5){let y={id:"s-5-"+decodeURIComponent(A[5].toString()),name:g};c.push(`[a=cr:${JSON.stringify(y)}/]${g}[/a]`)}else if(b===1){let y={id:"s-1-"+decodeURIComponent(A[1].toString()),name:g};u.push(`[a=cr:${JSON.stringify(y)}/]${g}[/a]`)}else b===13&&(l=g)});let d={vod_name:o(".page-title")[0].children[0].data,vod_pic:O4(r,o(".mobile-play .lazyload")[0]||o(".module-item-pic img")[0]),vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||"",vod_year:l,vod_actor:u.join(", "),vod_director:c.join(", "),vod_content:o("div.video-info-content p[style*=none]")[0].children[0].data.trim()},f=o("div.module-row-info p").map((m,h)=>h.children[0].data).get(),p=await wr(f,t);p&&(d.vod_play_from=p.froms,d.vod_play_url=p.urls),s.push(d)}return{list:s}}async function wxr(t,e){let r=await P4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await N4(`${r}/index.php/vodsearch/-------------.html?wd=${s}`),o=Me(a),c=o("div.module-items > div.module-search-item").map((u,l)=>{let d=o(l).find("div.video-info-header h3 a")[0];return{vod_id:d.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:d.attribs.title,vod_pic:O4(r,o(l).find("div.module-item-pic img")[0]),vod_remarks:o(l).find("a.video-serial").text()}}).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}async function Rxr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u{t.post("/init",_xr),t.post("/home",Sxr),t.post("/category",Cxr),t.post("/detail",Txr),t.post("/play",Nr),t.post("/search",wxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr),t.get("/test",Rxr)},check:P4};var Nxr=["http://www.miqk.cc","https://mihdr.top","https://www.mihdr.top","https://zhizhen1.top"],roe=async t=>(await t.db.getObjectDefault("/zhizhen",{}))?.urls||t.config.zhizhen?.urls||Nxr,Oxr=async(t,e)=>{await t.db.push("/zhizhen/urls",e)},Pxr=async t=>{await t.db.delete("/zhizhen/urls")};async function noe(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await roe(e.server)})}),t.put("/urls",async(e,r)=>{await Oxr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Pxr(e.server),r.send({code:0})})}var soe,k4=t=>{if(!soe){let e=Date.now();soe=new Promise(async r=>{let n=await roe(t),s=await Xn(n);console.log("\u81F3\u81FB\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return soe};async function ioe(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function kxr(t,e){return{class:[{type_id:"26",type_name:"\u4E25\u9009"},{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"24",type_name:"\u8001\u5267"}],filters:{}}}async function Dxr(t,e){let r=await k4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await ioe(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Bxr(t,e){let r=await k4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await ioe(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await wr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls),s.push(c)}return{list:s}}async function Lxr(t,e){let r=await k4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await ioe(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Pat={meta:{key:"zhizhen",name:"\u300C\u76D8\u300D\u81F3\u81FB",type:3},api:async t=>{t.post("/init",qr),t.post("/home",kxr),t.post("/category",Dxr),t.post("/detail",Bxr),t.post("/play",Nr),t.post("/search",Lxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)},check:k4};var D4=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),kat=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),Dat=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),Lat="douerpan,zyfb123",Mxr={douerpan:"\u8C46\u513F\u76D8",zyfb123:"\u8C46\u513F123"},aoe=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgchannel",{});if(D4(n,e))return n[e];let s=t.config?.tgchannel||{};return D4(s,e)?s[e]:r},Bat=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},B4=t=>aoe(t,"url","https://t.me"),ooe=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},coe=t=>aoe(t,"channelUsername",Lat),uoe=t=>aoe(t,"homeChannelUsername",Lat),L4=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},M4=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(D4(e,"channelNameMap"))return Bat(e.channelNameMap);let r=t.config?.tgchannel||{};return D4(r,"channelNameMap")?Bat(r.channelNameMap):Mxr},cE=async(t,e,r)=>{await t.db.push(`/tgchannel/${e}`,r)},Wxr=async t=>{await t.db.delete("/tgchannel")};async function loe(t){t.get("/config",async(e,r)=>{let n=await B4(e.server),s=await ooe(e.server),i=await coe(e.server),a=await uoe(e.server),o=await L4(e.server),c=await M4(e.server),u=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:u,channelUsername:kat(i),homeChannelUsername:kat(a),pic:o,channelNameMap:c}})}),t.put("/config",async(e,r)=>{await cE(e.server,"url",e.body.url),await cE(e.server,"count",e.body.count),await cE(e.server,"channelUsername",Dat(e.body.channelUsername).join(",")),await cE(e.server,"homeChannelUsername",Dat(e.body.homeChannelUsername).join(",")),await cE(e.server,"pic",e.body.pic),await cE(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})}),t.delete("/config",async(e,r)=>{await Wxr(e.server),r.send({code:0})})}function $xr(t){let e=t.attr("style"),r=/background-image:url\('([^']+)'\)/.exec(e);if(r&&r.length>1)return r[1]}function $at(t){return t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/名称[:|:]/)?.[1]||t,t=t.split(` -`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(【《「『〔〖〈﹝[]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(【《「『〔〖〈﹝[]/.test(t)?(t=t.replace(/^[\(\[\{(【《「『〔〖〈﹝[][^\)\]\})】》」』〕〗〉﹞]]*[\)\]\})】》」』〕〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim()):t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五六七八九十百千万亿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五六七八九十百千万亿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|杜比)?\s*(é«˜ç çŽ‡|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(杜比视界|杜比音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|杜比|é«˜ç çŽ‡|ä¸­ç çŽ‡|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|è¶…é«˜ç çŽ‡|EDR|æ ‡ç |Vivid|三维菁彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国字幕|双语|简中|日语|æ— æŸ|特别版|软字幕|补链接|MAX|ä¸­ç |音效|é«˜ç |台配|国语|环绕声|蓝光原盘|臻享超高清|首播|ç‚¹æ˜ |Viu|10B|硬字幕)\s*/g,"").replace(/\s*内封[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大小\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim()}var Fxr={"User-Agent":"MoZhao"};function doe(t){return rf().some(e=>e.validator(t))}function Fat(t,e=()=>!0){let r=[];for(let n of t){let s=n.attribs?.href;s&&e(s)&&r.push(s)}return r}function bw(t){return Fat(t,doe)}function W4(t){return Fat(t,$4)}function Gf(t){return[...new Set((t||[]).filter(Boolean))]}function Uxr(t){return String(t||"").trim().replace(/&/g,"&").replace(/[\)\]\}>)】》」』〕〗〉﹞]、。,,;ï¼›!?!?]+$/g,"")}function qxr(t){let e=String(t||"");return Gf([/https?:\/\/[^\s"'<>]+/gi,/magnet:\?[^\s"'<>]+/gi,/ed2k:\/\/\|file\|.+?\|\d+\|[a-f0-9]{32}\|\//gi,/ed2k:\/\/[^\s"'<>]+/gi].flatMap(n=>e.match(n)||[]).map(Uxr))}function jxr(t,e){let r=t(e).find(".tgme_widget_message_date").attr("href");if(qat(r))return r;let n=e.attribs?.["data-post"];return n?`https://t.me/${n}`:""}function foe(t){let e=[],r=qxr(t);for(let n of r)doe(n)&&e.push(n);return e}function Uat(t){let e=[],r=t.match(/https?:\/\/[^\s]+/gi);if(r)for(let n of r)$4(n)&&e.push(n);return e}var qat=t=>/t.me\/.*\/.*/.test(t),$4=t=>/https?:\/\/(?:telegra\.ph|graph\.org)\//i.test(String(t||"")),jat=t=>rf().find(e=>e.validator(t)),Hat=(t,e)=>!e||typeof e!="object"?t:e[t]||t,Qat=t=>String(t||"").split(",").map(e=>e.trim()).filter(Boolean);async function poe(t){let e=await Ae.get(t,{timeout:5e3,headers:Fxr});return Me(e.data)}async function Hxr(t){let e=await poe(t),r=e(".tl_article").text()||e("body").text()||"";return{links:Gf([...foe(r),...bw(e("a"))])}}async function Gat(t){let e=Gf((t||[]).filter($4));if(!e.length)return[];let r=await Promise.all(e.map(async n=>{try{return(await Hxr(n)).links}catch(s){return console.error("[tgchannel] parse telegra failed",n,s?.message||s),[]}}));return Gf(r.flat())}async function Qxr(t){let e=await poe(t),r=e(".tgme_widget_message"),n=[];for(let s of r){let i=s.attribs["data-post"],a=$xr(e(s).find(".tgme_widget_message_photo_wrap"));e("br").replaceWith(` -`);let o=e(s).find(".tgme_widget_message_text").text(),c=$at(o),u=o,l=Gf([...foe(o),...bw(e(s).find(".tgme_widget_message_text a")),...bw(e(s).find(".tgme_widget_message_inline_button"))]),d=Gf([...W4(e(s).find(".tgme_widget_message_text a")),...W4(e(s).find(".tgme_widget_message_inline_button")),...Uat(o)]),f=[...l],p=f.length?[...f]:d.length?[...d]:[];if(!p.length){let m=jxr(e,s);m&&p.push(m)}p.length&&n.push({id:p.join("|"),title:c,description:u,cover:a,messageId:Number(i.split("/")[1]),panLinks:f})}return n}async function Gxr(t){let e=await poe(t),r=e('meta[property="og:description"]').attr("content"),n=e('meta[property="og:image"]').attr("content"),s=$at(r),i=Gf([...foe(r||""),...bw(e(".tgme_widget_message_text a")),...bw(e(".tgme_widget_message_inline_button"))]),a=Gf([...Uat(r||""),...W4(e(".tgme_widget_message_text a")),...W4(e(".tgme_widget_message_inline_button"))]),o=i.length?[]:await Gat(a),c=Gf([...i,...o]);return{title:s,description:r,cover:n,links:c}}async function Kxr(t,e){return await qr(t,e),{}}async function Vxr(t){let e=await uoe(t.server),r=await M4(t.server);return{class:Qat(e).map(n=>({type_id:n,type_name:Hat(n,r)}))}}var Mat={},Wat={},moe={};async function Kat(t){let e=await B4(t.server),r=await L4(t.server),n=t.body.id,s=t.body.page;s||(s=1);try{let i=await Qxr(`${e}/s/${n}${s>1?`?before=${Wat[n]}`:""}`);Wat[n]=i[0].messageId,s===1&&(Mat[n]=i[i.length-1].messageId),i.reverse();let a=i.map(o=>{let c,u="";return o.panLinks.length&&o.panLinks.forEach(l=>{let d=jat(l);d&&(u+=u?`|${d.name}`:d.name,c||(c=d.pic))}),c||(c="https://telegram.org/img/apple-touch-icon.png"),{vod_name:o.title,vod_id:o.id,vod_pic:r&&o.cover||c,vod_remarks:u,rawData:o}});return a.forEach(o=>{o.vod_name&&o.vod_id&&(moe[o.vod_id]=o.vod_name)}),{page:s,pagecount:Math.ceil(Mat[n]/a.length),list:a}}catch(i){return console.error(i),{page:s,pagecount:1,list:[]}}}async function zxr(t,e){let r=await B4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=i.split("|"),o=moe[i]||"";if(a.length===1&&qat(a[0])){let l=await Gxr(i.replace("https://t.me",r));!o&&l.title&&(o=l.title),a=l.links}else!a.some(doe)&&a.some($4)&&(a=await Gat(a));let c=await wr(a,t),u={vod_id:i,vod_name:o};c&&(u.vod_play_from=c.froms,u.vod_play_url=c.urls),s.push(u)}return{list:s}}async function Yxr(t,e){let r=await ooe(t.server),n=await coe(t.server),s=await L4(t.server),i=await M4(t.server),a=t.body.wd,o=Number(r),c=Number.isFinite(o)?Math.floor(o):0,u=c>0,l=Qat(n);if(!l.length)return{page:1,pagecount:1,list:[]};let d=await Promise.all(l.map(p=>Kat({body:{id:`${p}?q=${encodeURIComponent(a)}`},server:t.server}))),f=[];return d.forEach((p,m)=>{let h=p.list.filter(g=>g.rawData.panLinks.length);(u?h.slice(0,c):h).forEach(g=>{let b="",y;g.rawData.panLinks.forEach(x=>{let v=jat(x);v&&(b+=b?`|${v.name}`:v.name),y||(y=v.pic)}),f.push({vod_id:g.vod_id,vod_name:g.vod_name,vod_pic:s&&g.vod_pic||y,vod_remarks:`${b}:${Hat(l[m],i)}`}),g.vod_name&&g.vod_id&&(moe[g.vod_id]=g.vod_name)})}),{page:1,pagecount:1,list:f}}var Vat={meta:{key:"tgchannel",name:"\u300C\u76D8\u300DTG\u641C",type:3},api:async t=>{t.post("/init",Kxr),t.post("/home",Vxr),t.post("/category",Kat),t.post("/detail",zxr),t.post("/play",Nr),t.post("/search",Yxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var F4=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),Jxr=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),Xxr=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),Yat=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgsou",{});if(F4(n,e))return n[e];let s=t.config?.tgsou||{};return F4(s,e)?s[e]:r},zat=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},hoe=t=>Yat(t,"url","https://tgsou.252035.xyz"),goe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},Aoe=t=>Yat(t,"channelUsername",""),yoe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},xoe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{}),r={};if(F4(e,"channelNameMap"))r=zat(e.channelNameMap);else{let n=t.config?.tgsou||{};F4(n,"channelNameMap")&&(r=zat(n.channelNameMap))}return r},Ew=async(t,e,r)=>{await t.db.push(`/tgsou/${e}`,r)};async function boe(t){t.get("/config",async(e,r)=>{let n=await hoe(e.server),s=await goe(e.server),i=await Aoe(e.server),a=await yoe(e.server),o=await xoe(e.server),c=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:c,channelUsername:Jxr(i),pic:a,channelNameMap:o}})}),t.put("/config",async(e,r)=>{await Ew(e.server,"url",e.body.url),await Ew(e.server,"count",e.body.count),await Ew(e.server,"channelUsername",Xxr(e.body.channelUsername).join(",")),await Ew(e.server,"pic",e.body.pic),await Ew(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})})}var Jat={};async function Zxr(t,e){return await qr(t,e),{}}async function ebr(t,e){return{class:[]}}var tbr=(t,e)=>!e||typeof e!="object"?t:e[t]||t;function rbr(t){return t&&(t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/名称[:|:]/)?.[1]||t,t=t.split(` -`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(【《「『〔〖〈﹝[]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(【《「『〔〖〈﹝[]/.test(t)?(t=t.replace(/^[\(\[\{(【《「『〔〖〈﹝[][^\)\]\})】》」』〕〗〉﹞]]*[\)\]\})】》」』〕〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim()):t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五六七八九十百千万亿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五六七八九十百千万亿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|杜比)?\s*(é«˜ç çŽ‡|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(杜比视界|杜比音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|杜比|é«˜ç çŽ‡|ä¸­ç çŽ‡|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|è¶…é«˜ç çŽ‡|EDR|æ ‡ç |Vivid|三维菁彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国字幕|双语|简中|日语|æ— æŸ|特别版|软字幕|补链接|MAX|ä¸­ç |音效|é«˜ç |台配|国语|环绕声|蓝光原盘|臻享超高清|首播|ç‚¹æ˜ |Viu|10B|硬字幕)\s*/g,"").replace(/\s*内封[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大小\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim())}async function nbr(t,e){return{page:1,pagecount:1,list:[]}}async function sbr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.includes("|")?s.split("|"):[s],a=await wr(i,t),o={};o.vod_name=Jat[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls),n.push(o)}return{list:n}}async function ibr(t,e){let r=await hoe(t.server),n=await goe(t.server),s=await Aoe(t.server),i=await yoe(t.server),a=await xoe(t.server),o=t.body.wd,c=Number(n),u=Number.isFinite(c)?Math.floor(c):0,l=u>0,d=new URL(r);d.searchParams.set("pic",String(i)),l&&d.searchParams.set("count",String(u)),d.searchParams.set("channelUsername",s),d.searchParams.set("keyword",o||"");let f=await Ae.get(d.toString()),p=new Map;for(let h of f.data.results){let[A,g]=h.split("$$$");if(!g)continue;let b=g.split("##");for(let y=0;yN.validator(I));if(w){let N=rbr(v)||o,P=!!R,B=P?/^https?:\/\//i.test(R)?R:`${r}/down?id=${R}&channelUsername=${A}`:w.pic,M=P?B:I;p.has(M)||p.set(M,{links:[],panInfos:[],pic:B,group:A,title:N});let D=p.get(M),L=I?.replace(/\s+/g,"");D.links.includes(L)||(D.links.push(L),D.panInfos.push(w))}}}let m=[];for(let[h,A]of p.entries()){let g=[...new Set(A.panInfos.map(b=>b.name))].join("/");m.push({vod_id:A.links.join("|"),vod_name:A.title,vod_pic:A.pic,vod_remarks:`${g}:${tbr(A.group,a)}`}),A.title&&A.links.length&&(Jat[A.links.join("|")]=A.title)}return{page:1,pagecount:1,list:m}}var Xat={meta:{key:"tgsou",name:"\u300C\u76D8\u300DTG\u641C\xB2",type:3},api:async t=>{t.post("/init",Zxr),t.post("/home",ebr),t.post("/category",nbr),t.post("/detail",sbr),t.post("/play",Nr),t.post("/search",ibr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var Zat=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),abr="http://127.0.0.1:8080",tot=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgfilebot",{});if(Zat(n,e))return n[e];let s=t.config?.tgfilebot||{};return Zat(s,e)?s[e]:r},Eoe=t=>tot(t,"url",abr),_oe=t=>tot(t,"password",""),eot=async(t,e,r)=>{await t.db.push(`/tgfilebot/${e}`,r)},obr=async t=>{await t.db.delete("/tgfilebot")};async function Soe(t){t.get("/config",async(e,r)=>{let n=await Eoe(e.server),s=await _oe(e.server);r.send({code:0,data:{url:n,password:s}})}),t.put("/config",async(e,r)=>{await eot(e.server,"url",e.body.url||""),await eot(e.server,"password",e.body.password||""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await obr(e.server),r.send({code:0})})}var cbr="http://127.0.0.1:8080",not="",_w=20,ubr=30;async function lbr(t,e){return{}}function dbr(t){for(t=String(t||"").trim();t.endsWith("/");)t=t.slice(0,-1);return t}function ns(t){return String(t||"").replace(/\s+/g," ").trim()}function sot(t){return ns(t).replace(/[$#]/g," ")}function voe(t){return ns(t).replace(/^>+\s*/,"").replace(/^\*\*(.*?)\*\*$/,"$1").replace(/^__(.*?)__$/,"$1").replace(/^`(.*?)`$/,"$1").replace(/^\[(.*?)\]\([^)]*\)$/,"$1").replace(/^[-•]\s*/,"").replace(/^\*\s+/,"").trim()}function iot(t){let e=String(t||"").replace(/\r\n/g,` +`).replace(/^\s+/,""),e=e.replace(/\n/g," "),e}pdfa(e,r){if(!e||!r)return[];r=this.parseHikerToJq(r);let n=Me(e);Yae&&this.pdfa_html!==e&&(this.pdfa_html=e,this.pdfa_doc=n);let s=r.split(" "),i=null;for(let o of s)if(i=this.parseOneRule(n,o,i),!i)return[];return(i?.toArray()??[]).map(o=>{let c=`${n(o)}`;return c||""})}pdfl(e,r,n,s,i){if(!e||!r)return[];r=this.parseHikerToJq(r,!1);let a=[],o=Me(e),c=r.split(" "),u=null;for(let l of c)if(u=this.parseOneRule(o,l,u),!u)return[];return u.each((l,d)=>{a.push(`${o(d)}`)}),a}pdfh(e,r,n=""){if(!e||!r)return"";let s=Me(e);if(typeof Yae<"u"&&Yae&&this.pdfa_html!==e&&(this.pdfa_html=e,this.pdfa_doc=s),r==="body&&Text"||r==="Text")return this.parseText(s.text());if(r==="body&&Html"||r==="Html")return s.html();let i;if(this.contains(r,"&&")){let c=r.split("&&");i=c.pop(),r=c.join("&&")}r=this.parseHikerToJq(r,!0);let a=r.split(" "),o=null;for(let c of a)if(o=this.parseOneRule(s,c,o),!o)return"";if(i)switch(i){case"Text":o=o?this.parseText(o.text()):"";break;case"Html":o=o?o.html():"";break;default:let c=o.clone(),u=i.split("||");for(let l of u){if(o=c?.attr(l)||"",this.contains(l.toLowerCase(),"style")&&this.contains(o,"url("))try{o=o.match(/url\((.*?)\)/)[1],o=o.replace(/^['"]|['"]$/g,"")}catch{}if(o&&n&&this.test(gxr,l)&&!this.test(Axr,o)&&(o=o.includes("http")?o.slice(o.indexOf("http")):wat(n,o)),o)break}}else o=`${o}`;return o}pd(e,r,n=""){return n||(n=this.MY_URL),this.pdfh(e,r,n)}pq(e){return Me(e)}pjfh(e,r,n=!1){if(!e||!r)return"";try{e=typeof e=="string"?JSON.parse(e):e}catch{return console.log("\u5B57\u7B26\u4E32\u8F6C JSON \u5931\u8D25"),""}r.startsWith("$.")||(r="$."+r);let s="",i=r.split("||");for(let a of i){let o=Rat.query(e,a);if(s=Array.isArray(o)?o[0]||"":o||"",n&&s&&(s=wat(this.MY_URL,s)),s)break}return s}pj(e,r){return this.pjfh(e,r,!0)}pjfa(e,r){if(!e||!r)return[];try{e=typeof e=="string"?JSON.parse(e):e}catch{return[]}r.startsWith("$.")||(r="$."+r);let n=Rat.query(e,r);return Array.isArray(n)&&Array.isArray(n[0])&&n.length===1?n[0]:n||[]}},Oat=Jae;async function yxr(t){try{return await Ae.request(typeof t=="string"?t:{url:t.url,method:t.method||"GET",headers:t.headers||{"User-Agent":oDe},data:t.data||"",responseType:t.responseType||""})}catch(e){return e.response}}async function Pat(t){return(await he.get(t,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36"}})).data}var Xae="https://www.91panta.cn",Zae=t=>new Oat().pq(t),Dat=[{type_id:"39765285016165",type_name:"\u7535\u5F71"},{type_id:"39765284616164",type_name:"\u7535\u89C6\u5267"},{type_id:"39724839640293",type_name:"\u7EFC\u827A"},{type_id:"39724838540291",type_name:"\u52A8\u6F2B"},{type_id:"44732560408431",type_name:"\u77ED\u5267"},{type_id:"39956600861068",type_name:"\u7EAA\u5F55\u7247"}],xxr=Dat.map(t=>t.type_name.trim());async function bxr(t,e){return{class:Dat,filters:{}}}async function Exr(t,e){let r=t.body.id,s=t.body.page||1;s==0&&(s=1);let i=await Pat(`${Xae}/?tagId=${r}&page=${s}`),a=Zae(i),o=[];a(".topicList .topicItem").each((d,f)=>{let p=a(f).find("h2 a:first")[0];if(!p||!p.children||!p.children[0]||!p.attribs)return;let m=p.children[0].data;if(!m)return;let h=a(f).find(".tm-m-photos-thumb li:first")[0]?.attribs["data-src"];o.push({vod_name:m.split(" ")[0],vod_id:p.attribs.href,vod_pic:h?`https://www.91panta.cn/${h}`:"https://www.91panta.cn/favicon.ico"})});let c=a(".topicPage .pg")[0],u=o.length,l=1;if(c){let d=a(c).find(".count")[0];if(d&&d.children&&d.children[0]){let p=d.children[0].data.match(/\d+/);p&&(u=p[0])}let f=a(c).find(".last")[0];if(f&&f.attribs&&f.attribs.title){let p=f.attribs.title.match(/\d+/);p&&(l=p[0])}}return{page:parseInt(s),pagecount:l?parseInt(l):1,limit:o.length,total:u?parseInt(u):o.length,list:o}}async function _xr(t,e){let r=await Pat(`${Xae}/${t.body.id}`),n=Zae(r),s=n(".title")[0];if(!s||!s.children||!s.children[0])return{list:[]};let i={vod_name:s.children[0].data.trim(),vod_id:`/${t.body.id}`,vod_content:n("div.topicContent p:nth-child(1)").text().replace(/\s+/g,"")},a=n(".topicContent").html(),o=a.match(/]*?\s+)?href=["'](https:\/\/(?:caiyun|yun)\.139\.com\/[^"']*)["'][^>]*>/gi);if(!o||o.length===0)if(o=a.match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^<]*<\/span>/gi),o&&o.length>0){let c=o[0].match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^<]*/);o=c?c[0]:null}else{let c=a.match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^<\s]*/);o=c?c[0]:null}else{let c=o[0].match(/https:\/\/(?:caiyun|yun)\.139\.com\/[^"']*/);o=c?c[0]:null}if(o){let c=await Rr(o,t);c&&c.froms&&c.urls&&(i.vod_play_from=c.froms,i.vod_play_url=c.urls,i.vod_links=c.links)}return{list:[i]}}async function Sxr(t,e){let r=t.body.page||1,n=t.body.wd,s=(await yxr(`${Xae}/search?keyword=${encodeURIComponent(decodeURIComponent(n))}&page=${r}`)).data,i=Zae(s),a=[];return i(".topicList .topicItem").each((o,c)=>{let u=i(c).find(".tag")[0],l=u?i(u).html().trim():null;if(u&&xxr.includes(l)){let d=i(c).find(".title a:first")[0];if(!d||!d.attribs)return;let f=i(c).find(".tm-m-photos-thumb li:first")[0]?.attribs["data-src"],p=i(d).html().replace(/<[^>]*>/g,"").replace(/\s+/g,"");a.push({vod_name:p,vod_id:d.attribs.href,vod_remarks:"",vod_pic:f?`https://www.91panta.cn/${f}`:"https://www.91panta.cn/favicon.ico"})}}),{page:r,pagecount:1,list:a}}var kat={meta:{key:"panta",name:"\u300C\u76D8\u300D\u76D8Ta",type:3},api:async t=>{t.post("/init",qr),t.post("/home",bxr),t.post("/category",Exr),t.post("/detail",_xr),t.post("/play",Or),t.post("/search",Sxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var vxr=["https://wogg.xxooo.cf","https://www.wogg.net"],eoe=async t=>(await t.db.getObjectDefault("/wanou",{}))?.urls||t.config.wanou?.urls||vxr,Cxr=async(t,e)=>{await t.db.push("/wanou/urls",e)},Ixr=async t=>{await t.db.delete("/wanou/urls")};async function toe(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await eoe(e.server)})}),t.put("/urls",async(e,r)=>{await Cxr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Ixr(e.server),r.send({code:0})})}var roe,D4=t=>{if(!roe){let e=Date.now();roe=new Promise(async r=>{let n=await eoe(t),s=await Xn(n);console.log("\u73A9\u5076\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return roe};async function O4(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Txr(t,e){return await qr(t,e),{}}async function wxr(t,e){let r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"44",type_name:"\u81FB\u5F69"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"46",type_name:"\u7EAA\u5F55"},{type_id:"6",type_name:"\u77ED\u5267"},{type_id:"5",type_name:"\u97F3\u4E50"}],n=[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2018",v:"2018"},{n:"2017",v:"2017"},{n:"2016",v:"2016"},{n:"2015",v:"2015"},{n:"2014",v:"2014"},{n:"2013",v:"2013"},{n:"2012",v:"2012"},{n:"2011",v:"2011"},{n:"2010",v:"2010"}],s=[{n:"\u65F6\u95F4",v:"time"},{n:"\u4EBA\u6C14",v:"hits"},{n:"\u8BC4\u5206",v:"score"}],i=[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u8B66\u532A",v:"\u8B66\u532A"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u67AA\u6218",v:"\u67AA\u6218"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u60CA\u609A",v:"\u60CA\u609A"},{n:"\u7ECF\u5178",v:"\u7ECF\u5178"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u6587\u827A",v:"\u6587\u827A"},{n:"\u5FAE\u7535\u5F71",v:"\u5FAE\u7535\u5F71"},{n:"\u5386\u53F2",v:"\u5386\u53F2"}],a=[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}],o={};return o[1]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[2]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[3]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u60C5\u611F",v:"\u60C5\u611F"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u70ED\u8840",v:"\u70ED\u8840"},{n:"\u63A8\u7406",v:"\u63A8\u7406"},{n:"\u641E\u7B11",v:"\u641E\u7B11"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u841D\u8389",v:"\u841D\u8389"},{n:"\u6821\u56ED",v:"\u6821\u56ED"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u673A\u6218",v:"\u673A\u6218"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u5C11\u5E74",v:"\u5C11\u5E74"},{n:"\u5C11\u5973",v:"\u5C11\u5973"},{n:"\u793E\u4F1A",v:"\u793E\u4F1A"},{n:"\u539F\u521B",v:"\u539F\u521B"},{n:"\u4EB2\u5B50",v:"\u4EB2\u5B50"},{n:"\u76CA\u667A",v:"\u76CA\u667A"},{n:"\u52B1\u5FD7",v:"\u52B1\u5FD7"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[44]=[{key:"class",name:"",init:"",value:i},{key:"area",name:"",init:"",value:a},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[4]=[{key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[46]=[{key:"year",name:"",init:"",value:n},{key:"by",name:"",init:"time",value:s}],o[6]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7537\u9891",v:"\u7537\u9891"},{n:"\u5973\u9891",v:"\u5973\u9891"},{n:"\u90FD\u5E02",v:"\u90FD\u5E02"},{n:"\u751C\u5BA0",v:"\u751C\u5BA0"},{n:"\u5E74\u4EE3",v:"\u5E74\u4EE3"},{n:"\u7A7F\u8D8A",v:"\u7A7F\u8D8A"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u4EB2\u60C5",v:"\u4EB2\u60C5"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u840C\u5B9D",v:"\u840C\u5B9D"},{n:"\u91CD\u751F",v:"\u91CD\u751F"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u9006\u88AD",v:"\u9006\u88AD"},{n:"\u8650\u604B",v:"\u8650\u604B"},{n:"\u9274\u5B9D",v:"\u9274\u5B9D"},{n:"\u590D\u4EC7",v:"\u590D\u4EC7"},{n:"\u4FEE\u4ED9",v:"\u4FEE\u4ED9"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"}]},{key:"by",name:"",init:"time",value:s}],o[5]=[{key:"by",name:"",init:"time",value:s}],{class:r,filters:o}}function Rxr(t,e){let r=String(e||"").trim();if(!r)return"";if(/^https?:\/\//i.test(r)){if(/^https?:\/\/[^/]*gimg\d*\.baidu\.com\/gimg\//i.test(r)){let n=r.lastIndexOf("src=");if(n!==-1&&r.slice(n+4).includes("data:image/"))return""}return r}return r.startsWith("/img.php?url=")?r.slice(13):r.startsWith("/db.php?url=")?new URL(r,`${String(t||"").replace(/\/+$/,"")}/`).toString():new URL(r.replace(/^\/+/,""),`${String(t||"").replace(/\/+$/,"")}/`).toString()}function P4(t,e){return Rxr(t,e?.attribs?.["data-src"]||e?.attribs?.src||"")}function Nxr(t){let e=Array.isArray(t)?t:t.split("-");for(let r=1;r div.module-search-item").map((f,p)=>{let m=l(p).find("div.video-info-header h3 a")[0];return{vod_id:m.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:m.attribs.title,vod_pic:P4(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("a.video-serial").text()}}).get();return{page:a,pagecount:d.length<10?a:a+1,list:d}}else{let o=[n,"","","","","","","",a,"","",""];i.area&&(o[1]=i.area),i.by&&(o[2]=i.by),i.class&&(o[3]=i.class),i.year&&(o[11]=i.year);let c=`${r}/index.php/vodshow/${o.join("-")}.html`,u=await O4(c),l=Me(u),d=l("div.module-items > div.module-item").map((f,p)=>{let m=l(p).find("div.video-name a")[0];return{vod_id:m.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:m.attribs.title,vod_pic:P4(r,l(p).find("div.module-item-pic img")[0]),vod_remarks:l(p).find("div.module-item-text").text()}}).get();return{page:a,pagecount:d.length<70?a:a+1,list:d}}}async function Pxr(t,e){let r=await D4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await O4(`${r}/index.php/voddetail/${i}.html`),o=Me(a),c=[],u=[],l="";o("div.video-info-items a[href*=/vodsearch/]").each((m,h)=>{let A=h.attribs.href.match(/vodsearch\/(.*).html/)[1].split("-"),g=o(h).text().trim(),b=Nxr(A);if(b===5){let y={id:"s-5-"+decodeURIComponent(A[5].toString()),name:g};c.push(`[a=cr:${JSON.stringify(y)}/]${g}[/a]`)}else if(b===1){let y={id:"s-1-"+decodeURIComponent(A[1].toString()),name:g};u.push(`[a=cr:${JSON.stringify(y)}/]${g}[/a]`)}else b===13&&(l=g)});let d={vod_name:o(".page-title")[0].children[0].data,vod_pic:P4(r,o(".mobile-play .lazyload")[0]||o(".module-item-pic img")[0]),vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||"",vod_year:l,vod_actor:u.join(", "),vod_director:c.join(", "),vod_content:o("div.video-info-content p[style*=none]")[0].children[0].data.trim()},f=o("div.module-row-info p").map((m,h)=>h.children[0].data).get(),p=await Rr(f,t);p&&(d.vod_play_from=p.froms,d.vod_play_url=p.urls,d.vod_links=p.links),s.push(d)}return{list:s}}async function Dxr(t,e){let r=await D4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await O4(`${r}/index.php/vodsearch/-------------.html?wd=${s}`),o=Me(a),c=o("div.module-items > div.module-search-item").map((u,l)=>{let d=o(l).find("div.video-info-header h3 a")[0];return{vod_id:d.attribs.href.match(/voddetail\/(.*).html/)[1],vod_name:d.attribs.title,vod_pic:P4(r,o(l).find("div.module-item-pic img")[0]),vod_remarks:o(l).find("a.video-serial").text()}}).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}async function kxr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u{t.post("/init",Txr),t.post("/home",wxr),t.post("/category",Oxr),t.post("/detail",Pxr),t.post("/play",Or),t.post("/search",Dxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr),t.get("/test",kxr)},check:D4};var Lxr=["http://www.miqk.cc","https://mihdr.top","https://www.mihdr.top","https://zhizhen1.top"],noe=async t=>(await t.db.getObjectDefault("/zhizhen",{}))?.urls||t.config.zhizhen?.urls||Lxr,Bxr=async(t,e)=>{await t.db.push("/zhizhen/urls",e)},Mxr=async t=>{await t.db.delete("/zhizhen/urls")};async function soe(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await noe(e.server)})}),t.put("/urls",async(e,r)=>{await Bxr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await Mxr(e.server),r.send({code:0})})}var ioe,k4=t=>{if(!ioe){let e=Date.now();ioe=new Promise(async r=>{let n=await noe(t),s=await Xn(n);console.log("\u81F3\u81FB\u57DF\u540D",s,`${Date.now()-e}ms`),r(s)})}return ioe};async function aoe(t){return(await he.get(t,{headers:{"User-Agent":Gr}})).data}async function Wxr(t,e){return{class:[{type_id:"26",type_name:"\u4E25\u9009"},{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"},{type_id:"5",type_name:"\u77ED\u5267"},{type_id:"24",type_name:"\u8001\u5267"}],filters:{}}}async function $xr(t,e){let r=await k4(t.server),n=t.body.id,s=t.body.page,i=s||1;i==0&&(i=1);let a=r+`/index.php/vod/show/id/${n}/page/${s}.html`,o=await aoe(a,Gr),c=Me(o),u=c("#main .module-item"),l=[];for(var d of u){let m=c(d).find(".module-item-pic a").attr("href"),h=c(d).find(".module-item-pic img").attr("alt"),A=c(d).find(".module-item-pic img").attr("data-src"),g=c(d).find(".module-item-text").text();l.push({vod_id:m,vod_name:h,vod_pic:A,vod_remarks:g})}let p=c("#page > a:contains(\u4E0B\u4E00\u9875)").length>0?parseInt(i)+1:parseInt(i);return{page:parseInt(i),pagecount:p,limit:72,total:72*p,list:l}}async function Fxr(t,e){let r=await k4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=await aoe(r+i),o=Me(a),c={vod_id:i,vod_name:o(".page-title")[0].children[0].data,vod_pic:o(o(".mobile-play")).find(".lazyload")[0].attribs["data-src"],vod_remarks:o('.video-info-itemtitle:contains("\u5907\u6CE8")').next(".video-info-item").first().text().trim()||""},u=o(".video-info-itemtitle");for(let f of u){let p=o(f).text(),h=o(f).next().find("a").map((A,g)=>{let b=o(g).text().trim();return b||null}).get().filter(Boolean).join(", ");p.includes("\u5267\u60C5")?c.vod_content=o(f).next().find("p").text().trim():p.includes("\u5BFC\u6F14")?c.vod_director=h.trim():p.includes("\u4E3B\u6F14")&&(c.vod_actor=h.trim())}let l=o("div.module-row-info p").map((f,p)=>p.children[0].data).get(),d=await Rr(l,t);d&&(c.vod_play_from=d.froms,c.vod_play_url=d.urls,c.vod_links=d.links),s.push(c)}return{list:s}}async function Uxr(t,e){let r=await k4(t.server),n=t.body.page,s=t.body.wd,i=n||1;i==0&&(i=1);let a=await aoe(`${r}/index.php/vod/search/wd/${s}.html`),o=Me(a),c=o(".module-search-item").map((u,l)=>({vod_id:o(l).find(".video-serial")[0].attribs.href,vod_name:o(l).find(".video-serial")[0].attribs.title,vod_pic:o(l).find(".module-item-pic > img")[0].attribs["data-src"],vod_remarks:o(o(l).find(".video-serial")[0]).text()})).get();return{page:i,pagecount:c.length<10?i:i+1,list:c}}var Bat={meta:{key:"zhizhen",name:"\u300C\u76D8\u300D\u81F3\u81FB",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Wxr),t.post("/category",$xr),t.post("/detail",Fxr),t.post("/play",Or),t.post("/search",Uxr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)},check:k4};var L4=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),Mat=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),Wat=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),Fat="douerpan,zyfb123",qxr={douerpan:"\u8C46\u513F\u76D8",zyfb123:"\u8C46\u513F123"},ooe=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgchannel",{});if(L4(n,e))return n[e];let s=t.config?.tgchannel||{};return L4(s,e)?s[e]:r},$at=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},B4=t=>ooe(t,"url","https://t.me"),coe=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},uoe=t=>ooe(t,"channelUsername",Fat),loe=t=>ooe(t,"homeChannelUsername",Fat),M4=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgchannel||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},W4=async t=>{let e=await t.db.getObjectDefault("/tgchannel",{});if(L4(e,"channelNameMap"))return $at(e.channelNameMap);let r=t.config?.tgchannel||{};return L4(r,"channelNameMap")?$at(r.channelNameMap):qxr},uE=async(t,e,r)=>{await t.db.push(`/tgchannel/${e}`,r)},jxr=async t=>{await t.db.delete("/tgchannel")};async function doe(t){t.get("/config",async(e,r)=>{let n=await B4(e.server),s=await coe(e.server),i=await uoe(e.server),a=await loe(e.server),o=await M4(e.server),c=await W4(e.server),u=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:u,channelUsername:Mat(i),homeChannelUsername:Mat(a),pic:o,channelNameMap:c}})}),t.put("/config",async(e,r)=>{await uE(e.server,"url",e.body.url),await uE(e.server,"count",e.body.count),await uE(e.server,"channelUsername",Wat(e.body.channelUsername).join(",")),await uE(e.server,"homeChannelUsername",Wat(e.body.homeChannelUsername).join(",")),await uE(e.server,"pic",e.body.pic),await uE(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})}),t.delete("/config",async(e,r)=>{await jxr(e.server),r.send({code:0})})}function Hxr(t){let e=t.attr("style"),r=/background-image:url\('([^']+)'\)/.exec(e);if(r&&r.length>1)return r[1]}function jat(t){return t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/名称[:|:]/)?.[1]||t,t=t.split(` +`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(【《「『〔〖〈﹝[]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(【《「『〔〖〈﹝[]/.test(t)?(t=t.replace(/^[\(\[\{(【《「『〔〖〈﹝[][^\)\]\})】》」』〕〗〉﹞]]*[\)\]\})】》」』〕〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim()):t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五六七八九十百千万亿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五六七八九十百千万亿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|杜比)?\s*(é«˜ç çŽ‡|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(杜比视界|杜比音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|杜比|é«˜ç çŽ‡|ä¸­ç çŽ‡|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|è¶…é«˜ç çŽ‡|EDR|æ ‡ç |Vivid|三维菁彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国字幕|双语|简中|日语|æ— æŸ|特别版|软字幕|补链接|MAX|ä¸­ç |音效|é«˜ç |台配|国语|环绕声|蓝光原盘|臻享超高清|首播|ç‚¹æ˜ |Viu|10B|硬字幕)\s*/g,"").replace(/\s*内封[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大小\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim()}var Qxr={"User-Agent":"MoZhao"};function foe(t){return nf().some(e=>e.validator(t))}function Hat(t,e=()=>!0){let r=[];for(let n of t){let s=n.attribs?.href;s&&e(s)&&r.push(s)}return r}function _w(t){return Hat(t,foe)}function $4(t){return Hat(t,F4)}function Vf(t){return[...new Set((t||[]).filter(Boolean))]}function Gxr(t){return String(t||"").trim().replace(/&/g,"&").replace(/[\)\]\}>)】》」』〕〗〉﹞]、。,,;ï¼›!?!?]+$/g,"")}function Vxr(t){let e=String(t||"");return Vf([/https?:\/\/[^\s"'<>]+/gi,/magnet:\?[^\s"'<>]+/gi,/ed2k:\/\/\|file\|.+?\|\d+\|[a-f0-9]{32}\|\//gi,/ed2k:\/\/[^\s"'<>]+/gi].flatMap(n=>e.match(n)||[]).map(Gxr))}function zxr(t,e){let r=t(e).find(".tgme_widget_message_date").attr("href");if(Gat(r))return r;let n=e.attribs?.["data-post"];return n?`https://t.me/${n}`:""}function poe(t){let e=[],r=Vxr(t);for(let n of r)foe(n)&&e.push(n);return e}function Qat(t){let e=[],r=t.match(/https?:\/\/[^\s]+/gi);if(r)for(let n of r)F4(n)&&e.push(n);return e}var Gat=t=>/t.me\/.*\/.*/.test(t),F4=t=>/https?:\/\/(?:telegra\.ph|graph\.org)\//i.test(String(t||"")),Vat=t=>nf().find(e=>e.validator(t)),zat=(t,e)=>!e||typeof e!="object"?t:e[t]||t,Kat=t=>String(t||"").split(",").map(e=>e.trim()).filter(Boolean);async function moe(t){let e=await Ae.get(t,{timeout:5e3,headers:Qxr});return Me(e.data)}async function Kxr(t){let e=await moe(t),r=e(".tl_article").text()||e("body").text()||"";return{links:Vf([...poe(r),..._w(e("a"))])}}async function Yat(t){let e=Vf((t||[]).filter(F4));if(!e.length)return[];let r=await Promise.all(e.map(async n=>{try{return(await Kxr(n)).links}catch(s){return console.error("[tgchannel] parse telegra failed",n,s?.message||s),[]}}));return Vf(r.flat())}async function Yxr(t){let e=await moe(t),r=e(".tgme_widget_message"),n=[];for(let s of r){let i=s.attribs["data-post"],a=Hxr(e(s).find(".tgme_widget_message_photo_wrap"));e("br").replaceWith(` +`);let o=e(s).find(".tgme_widget_message_text").text(),c=jat(o),u=o,l=Vf([...poe(o),..._w(e(s).find(".tgme_widget_message_text a")),..._w(e(s).find(".tgme_widget_message_inline_button"))]),d=Vf([...$4(e(s).find(".tgme_widget_message_text a")),...$4(e(s).find(".tgme_widget_message_inline_button")),...Qat(o)]),f=[...l],p=f.length?[...f]:d.length?[...d]:[];if(!p.length){let m=zxr(e,s);m&&p.push(m)}p.length&&n.push({id:p.join("|"),title:c,description:u,cover:a,messageId:Number(i.split("/")[1]),panLinks:f})}return n}async function Jxr(t){let e=await moe(t),r=e('meta[property="og:description"]').attr("content"),n=e('meta[property="og:image"]').attr("content"),s=jat(r),i=Vf([...poe(r||""),..._w(e(".tgme_widget_message_text a")),..._w(e(".tgme_widget_message_inline_button"))]),a=Vf([...Qat(r||""),...$4(e(".tgme_widget_message_text a")),...$4(e(".tgme_widget_message_inline_button"))]),o=i.length?[]:await Yat(a),c=Vf([...i,...o]);return{title:s,description:r,cover:n,links:c}}async function Xxr(t,e){return await qr(t,e),{}}async function Zxr(t){let e=await loe(t.server),r=await W4(t.server);return{class:Kat(e).map(n=>({type_id:n,type_name:zat(n,r)}))}}var Uat={},qat={},hoe={};async function Jat(t){let e=await B4(t.server),r=await M4(t.server),n=t.body.id,s=t.body.page;s||(s=1);try{let i=await Yxr(`${e}/s/${n}${s>1?`?before=${qat[n]}`:""}`);qat[n]=i[0].messageId,s===1&&(Uat[n]=i[i.length-1].messageId),i.reverse();let a=i.map(o=>{let c,u="";return o.panLinks.length&&o.panLinks.forEach(l=>{let d=Vat(l);d&&(u+=u?`|${d.name}`:d.name,c||(c=d.pic))}),c||(c="https://telegram.org/img/apple-touch-icon.png"),{vod_name:o.title,vod_id:o.id,vod_pic:r&&o.cover||c,vod_remarks:u,rawData:o}});return a.forEach(o=>{o.vod_name&&o.vod_id&&(hoe[o.vod_id]=o.vod_name)}),{page:s,pagecount:Math.ceil(Uat[n]/a.length),list:a}}catch(i){return console.error(i),{page:s,pagecount:1,list:[]}}}async function ebr(t,e){let r=await B4(t.server),n=Array.isArray(t.body.id)?t.body.id:[t.body.id],s=[];for(let i of n){let a=i.split("|"),o=hoe[i]||"";if(a.length===1&&Gat(a[0])){let l=await Jxr(i.replace("https://t.me",r));!o&&l.title&&(o=l.title),a=l.links}else!a.some(foe)&&a.some(F4)&&(a=await Yat(a));let c=await Rr(a,t),u={vod_id:i,vod_name:o};c&&(u.vod_play_from=c.froms,u.vod_play_url=c.urls,u.vod_links=c.links),s.push(u)}return{list:s}}async function tbr(t,e){let r=await coe(t.server),n=await uoe(t.server),s=await M4(t.server),i=await W4(t.server),a=t.body.wd,o=Number(r),c=Number.isFinite(o)?Math.floor(o):0,u=c>0,l=Kat(n);if(!l.length)return{page:1,pagecount:1,list:[]};let d=await Promise.all(l.map(p=>Jat({body:{id:`${p}?q=${encodeURIComponent(a)}`},server:t.server}))),f=[];return d.forEach((p,m)=>{let h=p.list.filter(g=>g.rawData.panLinks.length);(u?h.slice(0,c):h).forEach(g=>{let b="",y;g.rawData.panLinks.forEach(x=>{let v=Vat(x);v&&(b+=b?`|${v.name}`:v.name),y||(y=v.pic)}),f.push({vod_id:g.vod_id,vod_name:g.vod_name,vod_pic:s&&g.vod_pic||y,vod_remarks:`${b}:${zat(l[m],i)}`}),g.vod_name&&g.vod_id&&(hoe[g.vod_id]=g.vod_name)})}),{page:1,pagecount:1,list:f}}var Xat={meta:{key:"tgchannel",name:"\u300C\u76D8\u300DTG\u641C",type:3},api:async t=>{t.post("/init",Xxr),t.post("/home",Zxr),t.post("/category",Jat),t.post("/detail",ebr),t.post("/play",Or),t.post("/search",tbr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var U4=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),rbr=t=>String(t??"").split(",").map(e=>e.trim()).filter(e=>e),nbr=t=>(Array.isArray(t)?t:[]).map(e=>String(e||"").trim()).filter(e=>e),eot=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgsou",{});if(U4(n,e))return n[e];let s=t.config?.tgsou||{};return U4(s,e)?s[e]:r},Zat=t=>{if(!t||typeof t!="object"||Array.isArray(t))return{};let e={};for(let[r,n]of Object.entries(t))typeof n=="string"&&n.trim()!==""&&(e[r]=n);return e},goe=t=>eot(t,"url","https://tgsou.252035.xyz"),Aoe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"count"))return e.count;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"count")?r.count:""},yoe=t=>eot(t,"channelUsername",""),xoe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{});if(Object.prototype.hasOwnProperty.call(e,"pic"))return e.pic;let r=t.config?.tgsou||{};return Object.prototype.hasOwnProperty.call(r,"pic")?r.pic:!0},boe=async t=>{let e=await t.db.getObjectDefault("/tgsou",{}),r={};if(U4(e,"channelNameMap"))r=Zat(e.channelNameMap);else{let n=t.config?.tgsou||{};U4(n,"channelNameMap")&&(r=Zat(n.channelNameMap))}return r},Sw=async(t,e,r)=>{await t.db.push(`/tgsou/${e}`,r)};async function Eoe(t){t.get("/config",async(e,r)=>{let n=await goe(e.server),s=await Aoe(e.server),i=await yoe(e.server),a=await xoe(e.server),o=await boe(e.server),c=s===""||s===null||typeof s>"u"?"":Number(s);r.send({code:0,data:{url:n,count:c,channelUsername:rbr(i),pic:a,channelNameMap:o}})}),t.put("/config",async(e,r)=>{await Sw(e.server,"url",e.body.url),await Sw(e.server,"count",e.body.count),await Sw(e.server,"channelUsername",nbr(e.body.channelUsername).join(",")),await Sw(e.server,"pic",e.body.pic),await Sw(e.server,"channelNameMap",e.body.channelNameMap||{}),r.send({code:0})})}var tot={};async function sbr(t,e){return await qr(t,e),{}}async function ibr(t,e){return{class:[]}}var abr=(t,e)=>!e||typeof e!="object"?t:e[t]||t;function obr(t){return t&&(t=t.replace(/https?:\/\/[^\s]+/gi,""),t=t.split(/名称[:|:]/)?.[1]||t,t=t.split(` +`)?.[0]||t,t=t.trim(),t=t.replace(/^[^\u4e00-\u9fa5A-Za-z0-9\(\[\{(【《「『〔〖〈﹝[]+/,"").trim(),t=t.replace(/^(电视剧|动漫|电影|综艺|纪录片|动画)[\s||]+/,"").trim(),/^[\(\[\{(【《「『〔〖〈﹝[]/.test(t)?(t=t.replace(/^[\(\[\{(【《「『〔〖〈﹝[][^\)\]\})】》」』〕〗〉﹞]]*[\)\]\})】》」』〕〗〉﹞]]/,"").trim(),t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim()):t=t.replace(/[\(\[\{(【《「『〔〖〈﹝[].*$/,"").trim(),t=t.replace(/((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*\d+\s*集)|((?:更新至|å…¨|第|å…±)\s*(?:第)?\s*[一二三四五六七八九十百千万亿]+\s*集)|(\d+\s*集\s*å…¨)|([一二三四五六七八九十百千万亿]+\s*集\s*å…¨)|((?:更至|æ›´)\s*(?:EP)?\s*\d+)|((?:æ›´æ–°\s*)?EP\d+集)|(æ›´æ–°\d+集)|(S\d+\s*E\d+(?:已更新)?)/g,"").trim(),t=t.replace(/\s*\d+\s*\+\s*\d+\s*帧\s*/g,"").replace(/\s*4[Kk]\s*(DV|HDR10|SDR10|臻彩|杜比)?\s*(é«˜ç çŽ‡|50帧|10bit)?\s*/g,"").replace(/\s*\d+[pP]\s*/g,"").replace(/\s*(杜比视界|杜比音效|WEB-60fpsMAX|WEB-|DV|HDR10|HDR|SDR|臻彩|杜比|é«˜ç çŽ‡|ä¸­ç çŽ‡|50帧|25帧|60帧|10bit|10BIT|纯净版|完结|全景声|è¶…é«˜ç çŽ‡|EDR|æ ‡ç |Vivid|三维菁彩声|txb|æºç |剧版|æ— å°æ ‡|ATVP|IQ|Friday|多国字幕|双语|简中|日语|æ— æŸ|特别版|软字幕|补链接|MAX|ä¸­ç |音效|é«˜ç |台配|国语|环绕声|蓝光原盘|臻享超高清|首播|ç‚¹æ˜ |Viu|10B|硬字幕)\s*/g,"").replace(/\s*内封[^\s]*\s*/g,"").replace(/\s*——\s*/g," ").replace(/\s*\d{4}å¹´?\s*/g,"").replace(/\s*大小\s*\d+\.?\d*\s*[KMGT]B\s*/g,"").replace(/\d+\.?\d*\s*[KMGT]B/g,"").replace(/\s*å·²?æ›´æ–°\s*/g,"").replace(/\s*\+\s*/g," ").replace(/\s+/g," ").trim(),t=t.split(/,|,/)?.[0],t?.trim())}async function cbr(t,e){return{page:1,pagecount:1,list:[]}}async function ubr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.includes("|")?s.split("|"):[s],a=await Rr(i,t),o={};o.vod_name=tot[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls,o.vod_links=a.links),n.push(o)}return{list:n}}async function lbr(t,e){let r=await goe(t.server),n=await Aoe(t.server),s=await yoe(t.server),i=await xoe(t.server),a=await boe(t.server),o=t.body.wd,c=Number(n),u=Number.isFinite(c)?Math.floor(c):0,l=u>0,d=new URL(r);d.searchParams.set("pic",String(i)),l&&d.searchParams.set("count",String(u)),d.searchParams.set("channelUsername",s),d.searchParams.set("keyword",o||"");let f=await Ae.get(d.toString()),p=new Map;for(let h of f.data.results){let[A,g]=h.split("$$$");if(!g)continue;let b=g.split("##");for(let y=0;yN.validator(C));if(w){let N=obr(v)||o,P=!!R,L=P?/^https?:\/\//i.test(R)?R:`${r}/down?id=${R}&channelUsername=${A}`:w.pic,M=P?L:C;p.has(M)||p.set(M,{links:[],panInfos:[],pic:L,group:A,title:N});let k=p.get(M),B=C?.replace(/\s+/g,"");k.links.includes(B)||(k.links.push(B),k.panInfos.push(w))}}}let m=[];for(let[h,A]of p.entries()){let g=[...new Set(A.panInfos.map(b=>b.name))].join("/");m.push({vod_id:A.links.join("|"),vod_name:A.title,vod_pic:A.pic,vod_remarks:`${g}:${abr(A.group,a)}`}),A.title&&A.links.length&&(tot[A.links.join("|")]=A.title)}return{page:1,pagecount:1,list:m}}var rot={meta:{key:"tgsou",name:"\u300C\u76D8\u300DTG\u641C\xB2",type:3},api:async t=>{t.post("/init",sbr),t.post("/home",ibr),t.post("/category",cbr),t.post("/detail",ubr),t.post("/play",Or),t.post("/search",lbr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var not=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),dbr="http://127.0.0.1:8080",iot=async(t,e,r)=>{let n=await t.db.getObjectDefault("/tgfilebot",{});if(not(n,e))return n[e];let s=t.config?.tgfilebot||{};return not(s,e)?s[e]:r},_oe=t=>iot(t,"url",dbr),Soe=t=>iot(t,"password",""),sot=async(t,e,r)=>{await t.db.push(`/tgfilebot/${e}`,r)},fbr=async t=>{await t.db.delete("/tgfilebot")};async function voe(t){t.get("/config",async(e,r)=>{let n=await _oe(e.server),s=await Soe(e.server);r.send({code:0,data:{url:n,password:s}})}),t.put("/config",async(e,r)=>{await sot(e.server,"url",e.body.url||""),await sot(e.server,"password",e.body.password||""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await fbr(e.server),r.send({code:0})})}var pbr="http://127.0.0.1:8080",oot="",vw=20,mbr=30;async function hbr(t,e){return{}}function gbr(t){for(t=String(t||"").trim();t.endsWith("/");)t=t.slice(0,-1);return t}function ns(t){return String(t||"").replace(/\s+/g," ").trim()}function cot(t){return ns(t).replace(/[$#]/g," ")}function Coe(t){return ns(t).replace(/^>+\s*/,"").replace(/^\*\*(.*?)\*\*$/,"$1").replace(/^__(.*?)__$/,"$1").replace(/^`(.*?)`$/,"$1").replace(/^\[(.*?)\]\([^)]*\)$/,"$1").replace(/^[-•]\s*/,"").replace(/^\*\s+/,"").trim()}function uot(t){let e=String(t||"").replace(/\r\n/g,` `).split(` -`);for(let r of e){let n=ns(r);if(n&&!/^(主演|类型|制片国家|语言|ä¸Šæ˜ æ—¥æœŸ|片长|又名|导演|编剧)\s*[::]/.test(voe(n)))return n}return""}function aot(t){return String(t||"").replace(/[0-ï¼™]/g,e=>String(e.charCodeAt(0)-65296))}function fbr(t){let e=String(t||"").replace(/两/g,"\u4E8C");if(!e)return 0;if(/^\d+$/.test(e))return Number(e);let r={\u96F6:0,"\u3007":0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},n={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4},s=0,i=0,a=0;for(let o of e){if(r[o]!==void 0){a=r[o];continue}let c=n[o];if(!c)return 0;c===1e4?(i=(i+a)*c,s+=i,i=0):i+=(a||1)*c,a=0}return s+i+a}function j4(t){let e=ns(t).replace(/\.[a-z0-9]{2,5}$/i,""),r=e.match(/(?:^|[^0-90-ï¼™])(?:第\s*)?([0-90-ï¼™]{1,4})\s*(?:集|話|话|回|期)(?:\D|$)/);return r?"\u7B2C"+aot(r[1]).replace(/^0+/,"")+"\u96C6":(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?"\u7B2C"+r[1]+"\u96C6":"")}function rot(t){let e=aot(ns(t)),r=e.match(/第\s*([0-9]{1,4}|[零〇一二三四五六七八九十百千万两]{1,8})\s*(?:集|話|话|回|期)/);return r?fbr(r[1].replace(/^0+/,"")):(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?Number(r[1]):0)}function oot(t,e){let r=voe(iot(t));if(!r)return{name:"",remark:""};let n=r.match(/^[【\[]\s*([^】\]]+?)\s*[】\]]/);if(n)return{name:ns(n[1]),remark:j4(e)};let s=r.startsWith("#")?r.replace(/^#+\s*/,"").trim():r;if(!s)return{name:"",remark:""};if(!r.startsWith("#"))return{name:ns(s),remark:j4(e)};let i=s.match(/^(.*?)\s*(第\s*[0-90-9零〇一二三四五六七八九十百千万两]+\s*(?:集|話|话|回|期))(?:\s|$)/);return i?{name:ns(i[1]),remark:ns(i[2]).replace(/\s+/g,"")}:{name:ns(s),remark:j4(e)}}function qg(t){if(!t)return[];if(Array.isArray(t))return t;if(typeof t[Symbol.iterator]=="function"&&typeof t!="string")return[...t].filter(e=>e!=null);if(typeof t.length=="number"&&typeof t!="string"){let e=[];for(let r=0;r/^\d+$/.test(e)).sort((e,r)=>Number(e)-Number(r)).map(e=>t[e]).filter(e=>e!=null):[]}function Ioe(t){return encodeURIComponent(JSON.stringify(t||{}))}function jg(t){return t?JSON.parse(decodeURIComponent(String(t))):{}}function H4(t){if(t=Number(t||0),!t||t<0)return"";let e=["B","KB","MB","GB","TB"],r=t,n=0;for(;r>=1024&&n=100?0:r>=10?1:2;return`${r.toFixed(s)} ${e[n]}`}function pbr(t){if(t=Number(t||0),!t)return"";let e=new Date(t*1e3),r=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),i=String(e.getMinutes()).padStart(2,"0");return`${r}-${n} ${s}:${i}`}function U4(t,e){let r=0;for(let n of e)t.indexOf(n)>=0&&r++;return r}function cot(t){let e=String(t&&t.text||""),r=String(t&&t.name||""),n=(e+` -`+r).toLowerCase();if(!n.trim())return!1;let i=U4(n,["@duguan","\u8D4C\u9986","\u6D3B\u52A8\u9891\u9053","\u9996\u5B58","\u6D41\u6C34","\u6CE8\u518C\u9001","\u65B0\u7528\u6237\u6CE8\u518C","\u5173\u95EDvpn","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u9001\u5F69\u91D1","\u5F69\u91D1","\u6295\u6CE8","\u5145\u503C","\u63D0\u6B3E","\u63D0\u73B0","\u4E0A\u5206","\u4E0B\u5206","\u8FD4\u6C34","\u4F63\u91D1","\u76D8\u53E3","\u9A8C\u8D44","\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D"]),a=U4(n,["\u6CE8\u518C","\u9996\u5B58","\u9996\u5145","\u5145\u503C","\u5B58\u6B3E","\u6D41\u6C34","\u8FD4\u6C34","\u4E0B\u6CE8","\u6295\u6CE8","\u4E0A\u5206","\u4E0B\u5206","\u5F69\u91D1","\u9001\u5F69\u91D1","\u4F63\u91D1","\u6551\u63F4\u91D1","\u63D0\u6B3E","\u63D0\u73B0","\u51FA\u6B3E","\u9886\u53D6"]),o=U4(n,["\u6D3B\u52A8\u9891\u9053","\u5E73\u53F0","\u4FE1\u8A89\u5E73\u53F0","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u89C6\u8BAF","\u771F\u4EBA","\u76D8\u53E3","\u72D7\u5E84","pg\u96C6\u56E2","pg\u5A31\u4E50\u57CE","pg\u76F4\u8425","\u6C47\u65FA","\u8C6A\u535A\u5A31\u4E50","\u9A8C\u8D44","vpn","\u6D4F\u89C8\u5668\u75284g\u7F51\u7EDC"]),c=U4(n,["\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D","\u603B\u7FA4","\u5BA2\u670D","\u9891\u9053","bot","http://","https://"]),u=(n.match(/@[a-z0-9_]{4,}/g)||[]).length,l=(n.match(/[a-z0-9][a-z0-9-]+\.(?:com|net|cc|top|vip|app)\b/g)||[]).length,d=(n.match(/注册/g)||[]).length>=3;return i>=2||a>0&&o>0||a>=2&&(c>0||u>=2||l>0)||o>=2&&(c>0||u>=2||l>0)||d}async function mbr(t){let e=process.env.TGFILEBOT_URL||await Eoe(t),r=process.env.TGFILEBOT_PASSWORD||process.env.TGFILEBOT_KEY||await _oe(t);return{url:dbr(e)||cbr,password:String(r||"").trim()}}async function uot(t,e,r={}){let n=await mbr(t),s=new URL(e,n.url+"/"),i={...r};n.password&&(i.key=n.password);for(let[a,o]of Object.entries(i))o==null||o===""||s.searchParams.set(a,String(o));return s.toString()}async function G4(t,e,r={},n=3e4){let s=await uot(t,e,r),i=await Ae.get(s,{timeout:n,validateStatus:()=>!0});if(i.status<200||i.status>=300)throw new Error(`TGFileBot ${e} HTTP ${i.status}`);return typeof i.data=="string"?JSON.parse(i.data):i.data||{}}function hbr(t){let e=ns(t);return e?e.startsWith("#")?[e]:[e,"#"+e]:[]}function q4(t){return voe(t).replace(/^#+\s*/,"").replace(/[\s._\-::,,.。!!??、/\\|()[\]【】()《》<>〈〉"'“”‘’·]/g,"").toLowerCase()}function gbr(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Abr(t,e){let r=ns(e).replace(/^#+\s*/,"");return r?new RegExp("(^|\\s)#"+gbr(r)+"(?=\\s|$|#)").test(String(t||"")):!1}function Q4(t){try{return jg(t&&t.vod_id)}catch{return{}}}function ybr(t,e){let r=Q4(t),n=q4(ns(e).replace(/^#+\s*/,""));if(!n)return 0;let s=q4(r.name||t&&t.vod_name||""),i=q4(iot(r.text||"")),a=q4(r.text||"");return s===n?100:i===n?98:Abr(r.text||"",e)?95:s.startsWith(n)?80:i.startsWith(n)?75:s.indexOf(n)>=0?60:i.indexOf(n)>=0?50:a.indexOf(n)>=0?10:0}function xbr(t,e){return t.map((r,n)=>{let s=Q4(r);return{video:r,index:n,score:ybr(r,e),date:Number(s.date||0)}}).sort((r,n)=>n.score!==r.score?n.score-r.score:n.date!==r.date?n.date-r.date:r.index-n.index).map(r=>r.video)}function bbr(t,e){let r=new Set(t.map(n=>{let s=Q4(n);return`${s.cid||""}:${s.mid||""}`}));for(let n of e){let s=Q4(n),i=`${s.cid||""}:${s.mid||""}`;i!==":"&&r.has(i)||(i!==":"&&r.add(i),t.push(n))}return t}function Ebr(t,e=""){let r=oot(t?.text||t?.name,t?.name),n=r.name||ns(t?.name)||`Telegram ${t?.mid||""}`.trim(),s=r.remark||ns(t?.remark),i={cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:n,remark:s,text:t?.text||"",size:t?.size||0,date:t?.date||0,channel:e||""};return{vod_id:Ioe(i),vod_name:n,type_name:e||"",vod_pic:t?.pic||t?.cover||t?.thumb||not,vod_remarks:i.remark||"",topRightRemarks:H4(t?.size)||""}}function lot(t){let e=[];for(let r of qg(t)){let n=r&&r.channel?r.channel:"",s=qg(r&&r.item);for(let i of s)!i||cot(i)||e.push(Ebr(i,n))}return e.sort((r,n)=>{try{return Number(jg(n.vod_id).date||0)-Number(jg(r.vod_id).date||0)}catch{return 0}}),e}function _br(t){if(!t||!t.cid)return!1;if(t.reply_mid)return!0;let e=String(t.text||"");return e.trim()?/(剧集选择|评论区|评论|留言|回复|comment=|t\.me\/[a-z0-9_]+\/\d+\?comment=|t\.me\/c\/\d+\/\d+\?comment=)/i.test(e):!1}function dot(t,e){return`${sot(t)}$${Ioe(Sbr(e))}`}function Sbr(t){return{cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:t?.name||"",remark:t?.remark||"",size:t?.size||0,date:t?.date||0,channel:t?.channel||""}}function vbr(t){let e=String(t||""),r=e.indexOf("$");return r<0?{title:e,token:""}:{title:e.slice(0,r),token:e.slice(r+1)}}function Ibr(t){let e=vbr(t);try{let r=jg(e.token),n=rot(r.remark||"");if(n>0)return n}catch{}return rot(e.title)}function Cbr(t){return t.map((e,r)=>({item:e,index:r,episode:Ibr(e)})).sort((e,r)=>{let n=e.episode>0,s=r.episode>0;return n&&s&&e.episode!==r.episode?e.episode-r.episode:n!==s?n?-1:1:e.index-r.index}).map(e=>e.item)}function fot(t,e){let r=sot(t),n=H4(e);return!n||r.indexOf(n)>=0?r:`${r} ${n}`}function Tbr(t){return t&&t.items?qg(t.items):t&&t.item?[t]:qg(t)}function wbr(t,e,r){let n=new Set;for(let s of t){let i=String(s).split("$").slice(1).join("$");try{let a=jg(i);n.add(`${a.cid||""}:${a.mid||""}`)}catch{}}for(let s of qg(r)){let i=qg(s&&s.item);for(let a of i){if(!a||!a.cid||!a.mid||cot(a))continue;let o=`${a.cid}:${a.mid}`;if(n.has(o))continue;let c=oot(a.text||e.text||a.name,a.name),u=c.name||e.name,l=c.remark||j4(a.name)||"",d={...e,cid:a.cid,mid:a.mid,reply_mid:a.reply_mid||0,name:u,remark:l,size:a.size||0,date:a.date||e.date||0,text:a.text||e.text||""},f=l||ns(a.name)||e.remark||e.name;n.add(o),t.push(dot(fot(f,a.size),d))}}return t}async function Rbr(t,e){try{let r=await G4(t.server,"/channels",{},12e3);return{class:qg(r.channels).map(s=>{let i=ns(s&&s.id);return i?{type_id:i,type_name:ns(s.name)||i}:null}).filter(Boolean)}}catch(r){return console.error("[tgfilebot] channels failed",r?.message||r),{class:[]}}}async function Nbr(t,e){let r=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1),n=ns(t.body?.id||"all")||"all",s=await G4(t.server,"/latest",{channel:n,page:r,limit:_w}),i=lot(s.items);return{page:r,pagecount:s.more?r+1:r,limit:_w,total:s.total||i.length,list:i}}async function Obr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r.filter(Boolean)){let i=jg(s),a=Ioe(i),o=ns(i.name)||`Telegram ${i.mid||""}`.trim(),c=[dot(fot(i.remark||o,i.size),i)];try{let l=i.reply_mid||i.mid;if(i.cid&&l&&_br(i)){let d=await G4(t.server,"/replies",{cid:i.cid,mid:l,limit:ubr},2e4);wbr(c,i,Tbr(d))}}catch(l){console.error("[tgfilebot] replies skipped",l?.message||l)}let u=[i.remark?`Remark: ${i.remark}`:"",i.channel?`Channel: ${i.channel}`:"",i.cid?`CID: ${i.cid}`:"",i.mid?`MID: ${i.mid}`:"",i.size?`Size: ${H4(i.size)}`:"",i.date?`Date: ${pbr(i.date)}`:"",ns(i.text||"")].filter(Boolean).join(` -`);n.push({vod_id:a,vod_name:o,type_name:i.channel||"",vod_pic:i.pic||not,vod_remarks:i.remark||"",topRightRemarks:H4(i.size)||"",vod_content:u,vod_play_from:"TGFileBot",vod_play_url:Cbr(c).join("#")})}return{list:n}}async function Pbr(t,e){let r=jg(t.body?.id);return!r.cid||!r.mid?{parse:0,url:""}:{parse:0,url:await uot(t.server,"/stream",{cid:r.cid,mid:r.mid,cate:"user"})}}async function kbr(t,e){let r=ns(t.body?.wd||""),n=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1);if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of hbr(r))try{let a=await G4(t.server,"/search",{keywords:i,page:n,limit:_w},2e4);s=bbr(s,lot(a.items))}catch(a){console.error("[tgfilebot] search variant failed",i,a?.message||a)}return s=xbr(s,r),{page:n,pagecount:s.length>=_w?n+1:n,limit:_w,total:s.length,list:s}}var pot={meta:{key:"tgfilebot",name:"\u300C\u76F4\u300DTGFileBot",type:3},api:async t=>{t.post("/init",lbr),t.post("/home",Rbr),t.post("/category",Nbr),t.post("/detail",Obr),t.post("/play",Pbr),t.post("/search",kbr)}};var hot=Re(vv(),1),Coe=Re(Jn(),1),Hg="https://frodo.douban.com",ci={},mot=t=>`Rexxar-Core/0.1.3 api-client/1 com.douban.frodo/7.9.0(216) Android/28 product/Xiaomi11 rom/android network/wifi udid/${t} platform/mobile com.douban.frodo/7.9.0(216) Rexxar/1.2.151 platform/mobile 1.2.151`;async function got(t){if(ci.id&&ci.ua)return ci;let e=t.server.prefix+"/device";return ci=await t.server.db.getObjectDefault(e,{}),ci.id?ci.ua||(ci.ua=mot(ci.id),await t.server.db.push(e,ci)):(ci.id=Th(40).toLowerCase(),ci.ua=mot(ci.id),await t.server.db.push(e,ci)),ci}function Qg(t){t+=`&udid=${ci.id}&uuid=${ci.id}&&rom=android&apikey=0dad551ec0f84ed02907ff5c42e8ec70&s=rexxar_new&channel=Yingyongbao_Market&timezone=Asia/Shanghai&device_id=${ci.id}&os_rom=android&apple=c52fbb99b908be4d026954cc4374f16d&mooncake=0f607264fc6318a92b9e13c65db7cd3c&sugar=0`;let e=new URL(t),r=(0,hot.default)().unix().toString(),n=Coe.default.HmacSHA1("GET&"+encodeURIComponent(e.pathname)+"&"+r,"bf7dddc7c9cfe6f7"),s=Coe.default.enc.Base64.stringify(n);return t+"&_sig="+encodeURIComponent(s)+"&_ts="+r}async function Gg(t,e){return(await he.get(t,{headers:{"User-Agent":e||ci.ua}})).data}async function Dbr(t,e){return await got(t),{}}async function Bbr(t,e){let r=[{type_id:"t1",type_name:"\u70ED\u64AD"},{type_id:"t2",type_name:"\u7247\u5E93"},{type_id:"t250",type_name:"Top250"},{type_id:"t3",type_name:"\u699C\u5355",ratio:1},{type_id:"t4",type_name:"\u7247\u5355",ratio:1}],n={};return n.t1=[{key:"u",name:"",init:"movie/hot_gaia",value:[{n:"\u7535\u5F71",v:"movie/hot_gaia"},{n:"\u7535\u89C6\u5267",v:"subject_collection/tv_hot/items"},{n:"\u56FD\u4EA7\u5267",v:"subject_collection/tv_domestic/items"},{n:"\u7F8E\u5267",v:"subject_collection/tv_american/items"},{n:"\u65E5\u5267",v:"subject_collection/tv_japanese/items"},{n:"\u97E9\u5267",v:"subject_collection/tv_korean/items"},{n:"\u52A8\u6F2B",v:"subject_collection/tv_animation/items"},{n:"\u7EFC\u827A",v:"subject_collection/show_hot/items"}]}],n.t4=[{key:"type",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7535\u5F71",v:"movie"},{n:"\u7535\u89C6\u5267",v:"tv"}]},{key:"cate",name:"",init:"all",value:[{n:"\u5168\u90E8",v:"all"},{n:"\u8C46\u74E3\u7247\u5355",v:"official"},{n:"\u7CBE\u9009",v:"selected"},{n:"\u7ECF\u5178",v:"classical"},{n:"\u83B7\u5956",v:"prize"},{n:"\u9AD8\u5206",v:"high_score"},{n:"\u699C\u5355",v:"movie_list"},{n:"\u51B7\u95E8\u4F73\u7247",v:"dark_horse"},{n:"\u4E3B\u9898",v:"topic"},{n:"\u5BFC\u6F14",v:"director"},{n:"\u6F14\u5458",v:"actor"},{n:"\u7CFB\u5217",v:"series"}]}],n.t2=[{key:"form",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7535\u5F71",v:"\u7535\u5F71"},{n:"\u7535\u89C6\u5267",v:"\u7535\u89C6\u5267"},{n:"\u52A8\u6F2B",v:"\u52A8\u753B"},{n:"\u7EFC\u827A",v:"\u7EFC\u827A"},{n:"\u7EAA\u5F55\u7247",v:"\u7EAA\u5F55\u7247"},{n:"\u77ED\u7247",v:"\u77ED\u7247"}]},{key:"genre",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u540C\u6027",v:"\u540C\u6027"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u707E\u96BE",v:"\u707E\u96BE"}]},{key:"region",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u6FB3\u5927\u5229\u4E9A",v:"\u6FB3\u5927\u5229\u4E9A"},{n:"\u4FC4\u7F57\u65AF",v:"\u4FC4\u7F57\u65AF"},{n:"\u745E\u5178",v:"\u745E\u5178"},{n:"\u4E39\u9EA6",v:"\u4E39\u9EA6"},{n:"\u5DF4\u897F",v:"\u5DF4\u897F"},{n:"\u58A8\u897F\u54E5",v:"\u58A8\u897F\u54E5"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2010\u5E74\u4EE3",v:"2010\u5E74\u4EE3"},{n:"2000\u5E74\u4EE3",v:"2000\u5E74\u4EE3"},{n:"90\u5E74\u4EE3",v:"90\u5E74\u4EE3"},{n:"80\u5E74\u4EE3",v:"80\u5E74\u4EE3"},{n:"70\u5E74\u4EE3",v:"70\u5E74\u4EE3"},{n:"60\u5E74\u4EE3",v:"60\u5E74\u4EE3"},{n:"\u66F4\u65E9",v:"\u66F4\u65E9"}]},{key:"sort",name:"",init:"U",value:[{n:"\u70ED\u5EA6",v:"U"},{n:"\u8BC4\u5206",v:"S"},{n:"\u65F6\u95F4",v:"R"}]}],{class:r,filters:n}}async function Lbr(t,e){await got(t);let r=t.body.id,n=t.body.page,s=t.body.filters,i=n||1;if(i==0&&(i=1),r=="t1"){let a=Qg(`${Hg}/api/v2/${s.u||"movie/hot_gaia"}?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t250"){let a=Qg(`${Hg}/api/v2/subject_collection/movie_top250/items?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t2"){let a=s.form||"",o=s.genre||"",c=s.region||"",u=s.year||"",l=s.sort||"U",d=a,f=o,p="movie";d==="\u52A8\u753B"&&(d="\u7535\u89C6\u5267",f||(f="\u52A8\u753B")),(d==="\u7535\u89C6\u5267"||d==="\u7EFC\u827A")&&(p="tv");let m={};f&&(m.\u7C7B\u578B=f),d&&(m.\u5F62\u5F0F=d),c&&(m.\u5730\u533A=c);let h=[];a&&h.push(a),o&&h.push(o),c&&h.push(c),u&&h.push(u);let A=new URLSearchParams({refresh:"0",start:((i-1)*30).toString(),count:"30",selected_categories:JSON.stringify(m),uncollect:"false",score_range:"0,10"});l&&A.append("sort",l),h.length>0&&A.append("tags",h.join(","));let g=`https://m.douban.com/rexxar/api/v2/${p}/recommend?${A.toString()}`,y=(await he.get(g,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://m.douban.com/"}})).data,x=y&&y.items?y.items:[],v=[];for(let I of x)if(I&&(I.type==="movie"||I.type==="tv")){let R="";if(I.rating&&typeof I.rating.value<"u"){let w=I.rating.value;R=typeof w=="number"?w.toFixed(1):w.toString()}v.push({vod_id:I.id||"",vod_name:I.title||"",vod_pic:I.pic&&(I.pic.normal||I.pic.large)||"",vod_remarks:R?"\u8BC4\u5206:"+R:""})}return{page:parseInt(i),pagecount:i<10?i+1:i,list:v}}else if(r=="t3"){let a=Qg(`${Hg}/api/v2/movie/category_ranks?count=30&category=recent_hot`),o=await Gg(a),c=[];for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});a=Qg(`${Hg}/api/v2/tv/category_ranks?count=30&category=recent_hot`),o=await Gg(a);for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:1,pagecount:1,list:c}}else if(r=="t4"){let a=Qg(`${Hg}/api/v2/skynet/new_playlists?subject_type=${s.type||""}&category=${s.cate||"all"}&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.data[0].items)c.push({vod_id:u.owner?"dl_"+u.id:"cr_"+u.id,vod_name:u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("cr_")){let a=Qg(`${Hg}/api/v2/subject_collection/${r.substring(3)}/items?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await Gg(a),c=[];for(let u of o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("dl_")){let a=Qg(`${Hg}/api/v2/doulist/${r.substring(3)}/posts?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await Gg(a),c=[];for(let u of o.items){let l=u.content.subject;if(!l)continue;let d=(l.rating&&l.rating.value||"").toString();c.push({vod_id:l.id,vod_name:l.title,vod_pic:l.pic.normal||l.pic.large,vod_remarks:d.length>0?"\u8BC4\u5206:"+d:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}}async function Mbr(t,e){return{}}async function Wbr(t,e){return{}}async function $br(t,e){return{}}async function Fbr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u{t.post("/init",Dbr),t.post("/home",Bbr),t.post("/category",Lbr),t.post("/detail",Mbr),t.post("/play",Wbr),t.post("/search",$br),t.get("/test",Fbr)}};function Ubr(t){let e=String(t||"").split("#")[0]||"",r=e.indexOf("$");return r>0?e.slice(0,r).trim():""}async function qbr(t,e){return{}}async function jbr(t,e){return"true"}async function Hbr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i={vod_id:s,vod_content:"",vod_name:s,vod_pic:"https://pic.rmb.bdstatic.com/bjh/1d0b02d0f57f0a42201f92caba5107ed.jpeg"},a=await wr(s,t);if(a){i.vod_play_from=a.froms,i.vod_play_url=a.urls;let o=Ubr(i.vod_play_url);o&&(i.vod_name=o)}n.push(i)}return{list:n}}async function Qbr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/support`).payload({clip:"https://xx.xx/1.m3u8"});return s.support=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/detail`).payload({id:"https://xx.xx/1.m3u8"}),s.detail=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/play`).payload({flag:"xx",id:"https://xx.xx/1.m3u8"}),s.play=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var yot={meta:{key:"push",name:"\u63A8\u9001",type:4},api:async t=>{t.post("/init",qbr),t.post("/support",jbr),t.post("/detail",Hbr),t.post("/play",Nr),t.get("/test",Qbr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var V4=async(t,e,r)=>(await t.db.getObjectDefault("/pansou",{}))?.[e]||t.config.pansou?.[e]||r,Toe=async t=>V4(t,"url","https://pan.199333.xyz"),woe=async t=>{let e=await V4(t,"channels","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Roe=async t=>{let e=await V4(t,"plugins","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Noe=async t=>{let e=await V4(t,"cloudTypes","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},K4=async(t,e,r)=>{await t.db.push(`/pansou/${e}`,r)},Gbr=async t=>{await t.db.delete("/pansou")};async function Ooe(t){t.get("/config",async(e,r)=>{let n=await Toe(e.server),s=await woe(e.server),i=await Roe(e.server),a=await Noe(e.server);r.send({code:0,data:{url:n,channels:s,plugins:i,cloudTypes:a}})}),t.put("/config",async(e,r)=>{await K4(e.server,"url",e.body.url||""),await K4(e.server,"channels",Array.isArray(e.body.channels)?e.body.channels.join(","):""),await K4(e.server,"plugins",Array.isArray(e.body.plugins)?e.body.plugins.join(","):""),await K4(e.server,"cloudTypes",Array.isArray(e.body.cloudTypes)?e.body.cloudTypes.join(","):""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await Gbr(e.server),r.send({code:0})})}var bot={},Poe="pansou_group@@@",Kbr=5*60*1e3,Vbr=30,uE=new Map,zbr={ali:"aliyun",aliyun:"aliyun",alipan:"aliyun",a189:"tianyi",189:"tianyi",tianyi:"tianyi",yidong:"mobile",mobile:"mobile",a139:"mobile",cmcc:"mobile",123:"123",pan123:"123","123pan":"123",a115:"115",pan115:"115",thunder:"xunlei"},Ybr={aliyun:"ali",mobile:"yidong",123:"123",115:"115"};function Kg(t){let e=String(t||"").trim().toLowerCase();return zbr[e]||e}function xot(t){return[...new Set((t||[]).map(Kg).filter(Boolean))]}function Jbr(t,e,r=""){let n=[t,e,r].map(s=>encodeURIComponent(s||""));return`${Poe}${n.join("@@@")}`}function Eot(t,e=!1){let r=String(t||"").trim();if(!r)return null;if(r.startsWith(Poe)){let n=r.slice(Poe.length).split("@@@");return n.length<2?null:{cloudType:decodeURIComponent(n[0]||""),keyword:decodeURIComponent(n[1]||""),searchToken:decodeURIComponent(n[2]||"")}}if(e&&r.includes("|")){let n=r.indexOf("|");return{cloudType:r.slice(0,n),keyword:r.slice(n+1),searchToken:""}}return null}function _ot(t){let e=Kg(t),r=Ybr[e]||e;return rf().find(n=>n.key===r||Kg(n.key)===e)}function Sot(t){return String(t?.url||t?.URL||"").replace(/\s+/g,"")}function vot(t,e=null){let r=Kg(t),n=e||_ot(r);return{key:r,name:n?.name||r,pic:n?.pic||""}}async function koe(t){return{apiUrl:await Toe(t),channels:await woe(t),plugins:await Roe(t),cloudTypes:await Noe(t)}}function Xbr(t,e,r=""){let n={kw:t};return e.channels.length>0&&(n.channels=e.channels),e.plugins.length>0&&(n.plugins=e.plugins),r?n.cloud_types=xot([r]):e.cloudTypes.length>0&&(n.cloud_types=xot(e.cloudTypes)),n}function Zbr(){return`${Date.now().toString(36)}${Math.random().toString(36).slice(2,10)}`}function eEr(t){let e=uE.get(t);return e?e.expiresAt<=Date.now()?(uE.delete(t),null):e.mergedByType:null}function tEr(t){if(!t||typeof t!="object")return"";let e=Zbr();for(uE.set(e,{mergedByType:t,expiresAt:Date.now()+Kbr});uE.size>Vbr;){let r=uE.keys().next().value;uE.delete(r)}return e}function rEr(t){return t?t.startsWith("tg:")?t.substring(3):t.startsWith("plugin:")?t.substring(7):t:null}function nEr(t){return t?t.replace(/^(名称[::])/,"").replace(/\s+/g," ").trim():""}function sEr(t,e,r=""){let n=Kg(r),s=new Map;for(let[a,o]of Object.entries(t))if(!(n&&Kg(a)!==n)&&Array.isArray(o))for(let c of o){let u=Sot(c);if(!u)continue;let l=rf().find(A=>A.validator(u));if(!l)continue;let d=vot(a,l),f=c.images&&Array.isArray(c.images)&&c.images.length>0,p=f?c.images[0]:d.pic,m=f?p:u;s.has(m)||s.set(m,{links:[],panInfos:[],sources:[],pic:p,title:nEr(c.note||e)});let h=s.get(m);if(!h.links.includes(u)&&(h.links.push(u),h.panInfos.push(d),c.source)){let A=rEr(c.source);A&&!h.sources.includes(A)&&h.sources.push(A)}}let i=[];for(let[,a]of s.entries()){let o=[...new Set(a.panInfos.map(u=>u.name))].join("/"),c=a.sources.length>0?`:${a.sources[0]}`:"";i.push({vod_id:a.links.join("|"),vod_name:a.title,vod_pic:a.pic,vod_remarks:`${o}${c}`})}return i}function iEr(t,e,r=""){let n=new Map;for(let[s,i]of Object.entries(t||{})){if(!Array.isArray(i))continue;let a=String(s||"").trim(),o=Kg(a);if(!o)continue;let c=_ot(o),u=vot(o,c);for(let l of i){let d=Sot(l);d&&(n.has(o)||n.set(o,{cloudType:o,requestCloudType:a||o,name:u.name,pic:u.pic,links:new Set}),n.get(o).links.add(d))}}return[...n.values()].map(s=>{let i=Jbr(s.requestCloudType,e,r);return{vod_id:i,vod_name:s.name||s.cloudType,vod_pic:s.pic||"",vod_remarks:`${s.links.size}\u6761\u7ED3\u679C`,vod_tag:"folder",type_id:"pan_category",type_name:"\u7F51\u76D8\u5206\u7C7B",panType:s.cloudType,cate:{id:i,name:s.name||s.cloudType}}})}async function Iot(t,e,r="",n=null){n=n||await koe(t);let s=Xbr(e,n,r);return Ae.post(`${n.apiUrl}/api/search`,s)}function aEr(t){t.forEach(e=>{e.vod_name&&e.vod_id&&(bot[e.vod_id]=e.vod_name)})}async function oEr(t,e){return await qr(t,e),{}}async function cEr(t,e){return{class:[]}}async function uEr(t,e){let r=Eot(t.body?.id||t.body?.type_id||t.body?.categoryId,!0);return r?.cloudType&&r?.keyword?dEr(t,r.keyword,r.cloudType,r.searchToken):{page:1,pagecount:1,list:[]}}async function lEr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){if(Eot(s))continue;let i=s.includes("|")?s.split("|"):[s],a=await wr(i,t),o={};o.vod_name=bot[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls),n.push(o)}return{list:n}}async function dEr(t,e,r,n=""){try{let s=String(e||"").trim(),i=parseInt(t.body?.page||"1",10)||1;if(!s)return{page:i,pagecount:1,list:[]};if(i>1)return{page:i,pagecount:1,list:[]};let a=await koe(t.server),o=n?eEr(n):null;if(o||(o=(await Iot(t.server,s,r,a)).data?.data?.merged_by_type),o){let c=sEr(o,s,r);return aEr(c),{page:1,pagecount:1,list:c}}}catch(s){console.error("PanSou category search error:",s)}return{page:1,pagecount:1,list:[]}}async function fEr(t,e){try{let r=String(t.body.wd||"").trim(),n=parseInt(t.body?.page||"1",10)||1;if(!r)return{page:n,pagecount:1,list:[]};if(n>1)return{page:n,pagecount:1,list:[]};let s=await koe(t.server),i=await Iot(t.server,r,"",s);if(i.data&&i.data.data&&i.data.data.merged_by_type){let a=i.data.data.merged_by_type,o=tEr(a);return{page:1,pagecount:1,list:iEr(a,r,o)}}return{page:1,pagecount:1,list:[]}}catch(r){return console.error("PanSou search error:",r),{page:1,pagecount:1,list:[]}}}var Cot={meta:{key:"pansou",name:"\u300C\u76D8\u300DPanSou",type:3},api:async t=>{t.post("/init",oEr),t.post("/home",cEr),t.post("/category",uEr),t.post("/detail",lEr),t.post("/play",Nr),t.post("/search",fEr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var lE=async t=>{let e=await t.db.getObjectDefault("/live2vod",{});return{sources:e?.sources||t.config.live2vod?.sources||[],showMode:e?.showMode||t.config.live2vod?.showMode||"groups",def_pic:e?.def_pic||t.config.live2vod?.def_pic||"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg"}},Doe=async(t,e)=>{await t.db.push("/live2vod",e)},pEr=async t=>{await t.db.delete("/live2vod")};async function Boe(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await lE(e.server)})}),t.put("/config",async(e,r)=>{await Doe(e.server,e.body),r.send({code:0})}),t.delete("/config",async(e,r)=>{await pEr(e.server),r.send({code:0})}),t.get("/sources",async(e,r)=>{let n=await lE(e.server);r.send({code:0,data:n.sources||[]})}),t.post("/sources",async(e,r)=>{let{name:n,url:s,img:i}=e.body;if(!n||!s){r.code(400).send({code:1,msg:"\u540D\u79F0\u548CURL\u4E0D\u80FD\u4E3A\u7A7A"});return}let a=await lE(e.server);a.sources=a.sources||[],a.sources.push({name:n,url:s,img:i||""}),await Doe(e.server,a),r.send({code:0})}),t.delete("/sources/:index",async(e,r)=>{let n=parseInt(e.params.index),s=await lE(e.server);s.sources&&n>=0&&n{if(i=i.trim(),i.startsWith("#EXTINF:")){let a=i.replace(/'/g,'"'),o="\u672A\u77E5\u9891\u9053",c="";try{let l=a.match(/group-title="(.*?)"/);l&&(o=l[1].trim())}catch{}try{let l=a.match(/tvg-logo="(.*?)"/);l&&(c=l[1].trim())}catch{}s={name:i.split(",").slice(-1)[0].trim(),logo:c,group:o}}else if(i.startsWith("http")&&s){let a=s.group;r[a]||(r[a]=[],n.push(a)),r[a].push({name:s.name,url:i,logo:s.logo}),s=null}}),{groups:r,groupNames:n}}function gEr(t){let e=t.split(` -`),r={},n=[],s="";return e.forEach(i=>{if(i=i.trim(),!!i){if(/,#/.test(i))s=i.split(",")[0].trim(),r[s]||(r[s]=[],n.push(s));else if(i.includes(",")&&s){let a=i.split(",");a.length>=2&&a[1].trim().startsWith("http")&&r[s].push({name:a[0].trim(),url:a[1].trim(),logo:""})}}}),{groups:r,groupNames:n}}async function Y4(t){if(Sw[t])return Sw[t];let e=await mEr(t),r;/#EXTM3U/.test(e)?r=hEr(e):r=gEr(e);for(let n of Object.keys(r.groups)){let s=r.groups[n],i=new Map;s.forEach(a=>{i.has(a.name)?(i.get(a.name).urls.push(a.url),!i.get(a.name).logo&&a.logo&&(i.get(a.name).logo=a.logo)):i.set(a.name,{...a,urls:[a.url]})}),r.groups[n]=Array.from(i.values())}return Sw[t]=r,r}async function AEr(t,e){let r=await lE(t.server);Mo.sources=r.sources||[],Mo.def_pic=r.def_pic||Mo.def_pic,Object.keys(Sw).forEach(s=>delete Sw[s]),z4={};let n=Mo.sources.map(async s=>{try{let i=await Y4(s.url),a=[{n:"\u5168\u90E8",v:""}];i.groupNames.forEach(o=>{a.push({n:o,v:o})}),z4[s.url]=[{key:"group",name:"",init:"",value:a}]}catch(i){console.error(`\u9884\u52A0\u8F7D\u76F4\u64AD\u6E90 ${s.name} \u5931\u8D25: ${i.message}`),z4[s.url]=[]}});return await Promise.all(n),{}}async function yEr(t,e){return{class:Mo.sources.map(n=>({type_id:n.url,type_name:n.name})),filters:z4}}async function xEr(t,e){let r=t.body.id,n=t.body.page||1,i=(t.body.filters||{}).group||"";if(n>1)return{page:n,pagecount:1,list:[]};let o=Mo.sources.find(c=>c.url===r)?.img||"";try{let c=await Y4(r),u=[],l=i?[i]:c.groupNames;for(let d of l){let f=c.groups[d];f&&f.forEach(p=>{u.push({vod_id:r+"$"+d+"$"+p.name,vod_name:p.name,vod_pic:p.logo||o||Mo.def_pic,vod_remarks:d})})}return{page:1,pagecount:1,total:u.length,list:u}}catch(c){return console.error(`\u83B7\u53D6\u5206\u7C7B\u9875\u5931\u8D25: ${c.message}`),{page:1,pagecount:1,list:[]}}}async function bEr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.split("$"),a=i[0],o=i[1],c=i.slice(2).join("$"),u=Mo.sources.find(f=>f.url===a),l=u?.img||"",d=u?.name||"\u76F4\u64AD\u6E90";try{let m=(await Y4(a)).groups[o]?.find(g=>g.name===c);if(!m){n.push({vod_id:s,vod_name:c,vod_pic:l||Mo.def_pic,vod_content:"\u672A\u627E\u5230\u9891\u9053",vod_play_from:d,vod_play_url:""});continue}let A=(m.urls||[m.url]).map((g,b)=>`\u7EBF\u8DEF${b+1}$${g}`);n.push({vod_id:s,vod_name:c,type_name:o,vod_pic:m.logo||l||Mo.def_pic,vod_content:`\u9891\u9053: ${c} +`);for(let r of e){let n=ns(r);if(n&&!/^(主演|类型|制片国家|语言|ä¸Šæ˜ æ—¥æœŸ|片长|又名|导演|编剧)\s*[::]/.test(Coe(n)))return n}return""}function lot(t){return String(t||"").replace(/[0-ï¼™]/g,e=>String(e.charCodeAt(0)-65296))}function Abr(t){let e=String(t||"").replace(/两/g,"\u4E8C");if(!e)return 0;if(/^\d+$/.test(e))return Number(e);let r={\u96F6:0,"\u3007":0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},n={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4},s=0,i=0,a=0;for(let o of e){if(r[o]!==void 0){a=r[o];continue}let c=n[o];if(!c)return 0;c===1e4?(i=(i+a)*c,s+=i,i=0):i+=(a||1)*c,a=0}return s+i+a}function H4(t){let e=ns(t).replace(/\.[a-z0-9]{2,5}$/i,""),r=e.match(/(?:^|[^0-90-ï¼™])(?:第\s*)?([0-90-ï¼™]{1,4})\s*(?:集|話|话|回|期)(?:\D|$)/);return r?"\u7B2C"+lot(r[1]).replace(/^0+/,"")+"\u96C6":(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?"\u7B2C"+r[1]+"\u96C6":"")}function aot(t){let e=lot(ns(t)),r=e.match(/第\s*([0-9]{1,4}|[零〇一二三四五六七八九十百千万两]{1,8})\s*(?:集|話|话|回|期)/);return r?Abr(r[1].replace(/^0+/,"")):(r=e.match(/^0*([1-9][0-9]{0,3})(?=[\s._\-【\[((]|$)/),r?Number(r[1]):0)}function dot(t,e){let r=Coe(uot(t));if(!r)return{name:"",remark:""};let n=r.match(/^[【\[]\s*([^】\]]+?)\s*[】\]]/);if(n)return{name:ns(n[1]),remark:H4(e)};let s=r.startsWith("#")?r.replace(/^#+\s*/,"").trim():r;if(!s)return{name:"",remark:""};if(!r.startsWith("#"))return{name:ns(s),remark:H4(e)};let i=s.match(/^(.*?)\s*(第\s*[0-90-9零〇一二三四五六七八九十百千万两]+\s*(?:集|話|话|回|期))(?:\s|$)/);return i?{name:ns(i[1]),remark:ns(i[2]).replace(/\s+/g,"")}:{name:ns(s),remark:H4(e)}}function qg(t){if(!t)return[];if(Array.isArray(t))return t;if(typeof t[Symbol.iterator]=="function"&&typeof t!="string")return[...t].filter(e=>e!=null);if(typeof t.length=="number"&&typeof t!="string"){let e=[];for(let r=0;r/^\d+$/.test(e)).sort((e,r)=>Number(e)-Number(r)).map(e=>t[e]).filter(e=>e!=null):[]}function Ioe(t){return encodeURIComponent(JSON.stringify(t||{}))}function jg(t){return t?JSON.parse(decodeURIComponent(String(t))):{}}function Q4(t){if(t=Number(t||0),!t||t<0)return"";let e=["B","KB","MB","GB","TB"],r=t,n=0;for(;r>=1024&&n=100?0:r>=10?1:2;return`${r.toFixed(s)} ${e[n]}`}function ybr(t){if(t=Number(t||0),!t)return"";let e=new Date(t*1e3),r=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0"),s=String(e.getHours()).padStart(2,"0"),i=String(e.getMinutes()).padStart(2,"0");return`${r}-${n} ${s}:${i}`}function q4(t,e){let r=0;for(let n of e)t.indexOf(n)>=0&&r++;return r}function fot(t){let e=String(t&&t.text||""),r=String(t&&t.name||""),n=(e+` +`+r).toLowerCase();if(!n.trim())return!1;let i=q4(n,["@duguan","\u8D4C\u9986","\u6D3B\u52A8\u9891\u9053","\u9996\u5B58","\u6D41\u6C34","\u6CE8\u518C\u9001","\u65B0\u7528\u6237\u6CE8\u518C","\u5173\u95EDvpn","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u9001\u5F69\u91D1","\u5F69\u91D1","\u6295\u6CE8","\u5145\u503C","\u63D0\u6B3E","\u63D0\u73B0","\u4E0A\u5206","\u4E0B\u5206","\u8FD4\u6C34","\u4F63\u91D1","\u76D8\u53E3","\u9A8C\u8D44","\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D"]),a=q4(n,["\u6CE8\u518C","\u9996\u5B58","\u9996\u5145","\u5145\u503C","\u5B58\u6B3E","\u6D41\u6C34","\u8FD4\u6C34","\u4E0B\u6CE8","\u6295\u6CE8","\u4E0A\u5206","\u4E0B\u5206","\u5F69\u91D1","\u9001\u5F69\u91D1","\u4F63\u91D1","\u6551\u63F4\u91D1","\u63D0\u6B3E","\u63D0\u73B0","\u51FA\u6B3E","\u9886\u53D6"]),o=q4(n,["\u6D3B\u52A8\u9891\u9053","\u5E73\u53F0","\u4FE1\u8A89\u5E73\u53F0","\u5A31\u4E50\u57CE","\u5A31\u4E50\u5E73\u53F0","\u8D4C\u573A","\u535A\u5F69","\u767E\u5BB6\u4E50","\u516D\u5408\u5F69","\u89C6\u8BAF","\u771F\u4EBA","\u76D8\u53E3","\u72D7\u5E84","pg\u96C6\u56E2","pg\u5A31\u4E50\u57CE","pg\u76F4\u8425","\u6C47\u65FA","\u8C6A\u535A\u5A31\u4E50","\u9A8C\u8D44","vpn","\u6D4F\u89C8\u5668\u75284g\u7F51\u7EDC"]),c=q4(n,["\u5B98\u65B9\u5BA2\u670D","\u798F\u5229\u9891\u9053","\u6CE8\u518C\u7F51\u5740","\u62C5\u4FDD\u57DF\u540D","\u603B\u7FA4","\u5BA2\u670D","\u9891\u9053","bot","http://","https://"]),u=(n.match(/@[a-z0-9_]{4,}/g)||[]).length,l=(n.match(/[a-z0-9][a-z0-9-]+\.(?:com|net|cc|top|vip|app)\b/g)||[]).length,d=(n.match(/注册/g)||[]).length>=3;return i>=2||a>0&&o>0||a>=2&&(c>0||u>=2||l>0)||o>=2&&(c>0||u>=2||l>0)||d}async function xbr(t){let e=process.env.TGFILEBOT_URL||await _oe(t),r=process.env.TGFILEBOT_PASSWORD||process.env.TGFILEBOT_KEY||await Soe(t);return{url:gbr(e)||pbr,password:String(r||"").trim()}}async function pot(t,e,r={}){let n=await xbr(t),s=new URL(e,n.url+"/"),i={...r};n.password&&(i.key=n.password);for(let[a,o]of Object.entries(i))o==null||o===""||s.searchParams.set(a,String(o));return s.toString()}async function V4(t,e,r={},n=3e4){let s=await pot(t,e,r),i=await Ae.get(s,{timeout:n,validateStatus:()=>!0});if(i.status<200||i.status>=300)throw new Error(`TGFileBot ${e} HTTP ${i.status}`);return typeof i.data=="string"?JSON.parse(i.data):i.data||{}}function bbr(t){let e=ns(t);return e?e.startsWith("#")?[e]:[e,"#"+e]:[]}function j4(t){return Coe(t).replace(/^#+\s*/,"").replace(/[\s._\-::,,.。!!??、/\\|()[\]【】()《》<>〈〉"'“”‘’·]/g,"").toLowerCase()}function Ebr(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function _br(t,e){let r=ns(e).replace(/^#+\s*/,"");return r?new RegExp("(^|\\s)#"+Ebr(r)+"(?=\\s|$|#)").test(String(t||"")):!1}function G4(t){try{return jg(t&&t.vod_id)}catch{return{}}}function Sbr(t,e){let r=G4(t),n=j4(ns(e).replace(/^#+\s*/,""));if(!n)return 0;let s=j4(r.name||t&&t.vod_name||""),i=j4(uot(r.text||"")),a=j4(r.text||"");return s===n?100:i===n?98:_br(r.text||"",e)?95:s.startsWith(n)?80:i.startsWith(n)?75:s.indexOf(n)>=0?60:i.indexOf(n)>=0?50:a.indexOf(n)>=0?10:0}function vbr(t,e){return t.map((r,n)=>{let s=G4(r);return{video:r,index:n,score:Sbr(r,e),date:Number(s.date||0)}}).sort((r,n)=>n.score!==r.score?n.score-r.score:n.date!==r.date?n.date-r.date:r.index-n.index).map(r=>r.video)}function Cbr(t,e){let r=new Set(t.map(n=>{let s=G4(n);return`${s.cid||""}:${s.mid||""}`}));for(let n of e){let s=G4(n),i=`${s.cid||""}:${s.mid||""}`;i!==":"&&r.has(i)||(i!==":"&&r.add(i),t.push(n))}return t}function Ibr(t,e=""){let r=dot(t?.text||t?.name,t?.name),n=r.name||ns(t?.name)||`Telegram ${t?.mid||""}`.trim(),s=r.remark||ns(t?.remark),i={cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:n,remark:s,text:t?.text||"",size:t?.size||0,date:t?.date||0,channel:e||""};return{vod_id:Ioe(i),vod_name:n,type_name:e||"",vod_pic:t?.pic||t?.cover||t?.thumb||oot,vod_remarks:i.remark||"",topRightRemarks:Q4(t?.size)||""}}function mot(t){let e=[];for(let r of qg(t)){let n=r&&r.channel?r.channel:"",s=qg(r&&r.item);for(let i of s)!i||fot(i)||e.push(Ibr(i,n))}return e.sort((r,n)=>{try{return Number(jg(n.vod_id).date||0)-Number(jg(r.vod_id).date||0)}catch{return 0}}),e}function Tbr(t){if(!t||!t.cid)return!1;if(t.reply_mid)return!0;let e=String(t.text||"");return e.trim()?/(剧集选择|评论区|评论|留言|回复|comment=|t\.me\/[a-z0-9_]+\/\d+\?comment=|t\.me\/c\/\d+\/\d+\?comment=)/i.test(e):!1}function hot(t,e){return`${cot(t)}$${Ioe(wbr(e))}`}function wbr(t){return{cid:t?.cid,mid:t?.mid,reply_mid:t?.reply_mid||0,name:t?.name||"",remark:t?.remark||"",size:t?.size||0,date:t?.date||0,channel:t?.channel||""}}function Rbr(t){let e=String(t||""),r=e.indexOf("$");return r<0?{title:e,token:""}:{title:e.slice(0,r),token:e.slice(r+1)}}function Nbr(t){let e=Rbr(t);try{let r=jg(e.token),n=aot(r.remark||"");if(n>0)return n}catch{}return aot(e.title)}function Obr(t){return t.map((e,r)=>({item:e,index:r,episode:Nbr(e)})).sort((e,r)=>{let n=e.episode>0,s=r.episode>0;return n&&s&&e.episode!==r.episode?e.episode-r.episode:n!==s?n?-1:1:e.index-r.index}).map(e=>e.item)}function got(t,e){let r=cot(t),n=Q4(e);return!n||r.indexOf(n)>=0?r:`${r} ${n}`}function Pbr(t){return t&&t.items?qg(t.items):t&&t.item?[t]:qg(t)}function Dbr(t,e,r){let n=new Set;for(let s of t){let i=String(s).split("$").slice(1).join("$");try{let a=jg(i);n.add(`${a.cid||""}:${a.mid||""}`)}catch{}}for(let s of qg(r)){let i=qg(s&&s.item);for(let a of i){if(!a||!a.cid||!a.mid||fot(a))continue;let o=`${a.cid}:${a.mid}`;if(n.has(o))continue;let c=dot(a.text||e.text||a.name,a.name),u=c.name||e.name,l=c.remark||H4(a.name)||"",d={...e,cid:a.cid,mid:a.mid,reply_mid:a.reply_mid||0,name:u,remark:l,size:a.size||0,date:a.date||e.date||0,text:a.text||e.text||""},f=l||ns(a.name)||e.remark||e.name;n.add(o),t.push(hot(got(f,a.size),d))}}return t}async function kbr(t,e){try{let r=await V4(t.server,"/channels",{},12e3);return{class:qg(r.channels).map(s=>{let i=ns(s&&s.id);return i?{type_id:i,type_name:ns(s.name)||i}:null}).filter(Boolean)}}catch(r){return console.error("[tgfilebot] channels failed",r?.message||r),{class:[]}}}async function Lbr(t,e){let r=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1),n=ns(t.body?.id||"all")||"all",s=await V4(t.server,"/latest",{channel:n,page:r,limit:vw}),i=mot(s.items);return{page:r,pagecount:s.more?r+1:r,limit:vw,total:s.total||i.length,list:i}}async function Bbr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r.filter(Boolean)){let i=jg(s),a=Ioe(i),o=ns(i.name)||`Telegram ${i.mid||""}`.trim(),c=[hot(got(i.remark||o,i.size),i)];try{let l=i.reply_mid||i.mid;if(i.cid&&l&&Tbr(i)){let d=await V4(t.server,"/replies",{cid:i.cid,mid:l,limit:mbr},2e4);Dbr(c,i,Pbr(d))}}catch(l){console.error("[tgfilebot] replies skipped",l?.message||l)}let u=[i.remark?`Remark: ${i.remark}`:"",i.channel?`Channel: ${i.channel}`:"",i.cid?`CID: ${i.cid}`:"",i.mid?`MID: ${i.mid}`:"",i.size?`Size: ${Q4(i.size)}`:"",i.date?`Date: ${ybr(i.date)}`:"",ns(i.text||"")].filter(Boolean).join(` +`);n.push({vod_id:a,vod_name:o,type_name:i.channel||"",vod_pic:i.pic||oot,vod_remarks:i.remark||"",topRightRemarks:Q4(i.size)||"",vod_content:u,vod_play_from:"TGFileBot",vod_play_url:Obr(c).join("#")})}return{list:n}}async function Mbr(t,e){let r=jg(t.body?.id);return!r.cid||!r.mid?{parse:0,url:""}:{parse:0,url:await pot(t.server,"/stream",{cid:r.cid,mid:r.mid,cate:"user"})}}async function Wbr(t,e){let r=ns(t.body?.wd||""),n=Math.max(Number.parseInt(t.body?.page||"1",10)||1,1);if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of bbr(r))try{let a=await V4(t.server,"/search",{keywords:i,page:n,limit:vw},2e4);s=Cbr(s,mot(a.items))}catch(a){console.error("[tgfilebot] search variant failed",i,a?.message||a)}return s=vbr(s,r),{page:n,pagecount:s.length>=vw?n+1:n,limit:vw,total:s.length,list:s}}var Aot={meta:{key:"tgfilebot",name:"\u300C\u76F4\u300DTGFileBot",type:3},api:async t=>{t.post("/init",hbr),t.post("/home",kbr),t.post("/category",Lbr),t.post("/detail",Bbr),t.post("/play",Mbr),t.post("/search",Wbr)}};var xot=Re(Cv(),1),Toe=Re(Jn(),1),Hg="https://frodo.douban.com",oi={},yot=t=>`Rexxar-Core/0.1.3 api-client/1 com.douban.frodo/7.9.0(216) Android/28 product/Xiaomi11 rom/android network/wifi udid/${t} platform/mobile com.douban.frodo/7.9.0(216) Rexxar/1.2.151 platform/mobile 1.2.151`;async function bot(t){if(oi.id&&oi.ua)return oi;let e=t.server.prefix+"/device";return oi=await t.server.db.getObjectDefault(e,{}),oi.id?oi.ua||(oi.ua=yot(oi.id),await t.server.db.push(e,oi)):(oi.id=Th(40).toLowerCase(),oi.ua=yot(oi.id),await t.server.db.push(e,oi)),oi}function Qg(t){t+=`&udid=${oi.id}&uuid=${oi.id}&&rom=android&apikey=0dad551ec0f84ed02907ff5c42e8ec70&s=rexxar_new&channel=Yingyongbao_Market&timezone=Asia/Shanghai&device_id=${oi.id}&os_rom=android&apple=c52fbb99b908be4d026954cc4374f16d&mooncake=0f607264fc6318a92b9e13c65db7cd3c&sugar=0`;let e=new URL(t),r=(0,xot.default)().unix().toString(),n=Toe.default.HmacSHA1("GET&"+encodeURIComponent(e.pathname)+"&"+r,"bf7dddc7c9cfe6f7"),s=Toe.default.enc.Base64.stringify(n);return t+"&_sig="+encodeURIComponent(s)+"&_ts="+r}async function Gg(t,e){return(await he.get(t,{headers:{"User-Agent":e||oi.ua}})).data}async function $br(t,e){return await bot(t),{}}async function Fbr(t,e){let r=[{type_id:"t1",type_name:"\u70ED\u64AD"},{type_id:"t2",type_name:"\u7247\u5E93"},{type_id:"t250",type_name:"Top250"},{type_id:"t3",type_name:"\u699C\u5355",ratio:1},{type_id:"t4",type_name:"\u7247\u5355",ratio:1}],n={};return n.t1=[{key:"u",name:"",init:"movie/hot_gaia",value:[{n:"\u7535\u5F71",v:"movie/hot_gaia"},{n:"\u7535\u89C6\u5267",v:"subject_collection/tv_hot/items"},{n:"\u56FD\u4EA7\u5267",v:"subject_collection/tv_domestic/items"},{n:"\u7F8E\u5267",v:"subject_collection/tv_american/items"},{n:"\u65E5\u5267",v:"subject_collection/tv_japanese/items"},{n:"\u97E9\u5267",v:"subject_collection/tv_korean/items"},{n:"\u52A8\u6F2B",v:"subject_collection/tv_animation/items"},{n:"\u7EFC\u827A",v:"subject_collection/show_hot/items"}]}],n.t4=[{key:"type",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7535\u5F71",v:"movie"},{n:"\u7535\u89C6\u5267",v:"tv"}]},{key:"cate",name:"",init:"all",value:[{n:"\u5168\u90E8",v:"all"},{n:"\u8C46\u74E3\u7247\u5355",v:"official"},{n:"\u7CBE\u9009",v:"selected"},{n:"\u7ECF\u5178",v:"classical"},{n:"\u83B7\u5956",v:"prize"},{n:"\u9AD8\u5206",v:"high_score"},{n:"\u699C\u5355",v:"movie_list"},{n:"\u51B7\u95E8\u4F73\u7247",v:"dark_horse"},{n:"\u4E3B\u9898",v:"topic"},{n:"\u5BFC\u6F14",v:"director"},{n:"\u6F14\u5458",v:"actor"},{n:"\u7CFB\u5217",v:"series"}]}],n.t2=[{key:"form",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u7535\u5F71",v:"\u7535\u5F71"},{n:"\u7535\u89C6\u5267",v:"\u7535\u89C6\u5267"},{n:"\u52A8\u6F2B",v:"\u52A8\u753B"},{n:"\u7EFC\u827A",v:"\u7EFC\u827A"},{n:"\u7EAA\u5F55\u7247",v:"\u7EAA\u5F55\u7247"},{n:"\u77ED\u7247",v:"\u77ED\u7247"}]},{key:"genre",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"\u5267\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u52A8\u4F5C",v:"\u52A8\u4F5C"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u72AF\u7F6A",v:"\u72AF\u7F6A"},{n:"\u6218\u4E89",v:"\u6218\u4E89"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"},{n:"\u9752\u6625",v:"\u9752\u6625"},{n:"\u540C\u6027",v:"\u540C\u6027"},{n:"\u97F3\u4E50",v:"\u97F3\u4E50"},{n:"\u6B4C\u821E",v:"\u6B4C\u821E"},{n:"\u5386\u53F2",v:"\u5386\u53F2"},{n:"\u5192\u9669",v:"\u5192\u9669"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u4F20\u8BB0",v:"\u4F20\u8BB0"},{n:"\u8FD0\u52A8",v:"\u8FD0\u52A8"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u707E\u96BE",v:"\u707E\u96BE"}]},{key:"region",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u4E2D\u56FD\u5927\u9646",v:"\u4E2D\u56FD\u5927\u9646"},{n:"\u4E2D\u56FD\u9999\u6E2F",v:"\u4E2D\u56FD\u9999\u6E2F"},{n:"\u4E2D\u56FD\u53F0\u6E7E",v:"\u4E2D\u56FD\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u5370\u5EA6",v:"\u5370\u5EA6"},{n:"\u6CD5\u56FD",v:"\u6CD5\u56FD"},{n:"\u5FB7\u56FD",v:"\u5FB7\u56FD"},{n:"\u897F\u73ED\u7259",v:"\u897F\u73ED\u7259"},{n:"\u6CF0\u56FD",v:"\u6CF0\u56FD"},{n:"\u610F\u5927\u5229",v:"\u610F\u5927\u5229"},{n:"\u52A0\u62FF\u5927",v:"\u52A0\u62FF\u5927"},{n:"\u6FB3\u5927\u5229\u4E9A",v:"\u6FB3\u5927\u5229\u4E9A"},{n:"\u4FC4\u7F57\u65AF",v:"\u4FC4\u7F57\u65AF"},{n:"\u745E\u5178",v:"\u745E\u5178"},{n:"\u4E39\u9EA6",v:"\u4E39\u9EA6"},{n:"\u5DF4\u897F",v:"\u5DF4\u897F"},{n:"\u58A8\u897F\u54E5",v:"\u58A8\u897F\u54E5"}]},{key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"},{n:"2019",v:"2019"},{n:"2010\u5E74\u4EE3",v:"2010\u5E74\u4EE3"},{n:"2000\u5E74\u4EE3",v:"2000\u5E74\u4EE3"},{n:"90\u5E74\u4EE3",v:"90\u5E74\u4EE3"},{n:"80\u5E74\u4EE3",v:"80\u5E74\u4EE3"},{n:"70\u5E74\u4EE3",v:"70\u5E74\u4EE3"},{n:"60\u5E74\u4EE3",v:"60\u5E74\u4EE3"},{n:"\u66F4\u65E9",v:"\u66F4\u65E9"}]},{key:"sort",name:"",init:"U",value:[{n:"\u70ED\u5EA6",v:"U"},{n:"\u8BC4\u5206",v:"S"},{n:"\u65F6\u95F4",v:"R"}]}],{class:r,filters:n}}async function Ubr(t,e){await bot(t);let r=t.body.id,n=t.body.page,s=t.body.filters,i=n||1;if(i==0&&(i=1),r=="t1"){let a=Qg(`${Hg}/api/v2/${s.u||"movie/hot_gaia"}?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t250"){let a=Qg(`${Hg}/api/v2/subject_collection/movie_top250/items?area=\u5168\u90E8&sort=recommend&playable=0&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.items||o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r=="t2"){let a=s.form||"",o=s.genre||"",c=s.region||"",u=s.year||"",l=s.sort||"U",d=a,f=o,p="movie";d==="\u52A8\u753B"&&(d="\u7535\u89C6\u5267",f||(f="\u52A8\u753B")),(d==="\u7535\u89C6\u5267"||d==="\u7EFC\u827A")&&(p="tv");let m={};f&&(m.\u7C7B\u578B=f),d&&(m.\u5F62\u5F0F=d),c&&(m.\u5730\u533A=c);let h=[];a&&h.push(a),o&&h.push(o),c&&h.push(c),u&&h.push(u);let A=new URLSearchParams({refresh:"0",start:((i-1)*30).toString(),count:"30",selected_categories:JSON.stringify(m),uncollect:"false",score_range:"0,10"});l&&A.append("sort",l),h.length>0&&A.append("tags",h.join(","));let g=`https://m.douban.com/rexxar/api/v2/${p}/recommend?${A.toString()}`,y=(await he.get(g,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",Referer:"https://m.douban.com/"}})).data,x=y&&y.items?y.items:[],v=[];for(let C of x)if(C&&(C.type==="movie"||C.type==="tv")){let R="";if(C.rating&&typeof C.rating.value<"u"){let w=C.rating.value;R=typeof w=="number"?w.toFixed(1):w.toString()}v.push({vod_id:C.id||"",vod_name:C.title||"",vod_pic:C.pic&&(C.pic.normal||C.pic.large)||"",vod_remarks:R?"\u8BC4\u5206:"+R:""})}return{page:parseInt(i),pagecount:i<10?i+1:i,list:v}}else if(r=="t3"){let a=Qg(`${Hg}/api/v2/movie/category_ranks?count=30&category=recent_hot`),o=await Gg(a),c=[];for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});a=Qg(`${Hg}/api/v2/tv/category_ranks?count=30&category=recent_hot`),o=await Gg(a);for(let u of o.selected_collections)c.push({vod_id:"cr_"+u.id,vod_name:u.short_name||u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:1,pagecount:1,list:c}}else if(r=="t4"){let a=Qg(`${Hg}/api/v2/skynet/new_playlists?subject_type=${s.type||""}&category=${s.cate||"all"}&loc_id=0&start=${(i-1)*30}&count=30`),o=await Gg(a),c=[];for(let u of o.data[0].items)c.push({vod_id:u.owner?"dl_"+u.id:"cr_"+u.id,vod_name:u.title,vod_pic:u.cover_url,vod_remarks:"",cate:{}});return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("cr_")){let a=Qg(`${Hg}/api/v2/subject_collection/${r.substring(3)}/items?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await Gg(a),c=[];for(let u of o.subject_collection_items){let l=(u.rating&&u.rating.value||"").toString();c.push({vod_id:u.id,vod_name:u.title,vod_pic:u.pic.normal||u.pic.large,vod_remarks:l.length>0?"\u8BC4\u5206:"+l:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}else if(r.startsWith("dl_")){let a=Qg(`${Hg}/api/v2/doulist/${r.substring(3)}/posts?start=${(i-1)*30}&count=30&updated_at=&items_only=1`),o=await Gg(a),c=[];for(let u of o.items){let l=u.content.subject;if(!l)continue;let d=(l.rating&&l.rating.value||"").toString();c.push({vod_id:l.id,vod_name:l.title,vod_pic:l.pic.normal||l.pic.large,vod_remarks:d.length>0?"\u8BC4\u5206:"+d:""})}return{page:parseInt(i),pagecount:Math.ceil(o.total/30),list:c}}}async function qbr(t,e){return{}}async function jbr(t,e){return{}}async function Hbr(t,e){return{}}async function Qbr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);if(s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filter:!0,filters:{}}),s.category=i.json(),r(i.json()),s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()),s.detail.list&&s.detail.list.length>0))){s.play=[];for(let a of s.detail.list){let o=a.vod_play_from.split("$$$"),c=a.vod_play_url.split("$$$");for(let u=0;u{t.post("/init",$br),t.post("/home",Fbr),t.post("/category",Ubr),t.post("/detail",qbr),t.post("/play",jbr),t.post("/search",Hbr),t.get("/test",Qbr)}};function Gbr(t){let e=String(t||"").split("#")[0]||"",r=e.indexOf("$");return r>0?e.slice(0,r).trim():""}async function Vbr(t,e){return{}}async function zbr(t,e){return"true"}async function Kbr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i={vod_id:s,vod_content:"",vod_name:s,vod_pic:"https://pic.rmb.bdstatic.com/bjh/1d0b02d0f57f0a42201f92caba5107ed.jpeg"},a=await Rr(s,t);if(a){i.vod_play_from=a.froms,i.vod_play_url=a.urls;let o=Gbr(i.vod_play_url);o&&(i.vod_name=o)}n.push(i)}return{list:n}}async function Ybr(t,e){try{let r=function(a){a.statusCode&&a.statusCode==500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/support`).payload({clip:"https://xx.xx/1.m3u8"});return s.support=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/detail`).payload({id:"https://xx.xx/1.m3u8"}),s.detail=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/play`).payload({flag:"xx",id:"https://xx.xx/1.m3u8"}),s.play=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var _ot={meta:{key:"push",name:"\u63A8\u9001",type:4},api:async t=>{t.post("/init",Vbr),t.post("/support",zbr),t.post("/detail",Kbr),t.post("/play",Or),t.get("/test",Ybr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var K4=async(t,e,r)=>(await t.db.getObjectDefault("/pansou",{}))?.[e]||t.config.pansou?.[e]||r,woe=async t=>K4(t,"url","https://pan.199333.xyz"),Roe=async t=>{let e=await K4(t,"channels","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Noe=async t=>{let e=await K4(t,"plugins","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},Ooe=async t=>{let e=await K4(t,"cloudTypes","");return e?e.split(",").map(r=>r.trim()).filter(r=>r):[]},z4=async(t,e,r)=>{await t.db.push(`/pansou/${e}`,r)},Jbr=async t=>{await t.db.delete("/pansou")};async function Poe(t){t.get("/config",async(e,r)=>{let n=await woe(e.server),s=await Roe(e.server),i=await Noe(e.server),a=await Ooe(e.server);r.send({code:0,data:{url:n,channels:s,plugins:i,cloudTypes:a}})}),t.put("/config",async(e,r)=>{await z4(e.server,"url",e.body.url||""),await z4(e.server,"channels",Array.isArray(e.body.channels)?e.body.channels.join(","):""),await z4(e.server,"plugins",Array.isArray(e.body.plugins)?e.body.plugins.join(","):""),await z4(e.server,"cloudTypes",Array.isArray(e.body.cloudTypes)?e.body.cloudTypes.join(","):""),r.send({code:0})}),t.delete("/config",async(e,r)=>{await Jbr(e.server),r.send({code:0})})}var vot={},Doe="pansou_group@@@",Xbr=5*60*1e3,Zbr=30,lE=new Map,eEr={ali:"aliyun",aliyun:"aliyun",alipan:"aliyun",a189:"tianyi",189:"tianyi",tianyi:"tianyi",yidong:"mobile",mobile:"mobile",a139:"mobile",cmcc:"mobile",123:"123",pan123:"123","123pan":"123",a115:"115",pan115:"115",thunder:"xunlei"},tEr={aliyun:"ali",mobile:"yidong",123:"123",115:"115"};function Vg(t){let e=String(t||"").trim().toLowerCase();return eEr[e]||e}function Sot(t){return[...new Set((t||[]).map(Vg).filter(Boolean))]}function rEr(t,e,r=""){let n=[t,e,r].map(s=>encodeURIComponent(s||""));return`${Doe}${n.join("@@@")}`}function Cot(t,e=!1){let r=String(t||"").trim();if(!r)return null;if(r.startsWith(Doe)){let n=r.slice(Doe.length).split("@@@");return n.length<2?null:{cloudType:decodeURIComponent(n[0]||""),keyword:decodeURIComponent(n[1]||""),searchToken:decodeURIComponent(n[2]||"")}}if(e&&r.includes("|")){let n=r.indexOf("|");return{cloudType:r.slice(0,n),keyword:r.slice(n+1),searchToken:""}}return null}function Iot(t){let e=Vg(t),r=tEr[e]||e;return nf().find(n=>n.key===r||Vg(n.key)===e)}function Tot(t){return String(t?.url||t?.URL||"").replace(/\s+/g,"")}function wot(t,e=null){let r=Vg(t),n=e||Iot(r);return{key:r,name:n?.name||r,pic:n?.pic||""}}async function koe(t){return{apiUrl:await woe(t),channels:await Roe(t),plugins:await Noe(t),cloudTypes:await Ooe(t)}}function nEr(t,e,r=""){let n={kw:t};return e.channels.length>0&&(n.channels=e.channels),e.plugins.length>0&&(n.plugins=e.plugins),r?n.cloud_types=Sot([r]):e.cloudTypes.length>0&&(n.cloud_types=Sot(e.cloudTypes)),n}function sEr(){return`${Date.now().toString(36)}${Math.random().toString(36).slice(2,10)}`}function iEr(t){let e=lE.get(t);return e?e.expiresAt<=Date.now()?(lE.delete(t),null):e.mergedByType:null}function aEr(t){if(!t||typeof t!="object")return"";let e=sEr();for(lE.set(e,{mergedByType:t,expiresAt:Date.now()+Xbr});lE.size>Zbr;){let r=lE.keys().next().value;lE.delete(r)}return e}function oEr(t){return t?t.startsWith("tg:")?t.substring(3):t.startsWith("plugin:")?t.substring(7):t:null}function cEr(t){return t?t.replace(/^(名称[::])/,"").replace(/\s+/g," ").trim():""}function uEr(t,e,r=""){let n=Vg(r),s=new Map;for(let[a,o]of Object.entries(t))if(!(n&&Vg(a)!==n)&&Array.isArray(o))for(let c of o){let u=Tot(c);if(!u)continue;let l=nf().find(A=>A.validator(u));if(!l)continue;let d=wot(a,l),f=c.images&&Array.isArray(c.images)&&c.images.length>0,p=f?c.images[0]:d.pic,m=f?p:u;s.has(m)||s.set(m,{links:[],panInfos:[],sources:[],pic:p,title:cEr(c.note||e)});let h=s.get(m);if(!h.links.includes(u)&&(h.links.push(u),h.panInfos.push(d),c.source)){let A=oEr(c.source);A&&!h.sources.includes(A)&&h.sources.push(A)}}let i=[];for(let[,a]of s.entries()){let o=[...new Set(a.panInfos.map(u=>u.name))].join("/"),c=a.sources.length>0?`:${a.sources[0]}`:"";i.push({vod_id:a.links.join("|"),vod_name:a.title,vod_pic:a.pic,vod_remarks:`${o}${c}`})}return i}function lEr(t,e,r=""){let n=new Map;for(let[s,i]of Object.entries(t||{})){if(!Array.isArray(i))continue;let a=String(s||"").trim(),o=Vg(a);if(!o)continue;let c=Iot(o),u=wot(o,c);for(let l of i){let d=Tot(l);d&&(n.has(o)||n.set(o,{cloudType:o,requestCloudType:a||o,name:u.name,pic:u.pic,links:new Set}),n.get(o).links.add(d))}}return[...n.values()].map(s=>{let i=rEr(s.requestCloudType,e,r);return{vod_id:i,vod_name:s.name||s.cloudType,vod_pic:s.pic||"",vod_remarks:`${s.links.size}\u6761\u7ED3\u679C`,vod_tag:"folder",type_id:"pan_category",type_name:"\u7F51\u76D8\u5206\u7C7B",panType:s.cloudType,cate:{id:i,name:s.name||s.cloudType}}})}async function Rot(t,e,r="",n=null){n=n||await koe(t);let s=nEr(e,n,r);return Ae.post(`${n.apiUrl}/api/search`,s)}function dEr(t){t.forEach(e=>{e.vod_name&&e.vod_id&&(vot[e.vod_id]=e.vod_name)})}async function fEr(t,e){return await qr(t,e),{}}async function pEr(t,e){return{class:[]}}async function mEr(t,e){let r=Cot(t.body?.id||t.body?.type_id||t.body?.categoryId,!0);return r?.cloudType&&r?.keyword?gEr(t,r.keyword,r.cloudType,r.searchToken):{page:1,pagecount:1,list:[]}}async function hEr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){if(Cot(s))continue;let i=s.includes("|")?s.split("|"):[s],a=await Rr(i,t),o={};o.vod_name=vot[s]||"",a&&(o.vod_play_from=a.froms,o.vod_play_url=a.urls,o.vod_links=a.links),n.push(o)}return{list:n}}async function gEr(t,e,r,n=""){try{let s=String(e||"").trim(),i=parseInt(t.body?.page||"1",10)||1;if(!s)return{page:i,pagecount:1,list:[]};if(i>1)return{page:i,pagecount:1,list:[]};let a=await koe(t.server),o=n?iEr(n):null;if(o||(o=(await Rot(t.server,s,r,a)).data?.data?.merged_by_type),o){let c=uEr(o,s,r);return dEr(c),{page:1,pagecount:1,list:c}}}catch(s){console.error("PanSou category search error:",s)}return{page:1,pagecount:1,list:[]}}async function AEr(t,e){try{let r=String(t.body.wd||"").trim(),n=parseInt(t.body?.page||"1",10)||1;if(!r)return{page:n,pagecount:1,list:[]};if(n>1)return{page:n,pagecount:1,list:[]};let s=await koe(t.server),i=await Rot(t.server,r,"",s);if(i.data&&i.data.data&&i.data.data.merged_by_type){let a=i.data.data.merged_by_type,o=aEr(a);return{page:1,pagecount:1,list:lEr(a,r,o)}}return{page:1,pagecount:1,list:[]}}catch(r){return console.error("PanSou search error:",r),{page:1,pagecount:1,list:[]}}}var Not={meta:{key:"pansou",name:"\u300C\u76D8\u300DPanSou",type:3},api:async t=>{t.post("/init",fEr),t.post("/home",pEr),t.post("/category",mEr),t.post("/detail",hEr),t.post("/play",Or),t.post("/search",AEr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var dE=async t=>{let e=await t.db.getObjectDefault("/live2vod",{});return{sources:e?.sources||t.config.live2vod?.sources||[],showMode:e?.showMode||t.config.live2vod?.showMode||"groups",def_pic:e?.def_pic||t.config.live2vod?.def_pic||"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/hipy-server/master/app/static/img/lives.jpg"}},Loe=async(t,e)=>{await t.db.push("/live2vod",e)},yEr=async t=>{await t.db.delete("/live2vod")};async function Boe(t){t.get("/config",async(e,r)=>{r.send({code:0,data:await dE(e.server)})}),t.put("/config",async(e,r)=>{await Loe(e.server,e.body),r.send({code:0})}),t.delete("/config",async(e,r)=>{await yEr(e.server),r.send({code:0})}),t.get("/sources",async(e,r)=>{let n=await dE(e.server);r.send({code:0,data:n.sources||[]})}),t.post("/sources",async(e,r)=>{let{name:n,url:s,img:i}=e.body;if(!n||!s){r.code(400).send({code:1,msg:"\u540D\u79F0\u548CURL\u4E0D\u80FD\u4E3A\u7A7A"});return}let a=await dE(e.server);a.sources=a.sources||[],a.sources.push({name:n,url:s,img:i||""}),await Loe(e.server,a),r.send({code:0})}),t.delete("/sources/:index",async(e,r)=>{let n=parseInt(e.params.index),s=await dE(e.server);s.sources&&n>=0&&n{if(i=i.trim(),i.startsWith("#EXTINF:")){let a=i.replace(/'/g,'"'),o="\u672A\u77E5\u9891\u9053",c="";try{let l=a.match(/group-title="(.*?)"/);l&&(o=l[1].trim())}catch{}try{let l=a.match(/tvg-logo="(.*?)"/);l&&(c=l[1].trim())}catch{}s={name:i.split(",").slice(-1)[0].trim(),logo:c,group:o}}else if(i.startsWith("http")&&s){let a=s.group;r[a]||(r[a]=[],n.push(a)),r[a].push({name:s.name,url:i,logo:s.logo}),s=null}}),{groups:r,groupNames:n}}function EEr(t){let e=t.split(` +`),r={},n=[],s="";return e.forEach(i=>{if(i=i.trim(),!!i){if(/,#/.test(i))s=i.split(",")[0].trim(),r[s]||(r[s]=[],n.push(s));else if(i.includes(",")&&s){let a=i.split(",");a.length>=2&&a[1].trim().startsWith("http")&&r[s].push({name:a[0].trim(),url:a[1].trim(),logo:""})}}}),{groups:r,groupNames:n}}async function J4(t){if(Cw[t])return Cw[t];let e=await xEr(t),r;/#EXTM3U/.test(e)?r=bEr(e):r=EEr(e);for(let n of Object.keys(r.groups)){let s=r.groups[n],i=new Map;s.forEach(a=>{i.has(a.name)?(i.get(a.name).urls.push(a.url),!i.get(a.name).logo&&a.logo&&(i.get(a.name).logo=a.logo)):i.set(a.name,{...a,urls:[a.url]})}),r.groups[n]=Array.from(i.values())}return Cw[t]=r,r}async function _Er(t,e){let r=await dE(t.server);Bo.sources=r.sources||[],Bo.def_pic=r.def_pic||Bo.def_pic,Object.keys(Cw).forEach(s=>delete Cw[s]),Y4={};let n=Bo.sources.map(async s=>{try{let i=await J4(s.url),a=[{n:"\u5168\u90E8",v:""}];i.groupNames.forEach(o=>{a.push({n:o,v:o})}),Y4[s.url]=[{key:"group",name:"",init:"",value:a}]}catch(i){console.error(`\u9884\u52A0\u8F7D\u76F4\u64AD\u6E90 ${s.name} \u5931\u8D25: ${i.message}`),Y4[s.url]=[]}});return await Promise.all(n),{}}async function SEr(t,e){return{class:Bo.sources.map(n=>({type_id:n.url,type_name:n.name})),filters:Y4}}async function vEr(t,e){let r=t.body.id,n=t.body.page||1,i=(t.body.filters||{}).group||"";if(n>1)return{page:n,pagecount:1,list:[]};let o=Bo.sources.find(c=>c.url===r)?.img||"";try{let c=await J4(r),u=[],l=i?[i]:c.groupNames;for(let d of l){let f=c.groups[d];f&&f.forEach(p=>{u.push({vod_id:r+"$"+d+"$"+p.name,vod_name:p.name,vod_pic:p.logo||o||Bo.def_pic,vod_remarks:d})})}return{page:1,pagecount:1,total:u.length,list:u}}catch(c){return console.error(`\u83B7\u53D6\u5206\u7C7B\u9875\u5931\u8D25: ${c.message}`),{page:1,pagecount:1,list:[]}}}async function CEr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=s.split("$"),a=i[0],o=i[1],c=i.slice(2).join("$"),u=Bo.sources.find(f=>f.url===a),l=u?.img||"",d=u?.name||"\u76F4\u64AD\u6E90";try{let m=(await J4(a)).groups[o]?.find(g=>g.name===c);if(!m){n.push({vod_id:s,vod_name:c,vod_pic:l||Bo.def_pic,vod_content:"\u672A\u627E\u5230\u9891\u9053",vod_play_from:d,vod_play_url:""});continue}let A=(m.urls||[m.url]).map((g,b)=>`\u7EBF\u8DEF${b+1}$${g}`);n.push({vod_id:s,vod_name:c,type_name:o,vod_pic:m.logo||l||Bo.def_pic,vod_content:`\u9891\u9053: ${c} \u5206\u7EC4: ${o} -\u6765\u6E90: ${d}`,vod_play_from:d,vod_play_url:A.join("#"),vod_remarks:o})}catch(f){console.error(`\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25: ${f.message}`),n.push({vod_id:s,vod_name:c,vod_pic:l||Mo.def_pic,vod_content:`\u83B7\u53D6\u5931\u8D25: ${f.message}`,vod_play_from:d,vod_play_url:""})}}return{list:n}}async function EEr(t,e){return{parse:0,url:t.body.id}}async function _Er(t,e){let r=t.body.wd,n=[];for(let s of Mo.sources)try{let i=await Y4(s.url),a=s.img||"",o=new RegExp(r,"i");for(let c of i.groupNames){let u=i.groups[c];u&&u.forEach(l=>{o.test(l.name)&&n.push({vod_id:s.url+"$"+c+"$"+l.name,vod_name:l.name,vod_pic:l.logo||a||Mo.def_pic,vod_remarks:`${s.name} \xB7 ${c}`})})}}catch(i){console.error(`\u641C\u7D22\u6E90 ${s.name} \u5931\u8D25: ${i.message}`)}return{page:1,pagecount:1,total:n.length,list:n}}async function SEr(t,e){try{let r=function(a){a.statusCode&&a.statusCode===500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);return s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class&&s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filters:{}}),s.category=i.json(),r(i.json()),s.category.list&&s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()))),i=await t.server.inject().post(`${n}/search`).payload({wd:"CCTV",page:1}),s.search=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Tot={meta:{key:"live2vod",name:"\u300C\u76F4\u300D\u76F4\u64AD",type:3},api:async t=>{t.post("/init",AEr),t.post("/home",yEr),t.post("/category",xEr),t.post("/detail",bEr),t.post("/play",EEr),t.post("/search",_Er),t.get("/test",SEr)}};var Loe=Re(Jn(),1);var Rot=process.env.JINPAI_HOST||"https://m.jiabaide.cn",J4="Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36",vEr=process.env.JINPAI_APP_KEY||"cb808529bae6b6be45ecfab29a4889bc",IEr={"User-Agent":J4,Referer:`${Rot}/`},CEr={typeList:["type",""],plotList:["class",""],districtList:["area",""],languageList:["lang",""],yearList:["year",""],serialList:["by",""]},TEr=[{n:"\u65F6\u95F4",v:"2"},{n:"\u4EBA\u6C14",v:"3"},{n:"\u8BC4\u5206",v:"4"}];function At(t){return String(t??"").trim()}function wEr(t){return At(t).replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim()}function Not(t={}){return Object.entries(t).filter(([,e])=>e!=null&&e!=="").map(([e,r])=>`${e}=${r}`).join("&")}function REr(t={}){let e=String(Date.now()),r={...t,key:vEr,t:e},n=Loe.default.SHA1(Loe.default.MD5(Not(r)).toString()).toString();return{...IEr,t:e,sign:n}}async function dE(t,e={}){let r=Not(e),n=`${Rot}${t}${r?`?${r}`:""}`,s=await he.get(n,{headers:REr(e),timeout:2e4,validateStatus:()=>!0});if(s.status<200||s.status>=400)throw new Error(`HTTP ${s.status} @ ${n}`);let i=typeof s.data=="string"?JSON.parse(s.data||"{}"):s.data||{};if(Number(i.code)&&Number(i.code)!==200)throw new Error(i.msg||`API code=${i.code}`);return i}function Oot(t={}){let e=At(t.vodPubdate||""),r=e?e.split("-")[0]:"";return{vod_id:At(t.vodId),vod_name:At(t.vodName),vod_pic:At(t.vodPic),vod_remarks:[At(t.vodRemarks),At(t.vodDoubanScore)].filter(Boolean).join("_"),vod_year:r,type_id:At(t.typeId),type_name:At(t.typeName)}}function NEr({vodId:t="",nid:e="",episodeName:r="",sourceName:n="",title:s=""}={}){return encodeURIComponent(JSON.stringify({vodId:At(t),nid:At(e),episodeName:At(r),sourceName:At(n),title:At(s)}))}function OEr(t=""){let e=At(t);if(!e)return null;let r=[e];try{let s=decodeURIComponent(e);s&&s!==e&&r.unshift(s)}catch{}for(let s of r)try{let i=JSON.parse(s);if(i&&typeof i=="object")return{vodId:At(i.vodId),nid:At(i.nid),episodeName:At(i.episodeName),sourceName:At(i.sourceName),title:At(i.title)}}catch{}let n=e.match(/^(.*?)@(.*)$/);return n?{vodId:At(n[1]),nid:At(n[2]),episodeName:"",sourceName:"\u91D1\u724C\u7EBF\u8DEF",title:""}:null}function PEr(...t){for(let e of t){if(Number.isFinite(e)&&e>0)return e;let r=At(e);if(!r)continue;let n=Number(r);if(Number.isFinite(n)&&n>0)return n;let s=r.match(/^(?:第\s*)?(\d+)\s*(?:集|话|期)?(?:[\s.、:_-].*)?$/);if(s){let i=Number(s[1]);if(Number.isFinite(i)&&i>0)return i}}return null}function kEr(t="",e=null){let r=At(t),n=r.match(/^(?:第\s*(\d+)\s*(?:集|话|期)\s*|(\d+)\s*[.、:_-]\s*)(.*)$/),s=n?Number(n[1]||n[2]):null,i=Number.isFinite(e)&&e>0?e:s,a=n?At(n[3]):r;return i?a?`\u7B2C${i}\u96C6 ${a}`:`\u7B2C${i}\u96C6`:a||"\u6B63\u7247"}function Pot(t,e,r){return{page:t,pagecount:t+(r.length>=e?1:0),limit:e,total:(t-1)*e+r.length+(r.length>=e?1:0),list:r}}function DEr(t=""){let e=At(t);return!e||/^\d{3,4}\s*p?$/i.test(e)?!1:/[a-z\u4e00-\u9fa5]/i.test(e)}function BEr(t=""){let e=At(t).match(/(\d{3,4})\s*p?/i);if(!e)return"";let r=Number.parseInt(e[1],10);return Number.isFinite(r)?r>=4320?"8K":r>=2160?"4K":r>=1080?"\u8D85\u6E05":r>=720?"\u9AD8\u6E05":r>=480?"\u6807\u6E05":r>=360?"\u6D41\u7545":"":""}function LEr(t={}){let e=[t.name,t.title,t.resolution].map(At).filter(Boolean),r=e.find(DEr);if(r)return r;let n=e.find(s=>/^\d{3,4}\s*p?$/i.test(s));return BEr(n)||n||"\u64AD\u653E"}function wot(t={}){let e=At(t.url||t.playUrl||t.m3u8);if(!e)return null;let r=[t.name,t.resolution,t.title].map(At).filter(Boolean).join(" "),n=LEr(t);return{name:n,qualityLabel:r,url:e,headers:{"User-Agent":J4},priority:kot({...t,name:n,qualityLabel:r})||1}}function kot(t={}){let e=At(`${t.qualityLabel||""} ${t.name||""}`).toLowerCase();if(!e)return 0;if(/(?:原画|原盤|原盘)/i.test(e))return 1e4;if(/(?:8k|4320)/i.test(e))return 4320;if(/(?:4k|2160)/i.test(e))return 2160;let r=e.match(/(\d{3,4})\s*p?/i);if(r){let n=Number.parseInt(r[1],10);if(Number.isFinite(n))return n}return/(?:蓝光|藍光|超清)/i.test(e)?1080:/(?:高清)/i.test(e)?720:/(?:æ ‡æ¸…|標清)/i.test(e)?480:/(?:流畅|流暢)/i.test(e)?360:0}function MEr(t=[]){return t.map((e,r)=>({item:e,index:r,score:kot(e)})).sort((e,r)=>r.score-e.score||e.index-r.index).map(({item:e})=>e)}async function WEr(){let t=[],e={},r=await dE("/api/mw-movie/anonymous/get/filer/type"),n=Array.isArray(r.data)?r.data:[];for(let a of n){let o=At(a.typeId),c=At(a.typeName);!o||!c||t.push({type_id:o,type_name:c})}let i=(await dE("/api/mw-movie/anonymous/v1/get/filer/list")).data||{};for(let a of t){let o=a.type_id;e[o]=[];for(let[c,[u,l]]of Object.entries(CEr)){let d=c==="serialList"?[...TEr]:[{n:"\u5168\u90E8",v:""}];if(c!=="serialList"){let f=i?.[o]?.[c]||[];for(let p of f){let m=At(p.itemText);m&&d.push({n:m,v:c==="typeList"?At(p.itemValue):m})}}d.length>1&&e[o].push({key:u,name:l,init:c==="serialList"?"2":"",value:d})}}return{classes:t,filters:e}}async function $Er(t,e){return{}}async function FEr(t,e){try{let{classes:r,filters:n}=await WEr();return{class:r,filters:n}}catch(r){return console.error("jinpai home failed:",r.message),{class:[],filters:{}}}}async function UEr(t,e){let r=At(t.body?.id||"1"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{},i=30;try{let a={area:s.area||"",lang:s.lang||"",pageNum:String(n),pageSize:String(i),sort:s.by||"2",sortBy:"1",type:s.type||"",type1:r,v_class:s.class||"",year:s.year||""},c=((await dE("/api/mw-movie/anonymous/video/list",a))?.data?.list||[]).map(Oot).filter(u=>u.vod_id&&u.vod_name);return Pot(n,i,c)}catch(a){return console.error("jinpai category failed:",a.message),{page:n,pagecount:n,limit:i,total:0,list:[]}}}async function qEr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=At(s);if(i)try{let o=(await dE("/api/mw-movie/anonymous/video/detail",{id:i})).data||{};if(!Object.keys(o).length)continue;let c=At(o.vodId||i),u=At(o.sourceName||"\u91D1\u724C\u7EBF\u8DEF"),d=(Array.isArray(o.episodeList)?o.episodeList:[]).map((f,p)=>{let m=At(f.nid||f.episodeId||f.id);if(!m)return"";let h=PEr(f.episodeNumber,f.name,p+1),A=kEr(f.name||`\u7B2C${h||p+1}\u96C6`,h),g=NEr({vodId:c,nid:m,episodeName:A,sourceName:u,title:o.vodName});return`${A}$${g}`}).filter(Boolean);n.push({vod_id:c,vod_name:At(o.vodName),vod_pic:At(o.vodPic),type_name:At(o.vodClass||o.typeName),vod_remarks:At(o.vodRemarks),vod_year:At(o.vodYear||At(o.vodPubdate).slice(0,4)),vod_area:At(o.vodArea),vod_lang:At(o.vodLang),vod_director:At(o.vodDirector),vod_actor:At(o.vodActor),vod_content:wEr(o.vodContent||o.content||""),vod_play_from:d.length?u:"",vod_play_url:d.join("#")})}catch(a){console.error("jinpai detail failed:",i,a.message)}}return{list:n}}async function jEr(t,e){let r=At(t.body?.id),n=OEr(r);if(!n?.vodId||!n?.nid)return{parse:0,url:"",header:{}};try{let s={clientType:"3",id:n.vodId,nid:n.nid},a=(await dE("/api/mw-movie/anonymous/v2/video/episode/url",s))?.data||{},o=Array.isArray(a.list)?a.list:[],c=MEr(o.map(wot).filter(Boolean)),u={"User-Agent":J4};if(!c.length){let l=wot(a);l&&c.push(l)}return c.length?{parse:0,url:c[0].url,data:c[0].url,urls:c,header:u}:{parse:0,url:"",data:"",urls:[],header:u}}catch(s){return console.error("jinpai play failed:",s.message),{parse:0,url:"",header:{"User-Agent":J4}}}}async function HEr(t,e){let r=At(t.body?.wd),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=30;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i={keyword:r,pageNum:String(n),pageSize:String(s)},o=((await dE("/api/mw-movie/anonymous/video/searchByWordPageable",i))?.data?.list||[]).map(Oot).filter(c=>c.vod_id&&c.vod_name);return Pot(n,s,o)}catch(i){return console.error("jinpai search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}var Dot={meta:{key:"jinpai",name:"\u300C\u76F4\u300D\u91D1\u724C",type:3},api:async t=>{t.post("/init",$Er),t.post("/home",FEr),t.post("/category",UEr),t.post("/detail",qEr),t.post("/play",jEr),t.post("/search",HEr)}};var Z0={host:"https://api.ztcgi.com",headers:{"User-Agent":"Mozilla/5.0 (Linux; Android 9; V2196A Build/PQ3A.190705.08211809; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/91.0.4472.114 Mobile Safari/537.36;webank/h5face;webank/1.0;netType:NETWORK_WIFI;appVersion:416;packageName:com.jp3.xg3",Referer:"https://api.ztcgi.com",Accept:"application/json"},imgHost:"https://img.ztfgh.com"};function QEr(){return[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"}]}function Moe(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:`${Z0.imgHost}${e.startsWith("/")?e:`/${e}`}`:""}async function GEr(t,e){return{}}async function KEr(t,e){return{class:QEr()}}async function VEr(t,e){let r=t.body.id,s=t.body.page||1;s==0&&(s=1);try{let i=`${Z0.host}/api/crumb/list?fcate_pid=${r}&category_id=&area=&year=&type=&sort=&page=${s}`,o=(await he.get(i,{headers:Z0.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(A=>({vod_id:String(A.id),vod_name:A.title||"",vod_pic:Moe(A.path||""),vod_remarks:A.mask||""})).filter(A=>A.vod_id&&A.vod_name),l=parseInt(s,10)||1,d=u.length>0,f=d?l+1:l,p=Number(o?.per_page||0)||u.length||20,m=Number(o?.total||0),h=(l-1)*p+u.length+(d?1:0);return{page:l,pagecount:f,limit:p,total:m>0?m:h,list:u}}catch{return{list:[],page:parseInt(s,10)||1,pagecount:1,limit:20,total:0}}}async function zEr(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r)try{let i=`${Z0.host}/api/video/detailv2?id=${s}`,o=(await he.get(i,{headers:Z0.headers})).data.data,c={vod_id:String(o.id||s),vod_name:o.title||"",vod_pic:Moe(o.thumbnail||o.path||o.tvimg||""),type_name:(o.types||[]).map(f=>f.name).join("/")||"",vod_year:o.year||"",vod_area:o.area||"",vod_remarks:o.mask||"",vod_actor:(o.actors||[]).map(f=>f.name).join("/")||"",vod_director:(o.directors||[]).map(f=>f.name).join("/")||"",vod_content:o.description||"",vod_play_from:"",vod_play_url:""},u=Array.isArray(o.source_list_source)?o.source_list_source:[],l=[],d=[];u.forEach((f,p)=>{let m=f.name||f.source_name||`\u7EBF\u8DEF${p+1}`;if(m==="\u5E38\u89C4\u7EBF\u8DEF")return;let h=Array.isArray(f.source_list)?f.source_list:[],A=[];h.forEach((g,b)=>{let y=g.source_name||g.name||`\u7B2C${b+1}\u96C6`,x=g.url||g.play_url||"";x&&A.push(`${y}$${x}`)}),A.length>0&&(l.push(m),d.push(A.join("#")))}),c.vod_play_from=l.join("$$$"),c.vod_play_url=d.join("$$$"),n.push(c)}catch{}return{list:n}}async function YEr(t,e){let r=t.body.id,n=r.startsWith("//")?`https:${r}`:r;return n.includes(".m3u8")||n.includes(".mp4")?{parse:0,url:n,header:Z0.headers}:{parse:1,url:n}}async function JEr(t,e){let r=t.body.page,n=t.body.wd,s=r||1;s==0&&(s=1);try{let i=`${Z0.host}/api/v2/search/videoV2?key=${encodeURIComponent(n)}&category_id=88&page=${s}&pageSize=20`,o=(await he.get(i,{headers:Z0.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(d=>({vod_id:String(d.id),vod_name:d.title||"",vod_pic:Moe(d.thumbnail||d.path||""),vod_remarks:d.mask||""})).filter(d=>d.vod_id&&d.vod_name),l=o.total||0;return{page:parseInt(s),pagecount:u.length>0?parseInt(s)+1:parseInt(s),total:l,list:u}}catch{return{list:[],page:parseInt(s),pagecount:1}}}async function XEr(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home.class.length>0&&(s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1}),n.category=s.json(),n.category.list.length>0&&(s=await t.server.inject().post(`${r}/detail`).payload({id:n.category.list[0].vod_id}),n.detail=s.json(),n.detail.list&&n.detail.list.length>0))){n.play=[];for(let i of n.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c{t.post("/init",GEr),t.post("/home",KEr),t.post("/category",VEr),t.post("/detail",zEr),t.post("/play",YEr),t.post("/search",JEr),t.get("/test",XEr)}};var fE=Re(require("node:crypto"),1);var Lot={host:"https://api.w32z7vtd.com",headers:{"Cache-Control":"no-cache",Version:"2406025",PackageName:"com.uf076bf0c246.qe439f0d5e.m8aaf56b725a.ifeb647346f",Ver:"1.9.2",Referer:"https://api.w32z7vtd.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"okhttp/3.12.0"}},Woe={"User-Agent":"Lavf/57.83.100"},ZEr=`-----BEGIN PRIVATE KEY----- +\u6765\u6E90: ${d}`,vod_play_from:d,vod_play_url:A.join("#"),vod_remarks:o})}catch(f){console.error(`\u83B7\u53D6\u8BE6\u60C5\u5931\u8D25: ${f.message}`),n.push({vod_id:s,vod_name:c,vod_pic:l||Bo.def_pic,vod_content:`\u83B7\u53D6\u5931\u8D25: ${f.message}`,vod_play_from:d,vod_play_url:""})}}return{list:n}}async function IEr(t,e){return{parse:0,url:t.body.id}}async function TEr(t,e){let r=t.body.wd,n=[];for(let s of Bo.sources)try{let i=await J4(s.url),a=s.img||"",o=new RegExp(r,"i");for(let c of i.groupNames){let u=i.groups[c];u&&u.forEach(l=>{o.test(l.name)&&n.push({vod_id:s.url+"$"+c+"$"+l.name,vod_name:l.name,vod_pic:l.logo||a||Bo.def_pic,vod_remarks:`${s.name} \xB7 ${c}`})})}}catch(i){console.error(`\u641C\u7D22\u6E90 ${s.name} \u5931\u8D25: ${i.message}`)}return{page:1,pagecount:1,total:n.length,list:n}}async function wEr(t,e){try{let r=function(a){a.statusCode&&a.statusCode===500&&console.error(a)},n=t.server.prefix,s={},i=await t.server.inject().post(`${n}/init`);return s.init=i.json(),r(i.json()),i=await t.server.inject().post(`${n}/home`),s.home=i.json(),r(i.json()),s.home.class&&s.home.class.length>0&&(i=await t.server.inject().post(`${n}/category`).payload({id:s.home.class[0].type_id,page:1,filters:{}}),s.category=i.json(),r(i.json()),s.category.list&&s.category.list.length>0&&(i=await t.server.inject().post(`${n}/detail`).payload({id:s.category.list[0].vod_id}),s.detail=i.json(),r(i.json()))),i=await t.server.inject().post(`${n}/search`).payload({wd:"CCTV",page:1}),s.search=i.json(),r(i.json()),s}catch(r){return console.error(r),e.code(500),{err:r.message,tip:"check debug console output"}}}var Oot={meta:{key:"live2vod",name:"\u300C\u76F4\u300D\u76F4\u64AD",type:3},api:async t=>{t.post("/init",_Er),t.post("/home",SEr),t.post("/category",vEr),t.post("/detail",CEr),t.post("/play",IEr),t.post("/search",TEr),t.get("/test",wEr)}};var Moe=Re(Jn(),1);var Dot=process.env.JINPAI_HOST||"https://m.jiabaide.cn",X4="Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36",REr=process.env.JINPAI_APP_KEY||"cb808529bae6b6be45ecfab29a4889bc",NEr={"User-Agent":X4,Referer:`${Dot}/`},OEr={typeList:["type",""],plotList:["class",""],districtList:["area",""],languageList:["lang",""],yearList:["year",""],serialList:["by",""]},PEr=[{n:"\u65F6\u95F4",v:"2"},{n:"\u4EBA\u6C14",v:"3"},{n:"\u8BC4\u5206",v:"4"}];function At(t){return String(t??"").trim()}function DEr(t){return At(t).replace(/<[^>]*>/g," ").replace(/\s+/g," ").trim()}function kot(t={}){return Object.entries(t).filter(([,e])=>e!=null&&e!=="").map(([e,r])=>`${e}=${r}`).join("&")}function kEr(t={}){let e=String(Date.now()),r={...t,key:REr,t:e},n=Moe.default.SHA1(Moe.default.MD5(kot(r)).toString()).toString();return{...NEr,t:e,sign:n}}async function fE(t,e={}){let r=kot(e),n=`${Dot}${t}${r?`?${r}`:""}`,s=await he.get(n,{headers:kEr(e),timeout:2e4,validateStatus:()=>!0});if(s.status<200||s.status>=400)throw new Error(`HTTP ${s.status} @ ${n}`);let i=typeof s.data=="string"?JSON.parse(s.data||"{}"):s.data||{};if(Number(i.code)&&Number(i.code)!==200)throw new Error(i.msg||`API code=${i.code}`);return i}function Lot(t={}){let e=At(t.vodPubdate||""),r=e?e.split("-")[0]:"";return{vod_id:At(t.vodId),vod_name:At(t.vodName),vod_pic:At(t.vodPic),vod_remarks:[At(t.vodRemarks),At(t.vodDoubanScore)].filter(Boolean).join("_"),vod_year:r,type_id:At(t.typeId),type_name:At(t.typeName)}}function LEr({vodId:t="",nid:e="",episodeName:r="",sourceName:n="",title:s=""}={}){return encodeURIComponent(JSON.stringify({vodId:At(t),nid:At(e),episodeName:At(r),sourceName:At(n),title:At(s)}))}function BEr(t=""){let e=At(t);if(!e)return null;let r=[e];try{let s=decodeURIComponent(e);s&&s!==e&&r.unshift(s)}catch{}for(let s of r)try{let i=JSON.parse(s);if(i&&typeof i=="object")return{vodId:At(i.vodId),nid:At(i.nid),episodeName:At(i.episodeName),sourceName:At(i.sourceName),title:At(i.title)}}catch{}let n=e.match(/^(.*?)@(.*)$/);return n?{vodId:At(n[1]),nid:At(n[2]),episodeName:"",sourceName:"\u91D1\u724C\u7EBF\u8DEF",title:""}:null}function MEr(...t){for(let e of t){if(Number.isFinite(e)&&e>0)return e;let r=At(e);if(!r)continue;let n=Number(r);if(Number.isFinite(n)&&n>0)return n;let s=r.match(/^(?:第\s*)?(\d+)\s*(?:集|话|期)?(?:[\s.、:_-].*)?$/);if(s){let i=Number(s[1]);if(Number.isFinite(i)&&i>0)return i}}return null}function WEr(t="",e=null){let r=At(t),n=r.match(/^(?:第\s*(\d+)\s*(?:集|话|期)\s*|(\d+)\s*[.、:_-]\s*)(.*)$/),s=n?Number(n[1]||n[2]):null,i=Number.isFinite(e)&&e>0?e:s,a=n?At(n[3]):r;return i?a?`\u7B2C${i}\u96C6 ${a}`:`\u7B2C${i}\u96C6`:a||"\u6B63\u7247"}function Bot(t,e,r){return{page:t,pagecount:t+(r.length>=e?1:0),limit:e,total:(t-1)*e+r.length+(r.length>=e?1:0),list:r}}function $Er(t=""){let e=At(t);return!e||/^\d{3,4}\s*p?$/i.test(e)?!1:/[a-z\u4e00-\u9fa5]/i.test(e)}function FEr(t=""){let e=At(t).match(/(\d{3,4})\s*p?/i);if(!e)return"";let r=Number.parseInt(e[1],10);return Number.isFinite(r)?r>=4320?"8K":r>=2160?"4K":r>=1080?"\u8D85\u6E05":r>=720?"\u9AD8\u6E05":r>=480?"\u6807\u6E05":r>=360?"\u6D41\u7545":"":""}function UEr(t={}){let e=[t.name,t.title,t.resolution].map(At).filter(Boolean),r=e.find($Er);if(r)return r;let n=e.find(s=>/^\d{3,4}\s*p?$/i.test(s));return FEr(n)||n||"\u64AD\u653E"}function Pot(t={}){let e=At(t.url||t.playUrl||t.m3u8);if(!e)return null;let r=[t.name,t.resolution,t.title].map(At).filter(Boolean).join(" "),n=UEr(t);return{name:n,qualityLabel:r,url:e,headers:{"User-Agent":X4},priority:Mot({...t,name:n,qualityLabel:r})||1}}function Mot(t={}){let e=At(`${t.qualityLabel||""} ${t.name||""}`).toLowerCase();if(!e)return 0;if(/(?:原画|原盤|原盘)/i.test(e))return 1e4;if(/(?:8k|4320)/i.test(e))return 4320;if(/(?:4k|2160)/i.test(e))return 2160;let r=e.match(/(\d{3,4})\s*p?/i);if(r){let n=Number.parseInt(r[1],10);if(Number.isFinite(n))return n}return/(?:蓝光|藍光|超清)/i.test(e)?1080:/(?:高清)/i.test(e)?720:/(?:æ ‡æ¸…|標清)/i.test(e)?480:/(?:流畅|流暢)/i.test(e)?360:0}function qEr(t=[]){return t.map((e,r)=>({item:e,index:r,score:Mot(e)})).sort((e,r)=>r.score-e.score||e.index-r.index).map(({item:e})=>e)}async function jEr(){let t=[],e={},r=await fE("/api/mw-movie/anonymous/get/filer/type"),n=Array.isArray(r.data)?r.data:[];for(let a of n){let o=At(a.typeId),c=At(a.typeName);!o||!c||t.push({type_id:o,type_name:c})}let i=(await fE("/api/mw-movie/anonymous/v1/get/filer/list")).data||{};for(let a of t){let o=a.type_id;e[o]=[];for(let[c,[u,l]]of Object.entries(OEr)){let d=c==="serialList"?[...PEr]:[{n:"\u5168\u90E8",v:""}];if(c!=="serialList"){let f=i?.[o]?.[c]||[];for(let p of f){let m=At(p.itemText);m&&d.push({n:m,v:c==="typeList"?At(p.itemValue):m})}}d.length>1&&e[o].push({key:u,name:l,init:c==="serialList"?"2":"",value:d})}}return{classes:t,filters:e}}async function HEr(t,e){return{}}async function QEr(t,e){try{let{classes:r,filters:n}=await jEr();return{class:r,filters:n}}catch(r){return console.error("jinpai home failed:",r.message),{class:[],filters:{}}}}async function GEr(t,e){let r=At(t.body?.id||"1"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{},i=30;try{let a={area:s.area||"",lang:s.lang||"",pageNum:String(n),pageSize:String(i),sort:s.by||"2",sortBy:"1",type:s.type||"",type1:r,v_class:s.class||"",year:s.year||""},c=((await fE("/api/mw-movie/anonymous/video/list",a))?.data?.list||[]).map(Lot).filter(u=>u.vod_id&&u.vod_name);return Bot(n,i,c)}catch(a){return console.error("jinpai category failed:",a.message),{page:n,pagecount:n,limit:i,total:0,list:[]}}}async function VEr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=At(s);if(i)try{let o=(await fE("/api/mw-movie/anonymous/video/detail",{id:i})).data||{};if(!Object.keys(o).length)continue;let c=At(o.vodId||i),u=At(o.sourceName||"\u91D1\u724C\u7EBF\u8DEF"),d=(Array.isArray(o.episodeList)?o.episodeList:[]).map((f,p)=>{let m=At(f.nid||f.episodeId||f.id);if(!m)return"";let h=MEr(f.episodeNumber,f.name,p+1),A=WEr(f.name||`\u7B2C${h||p+1}\u96C6`,h),g=LEr({vodId:c,nid:m,episodeName:A,sourceName:u,title:o.vodName});return`${A}$${g}`}).filter(Boolean);n.push({vod_id:c,vod_name:At(o.vodName),vod_pic:At(o.vodPic),type_name:At(o.vodClass||o.typeName),vod_remarks:At(o.vodRemarks),vod_year:At(o.vodYear||At(o.vodPubdate).slice(0,4)),vod_area:At(o.vodArea),vod_lang:At(o.vodLang),vod_director:At(o.vodDirector),vod_actor:At(o.vodActor),vod_content:DEr(o.vodContent||o.content||""),vod_play_from:d.length?u:"",vod_play_url:d.join("#")})}catch(a){console.error("jinpai detail failed:",i,a.message)}}return{list:n}}async function zEr(t,e){let r=At(t.body?.id),n=BEr(r);if(!n?.vodId||!n?.nid)return{parse:0,url:"",header:{}};try{let s={clientType:"3",id:n.vodId,nid:n.nid},a=(await fE("/api/mw-movie/anonymous/v2/video/episode/url",s))?.data||{},o=Array.isArray(a.list)?a.list:[],c=qEr(o.map(Pot).filter(Boolean)),u={"User-Agent":X4};if(!c.length){let l=Pot(a);l&&c.push(l)}return c.length?{parse:0,url:c[0].url,data:c[0].url,urls:c,header:u}:{parse:0,url:"",data:"",urls:[],header:u}}catch(s){return console.error("jinpai play failed:",s.message),{parse:0,url:"",header:{"User-Agent":X4}}}}async function KEr(t,e){let r=At(t.body?.wd),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=30;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i={keyword:r,pageNum:String(n),pageSize:String(s)},o=((await fE("/api/mw-movie/anonymous/video/searchByWordPageable",i))?.data?.list||[]).map(Lot).filter(c=>c.vod_id&&c.vod_name);return Bot(n,s,o)}catch(i){return console.error("jinpai search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}var Wot={meta:{key:"jinpai",name:"\u300C\u76F4\u300D\u91D1\u724C",type:3},api:async t=>{t.post("/init",HEr),t.post("/home",QEr),t.post("/category",GEr),t.post("/detail",VEr),t.post("/play",zEr),t.post("/search",KEr)}};var Z0={host:"https://api.ztcgi.com",headers:{"User-Agent":"Mozilla/5.0 (Linux; Android 9; V2196A Build/PQ3A.190705.08211809; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/91.0.4472.114 Mobile Safari/537.36;webank/h5face;webank/1.0;netType:NETWORK_WIFI;appVersion:416;packageName:com.jp3.xg3",Referer:"https://api.ztcgi.com",Accept:"application/json"},imgHost:"https://img.ztfgh.com"};function YEr(){return[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"}]}function Woe(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:`${Z0.imgHost}${e.startsWith("/")?e:`/${e}`}`:""}async function JEr(t,e){return{}}async function XEr(t,e){return{class:YEr()}}async function ZEr(t,e){let r=t.body.id,s=t.body.page||1;s==0&&(s=1);try{let i=`${Z0.host}/api/crumb/list?fcate_pid=${r}&category_id=&area=&year=&type=&sort=&page=${s}`,o=(await he.get(i,{headers:Z0.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(A=>({vod_id:String(A.id),vod_name:A.title||"",vod_pic:Woe(A.path||""),vod_remarks:A.mask||""})).filter(A=>A.vod_id&&A.vod_name),l=parseInt(s,10)||1,d=u.length>0,f=d?l+1:l,p=Number(o?.per_page||0)||u.length||20,m=Number(o?.total||0),h=(l-1)*p+u.length+(d?1:0);return{page:l,pagecount:f,limit:p,total:m>0?m:h,list:u}}catch{return{list:[],page:parseInt(s,10)||1,pagecount:1,limit:20,total:0}}}async function e1r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r)try{let i=`${Z0.host}/api/video/detailv2?id=${s}`,o=(await he.get(i,{headers:Z0.headers})).data.data,c={vod_id:String(o.id||s),vod_name:o.title||"",vod_pic:Woe(o.thumbnail||o.path||o.tvimg||""),type_name:(o.types||[]).map(f=>f.name).join("/")||"",vod_year:o.year||"",vod_area:o.area||"",vod_remarks:o.mask||"",vod_actor:(o.actors||[]).map(f=>f.name).join("/")||"",vod_director:(o.directors||[]).map(f=>f.name).join("/")||"",vod_content:o.description||"",vod_play_from:"",vod_play_url:""},u=Array.isArray(o.source_list_source)?o.source_list_source:[],l=[],d=[];u.forEach((f,p)=>{let m=f.name||f.source_name||`\u7EBF\u8DEF${p+1}`;if(m==="\u5E38\u89C4\u7EBF\u8DEF")return;let h=Array.isArray(f.source_list)?f.source_list:[],A=[];h.forEach((g,b)=>{let y=g.source_name||g.name||`\u7B2C${b+1}\u96C6`,x=g.url||g.play_url||"";x&&A.push(`${y}$${x}`)}),A.length>0&&(l.push(m),d.push(A.join("#")))}),c.vod_play_from=l.join("$$$"),c.vod_play_url=d.join("$$$"),n.push(c)}catch{}return{list:n}}async function t1r(t,e){let r=t.body.id,n=r.startsWith("//")?`https:${r}`:r;return n.includes(".m3u8")||n.includes(".mp4")?{parse:0,url:n,header:Z0.headers}:{parse:1,url:n}}async function r1r(t,e){let r=t.body.page,n=t.body.wd,s=r||1;s==0&&(s=1);try{let i=`${Z0.host}/api/v2/search/videoV2?key=${encodeURIComponent(n)}&category_id=88&page=${s}&pageSize=20`,o=(await he.get(i,{headers:Z0.headers})).data,u=(Array.isArray(o.data)?o.data:[]).map(d=>({vod_id:String(d.id),vod_name:d.title||"",vod_pic:Woe(d.thumbnail||d.path||""),vod_remarks:d.mask||""})).filter(d=>d.vod_id&&d.vod_name),l=o.total||0;return{page:parseInt(s),pagecount:u.length>0?parseInt(s)+1:parseInt(s),total:l,list:u}}catch{return{list:[],page:parseInt(s),pagecount:1}}}async function n1r(t,e){try{let r=t.server.prefix,n={},s=await t.server.inject().post(`${r}/init`);if(n.init=s.json(),s=await t.server.inject().post(`${r}/home`),n.home=s.json(),n.home.class.length>0&&(s=await t.server.inject().post(`${r}/category`).payload({id:n.home.class[0].type_id,page:1}),n.category=s.json(),n.category.list.length>0&&(s=await t.server.inject().post(`${r}/detail`).payload({id:n.category.list[0].vod_id}),n.detail=s.json(),n.detail.list&&n.detail.list.length>0))){n.play=[];for(let i of n.detail.list){let a=i.vod_play_from.split("$$$"),o=i.vod_play_url.split("$$$");for(let c=0;c{t.post("/init",JEr),t.post("/home",XEr),t.post("/category",ZEr),t.post("/detail",e1r),t.post("/play",t1r),t.post("/search",r1r),t.get("/test",n1r)}};var pE=Re(require("node:crypto"),1);var Fot={host:"https://api.w32z7vtd.com",headers:{"Cache-Control":"no-cache",Version:"2406025",PackageName:"com.uf076bf0c246.qe439f0d5e.m8aaf56b725a.ifeb647346f",Ver:"1.9.2",Referer:"https://api.w32z7vtd.com","Content-Type":"application/x-www-form-urlencoded","User-Agent":"okhttp/3.12.0"}},$oe={"User-Agent":"Lavf/57.83.100"},s1r=`-----BEGIN PRIVATE KEY----- MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1 ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU 1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcK @@ -10031,8 +10031,8 @@ jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZ K7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1b L3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+L1rG8oa t5lYKfpe8k83ZA== ------END PRIVATE KEY-----`,Mot="Qmxi5ciWXbQzkr7o+SUNiUuQxQEf8/AVyUWY4T/BGhcXBIUz4nOyHBGf9A4KbM0iKF3yp9M7WAY0rrs5PzdTAOB45plcS2zZ0wUibcXuGJ29VVGRWKGwE9zu2vLwhfgjTaaDpXo4rby+7GxXTktzJmxvneOUdYeHi+PZsThlvPI=",$oe="1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79",Iw={INDEX_LIST:"/App/IndexList/indexList",PLAY_INFO:"/App/IndexPlay/playInfo",VURL_SHOW:"/App/Resource/Vurl/show",VURL_DETAIL:"/App/Resource/VurlDetail/showOne",FIND_MORE:"/App/Index/findMoreVod"},e1r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"64",type_name:"\u77ED\u5267"}],t1r={1:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],2:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],3:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],4:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],64:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}]},vw=new Map,r1r={category:3e5,detail:3e5,play:3e5,search:6e4};function n1r(t){return fE.default.createHash("md5").update(t).digest("hex")}function s1r(t){let e=Buffer.from("mvXBSW7ekreItNsT","utf8"),r=Buffer.from("2U3IrJL8szAKp0Fj","utf8"),n=fE.default.createCipheriv("aes-128-cbc",e,r),s=n.update(t,"utf8","hex");return s+=n.final("hex"),s.toUpperCase()}function i1r(t,e,r){let n=Buffer.from(e,"utf8"),s=Buffer.from(r,"utf8"),i=fE.default.createDecipheriv("aes-128-cbc",n,s),a=i.update(t,"hex","utf8");return a+=i.final("utf8"),a}function a1r(t){let e=Buffer.from(t,"base64"),r=256,n=[];for(let s=0;se.expire?(vw.delete(t),null):e.data:null}function u1r(t,e,r){vw.set(t,{data:e,expire:Date.now()+(r1r[r]||6e4)}),vw.size>200&&vw.clear()}async function Cw(t,e,r="category"){let n=`${e}|${JSON.stringify(t)}`;if(r!=="none"){let p=c1r(n);if(p)return p}let s=Math.floor(Date.now()/1e3).toString(),i=s1r(JSON.stringify(t)),a=o1r(i,s),o=new URLSearchParams({token:$oe,token_id:"",phone_type:"1",time:s,phone_model:"xiaomi-22021211rc",keys:Mot,request_key:i,signature:a,app_id:"1",ad_version:"1"}).toString(),c=await he.post(`${Lot.host}${e}`,o,{headers:Lot.headers});if(c.status!==200||!c.data?.data?.keys||!c.data?.data?.response_key)return null;let u=a1r(c.data.data.keys);if(!u)return null;let l=JSON.parse(u),d=i1r(c.data.data.response_key,l.key,l.iv);if(!d)return null;let f=JSON.parse(d);return r!=="none"&&f&&u1r(n,f,r),f}function Wot(t){return{vod_id:`${t.vod_id}/${t.vod_continu||0}`,vod_name:t.vod_name,vod_pic:t.vod_pic,vod_remarks:(t.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${t.vod_continu}\u96C6`}}function l1r(t){let e=String(t||"").trim();if(!e)return"";let r=e.split("/")[0];return/^\d+$/.test(r)?r:e.match(/(\d+)/)?.[1]||e}function X4(t){let e=String(t||"").toLowerCase().replace("p","");return e==="8k"?100:e==="4k"||e==="2160"?90:e==="1440"?80:e==="1080"?70:e==="720"?60:e==="\u8D85\u6E05"?50:e==="\u9AD8\u6E05"?40:e==="\u6807\u6E05"?30:10}async function d1r(t,e){return{}}async function f1r(t,e){return{class:e1r,filters:t1r}}async function p1r(t,e){let r=t.body.id,n=String(t.body.page||1),s=t.body.filters||{};if(!r)return{page:1,pagecount:0,list:[]};let i=await Cw({area:s.area||"0",year:s.year||"0",pageSize:"20",sort:s.sort||"d_id",page:n,tid:String(r)},Iw.INDEX_LIST,"category"),a=Array.isArray(i?.list)?i.list.map(u=>Wot(u)):[],o=parseInt(n,10)||1,c=parseInt(i?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function m1r(t,e){let r=String(t.body.wd||"").trim(),n=String(t.body.page||1);if(!r)return{page:1,pagecount:0,list:[]};let s=await Cw({keywords:r,order_val:"1",page:n},Iw.FIND_MORE,"search"),a=(Array.isArray(s?.list)?s.list:[]).filter(u=>String(u?.vod_name||"").toLowerCase().includes(r.toLowerCase())).map(u=>Wot(u)),o=parseInt(n,10)||1,c=parseInt(s?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function h1r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=String(s||""),a=l1r(i);if(!a)continue;let[o,c]=await Promise.all([Cw({token_id:"1649412",vod_id:a,mobile_time:Math.floor(Date.now()/1e3).toString(),tokename:$oe},Iw.PLAY_INFO,"detail"),Cw({vurl_cloud_id:"2",vod_d_id:a},Iw.VURL_SHOW,"detail")]),u=o?.vodInfo;if(!u)continue;let l=[],d=Array.isArray(c?.list)?c.list:[];d.forEach((f,p)=>{let m=f?.play;if(!m||typeof m!="object")return;let h=[],A=[];if(Object.entries(m).forEach(([y,x])=>{x?.param&&(h.push(String(x.param)),A.push(String(y)))}),!h.length)return;A.sort((y,x)=>X4(x)-X4(y));let g=d.length===1?String(u.vod_name||"\u6B63\u7247"):String(f?.name||p+1),b=`${h[0]}||${A.join("@")}`;l.push(`${g}$${b}`)}),n.push({vod_id:i,vod_name:u.vod_name||"",vod_pic:u.vod_pic||"",vod_year:u.vod_year||"",vod_area:u.vod_area||"",vod_remarks:u.vod_remarks||(Number(u.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${u.vod_continu}\u96C6`),vod_actor:u.vod_actor||"",vod_director:u.vod_director||"",vod_content:String(u.vod_use_content||u.vod_content||"").trim(),vod_play_from:l.length>0?"\u74DC\u5B50\u4E13\u7EBF":"",vod_play_url:l.length>0?l.join("#"):""})}return{list:n}}async function g1r(t,e){let r=String(t.body.id||"").trim();if(!r)return{parse:0,url:"",header:Woe};let n=r.split("||");if(n.length<2)return{parse:0,url:r,header:Woe};let s={};n[0].split("&").forEach(c=>{let[u,l]=c.split("=");u&&(s[u]=l||"")});let i=n[1].split("@").filter(Boolean);i.length>0&&(i.sort((c,u)=>X4(u)-X4(c)),s.resolution=i[0]);let a=await Cw(s,Iw.VURL_DETAIL,"play");return{parse:0,url:String(a?.url||"").trim(),header:Woe}}var $ot={meta:{key:"guazi",name:"\u300C\u76F4\u300D\u74DC\u5B50",type:3},api:async t=>{t.post("/init",d1r),t.post("/home",f1r),t.post("/category",p1r),t.post("/detail",h1r),t.post("/play",g1r),t.post("/search",m1r)}};var Kf=String(process.env.PPNIX_HOST||"https://www.ppnix.com").trim(),A1r=String(process.env.PPNIX_LANG_PATH||"/cn").trim(),Uot=String(process.env.PPNIX_UA||"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36").trim(),qot=24,y1r=10*60*1e3,x1r=[{type_id:"movie",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u7535\u89C6\u5267"}],b1r={time:"newstime",hits:"onclick",score:"rating",newstime:"newstime",onclick:"onclick",rating:"rating"},Ql={expiresAt:0,filters:{},filterDef:{movie:{class:"",area:"",year:"",by:"newstime"},tv:{class:"",area:"",year:"",by:"newstime"}}};function gn(t){return t==null?"":String(t).trim()}function E1r(t=""){let e=gn(t);return e?e.startsWith("/")?e.replace(/\/+$/,""):`/${e.replace(/\/+$/,"")}`:"/cn"}var zg=E1r(A1r);function jot(t=""){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?`${Kf}${e}`:`${Kf}/${e}`:`${Kf}${zg}/`}function Vg(t){return gn(t).replace(//gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/gi,"'").replace(/</gi,"<").replace(/>/gi,">").replace(/\s+/g," ").trim()}function Hot(t){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${Kf}${e}`:`${Kf}/${e}`:""}function _1r(t){let e=[],r=new Set;for(let n of Array.isArray(t)?t:[]){let s=gn(n?.vod_id||n?.vod_name);!s||r.has(s)||(r.add(s),e.push(n))}return e}function Qot(t){let e=gn(t);return e?/^https?:\/\//i.test(e)||e.startsWith("/")?e:e.startsWith("movie/")||e.startsWith("tv/")?`${zg}/${e}`:`${zg}/${e.replace(/^\/+/,"")}`:""}async function Tw(t,e={}){let r=jot(t),n={"User-Agent":Uot,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",Referer:e.referer||`${Kf}${zg}/`,...e.headers||{}},s=await he({url:r,method:e.method||"GET",headers:n,data:e.body,timeout:e.timeout||2e4,responseType:"text",validateStatus:()=>!0,maxRedirects:5}),i=Number(s.status||0),a=typeof s.data=="string"?s.data:String(s.data||"");if(i!==200)throw new Error(`HTTP ${i||"unknown"} @ ${r}`);return a}function Got(t,e,r=""){let n=[];return t(e).each((s,i)=>{let a=t(i),o=a.find("a.thumbnail, h2 a, a").first(),c=gn(o.attr("href")||a.find("h2 a").attr("href")||""),u=Qot(c),l=Vg(a.find("img.thumb").attr("alt")||a.find("h2 a").text()||o.text()),d=Hot(a.find("img.thumb").attr("src")||a.find("img.thumb").attr("data-src")||""),f=Vg(a.find("footer .rate").text()||a.find("footer").text());!u||!l||n.push({vod_id:u,vod_name:l,vod_pic:d,vod_remarks:f,type_id:r,type_name:r==="movie"?"\u7535\u5F71":r==="tv"?"\u7535\u89C6\u5267":""})}),_1r(n)}function S1r(t=""){let e=(t.match(/infoid\s*=\s*(\d+)/)||[])[1]||"",r=t.match(/m3u8\s*=\s*\[(.*?)\]/s);if(!r)return{infoId:e,items:[]};let n=[],s=/'([^']*)'|"([^"]*)"/g,i;for(;(i=s.exec(r[1]))!==null;){let a=gn(i[1]||i[2]||"");a&&n.push(a)}return{infoId:e,items:[...new Set(n)]}}function v1r(t){let e=gn(t.infoId||""),r=encodeURIComponent(gn(t.param||"")),n=encodeURIComponent(gn(t.referer||"")),s=encodeURIComponent(gn(t.episodeName||""));return`${e}|${r}|${n}|${s}`}function I1r(t){try{let e=String(t||"").split("|");return{infoId:gn(e[0]||""),param:decodeURIComponent(e[1]||""),referer:decodeURIComponent(e[2]||""),episodeName:decodeURIComponent(e[3]||"")}}catch{return{}}}function C1r(t={}){let e=t&&typeof t=="object"?t:{};return{class:gn(e.class||e.type||e.cate||""),area:gn(e.area||""),year:gn(e.year||""),by:gn(e.by||e.sort||"newstime")||"newstime"}}function Uoe(t,e=1,r={}){let n=C1r(r),s=n.class,i=n.area,a=n.year,o=b1r[n.by]||"newstime",c=Number(e)<=1?"":`${Number(e)-1}`;return`${zg}/${t}/${s}-${i}-${a}-${c}-${o}.html`}function T1r(t=[]){return[...new Set((t||[]).map(e=>gn(e)).filter(Boolean))]}function Foe(t,e,r=""){let n=[];return t(e).find("a").each((s,i)=>{let a=gn(t(i).text());!a||a===r||n.push(a)}),T1r(n)}function Fot(t){let e=[],r=t(".lists-content.filter dl");if(!r.length)return e;let n=Foe(t,r.eq(0),"\u5168\u90E8");n.length&&e.push({key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...n.map(a=>({n:a,v:a}))]});let s=Foe(t,r.eq(1),"\u5168\u90E8");s.length&&e.push({key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...s.map(a=>({n:a,v:a}))]});let i=Foe(t,r.eq(2),"\u5168\u90E8");return i.length&&e.push({key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...i.map(a=>({n:a,v:a}))]}),e.push({key:"by",name:"",init:"newstime",value:[{n:"\u65F6\u95F4",v:"newstime"},{n:"\u4EBA\u6C14",v:"onclick"},{n:"\u8BC4\u5206",v:"rating"}]}),e}async function w1r(t=!1){if(!t&&Ql.expiresAt>Date.now()&&Object.keys(Ql.filters).length>0)return{filters:Ql.filters,filter_def:Ql.filterDef};try{let[e,r]=await Promise.all([Tw(Uoe("movie",1,{})),Tw(Uoe("tv",1,{}))]);Ql.filters={movie:Fot(Me(e)),tv:Fot(Me(r))},Ql.expiresAt=Date.now()+y1r}catch{if(!Object.keys(Ql.filters).length){let e=[{key:"by",name:"",init:"newstime",value:[{n:"\u6309\u65F6\u95F4",v:"newstime"},{n:"\u6309\u4EBA\u6C14",v:"onclick"},{n:"\u6309\u8BC4\u5206",v:"rating"}]}];Ql.filters={movie:e,tv:e}}}return{filters:Ql.filters,filter_def:Ql.filterDef}}async function R1r(t,e){return{}}async function N1r(t,e){let{filters:r}=await w1r();return{class:x1r,filters:r}}async function O1r(t,e){try{let r=gn(t.body?.id||"movie"),n=Math.max(1,Number(t.body?.page||1)||1),s=t.body?.filters||{},i=await Tw(Uoe(r,n,s)),a=Me(i),o=Got(a,".lists-content > ul > li, .lists .lists-content ul li",r).filter(d=>d.vod_id.includes(`/${r}/`)),c=n,l=[...(a(".pagination, .pages, .pagenavi").html()||"").matchAll(/---(\d+)-\.html/g)].map(d=>Number(d[1])+1);return l.length?c=Math.max(n,...l):o.length>=qot&&(c=n+1),{page:n,pagecount:c,list:o}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}async function P1r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)try{let i=Qot(s);if(!i)continue;let a=await Tw(i),o=Me(a),c=Vg(o("h1.product-title").text()),u=Vg(o("title").text()).replace(/\s*\([^)]*\).*/,""),l=c.replace(/\s*\([^)]*\)\s*$/,"").trim()||u,d=Hot(o("header.product-header img.thumb").attr("src")||""),f=Vg(o(".product-excerpt").filter((v,I)=>o(I).text().includes("\u7B80\u4ECB\uFF1A")).text()).replace(/^简介:/,"").trim(),p=Vg(o(".product-excerpt").filter((v,I)=>o(I).text().includes("\u5BFC\u6F14\uFF1A")).find("span").text()),m=Vg(o(".product-excerpt").filter((v,I)=>o(I).text().includes("\u4E3B\u6F14\uFF1A")).find("span").text()).replace(/\s*\/\s*/g,","),h=(c.match(/\((\d{4})\)/)||[])[1]||"",A=i.includes("/movie/")?"\u7535\u5F71":i.includes("/tv/")?"\u7535\u89C6\u5267":"",{infoId:g,items:b}=S1r(a),y=(i.match(/(\d+)\.html/)||[])[1]||"",x=b.map((v,I)=>{let R=b.length>1?`\u7B2C${I+1}\u96C6`:gn(v)||"\u6B63\u7247",w=v1r({infoId:g||y,param:v,referer:jot(i),episodeName:R});return`${R}$${w}`});n.push({vod_id:i,vod_name:l,vod_pic:d,type_name:A,vod_year:h,vod_director:p,vod_actor:m,vod_content:f,vod_play_from:x.length?"PPnix":"",vod_play_url:x.join("#")})}catch{continue}return{list:n}}async function k1r(t,e){try{let r=I1r(t.body?.id||""),n=gn(r.infoId),s=gn(r.param);if(!n||!s)return{parse:0,url:gn(t.body?.id||"")};let i=gn(r.referer||`${Kf}${zg}/`);return{parse:0,url:`${Kf}/info/m3u8/${n}/${encodeURIComponent(s)}.m3u8`,header:{Referer:i,Origin:Kf,"User-Agent":Uot}}}catch{return{parse:1,url:gn(t.body?.id||""),header:{}}}}async function D1r(t,e){try{let r=gn(t.body?.wd||""),n=Math.max(1,Number(t.body?.page||1)||1);if(!r)return{page:1,pagecount:1,list:[]};let s=encodeURIComponent(r),i=n<=1?"":`-page-${n}`,a=await Tw(`${zg}/search/${s}--.html${i}`),o=Me(a),c=Got(o,".lists-content > ul > li, .lists .lists-content ul li").filter(u=>/\/(movie|tv)\/\d+\.html/.test(u.vod_id));return{page:n,pagecount:c.length>=qot?n+1:n,list:c}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}var Kot={meta:{key:"ppnix",name:"\u300C\u76F4\u300DPPnix",type:3},api:async t=>{t.post("/init",R1r),t.post("/home",N1r),t.post("/category",O1r),t.post("/detail",P1r),t.post("/play",k1r),t.post("/search",D1r)}};var qn={key:"anime1",name:"Anime1\u52D5\u756B",host:"https://anime1.me",listUrl:"https://d1zquzjgwo9yb.cloudfront.net/",playApi:"https://v.anime1.me/api",pic:"https://sta.anicdn.com/playerImg/8.jpg",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",timeout:15e3},ww=48,B1r=5*60*1e3,L1r=60,Vot=(()=>{let t=Math.max(new Date().getFullYear(),2025),e=[];for(let r=t;r>=2018;r-=1)e.push({type_id:String(r),type_name:String(r)});return[{type_id:"\u9023\u8F09\u4E2D",type_name:"\u9023\u8F09\u4E2D"},...e,{type_id:"2017",type_name:"\u66F4\u65E9"}]})(),eM={expireAt:0,list:[]},Z4=null;function Yg(t){return Me(`
${String(t||"")}
`).text().replace(/\s+/g," ").trim()}function Hoe(t=qn.host){return{"User-Agent":qn.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}function Rw(t,e=qn.host){let r=String(t||"").trim();if(!r)return"";try{return new URL(r,e).href}catch{return""}}function Qoe(t){let e=String(t||"").trim();if(!e)return"";try{let n=new URL(e,qn.host).searchParams.get("cat");if(n)return n}catch{}return e.replace(/^\/?\?cat=/,"")}function M1r(t){let e=String(t||"").trim();if(/^https?:\/\//i.test(e))return e;if(e.startsWith("/"))return Rw(e);let r=Qoe(e);return r?`${qn.host}/?cat=${encodeURIComponent(r)}`:qn.host}function W1r(t){let e=String(t||"").trim();return e?e.startsWith("//")?`https:${e}`:Rw(e,qn.host):""}function $1r(t){if(!Array.isArray(t))return null;let e=String(t[0]??"").trim(),r=Yg(t[1]);return!e||!r?null:{id:e,vod_id:e,vod_name:r,vod_pic:qn.pic,vod_remarks:Yg(t[2]),vod_year:String(t[3]??"").trim(),type_name:Yg(t[4]),vod_actor:Yg(t[5])}}async function joe(t,e={}){let r=Rw(t,e.base||qn.host),n=await he({url:r,method:"get",timeout:e.timeout||qn.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...Hoe(e.referer||qn.host),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function F1r(){let t=await he({url:`${qn.listUrl}?_=${Date.now()}`,method:"get",timeout:qn.timeout,responseType:"text",transformResponse:[n=>n],validateStatus:()=>!0,headers:Hoe(qn.host)});if(t.status<200||t.status>=300)throw new Error(`HTTP ${t.status}`);let e=JSON.parse(String(t.data||"{}")),r=Object.values(e).map($1r).filter(Boolean);return eM={expireAt:Date.now()+B1r,list:r},r}async function tM(){return eM.expireAt>Date.now()&&eM.list.length>0?eM.list:(Z4||(Z4=F1r().finally(()=>{Z4=null})),Z4)}function zot(t,e){let r=String(e||"\u9023\u8F09\u4E2D").trim();return r==="\u9023\u8F09\u4E2D"?t.filter(n=>n.vod_remarks.includes("\u9023\u8F09\u4E2D")):r==="2017"?t.filter(n=>{let s=Number.parseInt(n.vod_year,10);return Number.isFinite(s)&&s<=2017}):t.filter(n=>n.vod_year===r)}function Yot(t,e,r=ww){let n=Math.max(1,Number.parseInt(e,10)||1),s=t.length,i=Math.max(1,Math.ceil(s/r));return{list:t.slice((n-1)*r,n*r),page:n,pagecount:i,limit:r,total:s}}function U1r(t,e){let r=Qoe(e);return t.find(n=>n.id===r||n.vod_id===r)}function q1r(t){return Yg(t).replace(/[$#]/g," ").trim()}function j1r(t,e){let r=Yg(t),n=r.match(/\[(.*)\]/);return q1r(n?.[1]||r||`\u7B2C${e+1}\u96C6`)}function H1r(t){return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}function Q1r(t){try{let e=JSON.parse(Buffer.from(String(t||""),"base64").toString("utf8"));return e&&typeof e=="object"?e:{}}catch{return{}}}function G1r(t,e,r){let n=Me(t||"");n(".site-main article").each((s,i)=>{let a=String(n(i).find("[data-apireq]").first().attr("data-apireq")||"").trim();if(!a||r.has(a))return;let o=n(i).find(".entry-title").first().text();r.add(a),e.push({name:j1r(o,e.length),apiReq:a})})}async function K1r(t,e){let r=[],n=new Set,s=new Set,i=t,a=e;for(let o=0;or.trim()).filter(r=>["e","p","h"].includes(r.split("=")[0])).join("; ")}function qoe(t,e=qn.host){let r={"User-Agent":qn.ua,Referer:e||qn.host};return t&&(r.Cookie=t),r}async function z1r(t,e){let r=await he({url:qn.playApi,method:"post",data:`d=${t}`,timeout:qn.timeout,responseType:"text",transformResponse:[i=>i],validateStatus:()=>!0,headers:{...Hoe(qn.host),"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);let n=JSON.parse(String(r.data||"{}")),s=W1r(n?.s?.[0]?.src);if(!s)throw new Error("empty play url");return{url:s,cookie:V1r(r.headers?.["set-cookie"])}}async function Y1r(t,e){return{}}async function J1r(t,e){try{let r=zot(await tM(),"\u9023\u8F09\u4E2D").slice(0,ww);return{class:Vot,filters:{},list:r}}catch(r){return console.error("anime1 home failed:",r.message),{class:Vot,filters:{},list:[]}}}async function X1r(t,e){let r=t.body?.id||t.body?.tid||"\u9023\u8F09\u4E2D",n=t.body?.page||1;try{return Yot(zot(await tM(),r),n)}catch(s){return console.error("anime1 category failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:ww,total:0}}}async function Z1r(t,e){let r=String(t.body?.wd||"").trim(),n=t.body?.page||1;if(!r)return{list:[],page:1,pagecount:1,limit:ww,total:0};try{let s=r.toLowerCase(),i=(await tM()).filter(a=>a.vod_name.toLowerCase().includes(s));return Yot(i,n)}catch(s){return console.error("anime1 search failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:ww,total:0}}}async function e_r(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(a=>String(a||"").trim()).filter(Boolean),s=[],i=await tM().catch(()=>[]);for(let a of n){let o=Qoe(a),c=M1r(a);try{let u=await joe(c),l=Me(u||""),d=U1r(i,a),f=Yg(l(".page-title, h1").first().text()),m=(await K1r(u,c)).map(h=>`${h.name}$${H1r({apiReq:h.apiReq,referer:c})}`).join("#");s.push({vod_id:o||a,vod_name:d?.vod_name||f||o||a,vod_pic:d?.vod_pic||qn.pic,vod_remarks:d?.vod_remarks||"",vod_year:d?.vod_year||"",type_name:d?.type_name||"",vod_actor:d?.vod_actor||"",vod_content:d?.vod_remarks||"",vod_play_from:"Anime1",vod_play_url:m})}catch(u){console.error("anime1 detail failed:",a,u.message)}}return{list:s}}async function t_r(t,e){let r=String(t.body?.id||"").trim(),n=Q1r(r),s=String(n.apiReq||r).trim(),i=n.referer||qn.host;if(!s)return{parse:0,jx:0,url:"",header:qoe("",i)};try{let a=await z1r(s,i);return{parse:0,jx:0,url:a.url,playId:a.url,header:qoe(a.cookie,qn.host)}}catch(a){return console.error("anime1 play failed:",a.message),{parse:0,jx:0,url:"",header:qoe("",i)}}}var Jot={meta:{key:qn.key,name:"\u300C\u76F4\u300DAnime1",type:3},api:async t=>{t.post("/init",Y1r),t.post("/home",J1r),t.post("/category",X1r),t.post("/detail",e_r),t.post("/play",t_r),t.post("/search",Z1r)}};var Jg="https://gimy01.tv",ect="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",r_r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"34",type_name:"\u77ED\u5267"},{type_id:"13",type_name:"\u9646\u5267"}],Xot={\u5287:"\u5267",\u96FB:"\u7535",\u8996:"\u89C6",\u7DDA:"\u7EBF",\u570B:"\u56FD",\u7522:"\u4EA7",\u7D9C:"\u7EFC",\u85DD:"\u827A",\u52D5:"\u52A8",\u756B:"\u753B",\u985E:"\u7C7B",\u5225:"\u522B",\u72C0:"\u72B6",\u614B:"\u6001",\u5C0E:"\u5BFC",\u984C:"\u9898",\u6B61:"\u6B22",\u6A02:"\u4E50",\u611B:"\u7231",\u5F8C:"\u540E",\u9580:"\u95E8",\u9F8D:"\u9F99",\u99AC:"\u9A6C",\u98A8:"\u98CE",\u96F2:"\u4E91",\u8207:"\u4E0E",\u842C:"\u4E07",\u7121:"\u65E0",\u7DDA\u4E0A\u770B:"\u7EBF\u4E0A\u770B",\u9023\u7E8C\u5287:"\u8FDE\u7EED\u5267",\u96FB\u8996\u5287:"\u7535\u89C6\u5267",\u96FB\u5F71:"\u7535\u5F71",\u52D5\u6F2B:"\u52A8\u6F2B",\u7D9C\u85DD:"\u7EFC\u827A"};function Xg(t){return String(t||"").replace(/\/+$/,"")}function tct(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function $o(t){let e=tct(t);return Object.keys(Xot).forEach(r=>{e=e.replace(new RegExp(r,"g"),Xot[r])}),e}function n_r(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Zg(t){let e=String(t||"").trim().replace(/^["']|["']$/g,"");return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?"https:"+e:e.startsWith("/")?Xg(Jg)+e:Xg(Jg)+"/"+e.replace(/^\.\//,""):""}function rM(t){return{"User-Agent":ect,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t||Xg(Jg)+"/"}}function s_r(t){let e=String(t||""),r=e.trim();if(!r.startsWith('"')||!r.endsWith('"'))return e;try{let n=JSON.parse(r);if(typeof n=="string"&&/(?:])/i.test(n))return n}catch{}return e}function i_r(t){return new Promise(e=>setTimeout(e,t))}function a_r(t){let e=String(t?.code||"").toUpperCase(),r=String(t?.message||"");return["ECONNRESET","ETIMEDOUT","ECONNABORTED","EAI_AGAIN"].includes(e)||/socket disconnected|TLS connection|timeout/i.test(r)}async function Nw(t,e={}){let r=Number.isInteger(e.retries)?e.retries:2,n;for(let s=0;s<=r;s+=1)try{let i=await he(t,{method:e.method||"get",headers:{...rM(e.referer),...e.headers||{}},data:e.data,timeout:e.timeout||2e4,responseType:"text",transformResponse:[a=>a]});return s_r(i.data)}catch(i){if(n=i,s>=r||!a_r(i))throw i;await i_r(300*(s+1))}throw n}function o_r(t){let e=String(t||""),r=[/var\s+player_data\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i,/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i,/player_data\s*=\s*(\{[\s\S]*?\})\s*;/i];for(let n of r){let s=e.match(n);if(s)try{return JSON.parse(s[1])}catch{}}return null}function c_r(t){let e=String(t?.url||"").trim(),r=String(t?.encrypt||"").trim();if(!e)return"";if(r==="1")try{return decodeURIComponent(e)}catch{return e}if(r==="2")try{return decodeURIComponent(Buffer.from(e,"base64").toString("utf8"))}catch{try{return Buffer.from(e,"base64").toString("utf8")}catch{return e}}return e}function rct(t){let e=String(t||"").trim();if(!e)return null;try{return JSON.parse(e)}catch{let n=e.match(/\{[\s\S]*\}/);if(!n)return null;try{return JSON.parse(n[0])}catch{}}return null}function nct(t){return/^https?:\/\//i.test(t)&&/(?:\.m3u8|\.mp4|\.flv|\.m4v|\.m4s)(?:[?#]|$)/i.test(t)}function sct(t){let e=String(t||"").trim();if(!e)return"";if(nct(e))return e;let r=rct(e);if(r&&typeof r=="object"){let s=sct(r.url||r.video||r.playurl);if(s)return s}let n=e.match(/https?:\/\/[^"'<>\s]+(?:\.m3u8|\.mp4|\.flv|\.m4v)(?:[^"'<>\s]*)?/i);return n?n[0]:""}function ict(t,e){let r=String(t||""),n=String(e||"");if(/^JDQM-/i.test(r)||/^JDQM$/i.test(n))return"JDQM";if(/^JDHG-/i.test(r)||/^JDHG$/i.test(n))return"JDHG";if(/^JD-/i.test(r)||/^(?:JD4K|JD2K)$/i.test(n)&&/^JD/i.test(r))return"JD2K";if(/^JK2-/i.test(r)||/^JK2$/i.test(n))return"JK2";if(/^NSYS-/i.test(r)||/^NSYS$/i.test(n))return"NSYS";if(/^NBY-/i.test(r)||/^NBY$/i.test(n))return"NBY";if(/^JinLiDj-/i.test(r)||/^djplayer$/i.test(n))return"djplayer";if(/^(?:znjson|znkan)-/i.test(r)||/^znjson$/i.test(n))return"znjson";let s=r.match(/^(JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)-/i);return s?s[1].toUpperCase():/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(n)?n.toUpperCase():/(?:iqiyi\.com|bilibili\.com|v\.qq\.com|sohu\.com|pptv\.com|letv\.com|xigua\.com|mgtv\.com)/i.test(r)?"etcjc":/v\.youku\.com/i.test(r)?"kmjc":"normal"}function u_r(t,e){let r=ict(t,e);return/^(?:JD4K|JD2K|JDQM|JDHG)$/i.test(r)?"d":/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(r)?"j":r==="normal"?"o":"v"}function l_r(t,e,r,n){let s="https://player.gimy.bot/"+u_r(t,e)+"/",i=ict(t,e),a=n||r,o=s+"?url="+encodeURIComponent(t);return o+="&jctype="+encodeURIComponent(i),a&&(o+="&next="+encodeURIComponent("//"+a.replace(/^https?:\/\//i,""))),{parseBase:s,referer:o}}function Zot(t,e=Xg(Jg)){return{"User-Agent":ect,Referer:t||Xg(Jg)+"/",Origin:e}}function d_r(t){return{vod_id:t.vod_id||"",vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||""}}function act(t,e){let r=[],n={};return(e&&e.length?e:t.root()).find("a[href*='/vod/'], a[href*='/detail/']").each((i,a)=>{let o=t(a),c=o.attr("href")||"",u=Zg(c);if(!/(?:\/detail\/|\/vod\/)\d+\.html/i.test(u)||n[u])return;let l=$o(o.attr("title")||o.find("img").attr("alt")||o.find(".title, .video-text, .module-poster-item-title, h3, h4, h5").first().text()||o.text());if(!l)return;let d=o.closest(".module-item, li, .public-list-box, .video-item, .item, .module-poster-item, .myui-vodlist__box"),f=Zg(o.attr("data-original")||o.attr("data-src")||o.attr("data-bg")||o.find("img").attr("data-original")||o.find("img").attr("data-src")||o.find("img").attr("src")||d.find("a.video-pic").first().attr("data-original")||d.find("a.video-pic").first().attr("data-src")||d.find("img").first().attr("data-original")||d.find("img").first().attr("data-src")||d.find("img").first().attr("src")||""),p=d.html()||o.parent().html()||"",m=String(p).match(/(?:更新至第?\d+集|更新第?\d+集|\(?\d+å…¨\)?|å…¨\d+集|已完結|已完结|HD中字|HD|TC|HC|搶先版|抢先版)/i);n[u]=!0,r.push(d_r({vod_id:u,vod_name:l,vod_pic:f,vod_remarks:m?$o(m[0]):""}))}),r}function Wo(t,e){let r=new RegExp("]*>\\s*"+n_r(e)+"\\s*[\uFF1A:]\\s*<\\/span>([\\s\\S]*?)<\\/(?:li|div)>","i"),n=String(t||"").match(r);return n?$o(n[1]):""}function f_r(t){let e=[],r=[],n=new Set,s=(c,u)=>($o(c)||u||"\u6B63\u7247").replace(/[$#]/g," ").trim(),i=c=>{let u=[],l=new Set;return c.find("a[href*='/play/'], a[href*='/eps/']").each((d,f)=>{let p=t(f),m=p.attr("href")||"",h=Zg(m);if(!h||l.has(h))return;l.add(h);let A=s(p.attr("title")||p.text(),"\u7B2C"+(u.length+1)+"\u96C6");u.push(A+"$"+h)}),u},a=(c,u,l)=>{if(!u.length)return;let d=$o(c)||"\u9ED8\u8BA4\u7EBF\u8DEF",f=String(l||d||r.length);n.has(f)||(n.add(f),r.push({from:d,urls:u.join("#")}))},o=new Map;return t(".source[data-route-switch], [data-line-name][data-route-switch]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-switch")||"").trim(),f=l.clone();f.children().remove();let p=$o(l.attr("data-line-name")||f.text()||l.text());d&&p&&o.set(d,p)}),t(".episodes-route[data-route-sid], .eps[data-route-sid]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-sid")||"").trim();a(o.get(d)||"\u7EBF\u8DEF"+(d||r.length+1),i(l),"route:"+(d||r.length+1))}),t("#playTab a[href^='#con_playlist_']").each((c,u)=>{let l=t(u),d=String(l.attr("href")||"").replace(/^#/,""),f=$o(l.text())||d;d&&e.push({tabId:d,name:f})}),t("ul[id^='con_playlist_']").each((c,u)=>{let l=t(u),d=l.attr("id")||"",f=$o(l.prevAll("li").first().text())||d;d&&!e.some(p=>p.tabId===d)&&e.push({tabId:d,name:f})}),e.forEach(c=>{a(c.name,i(t("#"+c.tabId)),"tab:"+c.tabId)}),r.length||a("Gimy",i(t.root()),"fallback:gimy"),{playFrom:r.map(c=>c.from).join("$$$"),playUrl:r.map(c=>c.urls).join("$$$")}}async function p_r(t,e){return{}}async function m_r(t,e){return{class:r_r}}async function h_r(t,e){let r=String(t.body?.id||"2"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Nw(Xg(Jg)+"/type/"+r+(n>1?"-"+n:"")+".html"),i=Me(s),a=act(i);return{page:n,pagecount:a.length>0?n+1:n,list:a}}async function g_r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=/^https?:\/\//i.test(i)?i:Zg(i),o=await Nw(a),c=Me(o),u=f_r(c),l=c("h1.text-overflow, h1").first().text()||c("title").text(),d=Wo(o,"\u985E\u5225")||Wo(o,"\u7C7B\u522B"),f=d.match(/\b(?:19|20)\d{2}\b/)?.[0]||"";n.push({vod_id:a,vod_name:$o(l.replace(/(?:線上看|线上看)[\s\S]*$/i,"")),vod_pic:Zg(c("meta[property='og:image']").attr("content")||(c(".details-pic .video-pic").attr("style")||"").match(/url\(([^)]+)\)/)?.[1]||c("img").first().attr("src")||""),vod_content:$o(c(".switch-box .text, .details-content .text, .details-content, .detail-sketch").first().text()||c("meta[name='description']").attr("content")||""),vod_remarks:Wo(o,"\u72C0\u614B")||Wo(o,"\u72B6\u6001"),type_name:$o(d.replace(/\s*[·.]\s*(?:19|20)\d{2}\b.*$/,"")),vod_year:Wo(o,"\u5E74\u4EE3")||Wo(o,"\u5E74\u4EFD")||f,vod_area:Wo(o,"\u570B\u5BB6/\u5730\u5340")||Wo(o,"\u56FD\u5BB6/\u5730\u533A")||Wo(o,"\u5730\u5340")||Wo(o,"\u5730\u533A"),vod_actor:Wo(o,"\u4E3B\u6F14")||$o(c("li:contains('\u4E3B\u6F14') a, .detail__meta div:contains('\u4E3B\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_director:Wo(o,"\u5C0E\u6F14")||Wo(o,"\u5BFC\u6F14")||$o(c("li:contains('\u5C0E\u6F14') a, li:contains('\u5BFC\u6F14') a, .detail__meta div:contains('\u5C0E\u6F14') a, .detail__meta div:contains('\u5BFC\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_play_from:u.playFrom,vod_play_url:u.playUrl})}return{list:n}}async function A_r(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,url:""};let n=/^https?:\/\//i.test(r)?r:Zg(r);try{let s=await Nw(n,{referer:n}),i=o_r(s),a=c_r(i),o=String(i?.from||t.body?.flag||"").trim();if(!a)return{parse:1,url:n,header:rM(n)};if(nct(a))return{parse:0,url:a,header:Zot(n)};let c=i?.link_next?Zg(i.link_next):"",u=l_r(a,o,n,c),l=await Nw(u.parseBase+"parse.php?url="+encodeURIComponent(a)+"&_t="+Date.now(),{referer:u.referer,headers:{Accept:"application/json, text/plain, */*"}}),d=rct(l),f=sct(d?.url||d?.video||d?.playurl);return f?{parse:0,url:f,header:Zot(u.referer,"https://player.gimy.bot")}:{parse:1,url:a,header:rM(n)}}catch(s){return console.error("gimy play failed:",s.message),{parse:1,url:n,header:rM(n)}}}async function y_r(t,e){let r=tct(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s=Xg(Jg)+"/search/-------------.html?wd="+encodeURIComponent(r)+"&page="+n,i=await Nw(s),a=Me(i),o=act(a,a(".box-main-content").first());return{page:n,pagecount:o.length>0?n+1:n,list:o}}var oct={meta:{key:"gimy",name:"\u300C\u76F4\u300D\u5267\u8FF7",type:3},api:async t=>{t.post("/init",p_r),t.post("/home",m_r),t.post("/category",h_r),t.post("/detail",g_r),t.post("/play",A_r),t.post("/search",y_r)}};var Goe="https://hanxiaoquan.hanju.workers.dev",x_r="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",b_r=[{type_id:"0",type_name:"\u97E9\u5267"},{type_id:"1",type_name:"\u97E9\u5F71"},{type_id:"2",type_name:"\u65E5\u97E9\u7EFC"},{type_id:"3",type_name:"\u65E5\u97E9\u6F2B"},{type_id:"100",type_name:"\u70ED\u95E8"}];function Koe(t){return String(t||"").replace(/\/+$/,"")}function Gl(t){return String(t||"").replace(/\s+/g," ").trim()}function E_r(t){let e=String(t||"").trim();return e?e.startsWith("//")?"https:"+e:/^https?:\/\//i.test(e)?e:Koe(Goe)+(e.startsWith("/")?e:"/"+e):""}function cct(){let t=Koe(Goe);return{"User-Agent":x_r,Accept:"application/json, text/plain, */*","Content-Type":"application/json",Origin:t,Referer:t+"/"}}async function Voe(t,e,r=3e4){let n=await he(Koe(Goe)+t,{method:"post",headers:cct(),data:e||{},timeout:r,responseType:"json"});return typeof n.data=="string"?JSON.parse(n.data):n.data||{}}function zoe(t){return{vod_id:String(t?.vod_id||""),vod_name:Gl(t?.vod_name),vod_pic:E_r(t?.vod_pic),vod_remarks:Gl(t?.vod_remarks||t?.vod_class),vod_year:Gl(t?.vod_year),vod_director:Gl(t?.vod_director),vod_actor:Gl(t?.vod_actor),vod_content:Gl(t?.vod_content)}}function pE(t){return String(t||"").toLowerCase().replace(/\s+/g,"").replace(/[·•・\-—_::,,.。'"“”‘’!?!?()()\[\]【】]/g,"")}function __r(t,e){let r=pE(e),n=pE(t?.vod_name),s=pE(t?.vod_remarks),i=pE(t?.vod_actor),a=pE(t?.vod_director),o=pE(t?.vod_content);return r?n===r?1e4:n.startsWith(r)?8e3-n.length:n.includes(r)?6e3-n.indexOf(r):s.includes(r)?2500-s.indexOf(r):i.includes(r)?1800-i.indexOf(r):a.includes(r)?1500-a.indexOf(r):o.includes(r)?500-o.indexOf(r):0:0}function S_r(t,e,r){let n=[],s=Array.isArray(t)?t:[];for(let i of s){let a=zoe(i);if(!a.vod_id||!a.vod_name||r[a.vod_id])continue;let o=__r(a,e);o<=0||(r[a.vod_id]=!0,a._searchScore=o,n.push(a))}return n}function v_r(t){let e=zoe(t);e.type_name=Gl(t?.vod_class),e.vod_area=Gl(t?.vod_area)||"\u97E9\u56FD";let n=(Array.isArray(t?.vod_play_url)?t.vod_play_url:[]).map((s,i)=>{let a=Gl(s?.t||s?.name)||"\u7B2C"+(i+1)+"\u96C6",o=String(s?.u||s?.url||"").trim();return o?a+"$"+o:""}).filter(Boolean).join("#");return e.vod_play_from=n?"\u9ED8\u8BA4\u7EBF\u8DEF":"",e.vod_play_url=n,e}function I_r(t,e,r){let n=Number(t?.pagecount||t?.pageCount||t?.totalPage||0);return Number.isFinite(n)&&n>0?n:r.length>0?e+1:e}async function C_r(t,e){return{}}async function T_r(t,e){return{class:b_r}}async function w_r(t,e){let r=String(t.body?.id||"0"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Voe("/api/list",{c_id:r,page:String(n)}),i=(Array.isArray(s?.data)?s.data:[]).map(zoe).filter(a=>a.vod_id&&a.vod_name);return{page:n,pagecount:I_r(s,n,i),total:s?.total||i.length,list:i}}async function R_r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=await Voe("/api/detail",{b_id:i});a?.data&&n.push(v_r(a.data))}return{list:n}}async function N_r(t,e){let r=String(t.body?.id||"").trim();return r?{parse:0,url:r,header:cct()}:{parse:1,url:""}}async function O_r(t,e){let r=Gl(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s={},i=[],a=n===1?5:n;for(let o=n;o<=a;o++){let c=await Voe("/api/search",{keyword:r,page:String(o)},6e4),u=S_r(c?.data,r,s);if(i.push(...u),!Array.isArray(c?.data)||c.data.length<20||n>1)break}return i.sort((o,c)=>{let u=Number(c._searchScore||0)-Number(o._searchScore||0);return u!==0?u:o.vod_name.localeCompare(c.vod_name,"zh-CN")}),i.forEach(o=>{delete o._searchScore}),{page:n,pagecount:i.length>0?n+1:n,list:i}}var uct={meta:{key:"hanxiaoquan",name:"\u300C\u76F4\u300D\u97E9\u5C0F\u5708",type:3},api:async t=>{t.post("/init",C_r),t.post("/home",T_r),t.post("/category",w_r),t.post("/detail",R_r),t.post("/play",N_r),t.post("/search",O_r)}};var Joe=Re(require("node:vm"),1),fo=Re(Jn(),1);var xa={key:"wbbb",name:"\u6B6A\u6BD4\u5DF4\u535C",host:"https://wbbb1.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36",timeout:2e4},lct=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"}],P_r=/^(?:lzm3u8|bfzym3u8)$/i;function dct(t){return String(t||"").replace(/\/+$/,"")}function Ms(t,e,r=1,n=""){let s=String(t||"").match(e);return s&&s[r]||n}function ws(t=""){return String(t).replace(//gi," ").replace(//gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function Yoe(t=""){return ws(t).replace(/\s*\/\s*/g,"/").replace(/^\/+|\/+$/g,"").trim()}function fct(t=""){return String(t).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function po(t=""){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?dct(xa.host)+e:dct(xa.host)+"/"+e.replace(/^\.\//,""):""}function k_r(t=""){let e=String(t||"").trim();if(!e)return"";if(e.startsWith("//"))return e;if(/^https?:\/\//i.test(e))try{let r=new URL(e);return`//${r.host}${r.pathname}${r.search}${r.hash}`}catch{}if(e.startsWith("/"))try{return`//${new URL(xa.host).host}${e}`}catch{}return e}function D_r(t){return(Array.isArray(t)?t:[]).map(e=>String(e||"").split(";")[0].trim()).filter(Boolean).join("; ")}function gct(t=`${xa.host}/`){return{"User-Agent":xa.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}async function hE(t,e={}){let r=/^https?:\/\//i.test(t)?t:po(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||xa.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...gct(e.referer),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function B_r(t,e={}){let r=await he({url:t,method:e.method||"get",data:e.data,timeout:e.timeout||xa.timeout,validateStatus:()=>!0,headers:e.headers||{}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);return typeof r.data=="string"?JSON.parse(r.data):r.data}function Xoe(t=""){let e=ws(String(t||"")).replace(/\s+/g,"").trim();return!e||/^(?:排序|选择播放源|切换播放源|更多|展开|æ”¶èµ·)$/i.test(e)}function L_r(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.match(/\/detail\/(\d+)\.html/i)||e.match(/^(\d+)$/);return r?r[1]:e}function M_r(t=""){if(t&&typeof t=="object"&&!Array.isArray(t)){let i=po(t.playUrl||t.playId||t.url||t.id||""),a=ws(t.name||"").trim();return!i||!a?null:{name:a,id:i,playId:i,playUrl:i,url:i}}let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("$");if(r<0)return null;let n=e.slice(0,r).trim(),s=po(e.slice(r+1).trim());return!n||!s?null:{name:n,id:s,playId:s,playUrl:s,url:s}}function pct(t,e,r=0){if(Xoe(t))return null;let n=ws(String(t||"")).replace(/\s+/g," ").trim()||`\u7EBF\u8DEF${r+1}`,s=new Set,i=[];for(let a of Array.isArray(e)?e:[]){let o=M_r(a);!o||s.has(o.playId)||(s.add(o.playId),i.push(o))}return i.length?{name:n,url:i.map(a=>`${a.name}$${a.playUrl}`).join("#"),episodes:i}:null}function W_r(t){let e=Ms(t,/href=["']\/detail\/(\d+)\.html["']/i,1,""),r=ws(Ms(t,/
([\s\S]*?)<\/div>/i,1,""))||Ms(t,/alt=["']([^"']+)["']/i,1,""),n=po(Ms(t,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),s=ws(Ms(t,/
([\s\S]*?)<\/div>/i,1,""));return{vod_id:e,vod_name:r,vod_pic:n,vod_remarks:s}}function ece(t){let e=String(t||""),r=[],n=/([\s\S]*?)<\/a>/gi,s;for(;(s=n.exec(e))!==null;){let a=s[0];r.push({vod_id:s[1],vod_name:ws(s[2]),vod_pic:po(Ms(a,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),vod_remarks:ws(Ms(a,/
([\s\S]*?)<\/div>/i,1,""))})}if(r.length)return r;let i=/
([\s\S]*?)<\/div>\s*<\/div>/gi;for(;(s=i.exec(e))!==null;){let a=W_r(s[1]);a.vod_id&&a.vod_name&&r.push(a)}return r}function $_r(t){let e=[],r=/]*class=["'][^"'>]*\bmodule-tab-item\b[^"'>]*["'][^>]*>([\s\S]*?)<\/div>/gi,n;for(;(n=r.exec(t))!==null;){let s=n[0],i=Ms(s,/data-dropdown-value\s*=\s*['"]([^'"]+)['"]/i,1,"").trim();if(i){Xoe(i)||e.push(i);continue}let a=ws(n[1]||"").trim();a&&!Xoe(a)&&e.push(a)}return e}function F_r(t){let e=[],r=/
([\s\S]*?)<\/div>/gi,n;for(;(n=r.exec(t))!==null;){let i=n[1],a=[],o=/]+class=["']module-play-list-link[^"']*["'][^>]+href=["']([^"']+)["'][^>]*>([\s\S]*?)<\/a>/gi,c;for(;(c=o.exec(i))!==null;){let u=po(c[1]),l=ws(c[2]).trim();!u||!l||a.push(`${l}$${u}`)}a.length&&e.push(a)}if(e.length)return e;let s=[...t.matchAll(/]+href=["']([^"']*\/(?:vplay|play)\/[^"'#]+)["'][^>]*>([\s\S]*?)<\/a>/gi)];return s.length?[s.map(i=>`${ws(i[2]).trim()||"\u64AD\u653E"}$${po(i[1])}`)]:e}function U_r(t="",e=""){let r=ws(Ms(t,/]+module-play-list-link[^"']*active[^"']*[^>]*>([\s\S]*?)<\/a>/i,1,"")),n=ws(Ms(t,/(?:正在播放|当前播放)[^::]*[::]\s*([\s\S]*?)(?:<|$)/i,1,"")),s=r||n;return e&&s&&(s=s.replace(new RegExp(`^${fct(e)}\\s*`),"").trim(),s=s.replace(new RegExp(`^\u300A?${fct(e)}\u300B?\\s*`),"").trim()),s.trim()}function q_r(t="",e={}){let r=String(e?.vod_data?.vod_name||"").trim(),n=U_r(t,r);return`\u5728\u7EBF\u64AD\u653E${r}${n?` ${n}`:""}`.trim()||r||"\u5728\u7EBF\u64AD\u653E"}function j_r(t){let e=[/var\s+player_aaaa\s*=\s*(\{.*?\})<\/script>/s,/var\s+player_.*?=\s*(\{.*?\})<\/script>/s,/player_aaaa\s*=\s*(\{.*?\})\s*;/s,/player_data\s*=\s*(\{.*?\})\s*;/s];for(let r of e){let n=String(t||"").match(r);if(n)try{return JSON.parse(n[1])}catch{}}return null}function H_r(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(n==="1")try{r=unescape(r)}catch{}else if(n==="2"){try{r=Buffer.from(r,"base64").toString("utf8")}catch{}try{r=unescape(r)}catch{}}return po(r)}function Zoe(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(!r)return!1;if(/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:[?#]|$)/i.test(r)||/^(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)$/i.test(n)&&/^https?:\/\//i.test(r)||P_r.test(n))return!0;try{let s=new URL(r);return/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:$|\?)/i.test(s.pathname+s.search)}catch{return!1}}function mct(t=""){let e=String(t||"").trim();if(/^[A-Za-z0-9+/]+={0,2}$/.test(e)&&e.length%4===0)try{return fo.default.enc.Base64.parse(e)}catch{}return fo.default.enc.Utf8.parse(e)}function Q_r(t){let e=()=>{},r=function(){return{on:e,hide:e,show:e,html:e,text:e,click:e,append:e,remove:e,css:e,attr:e,addClass:e,removeClass:e,find:()=>({}),val:()=>"",ready:e,length:0}};r.post=e,r.ajax=e,r.get=e,r.fn={};let n=new URL(t),s={console,CryptoJS:fo.default,URL,URLSearchParams,Buffer,atob:i=>Buffer.from(i,"base64").toString("binary"),btoa:i=>Buffer.from(i,"binary").toString("base64"),setTimeout:e,setInterval:()=>0,clearTimeout:e,clearInterval:e,fetch:async()=>({ok:!0,status:200,headers:new Map,text:async()=>"",json:async()=>({})}),localStorage:{getItem:()=>null,setItem:e,removeItem:e},sessionStorage:{getItem:()=>null,setItem:e,removeItem:e},navigator:{userAgent:xa.ua,clipboard:{writeText:async()=>{}}},document:{title:"wbbb-parser",body:{},addEventListener:e,querySelector:()=>null,createElement:()=>({style:{},click:e}),getElementById:()=>({style:{},addEventListener:e,play:async()=>{},pause:e})},location:{origin:n.origin,pathname:n.pathname,search:n.search,href:n.toString(),host:n.host},window:null,top:null,parent:null,self:null,$:r,jQuery:r,Artplayer(){return{on:e,once:e,emit:e,destroy:e,template:{},plugins:{},setting:{show:e},controls:{add:e},layers:{add:e},events:{proxy:e},notice:{show:e},storage:{get:()=>null,set:e}}},animation:{}};return s.window=s,s.top=s,s.parent=s,s.self=s,s}async function G_r(t,e){let r=Ms(e,/]+src=["']([^"']*setting\.js[^"']*)["']/i,1,"");if(!r)throw new Error("setting.js missing");let n=new URL(r,t).toString(),i=`${await hE(n,{referer:t})} -;globalThis.__wbbbResolveRuntime={ urlValueurl, keyValue, vkeyValue, ckeyValue, nextParam, titleParam };`,a=Q_r(t);Joe.default.createContext(a),Joe.default.runInContext(i,a,{timeout:5e3});let o={...a.__wbbbResolveRuntime||{},decrypt:typeof a.decrypt=="function"?a.decrypt.bind(a):null,deplay:typeof a.deplay=="function"?a.deplay.bind(a):null};if(!o.urlValueurl||!o.keyValue||!o.vkeyValue||!o.ckeyValue)throw new Error("setting runtime params missing");return o}async function K_r(t,e,r){let n=k_r(e),s=String(r||"").trim(),i=`https://xn--qvr2v.850088.xyz/player/?url=${encodeURIComponent(t)}${n?`&next=${encodeURIComponent(n)}`:""}${s?`&title=${encodeURIComponent(s)}`:""}`,a=await he.get(i,{timeout:xa.timeout,responseType:"text",transformResponse:[A=>A],validateStatus:()=>!0,headers:gct(`${xa.host}/`)});if(a.status<200||a.status>=300)throw new Error(`HTTP ${a.status}`);let o=String(a.data||""),c=D_r(a.headers?.["set-cookie"]),u=await G_r(i,o),l=u.urlValueurl||`${String(t||"").trim()}${n?`&next=${n}`:""}`,d="https://xn--qvr2v.850088.xyz/player/api.php",f=new URLSearchParams({url:l,key:u.keyValue,vkey:u.vkeyValue,ckey:u.ckeyValue}).toString(),p=await B_r(d,{method:"post",data:f,headers:{"User-Agent":xa.ua,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Referer:i,Origin:"https://xn--qvr2v.850088.xyz",...c?{Cookie:c}:{}}});if(!p||Number(p.code)!==200||!p.url)throw new Error(p?.msg||"parse api failed");let m=String(p.url||"").trim(),h="";if(m&&u&&typeof u.decrypt=="function")try{h=(u.decrypt(m)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}if(!h&&m&&u&&typeof u.deplay=="function")try{let A=String(u.deplay(p.aes_key||"")||"").trim(),g=String(u.deplay(p.aes_iv||"")||"").trim();if(A&&g){h=(fo.default.AES.decrypt(m,fo.default.enc.Utf8.parse(A),{iv:fo.default.enc.Utf8.parse(g),mode:fo.default.mode.CBC,padding:fo.default.pad.Pkcs7}).toString(fo.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}}catch{}if(!h){let A=mct(p.aes_key||""),g=mct(p.aes_iv||"");if(m&&A&&g)try{h=(fo.default.AES.decrypt(m,A,{iv:g,mode:fo.default.mode.CBC,padding:fo.default.pad.Pkcs7}).toString(fo.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}}if(!h&&/^https?:\/\//i.test(m)&&(h=m),!h)try{h=decodeURIComponent(m)}catch{h=m}return h=po(h),Zoe(h,p.type||"")||(h=i),{url:h,type:p.type||"",parsePageUrl:i}}function mE(t={}){return{"User-Agent":xa.ua,Referer:`${xa.host}/`,Origin:xa.host,...t}}function hct(t,e={}){return{parse:1,jx:1,url:t,playId:t,urls:[{name:"\u55C5\u63A2\u7EBF\u8DEF",url:t,playId:t}],header:mE(e)}}async function V_r(t,e){return{}}async function z_r(t,e){try{let r=await hE("/");return{class:lct,filters:{},list:ece(r).slice(0,40)}}catch(r){return console.error("wbbb home failed:",r.message),{class:lct,filters:{},list:[]}}}async function Y_r(t,e){let r=String(t.body?.id||"1"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);try{let s=n>1?`/show/${r}--------${n}---.html`:`/show/${r}-----------.html`,i=await hE(s),a=ece(i),o=i.includes('title="\u4E0B\u4E00\u9875"')||i.includes("title='\u4E0B\u4E00\u9875'");return{page:n,pagecount:o?n+1:n,limit:20,total:(n-1)*20+a.length+(o?1:0),list:a}}catch(s){return console.error("wbbb category failed:",s.message),{page:n,pagecount:n,limit:20,total:0,list:[]}}}async function J_r(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n)try{let a=L_r(i),o=/^https?:\/\//i.test(a)?a:`/detail/${a}.html`,c=await hE(o),u=[...c.matchAll(/
([\s\S]*?)<\/div>/gi)].map(h=>h[1]),l=$_r(c),d=F_r(c),f=[];if(d.forEach((h,A)=>{let g=pct(l[A]||`\u7EBF\u8DEF${A+1}`,h,A);g&&f.push(g)}),f.length===0){let h=new Set,A=[...c.matchAll(/]+href=["']([^"']*\/(?:vplay|play)\/[^"']+\.html)["'][^>]*>([\s\S]*?)<\/a>/gi)].map((b,y)=>{let x=po(b[1]),v=ws(b[2]).trim()||`\u7B2C${y+1}\u96C6`;return!x||h.has(x)?"":(h.add(x),`${v}$${x}`)}).filter(Boolean),g=pct(l[0]||"\u64AD\u653E\u7EBF\u8DEF",A,0);g&&(f=[g])}let p=f.map(h=>h.name),m=f.map(h=>h.url);s.push({vod_id:a,vod_name:ws(Ms(c,/]*>([\s\S]*?)<\/h1>/i,1,"")),vod_pic:po(Ms(c,/
[\s\S]*?]+data-original=["']([^"']+)["']/i,1,""))||po(Ms(c,/
[\s\S]*?]+(?:data-src|src)=["']([^"']+)["']/i,1,"")),type_name:Yoe(u[2]||""),vod_year:ws(u[0]||""),vod_area:ws(u[1]||""),vod_remarks:ws(Ms(c,/
([\s\S]*?)<\/div>/i,1,""))||ws(Ms(c,/\u66f4\u65b0\u81f3[^<\s]+/,0,"")),vod_actor:Yoe(Ms(c,/\u4e3b\u6f14:[\s\S]*?]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_director:Yoe(Ms(c,/\u5bfc\u6f14:[\s\S]*?]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_content:ws(Ms(c,/
]*>([\s\S]*?)<\/div>/i,1,"")),vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}catch(a){console.error("wbbb detail failed:",i,a.message)}return{list:s}}async function X_r(t,e){let r=String(t.body?.wd||"").trim(),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,total:0,list:[]};try{let s=`/search/-------------.html?wd=${encodeURIComponent(r)}${n>1?`&page=${n}`:""}`,i=await hE(s),a=ece(i);return{page:n,pagecount:a.length>=20?n+1:n,total:a.length,list:a}}catch(s){return console.error("wbbb search failed:",s.message),{page:n,pagecount:n,total:0,list:[]}}}async function Z_r(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,jx:1,url:"",playId:""};let n=/^https?:\/\//i.test(r)?r:po(r);try{let s=await hE(n,{referer:n}),i=j_r(s);if(!i)return{parse:0,jx:0,url:n,playId:n,header:mE()};let a=String(i.from||t.body?.flag||"").trim(),o=H_r(i.url,i.encrypt);if(Zoe(o,a))return{parse:0,jx:0,url:o,playId:o,header:mE({Referer:n})};let c=String(i.parse||i.jx||"").trim();if(c){let u=/^https?:\/\//i.test(c)?`${c}${encodeURIComponent(o)}`:po(`${c}${encodeURIComponent(o)}`);return{parse:0,jx:0,url:u,playId:u,header:mE({Referer:n})}}try{let u=await K_r(String(i.url||""),n,q_r(s,i));if(u?.url){let l=mE({Referer:u.parsePageUrl||n});return Zoe(u.url,u.type||"")?{parse:0,jx:0,url:u.url,playId:u.url,header:l}:hct(u.url,l)}}catch(u){console.warn("wbbb resolve failed:",u.message)}return hct(o||n,{Referer:n})}catch(s){return console.error("wbbb play failed:",s.message),{parse:1,jx:1,url:n,playId:n,header:mE({Referer:n})}}}var Act={meta:{key:xa.key,name:"\u300C\u76F4\u300D\u6B6A\u6BD4",type:3},api:async t=>{t.post("/init",V_r),t.post("/home",z_r),t.post("/category",Y_r),t.post("/detail",J_r),t.post("/play",Z_r),t.post("/search",X_r)}};var Pw={key:"girigiri",name:"girigiri\u7231\u52A8\u6F2B",host:"https://ani.girigirilove.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",timeout:15e3},ba=Pw.host,tce=Pw.ua,Ow=48;function Ru(t){return String(t||"").replace(//gi," ").replace(//gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function Kl(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?ba+e:ba+"/"+e:""}function yct(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function eSr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function tSr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function rSr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}async function sM(t,e={}){let r=/^https?:\/\//i.test(t)?t:Kl(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||Pw.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":tce,Referer:e.referer||ba+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function nSr(t,e={}){let r=/^https?:\/\//i.test(t)?t:Kl(t),n=await he.get(r,{timeout:e.timeout||Pw.timeout,validateStatus:()=>!0,headers:{"User-Agent":tce,Referer:e.referer||ba+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function _ct(t){let e=[],r=t.match(/
[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="public-list-exp"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||"",a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/[\s\S]*?data-background="([^"]+)"[\s\S]*?([^<]+)<\/span>[\s\S]*?

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

${r}

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

`));return n?_ct(n[1]):[]}var xct=[{type_id:"2",type_name:"\u65E5\u756A"},{type_id:"3",type_name:"\u7F8E\u756A"},{type_id:"21",type_name:"\u5287\u5834\u7248"},{type_id:"20",type_name:"\u771F\u4EBA\u756A\u5287"},{type_id:"24",type_name:"BD\u526F\u97F3\u8ECC"},{type_id:"26",type_name:"\u6F14\u5531\u6703&\u5468\u908A\u6D3B\u52D5&\u5176\u4ED6"}],mo={n:"\u5168\u90E8",v:""},gE={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},AE={key:"month",name:"",init:"",value:[mo,{n:"\u4E00\u6708",v:"\u4E00\u6708"},{n:"\u56DB\u6708",v:"\u56DB\u6708"},{n:"\u4E03\u6708",v:"\u4E03\u6708"},{n:"\u5341\u6708",v:"\u5341\u6708"}]},yE={key:"year",name:"",init:"",value:(()=>{let t=[mo];for(let e=2026;e>=2001;e--)t.push({n:String(e),v:String(e)});return t.push({n:"2000\u81F390\u5E74\u4EE3",v:"2000\u81F390\u5E74\u4EE3"}),t})()},bct={2:[{key:"class",name:"",init:"",value:[mo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C"].map(t=>({n:t,v:t}))]},AE,yE,{key:"lang",name:"",init:"",value:[mo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"}]},{key:"version",name:"",init:"",value:[mo,{n:"TV\u756A",v:"TV\u756A"},{n:"\u6CE1\u9762\u756A",v:"\u6CE1\u9762\u756A"},{n:"OVA",v:"OVA"}]},{key:"state",name:"",init:"",value:[mo,{n:"\u5C0F\u8BF4\u6539",v:"\u5C0F\u8BF4\u6539"},{n:"\u6F2B\u753B\u6539",v:"\u6F2B\u753B\u6539"},{n:"\u6E38\u620F\u6539",v:"\u6E38\u620F\u6539"},{n:"\u539F\u521B",v:"\u539F\u521B"}]},gE],3:[{key:"class",name:"",init:"",value:[mo,...["\u641E\u7B11","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8"].map(t=>({n:t,v:t}))]},AE,yE,{key:"lang",name:"",init:"",value:[mo,{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},gE],21:[{key:"class",name:"",init:"",value:[mo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u803D\u7F8E","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},AE,yE,{key:"lang",name:"",init:"",value:[mo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u4E2D\u6587",v:"\u4E2D\u6587"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},gE],20:[{key:"class",name:"",init:"",value:[mo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C","\u7EAA\u5F55\u7247"].map(t=>({n:t,v:t}))]},AE,yE,{key:"lang",name:"",init:"",value:[mo,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u6CF0\u8BED",v:"\u6CF0\u8BED"}]},gE],24:[{key:"class",name:"",init:"",value:[mo,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},AE,yE,gE],26:[{key:"class",name:"",init:"",value:[mo,{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u5468\u8FB9\u6D3B\u52A8",v:"\u5468\u8FB9\u6D3B\u52A8"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},AE,yE,gE]};function iSr(t,e,r={}){let n=t||"2",s=m=>encodeURIComponent(m||""),i=r.by||"",a=r.class||"",o=r.month||"",c=r.year||"",u=r.version||"",l=r.state||"",d=r.lang||"",f=e>1?String(e):"",p=`/show/${n}-${s(o)}-${s(i)}-${s(a)}-${s(d)}----${f}-${s(l)}--${s(c)}/`;return u&&(p+=`version/${s(u)}/`),ba+p}function Ect(t,e={}){return{"User-Agent":tce,Referer:t||ba+"/",Origin:ba,...e}}async function aSr(t,e){return{}}async function oSr(t,e){try{let r=await sM(ba+"/"),n=tSr([...sSr(r),...nM(r,"\u6700\u8FD1\u5927\u5BB6\u5728\u770B"),...nM(r,"\u6216\u8BB8\u4F60\u611F\u5174\u8DA3\uFF1F"),...nM(r,"\u65E5\u756A"),...nM(r,"\u5267\u573A\u7248")]).slice(0,40);return{class:xct,filters:bct,list:n}}catch(r){return console.error("girigiri home failed:",r.message),{class:xct,filters:bct,list:[]}}}async function cSr(t,e){let r=String(t.body?.id||t.body?.tid||"2"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=iSr(r,n,s);try{let a=await sM(i),o=_ct(a);if(!o.length)return{list:[],page:n,pagecount:n,limit:Ow,total:0};let u=[`--------${n+1}---/`,`-${n+1}---/`].some(l=>a.includes(l));return{list:o,page:n,pagecount:u?n+1:n,limit:Ow,total:n*Ow+(u?Ow:o.length)}}catch(a){return console.error("girigiri category failed:",a.message),{list:[],page:n,pagecount:n,limit:Ow,total:0}}}async function uSr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=`${ba}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`;return{list:((await nSr(n,{headers:{"X-Requested-With":"XMLHttpRequest",Referer:`${ba}/search/-------------/`}}))?.list||[]).map(i=>({vod_id:`/GV${i.id}/`,vod_name:i.name||"",vod_pic:Kl(i.pic||""),vod_remarks:""}))}}catch(n){return console.error("girigiri search failed:",n.message),{list:[]}}}async function lSr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=Kl(i);if(a)try{let o=await sM(a),c=Ru((o.match(/(.*?)<\//i)||[])[1]||"").replace(/_.*$/,""),u=Kl((o.match(/<img[^>]+data-src="([^"]+\.webp)"/)||[])[1]||""),l=Ru((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/)||[])[1]||""),d=Ru((o.match(/<p>([^<]*?(?:æ›´æ–°|點|支持杜比)[^<]*?)<\/p>/)||[])[1]||""),f=(o.match(/20\d{2}/)||[])[0]||"",p=[],m=/<a class="swiper-slide"[^>]*>[\s\S]*? ([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,h;for(;(h=m.exec(o))!==null;)p.push({name:Ru(h[1]),count:Number(h[2]||0)});let A=o.match(/<div class="anthology wow[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),g=A?A[0]:"",b=[],y=/<div class="anthology-list-box[^>]*>([\s\S]*?)<\/div><\/div>/g,x;for(;(x=y.exec(g))!==null;){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(x[1]))!==null;){let P=Ru(N[2]),B=N[1];B.includes("/play")&&R.push({name:P,playId:yct({playUrl:B,epName:P,vodName:c,referer:i})})}R.length&&b.push(R)}if(!b.length){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(g||o))!==null;){let P=N[1];if(!P.includes("/play"))continue;let B=Ru(N[2]);R.push({name:B,playId:yct({playUrl:P,epName:B,vodName:c,referer:i})})}R.length&&b.push(R)}let v=[],I=[];for(let R=0;R<b.length;R+=1){let w=p[R]?.name||`\u7EBF\u8DEF${R+1}`,N=b[R].map(P=>`${P.name}$${P.playId}`);v.push(w),I.push(N.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:d,vod_content:l,vod_director:"",vod_actor:"",vod_year:f,vod_play_from:v.join("$$$"),vod_play_url:I.join("$$$")})}catch(o){console.error("girigiri detail failed:",i,o.message)}}return{list:s}}async function dSr(t,e){let r=String(t.body?.id||"").trim(),n=eSr(r),s=n.playUrl||r||"",i=Kl(n.referer||"/"),a=Kl(s);try{let c=(await sM(a,{referer:i||ba+"/",headers:{Origin:ba,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=u.url||"";u.encrypt===2?l=rSr(l):u.encrypt===1&&(l=decodeURIComponent(l));let d=l;/^https?:\/\//i.test(d)||(d=Kl(d));let f=new URL(d).origin,p=f===ba?i||ba+"/":f+"/";return{parse:0,url:d,header:Ect(p)}}catch(o){return console.error("girigiri play failed:",o.message),{parse:0,url:a,header:Ect(ba+"/")}}}var Sct={meta:{key:Pw.key,name:"\u300C\u76F4\u300D\u7231\u52A8\u6F2B",type:3},api:async t=>{t.post("/init",aSr),t.post("/home",oSr),t.post("/category",cSr),t.post("/detail",lSr),t.post("/play",dSr),t.post("/search",uSr)}};var em=Re(Jn(),1),Vf="https://www.cycani.org",Ict="https://player.cycanime.com",Cct="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",fSr="YLwJVbXw77pk2eOrAnFdBo2c3mWkLtodMni2wk81GCnP94ZltW",kw=48,eA=[{type_id:"20",type_name:"TV\u756A\u7EC4"},{type_id:"21",type_name:"\u5267\u573A\u756A\u7EC4"}],pSr={\u7C7B\u578B:"class",\u5E74\u4EFD:"year",\u5B57\u6BCD:"letter"},mSr={class:"\u7C7B\u578B",year:"\u5E74\u4EFD",letter:"\u5B57\u6BCD",by:"\u6392\u5E8F"},hSr={key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},rce=new Map;function zi(t){return String(t||"").replace(/ /gi," ").replace(/<br\s*\/?>/gi," ").replace(/<[^>]+>/g," ").replace(/\s+/g," ").trim()}function Tct(t){let e=Number.parseInt(t,10);return Number.isFinite(e)&&e>0?e:1}function Dw(t,e=Vf){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:r.startsWith("//")?`https:${r}`:new URL(r,e).toString():""}function wct(t=`${Vf}/`,e="text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8"){return{"User-Agent":Cct,Accept:e,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t}}async function tA(t,e=`${Vf}/`,r){let n=Dw(t),s=await he.get(n,{headers:wct(e,r),timeout:15e3,maxContentLength:3*1024*1024});return typeof s.data=="string"?s.data:String(s.data||"")}async function gSr(t,e=`${Vf}/`){let r=Dw(t),n=await he.get(r,{headers:{...wct(e,"application/json,text/javascript,*/*;q=0.01"),"X-Requested-With":"XMLHttpRequest"},timeout:15e3,maxContentLength:1024*1024});if(typeof n.data=="string")try{return JSON.parse(n.data)}catch{return null}return n.data||null}function iM(t){return encodeURIComponent(String(t||"").trim())}function Rct(t,e=1,r={}){let n=String(t||eA[0].type_id).trim()||eA[0].type_id,s=[],i=String(r.by||r.sort||"").trim(),a=String(r.class||"").trim(),o=String(r.letter||"").trim(),c=String(r.year||"").trim();return i&&s.push("by",iM(i)),a&&s.push("class",iM(a)),o&&s.push("letter",iM(o)),c&&s.push("year",iM(c)),e>1&&s.push("page",String(e)),`/show/${n}${s.length?`/${s.join("/")}`:""}.html`}function Nct(t){return(String(t||"").match(/\/bangumi\/(\d+)\.html/i)||[])[1]||""}function ASr(t){let e=String(t||"").match(/\/watch\/(\d+)\/(\d+)\/(\d+)\.html/i);return e?`${e[1]}/${e[2]}/${e[3]}`:""}function ySr(t){try{let e=JSON.parse(String(t||""));if(e&&e.id)return String(e.id)}catch{}return String(t||"").match(/\d+/)?.[0]||String(t||"").trim()}function vct(t,e){let r=t(e),n=r.find('a[href*="/bangumi/"]').first(),s=n.attr("href")||"",i=Nct(s);if(!i)return null;let a=r.find("img").first(),o=zi(n.attr("title")||a.attr("alt")||n.text());if(!o)return null;let c=a.attr("data-src")||a.attr("data-original")||a.attr("src")||"",u=zi(r.find(".public-list-subtitle,.public-list-prb,.slide-info-remarks").first().text());return{vod_id:i,vod_name:o,vod_pic:Dw(c),vod_remarks:u}}function nce(t){let e=Me(t||""),r=[],n=new Set;return e(".public-list-box,.swiper-slide").each((s,i)=>{let a=vct(e,i);!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r.length===0&&e('a[href*="/bangumi/"]').each((s,i)=>{let a=vct(e,e(i).closest("li,div").first());!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r}function Oct(t){let e=Me(t||""),r=[],n=new Set;return e(".ec-casc-list .nav-swiper").each((s,i)=>{let a=e(i),o=zi(a.find(".filter-text span").first().text()),c=a.find(".vod-ajax-select[data-type]").first().attr("data-type")||pSr[o]||"";if(!c||c==="channel"||c==="type"||n.has(c))return;let u=[];a.find(".vod-ajax-select").each((l,d)=>{let f=e(d),p=zi(f.find("a").first().text()||f.text()),m=String(f.attr("data-val")||"").trim();!p||p==="\u5206\u7C7B\u8D44\u6E90\u4E0D\u4EE3\u8868\u5168\u90E8\u8D44\u6E90"||!m&&p!=="\u5168\u90E8"||u.some(h=>h.v===m)||u.push({n:p,v:m})}),u.length>0&&(n.add(c),r.push({key:c,name:mSr[c]||o||c,init:"",value:u}))}),r.push(hSr),r}async function xSr(t){let e=String(t||eA[0].type_id);if(rce.has(e))return rce.get(e);let r=await tA(Rct(e,1),`${Vf}/`),n=Oct(r);return rce.set(e,n),n}function bSr(t,e,r){let s=zi(Me(t||"")(".page-tip").first().text()).match(/当前\s*(\d+)\s*\/\s*(\d+)\s*页/);return s?Number.parseInt(s[2],10)||e:r>=kw?e+1:e}async function ESr(){let t={};await Promise.all(eA.map(async r=>{t[r.type_id]=await xSr(r.type_id).catch(()=>[])}));let e=await tA("/");return{class:eA,filters:t,list:nce(e).slice(0,kw)}}async function _Sr(t){let e=t.body||{},r=String(e.id||eA[0].type_id).trim()||eA[0].type_id,n=Tct(e.page),s=e.filters||e.extend||e.ext||{},i=Rct(r,n,s),a=await tA(i,`${Vf}/show/${r}.html`),o=nce(a),c=bSr(a,n,o.length);return{page:n,pagecount:c,limit:kw,total:c*kw,list:o,filter:Oct(a)}}function SSr(t,e){let r=Me(t||""),n=e||Nct(r('link[rel="canonical"]').attr("href")||""),s=zi(r(".slide-info-title").first().text())||zi(r("h1,h2,h3").first().text())||zi(r("title").text().replace(/[_-].*$/,"")),i=Dw(r(".detail-pic img,.player-vod-no1 img").map((p,m)=>r(m).attr("data-src")||r(m).attr("data-original")||r(m).attr("src")).get().find(p=>p&&!String(p).startsWith("data:image"))),a=zi(r(".slide-info-remarks").first().text()),o=zi(r("#height_limit,.small-text,.vod-content,.text").first().text()),c=r(".partition").filter((p,m)=>/演员/.test(r(m).text())).find("a").map((p,m)=>zi(r(m).text())).get().filter(Boolean).join(","),u=r(".partition").filter((p,m)=>/导演/.test(r(m).text())).find("a").map((p,m)=>zi(r(m).text())).get().filter(Boolean).join(","),l=r(".partition").filter((p,m)=>/类型/.test(r(m).text())).find("a").map((p,m)=>zi(r(m).text())).get().filter(Boolean).join(","),d=[],f=[];return r(".anthology-list-box").each((p,m)=>{let h=zi(r(".anthology-tab a").eq(p).clone().children().remove().end().text())||`CYC_${p+1}`,A=[];r(m).find('a[href*="/watch/"]').each((g,b)=>{let y=ASr(r(b).attr("href"));if(!y)return;let x=zi(r(b).text())||`\u7B2C${A.length+1}\u96C6`;A.push(`${x}$${y}`)}),A.length>0&&(d.push(h),f.push(A.join("#")))}),{vod_id:n,vod_name:s,vod_pic:i,vod_remarks:a,type_name:l,vod_actor:c,vod_director:u,vod_content:o,vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")}}async function vSr(t){let e=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],r=[];for(let n of e.filter(Boolean)){let s=ySr(n);if(!s)continue;let i=await tA(`/bangumi/${s}.html`,`${Vf}/`);r.push(SSr(i,s))}return{list:r}}function ISr(t){let e=String(t?.encrypt||""),r=String(t?.url||"");return e==="1"?decodeURIComponent(r):e==="2"?decodeURIComponent(Buffer.from(r,"base64").toString("utf8")):r}function CSr(t){let e=String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i)||String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i);return e?JSON.parse(e[1]):null}function TSr(t){let e={},r=String(t||"");for(let n of["url","vkey","next","title","poster"]){let s=r.match(new RegExp(`["']${n}["']\\s*:\\s*["']([^"']*)["']`));s&&(e[n]=s[1])}return e}function wSr(t){let e=Me(t||""),r=String(e('meta[name="viewport"]').attr("id")||"").replace(/^now_/,""),n=String(e('meta[charset="UTF-8"]').attr("id")||e("meta[charset]").attr("id")||"").replace(/^now_/,"");return!r||!n||r.length!==n.length?"":n.split("").map((s,i)=>({id:Number(s),text:r[i]||""})).sort((s,i)=>s.id-i.id).map(s=>s.text).join("")}function RSr(t,e){let r=wSr(e);if(!r)return"";let n=em.default.MD5(r+fSr).toString(),s=em.default.enc.Utf8.parse(n.substring(16)),i=em.default.enc.Utf8.parse(n.substring(0,16));return em.default.AES.decrypt(t,s,{iv:i,mode:em.default.mode.CBC,padding:em.default.pad.Pkcs7}).toString(em.default.enc.Utf8)}async function NSr(t,e){if(/^https?:\/\//i.test(t))return t;let r=`${Ict}/?url=${encodeURIComponent(t)}`,n=await tA(r,`${Vf}${e}`),s=TSr(n);return RSr(s.url||"",n)||""}async function OSr(t){let e=String(t.body?.id||"").trim(),r=e.match(/(\d+)\/(\d+)\/(\d+)/)||e.match(/watch\/(\d+)\/(\d+)\/(\d+)/);if(!r)return{parse:0,url:"",header:{}};let n=`/watch/${r[1]}/${r[2]}/${r[3]}.html`,s=await tA(n,`${Vf}/bangumi/${r[1]}.html`),i=CSr(s);if(!i)return{parse:0,url:"",header:{}};let a=ISr(i);return{parse:0,jx:0,url:await NSr(a,n),header:{"User-Agent":Cct,Referer:`${Ict}/`}}}async function PSr(t){let e=String(t.body?.wd||"").trim(),r=Tct(t.body?.page);if(!e)return{page:r,pagecount:1,limit:20,total:0,list:[]};let n=await gSr(`/index.php/ajax/suggest?mid=1&limit=20&page=${r}&wd=${encodeURIComponent(e)}`),i=(Array.isArray(n?.list)?n.list:[]).map(a=>({vod_id:String(a.id||""),vod_name:zi(a.name),vod_pic:Dw(a.pic||""),vod_remarks:""})).filter(a=>a.vod_id&&a.vod_name);return{page:Number(n?.page||r),pagecount:Number(n?.pagecount||r),limit:Number(n?.limit||20),total:Number(n?.total||i.length),list:i}}async function kSr(t,e){return{}}async function DSr(){let t=await tA("/");return{list:nce(t).slice(0,kw)}}var Pct={meta:{key:"ciyuancheng",name:"\u300C\u76F4\u300D\u6B21\u5143\u57CE",type:3},api:async t=>{t.post("/init",kSr),t.post("/home",ESr),t.post("/homeVod",DSr),t.post("/category",_Sr),t.post("/detail",vSr),t.post("/play",OSr),t.post("/search",PSr)}};var xE={key:"xifan",name:"\u7A00\u996D\u52A8\u6F2B",host:"https://anime.xifanacg.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},Si=xE.host,Lw=xE.ua,kct=40;function Ea(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/\s+/g," ").trim()}function BSr(t){return Ea(t).replace(/\s*[_-]\s*(?:连载新番|完结旧番|剧场版|美漫).*$/i,"").replace(/\s*-\s*稀饭动漫.*$/i,"").replace(/\s*-\s*免费高清动漫分享.*$/i,"").trim()}function Oc(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Si+e:Si+"/"+e:""}function Dct(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function LSr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function MSr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function WSr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}function $Sr(t){try{let e=new URL(t);return e.hostname.endsWith("pan.wo.cn")||e.hostname.endsWith("moedot.net")}catch{return!1}}function FSr(t,e){let r={"User-Agent":Lw};if($Sr(t))return r;let n=new URL(t).origin;return r.Referer=n===Si?e||Si+"/":n+"/",r.Origin=Si,r}async function sce(t,e={}){let r=/^https?:\/\//i.test(t)?t:Oc(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||xE.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":Lw,Referer:e.referer||Si+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function USr(t,e,r={}){let n=/^https?:\/\//i.test(t)?t:Oc(t),s=await he({url:n,method:"post",data:e,timeout:r.timeout||xE.timeout,validateStatus:()=>!0,headers:{"User-Agent":Lw,Referer:r.referer||Si+"/","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...r.headers||{}}});if(s.status<200||s.status>=300)throw new Error(`HTTP ${s.status}`);return s.data}async function qSr(t,e={}){let r=/^https?:\/\//i.test(t)?t:Oc(t),n=await he.get(r,{timeout:e.timeout||xE.timeout,validateStatus:()=>!0,headers:{"User-Agent":Lw,Referer:e.referer||Si+"/","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function jSr(t){let e=[],r=String(t||"").match(/<div class="public-list-box[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="(?:public-list-exp|time-title)[^"]*"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||Ea((n.match(/class="time-title[^"]*"[^>]*>([\s\S]*?)<\/a>/)||[])[1]||""),a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/<span class="public-list-prb[^>]*>([\s\S]*?)<\/span>/)||[])[1]||"";!s||!i||e.push({vod_id:s,vod_name:Ea(i),vod_pic:Oc(a),vod_remarks:Ea(o)})}return e}function HSr(t){let e=[],r=/<div class="swiper-slide">[\s\S]*?<div class="swiper-lazy[^"]*" data-background="([^"]+)"[\s\S]*?<a class="lank" href="([^"]+)"[\s\S]*?<h3 class="slide-info-title hide">([\s\S]*?)<\/h3>[\s\S]*?<li>([^<]*)<\/li>/g,n;for(;(n=r.exec(String(t||"")))!==null;)e.push({vod_id:n[2],vod_name:Ea(n[3]),vod_pic:Oc(n[1]),vod_remarks:Ea(n[4])});return e}var Bct=[{type_id:"1",type_name:"\u8FDE\u8F7D\u65B0\u756A"},{type_id:"2",type_name:"\u5B8C\u7ED3\u65E7\u756A"},{type_id:"3",type_name:"\u5267\u573A\u7248"},{type_id:"21",type_name:"\u7F8E\u6F2B"}],Bw={n:"\u5168\u90E8",v:""},aM={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},Lct={key:"year",name:"",init:"",value:(()=>{let t=[Bw];for(let e=2026;e>=2005;e--)t.push({n:String(e),v:String(e)});return t})()},Mct={key:"class",name:"",init:"",value:[Bw,...["\u641E\u7B11","\u539F\u521B","\u8F7B\u5C0F\u8BF4\u6539","\u604B\u7231","\u767E\u5408","\u6F2B\u6539","\u6821\u56ED","\u6218\u6597","\u6CBB\u6108","\u5947\u5E7B","\u65E5\u5E38","\u9752\u6625","\u4E59\u5973\u5411","\u60AC\u7591","\u540E\u5BAB","\u79D1\u5E7B","\u5192\u9669","\u70ED\u8840","\u5F02\u4E16\u754C","\u6E38\u620F\u6539","\u97F3\u4E50","\u5076\u50CF","\u7F8E\u98DF","\u803D\u7F8E"].map(t=>({n:t,v:t}))]},Wct={1:[Mct,{key:"area",name:"",init:"",value:[Bw,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},Lct,aM],2:[Mct,Lct,aM],3:[{key:"area",name:"",init:"",value:[Bw,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},{key:"year",name:"",init:"",value:(()=>{let t=[Bw];for(let e=2026;e>=2004;e--)t.push({n:String(e),v:String(e)});return t})()},aM],21:[aM]};async function QSr(t,e){return{}}async function GSr(t,e){try{let r=await sce(Si+"/"),n=MSr([...HSr(r),...jSr(r)]).slice(0,40);return{class:Bct,filters:Wct,list:n}}catch(r){return console.error("xifan home failed:",r.message),{class:Bct,filters:Wct,list:[]}}}async function KSr(t,e){let r=String(t.body?.id||t.body?.tid||"1"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=new URLSearchParams;i.set("type",r),i.set("page",String(n)),i.set("by",String(s.by||"time")),s.class&&i.set("class",String(s.class)),s.area&&i.set("area",String(s.area)),s.year&&i.set("year",String(s.year));try{let a=await USr(`${Si}/index.php/ds_api/vod`,i.toString(),{referer:`${Si}/type/${r}.html`}),o=typeof a=="string"?JSON.parse(a):a||{},c=(o.list||[]).map(u=>({vod_id:u.url||`/bangumi/${u.vod_id}.html`,vod_name:u.vod_name||"",vod_pic:Oc(String(u.vod_pic||"").replace(/\\\//g,"/")),vod_remarks:u.vod_remarks||""})).filter(u=>u.vod_id&&u.vod_name);return{list:c,page:Number(o.page||n),pagecount:Number(o.pagecount||n),limit:Number(o.limit||kct),total:Number(o.total||c.length)}}catch(a){return console.error("xifan category failed:",a.message),{list:[],page:n,pagecount:n,limit:kct,total:0}}}async function VSr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{return{list:((await qSr(`${Si}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`,{referer:`${Si}/search/wd/${encodeURIComponent(r)}.html`}))?.list||[]).map(s=>({vod_id:`/bangumi/${s.id}.html`,vod_name:s.name||"",vod_pic:Oc(s.pic||""),vod_remarks:""}))}}catch(n){return console.error("xifan search failed:",n.message),{list:[]}}}async function zSr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=Oc(i);if(a)try{let o=await sce(a),c=BSr((o.match(/<h3[^>]*>([\s\S]*?)<\/h3>/i)||[])[1]||(o.match(/<title>(.*?)<\/title>/i)||[])[1]||""),u=Oc((o.match(/<div class="detail-pic">[\s\S]*?<img[^>]+(?:data-src|src)="([^"]+)"/i)||[])[1]||""),l=Ea((o.match(/<span class="slide-info-remarks cor5">([\s\S]*?)<\/span>/i)||[])[1]||""),d=Ea((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/year\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),f=Ea((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/area\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),p=Ea((o.match(/导演\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),m=Ea((o.match(/演员\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),h=Ea((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/i)||[])[1]||""),A=[],g=/<a class="swiper-slide">[\s\S]*? ([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,b;for(;(b=g.exec(o))!==null;)A.push({name:Ea(b[1]),count:Number(b[2]||0)});let y=o.match(/<div class="anthology-list[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),x=y?y[0]:o,v=[],I=/<div class="anthology-list-box[^>]*>[\s\S]*?<ul class="anthology-list-play size">([\s\S]*?)<\/ul>[\s\S]*?<\/div>\s*<\/div>/g,R;for(;(R=I.exec(x))!==null;){let P=[],B=/<a class="[^"]*" href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=B.exec(R[1]))!==null;){let D=M[1];D.includes("/watch/")&&P.push({name:Ea(M[2]),playId:Dct({playUrl:D,vodName:c,referer:i})})}P.length&&v.push(P)}if(!v.length){let P=[],B=/href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=B.exec(o))!==null;){let D=M[1];D.includes("/watch/")&&P.push({name:Ea(M[2]),playId:Dct({playUrl:D,vodName:c,referer:i})})}P.length&&v.push(P)}let w=[],N=[];for(let P=0;P<v.length;P+=1){let B=A[P]?.name||`\u7EBF\u8DEF${P+1}`,M=v[P].map(D=>`${D.name}$${D.playId}`);w.push(B),N.push(M.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:l,vod_content:h,vod_director:p,vod_actor:m,vod_year:d,vod_area:f,vod_play_from:w.join("$$$"),vod_play_url:N.join("$$$")})}catch(o){console.error("xifan detail failed:",i,o.message)}}return{list:s}}async function YSr(t,e){let r=String(t.body?.id||"").trim(),n=LSr(r),s=n.playUrl||r||"",i=Oc(n.referer||"/"),a=Oc(s);try{let c=(await sce(a,{referer:i||Si+"/",headers:{Origin:Si}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=String(u.url||"").replace(/\\\//g,"/");Number(u.encrypt)===2?l=WSr(l):Number(u.encrypt)===1&&(l=decodeURIComponent(l));let d=l;return/^https?:\/\//i.test(d)||(d=Oc(d)),{parse:0,url:d,header:FSr(d,i)}}catch(o){return console.error("xifan play failed:",o.message),{parse:0,url:a,header:{"User-Agent":Lw,Referer:Si+"/",Origin:Si}}}}var $ct={meta:{key:xE.key,name:"\u300C\u76F4\u300D\u7A00\u996D",type:3},api:async t=>{t.post("/init",QSr),t.post("/home",GSr),t.post("/category",KSr),t.post("/detail",zSr),t.post("/play",YSr),t.post("/search",VSr)}};var _a={key:"xifannext",name:"\u7A00\u996D\u52A8\u6F2B Next",host:"https://next.xifanacg.com",supabase:"https://rzmsnqblptbceicadbyd.supabase.co",anonKey:"sb_publishable_aCb7uwyLN6H-sMjze4dRGA_2MDuROLF",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},Vl=_a.host,tm=24,$w={n:"\u5168\u90E8",v:""},Fct=[{type_id:"all",type_name:"\u5168\u90E8\u756A\u5267"},{type_id:"recent",type_name:"\u6700\u8FD1\u66F4\u65B0"},{type_id:"ranking",type_name:"\u6392\u884C\u699C"},{type_id:"schedule",type_name:"\u5468\u8868"}],JSr={key:"format",name:"",init:"",value:[$w,{n:"TV \u52A8\u753B",v:"tv"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"OVA",v:"ova"},{n:"OAD",v:"oad"},{n:"Web \u52A8\u753B",v:"web"},{n:"\u5176\u4ED6",v:"other"}]},XSr={key:"finished",name:"",init:"",value:[$w,{n:"\u8FDE\u8F7D\u4E2D",v:"0"},{n:"\u5B8C\u7ED3",v:"1"}]},ZSr={key:"year",name:"",init:"",value:(()=>{let t=[$w];for(let e=2026;e>=2007;e-=1)t.push({n:String(e),v:String(e)});return t.push({n:"\u66F4\u65E9",v:"older"}),t})()},evr={key:"tag",name:"",init:"",value:[$w,...["\u6F2B\u753B\u6539","\u5C0F\u8BF4\u6539","\u5947\u5E7B","\u6218\u6597","\u539F\u521B","\u604B\u7231","\u6821\u56ED","\u65E5\u5E38","\u767E\u5408","\u540E\u5BAB","\u79D1\u5E7B","\u6E38\u620F\u6539","\u60AC\u7591","\u5192\u9669","\u7A7F\u8D8A","\u97F3\u4E50","\u8FD0\u52A8","\u673A\u6218","\u559C\u5267","\u5C11\u5E74\u5411","\u63A8\u7406","\u5C11\u5973\u5411","\u804C\u573A","\u7F8E\u98DF","\u9752\u5E74\u5411"].map(t=>({n:t,v:t}))]},tvr={key:"sort",name:"",init:"title",value:[{n:"\u6807\u9898",v:"title"},{n:"\u70ED\u5EA6",v:"view_count"},{n:"\u8BC4\u5206",v:"bangumi_score"},{n:"\u6700\u65B0",v:"release_date"}]},rvr={key:"days",name:"",init:"7",value:[{n:"7 \u5929",v:"7"},{n:"14 \u5929",v:"14"}]},nvr={key:"kind",name:"",init:"trending_week",value:[{n:"\u70ED\u5EA6",v:"trending_week"},{n:"\u8BC4\u5206",v:"rating"},{n:"\u98D9\u5347",v:"rising"},{n:"\u5B9D\u85CF",v:"hidden_gem"},{n:"\u5F39\u5E55",v:"danmaku_heat"}]},svr={key:"section",name:"",init:"all",value:[{n:"\u603B\u699C",v:"all"},{n:"\u65B0\u756A",v:"ongoing"},{n:"\u5B8C\u7ED3",v:"finished"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"\u7F8E\u6F2B",v:"western"}]},ivr={key:"weekday",name:"",init:"",value:[$w,{n:"\u5468\u4E00",v:"0"},{n:"\u5468\u4E8C",v:"1"},{n:"\u5468\u4E09",v:"2"},{n:"\u5468\u56DB",v:"3"},{n:"\u5468\u4E94",v:"4"},{n:"\u5468\u516D",v:"5"},{n:"\u5468\u65E5",v:"6"}]},Uct={all:[JSr,XSr,ZSr,evr,tvr],recent:[rvr],ranking:[nvr,svr],schedule:[ivr]};function zf(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/\s+/g," ").trim()}function jct(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Vl+e:`${Vl}/${e}`:""}function Hct(t){let e=jct(t);if(!e)return"";try{let r=new URL(e);if(r.hostname==="next.xifanacg.com"&&r.pathname==="/_next/image")return decodeURIComponent(r.searchParams.get("url")||e)}catch{}return e}function avr(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function ovr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function Qct(t){return zf(t).replace(/[$#]/g," ").trim()}function Gct(t){let e=String(t||"").trim();return e&&e.match(/(?:\/anime\/|^)(\d+)/)?.[1]||""}function Nu(...t){return t.find(e=>e!=null&&e!=="")}function cvr(t={}){return{...t.extend||{},...t.filter||{},...t.filters||{}}}function uvr(t={}){let e=Number(Nu(t.current_episodes,t.currentEpisodes,0)),r=Number(Nu(t.total_episodes,t.totalEpisodes,0));if(r>0&&e>0&&e<r)return`\u66F4\u65B0\u81F3 ${e} / ${r}`;if(r>0)return`\u5168 ${r} \u96C6`;let n=Nu(t.release_year,t.releaseYear,t.datePublished);if(n)return String(n);let s=Nu(t.bangumi_score,t.bangumiScore);return s!==void 0?String(s):""}function Mw(t={}){let e=Gct(Nu(t.id,t.url,t["@id"]));return{vod_id:e?`/anime/${e}`:"",vod_name:zf(t.title||t.name||""),vod_pic:Hct(Nu(t.cover_url,t.coverUrl,t.image,t.pic,"")),vod_remarks:uvr(t)}}function lvr(t,e){let r=String(e||"").trim();return r?{sortBy:r,sortOrder:r==="title"?"asc":"desc"}:t==="recent"?{sortBy:"release_date",sortOrder:"desc"}:t==="ranking"?{sortBy:"bangumi_score",sortOrder:"desc"}:{sortBy:"title",sortOrder:"asc"}}function ace(t={}){return String(t.year||"").trim()==="older"||String(t.older||"").trim()==="1"}function oce({tid:t="all",page:e=1,extend:r={},searchTerm:n=""}={}){let{sortBy:s,sortOrder:i}=lvr(t,Nu(r.sort,r.by)),a=Number.parseInt(String(r.year||""),10),o=String(r.finished??"").trim();return{search_term:n||null,page_number:e,items_per_page:tm,sort_by:s,sort_order:i,filter_type_id:null,filter_meta_tags:r.tag?[String(r.tag)]:null,filter_is_finished:o===""?null:o==="1",filter_format:r.format||null,filter_release_year:!ace(r)&&Number.isFinite(a)?a:null,filter_only_published:!0}}function dvr(t,e={}){let r=new URLSearchParams;t>1&&r.set("page",String(t)),e.format&&r.set("format",String(e.format)),String(e.finished??"").trim()&&r.set("finished",String(e.finished)),ace(e)?r.set("older","1"):e.year&&r.set("year",String(e.year)),e.tag&&r.set("tag",String(e.tag));let n=String(Nu(e.sort,e.by,"")).trim();n&&n!=="title"&&r.set("sort",n);let s=r.toString();return`/browse${s?`?${s}`:""}`}function ice(t){let e={"User-Agent":_a.ua};try{let r=new URL(t).hostname;if(r.endsWith("pan.wo.cn")||r.endsWith("moedot.net"))return e}catch{return e}return e.Referer=`${Vl}/`,e.Origin=Vl,e}async function Fw(t,e={}){let r=/^https?:\/\//i.test(t)?t:jct(t),n=await he({url:r,method:"get",timeout:e.timeout||_a.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":_a.ua,Referer:e.referer||`${Vl}/`,"Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function Ww(t,e){let r=await he({url:`${_a.supabase}/rest/v1/rpc/${t}`,method:"post",data:e,timeout:_a.timeout,validateStatus:()=>!0,headers:{apikey:_a.anonKey,Authorization:`Bearer ${_a.anonKey}`,"Content-Type":"application/json",Origin:Vl,Referer:`${Vl}/`,"User-Agent":_a.ua,"X-Client-Info":"supabase-js-web/2.49.1"}});if(r.status<200||r.status>=300)throw new Error(`RPC ${t} HTTP ${r.status}`);return r.data}async function fvr(t,e){let r=await he({url:`${_a.supabase}/functions/v1/${t}`,method:"post",data:e,timeout:_a.timeout,validateStatus:()=>!0,headers:{apikey:_a.anonKey,Authorization:`Bearer ${_a.anonKey}`,"Content-Type":"application/json",Origin:Vl,Referer:`${Vl}/`,"User-Agent":_a.ua}});if(r.status<200||r.status>=300)throw new Error(`Function ${t} HTTP ${r.status}`);return r.data}function Kct(t){let e=Me(t||""),r=[];return e('script[type="application/ld+json"]').each((n,s)=>{try{let i=JSON.parse(e(s).text()||"{}");Array.isArray(i?.["@graph"])?r.push(...i["@graph"]):r.push(i)}catch{}}),r}function pvr(t,e){return Kct(t).find(r=>{let n=r?.["@type"],s=String(r?.url||r?.["@id"]||"");return(n==="TVSeries"||n==="Movie")&&s.includes(`/anime/${e}`)})||{}}function qct(t,e){let r="";return t("dt").each((n,s)=>{if(zf(t(s).text())===e)return r=zf(t(s).next("dd").text()),!1}),r}function mvr(t,e){let r=0;for(let n=e-1;n>=0&&t[n]==="\\";n-=1)r+=1;return r}function hvr(t){return JSON.parse(String(t||"").replace(/\\"/g,'"').replace(/\\\\/g,"\\"))}function cM(t,e){let r=String(t||""),n=`\\"${e}\\":`,s=`"${e}":`,i=r.indexOf(n),a=!0;if(i<0&&(i=r.indexOf(s),a=!1),i<0)return[];let o=r.indexOf("[",i);if(o<0)return[];let c=0,u=!1,l=!1;for(let d=o;d<r.length;d+=1){let f=r[d];if(a&&f==='"'&&mvr(r,d)%4===1){u=!u;continue}if(!a){if(l){l=!1;continue}if(f==="\\"&&u){l=!0;continue}if(f==='"'){u=!u;continue}}if(!u){if(f==="[")c+=1;else if(f==="]"&&(c-=1,c===0)){let p=r.slice(o,d+1);try{return a?hvr(p):JSON.parse(p)}catch{return[]}}}}return[]}function gvr(t){let e=Kct(t).find(n=>n?.["@type"]==="ItemList")||{};return(Array.isArray(e.itemListElement)?e.itemListElement:[]).map(n=>Mw(n?.item||n)).filter(n=>n.vod_id&&n.vod_name)}function Avr(t,e){let r=String(t||"").match(/当前已选[\s\S]{0,120}?å…±[\s\S]{0,40}?(\d+)[\s\S]{0,40}?部/);return r?Number(r[1]):e}function yvr(t,e){let r=e;for(let n of String(t||"").matchAll(/[?&]page=(\d+)/g))r=Math.max(r,Number(n[1]));return Math.max(1,r)}function xvr(t,e){let r=Me(t||""),n=[];return r(`a[href*="/anime/${e}/play/"]`).each((s,i)=>{let o=(r(i).attr("href")||"").match(/\/play\/(\d+)(?:\?source=([^&#]+))?/);if(!o)return;let c=Number(o[1]),u=Qct(r(i).text())||`\u7B2C ${n.length+1} \u96C6`;!c||n.some(l=>l.id===c)||n.push({id:c,title:u,episode_number:n.length+1})}),n.length?[{code:"xfxf1",name:"\u7A00\u996D\u65B0\u756A\u4E3B\u7EBF-1",episodes:n}]:[]}function bvr(t,e){let r=Number(t?.episode_number||e+1),n=Number.isInteger(r)?String(r).padStart(2,"0"):String(e+1).padStart(2,"0"),s=Qct(t?.title||"");return s?`\u7B2C ${n} \u96C6 ${s}`:`\u7B2C ${n} \u96C6`}function Evr(t,e,r,n){let s=[],i=[];for(let a of t||[]){let c=(Array.isArray(a?.episodes)?a.episodes:[]).map((u,l)=>{let d=Number(u?.id||0);if(!d)return"";let f=avr({animeId:Number(e),episodeId:d,sourceCode:a.code||"",sourceName:a.name||"",vodName:r,referer:n});return`${bvr(u,l)}$${f}`}).filter(Boolean);c.length&&(s.push(zf(a.name||a.code||`\u7EBF\u8DEF${s.length+1}`)),i.push(c.join("#")))}return{vod_play_from:s.join("$$$"),vod_play_url:i.join("$$$")}}async function _vr(t,e){return{}}async function Svr(t,e){try{let r=await Ww("search_animes",oce({tid:"recent",page:1,extend:{by:"release_date"}}));return{class:Fct,filters:Uct,list:(Array.isArray(r)?r:[]).map(Mw).filter(n=>n.vod_id&&n.vod_name)}}catch(r){return console.error("xifannext home failed:",r.message),{class:Fct,filters:Uct,list:[]}}}function oM(t){return(Array.isArray(t)?t:[]).map(Mw).filter(e=>e.vod_id&&e.vod_name)}function vvr(t){let e=new Set;return t.filter(r=>!r.vod_id||e.has(r.vod_id)?!1:(e.add(r.vod_id),!0))}function Vct(t,e){let r=oM(t);return{list:e>1?[]:r,page:e,pagecount:1,limit:tm,total:r.length}}async function Ivr(t,e){if(ace(e)){let a=await Fw(dvr(t,e)),o=gvr(a),c=Avr(a,o.length),u=yvr(a,Math.ceil(c/tm)||t);return{list:o,page:t,pagecount:u,limit:tm,total:c}}let r=await Ww("search_animes",oce({tid:"all",page:t,extend:e})),n=Array.isArray(r)?r:[],s=oM(n),i=Number(n[0]?.total_count||s.length);return{list:s,page:t,pagecount:Math.max(1,Math.ceil(i/tm)),limit:tm,total:i}}async function Cvr(t,e){let r=await Fw("/recent"),n=Number(Nu(e.days,7)),s=cM(r,"windows"),i=s.find(a=>Number(a?.days)===n)||s[0]||{};return Vct(i.items||[],t)}async function Tvr(t,e){let r=String(Nu(e.kind,"trending_week")).trim()||"trending_week",n=String(Nu(e.section,"all")).trim()||"all",s=await Fw(`/rankings?kind=${encodeURIComponent(r)}`),i=cM(s,"sections"),a=i.find(o=>String(o?.key||"")===n)||i[0]||{};return Vct(a.items||[],t)}async function wvr(t,e){let r=await Fw("/schedule"),n=String(e.weekday??"").trim(),s=cM(r,"schedule"),i=n===""?vvr(s.flatMap(a=>oM(a?.animes||[]))):oM((s.find(a=>String(a?.weekday)===n)||{}).animes||[]);return{list:t>1?[]:i,page:t,pagecount:1,limit:tm,total:i.length}}async function Rvr(t,e){let r=String(t.body?.id||t.body?.tid||"all"),n=Math.max(1,Number(t.body?.page||t.body?.pg||1)),s=cvr(t.body||{});try{return r==="recent"?await Cvr(n,s):r==="ranking"?await Tvr(n,s):r==="schedule"?await wvr(n,s):await Ivr(n,s)}catch(i){return console.error("xifannext category failed:",i.message),{list:[],page:n,pagecount:n,limit:tm,total:0}}}async function Nvr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=await Ww("suggest_animes",{q:r,lim:20}),s=(Array.isArray(n)?n:[]).map(Mw).filter(i=>i.vod_id&&i.vod_name);if(!s.length){let i=await Ww("search_animes",oce({page:1,searchTerm:r}));s=(Array.isArray(i)?i:[]).map(Mw).filter(a=>a.vod_id&&a.vod_name)}return{list:s}}catch(n){return console.error("xifannext search failed:",n.message),{list:[]}}}async function Ovr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(Gct).filter(Boolean),s=[];for(let i of n){let a=`/anime/${i}`;try{let o=await Fw(a),c=Me(o),u=pvr(o,i),l=zf(u.name||c("h1").first().text()),d=cM(o,"sources"),f=d.length?d:xvr(o,i),p=Evr(f,i,l,a);s.push({vod_id:a,vod_name:l,vod_pic:Hct(u.image||c("img[alt]").first().attr("src")||""),vod_remarks:u.numberOfEpisodes?`\u5168 ${u.numberOfEpisodes} \u96C6`:"",vod_content:zf(u.description||""),vod_director:qct(c,"\u5BFC\u6F14"),vod_actor:qct(c,"\u58F0\u4F18"),vod_year:String(u.datePublished||"").slice(0,4),vod_area:zf(u.countryOfOrigin||""),vod_class:Array.isArray(u.genre)?u.genre.join(","):zf(u.genre||""),...p})}catch(o){console.error("xifannext detail failed:",i,o.message)}}return{list:s}}async function Pvr(t,e){let r=String(t.body?.id||"").trim(),n=ovr(r),s=Number(n.episodeId||(r.match(/\/play\/(\d+)/)||[])[1]||0),i=String(n.sourceCode||(()=>{try{return new URL(r,Vl).searchParams.get("source")||""}catch{return""}})()).trim();if(!s)return{parse:0,url:r,header:ice(r)};try{let a=await Ww("get_play_url",{p_episode_id:s}),o=Array.isArray(a?.urls)?a.urls:[],c=o.find(l=>String(l.source_code||"")===i)||o[0]||{},u=String(c.url||"").trim();if(!u){let l=await fvr("issue-hls-playback",{episode_id:s});u=String(l?.url||"").trim()}if(!u)throw new Error("play url not found");return{parse:0,url:u,header:ice(u)}}catch(a){return console.error("xifannext play failed:",s,a.message),{parse:0,url:r,header:ice(r)}}}var zct={meta:{key:_a.key,name:"\u300C\u76F4\u300D\u7A00\u996D\xB2",type:3},api:async t=>{t.post("/init",_vr),t.post("/home",Svr),t.post("/category",Rvr),t.post("/detail",Ovr),t.post("/play",Pvr),t.post("/search",Nvr)}};var EE="https://4kzn.com",kvr={"User-Agent":Gr,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`${EE}/`},cce={key:"by",name:"",init:"date",value:[{n:"\u53D1\u5E03",v:"date"},{n:"\u66F4\u65B0",v:"modified"},{n:"\u6D4F\u89C8",v:"views"},{n:"\u70B9\u8D5E",v:"like"}]},Yct=[{type_id:"books/zuixin",type_name:"\u5F71\u89C6"},{type_id:"books/top250",type_name:"TOP250"},{type_id:"books/juji",type_name:"\u5267\u96C6"},{type_id:"books/dianying",type_name:"\u7535\u5F71"},{type_id:"books/xiliehj",type_name:"\u7CFB\u5217\u5408\u96C6"},{type_id:"books/manwei",type_name:"\u6F2B\u5A01\u7535\u5F71\u7CFB\u5217\u5408\u96C6"},{type_id:"books/mztkn",type_name:"\u540D\u4FA6\u63A2\u67EF\u5357\u5267\u573A\u7248\u5408\u96C6"},{type_id:"books/hanniba",type_name:"\u6C49\u5C3C\u62D4\u5408\u96C6"}],uM={};for(let t of Yct)uM[t.type_id]=[cce];uM["books/juji"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"juq"},{n:"\u60CA\u609A",v:"jings"},{n:"\u72AF\u7F6A",v:"fanzuii"},{n:"\u52A8\u4F5C",v:"jjdongzuo"},{n:"\u5386\u53F2",v:"jjlishi"},{n:"\u6218\u4E89",v:"jjzhanzheng"},{n:"\u5192\u9669",v:"jjmaoxian"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u6700\u65B0",v:"zuixin-juji"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u52A8\u753B",v:"\u52A8\u753B"}]},cce];uM["books/dianying"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"xiju"},{n:"\u7231\u60C5",v:"aiqing"},{n:"\u5267\u60C5",v:"juqing"},{n:"\u60AC\u7591",v:"xuanyi"},{n:"\u4F20\u8BB0",v:"zhuanji"},{n:"\u52A8\u4F5C",v:"dongzuo"},{n:"\u79D1\u5E7B",v:"kehuan"},{n:"\u72AF\u7F6A",v:"fanzui"},{n:"\u5947\u5E7B",v:"qihuan"},{n:"\u5192\u9669",v:"maoxian"},{n:"\u5BB6\u5EAD",v:"jiating"},{n:"\u8FD0\u52A8",v:"yundong"},{n:"\u6B4C\u821E",v:"gewu"},{n:"\u6218\u4E89",v:"zhanzheng"},{n:"\u60CA\u609A",v:"jingsong"},{n:"\u897F\u90E8",v:"xibu"},{n:"\u52A8\u753B",v:"donghua"},{n:"\u707E\u96BE",v:"zainan"},{n:"\u6050\u6016",v:"kongbu"},{n:"\u5386\u53F2",v:"lishi"},{n:"\u97F3\u4E50",v:"yinyue"},{n:"\u540C\u6027",v:"tongxing"},{n:"\u7EAA\u5F55\u7247",v:"jilupian"},{n:"\u53E4\u88C5",v:"guzhuang"},{n:"\u513F\u7AE5",v:"ertong"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"}]},cce];async function uce(t){return(await he.get(t,{headers:kvr})).data}function rA(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${EE}${e}`:`${EE}/${e.replace(/^\/+/,"")}`:""}function bE(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/\s+/g," ").trim()}function Jct(t){let e=Me(t),r=[],n=new Set;return e("article.posts-item").each((s,i)=>{let a=e(i).find('a.item-image, h3.item-title a, a[target="_blank"]').first(),o=rA(a.attr("href")||""),c=bE(e(i).find(".item-title a").first().text()||a.text()||e(i).attr("data-title")||"");if(!o||!c||n.has(o))return;n.add(o);let u=rA(e(i).find("img").first().attr("data-src")||e(i).find("img").first().attr("src")||""),l=bE(e(i).find(".line1.text-muted.text-xs, .book-info, .item-desc, .sub-title").first().text());r.push({vod_id:o,vod_name:c,vod_pic:u,vod_remarks:l})}),r}function Dvr(t){let e=t.match(/\/books\/[^"']+\/page\/(\d+)/g),r=e?e.map(i=>Number((i.match(/(\d+)$/)||[0,1])[1]||1)):[],n=r.length?Math.max(...r):1,s=/class="next-page[^>]*>\s*<a[^>]*href="[^"]+\/page\/\d+"/i.test(t);return{pagecount:Math.max(n,s?n+1:1)}}async function Bvr(t,e){return{class:Yct,filters:uM}}async function Lvr(t,e){try{let r=String(t.body.id||"books/zuixin").replace(/^\/+/,""),n=t.body.page,s=t.body.filters||{},i=parseInt(n,10);(!i||i<1)&&(i=1);let a=r;s.class&&(a=`books/${encodeURIComponent(s.class)}`);let o=i>1?`${EE}/${a}/page/${i}`:`${EE}/${a}`;s.by&&(o+=`?orderby=${s.by}`);let c=await uce(o),u=Jct(c),{pagecount:l}=Dvr(c);return{page:i,pagecount:l,limit:72,total:l*Math.max(u.length,1),list:u}}catch(r){return console.error("[4kzn][category]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}async function Mvr(t,e){try{let r=String(t.body.id||"").trim();if(!r)return{list:[]};let n=/^https?:\/\//i.test(r)?r:rA(r),s=await uce(n),i=Me(s),a=bE(i("h1, h2, .book-title").first().text())||bE(i("meta[property='og:title']").attr("content")||""),o=rA(i('.book-cover img, meta[property="og:image"]').first().attr("data-src")||i('.book-cover img, meta[property="og:image"]').first().attr("content")||i(".book-cover img").first().attr("src")||""),c=bE(i("meta[name='description']").attr("content")||i(".panel-body.single").text()),u=[],l=new Set,d=[".site-go a[target='_blank']","a[target='_blank'][href*='pan.quark.cn']","a[href*='quark.cn']","a[href*='uc.cn']","a[href*='aliyundrive.com']","a[href*='115.com']"].join(", ");if(i(d).each((p,m)=>{let h=rA(i(m).attr("href")||"");!h||l.has(h)||(l.add(h),u.push(h))}),!u.length){let p=i("a.external[href*='pan.quark.cn'], a[href*='pan.quark.cn'], a[href*='quark.cn']").first(),m=rA(p.attr("href")||"");m&&u.push(m)}let f={vod_id:n,vod_name:a,vod_pic:o,vod_content:c};if(u.length){let p=await wr(u,t);p?.froms&&p?.urls&&(f.vod_play_from=p.froms,f.vod_play_url=p.urls)}return{list:[f]}}catch(r){return console.error("[4kzn][detail]",r.message),{list:[]}}}async function Wvr(t,e){try{let r=t.body.wd,n=t.body.page,s=parseInt(n,10);if((!s||s<1)&&(s=1),!r)return{page:s,pagecount:0,limit:72,total:0,list:[]};let i=`${EE}/?s=${encodeURIComponent(r)}`,a=await uce(i),o=Jct(a);if(!o.length){let c=Me(a);o=[],c("a[href*='/book/'], a[href*='/sites/']").each((u,l)=>{let d=c(l),f=rA(d.attr("href")||""),p=bE(d.text());!f||!p||p.includes(r)&&o.push({vod_id:f,vod_name:p,vod_pic:"",vod_remarks:""})})}return{page:s,pagecount:1,limit:72,total:o.length,list:o}}catch(r){return console.error("[4kzn][search]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}var Xct={meta:{key:"4kzn",name:"\u300C\u76D8\u300D\u6307\u5357",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Bvr),t.post("/category",Lvr),t.post("/detail",Mvr),t.post("/play",Nr),t.post("/search",Wvr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Rr)}};var Uw="https://kafeizhibo.com",$vr=`${Uw}/api/v1`,iut="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",Fvr={"User-Agent":iut,Accept:"application/json, text/plain, */*",Referer:`${Uw}/pc/replay`},lce="live:",lM="schedule:",Uvr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,Zct=[{type_id:"schedule",type_name:"\u8D5B\u7A0B"},{type_id:"live",type_name:"\u76F4\u64AD"},{type_id:"replay",type_name:"\u5F55\u64AD"}],qvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],jvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"NBA",v:"nba"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"}],Hvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],eut={live:[{key:"type",name:"",init:"all",value:qvr}],replay:[{key:"type",name:"",init:"all",value:jvr}],schedule:[{key:"type",name:"",init:"all",value:Hvr}]},aut=new Map;function xt(t){return String(t??"").trim()}function tut(t){return t!=null&&xt(t)!==""}function _E(t=""){let e=xt(t);if(!e)return"";if(/^https?:\/\//i.test(e))return e;if(e.startsWith("//"))return`https:${e}`;try{return new URL(e,Uw).toString()}catch{return e}}function out(t=""){let e=xt(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?_E(e):/^[\w.-]+\.[a-z]{2,}(?:[/:?#]|$)/i.test(e)?`https://${e}`:e:""}function Qvr(t=""){return/^https?:\/\//i.test(xt(t))}function Gvr(t=""){return Uvr.test(xt(t))}function dM(t={}){let e=_E(t.cover_image);return e&&!e.includes("default_cover")?e:_E(t.home_team_logo)||_E(t.away_team_logo)||e}function dce(t={}){return _E(t.screenshot)||dM(t.match_info||t)||_E(t.avatar)||dM(t)}function zl(t={}){return!tut(t.home_score)||!tut(t.away_score)?"":`${xt(t.home_score)} - ${xt(t.away_score)}`}function rm(t={}){let e=xt(t.home_team),r=xt(t.away_team),n=xt(t.league_name),s=xt(t.match_name||t.title||t.name||(t.match_id??t.id)),i=e&&r?`${e} vs ${r}`:e||r||s||"\u8D5B\u4E8B\u5F55\u50CF";return n?`${i} (${n})`:i}function fce(t=""){let e=xt(t).toLowerCase();return{live:"\u76F4\u64AD\u4E2D",online:"\u5728\u7EBF",finished:"\u5DF2\u7ED3\u675F",upcoming:"\u672A\u5F00\u59CB"}[e]||xt(t)}function Kvr(t=""){let e=xt(t),r=e.match(/^(\d{4})-(\d{2})-(\d{2})\s+(\d{2}:\d{2})/);return r?{time:r[4],date:`${r[2]}-${r[3]}`}:{time:e,date:""}}function SE(t={}){let e=t.data??t;return Array.isArray(e)?e:Array.isArray(e?.list)?e.list:Array.isArray(e?.records)?e.records:Array.isArray(e?.items)?e.items:[]}function rut(t={}){let e=t.data??t,r=[e?.total,e?.count,t?.total,t?.count];for(let n of r){let s=Number.parseInt(n,10);if(Number.isFinite(s)&&s>=0)return s}return null}function nut(t,e,r,n=null){let s=Number.isFinite(n)?n:null;return{page:t,pagecount:s===null?t+(r.length>=e?1:0):Math.max(t,Math.ceil(s/e)),limit:e,total:s===null?(t-1)*e+r.length+(r.length>=e?1:0):s,list:r}}async function qw(t,e={}){let r=t.startsWith("http")?t:`${$vr}${t}`,n=await he.get(r,{params:e,headers:Fvr,timeout:15e3,validateStatus:()=>!0});if(n.status<200||n.status>=400)throw new Error(`HTTP ${n.status} @ ${r}`);let s=typeof n.data=="string"?JSON.parse(n.data||"{}"):n.data||{},i=Number(s?.code);if(Number.isFinite(i)&&i!==0&&i!==200)throw new Error(s?.message||s?.msg||`API code=${s.code}`);return s}async function cut(t=1,e=30,{league:r="",type:n=""}={}){let s={page:t,size:e};return r?s.league=r:n&&n!=="all"&&n!=="nba"&&(s.type=n),qw("/recordings",s)}async function uut(t="all"){return qw("/archor",{type:t||"all",_t:Date.now()})}async function Vvr(t){return qw(`/room/${encodeURIComponent(t)}`)}async function lut(t="hot",e=1,r=30){return qw("/schedule",{type:t||"hot",page:e,size:r,platform:"pc",_t:Date.now()})}function dut(t={}){let e=xt(t.match_id??t.id),r=xt(t.recording_count),n=[zl(t),xt(t.start_time),r?`${r}\u4E2A\u5F55\u50CF`:""].filter(Boolean);return{vod_id:e,vod_name:rm(t),vod_pic:dM(t),vod_remarks:n.join(" | "),type_name:xt(t.league_name)}}function fut(t={}){let e=t.match_info||t,r=xt(t.room_id||t.archor?.room_id||t.match_id),n=fce(t.status||e.status),s=xt(t.heat),i=[n,zl(t)||zl(e),s?`\u70ED\u5EA6 ${s}`:""].filter(Boolean);return{vod_id:r?`${lce}${r}`:"",vod_name:xt(t.title)||rm(e),vod_pic:dce(t),vod_remarks:i.join(" | "),type_name:xt(t.league_name||e.league_name)}}function put(t={}){if(t.archor?.room_id)return xt(t.archor.room_id);let r=(Array.isArray(t.archors)?t.archors:[]).find(n=>n?.room_id);return xt(r?.room_id||t.room_id)}function mut(t={}){let e=put(t),r=xt(t.match_id??t.id),n=e&&r?`${lM}${r}:${e}`:"",s=Kvr(t.start_time),i=[s.time||fce(t.status),s.date,zl(t),t.is_hot?"\u70ED\u95E8":""].filter(Boolean);return n&&aut.set(n,t),{vod_id:n,vod_name:xt(t.title)||rm(t),vod_pic:dce(t),vod_remarks:i.join(" | "),type_name:xt(t.league_name)}}function hut(t,e){return(xt(t)||e).replace(/[$#]/g," ").replace(/\s+/g," ").trim()||e}function sut(t=[],e="\u64AD\u653E"){return t.map((r,n)=>{let s=out(r.video_url||r.stream_url||r.url||r.play_url);return s?`${hut(r.title||r.name,`${e}${n+1}`)}$${encodeURIComponent(s)}`:""}).filter(Boolean).join("#")}function zvr(t=""){let e=xt(t);if(!e)return"";try{return decodeURIComponent(e)}catch{return e}}function Yvr(t=""){let e=xt(t);return e==="live"?"all":e.startsWith("live_")?e.slice(5)||"all":null}function Jvr(t={}){let e=t.room_info||{},r=t.archor||{},n=t.teams||{};return{match_id:e.match_id||t.match_id,room_id:e.room_id||r.room_id,title:e.title||r.name,league_name:e.league||e.league_name,home_team:n.home?.name||e.home_team,away_team:n.away?.name||e.away_team,home_team_logo:n.home?.logo,away_team_logo:n.away?.logo,home_score:e.home_score??t.home_score,away_score:e.away_score??t.away_score,status:t.status||e.status||r.status,screenshot:r.screenshot,screenshot_updated_at:r.screenshot_updated_at,avatar:r.avatar||e.avatar,heat:r.heat,notice:e.notice||e.notice_h5}}function Xvr(t={}){return{match_id:t.match_id||t.id,room_id:put(t),title:xt(t.title)||rm(t),league_name:t.league_name,home_team:t.home_team||t.homeTeam?.name,away_team:t.away_team||t.awayTeam?.name,home_team_logo:t.home_team_logo||t.homeTeam?.logo,away_team_logo:t.away_team_logo||t.awayTeam?.logo,home_score:t.home_score,away_score:t.away_score,status:t.status,screenshot:t.screenshot,avatar:t.archor?.avatar,heat:t.archor?.heat,start_time:t.start_time,notice:t.is_hot?"\u70ED\u95E8\u8D5B\u7A0B":""}}function Zvr(t={}){let e=[],r=new Set,n=(s={},i="\u7EBF\u8DEF")=>{let a=out(s.stream_url||s.url||s.play_url);!a||r.has(a)||(r.add(a),e.push({name:hut(s.name||s.title,`${i}${e.length+1}`),url:a}))};return n(t,"\u7EBF\u8DEF"),n(t.archor,"\u4E3B\u64AD"),(Array.isArray(t.archors)?t.archors:[]).forEach(s=>n(s,"\u4E3B\u64AD")),(Array.isArray(t.signals)?t.signals:[]).forEach(s=>n(s,"\u7EBF\u8DEF")),[t.external_signals_pc,t.external_signals,t.external_signals_h5,t.room_info?.external_signals_pc,t.room_info?.external_signals,t.room_info?.external_signals_h5].forEach(s=>{(Array.isArray(s)?s:[]).forEach(i=>n(i,"\u5916\u90E8"))}),e}async function eIr(t,e){return{}}async function tIr(t,e){try{let r=await lut("all",1,30),n=SE(r).map(mut).filter(s=>s.vod_id&&s.vod_name);return{class:Zct,filters:eut,list:n}}catch(r){return console.error("kafei home failed:",r.message),{class:Zct,filters:eut,list:[]}}}async function rIr(t,e){let r=xt(t.body?.id||"all"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{};if(r==="schedule"){let u=xt(s.type||"all"),l=30;try{let d=await lut(u,n,l),f=SE(d).map(mut).filter(p=>p.vod_id&&p.vod_name);return nut(n,l,f,rut(d))}catch(d){return console.error("kafei schedule category failed:",u,d.message),{page:n,pagecount:n,limit:l,total:0,list:[]}}}let i=Yvr(r);if(i!==null){let u=xt(s.type||i||"all");if(n>1)return{page:n,pagecount:1,limit:100,total:0,list:[]};try{let l=await uut(u),d=SE(l).map(fut).filter(f=>f.vod_id&&f.vod_name);return{page:1,pagecount:1,limit:d.length||100,total:d.length,list:d}}catch(l){return console.error("kafei live category failed:",r,l.message),{page:1,pagecount:1,limit:100,total:0,list:[]}}}let a=r==="replay"?xt(s.type||"all"):r,o=a.toLowerCase(),c=o==="nba"?20:30;try{let u=await cut(n,c,{league:o==="nba"?"NBA":"",type:o==="all"?"":a}),l=SE(u).map(dut).filter(d=>d.vod_id&&d.vod_name);return nut(n,c,l,rut(u))}catch(u){return console.error("kafei category failed:",r,u.message),{page:n,pagecount:n,limit:c,total:0,list:[]}}}async function nIr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=xt(s);if(i)try{if(i.startsWith(lce)||i.startsWith(lM)){let h=i.startsWith(lM),A=h?i.slice(lM.length).split(":").pop():i.slice(lce.length),g=h?aut.get(i):null,b=g?null:await Vvr(A),y=g||b?.data||{},x=g?Xvr(y):Jvr(y),I=Zvr(y).map(R=>`${R.name}$${encodeURIComponent(R.url)}`).join("#");n.push({vod_id:i,vod_name:xt(x.title)||rm(x),vod_pic:dce(x),type_name:xt(x.league_name),vod_remarks:[fce(x.status),zl(x)].filter(Boolean).join(" | "),vod_content:[xt(x.league_name),xt(x.title)||rm(x),zl(x)?`\u6BD4\u5206 ${zl(x)}`:"",xt(x.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${xt(x.start_time)}`:"",xt(x.notice)].filter(Boolean).join("\uFF0C"),vod_play_from:I?"\u76F4\u64AD":"",vod_play_url:I});continue}let o=(await qw(`/match/${encodeURIComponent(i)}/recordings`)).data||{},c=o.match||o,u=Array.isArray(o.replays)?o.replays:[],l=Array.isArray(o.highlights)?o.highlights:[],d=[],f=[],p=sut(u,"\u5F55\u50CF");p&&(d.push("\u5F55\u50CF"),f.push(p));let m=sut(l,"\u96C6\u9526");m&&(d.push("\u96C6\u9526"),f.push(m)),n.push({vod_id:i,vod_name:rm(c),vod_pic:dM(c),type_name:xt(c.league_name),vod_remarks:zl(c),vod_content:[xt(c.league_name),xt(c.match_round),rm(c),zl(c)?`\u6BD4\u5206 ${zl(c)}`:"",xt(c.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${xt(c.start_time)}`:""].filter(Boolean).join("\uFF0C"),vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")})}catch(a){console.error("kafei detail failed:",i,a.message)}}return{list:n}}async function sIr(t,e){let r=zvr(t.body?.id);return r?{parse:Qvr(r)&&!Gvr(r)?1:0,url:r,header:{"User-Agent":iut,Referer:Uw,Origin:Uw}}:{parse:0,url:"",header:{}}}async function iIr(t,e){let r=xt(t.body?.wd||t.body?.keyword).toLowerCase(),n=100;if(!r)return{page:1,pagecount:1,limit:n,total:0,list:[]};try{let[s,i]=await Promise.allSettled([uut("all"),cut(1,n)]),a=s.status==="fulfilled"?SE(s.value):[],o=i.status==="fulfilled"?SE(i.value):[],c=a.filter(d=>{let f=d.match_info||d;return[d.title,d.name,d.home_team,d.away_team,d.league_name,f.home_team,f.away_team,f.league_name].map(xt).join(" ").toLowerCase().includes(r)}).map(fut),u=o.filter(d=>[d.home_team,d.away_team,d.league_name,d.match_name,d.title].map(xt).join(" ").toLowerCase().includes(r)).map(dut),l=[...c,...u].filter(d=>d.vod_id&&d.vod_name);return{page:1,pagecount:1,limit:n,total:l.length,list:l}}catch(s){return console.error("kafei search failed:",s.message),{page:1,pagecount:1,limit:n,total:0,list:[]}}}var gut={meta:{key:"kafei",name:"\u300C\u76F4\u300D\u5496\u5561",type:3},api:async t=>{t.post("/init",eIr),t.post("/home",tIr),t.post("/category",rIr),t.post("/detail",nIr),t.post("/play",sIr),t.post("/search",iIr)}};var yut=require("crypto");var pce="/embySpider",Yl={clientName:"SenPlayer",clientVersion:"6.0.5",deviceName:"iPhone",language:"zh-cn",userAgent:"SenPlayer/6.0.5"};function aIr(){return(0,yut.randomUUID)().toUpperCase()}function xut(t,e=!1){return Fo(t)||(e?aIr():"")}function vE({token:t="",contentType:e=!1,deviceId:r="",userId:n=""}={}){let s=xut(r),i=Fo(t),a=Fo(n),o={"X-Emby-Authorization":[`MediaBrowser Token="${i}"`,`UserId="${a}"`,`Client="${Yl.clientName}"`,`Device="${Yl.deviceName}"`,`DeviceId="${s}"`,`Version="${Yl.clientVersion}"`].join(", "),"X-Emby-Client":Yl.clientName,"X-Emby-Device-Name":Yl.deviceName,"X-Emby-Device-Id":s,"X-Emby-Client-Version":Yl.clientVersion,"X-Emby-Language":Yl.language,"User-Agent":Yl.userAgent};return e&&(o["Content-Type"]="application/json"),i&&(o["X-Emby-Token"]=i),o}function but(t){return String(t||"").trim().replace(/\/+$/,"")}function Fo(t){return String(t||"").trim()}function oIr(t){return String(t||"").trim()}function Eut(t){return Fo(t).toLowerCase().replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,40)}function cIr(t,e){let n=`${t?.name||""}-${t?.host||""}-${t?.username||""}`.toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,28),s=n||wQ().slice(0,8);for(;e.has(s);)s=`${(n||"emby").slice(0,24)}-${wQ().slice(0,4)}`;return e.add(s),s}function uIr(t,e,r={}){let n=but(t?.host),s=Fo(t?.username),i=Fo(t?.name),a=Eut(t?.id),o=a&&!e.has(a)?a:cIr({name:i,host:n,username:s},e);return e.add(o),{id:o,name:i,host:n,username:s,password:String(t?.password||""),deviceId:xut(t?.deviceId,r.ensureDeviceId),logo:oIr(t?.logo),libraries:mce(t?.libraries),libraryStats:_ut(t?.libraryStats)}}function _ut(t={}){return{movieCount:Math.max(0,Number(t?.movieCount||0)||0),seriesCount:Math.max(0,Number(t?.seriesCount||0)||0)}}function mce(t=[]){return Array.isArray(t)?t.map(e=>({id:Fo(e?.id||e?.Id),name:Fo(e?.name||e?.Name),collectionType:Fo(e?.collectionType||e?.CollectionType)})).filter(e=>e.id).map(e=>({...e,name:e.name||e.id})):[]}function lIr(t=[]){return mce(t.map(e=>({id:e?.Id,name:e?.Name,collectionType:e?.CollectionType})))}function fM(t={},e={}){let r=new Set;return{servers:(Array.isArray(t?.servers)?t.servers:[]).filter(i=>i&&typeof i=="object").filter(i=>Fo(i?.id)||Fo(i?.name)||but(i?.host)||Fo(i?.username)||String(i?.password||"")).map(i=>uIr(i,r,e)).filter(i=>i.host||i.username)}}function dIr(t){return{servers:t.servers}}var hce=async t=>{let e=await t.db.getObjectDefault(pce,{});return fM(e)},jw=async t=>(await hce(t)).servers,IE=async(t,e="")=>{let r=await hce(t),n=Eut(e);return n&&r.servers.find(s=>s.id===n)||null},fIr=async(t,e)=>{let r=fM(e,{ensureDeviceId:!0});return await t.db.push(pce,dIr(r)),r},pIr=async t=>{await t.db.delete(pce)};async function mIr(t){let{host:e,username:r,password:n,deviceId:s}=t,i=`${e}/emby/Users/authenticatebyname`,o=(await he.post(i,{Username:r,Pw:n||"",Password:n||""},{headers:vE({contentType:!0,deviceId:s}),timeout:1e4})).data;if(!o?.AccessToken||!o?.User?.Id)throw new Error("\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");return o}function hIr(t="",e="",r=""){return vE({token:t,contentType:!0,deviceId:e,userId:r})}async function pM(t,e="",r="",n=""){return(await he.get(t,{headers:e?hIr(e,r,n):vE({deviceId:r}),timeout:1e4})).data}async function gIr(t,e="",r=""){try{return await pM(`${t.host}/emby/System/Info/Public`,e,t.deviceId,r)}catch{try{return await pM(`${t.host}/emby/System/Info`,e,t.deviceId,r)}catch{return{}}}}async function AIr(t,e,r){try{let n=await pM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Views`,r,t.deviceId,e);return Array.isArray(n?.Items)?n.Items:[]}catch{return[]}}async function Aut(t,e,r,n,s){let i=new URLSearchParams({ParentId:String(n||""),Recursive:"true",IncludeItemTypes:s,StartIndex:"0",Limit:"1"});try{let a=await pM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Items?${i.toString()}`,r,t.deviceId,e);return Math.max(0,Number(a?.TotalRecordCount||0)||0)}catch{return 0}}async function yIr(t,e,r,n=[]){let s={movieCount:0,seriesCount:0},i=[];for(let a of n){let o=String(a?.Id||"");if(!o)continue;let c=String(a?.CollectionType||"").toLowerCase();(!c||c==="movies")&&i.push(Aut(t,e,r,o,"Movie").then(u=>{s.movieCount+=u})),(!c||c==="tvshows")&&i.push(Aut(t,e,r,o,"Series").then(u=>{s.seriesCount+=u}))}return await Promise.allSettled(i),s}async function xIr(t){let e=await mIr(t),r=e.AccessToken,n=e.User.Id,[s,i]=await Promise.all([gIr(t,r,n),AIr(t,n,r)]),a=await yIr(t,n,r,i);return{serverName:Fo(s?.ServerName),libraries:lIr(i),libraryStats:a}}function bIr(t,e={}){return{...t,name:t.name||e.serverName||"Emby",libraries:mce(e.libraries||t.libraries),libraryStats:_ut(e.libraryStats||t.libraryStats)}}function EIr(t){return t?.response?.status===401?"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF":`\u8FDE\u63A5\u5931\u8D25: ${t.message}`}async function gce(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await hce(e.server)})}),t.post("/verify",async(e,r)=>{let s=fM({servers:[e.body||{}]},{ensureDeviceId:!0}).servers[0];if(!s||!s.host||!s.username){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let i=await xIr(s);r.send({code:0,data:bIr(s,i)})}catch(i){r.send({code:-1,message:EIr(i)})}}),t.put("/setting",async(e,r)=>{let n=fM(e.body||{},{ensureDeviceId:!0});for(let i of n.servers)if(!i.host||!i.username){r.send({code:-1,message:`${i.name||"Emby"} \u7684\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A`});return}let s=await fIr(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await pIr(e.server),r.send({code:0})})}var bce="::",Tut=["PrimaryImageAspectRatio","BasicSyncInfo","ProductionYear","RecursiveItemCount","ChildCount"].join(","),Ace=new Map;function _Ir(){return{baseUrl:"",username:"",password:"",deviceId:"",accessToken:"",userId:""}}function SIr(t){let e=t||"default";return Ace.has(e)||Ace.set(e,_Ir()),Ace.get(e)}async function vIr(t,e=""){let r=await IE(t,e),n=String(r?.host||"").replace(/\/$/,""),s=r?.username||"",i=r?.password||"",a=r?.deviceId||"",o=SIr(r?.id||e);if(!n||!s)throw new Error("\u8BF7\u5728\u7BA1\u7406\u9875\u9762\u914D\u7F6E Emby \u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D");return o.baseUrl===n&&o.username===s&&o.password===i&&o.deviceId===a||(o.baseUrl=n,o.username=s,o.password=i,o.deviceId=a,o.accessToken="",o.userId=""),o}async function _ce(t){let e=`${t.baseUrl}/emby/Users/authenticatebyname`,n=(await he.post(e,{Username:t.username,Pw:t.password||"",Password:t.password||""},{headers:vE({contentType:!0,deviceId:t.deviceId}),timeout:15e3})).data;if(!n||!n.AccessToken||!n.User?.Id)throw new Error("Emby\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");t.accessToken=n.AccessToken,t.userId=n.User.Id}async function nm(t,e=""){let r=await vIr(t,e);return(!r.accessToken||!r.userId)&&await _ce(r),r}function mM(t){return vE({token:t.accessToken,deviceId:t.deviceId,userId:t.userId})}function CE(t,e){let r=String(t||""),n=String(e||"");return!r||!n?"":`${encodeURIComponent(r)}${bce}${n}`}function wut(t){let e=String(t||""),r=e.indexOf(bce);if(r<0)return{serverId:"",itemId:""};let n=e.slice(0,r);return{serverId:decodeURIComponent(n),itemId:e.slice(r+bce.length)}}function IIr(t){return String(t.body?.id||"").trim()}function Sut(t){return String(t||"").split(",")[0].trim()}function CIr(t){let r=Sut(t?.headers?.["x-forwarded-proto"])||t?.protocol||"http",s=Sut(t?.headers?.["x-forwarded-host"])||t?.headers?.host||"";return s?`${r}://${s}`:""}function TIr(t=""){let e=String(t||"").toLowerCase();return e==="movies"?"Movie":e==="tvshows"?"Series":"Movie,Series"}function yce(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.floor(e):0}function wIr(t={}){return String(t?.Type||"").toLowerCase()!=="series"?0:yce(t.RecursiveItemCount)||yce(t.EpisodeCount)||yce(t.ChildCount)}function RIr(t=[]){let e=[],r=t.reduce((n,s)=>Math.max(n,s.list.length),0);for(let n=0;n<r;n++)for(let s of t)s.list[n]&&e.push(s.list[n]);return e}async function Rut(t,e){let r=await nm(t,e),n=await nA(`/emby/Users/${r.userId}/Views`,t,e);return Array.isArray(n?.Items)?n.Items:[]}function Ece(t=[]){let e=[];for(let r of t){let n=String(r?.Id||r?.id||"");n&&e.push({n:r.Name||r.name||n,v:n})}return e.length===0?[]:[{key:"library",name:"",init:e[0].v,value:e}]}function xce(t=[]){return(Array.isArray(t)?t:[]).map(e=>{let r=String(e?.id||e?.Id||"").trim();return r?{type_id:r,type_name:String(e?.name||e?.Name||r).trim()||r}:null}).filter(Boolean)}async function nA(t,e,r="",n={}){let s=await nm(e,r),i=`${s.baseUrl}${t}`;try{return(await he({method:n.method||"GET",url:i,headers:mM(s),data:n.data,timeout:15e3})).data}catch(a){if(a?.response?.status===401)return s.accessToken="",await _ce(s),(await he({method:n.method||"GET",url:i,headers:mM(s),data:n.data,timeout:15e3})).data;throw a}}function NIr(t=""){let e=String(t||"").trim();return/^[A-Za-z]+$/.test(e)?e:"Primary"}function OIr(t,e=300){let r=parseInt(t||e,10);return!Number.isFinite(r)||r<=0?e:Math.min(r,1200)}function Nut(t,e="",r=null){if(t.ImageTags?.Primary){let s=`/spider/emby/3/image?${new URLSearchParams({serverId:e,itemId:String(t.Id||""),maxHeight:"300",tag:String(t.ImageTags.Primary)}).toString()}`,i=CIr(r);return i?`${i}${s}`:s}return""}function Out(t,e="",r=null){let n=wIr(t);return{vod_id:CE(e,t.Id),vod_name:t.Name||"",vod_pic:Nut(t,e,r),vod_remarks:n>0?String(n):"",vod_year:t.ProductionYear?String(t.ProductionYear):""}}async function vut(t,e){return{}}async function PIr(t,e){let r=t.query||{},n=String(r.serverId||"").trim(),s=String(r.itemId||"").trim();if(!n||!s)return e.code(404),"";try{let i=await nm(t.server,n),a=NIr(r.type||"Primary"),o=new URLSearchParams({maxHeight:String(OIr(r.maxHeight,300))}),c=String(r.tag||"").trim();c&&o.set("tag",c);let u=`${i.baseUrl}/emby/Items/${encodeURIComponent(s)}/Images/${a}?${o.toString()}`,l;try{l=await he.get(u,{responseType:"stream",headers:mM(i),timeout:15e3})}catch(d){if(d?.response?.status!==401)throw d;i.accessToken="",await _ce(i),l=await he.get(u,{responseType:"stream",headers:mM(i),timeout:15e3})}return e.header("Content-Type",l.headers?.["content-type"]||"image/jpeg"),e.header("Cache-Control","private, max-age=86400"),l.headers?.["content-length"]&&e.header("Content-Length",l.headers["content-length"]),e.send(l.data)}catch(i){return console.error("emby image failed:",i.message),e.code(i?.response?.status===404?404:502),""}}async function kIr(t,e){try{let n=(await jw(t.server)).filter(a=>a?.host&&a?.username);if(n.length===0)return{class:[],filters:{}};let s=n.map((a,o)=>({type_id:a.id,type_name:a.name||`Emby ${o+1}`})),i={};for(let a of n){let o=a.id;i[o]=Ece(a.libraries)}return{class:s,filters:i}}catch(r){return console.error("emby home failed:",r.message),{class:[],filters:{}}}}async function DIr(t,e){let r=String(t.params?.serverId||"").trim();if(!r)return{class:[],filters:{}};try{let n=await IE(t.server,r),s=xce(n?.libraries);if(s.length===0){let i=await Rut(t.server,r);s=xce(i)}return{class:s,filters:{}}}catch(n){console.error("emby server home failed:",n.message);let s=await IE(t.server,r).catch(()=>null);return{class:xce(s?.libraries),filters:{}}}}async function Put(t,e,r="",n={}){let s=t.body?.filters||{},i=Math.max(1,parseInt(t.body?.page||1,10)),a=20,o=(i-1)*a;if(!e)return{page:i,pagecount:i,limit:a,total:0,list:[],filters:n.filterKey?{}:void 0};try{let c=await nm(t.server,e),u=await Rut(t.server,e),l=Ece(u),d=String(r||"").trim();!d&&n.useFilterLibrary!==!1&&(d=String(s.library||"").trim()),d||(d=String(u[0]?.Id||"").trim());let f="Movie,Series";if(d){let y=await nA(`/emby/Users/${c.userId}/Items/${d}`,t.server,e);f=TIr(y?.CollectionType)}let p=new URLSearchParams({StartIndex:String(o),Limit:String(a),Recursive:"true",Fields:Tut,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:f,SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"});d&&p.set("ParentId",d);let m=await nA(`/emby/Users/${c.userId}/Items?${p.toString()}`,t.server,e),h=m?.Items||[],A=m?.TotalRecordCount||h.length,g=h.map(y=>Out(y,e,t)),b={page:i,pagecount:Math.max(i,Math.ceil(A/a)),limit:a,total:A,list:g};return n.filterKey&&(b.filters={[n.filterKey]:l}),b}catch(c){console.error("emby category failed:",c.message);let u=await IE(t.server,e).catch(()=>null),l={page:i,pagecount:i,limit:a,total:0,list:[]};return n.filterKey&&(l.filters={[n.filterKey]:Ece(u?.libraries)}),l}}async function BIr(t,e){let r=IIr(t);return Put(t,r,"",{filterKey:r,useFilterLibrary:!0})}async function LIr(t,e){let r=String(t.params?.serverId||"").trim(),n=String(t.body?.id||"").trim();return Put(t,r,n,{useFilterLibrary:!1})}async function Iut(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)if(s)try{let{serverId:i,itemId:a}=wut(s);if(!i||!a)continue;let o=await nm(t.server,i),c=await nA(`/emby/Users/${o.userId}/Items/${a}`,t.server,i);if(!c)continue;let u={vod_id:CE(i,c.Id),vod_name:c.Name||"",vod_pic:Nut(c,i,t),vod_remarks:c.ProductionYear?String(c.ProductionYear):"",vod_year:c.ProductionYear?String(c.ProductionYear):"",vod_content:c.Overview||"",vod_director:(c.People||[]).filter(l=>l.Type==="Director").map(l=>l.Name).join(","),vod_actor:(c.People||[]).filter(l=>l.Type==="Actor").map(l=>l.Name).join(","),vod_play_from:"",vod_play_url:""};if(c.Type==="Movie")u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${CE(i,c.Id)}`;else if(c.Type==="Series"){let d=(await nA(`/emby/Shows/${c.Id}/Episodes?userId=${o.userId}&Fields=BasicSyncInfo`,t.server,i))?.Items||[];if(d.length>0){let f={};for(let h of d){let A=h.SeasonName||`\u7B2C${h.ParentIndexNumber||1}\u5B63`;f[A]||(f[A]=[]);let g=h.Name===`\u7B2C ${h.IndexNumber} \u96C6`?h.Name:`${h.IndexNumber}.${h.Name}`;f[A].push(`${g}$${CE(i,h.Id)}`)}let p=[],m=[];for(let[h,A]of Object.entries(f))p.push(h),m.push(A.join("#"));u.vod_play_from=p.join("$$$"),u.vod_play_url=m.join("$$$")}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${CE(i,c.Id)}`}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${CE(i,c.Id)}`;n.push(u)}catch(i){console.error("emby detail failed:",s,i.message)}return{list:n}}async function MIr(t,e,r){let n=await nm(t,e),s=encodeURIComponent(r),i=await nA(`/emby/Users/${n.userId}/Items/${s}?Fields=Path`,t,e),o=(Array.isArray(i?.MediaSources)?i.MediaSources:[]).find(c=>String(c?.Id||"").trim())||null;return String(o?.Id||"").trim()}async function Cut(t,e){let{serverId:r,itemId:n}=wut(t.body?.id||"");if(!r||!n)return{parse:0,url:"",header:{}};try{let s=await nm(t.server,r),i=encodeURIComponent(n),a=new URLSearchParams({static:"true",api_key:s.accessToken}),o=await MIr(t.server,r,n).catch(()=>"");return o&&a.set("MediaSourceId",o),{parse:0,url:`${s.baseUrl}/emby/Videos/${i}/stream.mkv?${a.toString()}`,header:{"User-Agent":Yl.userAgent}}}catch(s){return console.error("emby play failed:",s.message),{parse:0,url:"",header:{}}}}async function kut(t,e=[]){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10)),s=20;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};if(e.length===0)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i=(n-1)*s,a=n*s,o=await Promise.allSettled(e.map(async d=>{let f=d.id,p=await nm(t.server,f),m=new URLSearchParams({SearchTerm:r,StartIndex:"0",Limit:String(a),Recursive:"true",Fields:Tut,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:"Movie,Series",SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"}),h=await nA(`/emby/Users/${p.userId}/Items?${m.toString()}`,t.server,f),A=h?.Items||[];return{total:Math.max(0,Number(h?.TotalRecordCount||A.length)||0),list:A.map(g=>Out(g,f,t))}})),c=[],u=0;for(let d of o){if(d.status!=="fulfilled"){console.error("emby search server failed:",d.reason?.message||d.reason);continue}u+=d.value.total,c.push(d.value)}let l=RIr(c);return{page:n,pagecount:Math.max(n,Math.ceil(u/s)),limit:s,total:u,list:l.slice(i,a)}}catch(i){return console.error("emby search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}async function WIr(t,e){let r=await jw(t.server);return kut(t,r.filter(n=>n?.host&&n?.username))}async function $Ir(t,e){let r=String(t.params?.serverId||"").trim(),n=await IE(t.server,r).catch(()=>null);return kut(t,n?.host&&n?.username?[n]:[])}var Dut={meta:{key:"emby",name:"Emby",type:3,hidden:!0},api:async t=>{t.post("/init",vut),t.get("/image",PIr),t.post("/home",kIr),t.post("/category",BIr),t.post("/detail",Iut),t.post("/play",Cut),t.post("/search",WIr),t.post("/server/:serverId/init",vut),t.post("/server/:serverId/home",DIr),t.post("/server/:serverId/category",LIr),t.post("/server/:serverId/detail",Iut),t.post("/server/:serverId/play",Cut),t.post("/server/:serverId/search",$Ir)}};var Sce="/alistVideo",Lut={servers:[{id:"alist_default",name:"\u4EBF\u82EF\u6B63\u7ECF\u7684Alist\u5E93",server:"https://pan.lm379.cn"}]};function FIr(t,e="server"){return`alist_${String(t||e).trim().toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||e}`}function vce(t={}){return{id:t.id||"",name:String(t.name||"").trim(),server:String(t.server||"").trim().replace(/\/+$/,""),username:String(t.username||"").trim(),password:String(t.password||""),token:String(t.token||"").trim(),otpCode:String(t.otpCode||t.otp_code||"").trim()}}function Ice(t={}){let e=Array.isArray(t?.servers)?t.servers:[],r=new Set;return{servers:e.map((n,s)=>{let i={...vce(n),otpCode:""};if(!i.server)return null;i.id||(i.id=FIr(i.server||i.name,`server_${s+1}`));let a=i.id,o=a,c=2;for(;r.has(o);)o=`${a}_${c}`,c+=1;return r.add(o),i.id=o,i}).filter(Boolean)}}function UIr(t={}){return`catpaw_${String(t.id||t.server||t.name||"default").trim().replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,96)||"alist"}`}function TE(t={},e=""){let r=String(e||t.token||"").trim(),n={"Content-Type":"application/json","Client-Id":UIr(t)};return r&&(n.Authorization=r),n}function Cce(t,e={}){return t?.status===401||t?.status===403||e?.code===401||e?.code===403}async function hM(t={},e={}){let r=vce(t);if(r.token)return r.token;if(!r.server||!r.username)return"";let n={username:r.username,password:r.password};r.otpCode&&(n.otp_code=r.otpCode);let i=(await he.post(r.server+"/api/auth/login",n,{headers:TE(r),timeout:e.timeout||1e4})).data||{};if(i.code!==200||!i.data?.token)throw new Error(i.message||"Alist \u767B\u5F55\u5931\u8D25");return i.data.token}async function But(t,e=""){let r=await he.post(t.server+"/api/fs/list",{path:"/",page:1,per_page:1},{headers:TE(t,e),timeout:1e4});return{resp:r,json:r.data||{}}}var Mut=async t=>{let e=await t.db.getObjectDefault(Sce,Lut);return Ice(e)},qIr=async(t,e)=>{let r=Ice(e);return await t.db.push(Sce,r),r},jIr=async t=>{await t.db.delete(Sce)},Hw=async t=>(await Mut(t)).servers;async function Tce(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await Mut(e.server)})}),t.put("/setting",async(e,r)=>{let n=Ice(e.body||{});if(n.servers.some(i=>!i.server)){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}let s=await qIr(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await jIr(e.server),r.send({code:0,data:Lut})}),t.post("/verify",async(e,r)=>{let n=vce(e.body||{});if(!n.server){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let s=await hM(n),{resp:i,json:a}=await But(n,s);if(Cce(i,a)&&n.username&&(s=await hM({...n,token:""}),{resp:i,json:a}=await But(n,s)),a.code!==200){r.send({code:-1,message:a.message||"\u8FDE\u63A5\u5931\u8D25"});return}r.send({code:0,data:{...n,token:s||n.token,otpCode:""}})}catch(s){r.send({code:-1,message:`\u8FDE\u63A5\u5931\u8D25: ${s.message}`})}})}var HIr=new Set([".mp4",".mkv",".avi",".wmv",".flv",".mov",".webm",".ts",".m4v",".rmvb",".rm",".3gp",".mpg",".mpeg",".vob",".iso"]),QIr=new Set([".srt",".ass",".ssa",".sub",".scc",".stl",".ttml",".vtt"]),jut="https://img.icons8.com/fluency/96/folder-invoices--v1.png",Hut="https://img.icons8.com/color/48/video.png",GIr=new Set(["AliyundriveOpen","AliyunShare","BaiduNetdisk","BaiduShare2","Quark","QuarkShare","UC","UCShare","UCTV","115 Cloud","115 Share"]),Qut="Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Ou={},wE={},wce="alist:";function yM(t){let e=t.lastIndexOf(".");return e<0?!1:HIr.has(t.slice(e).toLowerCase())}function Gut(t){let e=t.lastIndexOf(".");return e<0?!1:QIr.has(t.slice(e).toLowerCase())}function Rce(t){return!t||t<=0?"":t>1024**4?(t/1024**4).toFixed(2)+"TB":t>1024**3?(t/1024**3).toFixed(2)+"GB":t>1024**2?(t/1024**2).toFixed(2)+"MB":(t/1024).toFixed(2)+"KB"}function sm(t,e,r=""){let n=String(r||"").trim();return n?wce+Buffer.from(JSON.stringify({serverId:n,name:t,path:e||"/"}),"utf8").toString("base64url"):`${t}||${e}`}function xM(t){let e=String(t||"");if(e.startsWith(wce))try{let n=JSON.parse(Buffer.from(e.slice(wce.length),"base64url").toString("utf8"));return{serverId:String(n?.serverId||""),name:String(n?.name||""),path:String(n?.path||"/")}}catch{return{serverId:"",name:"",path:"/"}}let r=e.indexOf("||");return r<0?{serverId:"",name:e,path:"/"}:{serverId:"",name:e.slice(0,r),path:e.slice(r+2)||"/"}}function KIr(t,e=""){let r=String(e||"").trim();if(r&&Ou[r])return Ou[r];let n=String(t||"").trim();return n&&Ou[n]?Ou[n]:Object.values(Ou).find(s=>r&&s?.id===r||n&&s?.name===n)}function Kut(t){return String(t||"").split(",")[0].trim()}function Wut(t){return Kut(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function VIr(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=Wut(t?.headers?.["x-forwarded-host"])||Wut(t?.headers?.host);if(!n)return e;let s=Kut(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function zIr(t,e,r=""){return Buffer.from(JSON.stringify({serverId:r,name:t,path:e}),"utf8").toString("base64url")}function YIr(t){let e=JSON.parse(Buffer.from(String(t||""),"base64url").toString("utf8"));return{serverId:String(e?.serverId||""),name:String(e?.name||""),path:String(e?.path||"/")}}function JIr(t){return String(t||"").toLowerCase().includes("115")}function XIr(t){let e=String(t?.provider||""),r=String(t?.raw_url||"");return GIr.has(e)||JIr(e)||r.includes("115cdn.net")}function ZIr(t){return String(t||"/").replace(/^\/?/,"/").split("/").map((r,n)=>n===0?"":encodeURIComponent(r)).join("/")}function eCr(t,e,r){let n=new URL("/d"+ZIr(e),t.server);return r&&n.searchParams.set("sign",r),n.toString()}function $ut(t,e,r,n=""){let s=r.split("/").filter(Boolean).pop()||"video.bin",i=String(t?.server?.prefix||"").replace(/\/$/,"");return`${VIr(t)}${i}/proxy/${zIr(e,r,n)}/${encodeURIComponent(s)}`}function tCr(t){let e={};for(let r of["range","if-range","if-none-match","if-modified-since"])t.headers?.[r]&&(e[r]=t.headers[r]);return e}function rCr(t,e,r){return{...tCr(r),...TE(t,e),"User-Agent":Qut,Referer:"https://www.alipan.com/"}}function nCr(){return{"User-Agent":Qut,Referer:"https://www.alipan.com/"}}function Vut(t){return t.id||t.server||t.name}async function gM(t,e=!1){let r=Vut(t);if(!e){if(wE[r])return wE[r];if(t.token)return t.token}let n=await hM({...t,token:e?"":t.token});return n&&(wE[r]=n),n}async function bM(t,e,r={},n=!0){let s=await gM(t),i=TE(t,s),a=await he.post(t.server+e,r,{headers:i,timeout:15e3}).catch(c=>c.response||{status:500,data:{}}),o=a.data||{};if(n&&Cce(a,o)&&t.username){let c=Vut(t);delete wE[c];let u=await gM(t,!0),d=(await he.post(t.server+e,r,{headers:TE(t,u),timeout:15e3}).catch(f=>f.response||{status:500,data:{}})).data||{};if(d.code!==200)throw new Error(d.message||"Alist API error");return d.data}if(o.code!==200)throw new Error(o.message||"Alist API error");return o.data}async function zut(t,e,r=1){return bM(t,"/api/fs/list",{path:e,page:r,per_page:0,refresh:!1})}async function AM(t,e){return bM(t,"/api/fs/get",{path:e})}async function sCr(t,e,r,n={}){return he.request({url:t,method:r,headers:e,responseType:r==="HEAD"?"text":"stream",timeout:3e4,maxRedirects:n.maxRedirects??5,validateStatus:()=>!0})}async function Yut(t,e,r,n,s){let i=eCr(t,e,r),a=await sCr(i,rCr(t,n,s),"GET",{maxRedirects:0});a.data?.destroy&&a.data.destroy();let o=a.headers?.location;return a.status>=300&&a.status<400&&o?new URL(o,i).toString():""}async function iCr(t,e){await Qw(t.server);let r;try{r=YIr(t.params?.id)}catch{return e.code(400),"bad proxy id"}let n=await EM(t.server,r);if(!n)return e.code(404),"drive not found";try{let s=await AM(n,r.path);if(!s?.raw_url)return e.code(404),"raw_url empty";if(s.sign){let i=await gM(n),a=await Yut(n,r.path,s.sign,i,t);if(a)return e.redirect(302,a),""}return s.raw_url?(e.redirect(302,s.raw_url),""):(e.code(502),"proxy failed")}catch(s){return console.error("[alist-video] proxy failed:",s.message),e.code(502),s.message}}async function aCr(t,e,r="/"){return bM(t,"/api/fs/search",{parent:r,keywords:e,scope:0,page:1,per_page:100})}function oCr(t){let e=t.replace(/^\//,"").split("/");return e.length>1?"/"+e.slice(1).join("/"):"/"}function cCr(t={},e="Alist"){let r=String(t.name||"").trim();if(r)return r;try{return new URL(t.server).hostname||e}catch{return e}}function Jut(t={}){let e=String(t.server||"").replace(/\/$/,"");if(!e)return null;let r=cCr({...t,server:e});return{id:String(t.id||"").trim(),name:r,server:e,username:t.username||"",password:t.password||"",token:t.token||"",otpCode:t.otpCode||""}}function Xut(t){if(!t)return null;let e=t.id||t.name;return e?(Ou[e]=t,t):null}async function Nce(t){let e=await Hw(t);for(let r of Object.keys(Ou))delete Ou[r];for(let r of Object.keys(wE))delete wE[r];for(let r of e)Xut(Jut(r));return e}async function Qw(t){Object.keys(Ou).length===0&&await Nce(t)}async function Gw(t,e){let r=String(e||"").trim();if(!r)return null;let n=await Hw(t),s=Jut(n.find(i=>i?.id===r));return Xut(s)}async function EM(t,e={}){let r=KIr(e.name,e.serverId);return r||(e.serverId?Gw(t,e.serverId):null)}async function uCr(t,e){return await Nce(t.server),{}}async function lCr(t,e){if((await Nce(t.server)).length===0)return{class:[],filters:{}};let n=[];for(let s of Object.values(Ou))n.push({type_id:sm(s.name,"/",s.id),type_name:s.name});return{class:n,filters:{}}}async function dCr(t,e){let r=await Gw(t.server,t.params?.serverId);return r?{class:[{type_id:sm(r.name,"/",r.id),type_name:r.name}],filters:{}}:{class:[],filters:{}}}async function Zut(t,e){await Qw(t.server);let r=t.body.id,n=Math.max(1,parseInt(t.body.page||1,10)),{serverId:s,name:i,path:a}=xM(r),o=await EM(t.server,{name:i,serverId:s});if(!o)return{page:n,pagecount:n,list:[]};let c=o.id||s;try{let u=await zut(o,a,n),l=u.content||[],d=[];for(let h of l){let A=a.replace(/\/?$/,"/")+h.name;if(h.is_dir){let g=sm(o.name,A,c);d.push({vod_id:g,vod_name:h.name,vod_pic:h.thumb||jut,vod_remarks:"",vod_tag:"folder",cate:{id:g,name:h.name}})}else yM(h.name)&&d.push({vod_id:sm(o.name,A,c),vod_name:h.name,vod_pic:h.thumb||Hut,vod_remarks:Rce(h.size),vod_tag:"file"})}let f=u.total||d.length,p=u.per_page||f,m=p>0?Math.ceil(f/p):1;return{page:n,pagecount:m,list:d}}catch(u){return console.error("[alist-video] category failed:",u.message),{page:n,pagecount:n,list:[]}}}async function fCr(t,e){let r=String(t.params?.serverId||"").trim(),n=await Gw(t.server,r);if(!n){let a=Math.max(1,parseInt(t.body?.page||1,10));return{page:a,pagecount:a,list:[]}}let s=String(t.body?.id||"").trim(),i=s?xM(s):{path:"/"};return t.body={...t.body||{},id:sm(n.name,i.path||"/",n.id)},Zut(t,e)}async function Fut(t,e,r=3,n=0){if(n>=r)return[];try{let i=(await bM(t,"/api/fs/list",{path:e,page:1,per_page:500,refresh:!1})).content||[],a=[],o=[],c=[];for(let u of i){let l=e.replace(/\/?$/,"/")+u.name;u.is_dir?c.push({name:u.name,path:l}):yM(u.name)?a.push({name:u.name,path:l,size:u.size}):Gut(u.name)&&o.push({name:u.name,path:l})}return{videos:a,subtitles:o,subfolders:c}}catch{return{videos:[],subtitles:[],subfolders:[]}}}async function Uut(t,e){await Qw(t.server);let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){if(!s)continue;let{serverId:i,name:a,path:o}=xM(s),c=await EM(t.server,{name:a,serverId:i});if(!c)continue;let u=c.id||i;try{let l=await AM(c,o),d=l.is_dir;if(!d&&yM(l.name)){n.push({vod_id:s,vod_name:l.name,vod_pic:l.thumb||"",vod_content:`\u5927\u5C0F: ${Rce(l.size)}`,vod_play_from:"Alist",vod_play_url:`${l.name}$${s}`});continue}if(d){let f=await Fut(c,o),p=[],m=[];f.videos.length>0&&(p.push("\u5F53\u524D\u76EE\u5F55"),m.push(f.videos.map(h=>`${h.name}$${sm(c.name,h.path,u)}`).join("#")));for(let h of f.subfolders){let A=await Fut(c,h.path);A.videos.length>0&&(p.push(h.name),m.push(A.videos.map(g=>`${g.name}$${sm(c.name,g.path,u)}`).join("#")))}p.length===0?n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:"\u8BE5\u76EE\u5F55\u4E0B\u6CA1\u6709\u89C6\u9891\u6587\u4EF6",vod_play_from:"",vod_play_url:""}):n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:`\u5171 ${p.reduce((h,A,g)=>h+m[g].split("#").length,0)} \u4E2A\u89C6\u9891`,vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}}catch(l){console.error("[alist-video] detail failed:",s,l.message)}}return{list:n}}async function qut(t,e){await Qw(t.server);let r=t.body?.id||"",{serverId:n,name:s,path:i}=xM(r),a=await EM(t.server,{name:s,serverId:n});if(!a)return{parse:0,url:"",header:{}};let o=a.id||n;try{let c=await AM(a,i),u=c.raw_url;if(!u)return{parse:0,url:"",header:{}};let l={parse:0,url:u,header:{}};if(c.provider==="AliyundriveOpen"||c.provider==="AliyundriveShare2Open")l.header={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Referer:"https://www.alipan.com/"};else if(XIr(c))if(l.header=nCr(),c.sign){let m=await gM(a),h=await Yut(a,i,c.sign,m,t);h?l.url=h:l.url=$ut(t,a.name,i,o)}else l.url=$ut(t,a.name,i,o);let d=i.substring(0,i.lastIndexOf("/")+1),f=i.substring(i.lastIndexOf("/")+1),p=f.substring(0,f.lastIndexOf("."));try{let h=((await zut(a,d)).content||[]).filter(A=>Gut(A.name)&&A.name.includes(p)).slice(0,3);if(h.length>0){let A=[];for(let g of h)try{let b=await AM(a,d+g.name);b.raw_url&&A.push(b.raw_url)}catch{}A.length>0&&(l.subt=A[0])}}catch{}return l}catch(c){return console.error("[alist-video] play failed:",c.message),{parse:0,url:"",header:{}}}}async function elt(t,e){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10));if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of e)try{let o=(await aCr(i,r)).content||[];for(let c of o)if(c.is_dir||yM(c.name)){let l=oCr(String(c.parent||"/")).replace(/\/?$/,"/")+c.name,d=sm(i.name,l,i.id);s.push({vod_id:d,vod_name:c.name,vod_pic:c.thumb||(c.is_dir?jut:Hut),vod_remarks:c.is_dir?"":Rce(c.size),...c.is_dir?{cate:{id:d,name:c.name}}:{}})}}catch{}return{page:n,pagecount:n,list:s}}async function pCr(t,e){return await Qw(t.server),elt(t,Object.values(Ou))}async function mCr(t,e){return await Gw(t.server,t.params?.serverId),{}}async function hCr(t,e){let r=await Gw(t.server,t.params?.serverId);return elt(t,r?[r]:[])}var tlt={meta:{key:"alist-video",name:"Alist",type:3,hidden:!0},api:async t=>{t.post("/init",uCr),t.post("/home",lCr),t.post("/category",Zut),t.post("/detail",Uut),t.post("/search",pCr),t.post("/play",qut),t.get("/proxy/:id/:file",iCr),t.post("/server/:serverId/init",mCr),t.post("/server/:serverId/home",dCr),t.post("/server/:serverId/category",fCr),t.post("/server/:serverId/detail",Uut),t.post("/server/:serverId/search",hCr),t.post("/server/:serverId/play",qut)}};var Kw=async t=>(await t.db.getObjectDefault("/sites",{}))?.list||t.config.sites.list,gCr=async(t,e)=>{await t.db.push("/sites/list",e)},ACr=async t=>{await t.db.delete("/sites/list")};async function Oce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Kw(e.server)})}),t.put("/list",async(e,r)=>{await gCr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await ACr(e.server),r.send({code:0})})}var rlt="\u5185\u7F6E\u5F39\u5E55",yCr=9321;function ilt(t){return String(t||"").split(",")[0].trim()}function nlt(t){return ilt(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function slt(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function xCr(t,e=null){let r=String(t?.address?.()?.url||"").trim(),s=nlt(e?.headers?.["x-forwarded-host"])||nlt(e?.headers?.host),i=ilt(e?.headers?.["x-forwarded-proto"]),a=r.startsWith("https://")?"https":"http",o=i||String(e?.protocol||"").trim()||a;if(s&&!slt(s))return`${o}://${s}`;let c=String(k0()||"").trim(),u=Number.parseInt(String(t?.address?.()?.port||""),10);return c&&!slt(c)?Number.isFinite(u)&&u>0?`${o}://${c}:${u}`:`${o}://${c}`:r}function alt(t,e,r=null){if(!e||typeof e!="object"||!Array.isArray(e.urls))return e;let n=xCr(t,r),s=sae(n,yCr),i=e.urls.map(a=>{if(!a||typeof a!="object")return a;let o=String(a.name||"").trim();return a.builtin===!0||o===rlt?{...a,builtin:!0,name:o||rlt,address:s}:a});return{...e,urls:i}}var _M=async(t,e=null)=>{let n=await t.db.getObjectDefault("/danmu")||t.config.danmu;return alt(t,n,e)},bCr=async(t,e,r=null)=>{await t.db.push("/danmu",alt(t,e,r))},ECr=async t=>{await t.db.delete("/danmu")},_Cr=3,Pce=(t,e=_Cr)=>{messageToDart({action:"toast",opt:{message:t,duration:e}})},SCr=t=>{try{let e=new URL(t);return e.searchParams.set("format","json"),e.toString()}catch{return null}},vCr=t=>Array.isArray(t?.comments)?t.comments.length:Array.isArray(t)?t.length:0;async function kce(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await _M(e.server,e)})}),t.put("/setting",async(e,r)=>{await bCr(e.server,e.body,e),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await ECr(e.server),r.send({code:0})}),t.post("/push",async(e,r)=>{let n=e.body||{},s=n.url,i=n.sourceName||"\u5F39\u5E55\u6E90",a=n.previewUrl||SCr(s);if(!s){r.code(400).send({code:1,message:"Missing push url"});return}a&&(async()=>{try{let o=await Ae.get(a,{timeout:1e4}),c=vCr(o.data);c>0?Pce(`\u901A\u8FC7 ${i} - \u89E3\u6790\u5230 ${c} \u6761\u5F39\u5E55`):Pce("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}catch(o){console.error("Manual danmu preview failed:",o),Pce("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}})(),messageToDart({action:"danmuPush",opt:{url:s}}),r.send({code:0})}),t.get("/fe",(e,r)=>{r.type("text/html").send(` +-----END PRIVATE KEY-----`,Uot="Qmxi5ciWXbQzkr7o+SUNiUuQxQEf8/AVyUWY4T/BGhcXBIUz4nOyHBGf9A4KbM0iKF3yp9M7WAY0rrs5PzdTAOB45plcS2zZ0wUibcXuGJ29VVGRWKGwE9zu2vLwhfgjTaaDpXo4rby+7GxXTktzJmxvneOUdYeHi+PZsThlvPI=",Foe="1be86e8e18a9fa18b2b8d5432699dad0.ac008ed650fd087bfbecf2fda9d82e9835253ef24843e6b18fcd128b10763497bcf9d53e959f5377cde038c20ccf9d17f604c9b8bb6e61041def86729b2fc7408bd241e23c213ac57f0226ee656e2bb0a583ae0e4f3bf6c6ab6c490c9a6f0d8cdfd366aacf5d83193671a8f77cd1af1ff2e9145de92ec43ec87cf4bdc563f6e919fe32861b0e93b118ec37d8035fbb3c.59dd05c5d9a8ae726528783128218f15fe6f2c0c8145eddab112b374fcfe3d79",Tw={INDEX_LIST:"/App/IndexList/indexList",PLAY_INFO:"/App/IndexPlay/playInfo",VURL_SHOW:"/App/Resource/Vurl/show",VURL_DETAIL:"/App/Resource/VurlDetail/showOne",FIND_MORE:"/App/Index/findMoreVod"},i1r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"3",type_name:"\u7EFC\u827A"},{type_id:"64",type_name:"\u77ED\u5267"}],a1r={1:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],2:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"},{n:"2022",v:"2022"},{n:"2021",v:"2021"},{n:"2020",v:"2020"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u9999\u6E2F",v:"\u9999\u6E2F"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u7F8E\u56FD",v:"\u7F8E\u56FD"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"},{n:"\u65E5\u672C",v:"\u65E5\u672C"},{n:"\u82F1\u56FD",v:"\u82F1\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],3:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],4:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"area",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"\u5927\u9646",v:"\u5927\u9646"},{n:"\u53F0\u6E7E",v:"\u53F0\u6E7E"},{n:"\u97E9\u56FD",v:"\u97E9\u56FD"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}],64:[{key:"year",name:"",init:"0",value:[{n:"\u5168\u90E8",v:"0"},{n:"2026",v:"2026"},{n:"2025",v:"2025"},{n:"2024",v:"2024"},{n:"2023",v:"2023"}]},{key:"sort",name:"",init:"d_id",value:[{n:"\u6700\u65B0",v:"d_id"},{n:"\u6700\u70ED",v:"d_hits"},{n:"\u63A8\u8350",v:"d_score"}]}]},Iw=new Map,o1r={category:3e5,detail:3e5,play:3e5,search:6e4};function c1r(t){return pE.default.createHash("md5").update(t).digest("hex")}function u1r(t){let e=Buffer.from("mvXBSW7ekreItNsT","utf8"),r=Buffer.from("2U3IrJL8szAKp0Fj","utf8"),n=pE.default.createCipheriv("aes-128-cbc",e,r),s=n.update(t,"utf8","hex");return s+=n.final("hex"),s.toUpperCase()}function l1r(t,e,r){let n=Buffer.from(e,"utf8"),s=Buffer.from(r,"utf8"),i=pE.default.createDecipheriv("aes-128-cbc",n,s),a=i.update(t,"hex","utf8");return a+=i.final("utf8"),a}function d1r(t){let e=Buffer.from(t,"base64"),r=256,n=[];for(let s=0;s<e.length;s+=r){let i=e.slice(s,s+r),a=pE.default.privateDecrypt({key:s1r,padding:pE.default.constants.RSA_NO_PADDING},i),o=a.indexOf(0,2);if(o===-1){for(o=0;o<a.length&&a[o]===0;)o+=1;n.push(a.slice(o))}else n.push(a.slice(o+1))}return Buffer.concat(n).toString("utf8").trim()}function f1r(t,e){let r=`token_id=,token=${Foe},phone_type=1,request_key=${t},app_id=1,time=${e},keys=${Uot}*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br`;return c1r(r)}function p1r(t){let e=Iw.get(t);return e?Date.now()>e.expire?(Iw.delete(t),null):e.data:null}function m1r(t,e,r){Iw.set(t,{data:e,expire:Date.now()+(o1r[r]||6e4)}),Iw.size>200&&Iw.clear()}async function ww(t,e,r="category"){let n=`${e}|${JSON.stringify(t)}`;if(r!=="none"){let p=p1r(n);if(p)return p}let s=Math.floor(Date.now()/1e3).toString(),i=u1r(JSON.stringify(t)),a=f1r(i,s),o=new URLSearchParams({token:Foe,token_id:"",phone_type:"1",time:s,phone_model:"xiaomi-22021211rc",keys:Uot,request_key:i,signature:a,app_id:"1",ad_version:"1"}).toString(),c=await he.post(`${Fot.host}${e}`,o,{headers:Fot.headers});if(c.status!==200||!c.data?.data?.keys||!c.data?.data?.response_key)return null;let u=d1r(c.data.data.keys);if(!u)return null;let l=JSON.parse(u),d=l1r(c.data.data.response_key,l.key,l.iv);if(!d)return null;let f=JSON.parse(d);return r!=="none"&&f&&m1r(n,f,r),f}function qot(t){return{vod_id:`${t.vod_id}/${t.vod_continu||0}`,vod_name:t.vod_name,vod_pic:t.vod_pic,vod_remarks:(t.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${t.vod_continu}\u96C6`}}function h1r(t){let e=String(t||"").trim();if(!e)return"";let r=e.split("/")[0];return/^\d+$/.test(r)?r:e.match(/(\d+)/)?.[1]||e}function Z4(t){let e=String(t||"").toLowerCase().replace("p","");return e==="8k"?100:e==="4k"||e==="2160"?90:e==="1440"?80:e==="1080"?70:e==="720"?60:e==="\u8D85\u6E05"?50:e==="\u9AD8\u6E05"?40:e==="\u6807\u6E05"?30:10}async function g1r(t,e){return{}}async function A1r(t,e){return{class:i1r,filters:a1r}}async function y1r(t,e){let r=t.body.id,n=String(t.body.page||1),s=t.body.filters||{};if(!r)return{page:1,pagecount:0,list:[]};let i=await ww({area:s.area||"0",year:s.year||"0",pageSize:"20",sort:s.sort||"d_id",page:n,tid:String(r)},Tw.INDEX_LIST,"category"),a=Array.isArray(i?.list)?i.list.map(u=>qot(u)):[],o=parseInt(n,10)||1,c=parseInt(i?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function x1r(t,e){let r=String(t.body.wd||"").trim(),n=String(t.body.page||1);if(!r)return{page:1,pagecount:0,list:[]};let s=await ww({keywords:r,order_val:"1",page:n},Tw.FIND_MORE,"search"),a=(Array.isArray(s?.list)?s.list:[]).filter(u=>String(u?.vod_name||"").toLowerCase().includes(r.toLowerCase())).map(u=>qot(u)),o=parseInt(n,10)||1,c=parseInt(s?.totalPage||0,10)||(a.length>0?o+1:o);return{page:o,pagecount:c,list:a}}async function b1r(t,e){let r=Array.isArray(t.body.id)?t.body.id:[t.body.id],n=[];for(let s of r){let i=String(s||""),a=h1r(i);if(!a)continue;let[o,c]=await Promise.all([ww({token_id:"1649412",vod_id:a,mobile_time:Math.floor(Date.now()/1e3).toString(),tokename:Foe},Tw.PLAY_INFO,"detail"),ww({vurl_cloud_id:"2",vod_d_id:a},Tw.VURL_SHOW,"detail")]),u=o?.vodInfo;if(!u)continue;let l=[],d=Array.isArray(c?.list)?c.list:[];d.forEach((f,p)=>{let m=f?.play;if(!m||typeof m!="object")return;let h=[],A=[];if(Object.entries(m).forEach(([y,x])=>{x?.param&&(h.push(String(x.param)),A.push(String(y)))}),!h.length)return;A.sort((y,x)=>Z4(x)-Z4(y));let g=d.length===1?String(u.vod_name||"\u6B63\u7247"):String(f?.name||p+1),b=`${h[0]}||${A.join("@")}`;l.push(`${g}$${b}`)}),n.push({vod_id:i,vod_name:u.vod_name||"",vod_pic:u.vod_pic||"",vod_year:u.vod_year||"",vod_area:u.vod_area||"",vod_remarks:u.vod_remarks||(Number(u.vod_continu||0)===0?"\u7535\u5F71":`\u66F4\u65B0\u81F3${u.vod_continu}\u96C6`),vod_actor:u.vod_actor||"",vod_director:u.vod_director||"",vod_content:String(u.vod_use_content||u.vod_content||"").trim(),vod_play_from:l.length>0?"\u74DC\u5B50\u4E13\u7EBF":"",vod_play_url:l.length>0?l.join("#"):""})}return{list:n}}async function E1r(t,e){let r=String(t.body.id||"").trim();if(!r)return{parse:0,url:"",header:$oe};let n=r.split("||");if(n.length<2)return{parse:0,url:r,header:$oe};let s={};n[0].split("&").forEach(c=>{let[u,l]=c.split("=");u&&(s[u]=l||"")});let i=n[1].split("@").filter(Boolean);i.length>0&&(i.sort((c,u)=>Z4(u)-Z4(c)),s.resolution=i[0]);let a=await ww(s,Tw.VURL_DETAIL,"play");return{parse:0,url:String(a?.url||"").trim(),header:$oe}}var jot={meta:{key:"guazi",name:"\u300C\u76F4\u300D\u74DC\u5B50",type:3},api:async t=>{t.post("/init",g1r),t.post("/home",A1r),t.post("/category",y1r),t.post("/detail",b1r),t.post("/play",E1r),t.post("/search",x1r)}};var zf=String(process.env.PPNIX_HOST||"https://www.ppnix.com").trim(),_1r=String(process.env.PPNIX_LANG_PATH||"/cn").trim(),Qot=String(process.env.PPNIX_UA||"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36").trim(),Got=24,S1r=10*60*1e3,v1r=[{type_id:"movie",type_name:"\u7535\u5F71"},{type_id:"tv",type_name:"\u7535\u89C6\u5267"}],C1r={time:"newstime",hits:"onclick",score:"rating",newstime:"newstime",onclick:"onclick",rating:"rating"},Gl={expiresAt:0,filters:{},filterDef:{movie:{class:"",area:"",year:"",by:"newstime"},tv:{class:"",area:"",year:"",by:"newstime"}}};function gn(t){return t==null?"":String(t).trim()}function I1r(t=""){let e=gn(t);return e?e.startsWith("/")?e.replace(/\/+$/,""):`/${e.replace(/\/+$/,"")}`:"/cn"}var Kg=I1r(_1r);function Vot(t=""){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?`${zf}${e}`:`${zf}/${e}`:`${zf}${Kg}/`}function zg(t){return gn(t).replace(/<br\s*\/?>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/gi,"'").replace(/</gi,"<").replace(/>/gi,">").replace(/\s+/g," ").trim()}function zot(t){let e=gn(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${zf}${e}`:`${zf}/${e}`:""}function T1r(t){let e=[],r=new Set;for(let n of Array.isArray(t)?t:[]){let s=gn(n?.vod_id||n?.vod_name);!s||r.has(s)||(r.add(s),e.push(n))}return e}function Kot(t){let e=gn(t);return e?/^https?:\/\//i.test(e)||e.startsWith("/")?e:e.startsWith("movie/")||e.startsWith("tv/")?`${Kg}/${e}`:`${Kg}/${e.replace(/^\/+/,"")}`:""}async function Rw(t,e={}){let r=Vot(t),n={"User-Agent":Qot,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",Referer:e.referer||`${zf}${Kg}/`,...e.headers||{}},s=await he({url:r,method:e.method||"GET",headers:n,data:e.body,timeout:e.timeout||2e4,responseType:"text",validateStatus:()=>!0,maxRedirects:5}),i=Number(s.status||0),a=typeof s.data=="string"?s.data:String(s.data||"");if(i!==200)throw new Error(`HTTP ${i||"unknown"} @ ${r}`);return a}function Yot(t,e,r=""){let n=[];return t(e).each((s,i)=>{let a=t(i),o=a.find("a.thumbnail, h2 a, a").first(),c=gn(o.attr("href")||a.find("h2 a").attr("href")||""),u=Kot(c),l=zg(a.find("img.thumb").attr("alt")||a.find("h2 a").text()||o.text()),d=zot(a.find("img.thumb").attr("src")||a.find("img.thumb").attr("data-src")||""),f=zg(a.find("footer .rate").text()||a.find("footer").text());!u||!l||n.push({vod_id:u,vod_name:l,vod_pic:d,vod_remarks:f,type_id:r,type_name:r==="movie"?"\u7535\u5F71":r==="tv"?"\u7535\u89C6\u5267":""})}),T1r(n)}function w1r(t=""){let e=(t.match(/infoid\s*=\s*(\d+)/)||[])[1]||"",r=t.match(/m3u8\s*=\s*\[(.*?)\]/s);if(!r)return{infoId:e,items:[]};let n=[],s=/'([^']*)'|"([^"]*)"/g,i;for(;(i=s.exec(r[1]))!==null;){let a=gn(i[1]||i[2]||"");a&&n.push(a)}return{infoId:e,items:[...new Set(n)]}}function R1r(t){let e=gn(t.infoId||""),r=encodeURIComponent(gn(t.param||"")),n=encodeURIComponent(gn(t.referer||"")),s=encodeURIComponent(gn(t.episodeName||""));return`${e}|${r}|${n}|${s}`}function N1r(t){try{let e=String(t||"").split("|");return{infoId:gn(e[0]||""),param:decodeURIComponent(e[1]||""),referer:decodeURIComponent(e[2]||""),episodeName:decodeURIComponent(e[3]||"")}}catch{return{}}}function O1r(t={}){let e=t&&typeof t=="object"?t:{};return{class:gn(e.class||e.type||e.cate||""),area:gn(e.area||""),year:gn(e.year||""),by:gn(e.by||e.sort||"newstime")||"newstime"}}function qoe(t,e=1,r={}){let n=O1r(r),s=n.class,i=n.area,a=n.year,o=C1r[n.by]||"newstime",c=Number(e)<=1?"":`${Number(e)-1}`;return`${Kg}/${t}/${s}-${i}-${a}-${c}-${o}.html`}function P1r(t=[]){return[...new Set((t||[]).map(e=>gn(e)).filter(Boolean))]}function Uoe(t,e,r=""){let n=[];return t(e).find("a").each((s,i)=>{let a=gn(t(i).text());!a||a===r||n.push(a)}),P1r(n)}function Hot(t){let e=[],r=t(".lists-content.filter dl");if(!r.length)return e;let n=Uoe(t,r.eq(0),"\u5168\u90E8");n.length&&e.push({key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...n.map(a=>({n:a,v:a}))]});let s=Uoe(t,r.eq(1),"\u5168\u90E8");s.length&&e.push({key:"area",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...s.map(a=>({n:a,v:a}))]});let i=Uoe(t,r.eq(2),"\u5168\u90E8");return i.length&&e.push({key:"year",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},...i.map(a=>({n:a,v:a}))]}),e.push({key:"by",name:"",init:"newstime",value:[{n:"\u65F6\u95F4",v:"newstime"},{n:"\u4EBA\u6C14",v:"onclick"},{n:"\u8BC4\u5206",v:"rating"}]}),e}async function D1r(t=!1){if(!t&&Gl.expiresAt>Date.now()&&Object.keys(Gl.filters).length>0)return{filters:Gl.filters,filter_def:Gl.filterDef};try{let[e,r]=await Promise.all([Rw(qoe("movie",1,{})),Rw(qoe("tv",1,{}))]);Gl.filters={movie:Hot(Me(e)),tv:Hot(Me(r))},Gl.expiresAt=Date.now()+S1r}catch{if(!Object.keys(Gl.filters).length){let e=[{key:"by",name:"",init:"newstime",value:[{n:"\u6309\u65F6\u95F4",v:"newstime"},{n:"\u6309\u4EBA\u6C14",v:"onclick"},{n:"\u6309\u8BC4\u5206",v:"rating"}]}];Gl.filters={movie:e,tv:e}}}return{filters:Gl.filters,filter_def:Gl.filterDef}}async function k1r(t,e){return{}}async function L1r(t,e){let{filters:r}=await D1r();return{class:v1r,filters:r}}async function B1r(t,e){try{let r=gn(t.body?.id||"movie"),n=Math.max(1,Number(t.body?.page||1)||1),s=t.body?.filters||{},i=await Rw(qoe(r,n,s)),a=Me(i),o=Yot(a,".lists-content > ul > li, .lists .lists-content ul li",r).filter(d=>d.vod_id.includes(`/${r}/`)),c=n,l=[...(a(".pagination, .pages, .pagenavi").html()||"").matchAll(/---(\d+)-\.html/g)].map(d=>Number(d[1])+1);return l.length?c=Math.max(n,...l):o.length>=Got&&(c=n+1),{page:n,pagecount:c,list:o}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}async function M1r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)try{let i=Kot(s);if(!i)continue;let a=await Rw(i),o=Me(a),c=zg(o("h1.product-title").text()),u=zg(o("title").text()).replace(/\s*\([^)]*\).*/,""),l=c.replace(/\s*\([^)]*\)\s*$/,"").trim()||u,d=zot(o("header.product-header img.thumb").attr("src")||""),f=zg(o(".product-excerpt").filter((v,C)=>o(C).text().includes("\u7B80\u4ECB\uFF1A")).text()).replace(/^简介:/,"").trim(),p=zg(o(".product-excerpt").filter((v,C)=>o(C).text().includes("\u5BFC\u6F14\uFF1A")).find("span").text()),m=zg(o(".product-excerpt").filter((v,C)=>o(C).text().includes("\u4E3B\u6F14\uFF1A")).find("span").text()).replace(/\s*\/\s*/g,","),h=(c.match(/\((\d{4})\)/)||[])[1]||"",A=i.includes("/movie/")?"\u7535\u5F71":i.includes("/tv/")?"\u7535\u89C6\u5267":"",{infoId:g,items:b}=w1r(a),y=(i.match(/(\d+)\.html/)||[])[1]||"",x=b.map((v,C)=>{let R=b.length>1?`\u7B2C${C+1}\u96C6`:gn(v)||"\u6B63\u7247",w=R1r({infoId:g||y,param:v,referer:Vot(i),episodeName:R});return`${R}$${w}`});n.push({vod_id:i,vod_name:l,vod_pic:d,type_name:A,vod_year:h,vod_director:p,vod_actor:m,vod_content:f,vod_play_from:x.length?"PPnix":"",vod_play_url:x.join("#")})}catch{continue}return{list:n}}async function W1r(t,e){try{let r=N1r(t.body?.id||""),n=gn(r.infoId),s=gn(r.param);if(!n||!s)return{parse:0,url:gn(t.body?.id||"")};let i=gn(r.referer||`${zf}${Kg}/`);return{parse:0,url:`${zf}/info/m3u8/${n}/${encodeURIComponent(s)}.m3u8`,header:{Referer:i,Origin:zf,"User-Agent":Qot}}}catch{return{parse:1,url:gn(t.body?.id||""),header:{}}}}async function $1r(t,e){try{let r=gn(t.body?.wd||""),n=Math.max(1,Number(t.body?.page||1)||1);if(!r)return{page:1,pagecount:1,list:[]};let s=encodeURIComponent(r),i=n<=1?"":`-page-${n}`,a=await Rw(`${Kg}/search/${s}--.html${i}`),o=Me(a),c=Yot(o,".lists-content > ul > li, .lists .lists-content ul li").filter(u=>/\/(movie|tv)\/\d+\.html/.test(u.vod_id));return{page:n,pagecount:c.length>=Got?n+1:n,list:c}}catch{let r=Math.max(1,Number(t.body?.page||1)||1);return{page:r,pagecount:r,list:[]}}}var Jot={meta:{key:"ppnix",name:"\u300C\u76F4\u300DPPnix",type:3},api:async t=>{t.post("/init",k1r),t.post("/home",L1r),t.post("/category",B1r),t.post("/detail",M1r),t.post("/play",W1r),t.post("/search",$1r)}};var qn={key:"anime1",name:"Anime1\u52D5\u756B",host:"https://anime1.me",listUrl:"https://d1zquzjgwo9yb.cloudfront.net/",playApi:"https://v.anime1.me/api",pic:"https://sta.anicdn.com/playerImg/8.jpg",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",timeout:15e3},Nw=48,F1r=5*60*1e3,U1r=60,Xot=(()=>{let t=Math.max(new Date().getFullYear(),2025),e=[];for(let r=t;r>=2018;r-=1)e.push({type_id:String(r),type_name:String(r)});return[{type_id:"\u9023\u8F09\u4E2D",type_name:"\u9023\u8F09\u4E2D"},...e,{type_id:"2017",type_name:"\u66F4\u65E9"}]})(),tM={expireAt:0,list:[]},eM=null;function Yg(t){return Me(`<div>${String(t||"")}</div>`).text().replace(/\s+/g," ").trim()}function Qoe(t=qn.host){return{"User-Agent":qn.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}function Ow(t,e=qn.host){let r=String(t||"").trim();if(!r)return"";try{return new URL(r,e).href}catch{return""}}function Goe(t){let e=String(t||"").trim();if(!e)return"";try{let n=new URL(e,qn.host).searchParams.get("cat");if(n)return n}catch{}return e.replace(/^\/?\?cat=/,"")}function q1r(t){let e=String(t||"").trim();if(/^https?:\/\//i.test(e))return e;if(e.startsWith("/"))return Ow(e);let r=Goe(e);return r?`${qn.host}/?cat=${encodeURIComponent(r)}`:qn.host}function j1r(t){let e=String(t||"").trim();return e?e.startsWith("//")?`https:${e}`:Ow(e,qn.host):""}function H1r(t){if(!Array.isArray(t))return null;let e=String(t[0]??"").trim(),r=Yg(t[1]);return!e||!r?null:{id:e,vod_id:e,vod_name:r,vod_pic:qn.pic,vod_remarks:Yg(t[2]),vod_year:String(t[3]??"").trim(),type_name:Yg(t[4]),vod_actor:Yg(t[5])}}async function Hoe(t,e={}){let r=Ow(t,e.base||qn.host),n=await he({url:r,method:"get",timeout:e.timeout||qn.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...Qoe(e.referer||qn.host),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function Q1r(){let t=await he({url:`${qn.listUrl}?_=${Date.now()}`,method:"get",timeout:qn.timeout,responseType:"text",transformResponse:[n=>n],validateStatus:()=>!0,headers:Qoe(qn.host)});if(t.status<200||t.status>=300)throw new Error(`HTTP ${t.status}`);let e=JSON.parse(String(t.data||"{}")),r=Object.values(e).map(H1r).filter(Boolean);return tM={expireAt:Date.now()+F1r,list:r},r}async function rM(){return tM.expireAt>Date.now()&&tM.list.length>0?tM.list:(eM||(eM=Q1r().finally(()=>{eM=null})),eM)}function Zot(t,e){let r=String(e||"\u9023\u8F09\u4E2D").trim();return r==="\u9023\u8F09\u4E2D"?t.filter(n=>n.vod_remarks.includes("\u9023\u8F09\u4E2D")):r==="2017"?t.filter(n=>{let s=Number.parseInt(n.vod_year,10);return Number.isFinite(s)&&s<=2017}):t.filter(n=>n.vod_year===r)}function ect(t,e,r=Nw){let n=Math.max(1,Number.parseInt(e,10)||1),s=t.length,i=Math.max(1,Math.ceil(s/r));return{list:t.slice((n-1)*r,n*r),page:n,pagecount:i,limit:r,total:s}}function G1r(t,e){let r=Goe(e);return t.find(n=>n.id===r||n.vod_id===r)}function V1r(t){return Yg(t).replace(/[$#]/g," ").trim()}function z1r(t,e){let r=Yg(t),n=r.match(/\[(.*)\]/);return V1r(n?.[1]||r||`\u7B2C${e+1}\u96C6`)}function K1r(t){return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}function Y1r(t){try{let e=JSON.parse(Buffer.from(String(t||""),"base64").toString("utf8"));return e&&typeof e=="object"?e:{}}catch{return{}}}function J1r(t,e,r){let n=Me(t||"");n(".site-main article").each((s,i)=>{let a=String(n(i).find("[data-apireq]").first().attr("data-apireq")||"").trim();if(!a||r.has(a))return;let o=n(i).find(".entry-title").first().text();r.add(a),e.push({name:z1r(o,e.length),apiReq:a})})}async function X1r(t,e){let r=[],n=new Set,s=new Set,i=t,a=e;for(let o=0;o<U1r&&i;o+=1){n.add(a),J1r(i,r,s);let c=Me(i||"");if(o===0&&r.length===0){let l=Ow(c(".cat-links a").first().attr("href"),a);if(l&&!n.has(l)){a=l,i=await Hoe(a,{referer:e});continue}}let u=Ow(c(".nav-previous a").first().attr("href"),a);if(!u||n.has(u))break;a=u,i=await Hoe(a,{referer:e})}return r.reverse()}function Z1r(t){return(Array.isArray(t)?t.join(";"):String(t||"")).split(";").map(r=>r.trim()).filter(r=>["e","p","h"].includes(r.split("=")[0])).join("; ")}function joe(t,e=qn.host){let r={"User-Agent":qn.ua,Referer:e||qn.host};return t&&(r.Cookie=t),r}async function e_r(t,e){let r=await he({url:qn.playApi,method:"post",data:`d=${t}`,timeout:qn.timeout,responseType:"text",transformResponse:[i=>i],validateStatus:()=>!0,headers:{...Qoe(qn.host),"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);let n=JSON.parse(String(r.data||"{}")),s=j1r(n?.s?.[0]?.src);if(!s)throw new Error("empty play url");return{url:s,cookie:Z1r(r.headers?.["set-cookie"])}}async function t_r(t,e){return{}}async function r_r(t,e){try{let r=Zot(await rM(),"\u9023\u8F09\u4E2D").slice(0,Nw);return{class:Xot,filters:{},list:r}}catch(r){return console.error("anime1 home failed:",r.message),{class:Xot,filters:{},list:[]}}}async function n_r(t,e){let r=t.body?.id||t.body?.tid||"\u9023\u8F09\u4E2D",n=t.body?.page||1;try{return ect(Zot(await rM(),r),n)}catch(s){return console.error("anime1 category failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:Nw,total:0}}}async function s_r(t,e){let r=String(t.body?.wd||"").trim(),n=t.body?.page||1;if(!r)return{list:[],page:1,pagecount:1,limit:Nw,total:0};try{let s=r.toLowerCase(),i=(await rM()).filter(a=>a.vod_name.toLowerCase().includes(s));return ect(i,n)}catch(s){return console.error("anime1 search failed:",s.message),{list:[],page:Math.max(1,Number.parseInt(n,10)||1),pagecount:1,limit:Nw,total:0}}}async function i_r(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(a=>String(a||"").trim()).filter(Boolean),s=[],i=await rM().catch(()=>[]);for(let a of n){let o=Goe(a),c=q1r(a);try{let u=await Hoe(c),l=Me(u||""),d=G1r(i,a),f=Yg(l(".page-title, h1").first().text()),m=(await X1r(u,c)).map(h=>`${h.name}$${K1r({apiReq:h.apiReq,referer:c})}`).join("#");s.push({vod_id:o||a,vod_name:d?.vod_name||f||o||a,vod_pic:d?.vod_pic||qn.pic,vod_remarks:d?.vod_remarks||"",vod_year:d?.vod_year||"",type_name:d?.type_name||"",vod_actor:d?.vod_actor||"",vod_content:d?.vod_remarks||"",vod_play_from:"Anime1",vod_play_url:m})}catch(u){console.error("anime1 detail failed:",a,u.message)}}return{list:s}}async function a_r(t,e){let r=String(t.body?.id||"").trim(),n=Y1r(r),s=String(n.apiReq||r).trim(),i=n.referer||qn.host;if(!s)return{parse:0,jx:0,url:"",header:joe("",i)};try{let a=await e_r(s,i);return{parse:0,jx:0,url:a.url,playId:a.url,header:joe(a.cookie,qn.host)}}catch(a){return console.error("anime1 play failed:",a.message),{parse:0,jx:0,url:"",header:joe("",i)}}}var tct={meta:{key:qn.key,name:"\u300C\u76F4\u300DAnime1",type:3},api:async t=>{t.post("/init",t_r),t.post("/home",r_r),t.post("/category",n_r),t.post("/detail",i_r),t.post("/play",a_r),t.post("/search",s_r)}};var Jg="https://gimy01.tv",sct="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36",o_r=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u7535\u89C6\u5267"},{type_id:"4",type_name:"\u52A8\u6F2B"},{type_id:"29",type_name:"\u7EFC\u827A"},{type_id:"34",type_name:"\u77ED\u5267"},{type_id:"13",type_name:"\u9646\u5267"}],rct={\u5287:"\u5267",\u96FB:"\u7535",\u8996:"\u89C6",\u7DDA:"\u7EBF",\u570B:"\u56FD",\u7522:"\u4EA7",\u7D9C:"\u7EFC",\u85DD:"\u827A",\u52D5:"\u52A8",\u756B:"\u753B",\u985E:"\u7C7B",\u5225:"\u522B",\u72C0:"\u72B6",\u614B:"\u6001",\u5C0E:"\u5BFC",\u984C:"\u9898",\u6B61:"\u6B22",\u6A02:"\u4E50",\u611B:"\u7231",\u5F8C:"\u540E",\u9580:"\u95E8",\u9F8D:"\u9F99",\u99AC:"\u9A6C",\u98A8:"\u98CE",\u96F2:"\u4E91",\u8207:"\u4E0E",\u842C:"\u4E07",\u7121:"\u65E0",\u7DDA\u4E0A\u770B:"\u7EBF\u4E0A\u770B",\u9023\u7E8C\u5287:"\u8FDE\u7EED\u5267",\u96FB\u8996\u5287:"\u7535\u89C6\u5267",\u96FB\u5F71:"\u7535\u5F71",\u52D5\u6F2B:"\u52A8\u6F2B",\u7D9C\u85DD:"\u7EFC\u827A"};function Xg(t){return String(t||"").replace(/\/+$/,"")}function ict(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function Wo(t){let e=ict(t);return Object.keys(rct).forEach(r=>{e=e.replace(new RegExp(r,"g"),rct[r])}),e}function c_r(t){return String(t||"").replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Zg(t){let e=String(t||"").trim().replace(/^["']|["']$/g,"");return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?"https:"+e:e.startsWith("/")?Xg(Jg)+e:Xg(Jg)+"/"+e.replace(/^\.\//,""):""}function nM(t){return{"User-Agent":sct,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t||Xg(Jg)+"/"}}function u_r(t){let e=String(t||""),r=e.trim();if(!r.startsWith('"')||!r.endsWith('"'))return e;try{let n=JSON.parse(r);if(typeof n=="string"&&/(?:<!doctype\s+html|<html[\s>])/i.test(n))return n}catch{}return e}function l_r(t){return new Promise(e=>setTimeout(e,t))}function d_r(t){let e=String(t?.code||"").toUpperCase(),r=String(t?.message||"");return["ECONNRESET","ETIMEDOUT","ECONNABORTED","EAI_AGAIN"].includes(e)||/socket disconnected|TLS connection|timeout/i.test(r)}async function Pw(t,e={}){let r=Number.isInteger(e.retries)?e.retries:2,n;for(let s=0;s<=r;s+=1)try{let i=await he(t,{method:e.method||"get",headers:{...nM(e.referer),...e.headers||{}},data:e.data,timeout:e.timeout||2e4,responseType:"text",transformResponse:[a=>a]});return u_r(i.data)}catch(i){if(n=i,s>=r||!d_r(i))throw i;await l_r(300*(s+1))}throw n}function f_r(t){let e=String(t||""),r=[/var\s+player_data\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i,/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i,/player_data\s*=\s*(\{[\s\S]*?\})\s*;/i];for(let n of r){let s=e.match(n);if(s)try{return JSON.parse(s[1])}catch{}}return null}function p_r(t){let e=String(t?.url||"").trim(),r=String(t?.encrypt||"").trim();if(!e)return"";if(r==="1")try{return decodeURIComponent(e)}catch{return e}if(r==="2")try{return decodeURIComponent(Buffer.from(e,"base64").toString("utf8"))}catch{try{return Buffer.from(e,"base64").toString("utf8")}catch{return e}}return e}function act(t){let e=String(t||"").trim();if(!e)return null;try{return JSON.parse(e)}catch{let n=e.match(/\{[\s\S]*\}/);if(!n)return null;try{return JSON.parse(n[0])}catch{}}return null}function oct(t){return/^https?:\/\//i.test(t)&&/(?:\.m3u8|\.mp4|\.flv|\.m4v|\.m4s)(?:[?#]|$)/i.test(t)}function cct(t){let e=String(t||"").trim();if(!e)return"";if(oct(e))return e;let r=act(e);if(r&&typeof r=="object"){let s=cct(r.url||r.video||r.playurl);if(s)return s}let n=e.match(/https?:\/\/[^"'<>\s]+(?:\.m3u8|\.mp4|\.flv|\.m4v)(?:[^"'<>\s]*)?/i);return n?n[0]:""}function uct(t,e){let r=String(t||""),n=String(e||"");if(/^JDQM-/i.test(r)||/^JDQM$/i.test(n))return"JDQM";if(/^JDHG-/i.test(r)||/^JDHG$/i.test(n))return"JDHG";if(/^JD-/i.test(r)||/^(?:JD4K|JD2K)$/i.test(n)&&/^JD/i.test(r))return"JD2K";if(/^JK2-/i.test(r)||/^JK2$/i.test(n))return"JK2";if(/^NSYS-/i.test(r)||/^NSYS$/i.test(n))return"NSYS";if(/^NBY-/i.test(r)||/^NBY$/i.test(n))return"NBY";if(/^JinLiDj-/i.test(r)||/^djplayer$/i.test(n))return"djplayer";if(/^(?:znjson|znkan)-/i.test(r)||/^znjson$/i.test(n))return"znjson";let s=r.match(/^(JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)-/i);return s?s[1].toUpperCase():/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(n)?n.toUpperCase():/(?:iqiyi\.com|bilibili\.com|v\.qq\.com|sohu\.com|pptv\.com|letv\.com|xigua\.com|mgtv\.com)/i.test(r)?"etcjc":/v\.youku\.com/i.test(r)?"kmjc":"normal"}function m_r(t,e){let r=uct(t,e);return/^(?:JD4K|JD2K|JDQM|JDHG)$/i.test(r)?"d":/^(?:JSYBL|JSYMG|JSYQY|JSYDJ|JSYHS|JSYRR|JSYYK|JSYTX)$/i.test(r)?"j":r==="normal"?"o":"v"}function h_r(t,e,r,n){let s="https://player.gimy.bot/"+m_r(t,e)+"/",i=uct(t,e),a=n||r,o=s+"?url="+encodeURIComponent(t);return o+="&jctype="+encodeURIComponent(i),a&&(o+="&next="+encodeURIComponent("//"+a.replace(/^https?:\/\//i,""))),{parseBase:s,referer:o}}function nct(t,e=Xg(Jg)){return{"User-Agent":sct,Referer:t||Xg(Jg)+"/",Origin:e}}function g_r(t){return{vod_id:t.vod_id||"",vod_name:t.vod_name||"",vod_pic:t.vod_pic||"",vod_remarks:t.vod_remarks||""}}function lct(t,e){let r=[],n={};return(e&&e.length?e:t.root()).find("a[href*='/vod/'], a[href*='/detail/']").each((i,a)=>{let o=t(a),c=o.attr("href")||"",u=Zg(c);if(!/(?:\/detail\/|\/vod\/)\d+\.html/i.test(u)||n[u])return;let l=Wo(o.attr("title")||o.find("img").attr("alt")||o.find(".title, .video-text, .module-poster-item-title, h3, h4, h5").first().text()||o.text());if(!l)return;let d=o.closest(".module-item, li, .public-list-box, .video-item, .item, .module-poster-item, .myui-vodlist__box"),f=Zg(o.attr("data-original")||o.attr("data-src")||o.attr("data-bg")||o.find("img").attr("data-original")||o.find("img").attr("data-src")||o.find("img").attr("src")||d.find("a.video-pic").first().attr("data-original")||d.find("a.video-pic").first().attr("data-src")||d.find("img").first().attr("data-original")||d.find("img").first().attr("data-src")||d.find("img").first().attr("src")||""),p=d.html()||o.parent().html()||"",m=String(p).match(/(?:更新至第?\d+集|更新第?\d+集|\(?\d+å…¨\)?|å…¨\d+集|已完結|已完结|HD中字|HD|TC|HC|搶先版|抢先版)/i);n[u]=!0,r.push(g_r({vod_id:u,vod_name:l,vod_pic:f,vod_remarks:m?Wo(m[0]):""}))}),r}function Mo(t,e){let r=new RegExp("<span[^>]*>\\s*"+c_r(e)+"\\s*[\uFF1A:]\\s*<\\/span>([\\s\\S]*?)<\\/(?:li|div)>","i"),n=String(t||"").match(r);return n?Wo(n[1]):""}function A_r(t){let e=[],r=[],n=new Set,s=(c,u)=>(Wo(c)||u||"\u6B63\u7247").replace(/[$#]/g," ").trim(),i=c=>{let u=[],l=new Set;return c.find("a[href*='/play/'], a[href*='/eps/']").each((d,f)=>{let p=t(f),m=p.attr("href")||"",h=Zg(m);if(!h||l.has(h))return;l.add(h);let A=s(p.attr("title")||p.text(),"\u7B2C"+(u.length+1)+"\u96C6");u.push(A+"$"+h)}),u},a=(c,u,l)=>{if(!u.length)return;let d=Wo(c)||"\u9ED8\u8BA4\u7EBF\u8DEF",f=String(l||d||r.length);n.has(f)||(n.add(f),r.push({from:d,urls:u.join("#")}))},o=new Map;return t(".source[data-route-switch], [data-line-name][data-route-switch]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-switch")||"").trim(),f=l.clone();f.children().remove();let p=Wo(l.attr("data-line-name")||f.text()||l.text());d&&p&&o.set(d,p)}),t(".episodes-route[data-route-sid], .eps[data-route-sid]").each((c,u)=>{let l=t(u),d=String(l.attr("data-route-sid")||"").trim();a(o.get(d)||"\u7EBF\u8DEF"+(d||r.length+1),i(l),"route:"+(d||r.length+1))}),t("#playTab a[href^='#con_playlist_']").each((c,u)=>{let l=t(u),d=String(l.attr("href")||"").replace(/^#/,""),f=Wo(l.text())||d;d&&e.push({tabId:d,name:f})}),t("ul[id^='con_playlist_']").each((c,u)=>{let l=t(u),d=l.attr("id")||"",f=Wo(l.prevAll("li").first().text())||d;d&&!e.some(p=>p.tabId===d)&&e.push({tabId:d,name:f})}),e.forEach(c=>{a(c.name,i(t("#"+c.tabId)),"tab:"+c.tabId)}),r.length||a("Gimy",i(t.root()),"fallback:gimy"),{playFrom:r.map(c=>c.from).join("$$$"),playUrl:r.map(c=>c.urls).join("$$$")}}async function y_r(t,e){return{}}async function x_r(t,e){return{class:o_r}}async function b_r(t,e){let r=String(t.body?.id||"2"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Pw(Xg(Jg)+"/type/"+r+(n>1?"-"+n:"")+".html"),i=Me(s),a=lct(i);return{page:n,pagecount:a.length>0?n+1:n,list:a}}async function E_r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=/^https?:\/\//i.test(i)?i:Zg(i),o=await Pw(a),c=Me(o),u=A_r(c),l=c("h1.text-overflow, h1").first().text()||c("title").text(),d=Mo(o,"\u985E\u5225")||Mo(o,"\u7C7B\u522B"),f=d.match(/\b(?:19|20)\d{2}\b/)?.[0]||"";n.push({vod_id:a,vod_name:Wo(l.replace(/(?:線上看|线上看)[\s\S]*$/i,"")),vod_pic:Zg(c("meta[property='og:image']").attr("content")||(c(".details-pic .video-pic").attr("style")||"").match(/url\(([^)]+)\)/)?.[1]||c("img").first().attr("src")||""),vod_content:Wo(c(".switch-box .text, .details-content .text, .details-content, .detail-sketch").first().text()||c("meta[name='description']").attr("content")||""),vod_remarks:Mo(o,"\u72C0\u614B")||Mo(o,"\u72B6\u6001"),type_name:Wo(d.replace(/\s*[·.]\s*(?:19|20)\d{2}\b.*$/,"")),vod_year:Mo(o,"\u5E74\u4EE3")||Mo(o,"\u5E74\u4EFD")||f,vod_area:Mo(o,"\u570B\u5BB6/\u5730\u5340")||Mo(o,"\u56FD\u5BB6/\u5730\u533A")||Mo(o,"\u5730\u5340")||Mo(o,"\u5730\u533A"),vod_actor:Mo(o,"\u4E3B\u6F14")||Wo(c("li:contains('\u4E3B\u6F14') a, .detail__meta div:contains('\u4E3B\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_director:Mo(o,"\u5C0E\u6F14")||Mo(o,"\u5BFC\u6F14")||Wo(c("li:contains('\u5C0E\u6F14') a, li:contains('\u5BFC\u6F14') a, .detail__meta div:contains('\u5C0E\u6F14') a, .detail__meta div:contains('\u5BFC\u6F14') a").map((p,m)=>c(m).text()).get().join(" / ")),vod_play_from:u.playFrom,vod_play_url:u.playUrl})}return{list:n}}async function __r(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,url:""};let n=/^https?:\/\//i.test(r)?r:Zg(r);try{let s=await Pw(n,{referer:n}),i=f_r(s),a=p_r(i),o=String(i?.from||t.body?.flag||"").trim();if(!a)return{parse:1,url:n,header:nM(n)};if(oct(a))return{parse:0,url:a,header:nct(n)};let c=i?.link_next?Zg(i.link_next):"",u=h_r(a,o,n,c),l=await Pw(u.parseBase+"parse.php?url="+encodeURIComponent(a)+"&_t="+Date.now(),{referer:u.referer,headers:{Accept:"application/json, text/plain, */*"}}),d=act(l),f=cct(d?.url||d?.video||d?.playurl);return f?{parse:0,url:f,header:nct(u.referer,"https://player.gimy.bot")}:{parse:1,url:a,header:nM(n)}}catch(s){return console.error("gimy play failed:",s.message),{parse:1,url:n,header:nM(n)}}}async function S_r(t,e){let r=ict(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s=Xg(Jg)+"/search/-------------.html?wd="+encodeURIComponent(r)+"&page="+n,i=await Pw(s),a=Me(i),o=lct(a,a(".box-main-content").first());return{page:n,pagecount:o.length>0?n+1:n,list:o}}var dct={meta:{key:"gimy",name:"\u300C\u76F4\u300D\u5267\u8FF7",type:3},api:async t=>{t.post("/init",y_r),t.post("/home",x_r),t.post("/category",b_r),t.post("/detail",E_r),t.post("/play",__r),t.post("/search",S_r)}};var Voe="https://hanxiaoquan.hanju.workers.dev",v_r="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36",C_r=[{type_id:"0",type_name:"\u97E9\u5267"},{type_id:"1",type_name:"\u97E9\u5F71"},{type_id:"2",type_name:"\u65E5\u97E9\u7EFC"},{type_id:"3",type_name:"\u65E5\u97E9\u6F2B"},{type_id:"100",type_name:"\u70ED\u95E8"}];function zoe(t){return String(t||"").replace(/\/+$/,"")}function Vl(t){return String(t||"").replace(/\s+/g," ").trim()}function I_r(t){let e=String(t||"").trim();return e?e.startsWith("//")?"https:"+e:/^https?:\/\//i.test(e)?e:zoe(Voe)+(e.startsWith("/")?e:"/"+e):""}function fct(){let t=zoe(Voe);return{"User-Agent":v_r,Accept:"application/json, text/plain, */*","Content-Type":"application/json",Origin:t,Referer:t+"/"}}async function Koe(t,e,r=3e4){let n=await he(zoe(Voe)+t,{method:"post",headers:fct(),data:e||{},timeout:r,responseType:"json"});return typeof n.data=="string"?JSON.parse(n.data):n.data||{}}function Yoe(t){return{vod_id:String(t?.vod_id||""),vod_name:Vl(t?.vod_name),vod_pic:I_r(t?.vod_pic),vod_remarks:Vl(t?.vod_remarks||t?.vod_class),vod_year:Vl(t?.vod_year),vod_director:Vl(t?.vod_director),vod_actor:Vl(t?.vod_actor),vod_content:Vl(t?.vod_content)}}function mE(t){return String(t||"").toLowerCase().replace(/\s+/g,"").replace(/[·•・\-—_::,,.。'"“”‘’!?!?()()\[\]【】]/g,"")}function T_r(t,e){let r=mE(e),n=mE(t?.vod_name),s=mE(t?.vod_remarks),i=mE(t?.vod_actor),a=mE(t?.vod_director),o=mE(t?.vod_content);return r?n===r?1e4:n.startsWith(r)?8e3-n.length:n.includes(r)?6e3-n.indexOf(r):s.includes(r)?2500-s.indexOf(r):i.includes(r)?1800-i.indexOf(r):a.includes(r)?1500-a.indexOf(r):o.includes(r)?500-o.indexOf(r):0:0}function w_r(t,e,r){let n=[],s=Array.isArray(t)?t:[];for(let i of s){let a=Yoe(i);if(!a.vod_id||!a.vod_name||r[a.vod_id])continue;let o=T_r(a,e);o<=0||(r[a.vod_id]=!0,a._searchScore=o,n.push(a))}return n}function R_r(t){let e=Yoe(t);e.type_name=Vl(t?.vod_class),e.vod_area=Vl(t?.vod_area)||"\u97E9\u56FD";let n=(Array.isArray(t?.vod_play_url)?t.vod_play_url:[]).map((s,i)=>{let a=Vl(s?.t||s?.name)||"\u7B2C"+(i+1)+"\u96C6",o=String(s?.u||s?.url||"").trim();return o?a+"$"+o:""}).filter(Boolean).join("#");return e.vod_play_from=n?"\u9ED8\u8BA4\u7EBF\u8DEF":"",e.vod_play_url=n,e}function N_r(t,e,r){let n=Number(t?.pagecount||t?.pageCount||t?.totalPage||0);return Number.isFinite(n)&&n>0?n:r.length>0?e+1:e}async function O_r(t,e){return{}}async function P_r(t,e){return{class:C_r}}async function D_r(t,e){let r=String(t.body?.id||"0"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);let s=await Koe("/api/list",{c_id:r,page:String(n)}),i=(Array.isArray(s?.data)?s.data:[]).map(Yoe).filter(a=>a.vod_id&&a.vod_name);return{page:n,pagecount:N_r(s,n,i),total:s?.total||i.length,list:i}}async function k_r(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=String(s||"").trim();if(!i)continue;let a=await Koe("/api/detail",{b_id:i});a?.data&&n.push(R_r(a.data))}return{list:n}}async function L_r(t,e){let r=String(t.body?.id||"").trim();return r?{parse:0,url:r,header:fct()}:{parse:1,url:""}}async function B_r(t,e){let r=Vl(t.body?.wd),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,list:[]};let s={},i=[],a=n===1?5:n;for(let o=n;o<=a;o++){let c=await Koe("/api/search",{keyword:r,page:String(o)},6e4),u=w_r(c?.data,r,s);if(i.push(...u),!Array.isArray(c?.data)||c.data.length<20||n>1)break}return i.sort((o,c)=>{let u=Number(c._searchScore||0)-Number(o._searchScore||0);return u!==0?u:o.vod_name.localeCompare(c.vod_name,"zh-CN")}),i.forEach(o=>{delete o._searchScore}),{page:n,pagecount:i.length>0?n+1:n,list:i}}var pct={meta:{key:"hanxiaoquan",name:"\u300C\u76F4\u300D\u97E9\u5C0F\u5708",type:3},api:async t=>{t.post("/init",O_r),t.post("/home",P_r),t.post("/category",D_r),t.post("/detail",k_r),t.post("/play",L_r),t.post("/search",B_r)}};var Xoe=Re(require("node:vm"),1),lo=Re(Jn(),1);var xa={key:"wbbb",name:"\u6B6A\u6BD4\u5DF4\u535C",host:"https://wbbb1.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36",timeout:2e4},mct=[{type_id:"1",type_name:"\u7535\u5F71"},{type_id:"2",type_name:"\u5267\u96C6"},{type_id:"3",type_name:"\u52A8\u6F2B"},{type_id:"4",type_name:"\u7EFC\u827A"}],M_r=/^(?:lzm3u8|bfzym3u8)$/i;function hct(t){return String(t||"").replace(/\/+$/,"")}function Bs(t,e,r=1,n=""){let s=String(t||"").match(e);return s&&s[r]||n}function Ts(t=""){return String(t).replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function Joe(t=""){return Ts(t).replace(/\s*\/\s*/g,"/").replace(/^\/+|\/+$/g,"").trim()}function gct(t=""){return String(t).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function fo(t=""){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?hct(xa.host)+e:hct(xa.host)+"/"+e.replace(/^\.\//,""):""}function W_r(t=""){let e=String(t||"").trim();if(!e)return"";if(e.startsWith("//"))return e;if(/^https?:\/\//i.test(e))try{let r=new URL(e);return`//${r.host}${r.pathname}${r.search}${r.hash}`}catch{}if(e.startsWith("/"))try{return`//${new URL(xa.host).host}${e}`}catch{}return e}function $_r(t){return(Array.isArray(t)?t:[]).map(e=>String(e||"").split(";")[0].trim()).filter(Boolean).join("; ")}function bct(t=`${xa.host}/`){return{"User-Agent":xa.ua,Referer:t,"Accept-Language":"zh-CN,zh;q=0.9"}}async function gE(t,e={}){let r=/^https?:\/\//i.test(t)?t:fo(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||xa.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{...bct(e.referer),...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function F_r(t,e={}){let r=await he({url:t,method:e.method||"get",data:e.data,timeout:e.timeout||xa.timeout,validateStatus:()=>!0,headers:e.headers||{}});if(r.status<200||r.status>=300)throw new Error(`HTTP ${r.status}`);return typeof r.data=="string"?JSON.parse(r.data):r.data}function Zoe(t=""){let e=Ts(String(t||"")).replace(/\s+/g,"").trim();return!e||/^(?:排序|选择播放源|切换播放源|更多|展开|æ”¶èµ·)$/i.test(e)}function U_r(t=""){let e=String(t||"").trim();if(!e)return"";let r=e.match(/\/detail\/(\d+)\.html/i)||e.match(/^(\d+)$/);return r?r[1]:e}function q_r(t=""){if(t&&typeof t=="object"&&!Array.isArray(t)){let i=fo(t.playUrl||t.playId||t.url||t.id||""),a=Ts(t.name||"").trim();return!i||!a?null:{name:a,id:i,playId:i,playUrl:i,url:i}}let e=String(t||"").trim();if(!e)return null;let r=e.indexOf("$");if(r<0)return null;let n=e.slice(0,r).trim(),s=fo(e.slice(r+1).trim());return!n||!s?null:{name:n,id:s,playId:s,playUrl:s,url:s}}function Act(t,e,r=0){if(Zoe(t))return null;let n=Ts(String(t||"")).replace(/\s+/g," ").trim()||`\u7EBF\u8DEF${r+1}`,s=new Set,i=[];for(let a of Array.isArray(e)?e:[]){let o=q_r(a);!o||s.has(o.playId)||(s.add(o.playId),i.push(o))}return i.length?{name:n,url:i.map(a=>`${a.name}$${a.playUrl}`).join("#"),episodes:i}:null}function j_r(t){let e=Bs(t,/href=["']\/detail\/(\d+)\.html["']/i,1,""),r=Ts(Bs(t,/<div class=["']module-(?:poster-item-title|card-item-title)["']>([\s\S]*?)<\/div>/i,1,""))||Bs(t,/alt=["']([^"']+)["']/i,1,""),n=fo(Bs(t,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),s=Ts(Bs(t,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""));return{vod_id:e,vod_name:r,vod_pic:n,vod_remarks:s}}function tce(t){let e=String(t||""),r=[],n=/<a href=["']\/detail\/(\d+)\.html["'] title=["']([^"']+)["'] class=["']module-poster-item module-item["']>([\s\S]*?)<\/a>/gi,s;for(;(s=n.exec(e))!==null;){let a=s[0];r.push({vod_id:s[1],vod_name:Ts(s[2]),vod_pic:fo(Bs(a,/(?:data-original|data-src|src)=["']([^"']+)["']/i,1,"")),vod_remarks:Ts(Bs(a,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""))})}if(r.length)return r;let i=/<div class=["']module-card-item module-item["']>([\s\S]*?)<\/div>\s*<\/div>/gi;for(;(s=i.exec(e))!==null;){let a=j_r(s[1]);a.vod_id&&a.vod_name&&r.push(a)}return r}function H_r(t){let e=[],r=/<div[^>]*class=["'][^"'>]*\bmodule-tab-item\b[^"'>]*["'][^>]*>([\s\S]*?)<\/div>/gi,n;for(;(n=r.exec(t))!==null;){let s=n[0],i=Bs(s,/data-dropdown-value\s*=\s*['"]([^'"]+)['"]/i,1,"").trim();if(i){Zoe(i)||e.push(i);continue}let a=Ts(n[1]||"").trim();a&&!Zoe(a)&&e.push(a)}return e}function Q_r(t){let e=[],r=/<div class=["']module-play-list-content[^"']*["']>([\s\S]*?)<\/div>/gi,n;for(;(n=r.exec(t))!==null;){let i=n[1],a=[],o=/<a[^>]+class=["']module-play-list-link[^"']*["'][^>]+href=["']([^"']+)["'][^>]*>([\s\S]*?)<\/a>/gi,c;for(;(c=o.exec(i))!==null;){let u=fo(c[1]),l=Ts(c[2]).trim();!u||!l||a.push(`${l}$${u}`)}a.length&&e.push(a)}if(e.length)return e;let s=[...t.matchAll(/<a[^>]+href=["']([^"']*\/(?:vplay|play)\/[^"'#]+)["'][^>]*>([\s\S]*?)<\/a>/gi)];return s.length?[s.map(i=>`${Ts(i[2]).trim()||"\u64AD\u653E"}$${fo(i[1])}`)]:e}function G_r(t="",e=""){let r=Ts(Bs(t,/<a[^>]+module-play-list-link[^"']*active[^"']*[^>]*>([\s\S]*?)<\/a>/i,1,"")),n=Ts(Bs(t,/(?:正在播放|当前播放)[^::]*[::]\s*([\s\S]*?)(?:<|$)/i,1,"")),s=r||n;return e&&s&&(s=s.replace(new RegExp(`^${gct(e)}\\s*`),"").trim(),s=s.replace(new RegExp(`^\u300A?${gct(e)}\u300B?\\s*`),"").trim()),s.trim()}function V_r(t="",e={}){let r=String(e?.vod_data?.vod_name||"").trim(),n=G_r(t,r);return`\u5728\u7EBF\u64AD\u653E${r}${n?` ${n}`:""}`.trim()||r||"\u5728\u7EBF\u64AD\u653E"}function z_r(t){let e=[/var\s+player_aaaa\s*=\s*(\{.*?\})<\/script>/s,/var\s+player_.*?=\s*(\{.*?\})<\/script>/s,/player_aaaa\s*=\s*(\{.*?\})\s*;/s,/player_data\s*=\s*(\{.*?\})\s*;/s];for(let r of e){let n=String(t||"").match(r);if(n)try{return JSON.parse(n[1])}catch{}}return null}function K_r(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(n==="1")try{r=unescape(r)}catch{}else if(n==="2"){try{r=Buffer.from(r,"base64").toString("utf8")}catch{}try{r=unescape(r)}catch{}}return fo(r)}function ece(t,e){let r=String(t||"").trim(),n=String(e||"").trim();if(!r)return!1;if(/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:[?#]|$)/i.test(r)||/^(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)$/i.test(n)&&/^https?:\/\//i.test(r)||M_r.test(n))return!0;try{let s=new URL(r);return/\.(?:m3u8|mp4|m4v|m4a|mp3|flv|avi|mkv|mov|webm)(?:$|\?)/i.test(s.pathname+s.search)}catch{return!1}}function yct(t=""){let e=String(t||"").trim();if(/^[A-Za-z0-9+/]+={0,2}$/.test(e)&&e.length%4===0)try{return lo.default.enc.Base64.parse(e)}catch{}return lo.default.enc.Utf8.parse(e)}function Y_r(t){let e=()=>{},r=function(){return{on:e,hide:e,show:e,html:e,text:e,click:e,append:e,remove:e,css:e,attr:e,addClass:e,removeClass:e,find:()=>({}),val:()=>"",ready:e,length:0}};r.post=e,r.ajax=e,r.get=e,r.fn={};let n=new URL(t),s={console,CryptoJS:lo.default,URL,URLSearchParams,Buffer,atob:i=>Buffer.from(i,"base64").toString("binary"),btoa:i=>Buffer.from(i,"binary").toString("base64"),setTimeout:e,setInterval:()=>0,clearTimeout:e,clearInterval:e,fetch:async()=>({ok:!0,status:200,headers:new Map,text:async()=>"",json:async()=>({})}),localStorage:{getItem:()=>null,setItem:e,removeItem:e},sessionStorage:{getItem:()=>null,setItem:e,removeItem:e},navigator:{userAgent:xa.ua,clipboard:{writeText:async()=>{}}},document:{title:"wbbb-parser",body:{},addEventListener:e,querySelector:()=>null,createElement:()=>({style:{},click:e}),getElementById:()=>({style:{},addEventListener:e,play:async()=>{},pause:e})},location:{origin:n.origin,pathname:n.pathname,search:n.search,href:n.toString(),host:n.host},window:null,top:null,parent:null,self:null,$:r,jQuery:r,Artplayer(){return{on:e,once:e,emit:e,destroy:e,template:{},plugins:{},setting:{show:e},controls:{add:e},layers:{add:e},events:{proxy:e},notice:{show:e},storage:{get:()=>null,set:e}}},animation:{}};return s.window=s,s.top=s,s.parent=s,s.self=s,s}async function J_r(t,e){let r=Bs(e,/<script[^>]+src=["']([^"']*setting\.js[^"']*)["']/i,1,"");if(!r)throw new Error("setting.js missing");let n=new URL(r,t).toString(),i=`${await gE(n,{referer:t})} +;globalThis.__wbbbResolveRuntime={ urlValueurl, keyValue, vkeyValue, ckeyValue, nextParam, titleParam };`,a=Y_r(t);Xoe.default.createContext(a),Xoe.default.runInContext(i,a,{timeout:5e3});let o={...a.__wbbbResolveRuntime||{},decrypt:typeof a.decrypt=="function"?a.decrypt.bind(a):null,deplay:typeof a.deplay=="function"?a.deplay.bind(a):null};if(!o.urlValueurl||!o.keyValue||!o.vkeyValue||!o.ckeyValue)throw new Error("setting runtime params missing");return o}async function X_r(t,e,r){let n=W_r(e),s=String(r||"").trim(),i=`https://xn--qvr2v.850088.xyz/player/?url=${encodeURIComponent(t)}${n?`&next=${encodeURIComponent(n)}`:""}${s?`&title=${encodeURIComponent(s)}`:""}`,a=await he.get(i,{timeout:xa.timeout,responseType:"text",transformResponse:[A=>A],validateStatus:()=>!0,headers:bct(`${xa.host}/`)});if(a.status<200||a.status>=300)throw new Error(`HTTP ${a.status}`);let o=String(a.data||""),c=$_r(a.headers?.["set-cookie"]),u=await J_r(i,o),l=u.urlValueurl||`${String(t||"").trim()}${n?`&next=${n}`:""}`,d="https://xn--qvr2v.850088.xyz/player/api.php",f=new URLSearchParams({url:l,key:u.keyValue,vkey:u.vkeyValue,ckey:u.ckeyValue}).toString(),p=await F_r(d,{method:"post",data:f,headers:{"User-Agent":xa.ua,"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest",Referer:i,Origin:"https://xn--qvr2v.850088.xyz",...c?{Cookie:c}:{}}});if(!p||Number(p.code)!==200||!p.url)throw new Error(p?.msg||"parse api failed");let m=String(p.url||"").trim(),h="";if(m&&u&&typeof u.decrypt=="function")try{h=(u.decrypt(m)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}if(!h&&m&&u&&typeof u.deplay=="function")try{let A=String(u.deplay(p.aes_key||"")||"").trim(),g=String(u.deplay(p.aes_iv||"")||"").trim();if(A&&g){h=(lo.default.AES.decrypt(m,lo.default.enc.Utf8.parse(A),{iv:lo.default.enc.Utf8.parse(g),mode:lo.default.mode.CBC,padding:lo.default.pad.Pkcs7}).toString(lo.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}}catch{}if(!h){let A=yct(p.aes_key||""),g=yct(p.aes_iv||"");if(m&&A&&g)try{h=(lo.default.AES.decrypt(m,A,{iv:g,mode:lo.default.mode.CBC,padding:lo.default.pad.Pkcs7}).toString(lo.default.enc.Utf8)||"").trim();try{h=decodeURIComponent(h)}catch{}}catch{}}if(!h&&/^https?:\/\//i.test(m)&&(h=m),!h)try{h=decodeURIComponent(m)}catch{h=m}return h=fo(h),ece(h,p.type||"")||(h=i),{url:h,type:p.type||"",parsePageUrl:i}}function hE(t={}){return{"User-Agent":xa.ua,Referer:`${xa.host}/`,Origin:xa.host,...t}}function xct(t,e={}){return{parse:1,jx:1,url:t,playId:t,urls:[{name:"\u55C5\u63A2\u7EBF\u8DEF",url:t,playId:t}],header:hE(e)}}async function Z_r(t,e){return{}}async function eSr(t,e){try{let r=await gE("/");return{class:mct,filters:{},list:tce(r).slice(0,40)}}catch(r){return console.error("wbbb home failed:",r.message),{class:mct,filters:{},list:[]}}}async function tSr(t,e){let r=String(t.body?.id||"1"),n=Number.parseInt(t.body?.page||1,10);(!n||n<1)&&(n=1);try{let s=n>1?`/show/${r}--------${n}---.html`:`/show/${r}-----------.html`,i=await gE(s),a=tce(i),o=i.includes('title="\u4E0B\u4E00\u9875"')||i.includes("title='\u4E0B\u4E00\u9875'");return{page:n,pagecount:o?n+1:n,limit:20,total:(n-1)*20+a.length+(o?1:0),list:a}}catch(s){return console.error("wbbb category failed:",s.message),{page:n,pagecount:n,limit:20,total:0,list:[]}}}async function rSr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n)try{let a=U_r(i),o=/^https?:\/\//i.test(a)?a:`/detail/${a}.html`,c=await gE(o),u=[...c.matchAll(/<div class=["']module-info-tag-link["']>([\s\S]*?)<\/div>/gi)].map(h=>h[1]),l=H_r(c),d=Q_r(c),f=[];if(d.forEach((h,A)=>{let g=Act(l[A]||`\u7EBF\u8DEF${A+1}`,h,A);g&&f.push(g)}),f.length===0){let h=new Set,A=[...c.matchAll(/<a[^>]+href=["']([^"']*\/(?:vplay|play)\/[^"']+\.html)["'][^>]*>([\s\S]*?)<\/a>/gi)].map((b,y)=>{let x=fo(b[1]),v=Ts(b[2]).trim()||`\u7B2C${y+1}\u96C6`;return!x||h.has(x)?"":(h.add(x),`${v}$${x}`)}).filter(Boolean),g=Act(l[0]||"\u64AD\u653E\u7EBF\u8DEF",A,0);g&&(f=[g])}let p=f.map(h=>h.name),m=f.map(h=>h.url);s.push({vod_id:a,vod_name:Ts(Bs(c,/<h1[^>]*>([\s\S]*?)<\/h1>/i,1,"")),vod_pic:fo(Bs(c,/<div class=["']module-item-pic["']>[\s\S]*?<img[^>]+data-original=["']([^"']+)["']/i,1,""))||fo(Bs(c,/<div class=["']module-item-pic["']>[\s\S]*?<img[^>]+(?:data-src|src)=["']([^"']+)["']/i,1,"")),type_name:Joe(u[2]||""),vod_year:Ts(u[0]||""),vod_area:Ts(u[1]||""),vod_remarks:Ts(Bs(c,/<div class=["']module-item-note["']>([\s\S]*?)<\/div>/i,1,""))||Ts(Bs(c,/\u66f4\u65b0\u81f3[^<\s]+/,0,"")),vod_actor:Joe(Bs(c,/\u4e3b\u6f14:[\s\S]*?<div[^>]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_director:Joe(Bs(c,/\u5bfc\u6f14:[\s\S]*?<div[^>]*class=["']module-info-item-content["']>([\s\S]*?)<\/div>/i,1,"")),vod_content:Ts(Bs(c,/<div class=["']module-info-introduction-content[^"']*["'][^>]*>([\s\S]*?)<\/div>/i,1,"")),vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}catch(a){console.error("wbbb detail failed:",i,a.message)}return{list:s}}async function nSr(t,e){let r=String(t.body?.wd||"").trim(),n=Number.parseInt(t.body?.page||1,10);if((!n||n<1)&&(n=1),!r)return{page:n,pagecount:n,total:0,list:[]};try{let s=`/search/-------------.html?wd=${encodeURIComponent(r)}${n>1?`&page=${n}`:""}`,i=await gE(s),a=tce(i);return{page:n,pagecount:a.length>=20?n+1:n,total:a.length,list:a}}catch(s){return console.error("wbbb search failed:",s.message),{page:n,pagecount:n,total:0,list:[]}}}async function sSr(t,e){let r=String(t.body?.id||"").trim();if(!r)return{parse:1,jx:1,url:"",playId:""};let n=/^https?:\/\//i.test(r)?r:fo(r);try{let s=await gE(n,{referer:n}),i=z_r(s);if(!i)return{parse:0,jx:0,url:n,playId:n,header:hE()};let a=String(i.from||t.body?.flag||"").trim(),o=K_r(i.url,i.encrypt);if(ece(o,a))return{parse:0,jx:0,url:o,playId:o,header:hE({Referer:n})};let c=String(i.parse||i.jx||"").trim();if(c){let u=/^https?:\/\//i.test(c)?`${c}${encodeURIComponent(o)}`:fo(`${c}${encodeURIComponent(o)}`);return{parse:0,jx:0,url:u,playId:u,header:hE({Referer:n})}}try{let u=await X_r(String(i.url||""),n,V_r(s,i));if(u?.url){let l=hE({Referer:u.parsePageUrl||n});return ece(u.url,u.type||"")?{parse:0,jx:0,url:u.url,playId:u.url,header:l}:xct(u.url,l)}}catch(u){console.warn("wbbb resolve failed:",u.message)}return xct(o||n,{Referer:n})}catch(s){return console.error("wbbb play failed:",s.message),{parse:1,jx:1,url:n,playId:n,header:hE({Referer:n})}}}var Ect={meta:{key:xa.key,name:"\u300C\u76F4\u300D\u6B6A\u6BD4",type:3},api:async t=>{t.post("/init",Z_r),t.post("/home",eSr),t.post("/category",tSr),t.post("/detail",rSr),t.post("/play",sSr),t.post("/search",nSr)}};var kw={key:"girigiri",name:"girigiri\u7231\u52A8\u6F2B",host:"https://ani.girigirilove.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",timeout:15e3},ba=kw.host,rce=kw.ua,Dw=48;function Ru(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/"/gi,'"').replace(/'/g,"'").replace(/\s+/g," ").trim()}function zl(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?ba+e:ba+"/"+e:""}function _ct(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function iSr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function aSr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function oSr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}async function iM(t,e={}){let r=/^https?:\/\//i.test(t)?t:zl(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||kw.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":rce,Referer:e.referer||ba+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function cSr(t,e={}){let r=/^https?:\/\//i.test(t)?t:zl(t),n=await he.get(r,{timeout:e.timeout||kw.timeout,validateStatus:()=>!0,headers:{"User-Agent":rce,Referer:e.referer||ba+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function Ict(t){let e=[],r=t.match(/<div class="public-list-box public-pic-b">[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="public-list-exp"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||"",a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/<span class="public-list-prb[^>]*>([\s\S]*?)<\/span>/)||[])[1]||"";!s||!i||e.push({vod_id:s,vod_name:Ru(i),vod_pic:zl(a),vod_remarks:Ru(o)})}return e}function uSr(t){let e=[],r=/<div class="slide-time-bj swiper-slide"><a href="([^"]+)">[\s\S]*?data-background="([^"]+)"[\s\S]*?<span>([^<]+)<\/span>[\s\S]*?<h3 class="slide-info-title hide">([^<]+)<\/h3>[\s\S]*?<div class="slide-info hide2">([\s\S]*?)<\/div>/g,n;for(;(n=r.exec(t))!==null;)e.push({vod_id:n[1],vod_name:Ru(n[4]),vod_pic:zl(n[2]),vod_remarks:Ru(n[3]),vod_content:Ru(n[5])});return e}function sM(t,e){let r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),n=t.match(new RegExp(`<h4 class="title-h cor4">${r}</h4>[\\s\\S]*?<div class="flex wrap border-box public-r(?: hide-b-2)? diy-center1 mask2">([\\s\\S]*?)</div></div></div>`));return n?Ict(n[1]):[]}var Sct=[{type_id:"2",type_name:"\u65E5\u756A"},{type_id:"3",type_name:"\u7F8E\u756A"},{type_id:"21",type_name:"\u5287\u5834\u7248"},{type_id:"20",type_name:"\u771F\u4EBA\u756A\u5287"},{type_id:"24",type_name:"BD\u526F\u97F3\u8ECC"},{type_id:"26",type_name:"\u6F14\u5531\u6703&\u5468\u908A\u6D3B\u52D5&\u5176\u4ED6"}],po={n:"\u5168\u90E8",v:""},AE={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},yE={key:"month",name:"",init:"",value:[po,{n:"\u4E00\u6708",v:"\u4E00\u6708"},{n:"\u56DB\u6708",v:"\u56DB\u6708"},{n:"\u4E03\u6708",v:"\u4E03\u6708"},{n:"\u5341\u6708",v:"\u5341\u6708"}]},xE={key:"year",name:"",init:"",value:(()=>{let t=[po];for(let e=2026;e>=2001;e--)t.push({n:String(e),v:String(e)});return t.push({n:"2000\u81F390\u5E74\u4EE3",v:"2000\u81F390\u5E74\u4EE3"}),t})()},vct={2:[{key:"class",name:"",init:"",value:[po,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C"].map(t=>({n:t,v:t}))]},yE,xE,{key:"lang",name:"",init:"",value:[po,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u56FD\u8BED",v:"\u56FD\u8BED"}]},{key:"version",name:"",init:"",value:[po,{n:"TV\u756A",v:"TV\u756A"},{n:"\u6CE1\u9762\u756A",v:"\u6CE1\u9762\u756A"},{n:"OVA",v:"OVA"}]},{key:"state",name:"",init:"",value:[po,{n:"\u5C0F\u8BF4\u6539",v:"\u5C0F\u8BF4\u6539"},{n:"\u6F2B\u753B\u6539",v:"\u6F2B\u753B\u6539"},{n:"\u6E38\u620F\u6539",v:"\u6E38\u620F\u6539"},{n:"\u539F\u521B",v:"\u539F\u521B"}]},AE],3:[{key:"class",name:"",init:"",value:[po,...["\u641E\u7B11","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8"].map(t=>({n:t,v:t}))]},yE,xE,{key:"lang",name:"",init:"",value:[po,{n:"\u56FD\u8BED",v:"\u56FD\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},AE],21:[{key:"class",name:"",init:"",value:[po,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u803D\u7F8E","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},yE,xE,{key:"lang",name:"",init:"",value:[po,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u4E2D\u6587",v:"\u4E2D\u6587"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"}]},AE],20:[{key:"class",name:"",init:"",value:[po,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u804C\u573A","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50","\u840C","\u7EAA\u5F55\u7247"].map(t=>({n:t,v:t}))]},yE,xE,{key:"lang",name:"",init:"",value:[po,{n:"\u65E5\u8BED",v:"\u65E5\u8BED"},{n:"\u82F1\u8BED",v:"\u82F1\u8BED"},{n:"\u6CF0\u8BED",v:"\u6CF0\u8BED"}]},AE],24:[{key:"class",name:"",init:"",value:[po,...["\u559C\u5267","\u7231\u60C5","\u6050\u6016","\u52A8\u4F5C","\u79D1\u5E7B","\u5267\u60C5","\u6218\u4E89","\u5947\u5E7B","\u5192\u9669","\u60AC\u7591","\u6821\u56ED","\u540E\u5BAB","\u70ED\u8840","\u8FD0\u52A8","\u767E\u5408","\u4E59\u5973","\u673A\u7532","\u65E5\u5E38","\u9B54\u6CD5\u5C11\u5973","\u5F02\u4E16\u754C","\u7231\u6296\u9732","\u97F3\u4E50"].map(t=>({n:t,v:t}))]},yE,xE,AE],26:[{key:"class",name:"",init:"",value:[po,{n:"\u6F14\u5531\u4F1A",v:"\u6F14\u5531\u4F1A"},{n:"\u5468\u8FB9\u6D3B\u52A8",v:"\u5468\u8FB9\u6D3B\u52A8"},{n:"\u5176\u4ED6",v:"\u5176\u4ED6"}]},yE,xE,AE]};function lSr(t,e,r={}){let n=t||"2",s=m=>encodeURIComponent(m||""),i=r.by||"",a=r.class||"",o=r.month||"",c=r.year||"",u=r.version||"",l=r.state||"",d=r.lang||"",f=e>1?String(e):"",p=`/show/${n}-${s(o)}-${s(i)}-${s(a)}-${s(d)}----${f}-${s(l)}--${s(c)}/`;return u&&(p+=`version/${s(u)}/`),ba+p}function Cct(t,e={}){return{"User-Agent":rce,Referer:t||ba+"/",Origin:ba,...e}}async function dSr(t,e){return{}}async function fSr(t,e){try{let r=await iM(ba+"/"),n=aSr([...uSr(r),...sM(r,"\u6700\u8FD1\u5927\u5BB6\u5728\u770B"),...sM(r,"\u6216\u8BB8\u4F60\u611F\u5174\u8DA3\uFF1F"),...sM(r,"\u65E5\u756A"),...sM(r,"\u5267\u573A\u7248")]).slice(0,40);return{class:Sct,filters:vct,list:n}}catch(r){return console.error("girigiri home failed:",r.message),{class:Sct,filters:vct,list:[]}}}async function pSr(t,e){let r=String(t.body?.id||t.body?.tid||"2"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=lSr(r,n,s);try{let a=await iM(i),o=Ict(a);if(!o.length)return{list:[],page:n,pagecount:n,limit:Dw,total:0};let u=[`--------${n+1}---/`,`-${n+1}---/`].some(l=>a.includes(l));return{list:o,page:n,pagecount:u?n+1:n,limit:Dw,total:n*Dw+(u?Dw:o.length)}}catch(a){return console.error("girigiri category failed:",a.message),{list:[],page:n,pagecount:n,limit:Dw,total:0}}}async function mSr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=`${ba}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`;return{list:((await cSr(n,{headers:{"X-Requested-With":"XMLHttpRequest",Referer:`${ba}/search/-------------/`}}))?.list||[]).map(i=>({vod_id:`/GV${i.id}/`,vod_name:i.name||"",vod_pic:zl(i.pic||""),vod_remarks:""}))}}catch(n){return console.error("girigiri search failed:",n.message),{list:[]}}}async function hSr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=zl(i);if(a)try{let o=await iM(a),c=Ru((o.match(/<title>(.*?)<\//i)||[])[1]||"").replace(/_.*$/,""),u=zl((o.match(/<img[^>]+data-src="([^"]+\.webp)"/)||[])[1]||""),l=Ru((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/)||[])[1]||""),d=Ru((o.match(/<p>([^<]*?(?:æ›´æ–°|點|支持杜比)[^<]*?)<\/p>/)||[])[1]||""),f=(o.match(/20\d{2}/)||[])[0]||"",p=[],m=/<a class="swiper-slide"[^>]*>[\s\S]*? ([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,h;for(;(h=m.exec(o))!==null;)p.push({name:Ru(h[1]),count:Number(h[2]||0)});let A=o.match(/<div class="anthology wow[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),g=A?A[0]:"",b=[],y=/<div class="anthology-list-box[^>]*>([\s\S]*?)<\/div><\/div>/g,x;for(;(x=y.exec(g))!==null;){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(x[1]))!==null;){let P=Ru(N[2]),L=N[1];L.includes("/play")&&R.push({name:P,playId:_ct({playUrl:L,epName:P,vodName:c,referer:i})})}R.length&&b.push(R)}if(!b.length){let R=[],w=/href="([^"]*\/play[^\"]+)"[^>]*>([^<]+)<\/a>/g,N;for(;(N=w.exec(g||o))!==null;){let P=N[1];if(!P.includes("/play"))continue;let L=Ru(N[2]);R.push({name:L,playId:_ct({playUrl:P,epName:L,vodName:c,referer:i})})}R.length&&b.push(R)}let v=[],C=[];for(let R=0;R<b.length;R+=1){let w=p[R]?.name||`\u7EBF\u8DEF${R+1}`,N=b[R].map(P=>`${P.name}$${P.playId}`);v.push(w),C.push(N.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:d,vod_content:l,vod_director:"",vod_actor:"",vod_year:f,vod_play_from:v.join("$$$"),vod_play_url:C.join("$$$")})}catch(o){console.error("girigiri detail failed:",i,o.message)}}return{list:s}}async function gSr(t,e){let r=String(t.body?.id||"").trim(),n=iSr(r),s=n.playUrl||r||"",i=zl(n.referer||"/"),a=zl(s);try{let c=(await iM(a,{referer:i||ba+"/",headers:{Origin:ba,Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=u.url||"";u.encrypt===2?l=oSr(l):u.encrypt===1&&(l=decodeURIComponent(l));let d=l;/^https?:\/\//i.test(d)||(d=zl(d));let f=new URL(d).origin,p=f===ba?i||ba+"/":f+"/";return{parse:0,url:d,header:Cct(p)}}catch(o){return console.error("girigiri play failed:",o.message),{parse:0,url:a,header:Cct(ba+"/")}}}var Tct={meta:{key:kw.key,name:"\u300C\u76F4\u300D\u7231\u52A8\u6F2B",type:3},api:async t=>{t.post("/init",dSr),t.post("/home",fSr),t.post("/category",pSr),t.post("/detail",hSr),t.post("/play",gSr),t.post("/search",mSr)}};var em=Re(Jn(),1),Kf="https://www.cycani.org",Rct="https://player.cycanime.com",Nct="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",ASr="YLwJVbXw77pk2eOrAnFdBo2c3mWkLtodMni2wk81GCnP94ZltW",Lw=48,eA=[{type_id:"20",type_name:"TV\u756A\u7EC4"},{type_id:"21",type_name:"\u5267\u573A\u756A\u7EC4"}],ySr={\u7C7B\u578B:"class",\u5E74\u4EFD:"year",\u5B57\u6BCD:"letter"},xSr={class:"\u7C7B\u578B",year:"\u5E74\u4EFD",letter:"\u5B57\u6BCD",by:"\u6392\u5E8F"},bSr={key:"by",name:"\u6392\u5E8F",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},nce=new Map;function Ki(t){return String(t||"").replace(/ /gi," ").replace(/<br\s*\/?>/gi," ").replace(/<[^>]+>/g," ").replace(/\s+/g," ").trim()}function Oct(t){let e=Number.parseInt(t,10);return Number.isFinite(e)&&e>0?e:1}function Bw(t,e=Kf){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:r.startsWith("//")?`https:${r}`:new URL(r,e).toString():""}function Pct(t=`${Kf}/`,e="text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8"){return{"User-Agent":Nct,Accept:e,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:t}}async function tA(t,e=`${Kf}/`,r){let n=Bw(t),s=await he.get(n,{headers:Pct(e,r),timeout:15e3,maxContentLength:3*1024*1024});return typeof s.data=="string"?s.data:String(s.data||"")}async function ESr(t,e=`${Kf}/`){let r=Bw(t),n=await he.get(r,{headers:{...Pct(e,"application/json,text/javascript,*/*;q=0.01"),"X-Requested-With":"XMLHttpRequest"},timeout:15e3,maxContentLength:1024*1024});if(typeof n.data=="string")try{return JSON.parse(n.data)}catch{return null}return n.data||null}function aM(t){return encodeURIComponent(String(t||"").trim())}function Dct(t,e=1,r={}){let n=String(t||eA[0].type_id).trim()||eA[0].type_id,s=[],i=String(r.by||r.sort||"").trim(),a=String(r.class||"").trim(),o=String(r.letter||"").trim(),c=String(r.year||"").trim();return i&&s.push("by",aM(i)),a&&s.push("class",aM(a)),o&&s.push("letter",aM(o)),c&&s.push("year",aM(c)),e>1&&s.push("page",String(e)),`/show/${n}${s.length?`/${s.join("/")}`:""}.html`}function kct(t){return(String(t||"").match(/\/bangumi\/(\d+)\.html/i)||[])[1]||""}function _Sr(t){let e=String(t||"").match(/\/watch\/(\d+)\/(\d+)\/(\d+)\.html/i);return e?`${e[1]}/${e[2]}/${e[3]}`:""}function SSr(t){try{let e=JSON.parse(String(t||""));if(e&&e.id)return String(e.id)}catch{}return String(t||"").match(/\d+/)?.[0]||String(t||"").trim()}function wct(t,e){let r=t(e),n=r.find('a[href*="/bangumi/"]').first(),s=n.attr("href")||"",i=kct(s);if(!i)return null;let a=r.find("img").first(),o=Ki(n.attr("title")||a.attr("alt")||n.text());if(!o)return null;let c=a.attr("data-src")||a.attr("data-original")||a.attr("src")||"",u=Ki(r.find(".public-list-subtitle,.public-list-prb,.slide-info-remarks").first().text());return{vod_id:i,vod_name:o,vod_pic:Bw(c),vod_remarks:u}}function sce(t){let e=Me(t||""),r=[],n=new Set;return e(".public-list-box,.swiper-slide").each((s,i)=>{let a=wct(e,i);!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r.length===0&&e('a[href*="/bangumi/"]').each((s,i)=>{let a=wct(e,e(i).closest("li,div").first());!a||n.has(a.vod_id)||(n.add(a.vod_id),r.push(a))}),r}function Lct(t){let e=Me(t||""),r=[],n=new Set;return e(".ec-casc-list .nav-swiper").each((s,i)=>{let a=e(i),o=Ki(a.find(".filter-text span").first().text()),c=a.find(".vod-ajax-select[data-type]").first().attr("data-type")||ySr[o]||"";if(!c||c==="channel"||c==="type"||n.has(c))return;let u=[];a.find(".vod-ajax-select").each((l,d)=>{let f=e(d),p=Ki(f.find("a").first().text()||f.text()),m=String(f.attr("data-val")||"").trim();!p||p==="\u5206\u7C7B\u8D44\u6E90\u4E0D\u4EE3\u8868\u5168\u90E8\u8D44\u6E90"||!m&&p!=="\u5168\u90E8"||u.some(h=>h.v===m)||u.push({n:p,v:m})}),u.length>0&&(n.add(c),r.push({key:c,name:xSr[c]||o||c,init:"",value:u}))}),r.push(bSr),r}async function vSr(t){let e=String(t||eA[0].type_id);if(nce.has(e))return nce.get(e);let r=await tA(Dct(e,1),`${Kf}/`),n=Lct(r);return nce.set(e,n),n}function CSr(t,e,r){let s=Ki(Me(t||"")(".page-tip").first().text()).match(/当前\s*(\d+)\s*\/\s*(\d+)\s*页/);return s?Number.parseInt(s[2],10)||e:r>=Lw?e+1:e}async function ISr(){let t={};await Promise.all(eA.map(async r=>{t[r.type_id]=await vSr(r.type_id).catch(()=>[])}));let e=await tA("/");return{class:eA,filters:t,list:sce(e).slice(0,Lw)}}async function TSr(t){let e=t.body||{},r=String(e.id||eA[0].type_id).trim()||eA[0].type_id,n=Oct(e.page),s=e.filters||e.extend||e.ext||{},i=Dct(r,n,s),a=await tA(i,`${Kf}/show/${r}.html`),o=sce(a),c=CSr(a,n,o.length);return{page:n,pagecount:c,limit:Lw,total:c*Lw,list:o,filter:Lct(a)}}function wSr(t,e){let r=Me(t||""),n=e||kct(r('link[rel="canonical"]').attr("href")||""),s=Ki(r(".slide-info-title").first().text())||Ki(r("h1,h2,h3").first().text())||Ki(r("title").text().replace(/[_-].*$/,"")),i=Bw(r(".detail-pic img,.player-vod-no1 img").map((p,m)=>r(m).attr("data-src")||r(m).attr("data-original")||r(m).attr("src")).get().find(p=>p&&!String(p).startsWith("data:image"))),a=Ki(r(".slide-info-remarks").first().text()),o=Ki(r("#height_limit,.small-text,.vod-content,.text").first().text()),c=r(".partition").filter((p,m)=>/演员/.test(r(m).text())).find("a").map((p,m)=>Ki(r(m).text())).get().filter(Boolean).join(","),u=r(".partition").filter((p,m)=>/导演/.test(r(m).text())).find("a").map((p,m)=>Ki(r(m).text())).get().filter(Boolean).join(","),l=r(".partition").filter((p,m)=>/类型/.test(r(m).text())).find("a").map((p,m)=>Ki(r(m).text())).get().filter(Boolean).join(","),d=[],f=[];return r(".anthology-list-box").each((p,m)=>{let h=Ki(r(".anthology-tab a").eq(p).clone().children().remove().end().text())||`CYC_${p+1}`,A=[];r(m).find('a[href*="/watch/"]').each((g,b)=>{let y=_Sr(r(b).attr("href"));if(!y)return;let x=Ki(r(b).text())||`\u7B2C${A.length+1}\u96C6`;A.push(`${x}$${y}`)}),A.length>0&&(d.push(h),f.push(A.join("#")))}),{vod_id:n,vod_name:s,vod_pic:i,vod_remarks:a,type_name:l,vod_actor:c,vod_director:u,vod_content:o,vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")}}async function RSr(t){let e=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],r=[];for(let n of e.filter(Boolean)){let s=SSr(n);if(!s)continue;let i=await tA(`/bangumi/${s}.html`,`${Kf}/`);r.push(wSr(i,s))}return{list:r}}function NSr(t){let e=String(t?.encrypt||""),r=String(t?.url||"");return e==="1"?decodeURIComponent(r):e==="2"?decodeURIComponent(Buffer.from(r,"base64").toString("utf8")):r}function OSr(t){let e=String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*<\/script>/i)||String(t||"").match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})\s*;/i);return e?JSON.parse(e[1]):null}function PSr(t){let e={},r=String(t||"");for(let n of["url","vkey","next","title","poster"]){let s=r.match(new RegExp(`["']${n}["']\\s*:\\s*["']([^"']*)["']`));s&&(e[n]=s[1])}return e}function DSr(t){let e=Me(t||""),r=String(e('meta[name="viewport"]').attr("id")||"").replace(/^now_/,""),n=String(e('meta[charset="UTF-8"]').attr("id")||e("meta[charset]").attr("id")||"").replace(/^now_/,"");return!r||!n||r.length!==n.length?"":n.split("").map((s,i)=>({id:Number(s),text:r[i]||""})).sort((s,i)=>s.id-i.id).map(s=>s.text).join("")}function kSr(t,e){let r=DSr(e);if(!r)return"";let n=em.default.MD5(r+ASr).toString(),s=em.default.enc.Utf8.parse(n.substring(16)),i=em.default.enc.Utf8.parse(n.substring(0,16));return em.default.AES.decrypt(t,s,{iv:i,mode:em.default.mode.CBC,padding:em.default.pad.Pkcs7}).toString(em.default.enc.Utf8)}async function LSr(t,e){if(/^https?:\/\//i.test(t))return t;let r=`${Rct}/?url=${encodeURIComponent(t)}`,n=await tA(r,`${Kf}${e}`),s=PSr(n);return kSr(s.url||"",n)||""}async function BSr(t){let e=String(t.body?.id||"").trim(),r=e.match(/(\d+)\/(\d+)\/(\d+)/)||e.match(/watch\/(\d+)\/(\d+)\/(\d+)/);if(!r)return{parse:0,url:"",header:{}};let n=`/watch/${r[1]}/${r[2]}/${r[3]}.html`,s=await tA(n,`${Kf}/bangumi/${r[1]}.html`),i=OSr(s);if(!i)return{parse:0,url:"",header:{}};let a=NSr(i);return{parse:0,jx:0,url:await LSr(a,n),header:{"User-Agent":Nct,Referer:`${Rct}/`}}}async function MSr(t){let e=String(t.body?.wd||"").trim(),r=Oct(t.body?.page);if(!e)return{page:r,pagecount:1,limit:20,total:0,list:[]};let n=await ESr(`/index.php/ajax/suggest?mid=1&limit=20&page=${r}&wd=${encodeURIComponent(e)}`),i=(Array.isArray(n?.list)?n.list:[]).map(a=>({vod_id:String(a.id||""),vod_name:Ki(a.name),vod_pic:Bw(a.pic||""),vod_remarks:""})).filter(a=>a.vod_id&&a.vod_name);return{page:Number(n?.page||r),pagecount:Number(n?.pagecount||r),limit:Number(n?.limit||20),total:Number(n?.total||i.length),list:i}}async function WSr(t,e){return{}}async function $Sr(){let t=await tA("/");return{list:sce(t).slice(0,Lw)}}var Bct={meta:{key:"ciyuancheng",name:"\u300C\u76F4\u300D\u6B21\u5143\u57CE",type:3},api:async t=>{t.post("/init",WSr),t.post("/home",ISr),t.post("/homeVod",$Sr),t.post("/category",TSr),t.post("/detail",RSr),t.post("/play",BSr),t.post("/search",MSr)}};var bE={key:"xifan",name:"\u7A00\u996D\u52A8\u6F2B",host:"https://anime.xifanacg.com",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},_i=bE.host,Ww=bE.ua,Mct=40;function Ea(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/\s+/g," ").trim()}function FSr(t){return Ea(t).replace(/\s*[_-]\s*(?:连载新番|完结旧番|剧场版|美漫).*$/i,"").replace(/\s*-\s*稀饭动漫.*$/i,"").replace(/\s*-\s*免费高清动漫分享.*$/i,"").trim()}function Nc(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?_i+e:_i+"/"+e:""}function Wct(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function USr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function qSr(t){let e=new Set,r=[];for(let n of t||[]){let s=n?.vod_id;!s||e.has(s)||(e.add(s),r.push(n))}return r}function jSr(t){try{let e=Buffer.from(t||"","base64").toString("utf8");return decodeURIComponent(e)}catch{return t||""}}function HSr(t){try{let e=new URL(t);return e.hostname.endsWith("pan.wo.cn")||e.hostname.endsWith("moedot.net")}catch{return!1}}function QSr(t,e){let r={"User-Agent":Ww};if(HSr(t))return r;let n=new URL(t).origin;return r.Referer=n===_i?e||_i+"/":n+"/",r.Origin=_i,r}async function ice(t,e={}){let r=/^https?:\/\//i.test(t)?t:Nc(t),n=await he({url:r,method:e.method||"get",data:e.data,timeout:e.timeout||bE.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":Ww,Referer:e.referer||_i+"/","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function GSr(t,e,r={}){let n=/^https?:\/\//i.test(t)?t:Nc(t),s=await he({url:n,method:"post",data:e,timeout:r.timeout||bE.timeout,validateStatus:()=>!0,headers:{"User-Agent":Ww,Referer:r.referer||_i+"/","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...r.headers||{}}});if(s.status<200||s.status>=300)throw new Error(`HTTP ${s.status}`);return s.data}async function VSr(t,e={}){let r=/^https?:\/\//i.test(t)?t:Nc(t),n=await he.get(r,{timeout:e.timeout||bE.timeout,validateStatus:()=>!0,headers:{"User-Agent":Ww,Referer:e.referer||_i+"/","X-Requested-With":"XMLHttpRequest","Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return n.data}function zSr(t){let e=[],r=String(t||"").match(/<div class="public-list-box[\s\S]*?<\/div>\s*<\/div>\s*<\/div>/g)||[];for(let n of r){let s=(n.match(/class="(?:public-list-exp|time-title)[^"]*"[^>]*href="([^"]+)"/)||[])[1]||"",i=(n.match(/class="public-list-exp"[^>]*title="([^"]+)"/)||[])[1]||(n.match(/class="time-title[^"]*"[^>]*title="([^"]+)"/)||[])[1]||Ea((n.match(/class="time-title[^"]*"[^>]*>([\s\S]*?)<\/a>/)||[])[1]||""),a=(n.match(/data-src="([^"]+)"/)||[])[1]||(n.match(/src="([^"]+)"/)||[])[1]||"",o=(n.match(/<span class="public-list-prb[^>]*>([\s\S]*?)<\/span>/)||[])[1]||"";!s||!i||e.push({vod_id:s,vod_name:Ea(i),vod_pic:Nc(a),vod_remarks:Ea(o)})}return e}function KSr(t){let e=[],r=/<div class="swiper-slide">[\s\S]*?<div class="swiper-lazy[^"]*" data-background="([^"]+)"[\s\S]*?<a class="lank" href="([^"]+)"[\s\S]*?<h3 class="slide-info-title hide">([\s\S]*?)<\/h3>[\s\S]*?<li>([^<]*)<\/li>/g,n;for(;(n=r.exec(String(t||"")))!==null;)e.push({vod_id:n[2],vod_name:Ea(n[3]),vod_pic:Nc(n[1]),vod_remarks:Ea(n[4])});return e}var $ct=[{type_id:"1",type_name:"\u8FDE\u8F7D\u65B0\u756A"},{type_id:"2",type_name:"\u5B8C\u7ED3\u65E7\u756A"},{type_id:"3",type_name:"\u5267\u573A\u7248"},{type_id:"21",type_name:"\u7F8E\u6F2B"}],Mw={n:"\u5168\u90E8",v:""},oM={key:"by",name:"",init:"time",value:[{n:"\u6309\u6700\u65B0",v:"time"},{n:"\u6309\u6700\u70ED",v:"hits"},{n:"\u6309\u8BC4\u5206",v:"score"}]},Fct={key:"year",name:"",init:"",value:(()=>{let t=[Mw];for(let e=2026;e>=2005;e--)t.push({n:String(e),v:String(e)});return t})()},Uct={key:"class",name:"",init:"",value:[Mw,...["\u641E\u7B11","\u539F\u521B","\u8F7B\u5C0F\u8BF4\u6539","\u604B\u7231","\u767E\u5408","\u6F2B\u6539","\u6821\u56ED","\u6218\u6597","\u6CBB\u6108","\u5947\u5E7B","\u65E5\u5E38","\u9752\u6625","\u4E59\u5973\u5411","\u60AC\u7591","\u540E\u5BAB","\u79D1\u5E7B","\u5192\u9669","\u70ED\u8840","\u5F02\u4E16\u754C","\u6E38\u620F\u6539","\u97F3\u4E50","\u5076\u50CF","\u7F8E\u98DF","\u803D\u7F8E"].map(t=>({n:t,v:t}))]},qct={1:[Uct,{key:"area",name:"",init:"",value:[Mw,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},Fct,oM],2:[Uct,Fct,oM],3:[{key:"area",name:"",init:"",value:[Mw,{n:"\u65E5\u672C",v:"\u65E5\u672C"}]},{key:"year",name:"",init:"",value:(()=>{let t=[Mw];for(let e=2026;e>=2004;e--)t.push({n:String(e),v:String(e)});return t})()},oM],21:[oM]};async function YSr(t,e){return{}}async function JSr(t,e){try{let r=await ice(_i+"/"),n=qSr([...KSr(r),...zSr(r)]).slice(0,40);return{class:$ct,filters:qct,list:n}}catch(r){return console.error("xifan home failed:",r.message),{class:$ct,filters:qct,list:[]}}}async function XSr(t,e){let r=String(t.body?.id||t.body?.tid||"1"),n=Math.max(1,Number(t.body?.page||1)),s={...t.body?.filters||{}},i=new URLSearchParams;i.set("type",r),i.set("page",String(n)),i.set("by",String(s.by||"time")),s.class&&i.set("class",String(s.class)),s.area&&i.set("area",String(s.area)),s.year&&i.set("year",String(s.year));try{let a=await GSr(`${_i}/index.php/ds_api/vod`,i.toString(),{referer:`${_i}/type/${r}.html`}),o=typeof a=="string"?JSON.parse(a):a||{},c=(o.list||[]).map(u=>({vod_id:u.url||`/bangumi/${u.vod_id}.html`,vod_name:u.vod_name||"",vod_pic:Nc(String(u.vod_pic||"").replace(/\\\//g,"/")),vod_remarks:u.vod_remarks||""})).filter(u=>u.vod_id&&u.vod_name);return{list:c,page:Number(o.page||n),pagecount:Number(o.pagecount||n),limit:Number(o.limit||Mct),total:Number(o.total||c.length)}}catch(a){return console.error("xifan category failed:",a.message),{list:[],page:n,pagecount:n,limit:Mct,total:0}}}async function ZSr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{return{list:((await VSr(`${_i}/index.php/ajax/suggest?mid=1&wd=${encodeURIComponent(r)}`,{referer:`${_i}/search/wd/${encodeURIComponent(r)}.html`}))?.list||[]).map(s=>({vod_id:`/bangumi/${s.id}.html`,vod_name:s.name||"",vod_pic:Nc(s.pic||""),vod_remarks:""}))}}catch(n){return console.error("xifan search failed:",n.message),{list:[]}}}async function evr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(i=>String(i||"").trim()).filter(Boolean),s=[];for(let i of n){let a=Nc(i);if(a)try{let o=await ice(a),c=FSr((o.match(/<h3[^>]*>([\s\S]*?)<\/h3>/i)||[])[1]||(o.match(/<title>(.*?)<\/title>/i)||[])[1]||""),u=Nc((o.match(/<div class="detail-pic">[\s\S]*?<img[^>]+(?:data-src|src)="([^"]+)"/i)||[])[1]||""),l=Ea((o.match(/<span class="slide-info-remarks cor5">([\s\S]*?)<\/span>/i)||[])[1]||""),d=Ea((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/year\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),f=Ea((o.match(/<span class="slide-info-remarks">\s*<a href="\/search\/area\/[^"]+"[^>]*>([\s\S]*?)<\/a>/i)||[])[1]||""),p=Ea((o.match(/导演\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),m=Ea((o.match(/演员\s*:<\/strong>([\s\S]*?)<\/div>/i)||[])[1]||""),h=Ea((o.match(/<div id="height_limit" class="text cor3">([\s\S]*?)<\/div>/i)||[])[1]||""),A=[],g=/<a class="swiper-slide">[\s\S]*? ([^<]+)<span class="badge">(\d+)<\/span><\/a>/g,b;for(;(b=g.exec(o))!==null;)A.push({name:Ea(b[1]),count:Number(b[2]||0)});let y=o.match(/<div class="anthology-list[\s\S]*?<script>\$\("\.anthology-tab a"\)\.eq\(0\)/),x=y?y[0]:o,v=[],C=/<div class="anthology-list-box[^>]*>[\s\S]*?<ul class="anthology-list-play size">([\s\S]*?)<\/ul>[\s\S]*?<\/div>\s*<\/div>/g,R;for(;(R=C.exec(x))!==null;){let P=[],L=/<a class="[^"]*" href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=L.exec(R[1]))!==null;){let k=M[1];k.includes("/watch/")&&P.push({name:Ea(M[2]),playId:Wct({playUrl:k,vodName:c,referer:i})})}P.length&&v.push(P)}if(!v.length){let P=[],L=/href="([^"]*\/watch[^"]+)"[^>]*>\s*(?:<span>)?([^<]+)(?:<\/span>)?\s*<\/a>/g,M;for(;(M=L.exec(o))!==null;){let k=M[1];k.includes("/watch/")&&P.push({name:Ea(M[2]),playId:Wct({playUrl:k,vodName:c,referer:i})})}P.length&&v.push(P)}let w=[],N=[];for(let P=0;P<v.length;P+=1){let L=A[P]?.name||`\u7EBF\u8DEF${P+1}`,M=v[P].map(k=>`${k.name}$${k.playId}`);w.push(L),N.push(M.join("#"))}s.push({vod_id:i,vod_name:c,vod_pic:u,vod_remarks:l,vod_content:h,vod_director:p,vod_actor:m,vod_year:d,vod_area:f,vod_play_from:w.join("$$$"),vod_play_url:N.join("$$$")})}catch(o){console.error("xifan detail failed:",i,o.message)}}return{list:s}}async function tvr(t,e){let r=String(t.body?.id||"").trim(),n=USr(r),s=n.playUrl||r||"",i=Nc(n.referer||"/"),a=Nc(s);try{let c=(await ice(a,{referer:i||_i+"/",headers:{Origin:_i}})).match(/var\s+player_aaaa\s*=\s*(\{[\s\S]*?\})<\/script>/);if(!c)throw new Error("player_aaaa not found");let u=JSON.parse(c[1]),l=String(u.url||"").replace(/\\\//g,"/");Number(u.encrypt)===2?l=jSr(l):Number(u.encrypt)===1&&(l=decodeURIComponent(l));let d=l;return/^https?:\/\//i.test(d)||(d=Nc(d)),{parse:0,url:d,header:QSr(d,i)}}catch(o){return console.error("xifan play failed:",o.message),{parse:0,url:a,header:{"User-Agent":Ww,Referer:_i+"/",Origin:_i}}}}var jct={meta:{key:bE.key,name:"\u300C\u76F4\u300D\u7A00\u996D",type:3},api:async t=>{t.post("/init",YSr),t.post("/home",JSr),t.post("/category",XSr),t.post("/detail",evr),t.post("/play",tvr),t.post("/search",ZSr)}};var _a={key:"xifannext",name:"\u7A00\u996D\u52A8\u6F2B Next",host:"https://next.xifanacg.com",supabase:"https://rzmsnqblptbceicadbyd.supabase.co",anonKey:"sb_publishable_aCb7uwyLN6H-sMjze4dRGA_2MDuROLF",ua:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36",timeout:15e3},Kl=_a.host,tm=24,Uw={n:"\u5168\u90E8",v:""},Hct=[{type_id:"all",type_name:"\u5168\u90E8\u756A\u5267"},{type_id:"recent",type_name:"\u6700\u8FD1\u66F4\u65B0"},{type_id:"ranking",type_name:"\u6392\u884C\u699C"},{type_id:"schedule",type_name:"\u5468\u8868"}],rvr={key:"format",name:"",init:"",value:[Uw,{n:"TV \u52A8\u753B",v:"tv"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"OVA",v:"ova"},{n:"OAD",v:"oad"},{n:"Web \u52A8\u753B",v:"web"},{n:"\u5176\u4ED6",v:"other"}]},nvr={key:"finished",name:"",init:"",value:[Uw,{n:"\u8FDE\u8F7D\u4E2D",v:"0"},{n:"\u5B8C\u7ED3",v:"1"}]},svr={key:"year",name:"",init:"",value:(()=>{let t=[Uw];for(let e=2026;e>=2007;e-=1)t.push({n:String(e),v:String(e)});return t.push({n:"\u66F4\u65E9",v:"older"}),t})()},ivr={key:"tag",name:"",init:"",value:[Uw,...["\u6F2B\u753B\u6539","\u5C0F\u8BF4\u6539","\u5947\u5E7B","\u6218\u6597","\u539F\u521B","\u604B\u7231","\u6821\u56ED","\u65E5\u5E38","\u767E\u5408","\u540E\u5BAB","\u79D1\u5E7B","\u6E38\u620F\u6539","\u60AC\u7591","\u5192\u9669","\u7A7F\u8D8A","\u97F3\u4E50","\u8FD0\u52A8","\u673A\u6218","\u559C\u5267","\u5C11\u5E74\u5411","\u63A8\u7406","\u5C11\u5973\u5411","\u804C\u573A","\u7F8E\u98DF","\u9752\u5E74\u5411"].map(t=>({n:t,v:t}))]},avr={key:"sort",name:"",init:"title",value:[{n:"\u6807\u9898",v:"title"},{n:"\u70ED\u5EA6",v:"view_count"},{n:"\u8BC4\u5206",v:"bangumi_score"},{n:"\u6700\u65B0",v:"release_date"}]},ovr={key:"days",name:"",init:"7",value:[{n:"7 \u5929",v:"7"},{n:"14 \u5929",v:"14"}]},cvr={key:"kind",name:"",init:"trending_week",value:[{n:"\u70ED\u5EA6",v:"trending_week"},{n:"\u8BC4\u5206",v:"rating"},{n:"\u98D9\u5347",v:"rising"},{n:"\u5B9D\u85CF",v:"hidden_gem"},{n:"\u5F39\u5E55",v:"danmaku_heat"}]},uvr={key:"section",name:"",init:"all",value:[{n:"\u603B\u699C",v:"all"},{n:"\u65B0\u756A",v:"ongoing"},{n:"\u5B8C\u7ED3",v:"finished"},{n:"\u5267\u573A\u7248",v:"movie"},{n:"\u7F8E\u6F2B",v:"western"}]},lvr={key:"weekday",name:"",init:"",value:[Uw,{n:"\u5468\u4E00",v:"0"},{n:"\u5468\u4E8C",v:"1"},{n:"\u5468\u4E09",v:"2"},{n:"\u5468\u56DB",v:"3"},{n:"\u5468\u4E94",v:"4"},{n:"\u5468\u516D",v:"5"},{n:"\u5468\u65E5",v:"6"}]},Qct={all:[rvr,nvr,svr,ivr,avr],recent:[ovr],ranking:[cvr,uvr],schedule:[lvr]};function Yf(t){return String(t||"").replace(/<script[\s\S]*?<\/script>/gi," ").replace(/<style[\s\S]*?<\/style>/gi," ").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/&/gi,"&").replace(/'/g,"'").replace(/"/g,'"').replace(/\s+/g," ").trim()}function Vct(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("/")?Kl+e:`${Kl}/${e}`:""}function zct(t){let e=Vct(t);if(!e)return"";try{let r=new URL(e);if(r.hostname==="next.xifanacg.com"&&r.pathname==="/_next/image")return decodeURIComponent(r.searchParams.get("url")||e)}catch{}return e}function dvr(t){try{return Buffer.from(JSON.stringify(t||{}),"utf8").toString("base64")}catch{return""}}function fvr(t){try{return JSON.parse(Buffer.from(t||"","base64").toString("utf8"))}catch{return{}}}function Kct(t){return Yf(t).replace(/[$#]/g," ").trim()}function Yct(t){let e=String(t||"").trim();return e&&e.match(/(?:\/anime\/|^)(\d+)/)?.[1]||""}function Nu(...t){return t.find(e=>e!=null&&e!=="")}function pvr(t={}){return{...t.extend||{},...t.filter||{},...t.filters||{}}}function mvr(t={}){let e=Number(Nu(t.current_episodes,t.currentEpisodes,0)),r=Number(Nu(t.total_episodes,t.totalEpisodes,0));if(r>0&&e>0&&e<r)return`\u66F4\u65B0\u81F3 ${e} / ${r}`;if(r>0)return`\u5168 ${r} \u96C6`;let n=Nu(t.release_year,t.releaseYear,t.datePublished);if(n)return String(n);let s=Nu(t.bangumi_score,t.bangumiScore);return s!==void 0?String(s):""}function $w(t={}){let e=Yct(Nu(t.id,t.url,t["@id"]));return{vod_id:e?`/anime/${e}`:"",vod_name:Yf(t.title||t.name||""),vod_pic:zct(Nu(t.cover_url,t.coverUrl,t.image,t.pic,"")),vod_remarks:mvr(t)}}function hvr(t,e){let r=String(e||"").trim();return r?{sortBy:r,sortOrder:r==="title"?"asc":"desc"}:t==="recent"?{sortBy:"release_date",sortOrder:"desc"}:t==="ranking"?{sortBy:"bangumi_score",sortOrder:"desc"}:{sortBy:"title",sortOrder:"asc"}}function oce(t={}){return String(t.year||"").trim()==="older"||String(t.older||"").trim()==="1"}function cce({tid:t="all",page:e=1,extend:r={},searchTerm:n=""}={}){let{sortBy:s,sortOrder:i}=hvr(t,Nu(r.sort,r.by)),a=Number.parseInt(String(r.year||""),10),o=String(r.finished??"").trim();return{search_term:n||null,page_number:e,items_per_page:tm,sort_by:s,sort_order:i,filter_type_id:null,filter_meta_tags:r.tag?[String(r.tag)]:null,filter_is_finished:o===""?null:o==="1",filter_format:r.format||null,filter_release_year:!oce(r)&&Number.isFinite(a)?a:null,filter_only_published:!0}}function gvr(t,e={}){let r=new URLSearchParams;t>1&&r.set("page",String(t)),e.format&&r.set("format",String(e.format)),String(e.finished??"").trim()&&r.set("finished",String(e.finished)),oce(e)?r.set("older","1"):e.year&&r.set("year",String(e.year)),e.tag&&r.set("tag",String(e.tag));let n=String(Nu(e.sort,e.by,"")).trim();n&&n!=="title"&&r.set("sort",n);let s=r.toString();return`/browse${s?`?${s}`:""}`}function ace(t){let e={"User-Agent":_a.ua};try{let r=new URL(t).hostname;if(r.endsWith("pan.wo.cn")||r.endsWith("moedot.net"))return e}catch{return e}return e.Referer=`${Kl}/`,e.Origin=Kl,e}async function qw(t,e={}){let r=/^https?:\/\//i.test(t)?t:Vct(t),n=await he({url:r,method:"get",timeout:e.timeout||_a.timeout,responseType:"text",transformResponse:[s=>s],validateStatus:()=>!0,headers:{"User-Agent":_a.ua,Referer:e.referer||`${Kl}/`,"Accept-Language":"zh-CN,zh;q=0.9",...e.headers||{}}});if(n.status<200||n.status>=300)throw new Error(`HTTP ${n.status}`);return String(n.data||"")}async function Fw(t,e){let r=await he({url:`${_a.supabase}/rest/v1/rpc/${t}`,method:"post",data:e,timeout:_a.timeout,validateStatus:()=>!0,headers:{apikey:_a.anonKey,Authorization:`Bearer ${_a.anonKey}`,"Content-Type":"application/json",Origin:Kl,Referer:`${Kl}/`,"User-Agent":_a.ua,"X-Client-Info":"supabase-js-web/2.49.1"}});if(r.status<200||r.status>=300)throw new Error(`RPC ${t} HTTP ${r.status}`);return r.data}async function Avr(t,e){let r=await he({url:`${_a.supabase}/functions/v1/${t}`,method:"post",data:e,timeout:_a.timeout,validateStatus:()=>!0,headers:{apikey:_a.anonKey,Authorization:`Bearer ${_a.anonKey}`,"Content-Type":"application/json",Origin:Kl,Referer:`${Kl}/`,"User-Agent":_a.ua}});if(r.status<200||r.status>=300)throw new Error(`Function ${t} HTTP ${r.status}`);return r.data}function Jct(t){let e=Me(t||""),r=[];return e('script[type="application/ld+json"]').each((n,s)=>{try{let i=JSON.parse(e(s).text()||"{}");Array.isArray(i?.["@graph"])?r.push(...i["@graph"]):r.push(i)}catch{}}),r}function yvr(t,e){return Jct(t).find(r=>{let n=r?.["@type"],s=String(r?.url||r?.["@id"]||"");return(n==="TVSeries"||n==="Movie")&&s.includes(`/anime/${e}`)})||{}}function Gct(t,e){let r="";return t("dt").each((n,s)=>{if(Yf(t(s).text())===e)return r=Yf(t(s).next("dd").text()),!1}),r}function xvr(t,e){let r=0;for(let n=e-1;n>=0&&t[n]==="\\";n-=1)r+=1;return r}function bvr(t){return JSON.parse(String(t||"").replace(/\\"/g,'"').replace(/\\\\/g,"\\"))}function uM(t,e){let r=String(t||""),n=`\\"${e}\\":`,s=`"${e}":`,i=r.indexOf(n),a=!0;if(i<0&&(i=r.indexOf(s),a=!1),i<0)return[];let o=r.indexOf("[",i);if(o<0)return[];let c=0,u=!1,l=!1;for(let d=o;d<r.length;d+=1){let f=r[d];if(a&&f==='"'&&xvr(r,d)%4===1){u=!u;continue}if(!a){if(l){l=!1;continue}if(f==="\\"&&u){l=!0;continue}if(f==='"'){u=!u;continue}}if(!u){if(f==="[")c+=1;else if(f==="]"&&(c-=1,c===0)){let p=r.slice(o,d+1);try{return a?bvr(p):JSON.parse(p)}catch{return[]}}}}return[]}function Evr(t){let e=Jct(t).find(n=>n?.["@type"]==="ItemList")||{};return(Array.isArray(e.itemListElement)?e.itemListElement:[]).map(n=>$w(n?.item||n)).filter(n=>n.vod_id&&n.vod_name)}function _vr(t,e){let r=String(t||"").match(/当前已选[\s\S]{0,120}?å…±[\s\S]{0,40}?(\d+)[\s\S]{0,40}?部/);return r?Number(r[1]):e}function Svr(t,e){let r=e;for(let n of String(t||"").matchAll(/[?&]page=(\d+)/g))r=Math.max(r,Number(n[1]));return Math.max(1,r)}function vvr(t,e){let r=Me(t||""),n=[];return r(`a[href*="/anime/${e}/play/"]`).each((s,i)=>{let o=(r(i).attr("href")||"").match(/\/play\/(\d+)(?:\?source=([^&#]+))?/);if(!o)return;let c=Number(o[1]),u=Kct(r(i).text())||`\u7B2C ${n.length+1} \u96C6`;!c||n.some(l=>l.id===c)||n.push({id:c,title:u,episode_number:n.length+1})}),n.length?[{code:"xfxf1",name:"\u7A00\u996D\u65B0\u756A\u4E3B\u7EBF-1",episodes:n}]:[]}function Cvr(t,e){let r=Number(t?.episode_number||e+1),n=Number.isInteger(r)?String(r).padStart(2,"0"):String(e+1).padStart(2,"0"),s=Kct(t?.title||"");return s?`\u7B2C ${n} \u96C6 ${s}`:`\u7B2C ${n} \u96C6`}function Ivr(t,e,r,n){let s=[],i=[];for(let a of t||[]){let c=(Array.isArray(a?.episodes)?a.episodes:[]).map((u,l)=>{let d=Number(u?.id||0);if(!d)return"";let f=dvr({animeId:Number(e),episodeId:d,sourceCode:a.code||"",sourceName:a.name||"",vodName:r,referer:n});return`${Cvr(u,l)}$${f}`}).filter(Boolean);c.length&&(s.push(Yf(a.name||a.code||`\u7EBF\u8DEF${s.length+1}`)),i.push(c.join("#")))}return{vod_play_from:s.join("$$$"),vod_play_url:i.join("$$$")}}async function Tvr(t,e){return{}}async function wvr(t,e){try{let r=await Fw("search_animes",cce({tid:"recent",page:1,extend:{by:"release_date"}}));return{class:Hct,filters:Qct,list:(Array.isArray(r)?r:[]).map($w).filter(n=>n.vod_id&&n.vod_name)}}catch(r){return console.error("xifannext home failed:",r.message),{class:Hct,filters:Qct,list:[]}}}function cM(t){return(Array.isArray(t)?t:[]).map($w).filter(e=>e.vod_id&&e.vod_name)}function Rvr(t){let e=new Set;return t.filter(r=>!r.vod_id||e.has(r.vod_id)?!1:(e.add(r.vod_id),!0))}function Xct(t,e){let r=cM(t);return{list:e>1?[]:r,page:e,pagecount:1,limit:tm,total:r.length}}async function Nvr(t,e){if(oce(e)){let a=await qw(gvr(t,e)),o=Evr(a),c=_vr(a,o.length),u=Svr(a,Math.ceil(c/tm)||t);return{list:o,page:t,pagecount:u,limit:tm,total:c}}let r=await Fw("search_animes",cce({tid:"all",page:t,extend:e})),n=Array.isArray(r)?r:[],s=cM(n),i=Number(n[0]?.total_count||s.length);return{list:s,page:t,pagecount:Math.max(1,Math.ceil(i/tm)),limit:tm,total:i}}async function Ovr(t,e){let r=await qw("/recent"),n=Number(Nu(e.days,7)),s=uM(r,"windows"),i=s.find(a=>Number(a?.days)===n)||s[0]||{};return Xct(i.items||[],t)}async function Pvr(t,e){let r=String(Nu(e.kind,"trending_week")).trim()||"trending_week",n=String(Nu(e.section,"all")).trim()||"all",s=await qw(`/rankings?kind=${encodeURIComponent(r)}`),i=uM(s,"sections"),a=i.find(o=>String(o?.key||"")===n)||i[0]||{};return Xct(a.items||[],t)}async function Dvr(t,e){let r=await qw("/schedule"),n=String(e.weekday??"").trim(),s=uM(r,"schedule"),i=n===""?Rvr(s.flatMap(a=>cM(a?.animes||[]))):cM((s.find(a=>String(a?.weekday)===n)||{}).animes||[]);return{list:t>1?[]:i,page:t,pagecount:1,limit:tm,total:i.length}}async function kvr(t,e){let r=String(t.body?.id||t.body?.tid||"all"),n=Math.max(1,Number(t.body?.page||t.body?.pg||1)),s=pvr(t.body||{});try{return r==="recent"?await Ovr(n,s):r==="ranking"?await Pvr(n,s):r==="schedule"?await Dvr(n,s):await Nvr(n,s)}catch(i){return console.error("xifannext category failed:",i.message),{list:[],page:n,pagecount:n,limit:tm,total:0}}}async function Lvr(t,e){let r=String(t.body?.wd||"").trim();if(!r)return{list:[]};try{let n=await Fw("suggest_animes",{q:r,lim:20}),s=(Array.isArray(n)?n:[]).map($w).filter(i=>i.vod_id&&i.vod_name);if(!s.length){let i=await Fw("search_animes",cce({page:1,searchTerm:r}));s=(Array.isArray(i)?i:[]).map($w).filter(a=>a.vod_id&&a.vod_name)}return{list:s}}catch(n){return console.error("xifannext search failed:",n.message),{list:[]}}}async function Bvr(t,e){let r=t.body?.id,n=(Array.isArray(r)?r:String(r||"").split(",")).map(Yct).filter(Boolean),s=[];for(let i of n){let a=`/anime/${i}`;try{let o=await qw(a),c=Me(o),u=yvr(o,i),l=Yf(u.name||c("h1").first().text()),d=uM(o,"sources"),f=d.length?d:vvr(o,i),p=Ivr(f,i,l,a);s.push({vod_id:a,vod_name:l,vod_pic:zct(u.image||c("img[alt]").first().attr("src")||""),vod_remarks:u.numberOfEpisodes?`\u5168 ${u.numberOfEpisodes} \u96C6`:"",vod_content:Yf(u.description||""),vod_director:Gct(c,"\u5BFC\u6F14"),vod_actor:Gct(c,"\u58F0\u4F18"),vod_year:String(u.datePublished||"").slice(0,4),vod_area:Yf(u.countryOfOrigin||""),vod_class:Array.isArray(u.genre)?u.genre.join(","):Yf(u.genre||""),...p})}catch(o){console.error("xifannext detail failed:",i,o.message)}}return{list:s}}async function Mvr(t,e){let r=String(t.body?.id||"").trim(),n=fvr(r),s=Number(n.episodeId||(r.match(/\/play\/(\d+)/)||[])[1]||0),i=String(n.sourceCode||(()=>{try{return new URL(r,Kl).searchParams.get("source")||""}catch{return""}})()).trim();if(!s)return{parse:0,url:r,header:ace(r)};try{let a=await Fw("get_play_url",{p_episode_id:s}),o=Array.isArray(a?.urls)?a.urls:[],c=o.find(l=>String(l.source_code||"")===i)||o[0]||{},u=String(c.url||"").trim();if(!u){let l=await Avr("issue-hls-playback",{episode_id:s});u=String(l?.url||"").trim()}if(!u)throw new Error("play url not found");return{parse:0,url:u,header:ace(u)}}catch(a){return console.error("xifannext play failed:",s,a.message),{parse:0,url:r,header:ace(r)}}}var Zct={meta:{key:_a.key,name:"\u300C\u76F4\u300D\u7A00\u996D\xB2",type:3},api:async t=>{t.post("/init",Tvr),t.post("/home",wvr),t.post("/category",kvr),t.post("/detail",Bvr),t.post("/play",Mvr),t.post("/search",Lvr)}};var _E="https://4kzn.com",Wvr={"User-Agent":Gr,"Accept-Language":"zh-CN,zh;q=0.9,en;q=0.8",Referer:`${_E}/`},uce={key:"by",name:"",init:"date",value:[{n:"\u53D1\u5E03",v:"date"},{n:"\u66F4\u65B0",v:"modified"},{n:"\u6D4F\u89C8",v:"views"},{n:"\u70B9\u8D5E",v:"like"}]},eut=[{type_id:"books/zuixin",type_name:"\u5F71\u89C6"},{type_id:"books/top250",type_name:"TOP250"},{type_id:"books/juji",type_name:"\u5267\u96C6"},{type_id:"books/dianying",type_name:"\u7535\u5F71"},{type_id:"books/xiliehj",type_name:"\u7CFB\u5217\u5408\u96C6"},{type_id:"books/manwei",type_name:"\u6F2B\u5A01\u7535\u5F71\u7CFB\u5217\u5408\u96C6"},{type_id:"books/mztkn",type_name:"\u540D\u4FA6\u63A2\u67EF\u5357\u5267\u573A\u7248\u5408\u96C6"},{type_id:"books/hanniba",type_name:"\u6C49\u5C3C\u62D4\u5408\u96C6"}],lM={};for(let t of eut)lM[t.type_id]=[uce];lM["books/juji"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u5267\u60C5",v:"juq"},{n:"\u60CA\u609A",v:"jings"},{n:"\u72AF\u7F6A",v:"fanzuii"},{n:"\u52A8\u4F5C",v:"jjdongzuo"},{n:"\u5386\u53F2",v:"jjlishi"},{n:"\u6218\u4E89",v:"jjzhanzheng"},{n:"\u5192\u9669",v:"jjmaoxian"},{n:"\u53E4\u88C5",v:"\u53E4\u88C5"},{n:"\u7231\u60C5",v:"\u7231\u60C5"},{n:"\u559C\u5267",v:"\u559C\u5267"},{n:"\u6700\u65B0",v:"zuixin-juji"},{n:"\u79D1\u5E7B",v:"\u79D1\u5E7B"},{n:"\u60AC\u7591",v:"\u60AC\u7591"},{n:"\u5947\u5E7B",v:"\u5947\u5E7B"},{n:"\u5BB6\u5EAD",v:"\u5BB6\u5EAD"},{n:"\u6050\u6016",v:"\u6050\u6016"},{n:"\u897F\u90E8",v:"\u897F\u90E8"},{n:"\u52A8\u753B",v:"\u52A8\u753B"}]},uce];lM["books/dianying"]=[{key:"class",name:"",init:"",value:[{n:"\u5168\u90E8",v:""},{n:"\u559C\u5267",v:"xiju"},{n:"\u7231\u60C5",v:"aiqing"},{n:"\u5267\u60C5",v:"juqing"},{n:"\u60AC\u7591",v:"xuanyi"},{n:"\u4F20\u8BB0",v:"zhuanji"},{n:"\u52A8\u4F5C",v:"dongzuo"},{n:"\u79D1\u5E7B",v:"kehuan"},{n:"\u72AF\u7F6A",v:"fanzui"},{n:"\u5947\u5E7B",v:"qihuan"},{n:"\u5192\u9669",v:"maoxian"},{n:"\u5BB6\u5EAD",v:"jiating"},{n:"\u8FD0\u52A8",v:"yundong"},{n:"\u6B4C\u821E",v:"gewu"},{n:"\u6218\u4E89",v:"zhanzheng"},{n:"\u60CA\u609A",v:"jingsong"},{n:"\u897F\u90E8",v:"xibu"},{n:"\u52A8\u753B",v:"donghua"},{n:"\u707E\u96BE",v:"zainan"},{n:"\u6050\u6016",v:"kongbu"},{n:"\u5386\u53F2",v:"lishi"},{n:"\u97F3\u4E50",v:"yinyue"},{n:"\u540C\u6027",v:"tongxing"},{n:"\u7EAA\u5F55\u7247",v:"jilupian"},{n:"\u53E4\u88C5",v:"guzhuang"},{n:"\u513F\u7AE5",v:"ertong"},{n:"\u6B66\u4FA0",v:"\u6B66\u4FA0"}]},uce];async function lce(t){return(await he.get(t,{headers:Wvr})).data}function rA(t){let e=String(t||"").trim();return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?`${_E}${e}`:`${_E}/${e.replace(/^\/+/,"")}`:""}function EE(t){return String(t||"").replace(/<[^>]+>/g," ").replace(/ /gi," ").replace(/\s+/g," ").trim()}function tut(t){let e=Me(t),r=[],n=new Set;return e("article.posts-item").each((s,i)=>{let a=e(i).find('a.item-image, h3.item-title a, a[target="_blank"]').first(),o=rA(a.attr("href")||""),c=EE(e(i).find(".item-title a").first().text()||a.text()||e(i).attr("data-title")||"");if(!o||!c||n.has(o))return;n.add(o);let u=rA(e(i).find("img").first().attr("data-src")||e(i).find("img").first().attr("src")||""),l=EE(e(i).find(".line1.text-muted.text-xs, .book-info, .item-desc, .sub-title").first().text());r.push({vod_id:o,vod_name:c,vod_pic:u,vod_remarks:l})}),r}function $vr(t){let e=t.match(/\/books\/[^"']+\/page\/(\d+)/g),r=e?e.map(i=>Number((i.match(/(\d+)$/)||[0,1])[1]||1)):[],n=r.length?Math.max(...r):1,s=/class="next-page[^>]*>\s*<a[^>]*href="[^"]+\/page\/\d+"/i.test(t);return{pagecount:Math.max(n,s?n+1:1)}}async function Fvr(t,e){return{class:eut,filters:lM}}async function Uvr(t,e){try{let r=String(t.body.id||"books/zuixin").replace(/^\/+/,""),n=t.body.page,s=t.body.filters||{},i=parseInt(n,10);(!i||i<1)&&(i=1);let a=r;s.class&&(a=`books/${encodeURIComponent(s.class)}`);let o=i>1?`${_E}/${a}/page/${i}`:`${_E}/${a}`;s.by&&(o+=`?orderby=${s.by}`);let c=await lce(o),u=tut(c),{pagecount:l}=$vr(c);return{page:i,pagecount:l,limit:72,total:l*Math.max(u.length,1),list:u}}catch(r){return console.error("[4kzn][category]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}async function qvr(t,e){try{let r=String(t.body.id||"").trim();if(!r)return{list:[]};let n=/^https?:\/\//i.test(r)?r:rA(r),s=await lce(n),i=Me(s),a=EE(i("h1, h2, .book-title").first().text())||EE(i("meta[property='og:title']").attr("content")||""),o=rA(i('.book-cover img, meta[property="og:image"]').first().attr("data-src")||i('.book-cover img, meta[property="og:image"]').first().attr("content")||i(".book-cover img").first().attr("src")||""),c=EE(i("meta[name='description']").attr("content")||i(".panel-body.single").text()),u=[],l=new Set,d=[".site-go a[target='_blank']","a[target='_blank'][href*='pan.quark.cn']","a[href*='quark.cn']","a[href*='uc.cn']","a[href*='aliyundrive.com']","a[href*='115.com']"].join(", ");if(i(d).each((p,m)=>{let h=rA(i(m).attr("href")||"");!h||l.has(h)||(l.add(h),u.push(h))}),!u.length){let p=i("a.external[href*='pan.quark.cn'], a[href*='pan.quark.cn'], a[href*='quark.cn']").first(),m=rA(p.attr("href")||"");m&&u.push(m)}let f={vod_id:n,vod_name:a,vod_pic:o,vod_content:c};if(u.length){let p=await Rr(u,t);p?.froms&&p?.urls&&(f.vod_play_from=p.froms,f.vod_play_url=p.urls,f.vod_links=p.links)}return{list:[f]}}catch(r){return console.error("[4kzn][detail]",r.message),{list:[]}}}async function jvr(t,e){try{let r=t.body.wd,n=t.body.page,s=parseInt(n,10);if((!s||s<1)&&(s=1),!r)return{page:s,pagecount:0,limit:72,total:0,list:[]};let i=`${_E}/?s=${encodeURIComponent(r)}`,a=await lce(i),o=tut(a);if(!o.length){let c=Me(a);o=[],c("a[href*='/book/'], a[href*='/sites/']").each((u,l)=>{let d=c(l),f=rA(d.attr("href")||""),p=EE(d.text());!f||!p||p.includes(r)&&o.push({vod_id:f,vod_name:p,vod_pic:"",vod_remarks:""})})}return{page:s,pagecount:1,limit:72,total:o.length,list:o}}catch(r){return console.error("[4kzn][search]",r.message),{page:1,pagecount:0,limit:72,total:0,list:[]}}}var rut={meta:{key:"4kzn",name:"\u300C\u76D8\u300D\u6307\u5357",type:3},api:async t=>{t.post("/init",qr),t.post("/home",Fvr),t.post("/category",Uvr),t.post("/detail",qvr),t.post("/play",Or),t.post("/search",jvr),t.get("/proxy/:site/:what/:flag/:shareId/:fileId/:end",Nr)}};var jw="https://kafeizhibo.com",Hvr=`${jw}/api/v1`,uut="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36",Qvr={"User-Agent":uut,Accept:"application/json, text/plain, */*",Referer:`${jw}/pc/replay`},dce="live:",dM="schedule:",Gvr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,nut=[{type_id:"schedule",type_name:"\u8D5B\u7A0B"},{type_id:"live",type_name:"\u76F4\u64AD"},{type_id:"replay",type_name:"\u5F55\u64AD"}],Vvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],zvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"NBA",v:"nba"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"}],Kvr=[{n:"\u5168\u90E8",v:"all"},{n:"\u70ED\u95E8",v:"hot"},{n:"\u8DB3\u7403",v:"1"},{n:"\u7BEE\u7403",v:"2"},{n:"\u7F51\u7403",v:"3"},{n:"\u53F0\u7403",v:"19"}],sut={live:[{key:"type",name:"",init:"all",value:Vvr}],replay:[{key:"type",name:"",init:"all",value:zvr}],schedule:[{key:"type",name:"",init:"all",value:Kvr}]},lut=new Map;function xt(t){return String(t??"").trim()}function iut(t){return t!=null&&xt(t)!==""}function SE(t=""){let e=xt(t);if(!e)return"";if(/^https?:\/\//i.test(e))return e;if(e.startsWith("//"))return`https:${e}`;try{return new URL(e,jw).toString()}catch{return e}}function dut(t=""){let e=xt(t);return e?/^https?:\/\//i.test(e)?e:e.startsWith("//")?`https:${e}`:e.startsWith("/")?SE(e):/^[\w.-]+\.[a-z]{2,}(?:[/:?#]|$)/i.test(e)?`https://${e}`:e:""}function Yvr(t=""){return/^https?:\/\//i.test(xt(t))}function Jvr(t=""){return Gvr.test(xt(t))}function fM(t={}){let e=SE(t.cover_image);return e&&!e.includes("default_cover")?e:SE(t.home_team_logo)||SE(t.away_team_logo)||e}function fce(t={}){return SE(t.screenshot)||fM(t.match_info||t)||SE(t.avatar)||fM(t)}function Yl(t={}){return!iut(t.home_score)||!iut(t.away_score)?"":`${xt(t.home_score)} - ${xt(t.away_score)}`}function rm(t={}){let e=xt(t.home_team),r=xt(t.away_team),n=xt(t.league_name),s=xt(t.match_name||t.title||t.name||(t.match_id??t.id)),i=e&&r?`${e} vs ${r}`:e||r||s||"\u8D5B\u4E8B\u5F55\u50CF";return n?`${i} (${n})`:i}function pce(t=""){let e=xt(t).toLowerCase();return{live:"\u76F4\u64AD\u4E2D",online:"\u5728\u7EBF",finished:"\u5DF2\u7ED3\u675F",upcoming:"\u672A\u5F00\u59CB"}[e]||xt(t)}function Xvr(t=""){let e=xt(t),r=e.match(/^(\d{4})-(\d{2})-(\d{2})\s+(\d{2}:\d{2})/);return r?{time:r[4],date:`${r[2]}-${r[3]}`}:{time:e,date:""}}function vE(t={}){let e=t.data??t;return Array.isArray(e)?e:Array.isArray(e?.list)?e.list:Array.isArray(e?.records)?e.records:Array.isArray(e?.items)?e.items:[]}function aut(t={}){let e=t.data??t,r=[e?.total,e?.count,t?.total,t?.count];for(let n of r){let s=Number.parseInt(n,10);if(Number.isFinite(s)&&s>=0)return s}return null}function out(t,e,r,n=null){let s=Number.isFinite(n)?n:null;return{page:t,pagecount:s===null?t+(r.length>=e?1:0):Math.max(t,Math.ceil(s/e)),limit:e,total:s===null?(t-1)*e+r.length+(r.length>=e?1:0):s,list:r}}async function Hw(t,e={}){let r=t.startsWith("http")?t:`${Hvr}${t}`,n=await he.get(r,{params:e,headers:Qvr,timeout:15e3,validateStatus:()=>!0});if(n.status<200||n.status>=400)throw new Error(`HTTP ${n.status} @ ${r}`);let s=typeof n.data=="string"?JSON.parse(n.data||"{}"):n.data||{},i=Number(s?.code);if(Number.isFinite(i)&&i!==0&&i!==200)throw new Error(s?.message||s?.msg||`API code=${s.code}`);return s}async function fut(t=1,e=30,{league:r="",type:n=""}={}){let s={page:t,size:e};return r?s.league=r:n&&n!=="all"&&n!=="nba"&&(s.type=n),Hw("/recordings",s)}async function put(t="all"){return Hw("/archor",{type:t||"all",_t:Date.now()})}async function Zvr(t){return Hw(`/room/${encodeURIComponent(t)}`)}async function mut(t="hot",e=1,r=30){return Hw("/schedule",{type:t||"hot",page:e,size:r,platform:"pc",_t:Date.now()})}function hut(t={}){let e=xt(t.match_id??t.id),r=xt(t.recording_count),n=[Yl(t),xt(t.start_time),r?`${r}\u4E2A\u5F55\u50CF`:""].filter(Boolean);return{vod_id:e,vod_name:rm(t),vod_pic:fM(t),vod_remarks:n.join(" | "),type_name:xt(t.league_name)}}function gut(t={}){let e=t.match_info||t,r=xt(t.room_id||t.archor?.room_id||t.match_id),n=pce(t.status||e.status),s=xt(t.heat),i=[n,Yl(t)||Yl(e),s?`\u70ED\u5EA6 ${s}`:""].filter(Boolean);return{vod_id:r?`${dce}${r}`:"",vod_name:xt(t.title)||rm(e),vod_pic:fce(t),vod_remarks:i.join(" | "),type_name:xt(t.league_name||e.league_name)}}function Aut(t={}){if(t.archor?.room_id)return xt(t.archor.room_id);let r=(Array.isArray(t.archors)?t.archors:[]).find(n=>n?.room_id);return xt(r?.room_id||t.room_id)}function yut(t={}){let e=Aut(t),r=xt(t.match_id??t.id),n=e&&r?`${dM}${r}:${e}`:"",s=Xvr(t.start_time),i=[s.time||pce(t.status),s.date,Yl(t),t.is_hot?"\u70ED\u95E8":""].filter(Boolean);return n&&lut.set(n,t),{vod_id:n,vod_name:xt(t.title)||rm(t),vod_pic:fce(t),vod_remarks:i.join(" | "),type_name:xt(t.league_name)}}function xut(t,e){return(xt(t)||e).replace(/[$#]/g," ").replace(/\s+/g," ").trim()||e}function cut(t=[],e="\u64AD\u653E"){return t.map((r,n)=>{let s=dut(r.video_url||r.stream_url||r.url||r.play_url);return s?`${xut(r.title||r.name,`${e}${n+1}`)}$${encodeURIComponent(s)}`:""}).filter(Boolean).join("#")}function eCr(t=""){let e=xt(t);if(!e)return"";try{return decodeURIComponent(e)}catch{return e}}function tCr(t=""){let e=xt(t);return e==="live"?"all":e.startsWith("live_")?e.slice(5)||"all":null}function rCr(t={}){let e=t.room_info||{},r=t.archor||{},n=t.teams||{};return{match_id:e.match_id||t.match_id,room_id:e.room_id||r.room_id,title:e.title||r.name,league_name:e.league||e.league_name,home_team:n.home?.name||e.home_team,away_team:n.away?.name||e.away_team,home_team_logo:n.home?.logo,away_team_logo:n.away?.logo,home_score:e.home_score??t.home_score,away_score:e.away_score??t.away_score,status:t.status||e.status||r.status,screenshot:r.screenshot,screenshot_updated_at:r.screenshot_updated_at,avatar:r.avatar||e.avatar,heat:r.heat,notice:e.notice||e.notice_h5}}function nCr(t={}){return{match_id:t.match_id||t.id,room_id:Aut(t),title:xt(t.title)||rm(t),league_name:t.league_name,home_team:t.home_team||t.homeTeam?.name,away_team:t.away_team||t.awayTeam?.name,home_team_logo:t.home_team_logo||t.homeTeam?.logo,away_team_logo:t.away_team_logo||t.awayTeam?.logo,home_score:t.home_score,away_score:t.away_score,status:t.status,screenshot:t.screenshot,avatar:t.archor?.avatar,heat:t.archor?.heat,start_time:t.start_time,notice:t.is_hot?"\u70ED\u95E8\u8D5B\u7A0B":""}}function sCr(t={}){let e=[],r=new Set,n=(s={},i="\u7EBF\u8DEF")=>{let a=dut(s.stream_url||s.url||s.play_url);!a||r.has(a)||(r.add(a),e.push({name:xut(s.name||s.title,`${i}${e.length+1}`),url:a}))};return n(t,"\u7EBF\u8DEF"),n(t.archor,"\u4E3B\u64AD"),(Array.isArray(t.archors)?t.archors:[]).forEach(s=>n(s,"\u4E3B\u64AD")),(Array.isArray(t.signals)?t.signals:[]).forEach(s=>n(s,"\u7EBF\u8DEF")),[t.external_signals_pc,t.external_signals,t.external_signals_h5,t.room_info?.external_signals_pc,t.room_info?.external_signals,t.room_info?.external_signals_h5].forEach(s=>{(Array.isArray(s)?s:[]).forEach(i=>n(i,"\u5916\u90E8"))}),e}async function iCr(t,e){return{}}async function aCr(t,e){try{let r=await mut("all",1,30),n=vE(r).map(yut).filter(s=>s.vod_id&&s.vod_name);return{class:nut,filters:sut,list:n}}catch(r){return console.error("kafei home failed:",r.message),{class:nut,filters:sut,list:[]}}}async function oCr(t,e){let r=xt(t.body?.id||"all"),n=Math.max(1,Number.parseInt(t.body?.page||1,10)),s=t.body?.filters||{};if(r==="schedule"){let u=xt(s.type||"all"),l=30;try{let d=await mut(u,n,l),f=vE(d).map(yut).filter(p=>p.vod_id&&p.vod_name);return out(n,l,f,aut(d))}catch(d){return console.error("kafei schedule category failed:",u,d.message),{page:n,pagecount:n,limit:l,total:0,list:[]}}}let i=tCr(r);if(i!==null){let u=xt(s.type||i||"all");if(n>1)return{page:n,pagecount:1,limit:100,total:0,list:[]};try{let l=await put(u),d=vE(l).map(gut).filter(f=>f.vod_id&&f.vod_name);return{page:1,pagecount:1,limit:d.length||100,total:d.length,list:d}}catch(l){return console.error("kafei live category failed:",r,l.message),{page:1,pagecount:1,limit:100,total:0,list:[]}}}let a=r==="replay"?xt(s.type||"all"):r,o=a.toLowerCase(),c=o==="nba"?20:30;try{let u=await fut(n,c,{league:o==="nba"?"NBA":"",type:o==="all"?"":a}),l=vE(u).map(hut).filter(d=>d.vod_id&&d.vod_name);return out(n,c,l,aut(u))}catch(u){return console.error("kafei category failed:",r,u.message),{page:n,pagecount:n,limit:c,total:0,list:[]}}}async function cCr(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){let i=xt(s);if(i)try{if(i.startsWith(dce)||i.startsWith(dM)){let h=i.startsWith(dM),A=h?i.slice(dM.length).split(":").pop():i.slice(dce.length),g=h?lut.get(i):null,b=g?null:await Zvr(A),y=g||b?.data||{},x=g?nCr(y):rCr(y),C=sCr(y).map(R=>`${R.name}$${encodeURIComponent(R.url)}`).join("#");n.push({vod_id:i,vod_name:xt(x.title)||rm(x),vod_pic:fce(x),type_name:xt(x.league_name),vod_remarks:[pce(x.status),Yl(x)].filter(Boolean).join(" | "),vod_content:[xt(x.league_name),xt(x.title)||rm(x),Yl(x)?`\u6BD4\u5206 ${Yl(x)}`:"",xt(x.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${xt(x.start_time)}`:"",xt(x.notice)].filter(Boolean).join("\uFF0C"),vod_play_from:C?"\u76F4\u64AD":"",vod_play_url:C});continue}let o=(await Hw(`/match/${encodeURIComponent(i)}/recordings`)).data||{},c=o.match||o,u=Array.isArray(o.replays)?o.replays:[],l=Array.isArray(o.highlights)?o.highlights:[],d=[],f=[],p=cut(u,"\u5F55\u50CF");p&&(d.push("\u5F55\u50CF"),f.push(p));let m=cut(l,"\u96C6\u9526");m&&(d.push("\u96C6\u9526"),f.push(m)),n.push({vod_id:i,vod_name:rm(c),vod_pic:fM(c),type_name:xt(c.league_name),vod_remarks:Yl(c),vod_content:[xt(c.league_name),xt(c.match_round),rm(c),Yl(c)?`\u6BD4\u5206 ${Yl(c)}`:"",xt(c.start_time)?`\u6BD4\u8D5B\u65F6\u95F4: ${xt(c.start_time)}`:""].filter(Boolean).join("\uFF0C"),vod_play_from:d.join("$$$"),vod_play_url:f.join("$$$")})}catch(a){console.error("kafei detail failed:",i,a.message)}}return{list:n}}async function uCr(t,e){let r=eCr(t.body?.id);return r?{parse:Yvr(r)&&!Jvr(r)?1:0,url:r,header:{"User-Agent":uut,Referer:jw,Origin:jw}}:{parse:0,url:"",header:{}}}async function lCr(t,e){let r=xt(t.body?.wd||t.body?.keyword).toLowerCase(),n=100;if(!r)return{page:1,pagecount:1,limit:n,total:0,list:[]};try{let[s,i]=await Promise.allSettled([put("all"),fut(1,n)]),a=s.status==="fulfilled"?vE(s.value):[],o=i.status==="fulfilled"?vE(i.value):[],c=a.filter(d=>{let f=d.match_info||d;return[d.title,d.name,d.home_team,d.away_team,d.league_name,f.home_team,f.away_team,f.league_name].map(xt).join(" ").toLowerCase().includes(r)}).map(gut),u=o.filter(d=>[d.home_team,d.away_team,d.league_name,d.match_name,d.title].map(xt).join(" ").toLowerCase().includes(r)).map(hut),l=[...c,...u].filter(d=>d.vod_id&&d.vod_name);return{page:1,pagecount:1,limit:n,total:l.length,list:l}}catch(s){return console.error("kafei search failed:",s.message),{page:1,pagecount:1,limit:n,total:0,list:[]}}}var but={meta:{key:"kafei",name:"\u300C\u76F4\u300D\u5496\u5561",type:3},api:async t=>{t.post("/init",iCr),t.post("/home",aCr),t.post("/category",oCr),t.post("/detail",cCr),t.post("/play",uCr),t.post("/search",lCr)}};var _ut=require("crypto");var mce="/embySpider",Jl={clientName:"SenPlayer",clientVersion:"6.0.5",deviceName:"iPhone",language:"zh-cn",userAgent:"SenPlayer/6.0.5"};function dCr(){return(0,_ut.randomUUID)().toUpperCase()}function Sut(t,e=!1){return $o(t)||(e?dCr():"")}function CE({token:t="",contentType:e=!1,deviceId:r="",userId:n=""}={}){let s=Sut(r),i=$o(t),a=$o(n),o={"X-Emby-Authorization":[`MediaBrowser Token="${i}"`,`UserId="${a}"`,`Client="${Jl.clientName}"`,`Device="${Jl.deviceName}"`,`DeviceId="${s}"`,`Version="${Jl.clientVersion}"`].join(", "),"X-Emby-Client":Jl.clientName,"X-Emby-Device-Name":Jl.deviceName,"X-Emby-Device-Id":s,"X-Emby-Client-Version":Jl.clientVersion,"X-Emby-Language":Jl.language,"User-Agent":Jl.userAgent};return e&&(o["Content-Type"]="application/json"),i&&(o["X-Emby-Token"]=i),o}function vut(t){return String(t||"").trim().replace(/\/+$/,"")}function $o(t){return String(t||"").trim()}function fCr(t){return String(t||"").trim()}function Cut(t){return $o(t).toLowerCase().replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,40)}function pCr(t,e){let n=`${t?.name||""}-${t?.host||""}-${t?.username||""}`.toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,28),s=n||RQ().slice(0,8);for(;e.has(s);)s=`${(n||"emby").slice(0,24)}-${RQ().slice(0,4)}`;return e.add(s),s}function mCr(t,e,r={}){let n=vut(t?.host),s=$o(t?.username),i=$o(t?.name),a=Cut(t?.id),o=a&&!e.has(a)?a:pCr({name:i,host:n,username:s},e);return e.add(o),{id:o,name:i,host:n,username:s,password:String(t?.password||""),deviceId:Sut(t?.deviceId,r.ensureDeviceId),logo:fCr(t?.logo),libraries:hce(t?.libraries),libraryStats:Iut(t?.libraryStats)}}function Iut(t={}){return{movieCount:Math.max(0,Number(t?.movieCount||0)||0),seriesCount:Math.max(0,Number(t?.seriesCount||0)||0)}}function hce(t=[]){return Array.isArray(t)?t.map(e=>({id:$o(e?.id||e?.Id),name:$o(e?.name||e?.Name),collectionType:$o(e?.collectionType||e?.CollectionType)})).filter(e=>e.id).map(e=>({...e,name:e.name||e.id})):[]}function hCr(t=[]){return hce(t.map(e=>({id:e?.Id,name:e?.Name,collectionType:e?.CollectionType})))}function pM(t={},e={}){let r=new Set;return{servers:(Array.isArray(t?.servers)?t.servers:[]).filter(i=>i&&typeof i=="object").filter(i=>$o(i?.id)||$o(i?.name)||vut(i?.host)||$o(i?.username)||String(i?.password||"")).map(i=>mCr(i,r,e)).filter(i=>i.host||i.username)}}function gCr(t){return{servers:t.servers}}var gce=async t=>{let e=await t.db.getObjectDefault(mce,{});return pM(e)},Qw=async t=>(await gce(t)).servers,IE=async(t,e="")=>{let r=await gce(t),n=Cut(e);return n&&r.servers.find(s=>s.id===n)||null},ACr=async(t,e)=>{let r=pM(e,{ensureDeviceId:!0});return await t.db.push(mce,gCr(r)),r},yCr=async t=>{await t.db.delete(mce)};async function xCr(t){let{host:e,username:r,password:n,deviceId:s}=t,i=`${e}/emby/Users/authenticatebyname`,o=(await he.post(i,{Username:r,Pw:n||"",Password:n||""},{headers:CE({contentType:!0,deviceId:s}),timeout:1e4})).data;if(!o?.AccessToken||!o?.User?.Id)throw new Error("\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");return o}function bCr(t="",e="",r=""){return CE({token:t,contentType:!0,deviceId:e,userId:r})}async function mM(t,e="",r="",n=""){return(await he.get(t,{headers:e?bCr(e,r,n):CE({deviceId:r}),timeout:1e4})).data}async function ECr(t,e="",r=""){try{return await mM(`${t.host}/emby/System/Info/Public`,e,t.deviceId,r)}catch{try{return await mM(`${t.host}/emby/System/Info`,e,t.deviceId,r)}catch{return{}}}}async function _Cr(t,e,r){try{let n=await mM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Views`,r,t.deviceId,e);return Array.isArray(n?.Items)?n.Items:[]}catch{return[]}}async function Eut(t,e,r,n,s){let i=new URLSearchParams({ParentId:String(n||""),Recursive:"true",IncludeItemTypes:s,StartIndex:"0",Limit:"1"});try{let a=await mM(`${t.host}/emby/Users/${encodeURIComponent(e)}/Items?${i.toString()}`,r,t.deviceId,e);return Math.max(0,Number(a?.TotalRecordCount||0)||0)}catch{return 0}}async function SCr(t,e,r,n=[]){let s={movieCount:0,seriesCount:0},i=[];for(let a of n){let o=String(a?.Id||"");if(!o)continue;let c=String(a?.CollectionType||"").toLowerCase();(!c||c==="movies")&&i.push(Eut(t,e,r,o,"Movie").then(u=>{s.movieCount+=u})),(!c||c==="tvshows")&&i.push(Eut(t,e,r,o,"Series").then(u=>{s.seriesCount+=u}))}return await Promise.allSettled(i),s}async function vCr(t){let e=await xCr(t),r=e.AccessToken,n=e.User.Id,[s,i]=await Promise.all([ECr(t,r,n),_Cr(t,n,r)]),a=await SCr(t,n,r,i);return{serverName:$o(s?.ServerName),libraries:hCr(i),libraryStats:a}}function CCr(t,e={}){return{...t,name:t.name||e.serverName||"Emby",libraries:hce(e.libraries||t.libraries),libraryStats:Iut(e.libraryStats||t.libraryStats)}}function ICr(t){return t?.response?.status===401?"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF":`\u8FDE\u63A5\u5931\u8D25: ${t.message}`}async function Ace(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await gce(e.server)})}),t.post("/verify",async(e,r)=>{let s=pM({servers:[e.body||{}]},{ensureDeviceId:!0}).servers[0];if(!s||!s.host||!s.username){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let i=await vCr(s);r.send({code:0,data:CCr(s,i)})}catch(i){r.send({code:-1,message:ICr(i)})}}),t.put("/setting",async(e,r)=>{let n=pM(e.body||{},{ensureDeviceId:!0});for(let i of n.servers)if(!i.host||!i.username){r.send({code:-1,message:`${i.name||"Emby"} \u7684\u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D\u4E0D\u80FD\u4E3A\u7A7A`});return}let s=await ACr(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await yCr(e.server),r.send({code:0})})}var Ece="::",Out=["PrimaryImageAspectRatio","BasicSyncInfo","ProductionYear","RecursiveItemCount","ChildCount"].join(","),yce=new Map;function TCr(){return{baseUrl:"",username:"",password:"",deviceId:"",accessToken:"",userId:""}}function wCr(t){let e=t||"default";return yce.has(e)||yce.set(e,TCr()),yce.get(e)}async function RCr(t,e=""){let r=await IE(t,e),n=String(r?.host||"").replace(/\/$/,""),s=r?.username||"",i=r?.password||"",a=r?.deviceId||"",o=wCr(r?.id||e);if(!n||!s)throw new Error("\u8BF7\u5728\u7BA1\u7406\u9875\u9762\u914D\u7F6E Emby \u670D\u52A1\u5668\u5730\u5740\u548C\u7528\u6237\u540D");return o.baseUrl===n&&o.username===s&&o.password===i&&o.deviceId===a||(o.baseUrl=n,o.username=s,o.password=i,o.deviceId=a,o.accessToken="",o.userId=""),o}async function Sce(t){let e=`${t.baseUrl}/emby/Users/authenticatebyname`,n=(await he.post(e,{Username:t.username,Pw:t.password||"",Password:t.password||""},{headers:CE({contentType:!0,deviceId:t.deviceId}),timeout:15e3})).data;if(!n||!n.AccessToken||!n.User?.Id)throw new Error("Emby\u8BA4\u8BC1\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7528\u6237\u540D\u548C\u5BC6\u7801");t.accessToken=n.AccessToken,t.userId=n.User.Id}async function nm(t,e=""){let r=await RCr(t,e);return(!r.accessToken||!r.userId)&&await Sce(r),r}function hM(t){return CE({token:t.accessToken,deviceId:t.deviceId,userId:t.userId})}function TE(t,e){let r=String(t||""),n=String(e||"");return!r||!n?"":`${encodeURIComponent(r)}${Ece}${n}`}function Put(t){let e=String(t||""),r=e.indexOf(Ece);if(r<0)return{serverId:"",itemId:""};let n=e.slice(0,r);return{serverId:decodeURIComponent(n),itemId:e.slice(r+Ece.length)}}function NCr(t){return String(t.body?.id||"").trim()}function Tut(t){return String(t||"").split(",")[0].trim()}function OCr(t){let r=Tut(t?.headers?.["x-forwarded-proto"])||t?.protocol||"http",s=Tut(t?.headers?.["x-forwarded-host"])||t?.headers?.host||"";return s?`${r}://${s}`:""}function PCr(t=""){let e=String(t||"").toLowerCase();return e==="movies"?"Movie":e==="tvshows"?"Series":"Movie,Series"}function xce(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.floor(e):0}function DCr(t={}){return String(t?.Type||"").toLowerCase()!=="series"?0:xce(t.RecursiveItemCount)||xce(t.EpisodeCount)||xce(t.ChildCount)}function kCr(t=[]){let e=[],r=t.reduce((n,s)=>Math.max(n,s.list.length),0);for(let n=0;n<r;n++)for(let s of t)s.list[n]&&e.push(s.list[n]);return e}async function Dut(t,e){let r=await nm(t,e),n=await nA(`/emby/Users/${r.userId}/Views`,t,e);return Array.isArray(n?.Items)?n.Items:[]}function _ce(t=[]){let e=[];for(let r of t){let n=String(r?.Id||r?.id||"");n&&e.push({n:r.Name||r.name||n,v:n})}return e.length===0?[]:[{key:"library",name:"",init:e[0].v,value:e}]}function bce(t=[]){return(Array.isArray(t)?t:[]).map(e=>{let r=String(e?.id||e?.Id||"").trim();return r?{type_id:r,type_name:String(e?.name||e?.Name||r).trim()||r}:null}).filter(Boolean)}async function nA(t,e,r="",n={}){let s=await nm(e,r),i=`${s.baseUrl}${t}`;try{return(await he({method:n.method||"GET",url:i,headers:hM(s),data:n.data,timeout:15e3})).data}catch(a){if(a?.response?.status===401)return s.accessToken="",await Sce(s),(await he({method:n.method||"GET",url:i,headers:hM(s),data:n.data,timeout:15e3})).data;throw a}}function LCr(t=""){let e=String(t||"").trim();return/^[A-Za-z]+$/.test(e)?e:"Primary"}function BCr(t,e=300){let r=parseInt(t||e,10);return!Number.isFinite(r)||r<=0?e:Math.min(r,1200)}function kut(t,e="",r=null){if(t.ImageTags?.Primary){let s=`/spider/emby/3/image?${new URLSearchParams({serverId:e,itemId:String(t.Id||""),maxHeight:"300",tag:String(t.ImageTags.Primary)}).toString()}`,i=OCr(r);return i?`${i}${s}`:s}return""}function Lut(t,e="",r=null){let n=DCr(t);return{vod_id:TE(e,t.Id),vod_name:t.Name||"",vod_pic:kut(t,e,r),vod_remarks:n>0?String(n):"",vod_year:t.ProductionYear?String(t.ProductionYear):""}}async function wut(t,e){return{}}async function MCr(t,e){let r=t.query||{},n=String(r.serverId||"").trim(),s=String(r.itemId||"").trim();if(!n||!s)return e.code(404),"";try{let i=await nm(t.server,n),a=LCr(r.type||"Primary"),o=new URLSearchParams({maxHeight:String(BCr(r.maxHeight,300))}),c=String(r.tag||"").trim();c&&o.set("tag",c);let u=`${i.baseUrl}/emby/Items/${encodeURIComponent(s)}/Images/${a}?${o.toString()}`,l;try{l=await he.get(u,{responseType:"stream",headers:hM(i),timeout:15e3})}catch(d){if(d?.response?.status!==401)throw d;i.accessToken="",await Sce(i),l=await he.get(u,{responseType:"stream",headers:hM(i),timeout:15e3})}return e.header("Content-Type",l.headers?.["content-type"]||"image/jpeg"),e.header("Cache-Control","private, max-age=86400"),l.headers?.["content-length"]&&e.header("Content-Length",l.headers["content-length"]),e.send(l.data)}catch(i){return console.error("emby image failed:",i.message),e.code(i?.response?.status===404?404:502),""}}async function WCr(t,e){try{let n=(await Qw(t.server)).filter(a=>a?.host&&a?.username);if(n.length===0)return{class:[],filters:{}};let s=n.map((a,o)=>({type_id:a.id,type_name:a.name||`Emby ${o+1}`})),i={};for(let a of n){let o=a.id;i[o]=_ce(a.libraries)}return{class:s,filters:i}}catch(r){return console.error("emby home failed:",r.message),{class:[],filters:{}}}}async function $Cr(t,e){let r=String(t.params?.serverId||"").trim();if(!r)return{class:[],filters:{}};try{let n=await IE(t.server,r),s=bce(n?.libraries);if(s.length===0){let i=await Dut(t.server,r);s=bce(i)}return{class:s,filters:{}}}catch(n){console.error("emby server home failed:",n.message);let s=await IE(t.server,r).catch(()=>null);return{class:bce(s?.libraries),filters:{}}}}async function But(t,e,r="",n={}){let s=t.body?.filters||{},i=Math.max(1,parseInt(t.body?.page||1,10)),a=20,o=(i-1)*a;if(!e)return{page:i,pagecount:i,limit:a,total:0,list:[],filters:n.filterKey?{}:void 0};try{let c=await nm(t.server,e),u=await Dut(t.server,e),l=_ce(u),d=String(r||"").trim();!d&&n.useFilterLibrary!==!1&&(d=String(s.library||"").trim()),d||(d=String(u[0]?.Id||"").trim());let f="Movie,Series";if(d){let y=await nA(`/emby/Users/${c.userId}/Items/${d}`,t.server,e);f=PCr(y?.CollectionType)}let p=new URLSearchParams({StartIndex:String(o),Limit:String(a),Recursive:"true",Fields:Out,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:f,SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"});d&&p.set("ParentId",d);let m=await nA(`/emby/Users/${c.userId}/Items?${p.toString()}`,t.server,e),h=m?.Items||[],A=m?.TotalRecordCount||h.length,g=h.map(y=>Lut(y,e,t)),b={page:i,pagecount:Math.max(i,Math.ceil(A/a)),limit:a,total:A,list:g};return n.filterKey&&(b.filters={[n.filterKey]:l}),b}catch(c){console.error("emby category failed:",c.message);let u=await IE(t.server,e).catch(()=>null),l={page:i,pagecount:i,limit:a,total:0,list:[]};return n.filterKey&&(l.filters={[n.filterKey]:_ce(u?.libraries)}),l}}async function FCr(t,e){let r=NCr(t);return But(t,r,"",{filterKey:r,useFilterLibrary:!0})}async function UCr(t,e){let r=String(t.params?.serverId||"").trim(),n=String(t.body?.id||"").trim();return But(t,r,n,{useFilterLibrary:!1})}async function Rut(t,e){let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r)if(s)try{let{serverId:i,itemId:a}=Put(s);if(!i||!a)continue;let o=await nm(t.server,i),c=await nA(`/emby/Users/${o.userId}/Items/${a}`,t.server,i);if(!c)continue;let u={vod_id:TE(i,c.Id),vod_name:c.Name||"",vod_pic:kut(c,i,t),vod_remarks:c.ProductionYear?String(c.ProductionYear):"",vod_year:c.ProductionYear?String(c.ProductionYear):"",vod_content:c.Overview||"",vod_director:(c.People||[]).filter(l=>l.Type==="Director").map(l=>l.Name).join(","),vod_actor:(c.People||[]).filter(l=>l.Type==="Actor").map(l=>l.Name).join(","),vod_play_from:"",vod_play_url:""};if(c.Type==="Movie")u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${TE(i,c.Id)}`;else if(c.Type==="Series"){let d=(await nA(`/emby/Shows/${c.Id}/Episodes?userId=${o.userId}&Fields=BasicSyncInfo`,t.server,i))?.Items||[];if(d.length>0){let f={};for(let h of d){let A=h.SeasonName||`\u7B2C${h.ParentIndexNumber||1}\u5B63`;f[A]||(f[A]=[]);let g=h.Name===`\u7B2C ${h.IndexNumber} \u96C6`?h.Name:`${h.IndexNumber}.${h.Name}`;f[A].push(`${g}$${TE(i,h.Id)}`)}let p=[],m=[];for(let[h,A]of Object.entries(f))p.push(h),m.push(A.join("#"));u.vod_play_from=p.join("$$$"),u.vod_play_url=m.join("$$$")}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${TE(i,c.Id)}`}else u.vod_play_from="Emby",u.vod_play_url=`${c.Name}$${TE(i,c.Id)}`;n.push(u)}catch(i){console.error("emby detail failed:",s,i.message)}return{list:n}}async function qCr(t,e,r){let n=await nm(t,e),s=encodeURIComponent(r),i=await nA(`/emby/Users/${n.userId}/Items/${s}?Fields=Path`,t,e),o=(Array.isArray(i?.MediaSources)?i.MediaSources:[]).find(c=>String(c?.Id||"").trim())||null;return String(o?.Id||"").trim()}async function Nut(t,e){let{serverId:r,itemId:n}=Put(t.body?.id||"");if(!r||!n)return{parse:0,url:"",header:{}};try{let s=await nm(t.server,r),i=encodeURIComponent(n),a=new URLSearchParams({static:"true",api_key:s.accessToken}),o=await qCr(t.server,r,n).catch(()=>"");return o&&a.set("MediaSourceId",o),{parse:0,url:`${s.baseUrl}/emby/Videos/${i}/stream.mkv?${a.toString()}`,header:{"User-Agent":Jl.userAgent}}}catch(s){return console.error("emby play failed:",s.message),{parse:0,url:"",header:{}}}}async function Mut(t,e=[]){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10)),s=20;if(!r)return{page:n,pagecount:n,limit:s,total:0,list:[]};if(e.length===0)return{page:n,pagecount:n,limit:s,total:0,list:[]};try{let i=(n-1)*s,a=n*s,o=await Promise.allSettled(e.map(async d=>{let f=d.id,p=await nm(t.server,f),m=new URLSearchParams({SearchTerm:r,StartIndex:"0",Limit:String(a),Recursive:"true",Fields:Out,ImageTypeLimit:"1",EnableImageTypes:"Primary",IncludeItemTypes:"Movie,Series",SortBy:"DateLastContentAdded,DateCreated",SortOrder:"Descending"}),h=await nA(`/emby/Users/${p.userId}/Items?${m.toString()}`,t.server,f),A=h?.Items||[];return{total:Math.max(0,Number(h?.TotalRecordCount||A.length)||0),list:A.map(g=>Lut(g,f,t))}})),c=[],u=0;for(let d of o){if(d.status!=="fulfilled"){console.error("emby search server failed:",d.reason?.message||d.reason);continue}u+=d.value.total,c.push(d.value)}let l=kCr(c);return{page:n,pagecount:Math.max(n,Math.ceil(u/s)),limit:s,total:u,list:l.slice(i,a)}}catch(i){return console.error("emby search failed:",i.message),{page:n,pagecount:n,limit:s,total:0,list:[]}}}async function jCr(t,e){let r=await Qw(t.server);return Mut(t,r.filter(n=>n?.host&&n?.username))}async function HCr(t,e){let r=String(t.params?.serverId||"").trim(),n=await IE(t.server,r).catch(()=>null);return Mut(t,n?.host&&n?.username?[n]:[])}var Wut={meta:{key:"emby",name:"Emby",type:3,hidden:!0},api:async t=>{t.post("/init",wut),t.get("/image",MCr),t.post("/home",WCr),t.post("/category",FCr),t.post("/detail",Rut),t.post("/play",Nut),t.post("/search",jCr),t.post("/server/:serverId/init",wut),t.post("/server/:serverId/home",$Cr),t.post("/server/:serverId/category",UCr),t.post("/server/:serverId/detail",Rut),t.post("/server/:serverId/play",Nut),t.post("/server/:serverId/search",HCr)}};var vce="/alistVideo",Fut={servers:[{id:"alist_default",name:"\u4EBF\u82EF\u6B63\u7ECF\u7684Alist\u5E93",server:"https://pan.lm379.cn"}]};function QCr(t,e="server"){return`alist_${String(t||e).trim().toLowerCase().replace(/^https?:\/\//,"").replace(/[^a-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||e}`}function Cce(t={}){return{id:t.id||"",name:String(t.name||"").trim(),server:String(t.server||"").trim().replace(/\/+$/,""),username:String(t.username||"").trim(),password:String(t.password||""),token:String(t.token||"").trim(),otpCode:String(t.otpCode||t.otp_code||"").trim()}}function Ice(t={}){let e=Array.isArray(t?.servers)?t.servers:[],r=new Set;return{servers:e.map((n,s)=>{let i={...Cce(n),otpCode:""};if(!i.server)return null;i.id||(i.id=QCr(i.server||i.name,`server_${s+1}`));let a=i.id,o=a,c=2;for(;r.has(o);)o=`${a}_${c}`,c+=1;return r.add(o),i.id=o,i}).filter(Boolean)}}function GCr(t={}){return`catpaw_${String(t.id||t.server||t.name||"default").trim().replace(/[^a-zA-Z0-9_-]/g,"_").slice(0,96)||"alist"}`}function wE(t={},e=""){let r=String(e||t.token||"").trim(),n={"Content-Type":"application/json","Client-Id":GCr(t)};return r&&(n.Authorization=r),n}function Tce(t,e={}){return t?.status===401||t?.status===403||e?.code===401||e?.code===403}async function gM(t={},e={}){let r=Cce(t);if(r.token)return r.token;if(!r.server||!r.username)return"";let n={username:r.username,password:r.password};r.otpCode&&(n.otp_code=r.otpCode);let i=(await he.post(r.server+"/api/auth/login",n,{headers:wE(r),timeout:e.timeout||1e4})).data||{};if(i.code!==200||!i.data?.token)throw new Error(i.message||"Alist \u767B\u5F55\u5931\u8D25");return i.data.token}async function $ut(t,e=""){let r=await he.post(t.server+"/api/fs/list",{path:"/",page:1,per_page:1},{headers:wE(t,e),timeout:1e4});return{resp:r,json:r.data||{}}}var Uut=async t=>{let e=await t.db.getObjectDefault(vce,Fut);return Ice(e)},VCr=async(t,e)=>{let r=Ice(e);return await t.db.push(vce,r),r},zCr=async t=>{await t.db.delete(vce)},Gw=async t=>(await Uut(t)).servers;async function wce(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await Uut(e.server)})}),t.put("/setting",async(e,r)=>{let n=Ice(e.body||{});if(n.servers.some(i=>!i.server)){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}let s=await VCr(e.server,n);r.send({code:0,data:s})}),t.delete("/setting",async(e,r)=>{await zCr(e.server),r.send({code:0,data:Fut})}),t.post("/verify",async(e,r)=>{let n=Cce(e.body||{});if(!n.server){r.send({code:-1,message:"\u670D\u52A1\u5668\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A"});return}try{let s=await gM(n),{resp:i,json:a}=await $ut(n,s);if(Tce(i,a)&&n.username&&(s=await gM({...n,token:""}),{resp:i,json:a}=await $ut(n,s)),a.code!==200){r.send({code:-1,message:a.message||"\u8FDE\u63A5\u5931\u8D25"});return}r.send({code:0,data:{...n,token:s||n.token,otpCode:""}})}catch(s){r.send({code:-1,message:`\u8FDE\u63A5\u5931\u8D25: ${s.message}`})}})}var KCr=new Set([".mp4",".mkv",".avi",".wmv",".flv",".mov",".webm",".ts",".m4v",".rmvb",".rm",".3gp",".mpg",".mpeg",".vob",".iso"]),YCr=new Set([".srt",".ass",".ssa",".sub",".scc",".stl",".ttml",".vtt"]),Vut="https://img.icons8.com/fluency/96/folder-invoices--v1.png",zut="https://img.icons8.com/color/48/video.png",JCr=new Set(["AliyundriveOpen","AliyunShare","BaiduNetdisk","BaiduShare2","Quark","QuarkShare","UC","UCShare","UCTV","115 Cloud","115 Share"]),Kut="Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1",Ou={},RE={},Rce="alist:";function xM(t){let e=t.lastIndexOf(".");return e<0?!1:KCr.has(t.slice(e).toLowerCase())}function Yut(t){let e=t.lastIndexOf(".");return e<0?!1:YCr.has(t.slice(e).toLowerCase())}function Nce(t){return!t||t<=0?"":t>1024**4?(t/1024**4).toFixed(2)+"TB":t>1024**3?(t/1024**3).toFixed(2)+"GB":t>1024**2?(t/1024**2).toFixed(2)+"MB":(t/1024).toFixed(2)+"KB"}function sm(t,e,r=""){let n=String(r||"").trim();return n?Rce+Buffer.from(JSON.stringify({serverId:n,name:t,path:e||"/"}),"utf8").toString("base64url"):`${t}||${e}`}function bM(t){let e=String(t||"");if(e.startsWith(Rce))try{let n=JSON.parse(Buffer.from(e.slice(Rce.length),"base64url").toString("utf8"));return{serverId:String(n?.serverId||""),name:String(n?.name||""),path:String(n?.path||"/")}}catch{return{serverId:"",name:"",path:"/"}}let r=e.indexOf("||");return r<0?{serverId:"",name:e,path:"/"}:{serverId:"",name:e.slice(0,r),path:e.slice(r+2)||"/"}}function XCr(t,e=""){let r=String(e||"").trim();if(r&&Ou[r])return Ou[r];let n=String(t||"").trim();return n&&Ou[n]?Ou[n]:Object.values(Ou).find(s=>r&&s?.id===r||n&&s?.name===n)}function Jut(t){return String(t||"").split(",")[0].trim()}function qut(t){return Jut(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function ZCr(t){let e=String(t?.server?.address?.()?.url||"").trim(),n=qut(t?.headers?.["x-forwarded-host"])||qut(t?.headers?.host);if(!n)return e;let s=Jut(t?.headers?.["x-forwarded-proto"]),i=e.startsWith("https://")?"https":"http";return`${s||String(t?.protocol||"").trim()||i}://${n}`}function eIr(t,e,r=""){return Buffer.from(JSON.stringify({serverId:r,name:t,path:e}),"utf8").toString("base64url")}function tIr(t){let e=JSON.parse(Buffer.from(String(t||""),"base64url").toString("utf8"));return{serverId:String(e?.serverId||""),name:String(e?.name||""),path:String(e?.path||"/")}}function rIr(t){return String(t||"").toLowerCase().includes("115")}function nIr(t){let e=String(t?.provider||""),r=String(t?.raw_url||"");return JCr.has(e)||rIr(e)||r.includes("115cdn.net")}function sIr(t){return String(t||"/").replace(/^\/?/,"/").split("/").map((r,n)=>n===0?"":encodeURIComponent(r)).join("/")}function iIr(t,e,r){let n=new URL("/d"+sIr(e),t.server);return r&&n.searchParams.set("sign",r),n.toString()}function jut(t,e,r,n=""){let s=r.split("/").filter(Boolean).pop()||"video.bin",i=String(t?.server?.prefix||"").replace(/\/$/,"");return`${ZCr(t)}${i}/proxy/${eIr(e,r,n)}/${encodeURIComponent(s)}`}function aIr(t){let e={};for(let r of["range","if-range","if-none-match","if-modified-since"])t.headers?.[r]&&(e[r]=t.headers[r]);return e}function oIr(t,e,r){return{...aIr(r),...wE(t,e),"User-Agent":Kut,Referer:"https://www.alipan.com/"}}function cIr(){return{"User-Agent":Kut,Referer:"https://www.alipan.com/"}}function Xut(t){return t.id||t.server||t.name}async function AM(t,e=!1){let r=Xut(t);if(!e){if(RE[r])return RE[r];if(t.token)return t.token}let n=await gM({...t,token:e?"":t.token});return n&&(RE[r]=n),n}async function EM(t,e,r={},n=!0){let s=await AM(t),i=wE(t,s),a=await he.post(t.server+e,r,{headers:i,timeout:15e3}).catch(c=>c.response||{status:500,data:{}}),o=a.data||{};if(n&&Tce(a,o)&&t.username){let c=Xut(t);delete RE[c];let u=await AM(t,!0),d=(await he.post(t.server+e,r,{headers:wE(t,u),timeout:15e3}).catch(f=>f.response||{status:500,data:{}})).data||{};if(d.code!==200)throw new Error(d.message||"Alist API error");return d.data}if(o.code!==200)throw new Error(o.message||"Alist API error");return o.data}async function Zut(t,e,r=1){return EM(t,"/api/fs/list",{path:e,page:r,per_page:0,refresh:!1})}async function yM(t,e){return EM(t,"/api/fs/get",{path:e})}async function uIr(t,e,r,n={}){return he.request({url:t,method:r,headers:e,responseType:r==="HEAD"?"text":"stream",timeout:3e4,maxRedirects:n.maxRedirects??5,validateStatus:()=>!0})}async function elt(t,e,r,n,s){let i=iIr(t,e,r),a=await uIr(i,oIr(t,n,s),"GET",{maxRedirects:0});a.data?.destroy&&a.data.destroy();let o=a.headers?.location;return a.status>=300&&a.status<400&&o?new URL(o,i).toString():""}async function lIr(t,e){await Vw(t.server);let r;try{r=tIr(t.params?.id)}catch{return e.code(400),"bad proxy id"}let n=await _M(t.server,r);if(!n)return e.code(404),"drive not found";try{let s=await yM(n,r.path);if(!s?.raw_url)return e.code(404),"raw_url empty";if(s.sign){let i=await AM(n),a=await elt(n,r.path,s.sign,i,t);if(a)return e.redirect(302,a),""}return s.raw_url?(e.redirect(302,s.raw_url),""):(e.code(502),"proxy failed")}catch(s){return console.error("[alist-video] proxy failed:",s.message),e.code(502),s.message}}async function dIr(t,e,r="/"){return EM(t,"/api/fs/search",{parent:r,keywords:e,scope:0,page:1,per_page:100})}function fIr(t){let e=t.replace(/^\//,"").split("/");return e.length>1?"/"+e.slice(1).join("/"):"/"}function pIr(t={},e="Alist"){let r=String(t.name||"").trim();if(r)return r;try{return new URL(t.server).hostname||e}catch{return e}}function tlt(t={}){let e=String(t.server||"").replace(/\/$/,"");if(!e)return null;let r=pIr({...t,server:e});return{id:String(t.id||"").trim(),name:r,server:e,username:t.username||"",password:t.password||"",token:t.token||"",otpCode:t.otpCode||""}}function rlt(t){if(!t)return null;let e=t.id||t.name;return e?(Ou[e]=t,t):null}async function Oce(t){let e=await Gw(t);for(let r of Object.keys(Ou))delete Ou[r];for(let r of Object.keys(RE))delete RE[r];for(let r of e)rlt(tlt(r));return e}async function Vw(t){Object.keys(Ou).length===0&&await Oce(t)}async function zw(t,e){let r=String(e||"").trim();if(!r)return null;let n=await Gw(t),s=tlt(n.find(i=>i?.id===r));return rlt(s)}async function _M(t,e={}){let r=XCr(e.name,e.serverId);return r||(e.serverId?zw(t,e.serverId):null)}async function mIr(t,e){return await Oce(t.server),{}}async function hIr(t,e){if((await Oce(t.server)).length===0)return{class:[],filters:{}};let n=[];for(let s of Object.values(Ou))n.push({type_id:sm(s.name,"/",s.id),type_name:s.name});return{class:n,filters:{}}}async function gIr(t,e){let r=await zw(t.server,t.params?.serverId);return r?{class:[{type_id:sm(r.name,"/",r.id),type_name:r.name}],filters:{}}:{class:[],filters:{}}}async function nlt(t,e){await Vw(t.server);let r=t.body.id,n=Math.max(1,parseInt(t.body.page||1,10)),{serverId:s,name:i,path:a}=bM(r),o=await _M(t.server,{name:i,serverId:s});if(!o)return{page:n,pagecount:n,list:[]};let c=o.id||s;try{let u=await Zut(o,a,n),l=u.content||[],d=[];for(let h of l){let A=a.replace(/\/?$/,"/")+h.name;if(h.is_dir){let g=sm(o.name,A,c);d.push({vod_id:g,vod_name:h.name,vod_pic:h.thumb||Vut,vod_remarks:"",vod_tag:"folder",cate:{id:g,name:h.name}})}else xM(h.name)&&d.push({vod_id:sm(o.name,A,c),vod_name:h.name,vod_pic:h.thumb||zut,vod_remarks:Nce(h.size),vod_tag:"file"})}let f=u.total||d.length,p=u.per_page||f,m=p>0?Math.ceil(f/p):1;return{page:n,pagecount:m,list:d}}catch(u){return console.error("[alist-video] category failed:",u.message),{page:n,pagecount:n,list:[]}}}async function AIr(t,e){let r=String(t.params?.serverId||"").trim(),n=await zw(t.server,r);if(!n){let a=Math.max(1,parseInt(t.body?.page||1,10));return{page:a,pagecount:a,list:[]}}let s=String(t.body?.id||"").trim(),i=s?bM(s):{path:"/"};return t.body={...t.body||{},id:sm(n.name,i.path||"/",n.id)},nlt(t,e)}async function Hut(t,e,r=3,n=0){if(n>=r)return[];try{let i=(await EM(t,"/api/fs/list",{path:e,page:1,per_page:500,refresh:!1})).content||[],a=[],o=[],c=[];for(let u of i){let l=e.replace(/\/?$/,"/")+u.name;u.is_dir?c.push({name:u.name,path:l}):xM(u.name)?a.push({name:u.name,path:l,size:u.size}):Yut(u.name)&&o.push({name:u.name,path:l})}return{videos:a,subtitles:o,subfolders:c}}catch{return{videos:[],subtitles:[],subfolders:[]}}}async function Qut(t,e){await Vw(t.server);let r=Array.isArray(t.body?.id)?t.body.id:[t.body?.id],n=[];for(let s of r){if(!s)continue;let{serverId:i,name:a,path:o}=bM(s),c=await _M(t.server,{name:a,serverId:i});if(!c)continue;let u=c.id||i;try{let l=await yM(c,o),d=l.is_dir;if(!d&&xM(l.name)){n.push({vod_id:s,vod_name:l.name,vod_pic:l.thumb||"",vod_content:`\u5927\u5C0F: ${Nce(l.size)}`,vod_play_from:"Alist",vod_play_url:`${l.name}$${s}`});continue}if(d){let f=await Hut(c,o),p=[],m=[];f.videos.length>0&&(p.push("\u5F53\u524D\u76EE\u5F55"),m.push(f.videos.map(h=>`${h.name}$${sm(c.name,h.path,u)}`).join("#")));for(let h of f.subfolders){let A=await Hut(c,h.path);A.videos.length>0&&(p.push(h.name),m.push(A.videos.map(g=>`${g.name}$${sm(c.name,g.path,u)}`).join("#")))}p.length===0?n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:"\u8BE5\u76EE\u5F55\u4E0B\u6CA1\u6709\u89C6\u9891\u6587\u4EF6",vod_play_from:"",vod_play_url:""}):n.push({vod_id:s,vod_name:l.name||o.split("/").filter(Boolean).pop()||"Alist",vod_pic:l.thumb||"",vod_content:`\u5171 ${p.reduce((h,A,g)=>h+m[g].split("#").length,0)} \u4E2A\u89C6\u9891`,vod_play_from:p.join("$$$"),vod_play_url:m.join("$$$")})}}catch(l){console.error("[alist-video] detail failed:",s,l.message)}}return{list:n}}async function Gut(t,e){await Vw(t.server);let r=t.body?.id||"",{serverId:n,name:s,path:i}=bM(r),a=await _M(t.server,{name:s,serverId:n});if(!a)return{parse:0,url:"",header:{}};let o=a.id||n;try{let c=await yM(a,i),u=c.raw_url;if(!u)return{parse:0,url:"",header:{}};let l={parse:0,url:u,header:{}};if(c.provider==="AliyundriveOpen"||c.provider==="AliyundriveShare2Open")l.header={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36",Referer:"https://www.alipan.com/"};else if(nIr(c))if(l.header=cIr(),c.sign){let m=await AM(a),h=await elt(a,i,c.sign,m,t);h?l.url=h:l.url=jut(t,a.name,i,o)}else l.url=jut(t,a.name,i,o);let d=i.substring(0,i.lastIndexOf("/")+1),f=i.substring(i.lastIndexOf("/")+1),p=f.substring(0,f.lastIndexOf("."));try{let h=((await Zut(a,d)).content||[]).filter(A=>Yut(A.name)&&A.name.includes(p)).slice(0,3);if(h.length>0){let A=[];for(let g of h)try{let b=await yM(a,d+g.name);b.raw_url&&A.push(b.raw_url)}catch{}A.length>0&&(l.subt=A[0])}}catch{}return l}catch(c){return console.error("[alist-video] play failed:",c.message),{parse:0,url:"",header:{}}}}async function slt(t,e){let r=(t.body?.wd||"").trim(),n=Math.max(1,parseInt(t.body?.page||1,10));if(!r)return{page:n,pagecount:n,list:[]};let s=[];for(let i of e)try{let o=(await dIr(i,r)).content||[];for(let c of o)if(c.is_dir||xM(c.name)){let l=fIr(String(c.parent||"/")).replace(/\/?$/,"/")+c.name,d=sm(i.name,l,i.id);s.push({vod_id:d,vod_name:c.name,vod_pic:c.thumb||(c.is_dir?Vut:zut),vod_remarks:c.is_dir?"":Nce(c.size),...c.is_dir?{cate:{id:d,name:c.name}}:{}})}}catch{}return{page:n,pagecount:n,list:s}}async function yIr(t,e){return await Vw(t.server),slt(t,Object.values(Ou))}async function xIr(t,e){return await zw(t.server,t.params?.serverId),{}}async function bIr(t,e){let r=await zw(t.server,t.params?.serverId);return slt(t,r?[r]:[])}var ilt={meta:{key:"alist-video",name:"Alist",type:3,hidden:!0},api:async t=>{t.post("/init",mIr),t.post("/home",hIr),t.post("/category",nlt),t.post("/detail",Qut),t.post("/search",yIr),t.post("/play",Gut),t.get("/proxy/:id/:file",lIr),t.post("/server/:serverId/init",xIr),t.post("/server/:serverId/home",gIr),t.post("/server/:serverId/category",AIr),t.post("/server/:serverId/detail",Qut),t.post("/server/:serverId/search",bIr),t.post("/server/:serverId/play",Gut)}};var Kw=async t=>(await t.db.getObjectDefault("/sites",{}))?.list||t.config.sites.list,EIr=async(t,e)=>{await t.db.push("/sites/list",e)},_Ir=async t=>{await t.db.delete("/sites/list")};async function Pce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Kw(e.server)})}),t.put("/list",async(e,r)=>{await EIr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await _Ir(e.server),r.send({code:0})})}var alt="\u5185\u7F6E\u5F39\u5E55",SIr=9321;function ult(t){return String(t||"").split(",")[0].trim()}function olt(t){return ult(t).replace(/^\w+:\/\//,"").split("/")[0].trim()}function clt(t){let e=String(t||"").trim().toLowerCase().split(":")[0];return e==="localhost"||e==="127.0.0.1"||e==="0.0.0.0"||e==="::1"}function vIr(t,e=null){let r=String(t?.address?.()?.url||"").trim(),s=olt(e?.headers?.["x-forwarded-host"])||olt(e?.headers?.host),i=ult(e?.headers?.["x-forwarded-proto"]),a=r.startsWith("https://")?"https":"http",o=i||String(e?.protocol||"").trim()||a;if(s&&!clt(s))return`${o}://${s}`;let c=String(D0()||"").trim(),u=Number.parseInt(String(t?.address?.()?.port||""),10);return c&&!clt(c)?Number.isFinite(u)&&u>0?`${o}://${c}:${u}`:`${o}://${c}`:r}function llt(t,e,r=null){if(!e||typeof e!="object"||!Array.isArray(e.urls))return e;let n=vIr(t,r),s=iae(n,SIr),i=e.urls.map(a=>{if(!a||typeof a!="object")return a;let o=String(a.name||"").trim();return a.builtin===!0||o===alt?{...a,builtin:!0,name:o||alt,address:s}:a});return{...e,urls:i}}var SM=async(t,e=null)=>{let n=await t.db.getObjectDefault("/danmu")||t.config.danmu;return llt(t,n,e)},CIr=async(t,e,r=null)=>{await t.db.push("/danmu",llt(t,e,r))},IIr=async t=>{await t.db.delete("/danmu")},TIr=3,Dce=(t,e=TIr)=>{messageToDart({action:"toast",opt:{message:t,duration:e}})},wIr=t=>{try{let e=new URL(t);return e.searchParams.set("format","json"),e.toString()}catch{return null}},RIr=t=>Array.isArray(t?.comments)?t.comments.length:Array.isArray(t)?t.length:0;async function kce(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await SM(e.server,e)})}),t.put("/setting",async(e,r)=>{await CIr(e.server,e.body,e),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await IIr(e.server),r.send({code:0})}),t.post("/push",async(e,r)=>{let n=e.body||{},s=n.url,i=n.sourceName||"\u5F39\u5E55\u6E90",a=n.previewUrl||wIr(s);if(!s){r.code(400).send({code:1,message:"Missing push url"});return}a&&(async()=>{try{let o=await Ae.get(a,{timeout:1e4}),c=RIr(o.data);c>0?Dce(`\u901A\u8FC7 ${i} - \u89E3\u6790\u5230 ${c} \u6761\u5F39\u5E55`):Dce("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}catch(o){console.error("Manual danmu preview failed:",o),Dce("\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~")}})(),messageToDart({action:"danmuPush",opt:{url:s}}),r.send({code:0})}),t.get("/fe",(e,r)=>{r.type("text/html").send(` <!DOCTYPE html> <html> <head> @@ -10050,7 +10050,7 @@ t5lYKfpe8k83ZA== <script>${globalThis.danmuBundle}</script> </body> </html> - `)})}var Plt=Re(Jn(),1),klt=Re(vv(),1),nue=Re(rI(),1);var Dce=["\u7F8E\u5267","\u97E9\u5267","\u65E5\u5267","\u53F0\u5267","\u6E2F\u5267","\u6E2F\u53F0\u5267","\u56FD\u4EA7\u5267","\u5927\u9646\u5267","\u5185\u5730\u5267","\u6CF0\u5267","\u82F1\u5267","\u7F8E\u5267\u7248","\u82F1\u5267\u7248","\u65E5\u5267\u7248","\u97E9\u5267\u7248","\u53F0\u5267\u7248","\u6E2F\u5267\u7248","\u6CF0\u5267\u7248","\u5F71\u540E","\u5F71\u5E1D","\u56FD\u5267","\u5FAE\u77ED\u5267","\u77ED\u5267","\u7535\u5F71","\u5267\u96C6","\u7EFC\u827A","\u72AF\u7F6A","\u52A8\u6F2B","\u52A8\u753B","\u7EAA\u5F55\u7247","\u77ED\u7247","\u8FDE\u7EED\u5267","\u7CFB\u5217\u5267","\u7F51\u7EDC\u5267","\u7535\u89C6\u5267"],ICr=["\u5F71\u7247","\u7247\u5B50","\u7247\u82B1","\u7247\u6BB5","\u9884\u544A","\u9884\u544A\u7247","\u82B1\u7D6E","\u5E55\u540E","\u8BBF\u8C08","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","TV\u7248","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u56FD\u8BED\u7248","\u666E\u901A\u8BDD\u7248","\u7CA4\u8BED\u7248","\u95FD\u5357\u8BED\u7248","\u5BA2\u5BB6\u8BED\u7248","\u5434\u8BED\u7248","\u5DDD\u8BED\u7248","\u6E58\u8BED\u7248","\u8D63\u8BED\u7248","\u7CA4\u8BED\u914D\u97F3\u7248","\u56FD\u8BED\u914D\u97F3\u7248","\u666E\u901A\u8BDD\u914D\u97F3\u7248","\u65B9\u8A00\u7248","\u539F\u7248\u914D\u97F3","\u539F\u97F3\u7248","\u53F0\u8BED\u7248","\u7CA4\u8BED\u4E2D\u5B57\u7248","\u56FD\u8BED\u4E2D\u5B57\u7248","\u666E\u901A\u8BDD\u4E2D\u5B57\u7248","\u7CA4\u8BED\u539F\u58F0\u7248","\u56FD\u8BED\u539F\u58F0\u7248","\u666E\u901A\u8BDD\u539F\u58F0\u7248","\u7CA4\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u56FD\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u666E\u901A\u8BDD\u5185\u5D4C\u5B57\u5E55\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u91CD\u5236\u7248","\u4FEE\u590D\u7248","\u52A0\u957F\u7248","\u672A\u5220\u51CF\u7248","\u5B8C\u6574\u7248","\u5BFC\u6F14\u526A\u8F91\u7248","\u7EC8\u6781\u7248","\u7279\u522B\u7248","\u9650\u5B9A\u7248","\u6536\u85CF\u7248","\u8C6A\u534E\u7248","\u5178\u85CF\u7248","\u9AD8\u6E05\u7248","\u8D85\u6E05\u7248","\u6807\u6E05\u7248","HD\u7248","UHD\u7248","4K\u7248","\u84DD\u5149\u7248","DVD\u7248","BD\u7248","WEB\u7248","TVrip","BDrip","DVDrip","HDrip","WEB-DL","HDTV","DVDRip","BRRip","HDRip","BluRay","TS","TC","CAM","\u62A2\u5148\u7248","\u67AA\u7248","\u5077\u62CD\u7248","\u6CC4\u9732\u7248","\u62A2\u5148\u770B","\u6B63\u7247","\u6B63\u7247\u7247\u6BB5","\u6B63\u7247\u7CBE\u534E","\u82B1\u7D6E\u96C6\u9526","\u5E55\u540E\u82B1\u7D6E","\u5236\u4F5C\u7279\u8F91","\u8BBF\u8C08\u5F55","\u9996\u6620\u793C","\u7EA2\u6BEF\u79C0","\u8DEF\u6F14","\u53D1\u5E03\u4F1A","\u9884\u544A\u7247\u5408\u96C6","\u9884\u544A\u7247\u82B1\u7D6E","\u7247\u82B1\u9884\u544A","\u7CBE\u5F69\u7247\u6BB5","\u7CBE\u5F69\u96C6\u9526","\u7CBE\u9009\u7247\u6BB5","\u9AD8\u80FD\u7247\u6BB5","\u9AD8\u5149\u65F6\u523B","\u526A\u8F91\u7248","\u6DF7\u526A","MV","\u4E3B\u9898\u66F2","\u63D2\u66F2","\u7247\u5C3E\u66F2","\u914D\u4E50","\u539F\u58F0","OST","\u539F\u58F0\u5E26","\u539F\u58F0\u5927\u789F","\u97F3\u4E50\u96C6","\u97F3\u4E50\u4F1A","\u6F14\u5531","Live","Live\u7248","\u73B0\u573A\u7248","\u73B0\u573A\u5F55\u5236","\u821E\u53F0\u7248","\u821E\u53F0\u5267","\u8BDD\u5267","\u6B4C\u5267","\u821E\u5267","\u620F\u66F2","\u4EAC\u5267","\u8D8A\u5267","\u7CA4\u5267","\u8BC4\u5267","\u9EC4\u6885\u620F","\u4E8C\u4EBA\u8F6C","\u76F8\u58F0","\u5C0F\u54C1","\u7EFC\u827A\u79C0","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0","\u8BBF\u8C08\u8282\u76EE","\u7EAA\u5F55\u7247\u7CFB\u5217","\u4E13\u9898\u7247","\u79D1\u6559\u7247","\u52A8\u753B\u7247","\u52A8\u6F2B\u7247","\u52A8\u753B\u77ED\u7247","\u52A8\u753B\u7535\u5F71","\u52A8\u753B\u7CFB\u5217","\u52A8\u753B\u5267\u96C6","\u52A8\u753B\u8FDE\u7EED\u5267","\u52A8\u753BOVA","\u52A8\u753BOAD","\u52A8\u753BSP","\u52A8\u753B\u7279\u5178","\u52A8\u753B\u5408\u96C6","\u52A8\u753B\u7CBE\u9009","\u7535\u5F71\u5408\u96C6","\u5F71\u7247\u5408\u96C6","\u7CFB\u5217\u5408\u96C6","\u5408\u96C6\u7248","\u5957\u88C5\u7248","\u5957\u88C5\u5408\u96C6","\u5168\u96C6","\u5168\u7CFB\u5217","\u5168\u5B63","\u7B2C\u4E00\u5B63","\u7B2C\u4E8C\u5B63","\u7B2C\u4E09\u5B63","\u7B2C\u56DB\u5B63","\u7B2C\u4E94\u5B63","\u7B2C\u516D\u5B63","\u7B2C\u4E03\u5B63","\u7B2C\u516B\u5B63","\u7B2C\u4E5D\u5B63","\u7B2C\u5341\u5B63","\u66F4\u65B0\u4E2D","\u5B8C\u7ED3","\u5B8C\u7ED3\u7BC7","\u5B8C\u7ED3\u5B63","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u7EC8\u7BC7","\u5927\u7ED3\u5C40","\u5927\u7D50\u5C40","\u7279\u522B\u7BC7\u5B8C\u7ED3","\u756A\u5916\u5B8C\u7ED3","OVA\u5B8C\u7ED3","OAD\u5B8C\u7ED3","SP\u5B8C\u7ED3","\u5168\u5267\u7EC8","\u5B8C\u7ED3\u6492\u82B1","\u5B8C\u7ED3\u7EAA\u5FF5","\u5B8C\u7ED3\u7279\u8F91","\u5B8C\u7ED3\u8BBF\u8C08","\u5B8C\u7ED3\u82B1\u7D6E","\u5B8C\u7ED3\u5408\u96C6","\u5B8C\u7ED3\u7BC7\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6","\u5B8C\u7ED3\u7279\u8F91\u5408\u96C6","\u5B8C\u7ED3\u8BBF\u8C08\u5408\u96C6","\u5B8C\u7ED3\u82B1\u7D6E\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91\u8BBF\u8C08\u82B1\u7D6E","BD","BDRIP","WEB-DL","HDRip","DVDRip","BDRip","BRRip","Rip","BluRay","IMAX","CAM","HD","HDR","UHD","4K","1080p","720p","2160p","480p","120fps","60fps","x264","x265","H264","HEVC","AAC","dts","ddp","truehd","10bit","8bit","5.1","7.1","\u56FD\u8BED","\u7CA4\u8BED","\u82F1\u8BED","\u65E5\u8BED","\u97E9\u8BED","\u6CF0\u8BED","\u6CD5\u8BED","\u5FB7\u8BED","\u897F\u73ED\u7259\u8BED","\u4FC4\u8BED","\u8461\u8404\u7259\u8BED","\u610F\u5927\u5229\u8BED","\u81FB\u5F69","\u4E2D\u5B57","\u7B80\u4E2D","\u7E41\u4E2D","\u7B80\u7E41\u4E2D\u5B57","\u4E2D\u82F1\u53CC\u5B57","\u5185\u5D4C","\u5185\u5C01","\u675C\u6BD4\u5168\u666F\u58F0","\u675C\u6BD4\u97F3\u6548","\u65E0\u6C34\u5370","\u5B8C\u6574\u7248","\u539F\u58F0\u7248","\u89E3\u8BF4\u7248","\u9884\u544A\u7247","\u672A\u5220\u51CF\u7248","\u52A0\u957F\u7248","\u84DD\u5149","\u62A2\u5148\u7248","TC\u7248","\u62A2\u5148","TC","\u4E24\u5B63\u5168","\u5168\u5B63","\u5168\u96C6","DV","\u538B\u5236","HQ","\u5E27","\u7535\u5F71\u7248","\u8C46\u74E3","\u66F4\u65B0","\u66F4\u65B0\u5230","\u63A8\u8350","\u52A8\u4F5C","\u5192\u9669","\u7231\u60C5","\u79D1\u5E7B","\u60AC\u7591","\u60CA\u609A","\u6050\u6016","\u559C\u5267","\u60B2\u5267","\u5267\u60C5","\u5947\u5E7B","\u72AF\u7F6A","\u6218\u4E89","\u5386\u53F2","\u4F20\u8BB0","\u97F3\u4E50","\u6B4C\u821E","\u5BB6\u5EAD","\u513F\u7AE5","\u4F53\u80B2","\u707E\u96BE","\u4F26\u7406","\u77ED\u7247","\u5FAE\u7535\u5F71","\u9AD8\u6E05","\u8D85\u6E05","\u6807\u6E05","\u62A2\u9C9C\u770B","\u9996\u64AD","\u72EC\u64AD","\u70ED\u64AD","\u8FDE\u8F7D\u4E2D","\u6700\u65B0","\u7ECF\u5178","\u70ED\u95E8","\u83B7\u5956","\u53E3\u7891","\u597D\u8BC4","\u9AD8\u5206","\u8C46\u74E3\u9AD8\u5206","IMDb\u9AD8\u5206","\u672A\u5206\u7EA7","\u9650\u5236\u7EA7","\u5BFC\u6F14\u526A\u8F91","\u52A0\u957F","\u7279\u522B\u52A0\u957F","\u7EC8\u6781\u526A\u8F91","\u6536\u85CF","\u8C6A\u534E","\u7EAA\u5FF5","\u9650\u5B9A","\u91CD\u6620","\u4FEE\u590D","\u6570\u7801\u4FEE\u590D","\u91CD\u5236","\u84DD\u5149\u4FEE\u590D","\u91CD\u5236\u9AD8\u6E05","\u9AD8\u6E05\u91CD\u5236","\u91CD\u7F16","\u91CD\u526A","\u914D\u97F3","\u8BD1\u5236","\u539F\u58F0","\u53CC\u8BED","\u591A\u8BED","\u591A\u58F0\u9053","\u73AF\u7ED5\u58F0","\u5168\u666F\u58F0","3D","VR","\u5168\u666F","360\u5EA6","8K","\u539F\u753B","\u65E0\u635F","\u6709\u635F","\u538B\u7F29","\u672A\u538B\u7F29","\u9AD8\u7801\u7387","\u4F4E\u7801\u7387","\u91CD\u7F16\u7801","\u591A\u5B57\u5E55","\u591A\u97F3\u8F68","\u53CC\u97F3\u8F68","\u591A\u7248\u672C","\u5408\u96C6","\u5957\u88C5","\u7CFB\u5217","\u5B8C\u7ED3\u7248","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u5927\u7ED3\u5C40","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u539F\u521B","\u884D\u751F","\u756A\u5916","\u7EED\u96C6","\u524D\u4F20","\u540E\u4F20","\u91CD\u542F","\u7FFB\u62CD","\u91CD\u62CD","\u81F4\u656C","\u7EAA\u5FF5","\u732E\u793C","\u8D3A\u5C81","\u6691\u671F\u6863","\u56FD\u5E86\u6863","\u8D3A\u5C81\u6863","\u6625\u8282\u6863","\u60C5\u4EBA\u8282\u6863","\u4E2D\u79CB\u6863","\u6863\u671F","\u4E0A\u6620","\u5B9A\u6863","\u9996\u6620","\u516C\u6620","\u4E0A\u6620\u65F6\u95F4","\u4E0A\u6620\u65E5\u671F","\u7968\u623F","\u7968\u623F\u51A0\u519B","\u7968\u623F\u699C","\u53E3\u7891\u699C","\u8BC4\u5206\u699C","\u6392\u884C\u699C","\u699C\u5355","\u699C\u5355\u7B2C\u4E00","\u70ED\u95E8\u699C","\u70ED\u641C","\u70ED\u8BAE","\u8BDD\u9898","\u70ED\u8BAE\u8BDD\u9898","\u70ED\u95E8\u8BDD\u9898","\u8BA8\u8BBA\u5EA6","\u5173\u6CE8\u5EA6","\u70ED\u5EA6","\u70ED\u5EA6\u699C","\u70ED\u95E8\u63A8\u8350","\u7CBE\u9009","\u529B\u8350","\u5F3A\u70C8\u63A8\u8350","\u5FC5\u770B","\u4E0D\u53EF\u9519\u8FC7","\u7ECF\u5178\u4E4B\u4F5C","\u795E\u4F5C","\u4F73\u4F5C","\u9AD8\u5206\u4F73\u4F5C","\u9AD8\u5206\u795E\u4F5C","\u70C2\u7247","\u5DEE\u8BC4","\u4F4E\u5206","\u53E3\u7891\u7206\u68DA","\u53E3\u7891\u6251\u8857","\u53E3\u7891\u4E24\u6781","\u53E3\u7891\u5206\u5316","\u4E89\u8BAE","\u70ED\u8BAE\u4E0D\u65AD","\u5907\u53D7\u5173\u6CE8","\u4E07\u4F17\u671F\u5F85","\u671F\u5F85\u5DF2\u4E45","\u4E07\u4F17\u77A9\u76EE","\u5E74\u5EA6\u6700\u4F73","\u5E74\u5EA6\u6700\u5DEE","\u5E74\u5EA6\u4E4B\u4F5C","\u5E74\u5EA6\u9ED1\u9A6C","\u5E74\u5EA6\u60CA\u559C","\u5E74\u5EA6\u5931\u671B","\u538B\u8F74\u4E4B\u4F5C","\u6536\u5B98\u4E4B\u4F5C","\u6536\u5B98","\u6536\u5B98\u5B63","\u6536\u5B98\u6218","\u5927\u7ED3\u5C40\u524D\u7BC7","\u5927\u7ED3\u5C40\u540E\u7BC7","\u6700\u7EC8\u56DE","\u6700\u7EC8\u8BDD","\u6700\u7EC8\u7AE0\u524D\u7BC7","\u6700\u7EC8\u7AE0\u540E\u7BC7"],CCr=[...Dce,...ICr],olt=new RegExp(CCr.join("|"),"ig"),TCr=new RegExp(Dce.join("|"),"ig");function sA(t){if(!t||!t.trim())return"";let e=t.trim();e=e.replace(/丨/g,""),e=e.replace(/-/g," "),e=e.replace(TCr,""),e=e.replace(/\s+/g," ").trim();let r=e.match(/^[\u4e00-\u9fa5]+\d+(?=:|\s|$)/);if(r)return r[0];let n=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa50-9]+\s*(?=\(\d{4}\))/);if(n)return n[0];let s=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa5 ,.,。、]+\s*(?=\(|【|\s+\d{4})/),i=s?s[0].trim():"",a=!1,o=e.match(/《(.+?)》/);if(o)e=o[1],a=!0;else{let l=new RegExp(`\u3010((?!${Dce.join("|")})[\u4E00-\u9FA5]{2,}[^/]+?)\u3011`,"i"),d=e.match(l);d&&(e=d[1],a=!0)}!a&&i&&(e=i);let c=[[/.*-/g,""],[/\b\d{4}\b/g,""],[/(?<!^)\[.*?\]|\{.*?\}|(.*?)|「.*?」/g," "],[/\b\d+(\.\d+)?[GMK]B?\b/gi,""],[olt,""],[/豆瓣\d+(\.\d+)?/g,""],[/\b\d+(?=fps|帧)/g,""],[/\b[a-zA-Z]\b/g,""],[/(?<![\u4e00-\u9fa5])\b\d+\b(?![\u4e00-\u9fa5])/g,""],[/[^a-zA-Z0-9\u4e00-\u9fa5 ]/g,""],[/\s+/g," "]];for(let l of c)e=e.replace(l[0],l[1]);e=e.trim(),e.includes(" ")&&(e=e.substring(0,e.indexOf(" "))),!a&&i&&(e=e.replace(/\s/g,""));let u=t.match(/([\u4e00-\u9fa5]{2,})\s*$/);if(u){let l=u[1];(e.length<2||/\d+集/.test(e))&&(e=l)}if(!e){let l=t.match(/\[(.*?)\]/);l&&(e=l[1].trim(),e=e.replace(olt,"").replace(/\d+/g,"").replace(/\s+/g," ").trim())}return e.trim()}function Bce(t){if(!t)return"";let e=t.match(/(?:^|[^a-zA-Z0-9])(S|Season)\s*(\d+)/i);if(e&&(e[1].toLowerCase()==="s"||e[1].toLowerCase()==="season"))return e[2].padStart(2,"0");let r=t.match(/第\s*([一二三四五六七八九十百千万亿\d]+)\s*å­£/);return r?Yf(r[1]).padStart(2,"0"):""}var clt={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},ult={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4,\u4EBF:1e8};function llt(t){if(!t)return-1;let e=0,r=0,n=0,s=!1;for(let i=0;i<t.length;i++){let a=t[i];if(clt.hasOwnProperty(a))n=clt[a];else if(ult.hasOwnProperty(a)){let o=ult[a];o===10?(n===0&&(n=1),r+=n*o,n=0):o===1e4||o===1e8?(r+=n,e+=r*o,r=0,n=0,s=!0):(r+=(n||1)*o,n=0)}else return-1}return s||(e+=r),e+=n,t.startsWith("\u5341")&&e<20&&(e=10+e%10),e}function Yf(t){return t&&t.replace(/([零一二三四五六七八九十百千万亿]+)|(\d+)/g,(e,r,n)=>{if(r){let s=llt(r);return s!==-1?String(s):e}else if(n)return String(parseInt(n,10));return e})}function wCr(t){let e=t;return e=e.replace(/[(()[\]【】{}]\s*([上中下])\s*[)()[\]【】{}]/g,"$1"),e=e.replace(/(\[|\{|\(|【).*?(\]|\}|)|】)/g," "),e=e.replace(/\d+\s*(fps|帧|frames?|hz|赫兹)/gi," "),e=e.replace(/\b(\d+(p|k|i)|4k|8k|uhd|hd|fhd|qhd|2160p|1440p|1080p|720p|480p|360p)\b/gi," "),e=e.replace(/\b(19|20)\d{2}\b/g," "),e=e.replace(/\b(?:dts|ddp|aac|ac3|eac3|truehd|atmos)\d+(?:\.\d+)?\b|\b\d+\.\d+\b/gi," "),e=e.replace(/\b(8bit|10bit|12bit)\b/gi," "),e=e.replace(/\b(hdr|hdr10|hdr10\+|dolby vision|dv|hlg)\b/gi," "),e=e.replace(/\b(x264|x265|h\.264|h\.265|h264|h265|hevc|mpeg4|av1|vp9)\b/gi," "),e=e.replace(/\b(web-dl|bluray|bdrip|hdrip|dvdrip|brrip|hdtv|dvdr|cam|ts|tc|r5|scr)\b/gi," "),e=e.replace(/\b(hq|sd|hd|fhd|uhd|imax|superbit|remux|extended|uncut|directors cut|dc|special edition|se)\b/gi," "),e=e.replace(/\b(é«˜ç |é«˜ç çŽ‡|é«˜ç ç‰ˆ|超清|高清|æ ‡æ¸…|æ— æ°´å°|完整版|æœªåˆ å‡|åŠ é•¿ç‰ˆ|导演剪辑版|特效字幕|内嵌字幕|双语字幕|中文字幕|英文字幕|繁体字幕|简体字幕|多音轨|杜比音效|全景声|hdr)\b/gi," "),e=e.replace(/[\-\_.,()]+/g," "),e.replace(/\s+/g," ").trim()}function RCr(t){let e=t.replace(/(\[|\{|\(|【).*?(\]|\}|)|】)/g," ");if(/s\d+e\d+/i.test(e))return"-1";let r=e.match(/[\u4e00-\u9fa5\-\_\.\s]+(0*\d{1,8})(?:[\-\_\.\s]|$)/);if(r){let n=r[1],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return Yf(n)}if(r=e.trim().match(/^0*\d{1,8}$/),r){let n=r[0],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return Yf(n)}return"-1"}function NCr(t){let e="\u671F|\u5B63",r="\u4E0A\u4E2D\u4E0B",n="\u96C6\u8A71\u8BDD",s=new RegExp(`(\u7B2C?)(0*(d{1,8}|[\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+))((?:${e})[${r}]?[\uFF08(]?[${r}]?[)\uFF09]?)`),i=t.match(s);if(i){let o=i[1],c=i[2],u=i[4].replace(/[(())]/g,"");return c=Yf(c),o+c+u}let a=Array.from(t.matchAll(/(?:s\d+.*?e|e)(\d{1,8})(?!\d)/gi));if(a.length>0)return Yf(a[a.length-1][1]);if(s=new RegExp(`\u7B2C([\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+)[${n}]`),i=t.match(s),i){let o=llt(i[1]);return o>0?String(o):"-1"}return s=new RegExp(`\u7B2C(d{1,8})[${n}]`),i=t.match(s),i||(i=t.match(/ep(\d{1,8})/i),i)||(s=new RegExp(`(d{1,8})[${n}]`),i=t.match(s),i)?Yf(i[1]):"-1"}function OCr(t){let e="a-zA-Z\xC0-\u017F",r=new RegExp(`(?<![${e}d])0*(\\d{1,8})(?![${e}d])`,"gu"),n=t.match(r);if(n)for(let s of n){let i=parseInt(s,10);if(!(i>=1900&&i<=2100))return Yf(s)}return"-1"}function Vw(t){if(!t)return"-1";let e=t,r=e.lastIndexOf(".");r>0&&(e=e.substring(0,r));let n=wCr(e),s=NCr(n);if(s!=="-1")return s;let i=RCr(e);return i!=="-1"?i:OCr(n)}var Lce=async t=>(await t.db.getObjectDefault("/t4",{}))?.list||t.config.t4?.list||[],PCr=async(t,e)=>{await t.db.push("/t4/list",e)},kCr=async t=>{await t.db.delete("/t4/list")};async function Mce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Lce(e.server)})}),t.put("/list",async(e,r)=>{await PCr(e.server,e.body),r.send({code:0})}),t.delete("/list",async(e,r)=>{await kCr(e.server),r.send({code:0})})}function Wce(t,e){let r=Ae.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{filter:!0}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){try{let{data:l}=await r.get("",{params:{play:u.body.id,flag:u.body.flag}});return!l.url&&!l.urls&&u.body.id.startsWith("http")?{url:u.body.id}:l}catch(l){console.warn(l)}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,t4:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var DCr=["/api.php/provide/vod/","/api.php/provide/vod","/api.php/app/","/api.php/app"],SM="\u300C\u91C7\u300D",BCr=[{name:`${SM}\u7535\u5F71\u5929\u5802`,address:"http://dyttzyw.com/api.php/provide/vod/"}];function Fce(t,e="https"){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:`${e}://${r}`:""}function Uce(t){try{return new URL(t)}catch{return null}}function LCr(t=""){let e=String(t||"").toLowerCase();return e==="localhost"||e.includes(".")||e.includes(":")||/^\d{1,3}(?:\.\d{1,3}){3}$/.test(e)}function MCr(t){for(let e of["ac","wd","t","pg","ids","quick"])t.searchParams.delete(e);return t.hash="",t}function flt(t){let e=String(t||"").trim(),r=/^https?:\/\//i.test(e),n=Uce(Fce(e));return!n||!["http:","https:"].includes(n.protocol)||!r&&!LCr(n.hostname)?"":(MCr(n),n.toString())}function WCr(t={},e=""){let r=String(t.name||t.title||e||"").trim();return r||Uce(Fce(t.address||t.api||t.url||""))?.hostname||"CMS"}function $Cr(t){let e=String(t||"").trim();return e?e.startsWith(SM)?e:`${SM}${e}`:`${SM}CMS`}function qce(t,e=""){if(!t||typeof t!="object")return null;let r=String(t.address||t.api||t.url||"").trim(),n=flt(r);return n?{name:$Cr(WCr({...t,address:n},e)),address:n}:null}function plt(t){if(typeof t=="string")try{return plt(JSON.parse(t))}catch{return[]}return Array.isArray(t)?t:!t||typeof t!="object"?[]:Array.isArray(t.sites)?t.sites:Array.isArray(t.list)?t.list:t.api_site&&typeof t.api_site=="object"?Object.entries(t.api_site).map(([e,r])=>({...r,key:e})):[]}function FCr(t){let e=new Set;return plt(t).map(r=>qce(r,r?.key)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}function UCr(t){let e=String(t||"").trim(),r=[],n=s=>{let i=flt(s);i&&!r.includes(i)&&r.push(i)};for(let s of["https","http"]){let i=Uce(Fce(e,s));if(!i)continue;if(n(i.toString()),!i.pathname||i.pathname==="/")for(let o of DCr)n(`${i.origin}${o}`)}return r}async function dlt(t,e=void 0){let r=await he.get(t,{params:e,timeout:1e4,validateStatus:n=>n>=200&&n<400});if(typeof r.data=="string")try{return JSON.parse(r.data)}catch{return r.data}return r.data}function qCr(t){return!!t&&typeof t=="object"&&Array.isArray(t.class)}async function jCr(t,e=""){let r=String(t||"").trim();if(!r)throw new Error("\u8BF7\u8F93\u5165 CMS \u5730\u5740");let n=UCr(r);for(let s of n)try{let i=await dlt(s),a=FCr(i);if(a.length>0)return{type:"config",sources:a}}catch{}for(let s of n)try{let i=await dlt(s,{ac:"class"});if(qCr(i))return{type:"cms",sources:[qce({name:e,address:s})].filter(Boolean)}}catch{}throw new Error("\u672A\u8BC6\u522B\u5230\u53EF\u7528\u7684 CMS \u6E90")}function $ce(t=[]){let e=new Set;return(Array.isArray(t)?t:[]).map(r=>qce(r)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}var jce=async t=>{let e=await t.db.getObjectDefault("/cms",{});if(e&&Object.prototype.hasOwnProperty.call(e,"list"))return $ce(e.list);let r=Array.isArray(t.config.cms?.list)?t.config.cms.list:[];return $ce(r.length>0?r:BCr)},HCr=async(t,e)=>{await t.db.push("/cms/list",$ce(e))},QCr=async t=>{await t.db.delete("/cms/list")};async function Hce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await jce(e.server)})}),t.put("/list",async(e,r)=>{await HCr(e.server,e.body),r.send({code:0})}),t.post("/resolve",async(e,r)=>{try{r.send({code:0,data:await jCr(e.body?.url,e.body?.name)})}catch(n){r.send({code:-1,message:n.message||"CMS \u89E3\u6790\u5931\u8D25"})}}),t.delete("/list",async(e,r)=>{await QCr(e.server),r.send({code:0})})}var GCr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,Qce="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0 Safari/537.36";function KCr(t=""){return/^https?:\/\//i.test(String(t||"").trim())}function VCr(t=""){return GCr.test(String(t||"").trim())}function zCr(t="",e=""){try{return new URL(String(t||"").trim(),e).toString()}catch{return String(t||"").trim()}}function YCr(t=""){let e=[/["']([^"']+\.m3u8(?:\?[^"']*)?)["']/i,/(https?:\/\/[^\s"'<>]+\.m3u8(?:\?[^\s"'<>]*)?)/i];for(let r of e){let n=r.exec(String(t||""));if(n?.[1])return n[1].replace(/\\\//g,"/")}return""}function Gce(t,e){let r=he.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{ac:"class"}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){let l=String(u.body.id||"").trim();if(!l)return{url:""};if(!KCr(l)||VCr(l))return{parse:0,url:l};try{let{data:d}=await he.get(l,{timeout:1e4,headers:{"User-Agent":Qce,Referer:l}}),f=YCr(d);if(f)return{parse:0,url:zCr(f,l),header:{Referer:l,"User-Agent":Qce}}}catch(d){console.warn(d)}return{parse:1,url:l,header:{Referer:l,"User-Agent":Qce}}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,cms:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var iA={HOME:0,CATEGORY:0,SEARCH:0,DETAIL:12e4,PLAY:3e4,SPIDERS:0},Kce=class{constructor(e=800){this.max=Math.max(100,Number(e)||800),this.data=new Map,this.pending=new Map}get(e){if(!this.data.has(e))return;let r=this.data.get(e);if(r.expireAt>0&&r.expireAt<=Date.now()){this.data.delete(e);return}return this.data.delete(e),this.data.set(e,r),r.value}set(e,r,n=0){let s=n>0?Date.now()+n:0;return this.data.has(e)&&this.data.delete(e),this.data.set(e,{value:r,expireAt:s}),this.compact(),r}delete(e){this.pending.delete(e),this.data.delete(e)}clear(){this.pending.clear(),this.data.clear()}compact(){for(;this.data.size>this.max;){let e=this.data.keys().next().value;this.data.delete(e)}}async wrap(e,r,n){let s=this.get(e);if(s!==void 0)return s;if(this.pending.has(e))return this.pending.get(e);let i=(async()=>{try{let a=await n();return a!==void 0&&this.set(e,a,r),a}finally{this.pending.delete(e)}})();return this.pending.set(e,i),i}};function vM(t={}){return new Kce(t.max||800)}async function Jf(t,e,r,n){return!t||typeof t.wrap!="function"||Number(r)<=0?n():t.wrap(e,r,n)}function im(t=[]){return t.map(e=>String(e)).join(":")}function JCr(t){let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{apiBase:e,spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2])}:null}function Vce(t){return String(t||"").split(",")[0].trim()}function IM(t=null){let r=Vce(t?.headers?.["x-forwarded-host"])||Vce(t?.headers?.host);if(!r)return{headers:void 0,cacheVary:"-"};let s=Vce(t?.headers?.["x-forwarded-proto"])||String(t?.protocol||"http").trim()||"http";return{headers:{host:r,"x-forwarded-host":r,"x-forwarded-proto":s},cacheVary:`${s}://${r}`}}function XCr(t=[],e=[]){let r={};if(t.forEach(i=>{r[i.key]=i}),!Array.isArray(e)||!e.length)return t;let n={},s=[];return e.forEach(i=>{n[i.key]=!0;let a=r[i.key];if(!a||!i.enable)return;let o=typeof i.name=="string"?i.name.trim():"";s.push({...a,name:o||a.name})}),t.forEach(i=>{n[i.key]||s.push(i)}),s}async function Jl(t){let e=t.embyContext?.cache;return Jf(e,"emby:enabled-video-spiders:v2",iA.SPIDERS,async()=>{let r=await t.inject({method:"GET",url:"/full-config"});if(r.statusCode>=400)return[];let n=r.json(),s=Array.isArray(n?.video?.sites)?n.video.sites:[],i=await Kw(t).catch(()=>[]),a=XCr(s,i),o={},c=[];return a.forEach(u=>{let l=JCr(u.api);if(!l||l.spiderType!==3)return;let d=`${u.key}:${l.apiBase}`;o[d]||(o[d]=!0,c.push({siteKey:u.key,siteName:u.name||l.spiderKey,spiderKey:l.spiderKey,spiderType:l.spiderType,apiBase:l.apiBase,api:u.api}))}),c})}function aA(t=[],e,r=null,n=""){let s=r===null?null:Number(r),i=String(n||"").trim();return t.find(a=>a.spiderKey!==e?!1:s===null?!0:i&&a.apiBase!==i?!1:Number(a.spiderType)===s)||null}async function oA(t,e,r,n,s={},i={}){let a=i?.headers&&typeof i.headers=="object"?i.headers:void 0,o=String(i?.apiBase||"").trim()||`/spider/${encodeURIComponent(e)}/${r}`,c=await t.inject({method:"POST",url:`${o.replace(/\/+$/,"")}/${n}`,payload:s,headers:a});if(c.statusCode>=400)throw new Error(`Spider call failed: ${e}/${r}/${n} ${c.statusCode}`);let u=t.embyContext?.config?.requestLog;try{let l=c.json();if(u&&(n==="detail"||n==="play")){if(n==="detail"){let d=Array.isArray(l?.list)&&l.list.length>0?l.list[0]:null,f=String(d?.vod_play_from||""),p=String(d?.vod_play_url||""),m=f?f.split("$$$").filter(Boolean).length:0,h=p?p.split("$$$").map(A=>String(A||"").split("#").filter(Boolean).length):[];console.log("[Emby Spider] detail:",JSON.stringify({spiderKey:e,spiderType:r,request:{id:String(s?.id||"")},response:{listCount:Array.isArray(l?.list)?l.list.length:0,vodId:String(d?.vod_id||""),vodName:String(d?.vod_name||""),vodRemarks:String(d?.vod_remarks||""),lineCount:m,episodeCountPerLine:h.slice(0,10)}}))}else if(n==="play"){let d=l?.header&&typeof l.header=="object"?Object.keys(l.header):[];console.log("[Emby Spider] play:",JSON.stringify({spiderKey:e,spiderType:r,request:{flag:String(s?.flag||""),idPreview:String(s?.id||"").slice(0,80)},response:{parse:Number(l?.parse||0),hasUrl:!!l?.url,urlPreview:String(l?.url||"").slice(0,120),headerKeys:d}}))}}return l}catch{return{}}}async function zw(t,e,r=null){let n=t.embyContext?.cache,s=IM(r),i=im(["emby","home",e.spiderKey,e.spiderType,e.apiBase||"",s.cacheVary]);return Jf(n,i,iA.HOME,()=>oA(t,e.spiderKey,e.spiderType,"home",{},{headers:s.headers,apiBase:e.apiBase}))}async function RE(t,e,r,n=1,s={},i=null){let a=t.embyContext?.cache,o=IM(i),c=im(["emby","category",e.spiderKey,e.spiderType,e.apiBase||"",r,n,JSON.stringify(s||{}),o.cacheVary]);return Jf(a,c,iA.CATEGORY,()=>oA(t,e.spiderKey,e.spiderType,"category",{id:r,page:n,filter:!0,filters:s||{}},{headers:o.headers,apiBase:e.apiBase}))}async function Pc(t,e,r,n=null){let s=t.embyContext?.cache,i=IM(n),a=im(["emby","detail",e.spiderKey,e.spiderType,e.apiBase||"",r,i.cacheVary]);return Jf(s,a,iA.DETAIL,()=>oA(t,e.spiderKey,e.spiderType,"detail",{id:r},{headers:i.headers,apiBase:e.apiBase}))}async function mlt(t,e,r,n=1){let s=t.embyContext?.cache,i=im(["emby","search",e.spiderKey,e.spiderType,e.apiBase||"",r,n]);return Jf(s,i,iA.SEARCH,()=>oA(t,e.spiderKey,e.spiderType,"search",{wd:r,page:n},{apiBase:e.apiBase}))}async function am(t,e,r,n,s=null){let i=t.embyContext?.cache,a=IM(s),o=im(["emby","play",e.spiderKey,e.spiderType,e.apiBase||"",r,n,a.cacheVary]);return Jf(i,o,iA.PLAY,()=>oA(t,e.spiderKey,e.spiderType,"play",{flag:r,id:n},{headers:a.headers,apiBase:e.apiBase}))}function kc(t){return!t||!Array.isArray(t.list)||!t.list.length?null:t.list[0]}function Xl(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}var zce=Re(require("node:fs"),1),Yw=Re(require("node:path"),1),ZCr=()=>{try{return`const appConfig = {\r + `)})}var Blt=Re(Jn(),1),Mlt=Re(Cv(),1),sue=Re(nC(),1);var Lce=["\u7F8E\u5267","\u97E9\u5267","\u65E5\u5267","\u53F0\u5267","\u6E2F\u5267","\u6E2F\u53F0\u5267","\u56FD\u4EA7\u5267","\u5927\u9646\u5267","\u5185\u5730\u5267","\u6CF0\u5267","\u82F1\u5267","\u7F8E\u5267\u7248","\u82F1\u5267\u7248","\u65E5\u5267\u7248","\u97E9\u5267\u7248","\u53F0\u5267\u7248","\u6E2F\u5267\u7248","\u6CF0\u5267\u7248","\u5F71\u540E","\u5F71\u5E1D","\u56FD\u5267","\u5FAE\u77ED\u5267","\u77ED\u5267","\u7535\u5F71","\u5267\u96C6","\u7EFC\u827A","\u72AF\u7F6A","\u52A8\u6F2B","\u52A8\u753B","\u7EAA\u5F55\u7247","\u77ED\u7247","\u8FDE\u7EED\u5267","\u7CFB\u5217\u5267","\u7F51\u7EDC\u5267","\u7535\u89C6\u5267"],NIr=["\u5F71\u7247","\u7247\u5B50","\u7247\u82B1","\u7247\u6BB5","\u9884\u544A","\u9884\u544A\u7247","\u82B1\u7D6E","\u5E55\u540E","\u8BBF\u8C08","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","TV\u7248","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u56FD\u8BED\u7248","\u666E\u901A\u8BDD\u7248","\u7CA4\u8BED\u7248","\u95FD\u5357\u8BED\u7248","\u5BA2\u5BB6\u8BED\u7248","\u5434\u8BED\u7248","\u5DDD\u8BED\u7248","\u6E58\u8BED\u7248","\u8D63\u8BED\u7248","\u7CA4\u8BED\u914D\u97F3\u7248","\u56FD\u8BED\u914D\u97F3\u7248","\u666E\u901A\u8BDD\u914D\u97F3\u7248","\u65B9\u8A00\u7248","\u539F\u7248\u914D\u97F3","\u539F\u97F3\u7248","\u53F0\u8BED\u7248","\u7CA4\u8BED\u4E2D\u5B57\u7248","\u56FD\u8BED\u4E2D\u5B57\u7248","\u666E\u901A\u8BDD\u4E2D\u5B57\u7248","\u7CA4\u8BED\u539F\u58F0\u7248","\u56FD\u8BED\u539F\u58F0\u7248","\u666E\u901A\u8BDD\u539F\u58F0\u7248","\u7CA4\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u56FD\u8BED\u5185\u5D4C\u5B57\u5E55\u7248","\u666E\u901A\u8BDD\u5185\u5D4C\u5B57\u5E55\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u91CD\u5236\u7248","\u4FEE\u590D\u7248","\u52A0\u957F\u7248","\u672A\u5220\u51CF\u7248","\u5B8C\u6574\u7248","\u5BFC\u6F14\u526A\u8F91\u7248","\u7EC8\u6781\u7248","\u7279\u522B\u7248","\u9650\u5B9A\u7248","\u6536\u85CF\u7248","\u8C6A\u534E\u7248","\u5178\u85CF\u7248","\u9AD8\u6E05\u7248","\u8D85\u6E05\u7248","\u6807\u6E05\u7248","HD\u7248","UHD\u7248","4K\u7248","\u84DD\u5149\u7248","DVD\u7248","BD\u7248","WEB\u7248","TVrip","BDrip","DVDrip","HDrip","WEB-DL","HDTV","DVDRip","BRRip","HDRip","BluRay","TS","TC","CAM","\u62A2\u5148\u7248","\u67AA\u7248","\u5077\u62CD\u7248","\u6CC4\u9732\u7248","\u62A2\u5148\u770B","\u6B63\u7247","\u6B63\u7247\u7247\u6BB5","\u6B63\u7247\u7CBE\u534E","\u82B1\u7D6E\u96C6\u9526","\u5E55\u540E\u82B1\u7D6E","\u5236\u4F5C\u7279\u8F91","\u8BBF\u8C08\u5F55","\u9996\u6620\u793C","\u7EA2\u6BEF\u79C0","\u8DEF\u6F14","\u53D1\u5E03\u4F1A","\u9884\u544A\u7247\u5408\u96C6","\u9884\u544A\u7247\u82B1\u7D6E","\u7247\u82B1\u9884\u544A","\u7CBE\u5F69\u7247\u6BB5","\u7CBE\u5F69\u96C6\u9526","\u7CBE\u9009\u7247\u6BB5","\u9AD8\u80FD\u7247\u6BB5","\u9AD8\u5149\u65F6\u523B","\u526A\u8F91\u7248","\u6DF7\u526A","MV","\u4E3B\u9898\u66F2","\u63D2\u66F2","\u7247\u5C3E\u66F2","\u914D\u4E50","\u539F\u58F0","OST","\u539F\u58F0\u5E26","\u539F\u58F0\u5927\u789F","\u97F3\u4E50\u96C6","\u97F3\u4E50\u4F1A","\u6F14\u5531","Live","Live\u7248","\u73B0\u573A\u7248","\u73B0\u573A\u5F55\u5236","\u821E\u53F0\u7248","\u821E\u53F0\u5267","\u8BDD\u5267","\u6B4C\u5267","\u821E\u5267","\u620F\u66F2","\u4EAC\u5267","\u8D8A\u5267","\u7CA4\u5267","\u8BC4\u5267","\u9EC4\u6885\u620F","\u4E8C\u4EBA\u8F6C","\u76F8\u58F0","\u5C0F\u54C1","\u7EFC\u827A\u79C0","\u771F\u4EBA\u79C0","\u8131\u53E3\u79C0","\u8BBF\u8C08\u8282\u76EE","\u7EAA\u5F55\u7247\u7CFB\u5217","\u4E13\u9898\u7247","\u79D1\u6559\u7247","\u52A8\u753B\u7247","\u52A8\u6F2B\u7247","\u52A8\u753B\u77ED\u7247","\u52A8\u753B\u7535\u5F71","\u52A8\u753B\u7CFB\u5217","\u52A8\u753B\u5267\u96C6","\u52A8\u753B\u8FDE\u7EED\u5267","\u52A8\u753BOVA","\u52A8\u753BOAD","\u52A8\u753BSP","\u52A8\u753B\u7279\u5178","\u52A8\u753B\u5408\u96C6","\u52A8\u753B\u7CBE\u9009","\u7535\u5F71\u5408\u96C6","\u5F71\u7247\u5408\u96C6","\u7CFB\u5217\u5408\u96C6","\u5408\u96C6\u7248","\u5957\u88C5\u7248","\u5957\u88C5\u5408\u96C6","\u5168\u96C6","\u5168\u7CFB\u5217","\u5168\u5B63","\u7B2C\u4E00\u5B63","\u7B2C\u4E8C\u5B63","\u7B2C\u4E09\u5B63","\u7B2C\u56DB\u5B63","\u7B2C\u4E94\u5B63","\u7B2C\u516D\u5B63","\u7B2C\u4E03\u5B63","\u7B2C\u516B\u5B63","\u7B2C\u4E5D\u5B63","\u7B2C\u5341\u5B63","\u66F4\u65B0\u4E2D","\u5B8C\u7ED3","\u5B8C\u7ED3\u7BC7","\u5B8C\u7ED3\u5B63","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u7EC8\u7BC7","\u5927\u7ED3\u5C40","\u5927\u7D50\u5C40","\u7279\u522B\u7BC7\u5B8C\u7ED3","\u756A\u5916\u5B8C\u7ED3","OVA\u5B8C\u7ED3","OAD\u5B8C\u7ED3","SP\u5B8C\u7ED3","\u5168\u5267\u7EC8","\u5B8C\u7ED3\u6492\u82B1","\u5B8C\u7ED3\u7EAA\u5FF5","\u5B8C\u7ED3\u7279\u8F91","\u5B8C\u7ED3\u8BBF\u8C08","\u5B8C\u7ED3\u82B1\u7D6E","\u5B8C\u7ED3\u5408\u96C6","\u5B8C\u7ED3\u7BC7\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6","\u5B8C\u7ED3\u7279\u8F91\u5408\u96C6","\u5B8C\u7ED3\u8BBF\u8C08\u5408\u96C6","\u5B8C\u7ED3\u82B1\u7D6E\u5408\u96C6","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u8BBF\u8C08","\u5B8C\u7ED3\u7EAA\u5FF5\u7279\u8F91\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u8BBF\u8C08\u82B1\u7D6E","\u5B8C\u7ED3\u7EAA\u5FF5\u5408\u96C6\u7279\u8F91\u8BBF\u8C08\u82B1\u7D6E","BD","BDRIP","WEB-DL","HDRip","DVDRip","BDRip","BRRip","Rip","BluRay","IMAX","CAM","HD","HDR","UHD","4K","1080p","720p","2160p","480p","120fps","60fps","x264","x265","H264","HEVC","AAC","dts","ddp","truehd","10bit","8bit","5.1","7.1","\u56FD\u8BED","\u7CA4\u8BED","\u82F1\u8BED","\u65E5\u8BED","\u97E9\u8BED","\u6CF0\u8BED","\u6CD5\u8BED","\u5FB7\u8BED","\u897F\u73ED\u7259\u8BED","\u4FC4\u8BED","\u8461\u8404\u7259\u8BED","\u610F\u5927\u5229\u8BED","\u81FB\u5F69","\u4E2D\u5B57","\u7B80\u4E2D","\u7E41\u4E2D","\u7B80\u7E41\u4E2D\u5B57","\u4E2D\u82F1\u53CC\u5B57","\u5185\u5D4C","\u5185\u5C01","\u675C\u6BD4\u5168\u666F\u58F0","\u675C\u6BD4\u97F3\u6548","\u65E0\u6C34\u5370","\u5B8C\u6574\u7248","\u539F\u58F0\u7248","\u89E3\u8BF4\u7248","\u9884\u544A\u7247","\u672A\u5220\u51CF\u7248","\u52A0\u957F\u7248","\u84DD\u5149","\u62A2\u5148\u7248","TC\u7248","\u62A2\u5148","TC","\u4E24\u5B63\u5168","\u5168\u5B63","\u5168\u96C6","DV","\u538B\u5236","HQ","\u5E27","\u7535\u5F71\u7248","\u8C46\u74E3","\u66F4\u65B0","\u66F4\u65B0\u5230","\u63A8\u8350","\u52A8\u4F5C","\u5192\u9669","\u7231\u60C5","\u79D1\u5E7B","\u60AC\u7591","\u60CA\u609A","\u6050\u6016","\u559C\u5267","\u60B2\u5267","\u5267\u60C5","\u5947\u5E7B","\u72AF\u7F6A","\u6218\u4E89","\u5386\u53F2","\u4F20\u8BB0","\u97F3\u4E50","\u6B4C\u821E","\u5BB6\u5EAD","\u513F\u7AE5","\u4F53\u80B2","\u707E\u96BE","\u4F26\u7406","\u77ED\u7247","\u5FAE\u7535\u5F71","\u9AD8\u6E05","\u8D85\u6E05","\u6807\u6E05","\u62A2\u9C9C\u770B","\u9996\u64AD","\u72EC\u64AD","\u70ED\u64AD","\u8FDE\u8F7D\u4E2D","\u6700\u65B0","\u7ECF\u5178","\u70ED\u95E8","\u83B7\u5956","\u53E3\u7891","\u597D\u8BC4","\u9AD8\u5206","\u8C46\u74E3\u9AD8\u5206","IMDb\u9AD8\u5206","\u672A\u5206\u7EA7","\u9650\u5236\u7EA7","\u5BFC\u6F14\u526A\u8F91","\u52A0\u957F","\u7279\u522B\u52A0\u957F","\u7EC8\u6781\u526A\u8F91","\u6536\u85CF","\u8C6A\u534E","\u7EAA\u5FF5","\u9650\u5B9A","\u91CD\u6620","\u4FEE\u590D","\u6570\u7801\u4FEE\u590D","\u91CD\u5236","\u84DD\u5149\u4FEE\u590D","\u91CD\u5236\u9AD8\u6E05","\u9AD8\u6E05\u91CD\u5236","\u91CD\u7F16","\u91CD\u526A","\u914D\u97F3","\u8BD1\u5236","\u539F\u58F0","\u53CC\u8BED","\u591A\u8BED","\u591A\u58F0\u9053","\u73AF\u7ED5\u58F0","\u5168\u666F\u58F0","3D","VR","\u5168\u666F","360\u5EA6","8K","\u539F\u753B","\u65E0\u635F","\u6709\u635F","\u538B\u7F29","\u672A\u538B\u7F29","\u9AD8\u7801\u7387","\u4F4E\u7801\u7387","\u91CD\u7F16\u7801","\u591A\u5B57\u5E55","\u591A\u97F3\u8F68","\u53CC\u97F3\u8F68","\u591A\u7248\u672C","\u5408\u96C6","\u5957\u88C5","\u7CFB\u5217","\u5B8C\u7ED3\u7248","\u6700\u7EC8\u5B63","\u6700\u7EC8\u7AE0","\u7EC8\u7AE0","\u5927\u7ED3\u5C40","\u7279\u522B\u7BC7","\u756A\u5916\u7BC7","OVA","OAD","SP","\u5267\u573A\u7248","\u7535\u5F71\u7248","\u5F71\u7248","\u5267\u7248","\u52A8\u753B\u7248","\u771F\u4EBA\u7248","\u6539\u7F16\u7248","\u539F\u521B","\u884D\u751F","\u756A\u5916","\u7EED\u96C6","\u524D\u4F20","\u540E\u4F20","\u91CD\u542F","\u7FFB\u62CD","\u91CD\u62CD","\u81F4\u656C","\u7EAA\u5FF5","\u732E\u793C","\u8D3A\u5C81","\u6691\u671F\u6863","\u56FD\u5E86\u6863","\u8D3A\u5C81\u6863","\u6625\u8282\u6863","\u60C5\u4EBA\u8282\u6863","\u4E2D\u79CB\u6863","\u6863\u671F","\u4E0A\u6620","\u5B9A\u6863","\u9996\u6620","\u516C\u6620","\u4E0A\u6620\u65F6\u95F4","\u4E0A\u6620\u65E5\u671F","\u7968\u623F","\u7968\u623F\u51A0\u519B","\u7968\u623F\u699C","\u53E3\u7891\u699C","\u8BC4\u5206\u699C","\u6392\u884C\u699C","\u699C\u5355","\u699C\u5355\u7B2C\u4E00","\u70ED\u95E8\u699C","\u70ED\u641C","\u70ED\u8BAE","\u8BDD\u9898","\u70ED\u8BAE\u8BDD\u9898","\u70ED\u95E8\u8BDD\u9898","\u8BA8\u8BBA\u5EA6","\u5173\u6CE8\u5EA6","\u70ED\u5EA6","\u70ED\u5EA6\u699C","\u70ED\u95E8\u63A8\u8350","\u7CBE\u9009","\u529B\u8350","\u5F3A\u70C8\u63A8\u8350","\u5FC5\u770B","\u4E0D\u53EF\u9519\u8FC7","\u7ECF\u5178\u4E4B\u4F5C","\u795E\u4F5C","\u4F73\u4F5C","\u9AD8\u5206\u4F73\u4F5C","\u9AD8\u5206\u795E\u4F5C","\u70C2\u7247","\u5DEE\u8BC4","\u4F4E\u5206","\u53E3\u7891\u7206\u68DA","\u53E3\u7891\u6251\u8857","\u53E3\u7891\u4E24\u6781","\u53E3\u7891\u5206\u5316","\u4E89\u8BAE","\u70ED\u8BAE\u4E0D\u65AD","\u5907\u53D7\u5173\u6CE8","\u4E07\u4F17\u671F\u5F85","\u671F\u5F85\u5DF2\u4E45","\u4E07\u4F17\u77A9\u76EE","\u5E74\u5EA6\u6700\u4F73","\u5E74\u5EA6\u6700\u5DEE","\u5E74\u5EA6\u4E4B\u4F5C","\u5E74\u5EA6\u9ED1\u9A6C","\u5E74\u5EA6\u60CA\u559C","\u5E74\u5EA6\u5931\u671B","\u538B\u8F74\u4E4B\u4F5C","\u6536\u5B98\u4E4B\u4F5C","\u6536\u5B98","\u6536\u5B98\u5B63","\u6536\u5B98\u6218","\u5927\u7ED3\u5C40\u524D\u7BC7","\u5927\u7ED3\u5C40\u540E\u7BC7","\u6700\u7EC8\u56DE","\u6700\u7EC8\u8BDD","\u6700\u7EC8\u7AE0\u524D\u7BC7","\u6700\u7EC8\u7AE0\u540E\u7BC7"],OIr=[...Lce,...NIr],dlt=new RegExp(OIr.join("|"),"ig"),PIr=new RegExp(Lce.join("|"),"ig");function sA(t){if(!t||!t.trim())return"";let e=t.trim();e=e.replace(/丨/g,""),e=e.replace(/-/g," "),e=e.replace(PIr,""),e=e.replace(/\s+/g," ").trim();let r=e.match(/^[\u4e00-\u9fa5]+\d+(?=:|\s|$)/);if(r)return r[0];let n=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa50-9]+\s*(?=\(\d{4}\))/);if(n)return n[0];let s=e.match(/^[\u4e00-\u9fa5]+[\u4e00-\u9fa5 ,.,。、]+\s*(?=\(|【|\s+\d{4})/),i=s?s[0].trim():"",a=!1,o=e.match(/《(.+?)》/);if(o)e=o[1],a=!0;else{let l=new RegExp(`\u3010((?!${Lce.join("|")})[\u4E00-\u9FA5]{2,}[^/]+?)\u3011`,"i"),d=e.match(l);d&&(e=d[1],a=!0)}!a&&i&&(e=i);let c=[[/.*-/g,""],[/\b\d{4}\b/g,""],[/(?<!^)\[.*?\]|\{.*?\}|(.*?)|「.*?」/g," "],[/\b\d+(\.\d+)?[GMK]B?\b/gi,""],[dlt,""],[/豆瓣\d+(\.\d+)?/g,""],[/\b\d+(?=fps|帧)/g,""],[/\b[a-zA-Z]\b/g,""],[/(?<![\u4e00-\u9fa5])\b\d+\b(?![\u4e00-\u9fa5])/g,""],[/[^a-zA-Z0-9\u4e00-\u9fa5 ]/g,""],[/\s+/g," "]];for(let l of c)e=e.replace(l[0],l[1]);e=e.trim(),e.includes(" ")&&(e=e.substring(0,e.indexOf(" "))),!a&&i&&(e=e.replace(/\s/g,""));let u=t.match(/([\u4e00-\u9fa5]{2,})\s*$/);if(u){let l=u[1];(e.length<2||/\d+集/.test(e))&&(e=l)}if(!e){let l=t.match(/\[(.*?)\]/);l&&(e=l[1].trim(),e=e.replace(dlt,"").replace(/\d+/g,"").replace(/\s+/g," ").trim())}return e.trim()}function Bce(t){if(!t)return"";let e=t.match(/(?:^|[^a-zA-Z0-9])(S|Season)\s*(\d+)/i);if(e&&(e[1].toLowerCase()==="s"||e[1].toLowerCase()==="season"))return e[2].padStart(2,"0");let r=t.match(/第\s*([一二三四五六七八九十百千万亿\d]+)\s*å­£/);return r?Jf(r[1]).padStart(2,"0"):""}var flt={\u96F6:0,\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9},plt={\u5341:10,\u767E:100,\u5343:1e3,\u4E07:1e4,\u4EBF:1e8};function mlt(t){if(!t)return-1;let e=0,r=0,n=0,s=!1;for(let i=0;i<t.length;i++){let a=t[i];if(flt.hasOwnProperty(a))n=flt[a];else if(plt.hasOwnProperty(a)){let o=plt[a];o===10?(n===0&&(n=1),r+=n*o,n=0):o===1e4||o===1e8?(r+=n,e+=r*o,r=0,n=0,s=!0):(r+=(n||1)*o,n=0)}else return-1}return s||(e+=r),e+=n,t.startsWith("\u5341")&&e<20&&(e=10+e%10),e}function Jf(t){return t&&t.replace(/([零一二三四五六七八九十百千万亿]+)|(\d+)/g,(e,r,n)=>{if(r){let s=mlt(r);return s!==-1?String(s):e}else if(n)return String(parseInt(n,10));return e})}function DIr(t){let e=t;return e=e.replace(/[(()[\]【】{}]\s*([上中下])\s*[)()[\]【】{}]/g,"$1"),e=e.replace(/(\[|\{|\(|【).*?(\]|\}|)|】)/g," "),e=e.replace(/\d+\s*(fps|帧|frames?|hz|赫兹)/gi," "),e=e.replace(/\b(\d+(p|k|i)|4k|8k|uhd|hd|fhd|qhd|2160p|1440p|1080p|720p|480p|360p)\b/gi," "),e=e.replace(/\b(19|20)\d{2}\b/g," "),e=e.replace(/\b(?:dts|ddp|aac|ac3|eac3|truehd|atmos)\d+(?:\.\d+)?\b|\b\d+\.\d+\b/gi," "),e=e.replace(/\b(8bit|10bit|12bit)\b/gi," "),e=e.replace(/\b(hdr|hdr10|hdr10\+|dolby vision|dv|hlg)\b/gi," "),e=e.replace(/\b(x264|x265|h\.264|h\.265|h264|h265|hevc|mpeg4|av1|vp9)\b/gi," "),e=e.replace(/\b(web-dl|bluray|bdrip|hdrip|dvdrip|brrip|hdtv|dvdr|cam|ts|tc|r5|scr)\b/gi," "),e=e.replace(/\b(hq|sd|hd|fhd|uhd|imax|superbit|remux|extended|uncut|directors cut|dc|special edition|se)\b/gi," "),e=e.replace(/\b(é«˜ç |é«˜ç çŽ‡|é«˜ç ç‰ˆ|超清|高清|æ ‡æ¸…|æ— æ°´å°|完整版|æœªåˆ å‡|åŠ é•¿ç‰ˆ|导演剪辑版|特效字幕|内嵌字幕|双语字幕|中文字幕|英文字幕|繁体字幕|简体字幕|多音轨|杜比音效|全景声|hdr)\b/gi," "),e=e.replace(/[\-\_.,()]+/g," "),e.replace(/\s+/g," ").trim()}function kIr(t){let e=t.replace(/(\[|\{|\(|【).*?(\]|\}|)|】)/g," ");if(/s\d+e\d+/i.test(e))return"-1";let r=e.match(/[\u4e00-\u9fa5\-\_\.\s]+(0*\d{1,8})(?:[\-\_\.\s]|$)/);if(r){let n=r[1],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return Jf(n)}if(r=e.trim().match(/^0*\d{1,8}$/),r){let n=r[0],s=parseInt(n,10);if(s>0&&!(s>=1900&&s<=2100))return Jf(n)}return"-1"}function LIr(t){let e="\u671F|\u5B63",r="\u4E0A\u4E2D\u4E0B",n="\u96C6\u8A71\u8BDD",s=new RegExp(`(\u7B2C?)(0*(d{1,8}|[\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+))((?:${e})[${r}]?[\uFF08(]?[${r}]?[)\uFF09]?)`),i=t.match(s);if(i){let o=i[1],c=i[2],u=i[4].replace(/[(())]/g,"");return c=Jf(c),o+c+u}let a=Array.from(t.matchAll(/(?:s\d+.*?e|e)(\d{1,8})(?!\d)/gi));if(a.length>0)return Jf(a[a.length-1][1]);if(s=new RegExp(`\u7B2C([\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D\u5341\u767E\u5343\u4E07\u4EBF]+)[${n}]`),i=t.match(s),i){let o=mlt(i[1]);return o>0?String(o):"-1"}return s=new RegExp(`\u7B2C(d{1,8})[${n}]`),i=t.match(s),i||(i=t.match(/ep(\d{1,8})/i),i)||(s=new RegExp(`(d{1,8})[${n}]`),i=t.match(s),i)?Jf(i[1]):"-1"}function BIr(t){let e="a-zA-Z\xC0-\u017F",r=new RegExp(`(?<![${e}d])0*(\\d{1,8})(?![${e}d])`,"gu"),n=t.match(r);if(n)for(let s of n){let i=parseInt(s,10);if(!(i>=1900&&i<=2100))return Jf(s)}return"-1"}function Yw(t){if(!t)return"-1";let e=t,r=e.lastIndexOf(".");r>0&&(e=e.substring(0,r));let n=DIr(e),s=LIr(n);if(s!=="-1")return s;let i=kIr(e);return i!=="-1"?i:BIr(n)}var Mce=async t=>(await t.db.getObjectDefault("/t4",{}))?.list||t.config.t4?.list||[],MIr=async(t,e)=>{await t.db.push("/t4/list",e)},WIr=async t=>{await t.db.delete("/t4/list")};async function Wce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Mce(e.server)})}),t.put("/list",async(e,r)=>{await MIr(e.server,e.body),r.send({code:0})}),t.delete("/list",async(e,r)=>{await WIr(e.server),r.send({code:0})})}function $ce(t,e){let r=Ae.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{filter:!0}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){try{let{data:l}=await r.get("",{params:{play:u.body.id,flag:u.body.flag}});return!l.url&&!l.urls&&u.body.id.startsWith("http")?{url:u.body.id}:l}catch(l){console.warn(l)}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,t4:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var $Ir=["/api.php/provide/vod/","/api.php/provide/vod","/api.php/app/","/api.php/app"],vM="\u300C\u91C7\u300D",FIr=[{name:`${vM}\u7535\u5F71\u5929\u5802`,address:"http://dyttzyw.com/api.php/provide/vod/"}];function Uce(t,e="https"){let r=String(t||"").trim();return r?/^https?:\/\//i.test(r)?r:`${e}://${r}`:""}function qce(t){try{return new URL(t)}catch{return null}}function UIr(t=""){let e=String(t||"").toLowerCase();return e==="localhost"||e.includes(".")||e.includes(":")||/^\d{1,3}(?:\.\d{1,3}){3}$/.test(e)}function qIr(t){for(let e of["ac","wd","t","pg","ids","quick"])t.searchParams.delete(e);return t.hash="",t}function glt(t){let e=String(t||"").trim(),r=/^https?:\/\//i.test(e),n=qce(Uce(e));return!n||!["http:","https:"].includes(n.protocol)||!r&&!UIr(n.hostname)?"":(qIr(n),n.toString())}function jIr(t={},e=""){let r=String(t.name||t.title||e||"").trim();return r||qce(Uce(t.address||t.api||t.url||""))?.hostname||"CMS"}function HIr(t){let e=String(t||"").trim();return e?e.startsWith(vM)?e:`${vM}${e}`:`${vM}CMS`}function jce(t,e=""){if(!t||typeof t!="object")return null;let r=String(t.address||t.api||t.url||"").trim(),n=glt(r);return n?{name:HIr(jIr({...t,address:n},e)),address:n}:null}function Alt(t){if(typeof t=="string")try{return Alt(JSON.parse(t))}catch{return[]}return Array.isArray(t)?t:!t||typeof t!="object"?[]:Array.isArray(t.sites)?t.sites:Array.isArray(t.list)?t.list:t.api_site&&typeof t.api_site=="object"?Object.entries(t.api_site).map(([e,r])=>({...r,key:e})):[]}function QIr(t){let e=new Set;return Alt(t).map(r=>jce(r,r?.key)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}function GIr(t){let e=String(t||"").trim(),r=[],n=s=>{let i=glt(s);i&&!r.includes(i)&&r.push(i)};for(let s of["https","http"]){let i=qce(Uce(e,s));if(!i)continue;if(n(i.toString()),!i.pathname||i.pathname==="/")for(let o of $Ir)n(`${i.origin}${o}`)}return r}async function hlt(t,e=void 0){let r=await he.get(t,{params:e,timeout:1e4,validateStatus:n=>n>=200&&n<400});if(typeof r.data=="string")try{return JSON.parse(r.data)}catch{return r.data}return r.data}function VIr(t){return!!t&&typeof t=="object"&&Array.isArray(t.class)}async function zIr(t,e=""){let r=String(t||"").trim();if(!r)throw new Error("\u8BF7\u8F93\u5165 CMS \u5730\u5740");let n=GIr(r);for(let s of n)try{let i=await hlt(s),a=QIr(i);if(a.length>0)return{type:"config",sources:a}}catch{}for(let s of n)try{let i=await hlt(s,{ac:"class"});if(VIr(i))return{type:"cms",sources:[jce({name:e,address:s})].filter(Boolean)}}catch{}throw new Error("\u672A\u8BC6\u522B\u5230\u53EF\u7528\u7684 CMS \u6E90")}function Fce(t=[]){let e=new Set;return(Array.isArray(t)?t:[]).map(r=>jce(r)).filter(r=>!r||e.has(r.address)?!1:(e.add(r.address),!0))}var Hce=async t=>{let e=await t.db.getObjectDefault("/cms",{});if(e&&Object.prototype.hasOwnProperty.call(e,"list"))return Fce(e.list);let r=Array.isArray(t.config.cms?.list)?t.config.cms.list:[];return Fce(r.length>0?r:FIr)},KIr=async(t,e)=>{await t.db.push("/cms/list",Fce(e))},YIr=async t=>{await t.db.delete("/cms/list")};async function Qce(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Hce(e.server)})}),t.put("/list",async(e,r)=>{await KIr(e.server,e.body),r.send({code:0})}),t.post("/resolve",async(e,r)=>{try{r.send({code:0,data:await zIr(e.body?.url,e.body?.name)})}catch(n){r.send({code:-1,message:n.message||"CMS \u89E3\u6790\u5931\u8D25"})}}),t.delete("/list",async(e,r)=>{await YIr(e.server),r.send({code:0})})}var JIr=/\.(m3u8|mp4|mkv|flv|avi|webm|mov)(?:[?#]|$)/i,Gce="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0 Safari/537.36";function XIr(t=""){return/^https?:\/\//i.test(String(t||"").trim())}function ZIr(t=""){return JIr.test(String(t||"").trim())}function eTr(t="",e=""){try{return new URL(String(t||"").trim(),e).toString()}catch{return String(t||"").trim()}}function tTr(t=""){let e=[/["']([^"']+\.m3u8(?:\?[^"']*)?)["']/i,/(https?:\/\/[^\s"'<>]+\.m3u8(?:\?[^\s"'<>]*)?)/i];for(let r of e){let n=r.exec(String(t||""));if(n?.[1])return n[1].replace(/\\\//g,"/")}return""}function Vce(t,e){let r=he.create({baseURL:e});function n(){return{}}async function s(){try{let{data:u}=await r.get("",{params:{ac:"class"}});return u}catch(u){return console.warn(u),{class:[]}}}async function i(u){try{let{data:l}=await r.get("",{params:{ac:"detail",t:u.body.id,pg:u.body.page||1}});return l}catch(l){console.warn(l)}}async function a(u){try{let{data:l}=await r.get("",{params:{ac:"detail",ids:u.body.id}});return l}catch(l){console.warn(l)}}async function o(u){let l=String(u.body.id||"").trim();if(!l)return{url:""};if(!XIr(l)||ZIr(l))return{parse:0,url:l};try{let{data:d}=await he.get(l,{timeout:1e4,headers:{"User-Agent":Gce,Referer:l}}),f=tTr(d);if(f)return{parse:0,url:eTr(f,l),header:{Referer:l,"User-Agent":Gce}}}catch(d){console.warn(d)}return{parse:1,url:l,header:{Referer:l,"User-Agent":Gce}}}async function c(u){try{let{data:l}=await r.get("",{params:{ac:"list",wd:u.body.wd}});return l}catch(l){console.warn(l)}}return{meta:{key:t,name:t,type:3,cms:!0},api:async u=>{u.post("/init",n),u.post("/home",s),u.post("/category",i),u.post("/detail",a),u.post("/play",o),u.post("/search",c)}}}var iA={HOME:0,CATEGORY:0,SEARCH:0,DETAIL:12e4,PLAY:3e4,SPIDERS:0},zce=class{constructor(e=800){this.max=Math.max(100,Number(e)||800),this.data=new Map,this.pending=new Map}get(e){if(!this.data.has(e))return;let r=this.data.get(e);if(r.expireAt>0&&r.expireAt<=Date.now()){this.data.delete(e);return}return this.data.delete(e),this.data.set(e,r),r.value}set(e,r,n=0){let s=n>0?Date.now()+n:0;return this.data.has(e)&&this.data.delete(e),this.data.set(e,{value:r,expireAt:s}),this.compact(),r}delete(e){this.pending.delete(e),this.data.delete(e)}clear(){this.pending.clear(),this.data.clear()}compact(){for(;this.data.size>this.max;){let e=this.data.keys().next().value;this.data.delete(e)}}async wrap(e,r,n){let s=this.get(e);if(s!==void 0)return s;if(this.pending.has(e))return this.pending.get(e);let i=(async()=>{try{let a=await n();return a!==void 0&&this.set(e,a,r),a}finally{this.pending.delete(e)}})();return this.pending.set(e,i),i}};function CM(t={}){return new zce(t.max||800)}async function Xf(t,e,r,n){return!t||typeof t.wrap!="function"||Number(r)<=0?n():t.wrap(e,r,n)}function im(t=[]){return t.map(e=>String(e)).join(":")}function rTr(t){let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{apiBase:e,spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2])}:null}function Kce(t){return String(t||"").split(",")[0].trim()}function IM(t=null){let r=Kce(t?.headers?.["x-forwarded-host"])||Kce(t?.headers?.host);if(!r)return{headers:void 0,cacheVary:"-"};let s=Kce(t?.headers?.["x-forwarded-proto"])||String(t?.protocol||"http").trim()||"http";return{headers:{host:r,"x-forwarded-host":r,"x-forwarded-proto":s},cacheVary:`${s}://${r}`}}function nTr(t=[],e=[]){let r={};if(t.forEach(i=>{r[i.key]=i}),!Array.isArray(e)||!e.length)return t;let n={},s=[];return e.forEach(i=>{n[i.key]=!0;let a=r[i.key];if(!a||!i.enable)return;let o=typeof i.name=="string"?i.name.trim():"";s.push({...a,name:o||a.name})}),t.forEach(i=>{n[i.key]||s.push(i)}),s}async function Xl(t){let e=t.embyContext?.cache;return Xf(e,"emby:enabled-video-spiders:v2",iA.SPIDERS,async()=>{let r=await t.inject({method:"GET",url:"/full-config"});if(r.statusCode>=400)return[];let n=r.json(),s=Array.isArray(n?.video?.sites)?n.video.sites:[],i=await Kw(t).catch(()=>[]),a=nTr(s,i),o={},c=[];return a.forEach(u=>{let l=rTr(u.api);if(!l||l.spiderType!==3)return;let d=`${u.key}:${l.apiBase}`;o[d]||(o[d]=!0,c.push({siteKey:u.key,siteName:u.name||l.spiderKey,spiderKey:l.spiderKey,spiderType:l.spiderType,apiBase:l.apiBase,api:u.api}))}),c})}function aA(t=[],e,r=null,n=""){let s=r===null?null:Number(r),i=String(n||"").trim();return t.find(a=>a.spiderKey!==e?!1:s===null?!0:i&&a.apiBase!==i?!1:Number(a.spiderType)===s)||null}async function oA(t,e,r,n,s={},i={}){let a=i?.headers&&typeof i.headers=="object"?i.headers:void 0,o=String(i?.apiBase||"").trim()||`/spider/${encodeURIComponent(e)}/${r}`,c=await t.inject({method:"POST",url:`${o.replace(/\/+$/,"")}/${n}`,payload:s,headers:a});if(c.statusCode>=400)throw new Error(`Spider call failed: ${e}/${r}/${n} ${c.statusCode}`);let u=t.embyContext?.config?.requestLog;try{let l=c.json();if(u&&(n==="detail"||n==="play")){if(n==="detail"){let d=Array.isArray(l?.list)&&l.list.length>0?l.list[0]:null,f=String(d?.vod_play_from||""),p=String(d?.vod_play_url||""),m=f?f.split("$$$").filter(Boolean).length:0,h=p?p.split("$$$").map(A=>String(A||"").split("#").filter(Boolean).length):[];console.log("[Emby Spider] detail:",JSON.stringify({spiderKey:e,spiderType:r,request:{id:String(s?.id||"")},response:{listCount:Array.isArray(l?.list)?l.list.length:0,vodId:String(d?.vod_id||""),vodName:String(d?.vod_name||""),vodRemarks:String(d?.vod_remarks||""),lineCount:m,episodeCountPerLine:h.slice(0,10)}}))}else if(n==="play"){let d=l?.header&&typeof l.header=="object"?Object.keys(l.header):[];console.log("[Emby Spider] play:",JSON.stringify({spiderKey:e,spiderType:r,request:{flag:String(s?.flag||""),idPreview:String(s?.id||"").slice(0,80)},response:{parse:Number(l?.parse||0),hasUrl:!!l?.url,urlPreview:String(l?.url||"").slice(0,120),headerKeys:d}}))}}return l}catch{return{}}}async function Jw(t,e,r=null){let n=t.embyContext?.cache,s=IM(r),i=im(["emby","home",e.spiderKey,e.spiderType,e.apiBase||"",s.cacheVary]);return Xf(n,i,iA.HOME,()=>oA(t,e.spiderKey,e.spiderType,"home",{},{headers:s.headers,apiBase:e.apiBase}))}async function NE(t,e,r,n=1,s={},i=null){let a=t.embyContext?.cache,o=IM(i),c=im(["emby","category",e.spiderKey,e.spiderType,e.apiBase||"",r,n,JSON.stringify(s||{}),o.cacheVary]);return Xf(a,c,iA.CATEGORY,()=>oA(t,e.spiderKey,e.spiderType,"category",{id:r,page:n,filter:!0,filters:s||{}},{headers:o.headers,apiBase:e.apiBase}))}async function Oc(t,e,r,n=null){let s=t.embyContext?.cache,i=IM(n),a=im(["emby","detail",e.spiderKey,e.spiderType,e.apiBase||"",r,i.cacheVary]);return Xf(s,a,iA.DETAIL,()=>oA(t,e.spiderKey,e.spiderType,"detail",{id:r},{headers:i.headers,apiBase:e.apiBase}))}async function ylt(t,e,r,n=1){let s=t.embyContext?.cache,i=im(["emby","search",e.spiderKey,e.spiderType,e.apiBase||"",r,n]);return Xf(s,i,iA.SEARCH,()=>oA(t,e.spiderKey,e.spiderType,"search",{wd:r,page:n},{apiBase:e.apiBase}))}async function am(t,e,r,n,s=null){let i=t.embyContext?.cache,a=IM(s),o=im(["emby","play",e.spiderKey,e.spiderType,e.apiBase||"",r,n,a.cacheVary]);return Xf(i,o,iA.PLAY,()=>oA(t,e.spiderKey,e.spiderType,"play",{flag:r,id:n},{headers:a.headers,apiBase:e.apiBase}))}function Pc(t){return!t||!Array.isArray(t.list)||!t.list.length?null:t.list[0]}function Zl(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}var Yce=Re(require("node:fs"),1),Xw=Re(require("node:path"),1),sTr=()=>{try{return`const appConfig = {\r _webSite: '',\r /**\r * \u7F51\u7AD9\u4E3B\u9875\uFF0Cuz \u8C03\u7528\u6BCF\u4E2A\u51FD\u6570\u524D\u90FD\u4F1A\u8FDB\u884C\u8D4B\u503C\u64CD\u4F5C\r @@ -10513,27 +10513,27 @@ async function searchVideo(args) {\r }\r return JSON.stringify(backData)\r }\r -`}catch{return""}},hlt=t=>{let e=String(t||"").trim();return e.toLowerCase().endsWith(".js")?e.slice(0,-3):e},glt=(t,e={})=>{let r=Object.entries(e).filter(([,n])=>n!=null&&n!=="").map(([n,s])=>`${encodeURIComponent(n)}=${encodeURIComponent(String(s))}`).join("&");return r?`${t}${t.includes("?")?"&":"?"}${r}`:t},Alt=(t,e,r={})=>glt(`${t}/api/${encodeURIComponent(e)}`,{filter:!0,...r}),ylt=(t,e,r={})=>glt(`${t}/uz.js`,{...r,key:e}),eTr=()=>{let t=[Yw.default.resolve(process.cwd(),"src/assets/uz.js"),Yw.default.resolve(process.cwd(),"nodejs/src/assets/uz.js"),Yw.default.resolve(process.cwd(),"dist/assets/uz.js"),Yw.default.resolve(process.cwd(),"nodejs/dist/assets/uz.js")],e=t.find(r=>zce.default.existsSync(r));if(!e)throw new Error(`uz.js asset not found: ${t.join(", ")}`);return e},xlt=()=>ZCr()||zce.default.readFileSync(eTr(),"utf8"),blt=t=>({vod:t.map(e=>({key:e.module,name:e.name,api:e.scriptUrl,webSite:e.t4ApiUrl,version:1,type:101}))});var tTr=new Set(["0","false","no","off"]),CM=()=>({username:process.env.CATPAW_DIST_AUTH_USER||"CatPawPlay",password:process.env.CATPAW_DIST_AUTH_PASS||"CatPawPlay"}),TM=()=>{let t=String(process.env.CATPAW_DIST_AUTH||"").trim().toLowerCase();return!tTr.has(t)},Jw=(t,e={})=>{let r=e.includePrefix!==!1,s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),a=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim()||(t.socket?.encrypted?"https":"http"),o=r?String(t.server?.prefix||"").replace(/\/$/,""):"";if(s)return`${a}://${s}${o}`;let c=t.server?.address?.();return c?.url?`${String(c.url).replace(/\/$/,"")}${o}`:c?.port?`http://127.0.0.1:${c.port}${o}`:o||""},Xw=(t,e,r=null)=>{if(!t)return e;let n=new URL(e,t);return(r?.username||r?.password)&&(n.username=r.username||"",n.password=r.password||""),n.toString()};var OE="/spider",rTr=new Set([".cjs",".mjs",".js"]),Dlt=/^[a-z0-9_-]{2,32}$/,Blt=new Set(["http:","https:"]),r2="nodejs_",Llt="__catpawProfile",nTr=new Set([Llt,"server","embyPlayback"]),sTr=[{url:"/index.js",fileName:"index.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.js.md5",fileName:"index.js.md5",md5Source:"index.js",contentType:"text/plain; charset=utf-8"},{url:"/index.config.js",fileName:"index.config.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.config.js.md5",fileName:"index.config.js.md5",md5Source:"index.config.js",contentType:"text/plain; charset=utf-8"}],Zw={key:"",expireAt:0,spiders:[]},om={key:"",promise:null},Elt=new Map,iTr=t=>({...t.query&&typeof t.query=="object"?t.query:{},...t.body&&typeof t.body=="object"?t.body:{}}),Yce=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},aTr=(t,e={})=>{if(t==null||t==="")return e;if(typeof t=="object")return t;try{let r=Buffer.from(String(t),"base64").toString("utf8");return JSON.parse(r)}catch{try{return JSON.parse(String(t))}catch{return e}}},oTr=t=>{let e={},n=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),i=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim();return n&&(e.host=n,e["x-forwarded-host"]=n),i&&(e["x-forwarded-proto"]=i),Object.keys(e).length>0?e:void 0},cTr=t=>{let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2]),apiBase:e}:null},uTr=t=>{let e=String(t||"").trim();return e.toLowerCase().startsWith(r2)?e.slice(r2.length):e},Mlt=(t,e,r)=>{!r||Number(r.spiderType)!==3||e.map(n=>String(n||"").trim()).filter(Boolean).forEach(n=>{t.set(n.toLowerCase(),r)})},lTr=t=>{let e=new Map;return t.forEach(r=>{let n=String(r?.meta?.key||"").trim(),s=Number(r?.meta?.type||0);if(!n||s!==3||r?.meta?.hidden)return;let i={spiderKey:n,spiderType:s,apiBase:`${OE}/${encodeURIComponent(n)}/${s}`};Mlt(e,[n,`${r2}${n}`],i)}),e},_lt=(t,e)=>{let r=String(e||"").trim();if(!r)return null;let n=r.toLowerCase(),s=n.startsWith(r2)?n.slice(r2.length):n;return t.get(n)||t.get(s)||null},dTr=t=>{let[e,r]=String(t||"").split(/\s+/,2);if(e?.toLowerCase()!=="basic"||!r)return null;let n="";try{n=Buffer.from(r,"base64").toString("utf8")}catch{return null}let s=n.indexOf(":");return s<0?null:{username:n.slice(0,s),password:n.slice(s+1)}},fTr=(t,e)=>{let r=dTr(t.headers?.authorization),n=CM();return r?.username===n.username&&r?.password===n.password?!0:(e.code(401).header("WWW-Authenticate",'Basic realm="CatPaw dist"').send("Authentication required"),!1)},pTr=t=>Ws.default.resolve(process.cwd(),"dist",t),Wlt=t=>Object.prototype.toString.call(t)==="[object Object]",tue=(t,e={})=>{try{return JSON.parse(JSON.stringify(t??e))}catch{return e}},mTr=t=>JSON.stringify(t,null,2).replace(/^(\s*)"([A-Za-z_$][\w$]*)":/gm,"$1$2:"),hTr=async t=>{try{let e=await t.getData("/");return Wlt(e)?e:{}}catch{return{}}},gTr=t=>{let e={};return Object.entries(Wlt(t)?t:{}).forEach(([r,n])=>{nTr.has(r)||(e[r]=tue(n,n))}),e},ATr=async({db:t,config:e})=>{let r=await hTr(t),n=gTr(r),s={...tue(e,{}),...tue(n,{})};return delete s.server,Object.keys(n).length>0&&(s[Llt]=n),["var index_config = {"," server: {}, //\u8FD9\u91CC\u4E0D\u8981\u52A8\uFF0C\u52A0\u7A7A\u683C\u90FD\u4E0D\u884C\uFF0C\u540E\u53F0\u81EA\u52A8\u751F\u6210",mTr(s).replace(/^\{\n?/,"").replace(/\n?\}$/,""),"};",'if (typeof module !== "undefined" && module.exports) module.exports = index_config;',""].join(` -`)},yTr=async(t,e,r)=>(t.md5Source||t.fileName)!=="index.config.js"?e:Buffer.from(await ATr(r),"utf8"),xTr=async(t,e,r,n)=>{if(fTr(e,r))try{let s=t.md5Source||t.fileName,i=await NE.default.readFile(pTr(s)),a=await yTr(t,i,n),o=t.md5Source?(0,OM.createHash)("md5").update(a).digest("hex"):a;r.header("Content-Type",t.contentType).send(o)}catch(s){if(s?.code==="ENOENT"){r.code(404).send({error:`dist artifact not found: ${t.fileName}`,hint:"\u8BF7\u5148\u5728 nodejs \u76EE\u5F55\u8FD0\u884C npm run build \u6216 npm run build:dbg"});return}throw s}},Jce=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},Xce=(t,e=0)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?r:e},bTr=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return Blt.has(r.protocol)?(r.hash="",r.href):""}catch{return""}},Slt=t=>{let r=(Array.isArray(t)?t:typeof t=="string"?t.split(/[\r\n,;]/):[]).map(n=>bTr(n)).filter(Boolean);return[...new Set(r)]},Zce=(t,e,r)=>{if(!Number.isFinite(e)||e<=0)return t;let n;return Promise.race([t,new Promise((s,i)=>{n=setTimeout(()=>i(new Error(r)),e)})]).finally(()=>clearTimeout(n))},ETr=async t=>{try{let e=await NE.default.stat(t);return`${e.mtimeMs}-${e.size}`}catch{return"0"}},$lt=(t={})=>{let e=t.customSpiders||{},r=process.env.NODE_PATH||"/data",n=typeof e.dir=="string"?e.dir.trim():"",s=Slt(process.env.CATPAW_CUSTOM_SPIDER_URLS),i=Slt(e.urls),a=s.length>0?s:i,o=process.env.CATPAW_CUSTOM_SPIDER_DIR||n||Ws.default.join(r,"custom-spiders");return{enabled:Jce(process.env.CATPAW_CUSTOM_SPIDER_ENABLED,e.enabled??!0),strict:Jce(process.env.CATPAW_CUSTOM_SPIDER_STRICT,e.strict??!1),allowOverride:Jce(process.env.CATPAW_CUSTOM_SPIDER_ALLOW_OVERRIDE,e.allowOverride??!1),cacheTtlMs:Math.max(0,Xce(process.env.CATPAW_CUSTOM_SPIDER_CACHE_TTL_MS,e.cacheTtlMs??5e3)),factoryTimeoutMs:Math.max(0,Xce(process.env.CATPAW_CUSTOM_SPIDER_FACTORY_TIMEOUT_MS,e.factoryTimeoutMs??1e4)),urlTimeoutMs:Math.max(1e3,Xce(process.env.CATPAW_CUSTOM_SPIDER_URL_TIMEOUT_MS,e.urlTimeoutMs??1e4)),dir:Ws.default.resolve(o),urls:a}},vlt=(t,e)=>{let n=`[custom-spider:${Ws.default.basename(e)}]`,s=Object.freeze({info:(...i)=>console.log(n,...i),warn:(...i)=>console.warn(n,...i),error:(...i)=>console.error(n,...i),debug:(...i)=>console.debug(n,...i)});return Object.freeze({http:Object.freeze({axios:Ae,req:he,create:(i={})=>Ae.create(i)}),cheerio:Object.freeze({load:Me}),utils:Object.freeze({extractTitle:sA,findEpisodeNumber:Vw,firstSuccessfulUrl:Xn}),logger:s,app:Object.freeze({spiderPrefix:OE,nodePath:process.env.NODE_PATH||"."})})},_Tr=async t=>{try{return(await NE.default.readdir(t,{withFileTypes:!0})).filter(r=>r.isFile()).map(r=>Ws.default.join(t,r.name)).filter(r=>rTr.has(Ws.default.extname(r).toLowerCase())).sort((r,n)=>r.localeCompare(n))}catch(e){if(e?.code==="ENOENT")return[];throw e}},RM=t=>{if(typeof t=="string")return t;if(Buffer.isBuffer(t))return t.toString("utf8");if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}},NM=new Map,sue=t=>String(t||"").trim(),STr=t=>{let e=RM(t);if(!e)return"";let r=e.split(/\r?\n/,80);for(let n of r){let s=String(n||"").trim();if(!s)continue;let i=s.match(/^(?:\/\/+|\/\*+|\*+)?\s*@name(?:\s*[::])?\s+(.+?)\s*$/i);if(!i?.[1])continue;let a=i[1].replace(/\*\/\s*$/,"").trim();if(a)return a}return""},Flt=(t,e)=>{let r=sue(t);if(!r)return"";let n=STr(e);return n?(NM.set(r,n),n):(NM.delete(r),"")},Ult=t=>{let e=sue(t);return e?String(NM.get(e)||"").trim():""},Ilt={axios:Ae,cheerio:_v,"crypto-js":Plt.default,dayjs:klt.default,qs:nue.default},vTr=(t,e)=>{let r=n=>n==="omnibox_sdk"?{request:async(s,i={})=>{let a=String(i.method||"GET").toUpperCase(),o=i.headers||{},c=i.body;c&&typeof c=="object"&&!Buffer.isBuffer(c)&&String(o["Content-Type"]||o["content-type"]||"").toLowerCase().includes("application/json")&&(c=JSON.stringify(c));let u=await Ae.request({url:s,method:a,headers:o,data:c,timeout:i.timeout,validateStatus:()=>!0});return{statusCode:u.status,body:RM(u.data)}},log:(s,...i)=>{let a=i.map(o=>typeof o=="string"?o:RM(o)).join(" ");return s==="error"?console.error(a):s==="warn"||s==="warning"?console.warn(a):console.log(a)},getSourceId:async()=>"builtin",processScraping:async(s,i,a,o=[])=>{let c=String(s||"");return Elt.set(c,{scrapeData:null,scrapeType:"",videoMappings:[]}),{ok:!1,unsupported:!0,count:Array.isArray(o)?o.length:0}},getScrapeMetadata:async s=>{let i=String(s||"");return Elt.get(i)||null}}:n==="spider_runner"?{run:()=>{}}:Ilt[n]?Ilt[n]:t(n);return r.resolve=t.resolve?.bind(t),r.main={filename:e},r},qlt=(t,e)=>{let r=String(t?.message||""),n=r.includes("require is not defined")||r.includes("module is not defined")||r.includes("exports is not defined"),s=/(?:^|\W)module\.exports(?:\W|$)|(?:^|\W)exports\.[A-Za-z_$][\w$]*|(?:^|\W)require\s*\(/m.test(e);return n||s},jlt=(t,e,r="")=>{let n={exports:{}},s=r||(0,rue.pathToFileURL)(Ws.default.resolve(process.cwd(),".custom-spider-runtime.cjs")).href,i=(0,Olt.createRequire)(s),a=vTr(i,e);return new Function("require","module","exports","__filename","__dirname",t)(a,n,n.exports,e,Ws.default.dirname(e)),{default:n.exports}},ITr=async(t,e)=>{let r=await Ae.get(t,{responseType:"text",timeout:e,transformResponse:[a=>a],validateStatus:()=>!0});if(r.status>=400)throw new Error(`[custom-spider] \u8FDC\u7A0B\u63D2\u4EF6\u62C9\u53D6\u5931\u8D25(${r.status}): ${t}`);let n=RM(r.data);Flt(t,n);let s=(0,OM.createHash)("sha1").update(n).digest("hex").slice(0,12),i=`data:text/javascript;charset=utf-8,${encodeURIComponent(n)}`;try{return await import(`${i}#${s}`)}catch(a){if(!qlt(a,n))throw a;let o;try{let c=new URL(t),u=Ws.default.basename(c.pathname)||`remote-${s}.js`;o=Ws.default.resolve(process.cwd(),".remote-custom-spiders",u)}catch{o=Ws.default.resolve(process.cwd(),".remote-custom-spiders",`remote-${s}.js`)}return jlt(n,o)}},CTr=async t=>{let e=sue(t),r="",n=!1;try{r=await NE.default.readFile(t,"utf8"),n=!0,Flt(e,r)}catch{NM.delete(e)}let s=(0,rue.pathToFileURL)(t);s.searchParams.set("v",await ETr(t));try{return await import(s.href)}catch(i){if(Ws.default.extname(t).toLowerCase()!==".js")throw i;let o=n?r:await NE.default.readFile(t,"utf8");if(!qlt(i,o))throw i;return jlt(o,t,s.href)}},Clt=t=>!!t&&typeof t=="object"&&typeof t.api=="function",Tlt=t=>!t||typeof t!="object"||typeof t.api=="function"?!1:["home","category","detail","search","play"].some(r=>typeof t[r]=="function"),TTr=t=>{let e=String(t||"");if(!e.includes("%"))return e;try{return decodeURIComponent(e)}catch{return e}},PM=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);if(Blt.has(r.protocol)){let n=Ws.default.parse(Ws.default.basename(r.pathname||"")).name;return TTr(n)}}catch{}return Ws.default.parse(e).name},wTr=t=>{let e=PM(t),r=String(e).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");return Dlt.test(r)?r:`omni_${(0,OM.createHash)("sha1").update(t).digest("hex").slice(0,10)}`},RTr=t=>{if(!t||typeof t!="object"||t.vod_play_from&&t.vod_play_url)return t;let e=Array.isArray(t.vod_play_sources)?t.vod_play_sources:[];if(e.length===0)return t;let r=[],n=[];return e.forEach((s,i)=>{let a=String(s?.name||`\u7EBF\u8DEF${i+1}`).trim()||`\u7EBF\u8DEF${i+1}`,c=(Array.isArray(s?.episodes)?s.episodes:[]).map((u,l)=>{let d=String(u?.name||`\u64AD\u653E${l+1}`).trim()||`\u64AD\u653E${l+1}`,f=String(u?.playId||u?.url||u?.id||"").trim();return f?`${d}$${f}`:""}).filter(Boolean);c.length>0&&(r.push(a),n.push(c.join("#")))}),r.length===0||n.length===0?t:{...t,vod_play_from:r.join("$$$"),vod_play_url:n.join("$$$")}},wM=t=>t&&typeof t=="object"?t:{list:[]},wlt=t=>{let e=wM(t),r=Array.isArray(e.list)?e.list:[];return{...e,list:r.map(n=>RTr(n))}},NTr=(t,e="")=>{if(t&&typeof t=="object"){let r=String(t.url||"").trim();if(r)return{...t,parse:t.parse??0,url:r,header:t.header||{}};let n=Array.isArray(t.urls)?t.urls:[];if(n.length>0){let s=n[0]||{},i=String(s.url||s.playId||s.id||"").trim();if(i)return{parse:t.parse??0,url:i,header:t.header||{}}}if(t.parse!==void 0)return{parse:t.parse??0,url:"",header:t.header||{}}}return typeof t=="string"&&t.trim()?{parse:0,url:t.trim()}:{parse:1,url:String(e||"")}},OTr=(t,e)=>{let r=t.meta||t.META||{},n=Number(r.type),s=Number.isInteger(n)&&n>=0&&n<50?n:3,i=String(r.key||"").trim()||wTr(e),a=Ult(e),o=String(r.name||"").trim()||a||PM(e)||i,c=async(u,l)=>{if(typeof u!="function")return{};let d=await u(l||{});return d===void 0?{}:d};return{meta:{key:i,name:o,type:s},api:async u=>{u.post("/init",async()=>({})),u.post("/home",async l=>{let d=await c(t.home,{filter:l.body?.filter??!1});return wM(d)}),u.post("/category",async l=>{let d=l.body||{},f=await c(t.category,{categoryId:d.id,id:d.id,page:d.page??1,filters:d.filters||{},filter:d.filter??!1});return wM(f)}),u.post("/detail",async l=>{let d=l.body?.id;if(Array.isArray(d)){let p=[];for(let m of d){let h=await c(t.detail,{videoId:m,id:m}),A=wlt(h);Array.isArray(A.list)&&p.push(...A.list)}return{list:p}}let f=await c(t.detail,{videoId:d,id:d});return wlt(f)}),u.post("/search",async l=>{let d=l.body?.wd??"",f=await c(t.search,{keyword:d,wd:d,page:l.body?.page??1,quick:l.body?.quick??!1});return wM(f)}),u.post("/play",async l=>{let d=l.body?.id??"",f=await c(t.play,{playId:d,id:d,flag:l.body?.flag??""});return NTr(f,d)})}}},PTr=(t,e)=>{let r=typeof t?.createSpider=="function"&&t.createSpider||typeof t?.default?.createSpider=="function"&&t.default.createSpider;if(r)return{mode:"factory",value:r};let n=Clt(t?.default)&&t.default||Clt(t)&&t;if(n)return{mode:"spider",value:n};let s=Tlt(t?.default)&&t.default||Tlt(t)&&t;if(s)return{mode:"omnibox-object",value:s};let i=typeof t?.default=="function"&&t.default||typeof t=="function"&&t;if(i)return{mode:"callable",value:i};throw new Error(`${e} \u7F3A\u5C11 createSpider(ctx) / spider \u5BF9\u8C61 / omnibox \u5BF9\u8C61 / legacy register \u5BFC\u51FA`)},kTr=t=>{let e=String(t?.message||"");return e?e.includes("spider \u5FC5\u987B\u662F\u5BF9\u8C61")||e.includes("spider.api \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("spider.check \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("is not a function")||e.includes("Cannot read properties of undefined")||e.includes("Cannot set properties of undefined"):!1},DTr=(t,e)=>{let r=String(t?.meta?.key||"").trim(),n=String(t?.meta?.api||"").trim(),s=PM(e),i=[];r&&i.push(r);let a=n.match(/\/([a-zA-Z0-9_-]+)$/);a?.[1]&&i.push(a[1]),s&&i.push(s);for(let o of i){let c=String(o).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");if(Dlt.test(c))return{key:c,from:o}}return null},BTr=t=>{if(!t||typeof t!="object"||Object.keys(t).length===0)return"";try{return Buffer.from(JSON.stringify(t),"utf8").toString("base64")}catch{return""}},e2=async(t,e,r)=>{let n,a=await t({query:r,server:e},{send(o){return n=o,o}});return a===void 0?n:a},LTr=async(t,e)=>{let r=[],n={get(l,d){r.push({method:"get",routePath:l,handler:d})},post(l,d){r.push({method:"post",routePath:l,handler:d})},put(l,d){r.push({method:"put",routePath:l,handler:d})},delete(l,d){r.push({method:"delete",routePath:l,handler:d})}},s={sites:[]};await Promise.resolve(t(n,s));let i=Array.isArray(s.sites)?s.sites:[];if(i.length===0)throw new Error(`${e} legacy register \u672A\u901A\u8FC7 opt.sites \u66B4\u9732 meta`);i.length>1&&console.warn(`[custom-spider] legacy register \u4EC5\u517C\u5BB9\u9996\u4E2A site: ${Ws.default.basename(e)}`);let a=i[0]||{},o=String(a.api||"").trim(),c=o?r.find(l=>l.routePath===o):null;if(o&&!c){let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register meta.api(${o}) \u672A\u5339\u914D\u5DF2\u6CE8\u518C\u8DEF\u7531: ${l||"(none)"}`)}let u=c;if(!u)if(r.length===1)u=r[0];else{let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register \u8DEF\u7531\u4E0D\u660E\u786E\uFF0C\u8BF7\u63D0\u4F9B\u53EF\u5339\u914D\u7684 meta.api\uFF0C\u5F53\u524D\u8DEF\u7531: ${l||"(none)"}`)}if(!u||typeof u.handler!="function")throw new Error(`${e} legacy register \u672A\u6CE8\u518C\u6709\u6548\u8DEF\u7531`);return{meta:{key:a.key,name:a.name,type:a.type},api:async l=>{l.post("/init",async()=>({})),l.post("/home",async d=>e2(u.handler,d.server,{filter:d.body?.filter??!1})),l.post("/category",async d=>{let f=d.body||{},p={ac:"detail",t:f.id,pg:f.page??1,filter:f.filter??!1},m=BTr(f.filters);return m&&(p.ext=m),e2(u.handler,d.server,p)}),l.post("/detail",async d=>{let f=d.body?.id,p=Array.isArray(f)?f.join(","):f;return e2(u.handler,d.server,{ac:"detail",ids:p})}),l.post("/search",async d=>e2(u.handler,d.server,{wd:d.body?.wd??"",pg:d.body?.page??1,quick:d.body?.quick??!1})),l.post("/play",async d=>e2(u.handler,d.server,{play:d.body?.id??"",flag:d.body?.flag??"",parser:d.body?.parser??""}))}}},t2=(t,e)=>{if(!t||typeof t!="object")throw new Error(`${e} spider \u5FC5\u987B\u662F\u5BF9\u8C61`);if(typeof t.api!="function")throw new Error(`${e} spider.api \u5FC5\u987B\u662F\u51FD\u6570`);if(t.check&&typeof t.check!="function")throw new Error(`${e} spider.check \u5FC5\u987B\u662F\u51FD\u6570`);let r=DTr(t,e);if(!r)throw new Error(`${e} meta.key \u4E0D\u5408\u6CD5`);let n=r.key,s=Ult(e),i=String(t.meta?.name||"").trim()||s||PM(e)||n,a=Number(t.meta?.type);if(!i)throw new Error(`${e} meta.name \u4E0D\u80FD\u4E3A\u7A7A`);if(!Number.isInteger(a)||a<0||a>=50)throw new Error(`${e} meta.type \u5FC5\u987B\u662F 0-49 \u7684\u6574\u6570`);let o=String(t.meta?.key||"").trim();return o&&o!==n&&console.log(`[custom-spider] key \u517C\u5BB9\u4FEE\u6B63: ${o} -> ${n}`),{...t,meta:{...t.meta,key:n,name:i,type:a,custom:!0}}},MTr=(t,e=!1)=>{let r=[],n=new Map;return t.forEach(s=>{let i=`${s.meta.key}:${s.meta.type}`;if(!n.has(i)){n.set(i,r.length),r.push(s);return}if(e&&s.meta?.custom){console.warn(`[custom-spider] override: ${i}`),r[n.get(i)]=s;return}console.warn(`[custom-spider] duplicate ignored: ${i}`)}),r},WTr=async t=>{let e=$lt(t.config);if(!e.enabled)return[];let r=`${e.dir}|${e.urls.join(",")}|${e.urlTimeoutMs}|${e.strict}|${e.cacheTtlMs}|${e.factoryTimeoutMs}`,n=Date.now();if(e.cacheTtlMs>0&&Zw.key===r&&Zw.expireAt>n)return Zw.spiders;if(om.promise&&om.key===r)return om.promise;om.key=r,om.promise=(async()=>{let s=await _Tr(e.dir),i=e.urls;if(s.length===0&&i.length===0)return Zw={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:[]},[];s.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${s.length} \u4E2A\u672C\u5730\u63D2\u4EF6: ${s.map(l=>Ws.default.basename(l)).join(", ")}`),i.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${i.length} \u4E2A\u8FDC\u7A0B\u63D2\u4EF6: ${i.join(", ")}`);let a=[...s.map(l=>({id:l,display:Ws.default.basename(l),load:()=>CTr(l)})),...i.map(l=>({id:l,display:l,load:()=>ITr(l,e.urlTimeoutMs)}))],o=await Promise.allSettled(a.map(async l=>{let d=await l.load(),f=PTr(d,l.id);if(f.mode==="spider")return console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy spider export)`),t2(f.value,l.id);if(f.mode==="omnibox-object"){console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (omnibox object export)`);let h=OTr(f.value,l.id);return t2(h,l.id)}if(f.mode==="callable"){let h=vlt(t,l.id);try{let A=await Zce(Promise.resolve(f.value(h)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return t2(A,l.id)}catch(A){if(!kTr(A))throw A;console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy register export)`);let g=await Zce(LTr(f.value,l.id),e.factoryTimeoutMs,`[custom-spider] legacy register \u9002\u914D\u8D85\u65F6: ${l.id}`);return t2(g,l.id)}}let p=vlt(t,l.id),m=await Zce(Promise.resolve(f.value(p)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return t2(m,l.id)})),c=[],u=[];if(o.forEach((l,d)=>{l.status==="fulfilled"?c.push(l.value):(u.push(a[d].display),console.error(`[custom-spider] \u52A0\u8F7D\u5931\u8D25: ${a[d].display}`,l.reason))}),e.strict&&u.length>0)throw new Error(`[custom-spider] strict \u6A21\u5F0F: ${u.length} \u4E2A\u63D2\u4EF6\u52A0\u8F7D\u5931\u8D25`);return c.length>0&&console.log(`[custom-spider] \u6210\u529F\u52A0\u8F7D ${c.length} \u4E2A\u63D2\u4EF6`),Zw={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:c},c})();try{return await om.promise}finally{om.key===r&&(om={key:"",promise:null})}},Rlt=async t=>{let e=[gut,Tot,yot],r=[Aot,Bit,Oat,Lit,Mit,Wit,Pat,x5e,$it,Fit,bat,Eat,Xct,Nat,Vat,Xat,Cot,gat,jit,Qit,zit,Jit,xat,eat,rat,tlt,Dut,oct,Act,$ot,Dot,Bot,$ct,zct,Kot,uct,Sct,Pct,Jot,pot];(await Lce(t)).forEach(o=>{r.push(Wce(o.name,o.address))}),(await jce(t)).forEach(o=>{r.push(Gce(o.name,o.address))});let i=await WTr(t);r.push(...i),r.push(...e);let{allowOverride:a}=$lt(t.config);return MTr(r,a)},Nlt=(t,e,r)=>{r<10?t.video.sites.push(e):r>=10&&r<20?t.read.sites.push(e):r>=20&&r<30?t.comic.sites.push(e):r>=30&&r<40?t.music.sites.push(e):r>=40&&r<50&&t.pan.sites.push(e)},$Tr=async(t,e)=>{(await jw(e).catch(()=>[])).filter(n=>n?.id&&n?.host&&n?.username).forEach(n=>{t.video.sites.push({key:`nodejs_emby_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Emby"}`,type:3,api:`${OE}/emby/3/server/${encodeURIComponent(n.id)}`})})},FTr=async(t,e)=>{(await Hw(e).catch(()=>[])).filter(n=>n?.id&&n?.server).forEach(n=>{t.video.sites.push({key:`nodejs_alist_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Alist"}`,type:3,api:`${OE}/alist-video/3/server/${encodeURIComponent(n.id)}`})})},eue={};async function iue(t,{db:e,config:r}){t.hasContentTypeParser("application/x-www-form-urlencoded")||t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(p,m,h)=>{h(null,nue.default.parse(String(m||"")))});let n=await Rlt({db:e,config:r}),s=lTr(n),i=new Map(s),a=async()=>null;n.forEach(p=>{let m=OE+"/"+p.meta.key+"/"+p.meta.type;t.register(p.api,{prefix:m});try{let h=p.check?.(t);h&&typeof h.then=="function"&&h.catch(A=>console.error(`[spider-check] ${p.meta.key} failed:`,A))}catch(h){console.error(`[spider-check] ${p.meta.key} failed:`,h)}console.log("Register spider: "+m)});let o=(p,m,h,A={})=>oA(t,m.spiderKey,m.spiderType,h,A,{apiBase:m.apiBase,headers:oTr(p)}),c=async(p,m)=>{let h=hlt(m),A=_lt(i,h);return A||(await a(p),A=_lt(i,h)),{module:h,spider:A}},u=p=>{let m=p.query?.token;return m==null||m===""?{}:{token:m}},l=async(p,m)=>{m.type("application/javascript; charset=utf-8").send(xlt())},d=async(p,m)=>{let{module:h,spider:A}=await c(p,p.params?.module);if(!A){m.code(404).send({error:"module not found"});return}return l(p,m)},f=async(p,m)=>{let{spider:h}=await c(p,p.params?.module);if(!h){m.code(404).send({error:"module not found"});return}let A=iTr(p);try{if(A.refresh!==void 0){m.send(await o(p,h,"init",{ext:A.extend||A.ext||"",extend:A.extend}));return}if(A.play!==void 0){m.send(await o(p,h,"play",{id:A.play,flag:A.flag,extend:A.extend}));return}if(A.ac==="action"&&A.action!==void 0){m.send(await o(p,h,"action",{action:A.action,value:A.value,extend:A.extend}));return}if(A.ac==="detail"&&A.ids!==void 0){m.send(await o(p,h,"detail",{id:A.ids,extend:A.extend}));return}if(A.t!==void 0){m.send(await o(p,h,"category",{id:A.t,page:A.pg||A.page||1,filter:Yce(A.filter,!0),filters:aTr(A.ext||A.f,{}),extend:A.extend}));return}if(A.wd!==void 0){m.send(await o(p,h,"search",{wd:A.wd,page:A.pg||A.page||1,quick:Yce(A.quick,!1),extend:A.extend}));return}m.send(await o(p,h,"home",{filter:Yce(A.filter,!0),extend:A.extend}))}catch(g){p.log?.error?.(g);let b=g?.message||"internal error",y=Number(b.match(/\s(\d{3})$/)?.[1]||500);m.code(y>=400&&y<600?y:500).send({error:b})}};t.get("/uz.js",l),t.get("/api/uz/:module",d),t.route({method:["GET","POST"],url:"/api/:module",handler:f}),t.route({method:["GET","POST"],url:"/api/:version/:kind/:module",handler:f}),TM()&&sTr.forEach(p=>{t.get(p.url,async(m,h)=>xTr(p,m,h,{db:e,config:r}))}),t.register(async p=>{p.get("/check",async function(x,v){v.send({run:!p.stop})});let m=async()=>{let x={video:{sites:[]},read:{sites:[]},comic:{sites:[]},music:{sites:[]},pan:{sites:[]},color:p.config.color||[]},v=await Rlt({db:e,config:r}),I=!1,R=!1,w=[];for(let N of v){let P=Object.assign({},N.meta);if(P.hidden){P.key==="emby"?I=!0:P.key==="alist-video"&&(R=!0);continue}P.api=OE+"/"+P.key+"/"+P.type,P.key="nodejs_"+P.key;let B=N.meta.type;if(P.cms){w.push({meta:P,stype:B});continue}Nlt(x,P,B)}return I&&await $Tr(x,{db:e,config:r}),R&&await FTr(x,{db:e,config:r}),w.forEach(({meta:N,stype:P})=>Nlt(x,N,P)),x},h=async(x,v)=>{let I=await Kw(x.server),R=v.video.sites,w={},N={};R.forEach(B=>{N[B.key]=B});let P=[];return I.forEach(B=>{w[B.key]=!0;let M=N[B.key];if(M&&B.enable){let D=typeof B.name=="string"?B.name.trim():"";P.push({...M,name:D||M.name})}}),R.forEach(B=>{w[B.key]||P.push(B)}),v.video.sites=P,v},A=async x=>{let v=await m();return await h(x,v),v},g=x=>{let v=cTr(x.api);if(!v||Number(v.spiderType)!==3)return null;let I=uTr(x.key);return Mlt(i,[x.key,I],v),{module:I,ref:v}};a=async x=>{(await A(x)).video.sites.forEach(g)};let b=async x=>{let v=await A(x),I=Jw(x).replace(/\/$/,""),R=v.video.sites.map(w=>{let N=g(w);if(!N)return null;let P=N.module,B={key:`t4_${P}`,name:w.name,type:4,api:`${I}/api/${encodeURIComponent(P)}`,searchable:w.searchable??1,quickSearch:w.quickSearch??0,filterable:w.filterable??1};return w.ext!==void 0&&w.ext!==null&&w.ext!==""&&(B.ext=w.ext),B}).filter(Boolean);return{sites_count:R.length,sites:R,color:v.color||[]}},y=async(x,v)=>{let I=await A(x),R=Jw(x).replace(/\/$/,""),w=u(x),N=I.video.sites.map(P=>{let B=g(P);if(!B)return null;let M=B.module;return{module:M,name:P.name,scriptUrl:ylt(R,M,w),t4ApiUrl:Alt(R,M,w)}}).filter(Boolean);v.send(blt(N))};p.get("/config",async function(x,v){let I=await A(x);I.video.danmuSearchUrl=`http://127.0.0.1:${x.server.address().port}/website/danmu/fe`,v.send(I)}),p.get("/t4",b),p.get("/uz",y),p.get("/full-config",m)}),t.get("/danmu-proxy",async(p,m)=>{try{let A=String(p.query?.format||"").toLowerCase()==="json",g=(J=200)=>{if(A){m.code(J).send({success:!1,comments:[],count:0,match:null});return}m.code(J).header("Content-Type","application/xml"),m.send('<?xml version="1.0" encoding="UTF-8"?><i/>')},b=await _M(p.server);if(!b?.autoPush){g();return}let{name:y,episodeNumber:x,originalName:v}=p.query,I=String(v||"").trim(),R=String(y||"").trim()||sA(I)||I,w=b.debug||!1;w&&(console.log("=== \u5F39\u5E55\u5339\u914D\u8C03\u8BD5\u4FE1\u606F ==="),console.log("\u4F20\u5165\u53C2\u6570:"),console.log(" - \u89C6\u9891\u540D\u79F0:",R||"(\u672A\u63D0\u4F9B)"),console.log(" - \u539F\u59CB\u540D\u79F0:",I||"(\u672A\u63D0\u4F9B)"),console.log(" - \u96C6\u6570:",x),console.log("\u914D\u7F6E\u7684\u5F39\u5E55\u6E90\u6570\u91CF:",b.urls.length));let N=1,B=(I||R).match(/第([一二三四五六七八九十\d]+)å­£/);if(B){let J=B[1];N={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u5341:10}[J]||parseInt(J)||1,w&&console.log("\u68C0\u6D4B\u5230\u5B63\u6570\u4FE1\u606F:",`\u7B2C${N}\u5B63`)}let M=`S${N}`,D=!x||x==="0",L=R;!D&&x&&(L=`${R} ${M}E${x}`),w&&console.log("\u6784\u9020\u7684\u6587\u4EF6\u540D:",L);let Z=async(J,se,oe)=>{w&&(console.log(` +`}catch{return""}},xlt=t=>{let e=String(t||"").trim();return e.toLowerCase().endsWith(".js")?e.slice(0,-3):e},blt=(t,e={})=>{let r=Object.entries(e).filter(([,n])=>n!=null&&n!=="").map(([n,s])=>`${encodeURIComponent(n)}=${encodeURIComponent(String(s))}`).join("&");return r?`${t}${t.includes("?")?"&":"?"}${r}`:t},Elt=(t,e,r={})=>blt(`${t}/api/${encodeURIComponent(e)}`,{filter:!0,...r}),_lt=(t,e,r={})=>blt(`${t}/uz.js`,{...r,key:e}),iTr=()=>{let t=[Xw.default.resolve(process.cwd(),"src/assets/uz.js"),Xw.default.resolve(process.cwd(),"nodejs/src/assets/uz.js"),Xw.default.resolve(process.cwd(),"dist/assets/uz.js"),Xw.default.resolve(process.cwd(),"nodejs/dist/assets/uz.js")],e=t.find(r=>Yce.default.existsSync(r));if(!e)throw new Error(`uz.js asset not found: ${t.join(", ")}`);return e},Slt=()=>sTr()||Yce.default.readFileSync(iTr(),"utf8"),vlt=t=>({vod:t.map(e=>({key:e.module,name:e.name,api:e.scriptUrl,webSite:e.t4ApiUrl,version:1,type:101}))});var aTr=new Set(["0","false","no","off"]),TM=()=>({username:process.env.CATPAW_DIST_AUTH_USER||"CatPawPlay",password:process.env.CATPAW_DIST_AUTH_PASS||"CatPawPlay"}),wM=()=>{let t=String(process.env.CATPAW_DIST_AUTH||"").trim().toLowerCase();return!aTr.has(t)},Zw=(t,e={})=>{let r=e.includePrefix!==!1,s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),a=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim()||(t.socket?.encrypted?"https":"http"),o=r?String(t.server?.prefix||"").replace(/\/$/,""):"";if(s)return`${a}://${s}${o}`;let c=t.server?.address?.();return c?.url?`${String(c.url).replace(/\/$/,"")}${o}`:c?.port?`http://127.0.0.1:${c.port}${o}`:o||""},e2=(t,e,r=null)=>{if(!t)return e;let n=new URL(e,t);return(r?.username||r?.password)&&(n.username=r.username||"",n.password=r.password||""),n.toString()};var PE="/spider",oTr=new Set([".cjs",".mjs",".js"]),Wlt=/^[a-z0-9_-]{2,32}$/,$lt=new Set(["http:","https:"]),s2="nodejs_",Flt="__catpawProfile",cTr=new Set([Flt,"server","embyPlayback"]),uTr=[{url:"/index.js",fileName:"index.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.js.md5",fileName:"index.js.md5",md5Source:"index.js",contentType:"text/plain; charset=utf-8"},{url:"/index.config.js",fileName:"index.config.js",contentType:"application/javascript; charset=utf-8"},{url:"/index.config.js.md5",fileName:"index.config.js.md5",md5Source:"index.config.js",contentType:"text/plain; charset=utf-8"}],t2={key:"",expireAt:0,spiders:[]},om={key:"",promise:null},Clt=new Map,lTr=t=>({...t.query&&typeof t.query=="object"?t.query:{},...t.body&&typeof t.body=="object"?t.body:{}}),Jce=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},dTr=(t,e={})=>{if(t==null||t==="")return e;if(typeof t=="object")return t;try{let r=Buffer.from(String(t),"base64").toString("utf8");return JSON.parse(r)}catch{try{return JSON.parse(String(t))}catch{return e}}},fTr=t=>{let e={},n=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||String(t.headers?.host||"").split(",")[0].trim(),i=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||String(t.protocol||"").trim();return n&&(e.host=n,e["x-forwarded-host"]=n),i&&(e["x-forwarded-proto"]=i),Object.keys(e).length>0?e:void 0},pTr=t=>{let e=String(t||"").trim().replace(/\/+$/,""),r=e.match(/^\/spider\/([^/]+)\/(\d+)(?:\/.*)?$/);return r?{spiderKey:decodeURIComponent(r[1]),spiderType:Number(r[2]),apiBase:e}:null},mTr=t=>{let e=String(t||"").trim();return e.toLowerCase().startsWith(s2)?e.slice(s2.length):e},Ult=(t,e,r)=>{!r||Number(r.spiderType)!==3||e.map(n=>String(n||"").trim()).filter(Boolean).forEach(n=>{t.set(n.toLowerCase(),r)})},hTr=t=>{let e=new Map;return t.forEach(r=>{let n=String(r?.meta?.key||"").trim(),s=Number(r?.meta?.type||0);if(!n||s!==3||r?.meta?.hidden)return;let i={spiderKey:n,spiderType:s,apiBase:`${PE}/${encodeURIComponent(n)}/${s}`};Ult(e,[n,`${s2}${n}`],i)}),e},Ilt=(t,e)=>{let r=String(e||"").trim();if(!r)return null;let n=r.toLowerCase(),s=n.startsWith(s2)?n.slice(s2.length):n;return t.get(n)||t.get(s)||null},gTr=t=>{let[e,r]=String(t||"").split(/\s+/,2);if(e?.toLowerCase()!=="basic"||!r)return null;let n="";try{n=Buffer.from(r,"base64").toString("utf8")}catch{return null}let s=n.indexOf(":");return s<0?null:{username:n.slice(0,s),password:n.slice(s+1)}},ATr=(t,e)=>{let r=gTr(t.headers?.authorization),n=TM();return r?.username===n.username&&r?.password===n.password?!0:(e.code(401).header("WWW-Authenticate",'Basic realm="CatPaw dist"').send("Authentication required"),!1)},yTr=t=>Ms.default.resolve(process.cwd(),"dist",t),qlt=t=>Object.prototype.toString.call(t)==="[object Object]",rue=(t,e={})=>{try{return JSON.parse(JSON.stringify(t??e))}catch{return e}},xTr=t=>JSON.stringify(t,null,2).replace(/^(\s*)"([A-Za-z_$][\w$]*)":/gm,"$1$2:"),bTr=async t=>{try{let e=await t.getData("/");return qlt(e)?e:{}}catch{return{}}},ETr=t=>{let e={};return Object.entries(qlt(t)?t:{}).forEach(([r,n])=>{cTr.has(r)||(e[r]=rue(n,n))}),e},_Tr=async({db:t,config:e})=>{let r=await bTr(t),n=ETr(r),s={...rue(e,{}),...rue(n,{})};return delete s.server,Object.keys(n).length>0&&(s[Flt]=n),["var index_config = {"," server: {}, //\u8FD9\u91CC\u4E0D\u8981\u52A8\uFF0C\u52A0\u7A7A\u683C\u90FD\u4E0D\u884C\uFF0C\u540E\u53F0\u81EA\u52A8\u751F\u6210",xTr(s).replace(/^\{\n?/,"").replace(/\n?\}$/,""),"};",'if (typeof module !== "undefined" && module.exports) module.exports = index_config;',""].join(` +`)},STr=async(t,e,r)=>(t.md5Source||t.fileName)!=="index.config.js"?e:Buffer.from(await _Tr(r),"utf8"),vTr=async(t,e,r,n)=>{if(ATr(e,r))try{let s=t.md5Source||t.fileName,i=await OE.default.readFile(yTr(s)),a=await STr(t,i,n),o=t.md5Source?(0,PM.createHash)("md5").update(a).digest("hex"):a;r.header("Content-Type",t.contentType).send(o)}catch(s){if(s?.code==="ENOENT"){r.code(404).send({error:`dist artifact not found: ${t.fileName}`,hint:"\u8BF7\u5148\u5728 nodejs \u76EE\u5F55\u8FD0\u884C npm run build \u6216 npm run build:dbg"});return}throw s}},Xce=(t,e=!1)=>{if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e},Zce=(t,e=0)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?r:e},CTr=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return $lt.has(r.protocol)?(r.hash="",r.href):""}catch{return""}},Tlt=t=>{let r=(Array.isArray(t)?t:typeof t=="string"?t.split(/[\r\n,;]/):[]).map(n=>CTr(n)).filter(Boolean);return[...new Set(r)]},eue=(t,e,r)=>{if(!Number.isFinite(e)||e<=0)return t;let n;return Promise.race([t,new Promise((s,i)=>{n=setTimeout(()=>i(new Error(r)),e)})]).finally(()=>clearTimeout(n))},ITr=async t=>{try{let e=await OE.default.stat(t);return`${e.mtimeMs}-${e.size}`}catch{return"0"}},jlt=(t={})=>{let e=t.customSpiders||{},r=process.env.NODE_PATH||"/data",n=typeof e.dir=="string"?e.dir.trim():"",s=Tlt(process.env.CATPAW_CUSTOM_SPIDER_URLS),i=Tlt(e.urls),a=s.length>0?s:i,o=process.env.CATPAW_CUSTOM_SPIDER_DIR||n||Ms.default.join(r,"custom-spiders");return{enabled:Xce(process.env.CATPAW_CUSTOM_SPIDER_ENABLED,e.enabled??!0),strict:Xce(process.env.CATPAW_CUSTOM_SPIDER_STRICT,e.strict??!1),allowOverride:Xce(process.env.CATPAW_CUSTOM_SPIDER_ALLOW_OVERRIDE,e.allowOverride??!1),cacheTtlMs:Math.max(0,Zce(process.env.CATPAW_CUSTOM_SPIDER_CACHE_TTL_MS,e.cacheTtlMs??5e3)),factoryTimeoutMs:Math.max(0,Zce(process.env.CATPAW_CUSTOM_SPIDER_FACTORY_TIMEOUT_MS,e.factoryTimeoutMs??1e4)),urlTimeoutMs:Math.max(1e3,Zce(process.env.CATPAW_CUSTOM_SPIDER_URL_TIMEOUT_MS,e.urlTimeoutMs??1e4)),dir:Ms.default.resolve(o),urls:a}},wlt=(t,e)=>{let n=`[custom-spider:${Ms.default.basename(e)}]`,s=Object.freeze({info:(...i)=>console.log(n,...i),warn:(...i)=>console.warn(n,...i),error:(...i)=>console.error(n,...i),debug:(...i)=>console.debug(n,...i)});return Object.freeze({http:Object.freeze({axios:Ae,req:he,create:(i={})=>Ae.create(i)}),cheerio:Object.freeze({load:Me}),utils:Object.freeze({extractTitle:sA,findEpisodeNumber:Yw,firstSuccessfulUrl:Xn}),logger:s,app:Object.freeze({spiderPrefix:PE,nodePath:process.env.NODE_PATH||"."})})},TTr=async t=>{try{return(await OE.default.readdir(t,{withFileTypes:!0})).filter(r=>r.isFile()).map(r=>Ms.default.join(t,r.name)).filter(r=>oTr.has(Ms.default.extname(r).toLowerCase())).sort((r,n)=>r.localeCompare(n))}catch(e){if(e?.code==="ENOENT")return[];throw e}},NM=t=>{if(typeof t=="string")return t;if(Buffer.isBuffer(t))return t.toString("utf8");if(t==null)return"";try{return JSON.stringify(t)}catch{return String(t)}},OM=new Map,iue=t=>String(t||"").trim(),wTr=t=>{let e=NM(t);if(!e)return"";let r=e.split(/\r?\n/,80);for(let n of r){let s=String(n||"").trim();if(!s)continue;let i=s.match(/^(?:\/\/+|\/\*+|\*+)?\s*@name(?:\s*[::])?\s+(.+?)\s*$/i);if(!i?.[1])continue;let a=i[1].replace(/\*\/\s*$/,"").trim();if(a)return a}return""},Hlt=(t,e)=>{let r=iue(t);if(!r)return"";let n=wTr(e);return n?(OM.set(r,n),n):(OM.delete(r),"")},Qlt=t=>{let e=iue(t);return e?String(OM.get(e)||"").trim():""},Rlt={axios:Ae,cheerio:Sv,"crypto-js":Blt.default,dayjs:Mlt.default,qs:sue.default},RTr=(t,e)=>{let r=n=>n==="omnibox_sdk"?{request:async(s,i={})=>{let a=String(i.method||"GET").toUpperCase(),o=i.headers||{},c=i.body;c&&typeof c=="object"&&!Buffer.isBuffer(c)&&String(o["Content-Type"]||o["content-type"]||"").toLowerCase().includes("application/json")&&(c=JSON.stringify(c));let u=await Ae.request({url:s,method:a,headers:o,data:c,timeout:i.timeout,validateStatus:()=>!0});return{statusCode:u.status,body:NM(u.data)}},log:(s,...i)=>{let a=i.map(o=>typeof o=="string"?o:NM(o)).join(" ");return s==="error"?console.error(a):s==="warn"||s==="warning"?console.warn(a):console.log(a)},getSourceId:async()=>"builtin",processScraping:async(s,i,a,o=[])=>{let c=String(s||"");return Clt.set(c,{scrapeData:null,scrapeType:"",videoMappings:[]}),{ok:!1,unsupported:!0,count:Array.isArray(o)?o.length:0}},getScrapeMetadata:async s=>{let i=String(s||"");return Clt.get(i)||null}}:n==="spider_runner"?{run:()=>{}}:Rlt[n]?Rlt[n]:t(n);return r.resolve=t.resolve?.bind(t),r.main={filename:e},r},Glt=(t,e)=>{let r=String(t?.message||""),n=r.includes("require is not defined")||r.includes("module is not defined")||r.includes("exports is not defined"),s=/(?:^|\W)module\.exports(?:\W|$)|(?:^|\W)exports\.[A-Za-z_$][\w$]*|(?:^|\W)require\s*\(/m.test(e);return n||s},Vlt=(t,e,r="")=>{let n={exports:{}},s=r||(0,nue.pathToFileURL)(Ms.default.resolve(process.cwd(),".custom-spider-runtime.cjs")).href,i=(0,Llt.createRequire)(s),a=RTr(i,e);return new Function("require","module","exports","__filename","__dirname",t)(a,n,n.exports,e,Ms.default.dirname(e)),{default:n.exports}},NTr=async(t,e)=>{let r=await Ae.get(t,{responseType:"text",timeout:e,transformResponse:[a=>a],validateStatus:()=>!0});if(r.status>=400)throw new Error(`[custom-spider] \u8FDC\u7A0B\u63D2\u4EF6\u62C9\u53D6\u5931\u8D25(${r.status}): ${t}`);let n=NM(r.data);Hlt(t,n);let s=(0,PM.createHash)("sha1").update(n).digest("hex").slice(0,12),i=`data:text/javascript;charset=utf-8,${encodeURIComponent(n)}`;try{return await import(`${i}#${s}`)}catch(a){if(!Glt(a,n))throw a;let o;try{let c=new URL(t),u=Ms.default.basename(c.pathname)||`remote-${s}.js`;o=Ms.default.resolve(process.cwd(),".remote-custom-spiders",u)}catch{o=Ms.default.resolve(process.cwd(),".remote-custom-spiders",`remote-${s}.js`)}return Vlt(n,o)}},OTr=async t=>{let e=iue(t),r="",n=!1;try{r=await OE.default.readFile(t,"utf8"),n=!0,Hlt(e,r)}catch{OM.delete(e)}let s=(0,nue.pathToFileURL)(t);s.searchParams.set("v",await ITr(t));try{return await import(s.href)}catch(i){if(Ms.default.extname(t).toLowerCase()!==".js")throw i;let o=n?r:await OE.default.readFile(t,"utf8");if(!Glt(i,o))throw i;return Vlt(o,t,s.href)}},Nlt=t=>!!t&&typeof t=="object"&&typeof t.api=="function",Olt=t=>!t||typeof t!="object"||typeof t.api=="function"?!1:["home","category","detail","search","play"].some(r=>typeof t[r]=="function"),PTr=t=>{let e=String(t||"");if(!e.includes("%"))return e;try{return decodeURIComponent(e)}catch{return e}},DM=t=>{let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);if($lt.has(r.protocol)){let n=Ms.default.parse(Ms.default.basename(r.pathname||"")).name;return PTr(n)}}catch{}return Ms.default.parse(e).name},DTr=t=>{let e=DM(t),r=String(e).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");return Wlt.test(r)?r:`omni_${(0,PM.createHash)("sha1").update(t).digest("hex").slice(0,10)}`},kTr=t=>{if(!t||typeof t!="object"||t.vod_play_from&&t.vod_play_url)return t;let e=Array.isArray(t.vod_play_sources)?t.vod_play_sources:[];if(e.length===0)return t;let r=[],n=[];return e.forEach((s,i)=>{let a=String(s?.name||`\u7EBF\u8DEF${i+1}`).trim()||`\u7EBF\u8DEF${i+1}`,c=(Array.isArray(s?.episodes)?s.episodes:[]).map((u,l)=>{let d=String(u?.name||`\u64AD\u653E${l+1}`).trim()||`\u64AD\u653E${l+1}`,f=String(u?.playId||u?.url||u?.id||"").trim();return f?`${d}$${f}`:""}).filter(Boolean);c.length>0&&(r.push(a),n.push(c.join("#")))}),r.length===0||n.length===0?t:{...t,vod_play_from:r.join("$$$"),vod_play_url:n.join("$$$")}},RM=t=>t&&typeof t=="object"?t:{list:[]},Plt=t=>{let e=RM(t),r=Array.isArray(e.list)?e.list:[];return{...e,list:r.map(n=>kTr(n))}},LTr=(t,e="")=>{if(t&&typeof t=="object"){let r=String(t.url||"").trim();if(r)return{...t,parse:t.parse??0,url:r,header:t.header||{}};let n=Array.isArray(t.urls)?t.urls:[];if(n.length>0){let s=n[0]||{},i=String(s.url||s.playId||s.id||"").trim();if(i)return{parse:t.parse??0,url:i,header:t.header||{}}}if(t.parse!==void 0)return{parse:t.parse??0,url:"",header:t.header||{}}}return typeof t=="string"&&t.trim()?{parse:0,url:t.trim()}:{parse:1,url:String(e||"")}},BTr=(t,e)=>{let r=t.meta||t.META||{},n=Number(r.type),s=Number.isInteger(n)&&n>=0&&n<50?n:3,i=String(r.key||"").trim()||DTr(e),a=Qlt(e),o=String(r.name||"").trim()||a||DM(e)||i,c=async(u,l)=>{if(typeof u!="function")return{};let d=await u(l||{});return d===void 0?{}:d};return{meta:{key:i,name:o,type:s},api:async u=>{u.post("/init",async()=>({})),u.post("/home",async l=>{let d=await c(t.home,{filter:l.body?.filter??!1});return RM(d)}),u.post("/category",async l=>{let d=l.body||{},f=await c(t.category,{categoryId:d.id,id:d.id,page:d.page??1,filters:d.filters||{},filter:d.filter??!1});return RM(f)}),u.post("/detail",async l=>{let d=l.body?.id;if(Array.isArray(d)){let p=[];for(let m of d){let h=await c(t.detail,{videoId:m,id:m}),A=Plt(h);Array.isArray(A.list)&&p.push(...A.list)}return{list:p}}let f=await c(t.detail,{videoId:d,id:d});return Plt(f)}),u.post("/search",async l=>{let d=l.body?.wd??"",f=await c(t.search,{keyword:d,wd:d,page:l.body?.page??1,quick:l.body?.quick??!1});return RM(f)}),u.post("/play",async l=>{let d=l.body?.id??"",f=await c(t.play,{playId:d,id:d,flag:l.body?.flag??""});return LTr(f,d)})}}},MTr=(t,e)=>{let r=typeof t?.createSpider=="function"&&t.createSpider||typeof t?.default?.createSpider=="function"&&t.default.createSpider;if(r)return{mode:"factory",value:r};let n=Nlt(t?.default)&&t.default||Nlt(t)&&t;if(n)return{mode:"spider",value:n};let s=Olt(t?.default)&&t.default||Olt(t)&&t;if(s)return{mode:"omnibox-object",value:s};let i=typeof t?.default=="function"&&t.default||typeof t=="function"&&t;if(i)return{mode:"callable",value:i};throw new Error(`${e} \u7F3A\u5C11 createSpider(ctx) / spider \u5BF9\u8C61 / omnibox \u5BF9\u8C61 / legacy register \u5BFC\u51FA`)},WTr=t=>{let e=String(t?.message||"");return e?e.includes("spider \u5FC5\u987B\u662F\u5BF9\u8C61")||e.includes("spider.api \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("spider.check \u5FC5\u987B\u662F\u51FD\u6570")||e.includes("is not a function")||e.includes("Cannot read properties of undefined")||e.includes("Cannot set properties of undefined"):!1},$Tr=(t,e)=>{let r=String(t?.meta?.key||"").trim(),n=String(t?.meta?.api||"").trim(),s=DM(e),i=[];r&&i.push(r);let a=n.match(/\/([a-zA-Z0-9_-]+)$/);a?.[1]&&i.push(a[1]),s&&i.push(s);for(let o of i){let c=String(o).trim().toLowerCase().replace(/[^a-z0-9_-]/g,"");if(Wlt.test(c))return{key:c,from:o}}return null},FTr=t=>{if(!t||typeof t!="object"||Object.keys(t).length===0)return"";try{return Buffer.from(JSON.stringify(t),"utf8").toString("base64")}catch{return""}},r2=async(t,e,r)=>{let n,a=await t({query:r,server:e},{send(o){return n=o,o}});return a===void 0?n:a},UTr=async(t,e)=>{let r=[],n={get(l,d){r.push({method:"get",routePath:l,handler:d})},post(l,d){r.push({method:"post",routePath:l,handler:d})},put(l,d){r.push({method:"put",routePath:l,handler:d})},delete(l,d){r.push({method:"delete",routePath:l,handler:d})}},s={sites:[]};await Promise.resolve(t(n,s));let i=Array.isArray(s.sites)?s.sites:[];if(i.length===0)throw new Error(`${e} legacy register \u672A\u901A\u8FC7 opt.sites \u66B4\u9732 meta`);i.length>1&&console.warn(`[custom-spider] legacy register \u4EC5\u517C\u5BB9\u9996\u4E2A site: ${Ms.default.basename(e)}`);let a=i[0]||{},o=String(a.api||"").trim(),c=o?r.find(l=>l.routePath===o):null;if(o&&!c){let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register meta.api(${o}) \u672A\u5339\u914D\u5DF2\u6CE8\u518C\u8DEF\u7531: ${l||"(none)"}`)}let u=c;if(!u)if(r.length===1)u=r[0];else{let l=r.map(d=>d.routePath).join(", ");throw new Error(`${e} legacy register \u8DEF\u7531\u4E0D\u660E\u786E\uFF0C\u8BF7\u63D0\u4F9B\u53EF\u5339\u914D\u7684 meta.api\uFF0C\u5F53\u524D\u8DEF\u7531: ${l||"(none)"}`)}if(!u||typeof u.handler!="function")throw new Error(`${e} legacy register \u672A\u6CE8\u518C\u6709\u6548\u8DEF\u7531`);return{meta:{key:a.key,name:a.name,type:a.type},api:async l=>{l.post("/init",async()=>({})),l.post("/home",async d=>r2(u.handler,d.server,{filter:d.body?.filter??!1})),l.post("/category",async d=>{let f=d.body||{},p={ac:"detail",t:f.id,pg:f.page??1,filter:f.filter??!1},m=FTr(f.filters);return m&&(p.ext=m),r2(u.handler,d.server,p)}),l.post("/detail",async d=>{let f=d.body?.id,p=Array.isArray(f)?f.join(","):f;return r2(u.handler,d.server,{ac:"detail",ids:p})}),l.post("/search",async d=>r2(u.handler,d.server,{wd:d.body?.wd??"",pg:d.body?.page??1,quick:d.body?.quick??!1})),l.post("/play",async d=>r2(u.handler,d.server,{play:d.body?.id??"",flag:d.body?.flag??"",parser:d.body?.parser??""}))}}},n2=(t,e)=>{if(!t||typeof t!="object")throw new Error(`${e} spider \u5FC5\u987B\u662F\u5BF9\u8C61`);if(typeof t.api!="function")throw new Error(`${e} spider.api \u5FC5\u987B\u662F\u51FD\u6570`);if(t.check&&typeof t.check!="function")throw new Error(`${e} spider.check \u5FC5\u987B\u662F\u51FD\u6570`);let r=$Tr(t,e);if(!r)throw new Error(`${e} meta.key \u4E0D\u5408\u6CD5`);let n=r.key,s=Qlt(e),i=String(t.meta?.name||"").trim()||s||DM(e)||n,a=Number(t.meta?.type);if(!i)throw new Error(`${e} meta.name \u4E0D\u80FD\u4E3A\u7A7A`);if(!Number.isInteger(a)||a<0||a>=50)throw new Error(`${e} meta.type \u5FC5\u987B\u662F 0-49 \u7684\u6574\u6570`);let o=String(t.meta?.key||"").trim();return o&&o!==n&&console.log(`[custom-spider] key \u517C\u5BB9\u4FEE\u6B63: ${o} -> ${n}`),{...t,meta:{...t.meta,key:n,name:i,type:a,custom:!0}}},qTr=(t,e=!1)=>{let r=[],n=new Map;return t.forEach(s=>{let i=`${s.meta.key}:${s.meta.type}`;if(!n.has(i)){n.set(i,r.length),r.push(s);return}if(e&&s.meta?.custom){console.warn(`[custom-spider] override: ${i}`),r[n.get(i)]=s;return}console.warn(`[custom-spider] duplicate ignored: ${i}`)}),r},jTr=async t=>{let e=jlt(t.config);if(!e.enabled)return[];let r=`${e.dir}|${e.urls.join(",")}|${e.urlTimeoutMs}|${e.strict}|${e.cacheTtlMs}|${e.factoryTimeoutMs}`,n=Date.now();if(e.cacheTtlMs>0&&t2.key===r&&t2.expireAt>n)return t2.spiders;if(om.promise&&om.key===r)return om.promise;om.key=r,om.promise=(async()=>{let s=await TTr(e.dir),i=e.urls;if(s.length===0&&i.length===0)return t2={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:[]},[];s.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${s.length} \u4E2A\u672C\u5730\u63D2\u4EF6: ${s.map(l=>Ms.default.basename(l)).join(", ")}`),i.length>0&&console.log(`[custom-spider] \u53D1\u73B0 ${i.length} \u4E2A\u8FDC\u7A0B\u63D2\u4EF6: ${i.join(", ")}`);let a=[...s.map(l=>({id:l,display:Ms.default.basename(l),load:()=>OTr(l)})),...i.map(l=>({id:l,display:l,load:()=>NTr(l,e.urlTimeoutMs)}))],o=await Promise.allSettled(a.map(async l=>{let d=await l.load(),f=MTr(d,l.id);if(f.mode==="spider")return console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy spider export)`),n2(f.value,l.id);if(f.mode==="omnibox-object"){console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (omnibox object export)`);let h=BTr(f.value,l.id);return n2(h,l.id)}if(f.mode==="callable"){let h=wlt(t,l.id);try{let A=await eue(Promise.resolve(f.value(h)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return n2(A,l.id)}catch(A){if(!WTr(A))throw A;console.log(`[custom-spider] \u517C\u5BB9\u6A21\u5F0F\u52A0\u8F7D: ${l.display} (legacy register export)`);let g=await eue(UTr(f.value,l.id),e.factoryTimeoutMs,`[custom-spider] legacy register \u9002\u914D\u8D85\u65F6: ${l.id}`);return n2(g,l.id)}}let p=wlt(t,l.id),m=await eue(Promise.resolve(f.value(p)),e.factoryTimeoutMs,`[custom-spider] createSpider \u8D85\u65F6: ${l.id}`);return n2(m,l.id)})),c=[],u=[];if(o.forEach((l,d)=>{l.status==="fulfilled"?c.push(l.value):(u.push(a[d].display),console.error(`[custom-spider] \u52A0\u8F7D\u5931\u8D25: ${a[d].display}`,l.reason))}),e.strict&&u.length>0)throw new Error(`[custom-spider] strict \u6A21\u5F0F: ${u.length} \u4E2A\u63D2\u4EF6\u52A0\u8F7D\u5931\u8D25`);return c.length>0&&console.log(`[custom-spider] \u6210\u529F\u52A0\u8F7D ${c.length} \u4E2A\u63D2\u4EF6`),t2={key:r,expireAt:e.cacheTtlMs>0?Date.now()+e.cacheTtlMs:0,spiders:c},c})();try{return await om.promise}finally{om.key===r&&(om={key:"",promise:null})}},Dlt=async t=>{let e=[but,Oot,_ot],r=[Eot,$it,Lat,Fit,Uit,qit,Bat,S5e,jit,Hit,vat,Cat,rut,kat,Xat,rot,Not,bat,Vit,Kit,Zit,tat,Sat,sat,aat,ilt,Wut,dct,Ect,jot,Wot,$ot,jct,Zct,Jot,pct,Tct,Bct,tct,Aot];(await Mce(t)).forEach(o=>{r.push($ce(o.name,o.address))}),(await Hce(t)).forEach(o=>{r.push(Vce(o.name,o.address))});let i=await jTr(t);r.push(...i),r.push(...e);let{allowOverride:a}=jlt(t.config);return qTr(r,a)},klt=(t,e,r)=>{r<10?t.video.sites.push(e):r>=10&&r<20?t.read.sites.push(e):r>=20&&r<30?t.comic.sites.push(e):r>=30&&r<40?t.music.sites.push(e):r>=40&&r<50&&t.pan.sites.push(e)},HTr=async(t,e)=>{(await Qw(e).catch(()=>[])).filter(n=>n?.id&&n?.host&&n?.username).forEach(n=>{t.video.sites.push({key:`nodejs_emby_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Emby"}`,type:3,api:`${PE}/emby/3/server/${encodeURIComponent(n.id)}`})})},QTr=async(t,e)=>{(await Gw(e).catch(()=>[])).filter(n=>n?.id&&n?.server).forEach(n=>{t.video.sites.push({key:`nodejs_alist_${n.id}`,name:`\u300C\u76F4\u300D${n.name||"Alist"}`,type:3,api:`${PE}/alist-video/3/server/${encodeURIComponent(n.id)}`})})},tue={};async function aue(t,{db:e,config:r}){t.hasContentTypeParser("application/x-www-form-urlencoded")||t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(p,m,h)=>{h(null,sue.default.parse(String(m||"")))});let n=await Dlt({db:e,config:r}),s=hTr(n),i=new Map(s),a=async()=>null;n.forEach(p=>{let m=PE+"/"+p.meta.key+"/"+p.meta.type;t.register(p.api,{prefix:m});try{let h=p.check?.(t);h&&typeof h.then=="function"&&h.catch(A=>console.error(`[spider-check] ${p.meta.key} failed:`,A))}catch(h){console.error(`[spider-check] ${p.meta.key} failed:`,h)}console.log("Register spider: "+m)});let o=(p,m,h,A={})=>oA(t,m.spiderKey,m.spiderType,h,A,{apiBase:m.apiBase,headers:fTr(p)}),c=async(p,m)=>{let h=xlt(m),A=Ilt(i,h);return A||(await a(p),A=Ilt(i,h)),{module:h,spider:A}},u=p=>{let m=p.query?.token;return m==null||m===""?{}:{token:m}},l=async(p,m)=>{m.type("application/javascript; charset=utf-8").send(Slt())},d=async(p,m)=>{let{module:h,spider:A}=await c(p,p.params?.module);if(!A){m.code(404).send({error:"module not found"});return}return l(p,m)},f=async(p,m)=>{let{spider:h}=await c(p,p.params?.module);if(!h){m.code(404).send({error:"module not found"});return}let A=lTr(p);try{if(A.refresh!==void 0){m.send(await o(p,h,"init",{ext:A.extend||A.ext||"",extend:A.extend}));return}if(A.play!==void 0){m.send(await o(p,h,"play",{id:A.play,flag:A.flag,extend:A.extend}));return}if(A.ac==="action"&&A.action!==void 0){m.send(await o(p,h,"action",{action:A.action,value:A.value,extend:A.extend}));return}if(A.ac==="detail"&&A.ids!==void 0){m.send(await o(p,h,"detail",{id:A.ids,extend:A.extend}));return}if(A.t!==void 0){m.send(await o(p,h,"category",{id:A.t,page:A.pg||A.page||1,filter:Jce(A.filter,!0),filters:dTr(A.ext||A.f,{}),extend:A.extend}));return}if(A.wd!==void 0){m.send(await o(p,h,"search",{wd:A.wd,page:A.pg||A.page||1,quick:Jce(A.quick,!1),extend:A.extend}));return}m.send(await o(p,h,"home",{filter:Jce(A.filter,!0),extend:A.extend}))}catch(g){p.log?.error?.(g);let b=g?.message||"internal error",y=Number(b.match(/\s(\d{3})$/)?.[1]||500);m.code(y>=400&&y<600?y:500).send({error:b})}};t.get("/uz.js",l),t.get("/api/uz/:module",d),t.route({method:["GET","POST"],url:"/api/:module",handler:f}),t.route({method:["GET","POST"],url:"/api/:version/:kind/:module",handler:f}),wM()&&uTr.forEach(p=>{t.get(p.url,async(m,h)=>vTr(p,m,h,{db:e,config:r}))}),t.register(async p=>{p.get("/check",async function(x,v){v.send({run:!p.stop})});let m=async()=>{let x={video:{sites:[]},read:{sites:[]},comic:{sites:[]},music:{sites:[]},pan:{sites:[]},color:p.config.color||[]},v=await Dlt({db:e,config:r}),C=!1,R=!1,w=[];for(let N of v){let P=Object.assign({},N.meta);if(P.hidden){P.key==="emby"?C=!0:P.key==="alist-video"&&(R=!0);continue}P.api=PE+"/"+P.key+"/"+P.type,P.key="nodejs_"+P.key;let L=N.meta.type;if(P.cms){w.push({meta:P,stype:L});continue}klt(x,P,L)}return C&&await HTr(x,{db:e,config:r}),R&&await QTr(x,{db:e,config:r}),w.forEach(({meta:N,stype:P})=>klt(x,N,P)),x},h=async(x,v)=>{let C=await Kw(x.server),R=v.video.sites,w={},N={};R.forEach(L=>{N[L.key]=L});let P=[];return C.forEach(L=>{w[L.key]=!0;let M=N[L.key];if(M&&L.enable){let k=typeof L.name=="string"?L.name.trim():"";P.push({...M,name:k||M.name})}}),R.forEach(L=>{w[L.key]||P.push(L)}),v.video.sites=P,v},A=async x=>{let v=await m();return await h(x,v),v},g=x=>{let v=pTr(x.api);if(!v||Number(v.spiderType)!==3)return null;let C=mTr(x.key);return Ult(i,[x.key,C],v),{module:C,ref:v}};a=async x=>{(await A(x)).video.sites.forEach(g)};let b=async x=>{let v=await A(x),C=Zw(x).replace(/\/$/,""),R=v.video.sites.map(w=>{let N=g(w);if(!N)return null;let P=N.module,L={key:`t4_${P}`,name:w.name,type:4,api:`${C}/api/${encodeURIComponent(P)}`,searchable:w.searchable??1,quickSearch:w.quickSearch??0,filterable:w.filterable??1};return w.ext!==void 0&&w.ext!==null&&w.ext!==""&&(L.ext=w.ext),L}).filter(Boolean);return{sites_count:R.length,sites:R,color:v.color||[]}},y=async(x,v)=>{let C=await A(x),R=Zw(x).replace(/\/$/,""),w=u(x),N=C.video.sites.map(P=>{let L=g(P);if(!L)return null;let M=L.module;return{module:M,name:P.name,scriptUrl:_lt(R,M,w),t4ApiUrl:Elt(R,M,w)}}).filter(Boolean);v.send(vlt(N))};p.get("/config",async function(x,v){let C=await A(x);C.video.danmuSearchUrl=`http://127.0.0.1:${x.server.address().port}/website/danmu/fe`,v.send(C)}),p.get("/t4",b),p.get("/uz",y),p.get("/full-config",m)}),t.get("/danmu-proxy",async(p,m)=>{try{let A=String(p.query?.format||"").toLowerCase()==="json",g=(J=200)=>{if(A){m.code(J).send({success:!1,comments:[],count:0,match:null});return}m.code(J).header("Content-Type","application/xml"),m.send('<?xml version="1.0" encoding="UTF-8"?><i/>')},b=await SM(p.server);if(!b?.autoPush){g();return}let{name:y,episodeNumber:x,originalName:v}=p.query,C=String(v||"").trim(),R=String(y||"").trim()||sA(C)||C,w=b.debug||!1;w&&(console.log("=== \u5F39\u5E55\u5339\u914D\u8C03\u8BD5\u4FE1\u606F ==="),console.log("\u4F20\u5165\u53C2\u6570:"),console.log(" - \u89C6\u9891\u540D\u79F0:",R||"(\u672A\u63D0\u4F9B)"),console.log(" - \u539F\u59CB\u540D\u79F0:",C||"(\u672A\u63D0\u4F9B)"),console.log(" - \u96C6\u6570:",x),console.log("\u914D\u7F6E\u7684\u5F39\u5E55\u6E90\u6570\u91CF:",b.urls.length));let N=1,L=(C||R).match(/第([一二三四五六七八九十\d]+)å­£/);if(L){let J=L[1];N={\u4E00:1,\u4E8C:2,\u4E09:3,\u56DB:4,\u4E94:5,\u516D:6,\u4E03:7,\u516B:8,\u4E5D:9,\u5341:10}[J]||parseInt(J)||1,w&&console.log("\u68C0\u6D4B\u5230\u5B63\u6570\u4FE1\u606F:",`\u7B2C${N}\u5B63`)}let M=`S${N}`,k=!x||x==="0",B=R;!k&&x&&(B=`${R} ${M}E${x}`),w&&console.log("\u6784\u9020\u7684\u6587\u4EF6\u540D:",B);let Z=async(J,se,oe)=>{w&&(console.log(` \u6B63\u5728\u8BF7\u6C42\u5F39\u5E55\u6E90: ${J.name||J.address}`),console.log(`\u8BF7\u6C42URL: ${J.address}/api/v2/match`),console.log(`\u8BF7\u6C42\u9636\u6BB5: ${oe}`),console.log(`\u8BF7\u6C42\u6570\u636E: { fileName: "${se}" }`));let ue=await Ae.post(`${J.address}/api/v2/match`,{fileName:se},{headers:{"Content-Type":"application/json"},timeout:1e4});if(w&&(console.log(` -${J.name||J.address} \u8FD4\u56DE\u7ED3\u679C:`),console.log(" - \u5339\u914D\u6210\u529F:",ue.data?.success),console.log(" - \u662F\u5426\u5339\u914D:",ue.data?.isMatched),console.log(" - \u5339\u914D\u6761\u6570:",ue.data?.matches?.length||0)),ue.data?.success&&ue.data?.isMatched&&ue.data?.matches?.length>0){let Ie=ue.data.matches[0];return w&&(console.log(" - \u5339\u914D\u7ED3\u679C:"),console.log(" * \u96C6\u6570ID:",Ie.episodeId),console.log(" * \u96C6\u6570\u6807\u9898:",Ie.episodeTitle),console.log(" * \u52A8\u753B\u6807\u9898:",Ie.animeTitle)),{url:J,match:Ie,score:100}}return null},W=b.urls.map(async J=>{try{let se=await Z(J,L,"episode-aware");return!se&&!D&&x&&(w&&console.log(` - \u5206\u96C6\u5339\u914D\u5931\u8D25\uFF0C\u964D\u7EA7\u4EC5\u6807\u9898\u91CD\u8BD5: ${R}`),se=await Z(J,R,"title-only-fallback")),!se&&w&&console.log(" - \u672A\u627E\u5230\u7CBE\u786E\u5339\u914D"),se}catch(se){return w&&(console.log(` -${J.name||J.address} \u8BF7\u6C42\u5931\u8D25:`),console.log(" - \u9519\u8BEF\u4FE1\u606F:",se.message),se.response&&(console.log(" - \u54CD\u5E94\u72B6\u6001\u7801:",se.response.status),console.log(" - \u54CD\u5E94\u6570\u636E:",JSON.stringify(se.response.data)))),null}}),K=(await Promise.all(W)).filter(J=>J!==null);w&&console.log(` -\u5339\u914D\u7ED3\u679C\u6C47\u603B: \u5171 ${K.length} \u4E2A\u6709\u6548\u7ED3\u679C`);let j=null;if(K.length>0){let J=K[0];w&&(console.log("\u9009\u62E9\u7684\u5F39\u5E55\u6E90:",J.url.name||J.url.address),console.log("\u9009\u62E9\u7684\u96C6\u6570:",J.match.episodeTitle)),j={url:`${J.url.address}/api/v2/comment/${J.match.episodeId}?withRelated=true&chConvert=1`,sourceName:J.url.name||"\u5F39\u5E55\u6E90",episodeTitle:J.match.episodeTitle,match:{animeTitle:J.match.animeTitle||"",episodeTitle:J.match.episodeTitle||"",episodeId:J.match.episodeId||"",sourceName:J.url.name||"\u5F39\u5E55\u6E90"}},messageToDart({action:"toast",opt:{message:`\u5339\u914D\u5230 ${j.episodeTitle} - \u5F39\u5E55\u89E3\u6790\u4E2D......`,duration:3}})}else w&&console.log(` +${J.name||J.address} \u8FD4\u56DE\u7ED3\u679C:`),console.log(" - \u5339\u914D\u6210\u529F:",ue.data?.success),console.log(" - \u662F\u5426\u5339\u914D:",ue.data?.isMatched),console.log(" - \u5339\u914D\u6761\u6570:",ue.data?.matches?.length||0)),ue.data?.success&&ue.data?.isMatched&&ue.data?.matches?.length>0){let Ce=ue.data.matches[0];return w&&(console.log(" - \u5339\u914D\u7ED3\u679C:"),console.log(" * \u96C6\u6570ID:",Ce.episodeId),console.log(" * \u96C6\u6570\u6807\u9898:",Ce.episodeTitle),console.log(" * \u52A8\u753B\u6807\u9898:",Ce.animeTitle)),{url:J,match:Ce,score:100}}return null},W=b.urls.map(async J=>{try{let se=await Z(J,B,"episode-aware");return!se&&!k&&x&&(w&&console.log(` - \u5206\u96C6\u5339\u914D\u5931\u8D25\uFF0C\u964D\u7EA7\u4EC5\u6807\u9898\u91CD\u8BD5: ${R}`),se=await Z(J,R,"title-only-fallback")),!se&&w&&console.log(" - \u672A\u627E\u5230\u7CBE\u786E\u5339\u914D"),se}catch(se){return w&&(console.log(` +${J.name||J.address} \u8BF7\u6C42\u5931\u8D25:`),console.log(" - \u9519\u8BEF\u4FE1\u606F:",se.message),se.response&&(console.log(" - \u54CD\u5E94\u72B6\u6001\u7801:",se.response.status),console.log(" - \u54CD\u5E94\u6570\u636E:",JSON.stringify(se.response.data)))),null}}),V=(await Promise.all(W)).filter(J=>J!==null);w&&console.log(` +\u5339\u914D\u7ED3\u679C\u6C47\u603B: \u5171 ${V.length} \u4E2A\u6709\u6548\u7ED3\u679C`);let j=null;if(V.length>0){let J=V[0];w&&(console.log("\u9009\u62E9\u7684\u5F39\u5E55\u6E90:",J.url.name||J.url.address),console.log("\u9009\u62E9\u7684\u96C6\u6570:",J.match.episodeTitle)),j={url:`${J.url.address}/api/v2/comment/${J.match.episodeId}?withRelated=true&chConvert=1`,sourceName:J.url.name||"\u5F39\u5E55\u6E90",episodeTitle:J.match.episodeTitle,match:{animeTitle:J.match.animeTitle||"",episodeTitle:J.match.episodeTitle||"",episodeId:J.match.episodeId||"",sourceName:J.url.name||"\u5F39\u5E55\u6E90"}},messageToDart({action:"toast",opt:{message:`\u5339\u914D\u5230 ${j.episodeTitle} - \u5F39\u5E55\u89E3\u6790\u4E2D......`,duration:3}})}else w&&console.log(` \u6240\u6709\u5F39\u5E55\u6E90\u5747\u672A\u5339\u914D\u6210\u529F`);if(j){w&&(console.log(` -=== \u8BF7\u6C42\u5F39\u5E55\u6570\u636E ===`),console.log("\u5F39\u5E55URL:",j.url));let J=await Ae.get(j.url,{timeout:1e4});w&&(console.log("\u5F39\u5E55\u54CD\u5E94\u72B6\u6001:",J.status),console.log("\u5F39\u5E55\u6570\u636E:",J.data?.comments?.length||0,"\u6761"));let se=Array.isArray(J.data?.comments)?J.data.comments.filter(Ie=>Ie?.p&&String(Ie?.m||"").trim()!==""):[],oe=se.length;if(messageToDart({action:"toast",opt:{message:`\u901A\u8FC7 ${j.sourceName} - \u89E3\u6790\u5230 ${oe} \u6761\u5F39\u5E55`,duration:3}}),A){m.send({success:oe>0,comments:se,count:oe,match:j.match});return}let ue=`<?xml version="1.0" encoding="UTF-8"?> +=== \u8BF7\u6C42\u5F39\u5E55\u6570\u636E ===`),console.log("\u5F39\u5E55URL:",j.url));let J=await Ae.get(j.url,{timeout:1e4});w&&(console.log("\u5F39\u5E55\u54CD\u5E94\u72B6\u6001:",J.status),console.log("\u5F39\u5E55\u6570\u636E:",J.data?.comments?.length||0,"\u6761"));let se=Array.isArray(J.data?.comments)?J.data.comments.filter(Ce=>Ce?.p&&String(Ce?.m||"").trim()!==""):[],oe=se.length;if(messageToDart({action:"toast",opt:{message:`\u901A\u8FC7 ${j.sourceName} - \u89E3\u6790\u5230 ${oe} \u6761\u5F39\u5E55`,duration:3}}),A){m.send({success:oe>0,comments:se,count:oe,match:j.match});return}let ue=`<?xml version="1.0" encoding="UTF-8"?> <i> -`;for(let Ie of se){let we=String(Ie.m).trim();if(we){let qe=we.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'");ue+=` <d p="${Ie.p}">${qe}</d> +`;for(let Ce of se){let we=String(Ce.m).trim();if(we){let qe=we.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'");ue+=` <d p="${Ce.p}">${qe}</d> `}}ue+="</i>",w&&(console.log("\u8F6C\u6362\u540E\u7684\u5F39\u5E55\u6570\u91CF:",oe),console.log("XML\u6570\u636E\u5927\u5C0F:",ue.length,"\u5B57\u8282"),console.log("XML\u6570\u636E\u9884\u89C8:",ue.substring(0,500)),console.log(`=== \u5F39\u5E55\u5339\u914D\u5B8C\u6210 === `)),m.header("Content-Type","application/xml"),m.send(ue)}else messageToDart({action:"toast",opt:{message:"\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~",duration:3}}),g()}catch(h){console.error(` === \u5F39\u5E55\u5339\u914D\u53D1\u751F\u9519\u8BEF ===`),console.error("\u9519\u8BEF\u7C7B\u578B:",h.name),console.error("\u9519\u8BEF\u4FE1\u606F:",h.message),console.error("\u9519\u8BEF\u5806\u6808:",h.stack),console.error(`========================= -`),messageToDart({action:"toast",opt:{message:"\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~",duration:2}}),String(p.query?.format||"").toLowerCase()==="json"?m.code(500).send({success:!1,error:"Failed to fetch danmu content",comments:[],count:0,match:null}):m.code(500).send({error:"Failed to fetch danmu content"})}}),t.addHook("onSend",(p,m,h,A)=>{if(m.sent||m.raw?.headersSent||!p.url.endsWith("/detail")&&!p.url.endsWith("/play"))return A(null,h);let g=typeof h=="string"?h:Buffer.isBuffer(h)?h.toString():null;if(!g)return A(null,h);_M(p.server).then(b=>{if(!b?.autoPush)return A(null,h);try{if(p.url.endsWith("/detail")){let y=JSON.parse(g),x=Array.isArray(y?.list)?y.list[0]:null;if(!x||typeof x!="object")return A(null,h);let v=String(x.vod_play_from||""),I=String(x.vod_play_url||"");if(!v||!I)return A(null,h);let R=String(x.vod_name||"").trim(),N=String(sA(R)||"").trim()||R;eue={};let P=v.split("$$$").filter(Boolean);return I.split("$$$").filter(Boolean).forEach((B,M)=>{B.split("#").forEach(D=>{let[L,Z]=D.split("$");if(!Z)return;let W=P[M]||`\u7EBF\u8DEF${M+1}`;eue[`${W}_${Z}`]={name:N,originalName:R,episodeNumber:Vw(L)}})}),A(null,h)}if(p.url.endsWith("/play")){let y=JSON.parse(g);if((y.url||y.url?.length||y.urls?.length)&&!y?.extra?.danmaku){let x=p.body||{},v=`${x.flag||""}_${x.id||""}`,I=eue[v];if(I){y.extra||(y.extra={});let R=new URL(`http://127.0.0.1:${p.server.address().port}/danmu-proxy`);return R.searchParams.set("name",I.name),R.searchParams.set("episodeNumber",I.episodeNumber),I.originalName&&R.searchParams.set("originalName",I.originalName),y.extra.danmaku=R.toString(),A(null,JSON.stringify(y))}}}}catch(y){console.error(y)}return A(null,h)}).catch(b=>(console.error(b),A(null,h)))})}var c6=Re(adt(),1);var cdt=Re(S0(),1),s2=Re(Jn(),1);var $M="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",BE={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},odt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},rwr=async t=>{let e=s2.default.enc.Hex.stringify(s2.default.MD5(t.config.quark.cookie)).toString();return(await t.db.getObjectDefault("/quark",{}))[e]??""},nwr=async(t,e)=>{let r=s2.default.enc.Hex.stringify(s2.default.MD5(t.config.quark.cookie)).toString();await t.db.push(`/quark/${r}`,e)};async function Sue(t){t.get("/qrcode",async(r,n)=>{try{let s=await Ae.get("https://uop.quark.cn/cas/ajax/getTokenForQrcodeLogin?client_id=532&v=1.2",{headers:{"User-Agent":$M}}),i=s.data.data.members.token,a=hl(s.headers["set-cookie"]),o=odt.encode({token:i,cookies:a}),c="https://su.quark.cn/4_eMHBJ?token="+i+"&client_id=532&ssb=weblogin&uc_param_str=&uc_biz_str=S%3Acustom%7COPT%3ASAREA%400%7COPT%3AIMMERSIVE%401%7COPT%3ABACK_BTN_STYLE%400",u=await cdt.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("\u5938\u514B\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=odt.decode(s);if(!i)return n.send({code:0,data:{status:BE.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await Ae.get(`https://uop.quark.cn/cas/ajax/getServiceTicketByQrcodeToken?client_id=532&v=1.2&token=${a}`,{headers:{"User-Agent":$M}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:BE.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:BE.EXPIRED}}):c.data.status===50004001?n.send({code:0,data:{status:BE.NEW}}):n.send({code:0,data:{status:BE.NEW}})}catch(c){console.error("\u5938\u514B\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:BE.NEW}})}});async function e(r,n){let s=[...n],i=await Ae.get(`https://pan.quark.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":$M,Cookie:s.join("")}});i.headers["set-cookie"]&&(s=s.concat(hl(i.headers["set-cookie"])));let a=await Ae.get("https://drive-pc.quark.cn/1/clouddrive/share/sharepage/dir?pr=ucpro&fr=pc&uc_param_str=&aver=1",{headers:{"User-Agent":$M,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(hl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await rwr(r.server)})}),t.put("/cookie",async(r,n)=>{await nwr(r.server,r.body.cookie),n.send({code:0})})}var i2=Re(Jn(),1);var uA={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},udt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},swr=async t=>{let e=i2.default.enc.Hex.stringify(i2.default.MD5(t.config.uc.token)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},iwr=async(t,e)=>{let r=i2.default.enc.Hex.stringify(i2.default.MD5(t.config.uc.token)).toString();await t.db.push(`/uc/${r}`,e)};async function vue(t){t.get("/qrcode",async(e,r)=>{try{let n="/oauth/authorize",s=Math.floor(Date.now()/1e3).toString()+"000",i=Ec.DeviceID,a=Vv(i,s),o=U3("GET",n,s,Is.signKey),c={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":s,"x-pan-token":o,"x-pan-client-id":Is.clientID,...Ec.AccessToken?{Authorization:`Bearer ${Ec.AccessToken}`}:{}},u=await Ae.get(`${Is.api}${n}`,{params:{req_id:a,access_token:Ec.AccessToken,app_ver:Is.appVer,device_id:i,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Is.channel,auth_type:"code",client_id:Is.clientID,scope:"netdisk",qrcode:"1",qr_width:"460",qr_height:"460"},headers:c}),l=udt.encode({query_token:u.data.query_token,req_id:a});r.header("X-Session-Key",l),r.send(Buffer.from(u.data.qr_data,"base64"))}catch(n){console.error("UC-TV\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=udt.decode(n);if(!s)return r.send({code:0,data:{status:uA.EXPIRED}});let{query_token:i}=s;try{let a="/oauth/code",o=Math.floor(Date.now()/1e3).toString()+"000",c=Ec.DeviceID,u=Vv(c,o),l=U3("GET",a,o,Is.signKey),d={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":o,"x-pan-token":l,"x-pan-client-id":Is.clientID,...Ec.AccessToken?{Authorization:`Bearer ${Ec.AccessToken}`}:{}},f=await Ae.get(`${Is.api}${a}`,{params:{req_id:u,access_token:Ec.AccessToken,app_ver:Is.appVer,device_id:c,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Is.channel,client_id:Is.clientID,scope:"netdisk",query_token:i},headers:d,validateStatus:p=>p<500});if(f.data.status===0){let p="/token",m=Math.floor(Date.now()/1e3).toString()+"000",h=Vv(Ec.DeviceID,m),A=JSON.stringify({req_id:h,app_ver:Is.appVer,device_id:Ec.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Is.channel,code:f.data.code}),g=await Ae.post(`${Is.codeApi}${p}`,A,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"}});g.data.code===200?r.send({code:0,data:{status:uA.CONFIRMED,cookie:g.data.data.access_token}}):r.send({code:0,data:{status:uA.NEW}})}else f.data.errno===11003?r.send({code:0,data:{status:uA.NEW}}):f.data.status===-1||f.data.errno===11001?r.send({code:0,data:{status:uA.EXPIRED}}):r.send({code:0,data:{status:uA.NEW}})}catch(a){console.error("UC-TV\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",a),r.send({code:0,data:{status:uA.NEW}})}}),t.post("/token",async(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/token",async(e,r)=>{r.send({code:0,data:await swr(e.server)})}),t.put("/token",async(e,r)=>{await iwr(e.server,e.body.cookie),r.send({code:0})})}var ldt=async(t,e)=>(await t.db.getObjectDefault("/tyi",{}))?.[e]||"",ddt=async(t,e,r)=>{await t.db.push(`/tyi/${e}`,r)};async function Iue(t){t.get("/account",async(e,r)=>{let n=await ldt(e.server,"cloud_account"),s=await ldt(e.server,"cloud_password");r.send({code:0,data:{username:n,password:s}})}),t.put("/account",async(e,r)=>{await ddt(e.server,"cloud_account",e.body.username),await ddt(e.server,"cloud_password",e.body.password),r.send({code:0})})}var awr=["https://www.leijing1.com"],owr=async t=>(await t.db.getObjectDefault("/leijing",{}))?.urls||t.config.leijing?.urls||awr,cwr=async(t,e)=>{await t.db.push("/leijing/urls",e)},uwr=async t=>{await t.db.delete("/leijing/urls")};async function Cue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await owr(e.server)})}),t.put("/urls",async(e,r)=>{await cwr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await uwr(e.server),r.send({code:0})})}var fdt=async(t,e)=>(await t.db.getObjectDefault("/pan123",{}))?.[e]||"",pdt=async(t,e,r)=>{await t.db.push(`/pan123/${e}`,r)};async function Tue(t){t.get("/account",async(e,r)=>{let n=await fdt(e.server,"pan_passport"),s=await fdt(e.server,"pan_password");r.send({code:0,data:{username:n,password:s}})}),t.put("/account",async(e,r)=>{await pdt(e.server,"pan_passport",e.body.username),await pdt(e.server,"pan_password",e.body.password),r.send({code:0})})}var lA=async(t,e)=>(await t.db.getObjectDefault("/xun",{}))?.[e]||"",Zl=async(t,e,r)=>{await t.db.push(`/xun/${e}`,r)},wue=(t="")=>String(t||"").trim();async function Rue(t){t.get("/account",async(e,r)=>{let n=await lA(e.server,"xun_username"),s=await lA(e.server,"xun_password"),i=!!await lA(e.server,"xun_auth");r.send({code:0,data:{username:n,password:s,hasAuth:i}})}),t.put("/account",async(e,r)=>{await Zl(e.server,"xun_username",e.body.username||""),await Zl(e.server,"xun_password",e.body.password||""),await Zl(e.server,"xun_auth",""),await Zl(e.server,"xun_refresh_token",""),await Zl(e.server,"xun_user_id",""),r.send({code:0})}),t.get("/auth-status",async(e,r)=>{let n=!!await lA(e.server,"xun_auth");r.send({code:0,data:{hasAuth:n}})}),t.post("/login",async(e,r)=>{try{let n=wue(e.body?.username),s=wue(e.body?.password);if(!n){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u8D26\u53F7"});return}if(!s){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u5BC6\u7801"});return}await Zl(e.server,"xun_username",n),await Zl(e.server,"xun_password",s),await Zl(e.server,"xun_auth",""),await Zl(e.server,"xun_refresh_token",""),await Zl(e.server,"xun_user_id",""),await ib(e),await Vh.getDownload_auth();let i=!!await lA(e.server,"xun_auth");r.send({code:i?0:1,message:i?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u8D26\u53F7\u5BC6\u7801",data:{hasAuth:i}})}catch(n){console.warn("[xunlei] password login failed",{hasUsername:!!wue(e.body?.username),message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u8FC5\u96F7\u8D26\u53F7\u5BC6\u7801\u767B\u5F55\u5931\u8D25"})}}),t.post("/send-code",async(e,r)=>{if(await ib(e),!await lA(e.server,"xun_username")){r.send({code:1,message:"\u8BF7\u5148\u4FDD\u5B58\u8FC5\u96F7\u8D26\u53F7"});return}await Vh.getVerifyCode(),r.send({code:0,data:{sent:!0}})}),t.post("/verify-code",async(e,r)=>{await ib(e);let n=String(e.body?.code||"").trim();if(!n){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}await Vh.getVerify(n);let s=!!await lA(e.server,"xun_auth");r.send({code:s?0:1,message:s?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u9A8C\u8BC1\u7801",data:{hasAuth:s}})})}var gdt=Re(S0(),1),Nue=Re(Jn(),1),Adt=Re(rI(),1),ydt="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",va={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},mdt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},hdt=null;function xdt(t){return Nue.default.enc.Hex.stringify(Nue.default.MD5(t.config.ali.token)).toString()}var lwr=async t=>{let e=await t.db.getObjectDefault("/ali",{});return String(e.token||e[xdt(t)]||"").trim()},dwr=async(t,e)=>{let r=String(e||"").trim();await t.db.push("/ali/token",r),await t.db.push(`/ali/${xdt(t)}`,r)};function fwr(t){return{t:t.t,appName:"aliyun_drive",ck:t.ck,appEntrance:"web",isMobile:"false",lang:"zh_CN",returnUrl:"",navlanguage:"zh-CN",navPlatform:"MacIntel",fromSite:"52",bizParams:""}}function pwr(t){let e=String(t||"").toUpperCase();return e===va.CONFIRMED?va.CONFIRMED:e===va.SCANNED||e==="SCANED"?va.SCANNED:e===va.CANCELED||e==="CANCELLED"?va.CANCELED:e===va.NEW?va.NEW:va.EXPIRED}async function mwr(){return(await Ae.get("https://passport.aliyundrive.com/newlogin/qrcode/generate.do?appName=aliyun_drive&fromSite=52&appName=aliyun_drive&appEntrance=web&isMobile=false&lang=zh_CN&returnUrl=&bizParams=&_bx-v=2.2.3",{headers:{"User-Agent":ydt}})).data?.content?.data}async function hwr(t){return(await Ae.post("https://passport.aliyundrive.com/newlogin/qrcode/query.do?appName=aliyun_drive&fromSite=52&_bx-v=2.2.3",Adt.default.stringify(fwr(t)),{headers:{"content-type":"application/x-www-form-urlencoded","User-Agent":ydt,referer:"https://www.aliyundrive.com/"}})).data?.content?.data||null}function gwr(t){let e=t?.bizExt;if(!e)return"";let r=Buffer.from(e,"base64").toString("utf8");try{return JSON.parse(r)?.pds_login_result?.refreshToken||""}catch{return JSON.parse(decodeURI(r))?.pds_login_result?.refreshToken||""}}async function Awr(t){let e=await hwr(t);if(!e)return{status:va.EXPIRED};let r=pwr(e.qrCodeStatus);if(r!==va.CONFIRMED)return{status:r};let n=gwr(e);return n?{status:va.CONFIRMED,cookie:n}:{status:va.EXPIRED}}async function Oue(t){t.get("/qrcode",async(e,r)=>{try{let n=await mwr();if(!n?.ck||!n?.t||!n?.codeContent)throw new Error("\u4E8C\u7EF4\u7801\u5185\u5BB9\u7F3A\u5931");hdt={ck:n.ck,t:n.t};let s=mdt.encode(hdt),i=await gdt.default.toBuffer(n.codeContent,{width:300,height:300});r.header("X-Session-Key",s),r.send(i)}catch(n){console.error("\u963F\u91CC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=mdt.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:va.EXPIRED}});try{let s=await Awr(n);r.send({code:0,data:s})}catch(s){console.error("\u963F\u91CC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:va.EXPIRED}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await lwr(e.server)})}),t.put("/token",async(e,r)=>{let n=e.body?.cookie??e.body?.data?.token??"";await dwr(e.server,n),r.send({code:0})})}var T0n=Re(S0(),1),R0n=Re(Jn(),1);var LE="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",dA={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},bdt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},ywr=async t=>(await t.db.getObjectDefault("/baidu",{}))["baidu_cookie"]??"",Pue=async(t,e)=>{await t.db.push("/baidu/baidu_cookie",e)};function xwr(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){let e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})}async function kue(t){t.get("/qrcode",async(r,n)=>{try{let s=xwr(),i=new Date().getTime().toString(),a=Math.floor(new Date().getTime()/1e3).toString(),o=`tangram_guid_${i}`,u=(await he.get("https://passport.baidu.com/v2/api/getqrcode",{params:{lp:"pc",qrloginfrom:"pc",gid:s,callback:o,apiver:"v3",tt:a,tpl:"netdisk",_:i},headers:{"User-Agent":LE,Referer:"https://pan.baidu.com","sec-ch-ua-platform":'"Windows"',DNT:"1"}})).data;if(typeof u=="string"){u=u.replace(/^[^(]*\(/,"").replace(/\);?$/,"");let l=JSON.parse(u);if(l.errno===0){let d=bdt.encode({sign:l.sign,channel_id:l.channel_id}),f="https://"+l.imgurl,p=await he.get(f,{responseType:"arraybuffer",headers:{"User-Agent":LE}});n.header("X-Session-Key",d),n.send(p.data)}else throw new Error(`\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25: ${l.errmsg||"\u672A\u77E5\u9519\u8BEF"}`)}else throw new Error("\u54CD\u5E94\u683C\u5F0F\u9519\u8BEF")}catch(s){console.error("\u767E\u5EA6\u4E8C\u7EF4\u7801\u83B7\u53D6\u5931\u8D25:",s),n.status(500).send({code:-1,message:s?.message||"\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=bdt.decode(s);if(!i)return n.send({code:0,data:{status:dA.EXPIRED}});let{sign:a}=i;try{let o=new Date().getTime().toString(),c=`tangram_guid_${o}`,l=(await he.get("https://passport.baidu.com/channel/unicast",{params:{channel_id:a,tpl:"netdisk",apiver:"v3",tt:Math.floor(new Date().getTime()/1e3).toString(),callback:c,_:o},headers:{"User-Agent":LE,Referer:"https://pan.baidu.com"}})).data;if(typeof l=="string"){l=l.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let d=JSON.parse(l);if(d.errno===0&&d.channel_v){let f=JSON.parse(d.channel_v);if(f.status===1)return n.send({code:0,data:{status:dA.SCANNED}});if(f.status===0&&f.v){let p=await e(f.v,r.server);return n.send({code:0,data:{status:dA.CONFIRMED,cookie:p}})}}else{if(d.errno===1)return n.send({code:0,data:{status:dA.NEW}});if(d.errno===2)return n.send({code:0,data:{status:dA.EXPIRED}})}}n.send({code:0,data:{status:dA.NEW}})}catch(o){console.error("\u767E\u5EA6\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",o),n.send({code:0,data:{status:dA.NEW}})}});async function e(r,n){let s=new Date().getTime().toString(),i=Math.floor(new Date().getTime()/1e3).toString(),o=(await he.get("https://passport.baidu.com/v3/login/main/qrbdusslogin",{params:{v:s,bduss:r,u:"https://pan.baidu.com/disk/main#/index?category=all",loginVersion:"v5",qrcode:"1",tpl:"netdisk",maskId:"",fileId:"",apiver:"v3",tt:s,traceid:"",time:i,alg:"v3",elapsed:"1"},headers:{"User-Agent":LE,Referer:"https://pan.baidu.com/","Accept-Language":"zh-CN,zh;q=0.9"},timeout:3e4})).data;if(typeof o=="string"){o=o.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let c=o.match(/"bduss":\s*"([^"]+)"/),u=o.match(/"stoken":\s*"([^"]+)"/),l=o.match(/"ptoken":\s*"([^"]+)"/),d=o.match(/"ubi":\s*"([^"]+)"/);if(c&&u&&l&&d){let f=c[1],p=u[1],m=l[1],h=encodeURIComponent(d[1]),g=Object.entries({newlogin:"1",UBI:h,STOKEN:p,BDUSS:f,PTOKEN:m,BDUSS_BFESS:f,STOKEN_BFESS:p,PTOKEN_BFESS:m,UBI_BFESS:h}).map(([x,v])=>`${x}=${v}`).join("; "),y=(await he.get("https://passport.baidu.com/v3/login/api/auth/?return_type=5&tpl=netdisk&u=https://pan.baidu.com/disk/home",{headers:{"User-Agent":LE,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:x=>x===302||x===200})).headers.location;if(y){let v=(await he.get(y,{headers:{"User-Agent":LE,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:w=>w===302||w===200})).headers["set-cookie"],I="";if(v){let w=v.find(N=>N.toLowerCase().includes("stoken"));w&&(I=w.split(";")[0])}let R=I?`BDUSS=${f};${I};`:`BDUSS=${f};STOKEN=${p};`;return await Pue(n,R),R}else{let x=`BDUSS=${f};STOKEN=${p};`;return await Pue(n,x),x}}}throw new Error("Cookie\u89E3\u6790\u5931\u8D25")}t.post("/cookie",async(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await ywr(r.server)})}),t.put("/cookie",async(r,n)=>{await Pue(r.server,r.body.cookie),n.send({code:0})})}var vdt=require("crypto");var Idt=Re(S0(),1),Cdt="https://account.guangyapan.com",Due="aMe-8VSlkrbQXpUR",Edt="0123456789abcdef0123456789abcdef",Xf={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},bwr="urn:ietf:params:oauth:grant-type:device_code",_dt={encode(t,e=12e4){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},FM=async(t,e)=>(await t.db.getObjectDefault("/guangyapan",{}))?.[e]||"",a2=async(t,e,r)=>{await t.db.push(`/guangyapan/${e}`,r)};function Tdt(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{message:t}}return t}function Xi(t){return String(t||"").trim()}function Ewr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}async function _wr(t){let e=Ewr(await FM(t,"device_id"));if(e)return e;let r=Edt;try{r=(0,vdt.randomBytes)(16).toString("hex")}catch{r=Edt}return await a2(t,"device_id",r),r}function wdt(t){return{Accept:"application/json, text/plain, */*","Content-Type":"application/json","X-Client-Id":Due,"X-Client-Version":"0.0.1","X-Device-Id":t,"X-Device-Model":"chrome%2F147.0.0.0","X-Device-Name":"PC-Chrome","X-Device-Sign":`wdi10.${t}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,"X-Net-Work-Type":"NONE","X-OS-Version":"Win32","X-Platform-Version":"1","X-Protocol-Version":"301","X-Provider-Name":"NONE","X-SDK-Version":"9.0.2"}}function Swr(t){let e=Xi(t?.access_token||t?.accessToken),r=Xi(t?.refresh_token||t?.refreshToken);return{accessToken:e,refreshToken:r}}function vwr(t,e){let{accessToken:r,refreshToken:n}=Swr(e);if(t>=200&&t<300&&(n||r))return{status:Xf.CONFIRMED,accessToken:r,refreshToken:n};let s=Xi(e?.error).toLowerCase();return s==="authorization_pending"||s==="slow_down"?{status:Xf.NEW}:s==="access_denied"?{status:Xf.CANCELED}:s.includes("expired")||s==="invalid_grant"?{status:Xf.EXPIRED}:{status:Xf.NEW}}function Iwr(t){let e=Xi(t?.refreshToken);return e||Xi(t?.accessToken)}async function Cwr(t){let e=await Ae.post(`${Cdt}/v1/auth/device/code`,{scope:"user",client_id:Due},{headers:wdt(t),validateStatus:()=>!0}),r=Tdt(e.data),n=Xi(r?.device_code),s=Xi(r?.verification_uri_complete||r?.verification_url),i=Number(r?.expires_in||120);if(e.status<200||e.status>=300||!n||!s)throw new Error(r?.error_description||r?.message||`status=${e.status}`);return{deviceCode:n,verifyUrl:s,expiresIn:i}}async function Twr(t){let e=await Ae.post(`${Cdt}/v1/auth/token`,{grant_type:bwr,device_code:t.deviceCode,client_id:Due},{headers:wdt(t.deviceId),validateStatus:()=>!0});return vwr(e.status,Tdt(e.data))}async function Sdt(t,e){let r=Xi(e?.accessToken),n=Xi(e?.refreshToken);n&&await a2(t,"refresh_token",n),r&&await a2(t,"access_token",r)}function wwr(t){let e=Xi(t?.cookie),r=Xi(t?.accessToken||t?.data?.accessToken),n=Xi(t?.refreshToken||t?.data?.refreshToken),s=!1;if(!r&&!n&&e)try{let i=JSON.parse(e);s=!0,r=Xi(i?.accessToken||i?.access_token),n=Xi(i?.refreshToken||i?.refresh_token)}catch{n=e}return!s&&!n&&e&&(n=e),{accessToken:r,refreshToken:n}}async function Bue(t){t.get("/qrcode",async(e,r)=>{try{let n=await _wr(e.server),s=await Cwr(n),i=_dt.encode({deviceCode:s.deviceCode,deviceId:n},Math.max(1e3,s.expiresIn*1e3)),a=await Idt.default.toBuffer(s.verifyUrl,{width:300,height:300});r.header("X-Session-Key",i),r.type("image/png").send(a)}catch(n){console.error("\u5149\u9E2D\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=_dt.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:Xf.EXPIRED}});try{let s=await Twr(n);if(s.status===Xf.CONFIRMED)return await Sdt(e.server,s),r.send({code:0,data:{status:Xf.CONFIRMED,cookie:Iwr(s)}});r.send({code:0,data:s})}catch(s){console.error("\u5149\u9E2D\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:Xf.NEW}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await FM(e.server,"refresh_token")})}),t.put("/token",async(e,r)=>{await Sdt(e.server,wwr(e.body||{})),r.send({code:0})}),t.get("/account",async(e,r)=>{r.send({code:0,data:{accessToken:await FM(e.server,"access_token"),refreshToken:await FM(e.server,"refresh_token")}})}),t.put("/account",async(e,r)=>{await a2(e.server,"access_token",Xi(e.body?.accessToken)),await a2(e.server,"refresh_token",Xi(e.body?.refreshToken)),r.send({code:0})})}var UM=Re(require("crypto"),1),ho=Re(Jn(),1),Pdt="https://user-njs.yun.139.com/user",Wue="7.17.4",Rwr="mCloud_4.3.0_536",Lue=670,Nwr=292,kdt=ho.default.enc.Utf8.parse("h7DLzCTAjn+altjy2a9E9FSt7AC6pmx1"),Rdt=`||9|${Wue}|chrome||0||windows 10||zh-CN|||`,$ue=(t="")=>String(t||"").replace(/^Basic\s+/i,"").trim(),Ia=(t="")=>String(t||"").trim(),Mue=(t="")=>UM.default.createHash("md5").update(String(t)).digest("hex"),Owr=(t="")=>UM.default.createHash("sha1").update(String(t)).digest("hex"),Pwr=t=>{try{return JSON.stringify(t)}catch{return String(t)}},kwr=t=>{try{return JSON.parse(t)}catch{return null}},Ndt=(t="",e=160)=>String(t).replace(/\s+/g," ").slice(0,e),Dwr=(t,e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>typeof t=="string"?t||e:t&&typeof t=="object"?t.message||t.msg||t.desc||t.resultDesc||Pwr(t):t==null?e:String(t),ME=(t="")=>{let e=Ia(t);return e.length<7?e?"***":"":`${e.slice(0,3)}****${e.slice(-4)}`},Fue=(t={},e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>{let r=String(t.code??t.status??t.resultCode??t.resultcode??""),n=Dwr(t.message??t.msg??t.desc??t.resultDesc??t.errorMessage,r?`${e}\uFF1A${r}`:e),s=new Error(r?`${n}\uFF08${r}\uFF09`:n);return s.yidongCode=r,s.yidongData=t.data,s.yidongResult=t,s.statusCode=t.statusCode,s},Bwr=t=>{let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r="";for(let n=0;n<t;n+=1)r+=e[Math.floor(Math.random()*e.length)];return r},Lwr=(t={})=>encodeURIComponent(JSON.stringify({...t})).split("").sort().join(""),Mwr=(t={})=>{let e=String(Date.now()),r=Bwr(16),n=Mue(Buffer.from(Lwr(t)).toString("base64")),s=Mue(`${e}:${r}`);return`${e},${r},${Mue(n+s).toUpperCase()}`},Wwr=(t={},e={})=>({caller:"web","Content-Type":"application/json;charset=UTF-8","CMS-DEVICE":"default","X-Deviceinfo":`||9|${Wue}|chrome||0||windows 10||zh-CN|||`,"x-yun-channel-source":"10000034","x-huawei-channelSrc":"10000034","x-yun-svc-type":"1","x-SvcType":"1","x-m4c-caller":"PC","x-m4c-src":"10002","x-inner-ntwk":"2","mcloud-route":"001","mcloud-version":Wue,"mcloud-channel":"1000101","mcloud-client":"10701","mcloud-sign":Mwr(t),"mcloud-skey":"","INNER-HCY-ROUTER-HTTPS":"1",...e}),Ddt=t=>{let e=t?.data||{},r=String(e.code??e.status??e.resultCode??e.resultcode??"");if(e.success===!1||r&&r!=="0"&&r!=="0000")throw Fue(e);return e},$wr=(t={})=>{let e=ho.default.lib.WordArray.random(16),r=ho.default.enc.Utf8.parse(typeof t=="string"?t:JSON.stringify(t)),n=ho.default.AES.encrypt(r,kdt,{iv:e,mode:ho.default.mode.CBC,padding:ho.default.pad.Pkcs7});return ho.default.enc.Base64.stringify(e.concat(n.ciphertext))},Fwr=(t="")=>{let e=ho.default.enc.Base64.parse(String(t)),r=e.clone(),n=r.words.splice(4);r.init(r.words),e.init(n);let s=ho.default.AES.decrypt(ho.default.enc.Base64.stringify(e),kdt,{iv:r,mode:ho.default.mode.CBC,padding:ho.default.pad.Pkcs7}).toString(ho.default.enc.Utf8);return JSON.parse(s)},Bdt=(t="")=>{if(typeof t!="string")return t;try{return Fwr(t)}catch(e){let r=kwr(t);return r&&typeof r=="object"?r:(console.warn("[yidong] cool response decrypt failed",{dataLength:String(t).length,dataPreview:Ndt(t),message:e?.message||String(e)}),{success:!1,code:"COOL_DECRYPT_FAILED",message:`\u79FB\u52A8\u4E91\u76D8\u52A0\u5BC6\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${Ndt(t)||e?.message||String(e)}`})}},Uwr=t=>{let e=Bdt(t?.data);return Ddt({data:e})},qwr=t=>{let e=UM.default.createDecipheriv("aes-128-ecb",Buffer.from("qPqDw263XgFgL3u8"),null);return e.setAutoPadding(!0),Buffer.concat([e.update(Buffer.from(t,"hex")),e.final()]).toString("utf8")},jwr=t=>{if(typeof t!="string")return t||{};try{return JSON.parse(qwr(t))}catch{try{return JSON.parse(t)}catch{throw new Error("\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u7ED3\u679C\u89E3\u6790\u5931\u8D25")}}},Hwr=(t,e)=>!t||!e?"":Buffer.from(`pc:${t}:${e}`,"utf8").toString("base64"),Odt=async(t,e,r={})=>{try{let n=await Ae.post(`${Pdt}${t}`,e,{timeout:3e4,headers:Wwr(e,r)});return Ddt(n)}catch(n){if(n?.response?.data){let s=n.response.data;throw Fue(s,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw n}},Qwr=async(t,e,r={})=>{let{clientInfo:n,...s}=r;try{let i=await Ae.post(`${Pdt}${t}`,$wr(e),{timeout:3e4,headers:{"Content-Type":"application/json;charset=UTF-8","hcy-cool-flag":"1","x-Nationcode":e.nationCode||"+86","x-deviceinfo":n||Rdt,"x-yun-client-info":n||Rdt,"x-yun-app-channel":"10000034",...s}});return Uwr(i)}catch(i){if(i?.response?.data){let a=Bdt(i.response.data);throw Fue(a,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw i}},o2=async(t,e)=>(await t.db.getObjectDefault("/yidong",{}))?.[e]||"",ed=async(t,e,r)=>{let n=e==="authorization"?$ue(r):Ia(r);await t.db.push(`/yidong/${e}`,n),e==="authorization"&&(globalThis.YidongAuthorization=n)},Ldt=async t=>{globalThis.YidongAuthorization=$ue(await o2(t,"authorization"))};async function Uue(t){t.get("/authorization",async(e,r)=>{let n=$ue(await o2(e.server,"authorization")),s=Ia(await o2(e.server,"phone"));globalThis.YidongAuthorization=n,r.send({code:0,data:{authorization:n,phone:s,hasAuth:!!n}})}),t.put("/authorization",async(e,r)=>{await ed(e.server,"authorization",e.body.authorization),r.send({code:0})}),t.post("/send-code",async(e,r)=>{let n=Ia(e.body?.phone),s=Math.random();try{if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}let i={phoneNumber:n,reqType:3,random:s,nationCode:"+86",clientType:Lue},a=await Odt("/sms/getSmsCode",i,{"x-NationCode":"+86"}),o=Ia(a?.data?.random||a?.random||s);await ed(e.server,"phone",n),await ed(e.server,"smsRandom",o),await ed(e.server,"smsLoginRandom",s),console.info("[yidong] sms code sent",{phone:ME(n),reqType:i.reqType,randomLength:o.length}),r.send({code:0,data:{sent:!0}})}catch(i){if(console.warn("[yidong] send code failed",{phone:ME(e.body?.phone),code:i?.yidongCode,message:i?.message||String(i)}),i?.yidongCode==="200059554"){let a=Number(i?.yidongData?.captchaType||i?.yidongResult?.data?.captchaType||2);await ed(e.server,"phone",n),await ed(e.server,"smsLoginRandom",s),console.info("[yidong] sms code requires captcha",{phone:ME(n),captchaType:a}),r.send({code:0,data:{captchaRequired:!0,captchaType:a}});return}r.send({code:1,message:i?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/send-code-captcha",async(e,r)=>{try{let n=Ia(e.body?.phone),s=Number(e.body?.captchaType||2),i=e.body?.puzzleVerfycode??e.body?.puzzleVerfyCode,a=Ia(e.body?.clientInfo);if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u8BF7\u5148\u5B8C\u6210\u6ED1\u5757\u9A8C\u8BC1"});return}let o=Ia(await o2(e.server,"smsLoginRandom")),c=Number(o),u=o&&Number.isFinite(c)?c:Math.random(),d=await Qwr("/sms/getSmsCode",{phoneNumber:n,reqType:3,random:u,nationCode:"+86",clientType:Lue,captchaType:s,puzzleVerfycode:i},a?{clientInfo:a}:{}),f=Ia(d?.data?.random||d?.random||u);await ed(e.server,"phone",n),await ed(e.server,"smsRandom",f),console.info("[yidong] sms code sent after captcha",{phone:ME(n),captchaType:s,randomLength:f.length}),r.send({code:0,data:{sent:!0}})}catch(n){console.warn("[yidong] send code after captcha failed",{phone:ME(e.body?.phone),code:n?.yidongCode,message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u6ED1\u5757\u9A8C\u8BC1\u540E\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/verify-code",async(e,r)=>{let n="";try{let s=Ia(e.body?.phone),i=Ia(e.body?.code);if(!/^1[3456789]\d{9}$/.test(s)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}n=Ia(await o2(e.server,"smsRandom"));let a={msisdn:s,random:"",dycpwd:i,cpid:Nwr,clienttype:Lue,version:Rwr,pintype:5,secinfo:Owr(`fetion.com.cn:${i}`).toUpperCase(),verType:2,loginMode:"0",extInfo:{ifOpenAccount:"1"}},o=await Odt("/thirdlogin",a,{"x-NationCode":"+86"}),c=jwr(o.data),u=Ia(c.account||s),l=Ia(c.token||c.authToken),d=Hwr(u,l);if(!d){r.send({code:1,message:"\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u6210\u529F\u4F46\u672A\u8FD4\u56DE\u6709\u6548 token"});return}await ed(e.server,"phone",s),await ed(e.server,"authorization",d),r.send({code:0,message:"\u767B\u5F55\u6210\u529F",data:{hasAuth:!0,authorization:d}})}catch(s){console.warn("[yidong] verify code failed",{phone:ME(e.body?.phone),codeLength:Ia(e.body?.code).length,smsRandomLength:n.length,message:s?.message||String(s)}),r.send({code:1,message:s?.message||"\u9A8C\u8BC1\u7801\u767B\u5F55\u5931\u8D25"})}})}var qM=[{key:"quark",name:"\u5938\u514B",enable:!0,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.a0d60e6a72806738e6f0b711a979bdf5?rik=lp5C9t5sYlkrLw&riu=http%3a%2f%2fpic.2265.com%2fupload%2f2020-10%2f202010151719492792.png&ehk=Pv6rq3JxJvKe2y1QsdzssyZ4Ez4cwiKWmIvK0aMgxi0%3d&risl=&pid=ImgRaw&r=0",chunkSize:512,poolSize:10,noSaveMode:!1},{key:"uc",name:"UC",enable:!0,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.421c96e47df7c9719403654ee4f7c281?rik=yiiEoGCTgDDc3w&riu=http%3a%2f%2fpic.9663.com%2fupload%2f2023-5%2f20235111411256277.png&ehk=R81N%2flXMrl%2bxpRlST8DtHXDfab6rzaMb83gihuD71Fk%3d&risl=&pid=ImgRaw&r=0",chunkSize:512,poolSize:10},{key:"ali",name:"\u963F\u91CC",enable:!0,pic:"https://inews.gtimg.com/newsapp_bt/0/13263837859/1000",chunkSize:128,poolSize:20},{key:"baidu",name:"\u767E\u5EA6",enable:!0,pic:"https://nd-static.bdstatic.com/m-static/v20-main/home/img/icon-home-new.b4083345.png"},{key:"xunlei",name:"\u8FC5\u96F7",enable:!0,pic:"https://img.geekie.site/i/2026/03/22/190713.png"},{key:"tianyi",name:"\u5929\u7FFC",enable:!0,pic:"https://is1-ssl.mzstatic.com/image/thumb/Purple211/v4/a8/fa/f0/a8faf032-0fa4-d9c5-ac70-920d9c84dff1/AppIcon-0-0-1x_U007emarketing-0-7-0-0-sRGB-85-220.png/350x350.png"},{key:"yidong",name:"\u79FB\u52A8",enable:!0,pic:"https://yun.139.com/w/static/img/LOGO.png"},{key:"123",name:"123",enable:!0,pic:"https://statics.123957.com/static/favicon.ico"},{key:"115",name:"115",enable:!0,pic:"https://img.pcsoft.com.cn/soft/202104/093230-608b5e2ed5912.jpg"},{key:"guangyapan",name:"\u5149\u9E2D",enable:!0,pic:"https://www.guangyapan.com/icon.png"}],que=async t=>{let r=(await t.db.getObjectDefault("/pans",{}))?.list||t.config.pans.list;return r.filter(n=>qM.some(s=>s.key===n.key)).concat(qM.filter(n=>!r.some(s=>s.key===n.key))).map(n=>({...qM.find(i=>i.key===n.key),...n}))},Gwr=async(t,e)=>{await t.db.push("/pans/list",e),globalThis.Pans=e},Kwr=async t=>{await t.db.delete("/pans/list"),globalThis.Pans=qM};async function jue(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await que(e.server)})}),t.put("/list",async(e,r)=>{await Gwr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await Kwr(e.server),r.send({code:0})})}var Mdt=Re(vv(),1);async function Hue(t){t.get("/",async(e,r)=>{r.header("Content-Disposition",`attachment; filename="config.${(0,Mdt.default)().format("YYYY-MM-DD")}.json"`);let n=await e.server.db.getData("/");r.send(JSON.stringify(n,null,4))}),t.put("/",async(e,r)=>{await e.server.db.push("/",e.body),r.send({code:0})})}var Wdt=Re(require("crypto"),1);function Ft(t=[],e=null){let r=Array.isArray(t)?t:[];return{Items:r,TotalRecordCount:typeof e=="number"?e:r.length}}function Xr(t,e,r=""){if(!t||typeof t!="object")return r;for(let n of e)if(t[n]!==void 0&&t[n]!==null)return t[n];return r}function Que(t,e){return typeof t!="string"||!t.trim()?[]:t.split(e).map(r=>String(r||"").trim()).filter(Boolean)}function Vwr(t){let e=String(t||""),r=e.lastIndexOf("$");return r<=0?{name:e||"\u64AD\u653E",playId:""}:{name:e.slice(0,r).trim()||"\u64AD\u653E",playId:e.slice(r+1).trim()}}function go(t,e){let r=Que(t,"$$$"),n=Que(e,"$$$"),s=Math.max(r.length,n.length),i=[];for(let a=0;a<s;a++){let c=Que(n[a]||"","#").map(Vwr).filter(u=>u.playId);i.push({flag:r[a]||`\u7EBF\u8DEF${a+1}`,episodes:c})}return i}function fA(t,e=1){let r=Number.parseInt(Vw(String(t||"")),10);if(Number.isInteger(r)&&r>0)return r;let n=Number.parseInt(String(e||1),10);return Number.isInteger(n)&&n>0?n:1}function zwr(t,e=""){let r=[];for(let n=0;n<t.length;n+=2){let s=String(t[n]||"").trim(),i=Kue(t[n+1]||"");i&&r.push({label:s,url:i})}if(!r.length)return t.map(s=>Kue(s)).find(Boolean)||"";if(e){let n=r.find(s=>s.label===e);if(n)return n.url}return r[0].url}function Gue(t=""){return/^(https?:\/\/|push:\/\/)/i.test(String(t||"").trim())}function Kue(t=""){let e=String(t||"").trim();if(!e)return"";if(Gue(e))return e;let r=e.split("#").map(n=>String(n||"").trim()).filter(Boolean);for(let n of r){if(Gue(n))return n;let i=n.split(",").map(c=>String(c||"").trim()).filter(Boolean).find(c=>Gue(c));if(i)return i;let a=n.match(/(https?:\/\/[^\s,]+)/i);if(a?.[1])return a[1].trim();let o=n.match(/(push:\/\/[^\s,]+)/i);if(o?.[1])return o[1].trim()}return""}function um(t,e=""){let r=t?.url||"";Array.isArray(r)?r=zwr(r,e):r=Kue(r),typeof r!="string"&&(r="");let n={};return t?.header&&typeof t.header=="object"&&Object.keys(t.header).forEach(s=>{let i=t.header[s];i!=null&&(n[s]=String(i))}),{parse:Number(t?.parse||0),url:r.trim(),header:n}}function Pu(t,e=60){let r=Number(t);return!Number.isFinite(r)||r<=0?e:Math.min(200,r)}function Ca(t=[],e=0,r=60){let n=Array.isArray(t)?t:[],s=Math.max(0,Number(e)||0),i=Pu(r,60);return n.slice(s,s+i)}function ss(t={}){return{IsFavorite:!1,Played:!1,PlayCount:0,PlaybackPositionTicks:0,...t}}function WE(t={}){let e=`${t?.vod_name||""} ${t?.vod_remarks||""}`;return/(æ›´æ–°|第\s*\d+\s*[集话期]|连载|season|s\d+e\d+)/i.test(e)?"Series":"Movie"}function $s(){return new Date().toISOString()}function Ywr(t={}){if(typeof t=="string")try{t=JSON.parse(t)}catch{t={}}return{username:String(t?.username||t?.Username||t?.name||t?.Name||""),password:String(t?.pw||t?.Pw||t?.password||t?.Password||"")}}function Jwr(t=""){let e={};return String(t).replace(/^MediaBrowser\s+/i,"").replace(/^Emby\s+/i,"").replace(/,\s+/g,",").split(",").forEach(n=>{let[s,i]=n.split("="),a=String(s||"").trim().toLowerCase(),o=String(i||"").replace(/"/g,"").trim();a&&o&&(e[a]=o)}),e}function Xwr(t){let e=t.query||{},r=Jwr(t.headers?.["x-emby-authorization"]||t.headers?.authorization||"");return{client:r.client||String(e["x-emby-client"]||e["X-Emby-Client"]||""),device:r.device||String(e["x-emby-device-name"]||e["X-Emby-Device-Name"]||""),deviceId:r.deviceid||String(e["x-emby-device-id"]||e["X-Emby-Device-Id"]||""),version:r.version||String(e["x-emby-client-version"]||e["X-Emby-Client-Version"]||"")}}function Zwr(t){let e=$s();return{Name:t.user.name,ServerId:t.config.serverId,Id:t.user.id,HasPassword:!0,HasConfiguredPassword:!0,HasConfiguredEasyPassword:!1,EnableAutoLogin:!1,LastLoginDate:e,LastActivityDate:e,Policy:{IsAdministrator:!0,IsHidden:!1,IsDisabled:!1,EnableRemoteAccess:!0,EnableContentDeletion:!1,EnableContentDownloading:!0,EnableSyncTranscoding:!0,EnableMediaPlayback:!0,EnableAudioPlaybackTranscoding:!0,EnableVideoPlaybackTranscoding:!0,EnablePlaybackRemuxing:!0,EnableSubtitleManagement:!1,AuthenticationProviderId:"Emby.Server.Implementations.Library.DefaultAuthenticationProvider"},Configuration:{PlayDefaultAudioTrack:!0,DisplayMissingEpisodes:!1,SubtitleMode:"Default",EnableLocalPassword:!1,HidePlayedInLatest:!0,RememberAudioSelections:!0,RememberSubtitleSelections:!0}}}function e2r(t,e,r){let n=$s();return{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SubtitleOffset:0,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:e.Id,ServerId:t.config.serverId,UserId:e.Id,UserName:e.Name,Client:r.client,LastActivityDate:n,DeviceName:r.device,InternalDeviceId:0,DeviceId:r.deviceId,ApplicationVersion:r.version||t.config.version,SupportedCommands:[],SupportsRemoteControl:!1}}async function Vue(t){let e=new Map,r=5,n=60*1e3;function s(a){let o=Date.now(),c=e.get(a);return!c||o-c.windowStart>n?!1:c.count>=r}function i(a){let o=Date.now(),c=e.get(a);!c||o-c.windowStart>n?e.set(a,{count:1,windowStart:o}):c.count++}t.get("/Public",async()=>[]),t.post("/AuthenticateByName",async(a,o)=>{let c=t.embyContext;if(!c.config.enable)return o.code(503),"Emby disabled";let u=a.ip||"unknown";if(s(u))return o.code(429),"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5";let l=Ywr(a.body||{});if(console.log("[Emby Auth] login attempt:",JSON.stringify({username:l.username,hasPassword:!!l.password,ip:u})),l.username!==c.config.username||l.password!==c.config.password)return i(u),o.code(401),"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF";let d=Wdt.default.randomBytes(24).toString("hex"),f=Xwr(a),p=Date.now(),m=c.config.tokenTtlMs>0?p+c.config.tokenTtlMs:0;c.tokens.set(d,{token:d,userId:c.user.id,userName:c.user.name,createdAt:p,lastUsedAt:p,expireAt:m,device:f});let h=Zwr(c),A=e2r(c,h,f);return{User:h,SessionInfo:A,AccessToken:d,ServerId:c.config.serverId}}),t.post("/Logout",{preHandler:t.embyRequireAuth},async(a,o)=>{a.embyToken&&t.embyContext.tokens.delete(a.embyToken),o.code(204).send()}),t.get("/Me",{preHandler:t.embyRequireAuth},async a=>({Name:a.embyUser?.Name||t.embyContext.user.name,Id:a.embyUser?.Id||t.embyContext.user.id,ServerId:t.embyContext.config.serverId,Policy:{},Configuration:{},EnableAutoLogin:!1,LastLoginDate:$s(),LastActivityDate:$s()}))}async function zue(t){t.get("/Info/Public",async()=>{let e=t.embyContext.config;return{LocalAddresses:[],RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Info",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config;return{SystemUpdateLevel:"Release",OperatingSystemDisplayName:"Node.js",HasPendingRestart:!1,IsShuttingDown:!1,HasImageEnhancers:!1,SupportsLibraryMonitor:!1,SupportsLocalPortConfiguration:!1,SupportsWakeServer:!1,CanSelfRestart:!1,CanSelfUpdate:!1,CanLaunchWebBrowser:!1,ProgramDataPath:"/",ItemsByNamePath:"/metadata",CachePath:"/cache",LogPath:"/logs",InternalMetadataPath:"/metadata",TranscodingTempPath:"/tmp",HttpServerPortNumber:8096,SupportsHttps:!1,HttpsPortNumber:8920,HasUpdateAvailable:!1,SupportsAutoRunAtStartup:!1,HardwareAccelerationRequiresPremiere:!1,WakeOnLanInfo:{MacAddress:"",BroadcastAddress:"",Port:0},IsInMaintenanceMode:!1,LocalAddress:"",LocalAddresses:[],WanAddress:"",RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Ping",async(e,r)=>(r.type("text/plain; charset=utf-8"),"MyCatPaw Emby")),t.get("/Endpoint",async()=>({IsInNetwork:!0}))}var $dt=new Set(["lib","cat","vod","sea","ep","img","media"]);function wn(t,e={}){if(!$dt.has(t))throw new Error(`Unsupported item type: ${t}`);let r=JSON.stringify(e||{}),n=Buffer.from(r,"utf8").toString("base64url");return`${t}:${n}`}function Fs(t){if(typeof t!="string")return null;let e=t.indexOf(":");if(e<=0)return null;let r=t.slice(0,e);if(!$dt.has(r))return null;let n=t.slice(e+1);if(!n)return null;try{let s=Buffer.from(n,"base64url").toString("utf8"),i=JSON.parse(s);return!i||typeof i!="object"?null:{type:r,payload:i}}catch{return null}}function Yue(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,ServerId:e,Id:r,Guid:r,Etag:r,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,CanDelete:!1,CanDownload:!1,DisplayPreferencesId:r,UserData:ss(),ImageTags:{Primary:r},BackdropImageTags:[],ChildCount:0}}async function Jue(t){t.get("/MediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Jl(t);return Ft(r.map(n=>Yue(n,e)))}),t.get("/VirtualFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId;return(await Jl(t)).map(n=>{let s=Yue(n,e);return{Name:s.Name,Locations:[],LibraryOptions:{},ItemId:s.Id,Id:s.Id,Guid:s.Guid}})}),t.get("/SelectableMediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Jl(t);return Ft(r.map(n=>{let s=Yue(n,e);return{Name:s.Name,Id:s.Id,Path:"",Type:"Virtual"}}))}),t.post("/Refresh",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()}),t.post("/RefreshMediaLibrary",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()})}var t2r="/embyPlayback",r2r=.92,n2r=1500;function jM(t,e=0){let r=Number(t);return Number.isFinite(r)?r:e}function Xue(t,e=!1){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e}function s2r(t){if(t instanceof Date){let n=t.getTime();return Number.isFinite(n)?new Date(n).toISOString():""}let e=String(t||"").trim();if(!e)return"";let r=Date.parse(e);return Number.isFinite(r)?new Date(r).toISOString():""}function HM(t){let e=t&&typeof t=="object"?t:{};return{users:e.users&&typeof e.users=="object"?e.users:{}}}function lm(t){let e=t?.embyContext;return!e||typeof e!="object"?HM(null):((!e.playbackState||typeof e.playbackState!="object")&&(e.playbackState=HM(null)),(!e.playbackState.users||typeof e.playbackState.users!="object")&&(e.playbackState.users={}),e.playbackState)}function pA(t,e){let r=String(e||"").trim();return r?((!t.users[r]||typeof t.users[r]!="object")&&(t.users[r]={items:{}}),(!t.users[r].items||typeof t.users[r].items!="object")&&(t.users[r].items={}),t.users[r]):null}function Zf(t,e=""){let r=t&&typeof t=="object"?t:{};return{itemId:String(e||r.itemId||"").trim(),name:String(r.name||"").trim(),isFavorite:!!r.isFavorite,played:!!r.played,playCount:Math.max(0,Math.floor(jM(r.playCount,0))),playbackPositionTicks:Math.max(0,Math.floor(jM(r.playbackPositionTicks,0))),lastPlayedDate:s2r(r.lastPlayedDate),mediaSourceId:String(r.mediaSourceId||"").trim()}}function Fdt(t={}){return Date.parse(String(t?.lastPlayedDate||""))||0}function i2r(t=""){let e=String(t||"").trim();return e?e.match(/\d{4}/)?.[0]||e:""}function qdt(t={}){let e=String(t.k||"").trim(),r=String(t.v||"").trim();if(!e||!r)return null;let n=i2r(t.y);return{k:e,t:Number(t.t||3),v:r,...t.n?{n:String(t.n||"")}:{},...t.u?{u:String(t.u||"")}:{},...t.r?{r:String(t.r||"")}:{},...n?{y:n}:{}}}function a2r(t={}){let e=qdt(t);return e?{...e,l:Number(t.l||0)}:null}function o2r(t={}){let e=qdt(t);return e?wn("vod",e):""}function c2r(t={}){let e=a2r(t);return e?wn("sea",e):""}function jdt(t){return t?.type==="ep"||t?.type==="media"}function u2r(t,e){if(!jdt(t)||!["vod","sea"].includes(e?.type))return!1;let r=t.payload||{},n=e.payload||{};return!(String(r.k||"")!==String(n.k||"")||Number(r.t||3)!==Number(n.t||3)||String(r.v||"")!==String(n.v||"")||e.type==="sea"&&Number(r.l||0)!==Number(n.l||0))}function Hdt(t,e,r,n={}){let s=Fs(String(r||""));if(!["vod","sea"].includes(s?.type))return[];let i=lm(t),a=pA(i,e);if(!a)return[];let o=!!n?.includePlayed;return Object.entries(a.items||{}).map(([c,u])=>({record:Zf(u,c),decoded:Fs(c)})).filter(({record:c,decoded:u})=>!u2r(u,s)||c.playbackPositionTicks<=0?!1:o||!c.played).sort((c,u)=>Fdt(u.record)-Fdt(c.record))}function c2(t,e,r,n={}){return Hdt(t,e,r,n)[0]||null}async function Udt(t){try{if(!t?.db?.push)return;await t.db.push(t2r,lm(t))}catch{}}function QM(t,e=!1){let r=t?.embyContext;if(!(!r||typeof r!="object")){if(e){r.playbackPersistTimer&&(clearTimeout(r.playbackPersistTimer),r.playbackPersistTimer=null),Udt(t);return}r.playbackPersistTimer||(r.playbackPersistTimer=setTimeout(async()=>{r.playbackPersistTimer=null,await Udt(t)},n2r))}}function l2r(t={},e=""){let r=[t?.ItemId,t?.itemId,t?.NowPlayingItem?.Id,t?.nowPlayingItem?.Id,t?.PlayingItemId,t?.playingItemId,t?.PlayableItemId,t?.playableItemId,e];for(let n of r){let s=String(n||"").trim();if(s)return s}return""}function d2r(t={}){let e=[t?.PositionTicks,t?.positionTicks,t?.PlaybackPositionTicks,t?.playbackPositionTicks,t?.Position,t?.position];for(let r of e){let n=Math.floor(jM(r,NaN));if(Number.isFinite(n)&&n>=0)return n}return 0}function f2r(t={}){let e=[t?.RunTimeTicks,t?.runTimeTicks,t?.NowPlayingItem?.RunTimeTicks,t?.nowPlayingItem?.runTimeTicks];for(let r of e){let n=Math.floor(jM(r,NaN));if(Number.isFinite(n)&&n>0)return n}return 0}function p2r(t,e,r,n){return Xue(t?.Played,!1)||Xue(t?.IsPlayed,!1)||e==="played"?!0:e!=="stopped"||n<=0?!1:r/n>=r2r}function m2r(t,e,r){let n=String(r||"").trim();if(!n)return null;let s=lm(t),i=pA(s,e);if(!i)return null;let a=i.items[n];return!a||typeof a!="object"?null:Zf(a,n)}function Uo(t,e,r,n={}){let s=String(r||"").trim();if(!s)return ss(n);let i=m2r(t,e,s),o=c2(t,e,s)?.record||null||i;return o?ss({...n,IsFavorite:!!(i?.isFavorite||o.isFavorite),Played:o.played,PlayCount:o.playCount,PlaybackPositionTicks:o.playbackPositionTicks,...o.lastPlayedDate?{LastPlayedDate:o.lastPlayedDate}:{}}):ss(n)}function Us(t,e,r=[]){return!Array.isArray(r)||!r.length||r.forEach(n=>{!n||!n.Id||(n.UserData=Uo(t,e,String(n.Id||""),n.UserData||{}))}),r}async function u2(t,e,r={},n="progress"){let s=l2r(r);if(!s)return null;let i=lm(t),a=pA(i,e);if(!a)return null;let o=Zf(a.items[s],s),c=d2r(r),u=f2r(r),l=p2r(r,n,c,u),d=Zf(o,s);d.lastPlayedDate=$s(),c>0&&(d.playbackPositionTicks=c);let f=String(r?.ItemName||r?.itemName||r?.Name||r?.name||r?.NowPlayingItem?.Name||"").trim();f&&(d.name=f);let p=String(r?.MediaSourceId||r?.mediaSourceId||"").trim();return p&&(d.mediaSourceId=p),l?(d.played=!0,d.playCount=Math.max(1,d.playCount+(o.played?0:1)),d.playbackPositionTicks=0):n!=="ping"&&(c>0||n==="stopped"||n==="progress"||n==="playing")&&(d.played=!1),(r?.IsFavorite!==void 0||r?.isFavorite!==void 0)&&(d.isFavorite=Xue(r?.IsFavorite??r?.isFavorite,d.isFavorite)),a.items[s]=d,QM(t,n==="stopped"),d}async function Qdt(t,e,r,n){let s=String(r||"").trim();if(!s)return ss();let i=lm(t),a=pA(i,e);if(!a)return ss();let o=Zf(a.items[s],s),c=Zf(o,s);return c.played=!!n,c.lastPlayedDate=$s(),c.played&&(c.playCount=Math.max(1,c.playCount+(o.played?0:1))),c.playbackPositionTicks=0,a.items[s]=c,QM(t,!0),Uo(t,e,s)}async function Gdt(t,e,r,n){let s=String(r||"").trim();if(!s)return ss();let i=lm(t),a=pA(i,e);if(!a)return ss();let o=Zf(a.items[s],s);return o.isFavorite=!!n,o.lastPlayedDate=$s(),a.items[s]=o,QM(t,!0),Uo(t,e,s)}async function Kdt(t,e,r){let n=String(r||"").trim();if(!n)return ss();let s=lm(t),i=pA(s,e);if(!i)return ss();let a=new Set([n,...Hdt(t,e,n).map(({record:o})=>o.itemId)]);for(let o of a){let c=Zf(i.items[o],o);c.played=!1,c.playbackPositionTicks=0,c.lastPlayedDate=$s(),i.items[o]=c}return QM(t,!0),Uo(t,e,n)}function h2r(t=""){let e=Fs(String(t||""));return e?e.type==="vod"?{type:"Series",isFolder:!0,canPlay:!1,mediaType:"Video"}:e.type==="sea"?{type:"Season",isFolder:!0,canPlay:!1,mediaType:void 0}:e.type==="ep"||e.type==="media"?{type:"Episode",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}}function g2r(t){if(t?.name)return String(t.name);let e=Fs(String(t?.itemId||"")),r=String(e?.payload?.n||"").trim();return r||"\u7EE7\u7EED\u64AD\u653E"}function A2r(t,e,r,n){let s=Fs(String(n?.itemId||""));if(jdt(s)){let a=o2r(s.payload||{});if(a){let o=c2r(s.payload||{});return{Name:String(s?.payload?.n||n?.name||"").trim()||"\u7EE7\u7EED\u64AD\u653E",Id:a,ServerId:r,IsFolder:!0,Type:"Series",MediaType:"Video",CollectionType:"tvshows",...o?{SeasonId:o}:{},DateCreated:n.lastPlayedDate||$s(),ImageTags:{Primary:a},BackdropImageTags:[],UserData:Uo(t,e,a)}}}let i=h2r(n.itemId);return{Name:g2r(n),Id:n.itemId,ServerId:r,IsFolder:i.isFolder,Type:i.type,...i.mediaType?{MediaType:i.mediaType}:{},...i.canPlay?{CanPlay:!0}:{},DateCreated:n.lastPlayedDate||$s(),ImageTags:{Primary:n.itemId},BackdropImageTags:[],UserData:Uo(t,e,n.itemId)}}function y2r(t={}){let e=Fs(String(t?.Id||"")),r=e?.payload||{},n=String(r.k||"").trim(),s=String(r.v||"").trim();return e?.type==="vod"&&n&&s?`series:${n}:${Number(r.t||3)}:${s}`:e?.type==="sea"&&n&&s?`season:${n}:${Number(r.t||3)}:${s}:${Number(r.l||0)}`:`item:${String(t?.Id||"")}`}function Vdt(t,e,r){let n=lm(t),s=pA(n,e);if(!s)return[];let i=Object.entries(s.items||{}).map(([c,u])=>Zf(u,c)).filter(c=>c.playbackPositionTicks>0&&!c.played).sort((c,u)=>{let l=Date.parse(String(c.lastPlayedDate||""))||0;return(Date.parse(String(u.lastPlayedDate||""))||0)-l}),a=new Set,o=[];for(let c of i){let u=A2r(t,e,r,c),l=y2r(u);!u?.Id||a.has(l)||(a.add(l),o.push(u))}return o}var x2r="https://api.themoviedb.org/3",zdt=8e3,b2r=2,Ydt=20,Jdt=20;function Xdt(t=0){return new Promise(e=>setTimeout(e,Math.max(0,Number(t)||0)))}function l2(t){let e=t.embyContext?.config||{},r=String(e.tmdbApiKey||"").trim();return!e.tmdbEnable||!r?null:{apiKey:r,language:String(e.tmdbLanguage||"zh-CN"),imageBase:String(e.tmdbImageBase||"https://image.tmdb.org/t/p/original").replace(/\/+$/,""),timeoutMs:zdt}}function Zdt(t="zh-CN"){let e=String(t||"zh-CN").trim().split(/[-_]/)[0].toLowerCase(),r=new Set;return e&&r.add(e),r.add("en"),r.add("null"),Array.from(r).join(",")}function E2r(t){let e=t.embyContext;return e.tmdbClientState||(e.tmdbClientState={tokens:Jdt,lastRefillAt:Date.now()}),e.tmdbClientState}function _2r(t){let e=Date.now(),r=Math.max(0,e-t.lastRefillAt)/1e3;r<=0||(t.tokens=Math.min(Jdt,t.tokens+r*Ydt),t.lastRefillAt=e)}async function S2r(t){let e=E2r(t);for(;;){if(_2r(e),e.tokens>=1){e.tokens-=1;return}let r=Math.max(0,1-e.tokens),n=Math.max(50,Math.ceil(r/Ydt*1e3));await Xdt(n)}}function v2r(t){let e=Number(t?.response?.status||0);return!e||e===429||e>=500}function I2r(t,e=0){let r=Number(t?.response?.headers?.["retry-after"]||0);return Number.isFinite(r)&&r>0?r*1e3:Math.min(4e3,500*(e+1))}function mA(t){return!!l2(t)}function d2(t,e=""){let r=String(e||"").trim();return r?/^https?:\/\//i.test(r)?r:`${l2(t)?.imageBase||"https://image.tmdb.org/t/p/original"}${r.startsWith("/")?"":"/"}${r}`:""}async function f2(t,e,r={},n={}){let s=l2(t);if(!s)return null;let i={...r||{}};i.language||(i.language=s.language);let a=Math.max(0,Number(n.maxRetries??b2r)||0);for(let o=0;o<=a;o+=1){await S2r(t);try{return(await Ae.get(`${x2r}${e}`,{params:{api_key:s.apiKey,...i},timeout:Number(n.timeoutMs||s.timeoutMs||zdt),headers:{Accept:"application/json"}})).data||null}catch(c){if(o>=a||!v2r(c))return null;await Xdt(I2r(c,o))}}return null}async function eft(t,e,r=null){return f2(t,"/search/tv",{query:e,...r?{first_air_date_year:r}:{}})}async function tft(t,e,r=null){return f2(t,"/search/movie",{query:e,...r?{primary_release_year:r}:{}})}async function rft(t,e){let r=l2(t);return f2(t,`/tv/${Number(e)}`,{append_to_response:"external_ids,content_ratings,images,credits",include_image_language:Zdt(r?.language||"zh-CN")})}async function nft(t,e){let r=l2(t);return f2(t,`/movie/${Number(e)}`,{append_to_response:"external_ids,release_dates,images,credits",include_image_language:Zdt(r?.language||"zh-CN")})}async function sft(t,e,r){return f2(t,`/tv/${Number(e)}/season/${Number(r)}`)}function Mn(t=""){return String(t||"").trim()}function ift(t=[]){let e=[],r=new Set;for(let n of t){let s=Mn(n);!s||r.has(s)||(r.add(s),e.push(s))}return e}function C2r(t=""){let e=Mn(t);if(!e)return null;let r=e.replace(/[·•::\-_.!!??,,'"/\\()[\]{}【】《》\s]+$/g,"");if(!r)return null;let n=r.match(/([1-9]\d{0,2})$/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return!Number.isInteger(s)||s<=0||s>50?null:s}function oft({explicitSources:t=[],suffixSources:e=[]}={}){for(let r of ift(t)){let n=Number.parseInt(Bce(r),10);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"pattern"}}for(let r of ift(e)){let n=C2r(r);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"title_suffix"}}return{seasonNumber:null,explicit:!1,strategy:"none"}}function T2r(t="",e={},r="tv"){let n=String(t||"");if(r!=="tv"||!n||String(e?.seasonHintStrategy||"")!=="title_suffix")return"";let s=Number.parseInt(String(e?.seasonNumber||""),10);if(!Number.isInteger(s)||s<=0)return"";let i=String(s);if(!n.endsWith(i))return"";let a=n.slice(0,Math.max(0,n.length-i.length));return a.length>=2?a:""}function aft(t="",e=""){return!t||!e?0:t===e?1:t.includes(e)||e.includes(t)?Math.min(.95,Math.min(t.length,e.length)/Math.max(t.length,e.length)+.15):RQ(t,e).length/Math.max(t.length,e.length)}function hA(t=""){let e=Mn(t).match(/\b(19|20)\d{2}\b/);return e?.[0]?Number(e[0]):null}function Zue(t=""){let e=Mn(t);return Mn(sA(e)||e).toLowerCase().replace(/[·•::\-_.!!??,,'"/\\()[\]{}【】《》\s]+/g,"").replace(/第[一二三四五六七八九十百千万亿\d]+å­£/g,"").replace(/年番总集篇|年番合集篇|总集篇|合集篇|年番/g,"")}function cft(t={}){let e=Mn(t?.tmdbHintTitle||t?.vod_name||t?.name||""),r=Mn(sA(e)||e),n=Mn(t?.tmdbHintRemarks||t?.vod_remarks||""),s=oft({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),e,n,Mn(t?.vod_name),Mn(t?.vod_remarks)],suffixSources:[e,r,Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return{rawTitle:e,cleanedTitle:r,normalizedTitle:Zue(r||e),altTitle:n,year:hA(t?.tmdbHintYear||t?.vod_year),seasonNumber:s.seasonNumber,seasonHintStrategy:s.strategy}}function ele(t={},e=null){let r=oft({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),Mn(t?.vod_name),Mn(t?.vod_remarks),Mn(e?.flag)],suffixSources:[Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return Number.isInteger(r.seasonNumber)&&r.seasonNumber>0?{seasonNumber:r.seasonNumber,explicit:r.explicit,strategy:r.strategy}:{seasonNumber:1,explicit:!1,strategy:"default"}}function uft(t={},e="tv"){return Mn(e==="movie"?t?.title||t?.original_title||t?.name||t?.original_name||"":t?.name||t?.original_name||t?.title||t?.original_title||"")}function w2r(t={},e="tv"){return hA(e==="movie"?t?.release_date:t?.first_air_date)}function R2r(t,e,r){let n=Zue(t?.cleanedTitle||t?.rawTitle||""),s=T2r(n,t,r),i=Zue(uft(e,r)),a=aft(n,i),o=aft(s,i);return Math.max(a,o)}function N2r(t,e,r){let n=r==="tv"&&String(t?.seasonHintStrategy||"")==="title_suffix"&&Number.parseInt(String(t?.seasonNumber||""),10)>1;if(!t?.year)return .5;let s=w2r(e,r);if(!s)return n?.5:.2;let i=Math.abs(t.year-s);return n&&i>=2?.5:i===0?1:i===1?.7:i===2?.4:0}function O2r(t,e,r){if(r!=="tv"||!t?.seasonNumber)return .5;let n=Number.parseInt(Bce(uft(e,r)),10)||null;return n?n===t.seasonNumber?1:.2:.5}function P2r(t,e,r="tv"){let n=R2r(t,e,r),s=N2r(t,e,r),i=O2r(t,e,r),a=Math.min(Number(e?.popularity||0)/100,1),o=Math.min(Number(e?.vote_average||0)/10,1),c=Math.max(a,o),u=Number((n*.7+s*.2+i*.05+c*.05).toFixed(4));return{title:Number(n.toFixed(4)),year:Number(s.toFixed(4)),season:Number(i.toFixed(4)),heat:Number(c.toFixed(4)),score:u}}function lft(t,e=[],r="tv"){let n=(Array.isArray(e)?e:[]).map(i=>{let a=P2r(t,i,r);return{candidate:i,score:a.score,breakdown:a}}).sort((i,a)=>a.score-i.score),s=n[0]||null;return!s||s.score<.5?{status:"NO_MATCH",best:null,candidates:n.slice(0,3)}:s.score<.8?{status:"CANDIDATE",best:s,candidates:n.slice(0,3)}:{status:"MATCH",best:s,candidates:n.slice(0,3)}}function GM(t={},e=null,r=0){return ele(t,e).seasonNumber}var AA={BINDING:30*24*60*60*1e3,DETAIL:7*24*60*60*1e3,SEASON:7*24*60*60*1e3,NO_MATCH:24*60*60*1e3,FAILURE:10*60*1e3};function rle(t){let e=t.embyContext;return e.tmdbStore||(e.tmdbStore={memory:vM({max:1200}),pending:new Map}),e.tmdbStore}function tle(t=""){return`/embyTmdb/${Buffer.from(String(t||""),"utf8").toString("base64url")}`}function k2r(t,e=0){return{value:t,expireAt:e>0?Date.now()+e:0}}function D2r(t=null){return!!(t&&t.expireAt>0&&t.expireAt<=Date.now())}async function B2r(t,e){try{let r=await t.db?.getObjectDefault(tle(e),null);return!r||typeof r!="object"?null:D2r(r)?(t.db?.delete&&await t.db.delete(tle(e)).catch(()=>{}),null):r}catch{return null}}async function gA(t,e,r={}){let n=rle(t),s=n.memory.get(e);if(s!==void 0)return s;if(r.persist===!1)return null;let i=await B2r(t,e);if(!i)return null;let a=i.expireAt>0?Math.max(1e3,i.expireAt-Date.now()):0;return n.memory.set(e,i.value,a),i.value}async function $E(t,e,r,n=0,s={}){if(rle(t).memory.set(e,r,n),s.persist===!1)return r;try{t.db?.push&&await t.db.push(tle(e),k2r(r,n))}catch{}return r}async function nle(t,e,r,n,s={}){let i=await gA(t,e,s);if(i!==null)return i;let a=rle(t);if(a.pending.has(e))return a.pending.get(e);let o=(async()=>{try{let c=await gA(t,e,s);if(c!==null)return c;let u=await n();return u!=null?$E(t,e,u,r,s):null}finally{a.pending.delete(e)}})();return a.pending.set(e,o),o}function ku(t=""){return String(t||"").trim()}function L2r(t=""){let e=hA(t);return e?String(e):""}function yA(t={},e={}){let r=t&&typeof t=="object"?t:{},n=ku(e?.n),s=ku(e?.r),i=L2r(e?.y||e?.vod_year),a=ku(e?.u);return n&&(r.tmdbHintTitle=n),s&&(r.tmdbHintRemarks=s),i&&(r.tmdbHintYear=i),!ku(r.vod_name)&&n&&(r.vod_name=n),!ku(r.vod_remarks)&&s&&(r.vod_remarks=s),!ku(r.vod_year)&&i&&(r.vod_year=i),!ku(r.vod_pic)&&a&&(r.vod_pic=a),r}function M2r(t={}){let e=ku(t?.v);return e?yA({vod_id:e,vod_name:"",vod_pic:"",vod_remarks:"",vod_year:""},t):null}function Kn(t={}){let e={};return Object.entries(t).forEach(([r,n])=>{n!=null&&(typeof n=="string"&&!n.trim()||Array.isArray(n)&&n.length===0||!Array.isArray(n)&&typeof n=="object"&&Object.keys(n).length===0||(e[r]=n))}),e}function ile(t){let e=Number(t);return Number.isFinite(e)&&e>0?Number(e.toFixed(1)):void 0}function ale(t=""){let e=String(t||"").trim();return/^\d{4}-\d{2}-\d{2}$/.test(e)?`${e}T00:00:00.000Z`:void 0}function W2r(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.round(e*60*1e7):void 0}function $2r(t=[]){return(Array.isArray(t)?t:[]).map(e=>String(e?.name||"").trim()).filter(Boolean)}function F2r(t=[]){return(Array.isArray(t)?t:[]).filter(e=>e?.name).map(e=>({Name:String(e.name),Id:String(e.id||e.name)}))}function U2r(t={},e="tv"){return e==="movie"?{name:String(t?.title||t?.original_title||"").trim(),originalTitle:String(t?.original_title||t?.title||"").trim()}:{name:String(t?.name||t?.original_name||"").trim(),originalTitle:String(t?.original_name||t?.name||"").trim()}}function q2r(t=""){return String(t||"").trim().toLowerCase()}function j2r(t={}){let e=Array.isArray(t?.images?.logos)?t.images.logos:[];if(!e.length)return[];let r=e.map((n,s)=>{let i=q2r(n?.iso_639_1),a=String(n?.file_path||"").trim(),o=Number(n?.vote_average||0),c=Number(n?.vote_count||0),u=Number(n?.width||0),l=i?i==="en"?2:3:1;return{index:s,filePath:a,voteAverage:Number.isFinite(o)?o:0,voteCount:Number.isFinite(c)?c:0,width:Number.isFinite(u)?u:0,languageScore:l}}).filter(n=>n.filePath);return r.sort((n,s)=>s.languageScore-n.languageScore||s.voteAverage-n.voteAverage||s.voteCount-n.voteCount||s.width-n.width||n.index-s.index),r}function KM(t={}){let e=j2r(t);return e.length&&e[0]?.filePath||""}function H2r(t="",e="",r=0){let n=Kn({n:String(t||"").trim(),u:String(e||"").trim()||void 0,pid:Number(r||0)>0?String(r):void 0});return wn("img",n)}function Q2r(t,e={},r={}){let n=String(e?.name||e?.original_name||"").trim();if(!n)return null;let s=d2(t,e?.profile_path||""),i=Number(e?.id||0),a=H2r(n,s,i),o=String(r.role||"").trim(),c=String(r.type||"Actor").trim();return Kn({Name:n,Id:a,Role:o||void 0,Type:c||void 0,PrimaryImageTag:s?a:void 0,ImageTags:s?{Primary:a}:void 0})}function G2r(t={},e){let r=Array.isArray(t?.credits?.cast)?t.credits.cast:[],n=[],s=new Set,i=(o,c="")=>{if(!o)return;let u=String(c||`${o.Name}:${o.Role||""}`);s.has(u)||(s.add(u),n.push(o))};return[...r].map((o,c)=>({person:o,index:c,order:Number(o?.order??c),popularity:Number(o?.popularity||0)})).sort((o,c)=>o.order-c.order||c.popularity-o.popularity||o.index-c.index).slice(0,24).forEach(o=>{let c=Number(o.person?.id||0),u=String(o.person?.character||"").trim()||"\u6F14\u5458";i(Q2r(e,o.person,{role:u,type:"Actor"}),c>0?`cast:${c}`:`cast:${o.person?.name||""}:${u}`)}),n.slice(0,24)}function K2r(t={}){let e={};return t?.id&&(e.Tmdb=String(t.id)),t?.external_ids?.imdb_id&&(e.Imdb=String(t.external_ids.imdb_id)),t?.external_ids?.tvdb_id&&(e.Tvdb=String(t.external_ids.tvdb_id)),Object.keys(e).length>0?e:void 0}function dft(t=[]){let e=(Array.isArray(t)?t:[]).map(r=>({country:String(r?.iso_3166_1||"").trim().toUpperCase(),certification:String(r?.certification||r?.rating||"").trim()})).filter(r=>r.certification);for(let r of["US","CN","GB","HK","TW"]){let n=e.find(s=>s.country===r);if(n)return n.certification}return e[0]?.certification||void 0}function V2r(t={},e="tv"){if(e==="movie"){let r=[];return(Array.isArray(t?.release_dates?.results)?t.release_dates.results:[]).forEach(s=>{(Array.isArray(s?.release_dates)?s.release_dates:[]).forEach(a=>{r.push({iso_3166_1:s?.iso_3166_1,certification:a?.certification})})}),dft(r)}return dft(Array.isArray(t?.content_ratings?.results)?t.content_ratings.results:[])}function z2r(t,e){return`binding:${String(t?.spiderKey||"")}:${Number(t?.spiderType||3)}:${String(t?.apiBase||"")}:${String(e?.vod_id||"")}`}function Y2r(t,e,r){return`detail:${String(t||"")}:${Number(e||0)}:${String(r||"zh-CN")}`}function J2r(t,e,r){return`season:${Number(t||0)}:${Number(e||0)}:${String(r||"zh-CN")}`}function X2r(t){return`no-match:v2:${String(t?.normalizedTitle||"")}:${String(t?.year||"")}:${String(t?.seasonNumber||"")}:${String(t?.seasonHintStrategy||"")}`}function pft(t){return`failure:${t}`}function ep(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function mft(t={},e="tv"){return e==="movie"?String(t?.title||t?.original_title||t?.name||t?.original_name||"").trim():String(t?.name||t?.original_name||t?.title||t?.original_title||"").trim()}function hft(t={},e="tv"){return String(e==="movie"?t?.release_date||"":t?.first_air_date||"").trim()}function sle(t={}){let e=typeof t?.year=="number"&&Number.isFinite(t.year)?t.year:void 0,r=typeof t?.seasonNumber=="number"&&Number.isFinite(t.seasonNumber)?t.seasonNumber:void 0,n=String(t?.seasonHintStrategy||"").trim()||void 0;return Kn({rawTitle:String(t?.rawTitle||""),cleanedTitle:String(t?.cleanedTitle||""),normalizedTitle:String(t?.normalizedTitle||""),altTitle:String(t?.altTitle||""),year:e,seasonNumber:r,seasonHintStrategy:n})}function Z2r(t=[],e="tv",r=3){return(Array.isArray(t)?t:[]).slice(0,Math.max(0,Number(r)||0)).map(n=>{let s=n?.candidate||{},i=n?.breakdown||{};return Kn({id:Number(s?.id||0)||void 0,title:mft(s,e),date:hft(s,e),popularity:Number.isFinite(Number(s?.popularity))?Number(s.popularity):void 0,voteAverage:Number.isFinite(Number(s?.vote_average))?Number(s.vote_average):void 0,score:Number.isFinite(Number(n?.score))?Number(n.score):void 0,breakdown:Kn({title:Number.isFinite(Number(i?.title))?Number(i.title):void 0,year:Number.isFinite(Number(i?.year))?Number(i.year):void 0,season:Number.isFinite(Number(i?.season))?Number(i.season):void 0,heat:Number.isFinite(Number(i?.heat))?Number(i.heat):void 0})})})}function fft(t=null){if(!t?.candidate)return null;let e=t.candidate;return Kn({mediaType:String(t.mediaType||""),status:String(t.status||""),score:Number.isFinite(Number(t.score))?Number(t.score):void 0,candidate:Kn({id:Number(e?.id||0)||void 0,title:mft(e,t.mediaType||"tv"),date:hft(e,t.mediaType||"tv")}),breakdown:Kn({title:Number.isFinite(Number(t?.breakdown?.title))?Number(t.breakdown.title):void 0,year:Number.isFinite(Number(t?.breakdown?.year))?Number(t.breakdown.year):void 0,season:Number.isFinite(Number(t?.breakdown?.season))?Number(t.breakdown.season):void 0,heat:Number.isFinite(Number(t?.breakdown?.heat))?Number(t.breakdown.heat):void 0})})}function eRr(t={},e={}){let r=String(e.preferredMediaType||"").trim().toLowerCase();return r==="tv"?e.allowFallback===!1?["tv"]:["tv","movie"]:r==="movie"?e.allowFallback===!1?["movie"]:["movie","tv"]:WE(t)==="Series"?e.allowFallback===!0?["tv","movie"]:["tv"]:["movie","tv"]}async function tRr(t,e,r){let n=[...new Set([e?.cleanedTitle,e?.rawTitle].map(c=>String(c||"").trim()).filter(Boolean))],s=new Map,i=[],o=r==="tv"&&Number.parseInt(String(e?.seasonNumber||""),10)>1&&String(e?.seasonHintStrategy||"")==="title_suffix"?null:e?.year;for(let c of n){let u=r==="movie"?await tft(t,c,e?.year):await eft(t,c,o),l=Array.isArray(u?.results)?u.results:[],d=0;if(l.forEach(f=>{let p=Number(f?.id||0);p>0&&!s.has(p)&&(s.set(p,f),d+=1)}),i.push(Kn({query:c,resultCount:l.length,acceptedCount:d,collectedCount:s.size})),s.size>=5)break}return{results:Array.from(s.values()),queryLogs:i}}async function FE(t,e,r,n={}){if(!mA(t)||!e?.spiderKey||!r?.vod_id)return null;let s={spiderKey:String(e?.spiderKey||""),spiderType:Number(e?.spiderType||3),vodId:String(r?.vod_id||"")},i=z2r(e,r),a=String(n.preferredMediaType||"").trim().toLowerCase(),o=await gA(t,i);if(o?.tmdbId&&o?.mediaType)return a&&n.allowFallback===!1&&o.mediaType!==a?(ep(t,"tmdb.match.binding.cache.reject",Kn({...s,cachedMediaType:String(o.mediaType||""),preferredMediaType:a})),null):(ep(t,"tmdb.match.binding.cache.hit",Kn({...s,mediaType:String(o.mediaType||""),tmdbId:Number(o.tmdbId||0)||void 0,score:Number.isFinite(Number(o.score))?Number(o.score):void 0})),o);let c=cft(r),u=typeof n.allowFallback=="boolean"?n.allowFallback:void 0;if(ep(t,"tmdb.match.input",Kn({...s,input:sle(c),preferredMediaType:a||void 0,allowFallback:u})),!c?.normalizedTitle)return ep(t,"tmdb.match.skip.invalid_input",Kn({...s,input:sle(c)})),null;let l=X2r(c),d=await gA(t,l);if(d)return ep(t,"tmdb.match.skip.no_match_cache",Kn({...s,status:String(d?.status||""),score:Number.isFinite(Number(d?.score))?Number(d.score):void 0})),null;let f=null;for(let m of eRr(r,n)){let{results:h,queryLogs:A}=await tRr(t,c,m),g=lft(c,h,m);if(ep(t,"tmdb.match.round",Kn({...s,mediaType:m,queryLogs:A,resultCount:h.length,status:g.status,bestScore:Number.isFinite(Number(g?.best?.score))?Number(g.best.score):void 0,topCandidates:Z2r(g.candidates,m,3)})),g.best&&(!f||g.best.score>f.score)&&(f={mediaType:m,...g.best,status:g.status}),g.status==="MATCH"&&g.best?.candidate?.id){let b=g.best.candidate,y=Kn({mediaType:m,tmdbId:Number(b.id),score:g.best.score,matchedTitle:String(m==="movie"?b.title||b.original_title||"":b.name||b.original_name||""),matchedYear:m==="movie"?hA(b.release_date):hA(b.first_air_date),updatedAt:Date.now()});return await $E(t,i,y,AA.BINDING),ep(t,"tmdb.match.binding.set",Kn({...s,mediaType:m,tmdbId:Number(y.tmdbId||0)||void 0,score:Number.isFinite(Number(y.score))?Number(y.score):void 0,matchedTitle:String(y.matchedTitle||""),matchedYear:Number.isFinite(Number(y.matchedYear))?Number(y.matchedYear):void 0,best:fft({mediaType:m,...g.best,status:g.status})})),y}}let p={status:f?.score>=.5?"CANDIDATE":"NO_MATCH",score:Number(f?.score||0),checkedAt:Date.now()};return await $E(t,l,p,f?.score>=.5?15*60*1e3:AA.NO_MATCH),ep(t,"tmdb.match.no_match_set",Kn({...s,noMatch:p,best:fft(f),input:sle(c)})),null}async function gft(t,e={},r={}){try{if(!mA(t))return null;let n=Xl(e),s=M2r(e);return!n?.spiderKey||!s?.vod_id?null:Sft(t,{spiderRef:n,vod:s,options:r})}catch{return null}}async function UE(t,e){if(!e?.tmdbId||!e?.mediaType)return null;let r=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),n=Y2r(e.mediaType,e.tmdbId,r),s=pft(n);if(await gA(t,s))return null;let i=await nle(t,n,AA.DETAIL,async()=>{let a=e.mediaType==="movie"?await nft(t,e.tmdbId):await rft(t,e.tmdbId);return a?.id?a:null});return i?.id?i:(await $E(t,s,{failedAt:Date.now()},AA.FAILURE),null)}async function rRr(t,e,r){if(!e?.tmdbId||e?.mediaType!=="tv")return null;let n=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),s=J2r(e.tmdbId,r,n),i=pft(s);if(await gA(t,i))return null;let a=await nle(t,s,AA.SEASON,async()=>{let o=await sft(t,e.tmdbId,r);return o?.season_number!=null?o:null});return a?.season_number!=null?a:(await $E(t,i,{failedAt:Date.now()},AA.FAILURE),null)}function nRr(t={},e=null){let r=[ku(t?.tmdbHintTitle||t?.vod_name),ku(t?.tmdbHintRemarks||t?.vod_remarks),ku(e?.flag)].filter(Boolean).join(" ");return/年番/i.test(r)}function sRr(t=""){let e=String(t||"").trim();if(!e)return null;let r=Number.parseInt(e,10);if(Number.isInteger(r)&&r>0)return r;let n=e.match(/(\d{1,4})/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return Number.isInteger(s)&&s>0?s:null}function iRr(t=null){let r=(Array.isArray(t?.episodes)?t.episodes:[]).map(n=>sRr(n?.name)).filter(n=>Number.isInteger(n)&&n>0);return r.length?{count:r.length,min:Math.min(...r),max:Math.max(...r)}:{count:0,min:0,max:0}}function Aft(t={}){return(Array.isArray(t?.seasons)?t.seasons:[]).map(e=>({seasonNumber:Number(e?.season_number||0),episodeCount:Number(e?.episode_count||0),name:String(e?.name||"").trim()})).filter(e=>Number.isInteger(e.seasonNumber)&&e.seasonNumber>0)}function aRr(t={},e={},r=null,n={seasonNumber:1,explicit:!1}){let s=Aft(t),i=Number(n?.seasonNumber||1),a=Number.isInteger(i)&&i>0?i:1,o=!!n?.explicit,c=nRr(e,r),u=iRr(r),l=d=>{let f=Number(d||0);return!Number.isInteger(f)||f<=0?[]:s.filter(p=>p.episodeCount>=f).sort((p,m)=>m.seasonNumber-p.seasonNumber||m.episodeCount-p.episodeCount)};if(!s.length)return{seasonNumber:a,reason:"no_tmdb_seasons",explicit:o,yearFan:c,episodeStats:u,seasons:[]};if(o&&s.some(d=>d.seasonNumber===a))return{seasonNumber:a,reason:"explicit_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s};if(c){let d=l(u.max);return d.length?{seasonNumber:d[0].seasonNumber,reason:"yearfan_episode_cap",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((p,m)=>m.episodeCount-p.episodeCount||m.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"yearfan_largest_season",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(u.max>=6&&u.count>=u.max){let d=s.filter(f=>f.episodeCount===u.max);if(d.length===1)return{seasonNumber:d[0].seasonNumber,reason:"episode_count_exact_unique",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(!o&&u.max>=100){let d=l(u.max);if(d.length)return{seasonNumber:d[0].seasonNumber,reason:"high_episode_secondary",explicit:o,yearFan:c,episodeStats:u,seasons:s}}return s.some(d=>d.seasonNumber===a)?{seasonNumber:a,reason:o?"explicit_hint":"default_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((f,p)=>f.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"fallback_first_available",explicit:o,yearFan:c,episodeStats:u,seasons:s}}async function p2(t,e,r={},n=null,s=0,i=null){if(e?.mediaType!=="tv")return{seasonNumber:null,seasonDetail:null,detail:null};let a=i||await UE(t,e);if(!a)return{seasonNumber:null,seasonDetail:null,detail:null};let o=ele(r,n),c=aRr(a,r,n,o),u=Number(c?.seasonNumber||0);if(!Number.isInteger(u)||u<=0)return{seasonNumber:null,seasonDetail:null,detail:a};let l=await rRr(t,e,u);return ep(t,"tmdb.match.season_resolve",Kn({spiderKey:String(e?.spiderKey||""),tmdbId:Number(e?.tmdbId||0)||void 0,lineIndex:Number.isInteger(Number(s))?Number(s):void 0,chosenSeason:u,reason:String(c?.reason||""),explicitHint:c?.explicit===!0?!0:void 0,yearFanHint:c?.yearFan===!0?!0:void 0,episodeMax:Number(c?.episodeStats?.max||0)||void 0,seasonCandidates:Array.isArray(c?.seasons)?c.seasons.map(d=>Kn({seasonNumber:Number(d?.seasonNumber||0)||void 0,episodeCount:Number(d?.episodeCount||0)||void 0,name:String(d?.name||"")})):void 0})),{seasonNumber:u,seasonDetail:l&&l?.season_number!=null?l:null,detail:a}}async function yft(t,e,r={},n=null){let s=await p2(t,e,r,null,0,n);return{seasonNumber:s.seasonNumber,seasonDetail:s.seasonDetail}}function oRr(t,e,r,n=null){let s=e?.mediaType==="movie"?"movie":"tv",i=s==="tv"?Aft(t).length:0,a=Number(n?.seasonNumber||0),o=n?.seasonDetail||null,c=s==="tv"&&Number.isInteger(a)&&a>0&&o?.season_number!=null,u=s==="movie"?t?.release_date:o?.air_date||t?.first_air_date,l=s==="movie"?Number(t?.runtime||0):Array.isArray(t?.episode_run_time)?t.episode_run_time.find(m=>Number(m)>0):0,d=U2r(t,s),f=KM(t),p=c?o?.poster_path||t?.backdrop_path||t?.poster_path||"":t?.backdrop_path||t?.poster_path||"";return Kn({Name:d.name||void 0,OriginalTitle:d.originalTitle||void 0,Overview:String(t?.overview||"").trim()||void 0,Taglines:t?.tagline?[String(t.tagline)]:void 0,Genres:$2r(t?.genres),GenreItems:F2r(t?.genres),People:G2r(t,r),ProviderIds:K2r(t),CommunityRating:ile(t?.vote_average),RunTimeTicks:W2r(l),OfficialRating:V2r(t,s),PremiereDate:ale(u),ProductionYear:hA(u)||void 0,SeasonCount:i>0?i:void 0,ChildCount:i>0?i:void 0,BackdropImageTags:p?["tmdb"]:void 0,ImageTags:f?{Logo:"tmdb"}:void 0})}function cRr(t,e){return Kn({Overview:String(t?.overview||"").trim()||void 0,PremiereDate:ale(t?.air_date),CommunityRating:ile(t?.vote_average)})}function uRr(t,e,r,n){return Kn({Name:String(e?.name||"").trim()||void 0,Overview:String(e?.overview||"").trim()||void 0,CommunityRating:ile(e?.vote_average),PremiereDate:ale(e?.air_date),BackdropImageTags:e?.still_path?["tmdb"]:void 0})}function xft(t,e,r=-1){let n=Array.isArray(t?.episodes)?t.episodes:[],s=n.find(i=>Number(i?.episode_number||0)===Number(e||0));return s||(r>=0&&r<n.length?n[r]:null)}function bft(t,e,r){let n=fA(t,Number(e||0)+1),s=String(t||"").trim(),i=Number.parseInt(s,10);if(/^\d{3,4}$/.test(s)&&Number.isInteger(i)&&r>0){let a=Math.floor(i/100),o=i%100;if(a===r&&o>0)return o}return n}async function Eft(t,e={}){if(!mA(t))return null;let r=await FE(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await p2(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),null);return!n?.seasonDetail||!n?.seasonNumber?null:{seasonNumber:n.seasonNumber,seasonDetail:n.seasonDetail}}function _ft(t,e={}){if(!t?.seasonDetail||!t?.seasonNumber)return null;let r=bft(e?.episode?.name,e?.episodeIndex,t.seasonNumber),n=xft(t.seasonDetail,r,Number(e?.episodeIndex||0));return n?uRr(t.seasonDetail,n,t.seasonNumber,r):null}async function lRr(t,e){let r=e?.payload||{},n=Xl(r),s=String(r.v||"");if(!n?.spiderKey||!s)return null;let i=await Pc(t,n,s).catch(()=>null),a=yA({vod_id:s,vod_name:String(r.n||""),vod_pic:String(r.u||""),vod_remarks:String(r.r||""),vod_year:String(r.y||"")},r),o=kc(i)||a;return yA(o,r),!String(o?.vod_name||"").trim()&&r?.n&&(o.vod_name=String(r.n||"").trim()),!String(o?.vod_pic||"").trim()&&r?.u&&(o.vod_pic=String(r.u||"").trim()),{spiderRef:n,vod:o,lines:go(o?.vod_play_from,o?.vod_play_url)}}function dRr(t,e="primary",r=null){let n=String(e||"primary").trim().toLowerCase(),s=r?.seasonDetail||null,i=String(s?.poster_path||"").trim();return n==="logo"?KM(t):["backdrop","thumb","banner"].includes(n)?i||t?.backdrop_path||t?.poster_path||"":i||t?.poster_path||t?.backdrop_path||""}function fRr(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?KM(t):["backdrop","thumb","banner"].includes(n)?t?.backdrop_path||e?.poster_path||t?.poster_path||"":e?.poster_path||t?.poster_path||t?.backdrop_path||""}function pRr(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?KM(t):["backdrop","thumb","banner"].includes(n)?e?.still_path||t?.backdrop_path||t?.poster_path||"":e?.still_path||t?.poster_path||t?.backdrop_path||""}async function Sft(t,e={}){try{if(!mA(t))return null;let r=await FE(t,e?.spiderRef,e?.vod,e?.options||{});if(!r)return null;let n=await UE(t,r);if(!n)return null;let s=await yft(t,r,e?.vod||{},n);return oRr(n,r,t,s)}catch{return null}}async function mRr(t,e={}){try{if(!mA(t))return null;let r=await FE(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await UE(t,r);if(!n)return null;let s=await p2(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),n);return s?.seasonDetail?cRr(s.seasonDetail,s.seasonNumber):null}catch{return null}}async function m2(t,e={}){try{let r=await Eft(t,e);return r?_ft(r,e):null}catch{return null}}async function VM(t,e={}){let r=Array.isArray(e?.episodes)?e.episodes:[];if(!r.length)return[];try{let n=await Eft(t,e);if(!n)return r.map(()=>null);let s=Number(e?.episodeOffset||0);return r.map((i,a)=>_ft(n,{episode:i,episodeIndex:s+a}))}catch{return r.map(()=>null)}}async function zM(t,e,r={}){return e==="vod"?Sft(t,r):e==="season"?mRr(t,r):e==="episode"?m2(t,r):null}async function vft(t,e,r="Primary"){try{if(!mA(t))return"";if(e?.type==="img")return String(e?.payload?.u||"");let n=await lRr(t,e);if(!n)return"";let{spiderRef:s,vod:i,lines:a}=n,o=String(r||"Primary").trim().toLowerCase();if(e?.type==="vod"){let c=await FE(t,s,i,{});if(!c)return"";let u=await UE(t,c);if(!u)return"";let l=await yft(t,c,i,u);return d2(t,dRr(u,o,l||null))}if(e?.type==="sea"){let c=await FE(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await UE(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),f=(await p2(t,c,i,a?.[l]||null,l,u))?.seasonDetail||null;return u&&f?d2(t,fRr(u,f,o)):""}if(e?.type==="ep"||e?.type==="media"){let c=await FE(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await UE(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),d=Number(e?.payload?.e||0),f=a?.[l],p=f?.episodes?.[d],m=await p2(t,c,i,f||null,l,u),h=Number(m?.seasonNumber||0),A=m?.seasonDetail||null;if(!A)return"";let g=bft(p?.name,d,h),b=xft(A,g,d);return b?d2(t,pRr(u,b,o)):""}return""}catch{return""}}var Rft=!0,hRr=new Set(["tgchannel","tgsou","pansou","panta"]),gRr=!1,ARr=8e3;function yRr(t){return hRr.has(String(t||""))}function xRr(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function bRr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function Ift(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function YM(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,Id:r,ServerId:e,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:r},BackdropImageTags:[],UserData:ss()}}function ERr(t,e,r,n){let s=String(e.type_name||e.type_id||""),i=wn("cat",{k:t.spiderKey,t:t.spiderType,c:String(e.type_id),...s?{n:s}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:s,Id:i,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:i},BackdropImageTags:[],UserData:ss()}}var Nft=new Set(["movie","series","video","episode","musicvideo"]);function Cft(t=""){return String(t||"").split(",").map(e=>e.trim().toLowerCase()).filter(Boolean)}function _Rr(t=[],e=!1){return e?!0:t.some(r=>Nft.has(r))}function SRr(t=[]){return t.some(e=>Nft.has(e))}function vRr(t=[],e=!1,r=""){return e?!1:t.includes("folder")?!0:/(^|,)isfolder(,|$)/i.test(String(r||""))}function IRr(t,e=[]){if(!e.length)return!0;let r=String(t?.Type||"").toLowerCase();return!!(e.includes(r)||e.includes("video")&&["movie","video","episode"].includes(r)||e.includes("folder")&&t?.IsFolder)}function g2(t=[],e=[]){return e.length?t.filter(r=>IRr(r,e)):t}function h2(t,e,r){return!r||!r.Id||(r.UserData=Uo(t,e,String(r.Id||""),r.UserData||{})),r}function Tft(t=[]){let e=[],r=t.filter(s=>Array.isArray(s)&&s.length),n=r.reduce((s,i)=>Math.max(s,i.length),0);for(let s=0;s<n;s+=1)r.forEach(i=>{i[s]&&e.push(i[s])});return e}function wft(t){let e=null,r=new Promise((n,s)=>{e=setTimeout(()=>s(new Error("timeout")),ARr)});return Promise.race([t,r]).finally(()=>{e&&clearTimeout(e)})}async function ZM(t,e,r,n,s,i,a,o=[],c=null){let u=Math.max(0,Number(n)||0),l=Math.max(1,Number(s)||1),d=await RE(t,e,r,1,{},c).catch(()=>null),f=Array.isArray(d?.list)?d.list:[],p=Number(d?.limit||0),m=Math.max(1,p||f.length||l),h=Math.floor(u/m)+1,A=u%m,g=[],b=h,y=!1,x=!1,v=Number(d?.pagecount||0),I=Number(d?.total||0),R=h+Math.max(3,Math.ceil((A+l)/m)+2);for(;g.length<l&&b<=R;){let M=b===1?d:await RE(t,e,r,b,{},c).catch(()=>null),D=Array.isArray(M?.list)?M.list:[],L=g2(D.map(ue=>t6(e,ue,i,a)),o),Z=Number(M?.pagecount||0);Z>0&&(v=Math.max(v,Z));let W=Number(M?.total||0);W>0&&(I=Math.max(I,W));let F=b===h?A:0,K=L.slice(F),j=l-g.length;g.push(...K.slice(0,j));let J=Math.min(K.length,j);y=F+J>=L.length;let se=L.length===0,oe=v>0&&b>=v&&y;if(se||oe){x=!0;break}if(g.length>=l)break;b+=1}let w=Number.isFinite(I)&&I>0&&I<9e3,N=g.length>=l;N&&x&&(N=!1),N&&v>0&&b>=v&&y&&(N=!1),N&&w&&u+g.length>=I&&(N=!1);let P=u+g.length+(N?1:0),B=P;return w&&(B=Math.max(I,u+g.length),N&&(B=Math.max(B,P))),{rows:g,totalRecordCount:B}}async function ole(t,e,r,n,s=[],i=0,a=16,o=null){let c=await zw(t,e,o).catch(()=>null),u=Array.isArray(c?.class)?c.class.filter(f=>String(f?.type_id||"").trim()):[];if(u.length){let f=String(u[0].type_id||"");if(f)return ZM(t,e,f,i,a,r,n,s,o)}let l=Array.isArray(c?.list)?c.list:[],d=g2(l.map(f=>t6(e,f,r,n)),s);return{rows:Ca(d,i,a),totalRecordCount:d.length}}function Oft(t={}){return String(t?.siteName||t?.spiderKey||"").trim()}function Pft(t={}){let e=String(t?.vod_tag||"").trim().toLowerCase(),r=t?.cate&&typeof t.cate=="object"?t.cate:null,n=String(r?.id||"").trim(),s=String(t?.vod_id||"").trim();return n||(e==="folder"&&s?s:"")}function CRr(t,e,r,n,s={}){let i=!!s?.includeSourcePrefix,a=Pft(e),o=String(e.vod_pic||"").trim(),c=String(e.vod_remarks||"").trim(),u=String(e.vod_year||"").trim(),l=Oft(t),d=String(e.vod_name||e?.cate?.name||a||"").trim(),f=d||"\u672A\u547D\u540D\u76EE\u5F55",p={k:t.spiderKey,t:t.spiderType,c:a,...t.apiBase?{a:t.apiBase}:{}};o&&(p.u=o),d&&(p.n=d),c&&(p.r=c),u&&(p.y=u);let m=wn("cat",p);return{Name:i&&l?`${l} \xB7 ${f}`:f,Id:m,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",Overview:c,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:m},BackdropImageTags:[],UserData:ss()}}function t6(t,e,r,n,s={}){if(Pft(e))return CRr(t,e,r,n,s);let i=!!s?.includeSourcePrefix,a=String(e.vod_pic||""),o=String(e.vod_remarks||"").trim(),c=String(e.vod_year||"").trim(),u=Oft(t),l=String(e.vod_name||"").trim(),d=l||"\u672A\u547D\u540D",f={k:t.spiderKey,t:t.spiderType,v:String(e.vod_id),...t.apiBase?{a:t.apiBase}:{}};a&&(f.u=a),l&&(f.n=l),o&&(f.r=o),c&&(f.y=c);let p=wn("vod",f),h=Rft?"Series":WE(e);return{Name:i&&u?`${u} \xB7 ${d}`:d,Id:p,ParentId:r,ServerId:n,IsFolder:h==="Series",Type:h,MediaType:"Video",Overview:String(e.vod_remarks||""),PrimaryImageAspectRatio:.6667,ImageTags:{Primary:p},BackdropImageTags:[],UserData:ss()}}async function TRr(t,e,r,n,s,i){let a=String(r?.vod_name||"").trim(),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;f<n.length;f+=1){let p=n[f],m={k:e.spiderKey,t:e.spiderType,v:String(r.vod_id),l:f,...e.apiBase?{a:e.apiBase}:{}};a&&(m.n=a),o&&(m.u=o),c&&(m.r=c),u&&(m.y=u);let h=wn("sea",m),A={Name:p.flag||`\u7EBF\u8DEF${f+1}`,Id:h,ParentId:s,ServerId:i,IsFolder:!0,Type:"Season",IndexNumber:f+1,SeriesId:s,SeriesName:a,ChildCount:p.episodes.length,ImageTags:{Primary:h},BackdropImageTags:[],UserData:ss()},b=`s${GM(r,p,f)}`,y=d.get(b);y===void 0&&(y=await zM(t,"season",{spiderRef:e,vod:r,line:p,lineIndex:f})||null,d.set(b,y)),y&&Object.assign(A,y),l.push(A)}return l}async function wRr(t,e,r,n,s,i,a,o){let c=s[i];if(!c)return[];let u=[],l=String(n?.vod_name||"").trim(),d=String(n?.vod_pic||"").trim(),f=String(n?.tmdbHintRemarks||n?.vod_remarks||"").trim(),p=String(n?.tmdbHintYear||n?.vod_year||"").trim(),m=Array.isArray(c?.episodes)?c.episodes:[],h=await VM(t,{spiderRef:r,vod:n,line:c,lineIndex:i,episodes:m,episodeOffset:0});for(let A=0;A<m.length;A+=1){let g=m[A],b=fA(g?.name,A+1),y={k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:i,e:A,f:c.flag,p:g.playId,...r.apiBase?{a:r.apiBase}:{}};l&&(y.n=l),d&&(y.u=d),f&&(y.r=f),p&&(y.y=p);let x=wn("ep",y),v=await ule(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:String(n.vod_id),l:i,e:A,f:c.flag,p:g.playId},String(c.flag||`\u7EBF\u8DEF${i+1}`));u.push({Name:g.name||`\u7B2C${A+1}\u96C6`,Id:x,ParentId:a,ServerId:o,IsFolder:!1,Type:"Episode",MediaType:"Video",SeriesName:String(n.vod_name||""),IndexNumber:b,ParentIndexNumber:i+1,CanPlay:!0,PrimaryImageAspectRatio:.6667,ImageTags:{Primary:x},BackdropImageTags:[],UserData:ss(),MediaSources:[v],...h[A]||{}})}return u}function qE(t={}){return{spiderKey:String(t.k||""),spiderType:Number(t.t||3),apiBase:String(t.a||"")}}function JM(t={}){return{Overview:"",Taglines:[],Genres:[],GenreItems:[],People:[],Tags:[],ProviderIds:{},ProductionLocations:[],CommunityRating:0,CriticRating:0,RunTimeTicks:0,OfficialRating:"",...t}}function e6(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function cle(t={},e=""){let r=go(t.vod_play_from,t.vod_play_url).filter(i=>Array.isArray(i?.episodes)&&i.episodes.length>0),n=r.reduce((i,a)=>Math.max(i,a.episodes.length),0),s=Rft?r.length>0:r.length>1||n>1||WE(t)==="Series";return{lines:r,isSeries:s}}function RRr(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function NRr(t,e,r="mkv"){return`${RRr(t)}/emby${kft(t,e,r,!0)}`}function kft(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function ule(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=yRr(r?.k)?"m3u8":"mkv",a=Ift(String(r?.p||""),i),o=NRr(e,s,a),c=kft(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(gRr&&xRr(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await am(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=um(m||{},String(n||""));h.url&&bRr(h.url)&&(a=Ift(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function ORr(t,e,r,n,s=[]){let i=String(n?.vod_id||"");return!r?.spiderKey||!i?[]:(await Promise.all(s.map(async(o,c)=>{let u=o?.episodes?.[0];return u?.playId?ule(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:i,l:c,e:0,f:String(o.flag||""),p:String(u.playId)},String(o.flag||`\u7EBF\u8DEF${c+1}`)):null}))).filter(Boolean)}function PRr(t={},e={}){let r=String(t?.vod_name||"").trim();if(r)return r;let n=String(e?.n||"").trim();if(n)return n;let s=go(t?.vod_play_from,t?.vod_play_url),i=String(s?.[0]?.episodes?.[0]?.name||"").trim();if(i)return i;let a=String(t?.vod_remarks||"").trim();return a||"\u672A\u547D\u540D"}async function XM(t,e,r=null){let n=qE(e);if(!n.spiderKey||!e.v)return null;let s=await Pc(t,n,String(e.v),r).catch(()=>null),i=kc(s);if(!i)return null;yA(i,e),!String(i?.vod_pic||"").trim()&&e?.u&&(i.vod_pic=String(e.u||"").trim()),i.vod_name=PRr(i,e);let{lines:a,isSeries:o}=cle(i,n.spiderKey);return e6(t,"vod.source",{spiderKey:n.spiderKey,spiderType:n.spiderType,vodId:String(i.vod_id||e.v||""),vodName:String(i.vod_name||""),vodRemarks:String(i.vod_remarks||""),guessVideoType:WE(i),isSeriesByRule:o,lineCount:a.length,episodeCountPerLine:a.map(c=>c.episodes.length).slice(0,10)}),{spiderRef:n,vod:i}}async function lle(t){t.get("/:userId",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext,r=$s();return{Name:e.user.name,ServerId:e.config.serverId,Id:e.user.id,LastActivityDate:r,LastLoginDate:r}}),t.get("/:userId/Views",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Jl(t);return Ft(r.map(n=>YM(n,e)))}),t.get("/:userId/Items/Resume",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=Number(Xr(r,["StartIndex","startindex"],0)),s=Pu(Xr(r,["Limit","limit"],50),50),i=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),a=Vdt(t,i,t.embyContext.config.serverId);return Ft(Ca(a,n,s),a.length)}),t.get("/:userId/Items/Latest",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Xr(r,["ParentId","parentid"],"")),a=Pu(Xr(r,["Limit","limit"],16),16),o=Cft(Xr(r,["IncludeItemTypes","includeitemtypes"],"")),c=String(Xr(r,["MediaTypes","mediatypes"],"")).toLowerCase();!o.length&&c.includes("video")&&(o=["movie","series","video"]);let u=await Jl(t),l=Fs(i);if(l?.type==="lib"){let h=qE(l.payload),A=aA(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await ole(t,A,i,n,o,0,a,e);return Us(t,s,g.rows)}if(l?.type==="cat"){let h=qE(l.payload),A=aA(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await ZM(t,A,String(l.payload.c||""),0,a,i,n,o,e);return Us(t,s,g.rows)}let d=Math.min(Math.max(a,6),20),p=(await Promise.allSettled(u.map(h=>wft(ole(t,h,YM(h,n).Id,n,o,0,d,e))))).filter(h=>h.status==="fulfilled").map(h=>h.value.rows),m=Tft(p).slice(0,a);return Us(t,s,m)}),t.get("/:userId/Items",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Xr(r,["SortBy","sortby"],""));if(i.includes("IsFavoriteOrLiked"))return Ft([]);let a=String(Xr(r,["ParentId","parentid"],"")),o=String(Xr(r,["SearchTerm","searchterm","NameStartsWith","namestartswith"],"")).trim(),c=Number(Xr(r,["StartIndex","startindex"],0)),u=Pu(Xr(r,["Limit","limit"],60),60),l=Number(Xr(r,["Page","page"],Math.floor(Math.max(0,c)/u)+1))||1,d=Cft(Xr(r,["IncludeItemTypes","includeitemtypes"],"")),f=String(Xr(r,["Recursive","recursive"],"")).trim().toLowerCase()==="true",p=String(Xr(r,["MediaTypes","mediatypes"],"")).toLowerCase(),m=await Jl(t);if(o){let g=t.embyContext?.config?.searchSourcePrefix!==!1,b=[];await Promise.allSettled(m.map(async x=>{try{let v=await Promise.race([mlt(t,x,o,l),new Promise((R,w)=>setTimeout(()=>w(new Error("timeout")),8e3))]);(Array.isArray(v?.list)?v.list:[]).forEach(R=>b.push(t6(x,R,"0",n,{includeSourcePrefix:g})))}catch{}}));let y=Us(t,s,g2(b,d));return Ft(Ca(y,c,u),y.length)}if(!a&&f&&(SRr(d)||p.includes("video"))){let A=d.length?d:["movie","series","video"],g=Math.min(Math.max(u,6),20),y=(await Promise.allSettled(m.map(v=>wft(ole(t,v,YM(v,n).Id,n,A,0,g,e))))).filter(v=>v.status==="fulfilled").map(v=>v.value.rows),x=Us(t,s,Tft(y));return Ft(Ca(x,c,u),x.length)}if(!a){let A=Us(t,s,m.map(g=>YM(g,n)));return Ft(Ca(A,c,u),A.length)}let h=Fs(a);if(!h)return Ft([]);if(h.type==="lib"){let A=qE(h.payload),g=aA(m,A.spiderKey,A.spiderType,A.apiBase)||{siteName:A.spiderKey,spiderKey:A.spiderKey,spiderType:A.spiderType,apiBase:A.apiBase},b=await zw(t,g,e).catch(()=>null),y=Array.isArray(b?.class)?b.class.filter(R=>String(R?.type_id||"").trim()):[];if(y.length&&(vRr(d,f,i)||!_Rr(d,f))){let R=y.map(N=>ERr(g,N,a,n)),w=Us(t,s,g2(R,d));return Ft(Ca(w,c,u),w.length)}if(y.length){let R=String(y[0].type_id||"");if(R){let w=await ZM(t,g,R,c,u,a,n,d,e);return Us(t,s,w.rows),Ft(w.rows,w.totalRecordCount)}}let v=(Array.isArray(b?.list)?b.list:[]).map(R=>t6(g,R,a,n)),I=Us(t,s,g2(v,d));return Ft(Ca(I,c,u),I.length)}if(h.type==="cat"){let A=qE(h.payload),g=aA(m,A.spiderKey,A.spiderType,A.apiBase)||{siteName:A.spiderKey,spiderKey:A.spiderKey,spiderType:A.spiderType,apiBase:A.apiBase},b=String(h.payload.c||""),y=await ZM(t,g,b,c,u,a,n,d,e);return Us(t,s,y.rows),Ft(y.rows,y.totalRecordCount)}if(h.type==="vod"){let A=await XM(t,h.payload,e);if(!A)return Ft([]);let{spiderRef:g,vod:b}=A,{lines:y,isSeries:x}=cle(b,g.spiderKey);if(!y.length)return Ft([]);if(x){let v=await TRr(t,g,b,y,a,n);return Us(t,s,v),Ft(Ca(v,c,u),v.length)}return Ft([])}if(h.type==="sea"){let A=await XM(t,h.payload,e);if(!A)return Ft([]);let{spiderRef:g,vod:b}=A,y=go(b.vod_play_from,b.vod_play_url);if(!y.length)return Ft([]);let x=Number(h.payload.l||0),v=await wRr(t,e,g,b,y,x,a,n);return Us(t,s,v),Ft(Ca(v,c,u),v.length)}return Ft([])}),t.get("/:userId/Items/:itemId",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=Fs(e.params.itemId);if(!n)return r.code(404),{};let s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);if(n.type==="ep"){let i=await XM(t,n.payload,e),a=String(i?.vod?.vod_name||"\u64AD\u653E"),o=Number(n?.payload?.l||0),c=Number(n?.payload?.e||0),u=go(i?.vod?.vod_play_from,i?.vod?.vod_play_url),l=u?.[o]?.episodes?.[c]?.name||"",d=u?.[o]||null,f=d?.episodes?.[c]||null,p=fA(l,c+1),m=wn("vod",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),h=wn("sea",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),l:o,...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),A=n.payload?.k&&n.payload?.v&&n.payload?.f&&n.payload?.p?[await ule(t,e,{k:String(n.payload.k||""),t:Number(n.payload.t||3),v:String(n.payload.v||""),l:Number(n.payload.l||0),e:Number(n.payload.e||0),f:String(n.payload.f||""),p:String(n.payload.p||""),...n.payload.a?{a:String(n.payload.a||"")}:{}},String(n.payload.f||"\u9ED8\u8BA4"))]:[];return e6(t,"item.detail.ep",{itemId:e.params.itemId,sourceType:n.type,vodName:String(i?.vod?.vod_name||""),mediaSourceCount:A.length,canPlay:!0}),h2(t,s,{Name:a,Id:e.params.itemId,Type:"Episode",IsFolder:!1,MediaType:"Video",CanPlay:!0,SeriesId:m,SeriesName:a,SeasonId:h,SeasonName:String(n?.payload?.f||`\u7EBF\u8DEF${o+1}`),IndexNumber:p,ParentIndexNumber:o+1,DateCreated:$s(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Uo(t,s,e.params.itemId),...JM(),...f?await m2(t,{spiderRef:qE(n.payload),vod:i?.vod||{},line:d,lineIndex:o,episode:f,episodeIndex:c})||{}:{},MediaSources:A})}if(n.type==="sea"){let i=Number(n?.payload?.l||0);return h2(t,s,{Name:`\u7EBF\u8DEF${i+1}`,Id:e.params.itemId,Type:"Season",IsFolder:!0,IndexNumber:i+1,DateCreated:$s(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Uo(t,s,e.params.itemId),...JM()})}if(n.type==="cat"){let i=String(n.payload?.n||n.payload?.c||n.payload?.k||"\u76EE\u5F55");return h2(t,s,{Name:i,Id:e.params.itemId,Type:"Folder",IsFolder:!0,ServerId:t.embyContext.config.serverId,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Uo(t,s,e.params.itemId),...JM({Overview:String(n.payload?.r||"")})})}if(n.type==="vod"){let i=gft(t,n.payload).catch(()=>null),a=await XM(t,n.payload,e);if(!a)return r.code(404),{};let{lines:o,isSeries:c}=cle(a.vod,a.spiderRef.spiderKey),u=c?"Series":"Movie",[l,d]=await Promise.all([ORr(t,e,a.spiderRef,a.vod,o),i]),f=d&&typeof d=="object"?{...d}:{},p={Primary:e.params.itemId,...f.ImageTags&&typeof f.ImageTags=="object"?f.ImageTags:{}};delete f.ImageTags;let m=c?[]:l,h=c?l.length>0:m.length>0;return e6(t,"item.detail.vod",{itemId:e.params.itemId,spiderKey:a.spiderRef.spiderKey,spiderType:a.spiderRef.spiderType,vodId:String(a.vod.vod_id||""),vodName:String(a.vod.vod_name||""),type:u,isFolder:c,canPlay:h,lineCount:o.length,mediaSourceCount:m.length,firstMediaSource:m[0]?{name:m[0].Name,path:m[0].Path,id:m[0].Id}:null}),h2(t,s,{Name:String(a.vod.vod_name||""),Id:e.params.itemId,IsFolder:c,Type:u,MediaType:"Video",CollectionType:c?"tvshows":void 0,CanPlay:h,DateCreated:$s(),PrimaryImageAspectRatio:.6667,ProductionYear:Number(a.vod.vod_year||0)||void 0,ImageTags:p,BackdropImageTags:[],UserData:Uo(t,s,e.params.itemId),ChildCount:c?o.length>1?o.length:o[0]?.episodes?.length||0:void 0,SeasonCount:c?o.length:void 0,RecursiveItemCount:c?o.reduce((A,g)=>A+(g?.episodes?.length||0),0):void 0,...JM({Overview:String(a.vod.vod_content||"")}),...f,MediaSources:m})}return h2(t,s,{Name:String(n.payload?.k||""),Id:e.params.itemId,IsFolder:!0,Type:"Folder",ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Uo(t,s,e.params.itemId)})}),t.get("/:userId/Items/:itemId/LocalTrailers",{preHandler:t.embyRequireAuth},async()=>[]),t.get("/:userId/Items/:itemId/SpecialFeatures",{preHandler:t.embyRequireAuth},async()=>[]),t.all("/:userId/Items/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=new URLSearchParams,s=e.query||{};Object.keys(s).forEach(d=>{let f=s[d];f!=null&&n.set(d,String(f))});let i=n.toString(),a=`/emby/Items/${encodeURIComponent(String(e.params.itemId||""))}/PlaybackInfo${i?`?${i}`:""}`;e6(t,"playback.alias",{from:e.raw.url,to:a,method:e.method});let o={};e.embyToken&&(o["x-emby-token"]=e.embyToken);let c=e.method==="POST"?e.body||{}:void 0,u=await t.inject({method:e.method,url:a,headers:o,payload:c});r.code(u.statusCode);let l=u.headers?.["content-type"];if(l&&r.header("content-type",l),!u.body)return"";if(String(l||"").includes("application/json"))try{return JSON.parse(u.body)}catch{return u.body}return u.body}),t.post("/:userId/Items/:itemId/HideFromResume",{preHandler:t.embyRequireAuth},async e=>{let r=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return Kdt(t,r,String(e.params.itemId||""))}),t.all("/:userId/FavoriteItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return Gdt(t,n,String(e.params.itemId||""),e.method==="POST")}),t.all("/:userId/PlayedItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return Qdt(t,n,String(e.params.itemId||""),e.method==="POST")})}var kRr=30*60*1e3,jE=16/9,A2=960,DRr=1920,BRr=360,LRr=9,Fft=24,MRr=12e3,ple=9e3,Dft=5*1024*1024,Bft=80,Lft=24,Mft=[["#556b2f","#bed98a"],["#5b3a82","#b37bd9"],["#235f73","#8fd2dc"],["#7a3341","#d98498"],["#2f5c43","#9ac78d"],["#6f4a2f","#d39a5d"],["#354f7d","#91aee6"],["#73395f","#cb87af"]],dle=null;function fle(t=""){return String(t||"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function Uft(t,e,r){return Math.max(e,Math.min(r,t))}function WRr(t=""){let e=2166136261,r=String(t||"");for(let n=0;n<r.length;n+=1)e^=r.charCodeAt(n),e=Math.imul(e,16777619);return e>>>0}function qft(t){return Uft(Math.round(Number(t)||0),0,255)}function Wft(t=[]){return`#${t.slice(0,3).map(e=>qft(e).toString(16).padStart(2,"0")).join("")}`}function $ft(t=[],e=[],r=.5){return[0,1,2].map(n=>qft((t[n]||0)*(1-r)+(e[n]||0)*r))}function $Rr(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}function mle(t,e,r=null){let n=null,s=new Promise(i=>{n=setTimeout(()=>i(r),e)});return Promise.race([t,s]).finally(()=>{n&&clearTimeout(n)})}function y2(t=[]){let e=new Set,r=[];for(let n of t){let s=String(n||"").trim();!s||e.has(s)||(e.add(s),r.push(s))}return r}function jft(t=""){let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return["http:","https:"].includes(r.protocol)?r.toString():""}catch{return""}}function FRr(t="",e="\u5A92\u4F53\u5E93"){return String(t||"").trim().replace(/^(?:「[^」]*」\s*)+/,"").trim()||e}function hle(t=[]){return y2((Array.isArray(t)?t:[]).map(e=>jft(e?.vod_pic)).filter(Boolean))}async function URr(t,e={}){let r=$Rr(e);if(!r.spiderKey)return null;let n=await Jl(t).catch(()=>[]);return aA(n,r.spiderKey,r.spiderType,r.apiBase)||{siteName:String(e.n||r.spiderKey),spiderKey:r.spiderKey,spiderType:r.spiderType,apiBase:r.apiBase}}async function qRr(t,e,r){let n=await mle(zw(t,e,r).catch(()=>null),ple,null),s=hle(n?.list||[]);if(s.length>=Fft)return s;let i=Array.isArray(n?.class)?n.class.filter(c=>String(c?.type_id||"").trim()):[];if(!i.length)return s;let a=i.slice(0,5).map(c=>mle(RE(t,e,String(c.type_id||""),1,{},r).then(u=>hle(u?.list||[])).catch(()=>[]),ple,[]));return(await Promise.allSettled(a)).forEach(c=>{c.status==="fulfilled"&&s.push(...c.value)}),y2(s)}async function jRr(t,e,r={},n){let s=[],i=jft(r.u);i&&s.push(i);let a=String(r.c||"").trim();if(!a)return y2(s);let o=await mle(RE(t,e,a,1,{},n).catch(()=>null),ple,null);return s.push(...hle(o?.list||[])),y2(s)}async function HRr(t,e,r){let n=await URr(t,e?.payload||{});if(!n)return{spider:null,posterUrls:[]};let s=[];return e?.type==="lib"?s=await qRr(t,n,r):e?.type==="cat"&&(s=await jRr(t,n,e.payload||{},r)),{spider:n,posterUrls:s}}function QRr(t,e=0){let r=t?.payload||{},n=FRr(r.n||r.name||r.k,"\u5A92\u4F53\u5E93"),s=t?.type==="cat"?"FOLDER":"LIBRARY";return{title:n,subtitle:s,countText:e>0?`${e} IMAGES`:"MYCATPAW"}}function GRr(t={}){let e=Number(t.Width||t.width||t.MaxWidth||t.maxWidth||0),r=Number(t.Height||t.height||t.MaxHeight||t.maxHeight||0),n=A2,s=Math.round(A2/jE);if(e>0&&r>0){let i=Math.min(e/A2,r/(A2/jE));n=Math.round(A2*i),s=Math.round(n/jE)}else e>0?(n=Math.round(e),s=Math.round(n/jE)):r>0&&(s=Math.round(r),n=Math.round(s*jE));return n=Uft(n,BRr,DRr),s=Math.round(n/jE),{width:n,height:s}}async function KRr(){return dle||(dle=import("sharp").then(t=>t.default||t).catch(()=>null)),dle}function r6(t=""){return Mft[WRr(t)%Mft.length]}function VRr(t,e=3){let r=Math.max(3,Number(e)||3),n=Math.floor(t.length/r);if(!n)return!0;let s=0,i=0,a=0,o=0,c=0,u=0,l=0,d=0,f=0,p=new Set;for(let v=0;v<t.length;v+=r){let I=t[v]||0,R=t[v+1]||0,w=t[v+2]||0,N=I*.299+R*.587+w*.114,P=Math.max(I,R,w),B=Math.min(I,R,w);s+=I,i+=R,a+=w,o+=I*I,c+=R*R,u+=w*w,l+=N,d+=N*N,f+=P-B,p.add(`${I>>4}:${R>>4}:${w>>4}`)}let m=s/n,h=i/n,A=a/n,g=l/n,b=Math.sqrt(Math.max(0,d/n-g*g)),y=(Math.sqrt(Math.max(0,o/n-m*m))+Math.sqrt(Math.max(0,c/n-h*h))+Math.sqrt(Math.max(0,u/n-A*A)))/3,x=f/n;return b<8&&y<8||(g>242||g<16)&&b<12&&y<12||x<7&&b<10||p.size<=3||p.size<=6&&b<20&&x<12}async function zRr(t,e){try{let r=await t(e).metadata();if(!r?.width||!r?.height||r.width<Bft||r.height<Bft)return!1;let{data:n,info:s}=await t(e).resize(Lft,Lft,{fit:"cover"}).removeAlpha().raw().toBuffer({resolveWithObject:!0});return!VRr(n,s?.channels||3)}catch{return!1}}async function YRr(t,e){try{return await t(e).rotate().resize({width:420,height:620,fit:"cover",withoutEnlargement:!0}).flatten({background:"#f2f4f7"}).jpeg({quality:82,mozjpeg:!0}).toBuffer()}catch{return null}}async function JRr(t,e=null){try{let r=new URL(t),n=await Ae.get(r.toString(),{responseType:"arraybuffer",timeout:MRr,maxContentLength:Dft,headers:{Accept:"image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8",Referer:`${r.protocol}//${r.host}/`,"User-Agent":"Mozilla/5.0 EmbyDynamicCover/1.0"},validateStatus:o=>o>=200&&o<300}),s=String(n.headers?.["content-type"]||"").split(";")[0].trim().toLowerCase(),i=s&&s.startsWith("image/")?s:"image/jpeg",a=Buffer.from(n.data||[]);if(!a.length||a.length>Dft)return null;if(e){if(!await zRr(e,a))return null;let o=await YRr(e,a);return o?.length?{dataUri:`data:image/jpeg;base64,${o.toString("base64")}`,buffer:o}:null}return{dataUri:`data:${i};base64,${a.toString("base64")}`,buffer:a}}catch{return null}}async function XRr(t=[],e=null){let n=y2(t).slice(0,Fft).map(a=>JRr(a,e));return(await Promise.allSettled(n)).filter(a=>a.status==="fulfilled"&&a.value?.dataUri).map(a=>a.value).slice(0,LRr)}async function ZRr(t,e=[],r=""){let n=e.find(s=>s?.buffer);if(!n)return r6(r);try{let i=((await t(n.buffer).resize(24,24,{fit:"cover"}).stats()).channels||[]).slice(0,3).map(c=>c.mean||0),a=$ft(i,[0,0,0],.38),o=$ft(i,[255,255,255],.48);return[Wft(a),Wft(o)]}catch{return r6(r)}}function eNr(t=""){let e=String(t||"\u5A92\u4F53\u5E93").trim()||"\u5A92\u4F53\u5E93";if(e.length<=8)return[e];if(/[\u4e00-\u9fff]/.test(e)){let i=e.slice(0,8),a=e.slice(8,16);return a?[i,a]:[i]}let r=e.split(/\s+/).filter(Boolean);if(r.length<=1)return[e.slice(0,16)];let n=[],s="";return r.forEach(i=>{let a=s?`${s} ${i}`:i;if(a.length>12&&s){n.push(s),s=i;return}s=a}),s&&n.push(s),n.slice(0,2)}function Hft(t=[],e,r){let n=e*.16,s=n*1.48,i=e*.025,a=e*.52,o=-r*.16,c=3;return[2,0,1,3,4,5,8,6,7].map((l,d)=>{let f=Math.floor(d/c),p=d%c,m=a+f*(n+i),h=o+p*(s+i),A=`posterClip${d}`,g=t[l%t.length];return{x:m,y:h,w:n,h:s,r:e*.015,clipId:A,href:g?.dataUri||""}})}function tNr(t,e,r=""){let n=Hft([{dataUri:""}],t,e),s=r6(r);return n.map((i,a)=>{let o=.18+a%3*.08;return` +`),messageToDart({action:"toast",opt:{message:"\u6CA1\u6709\u627E\u5230\u5F39\u5E55\u5466~",duration:2}}),String(p.query?.format||"").toLowerCase()==="json"?m.code(500).send({success:!1,error:"Failed to fetch danmu content",comments:[],count:0,match:null}):m.code(500).send({error:"Failed to fetch danmu content"})}}),t.addHook("onSend",(p,m,h,A)=>{if(m.sent||m.raw?.headersSent||!p.url.endsWith("/detail")&&!p.url.endsWith("/play"))return A(null,h);let g=typeof h=="string"?h:Buffer.isBuffer(h)?h.toString():null;if(!g)return A(null,h);SM(p.server).then(b=>{if(!b?.autoPush)return A(null,h);try{if(p.url.endsWith("/detail")){let y=JSON.parse(g),x=Array.isArray(y?.list)?y.list[0]:null;if(!x||typeof x!="object")return A(null,h);let v=String(x.vod_play_from||""),C=String(x.vod_play_url||"");if(!v||!C)return A(null,h);let R=String(x.vod_name||"").trim(),N=String(sA(R)||"").trim()||R;tue={};let P=v.split("$$$").filter(Boolean);return C.split("$$$").filter(Boolean).forEach((L,M)=>{L.split("#").forEach(k=>{let[B,Z]=k.split("$");if(!Z)return;let W=P[M]||`\u7EBF\u8DEF${M+1}`;tue[`${W}_${Z}`]={name:N,originalName:R,episodeNumber:Yw(B)}})}),A(null,h)}if(p.url.endsWith("/play")){let y=JSON.parse(g);if((y.url||y.url?.length||y.urls?.length)&&!y?.extra?.danmaku){let x=p.body||{},v=`${x.flag||""}_${x.id||""}`,C=tue[v];if(C){y.extra||(y.extra={});let R=new URL(`http://127.0.0.1:${p.server.address().port}/danmu-proxy`);return R.searchParams.set("name",C.name),R.searchParams.set("episodeNumber",C.episodeNumber),C.originalName&&R.searchParams.set("originalName",C.originalName),y.extra.danmaku=R.toString(),A(null,JSON.stringify(y))}}}}catch(y){console.error(y)}return A(null,h)}).catch(b=>(console.error(b),A(null,h)))})}var u6=Re(ldt(),1);var fdt=Re(v0(),1),a2=Re(Jn(),1);var FM="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",BE={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},ddt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},owr=async t=>{let e=a2.default.enc.Hex.stringify(a2.default.MD5(t.config.quark.cookie)).toString();return(await t.db.getObjectDefault("/quark",{}))[e]??""},cwr=async(t,e)=>{let r=a2.default.enc.Hex.stringify(a2.default.MD5(t.config.quark.cookie)).toString();await t.db.push(`/quark/${r}`,e)};async function vue(t){t.get("/qrcode",async(r,n)=>{try{let s=await Ae.get("https://uop.quark.cn/cas/ajax/getTokenForQrcodeLogin?client_id=532&v=1.2",{headers:{"User-Agent":FM}}),i=s.data.data.members.token,a=hl(s.headers["set-cookie"]),o=ddt.encode({token:i,cookies:a}),c="https://su.quark.cn/4_eMHBJ?token="+i+"&client_id=532&ssb=weblogin&uc_param_str=&uc_biz_str=S%3Acustom%7COPT%3ASAREA%400%7COPT%3AIMMERSIVE%401%7COPT%3ABACK_BTN_STYLE%400",u=await fdt.default.toBuffer(c,{width:300,height:300});n.header("X-Session-Key",o),n.send(u)}catch(s){console.error("\u5938\u514B\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",s),n.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=ddt.decode(s);if(!i)return n.send({code:0,data:{status:BE.EXPIRED}});let{token:a,cookies:o}=i;try{let c=await Ae.get(`https://uop.quark.cn/cas/ajax/getServiceTicketByQrcodeToken?client_id=532&v=1.2&token=${a}`,{headers:{"User-Agent":FM}});if(c.data.status===2e6){let u=await e(c.data.data.members.service_ticket,o);n.send({code:0,data:{status:BE.CONFIRMED,cookie:u}})}else c.data.status===50004002?n.send({code:0,data:{status:BE.EXPIRED}}):c.data.status===50004001?n.send({code:0,data:{status:BE.NEW}}):n.send({code:0,data:{status:BE.NEW}})}catch(c){console.error("\u5938\u514B\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",c),n.send({code:0,data:{status:BE.NEW}})}});async function e(r,n){let s=[...n],i=await Ae.get(`https://pan.quark.cn/account/info?st=${r}&fr=pc&platform=pc`,{headers:{"User-Agent":FM,Cookie:s.join("")}});i.headers["set-cookie"]&&(s=s.concat(hl(i.headers["set-cookie"])));let a=await Ae.get("https://drive-pc.quark.cn/1/clouddrive/share/sharepage/dir?pr=ucpro&fr=pc&uc_param_str=&aver=1",{headers:{"User-Agent":FM,Cookie:s.join("")}});return a.headers["set-cookie"]&&(s=s.concat(hl(a.headers["set-cookie"]))),s.join("")}t.post("/cookie",(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await owr(r.server)})}),t.put("/cookie",async(r,n)=>{await cwr(r.server,r.body.cookie),n.send({code:0})})}var o2=Re(Jn(),1);var uA={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},pdt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},uwr=async t=>{let e=o2.default.enc.Hex.stringify(o2.default.MD5(t.config.uc.token)).toString();return(await t.db.getObjectDefault("/uc",{}))[e]??""},lwr=async(t,e)=>{let r=o2.default.enc.Hex.stringify(o2.default.MD5(t.config.uc.token)).toString();await t.db.push(`/uc/${r}`,e)};async function Cue(t){t.get("/qrcode",async(e,r)=>{try{let n="/oauth/authorize",s=Math.floor(Date.now()/1e3).toString()+"000",i=bc.DeviceID,a=Kv(i,s),o=jk("GET",n,s,Cs.signKey),c={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":s,"x-pan-token":o,"x-pan-client-id":Cs.clientID,...bc.AccessToken?{Authorization:`Bearer ${bc.AccessToken}`}:{}},u=await Ae.get(`${Cs.api}${n}`,{params:{req_id:a,access_token:bc.AccessToken,app_ver:Cs.appVer,device_id:i,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Cs.channel,auth_type:"code",client_id:Cs.clientID,scope:"netdisk",qrcode:"1",qr_width:"460",qr_height:"460"},headers:c}),l=pdt.encode({query_token:u.data.query_token,req_id:a});r.header("X-Session-Key",l),r.send(Buffer.from(u.data.qr_data,"base64"))}catch(n){console.error("UC-TV\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let{sessionKey:n}=e.body,s=pdt.decode(n);if(!s)return r.send({code:0,data:{status:uA.EXPIRED}});let{query_token:i}=s;try{let a="/oauth/code",o=Math.floor(Date.now()/1e3).toString()+"000",c=bc.DeviceID,u=Kv(c,o),l=jk("GET",a,o,Cs.signKey),d={Accept:"application/json, text/plain, */*","User-Agent":"Mozilla/5.0 (Linux; U; Android 13; zh-cn; M2004J7AC Build/UKQ1.231108.001) AppleWebKit/533.1 (KHTML, like Gecko) Mobile Safari/533.1","x-pan-tm":o,"x-pan-token":l,"x-pan-client-id":Cs.clientID,...bc.AccessToken?{Authorization:`Bearer ${bc.AccessToken}`}:{}},f=await Ae.get(`${Cs.api}${a}`,{params:{req_id:u,access_token:bc.AccessToken,app_ver:Cs.appVer,device_id:c,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Cs.channel,client_id:Cs.clientID,scope:"netdisk",query_token:i},headers:d,validateStatus:p=>p<500});if(f.data.status===0){let p="/token",m=Math.floor(Date.now()/1e3).toString()+"000",h=Kv(bc.DeviceID,m),A=JSON.stringify({req_id:h,app_ver:Cs.appVer,device_id:bc.DeviceID,device_brand:"Xiaomi",platform:"tv",device_name:"M2004J7AC",device_model:"M2004J7AC",build_device:"M2004J7AC",build_product:"M2004J7AC",device_gpu:"Adreno (TM) 550",activity_rect:"{}",channel:Cs.channel,code:f.data.code}),g=await Ae.post(`${Cs.codeApi}${p}`,A,{headers:{"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36",Accept:"application/json, text/plain, */*","Content-Type":"application/json"}});g.data.code===200?r.send({code:0,data:{status:uA.CONFIRMED,cookie:g.data.data.access_token}}):r.send({code:0,data:{status:uA.NEW}})}else f.data.errno===11003?r.send({code:0,data:{status:uA.NEW}}):f.data.status===-1||f.data.errno===11001?r.send({code:0,data:{status:uA.EXPIRED}}):r.send({code:0,data:{status:uA.NEW}})}catch(a){console.error("UC-TV\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",a),r.send({code:0,data:{status:uA.NEW}})}}),t.post("/token",async(e,r)=>{r.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/token",async(e,r)=>{r.send({code:0,data:await uwr(e.server)})}),t.put("/token",async(e,r)=>{await lwr(e.server,e.body.cookie),r.send({code:0})})}var mdt=async(t,e)=>(await t.db.getObjectDefault("/tyi",{}))?.[e]||"",hdt=async(t,e,r)=>{await t.db.push(`/tyi/${e}`,r)};async function Iue(t){t.get("/account",async(e,r)=>{let n=await mdt(e.server,"cloud_account"),s=await mdt(e.server,"cloud_password");r.send({code:0,data:{username:n,password:s}})}),t.put("/account",async(e,r)=>{await hdt(e.server,"cloud_account",e.body.username),await hdt(e.server,"cloud_password",e.body.password),r.send({code:0})})}var dwr=["https://www.leijing1.com"],fwr=async t=>(await t.db.getObjectDefault("/leijing",{}))?.urls||t.config.leijing?.urls||dwr,pwr=async(t,e)=>{await t.db.push("/leijing/urls",e)},mwr=async t=>{await t.db.delete("/leijing/urls")};async function Tue(t){t.get("/urls",async(e,r)=>{r.send({code:0,data:await fwr(e.server)})}),t.put("/urls",async(e,r)=>{await pwr(e.server,e.body),r.send({code:0})}),t.delete("/urls",async(e,r)=>{await mwr(e.server),r.send({code:0})})}var wue=async(t,e)=>{let r=await t.db.getObjectDefault("/pan123",{});return Object.prototype.hasOwnProperty.call(r||{},e)?r[e]:""},Rue=async(t,e,r)=>{await t.db.push(`/pan123/${e}`,r)};function hwr(t,e=!1){if(typeof t=="boolean")return t;if(typeof t=="string"){let r=t.trim().toLowerCase();if(["1","true","yes","on"].includes(r))return!0;if(["0","false","no","off"].includes(r))return!1}return e}async function Nue(t){t.get("/account",async(e,r)=>{let n=await wue(e.server,"pan_passport"),s=await wue(e.server,"pan_password"),i=await wue(e.server,"use_direct_download");r.send({code:0,data:{username:n,password:s,useDirectDownload:hwr(i,!0)}})}),t.put("/account",async(e,r)=>{await Rue(e.server,"pan_passport",e.body.username),await Rue(e.server,"pan_password",e.body.password),await Rue(e.server,"use_direct_download",e.body.useDirectDownload===!0),r.send({code:0})})}var lA=async(t,e)=>(await t.db.getObjectDefault("/xun",{}))?.[e]||"",ed=async(t,e,r)=>{await t.db.push(`/xun/${e}`,r)},Oue=(t="")=>String(t||"").trim();async function Pue(t){t.get("/account",async(e,r)=>{let n=await lA(e.server,"xun_username"),s=await lA(e.server,"xun_password"),i=!!await lA(e.server,"xun_auth");r.send({code:0,data:{username:n,password:s,hasAuth:i}})}),t.put("/account",async(e,r)=>{await ed(e.server,"xun_username",e.body.username||""),await ed(e.server,"xun_password",e.body.password||""),await ed(e.server,"xun_auth",""),await ed(e.server,"xun_refresh_token",""),await ed(e.server,"xun_user_id",""),r.send({code:0})}),t.get("/auth-status",async(e,r)=>{let n=!!await lA(e.server,"xun_auth");r.send({code:0,data:{hasAuth:n}})}),t.post("/login",async(e,r)=>{try{let n=Oue(e.body?.username),s=Oue(e.body?.password);if(!n){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u8D26\u53F7"});return}if(!s){r.send({code:1,message:"\u8BF7\u8F93\u5165\u8FC5\u96F7\u5BC6\u7801"});return}await ed(e.server,"xun_username",n),await ed(e.server,"xun_password",s),await ed(e.server,"xun_auth",""),await ed(e.server,"xun_refresh_token",""),await ed(e.server,"xun_user_id",""),await ab(e),await zh.getDownload_auth();let i=!!await lA(e.server,"xun_auth");r.send({code:i?0:1,message:i?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u8D26\u53F7\u5BC6\u7801",data:{hasAuth:i}})}catch(n){console.warn("[xunlei] password login failed",{hasUsername:!!Oue(e.body?.username),message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u8FC5\u96F7\u8D26\u53F7\u5BC6\u7801\u767B\u5F55\u5931\u8D25"})}}),t.post("/send-code",async(e,r)=>{if(await ab(e),!await lA(e.server,"xun_username")){r.send({code:1,message:"\u8BF7\u5148\u4FDD\u5B58\u8FC5\u96F7\u8D26\u53F7"});return}await zh.getVerifyCode(),r.send({code:0,data:{sent:!0}})}),t.post("/verify-code",async(e,r)=>{await ab(e);let n=String(e.body?.code||"").trim();if(!n){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}await zh.getVerify(n);let s=!!await lA(e.server,"xun_auth");r.send({code:s?0:1,message:s?"\u767B\u5F55\u6210\u529F":"\u767B\u5F55\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u9A8C\u8BC1\u7801",data:{hasAuth:s}})})}var ydt=Re(v0(),1),Due=Re(Jn(),1),xdt=Re(nC(),1),bdt="Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.81 Safari/537.36 SE 2.X MetaSr 1.0",va={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},gdt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},Adt=null;function Edt(t){return Due.default.enc.Hex.stringify(Due.default.MD5(t.config.ali.token)).toString()}var gwr=async t=>{let e=await t.db.getObjectDefault("/ali",{});return String(e.token||e[Edt(t)]||"").trim()},Awr=async(t,e)=>{let r=String(e||"").trim();await t.db.push("/ali/token",r),await t.db.push(`/ali/${Edt(t)}`,r)};function ywr(t){return{t:t.t,appName:"aliyun_drive",ck:t.ck,appEntrance:"web",isMobile:"false",lang:"zh_CN",returnUrl:"",navlanguage:"zh-CN",navPlatform:"MacIntel",fromSite:"52",bizParams:""}}function xwr(t){let e=String(t||"").toUpperCase();return e===va.CONFIRMED?va.CONFIRMED:e===va.SCANNED||e==="SCANED"?va.SCANNED:e===va.CANCELED||e==="CANCELLED"?va.CANCELED:e===va.NEW?va.NEW:va.EXPIRED}async function bwr(){return(await Ae.get("https://passport.aliyundrive.com/newlogin/qrcode/generate.do?appName=aliyun_drive&fromSite=52&appName=aliyun_drive&appEntrance=web&isMobile=false&lang=zh_CN&returnUrl=&bizParams=&_bx-v=2.2.3",{headers:{"User-Agent":bdt}})).data?.content?.data}async function Ewr(t){return(await Ae.post("https://passport.aliyundrive.com/newlogin/qrcode/query.do?appName=aliyun_drive&fromSite=52&_bx-v=2.2.3",xdt.default.stringify(ywr(t)),{headers:{"content-type":"application/x-www-form-urlencoded","User-Agent":bdt,referer:"https://www.aliyundrive.com/"}})).data?.content?.data||null}function _wr(t){let e=t?.bizExt;if(!e)return"";let r=Buffer.from(e,"base64").toString("utf8");try{return JSON.parse(r)?.pds_login_result?.refreshToken||""}catch{return JSON.parse(decodeURI(r))?.pds_login_result?.refreshToken||""}}async function Swr(t){let e=await Ewr(t);if(!e)return{status:va.EXPIRED};let r=xwr(e.qrCodeStatus);if(r!==va.CONFIRMED)return{status:r};let n=_wr(e);return n?{status:va.CONFIRMED,cookie:n}:{status:va.EXPIRED}}async function kue(t){t.get("/qrcode",async(e,r)=>{try{let n=await bwr();if(!n?.ck||!n?.t||!n?.codeContent)throw new Error("\u4E8C\u7EF4\u7801\u5185\u5BB9\u7F3A\u5931");Adt={ck:n.ck,t:n.t};let s=gdt.encode(Adt),i=await ydt.default.toBuffer(n.codeContent,{width:300,height:300});r.header("X-Session-Key",s),r.send(i)}catch(n){console.error("\u963F\u91CC\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=gdt.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:va.EXPIRED}});try{let s=await Swr(n);r.send({code:0,data:s})}catch(s){console.error("\u963F\u91CC\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:va.EXPIRED}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await gwr(e.server)})}),t.put("/token",async(e,r)=>{let n=e.body?.cookie??e.body?.data?.token??"";await Awr(e.server,n),r.send({code:0})})}var D0n=Re(v0(),1),L0n=Re(Jn(),1);var ME="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",dA={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},_dt={encode(t,e=3e5){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},vwr=async t=>(await t.db.getObjectDefault("/baidu",{}))["baidu_cookie"]??"",Lue=async(t,e)=>{await t.db.push("/baidu/baidu_cookie",e)};function Cwr(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){let e=Math.random()*16|0;return(t==="x"?e:e&3|8).toString(16)})}async function Bue(t){t.get("/qrcode",async(r,n)=>{try{let s=Cwr(),i=new Date().getTime().toString(),a=Math.floor(new Date().getTime()/1e3).toString(),o=`tangram_guid_${i}`,u=(await he.get("https://passport.baidu.com/v2/api/getqrcode",{params:{lp:"pc",qrloginfrom:"pc",gid:s,callback:o,apiver:"v3",tt:a,tpl:"netdisk",_:i},headers:{"User-Agent":ME,Referer:"https://pan.baidu.com","sec-ch-ua-platform":'"Windows"',DNT:"1"}})).data;if(typeof u=="string"){u=u.replace(/^[^(]*\(/,"").replace(/\);?$/,"");let l=JSON.parse(u);if(l.errno===0){let d=_dt.encode({sign:l.sign,channel_id:l.channel_id}),f="https://"+l.imgurl,p=await he.get(f,{responseType:"arraybuffer",headers:{"User-Agent":ME}});n.header("X-Session-Key",d),n.send(p.data)}else throw new Error(`\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25: ${l.errmsg||"\u672A\u77E5\u9519\u8BEF"}`)}else throw new Error("\u54CD\u5E94\u683C\u5F0F\u9519\u8BEF")}catch(s){console.error("\u767E\u5EA6\u4E8C\u7EF4\u7801\u83B7\u53D6\u5931\u8D25:",s),n.status(500).send({code:-1,message:s?.message||"\u83B7\u53D6\u4E8C\u7EF4\u7801\u5931\u8D25"})}}),t.post("/check-status",async(r,n)=>{let{sessionKey:s}=r.body,i=_dt.decode(s);if(!i)return n.send({code:0,data:{status:dA.EXPIRED}});let{sign:a}=i;try{let o=new Date().getTime().toString(),c=`tangram_guid_${o}`,l=(await he.get("https://passport.baidu.com/channel/unicast",{params:{channel_id:a,tpl:"netdisk",apiver:"v3",tt:Math.floor(new Date().getTime()/1e3).toString(),callback:c,_:o},headers:{"User-Agent":ME,Referer:"https://pan.baidu.com"}})).data;if(typeof l=="string"){l=l.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let d=JSON.parse(l);if(d.errno===0&&d.channel_v){let f=JSON.parse(d.channel_v);if(f.status===1)return n.send({code:0,data:{status:dA.SCANNED}});if(f.status===0&&f.v){let p=await e(f.v,r.server);return n.send({code:0,data:{status:dA.CONFIRMED,cookie:p}})}}else{if(d.errno===1)return n.send({code:0,data:{status:dA.NEW}});if(d.errno===2)return n.send({code:0,data:{status:dA.EXPIRED}})}}n.send({code:0,data:{status:dA.NEW}})}catch(o){console.error("\u767E\u5EA6\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",o),n.send({code:0,data:{status:dA.NEW}})}});async function e(r,n){let s=new Date().getTime().toString(),i=Math.floor(new Date().getTime()/1e3).toString(),o=(await he.get("https://passport.baidu.com/v3/login/main/qrbdusslogin",{params:{v:s,bduss:r,u:"https://pan.baidu.com/disk/main#/index?category=all",loginVersion:"v5",qrcode:"1",tpl:"netdisk",maskId:"",fileId:"",apiver:"v3",tt:s,traceid:"",time:i,alg:"v3",elapsed:"1"},headers:{"User-Agent":ME,Referer:"https://pan.baidu.com/","Accept-Language":"zh-CN,zh;q=0.9"},timeout:3e4})).data;if(typeof o=="string"){o=o.replace(/^[^(]*\(/,"").replace(/\);?\s*$/,"").trim();let c=o.match(/"bduss":\s*"([^"]+)"/),u=o.match(/"stoken":\s*"([^"]+)"/),l=o.match(/"ptoken":\s*"([^"]+)"/),d=o.match(/"ubi":\s*"([^"]+)"/);if(c&&u&&l&&d){let f=c[1],p=u[1],m=l[1],h=encodeURIComponent(d[1]),g=Object.entries({newlogin:"1",UBI:h,STOKEN:p,BDUSS:f,PTOKEN:m,BDUSS_BFESS:f,STOKEN_BFESS:p,PTOKEN_BFESS:m,UBI_BFESS:h}).map(([x,v])=>`${x}=${v}`).join("; "),y=(await he.get("https://passport.baidu.com/v3/login/api/auth/?return_type=5&tpl=netdisk&u=https://pan.baidu.com/disk/home",{headers:{"User-Agent":ME,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:x=>x===302||x===200})).headers.location;if(y){let v=(await he.get(y,{headers:{"User-Agent":ME,Referer:"https://pan.baidu.com/",Cookie:g},maxRedirects:0,validateStatus:w=>w===302||w===200})).headers["set-cookie"],C="";if(v){let w=v.find(N=>N.toLowerCase().includes("stoken"));w&&(C=w.split(";")[0])}let R=C?`BDUSS=${f};${C};`:`BDUSS=${f};STOKEN=${p};`;return await Lue(n,R),R}else{let x=`BDUSS=${f};STOKEN=${p};`;return await Lue(n,x),x}}}throw new Error("Cookie\u89E3\u6790\u5931\u8D25")}t.post("/cookie",async(r,n)=>{n.send({code:-1,message:"\u8BF7\u4F7F\u7528 /check-status \u63A5\u53E3"})}),t.get("/cookie",async(r,n)=>{n.send({code:0,data:await vwr(r.server)})}),t.put("/cookie",async(r,n)=>{await Lue(r.server,r.body.cookie),n.send({code:0})})}var Idt=require("crypto");var Tdt=Re(v0(),1),wdt="https://account.guangyapan.com",Mue="aMe-8VSlkrbQXpUR",Sdt="0123456789abcdef0123456789abcdef",Zf={NEW:"NEW",SCANNED:"SCANNED",CONFIRMED:"CONFIRMED",EXPIRED:"EXPIRED",CANCELED:"CANCELED"},Iwr="urn:ietf:params:oauth:grant-type:device_code",vdt={encode(t,e=12e4){let r={data:t,expireTime:Date.now()+e};return Buffer.from(JSON.stringify(r)).toString("base64url")},decode(t){try{if(!t)return null;let e=JSON.parse(Buffer.from(t,"base64url").toString());return Date.now()>e.expireTime?null:e.data}catch{return null}}},UM=async(t,e)=>(await t.db.getObjectDefault("/guangyapan",{}))?.[e]||"",c2=async(t,e,r)=>{await t.db.push(`/guangyapan/${e}`,r)};function Rdt(t){if(!t)return{};if(typeof t=="string")try{return JSON.parse(t)}catch{return{message:t}}return t}function Xi(t){return String(t||"").trim()}function Twr(t){let e=String(t||"").trim().toLowerCase();return e=e.replace(/^wdi10\./,""),e=e.replace(/x+$/g,""),e=e.replace(/[^0-9a-f]/g,""),e.length===32?e:""}async function wwr(t){let e=Twr(await UM(t,"device_id"));if(e)return e;let r=Sdt;try{r=(0,Idt.randomBytes)(16).toString("hex")}catch{r=Sdt}return await c2(t,"device_id",r),r}function Ndt(t){return{Accept:"application/json, text/plain, */*","Content-Type":"application/json","X-Client-Id":Mue,"X-Client-Version":"0.0.1","X-Device-Id":t,"X-Device-Model":"chrome%2F147.0.0.0","X-Device-Name":"PC-Chrome","X-Device-Sign":`wdi10.${t}xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,"X-Net-Work-Type":"NONE","X-OS-Version":"Win32","X-Platform-Version":"1","X-Protocol-Version":"301","X-Provider-Name":"NONE","X-SDK-Version":"9.0.2"}}function Rwr(t){let e=Xi(t?.access_token||t?.accessToken),r=Xi(t?.refresh_token||t?.refreshToken);return{accessToken:e,refreshToken:r}}function Nwr(t,e){let{accessToken:r,refreshToken:n}=Rwr(e);if(t>=200&&t<300&&(n||r))return{status:Zf.CONFIRMED,accessToken:r,refreshToken:n};let s=Xi(e?.error).toLowerCase();return s==="authorization_pending"||s==="slow_down"?{status:Zf.NEW}:s==="access_denied"?{status:Zf.CANCELED}:s.includes("expired")||s==="invalid_grant"?{status:Zf.EXPIRED}:{status:Zf.NEW}}function Owr(t){let e=Xi(t?.refreshToken);return e||Xi(t?.accessToken)}async function Pwr(t){let e=await Ae.post(`${wdt}/v1/auth/device/code`,{scope:"user",client_id:Mue},{headers:Ndt(t),validateStatus:()=>!0}),r=Rdt(e.data),n=Xi(r?.device_code),s=Xi(r?.verification_uri_complete||r?.verification_url),i=Number(r?.expires_in||120);if(e.status<200||e.status>=300||!n||!s)throw new Error(r?.error_description||r?.message||`status=${e.status}`);return{deviceCode:n,verifyUrl:s,expiresIn:i}}async function Dwr(t){let e=await Ae.post(`${wdt}/v1/auth/token`,{grant_type:Iwr,device_code:t.deviceCode,client_id:Mue},{headers:Ndt(t.deviceId),validateStatus:()=>!0});return Nwr(e.status,Rdt(e.data))}async function Cdt(t,e){let r=Xi(e?.accessToken),n=Xi(e?.refreshToken);n&&await c2(t,"refresh_token",n),r&&await c2(t,"access_token",r)}function kwr(t){let e=Xi(t?.cookie),r=Xi(t?.accessToken||t?.data?.accessToken),n=Xi(t?.refreshToken||t?.data?.refreshToken),s=!1;if(!r&&!n&&e)try{let i=JSON.parse(e);s=!0,r=Xi(i?.accessToken||i?.access_token),n=Xi(i?.refreshToken||i?.refresh_token)}catch{n=e}return!s&&!n&&e&&(n=e),{accessToken:r,refreshToken:n}}async function Wue(t){t.get("/qrcode",async(e,r)=>{try{let n=await wwr(e.server),s=await Pwr(n),i=vdt.encode({deviceCode:s.deviceCode,deviceId:n},Math.max(1e3,s.expiresIn*1e3)),a=await Tdt.default.toBuffer(s.verifyUrl,{width:300,height:300});r.header("X-Session-Key",i),r.type("image/png").send(a)}catch(n){console.error("\u5149\u9E2D\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25:",n),r.status(500).send({code:-1,message:"\u4E8C\u7EF4\u7801\u751F\u6210\u5931\u8D25"})}}),t.post("/check-status",async(e,r)=>{let n=vdt.decode(e.body?.sessionKey);if(!n)return r.send({code:0,data:{status:Zf.EXPIRED}});try{let s=await Dwr(n);if(s.status===Zf.CONFIRMED)return await Cdt(e.server,s),r.send({code:0,data:{status:Zf.CONFIRMED,cookie:Owr(s)}});r.send({code:0,data:s})}catch(s){console.error("\u5149\u9E2D\u72B6\u6001\u68C0\u67E5\u5931\u8D25:",s),r.send({code:0,data:{status:Zf.NEW}})}}),t.get("/token",async(e,r)=>{r.send({code:0,data:await UM(e.server,"refresh_token")})}),t.put("/token",async(e,r)=>{await Cdt(e.server,kwr(e.body||{})),r.send({code:0})}),t.get("/account",async(e,r)=>{r.send({code:0,data:{accessToken:await UM(e.server,"access_token"),refreshToken:await UM(e.server,"refresh_token")}})}),t.put("/account",async(e,r)=>{await c2(e.server,"access_token",Xi(e.body?.accessToken)),await c2(e.server,"refresh_token",Xi(e.body?.refreshToken)),r.send({code:0})})}var qM=Re(require("crypto"),1),mo=Re(Jn(),1),kdt="https://user-njs.yun.139.com/user",Uue="7.17.4",Lwr="mCloud_4.3.0_536",$ue=670,Bwr=292,Ldt=mo.default.enc.Utf8.parse("h7DLzCTAjn+altjy2a9E9FSt7AC6pmx1"),Odt=`||9|${Uue}|chrome||0||windows 10||zh-CN|||`,que=(t="")=>String(t||"").replace(/^Basic\s+/i,"").trim(),Ca=(t="")=>String(t||"").trim(),Fue=(t="")=>qM.default.createHash("md5").update(String(t)).digest("hex"),Mwr=(t="")=>qM.default.createHash("sha1").update(String(t)).digest("hex"),Wwr=t=>{try{return JSON.stringify(t)}catch{return String(t)}},$wr=t=>{try{return JSON.parse(t)}catch{return null}},Pdt=(t="",e=160)=>String(t).replace(/\s+/g," ").slice(0,e),Fwr=(t,e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>typeof t=="string"?t||e:t&&typeof t=="object"?t.message||t.msg||t.desc||t.resultDesc||Wwr(t):t==null?e:String(t),WE=(t="")=>{let e=Ca(t);return e.length<7?e?"***":"":`${e.slice(0,3)}****${e.slice(-4)}`},jue=(t={},e="\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8FD4\u56DE\u5F02\u5E38")=>{let r=String(t.code??t.status??t.resultCode??t.resultcode??""),n=Fwr(t.message??t.msg??t.desc??t.resultDesc??t.errorMessage,r?`${e}\uFF1A${r}`:e),s=new Error(r?`${n}\uFF08${r}\uFF09`:n);return s.yidongCode=r,s.yidongData=t.data,s.yidongResult=t,s.statusCode=t.statusCode,s},Uwr=t=>{let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r="";for(let n=0;n<t;n+=1)r+=e[Math.floor(Math.random()*e.length)];return r},qwr=(t={})=>encodeURIComponent(JSON.stringify({...t})).split("").sort().join(""),jwr=(t={})=>{let e=String(Date.now()),r=Uwr(16),n=Fue(Buffer.from(qwr(t)).toString("base64")),s=Fue(`${e}:${r}`);return`${e},${r},${Fue(n+s).toUpperCase()}`},Hwr=(t={},e={})=>({caller:"web","Content-Type":"application/json;charset=UTF-8","CMS-DEVICE":"default","X-Deviceinfo":`||9|${Uue}|chrome||0||windows 10||zh-CN|||`,"x-yun-channel-source":"10000034","x-huawei-channelSrc":"10000034","x-yun-svc-type":"1","x-SvcType":"1","x-m4c-caller":"PC","x-m4c-src":"10002","x-inner-ntwk":"2","mcloud-route":"001","mcloud-version":Uue,"mcloud-channel":"1000101","mcloud-client":"10701","mcloud-sign":jwr(t),"mcloud-skey":"","INNER-HCY-ROUTER-HTTPS":"1",...e}),Bdt=t=>{let e=t?.data||{},r=String(e.code??e.status??e.resultCode??e.resultcode??"");if(e.success===!1||r&&r!=="0"&&r!=="0000")throw jue(e);return e},Qwr=(t={})=>{let e=mo.default.lib.WordArray.random(16),r=mo.default.enc.Utf8.parse(typeof t=="string"?t:JSON.stringify(t)),n=mo.default.AES.encrypt(r,Ldt,{iv:e,mode:mo.default.mode.CBC,padding:mo.default.pad.Pkcs7});return mo.default.enc.Base64.stringify(e.concat(n.ciphertext))},Gwr=(t="")=>{let e=mo.default.enc.Base64.parse(String(t)),r=e.clone(),n=r.words.splice(4);r.init(r.words),e.init(n);let s=mo.default.AES.decrypt(mo.default.enc.Base64.stringify(e),Ldt,{iv:r,mode:mo.default.mode.CBC,padding:mo.default.pad.Pkcs7}).toString(mo.default.enc.Utf8);return JSON.parse(s)},Mdt=(t="")=>{if(typeof t!="string")return t;try{return Gwr(t)}catch(e){let r=$wr(t);return r&&typeof r=="object"?r:(console.warn("[yidong] cool response decrypt failed",{dataLength:String(t).length,dataPreview:Pdt(t),message:e?.message||String(e)}),{success:!1,code:"COOL_DECRYPT_FAILED",message:`\u79FB\u52A8\u4E91\u76D8\u52A0\u5BC6\u54CD\u5E94\u89E3\u6790\u5931\u8D25\uFF1A${Pdt(t)||e?.message||String(e)}`})}},Vwr=t=>{let e=Mdt(t?.data);return Bdt({data:e})},zwr=t=>{let e=qM.default.createDecipheriv("aes-128-ecb",Buffer.from("qPqDw263XgFgL3u8"),null);return e.setAutoPadding(!0),Buffer.concat([e.update(Buffer.from(t,"hex")),e.final()]).toString("utf8")},Kwr=t=>{if(typeof t!="string")return t||{};try{return JSON.parse(zwr(t))}catch{try{return JSON.parse(t)}catch{throw new Error("\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u7ED3\u679C\u89E3\u6790\u5931\u8D25")}}},Ywr=(t,e)=>!t||!e?"":Buffer.from(`pc:${t}:${e}`,"utf8").toString("base64"),Ddt=async(t,e,r={})=>{try{let n=await Ae.post(`${kdt}${t}`,e,{timeout:3e4,headers:Hwr(e,r)});return Bdt(n)}catch(n){if(n?.response?.data){let s=n.response.data;throw jue(s,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw n}},Jwr=async(t,e,r={})=>{let{clientInfo:n,...s}=r;try{let i=await Ae.post(`${kdt}${t}`,Qwr(e),{timeout:3e4,headers:{"Content-Type":"application/json;charset=UTF-8","hcy-cool-flag":"1","x-Nationcode":e.nationCode||"+86","x-deviceinfo":n||Odt,"x-yun-client-info":n||Odt,"x-yun-app-channel":"10000034",...s}});return Vwr(i)}catch(i){if(i?.response?.data){let a=Mdt(i.response.data);throw jue(a,"\u79FB\u52A8\u4E91\u76D8\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25")}throw i}},u2=async(t,e)=>(await t.db.getObjectDefault("/yidong",{}))?.[e]||"",td=async(t,e,r)=>{let n=e==="authorization"?que(r):Ca(r);await t.db.push(`/yidong/${e}`,n),e==="authorization"&&(globalThis.YidongAuthorization=n)},Wdt=async t=>{globalThis.YidongAuthorization=que(await u2(t,"authorization"))};async function Hue(t){t.get("/authorization",async(e,r)=>{let n=que(await u2(e.server,"authorization")),s=Ca(await u2(e.server,"phone"));globalThis.YidongAuthorization=n,r.send({code:0,data:{authorization:n,phone:s,hasAuth:!!n}})}),t.put("/authorization",async(e,r)=>{await td(e.server,"authorization",e.body.authorization),r.send({code:0})}),t.post("/send-code",async(e,r)=>{let n=Ca(e.body?.phone),s=Math.random();try{if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}let i={phoneNumber:n,reqType:3,random:s,nationCode:"+86",clientType:$ue},a=await Ddt("/sms/getSmsCode",i,{"x-NationCode":"+86"}),o=Ca(a?.data?.random||a?.random||s);await td(e.server,"phone",n),await td(e.server,"smsRandom",o),await td(e.server,"smsLoginRandom",s),console.info("[yidong] sms code sent",{phone:WE(n),reqType:i.reqType,randomLength:o.length}),r.send({code:0,data:{sent:!0}})}catch(i){if(console.warn("[yidong] send code failed",{phone:WE(e.body?.phone),code:i?.yidongCode,message:i?.message||String(i)}),i?.yidongCode==="200059554"){let a=Number(i?.yidongData?.captchaType||i?.yidongResult?.data?.captchaType||2);await td(e.server,"phone",n),await td(e.server,"smsLoginRandom",s),console.info("[yidong] sms code requires captcha",{phone:WE(n),captchaType:a}),r.send({code:0,data:{captchaRequired:!0,captchaType:a}});return}r.send({code:1,message:i?.message||"\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/send-code-captcha",async(e,r)=>{try{let n=Ca(e.body?.phone),s=Number(e.body?.captchaType||2),i=e.body?.puzzleVerfycode??e.body?.puzzleVerfyCode,a=Ca(e.body?.clientInfo);if(!/^1[3456789]\d{9}$/.test(n)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u8BF7\u5148\u5B8C\u6210\u6ED1\u5757\u9A8C\u8BC1"});return}let o=Ca(await u2(e.server,"smsLoginRandom")),c=Number(o),u=o&&Number.isFinite(c)?c:Math.random(),d=await Jwr("/sms/getSmsCode",{phoneNumber:n,reqType:3,random:u,nationCode:"+86",clientType:$ue,captchaType:s,puzzleVerfycode:i},a?{clientInfo:a}:{}),f=Ca(d?.data?.random||d?.random||u);await td(e.server,"phone",n),await td(e.server,"smsRandom",f),console.info("[yidong] sms code sent after captcha",{phone:WE(n),captchaType:s,randomLength:f.length}),r.send({code:0,data:{sent:!0}})}catch(n){console.warn("[yidong] send code after captcha failed",{phone:WE(e.body?.phone),code:n?.yidongCode,message:n?.message||String(n)}),r.send({code:1,message:n?.message||"\u6ED1\u5757\u9A8C\u8BC1\u540E\u53D1\u9001\u9A8C\u8BC1\u7801\u5931\u8D25"})}}),t.post("/verify-code",async(e,r)=>{let n="";try{let s=Ca(e.body?.phone),i=Ca(e.body?.code);if(!/^1[3456789]\d{9}$/.test(s)){r.send({code:1,message:"\u8BF7\u8F93\u5165\u6B63\u786E\u7684\u4E2D\u56FD\u5927\u9646\u624B\u673A\u53F7"});return}if(!i){r.send({code:1,message:"\u9A8C\u8BC1\u7801\u4E0D\u80FD\u4E3A\u7A7A"});return}n=Ca(await u2(e.server,"smsRandom"));let a={msisdn:s,random:"",dycpwd:i,cpid:Bwr,clienttype:$ue,version:Lwr,pintype:5,secinfo:Mwr(`fetion.com.cn:${i}`).toUpperCase(),verType:2,loginMode:"0",extInfo:{ifOpenAccount:"1"}},o=await Ddt("/thirdlogin",a,{"x-NationCode":"+86"}),c=Kwr(o.data),u=Ca(c.account||s),l=Ca(c.token||c.authToken),d=Ywr(u,l);if(!d){r.send({code:1,message:"\u79FB\u52A8\u4E91\u76D8\u767B\u5F55\u6210\u529F\u4F46\u672A\u8FD4\u56DE\u6709\u6548 token"});return}await td(e.server,"phone",s),await td(e.server,"authorization",d),r.send({code:0,message:"\u767B\u5F55\u6210\u529F",data:{hasAuth:!0,authorization:d}})}catch(s){console.warn("[yidong] verify code failed",{phone:WE(e.body?.phone),codeLength:Ca(e.body?.code).length,smsRandomLength:n.length,message:s?.message||String(s)}),r.send({code:1,message:s?.message||"\u9A8C\u8BC1\u7801\u767B\u5F55\u5931\u8D25"})}})}var jM=[{key:"quark",name:"\u5938\u514B",enable:!0,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.a0d60e6a72806738e6f0b711a979bdf5?rik=lp5C9t5sYlkrLw&riu=http%3a%2f%2fpic.2265.com%2fupload%2f2020-10%2f202010151719492792.png&ehk=Pv6rq3JxJvKe2y1QsdzssyZ4Ez4cwiKWmIvK0aMgxi0%3d&risl=&pid=ImgRaw&r=0",chunkSize:512,poolSize:10,noSaveMode:!1},{key:"uc",name:"UC",enable:!0,pic:"https://ts1.cn.mm.bing.net/th/id/R-C.421c96e47df7c9719403654ee4f7c281?rik=yiiEoGCTgDDc3w&riu=http%3a%2f%2fpic.9663.com%2fupload%2f2023-5%2f20235111411256277.png&ehk=R81N%2flXMrl%2bxpRlST8DtHXDfab6rzaMb83gihuD71Fk%3d&risl=&pid=ImgRaw&r=0",chunkSize:512,poolSize:10},{key:"ali",name:"\u963F\u91CC",enable:!0,pic:"https://inews.gtimg.com/newsapp_bt/0/13263837859/1000",chunkSize:128,poolSize:20},{key:"baidu",name:"\u767E\u5EA6",enable:!0,pic:"https://nd-static.bdstatic.com/m-static/v20-main/home/img/icon-home-new.b4083345.png"},{key:"xunlei",name:"\u8FC5\u96F7",enable:!0,pic:"https://img.geekie.site/i/2026/03/22/190713.png"},{key:"tianyi",name:"\u5929\u7FFC",enable:!0,pic:"https://is1-ssl.mzstatic.com/image/thumb/Purple211/v4/a8/fa/f0/a8faf032-0fa4-d9c5-ac70-920d9c84dff1/AppIcon-0-0-1x_U007emarketing-0-7-0-0-sRGB-85-220.png/350x350.png"},{key:"yidong",name:"\u79FB\u52A8",enable:!0,pic:"https://yun.139.com/w/static/img/LOGO.png"},{key:"123",name:"123",enable:!0,pic:"https://statics.123957.com/static/favicon.ico"},{key:"115",name:"115",enable:!0,pic:"https://img.pcsoft.com.cn/soft/202104/093230-608b5e2ed5912.jpg"},{key:"guangyapan",name:"\u5149\u9E2D",enable:!0,pic:"https://www.guangyapan.com/icon.png"}],Que=async t=>{let r=(await t.db.getObjectDefault("/pans",{}))?.list||t.config.pans.list;return r.filter(n=>jM.some(s=>s.key===n.key)).concat(jM.filter(n=>!r.some(s=>s.key===n.key))).map(n=>({...jM.find(i=>i.key===n.key),...n}))},Xwr=async(t,e)=>{await t.db.push("/pans/list",e),globalThis.Pans=e},Zwr=async t=>{await t.db.delete("/pans/list"),globalThis.Pans=jM};async function Gue(t){t.get("/list",async(e,r)=>{r.send({code:0,data:await Que(e.server)})}),t.put("/list",async(e,r)=>{await Xwr(e.server,e.body.list),r.send({code:0})}),t.delete("/list",async(e,r)=>{await Zwr(e.server),r.send({code:0})})}var $dt=Re(Cv(),1);async function Vue(t){t.get("/",async(e,r)=>{r.header("Content-Disposition",`attachment; filename="config.${(0,$dt.default)().format("YYYY-MM-DD")}.json"`);let n=await e.server.db.getData("/");r.send(JSON.stringify(n,null,4))}),t.put("/",async(e,r)=>{await e.server.db.push("/",e.body),r.send({code:0})})}var Fdt=Re(require("crypto"),1);function Ut(t=[],e=null){let r=Array.isArray(t)?t:[];return{Items:r,TotalRecordCount:typeof e=="number"?e:r.length}}function Xr(t,e,r=""){if(!t||typeof t!="object")return r;for(let n of e)if(t[n]!==void 0&&t[n]!==null)return t[n];return r}function zue(t,e){return typeof t!="string"||!t.trim()?[]:t.split(e).map(r=>String(r||"").trim()).filter(Boolean)}function e2r(t){let e=String(t||""),r=e.lastIndexOf("$");return r<=0?{name:e||"\u64AD\u653E",playId:""}:{name:e.slice(0,r).trim()||"\u64AD\u653E",playId:e.slice(r+1).trim()}}function ho(t,e){let r=zue(t,"$$$"),n=zue(e,"$$$"),s=Math.max(r.length,n.length),i=[];for(let a=0;a<s;a++){let c=zue(n[a]||"","#").map(e2r).filter(u=>u.playId);i.push({flag:r[a]||`\u7EBF\u8DEF${a+1}`,episodes:c})}return i}function fA(t,e=1){let r=Number.parseInt(Yw(String(t||"")),10);if(Number.isInteger(r)&&r>0)return r;let n=Number.parseInt(String(e||1),10);return Number.isInteger(n)&&n>0?n:1}function t2r(t,e=""){let r=[];for(let n=0;n<t.length;n+=2){let s=String(t[n]||"").trim(),i=Yue(t[n+1]||"");i&&r.push({label:s,url:i})}if(!r.length)return t.map(s=>Yue(s)).find(Boolean)||"";if(e){let n=r.find(s=>s.label===e);if(n)return n.url}return r[0].url}function Kue(t=""){return/^(https?:\/\/|push:\/\/)/i.test(String(t||"").trim())}function Yue(t=""){let e=String(t||"").trim();if(!e)return"";if(Kue(e))return e;let r=e.split("#").map(n=>String(n||"").trim()).filter(Boolean);for(let n of r){if(Kue(n))return n;let i=n.split(",").map(c=>String(c||"").trim()).filter(Boolean).find(c=>Kue(c));if(i)return i;let a=n.match(/(https?:\/\/[^\s,]+)/i);if(a?.[1])return a[1].trim();let o=n.match(/(push:\/\/[^\s,]+)/i);if(o?.[1])return o[1].trim()}return""}function um(t,e=""){let r=t?.url||"";Array.isArray(r)?r=t2r(r,e):r=Yue(r),typeof r!="string"&&(r="");let n={};return t?.header&&typeof t.header=="object"&&Object.keys(t.header).forEach(s=>{let i=t.header[s];i!=null&&(n[s]=String(i))}),{parse:Number(t?.parse||0),url:r.trim(),header:n}}function Pu(t,e=60){let r=Number(t);return!Number.isFinite(r)||r<=0?e:Math.min(200,r)}function Ia(t=[],e=0,r=60){let n=Array.isArray(t)?t:[],s=Math.max(0,Number(e)||0),i=Pu(r,60);return n.slice(s,s+i)}function ss(t={}){return{IsFavorite:!1,Played:!1,PlayCount:0,PlaybackPositionTicks:0,...t}}function $E(t={}){let e=`${t?.vod_name||""} ${t?.vod_remarks||""}`;return/(æ›´æ–°|第\s*\d+\s*[集话期]|连载|season|s\d+e\d+)/i.test(e)?"Series":"Movie"}function Ws(){return new Date().toISOString()}function r2r(t={}){if(typeof t=="string")try{t=JSON.parse(t)}catch{t={}}return{username:String(t?.username||t?.Username||t?.name||t?.Name||""),password:String(t?.pw||t?.Pw||t?.password||t?.Password||"")}}function n2r(t=""){let e={};return String(t).replace(/^MediaBrowser\s+/i,"").replace(/^Emby\s+/i,"").replace(/,\s+/g,",").split(",").forEach(n=>{let[s,i]=n.split("="),a=String(s||"").trim().toLowerCase(),o=String(i||"").replace(/"/g,"").trim();a&&o&&(e[a]=o)}),e}function s2r(t){let e=t.query||{},r=n2r(t.headers?.["x-emby-authorization"]||t.headers?.authorization||"");return{client:r.client||String(e["x-emby-client"]||e["X-Emby-Client"]||""),device:r.device||String(e["x-emby-device-name"]||e["X-Emby-Device-Name"]||""),deviceId:r.deviceid||String(e["x-emby-device-id"]||e["X-Emby-Device-Id"]||""),version:r.version||String(e["x-emby-client-version"]||e["X-Emby-Client-Version"]||"")}}function i2r(t){let e=Ws();return{Name:t.user.name,ServerId:t.config.serverId,Id:t.user.id,HasPassword:!0,HasConfiguredPassword:!0,HasConfiguredEasyPassword:!1,EnableAutoLogin:!1,LastLoginDate:e,LastActivityDate:e,Policy:{IsAdministrator:!0,IsHidden:!1,IsDisabled:!1,EnableRemoteAccess:!0,EnableContentDeletion:!1,EnableContentDownloading:!0,EnableSyncTranscoding:!0,EnableMediaPlayback:!0,EnableAudioPlaybackTranscoding:!0,EnableVideoPlaybackTranscoding:!0,EnablePlaybackRemuxing:!0,EnableSubtitleManagement:!1,AuthenticationProviderId:"Emby.Server.Implementations.Library.DefaultAuthenticationProvider"},Configuration:{PlayDefaultAudioTrack:!0,DisplayMissingEpisodes:!1,SubtitleMode:"Default",EnableLocalPassword:!1,HidePlayedInLatest:!0,RememberAudioSelections:!0,RememberSubtitleSelections:!0}}}function a2r(t,e,r){let n=Ws();return{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SubtitleOffset:0,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:e.Id,ServerId:t.config.serverId,UserId:e.Id,UserName:e.Name,Client:r.client,LastActivityDate:n,DeviceName:r.device,InternalDeviceId:0,DeviceId:r.deviceId,ApplicationVersion:r.version||t.config.version,SupportedCommands:[],SupportsRemoteControl:!1}}async function Jue(t){let e=new Map,r=5,n=60*1e3;function s(a){let o=Date.now(),c=e.get(a);return!c||o-c.windowStart>n?!1:c.count>=r}function i(a){let o=Date.now(),c=e.get(a);!c||o-c.windowStart>n?e.set(a,{count:1,windowStart:o}):c.count++}t.get("/Public",async()=>[]),t.post("/AuthenticateByName",async(a,o)=>{let c=t.embyContext;if(!c.config.enable)return o.code(503),"Emby disabled";let u=a.ip||"unknown";if(s(u))return o.code(429),"\u8BF7\u6C42\u8FC7\u4E8E\u9891\u7E41\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5";let l=r2r(a.body||{});if(console.log("[Emby Auth] login attempt:",JSON.stringify({username:l.username,hasPassword:!!l.password,ip:u})),l.username!==c.config.username||l.password!==c.config.password)return i(u),o.code(401),"\u7528\u6237\u540D\u6216\u5BC6\u7801\u9519\u8BEF";let d=Fdt.default.randomBytes(24).toString("hex"),f=s2r(a),p=Date.now(),m=c.config.tokenTtlMs>0?p+c.config.tokenTtlMs:0;c.tokens.set(d,{token:d,userId:c.user.id,userName:c.user.name,createdAt:p,lastUsedAt:p,expireAt:m,device:f});let h=i2r(c),A=a2r(c,h,f);return{User:h,SessionInfo:A,AccessToken:d,ServerId:c.config.serverId}}),t.post("/Logout",{preHandler:t.embyRequireAuth},async(a,o)=>{a.embyToken&&t.embyContext.tokens.delete(a.embyToken),o.code(204).send()}),t.get("/Me",{preHandler:t.embyRequireAuth},async a=>({Name:a.embyUser?.Name||t.embyContext.user.name,Id:a.embyUser?.Id||t.embyContext.user.id,ServerId:t.embyContext.config.serverId,Policy:{},Configuration:{},EnableAutoLogin:!1,LastLoginDate:Ws(),LastActivityDate:Ws()}))}async function Xue(t){t.get("/Info/Public",async()=>{let e=t.embyContext.config;return{LocalAddresses:[],RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Info",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config;return{SystemUpdateLevel:"Release",OperatingSystemDisplayName:"Node.js",HasPendingRestart:!1,IsShuttingDown:!1,HasImageEnhancers:!1,SupportsLibraryMonitor:!1,SupportsLocalPortConfiguration:!1,SupportsWakeServer:!1,CanSelfRestart:!1,CanSelfUpdate:!1,CanLaunchWebBrowser:!1,ProgramDataPath:"/",ItemsByNamePath:"/metadata",CachePath:"/cache",LogPath:"/logs",InternalMetadataPath:"/metadata",TranscodingTempPath:"/tmp",HttpServerPortNumber:8096,SupportsHttps:!1,HttpsPortNumber:8920,HasUpdateAvailable:!1,SupportsAutoRunAtStartup:!1,HardwareAccelerationRequiresPremiere:!1,WakeOnLanInfo:{MacAddress:"",BroadcastAddress:"",Port:0},IsInMaintenanceMode:!1,LocalAddress:"",LocalAddresses:[],WanAddress:"",RemoteAddresses:[],ServerName:e.serverName,Version:e.version,Id:e.serverId}}),t.get("/Ping",async(e,r)=>(r.type("text/plain; charset=utf-8"),"MyCatPaw Emby")),t.get("/Endpoint",async()=>({IsInNetwork:!0}))}var Udt=new Set(["lib","cat","vod","sea","ep","img","media"]);function wn(t,e={}){if(!Udt.has(t))throw new Error(`Unsupported item type: ${t}`);let r=JSON.stringify(e||{}),n=Buffer.from(r,"utf8").toString("base64url");return`${t}:${n}`}function $s(t){if(typeof t!="string")return null;let e=t.indexOf(":");if(e<=0)return null;let r=t.slice(0,e);if(!Udt.has(r))return null;let n=t.slice(e+1);if(!n)return null;try{let s=Buffer.from(n,"base64url").toString("utf8"),i=JSON.parse(s);return!i||typeof i!="object"?null:{type:r,payload:i}}catch{return null}}function Zue(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,ServerId:e,Id:r,Guid:r,Etag:r,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,CanDelete:!1,CanDownload:!1,DisplayPreferencesId:r,UserData:ss(),ImageTags:{Primary:r},BackdropImageTags:[],ChildCount:0}}async function ele(t){t.get("/MediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Xl(t);return Ut(r.map(n=>Zue(n,e)))}),t.get("/VirtualFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId;return(await Xl(t)).map(n=>{let s=Zue(n,e);return{Name:s.Name,Locations:[],LibraryOptions:{},ItemId:s.Id,Id:s.Id,Guid:s.Guid}})}),t.get("/SelectableMediaFolders",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Xl(t);return Ut(r.map(n=>{let s=Zue(n,e);return{Name:s.Name,Id:s.Id,Path:"",Type:"Virtual"}}))}),t.post("/Refresh",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()}),t.post("/RefreshMediaLibrary",{preHandler:t.embyRequireAuth},async(e,r)=>{r.code(204).send()})}var o2r="/embyPlayback",c2r=.92,u2r=1500;function HM(t,e=0){let r=Number(t);return Number.isFinite(r)?r:e}function tle(t,e=!1){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["1","true","yes","on"].includes(r)?!0:["0","false","no","off"].includes(r)?!1:e}function l2r(t){if(t instanceof Date){let n=t.getTime();return Number.isFinite(n)?new Date(n).toISOString():""}let e=String(t||"").trim();if(!e)return"";let r=Date.parse(e);return Number.isFinite(r)?new Date(r).toISOString():""}function QM(t){let e=t&&typeof t=="object"?t:{};return{users:e.users&&typeof e.users=="object"?e.users:{}}}function lm(t){let e=t?.embyContext;return!e||typeof e!="object"?QM(null):((!e.playbackState||typeof e.playbackState!="object")&&(e.playbackState=QM(null)),(!e.playbackState.users||typeof e.playbackState.users!="object")&&(e.playbackState.users={}),e.playbackState)}function pA(t,e){let r=String(e||"").trim();return r?((!t.users[r]||typeof t.users[r]!="object")&&(t.users[r]={items:{}}),(!t.users[r].items||typeof t.users[r].items!="object")&&(t.users[r].items={}),t.users[r]):null}function ep(t,e=""){let r=t&&typeof t=="object"?t:{};return{itemId:String(e||r.itemId||"").trim(),name:String(r.name||"").trim(),isFavorite:!!r.isFavorite,played:!!r.played,playCount:Math.max(0,Math.floor(HM(r.playCount,0))),playbackPositionTicks:Math.max(0,Math.floor(HM(r.playbackPositionTicks,0))),lastPlayedDate:l2r(r.lastPlayedDate),mediaSourceId:String(r.mediaSourceId||"").trim()}}function qdt(t={}){return Date.parse(String(t?.lastPlayedDate||""))||0}function d2r(t=""){let e=String(t||"").trim();return e?e.match(/\d{4}/)?.[0]||e:""}function Hdt(t={}){let e=String(t.k||"").trim(),r=String(t.v||"").trim();if(!e||!r)return null;let n=d2r(t.y);return{k:e,t:Number(t.t||3),v:r,...t.n?{n:String(t.n||"")}:{},...t.u?{u:String(t.u||"")}:{},...t.r?{r:String(t.r||"")}:{},...n?{y:n}:{}}}function f2r(t={}){let e=Hdt(t);return e?{...e,l:Number(t.l||0)}:null}function p2r(t={}){let e=Hdt(t);return e?wn("vod",e):""}function m2r(t={}){let e=f2r(t);return e?wn("sea",e):""}function Qdt(t){return t?.type==="ep"||t?.type==="media"}function h2r(t,e){if(!Qdt(t)||!["vod","sea"].includes(e?.type))return!1;let r=t.payload||{},n=e.payload||{};return!(String(r.k||"")!==String(n.k||"")||Number(r.t||3)!==Number(n.t||3)||String(r.v||"")!==String(n.v||"")||e.type==="sea"&&Number(r.l||0)!==Number(n.l||0))}function Gdt(t,e,r,n={}){let s=$s(String(r||""));if(!["vod","sea"].includes(s?.type))return[];let i=lm(t),a=pA(i,e);if(!a)return[];let o=!!n?.includePlayed;return Object.entries(a.items||{}).map(([c,u])=>({record:ep(u,c),decoded:$s(c)})).filter(({record:c,decoded:u})=>!h2r(u,s)||c.playbackPositionTicks<=0?!1:o||!c.played).sort((c,u)=>qdt(u.record)-qdt(c.record))}function l2(t,e,r,n={}){return Gdt(t,e,r,n)[0]||null}async function jdt(t){try{if(!t?.db?.push)return;await t.db.push(o2r,lm(t))}catch{}}function GM(t,e=!1){let r=t?.embyContext;if(!(!r||typeof r!="object")){if(e){r.playbackPersistTimer&&(clearTimeout(r.playbackPersistTimer),r.playbackPersistTimer=null),jdt(t);return}r.playbackPersistTimer||(r.playbackPersistTimer=setTimeout(async()=>{r.playbackPersistTimer=null,await jdt(t)},u2r))}}function g2r(t={},e=""){let r=[t?.ItemId,t?.itemId,t?.NowPlayingItem?.Id,t?.nowPlayingItem?.Id,t?.PlayingItemId,t?.playingItemId,t?.PlayableItemId,t?.playableItemId,e];for(let n of r){let s=String(n||"").trim();if(s)return s}return""}function A2r(t={}){let e=[t?.PositionTicks,t?.positionTicks,t?.PlaybackPositionTicks,t?.playbackPositionTicks,t?.Position,t?.position];for(let r of e){let n=Math.floor(HM(r,NaN));if(Number.isFinite(n)&&n>=0)return n}return 0}function y2r(t={}){let e=[t?.RunTimeTicks,t?.runTimeTicks,t?.NowPlayingItem?.RunTimeTicks,t?.nowPlayingItem?.runTimeTicks];for(let r of e){let n=Math.floor(HM(r,NaN));if(Number.isFinite(n)&&n>0)return n}return 0}function x2r(t,e,r,n){return tle(t?.Played,!1)||tle(t?.IsPlayed,!1)||e==="played"?!0:e!=="stopped"||n<=0?!1:r/n>=c2r}function b2r(t,e,r){let n=String(r||"").trim();if(!n)return null;let s=lm(t),i=pA(s,e);if(!i)return null;let a=i.items[n];return!a||typeof a!="object"?null:ep(a,n)}function Fo(t,e,r,n={}){let s=String(r||"").trim();if(!s)return ss(n);let i=b2r(t,e,s),o=l2(t,e,s)?.record||null||i;return o?ss({...n,IsFavorite:!!(i?.isFavorite||o.isFavorite),Played:o.played,PlayCount:o.playCount,PlaybackPositionTicks:o.playbackPositionTicks,...o.lastPlayedDate?{LastPlayedDate:o.lastPlayedDate}:{}}):ss(n)}function Fs(t,e,r=[]){return!Array.isArray(r)||!r.length||r.forEach(n=>{!n||!n.Id||(n.UserData=Fo(t,e,String(n.Id||""),n.UserData||{}))}),r}async function d2(t,e,r={},n="progress"){let s=g2r(r);if(!s)return null;let i=lm(t),a=pA(i,e);if(!a)return null;let o=ep(a.items[s],s),c=A2r(r),u=y2r(r),l=x2r(r,n,c,u),d=ep(o,s);d.lastPlayedDate=Ws(),c>0&&(d.playbackPositionTicks=c);let f=String(r?.ItemName||r?.itemName||r?.Name||r?.name||r?.NowPlayingItem?.Name||"").trim();f&&(d.name=f);let p=String(r?.MediaSourceId||r?.mediaSourceId||"").trim();return p&&(d.mediaSourceId=p),l?(d.played=!0,d.playCount=Math.max(1,d.playCount+(o.played?0:1)),d.playbackPositionTicks=0):n!=="ping"&&(c>0||n==="stopped"||n==="progress"||n==="playing")&&(d.played=!1),(r?.IsFavorite!==void 0||r?.isFavorite!==void 0)&&(d.isFavorite=tle(r?.IsFavorite??r?.isFavorite,d.isFavorite)),a.items[s]=d,GM(t,n==="stopped"),d}async function Vdt(t,e,r,n){let s=String(r||"").trim();if(!s)return ss();let i=lm(t),a=pA(i,e);if(!a)return ss();let o=ep(a.items[s],s),c=ep(o,s);return c.played=!!n,c.lastPlayedDate=Ws(),c.played&&(c.playCount=Math.max(1,c.playCount+(o.played?0:1))),c.playbackPositionTicks=0,a.items[s]=c,GM(t,!0),Fo(t,e,s)}async function zdt(t,e,r,n){let s=String(r||"").trim();if(!s)return ss();let i=lm(t),a=pA(i,e);if(!a)return ss();let o=ep(a.items[s],s);return o.isFavorite=!!n,o.lastPlayedDate=Ws(),a.items[s]=o,GM(t,!0),Fo(t,e,s)}async function Kdt(t,e,r){let n=String(r||"").trim();if(!n)return ss();let s=lm(t),i=pA(s,e);if(!i)return ss();let a=new Set([n,...Gdt(t,e,n).map(({record:o})=>o.itemId)]);for(let o of a){let c=ep(i.items[o],o);c.played=!1,c.playbackPositionTicks=0,c.lastPlayedDate=Ws(),i.items[o]=c}return GM(t,!0),Fo(t,e,n)}function E2r(t=""){let e=$s(String(t||""));return e?e.type==="vod"?{type:"Series",isFolder:!0,canPlay:!1,mediaType:"Video"}:e.type==="sea"?{type:"Season",isFolder:!0,canPlay:!1,mediaType:void 0}:e.type==="ep"||e.type==="media"?{type:"Episode",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}:{type:"Video",isFolder:!1,canPlay:!0,mediaType:"Video"}}function _2r(t){if(t?.name)return String(t.name);let e=$s(String(t?.itemId||"")),r=String(e?.payload?.n||"").trim();return r||"\u7EE7\u7EED\u64AD\u653E"}function S2r(t,e,r,n){let s=$s(String(n?.itemId||""));if(Qdt(s)){let a=p2r(s.payload||{});if(a){let o=m2r(s.payload||{});return{Name:String(s?.payload?.n||n?.name||"").trim()||"\u7EE7\u7EED\u64AD\u653E",Id:a,ServerId:r,IsFolder:!0,Type:"Series",MediaType:"Video",CollectionType:"tvshows",...o?{SeasonId:o}:{},DateCreated:n.lastPlayedDate||Ws(),ImageTags:{Primary:a},BackdropImageTags:[],UserData:Fo(t,e,a)}}}let i=E2r(n.itemId);return{Name:_2r(n),Id:n.itemId,ServerId:r,IsFolder:i.isFolder,Type:i.type,...i.mediaType?{MediaType:i.mediaType}:{},...i.canPlay?{CanPlay:!0}:{},DateCreated:n.lastPlayedDate||Ws(),ImageTags:{Primary:n.itemId},BackdropImageTags:[],UserData:Fo(t,e,n.itemId)}}function v2r(t={}){let e=$s(String(t?.Id||"")),r=e?.payload||{},n=String(r.k||"").trim(),s=String(r.v||"").trim();return e?.type==="vod"&&n&&s?`series:${n}:${Number(r.t||3)}:${s}`:e?.type==="sea"&&n&&s?`season:${n}:${Number(r.t||3)}:${s}:${Number(r.l||0)}`:`item:${String(t?.Id||"")}`}function Ydt(t,e,r){let n=lm(t),s=pA(n,e);if(!s)return[];let i=Object.entries(s.items||{}).map(([c,u])=>ep(u,c)).filter(c=>c.playbackPositionTicks>0&&!c.played).sort((c,u)=>{let l=Date.parse(String(c.lastPlayedDate||""))||0;return(Date.parse(String(u.lastPlayedDate||""))||0)-l}),a=new Set,o=[];for(let c of i){let u=S2r(t,e,r,c),l=v2r(u);!u?.Id||a.has(l)||(a.add(l),o.push(u))}return o}var C2r="https://api.themoviedb.org/3",Jdt=8e3,I2r=2,Xdt=20,Zdt=20;function eft(t=0){return new Promise(e=>setTimeout(e,Math.max(0,Number(t)||0)))}function f2(t){let e=t.embyContext?.config||{},r=String(e.tmdbApiKey||"").trim();return!e.tmdbEnable||!r?null:{apiKey:r,language:String(e.tmdbLanguage||"zh-CN"),imageBase:String(e.tmdbImageBase||"https://image.tmdb.org/t/p/original").replace(/\/+$/,""),timeoutMs:Jdt}}function tft(t="zh-CN"){let e=String(t||"zh-CN").trim().split(/[-_]/)[0].toLowerCase(),r=new Set;return e&&r.add(e),r.add("en"),r.add("null"),Array.from(r).join(",")}function T2r(t){let e=t.embyContext;return e.tmdbClientState||(e.tmdbClientState={tokens:Zdt,lastRefillAt:Date.now()}),e.tmdbClientState}function w2r(t){let e=Date.now(),r=Math.max(0,e-t.lastRefillAt)/1e3;r<=0||(t.tokens=Math.min(Zdt,t.tokens+r*Xdt),t.lastRefillAt=e)}async function R2r(t){let e=T2r(t);for(;;){if(w2r(e),e.tokens>=1){e.tokens-=1;return}let r=Math.max(0,1-e.tokens),n=Math.max(50,Math.ceil(r/Xdt*1e3));await eft(n)}}function N2r(t){let e=Number(t?.response?.status||0);return!e||e===429||e>=500}function O2r(t,e=0){let r=Number(t?.response?.headers?.["retry-after"]||0);return Number.isFinite(r)&&r>0?r*1e3:Math.min(4e3,500*(e+1))}function mA(t){return!!f2(t)}function p2(t,e=""){let r=String(e||"").trim();return r?/^https?:\/\//i.test(r)?r:`${f2(t)?.imageBase||"https://image.tmdb.org/t/p/original"}${r.startsWith("/")?"":"/"}${r}`:""}async function m2(t,e,r={},n={}){let s=f2(t);if(!s)return null;let i={...r||{}};i.language||(i.language=s.language);let a=Math.max(0,Number(n.maxRetries??I2r)||0);for(let o=0;o<=a;o+=1){await R2r(t);try{return(await Ae.get(`${C2r}${e}`,{params:{api_key:s.apiKey,...i},timeout:Number(n.timeoutMs||s.timeoutMs||Jdt),headers:{Accept:"application/json"}})).data||null}catch(c){if(o>=a||!N2r(c))return null;await eft(O2r(c,o))}}return null}async function rft(t,e,r=null){return m2(t,"/search/tv",{query:e,...r?{first_air_date_year:r}:{}})}async function nft(t,e,r=null){return m2(t,"/search/movie",{query:e,...r?{primary_release_year:r}:{}})}async function sft(t,e){let r=f2(t);return m2(t,`/tv/${Number(e)}`,{append_to_response:"external_ids,content_ratings,images,credits",include_image_language:tft(r?.language||"zh-CN")})}async function ift(t,e){let r=f2(t);return m2(t,`/movie/${Number(e)}`,{append_to_response:"external_ids,release_dates,images,credits",include_image_language:tft(r?.language||"zh-CN")})}async function aft(t,e,r){return m2(t,`/tv/${Number(e)}/season/${Number(r)}`)}function Mn(t=""){return String(t||"").trim()}function oft(t=[]){let e=[],r=new Set;for(let n of t){let s=Mn(n);!s||r.has(s)||(r.add(s),e.push(s))}return e}function P2r(t=""){let e=Mn(t);if(!e)return null;let r=e.replace(/[·•::\-_.!!??,,'"/\\()[\]{}【】《》\s]+$/g,"");if(!r)return null;let n=r.match(/([1-9]\d{0,2})$/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return!Number.isInteger(s)||s<=0||s>50?null:s}function uft({explicitSources:t=[],suffixSources:e=[]}={}){for(let r of oft(t)){let n=Number.parseInt(Bce(r),10);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"pattern"}}for(let r of oft(e)){let n=P2r(r);if(Number.isInteger(n)&&n>0)return{seasonNumber:n,explicit:!0,strategy:"title_suffix"}}return{seasonNumber:null,explicit:!1,strategy:"none"}}function D2r(t="",e={},r="tv"){let n=String(t||"");if(r!=="tv"||!n||String(e?.seasonHintStrategy||"")!=="title_suffix")return"";let s=Number.parseInt(String(e?.seasonNumber||""),10);if(!Number.isInteger(s)||s<=0)return"";let i=String(s);if(!n.endsWith(i))return"";let a=n.slice(0,Math.max(0,n.length-i.length));return a.length>=2?a:""}function cft(t="",e=""){return!t||!e?0:t===e?1:t.includes(e)||e.includes(t)?Math.min(.95,Math.min(t.length,e.length)/Math.max(t.length,e.length)+.15):NQ(t,e).length/Math.max(t.length,e.length)}function hA(t=""){let e=Mn(t).match(/\b(19|20)\d{2}\b/);return e?.[0]?Number(e[0]):null}function rle(t=""){let e=Mn(t);return Mn(sA(e)||e).toLowerCase().replace(/[·•::\-_.!!??,,'"/\\()[\]{}【】《》\s]+/g,"").replace(/第[一二三四五六七八九十百千万亿\d]+å­£/g,"").replace(/年番总集篇|年番合集篇|总集篇|合集篇|年番/g,"")}function lft(t={}){let e=Mn(t?.tmdbHintTitle||t?.vod_name||t?.name||""),r=Mn(sA(e)||e),n=Mn(t?.tmdbHintRemarks||t?.vod_remarks||""),s=uft({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),e,n,Mn(t?.vod_name),Mn(t?.vod_remarks)],suffixSources:[e,r,Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return{rawTitle:e,cleanedTitle:r,normalizedTitle:rle(r||e),altTitle:n,year:hA(t?.tmdbHintYear||t?.vod_year),seasonNumber:s.seasonNumber,seasonHintStrategy:s.strategy}}function nle(t={},e=null){let r=uft({explicitSources:[Mn(t?.tmdbHintTitle),Mn(t?.tmdbHintRemarks),Mn(t?.vod_name),Mn(t?.vod_remarks),Mn(e?.flag)],suffixSources:[Mn(t?.tmdbHintTitle),Mn(t?.vod_name),Mn(t?.name)]});return Number.isInteger(r.seasonNumber)&&r.seasonNumber>0?{seasonNumber:r.seasonNumber,explicit:r.explicit,strategy:r.strategy}:{seasonNumber:1,explicit:!1,strategy:"default"}}function dft(t={},e="tv"){return Mn(e==="movie"?t?.title||t?.original_title||t?.name||t?.original_name||"":t?.name||t?.original_name||t?.title||t?.original_title||"")}function k2r(t={},e="tv"){return hA(e==="movie"?t?.release_date:t?.first_air_date)}function L2r(t,e,r){let n=rle(t?.cleanedTitle||t?.rawTitle||""),s=D2r(n,t,r),i=rle(dft(e,r)),a=cft(n,i),o=cft(s,i);return Math.max(a,o)}function B2r(t,e,r){let n=r==="tv"&&String(t?.seasonHintStrategy||"")==="title_suffix"&&Number.parseInt(String(t?.seasonNumber||""),10)>1;if(!t?.year)return .5;let s=k2r(e,r);if(!s)return n?.5:.2;let i=Math.abs(t.year-s);return n&&i>=2?.5:i===0?1:i===1?.7:i===2?.4:0}function M2r(t,e,r){if(r!=="tv"||!t?.seasonNumber)return .5;let n=Number.parseInt(Bce(dft(e,r)),10)||null;return n?n===t.seasonNumber?1:.2:.5}function W2r(t,e,r="tv"){let n=L2r(t,e,r),s=B2r(t,e,r),i=M2r(t,e,r),a=Math.min(Number(e?.popularity||0)/100,1),o=Math.min(Number(e?.vote_average||0)/10,1),c=Math.max(a,o),u=Number((n*.7+s*.2+i*.05+c*.05).toFixed(4));return{title:Number(n.toFixed(4)),year:Number(s.toFixed(4)),season:Number(i.toFixed(4)),heat:Number(c.toFixed(4)),score:u}}function fft(t,e=[],r="tv"){let n=(Array.isArray(e)?e:[]).map(i=>{let a=W2r(t,i,r);return{candidate:i,score:a.score,breakdown:a}}).sort((i,a)=>a.score-i.score),s=n[0]||null;return!s||s.score<.5?{status:"NO_MATCH",best:null,candidates:n.slice(0,3)}:s.score<.8?{status:"CANDIDATE",best:s,candidates:n.slice(0,3)}:{status:"MATCH",best:s,candidates:n.slice(0,3)}}function VM(t={},e=null,r=0){return nle(t,e).seasonNumber}var AA={BINDING:30*24*60*60*1e3,DETAIL:7*24*60*60*1e3,SEASON:7*24*60*60*1e3,NO_MATCH:24*60*60*1e3,FAILURE:10*60*1e3};function ile(t){let e=t.embyContext;return e.tmdbStore||(e.tmdbStore={memory:CM({max:1200}),pending:new Map}),e.tmdbStore}function sle(t=""){return`/embyTmdb/${Buffer.from(String(t||""),"utf8").toString("base64url")}`}function $2r(t,e=0){return{value:t,expireAt:e>0?Date.now()+e:0}}function F2r(t=null){return!!(t&&t.expireAt>0&&t.expireAt<=Date.now())}async function U2r(t,e){try{let r=await t.db?.getObjectDefault(sle(e),null);return!r||typeof r!="object"?null:F2r(r)?(t.db?.delete&&await t.db.delete(sle(e)).catch(()=>{}),null):r}catch{return null}}async function gA(t,e,r={}){let n=ile(t),s=n.memory.get(e);if(s!==void 0)return s;if(r.persist===!1)return null;let i=await U2r(t,e);if(!i)return null;let a=i.expireAt>0?Math.max(1e3,i.expireAt-Date.now()):0;return n.memory.set(e,i.value,a),i.value}async function FE(t,e,r,n=0,s={}){if(ile(t).memory.set(e,r,n),s.persist===!1)return r;try{t.db?.push&&await t.db.push(sle(e),$2r(r,n))}catch{}return r}async function ale(t,e,r,n,s={}){let i=await gA(t,e,s);if(i!==null)return i;let a=ile(t);if(a.pending.has(e))return a.pending.get(e);let o=(async()=>{try{let c=await gA(t,e,s);if(c!==null)return c;let u=await n();return u!=null?FE(t,e,u,r,s):null}finally{a.pending.delete(e)}})();return a.pending.set(e,o),o}function Du(t=""){return String(t||"").trim()}function q2r(t=""){let e=hA(t);return e?String(e):""}function yA(t={},e={}){let r=t&&typeof t=="object"?t:{},n=Du(e?.n),s=Du(e?.r),i=q2r(e?.y||e?.vod_year),a=Du(e?.u);return n&&(r.tmdbHintTitle=n),s&&(r.tmdbHintRemarks=s),i&&(r.tmdbHintYear=i),!Du(r.vod_name)&&n&&(r.vod_name=n),!Du(r.vod_remarks)&&s&&(r.vod_remarks=s),!Du(r.vod_year)&&i&&(r.vod_year=i),!Du(r.vod_pic)&&a&&(r.vod_pic=a),r}function j2r(t={}){let e=Du(t?.v);return e?yA({vod_id:e,vod_name:"",vod_pic:"",vod_remarks:"",vod_year:""},t):null}function Vn(t={}){let e={};return Object.entries(t).forEach(([r,n])=>{n!=null&&(typeof n=="string"&&!n.trim()||Array.isArray(n)&&n.length===0||!Array.isArray(n)&&typeof n=="object"&&Object.keys(n).length===0||(e[r]=n))}),e}function cle(t){let e=Number(t);return Number.isFinite(e)&&e>0?Number(e.toFixed(1)):void 0}function ule(t=""){let e=String(t||"").trim();return/^\d{4}-\d{2}-\d{2}$/.test(e)?`${e}T00:00:00.000Z`:void 0}function H2r(t){let e=Number(t);return Number.isFinite(e)&&e>0?Math.round(e*60*1e7):void 0}function Q2r(t=[]){return(Array.isArray(t)?t:[]).map(e=>String(e?.name||"").trim()).filter(Boolean)}function G2r(t=[]){return(Array.isArray(t)?t:[]).filter(e=>e?.name).map(e=>({Name:String(e.name),Id:String(e.id||e.name)}))}function V2r(t={},e="tv"){return e==="movie"?{name:String(t?.title||t?.original_title||"").trim(),originalTitle:String(t?.original_title||t?.title||"").trim()}:{name:String(t?.name||t?.original_name||"").trim(),originalTitle:String(t?.original_name||t?.name||"").trim()}}function z2r(t=""){return String(t||"").trim().toLowerCase()}function K2r(t={}){let e=Array.isArray(t?.images?.logos)?t.images.logos:[];if(!e.length)return[];let r=e.map((n,s)=>{let i=z2r(n?.iso_639_1),a=String(n?.file_path||"").trim(),o=Number(n?.vote_average||0),c=Number(n?.vote_count||0),u=Number(n?.width||0),l=i?i==="en"?2:3:1;return{index:s,filePath:a,voteAverage:Number.isFinite(o)?o:0,voteCount:Number.isFinite(c)?c:0,width:Number.isFinite(u)?u:0,languageScore:l}}).filter(n=>n.filePath);return r.sort((n,s)=>s.languageScore-n.languageScore||s.voteAverage-n.voteAverage||s.voteCount-n.voteCount||s.width-n.width||n.index-s.index),r}function zM(t={}){let e=K2r(t);return e.length&&e[0]?.filePath||""}function Y2r(t="",e="",r=0){let n=Vn({n:String(t||"").trim(),u:String(e||"").trim()||void 0,pid:Number(r||0)>0?String(r):void 0});return wn("img",n)}function J2r(t,e={},r={}){let n=String(e?.name||e?.original_name||"").trim();if(!n)return null;let s=p2(t,e?.profile_path||""),i=Number(e?.id||0),a=Y2r(n,s,i),o=String(r.role||"").trim(),c=String(r.type||"Actor").trim();return Vn({Name:n,Id:a,Role:o||void 0,Type:c||void 0,PrimaryImageTag:s?a:void 0,ImageTags:s?{Primary:a}:void 0})}function X2r(t={},e){let r=Array.isArray(t?.credits?.cast)?t.credits.cast:[],n=[],s=new Set,i=(o,c="")=>{if(!o)return;let u=String(c||`${o.Name}:${o.Role||""}`);s.has(u)||(s.add(u),n.push(o))};return[...r].map((o,c)=>({person:o,index:c,order:Number(o?.order??c),popularity:Number(o?.popularity||0)})).sort((o,c)=>o.order-c.order||c.popularity-o.popularity||o.index-c.index).slice(0,24).forEach(o=>{let c=Number(o.person?.id||0),u=String(o.person?.character||"").trim()||"\u6F14\u5458";i(J2r(e,o.person,{role:u,type:"Actor"}),c>0?`cast:${c}`:`cast:${o.person?.name||""}:${u}`)}),n.slice(0,24)}function Z2r(t={}){let e={};return t?.id&&(e.Tmdb=String(t.id)),t?.external_ids?.imdb_id&&(e.Imdb=String(t.external_ids.imdb_id)),t?.external_ids?.tvdb_id&&(e.Tvdb=String(t.external_ids.tvdb_id)),Object.keys(e).length>0?e:void 0}function pft(t=[]){let e=(Array.isArray(t)?t:[]).map(r=>({country:String(r?.iso_3166_1||"").trim().toUpperCase(),certification:String(r?.certification||r?.rating||"").trim()})).filter(r=>r.certification);for(let r of["US","CN","GB","HK","TW"]){let n=e.find(s=>s.country===r);if(n)return n.certification}return e[0]?.certification||void 0}function eRr(t={},e="tv"){if(e==="movie"){let r=[];return(Array.isArray(t?.release_dates?.results)?t.release_dates.results:[]).forEach(s=>{(Array.isArray(s?.release_dates)?s.release_dates:[]).forEach(a=>{r.push({iso_3166_1:s?.iso_3166_1,certification:a?.certification})})}),pft(r)}return pft(Array.isArray(t?.content_ratings?.results)?t.content_ratings.results:[])}function tRr(t,e){return`binding:${String(t?.spiderKey||"")}:${Number(t?.spiderType||3)}:${String(t?.apiBase||"")}:${String(e?.vod_id||"")}`}function rRr(t,e,r){return`detail:${String(t||"")}:${Number(e||0)}:${String(r||"zh-CN")}`}function nRr(t,e,r){return`season:${Number(t||0)}:${Number(e||0)}:${String(r||"zh-CN")}`}function sRr(t){return`no-match:v2:${String(t?.normalizedTitle||"")}:${String(t?.year||"")}:${String(t?.seasonNumber||"")}:${String(t?.seasonHintStrategy||"")}`}function hft(t){return`failure:${t}`}function tp(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function gft(t={},e="tv"){return e==="movie"?String(t?.title||t?.original_title||t?.name||t?.original_name||"").trim():String(t?.name||t?.original_name||t?.title||t?.original_title||"").trim()}function Aft(t={},e="tv"){return String(e==="movie"?t?.release_date||"":t?.first_air_date||"").trim()}function ole(t={}){let e=typeof t?.year=="number"&&Number.isFinite(t.year)?t.year:void 0,r=typeof t?.seasonNumber=="number"&&Number.isFinite(t.seasonNumber)?t.seasonNumber:void 0,n=String(t?.seasonHintStrategy||"").trim()||void 0;return Vn({rawTitle:String(t?.rawTitle||""),cleanedTitle:String(t?.cleanedTitle||""),normalizedTitle:String(t?.normalizedTitle||""),altTitle:String(t?.altTitle||""),year:e,seasonNumber:r,seasonHintStrategy:n})}function iRr(t=[],e="tv",r=3){return(Array.isArray(t)?t:[]).slice(0,Math.max(0,Number(r)||0)).map(n=>{let s=n?.candidate||{},i=n?.breakdown||{};return Vn({id:Number(s?.id||0)||void 0,title:gft(s,e),date:Aft(s,e),popularity:Number.isFinite(Number(s?.popularity))?Number(s.popularity):void 0,voteAverage:Number.isFinite(Number(s?.vote_average))?Number(s.vote_average):void 0,score:Number.isFinite(Number(n?.score))?Number(n.score):void 0,breakdown:Vn({title:Number.isFinite(Number(i?.title))?Number(i.title):void 0,year:Number.isFinite(Number(i?.year))?Number(i.year):void 0,season:Number.isFinite(Number(i?.season))?Number(i.season):void 0,heat:Number.isFinite(Number(i?.heat))?Number(i.heat):void 0})})})}function mft(t=null){if(!t?.candidate)return null;let e=t.candidate;return Vn({mediaType:String(t.mediaType||""),status:String(t.status||""),score:Number.isFinite(Number(t.score))?Number(t.score):void 0,candidate:Vn({id:Number(e?.id||0)||void 0,title:gft(e,t.mediaType||"tv"),date:Aft(e,t.mediaType||"tv")}),breakdown:Vn({title:Number.isFinite(Number(t?.breakdown?.title))?Number(t.breakdown.title):void 0,year:Number.isFinite(Number(t?.breakdown?.year))?Number(t.breakdown.year):void 0,season:Number.isFinite(Number(t?.breakdown?.season))?Number(t.breakdown.season):void 0,heat:Number.isFinite(Number(t?.breakdown?.heat))?Number(t.breakdown.heat):void 0})})}function aRr(t={},e={}){let r=String(e.preferredMediaType||"").trim().toLowerCase();return r==="tv"?e.allowFallback===!1?["tv"]:["tv","movie"]:r==="movie"?e.allowFallback===!1?["movie"]:["movie","tv"]:$E(t)==="Series"?e.allowFallback===!0?["tv","movie"]:["tv"]:["movie","tv"]}async function oRr(t,e,r){let n=[...new Set([e?.cleanedTitle,e?.rawTitle].map(c=>String(c||"").trim()).filter(Boolean))],s=new Map,i=[],o=r==="tv"&&Number.parseInt(String(e?.seasonNumber||""),10)>1&&String(e?.seasonHintStrategy||"")==="title_suffix"?null:e?.year;for(let c of n){let u=r==="movie"?await nft(t,c,e?.year):await rft(t,c,o),l=Array.isArray(u?.results)?u.results:[],d=0;if(l.forEach(f=>{let p=Number(f?.id||0);p>0&&!s.has(p)&&(s.set(p,f),d+=1)}),i.push(Vn({query:c,resultCount:l.length,acceptedCount:d,collectedCount:s.size})),s.size>=5)break}return{results:Array.from(s.values()),queryLogs:i}}async function UE(t,e,r,n={}){if(!mA(t)||!e?.spiderKey||!r?.vod_id)return null;let s={spiderKey:String(e?.spiderKey||""),spiderType:Number(e?.spiderType||3),vodId:String(r?.vod_id||"")},i=tRr(e,r),a=String(n.preferredMediaType||"").trim().toLowerCase(),o=await gA(t,i);if(o?.tmdbId&&o?.mediaType)return a&&n.allowFallback===!1&&o.mediaType!==a?(tp(t,"tmdb.match.binding.cache.reject",Vn({...s,cachedMediaType:String(o.mediaType||""),preferredMediaType:a})),null):(tp(t,"tmdb.match.binding.cache.hit",Vn({...s,mediaType:String(o.mediaType||""),tmdbId:Number(o.tmdbId||0)||void 0,score:Number.isFinite(Number(o.score))?Number(o.score):void 0})),o);let c=lft(r),u=typeof n.allowFallback=="boolean"?n.allowFallback:void 0;if(tp(t,"tmdb.match.input",Vn({...s,input:ole(c),preferredMediaType:a||void 0,allowFallback:u})),!c?.normalizedTitle)return tp(t,"tmdb.match.skip.invalid_input",Vn({...s,input:ole(c)})),null;let l=sRr(c),d=await gA(t,l);if(d)return tp(t,"tmdb.match.skip.no_match_cache",Vn({...s,status:String(d?.status||""),score:Number.isFinite(Number(d?.score))?Number(d.score):void 0})),null;let f=null;for(let m of aRr(r,n)){let{results:h,queryLogs:A}=await oRr(t,c,m),g=fft(c,h,m);if(tp(t,"tmdb.match.round",Vn({...s,mediaType:m,queryLogs:A,resultCount:h.length,status:g.status,bestScore:Number.isFinite(Number(g?.best?.score))?Number(g.best.score):void 0,topCandidates:iRr(g.candidates,m,3)})),g.best&&(!f||g.best.score>f.score)&&(f={mediaType:m,...g.best,status:g.status}),g.status==="MATCH"&&g.best?.candidate?.id){let b=g.best.candidate,y=Vn({mediaType:m,tmdbId:Number(b.id),score:g.best.score,matchedTitle:String(m==="movie"?b.title||b.original_title||"":b.name||b.original_name||""),matchedYear:m==="movie"?hA(b.release_date):hA(b.first_air_date),updatedAt:Date.now()});return await FE(t,i,y,AA.BINDING),tp(t,"tmdb.match.binding.set",Vn({...s,mediaType:m,tmdbId:Number(y.tmdbId||0)||void 0,score:Number.isFinite(Number(y.score))?Number(y.score):void 0,matchedTitle:String(y.matchedTitle||""),matchedYear:Number.isFinite(Number(y.matchedYear))?Number(y.matchedYear):void 0,best:mft({mediaType:m,...g.best,status:g.status})})),y}}let p={status:f?.score>=.5?"CANDIDATE":"NO_MATCH",score:Number(f?.score||0),checkedAt:Date.now()};return await FE(t,l,p,f?.score>=.5?15*60*1e3:AA.NO_MATCH),tp(t,"tmdb.match.no_match_set",Vn({...s,noMatch:p,best:mft(f),input:ole(c)})),null}async function yft(t,e={},r={}){try{if(!mA(t))return null;let n=Zl(e),s=j2r(e);return!n?.spiderKey||!s?.vod_id?null:Cft(t,{spiderRef:n,vod:s,options:r})}catch{return null}}async function qE(t,e){if(!e?.tmdbId||!e?.mediaType)return null;let r=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),n=rRr(e.mediaType,e.tmdbId,r),s=hft(n);if(await gA(t,s))return null;let i=await ale(t,n,AA.DETAIL,async()=>{let a=e.mediaType==="movie"?await ift(t,e.tmdbId):await sft(t,e.tmdbId);return a?.id?a:null});return i?.id?i:(await FE(t,s,{failedAt:Date.now()},AA.FAILURE),null)}async function cRr(t,e,r){if(!e?.tmdbId||e?.mediaType!=="tv")return null;let n=String(t.embyContext?.config?.tmdbLanguage||"zh-CN"),s=nRr(e.tmdbId,r,n),i=hft(s);if(await gA(t,i))return null;let a=await ale(t,s,AA.SEASON,async()=>{let o=await aft(t,e.tmdbId,r);return o?.season_number!=null?o:null});return a?.season_number!=null?a:(await FE(t,i,{failedAt:Date.now()},AA.FAILURE),null)}function uRr(t={},e=null){let r=[Du(t?.tmdbHintTitle||t?.vod_name),Du(t?.tmdbHintRemarks||t?.vod_remarks),Du(e?.flag)].filter(Boolean).join(" ");return/年番/i.test(r)}function lRr(t=""){let e=String(t||"").trim();if(!e)return null;let r=Number.parseInt(e,10);if(Number.isInteger(r)&&r>0)return r;let n=e.match(/(\d{1,4})/);if(!n?.[1])return null;let s=Number.parseInt(n[1],10);return Number.isInteger(s)&&s>0?s:null}function dRr(t=null){let r=(Array.isArray(t?.episodes)?t.episodes:[]).map(n=>lRr(n?.name)).filter(n=>Number.isInteger(n)&&n>0);return r.length?{count:r.length,min:Math.min(...r),max:Math.max(...r)}:{count:0,min:0,max:0}}function xft(t={}){return(Array.isArray(t?.seasons)?t.seasons:[]).map(e=>({seasonNumber:Number(e?.season_number||0),episodeCount:Number(e?.episode_count||0),name:String(e?.name||"").trim()})).filter(e=>Number.isInteger(e.seasonNumber)&&e.seasonNumber>0)}function fRr(t={},e={},r=null,n={seasonNumber:1,explicit:!1}){let s=xft(t),i=Number(n?.seasonNumber||1),a=Number.isInteger(i)&&i>0?i:1,o=!!n?.explicit,c=uRr(e,r),u=dRr(r),l=d=>{let f=Number(d||0);return!Number.isInteger(f)||f<=0?[]:s.filter(p=>p.episodeCount>=f).sort((p,m)=>m.seasonNumber-p.seasonNumber||m.episodeCount-p.episodeCount)};if(!s.length)return{seasonNumber:a,reason:"no_tmdb_seasons",explicit:o,yearFan:c,episodeStats:u,seasons:[]};if(o&&s.some(d=>d.seasonNumber===a))return{seasonNumber:a,reason:"explicit_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s};if(c){let d=l(u.max);return d.length?{seasonNumber:d[0].seasonNumber,reason:"yearfan_episode_cap",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((p,m)=>m.episodeCount-p.episodeCount||m.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"yearfan_largest_season",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(u.max>=6&&u.count>=u.max){let d=s.filter(f=>f.episodeCount===u.max);if(d.length===1)return{seasonNumber:d[0].seasonNumber,reason:"episode_count_exact_unique",explicit:o,yearFan:c,episodeStats:u,seasons:s}}if(!o&&u.max>=100){let d=l(u.max);if(d.length)return{seasonNumber:d[0].seasonNumber,reason:"high_episode_secondary",explicit:o,yearFan:c,episodeStats:u,seasons:s}}return s.some(d=>d.seasonNumber===a)?{seasonNumber:a,reason:o?"explicit_hint":"default_hint",explicit:o,yearFan:c,episodeStats:u,seasons:s}:{seasonNumber:[...s].sort((f,p)=>f.seasonNumber-p.seasonNumber)[0].seasonNumber,reason:"fallback_first_available",explicit:o,yearFan:c,episodeStats:u,seasons:s}}async function h2(t,e,r={},n=null,s=0,i=null){if(e?.mediaType!=="tv")return{seasonNumber:null,seasonDetail:null,detail:null};let a=i||await qE(t,e);if(!a)return{seasonNumber:null,seasonDetail:null,detail:null};let o=nle(r,n),c=fRr(a,r,n,o),u=Number(c?.seasonNumber||0);if(!Number.isInteger(u)||u<=0)return{seasonNumber:null,seasonDetail:null,detail:a};let l=await cRr(t,e,u);return tp(t,"tmdb.match.season_resolve",Vn({spiderKey:String(e?.spiderKey||""),tmdbId:Number(e?.tmdbId||0)||void 0,lineIndex:Number.isInteger(Number(s))?Number(s):void 0,chosenSeason:u,reason:String(c?.reason||""),explicitHint:c?.explicit===!0?!0:void 0,yearFanHint:c?.yearFan===!0?!0:void 0,episodeMax:Number(c?.episodeStats?.max||0)||void 0,seasonCandidates:Array.isArray(c?.seasons)?c.seasons.map(d=>Vn({seasonNumber:Number(d?.seasonNumber||0)||void 0,episodeCount:Number(d?.episodeCount||0)||void 0,name:String(d?.name||"")})):void 0})),{seasonNumber:u,seasonDetail:l&&l?.season_number!=null?l:null,detail:a}}async function bft(t,e,r={},n=null){let s=await h2(t,e,r,null,0,n);return{seasonNumber:s.seasonNumber,seasonDetail:s.seasonDetail}}function pRr(t,e,r,n=null){let s=e?.mediaType==="movie"?"movie":"tv",i=s==="tv"?xft(t).length:0,a=Number(n?.seasonNumber||0),o=n?.seasonDetail||null,c=s==="tv"&&Number.isInteger(a)&&a>0&&o?.season_number!=null,u=s==="movie"?t?.release_date:o?.air_date||t?.first_air_date,l=s==="movie"?Number(t?.runtime||0):Array.isArray(t?.episode_run_time)?t.episode_run_time.find(m=>Number(m)>0):0,d=V2r(t,s),f=zM(t),p=c?o?.poster_path||t?.backdrop_path||t?.poster_path||"":t?.backdrop_path||t?.poster_path||"";return Vn({Name:d.name||void 0,OriginalTitle:d.originalTitle||void 0,Overview:String(t?.overview||"").trim()||void 0,Taglines:t?.tagline?[String(t.tagline)]:void 0,Genres:Q2r(t?.genres),GenreItems:G2r(t?.genres),People:X2r(t,r),ProviderIds:Z2r(t),CommunityRating:cle(t?.vote_average),RunTimeTicks:H2r(l),OfficialRating:eRr(t,s),PremiereDate:ule(u),ProductionYear:hA(u)||void 0,SeasonCount:i>0?i:void 0,ChildCount:i>0?i:void 0,BackdropImageTags:p?["tmdb"]:void 0,ImageTags:f?{Logo:"tmdb"}:void 0})}function mRr(t,e){return Vn({Overview:String(t?.overview||"").trim()||void 0,PremiereDate:ule(t?.air_date),CommunityRating:cle(t?.vote_average)})}function hRr(t,e,r,n){return Vn({Name:String(e?.name||"").trim()||void 0,Overview:String(e?.overview||"").trim()||void 0,CommunityRating:cle(e?.vote_average),PremiereDate:ule(e?.air_date),BackdropImageTags:e?.still_path?["tmdb"]:void 0})}function Eft(t,e,r=-1){let n=Array.isArray(t?.episodes)?t.episodes:[],s=n.find(i=>Number(i?.episode_number||0)===Number(e||0));return s||(r>=0&&r<n.length?n[r]:null)}function _ft(t,e,r){let n=fA(t,Number(e||0)+1),s=String(t||"").trim(),i=Number.parseInt(s,10);if(/^\d{3,4}$/.test(s)&&Number.isInteger(i)&&r>0){let a=Math.floor(i/100),o=i%100;if(a===r&&o>0)return o}return n}async function Sft(t,e={}){if(!mA(t))return null;let r=await UE(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await h2(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),null);return!n?.seasonDetail||!n?.seasonNumber?null:{seasonNumber:n.seasonNumber,seasonDetail:n.seasonDetail}}function vft(t,e={}){if(!t?.seasonDetail||!t?.seasonNumber)return null;let r=_ft(e?.episode?.name,e?.episodeIndex,t.seasonNumber),n=Eft(t.seasonDetail,r,Number(e?.episodeIndex||0));return n?hRr(t.seasonDetail,n,t.seasonNumber,r):null}async function gRr(t,e){let r=e?.payload||{},n=Zl(r),s=String(r.v||"");if(!n?.spiderKey||!s)return null;let i=await Oc(t,n,s).catch(()=>null),a=yA({vod_id:s,vod_name:String(r.n||""),vod_pic:String(r.u||""),vod_remarks:String(r.r||""),vod_year:String(r.y||"")},r),o=Pc(i)||a;return yA(o,r),!String(o?.vod_name||"").trim()&&r?.n&&(o.vod_name=String(r.n||"").trim()),!String(o?.vod_pic||"").trim()&&r?.u&&(o.vod_pic=String(r.u||"").trim()),{spiderRef:n,vod:o,lines:ho(o?.vod_play_from,o?.vod_play_url)}}function ARr(t,e="primary",r=null){let n=String(e||"primary").trim().toLowerCase(),s=r?.seasonDetail||null,i=String(s?.poster_path||"").trim();return n==="logo"?zM(t):["backdrop","thumb","banner"].includes(n)?i||t?.backdrop_path||t?.poster_path||"":i||t?.poster_path||t?.backdrop_path||""}function yRr(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?zM(t):["backdrop","thumb","banner"].includes(n)?t?.backdrop_path||e?.poster_path||t?.poster_path||"":e?.poster_path||t?.poster_path||t?.backdrop_path||""}function xRr(t,e,r="primary"){let n=String(r||"primary").trim().toLowerCase();return n==="logo"?zM(t):["backdrop","thumb","banner"].includes(n)?e?.still_path||t?.backdrop_path||t?.poster_path||"":e?.still_path||t?.poster_path||t?.backdrop_path||""}async function Cft(t,e={}){try{if(!mA(t))return null;let r=await UE(t,e?.spiderRef,e?.vod,e?.options||{});if(!r)return null;let n=await qE(t,r);if(!n)return null;let s=await bft(t,r,e?.vod||{},n);return pRr(n,r,t,s)}catch{return null}}async function bRr(t,e={}){try{if(!mA(t))return null;let r=await UE(t,e?.spiderRef,e?.vod,{preferredMediaType:"tv",allowFallback:!1});if(!r||r.mediaType!=="tv")return null;let n=await qE(t,r);if(!n)return null;let s=await h2(t,r,e?.vod||{},e?.line||null,Number(e?.lineIndex||0),n);return s?.seasonDetail?mRr(s.seasonDetail,s.seasonNumber):null}catch{return null}}async function g2(t,e={}){try{let r=await Sft(t,e);return r?vft(r,e):null}catch{return null}}async function KM(t,e={}){let r=Array.isArray(e?.episodes)?e.episodes:[];if(!r.length)return[];try{let n=await Sft(t,e);if(!n)return r.map(()=>null);let s=Number(e?.episodeOffset||0);return r.map((i,a)=>vft(n,{episode:i,episodeIndex:s+a}))}catch{return r.map(()=>null)}}async function YM(t,e,r={}){return e==="vod"?Cft(t,r):e==="season"?bRr(t,r):e==="episode"?g2(t,r):null}async function Ift(t,e,r="Primary"){try{if(!mA(t))return"";if(e?.type==="img")return String(e?.payload?.u||"");let n=await gRr(t,e);if(!n)return"";let{spiderRef:s,vod:i,lines:a}=n,o=String(r||"Primary").trim().toLowerCase();if(e?.type==="vod"){let c=await UE(t,s,i,{});if(!c)return"";let u=await qE(t,c);if(!u)return"";let l=await bft(t,c,i,u);return p2(t,ARr(u,o,l||null))}if(e?.type==="sea"){let c=await UE(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await qE(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),f=(await h2(t,c,i,a?.[l]||null,l,u))?.seasonDetail||null;return u&&f?p2(t,yRr(u,f,o)):""}if(e?.type==="ep"||e?.type==="media"){let c=await UE(t,s,i,{preferredMediaType:"tv",allowFallback:!1});if(!c||c.mediaType!=="tv")return"";let u=await qE(t,c);if(!u)return"";let l=Number(e?.payload?.l||0),d=Number(e?.payload?.e||0),f=a?.[l],p=f?.episodes?.[d],m=await h2(t,c,i,f||null,l,u),h=Number(m?.seasonNumber||0),A=m?.seasonDetail||null;if(!A)return"";let g=_ft(p?.name,d,h),b=Eft(A,g,d);return b?p2(t,xRr(u,b,o)):""}return""}catch{return""}}var Oft=!0,ERr=new Set(["tgchannel","tgsou","pansou","panta"]),_Rr=!1,SRr=8e3;function vRr(t){return ERr.has(String(t||""))}function CRr(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function IRr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function Tft(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function JM(t,e){let r=wn("lib",{k:t.spiderKey,t:t.spiderType,...t.siteName?{n:t.siteName}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:t.siteName,Id:r,ServerId:e,IsFolder:!0,Type:"CollectionFolder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:r},BackdropImageTags:[],UserData:ss()}}function TRr(t,e,r,n){let s=String(e.type_name||e.type_id||""),i=wn("cat",{k:t.spiderKey,t:t.spiderType,c:String(e.type_id),...s?{n:s}:{},...t.apiBase?{a:t.apiBase}:{}});return{Name:s,Id:i,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:i},BackdropImageTags:[],UserData:ss()}}var Pft=new Set(["movie","series","video","episode","musicvideo"]);function wft(t=""){return String(t||"").split(",").map(e=>e.trim().toLowerCase()).filter(Boolean)}function wRr(t=[],e=!1){return e?!0:t.some(r=>Pft.has(r))}function RRr(t=[]){return t.some(e=>Pft.has(e))}function NRr(t=[],e=!1,r=""){return e?!1:t.includes("folder")?!0:/(^|,)isfolder(,|$)/i.test(String(r||""))}function ORr(t,e=[]){if(!e.length)return!0;let r=String(t?.Type||"").toLowerCase();return!!(e.includes(r)||e.includes("video")&&["movie","video","episode"].includes(r)||e.includes("folder")&&t?.IsFolder)}function y2(t=[],e=[]){return e.length?t.filter(r=>ORr(r,e)):t}function A2(t,e,r){return!r||!r.Id||(r.UserData=Fo(t,e,String(r.Id||""),r.UserData||{})),r}function Rft(t=[]){let e=[],r=t.filter(s=>Array.isArray(s)&&s.length),n=r.reduce((s,i)=>Math.max(s,i.length),0);for(let s=0;s<n;s+=1)r.forEach(i=>{i[s]&&e.push(i[s])});return e}function Nft(t){let e=null,r=new Promise((n,s)=>{e=setTimeout(()=>s(new Error("timeout")),SRr)});return Promise.race([t,r]).finally(()=>{e&&clearTimeout(e)})}async function e6(t,e,r,n,s,i,a,o=[],c=null){let u=Math.max(0,Number(n)||0),l=Math.max(1,Number(s)||1),d=await NE(t,e,r,1,{},c).catch(()=>null),f=Array.isArray(d?.list)?d.list:[],p=Number(d?.limit||0),m=Math.max(1,p||f.length||l),h=Math.floor(u/m)+1,A=u%m,g=[],b=h,y=!1,x=!1,v=Number(d?.pagecount||0),C=Number(d?.total||0),R=h+Math.max(3,Math.ceil((A+l)/m)+2);for(;g.length<l&&b<=R;){let M=b===1?d:await NE(t,e,r,b,{},c).catch(()=>null),k=Array.isArray(M?.list)?M.list:[],B=y2(k.map(ue=>r6(e,ue,i,a)),o),Z=Number(M?.pagecount||0);Z>0&&(v=Math.max(v,Z));let W=Number(M?.total||0);W>0&&(C=Math.max(C,W));let F=b===h?A:0,V=B.slice(F),j=l-g.length;g.push(...V.slice(0,j));let J=Math.min(V.length,j);y=F+J>=B.length;let se=B.length===0,oe=v>0&&b>=v&&y;if(se||oe){x=!0;break}if(g.length>=l)break;b+=1}let w=Number.isFinite(C)&&C>0&&C<9e3,N=g.length>=l;N&&x&&(N=!1),N&&v>0&&b>=v&&y&&(N=!1),N&&w&&u+g.length>=C&&(N=!1);let P=u+g.length+(N?1:0),L=P;return w&&(L=Math.max(C,u+g.length),N&&(L=Math.max(L,P))),{rows:g,totalRecordCount:L}}async function lle(t,e,r,n,s=[],i=0,a=16,o=null){let c=await Jw(t,e,o).catch(()=>null),u=Array.isArray(c?.class)?c.class.filter(f=>String(f?.type_id||"").trim()):[];if(u.length){let f=String(u[0].type_id||"");if(f)return e6(t,e,f,i,a,r,n,s,o)}let l=Array.isArray(c?.list)?c.list:[],d=y2(l.map(f=>r6(e,f,r,n)),s);return{rows:Ia(d,i,a),totalRecordCount:d.length}}function Dft(t={}){return String(t?.siteName||t?.spiderKey||"").trim()}function kft(t={}){let e=String(t?.vod_tag||"").trim().toLowerCase(),r=t?.cate&&typeof t.cate=="object"?t.cate:null,n=String(r?.id||"").trim(),s=String(t?.vod_id||"").trim();return n||(e==="folder"&&s?s:"")}function PRr(t,e,r,n,s={}){let i=!!s?.includeSourcePrefix,a=kft(e),o=String(e.vod_pic||"").trim(),c=String(e.vod_remarks||"").trim(),u=String(e.vod_year||"").trim(),l=Dft(t),d=String(e.vod_name||e?.cate?.name||a||"").trim(),f=d||"\u672A\u547D\u540D\u76EE\u5F55",p={k:t.spiderKey,t:t.spiderType,c:a,...t.apiBase?{a:t.apiBase}:{}};o&&(p.u=o),d&&(p.n=d),c&&(p.r=c),u&&(p.y=u);let m=wn("cat",p);return{Name:i&&l?`${l} \xB7 ${f}`:f,Id:m,ParentId:r,ServerId:n,IsFolder:!0,Type:"Folder",Overview:c,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:m},BackdropImageTags:[],UserData:ss()}}function r6(t,e,r,n,s={}){if(kft(e))return PRr(t,e,r,n,s);let i=!!s?.includeSourcePrefix,a=String(e.vod_pic||""),o=String(e.vod_remarks||"").trim(),c=String(e.vod_year||"").trim(),u=Dft(t),l=String(e.vod_name||"").trim(),d=l||"\u672A\u547D\u540D",f={k:t.spiderKey,t:t.spiderType,v:String(e.vod_id),...t.apiBase?{a:t.apiBase}:{}};a&&(f.u=a),l&&(f.n=l),o&&(f.r=o),c&&(f.y=c);let p=wn("vod",f),h=Oft?"Series":$E(e);return{Name:i&&u?`${u} \xB7 ${d}`:d,Id:p,ParentId:r,ServerId:n,IsFolder:h==="Series",Type:h,MediaType:"Video",Overview:String(e.vod_remarks||""),PrimaryImageAspectRatio:.6667,ImageTags:{Primary:p},BackdropImageTags:[],UserData:ss()}}async function DRr(t,e,r,n,s,i){let a=String(r?.vod_name||"").trim(),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;f<n.length;f+=1){let p=n[f],m={k:e.spiderKey,t:e.spiderType,v:String(r.vod_id),l:f,...e.apiBase?{a:e.apiBase}:{}};a&&(m.n=a),o&&(m.u=o),c&&(m.r=c),u&&(m.y=u);let h=wn("sea",m),A={Name:p.flag||`\u7EBF\u8DEF${f+1}`,Id:h,ParentId:s,ServerId:i,IsFolder:!0,Type:"Season",IndexNumber:f+1,SeriesId:s,SeriesName:a,ChildCount:p.episodes.length,ImageTags:{Primary:h},BackdropImageTags:[],UserData:ss()},b=`s${VM(r,p,f)}`,y=d.get(b);y===void 0&&(y=await YM(t,"season",{spiderRef:e,vod:r,line:p,lineIndex:f})||null,d.set(b,y)),y&&Object.assign(A,y),l.push(A)}return l}async function kRr(t,e,r,n,s,i,a,o){let c=s[i];if(!c)return[];let u=[],l=String(n?.vod_name||"").trim(),d=String(n?.vod_pic||"").trim(),f=String(n?.tmdbHintRemarks||n?.vod_remarks||"").trim(),p=String(n?.tmdbHintYear||n?.vod_year||"").trim(),m=Array.isArray(c?.episodes)?c.episodes:[],h=await KM(t,{spiderRef:r,vod:n,line:c,lineIndex:i,episodes:m,episodeOffset:0});for(let A=0;A<m.length;A+=1){let g=m[A],b=fA(g?.name,A+1),y={k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:i,e:A,f:c.flag,p:g.playId,...r.apiBase?{a:r.apiBase}:{}};l&&(y.n=l),d&&(y.u=d),f&&(y.r=f),p&&(y.y=p);let x=wn("ep",y),v=await fle(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:String(n.vod_id),l:i,e:A,f:c.flag,p:g.playId},String(c.flag||`\u7EBF\u8DEF${i+1}`));u.push({Name:g.name||`\u7B2C${A+1}\u96C6`,Id:x,ParentId:a,ServerId:o,IsFolder:!1,Type:"Episode",MediaType:"Video",SeriesName:String(n.vod_name||""),IndexNumber:b,ParentIndexNumber:i+1,CanPlay:!0,PrimaryImageAspectRatio:.6667,ImageTags:{Primary:x},BackdropImageTags:[],UserData:ss(),MediaSources:[v],...h[A]||{}})}return u}function jE(t={}){return{spiderKey:String(t.k||""),spiderType:Number(t.t||3),apiBase:String(t.a||"")}}function XM(t={}){return{Overview:"",Taglines:[],Genres:[],GenreItems:[],People:[],Tags:[],ProviderIds:{},ProductionLocations:[],CommunityRating:0,CriticRating:0,RunTimeTicks:0,OfficialRating:"",...t}}function t6(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function dle(t={},e=""){let r=ho(t.vod_play_from,t.vod_play_url).filter(i=>Array.isArray(i?.episodes)&&i.episodes.length>0),n=r.reduce((i,a)=>Math.max(i,a.episodes.length),0),s=Oft?r.length>0:r.length>1||n>1||$E(t)==="Series";return{lines:r,isSeries:s}}function LRr(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function BRr(t,e,r="mkv"){return`${LRr(t)}/emby${Lft(t,e,r,!0)}`}function Lft(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function fle(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=vRr(r?.k)?"m3u8":"mkv",a=Tft(String(r?.p||""),i),o=BRr(e,s,a),c=Lft(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(_Rr&&CRr(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await am(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=um(m||{},String(n||""));h.url&&IRr(h.url)&&(a=Tft(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function MRr(t,e,r,n,s=[]){let i=String(n?.vod_id||"");return!r?.spiderKey||!i?[]:(await Promise.all(s.map(async(o,c)=>{let u=o?.episodes?.[0];return u?.playId?fle(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:i,l:c,e:0,f:String(o.flag||""),p:String(u.playId)},String(o.flag||`\u7EBF\u8DEF${c+1}`)):null}))).filter(Boolean)}function WRr(t={},e={}){let r=String(t?.vod_name||"").trim();if(r)return r;let n=String(e?.n||"").trim();if(n)return n;let s=ho(t?.vod_play_from,t?.vod_play_url),i=String(s?.[0]?.episodes?.[0]?.name||"").trim();if(i)return i;let a=String(t?.vod_remarks||"").trim();return a||"\u672A\u547D\u540D"}async function ZM(t,e,r=null){let n=jE(e);if(!n.spiderKey||!e.v)return null;let s=await Oc(t,n,String(e.v),r).catch(()=>null),i=Pc(s);if(!i)return null;yA(i,e),!String(i?.vod_pic||"").trim()&&e?.u&&(i.vod_pic=String(e.u||"").trim()),i.vod_name=WRr(i,e);let{lines:a,isSeries:o}=dle(i,n.spiderKey);return t6(t,"vod.source",{spiderKey:n.spiderKey,spiderType:n.spiderType,vodId:String(i.vod_id||e.v||""),vodName:String(i.vod_name||""),vodRemarks:String(i.vod_remarks||""),guessVideoType:$E(i),isSeriesByRule:o,lineCount:a.length,episodeCountPerLine:a.map(c=>c.episodes.length).slice(0,10)}),{spiderRef:n,vod:i}}async function ple(t){t.get("/:userId",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext,r=Ws();return{Name:e.user.name,ServerId:e.config.serverId,Id:e.user.id,LastActivityDate:r,LastLoginDate:r}}),t.get("/:userId/Views",{preHandler:t.embyRequireAuth},async()=>{let e=t.embyContext.config.serverId,r=await Xl(t);return Ut(r.map(n=>JM(n,e)))}),t.get("/:userId/Items/Resume",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=Number(Xr(r,["StartIndex","startindex"],0)),s=Pu(Xr(r,["Limit","limit"],50),50),i=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),a=Ydt(t,i,t.embyContext.config.serverId);return Ut(Ia(a,n,s),a.length)}),t.get("/:userId/Items/Latest",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Xr(r,["ParentId","parentid"],"")),a=Pu(Xr(r,["Limit","limit"],16),16),o=wft(Xr(r,["IncludeItemTypes","includeitemtypes"],"")),c=String(Xr(r,["MediaTypes","mediatypes"],"")).toLowerCase();!o.length&&c.includes("video")&&(o=["movie","series","video"]);let u=await Xl(t),l=$s(i);if(l?.type==="lib"){let h=jE(l.payload),A=aA(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await lle(t,A,i,n,o,0,a,e);return Fs(t,s,g.rows)}if(l?.type==="cat"){let h=jE(l.payload),A=aA(u,h.spiderKey,h.spiderType,h.apiBase)||{siteName:h.spiderKey,spiderKey:h.spiderKey,spiderType:h.spiderType,apiBase:h.apiBase},g=await e6(t,A,String(l.payload.c||""),0,a,i,n,o,e);return Fs(t,s,g.rows)}let d=Math.min(Math.max(a,6),20),p=(await Promise.allSettled(u.map(h=>Nft(lle(t,h,JM(h,n).Id,n,o,0,d,e))))).filter(h=>h.status==="fulfilled").map(h=>h.value.rows),m=Rft(p).slice(0,a);return Fs(t,s,m)}),t.get("/:userId/Items",{preHandler:t.embyRequireAuth},async e=>{let r=e.query||{},n=t.embyContext.config.serverId,s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id),i=String(Xr(r,["SortBy","sortby"],""));if(i.includes("IsFavoriteOrLiked"))return Ut([]);let a=String(Xr(r,["ParentId","parentid"],"")),o=String(Xr(r,["SearchTerm","searchterm","NameStartsWith","namestartswith"],"")).trim(),c=Number(Xr(r,["StartIndex","startindex"],0)),u=Pu(Xr(r,["Limit","limit"],60),60),l=Number(Xr(r,["Page","page"],Math.floor(Math.max(0,c)/u)+1))||1,d=wft(Xr(r,["IncludeItemTypes","includeitemtypes"],"")),f=String(Xr(r,["Recursive","recursive"],"")).trim().toLowerCase()==="true",p=String(Xr(r,["MediaTypes","mediatypes"],"")).toLowerCase(),m=await Xl(t);if(o){let g=t.embyContext?.config?.searchSourcePrefix!==!1,b=[];await Promise.allSettled(m.map(async x=>{try{let v=await Promise.race([ylt(t,x,o,l),new Promise((R,w)=>setTimeout(()=>w(new Error("timeout")),8e3))]);(Array.isArray(v?.list)?v.list:[]).forEach(R=>b.push(r6(x,R,"0",n,{includeSourcePrefix:g})))}catch{}}));let y=Fs(t,s,y2(b,d));return Ut(Ia(y,c,u),y.length)}if(!a&&f&&(RRr(d)||p.includes("video"))){let A=d.length?d:["movie","series","video"],g=Math.min(Math.max(u,6),20),y=(await Promise.allSettled(m.map(v=>Nft(lle(t,v,JM(v,n).Id,n,A,0,g,e))))).filter(v=>v.status==="fulfilled").map(v=>v.value.rows),x=Fs(t,s,Rft(y));return Ut(Ia(x,c,u),x.length)}if(!a){let A=Fs(t,s,m.map(g=>JM(g,n)));return Ut(Ia(A,c,u),A.length)}let h=$s(a);if(!h)return Ut([]);if(h.type==="lib"){let A=jE(h.payload),g=aA(m,A.spiderKey,A.spiderType,A.apiBase)||{siteName:A.spiderKey,spiderKey:A.spiderKey,spiderType:A.spiderType,apiBase:A.apiBase},b=await Jw(t,g,e).catch(()=>null),y=Array.isArray(b?.class)?b.class.filter(R=>String(R?.type_id||"").trim()):[];if(y.length&&(NRr(d,f,i)||!wRr(d,f))){let R=y.map(N=>TRr(g,N,a,n)),w=Fs(t,s,y2(R,d));return Ut(Ia(w,c,u),w.length)}if(y.length){let R=String(y[0].type_id||"");if(R){let w=await e6(t,g,R,c,u,a,n,d,e);return Fs(t,s,w.rows),Ut(w.rows,w.totalRecordCount)}}let v=(Array.isArray(b?.list)?b.list:[]).map(R=>r6(g,R,a,n)),C=Fs(t,s,y2(v,d));return Ut(Ia(C,c,u),C.length)}if(h.type==="cat"){let A=jE(h.payload),g=aA(m,A.spiderKey,A.spiderType,A.apiBase)||{siteName:A.spiderKey,spiderKey:A.spiderKey,spiderType:A.spiderType,apiBase:A.apiBase},b=String(h.payload.c||""),y=await e6(t,g,b,c,u,a,n,d,e);return Fs(t,s,y.rows),Ut(y.rows,y.totalRecordCount)}if(h.type==="vod"){let A=await ZM(t,h.payload,e);if(!A)return Ut([]);let{spiderRef:g,vod:b}=A,{lines:y,isSeries:x}=dle(b,g.spiderKey);if(!y.length)return Ut([]);if(x){let v=await DRr(t,g,b,y,a,n);return Fs(t,s,v),Ut(Ia(v,c,u),v.length)}return Ut([])}if(h.type==="sea"){let A=await ZM(t,h.payload,e);if(!A)return Ut([]);let{spiderRef:g,vod:b}=A,y=ho(b.vod_play_from,b.vod_play_url);if(!y.length)return Ut([]);let x=Number(h.payload.l||0),v=await kRr(t,e,g,b,y,x,a,n);return Fs(t,s,v),Ut(Ia(v,c,u),v.length)}return Ut([])}),t.get("/:userId/Items/:itemId",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=$s(e.params.itemId);if(!n)return r.code(404),{};let s=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);if(n.type==="ep"){let i=await ZM(t,n.payload,e),a=String(i?.vod?.vod_name||"\u64AD\u653E"),o=Number(n?.payload?.l||0),c=Number(n?.payload?.e||0),u=ho(i?.vod?.vod_play_from,i?.vod?.vod_play_url),l=u?.[o]?.episodes?.[c]?.name||"",d=u?.[o]||null,f=d?.episodes?.[c]||null,p=fA(l,c+1),m=wn("vod",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),h=wn("sea",{k:String(n?.payload?.k||""),t:Number(n?.payload?.t||3),v:String(n?.payload?.v||""),l:o,...n?.payload?.a?{a:String(n.payload.a||"")}:{},...n?.payload?.n?{n:String(n.payload.n||"")}:{},...n?.payload?.u?{u:String(n.payload.u||"")}:{},...n?.payload?.r?{r:String(n.payload.r||"")}:{},...n?.payload?.y?{y:String(n.payload.y||"")}:{}}),A=n.payload?.k&&n.payload?.v&&n.payload?.f&&n.payload?.p?[await fle(t,e,{k:String(n.payload.k||""),t:Number(n.payload.t||3),v:String(n.payload.v||""),l:Number(n.payload.l||0),e:Number(n.payload.e||0),f:String(n.payload.f||""),p:String(n.payload.p||""),...n.payload.a?{a:String(n.payload.a||"")}:{}},String(n.payload.f||"\u9ED8\u8BA4"))]:[];return t6(t,"item.detail.ep",{itemId:e.params.itemId,sourceType:n.type,vodName:String(i?.vod?.vod_name||""),mediaSourceCount:A.length,canPlay:!0}),A2(t,s,{Name:a,Id:e.params.itemId,Type:"Episode",IsFolder:!1,MediaType:"Video",CanPlay:!0,SeriesId:m,SeriesName:a,SeasonId:h,SeasonName:String(n?.payload?.f||`\u7EBF\u8DEF${o+1}`),IndexNumber:p,ParentIndexNumber:o+1,DateCreated:Ws(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Fo(t,s,e.params.itemId),...XM(),...f?await g2(t,{spiderRef:jE(n.payload),vod:i?.vod||{},line:d,lineIndex:o,episode:f,episodeIndex:c})||{}:{},MediaSources:A})}if(n.type==="sea"){let i=Number(n?.payload?.l||0);return A2(t,s,{Name:`\u7EBF\u8DEF${i+1}`,Id:e.params.itemId,Type:"Season",IsFolder:!0,IndexNumber:i+1,DateCreated:Ws(),ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Fo(t,s,e.params.itemId),...XM()})}if(n.type==="cat"){let i=String(n.payload?.n||n.payload?.c||n.payload?.k||"\u76EE\u5F55");return A2(t,s,{Name:i,Id:e.params.itemId,Type:"Folder",IsFolder:!0,ServerId:t.embyContext.config.serverId,PrimaryImageAspectRatio:1.7778,ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Fo(t,s,e.params.itemId),...XM({Overview:String(n.payload?.r||"")})})}if(n.type==="vod"){let i=yft(t,n.payload).catch(()=>null),a=await ZM(t,n.payload,e);if(!a)return r.code(404),{};let{lines:o,isSeries:c}=dle(a.vod,a.spiderRef.spiderKey),u=c?"Series":"Movie",[l,d]=await Promise.all([MRr(t,e,a.spiderRef,a.vod,o),i]),f=d&&typeof d=="object"?{...d}:{},p={Primary:e.params.itemId,...f.ImageTags&&typeof f.ImageTags=="object"?f.ImageTags:{}};delete f.ImageTags;let m=c?[]:l,h=c?l.length>0:m.length>0;return t6(t,"item.detail.vod",{itemId:e.params.itemId,spiderKey:a.spiderRef.spiderKey,spiderType:a.spiderRef.spiderType,vodId:String(a.vod.vod_id||""),vodName:String(a.vod.vod_name||""),type:u,isFolder:c,canPlay:h,lineCount:o.length,mediaSourceCount:m.length,firstMediaSource:m[0]?{name:m[0].Name,path:m[0].Path,id:m[0].Id}:null}),A2(t,s,{Name:String(a.vod.vod_name||""),Id:e.params.itemId,IsFolder:c,Type:u,MediaType:"Video",CollectionType:c?"tvshows":void 0,CanPlay:h,DateCreated:Ws(),PrimaryImageAspectRatio:.6667,ProductionYear:Number(a.vod.vod_year||0)||void 0,ImageTags:p,BackdropImageTags:[],UserData:Fo(t,s,e.params.itemId),ChildCount:c?o.length>1?o.length:o[0]?.episodes?.length||0:void 0,SeasonCount:c?o.length:void 0,RecursiveItemCount:c?o.reduce((A,g)=>A+(g?.episodes?.length||0),0):void 0,...XM({Overview:String(a.vod.vod_content||"")}),...f,MediaSources:m})}return A2(t,s,{Name:String(n.payload?.k||""),Id:e.params.itemId,IsFolder:!0,Type:"Folder",ImageTags:{Primary:e.params.itemId},BackdropImageTags:[],UserData:Fo(t,s,e.params.itemId)})}),t.get("/:userId/Items/:itemId/LocalTrailers",{preHandler:t.embyRequireAuth},async()=>[]),t.get("/:userId/Items/:itemId/SpecialFeatures",{preHandler:t.embyRequireAuth},async()=>[]),t.all("/:userId/Items/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=new URLSearchParams,s=e.query||{};Object.keys(s).forEach(d=>{let f=s[d];f!=null&&n.set(d,String(f))});let i=n.toString(),a=`/emby/Items/${encodeURIComponent(String(e.params.itemId||""))}/PlaybackInfo${i?`?${i}`:""}`;t6(t,"playback.alias",{from:e.raw.url,to:a,method:e.method});let o={};e.embyToken&&(o["x-emby-token"]=e.embyToken);let c=e.method==="POST"?e.body||{}:void 0,u=await t.inject({method:e.method,url:a,headers:o,payload:c});r.code(u.statusCode);let l=u.headers?.["content-type"];if(l&&r.header("content-type",l),!u.body)return"";if(String(l||"").includes("application/json"))try{return JSON.parse(u.body)}catch{return u.body}return u.body}),t.post("/:userId/Items/:itemId/HideFromResume",{preHandler:t.embyRequireAuth},async e=>{let r=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return Kdt(t,r,String(e.params.itemId||""))}),t.all("/:userId/FavoriteItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return zdt(t,n,String(e.params.itemId||""),e.method==="POST")}),t.all("/:userId/PlayedItems/:itemId/:isDelete?",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["POST","DELETE"].includes(e.method))return r.code(405),"";let n=e.embyUser?.Id||String(e.params.userId||t.embyContext.user.id);return Vdt(t,n,String(e.params.itemId||""),e.method==="POST")})}var $Rr=30*60*1e3,HE=16/9,x2=960,FRr=1920,URr=360,qRr=9,qft=24,jRr=12e3,gle=9e3,Bft=5*1024*1024,Mft=80,Wft=24,$ft=[["#556b2f","#bed98a"],["#5b3a82","#b37bd9"],["#235f73","#8fd2dc"],["#7a3341","#d98498"],["#2f5c43","#9ac78d"],["#6f4a2f","#d39a5d"],["#354f7d","#91aee6"],["#73395f","#cb87af"]],mle=null;function hle(t=""){return String(t||"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function jft(t,e,r){return Math.max(e,Math.min(r,t))}function HRr(t=""){let e=2166136261,r=String(t||"");for(let n=0;n<r.length;n+=1)e^=r.charCodeAt(n),e=Math.imul(e,16777619);return e>>>0}function Hft(t){return jft(Math.round(Number(t)||0),0,255)}function Fft(t=[]){return`#${t.slice(0,3).map(e=>Hft(e).toString(16).padStart(2,"0")).join("")}`}function Uft(t=[],e=[],r=.5){return[0,1,2].map(n=>Hft((t[n]||0)*(1-r)+(e[n]||0)*r))}function QRr(t={}){return{spiderKey:String(t.k||t.spiderKey||""),spiderType:Number(t.t||t.spiderType||3),apiBase:String(t.a||t.apiBase||"")}}function Ale(t,e,r=null){let n=null,s=new Promise(i=>{n=setTimeout(()=>i(r),e)});return Promise.race([t,s]).finally(()=>{n&&clearTimeout(n)})}function b2(t=[]){let e=new Set,r=[];for(let n of t){let s=String(n||"").trim();!s||e.has(s)||(e.add(s),r.push(s))}return r}function Qft(t=""){let e=String(t||"").trim();if(!e)return"";try{let r=new URL(e);return["http:","https:"].includes(r.protocol)?r.toString():""}catch{return""}}function GRr(t="",e="\u5A92\u4F53\u5E93"){return String(t||"").trim().replace(/^(?:「[^」]*」\s*)+/,"").trim()||e}function yle(t=[]){return b2((Array.isArray(t)?t:[]).map(e=>Qft(e?.vod_pic)).filter(Boolean))}async function VRr(t,e={}){let r=QRr(e);if(!r.spiderKey)return null;let n=await Xl(t).catch(()=>[]);return aA(n,r.spiderKey,r.spiderType,r.apiBase)||{siteName:String(e.n||r.spiderKey),spiderKey:r.spiderKey,spiderType:r.spiderType,apiBase:r.apiBase}}async function zRr(t,e,r){let n=await Ale(Jw(t,e,r).catch(()=>null),gle,null),s=yle(n?.list||[]);if(s.length>=qft)return s;let i=Array.isArray(n?.class)?n.class.filter(c=>String(c?.type_id||"").trim()):[];if(!i.length)return s;let a=i.slice(0,5).map(c=>Ale(NE(t,e,String(c.type_id||""),1,{},r).then(u=>yle(u?.list||[])).catch(()=>[]),gle,[]));return(await Promise.allSettled(a)).forEach(c=>{c.status==="fulfilled"&&s.push(...c.value)}),b2(s)}async function KRr(t,e,r={},n){let s=[],i=Qft(r.u);i&&s.push(i);let a=String(r.c||"").trim();if(!a)return b2(s);let o=await Ale(NE(t,e,a,1,{},n).catch(()=>null),gle,null);return s.push(...yle(o?.list||[])),b2(s)}async function YRr(t,e,r){let n=await VRr(t,e?.payload||{});if(!n)return{spider:null,posterUrls:[]};let s=[];return e?.type==="lib"?s=await zRr(t,n,r):e?.type==="cat"&&(s=await KRr(t,n,e.payload||{},r)),{spider:n,posterUrls:s}}function JRr(t,e=0){let r=t?.payload||{},n=GRr(r.n||r.name||r.k,"\u5A92\u4F53\u5E93"),s=t?.type==="cat"?"FOLDER":"LIBRARY";return{title:n,subtitle:s,countText:e>0?`${e} IMAGES`:"MYCATPAW"}}function XRr(t={}){let e=Number(t.Width||t.width||t.MaxWidth||t.maxWidth||0),r=Number(t.Height||t.height||t.MaxHeight||t.maxHeight||0),n=x2,s=Math.round(x2/HE);if(e>0&&r>0){let i=Math.min(e/x2,r/(x2/HE));n=Math.round(x2*i),s=Math.round(n/HE)}else e>0?(n=Math.round(e),s=Math.round(n/HE)):r>0&&(s=Math.round(r),n=Math.round(s*HE));return n=jft(n,URr,FRr),s=Math.round(n/HE),{width:n,height:s}}async function ZRr(){return mle||(mle=import("sharp").then(t=>t.default||t).catch(()=>null)),mle}function n6(t=""){return $ft[HRr(t)%$ft.length]}function eNr(t,e=3){let r=Math.max(3,Number(e)||3),n=Math.floor(t.length/r);if(!n)return!0;let s=0,i=0,a=0,o=0,c=0,u=0,l=0,d=0,f=0,p=new Set;for(let v=0;v<t.length;v+=r){let C=t[v]||0,R=t[v+1]||0,w=t[v+2]||0,N=C*.299+R*.587+w*.114,P=Math.max(C,R,w),L=Math.min(C,R,w);s+=C,i+=R,a+=w,o+=C*C,c+=R*R,u+=w*w,l+=N,d+=N*N,f+=P-L,p.add(`${C>>4}:${R>>4}:${w>>4}`)}let m=s/n,h=i/n,A=a/n,g=l/n,b=Math.sqrt(Math.max(0,d/n-g*g)),y=(Math.sqrt(Math.max(0,o/n-m*m))+Math.sqrt(Math.max(0,c/n-h*h))+Math.sqrt(Math.max(0,u/n-A*A)))/3,x=f/n;return b<8&&y<8||(g>242||g<16)&&b<12&&y<12||x<7&&b<10||p.size<=3||p.size<=6&&b<20&&x<12}async function tNr(t,e){try{let r=await t(e).metadata();if(!r?.width||!r?.height||r.width<Mft||r.height<Mft)return!1;let{data:n,info:s}=await t(e).resize(Wft,Wft,{fit:"cover"}).removeAlpha().raw().toBuffer({resolveWithObject:!0});return!eNr(n,s?.channels||3)}catch{return!1}}async function rNr(t,e){try{return await t(e).rotate().resize({width:420,height:620,fit:"cover",withoutEnlargement:!0}).flatten({background:"#f2f4f7"}).jpeg({quality:82,mozjpeg:!0}).toBuffer()}catch{return null}}async function nNr(t,e=null){try{let r=new URL(t),n=await Ae.get(r.toString(),{responseType:"arraybuffer",timeout:jRr,maxContentLength:Bft,headers:{Accept:"image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8",Referer:`${r.protocol}//${r.host}/`,"User-Agent":"Mozilla/5.0 EmbyDynamicCover/1.0"},validateStatus:o=>o>=200&&o<300}),s=String(n.headers?.["content-type"]||"").split(";")[0].trim().toLowerCase(),i=s&&s.startsWith("image/")?s:"image/jpeg",a=Buffer.from(n.data||[]);if(!a.length||a.length>Bft)return null;if(e){if(!await tNr(e,a))return null;let o=await rNr(e,a);return o?.length?{dataUri:`data:image/jpeg;base64,${o.toString("base64")}`,buffer:o}:null}return{dataUri:`data:${i};base64,${a.toString("base64")}`,buffer:a}}catch{return null}}async function sNr(t=[],e=null){let n=b2(t).slice(0,qft).map(a=>nNr(a,e));return(await Promise.allSettled(n)).filter(a=>a.status==="fulfilled"&&a.value?.dataUri).map(a=>a.value).slice(0,qRr)}async function iNr(t,e=[],r=""){let n=e.find(s=>s?.buffer);if(!n)return n6(r);try{let i=((await t(n.buffer).resize(24,24,{fit:"cover"}).stats()).channels||[]).slice(0,3).map(c=>c.mean||0),a=Uft(i,[0,0,0],.38),o=Uft(i,[255,255,255],.48);return[Fft(a),Fft(o)]}catch{return n6(r)}}function aNr(t=""){let e=String(t||"\u5A92\u4F53\u5E93").trim()||"\u5A92\u4F53\u5E93";if(e.length<=8)return[e];if(/[\u4e00-\u9fff]/.test(e)){let i=e.slice(0,8),a=e.slice(8,16);return a?[i,a]:[i]}let r=e.split(/\s+/).filter(Boolean);if(r.length<=1)return[e.slice(0,16)];let n=[],s="";return r.forEach(i=>{let a=s?`${s} ${i}`:i;if(a.length>12&&s){n.push(s),s=i;return}s=a}),s&&n.push(s),n.slice(0,2)}function Gft(t=[],e,r){let n=e*.16,s=n*1.48,i=e*.025,a=e*.52,o=-r*.16,c=3;return[2,0,1,3,4,5,8,6,7].map((l,d)=>{let f=Math.floor(d/c),p=d%c,m=a+f*(n+i),h=o+p*(s+i),A=`posterClip${d}`,g=t[l%t.length];return{x:m,y:h,w:n,h:s,r:e*.015,clipId:A,href:g?.dataUri||""}})}function oNr(t,e,r=""){let n=Gft([{dataUri:""}],t,e),s=n6(r);return n.map((i,a)=>{let o=.18+a%3*.08;return` <rect x="${i.x.toFixed(1)}" y="${i.y.toFixed(1)}" width="${i.w.toFixed(1)}" height="${i.h.toFixed(1)}" rx="${i.r.toFixed(1)}" fill="${s[a%s.length]}" opacity="${o.toFixed(2)}"/> <path d="M ${i.x+i.w*.22} ${i.y+i.h*.42} h ${i.w*.56} v ${i.h*.22} h ${-i.w*.56} z" fill="rgba(255,255,255,0.28)"/> - `}).join("")}function rNr({width:t,height:e,title:r,subtitle:n,countText:s,posterImages:i,palette:a}){let o=eNr(r),c=o.some(h=>h.length>8)?t*.082:t*.105,u=t*.034,l=c*1.08,d=i.length?Hft(i,t,e):[],f=d.map(h=>` + `}).join("")}function cNr({width:t,height:e,title:r,subtitle:n,countText:s,posterImages:i,palette:a}){let o=aNr(r),c=o.some(h=>h.length>8)?t*.082:t*.105,u=t*.034,l=c*1.08,d=i.length?Gft(i,t,e):[],f=d.map(h=>` <clipPath id="${h.clipId}"> <rect x="${h.x.toFixed(1)}" y="${h.y.toFixed(1)}" width="${h.w.toFixed(1)}" height="${h.h.toFixed(1)}" @@ -10548,7 +10548,7 @@ ${J.name||J.address} \u8BF7\u6C42\u5931\u8D25:`),console.log(" - \u9519\u8BEF\u preserveAspectRatio="xMidYMid slice" clip-path="url(#${h.clipId})"/> `).join(""),m=o.map((h,A)=>` <text x="${(t*.07).toFixed(1)}" y="${(e*.47+A*l).toFixed(1)}" - class="title">${fle(h)}</text> + class="title">${hle(h)}</text> `).join("");return`<?xml version="1.0" encoding="UTF-8"?> <svg xmlns="http://www.w3.org/2000/svg" width="${t}" height="${e}" viewBox="0 0 ${t} ${e}"> <defs> @@ -10588,15 +10588,15 @@ ${J.name||J.address} \u8BF7\u6C42\u5931\u8D25:`),console.log(" - \u9519\u8BEF\u <rect width="${t}" height="${e}" fill="url(#bg)"/> <rect width="${t}" height="${e}" fill="url(#softLight)" opacity="0.72"/> <g transform="rotate(-14 ${(t*.76).toFixed(1)} ${(e*.48).toFixed(1)})"> - ${i.length?p:tNr(t,e,r)} + ${i.length?p:oNr(t,e,r)} </g> <rect x="${(t*.067).toFixed(1)}" y="${(e*.58).toFixed(1)}" width="${(t*.014).toFixed(1)}" height="${(e*.054).toFixed(1)}" fill="rgba(255,255,255,0.32)"/> ${m} - <text x="${(t*.096).toFixed(1)}" y="${(e*.63).toFixed(1)}" class="subtitle">${fle(n)}</text> - <text x="${(t*.07).toFixed(1)}" y="${(e*.86).toFixed(1)}" class="meta">${fle(s)}</text> -</svg>`}function nNr(t=""){return String(t||"Primary").trim().toLowerCase()==="primary"}function gle(t,e="Primary"){return nNr(e)&&["lib","cat"].includes(t?.type)}async function Qft(t,e,r){if(!gle(e,r?.params?.imageType||"Primary"))return null;let{width:n,height:s}=GRr(r?.query||{}),i=im(["emby","dynamic-cover-v2",e.type,JSON.stringify(e.payload||{}),n,s]);return Jf(t.embyContext?.cache,i,kRr,async()=>{let a=await HRr(t,e,r),o=await KRr(),c=o?await XRr(a.posterUrls,o):[],u=QRr(e,o?c.length:a.posterUrls.length),l=o?await ZRr(o,c,u.title):r6(u.title),d=rNr({width:n,height:s,title:u.title,subtitle:u.subtitle,countText:u.countText,posterImages:c,palette:l});return o?{buffer:await o(Buffer.from(d,"utf8"),{density:96}).png({compressionLevel:8,adaptiveFiltering:!0}).toBuffer(),contentType:"image/png"}:{buffer:Buffer.from(d,"utf8"),contentType:"image/svg+xml; charset=utf-8"}})}var sNr=!1;function iNr(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}async function Gft(t,e={}){if(e.u)return String(e.u);let r=Xl(e),n=String(e.v||"");if(!r.spiderKey||!n)return"";let s=await Pc(t,r,n).catch(()=>null),i=kc(s);return String(i?.vod_pic||"")}function aNr(t,e="Primary",r={}){let n=String(e||"Primary").trim().toLowerCase();return String(r?.tag||r?.Tag||"").trim().toLowerCase()==="tmdb"||t?.type!=="vod"?!0:["backdrop","thumb","banner","logo"].includes(n)}async function oNr(t,e,r="Primary",n={}){if(e?.type==="vod"&&!aNr(e,r,n)){let i=await Gft(t,e?.payload||{});if(i)return i}let s=await vft(t,e,r).catch(()=>"");return s||(e?.type==="img"?String(e?.payload?.u||""):Gft(t,e?.payload||{}))}function Kft(t){if(!t?.payload||typeof t.payload!="object")return null;let e=t.payload;return t.type==="media"||t.type==="ep"?{k:String(e.k||""),t:Number(e.t||3),v:String(e.v||""),l:Number(e.l||0),e:Number(e.e||0),f:String(e.f||""),p:String(e.p||""),a:String(e.a||"")}:null}async function cNr(t,e,r=""){let n=Kft(e);if(n)return n;if(r&&["vod","sea"].includes(e.type)){let p=c2(t,r,wn(e.type,e.payload||{})),m=Kft(p?.decoded);if(m?.k&&m?.f&&m?.p)return m}let s=e.payload||{};if(!["vod","sea"].includes(e.type))return null;let i=Xl(s),a=String(s.v||"");if(!i.spiderKey||!a)return null;let o=await Pc(t,i,a).catch(()=>null),c=kc(o);if(!c)return null;let u=go(c.vod_play_from,c.vod_play_url);if(!u.length)return null;let l=e.type==="sea"?Number(s.l||0):0,d=u[l]||u[0];if(!d||!d.episodes.length)return null;let f=d.episodes[0];return{k:i.spiderKey,t:i.spiderType,v:a,l,e:0,f:String(d.flag||""),p:String(f.playId||""),...i.apiBase?{a:i.apiBase}:{}}}function uNr(t=""){let e=String(t||"").trim();if(!e)return"mkv";if(/\.m3u8($|\?)/i.test(e))return"m3u8";try{let n=new URL(e).pathname.match(/\.([a-z0-9]{2,6})$/i);if(n?.[1])return n[1].toLowerCase()}catch{}return"mkv"}function lNr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}async function dNr(t,e,r){let n={spiderKey:e.k,spiderType:Number(e.t||3),apiBase:String(e.a||"")},s=await am(t,n,e.f,e.p,r).catch(()=>null),i=um(s||{},""),a=String(i.url||"");return{container:uNr(a),requiredHeaders:i.header||{},directUrl:a,useDirectUrl:sNr&&lNr(a)}}function fNr(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function pNr(t="mkv"){return/^[a-z0-9]{2,8}$/i.test(String(t||""))?String(t).toLowerCase():"mkv"}function Vft(t,e,r="mkv",n=!1){let s=pNr(r),i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}function mNr(t,e,r="mkv",n=!0){return`${fNr(t)}/emby${Vft(t,e,r,n)}`}async function Ale(t){t.get("/",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=e.query||{},s=String(n.userid||n.UserId||e.embyUser?.Id||t.embyContext.user.id),i=new URLSearchParams;Object.keys(n).forEach(c=>{if(c==="userid"||c==="UserId")return;let u=n[c];u!=null&&i.set(c,String(u))});let a=`/emby/Users/${encodeURIComponent(s)}/Items`,o=i.toString();o&&(a+=`?${o}`),r.redirect(301,a)}),t.get("/:itemId/Images/:imageType",async(e,r)=>{let n=Fs(e.params.itemId);if(!n)return r.code(404),"";if(gle(n,e.params.imageType||"Primary")){let i=await Qft(t,n,e).catch(()=>null);if(i?.buffer?.length)return r.header("Content-Type",i.contentType||"image/png"),r.header("Cache-Control","public, max-age=1800"),r.header("Content-Length",String(i.buffer.length)),r.send(i.buffer)}let s=await oNr(t,n,e.params.imageType||"Primary",e.query||{});if(!s)return r.code(404),"";try{let i=new URL(s);if(!["http:","https:"].includes(i.protocol))return r.code(403),""}catch{return r.code(404),""}try{let i=await Ae.get(s,{responseType:"stream",timeout:1e4,headers:{"User-Agent":"Mozilla/5.0 EmbyImageProxy"}}),a=i.headers?.["content-type"]||"image/jpeg";return r.header("Content-Type",a),r.header("Cache-Control","public, max-age=86400"),i.headers?.["content-length"]&&r.header("Content-Length",i.headers["content-length"]),r.send(i.data)}catch{return r.code(502),""}}),t.all("/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=e.params.itemId,s=Fs(n);if(!s)return r.code(404),{};let i=e.embyUser?.Id||t.embyContext.user.id,a=await cNr(t,s,i);if(!a||!a.k||!a.f||!a.p)return r.code(404),{};let o=wn("media",{k:String(a.k||""),t:Number(a.t||3),v:String(a.v||""),l:Number(a.l||0),e:Number(a.e||0),f:String(a.f||""),...a.a?{a:String(a.a||"")}:{}}),c=await dNr(t,a,e),u=mNr(e,o,c.container,!0),l=c.useDirectUrl&&c.directUrl?c.directUrl:u,d=c.useDirectUrl&&c.directUrl?c.directUrl:Vft(e,o,c.container,!0),f=!1,p=c.useDirectUrl?c.requiredHeaders||{}:{};return iNr(t,"playback.info",{itemId:n,mediaId:o,spiderKey:a.k,lineFlag:a.f,container:c.container,useDirectUrl:c.useDirectUrl,streamUrl:l,directStreamUrl:d,hasRequiredHeaders:Object.keys(p).length>0,addApiKeyToDirectStreamUrl:f}),{MediaSources:[{Id:o,Name:"\u9ED8\u8BA4",Type:"Default",Protocol:"Http",Container:c.container,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,RequiresOpening:!1,RequiresClosing:!1,RequiresLooping:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:p,Path:l,DirectStreamUrl:d,AddApiKeyToDirectStreamUrl:f,ItemId:o}],PlaySessionId:n}}),t.get("/:itemId/Similar",{preHandler:t.embyRequireAuth},async()=>Ft([])),t.get("/Counts",{preHandler:t.embyRequireAuth},async()=>({MovieCount:0,SeriesCount:0,EpisodeCount:0,GameCount:0,ArtistCount:0,ProgramCount:0,GameSystemCount:0,TrailerCount:0,SongCount:0,AlbumCount:0,MusicVideoCount:0,BoxSetCount:0,BookCount:0,ItemCount:0}))}var hNr=new Set(["tgchannel","tgsou","pansou","panta"]);function yle(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function gNr(t=""){let e=String(t||""),r=[e,yle(e),yle(yle(e))];for(let n of r){let s=Fs(n);if(s)return s}return null}function ANr(t={}){return{k:String(t.k||""),t:Number(t.t||3),v:String(t.v||""),l:Number(t.l||0),e:Number(t.e||0),f:String(t.f||""),p:String(t.p||""),a:String(t.a||"")}}async function yNr(t,e={}){let r=ANr(e);if(!r.k||!r.v)return null;if(r.f&&r.p)return r;let n={spiderKey:r.k,spiderType:r.t,apiBase:r.a},s=await Pc(t,n,r.v).catch(()=>null),i=kc(s);if(!i)return null;let a=go(i.vod_play_from,i.vod_play_url).filter(f=>Array.isArray(f?.episodes)&&f.episodes.length>0);if(!a.length)return null;let o=Math.max(0,Math.min(a.length-1,Number(r.l||0))),c=a[o],u=Array.isArray(c?.episodes)?c.episodes:[];if(!u.length)return null;let l=Math.max(0,Math.min(u.length-1,Number(r.e||0))),d=u[l];return d?.playId?{...r,l:o,e:l,f:r.f||String(c.flag||""),p:String(d.playId||"")}:null}async function xNr(t,e){if(!e)return null;if(e.type==="media"||e.type==="ep")return yNr(t,e.payload||{});if(!["vod","sea"].includes(e.type))return null;let r=e.payload||{},n=Xl(r),s=String(r.v||"");if(!n.spiderKey||!s)return null;let i=await Pc(t,n,s).catch(()=>null),a=kc(i);if(!a)return null;let o=go(a.vod_play_from,a.vod_play_url);if(!o.length)return null;let c=e.type==="sea"?Number(r.l||0):0,u=o[c]||o[0];if(!u||!u.episodes.length)return null;let l=u.episodes[0];return{k:n.spiderKey,t:n.spiderType,v:s,l:c,e:0,f:String(u.flag||""),p:String(l.playId||""),...n.apiBase?{a:n.apiBase}:{}}}function bNr(t,e={}){let r={"User-Agent":t.headers?.["user-agent"]||"Mozilla/5.0 EmbyVideoProxy"};return t.headers?.range&&(r.Range=t.headers.range),e&&typeof e=="object"&&Object.keys(e).forEach(n=>{let s=e[n];s!=null&&(r[n]=String(s))}),r}async function zft(t,e,r,n){let s=await Ae.get(r,{responseType:"stream",timeout:3e4,maxRedirects:5,validateStatus:()=>!0,headers:bNr(t,n)}),i=["content-type","content-length","accept-ranges","content-range","cache-control","etag","last-modified"];return e.code(s.status),i.forEach(a=>{let o=s.headers?.[a];o!=null&&e.header(a,o)}),e.send(s.data)}function ENr(t={},e=""){if(hNr.has(String(t.k||"")))return!0;try{let r=String(new URL(String(e||"")).hostname||"").toLowerCase();return r.includes("mcloud.139.com")||r.includes("yun.139.com")}catch{return!1}}function _Nr(t=""){try{return new URL(String(t||"")).toString()}catch{return String(t||"")}}async function xle(t,e,r,n=""){let s=gNr(e.params.mediaId);if(!s)return r.code(404),"";let i=await xNr(t,s);if(!i||!i.k||!i.f||!i.p)return r.code(404),"";let a={spiderKey:i.k,spiderType:i.t,apiBase:String(i.a||"")},o=await am(t,a,i.f,i.p,e).catch(()=>null),c=um(o||{},String(e.query?.line||""));if(!c.url)return r.code(404),"";let u=String(n||"").trim(),l=u;try{let d=String(e.raw?.url||""),f=`/${String(e.params.mediaId||"")}/`,p=d.indexOf(f);if(p>=0){let m=d.slice(p+f.length).trim();m&&(l=m)}}catch{}if(u&&!/^stream\./i.test(u))try{let d=new URL(c.url),f=new URL(l||u,d);return zft(e,r,f.toString(),c.header)}catch{return r.code(400),""}try{let d=new URL(c.url);if(!["http:","https:"].includes(d.protocol))return r.code(403),""}catch{return r.code(400),""}return ENr(i,c.url)||Object.keys(c.header||{}).length>0?zft(e,r,c.url,c.header):r.redirect(307,_Nr(c.url))}async function ble(t){let e=async(r,n)=>{t.embyExtractToken(r)&&await t.embyRequireAuth(r,n)};t.get("/:mediaId/AdditionalParts",{preHandler:e},async()=>Ft([])),t.get("/:mediaId/stream.mkv",{preHandler:e},async(r,n)=>xle(t,r,n,"stream.mkv")),t.get("/:mediaId/:fileName",{preHandler:e},async(r,n)=>xle(t,r,n,String(r.params.fileName||""))),t.get("/:mediaId/*",{preHandler:e},async(r,n)=>xle(t,r,n,String(r.params["*"]||""))),t.get("/:mediaId/subtitles/:subtitleId",{preHandler:e},async(r,n)=>(n.code(404),""))}var SNr=new Set(["tgchannel","tgsou","pansou","panta"]),vNr=!1;function INr(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function CNr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function Yft(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function TNr(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function wNr(t){let r=String(t?.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t?.protocol||"http",s=String(t?.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t?.headers?.host||"127.0.0.1";return`${r}://${s}`}function RNr(t,e,r="mkv"){return`${wNr(t)}/emby${Zft(t,e,r,!0)}`}function Zft(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t?.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function NNr(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=SNr.has(String(r?.k||""))?"m3u8":"mkv",a=Yft(String(r?.p||""),i),o=RNr(e,s,a),c=Zft(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(vNr&&INr(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await am(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=um(m||{},String(n||""));h.url&&CNr(h.url)&&(a=Yft(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function ONr(t,e,r,n,s,i){let a=String(r?.vod_name||""),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;f<n.length;f+=1){let p=n[f],m={k:e.spiderKey,t:e.spiderType,v:String(r.vod_id),l:f,...e.apiBase?{a:e.apiBase}:{}};a&&(m.n=a),o&&(m.u=o),c&&(m.r=c),u&&(m.y=u);let h=wn("sea",m),A={Name:p.flag||`\u7B2C${f+1}\u5B63`,Id:h,ParentId:s,SeriesId:s,SeriesName:a,IndexNumber:f+1,ChildCount:p.episodes.length,ServerId:i,IsFolder:!0,Type:"Season",ImageTags:{Primary:h},BackdropImageTags:[],UserData:ss()},b=`s${GM(r,p,f)}`,y=d.get(b);y===void 0&&(y=await zM(t,"season",{spiderRef:e,vod:r,line:p,lineIndex:f})||null,d.set(b,y)),y&&Object.assign(A,y),l.push(A)}return l}async function PNr(t,e,r,n,s,i,a,o=0,c=void 0){let u=String(n?.vod_name||""),l=String(n?.vod_pic||"").trim(),d=String(n?.tmdbHintRemarks||n?.vod_remarks||"").trim(),f=String(n?.tmdbHintYear||n?.vod_year||"").trim(),p=s?.line,m=Number(s?.lineIndex||0),h=Number(s?.episodeOffset||0),g=(Array.isArray(p?.episodes)?p.episodes:[])[o];if(!p||!g?.playId)return null;let b=h+o,y=fA(g?.name,b+1),x={k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:m,e:b,f:p.flag,p:g.playId,...r.apiBase?{a:r.apiBase}:{}};u&&(x.n=u),l&&(x.u=l),d&&(x.r=d),f&&(x.y=f);let v=wn("ep",x),I=await NNr(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:String(n.vod_id),l:m,e:b,f:p.flag,p:g.playId},String(p.flag||`\u7EBF\u8DEF${m+1}`)),R={Name:g.name||`\u7B2C${b+1}\u96C6`,Id:v,ParentId:i,SeasonId:wn("sea",{k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:m,...r.apiBase?{a:r.apiBase}:{},...u?{n:u}:{},...l?{u:l}:{},...d?{r:d}:{},...f?{y:f}:{}}),SeriesId:i,SeriesName:u,SeasonName:p.flag||`\u7B2C${m+1}\u5B63`,IndexNumber:y,ParentIndexNumber:m+1,ServerId:a,IsFolder:!1,Type:"Episode",MediaType:"Video",CanPlay:!0,PrimaryImageAspectRatio:.6667,ImageTags:{Primary:v},BackdropImageTags:[],UserData:ss(),MediaSources:[I]};if(c!==void 0)return c&&Object.assign(R,c),R;let w=await m2(t,{spiderRef:r,vod:n,line:p,lineIndex:m,episode:g,episodeIndex:b});return w&&Object.assign(R,w),R}function kNr(t=[]){return t.reduce((e,r)=>e+(Array.isArray(r?.line?.episodes)?r.line.episodes.length:0),0)}async function ept(t,e,r,n,s,i,a,o=1/0){let c=[],u=Number(o),l=Number.isFinite(u)&&u>0?Math.floor(u):1/0;for(let d of s){let f=Array.isArray(d?.line?.episodes)?d.line.episodes:[],p=Number(d?.episodeOffset||0),m=await VM(t,{spiderRef:r,vod:n,line:d?.line,lineIndex:Number(d?.lineIndex||0),episodes:f,episodeOffset:p});for(let h=0;h<f.length;h+=1){let A=await PNr(t,e,r,n,d,i,a,h,m[h]??null);if(A&&c.push(A),c.length>=l)return c}}return c}function tpt(t,e){if(!t?.payload||typeof t.payload!="object"||t.type==="vod")return e;let r=t.payload,n=String(r.k||""),s=String(r.v||"");return!n||!s?e:wn("vod",{k:n,t:Number(r.t||3),v:s,...r.a?{a:String(r.a||"")}:{},...r.n?{n:String(r.n||"")}:{},...r.u?{u:String(r.u||"")}:{}})}function rpt(t=[],e={},r=null){let n=String(Xr(e,["seasonid","SeasonId","seasonId"],""));if(n){let i=Fs(n);if(i?.type==="sea"){let a=Number(i.payload?.l||0),o=t[a];return o?[{line:o,lineIndex:a}]:[]}}let s=Number(Xr(e,["season","Season"],NaN));if(Number.isFinite(s)&&s>0){let i=s-1,a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="sea"){let i=Number(r.payload?.l||0),a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="ep"){let i=Number(r.payload?.l||0),a=Number(r.payload?.e||0),o=t[i];return!o||!o.episodes[a]?[]:[{line:{...o,episodes:[o.episodes[a]]},lineIndex:i,episodeOffset:a}]}return t.map((i,a)=>({line:i,lineIndex:a}))}function DNr(t,e,r,n=[]){let i=c2(t,e,r)?.decoded?.payload||null;if(!i)return n;let a=Number(i.l||0),o=Number(i.e||0),c=n.find(l=>Number(l?.lineIndex||0)===a),u=Array.isArray(c?.line?.episodes)?c.line.episodes:[];return u[o]?[{...c,episodeOffset:o,line:{...c.line,episodes:u.slice(o)}}]:n}async function Ele(t,e){let r=Fs(e);if(!r||!["vod","sea","ep"].includes(r.type))return null;let n=r.payload||{},s=Xl(n),i=String(n.v||"");if(!s.spiderKey||!i)return null;let a=await Pc(t,s,i).catch(()=>null),o=kc(a);if(!o)return null;yA(o,n),!String(o?.vod_pic||"").trim()&&n?.u&&(o.vod_pic=String(n.u||"").trim());let c=go(o.vod_play_from,o.vod_play_url);return c.length?{decoded:r,spiderRef:s,vod:o,lines:c}:null}async function Jft(t,e,r={},n=null){let s=await Ele(t,e);if(!s)return[];let{decoded:i,spiderRef:a,vod:o,lines:c}=s,u=rpt(c,r,i);if(!u.length)return[];let l=tpt(i,e);return ept(t,n,a,o,u,l,t.embyContext.config.serverId)}async function Xft(t,e){let r=await Ele(t,e);if(!r)return[];let{spiderRef:n,vod:s,lines:i}=r;return ONr(t,n,s,i,e,t.embyContext.config.serverId)}async function _le(t){let e={preHandler:t.embyRequireAuth};t.get("/Persons",e,async()=>Ft([])),t.get("/Genres",e,async()=>Ft([])),t.get("/Tags",e,async()=>Ft([])),t.get("/OfficialRatings",e,async()=>Ft([])),t.get("/Years",e,async()=>Ft([])),t.get("/Studios",e,async()=>Ft([])),t.get("/Shows/NextUp",e,async r=>{let n=r.query||{},s=String(Xr(n,["SeriesId","seriesId"],"")).trim(),i=Pu(Xr(n,["Limit","limit"],1),1),a=r.embyUser?.Id||t.embyContext.user.id;if(!s)return Ft([]);let o=await Ele(t,s);if(!o)return Ft([]);let{decoded:c,spiderRef:u,vod:l,lines:d}=o,f=tpt(c,s),p=DNr(t,a,f,rpt(d,n,c));if(!p.length)return Ft([]);let m=kNr(p),h=Us(t,a,await ept(t,r,u,l,p,f,t.embyContext.config.serverId,i));return TNr(t,"nextup.result",{seriesId:s,total:m,first:h[0]?{id:h[0].Id,type:h[0].Type,canPlay:h[0].CanPlay,mediaSourceCount:Array.isArray(h[0].MediaSources)?h[0].MediaSources.length:0}:null}),Ft(h,m)}),t.get("/Shows/:seriesId/Seasons",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Us(t,o,await Xft(t,a));return Ft(Ca(c,s,i),c.length)}),t.get("/Shows/:seriesId/Episodes",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Us(t,o,await Jft(t,a,n,r));return Ft(Ca(c,s,i),c.length)}),t.get("/Items/:itemId/Seasons",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Us(t,o,await Xft(t,a));return Ft(Ca(c,s,i),c.length)}),t.get("/Items/:itemId/Episodes",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Us(t,o,await Jft(t,a,n,r));return Ft(Ca(c,s,i),c.length)}),t.get("/Sessions",e,async r=>[{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SleepTimerMode:"None",SubtitleOffset:0,Shuffle:!1,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",Protocol:"HTTP/1.1",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:t.embyContext.config.serverId,ServerId:t.embyContext.config.serverId,UserId:r.embyUser?.Id||"",UserName:r.embyUser?.Name||"",Client:"",LastActivityDate:$s(),DeviceName:"",InternalDeviceId:0,DeviceId:"",ApplicationVersion:t.embyContext.config.version,SupportedCommands:[],SupportsRemoteControl:!1}]),t.post("/Sessions/Playing",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await u2(t,s,r.body||{},"playing"),n.code(204).send()}),t.post("/Sessions/Playing/Progress",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await u2(t,s,r.body||{},"progress"),n.code(204).send()}),t.post("/Sessions/Playing/Stopped",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await u2(t,s,r.body||{},"stopped"),n.code(204).send()}),t.post("/Sessions/Playing/Ping",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await u2(t,s,r.body||{},"ping"),n.code(204).send()}),t.get("/DisplayPreferences/Usersettings",e,async()=>({Id:"usersettings",CustomPrefs:{},SortOrder:"Ascending"})),t.get("/Environment/DefaultDirectoryBrowser",e,async()=>Ft([]))}function npt(t){return t&&String(t).match(/Token="?([^",\s]+)"?/i)?.[1]||""}var Sle=Symbol("embyLogStartAt"),BNr=/(token|password|passwd|pwd|pw|authorization|cookie|api[_-]?key|session)/i;function n6(t){let e=String(t??"");return e?e.length<=6?"***":`${e.slice(0,2)}***${e.slice(-2)}`:""}function HE(t,e=0,r=new WeakSet){if(t==null)return t;if(typeof t=="string")return t.length>240?`${t.slice(0,240)}...(truncated)`:t;if(typeof t!="object")return t;if(r.has(t))return"[Circular]";if(e>=3)return"[MaxDepth]";if(r.add(t),Array.isArray(t))return t.slice(0,10).map(s=>HE(s,e+1,r));let n={};for(let[s,i]of Object.entries(t)){if(BNr.test(s)){n[s]=n6(i);continue}n[s]=HE(i,e+1,r)}return n}function LNr(t){return t.routeOptions?.url||t.url||t.raw?.url||""}function vle(t,e){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["0","false","off","no"].includes(r)?!1:["1","true","on","yes"].includes(r)?!0:e}function MNr(t,e,r){let n=String(e||"").trim();if(!n){r(null,{});return}try{r(null,JSON.parse(n))}catch(s){s.statusCode=400,r(s)}}function x2(t={}){let e=String(process.env.EMBY_TMDB_API_KEY||t.tmdbApiKey||"");return{enable:t.enable!==!1,username:String(process.env.EMBY_USERNAME||t.username||"CatPawPlay"),password:String(process.env.EMBY_PASSWORD||t.password||"CatPawPlay"),serverName:String(process.env.EMBY_SERVER_NAME||t.serverName||"CatPawPlay"),serverId:String(process.env.EMBY_SERVER_ID||t.serverId||"mycatpaw"),version:String(process.env.EMBY_VERSION||t.version||"4.8.0.80"),apiKey:String(process.env.EMBY_API_KEY||t.apiKey||""),searchSourcePrefix:vle(process.env.EMBY_SEARCH_SOURCE_PREFIX,t.searchSourcePrefix!==!1),tokenTtlMs:Number(t.tokenTtlMs||30*24*60*60*1e3),requestLog:vle(process.env.EMBY_REQUEST_LOG,process.env.NODE_ENV==="development"?t.requestLog!==!1:t.requestLog===!0),recoverToken:t.recoverToken!==!1&&process.env.EMBY_RECOVER_TOKEN!=="0",tmdbEnable:vle(process.env.EMBY_TMDB_ENABLE,t.tmdbEnable!==!1&&!!e),tmdbApiKey:e,tmdbLanguage:String(process.env.EMBY_TMDB_LANGUAGE||t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(process.env.EMBY_TMDB_IMAGE_BASE||t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function Ile(t){let e=null;try{e=await t.db?.getObjectDefault("/emby",null)}catch{}let r=null;try{r=await t.db?.getObjectDefault("/embyPlayback",null)}catch{}let n=x2({...t.config?.emby||{},...e&&typeof e=="object"?e:{}}),s={config:n,cache:vM({max:1200}),tmdbStore:null,tmdbClientState:null,tokens:new Map,user:{id:"emby-user-001",name:n.username},playbackState:HM(r),playbackPersistTimer:null};globalThis.__catpawEmbyRuntime=s,t.addContentTypeParser("application/json",{parseAs:"string"},MNr),t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(i,a,o)=>{try{let c=new URLSearchParams(String(a)),u={};for(let[l,d]of c.entries())u[l]=d;o(null,u)}catch(c){o(c)}}),t.decorate("embyContext",s),t.decorate("embyExtractToken",function(a){let o=a.query||{};return o["x-emby-token"]||o.api_key||o["X-Emby-Token"]||a.headers?.["x-emby-token"]||npt(a.headers?.["x-emby-authorization"])||npt(a.headers?.authorization)||""}),t.decorate("embyRequireAuth",async function(a,o){if(!s.config.enable){o.code(503).send("Emby disabled");return}let c=t.embyExtractToken(a);if(!c){o.code(401).send("Unauthorized");return}if(s.config.apiKey&&c===s.config.apiKey){a.embyToken=c,a.embyUser={Id:s.user.id,Name:s.user.name};return}let u=s.tokens.get(c);if(!u){if(!s.config.recoverToken){o.code(401).send("Unauthorized");return}let l=Date.now();u={token:c,userId:s.user.id,userName:s.user.name,createdAt:l,lastUsedAt:l,expireAt:s.config.tokenTtlMs>0?l+s.config.tokenTtlMs:0,device:{client:"RecoveredClient",device:"RecoveredDevice",deviceId:"",version:s.config.version}},s.tokens.set(c,u),s.config.requestLog&&console.warn(`[Emby Auth] recovered token session token=${n6(c)} path=${a.raw?.url||a.url}`)}if(u.expireAt>0&&u.expireAt<=Date.now()){s.tokens.delete(c),o.code(401).send("Unauthorized");return}u.lastUsedAt=Date.now(),a.embyToken=c,a.embySession=u,a.embyUser={Id:u.userId,Name:u.userName}}),t.addHook("preHandler",async i=>{if(!s.config.requestLog)return;i[Sle]=process.hrtime.bigint();let a=LNr(i),o=HE(i.query||{}),c=i.body===void 0?void 0:HE(i.body),u=t.embyExtractToken(i),l=u?n6(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.log(`[Emby Req] #${i.id} ${i.method} ${i.raw.url} route=${a}${d}${f} token=${l}`)}),t.addHook("onError",async(i,a,o)=>{if(!s.config.requestLog)return;let c=i[Sle],u=typeof c=="bigint"?(Number(process.hrtime.bigint()-c)/1e6).toFixed(1):"-",l=a.statusCode||o.statusCode||500;console.error(`[Emby Err] #${i.id} ${i.method} ${i.raw?.url||i.url} status=${l} cost=${u}ms message=${o.message}`)}),t.addHook("onResponse",async(i,a)=>{if(!s.config.requestLog)return;let o=i[Sle],c=typeof o=="bigint"?(Number(process.hrtime.bigint()-o)/1e6).toFixed(1):"-";console.log(`[Emby Res] #${i.id} ${i.method} ${i.raw.url} status=${a.statusCode} cost=${c}ms`)}),t.setNotFoundHandler((i,a)=>{if(s.config.requestLog){let o=HE(i.query||{}),c=i.body===void 0?void 0:HE(i.body),u=t.embyExtractToken(i),l=u?n6(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.warn(`[Emby 404] ${i.method} ${i.raw.url}${d}${f} token=${l}`)}a.code(404).send("Not Found")}),t.addHook("onClose",async()=>{s.tokens.clear(),s.cache.clear(),s.tmdbStore?.memory?.clear?.(),s.tmdbStore?.pending?.clear?.(),s.tmdbStore=null,s.tmdbClientState=null,s.playbackPersistTimer&&(clearTimeout(s.playbackPersistTimer),s.playbackPersistTimer=null),globalThis.__catpawEmbyRuntime===s&&(globalThis.__catpawEmbyRuntime=null)}),t.register(zue,{prefix:"/System"}),t.register(Vue,{prefix:"/Users"}),t.register(Jue,{prefix:"/Library"}),t.register(lle,{prefix:"/Users"}),t.register(Ale,{prefix:"/Items"}),t.register(ble,{prefix:"/Videos"}),t.register(_le)}function Cle(t={},e={}){let r=e.includeSecrets===!0;return{enable:t.enable!==!1,username:String(t.username||""),password:String(t.password||""),serverName:String(t.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,...r?{tmdbApiKey:String(t.tmdbApiKey||"")}:{},tmdbLanguage:String(t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function spt(t){let e=await t.db.getObjectDefault("/emby",null);return e&&typeof e=="object"?e:{}}function ipt(){let t=globalThis.__catpawEmbyRuntime;return t&&typeof t=="object"?t:null}function apt(t={}){let e=ipt();if(!e?.config)return;let r=String(e.config.username||""),n=String(e.config.password||""),s=String(e.config.tmdbApiKey||""),i=Object.prototype.hasOwnProperty.call(t,"tmdbApiKey"),a=String(t.username||r),o=String(i?t.tmdbApiKey||"":e.config.tmdbApiKey||"");Object.assign(e.config,{enable:t.enable!==!1,username:a,password:String(t.password||""),serverName:String(t.serverName||e.config.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,tmdbApiKey:o,tmdbLanguage:String(t.tmdbLanguage||e.config.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||e.config.tmdbImageBase||"https://image.tmdb.org/t/p/original")}),e.user.name=a,r!==e.config.username||n!==e.config.password?e.tokens?.clear():e.tokens?.size&&e.tokens.forEach(l=>{l.userName=e.config.username}),s!==o&&(e.tmdbStore?.memory?.clear?.(),e.tmdbStore?.pending?.clear?.(),e.tmdbClientState=null)}var WNr=async t=>{let e=await spt(t),r=x2({...t.config?.emby||{},...e});return Cle(r,{includeSecrets:!0})},$Nr=async(t,e)=>{let r=await spt(t),n=x2({...t.config?.emby||{},...r,...e&&typeof e=="object"?e:{}}),s=Cle(n,{includeSecrets:!0});return await t.db.push("/emby",s),apt(s),s},FNr=async t=>{await t.db.delete("/emby");let e=Cle(x2(t.config?.emby||{}),{includeSecrets:!0});return apt(e),e},UNr=async t=>{let e=ipt();e?.tmdbStore?.memory?.clear?.(),e?.tmdbStore?.pending?.clear?.(),e&&(e.tmdbStore=null,e.tmdbClientState=null),await t.db.delete("/embyTmdb").catch(()=>{})};async function Tle(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await WNr(e.server)})}),t.put("/setting",async(e,r)=>{await $Nr(e.server,e.body||{}),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await FNr(e.server),r.send({code:0})}),t.post("/tmdb/cache/clear",async(e,r)=>{await UNr(e.server),r.send({code:0})})}var qNr=t=>{let e=Jw(t,{includePrefix:!1}).replace(/\/$/,""),r=TM()?CM():null;return[{key:"t4",name:"T4 \u8BA2\u9605",url:Xw(e,"/t4")},{key:"uz",name:"UZ \u8BA2\u9605",url:Xw(e,"/uz")},{key:"cat",name:"\u732B\u6E90\u8BA2\u9605",url:Xw(e,"/index.js.md5",r)},{key:"emby",name:"Emby \u670D\u52A1\u5668",url:Xw(e,"/emby")}]};async function wle(t){t.get("/",(e,r)=>{r.type("text/html").send(` + <text x="${(t*.096).toFixed(1)}" y="${(e*.63).toFixed(1)}" class="subtitle">${hle(n)}</text> + <text x="${(t*.07).toFixed(1)}" y="${(e*.86).toFixed(1)}" class="meta">${hle(s)}</text> +</svg>`}function uNr(t=""){return String(t||"Primary").trim().toLowerCase()==="primary"}function xle(t,e="Primary"){return uNr(e)&&["lib","cat"].includes(t?.type)}async function Vft(t,e,r){if(!xle(e,r?.params?.imageType||"Primary"))return null;let{width:n,height:s}=XRr(r?.query||{}),i=im(["emby","dynamic-cover-v2",e.type,JSON.stringify(e.payload||{}),n,s]);return Xf(t.embyContext?.cache,i,$Rr,async()=>{let a=await YRr(t,e,r),o=await ZRr(),c=o?await sNr(a.posterUrls,o):[],u=JRr(e,o?c.length:a.posterUrls.length),l=o?await iNr(o,c,u.title):n6(u.title),d=cNr({width:n,height:s,title:u.title,subtitle:u.subtitle,countText:u.countText,posterImages:c,palette:l});return o?{buffer:await o(Buffer.from(d,"utf8"),{density:96}).png({compressionLevel:8,adaptiveFiltering:!0}).toBuffer(),contentType:"image/png"}:{buffer:Buffer.from(d,"utf8"),contentType:"image/svg+xml; charset=utf-8"}})}var lNr=!1;function dNr(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}async function zft(t,e={}){if(e.u)return String(e.u);let r=Zl(e),n=String(e.v||"");if(!r.spiderKey||!n)return"";let s=await Oc(t,r,n).catch(()=>null),i=Pc(s);return String(i?.vod_pic||"")}function fNr(t,e="Primary",r={}){let n=String(e||"Primary").trim().toLowerCase();return String(r?.tag||r?.Tag||"").trim().toLowerCase()==="tmdb"||t?.type!=="vod"?!0:["backdrop","thumb","banner","logo"].includes(n)}async function pNr(t,e,r="Primary",n={}){if(e?.type==="vod"&&!fNr(e,r,n)){let i=await zft(t,e?.payload||{});if(i)return i}let s=await Ift(t,e,r).catch(()=>"");return s||(e?.type==="img"?String(e?.payload?.u||""):zft(t,e?.payload||{}))}function Kft(t){if(!t?.payload||typeof t.payload!="object")return null;let e=t.payload;return t.type==="media"||t.type==="ep"?{k:String(e.k||""),t:Number(e.t||3),v:String(e.v||""),l:Number(e.l||0),e:Number(e.e||0),f:String(e.f||""),p:String(e.p||""),a:String(e.a||"")}:null}async function mNr(t,e,r=""){let n=Kft(e);if(n)return n;if(r&&["vod","sea"].includes(e.type)){let p=l2(t,r,wn(e.type,e.payload||{})),m=Kft(p?.decoded);if(m?.k&&m?.f&&m?.p)return m}let s=e.payload||{};if(!["vod","sea"].includes(e.type))return null;let i=Zl(s),a=String(s.v||"");if(!i.spiderKey||!a)return null;let o=await Oc(t,i,a).catch(()=>null),c=Pc(o);if(!c)return null;let u=ho(c.vod_play_from,c.vod_play_url);if(!u.length)return null;let l=e.type==="sea"?Number(s.l||0):0,d=u[l]||u[0];if(!d||!d.episodes.length)return null;let f=d.episodes[0];return{k:i.spiderKey,t:i.spiderType,v:a,l,e:0,f:String(d.flag||""),p:String(f.playId||""),...i.apiBase?{a:i.apiBase}:{}}}function hNr(t=""){let e=String(t||"").trim();if(!e)return"mkv";if(/\.m3u8($|\?)/i.test(e))return"m3u8";try{let n=new URL(e).pathname.match(/\.([a-z0-9]{2,6})$/i);if(n?.[1])return n[1].toLowerCase()}catch{}return"mkv"}function gNr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}async function ANr(t,e,r){let n={spiderKey:e.k,spiderType:Number(e.t||3),apiBase:String(e.a||"")},s=await am(t,n,e.f,e.p,r).catch(()=>null),i=um(s||{},""),a=String(i.url||"");return{container:hNr(a),requiredHeaders:i.header||{},directUrl:a,useDirectUrl:lNr&&gNr(a)}}function yNr(t){let r=String(t.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t.protocol||"http",s=String(t.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t.headers?.host||"127.0.0.1";return`${r}://${s}`}function xNr(t="mkv"){return/^[a-z0-9]{2,8}$/i.test(String(t||""))?String(t).toLowerCase():"mkv"}function Yft(t,e,r="mkv",n=!1){let s=xNr(r),i=n&&t.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}function bNr(t,e,r="mkv",n=!0){return`${yNr(t)}/emby${Yft(t,e,r,n)}`}async function ble(t){t.get("/",{preHandler:t.embyRequireAuth},async(e,r)=>{let n=e.query||{},s=String(n.userid||n.UserId||e.embyUser?.Id||t.embyContext.user.id),i=new URLSearchParams;Object.keys(n).forEach(c=>{if(c==="userid"||c==="UserId")return;let u=n[c];u!=null&&i.set(c,String(u))});let a=`/emby/Users/${encodeURIComponent(s)}/Items`,o=i.toString();o&&(a+=`?${o}`),r.redirect(301,a)}),t.get("/:itemId/Images/:imageType",async(e,r)=>{let n=$s(e.params.itemId);if(!n)return r.code(404),"";if(xle(n,e.params.imageType||"Primary")){let i=await Vft(t,n,e).catch(()=>null);if(i?.buffer?.length)return r.header("Content-Type",i.contentType||"image/png"),r.header("Cache-Control","public, max-age=1800"),r.header("Content-Length",String(i.buffer.length)),r.send(i.buffer)}let s=await pNr(t,n,e.params.imageType||"Primary",e.query||{});if(!s)return r.code(404),"";try{let i=new URL(s);if(!["http:","https:"].includes(i.protocol))return r.code(403),""}catch{return r.code(404),""}try{let i=await Ae.get(s,{responseType:"stream",timeout:1e4,headers:{"User-Agent":"Mozilla/5.0 EmbyImageProxy"}}),a=i.headers?.["content-type"]||"image/jpeg";return r.header("Content-Type",a),r.header("Cache-Control","public, max-age=86400"),i.headers?.["content-length"]&&r.header("Content-Length",i.headers["content-length"]),r.send(i.data)}catch{return r.code(502),""}}),t.all("/:itemId/PlaybackInfo",{preHandler:t.embyRequireAuth},async(e,r)=>{if(!["GET","POST"].includes(e.method))return r.code(405),"";let n=e.params.itemId,s=$s(n);if(!s)return r.code(404),{};let i=e.embyUser?.Id||t.embyContext.user.id,a=await mNr(t,s,i);if(!a||!a.k||!a.f||!a.p)return r.code(404),{};let o=wn("media",{k:String(a.k||""),t:Number(a.t||3),v:String(a.v||""),l:Number(a.l||0),e:Number(a.e||0),f:String(a.f||""),...a.a?{a:String(a.a||"")}:{}}),c=await ANr(t,a,e),u=bNr(e,o,c.container,!0),l=c.useDirectUrl&&c.directUrl?c.directUrl:u,d=c.useDirectUrl&&c.directUrl?c.directUrl:Yft(e,o,c.container,!0),f=!1,p=c.useDirectUrl?c.requiredHeaders||{}:{};return dNr(t,"playback.info",{itemId:n,mediaId:o,spiderKey:a.k,lineFlag:a.f,container:c.container,useDirectUrl:c.useDirectUrl,streamUrl:l,directStreamUrl:d,hasRequiredHeaders:Object.keys(p).length>0,addApiKeyToDirectStreamUrl:f}),{MediaSources:[{Id:o,Name:"\u9ED8\u8BA4",Type:"Default",Protocol:"Http",Container:c.container,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,RequiresOpening:!1,RequiresClosing:!1,RequiresLooping:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:p,Path:l,DirectStreamUrl:d,AddApiKeyToDirectStreamUrl:f,ItemId:o}],PlaySessionId:n}}),t.get("/:itemId/Similar",{preHandler:t.embyRequireAuth},async()=>Ut([])),t.get("/Counts",{preHandler:t.embyRequireAuth},async()=>({MovieCount:0,SeriesCount:0,EpisodeCount:0,GameCount:0,ArtistCount:0,ProgramCount:0,GameSystemCount:0,TrailerCount:0,SongCount:0,AlbumCount:0,MusicVideoCount:0,BoxSetCount:0,BookCount:0,ItemCount:0}))}var ENr=new Set(["tgchannel","tgsou","pansou","panta"]);function Ele(t){try{return decodeURIComponent(String(t||""))}catch{return String(t||"")}}function _Nr(t=""){let e=String(t||""),r=[e,Ele(e),Ele(Ele(e))];for(let n of r){let s=$s(n);if(s)return s}return null}function SNr(t={}){return{k:String(t.k||""),t:Number(t.t||3),v:String(t.v||""),l:Number(t.l||0),e:Number(t.e||0),f:String(t.f||""),p:String(t.p||""),a:String(t.a||"")}}async function vNr(t,e={}){let r=SNr(e);if(!r.k||!r.v)return null;if(r.f&&r.p)return r;let n={spiderKey:r.k,spiderType:r.t,apiBase:r.a},s=await Oc(t,n,r.v).catch(()=>null),i=Pc(s);if(!i)return null;let a=ho(i.vod_play_from,i.vod_play_url).filter(f=>Array.isArray(f?.episodes)&&f.episodes.length>0);if(!a.length)return null;let o=Math.max(0,Math.min(a.length-1,Number(r.l||0))),c=a[o],u=Array.isArray(c?.episodes)?c.episodes:[];if(!u.length)return null;let l=Math.max(0,Math.min(u.length-1,Number(r.e||0))),d=u[l];return d?.playId?{...r,l:o,e:l,f:r.f||String(c.flag||""),p:String(d.playId||"")}:null}async function CNr(t,e){if(!e)return null;if(e.type==="media"||e.type==="ep")return vNr(t,e.payload||{});if(!["vod","sea"].includes(e.type))return null;let r=e.payload||{},n=Zl(r),s=String(r.v||"");if(!n.spiderKey||!s)return null;let i=await Oc(t,n,s).catch(()=>null),a=Pc(i);if(!a)return null;let o=ho(a.vod_play_from,a.vod_play_url);if(!o.length)return null;let c=e.type==="sea"?Number(r.l||0):0,u=o[c]||o[0];if(!u||!u.episodes.length)return null;let l=u.episodes[0];return{k:n.spiderKey,t:n.spiderType,v:s,l:c,e:0,f:String(u.flag||""),p:String(l.playId||""),...n.apiBase?{a:n.apiBase}:{}}}function INr(t,e={}){let r={"User-Agent":t.headers?.["user-agent"]||"Mozilla/5.0 EmbyVideoProxy"};return t.headers?.range&&(r.Range=t.headers.range),e&&typeof e=="object"&&Object.keys(e).forEach(n=>{let s=e[n];s!=null&&(r[n]=String(s))}),r}async function Jft(t,e,r,n){let s=await Ae.get(r,{responseType:"stream",timeout:3e4,maxRedirects:5,validateStatus:()=>!0,headers:INr(t,n)}),i=["content-type","content-length","accept-ranges","content-range","cache-control","etag","last-modified"];return e.code(s.status),i.forEach(a=>{let o=s.headers?.[a];o!=null&&e.header(a,o)}),e.send(s.data)}function TNr(t={},e=""){if(ENr.has(String(t.k||"")))return!0;try{let r=String(new URL(String(e||"")).hostname||"").toLowerCase();return r.includes("mcloud.139.com")||r.includes("yun.139.com")}catch{return!1}}function wNr(t=""){try{return new URL(String(t||"")).toString()}catch{return String(t||"")}}async function _le(t,e,r,n=""){let s=_Nr(e.params.mediaId);if(!s)return r.code(404),"";let i=await CNr(t,s);if(!i||!i.k||!i.f||!i.p)return r.code(404),"";let a={spiderKey:i.k,spiderType:i.t,apiBase:String(i.a||"")},o=await am(t,a,i.f,i.p,e).catch(()=>null),c=um(o||{},String(e.query?.line||""));if(!c.url)return r.code(404),"";let u=String(n||"").trim(),l=u;try{let d=String(e.raw?.url||""),f=`/${String(e.params.mediaId||"")}/`,p=d.indexOf(f);if(p>=0){let m=d.slice(p+f.length).trim();m&&(l=m)}}catch{}if(u&&!/^stream\./i.test(u))try{let d=new URL(c.url),f=new URL(l||u,d);return Jft(e,r,f.toString(),c.header)}catch{return r.code(400),""}try{let d=new URL(c.url);if(!["http:","https:"].includes(d.protocol))return r.code(403),""}catch{return r.code(400),""}return TNr(i,c.url)||Object.keys(c.header||{}).length>0?Jft(e,r,c.url,c.header):r.redirect(307,wNr(c.url))}async function Sle(t){let e=async(r,n)=>{t.embyExtractToken(r)&&await t.embyRequireAuth(r,n)};t.get("/:mediaId/AdditionalParts",{preHandler:e},async()=>Ut([])),t.get("/:mediaId/stream.mkv",{preHandler:e},async(r,n)=>_le(t,r,n,"stream.mkv")),t.get("/:mediaId/:fileName",{preHandler:e},async(r,n)=>_le(t,r,n,String(r.params.fileName||""))),t.get("/:mediaId/*",{preHandler:e},async(r,n)=>_le(t,r,n,String(r.params["*"]||""))),t.get("/:mediaId/subtitles/:subtitleId",{preHandler:e},async(r,n)=>(n.code(404),""))}var RNr=new Set(["tgchannel","tgsou","pansou","panta"]),NNr=!1;function ONr(t=""){return/(移动|yidong|139)/i.test(String(t||""))}function PNr(t=""){try{let e=String(new URL(String(t||"")).hostname||"").toLowerCase();return e.includes("mcloud.139.com")||e.includes("yun.139.com")}catch{return!1}}function Xft(t="",e="mkv"){let r=String(t||"").trim();if(!r)return e;if(/\.m3u8($|\?)/i.test(r))return"m3u8";try{let s=new URL(r).pathname.match(/\.([a-z0-9]{2,6})$/i);if(s?.[1])return s[1].toLowerCase()}catch{}return e}function DNr(t,e,r={}){if(t.embyContext?.config?.requestLog)try{console.log(`[Emby Transform] ${e}:`,JSON.stringify(r))}catch{}}function kNr(t){let r=String(t?.headers?.["x-forwarded-proto"]||"").split(",")[0].trim()||t?.protocol||"http",s=String(t?.headers?.["x-forwarded-host"]||"").split(",")[0].trim()||t?.headers?.host||"127.0.0.1";return`${r}://${s}`}function LNr(t,e,r="mkv"){return`${kNr(t)}/emby${tpt(t,e,r,!0)}`}function tpt(t,e,r="mkv",n=!1){let s=/^[a-z0-9]{2,8}$/i.test(String(r||""))?String(r).toLowerCase():"mkv",i=n&&t?.embyToken?`?api_key=${encodeURIComponent(t.embyToken)}`:"";return`/videos/${String(e||"")}/stream.${s}${i}`}async function BNr(t,e,r,n="\u9ED8\u8BA4"){let s=wn("media",{k:String(r?.k||""),t:Number(r?.t||3),v:String(r?.v||""),l:Number(r?.l||0),e:Number(r?.e||0),f:String(r?.f||n||""),...r?.a?{a:String(r.a||"")}:{}}),i=RNr.has(String(r?.k||""))?"m3u8":"mkv",a=Xft(String(r?.p||""),i),o=LNr(e,s,a),c=tpt(e,s,a,!0),u={},l=!1,d=String(n||r?.f||"");if(NNr&&ONr(d)&&r?.k&&r?.f&&r?.p){let p={spiderKey:String(r.k||""),spiderType:Number(r.t||3),apiBase:String(r.a||"")},m=await am(t,p,String(r.f||""),String(r.p||""),e).catch(()=>null),h=um(m||{},String(n||""));h.url&&PNr(h.url)&&(a=Xft(h.url,a),o=h.url,c=h.url,u=h.header||{},l=!1)}return{Id:s,Name:n,Type:"Default",Protocol:"Http",Container:a,IsRemote:!0,SupportsTranscoding:!1,SupportsDirectStream:!0,SupportsDirectPlay:!0,IsInfiniteStream:!1,SupportsProbing:!1,MediaStreams:[],RequiredHttpHeaders:u,Path:o,DirectStreamUrl:c,AddApiKeyToDirectStreamUrl:l,ItemId:s}}async function MNr(t,e,r,n,s,i){let a=String(r?.vod_name||""),o=String(r?.vod_pic||"").trim(),c=String(r?.tmdbHintRemarks||r?.vod_remarks||"").trim(),u=String(r?.tmdbHintYear||r?.vod_year||"").trim(),l=[],d=new Map;for(let f=0;f<n.length;f+=1){let p=n[f],m={k:e.spiderKey,t:e.spiderType,v:String(r.vod_id),l:f,...e.apiBase?{a:e.apiBase}:{}};a&&(m.n=a),o&&(m.u=o),c&&(m.r=c),u&&(m.y=u);let h=wn("sea",m),A={Name:p.flag||`\u7B2C${f+1}\u5B63`,Id:h,ParentId:s,SeriesId:s,SeriesName:a,IndexNumber:f+1,ChildCount:p.episodes.length,ServerId:i,IsFolder:!0,Type:"Season",ImageTags:{Primary:h},BackdropImageTags:[],UserData:ss()},b=`s${VM(r,p,f)}`,y=d.get(b);y===void 0&&(y=await YM(t,"season",{spiderRef:e,vod:r,line:p,lineIndex:f})||null,d.set(b,y)),y&&Object.assign(A,y),l.push(A)}return l}async function WNr(t,e,r,n,s,i,a,o=0,c=void 0){let u=String(n?.vod_name||""),l=String(n?.vod_pic||"").trim(),d=String(n?.tmdbHintRemarks||n?.vod_remarks||"").trim(),f=String(n?.tmdbHintYear||n?.vod_year||"").trim(),p=s?.line,m=Number(s?.lineIndex||0),h=Number(s?.episodeOffset||0),g=(Array.isArray(p?.episodes)?p.episodes:[])[o];if(!p||!g?.playId)return null;let b=h+o,y=fA(g?.name,b+1),x={k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:m,e:b,f:p.flag,p:g.playId,...r.apiBase?{a:r.apiBase}:{}};u&&(x.n=u),l&&(x.u=l),d&&(x.r=d),f&&(x.y=f);let v=wn("ep",x),C=await BNr(t,e,{k:r.spiderKey,t:r.spiderType,...r.apiBase?{a:r.apiBase}:{},v:String(n.vod_id),l:m,e:b,f:p.flag,p:g.playId},String(p.flag||`\u7EBF\u8DEF${m+1}`)),R={Name:g.name||`\u7B2C${b+1}\u96C6`,Id:v,ParentId:i,SeasonId:wn("sea",{k:r.spiderKey,t:r.spiderType,v:String(n.vod_id),l:m,...r.apiBase?{a:r.apiBase}:{},...u?{n:u}:{},...l?{u:l}:{},...d?{r:d}:{},...f?{y:f}:{}}),SeriesId:i,SeriesName:u,SeasonName:p.flag||`\u7B2C${m+1}\u5B63`,IndexNumber:y,ParentIndexNumber:m+1,ServerId:a,IsFolder:!1,Type:"Episode",MediaType:"Video",CanPlay:!0,PrimaryImageAspectRatio:.6667,ImageTags:{Primary:v},BackdropImageTags:[],UserData:ss(),MediaSources:[C]};if(c!==void 0)return c&&Object.assign(R,c),R;let w=await g2(t,{spiderRef:r,vod:n,line:p,lineIndex:m,episode:g,episodeIndex:b});return w&&Object.assign(R,w),R}function $Nr(t=[]){return t.reduce((e,r)=>e+(Array.isArray(r?.line?.episodes)?r.line.episodes.length:0),0)}async function rpt(t,e,r,n,s,i,a,o=1/0){let c=[],u=Number(o),l=Number.isFinite(u)&&u>0?Math.floor(u):1/0;for(let d of s){let f=Array.isArray(d?.line?.episodes)?d.line.episodes:[],p=Number(d?.episodeOffset||0),m=await KM(t,{spiderRef:r,vod:n,line:d?.line,lineIndex:Number(d?.lineIndex||0),episodes:f,episodeOffset:p});for(let h=0;h<f.length;h+=1){let A=await WNr(t,e,r,n,d,i,a,h,m[h]??null);if(A&&c.push(A),c.length>=l)return c}}return c}function npt(t,e){if(!t?.payload||typeof t.payload!="object"||t.type==="vod")return e;let r=t.payload,n=String(r.k||""),s=String(r.v||"");return!n||!s?e:wn("vod",{k:n,t:Number(r.t||3),v:s,...r.a?{a:String(r.a||"")}:{},...r.n?{n:String(r.n||"")}:{},...r.u?{u:String(r.u||"")}:{}})}function spt(t=[],e={},r=null){let n=String(Xr(e,["seasonid","SeasonId","seasonId"],""));if(n){let i=$s(n);if(i?.type==="sea"){let a=Number(i.payload?.l||0),o=t[a];return o?[{line:o,lineIndex:a}]:[]}}let s=Number(Xr(e,["season","Season"],NaN));if(Number.isFinite(s)&&s>0){let i=s-1,a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="sea"){let i=Number(r.payload?.l||0),a=t[i];return a?[{line:a,lineIndex:i}]:[]}if(r?.type==="ep"){let i=Number(r.payload?.l||0),a=Number(r.payload?.e||0),o=t[i];return!o||!o.episodes[a]?[]:[{line:{...o,episodes:[o.episodes[a]]},lineIndex:i,episodeOffset:a}]}return t.map((i,a)=>({line:i,lineIndex:a}))}function FNr(t,e,r,n=[]){let i=l2(t,e,r)?.decoded?.payload||null;if(!i)return n;let a=Number(i.l||0),o=Number(i.e||0),c=n.find(l=>Number(l?.lineIndex||0)===a),u=Array.isArray(c?.line?.episodes)?c.line.episodes:[];return u[o]?[{...c,episodeOffset:o,line:{...c.line,episodes:u.slice(o)}}]:n}async function vle(t,e){let r=$s(e);if(!r||!["vod","sea","ep"].includes(r.type))return null;let n=r.payload||{},s=Zl(n),i=String(n.v||"");if(!s.spiderKey||!i)return null;let a=await Oc(t,s,i).catch(()=>null),o=Pc(a);if(!o)return null;yA(o,n),!String(o?.vod_pic||"").trim()&&n?.u&&(o.vod_pic=String(n.u||"").trim());let c=ho(o.vod_play_from,o.vod_play_url);return c.length?{decoded:r,spiderRef:s,vod:o,lines:c}:null}async function Zft(t,e,r={},n=null){let s=await vle(t,e);if(!s)return[];let{decoded:i,spiderRef:a,vod:o,lines:c}=s,u=spt(c,r,i);if(!u.length)return[];let l=npt(i,e);return rpt(t,n,a,o,u,l,t.embyContext.config.serverId)}async function ept(t,e){let r=await vle(t,e);if(!r)return[];let{spiderRef:n,vod:s,lines:i}=r;return MNr(t,n,s,i,e,t.embyContext.config.serverId)}async function Cle(t){let e={preHandler:t.embyRequireAuth};t.get("/Persons",e,async()=>Ut([])),t.get("/Genres",e,async()=>Ut([])),t.get("/Tags",e,async()=>Ut([])),t.get("/OfficialRatings",e,async()=>Ut([])),t.get("/Years",e,async()=>Ut([])),t.get("/Studios",e,async()=>Ut([])),t.get("/Shows/NextUp",e,async r=>{let n=r.query||{},s=String(Xr(n,["SeriesId","seriesId"],"")).trim(),i=Pu(Xr(n,["Limit","limit"],1),1),a=r.embyUser?.Id||t.embyContext.user.id;if(!s)return Ut([]);let o=await vle(t,s);if(!o)return Ut([]);let{decoded:c,spiderRef:u,vod:l,lines:d}=o,f=npt(c,s),p=FNr(t,a,f,spt(d,n,c));if(!p.length)return Ut([]);let m=$Nr(p),h=Fs(t,a,await rpt(t,r,u,l,p,f,t.embyContext.config.serverId,i));return DNr(t,"nextup.result",{seriesId:s,total:m,first:h[0]?{id:h[0].Id,type:h[0].Type,canPlay:h[0].CanPlay,mediaSourceCount:Array.isArray(h[0].MediaSources)?h[0].MediaSources.length:0}:null}),Ut(h,m)}),t.get("/Shows/:seriesId/Seasons",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Fs(t,o,await ept(t,a));return Ut(Ia(c,s,i),c.length)}),t.get("/Shows/:seriesId/Episodes",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.seriesId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Fs(t,o,await Zft(t,a,n,r));return Ut(Ia(c,s,i),c.length)}),t.get("/Items/:itemId/Seasons",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Fs(t,o,await ept(t,a));return Ut(Ia(c,s,i),c.length)}),t.get("/Items/:itemId/Episodes",e,async r=>{let n=r.query||{},s=Number(Xr(n,["StartIndex","startindex"],0)),i=Pu(Xr(n,["Limit","limit"],150),150),a=String(r.params.itemId||""),o=r.embyUser?.Id||t.embyContext.user.id,c=Fs(t,o,await Zft(t,a,n,r));return Ut(Ia(c,s,i),c.length)}),t.get("/Sessions",e,async r=>[{PlayState:{CanSeek:!0,IsPaused:!1,IsMuted:!1,RepeatMode:"RepeatNone",SleepTimerMode:"None",SubtitleOffset:0,Shuffle:!1,PlaybackRate:1},AdditionalUsers:[],RemoteEndPoint:"mycatpaw",Protocol:"HTTP/1.1",PlayableMediaTypes:["Video"],PlaylistIndex:0,PlaylistLength:0,Id:t.embyContext.config.serverId,ServerId:t.embyContext.config.serverId,UserId:r.embyUser?.Id||"",UserName:r.embyUser?.Name||"",Client:"",LastActivityDate:Ws(),DeviceName:"",InternalDeviceId:0,DeviceId:"",ApplicationVersion:t.embyContext.config.version,SupportedCommands:[],SupportsRemoteControl:!1}]),t.post("/Sessions/Playing",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await d2(t,s,r.body||{},"playing"),n.code(204).send()}),t.post("/Sessions/Playing/Progress",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await d2(t,s,r.body||{},"progress"),n.code(204).send()}),t.post("/Sessions/Playing/Stopped",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await d2(t,s,r.body||{},"stopped"),n.code(204).send()}),t.post("/Sessions/Playing/Ping",e,async(r,n)=>{let s=r.embyUser?.Id||t.embyContext.user.id;await d2(t,s,r.body||{},"ping"),n.code(204).send()}),t.get("/DisplayPreferences/Usersettings",e,async()=>({Id:"usersettings",CustomPrefs:{},SortOrder:"Ascending"})),t.get("/Environment/DefaultDirectoryBrowser",e,async()=>Ut([]))}function ipt(t){return t&&String(t).match(/Token="?([^",\s]+)"?/i)?.[1]||""}var Ile=Symbol("embyLogStartAt"),UNr=/(token|password|passwd|pwd|pw|authorization|cookie|api[_-]?key|session)/i;function s6(t){let e=String(t??"");return e?e.length<=6?"***":`${e.slice(0,2)}***${e.slice(-2)}`:""}function QE(t,e=0,r=new WeakSet){if(t==null)return t;if(typeof t=="string")return t.length>240?`${t.slice(0,240)}...(truncated)`:t;if(typeof t!="object")return t;if(r.has(t))return"[Circular]";if(e>=3)return"[MaxDepth]";if(r.add(t),Array.isArray(t))return t.slice(0,10).map(s=>QE(s,e+1,r));let n={};for(let[s,i]of Object.entries(t)){if(UNr.test(s)){n[s]=s6(i);continue}n[s]=QE(i,e+1,r)}return n}function qNr(t){return t.routeOptions?.url||t.url||t.raw?.url||""}function Tle(t,e){if(t==null||t==="")return e;let r=String(t).trim().toLowerCase();return["0","false","off","no"].includes(r)?!1:["1","true","on","yes"].includes(r)?!0:e}function jNr(t,e,r){let n=String(e||"").trim();if(!n){r(null,{});return}try{r(null,JSON.parse(n))}catch(s){s.statusCode=400,r(s)}}function E2(t={}){let e=String(process.env.EMBY_TMDB_API_KEY||t.tmdbApiKey||"");return{enable:t.enable!==!1,username:String(process.env.EMBY_USERNAME||t.username||"CatPawPlay"),password:String(process.env.EMBY_PASSWORD||t.password||"CatPawPlay"),serverName:String(process.env.EMBY_SERVER_NAME||t.serverName||"CatPawPlay"),serverId:String(process.env.EMBY_SERVER_ID||t.serverId||"mycatpaw"),version:String(process.env.EMBY_VERSION||t.version||"4.8.0.80"),apiKey:String(process.env.EMBY_API_KEY||t.apiKey||""),searchSourcePrefix:Tle(process.env.EMBY_SEARCH_SOURCE_PREFIX,t.searchSourcePrefix!==!1),tokenTtlMs:Number(t.tokenTtlMs||30*24*60*60*1e3),requestLog:Tle(process.env.EMBY_REQUEST_LOG,process.env.NODE_ENV==="development"?t.requestLog!==!1:t.requestLog===!0),recoverToken:t.recoverToken!==!1&&process.env.EMBY_RECOVER_TOKEN!=="0",tmdbEnable:Tle(process.env.EMBY_TMDB_ENABLE,t.tmdbEnable!==!1&&!!e),tmdbApiKey:e,tmdbLanguage:String(process.env.EMBY_TMDB_LANGUAGE||t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(process.env.EMBY_TMDB_IMAGE_BASE||t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function wle(t){let e=null;try{e=await t.db?.getObjectDefault("/emby",null)}catch{}let r=null;try{r=await t.db?.getObjectDefault("/embyPlayback",null)}catch{}let n=E2({...t.config?.emby||{},...e&&typeof e=="object"?e:{}}),s={config:n,cache:CM({max:1200}),tmdbStore:null,tmdbClientState:null,tokens:new Map,user:{id:"emby-user-001",name:n.username},playbackState:QM(r),playbackPersistTimer:null};globalThis.__catpawEmbyRuntime=s,t.addContentTypeParser("application/json",{parseAs:"string"},jNr),t.addContentTypeParser("application/x-www-form-urlencoded",{parseAs:"string"},(i,a,o)=>{try{let c=new URLSearchParams(String(a)),u={};for(let[l,d]of c.entries())u[l]=d;o(null,u)}catch(c){o(c)}}),t.decorate("embyContext",s),t.decorate("embyExtractToken",function(a){let o=a.query||{};return o["x-emby-token"]||o.api_key||o["X-Emby-Token"]||a.headers?.["x-emby-token"]||ipt(a.headers?.["x-emby-authorization"])||ipt(a.headers?.authorization)||""}),t.decorate("embyRequireAuth",async function(a,o){if(!s.config.enable){o.code(503).send("Emby disabled");return}let c=t.embyExtractToken(a);if(!c){o.code(401).send("Unauthorized");return}if(s.config.apiKey&&c===s.config.apiKey){a.embyToken=c,a.embyUser={Id:s.user.id,Name:s.user.name};return}let u=s.tokens.get(c);if(!u){if(!s.config.recoverToken){o.code(401).send("Unauthorized");return}let l=Date.now();u={token:c,userId:s.user.id,userName:s.user.name,createdAt:l,lastUsedAt:l,expireAt:s.config.tokenTtlMs>0?l+s.config.tokenTtlMs:0,device:{client:"RecoveredClient",device:"RecoveredDevice",deviceId:"",version:s.config.version}},s.tokens.set(c,u),s.config.requestLog&&console.warn(`[Emby Auth] recovered token session token=${s6(c)} path=${a.raw?.url||a.url}`)}if(u.expireAt>0&&u.expireAt<=Date.now()){s.tokens.delete(c),o.code(401).send("Unauthorized");return}u.lastUsedAt=Date.now(),a.embyToken=c,a.embySession=u,a.embyUser={Id:u.userId,Name:u.userName}}),t.addHook("preHandler",async i=>{if(!s.config.requestLog)return;i[Ile]=process.hrtime.bigint();let a=qNr(i),o=QE(i.query||{}),c=i.body===void 0?void 0:QE(i.body),u=t.embyExtractToken(i),l=u?s6(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.log(`[Emby Req] #${i.id} ${i.method} ${i.raw.url} route=${a}${d}${f} token=${l}`)}),t.addHook("onError",async(i,a,o)=>{if(!s.config.requestLog)return;let c=i[Ile],u=typeof c=="bigint"?(Number(process.hrtime.bigint()-c)/1e6).toFixed(1):"-",l=a.statusCode||o.statusCode||500;console.error(`[Emby Err] #${i.id} ${i.method} ${i.raw?.url||i.url} status=${l} cost=${u}ms message=${o.message}`)}),t.addHook("onResponse",async(i,a)=>{if(!s.config.requestLog)return;let o=i[Ile],c=typeof o=="bigint"?(Number(process.hrtime.bigint()-o)/1e6).toFixed(1):"-";console.log(`[Emby Res] #${i.id} ${i.method} ${i.raw.url} status=${a.statusCode} cost=${c}ms`)}),t.setNotFoundHandler((i,a)=>{if(s.config.requestLog){let o=QE(i.query||{}),c=i.body===void 0?void 0:QE(i.body),u=t.embyExtractToken(i),l=u?s6(u):"-",d=Object.keys(o).length>0?` query=${JSON.stringify(o)}`:"",f=c!==void 0?` body=${JSON.stringify(c)}`:"";console.warn(`[Emby 404] ${i.method} ${i.raw.url}${d}${f} token=${l}`)}a.code(404).send("Not Found")}),t.addHook("onClose",async()=>{s.tokens.clear(),s.cache.clear(),s.tmdbStore?.memory?.clear?.(),s.tmdbStore?.pending?.clear?.(),s.tmdbStore=null,s.tmdbClientState=null,s.playbackPersistTimer&&(clearTimeout(s.playbackPersistTimer),s.playbackPersistTimer=null),globalThis.__catpawEmbyRuntime===s&&(globalThis.__catpawEmbyRuntime=null)}),t.register(Xue,{prefix:"/System"}),t.register(Jue,{prefix:"/Users"}),t.register(ele,{prefix:"/Library"}),t.register(ple,{prefix:"/Users"}),t.register(ble,{prefix:"/Items"}),t.register(Sle,{prefix:"/Videos"}),t.register(Cle)}function Rle(t={},e={}){let r=e.includeSecrets===!0;return{enable:t.enable!==!1,username:String(t.username||""),password:String(t.password||""),serverName:String(t.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,...r?{tmdbApiKey:String(t.tmdbApiKey||"")}:{},tmdbLanguage:String(t.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||"https://image.tmdb.org/t/p/original")}}async function apt(t){let e=await t.db.getObjectDefault("/emby",null);return e&&typeof e=="object"?e:{}}function opt(){let t=globalThis.__catpawEmbyRuntime;return t&&typeof t=="object"?t:null}function cpt(t={}){let e=opt();if(!e?.config)return;let r=String(e.config.username||""),n=String(e.config.password||""),s=String(e.config.tmdbApiKey||""),i=Object.prototype.hasOwnProperty.call(t,"tmdbApiKey"),a=String(t.username||r),o=String(i?t.tmdbApiKey||"":e.config.tmdbApiKey||"");Object.assign(e.config,{enable:t.enable!==!1,username:a,password:String(t.password||""),serverName:String(t.serverName||e.config.serverName||""),searchSourcePrefix:t.searchSourcePrefix!==!1,tmdbEnable:t.tmdbEnable!==!1,tmdbApiKey:o,tmdbLanguage:String(t.tmdbLanguage||e.config.tmdbLanguage||"zh-CN"),tmdbImageBase:String(t.tmdbImageBase||e.config.tmdbImageBase||"https://image.tmdb.org/t/p/original")}),e.user.name=a,r!==e.config.username||n!==e.config.password?e.tokens?.clear():e.tokens?.size&&e.tokens.forEach(l=>{l.userName=e.config.username}),s!==o&&(e.tmdbStore?.memory?.clear?.(),e.tmdbStore?.pending?.clear?.(),e.tmdbClientState=null)}var HNr=async t=>{let e=await apt(t),r=E2({...t.config?.emby||{},...e});return Rle(r,{includeSecrets:!0})},QNr=async(t,e)=>{let r=await apt(t),n=E2({...t.config?.emby||{},...r,...e&&typeof e=="object"?e:{}}),s=Rle(n,{includeSecrets:!0});return await t.db.push("/emby",s),cpt(s),s},GNr=async t=>{await t.db.delete("/emby");let e=Rle(E2(t.config?.emby||{}),{includeSecrets:!0});return cpt(e),e},VNr=async t=>{let e=opt();e?.tmdbStore?.memory?.clear?.(),e?.tmdbStore?.pending?.clear?.(),e&&(e.tmdbStore=null,e.tmdbClientState=null),await t.db.delete("/embyTmdb").catch(()=>{})};async function Nle(t){t.get("/setting",async(e,r)=>{r.send({code:0,data:await HNr(e.server)})}),t.put("/setting",async(e,r)=>{await QNr(e.server,e.body||{}),r.send({code:0})}),t.delete("/setting",async(e,r)=>{await GNr(e.server),r.send({code:0})}),t.post("/tmdb/cache/clear",async(e,r)=>{await VNr(e.server),r.send({code:0})})}var zNr=t=>{let e=Zw(t,{includePrefix:!1}).replace(/\/$/,""),r=wM()?TM():null;return[{key:"t4",name:"T4 \u8BA2\u9605",url:e2(e,"/t4")},{key:"uz",name:"UZ \u8BA2\u9605",url:e2(e,"/uz")},{key:"cat",name:"\u732B\u6E90\u8BA2\u9605",url:e2(e,"/index.js.md5",r)},{key:"emby",name:"Emby \u670D\u52A1\u5668",url:e2(e,"/emby")}]};async function Ole(t){t.get("/",(e,r)=>{r.type("text/html").send(` <!DOCTYPE html> <html> <head> @@ -10615,7 +10615,7 @@ ${J.name||J.address} \u8BF7\u6C42\u5931\u8D25:`),console.log(" - \u9519\u8BEF\u <script>${globalThis.websiteBundle}</script> </body> </html> - `)}),t.get("/subscriptions",(e,r)=>{r.send({code:0,data:{endpoints:qNr(e)}})}),t.register(Sue,{prefix:"/quark"}),t.register(sK,{prefix:"/uc"}),t.register(vue,{prefix:"/uc-tv"}),t.register(GK,{prefix:"/115"}),t.register(oae,{prefix:"/muou"}),t.register(pV,{prefix:"/duoduo"}),t.register(dae,{prefix:"/labi"}),t.register(hae,{prefix:"/shandian"}),t.register(xae,{prefix:"/ouge"}),t.register(Sae,{prefix:"/erxiao"}),t.register(Lae,{prefix:"/huban"}),t.register(Fae,{prefix:"/xiaoban"}),t.register(Iue,{prefix:"/tianyi"}),t.register(eoe,{prefix:"/wanou"}),t.register(Cue,{prefix:"/leijing"}),t.register(noe,{prefix:"/zhizhen"}),t.register(boe,{prefix:"/tgsou"}),t.register(Ooe,{prefix:"/pansou"}),t.register(Tue,{prefix:"/pan123"}),t.register(Rue,{prefix:"/xunlei"}),t.register(Oue,{prefix:"/ali"}),t.register(kue,{prefix:"/baidu"}),t.register(Bue,{prefix:"/guangyapan"}),t.register(Uue,{prefix:"/yidong"}),t.register(loe,{prefix:"/tgchannel"}),t.register(Soe,{prefix:"/tgfilebot"}),t.register(Oce,{prefix:"/sites"}),t.register(jue,{prefix:"/pans"}),t.register(Hue,{prefix:"/backup"}),t.register(kce,{prefix:"/danmu"}),t.register(Tle,{prefix:"/emby"}),t.register(gce,{prefix:"/emby-spider"}),t.register(Tce,{prefix:"/alist-video"}),t.register(Mce,{prefix:"/t4"}),t.register(Hce,{prefix:"/cms"}),t.register(Boe,{prefix:"/live2vod"}),t.register(Pae,{prefix:"/123ypzysq"})}var jr=null,Rle="__catpawProfile",s6=Number.parseInt(process.env.CATPAW_LOG_LIMIT||"1500",10)||1500,jNr=Number.parseInt(process.env.CATPAW_LOG_TEXT_LIMIT||"4096",10)||4096,xA=[],dpt=["log","info","warn","error","debug"],b2={},i6=!1;function Du(t,e=jNr){let r=String(t||"");if(!Number.isFinite(e)||e<=0||r.length<=e)return r;let n=Math.max(0,Math.floor(e*.75)),s=Math.max(0,e-n);return`${r.slice(0,n)}...(truncated ${r.length-e} chars)...${r.slice(-s)}`}function HNr(t){if(typeof t=="string")return Du(t);if(t instanceof Error)return Du(JSON.stringify(a6(t)));try{return Du(JSON.stringify(E2(t)))}catch{try{return Du(String(t))}catch{return"[Unserializable]"}}}function fpt(t,e=2,r=2){let n=String(t||"");return n?n.length<=e+r?"*".repeat(n.length):`${n.slice(0,e)}***${n.slice(-r)}`:""}function E2(t,e=0){if(t==null)return t;if(e>=2)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).length})]`:t;if(Array.isArray(t))return{type:"array",length:t.length,sample:t.slice(0,3).map(r=>E2(r,e+1))};if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t)){let i=n.toLowerCase();if(["cookie","cookies","token","authorization","auth","passwd","password","session","sess"].some(a=>i.includes(a))){s&&typeof s=="object"&&!Array.isArray(s)?r[n]={type:"object",keys:Object.keys(s).length,sampleKeys:Object.keys(s).slice(0,3)}:r[n]=fpt(s);continue}r[n]=E2(s,e+1)}return r}return typeof t=="string"&&t.length>120?`${t.slice(0,40)}...(${t.length} chars)...${t.slice(-12)}`:t}function ppt(t){if(!t||typeof t!="object")return{};let e=typeof t.toJSON=="function"?t.toJSON():t,r={};for(let[n,s]of Object.entries(e||{})){let i=n.toLowerCase();["cookie","authorization","token","secret","password"].some(a=>i.includes(a))?r[n]=fpt(s):r[n]=Du(s,260)}return r}function QNr(t){if(!(!t||typeof t!="object"))return{method:t.method,url:Du(t.url||"",500),baseURL:Du(t.baseURL||"",260),timeout:t.timeout,maxContentLength:t.maxContentLength,maxBodyLength:t.maxBodyLength,proxy:t.proxy,headers:ppt(t.headers)}}function GNr(t){if(!(!t||typeof t!="object"))return{method:t.method,protocol:t.protocol,host:t.host||t.hostname,path:Du(t.path||t.pathname||"",500),currentUrl:Du(t._currentUrl||"",500)}}function KNr(t){if(!t||typeof t!="object")return;let e=t.data;return{status:t.status,statusText:t.statusText,headers:ppt(t.headers),data:typeof e=="string"?Du(e,1e3):E2(e)}}function a6(t){if(!t||typeof t!="object")return t;let e={name:t.name,message:t.message||String(t),code:t.code,status:t.status,statusCode:t.statusCode,stack:Du(t.stack||"",4e3)},r=QNr(t.config),n=GNr(t.request),s=KNr(t.response);return r&&(e.config=r),n&&(e.request=n),s&&(e.response=s),e}function VNr(t){return t instanceof Error?a6(t):t}function zNr(){return process.env.NODE_ENV==="development"?!1:{serializers:{err:a6,error:a6}}}function YNr(t){if(!t||typeof t!="object")return t;let e={action:t.action||"-"};if(t.action==="saveProfile"&&t.opt&&typeof t.opt=="object"){let r=t.opt;return e.opt={keys:Object.keys(r),sitesCount:Array.isArray(r.sites?.list)?r.sites.list.length:void 0,pansCount:Array.isArray(r.pans?.list)?r.pans.list.length:void 0,quarkKeys:r.quark&&typeof r.quark=="object"?Object.keys(r.quark).length:void 0,ucKeys:r.uc&&typeof r.uc=="object"?Object.keys(r.uc).length:void 0},e}return E2(t)}function JNr(t,e){xA.push({ts:new Date().toISOString(),level:t,msg:e.map(HNr).join(" ")}),xA.length>s6&&xA.splice(0,xA.length-s6)}function XNr(){i6||(dpt.forEach(t=>{let e=console[t];typeof e=="function"&&(b2[t]=e.bind(console),console[t]=(...r)=>{JNr(t,r),Cit()||b2[t](...r.map(VNr))})}),i6=!0)}function ZNr(){i6&&(dpt.forEach(t=>{b2[t]&&(console[t]=b2[t],delete b2[t])}),i6=!1)}function eOr(t){t.get("/api/catpaw-logs",async e=>{let r=Number.parseInt(e.query?.limit,10),n=Number.isFinite(r)&&r>0?Math.min(r,s6):s6,s=xA.slice(-n);return{success:!0,total:xA.length,count:s.length,logs:s}}),t.post("/api/catpaw-logs/clear",async()=>(xA.length=0,{success:!0}))}function o6(...t){}function _2(t){return Object.prototype.toString.call(t)==="[object Object]"}function tOr(t){let e=t?.[Rle];return _2(e)?e:null}function opt(t){if(!_2(t))return{};if(!(Rle in t))return t;let{[Rle]:e,...r}=t;return r}function Nle(t){return _2(t)&&Object.keys(t).length>0}function cpt(t){if(t===void 0)return t;try{return JSON.parse(JSON.stringify(t))}catch{return t}}function upt(t,e){if(!Nle(t))return{found:!1};let r=String(e||"/");if(r==="/"||r==="")return{found:!0,value:t};let n=r.split("/").filter(Boolean),s=t;for(let i of n){if(!_2(s)&&!Array.isArray(s))return{found:!1};if(!Object.prototype.hasOwnProperty.call(s,i))return{found:!1};s=s[i]}return{found:!0,value:s}}function rOr(t,e){return{...t,...e}}function nOr(t,e){if(!Nle(e))return;let r=t.getData.bind(t),n=typeof t.getObjectDefault=="function"?t.getObjectDefault.bind(t):null;t.getData=async s=>{let i=upt(e,s);return i.found?cpt(i.value):r(s)},n&&(t.getObjectDefault=async(s,i)=>{let a=upt(e,s);return a.found?cpt(a.value):n(s,i)})}async function sOr(t){let e=tOr(t),r=Nle(e),n=r?rOr(opt(t),e):opt(t);jr=(0,lpt.default)({serverFactory:catServerFactory,forceCloseConnections:!0,caseSensitive:!1,logger:zNr(),maxParamLength:10240}),XNr(),eOr(jr),globalThis.messageToDart=jr.messageToDart=async u=>{try{console.log("messageToDart",YNr(u));let l=catDartServerPort();return l==0?null:(await Ae.post(`http://127.0.0.1:${l}/msg`,u)).data}catch(l){return console.error(l),null}},jr.address=function(){let u=this.server.address();return u.url=`http://${k0()}:${u.port}`,u.dynamic="js2p://_WEB_",u},jr.addHook("onError",async(u,l,d)=>(console.error("[fastify-error]",d),d.statusCode||(d.statusCode=500),d)),jr.addHook("onRequest",async u=>{if(process.env.NODE_ENV!=="development")return;let l=String(u.raw?.url||u.url||"");if(/stream\.(m3u8|mkv)|\/videos\//i.test(l)){let d=String(u.headers?.host||"-");console.log(`[Stream Probe] ${u.method} ${l} host=${d}`)}}),jr.stop=!1,jr.config=n;let s=9321;o6("before start()",{danmuPort:s,node:process.version,platform:`${process.platform}/${process.arch}`}),wit(s),o6("after start()",{danmuPort:s}),jr.db=new c6.JsonDB(new c6.Config((process.env.NODE_PATH||".")+"/default.db.json",!0,!0,"/",!0));let i=jr.db.getData.bind(jr.db);r&&nOr(jr.db,n);let a=jr.db.push.bind(jr.db);jr.db.push=async(...u)=>{let l=await a(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l};let o=jr.db.delete.bind(jr.db);jr.db.delete=async(...u)=>{let l=await o(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l},r||jr.messageToDart({action:"queryProfile"}).then(u=>{if(u&&Object.keys(u).length>0){let l=_2(u)?u:{};a("/",l)}}),jr.register(iue,{db:jr.db,config:n}),jr.register(wle,{prefix:"/website"}),jr.register(Ile,{prefix:"/emby"}),globalThis.Pans=await que(jr),await Ldt(jr),globalThis.getPanName=u=>globalThis.Pans.find(l=>l.key===u)?.name,globalThis.getPanEnabled=u=>globalThis.Pans.find(l=>l.key===u)?.enable;let c=(u,l=!0)=>{let d=l&&process.env.DEV_HTTP_PORT?process.env.DEV_HTTP_PORT:u;jr.listen({port:d,host:"0.0.0.0"},(f,p)=>{f?(console.error(f),f.code==="EADDRINUSE"&&(console.log(`Port ${d} is already in use. Trying next available port...`),c(u+1,!1))):console.log(`Server listening on ${p}`)})};c(2333)}async function iOr(){o6("before stop()"),Rit(),o6("after stop()"),jr&&(jr.close(),jr.stop=!0),ZNr(),jr=null}0&&(module.exports={start,stop}); + `)}),t.get("/subscriptions",(e,r)=>{r.send({code:0,data:{endpoints:zNr(e)}})}),t.register(vue,{prefix:"/quark"}),t.register(iV,{prefix:"/uc"}),t.register(Cue,{prefix:"/uc-tv"}),t.register(VV,{prefix:"/115"}),t.register(cae,{prefix:"/muou"}),t.register(mz,{prefix:"/duoduo"}),t.register(fae,{prefix:"/labi"}),t.register(gae,{prefix:"/shandian"}),t.register(bae,{prefix:"/ouge"}),t.register(vae,{prefix:"/erxiao"}),t.register(Mae,{prefix:"/huban"}),t.register(Uae,{prefix:"/xiaoban"}),t.register(Iue,{prefix:"/tianyi"}),t.register(toe,{prefix:"/wanou"}),t.register(Tue,{prefix:"/leijing"}),t.register(soe,{prefix:"/zhizhen"}),t.register(Eoe,{prefix:"/tgsou"}),t.register(Poe,{prefix:"/pansou"}),t.register(Nue,{prefix:"/pan123"}),t.register(Pue,{prefix:"/xunlei"}),t.register(kue,{prefix:"/ali"}),t.register(Bue,{prefix:"/baidu"}),t.register(Wue,{prefix:"/guangyapan"}),t.register(Hue,{prefix:"/yidong"}),t.register(doe,{prefix:"/tgchannel"}),t.register(voe,{prefix:"/tgfilebot"}),t.register(Pce,{prefix:"/sites"}),t.register(Gue,{prefix:"/pans"}),t.register(Vue,{prefix:"/backup"}),t.register(kce,{prefix:"/danmu"}),t.register(Nle,{prefix:"/emby"}),t.register(Ace,{prefix:"/emby-spider"}),t.register(wce,{prefix:"/alist-video"}),t.register(Wce,{prefix:"/t4"}),t.register(Qce,{prefix:"/cms"}),t.register(Boe,{prefix:"/live2vod"}),t.register(Dae,{prefix:"/123ypzysq"})}var jr=null,Ple="__catpawProfile",i6=Number.parseInt(process.env.CATPAW_LOG_LIMIT||"1500",10)||1500,KNr=Number.parseInt(process.env.CATPAW_LOG_TEXT_LIMIT||"4096",10)||4096,xA=[],ppt=["log","info","warn","error","debug"],_2={},a6=!1;function ku(t,e=KNr){let r=String(t||"");if(!Number.isFinite(e)||e<=0||r.length<=e)return r;let n=Math.max(0,Math.floor(e*.75)),s=Math.max(0,e-n);return`${r.slice(0,n)}...(truncated ${r.length-e} chars)...${r.slice(-s)}`}function YNr(t){if(typeof t=="string")return ku(t);if(t instanceof Error)return ku(JSON.stringify(o6(t)));try{return ku(JSON.stringify(S2(t)))}catch{try{return ku(String(t))}catch{return"[Unserializable]"}}}function mpt(t,e=2,r=2){let n=String(t||"");return n?n.length<=e+r?"*".repeat(n.length):`${n.slice(0,e)}***${n.slice(-r)}`:""}function S2(t,e=0){if(t==null)return t;if(e>=2)return Array.isArray(t)?`[Array(${t.length})]`:typeof t=="object"?`[Object(${Object.keys(t).length})]`:t;if(Array.isArray(t))return{type:"array",length:t.length,sample:t.slice(0,3).map(r=>S2(r,e+1))};if(typeof t=="object"){let r={};for(let[n,s]of Object.entries(t)){let i=n.toLowerCase();if(["cookie","cookies","token","authorization","auth","passwd","password","session","sess"].some(a=>i.includes(a))){s&&typeof s=="object"&&!Array.isArray(s)?r[n]={type:"object",keys:Object.keys(s).length,sampleKeys:Object.keys(s).slice(0,3)}:r[n]=mpt(s);continue}r[n]=S2(s,e+1)}return r}return typeof t=="string"&&t.length>120?`${t.slice(0,40)}...(${t.length} chars)...${t.slice(-12)}`:t}function hpt(t){if(!t||typeof t!="object")return{};let e=typeof t.toJSON=="function"?t.toJSON():t,r={};for(let[n,s]of Object.entries(e||{})){let i=n.toLowerCase();["cookie","authorization","token","secret","password"].some(a=>i.includes(a))?r[n]=mpt(s):r[n]=ku(s,260)}return r}function JNr(t){if(!(!t||typeof t!="object"))return{method:t.method,url:ku(t.url||"",500),baseURL:ku(t.baseURL||"",260),timeout:t.timeout,maxContentLength:t.maxContentLength,maxBodyLength:t.maxBodyLength,proxy:t.proxy,headers:hpt(t.headers)}}function XNr(t){if(!(!t||typeof t!="object"))return{method:t.method,protocol:t.protocol,host:t.host||t.hostname,path:ku(t.path||t.pathname||"",500),currentUrl:ku(t._currentUrl||"",500)}}function ZNr(t){if(!t||typeof t!="object")return;let e=t.data;return{status:t.status,statusText:t.statusText,headers:hpt(t.headers),data:typeof e=="string"?ku(e,1e3):S2(e)}}function o6(t){if(!t||typeof t!="object")return t;let e={name:t.name,message:t.message||String(t),code:t.code,status:t.status,statusCode:t.statusCode,stack:ku(t.stack||"",4e3)},r=JNr(t.config),n=XNr(t.request),s=ZNr(t.response);return r&&(e.config=r),n&&(e.request=n),s&&(e.response=s),e}function eOr(t){return t instanceof Error?o6(t):t}function tOr(){return process.env.NODE_ENV==="development"?!1:{serializers:{err:o6,error:o6}}}function rOr(t){if(!t||typeof t!="object")return t;let e={action:t.action||"-"};if(t.action==="saveProfile"&&t.opt&&typeof t.opt=="object"){let r=t.opt;return e.opt={keys:Object.keys(r),sitesCount:Array.isArray(r.sites?.list)?r.sites.list.length:void 0,pansCount:Array.isArray(r.pans?.list)?r.pans.list.length:void 0,quarkKeys:r.quark&&typeof r.quark=="object"?Object.keys(r.quark).length:void 0,ucKeys:r.uc&&typeof r.uc=="object"?Object.keys(r.uc).length:void 0},e}return S2(t)}function nOr(t,e){xA.push({ts:new Date().toISOString(),level:t,msg:e.map(YNr).join(" ")}),xA.length>i6&&xA.splice(0,xA.length-i6)}function sOr(){a6||(ppt.forEach(t=>{let e=console[t];typeof e=="function"&&(_2[t]=e.bind(console),console[t]=(...r)=>{nOr(t,r),Nit()||_2[t](...r.map(eOr))})}),a6=!0)}function iOr(){a6&&(ppt.forEach(t=>{_2[t]&&(console[t]=_2[t],delete _2[t])}),a6=!1)}function aOr(t){t.get("/api/catpaw-logs",async e=>{let r=Number.parseInt(e.query?.limit,10),n=Number.isFinite(r)&&r>0?Math.min(r,i6):i6,s=xA.slice(-n);return{success:!0,total:xA.length,count:s.length,logs:s}}),t.post("/api/catpaw-logs/clear",async()=>(xA.length=0,{success:!0}))}function c6(...t){}function v2(t){return Object.prototype.toString.call(t)==="[object Object]"}function oOr(t){let e=t?.[Ple];return v2(e)?e:null}function upt(t){if(!v2(t))return{};if(!(Ple in t))return t;let{[Ple]:e,...r}=t;return r}function Dle(t){return v2(t)&&Object.keys(t).length>0}function lpt(t){if(t===void 0)return t;try{return JSON.parse(JSON.stringify(t))}catch{return t}}function dpt(t,e){if(!Dle(t))return{found:!1};let r=String(e||"/");if(r==="/"||r==="")return{found:!0,value:t};let n=r.split("/").filter(Boolean),s=t;for(let i of n){if(!v2(s)&&!Array.isArray(s))return{found:!1};if(!Object.prototype.hasOwnProperty.call(s,i))return{found:!1};s=s[i]}return{found:!0,value:s}}function cOr(t,e){return{...t,...e}}function uOr(t,e){if(!Dle(e))return;let r=t.getData.bind(t),n=typeof t.getObjectDefault=="function"?t.getObjectDefault.bind(t):null;t.getData=async s=>{let i=dpt(e,s);return i.found?lpt(i.value):r(s)},n&&(t.getObjectDefault=async(s,i)=>{let a=dpt(e,s);return a.found?lpt(a.value):n(s,i)})}async function lOr(t){let e=oOr(t),r=Dle(e),n=r?cOr(upt(t),e):upt(t);jr=(0,fpt.default)({serverFactory:catServerFactory,forceCloseConnections:!0,caseSensitive:!1,logger:tOr(),maxParamLength:10240}),sOr(),aOr(jr),globalThis.messageToDart=jr.messageToDart=async u=>{try{console.log("messageToDart",rOr(u));let l=catDartServerPort();return l==0?null:(await Ae.post(`http://127.0.0.1:${l}/msg`,u)).data}catch(l){return console.error(l),null}},jr.address=function(){let u=this.server.address();return u.url=`http://${D0()}:${u.port}`,u.dynamic="js2p://_WEB_",u},jr.addHook("onError",async(u,l,d)=>(console.error("[fastify-error]",d),d.statusCode||(d.statusCode=500),d)),jr.addHook("onRequest",async u=>{if(process.env.NODE_ENV!=="development")return;let l=String(u.raw?.url||u.url||"");if(/stream\.(m3u8|mkv)|\/videos\//i.test(l)){let d=String(u.headers?.host||"-");console.log(`[Stream Probe] ${u.method} ${l} host=${d}`)}}),jr.stop=!1,jr.config=n;let s=9321;c6("before start()",{danmuPort:s,node:process.version,platform:`${process.platform}/${process.arch}`}),Pit(s),c6("after start()",{danmuPort:s}),jr.db=new u6.JsonDB(new u6.Config((process.env.NODE_PATH||".")+"/default.db.json",!0,!0,"/",!0));let i=jr.db.getData.bind(jr.db);r&&uOr(jr.db,n);let a=jr.db.push.bind(jr.db);jr.db.push=async(...u)=>{let l=await a(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l};let o=jr.db.delete.bind(jr.db);jr.db.delete=async(...u)=>{let l=await o(...u);return i("/").then(d=>{jr.messageToDart({action:"saveProfile",opt:d})}),l},r||jr.messageToDart({action:"queryProfile"}).then(u=>{if(u&&Object.keys(u).length>0){let l=v2(u)?u:{};a("/",l)}}),jr.register(aue,{db:jr.db,config:n}),jr.register(Ole,{prefix:"/website"}),jr.register(wle,{prefix:"/emby"}),globalThis.Pans=await Que(jr),await Wdt(jr),globalThis.getPanName=u=>globalThis.Pans.find(l=>l.key===u)?.name,globalThis.getPanEnabled=u=>globalThis.Pans.find(l=>l.key===u)?.enable;let c=(u,l=!0)=>{let d=l&&process.env.DEV_HTTP_PORT?process.env.DEV_HTTP_PORT:u;jr.listen({port:d,host:"0.0.0.0"},(f,p)=>{f?(console.error(f),f.code==="EADDRINUSE"&&(console.log(`Port ${d} is already in use. Trying next available port...`),c(u+1,!1))):console.log(`Server listening on ${p}`)})};c(2333)}async function dOr(){c6("before stop()"),Dit(),c6("after stop()"),jr&&(jr.close(),jr.stop=!0),iOr(),jr=null}0&&(module.exports={start,stop}); /*! Bundled license information: forwarded/index.js: diff --git a/catvod/douer/index.js.md5 b/catvod/douer/index.js.md5 index 83eb9386..4ecc10d1 100644 --- a/catvod/douer/index.js.md5 +++ b/catvod/douer/index.js.md5 @@ -1 +1 @@ -96371CD4366A645DEB7C1A8938A610D5 \ No newline at end of file +A6813D18271C488B1010D4634C1A3220 \ No newline at end of file diff --git a/cpu_iy/LICENSE b/cpu_iy/LICENSE deleted file mode 100644 index f50ef622..00000000 --- a/cpu_iy/LICENSE +++ /dev/null @@ -1,24 +0,0 @@ -This is free and unencumbered software released into the public domain. - -Anyone is free to copy, modify, publish, use, compile, sell, or -distribute this software, either in source code form or as a compiled -binary, for any purpose, commercial or non-commercial, and by any -means. - -In jurisdictions that recognize copyright laws, the author or authors -of this software dedicate any and all copyright interest in the -software to the public domain. We make this dedication for the benefit -of the public at large and to the detriment of our heirs and -successors. We intend this dedication to be an overt act of -relinquishment in perpetuity of all present and future rights to this -software under copyright law. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. - -For more information, please refer to <https://unlicense.org> diff --git a/cpu_iy/README.en.md b/cpu_iy/README.en.md deleted file mode 100644 index 236f3556..00000000 --- a/cpu_iy/README.en.md +++ /dev/null @@ -1,36 +0,0 @@ -# IY - -#### Description -天神IY测试主用 - -#### Software Architecture -Software architecture description - -#### Installation - -1. xxxx -2. xxxx -3. xxxx - -#### Instructions - -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request - - -#### Gitee Feature - -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) -4. The most valuable open source project [GVP](https://gitee.com/gvp) -5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) -6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/cpu_iy/README.md b/cpu_iy/README.md deleted file mode 100644 index b718ee9f..00000000 --- a/cpu_iy/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# IY - -#### 介绍 -天神IY测试主用 - -#### 软件架构 -软件架构说明 - - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx - -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request - - -#### 特技 - -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 -5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) diff --git a/cpu_iy/jars/XY4K.webp b/cpu_iy/jars/XY4K.webp deleted file mode 100644 index 79759ea6..00000000 Binary files a/cpu_iy/jars/XY4K.webp and /dev/null differ diff --git a/cpu_iy/jars/bd.png b/cpu_iy/jars/bd.png deleted file mode 100644 index fdd3ebb0..00000000 --- a/cpu_iy/jars/bd.png +++ /dev/null @@ -1 +0,0 @@ -STOKEN=10a49086d003f08fd5b139dcf2a1b4e30eed8ad76afe2673856d93bf9ac86fbb;PTOKEN_BFESS=d8a9c28fdf02b11796f8ac57b18ecc60;BDUSS=VhwSmJIaGl0ckpaNDJaclUxRjZ3S01oSnpFZHR3WGZld0dISERtZFBWcjAzRWRwSVFBQUFBJCQAAAAAAAAAAAEAAACnajIw0v7J7bbA0NBfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPRPIGn0TyBpS;PTOKEN=d8a9c28fdf02b11796f8ac57b18ecc60;BDUSS_BFESS=VhwSmJIaGl0ckpaNDJaclUxRjZ3S01oSnpFZHR3WGZld0dISERtZFBWcjAzRWRwSVFBQUFBJCQAAAAAAAAAAAEAAACnajIw0v7J7bbA0NBfAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPRPIGn0TyBpS;UBI_BFESS=fi_PncwhpxZ%7ETaJc4qXmNchYqar9ncmfKxq;newlogin=1;STOKEN_BFESS=10a49086d003f08fd5b139dcf2a1b4e30eed8ad76afe2673856d93bf9ac86fbb;UBI=fi_PncwhpxZ%7ETaJc4qXmNchYqar9ncmfKxq \ No newline at end of file diff --git a/cpu_iy/jars/ok.webp b/cpu_iy/jars/ok.webp deleted file mode 100644 index 91275f1f..00000000 Binary files a/cpu_iy/jars/ok.webp and /dev/null differ diff --git a/cpu_iy/jars/qk.png b/cpu_iy/jars/qk.png deleted file mode 100644 index 7f1c86ef..00000000 --- a/cpu_iy/jars/qk.png +++ /dev/null @@ -1 +0,0 @@ -ctoken=onry_djmdcxAPFRAmDSypaIV;__uid=AATvA6er4Pxy+3OWvP06SA3f;__pus=7e1c6404d7e5613636a7fec2cc81f7d4AAQJxOqfprXkqxUUWIDRRJ+c1pKzVlc7C65tlluXH/Y2KiKArLel26lpkUmUznKuAbJL0ZfeZloAIMiKnDw8gXvx;__kp=e71f1460-d355-11f0-9159-d75dd13d9bc9;__kps=AATvA6er4Pxy+3OWvP06SA3f;__ktd=HFOilQYfOIP4IoeiYil3FQ== \ No newline at end of file diff --git a/cpu_iy/jars/uc.png b/cpu_iy/jars/uc.png deleted file mode 100644 index b53e3367..00000000 --- a/cpu_iy/jars/uc.png +++ /dev/null @@ -1 +0,0 @@ -ctoken=YIq5Zhiv1mq0-g1XfR4XfF97;__uid=AATj+RRn0oPD9NPVxkosm8+S;__pus=a201b88b4fb2a111247321111ea9aa55AAR1geoU9Id9ken9KMGSmhEl69nvRxwermoIYTfo/VtgzvqYi+mV9lzwUaN9TuIYra4K5zwrl/DcrHGOjoT0bEEH;__kp=46e20370-b417-11f0-a959-83c103186cd8;UDRIVE_TRANSFER_SESS=qjIth5-asdu0-c2mrjuDTRbLHPoizPPgha59uwNuyPhib5eNtE2OARl0tdDD83DBcKRZeKWhCNVrsOjkbJHduuzZpgS8-5LfKHzM1RKLhZMuYV_Lif5yHtvvGOys9tLhq2nQoMtjZrn-3uI8v0kY_DwLbN6tF1i_NV0flvf3bBYGVdEQYIhHFOQTPae3oLop \ No newline at end of file diff --git a/cpu_iy/js/.keep b/cpu_iy/js/.keep deleted file mode 100644 index e69de29b..00000000 diff --git a/cpu_iy/js/茫茫.png b/cpu_iy/js/茫茫.png deleted file mode 100644 index 60bbf6f7..00000000 --- a/cpu_iy/js/茫茫.png +++ /dev/null @@ -1 +0,0 @@ -dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eZvuW/meaXoOaenFvlrphdJywKICAgIGhvc3Q6ICdodHRwczovL3BpYW5rdS5hcGkuJTZkJTY3JTc0JTc2LmNvbScsCiAgICBob21lVXJsOiAnJywKICAgIC8vIHNlYXJjaFVybDogJ2h0dHBzOi8vbW9iaWxlc28uYnouJTZkJTY3JTc0JTc2LmNvbS9wYy9zZWFyY2gvdjE/cT0qKiZwbj1meXBhZ2UmcGM9MTAnLAogICAgLy8g5paw54mI5o6l5Y+j5pCc57Si5Y+Y5oiQdjLlubbkuJTliqDkuobpqozor4HvvIzom4vnlrwKICAgIC8vIHNlYXJjaFVybDogJ2h0dHBzOi8vbW9iaWxlc28uYnoubWd0di5jb20vcGMvc2VhcmNoL3YyP2FsbG93ZWRSQz0xJnNyYz1tZ3R2JmRpZD1jZjAzYjk1OS02OTQ1LTRjYjYtYmNiMy04ODc2MjQ1OTM1NGQmdGltZXN0YW1wPTIwMjQtMDYtMjFUMTUlM0E1MiUzQTU1WiZzaWduVmVyc2lvbj0xJnNpZ25Ob25jZT04ZGFlNjdhMWZhZmM0YmRhOTg0ZWM4ZGViNDc2NjZhZCZxPSoqJnBuPWZ5cGFnZSZwYz0xMCZjb3JyPTEmX3N1cHBvcnQ9MTAwMDAwMDAmc2lnbmF0dXJlPTRlMjdmZGRjZDJhMWE2NmQ2YzE3NjRlZDZiNzRiYWI3JywKICAgIC8vIOeUqOaJi+acuueahOWQp++8jOaQnuS4jeWumui/meS4qgogICAgc2VhcmNoVXJsOiAnaHR0cHM6Ly9tb2JpbGVzby5iei4lNmQlNjclNzQlNzYuY29tL21zaXRlL3NlYXJjaC92Mj9xPSoqJnBuPWZ5cGFnZSZwYz0xMCcsCiAgICBkZXRhaWxVcmw6ICdodHRwczovL3Bjd2ViLmFwaS5tZ3R2LmNvbS9lcGlzb2RlL2xpc3Q/cGFnZT0xJnNpemU9NTAmdmlkZW9faWQ9ZnlpZCcsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcXVpY2tTZWFyY2g6IDAsCiAgICBmaWx0ZXJhYmxlOiAxLAogICAgbXVsdGk6IDEsCiAgICAvLyDliIbnsbvpk77mjqVmeXBhZ2Xlj4LmlbDmlK/mjIEx5LiqKCnooajovr7lvI8KICAgIC8vIGh0dHBzOi8vd3d3Lm1ndHYuY29tL2xpYi8zP2xhc3RwPWxpc3RfaW5kZXgma2luZD1hMSZ5ZWFyPWFsbCZjaGFyZ2VJbmZvPWExJnNvcnQ9YzIKICAgIHVybDogJy9yaWRlci9saXN0L3Bjd2ViL3YzP3BsYXRmb3JtPXBjd2ViJmNoYW5uZWxJZD1meWNsYXNzJnBuPWZ5cGFnZSZwYz04MCZodWRvbmc9MSZfc3VwcG9ydD0xMDAwMDAwMCZraW5kPWExJmFyZWE9YTEnLAogICAgZmlsdGVyX3VybDogJ3llYXI9e3tmbC55ZWFyIG9yICJhbGwifX0mc29ydD17e2ZsLnNvcnQgb3IgImFsbCJ9fSZjaGFyZ2VJbmZvPXt7ZmwuY2hhcmdlSW5mbyBvciAiYWxsIn19JywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdQQ19VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgY2xhc3NfbmFtZTogJ1x1ODMyYlx1ODMyYlx1NzUzNVx1NWY3MVx1MDAyNlx1ODMyYlx1ODMyYlx1NzUzNVx1ODljNlx1NTI2N1x1MDAyNlx1ODMyYlx1ODMyYlx1N2VmY1x1ODI3YVx1MDAyNlx1ODMyYlx1ODMyYlx1NTJhOFx1NmYyYlx1MDAyNlx1ODMyYlx1ODMyYlx1N2VhYVx1NWY1NVx1NzI0N1x1MDAyNlx1ODMyYlx1ODMyYlx1NjU1OVx1ODBiMlx1MDAyNlx1ODMyYlx1ODMyYlx1NWMxMVx1NTEzZicsCiAgICBjbGFzc191cmw6ICdcdTAwMzNcdTAwMjZcdTAwMzJcdTAwMjZcdTAwMzFcdTAwMjZcdTAwMzVcdTAwMzBcdTAwMjZcdTAwMzVcdTAwMzFcdTAwMjZcdTAwMzFcdTAwMzFcdTAwMzVcdTAwMjZcdTAwMzFcdTAwMzAnLAogICAgZmlsdGVyOiB7CiAgICAgICAgIjEiOiBbewogICAgICAgICAgICAia2V5IjogImNoYXJnZUluZm8iLAogICAgICAgICAgICAibmFtZSI6ICLku5jotLnnsbvlnosiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWN6LS5IiwKICAgICAgICAgICAgICAgICJ2IjogImIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJ2aXAiLAogICAgICAgICAgICAgICAgInYiOiAiYjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlZJUOeUqOWIuCIsCiAgICAgICAgICAgICAgICAidiI6ICJiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LuY6LS554K55pKtIiwKICAgICAgICAgICAgICAgICJ2IjogImI0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJzb3J0IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICJjMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogImMyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnn6XkuY7pq5jliIYiLAogICAgICAgICAgICAgICAgInYiOiAiYzQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA0IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICIyIjogW3sKICAgICAgICAgICAgImtleSI6ICJjaGFyZ2VJbmZvIiwKICAgICAgICAgICAgIm5hbWUiOiAi5LuY6LS557G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICJhbGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFjei0uSIsCiAgICAgICAgICAgICAgICAidiI6ICJiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAidmlwIiwKICAgICAgICAgICAgICAgICJ2IjogImIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJWSVDnlKjliLgiLAogICAgICAgICAgICAgICAgInYiOiAiYjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS7mOi0ueeCueaSrSIsCiAgICAgICAgICAgICAgICAidiI6ICJiNCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAic29ydCIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDmlrAiLAogICAgICAgICAgICAgICAgInYiOiAiYzEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOeDrSIsCiAgICAgICAgICAgICAgICAidiI6ICJjMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi55+l5LmO6auY5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogImM0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05LujIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICJhbGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDciLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNCIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiMyI6IFt7CiAgICAgICAgICAgICJrZXkiOiAiY2hhcmdlSW5mbyIsCiAgICAgICAgICAgICJuYW1lIjogIuS7mOi0ueexu+WeiyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiYWxsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhY3otLkiLAogICAgICAgICAgICAgICAgInYiOiAiYjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogInZpcCIsCiAgICAgICAgICAgICAgICAidiI6ICJiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiVklQ55So5Yi4IiwKICAgICAgICAgICAgICAgICJ2IjogImIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLku5jotLnngrnmkq0iLAogICAgICAgICAgICAgICAgInYiOiAiYjQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInNvcnQiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5pawIiwKICAgICAgICAgICAgICAgICJ2IjogImMxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDng60iLAogICAgICAgICAgICAgICAgInYiOiAiYzIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuefpeS5jumrmOWIhiIsCiAgICAgICAgICAgICAgICAidiI6ICJjNCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7oyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiYWxsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDExIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgIjUwIjogW3sKICAgICAgICAgICAgImtleSI6ICJjaGFyZ2VJbmZvIiwKICAgICAgICAgICAgIm5hbWUiOiAi5LuY6LS557G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICJhbGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFjei0uSIsCiAgICAgICAgICAgICAgICAidiI6ICJiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAidmlwIiwKICAgICAgICAgICAgICAgICJ2IjogImIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJWSVDnlKjliLgiLAogICAgICAgICAgICAgICAgInYiOiAiYjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS7mOi0ueeCueaSrSIsCiAgICAgICAgICAgICAgICAidiI6ICJiNCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAic29ydCIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDmlrAiLAogICAgICAgICAgICAgICAgInYiOiAiYzEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOeDrSIsCiAgICAgICAgICAgICAgICAidiI6ICJjMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi55+l5LmO6auY5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogImM0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05LujIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICJhbGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDciLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNCIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiNTEiOiBbewogICAgICAgICAgICAia2V5IjogImNoYXJnZUluZm8iLAogICAgICAgICAgICAibmFtZSI6ICLku5jotLnnsbvlnosiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWN6LS5IiwKICAgICAgICAgICAgICAgICJ2IjogImIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJ2aXAiLAogICAgICAgICAgICAgICAgInYiOiAiYjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlZJUOeUqOWIuCIsCiAgICAgICAgICAgICAgICAidiI6ICJiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LuY6LS554K55pKtIiwKICAgICAgICAgICAgICAgICJ2IjogImI0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJzb3J0IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICJjMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogImMyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnn6XkuY7pq5jliIYiLAogICAgICAgICAgICAgICAgInYiOiAiYzQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA0IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICIxMTUiOiBbewogICAgICAgICAgICAia2V5IjogImNoYXJnZUluZm8iLAogICAgICAgICAgICAibmFtZSI6ICLku5jotLnnsbvlnosiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWN6LS5IiwKICAgICAgICAgICAgICAgICJ2IjogImIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJ2aXAiLAogICAgICAgICAgICAgICAgInYiOiAiYjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlZJUOeUqOWIuCIsCiAgICAgICAgICAgICAgICAidiI6ICJiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LuY6LS554K55pKtIiwKICAgICAgICAgICAgICAgICJ2IjogImI0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJzb3J0IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICJjMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogImMyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnn6XkuY7pq5jliIYiLAogICAgICAgICAgICAgICAgInYiOiAiYzQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA0IgogICAgICAgICAgICB9XQogICAgICAgIH1dCiAgICB9LAogICAgbGltaXQ6IDIwLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgbGV0IGFwaSA9ICJcdTAwNjhcdTAwNzRcdTAwNzRcdTAwNzBcdTAwM2FcdTAwMmZcdTAwMmZcdTAwNmFcdTAwNjlcdTAwNjVcdTAwNzhcdTAwNjlcdTAwMmVcdTAwNjZcdTAwNjNcdTAwMzhcdTAwMzBcdTAwMzBcdTAwMzFcdTAwMmVcdTAwNzRcdTAwNmZcdTAwNzBcdTAwMmZcdTAwNDFcdTAwNThcdTAwNmZcdTAwNjdcdTAwNWFcdTAwNGZcdTAwNDJcdTAwNmVcdTAwNzdcdTAwNTNcdTAwN2FcdTAwNWFcdTAwNGZcdTAwNzRcdTAwNTFcdTAwNjZcdTAwMmVcdTAwNzBcdTAwNjhcdTAwNzBcdTAwM2ZcdTAwNzVcdTAwNzJcdTAwNmNcdTAwM2QiICsgaW5wdXQuc3BsaXQoIj8iKVswXTsKICAgICAgICAgICAgY29uc29sZS5sb2coYXBpKTsKICAgICAgICAgICAgbGV0IHJlc3BvbnNlID0gZmV0Y2goYXBpLCB7CiAgICAgICAgICAgICAgICBtZXRob2Q6ICdnZXQnLAogICAgICAgICAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjE0LjknLAogICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIGxldCBiYXRhID0gSlNPTi5wYXJzZShyZXNwb25zZSk7CiAgICAgICAgICAgIGxvZyhiYXRhKQogICAgICAgICAgICBpZiAoYmF0YS51cmwuaW5jbHVkZXMoImh0dHAiKSkgewogICAgICAgICAgICAgICAgaW5wdXQgPSB7CiAgICAgICAgICAgaGVhZGVyOiB7CiAgICAgICAgICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAiIgogICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBwYXJzZTogMCwKICAgICAgICAgICAgICAgICAgICB1cmw6IGJhdGEudXJsLAogICAgICAgICAgICAgICAgICAgIGp4OiAwLAogICAgICAgICAgICAgICAgICAgIGRhbm1ha3U6ICdodHRwOi8vMTI3LjAuMC4xOjk5NzgvcHJveHk/ZG89ZGFubXUmdXJsPScraW5wdXQuc3BsaXQoIj8iKVswXQogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGlucHV0ID0gewogICAgICAgICAgIGhlYWRlcjogewogICAgICAgICAgICAgICAgICAgICdVc2VyLUFnZW50JzogJycKICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgICAgICAgICAgdXJsOiBpbnB1dC5zcGxpdCgiPyIpWzBdLAogICAgICAgICAgICAgICAgICAgIGp4OiAxLAogICAgICAgICAgICAgICAgICAgIGRhbm1ha3U6ICdodHRwOi8vMTI3LjAuMC4xOjk5NzgvcHJveHk/ZG89ZGFubXUmdXJsPScraW5wdXQuc3BsaXQoIj8iKVswXQogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgIH0gY2F0Y2ggewogICAgICAgICAgICBpbnB1dCA9IHsKICAgICAgICAgICBoZWFkZXI6IHsKICAgICAgICAgICAgICAgICAgICAnVXNlci1BZ2VudCc6ICcnCiAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgICAgICB1cmw6IGlucHV0LnNwbGl0KCI/IilbMF0sCiAgICAgICAgICAgICAgICBqeDogMSwKICAgICAgICAgICAgICAgIGRhbm1ha3U6ICdodHRwOi8vMTI3LjAuMC4xOjk5NzgvcHJveHk/ZG89ZGFubXUmdXJsPScraW5wdXQuc3BsaXQoIj8iKVswXQogICAgICAgICAgICB9OwogICAgICAgIH0KICAgIH0pLAogICAgLy8g5omL5Yqo6LCD55So6Kej5p6Q6K+35rGCanNvbueahHVybCzmraRsYXp55LiN5pa55L6/CiAgICAvLyBsYXp5OidqczpwcmludChpbnB1dCk7ZmV0Y2hfcGFyYW1zLmhlYWRlcnNbInVzZXItYWdlbnQiXT1NT0JJTEVfVUE7bGV0IGh0bWw9cmVxdWVzdChpbnB1dCk7bGV0IHJ1cmw9aHRtbC5tYXRjaCgvd2luZG93XFwub3BlblxcKFwnKC4qPylcJywvKVsxXTtydXJsPXVybERlYWwocnVybCk7aW5wdXQ9e3BhcnNlOjEsdXJsOnJ1cmx9OycsCiAgICAvLyDmjqjojZA6Jy5saXN0X2l0ZW07aW1nJiZhbHQ7aW1nJiZzcmM7YSYmVGV4dDthJiZkYXRhLWZsb2F0JywKICAgIOS4gOe6pzogJ2pzb246ZGF0YS5oaXREb2NzO3RpdGxlO2ltZzt1cGRhdGVJbmZvfHxyaWdodENvcm5lci50ZXh0O3BsYXlQYXJ0SWQnLAogICAgLy8g5LiA57qnOidqc29uOmRhdGEuaGl0RG9jczt0aXRsZTtpbWc7dXBkYXRlSW5mbztwbGF5UGFydElkJywKICAgIOS6jOe6pzogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBmZXRjaF9wYXJhbXMuaGVhZGVycy5SZWZlcmVyID0gImh0dHBzOi8vd3d3Lm1ndHYuY29tIjsKICAgICAgICBmZXRjaF9wYXJhbXMuaGVhZGVyc1siVXNlci1BZ2VudCJdID0gTU9CSUxFX1VBOwogICAgICAgIHBkZmggPSBqc3AucGRmaDsKICAgICAgICBwZGZhID0ganNwLnBkZmE7CiAgICAgICAgcGQgPSBqc3AucGQ7CiAgICAgICAgVk9EID0ge307CiAgICAgICAgbGV0IGQgPSBbXTsKICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QoaW5wdXQpOwogICAgICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShodG1sKTsKICAgICAgICBsZXQgaG9zdCA9ICJodHRwczovL3d3dy5tZ3R2LmNvbSI7CiAgICAgICAgbGV0IG91cmwgPSBqc29uLmRhdGEubGlzdC5sZW5ndGggPiAwID8ganNvbi5kYXRhLmxpc3RbMF0udXJsIDoganNvbi5kYXRhLnNlcmllc1swXS51cmw7CiAgICAgICAgaWYgKCEvXmh0dHAvLnRlc3Qob3VybCkpIHsKICAgICAgICAgICAgb3VybCA9IGhvc3QgKyBvdXJsCiAgICAgICAgfQogICAgICAgIGZldGNoX3BhcmFtcy5oZWFkZXJzWyJVc2VyLUFnZW50Il0gPSBNT0JJTEVfVUE7CiAgICAgICAgaHRtbCA9IHJlcXVlc3Qob3VybCk7CiAgICAgICAgaWYgKGh0bWwuaW5jbHVkZXMoIndpbmRvdy5sb2NhdGlvbiA9IikpIHsKICAgICAgICAgICAgcHJpbnQoIuW8gOWni+iOt+WPlm91cmwiKTsKICAgICAgICAgICAgb3VybCA9IHBkZmgoaHRtbCwgIm1ldGFbaHR0cC1lcXVpdj1yZWZyZXNoXSYmY29udGVudCIpLnNwbGl0KCJ1cmw9IilbMV07CiAgICAgICAgICAgIHByaW50KCLojrflj5bliLBvdXJsOiIgKyBvdXJsKTsKICAgICAgICAgICAgaHRtbCA9IHJlcXVlc3Qob3VybCkKICAgICAgICB9CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgbGV0IGRldGFpbHMgPSBwZGZoKGh0bWwsICIubS1kZXRhaWxzJiZIdG1sIikucmVwbGFjZSgvaDE+LywgImg2PiIpLnJlcGxhY2UoL2Rpdi9nLCAiYnIiKTsKICAgICAgICAgICAgcHJpbnQoZGV0YWlscyk7CiAgICAgICAgICAgIGxldCBhY3RvciA9ICIiLAogICAgICAgICAgICAgICAgZGlyZWN0b3IgPSAiIiwKICAgICAgICAgICAgICAgIHRpbWUgPSAiIjsKICAgICAgICAgICAgaWYgKC/mkq3lh7rml7bpl7QvLnRlc3QoZGV0YWlscykpIHsKICAgICAgICAgICAgICAgIGFjdG9yID0gcGRmaChodG1sLCAicDplcSg1KSYmVGV4dCIpLnN1YnN0cigwLCAyNSk7CiAgICAgICAgICAgICAgICBkaXJlY3RvciA9IHBkZmgoaHRtbCwgInA6ZXEoNCkmJlRleHQiKTsKICAgICAgICAgICAgICAgIHRpbWUgPSBwZGZoKGh0bWwsICJwOmVxKDMpJiZUZXh0IikKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGFjdG9yID0gcGRmaChodG1sLCAicDplcSg0KSYmVGV4dCIpLnN1YnN0cigwLCAyNSk7CiAgICAgICAgICAgICAgICBkaXJlY3RvciA9IHBkZmgoaHRtbCwgInA6ZXEoMykmJlRleHQiKTsKICAgICAgICAgICAgICAgIHRpbWUgPSAi5bey5a6M57uTIgogICAgICAgICAgICB9CiAgICAgICAgICAgIGxldCBfaW1nID0gcGQoaHRtbCwgIi52aWRlby1pbWcmJmltZyYmc3JjIik7CiAgICAgICAgICAgIGxldCBKSiA9IHBkZmgoaHRtbCwgIi5kZXNjJiZUZXh0Iikuc3BsaXQoIueugOS7i++8miIpWzFdOwogICAgICAgICAgICBsZXQgX2Rlc2MgPSB0aW1lOwogICAgICAgICAgICBWT0Qudm9kX25hbWUgPSBwZGZoKGh0bWwsICIudnQtdHh0JiZUZXh0Iik7CiAgICAgICAgICAgIFZPRC50eXBlX25hbWUgPSBwZGZoKGh0bWwsICJwOmVxKDApJiZUZXh0Iikuc3Vic3RyKDAsIDYpOwogICAgICAgICAgICBWT0Qudm9kX2FyZWEgPSBwZGZoKGh0bWwsICJwOmVxKDEpJiZUZXh0Iik7CiAgICAgICAgICAgIFZPRC52b2RfYWN0b3IgPSBhY3RvcjsKICAgICAgICAgICAgVk9ELnZvZF9kaXJlY3RvciA9IGRpcmVjdG9yOwogICAgICAgICAgICBWT0Qudm9kX3JlbWFya3MgPSBfZGVzYzsKICAgICAgICAgICAgVk9ELnZvZF9waWMgPSBfaW1nOwogICAgICAgICAgICBWT0Qudm9kX2NvbnRlbnQgPSBKSjsKICAgICAgICAgICAgaWYgKCFWT0Qudm9kX25hbWUpIHsKICAgICAgICAgICAgICAgIFZPRC52b2RfbmFtZSA9IFZPRC50eXBlX25hbWU7CiAgICAgICAgICAgIH0KICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIGxvZygi6I635Y+W5b2x54mH5L+h5oGv5Y+R55Sf6ZSZ6K+vOiIgKyBlLm1lc3NhZ2UpCiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBnZXRSanBnKGltZ1VybCwgeHMpIHsKICAgICAgICAgICAgeHMgPSB4cyB8fCAzOwogICAgICAgICAgICBsZXQgcGljU2l6ZSA9IC9qcGdfLy50ZXN0KGltZ1VybCkgPyBpbWdVcmwuc3BsaXQoImpwZ18iKVsxXS5zcGxpdCgiLiIpWzBdIDogZmFsc2U7CiAgICAgICAgICAgIGxldCByanBnID0gZmFsc2U7CiAgICAgICAgICAgIGlmIChwaWNTaXplKSB7CiAgICAgICAgICAgICAgICBsZXQgYSA9IHBhcnNlSW50KHBpY1NpemUuc3BsaXQoIngiKVswXSkgKiB4czsKICAgICAgICAgICAgICAgIGxldCBiID0gcGFyc2VJbnQocGljU2l6ZS5zcGxpdCgieCIpWzFdKSAqIHhzOwogICAgICAgICAgICAgICAgcmpwZyA9IGEgKyAieCIgKyBiICsgIi5qcGciCiAgICAgICAgICAgIH0KICAgICAgICAgICAgbGV0IGltZyA9IC9qcGdfLy50ZXN0KGltZ1VybCkgJiYgcmpwZyA/IGltZ1VybC5yZXBsYWNlKGltZ1VybC5zcGxpdCgianBnXyIpWzFdLCByanBnKSA6IGltZ1VybDsKICAgICAgICAgICAgcmV0dXJuIGltZwogICAgICAgIH0KCiAgICAgICAgaWYgKGpzb24uZGF0YS50b3RhbCA9PT0gMSAmJiBqc29uLmRhdGEubGlzdC5sZW5ndGggPT09IDEpIHsKICAgICAgICAgICAgbGV0IGRhdGEgPSBqc29uLmRhdGEubGlzdFswXTsKICAgICAgICAgICAgbGV0IHVybCA9ICJodHRwczovL3d3dy5tZ3R2LmNvbSIgKyBkYXRhLnVybDsKICAgICAgICAgICAgZC5wdXNoKHsKICAgICAgICAgICAgICAgIHRpdGxlOiBkYXRhLnQ0LAogICAgICAgICAgICAgICAgZGVzYzogZGF0YS50MiwKICAgICAgICAgICAgICAgIHBpY191cmw6IGdldFJqcGcoZGF0YS5pbWcpLAogICAgICAgICAgICAgICAgdXJsOiB1cmwKICAgICAgICAgICAgfSkKICAgICAgICB9IGVsc2UgaWYgKGpzb24uZGF0YS5saXN0Lmxlbmd0aCA+IDEpIHsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPD0ganNvbi5kYXRhLnRvdGFsX3BhZ2U7IGkrKykgewogICAgICAgICAgICAgICAgaWYgKGkgPiAxKSB7CiAgICAgICAgICAgICAgICAgICAganNvbiA9IEpTT04ucGFyc2UoZmV0Y2goaW5wdXQucmVwbGFjZSgicGFnZT0xIiwgInBhZ2U9IiArIGkpLCB7fSkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBqc29uLmRhdGEubGlzdC5mb3JFYWNoKGZ1bmN0aW9uKGRhdGEpIHsKICAgICAgICAgICAgICAgICAgICBsZXQgdXJsID0gImh0dHBzOi8vd3d3Lm1ndHYuY29tIiArIGRhdGEudXJsOwogICAgICAgICAgICAgICAgICAgIGlmIChkYXRhLmlzSW50YWN0ID09ICIxIikgewogICAgICAgICAgICAgICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGRhdGEudDQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjOiBkYXRhLnQyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcGljX3VybDogZ2V0UmpwZyhkYXRhLmltZyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHVybAogICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBwcmludChpbnB1dCArICLmmoLml6DniYfmupAiKQogICAgICAgIH0KICAgICAgICBWT0Qudm9kX3BsYXlfZnJvbSA9ICJcdTgzMmJcdTgzMmIiOwogICAgICAgIFZPRC52b2RfcGxheV91cmwgPSBkLm1hcChmdW5jdGlvbihpdCkgewogICAgICAgICAgICByZXR1cm4gaXQudGl0bGUgKyAiJCIgKyBpdC51cmwKICAgICAgICB9KS5qb2luKCIjIik7CiAgICAgICAgc2V0UmVzdWx0KGQpOwogICAgfSksCgogICAg5pCc57SiOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGZldGNoX3BhcmFtcy5oZWFkZXJzLlJlZmVyZXIgPSAiaHR0cHM6Ly93d3cubWd0di5jb20iOwogICAgICAgIGZldGNoX3BhcmFtcy5oZWFkZXJzWyJVc2VyLUFnZW50Il0gPSBNT0JJTEVfVUE7CiAgICAgICAgbGV0IGQgPSBbXTsKICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QoaW5wdXQpOwogICAgICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShodG1sKTsKICAgICAgICBqc29uLmRhdGEuY29udGVudHMuZm9yRWFjaChmdW5jdGlvbihkYXRhKSB7CiAgICAgICAgICAgIGlmIChkYXRhLnR5cGUgJiYgZGF0YS50eXBlID09ICdtZWRpYScpIHsKICAgICAgICAgICAgICAgIGxldCBpdGVtID0gZGF0YS5kYXRhWzBdOwogICAgICAgICAgICAgICAgbGV0IGRlc2MgPSBpdGVtLmRlc2Muam9pbignLCcpOwogICAgICAgICAgICAgICAgbGV0IGZ5Y2xhc3MgPSAnJzsKICAgICAgICAgICAgICAgIGlmIChpdGVtLnNvdXJjZSA9PT0gImltZ28iKSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IGltZyA9IGl0ZW0uaW1nID8gaXRlbS5pbWcgOiAnJzsKICAgICAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICBmeWNsYXNzID0gaXRlbS5ycHQubWF0Y2goL2lkeD0oLio/KSYvKVsxXSArICckJzsKICAgICAgICAgICAgICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxvZyhlLm1lc3NhZ2UpOwogICAgICAgICAgICAgICAgICAgICAgICBmeWNsYXNzID0gJyc7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGxvZyhmeWNsYXNzKTsKICAgICAgICAgICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogaXRlbS50aXRsZS5yZXBsYWNlKC88Qj58PFwvQj4vZywgJycpLAogICAgICAgICAgICAgICAgICAgICAgICBpbWc6IGltZywKICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJycsCiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2M6IGRlc2MsCiAgICAgICAgICAgICAgICAgICAgICAgIHVybDogZnljbGFzcyArIGl0ZW0udXJsLm1hdGNoKC8uKlwvKC4qPylcLmh0bWwvKVsxXQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICBzZXRSZXN1bHQoZCk7CiAgICB9KSwKfQ== \ No newline at end of file diff --git a/cpu_iy/js/藤藤.png b/cpu_iy/js/藤藤.png deleted file mode 100644 index b002ff05..00000000 --- a/cpu_iy/js/藤藤.png +++ /dev/null @@ -1 +0,0 @@ -dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+iFvuiur+inhumikScsCiAgICBob3N0OiAnaHR0cHM6Ly92LnFxLmNvbScsCiAgICBob21lVXJsOiAnL3gvYnUvcGFnZXNoZWV0L2xpc3Q/X2FsbD0xJmFwcGVuZD0xJmNoYW5uZWw9Y2FydG9vbiZsaXN0cGFnZT0xJm9mZnNldD0wJnBhZ2VzaXplPTIxJmlhcmVhPS0xJnNvcnQ9MTgnLAogICAgZGV0YWlsVXJsOiAnaHR0cHM6Ly9ub2RlLnZpZGVvLnFxLmNvbS94L2FwaS9mbG9hdF92aW5mbzI/Y2lkPWZ5aWQnLAogICAgc2VhcmNoVXJsOiAnKionLAogICAgc2VhcmNoYWJsZTogMiwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBtdWx0aTogMSwKICAgIHVybDogJy94L2J1L3BhZ2VzaGVldC9saXN0P19hbGw9MSZhcHBlbmQ9MSZjaGFubmVsPWZ5Y2xhc3MmbGlzdHBhZ2U9MSZvZmZzZXQ9KChmeXBhZ2UtMSkqMjEpJnBhZ2VzaXplPTIxJmlhcmVhPS0xJywKICAgIGZpbHRlcl91cmw6ICdzb3J0PXt7Zmwuc29ydCBvciA3NX19Jml5ZWFyPXt7ZmwuaXllYXJ9fSZ5ZWFyPXt7ZmwueWVhcn19Jml0eXBlPXt7ZmwudHlwZX19JmlmZWF0dXJlPXt7ZmwuZmVhdHVyZX19JmlhcmVhPXt7ZmwuYXJlYX19Jml0cmFpbGVyPXt7ZmwuaXRyYWlsZXJ9fSZnZW5kZXI9e3tmbC5zZXh9fScsCiAgICAKICAgIC8vIOino+aekOaOpeWPo+mFjee9rgogICAgcGFyc2VfdXJsOiBbCiAgICAgICAgJ1x1MDA2OFx1MDA3NFx1MDA3NFx1MDA3MFx1MDA3M1x1MDAzYVx1MDAyZlx1MDAyZlx1MDA2ZVx1MDA2OVx1MDA3NVx1MDA2Mlx1MDA2OVx1MDAyZVx1MDAzNlx1MDAzOVx1MDA2ZFx1MDA2OVx1MDA2ZVx1MDA2OVx1MDAyZVx1MDA2M1x1MDA2Zlx1MDA2ZFx1MDAyZlx1MDA2MVx1MDA3MFx1MDA2OVx1MDAyZlx1MDAzZlx1MDA2Ylx1MDA2NVx1MDA3OVx1MDAzZFx1MDA2N1x1MDA3OFx1MDA1OFx1MDA1OVx1MDA2ZFx1MDA2Y1x1MDA3Nlx1MDA3N1x1MDAzNFx1MDA3OFx1MDA1OFx1MDAzNFx1MDA1MFx1MDA2MVx1MDA1OFx1MDA2Y1x1MDA0M1x1MDA0YVx1MDAyNlx1MDA3NVx1MDA3Mlx1MDA2Y1x1MDAzZCcsCiAgICAgICAgJ1x1MDA2OFx1MDA3NFx1MDA3NFx1MDA3MFx1MDA3M1x1MDAzYVx1MDAyZlx1MDAyZlx1MDA2ZVx1MDA2OVx1MDA3NVx1MDA2Mlx1MDA2OVx1MDAyZVx1MDAzNlx1MDAzOVx1MDA2ZFx1MDA2OVx1MDA2ZVx1MDA2OVx1MDAyZVx1MDA2M1x1MDA2Zlx1MDA2ZFx1MDAyZlx1MDA2MVx1MDA3MFx1MDA2OVx1MDAyZlx1MDAzZlx1MDA2Ylx1MDA2NVx1MDA3OVx1MDAzZFx1MDA2N1x1MDA3OFx1MDA1OFx1MDA1OVx1MDA2ZFx1MDA2Y1x1MDA3Nlx1MDA3N1x1MDAzNFx1MDA3OFx1MDA1OFx1MDAzNFx1MDA1MFx1MDA2MVx1MDA1OFx1MDA2Y1x1MDA0M1x1MDA0YVx1MDAyNlx1MDA3NVx1MDA3Mlx1MDA2Y1x1MDAzZCcsCiAgICAgICAgJ1x1MDA2OFx1MDA3NFx1MDA3NFx1MDA3MFx1MDA3M1x1MDAzYVx1MDAyZlx1MDAyZlx1MDA2ZVx1MDA2OVx1MDA3NVx1MDA2Mlx1MDA2OVx1MDAyZVx1MDAzNlx1MDAzOVx1MDA2ZFx1MDA2OVx1MDA2ZVx1MDA2OVx1MDAyZVx1MDA2M1x1MDA2Zlx1MDA2ZFx1MDAyZlx1MDA2MVx1MDA3MFx1MDA2OVx1MDAyZlx1MDAzZlx1MDA2Ylx1MDA2NVx1MDA3OVx1MDAzZFx1MDA2N1x1MDA3OFx1MDA1OFx1MDA1OVx1MDA2ZFx1MDA2Y1x1MDA3Nlx1MDA3N1x1MDAzNFx1MDA3OFx1MDA1OFx1MDAzNFx1MDA1MFx1MDA2MVx1MDA1OFx1MDA2Y1x1MDA0M1x1MDA0YVx1MDAyNlx1MDA3NVx1MDA3Mlx1MDA2Y1x1MDAzZCcsCiAgICAgICAgJ1x1MDA2OFx1MDA3NFx1MDA3NFx1MDA3MFx1MDAzYVx1MDAyZlx1MDAyZlx1MDA2YVx1MDA2OVx1MDA2NVx1MDA3OFx1MDA2OVx1MDAyZVx1MDA2Nlx1MDA2M1x1MDAzOFx1MDAzMFx1MDAzMFx1MDAzMVx1MDAyZVx1MDA3NFx1MDA2Zlx1MDA3MFx1MDAyZlx1MDA0MVx1MDA1OFx1MDA2Zlx1MDA2N1x1MDA1YVx1MDA0Zlx1MDA0Mlx1MDA2ZVx1MDA3N1x1MDA1M1x1MDA3YVx1MDA1YVx1MDA0Zlx1MDA3NFx1MDA1MVx1MDA2Nlx1MDAyZVx1MDA3MFx1MDA2OFx1MDA3MFx1MDAzZlx1MDA3NVx1MDA3Mlx1MDA2Y1x1MDAzZCcKICAgIF0sCgogICAgLy8g5bGP6JS95Zyw5Z2ACiAgICBibG9ja2VkX3VybHM6IFsKICAgICAgICAnaHR0cHM6Ly9kLmZlaWxpdXBhbi5jb20vdC8xMTI2NDE2OTM4NDg3MDI5NzYvSVDkvb/nlKjmrKHmlbDotoXpmZDvvIzor7fliqDnvqTnrb7liLAubXA0JywKICAgICAgICAnSVDkvb/nlKjmrKHmlbDotoXpmZDvvIzor7fliqDnvqTnrb7liLAubXA0JwogICAgXSwKCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnUENfVUEnCiAgICB9LAogICAgdGltZW91dDogNTAwMCwKICAgIGNhdGVfZXhjbHVkZTogJ+S8muWRmHzmuLjmiI985YWo6YOoJywKICAgIGNsYXNzX25hbWU6ICdcdTg1ZTRcdTg1ZTRcdTdjYmVcdTkwMDlcdTAwMjZcdTg1ZTRcdTg1ZTRcdTc1MzVcdTVmNzFcdTAwMjZcdTg1ZTRcdTg1ZTRcdTc1MzVcdTg5YzZcdTUyNjdcdTAwMjZcdTg1ZTRcdTg1ZTRcdTdlZmNcdTgyN2FcdTAwMjZcdTg1ZTRcdTg1ZTRcdTUyYThcdTZmMmJcdTAwMjZcdTg1ZTRcdTg1ZTRcdTVjMTFcdTUxM2ZcdTAwMjZcdTg1ZTRcdTg1ZTRcdTdlYWFcdTVmNTVcdTcyNDcnLAogICAgY2xhc3NfdXJsOiAnY2hvaWNlJm1vdmllJnR2JnZhcmlldHkmY2FydG9vbiZjaGlsZCZkb2NvJywKICAgIGxpbWl0OiAyMCwKICAgIHBsYXlfcGFyc2U6IHRydWUsCgogICAgbGF6eTogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgcGFyc2VJbmRleCA9IDA7CiAgICAgICAgbGV0IHRhcmdldFVybCA9ICcnOwogICAgICAgIAogICAgICAgIC8vIOehruWumuimgeino+aekOeahOebruagh1VSTAogICAgICAgIHRyeSB7CiAgICAgICAgICAgIGxldCBiYXRhID0gSlNPTi5wYXJzZShyZXNwb25zZSk7CiAgICAgICAgICAgIGxvZyhiYXRhKTsKICAgICAgICAgICAgaWYgKGJhdGEudXJsICYmIGJhdGEudXJsLmluY2x1ZGVzKCJodHRwIikpIHsKICAgICAgICAgICAgICAgIHRhcmdldFVybCA9IGJhdGEudXJsOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgdGFyZ2V0VXJsID0gaW5wdXQuc3BsaXQoIj8iKVswXTsKICAgICAgICAgICAgfQogICAgICAgIH0gY2F0Y2ggewogICAgICAgICAgICB0YXJnZXRVcmwgPSBpbnB1dC5zcGxpdCgiPyIpWzBdOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvLyDmo4Dmn6XmmK/lkKbmmK/lsY/olL3lnLDlnYAKICAgICAgICBmdW5jdGlvbiBpc0Jsb2NrZWRVcmwodXJsKSB7CiAgICAgICAgICAgIGlmICghdXJsKSByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgcmV0dXJuIHJ1bGUuYmxvY2tlZF91cmxzLnNvbWUoYmxvY2tlZCA9PiB1cmwuaW5jbHVkZXMoYmxvY2tlZCkpOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvLyDop6PmnpDlh73mlbAKICAgICAgICBmdW5jdGlvbiB0cnlQYXJzZSh1cmwsIGluZGV4KSB7CiAgICAgICAgICAgIGlmIChpbmRleCA+PSBydWxlLnBhcnNlX3VybC5sZW5ndGgpIHsKICAgICAgICAgICAgICAgIC8vIOaJgOacieino+aekOaOpeWPo+mDveWksei0pe+8jOS9v+eUqOm7mOiupOino+aekAogICAgICAgICAgICAgICAgbG9nKCfmiYDmnInop6PmnpDmjqXlj6Ppg73lsJ3or5XlpLHotKXvvIzkvb/nlKjpu5jorqTop6PmnpAnKTsKICAgICAgICAgICAgICAgIGlucHV0ID0gewogICAgICAgICAgICAgICAgICAgIGhlYWRlcjogeyAnVXNlci1BZ2VudCc6ICIiIH0sCiAgICAgICAgICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgICAgICAgICAgdXJsOiB0YXJnZXRVcmwsCiAgICAgICAgICAgICAgICAgICAgang6IDEsCiAgICAgICAgICAgICAgICAgICAgZGFubWFrdTogJ2h0dHA6Ly8xMjcuMC4wLjE6OTk3OC9wcm94eT9kbz1kYW5tdSZzaXRlPWpzJnVybD0nICsgdGFyZ2V0VXJsCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CiAgICAgICAgICAgIAogICAgICAgICAgICBsZXQgcGFyc2VVcmwgPSBydWxlLnBhcnNlX3VybFtpbmRleF0gKyBlbmNvZGVVUklDb21wb25lbnQodXJsKTsKICAgICAgICAgICAgbG9nKCflsJ3or5Xop6PmnpDmjqXlj6MgJyArIChpbmRleCArIDEpICsgJzogJyArIHBhcnNlVXJsKTsKICAgICAgICAgICAgCiAgICAgICAgICAgIGxldCByZXN1bHQgPSBmZXRjaChwYXJzZVVybCwgeyAKICAgICAgICAgICAgICAgIG1ldGhvZDogJ0dFVCcsCiAgICAgICAgICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAnTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2JywKICAgICAgICAgICAgICAgICAgICAnUmVmZXJlcic6ICdodHRwczovL3YucXEuY29tLycKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB0aW1lb3V0OiAxMDAwMAogICAgICAgICAgICB9KTsKICAgICAgICAgICAgCiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBsZXQgZGF0YSA9IEpTT04ucGFyc2UocmVzdWx0KTsKICAgICAgICAgICAgICAgIGlmIChkYXRhICYmIGRhdGEudXJsICYmIGRhdGEudXJsLmluY2x1ZGVzKCJodHRwIikpIHsKICAgICAgICAgICAgICAgICAgICAvLyDmo4Dmn6XmmK/lkKbmmK/lsY/olL3lnLDlnYAKICAgICAgICAgICAgICAgICAgICBpZiAoaXNCbG9ja2VkVXJsKGRhdGEudXJsKSkgewogICAgICAgICAgICAgICAgICAgICAgICBsb2coJ+ino+aekOaOpeWPoyAnICsgKGluZGV4ICsgMSkgKyAnIOi/lOWbnuS6huWxj+iUveWcsOWdgO+8jOWwneivleS4i+S4gOS4quaOpeWPoycpOwogICAgICAgICAgICAgICAgICAgICAgICB0cnlQYXJzZSh1cmwsIGluZGV4ICsgMSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgbG9nKCfop6PmnpDmjqXlj6MgJyArIChpbmRleCArIDEpICsgJyDmiJDlip86ICcgKyBkYXRhLnVybCk7CiAgICAgICAgICAgICAgICAgICAgaW5wdXQgPSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcjogeyAnVXNlci1BZ2VudCc6ICIiIH0sCiAgICAgICAgICAgICAgICAgICAgICAgIHBhcnNlOiAwLAogICAgICAgICAgICAgICAgICAgICAgICB1cmw6IGRhdGEudXJsLAogICAgICAgICAgICAgICAgICAgICAgICBqeDogMCwKICAgICAgICAgICAgICAgICAgICAgICAgZGFubWFrdTogJ2h0dHA6Ly8xMjcuMC4wLjE6OTk3OC9wcm94eT9kbz1kYW5tdSZzaXRlPWpzJnVybD0nICsgdGFyZ2V0VXJsCiAgICAgICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgbG9nKCfop6PmnpDmjqXlj6MgJyArIChpbmRleCArIDEpICsgJyDov5Tlm57mlbDmja7ml6DmlYjvvIzlsJ3or5XkuIvkuIDkuKonKTsKICAgICAgICAgICAgICAgICAgICB0cnlQYXJzZSh1cmwsIGluZGV4ICsgMSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgIGxvZygn6Kej5p6Q5o6l5Y+jICcgKyAoaW5kZXggKyAxKSArICcg5aSx6LSlOiAnICsgZS5tZXNzYWdlKTsKICAgICAgICAgICAgICAgIHRyeVBhcnNlKHVybCwgaW5kZXggKyAxKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgLy8g5byA5aeL6Kej5p6QCiAgICAgICAgdHJ5UGFyc2UodGFyZ2V0VXJsLCAwKTsKICAgIH0pLAoKICAgIOaOqOiNkDogJy5saXN0X2l0ZW07aW1nJiZhbHQ7aW1nJiZzcmM7YSYmVGV4dDthJiZkYXRhLWZsb2F0JywKICAgIOS4gOe6pzogJy5saXN0X2l0ZW07aW1nJiZhbHQ7aW1nJiZzcmM7YSYmVGV4dDthJiZkYXRhLWZsb2F0JywKCiAgICDkuoznuqc6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgVk9EID0ge307CiAgICAgICAgbGV0IGQgPSBbXTsKICAgICAgICBsZXQgdmlkZW9fbGlzdCA9IFtdOwogICAgICAgIGxldCB2aWRlb19saXN0cyA9IFtdOwogICAgICAgIGxldCBRWk91dHB1dEpzb247CiAgICAgICAgbGV0IGh0bWwgPSBmZXRjaChpbnB1dCwgZmV0Y2hfcGFyYW1zKTsKICAgICAgICBsZXQgc291cmNlSWQgPSAvZ2V0X3BsYXlzb3VyY2UvLnRlc3QoaW5wdXQpID8gaW5wdXQubWF0Y2goL2lkPShcZCo/KSYvKVsxXSA6IGlucHV0LnNwbGl0KCJjaWQ9IilbMV07CiAgICAgICAgbGV0IGNpZCA9IHNvdXJjZUlkOwogICAgICAgIGxldCBkZXRhaWxVcmwgPSAiaHR0cHM6Ly92LnFxLmNvbS9kZXRhaWwvbS8iICsgY2lkICsgIi5odG1sIjsKICAgICAgICAKICAgICAgICB0cnkgewogICAgICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgICAgIFZPRCA9IHsKICAgICAgICAgICAgICAgIHZvZF91cmw6IGlucHV0LAogICAgICAgICAgICAgICAgdm9kX25hbWU6IGpzb24uYy50aXRsZSwKICAgICAgICAgICAgICAgIHR5cGVfbmFtZToganNvbi50eXAuam9pbigiLCIpLAogICAgICAgICAgICAgICAgdm9kX2FjdG9yOiBqc29uLm5hbS5qb2luKCIsIiksCiAgICAgICAgICAgICAgICB2b2RfeWVhcjoganNvbi5jLnllYXIsCiAgICAgICAgICAgICAgICB2b2RfY29udGVudDoganNvbi5jLmRlc2NyaXB0aW9uLAogICAgICAgICAgICAgICAgdm9kX3JlbWFya3M6IGpzb24ucmVjLAogICAgICAgICAgICAgICAgdm9kX3BpYzogdXJsam9pbjIoaW5wdXQsIGpzb24uYy5waWMpCiAgICAgICAgICAgIH0KICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIGxvZygi6Kej5p6Q6K+m5oOF5aSx6LSlOiAiICsgZS5tZXNzYWdlKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgaWYgKC9nZXRfcGxheXNvdXJjZS8udGVzdChpbnB1dCkpIHsKICAgICAgICAgICAgZXZhbChodG1sKTsKICAgICAgICAgICAgbGV0IGluZGV4TGlzdCA9IFFaT3V0cHV0SnNvbi5QbGF5bGlzdEl0ZW0uaW5kZXhMaXN0OwogICAgICAgICAgICBpbmRleExpc3QuZm9yRWFjaChmdW5jdGlvbihpdCkgewogICAgICAgICAgICAgICAgbGV0IGRhdGFVcmwgPSAiaHR0cHM6Ly9zLnZpZGVvLnFxLmNvbS9nZXRfcGxheXNvdXJjZT9pZD0iICsgc291cmNlSWQgKyAiJnBsYXQ9MiZ0eXBlPTQmZGF0YV90eXBlPTMmcmFuZ2U9IiArIGl0ICsgIiZ2aWRlb190eXBlPTEwJnBsbmFtZT1xcSZvdHlwZT1qc29uIjsKICAgICAgICAgICAgICAgIGV2YWwoZmV0Y2goZGF0YVVybCwgZmV0Y2hfcGFyYW1zKSk7CiAgICAgICAgICAgICAgICBsZXQgdmRhdGEgPSBRWk91dHB1dEpzb24uUGxheWxpc3RJdGVtLnZpZGVvUGxheUxpc3Q7CiAgICAgICAgICAgICAgICB2ZGF0YS5mb3JFYWNoKGZ1bmN0aW9uKGl0ZW0pIHsKICAgICAgICAgICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogaXRlbS50aXRsZSwKICAgICAgICAgICAgICAgICAgICAgICAgcGljX3VybDogaXRlbS5waWMsCiAgICAgICAgICAgICAgICAgICAgICAgIGRlc2M6IGl0ZW0uZXBpc29kZV9udW1iZXIgKyAiXHRcdFx05pKt5pS+6YeP77yaIiArIGl0ZW0udGhpcmRMaW5lLAogICAgICAgICAgICAgICAgICAgICAgICB1cmw6IGl0ZW0ucGxheVVybAogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIHZpZGVvX2xpc3RzID0gdmlkZW9fbGlzdHMuY29uY2F0KHZkYXRhKQogICAgICAgICAgICB9KQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShodG1sKTsKICAgICAgICAgICAgdmlkZW9fbGlzdHMgPSBqc29uLmMudmlkZW9faWRzOwogICAgICAgICAgICBsZXQgdXJsID0gImh0dHBzOi8vdi5xcS5jb20veC9jb3Zlci8iICsgc291cmNlSWQgKyAiLmh0bWwiOwogICAgICAgICAgICAKICAgICAgICAgICAgaWYgKHZpZGVvX2xpc3RzLmxlbmd0aCA9PT0gMSkgewogICAgICAgICAgICAgICAgbGV0IHZpZCA9IHZpZGVvX2xpc3RzWzBdOwogICAgICAgICAgICAgICAgbGV0IG9fdXJsID0gImh0dHBzOi8vdW5pb24udmlkZW8ucXEuY29tL2ZjZ2ktYmluL2RhdGE/b3R5cGU9anNvbiZ0aWQ9MTgwNCZhcHBpZD0yMDAwMTIzOCZhcHBrZXk9NmMwM2JiZTk2NTg0NDhhNCZ1bmlvbl9wbGF0Zm9ybT0xJmlkbGlzdD0iICsgdmlkOwogICAgICAgICAgICAgICAgbGV0IG9faHRtbCA9IGZldGNoKG9fdXJsLCBmZXRjaF9wYXJhbXMpOwogICAgICAgICAgICAgICAgZXZhbChvX2h0bWwpOwogICAgICAgICAgICAgICAgaWYgKFFaT3V0cHV0SnNvbi5yZXN1bHRzICYmIFFaT3V0cHV0SnNvbi5yZXN1bHRzLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgICAgICAgICBsZXQgaXQxID0gUVpPdXRwdXRKc29uLnJlc3VsdHNbMF0uZmllbGRzOwogICAgICAgICAgICAgICAgICAgIHVybCA9ICJodHRwczovL3YucXEuY29tL3gvY292ZXIvIiArIGNpZCArICIvIiArIHZpZCArICIuaHRtbCI7CiAgICAgICAgICAgICAgICAgICAgZC5wdXNoKHsKICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGl0MS50aXRsZSwKICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB1cmwKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICB1cmwgPSAiaHR0cHM6Ly92LnFxLmNvbS94L2NvdmVyLyIgKyBjaWQgKyAiLyIgKyB2aWQgKyAiLmh0bWwiOwogICAgICAgICAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiAi5q2j54mH5pKt5pS+IiwKICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB1cmwKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgaWYgKHZpZGVvX2xpc3RzLmxlbmd0aCA+IDEpIHsKICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdmlkZW9fbGlzdHMubGVuZ3RoOyBpICs9IDMwKSB7CiAgICAgICAgICAgICAgICAgICAgdmlkZW9fbGlzdC5wdXNoKHZpZGVvX2xpc3RzLnNsaWNlKGksIGkgKyAzMCkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB2aWRlb19saXN0LmZvckVhY2goZnVuY3Rpb24oaXQsIGlkZXgpIHsKICAgICAgICAgICAgICAgICAgICBsZXQgb191cmwgPSAiaHR0cHM6Ly91bmlvbi52aWRlby5xcS5jb20vZmNnaS1iaW4vZGF0YT9vdHlwZT1qc29uJnRpZD0xODA0JmFwcGlkPTIwMDAxMjM4JmFwcGtleT02YzAzYmJlOTY1ODQ0OGE0JnVuaW9uX3BsYXRmb3JtPTEmaWRsaXN0PSIgKyBpdC5qb2luKCIsIik7CiAgICAgICAgICAgICAgICAgICAgbGV0IG9faHRtbCA9IGZldGNoKG9fdXJsLCBmZXRjaF9wYXJhbXMpOwogICAgICAgICAgICAgICAgICAgIGV2YWwob19odG1sKTsKICAgICAgICAgICAgICAgICAgICBRWk91dHB1dEpzb24ucmVzdWx0cy5mb3JFYWNoKGZ1bmN0aW9uKGl0MSkgewogICAgICAgICAgICAgICAgICAgICAgICBpdDEgPSBpdDEuZmllbGRzOwogICAgICAgICAgICAgICAgICAgICAgICBsZXQgdXJsID0gImh0dHBzOi8vdi5xcS5jb20veC9jb3Zlci8iICsgY2lkICsgIi8iICsgaXQxLnZpZCArICIuaHRtbCI7CiAgICAgICAgICAgICAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogaXQxLnRpdGxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcGljX3VybDogaXQxLnBpYzE2MHg5MC5yZXBsYWNlKCIvMTYwIiwgIiIpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzYzogaXQxLnZpZGVvX2NoZWNrdXBfdGltZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogdXJsLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZTogaXQxLmNhdGVnb3J5X21hcCAmJiBpdDEuY2F0ZWdvcnlfbWFwLmxlbmd0aCA+IDEgPyBpdDEuY2F0ZWdvcnlfbWFwWzFdIDogIiIKICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgbGV0IHBsYXlGcm9tID0gW107CiAgICAgICAgbGV0IHBsYXlVcmwgPSBbXTsKCiAgICAgICAgbGV0IHlnS2V5d29yZHMgPSBbIumihOWRiiIsICLoirHnta4iLCAi54mH6IqxIiwgIueJuei+kSIsICLluZXlkI4iLCAi6YeH6K6/IiwgIuWItuS9nCIsICJNViIsICLkuLvpopjmm7IiXTsKICAgICAgICBsZXQgeWcgPSBkLmZpbHRlcihmdW5jdGlvbihpdCkgewogICAgICAgICAgICByZXR1cm4gaXQudHlwZSAmJiB5Z0tleXdvcmRzLnNvbWUoa2V5d29yZCA9PiBpdC50eXBlLmluY2x1ZGVzKGtleXdvcmQpKTsKICAgICAgICB9KTsKICAgICAgICBsZXQgenAgPSBkLmZpbHRlcihmdW5jdGlvbihpdCkgewogICAgICAgICAgICByZXR1cm4gIShpdC50eXBlICYmIHlnS2V5d29yZHMuc29tZShrZXl3b3JkID0+IGl0LnR5cGUuaW5jbHVkZXMoa2V5d29yZCkpKTsKICAgICAgICB9KTsKCiAgICAgICAgaWYgKHpwLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgcGxheUZyb20ucHVzaCgiXHU4NWU0XHU4NWU0Iik7CiAgICAgICAgICAgIHBsYXlVcmwucHVzaCh6cC5tYXAoaXQgPT4gaXQudGl0bGUgKyAiJCIgKyBpdC51cmwpLmpvaW4oIiMiKSk7CiAgICAgICAgfQoKICAgICAgICBpZiAoeWcubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsZXQg6aKE5ZGKID0geWcuZmlsdGVyKGl0ID0+IGl0LnR5cGUgJiYgaXQudHlwZS5pbmNsdWRlcygi6aKE5ZGKIikpOwogICAgICAgICAgICBsZXQg6Iqx57Wu54mH6IqxID0geWcuZmlsdGVyKGl0ID0+IGl0LnR5cGUgJiYgKGl0LnR5cGUuaW5jbHVkZXMoIuiKsee1riIpIHx8IGl0LnR5cGUuaW5jbHVkZXMoIueJh+iKsSIpKSk7CiAgICAgICAgICAgIGxldCDnibnovpEgPSB5Zy5maWx0ZXIoaXQgPT4gaXQudHlwZSAmJiAoaXQudHlwZS5pbmNsdWRlcygi54m56L6RIikgfHwgaXQudHlwZS5pbmNsdWRlcygi5bmV5ZCOIikpKTsKCiAgICAgICAgICAgIGlmICjpooTlkYoubGVuZ3RoID4gMCkgewogICAgICAgICAgICAgICAgcGxheUZyb20ucHVzaCgi6aKE5ZGKIik7CiAgICAgICAgICAgICAgICBwbGF5VXJsLnB1c2go6aKE5ZGKLm1hcChpdCA9PiBpdC50aXRsZSArICIkIiArIGl0LnVybCkuam9pbigiIyIpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAo6Iqx57Wu54mH6IqxLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgICAgIHBsYXlGcm9tLnB1c2goIuiKsee1rueJh+iKsSIpOwogICAgICAgICAgICAgICAgcGxheVVybC5wdXNoKOiKsee1rueJh+iKsS5tYXAoaXQgPT4gaXQudGl0bGUgKyAiJCIgKyBpdC51cmwpLmpvaW4oIiMiKSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKOeJuei+kS5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgICBwbGF5RnJvbS5wdXNoKCLnibnovpEiKTsKICAgICAgICAgICAgICAgIHBsYXlVcmwucHVzaCjnibnovpEubWFwKGl0ID0+IGl0LnRpdGxlICsgIiQiICsgaXQudXJsKS5qb2luKCIjIikpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBWT0Qudm9kX3BsYXlfZnJvbSA9IHBsYXlGcm9tLmpvaW4oIiQkJCIpOwogICAgICAgIFZPRC52b2RfcGxheV91cmwgPSBwbGF5VXJsLmpvaW4oIiQkJCIpOwogICAgfSksCgogICAg5pCc57SiOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGxldCBkID0gW10sCiAgICAgICAgICAgIGtleXdvcmQgPSBpbnB1dC5zcGxpdCgiLyIpWzNdOwogICAgICAgIGxldCBzZWVuSWRzID0gbmV3IFNldCgpOwoKICAgICAgICBmdW5jdGlvbiB2b2RTZWFyY2goa2V5d29yZCwgcGFnZSA9IDApIHsKICAgICAgICAgICAgcmV0dXJuIHJlcXVlc3QoJ2h0dHBzOi8vcGJhY2Nlc3MudmlkZW8ucXEuY29tL3RycGMudmlkZW9zZWFyY2gubW9iaWxlX3NlYXJjaC5NdWx0aVRlcm1pbmFsU2VhcmNoL01iU2VhcmNoP3ZwbGF0Zm9ybT0yJywgewogICAgICAgICAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoewogICAgICAgICAgICAgICAgICAgIHZlcnNpb246ICIyNTA0MjIwMSIsCiAgICAgICAgICAgICAgICAgICAgY2xpZW50VHlwZTogMSwKICAgICAgICAgICAgICAgICAgICBmaWx0ZXJWYWx1ZTogIiIsCiAgICAgICAgICAgICAgICAgICAgdXVpZDogIkIxRTUwODQ3LUQyNUYtNEM0Qi1CQkEwLTM2RjAwOTM0ODdGNiIsCiAgICAgICAgICAgICAgICAgICAgcmV0cnk6IDAsCiAgICAgICAgICAgICAgICAgICAgcXVlcnk6IGtleXdvcmQsCiAgICAgICAgICAgICAgICAgICAgcGFnZW51bTogcGFnZSwKICAgICAgICAgICAgICAgICAgICBpc1ByZWZldGNoOiB0cnVlLAogICAgICAgICAgICAgICAgICAgIHBhZ2VzaXplOiAzMCwKICAgICAgICAgICAgICAgICAgICBxdWVyeUZyb206IDAsCiAgICAgICAgICAgICAgICAgICAgc2VhcmNoRGF0YWtleTogIiIsCiAgICAgICAgICAgICAgICAgICAgdHJhbnNJbmZvOiAiIiwKICAgICAgICAgICAgICAgICAgICBpc25lZWRRYzogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICBwcmVRaWQ6ICIiLAogICAgICAgICAgICAgICAgICAgIGFkQ2xpZW50SW5mbzogIiIsCiAgICAgICAgICAgICAgICAgICAgZXh0cmFJbmZvOiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlzTmV3TWFya0xhYmVsOiAiMSIsCiAgICAgICAgICAgICAgICAgICAgICAgIG11bHRpX3Rlcm1pbmFsX3BjOiAiMSIsCiAgICAgICAgICAgICAgICAgICAgICAgIHRoZW1lVHlwZTogIjEiLAogICAgICAgICAgICAgICAgICAgICAgICBzdWdSZWxhdGVkSWRzOiAie30iLAogICAgICAgICAgICAgICAgICAgICAgICBhcHBWZXJzaW9uOiAiIgogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pLAogICAgICAgICAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ01vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS85OC4wLjQ3NTguMTM5IFNhZmFyaS81MzcuMzYnLAogICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsCiAgICAgICAgICAgICAgICAgICAgJ09yaWdpbic6ICdodHRwczovL3YucXEuY29tJywKICAgICAgICAgICAgICAgICAgICAnUmVmZXJlcic6ICdodHRwczovL3YucXEuY29tLycKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBtZXRob2Q6ICdQT1NUJwogICAgICAgICAgICB9KTsKICAgICAgICB9CgogICAgICAgIGNvbnN0IG5vbk1haW5Db250ZW50S2V5d29yZHMgPSBbCiAgICAgICAgICAgICfvvJonLCAnIycsICfnibnovpEnLCAn5Ymq6L6RJywgJ+eJh+iKsScsICfni6zlrrYnLCAn5LiT6K6/JywgJ+e6r+S6qycsCiAgICAgICAgICAgICfliLbkvZwnLCAn5bmV5ZCOJywgJ+Wuo+S8oCcsICdNVicsICfkuLvpopjmm7InLCAn5o+S5puyJywgJ+W9qeibiycsCiAgICAgICAgICAgICfnsr7lvaknLCAn6ZuG6ZSmJywgJ+ebmOeCuScsICflm57pob4nLCAn6Kej6K+0JywgJ+ivhOa1iycsICflj43lupQnLCAncmVhY3Rpb24nCiAgICAgICAgXTsKCiAgICAgICAgZnVuY3Rpb24gaXNNYWluQ29udGVudCh0aXRsZSkgewogICAgICAgICAgICBpZiAoIXRpdGxlKSByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIGlmICh0aXRsZS5pbmNsdWRlcygnPGVtPicpIHx8IHRpdGxlLmluY2x1ZGVzKCc8L2VtPicpKSByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgIHJldHVybiAhbm9uTWFpbkNvbnRlbnRLZXl3b3Jkcy5zb21lKGtleXdvcmQgPT4gdGl0bGUuaW5jbHVkZXMoa2V5d29yZCkpOwogICAgICAgIH0KCiAgICAgICAgZnVuY3Rpb24gaXNRUVBsYXRmb3JtKHBsYXlTaXRlcykgewogICAgICAgICAgICBpZiAoIXBsYXlTaXRlcyB8fCAhQXJyYXkuaXNBcnJheShwbGF5U2l0ZXMpKSByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgcmV0dXJuIHBsYXlTaXRlcy5zb21lKHNpdGUgPT4gc2l0ZS5lbk5hbWUgJiYgc2l0ZS5lbk5hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ3FxJyk7CiAgICAgICAgfQoKICAgICAgICB0cnkgewogICAgICAgICAgICBsZXQgaHRtbCA9IHZvZFNlYXJjaChrZXl3b3JkLCAwKTsKICAgICAgICAgICAgbGV0IGpzb24gPSBKU09OLnBhcnNlKGh0bWwpOwoKICAgICAgICAgICAgZnVuY3Rpb24gcHJvY2Vzc0l0ZW1MaXN0KGl0ZW1MaXN0KSB7CiAgICAgICAgICAgICAgICBpZiAoIWl0ZW1MaXN0KSByZXR1cm47CgogICAgICAgICAgICAgICAgaXRlbUxpc3QuZm9yRWFjaChpdCA9PiB7CiAgICAgICAgICAgICAgICAgICAgaWYgKGl0LmRvYyAmJiBpdC5kb2MuaWQgJiYgaXQudmlkZW9JbmZvICYmCiAgICAgICAgICAgICAgICAgICAgICAgIGlzTWFpbkNvbnRlbnQoaXQudmlkZW9JbmZvLnRpdGxlKSAmJgogICAgICAgICAgICAgICAgICAgICAgICBpc1FRUGxhdGZvcm0oaXQudmlkZW9JbmZvLnBsYXlTaXRlcykpIHsKCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGl0ZW1JZCA9IGl0LmRvYy5pZDsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFzZWVuSWRzLmhhcyhpdGVtSWQpKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWVuSWRzLmFkZChpdGVtSWQpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgZC5wdXNoKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogaXQudmlkZW9JbmZvLnRpdGxlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZzogaXQudmlkZW9JbmZvLmltZ1VybCB8fCAiIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IGl0ZW1JZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjOiBpdC52aWRlb0luZm8uc2Vjb25kTGluZSB8fCAiIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKGpzb24uZGF0YSAmJiBqc29uLmRhdGEubm9ybWFsTGlzdCkgewogICAgICAgICAgICAgICAgcHJvY2Vzc0l0ZW1MaXN0KGpzb24uZGF0YS5ub3JtYWxMaXN0Lml0ZW1MaXN0KTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKGpzb24uZGF0YSAmJiBqc29uLmRhdGEuYXJlYUJveExpc3QpIHsKICAgICAgICAgICAgICAgIGpzb24uZGF0YS5hcmVhQm94TGlzdC5mb3JFYWNoKGJveCA9PiB7CiAgICAgICAgICAgICAgICAgICAgcHJvY2Vzc0l0ZW1MaXN0KGJveC5pdGVtTGlzdCk7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgICAgIGxvZygi5pCc57Si5Ye66ZSZOiAiICsgZS5tZXNzYWdlKTsKICAgICAgICB9CgogICAgICAgIHNldFJlc3VsdChkKTsKICAgIH0pLAoKICAgIGZpbHRlcjogewogICAgICAgICJjaG9pY2UiOiBbewogICAgICAgICAgICAia2V5IjogInNvcnQiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogIjc1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDmlrAiLAogICAgICAgICAgICAgICAgInYiOiAiODMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWlveivhCIsCiAgICAgICAgICAgICAgICAidiI6ICI4MSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiaXllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIi0xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNSIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAidHYiOiBbewogICAgICAgICAgICAia2V5IjogInNvcnQiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogIjc1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDmlrAiLAogICAgICAgICAgICAgICAgInYiOiAiNzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWlveivhCIsCiAgICAgICAgICAgICAgICAidiI6ICIxNiIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiZmVhdHVyZSIsCiAgICAgICAgICAgICJuYW1lIjogIuexu+WeiyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiLTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueIseaDhSIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlj6Too4UiLAogICAgICAgICAgICAgICAgInYiOiAiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oKs55aRIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumDveW4giIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlrrbluq0iLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zac5YmnIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS8oOWlhyIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmrabkvqAiLAogICAgICAgICAgICAgICAgInYiOiAiOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yab5peFIiwKICAgICAgICAgICAgICAgICJ2IjogIjkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuadg+iwiyIsCiAgICAgICAgICAgICAgICAidiI6ICIxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z2p5ZG9IiwKICAgICAgICAgICAgICAgICJ2IjogIjExIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnjrDlrp4iLAogICAgICAgICAgICAgICAgInYiOiAiMTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumdkuaYpSIsCiAgICAgICAgICAgICAgICAidiI6ICIxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54yO5aWHIiwKICAgICAgICAgICAgICAgICJ2IjogIjE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnp5HlubsiLAogICAgICAgICAgICAgICAgInYiOiAiMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuernuaKgCIsCiAgICAgICAgICAgICAgICAidiI6ICIxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi546E5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIjE4IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJpeWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7oyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiLTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICJtb3ZpZSI6IFt7CiAgICAgICAgICAgICJrZXkiOiAic29ydCIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDng60iLAogICAgICAgICAgICAgICAgInYiOiAiNzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICI4MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aW96K+EIiwKICAgICAgICAgICAgICAgICJ2IjogIjgxIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ0eXBlIiwKICAgICAgICAgICAgIm5hbWUiOiAi57G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICItMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54qv572qIiwKICAgICAgICAgICAgICAgICJ2IjogIjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKseW/lyIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLllpzliaciLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDA0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLng63ooYAiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDYxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgqznlpEiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLniLHmg4UiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDA1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnp5HlubsiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgZDmgJYiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliqjnlLsiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmiJjkuokiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDA2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlrrbluq0iLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliafmg4UiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpYflubsiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmrabkvqAiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDExIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljoblj7IiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLogIHniYciLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLopb/pg6giLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K6w5b2V54mHIiwKICAgICAgICAgICAgICAgICJ2IjogIjEwMDAyMCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7oyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiLTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICJ2YXJpZXR5IjogW3sKICAgICAgICAgICAgImtleSI6ICJzb3J0IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOeDrSIsCiAgICAgICAgICAgICAgICAidiI6ICI3NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5pawIiwKICAgICAgICAgICAgICAgICJ2IjogIjIzIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJpeWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7oyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiLTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICJjYXJ0b29uIjogW3sKICAgICAgICAgICAgImtleSI6ICJzb3J0IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOeDrSIsCiAgICAgICAgICAgICAgICAidiI6ICI3NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5pawIiwKICAgICAgICAgICAgICAgICJ2IjogIjgzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpb3or4QiLAogICAgICAgICAgICAgICAgInYiOiAiODEiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIi0xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhoXlnLAiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuasp+e+jiIsCiAgICAgICAgICAgICAgICAidiI6ICIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAiNCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAidHlwZSIsCiAgICAgICAgICAgICJuYW1lIjogIuexu+WeiyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiLTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueOhOW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICI5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnp5HlubsiLAogICAgICAgICAgICAgICAgInYiOiAiNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5q2m5L6gIiwKICAgICAgICAgICAgICAgICJ2IjogIjEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpLpmakiLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oiY5paXIiwKICAgICAgICAgICAgICAgICJ2IjogIjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaQnueskSIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgYvniLEiLAogICAgICAgICAgICAgICAgInYiOiAiNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6a2U5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuernuaKgCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oKs55aRIiwKICAgICAgICAgICAgICAgICJ2IjogIjE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6XluLgiLAogICAgICAgICAgICAgICAgInYiOiAiMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuagoeWbrSIsCiAgICAgICAgICAgICAgICAidiI6ICIxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi55yf5Lq6IiwKICAgICAgICAgICAgICAgICJ2IjogIjE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmjqjnkIYiLAogICAgICAgICAgICAgICAgInYiOiAiMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWOhuWPsiIsCiAgICAgICAgICAgICAgICAidiI6ICIxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57uP5YW4IiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuS7liIsCiAgICAgICAgICAgICAgICAidiI6ICIxMiIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiaXllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIi0xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNSIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiY2hpbGQiOiBbewogICAgICAgICAgICAia2V5IjogInNvcnQiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogIjc1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDmlrAiLAogICAgICAgICAgICAgICAgInYiOiAiNzYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWlveivhCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAic2V4IiwKICAgICAgICAgICAgIm5hbWUiOiAi5oCn5YirIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICItMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWz5a2pIiwKICAgICAgICAgICAgICAgICJ2IjogIjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueUt+WtqSIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICItMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaF5ZywIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeacrCIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiaXllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTpvoTmrrUiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIi0xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIwLTPlsoEiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNC025bKBIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjctOeWygSIsCiAgICAgICAgICAgICAgICAidiI6ICIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIxMOWygeS7peS4iiIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhajlubTpvoTmrrUiLAogICAgICAgICAgICAgICAgInYiOiAiNyIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiZG9jbyI6IFt7CiAgICAgICAgICAgICJrZXkiOiAic29ydCIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDng60iLAogICAgICAgICAgICAgICAgInYiOiAiNzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICI3NCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiaXRyYWlsZXIiLAogICAgICAgICAgICAibmFtZSI6ICLlh7rlk4HmlrkiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIi0xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJCQkMiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zu95a625Zyw55CGIiwKICAgICAgICAgICAgICAgICJ2IjogIjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkhCTyIsCiAgICAgICAgICAgICAgICAidiI6ICIzMTc1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJOSEsiLAogICAgICAgICAgICAgICAgInYiOiAiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y6G5Y+y6aKR6YGTIiwKICAgICAgICAgICAgICAgICJ2IjogIjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIklUViIsCiAgICAgICAgICAgICAgICAidiI6ICIzNTMwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmjqLntKLpopHpgZMiLAogICAgICAgICAgICAgICAgInYiOiAiMzE3NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiWkRGIiwKICAgICAgICAgICAgICAgICJ2IjogIjMxNzYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiFvuiur+iHquWItiIsCiAgICAgICAgICAgICAgICAidiI6ICIxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ZCI5L2c5py65p6EIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuS7liIsCiAgICAgICAgICAgICAgICAidiI6ICI1IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ0eXBlIiwKICAgICAgICAgICAgIm5hbWUiOiAi57G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICItMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Ieq54S2IiwKICAgICAgICAgICAgICAgICJ2IjogIjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue+jumjnyIsCiAgICAgICAgICAgICAgICAidiI6ICIxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56S+5LyaIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6uuaWhyIsCiAgICAgICAgICAgICAgICAidiI6ICI2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljoblj7IiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yab5LqLIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuenkeaKgCIsCiAgICAgICAgICAgICAgICAidiI6ICI4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLotKLnu48iLAogICAgICAgICAgICAgICAgInYiOiAiMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaOoumZqSIsCiAgICAgICAgICAgICAgICAidiI6ICIxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi572q5qGIIiwKICAgICAgICAgICAgICAgICJ2IjogIjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuernuaKgCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5peF5ri4IiwKICAgICAgICAgICAgICAgICJ2IjogIjExIgogICAgICAgICAgICB9XQogICAgICAgIH1dCiAgICB9Cn07 \ No newline at end of file diff --git a/cpu_iy/lib/.keep b/cpu_iy/lib/.keep deleted file mode 100644 index e69de29b..00000000 diff --git a/cpu_iy/lib/awdm.png b/cpu_iy/lib/awdm.png deleted file mode 100644 index b8aaf94a..00000000 Binary files a/cpu_iy/lib/awdm.png and /dev/null differ diff --git a/cpu_iy/lib/blc.png b/cpu_iy/lib/blc.png deleted file mode 100644 index 19f1b216..00000000 --- a/cpu_iy/lib/blc.png +++ /dev/null @@ -1 +0,0 @@ -"cookie": "buvid3=961B1486-A9D6-BA43-B44F-E5105C2E681151551infoc; b_nut=1762271051; _uuid=D639891E-A1EC-DEDA-31010D-9107F211C79F852945infoc; CURRENT_FNVAL=4048; CURRENT_QUALITY=0; buvid_fp=fd3797d69b70a2dd13c1236f154c0f2b; rpdid=0zbfvSa2au|JrJRQMPU|2a8|3w1VgjcF; buvid4=D6A46F50-28C0-462D-D8BA-0EE7DBD8F43052850-025110423-ZiHCV7lF06Hrtxukykv/IAr68Rki7Yd2NZkhDNGoC9IDHRXRljk982RWyYEg/k4Z; b_lsid=2A6ED6EC_19AAB94B5FB; bsource=search_bing; home_feed_column=4; bmg_af_switch=1; bmg_src_def_domain=i1.hdslb.com; SESSDATA=d95d6456%2C1779367324%2C7b85d%2Ab2CjDaqoyhiE1Cm6vtOXSxyC8ANtsCgj-Glle4dx5Budy-rQf2KXT1XToUwxQFOFPqRoESVkpJSXlEc2IxRUtRdWh1TlpyOF9YZFRMaEtYbnpQcHBvWExEUkdfSXY0enhFYnk5Z25oTk5tXzlvMzVMaXZMbV8yVmtfNm9BRTBOby1wdUlTbXgzTllBIIEC; bili_jct=f94bd13b18d76339184d2033e1a9b574; DedeUserID=1475805666; DedeUserID__ckMd5=f58689ea373d2144; sid=qd0dn69e; theme-tip-show=SHOWED; theme-avatar-tip-show=SHOWED; bili_ticket=eyJhbGciOiJIUzI1NiIsImtpZCI6InMwMyIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NjQwNzQ1NTMsImlhdCI6MTc2MzgxNTI5MywicGx0IjotMX0.GRN5Ua_OahfiUTnt5Q_Ska3D025UsOjJbkxXWCK_Jw0; bili_ticket_expires=1764074493; browser_resolution=759-726" \ No newline at end of file diff --git a/cpu_iy/lib/drpy-core-lite.min.js b/cpu_iy/lib/drpy-core-lite.min.js deleted file mode 100644 index 2aec8b04..00000000 --- a/cpu_iy/lib/drpy-core-lite.min.js +++ /dev/null @@ -1 +0,0 @@ -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;i<value.length;i++){var key=String(i);var replacement=internalize(value,key,reviver);if(replacement===undefined){delete value[key]}else{Object.defineProperty(value,key,{value:replacement,writable:true,enumerable:true,configurable:true})}}}else{for(var key$1 in value){var replacement$1=internalize(value,key$1,reviver);if(replacement$1===undefined){delete value[key$1]}else{Object.defineProperty(value,key$1,{value:replacement$1,writable:true,enumerable:true,configurable:true})}}}}return reviver.call(holder,name,value)}var lexState;var buffer;var doubleQuote;var sign;var c;function lex(){lexState="default";buffer="";doubleQuote=false;sign=1;for(;;){c=peek();var token=lexStates[lexState]();if(token){return token}}}function peek(){if(source[pos]){return String.fromCodePoint(source.codePointAt(pos))}}function read(){var c=peek();if(c==="\\n"){line++;column=0}else if(c){column+=c.length}else{column++}if(c){pos+=c.length}return c}var lexStates={default:function default$1(){switch(c){case"\\t":case"\\v":case"\\f":case" ":case" ":case"\\ufeff":case"\\n":case"\\r":case"\\u2028":case"\\u2029":read();return;case"/":read();lexState="comment";return;case undefined:read();return newToken("eof")}if(util.isSpaceSeparator(c)){read();return}return lexStates[parseState]()},comment:function comment(){switch(c){case"*":read();lexState="multiLineComment";return;case"/":read();lexState="singleLineComment";return}throw invalidChar(read())},multiLineComment:function multiLineComment(){switch(c){case"*":read();lexState="multiLineCommentAsterisk";return;case undefined:throw invalidChar(read())}read()},multiLineCommentAsterisk:function multiLineCommentAsterisk(){switch(c){case"*":read();return;case"/":read();lexState="default";return;case undefined:throw invalidChar(read())}read();lexState="multiLineComment"},singleLineComment:function singleLineComment(){switch(c){case"\\n":case"\\r":case"\\u2028":case"\\u2029":read();lexState="default";return;case undefined:read();return newToken("eof")}read()},value:function value(){switch(c){case"{":case"[":return newToken("punctuator",read());case"n":read();literal("ull");return newToken("null",null);case"t":read();literal("rue");return newToken("boolean",true);case"f":read();literal("alse");return newToken("boolean",false);case"-":case"+":if(read()==="-"){sign=-1}lexState="sign";return;case".":buffer=read();lexState="decimalPointLeading";return;case"0":buffer=read();lexState="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":buffer=read();lexState="decimalInteger";return;case"I":read();literal("nfinity");return newToken("numeric",Infinity);case"N":read();literal("aN");return newToken("numeric",NaN);case\'"\':case"\'":doubleQuote=read()===\'"\';buffer="";lexState="string";return}throw invalidChar(read())},identifierNameStartEscape:function identifierNameStartEscape(){if(c!=="u"){throw invalidChar(read())}read();var u=unicodeEscape();switch(u){case"$":case"_":break;default:if(!util.isIdStartChar(u)){throw invalidIdentifier()}break}buffer+=u;lexState="identifierName"},identifierName:function identifierName(){switch(c){case"$":case"_":case"‌":case"‍":buffer+=read();return;case"\\\\":read();lexState="identifierNameEscape";return}if(util.isIdContinueChar(c)){buffer+=read();return}return newToken("identifier",buffer)},identifierNameEscape:function identifierNameEscape(){if(c!=="u"){throw invalidChar(read())}read();var u=unicodeEscape();switch(u){case"$":case"_":case"‌":case"‍":break;default:if(!util.isIdContinueChar(u)){throw invalidIdentifier()}break}buffer+=u;lexState="identifierName"},sign:function sign$1(){switch(c){case".":buffer=read();lexState="decimalPointLeading";return;case"0":buffer=read();lexState="zero";return;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":buffer=read();lexState="decimalInteger";return;case"I":read();literal("nfinity");return newToken("numeric",sign*Infinity);case"N":read();literal("aN");return newToken("numeric",NaN)}throw invalidChar(read())},zero:function zero(){switch(c){case".":buffer+=read();lexState="decimalPoint";return;case"e":case"E":buffer+=read();lexState="decimalExponent";return;case"x":case"X":buffer+=read();lexState="hexadecimal";return}return newToken("numeric",sign*0)},decimalInteger:function decimalInteger(){switch(c){case".":buffer+=read();lexState="decimalPoint";return;case"e":case"E":buffer+=read();lexState="decimalExponent";return}if(util.isDigit(c)){buffer+=read();return}return newToken("numeric",sign*Number(buffer))},decimalPointLeading:function decimalPointLeading(){if(util.isDigit(c)){buffer+=read();lexState="decimalFraction";return}throw invalidChar(read())},decimalPoint:function decimalPoint(){switch(c){case"e":case"E":buffer+=read();lexState="decimalExponent";return}if(util.isDigit(c)){buffer+=read();lexState="decimalFraction";return}return newToken("numeric",sign*Number(buffer))},decimalFraction:function decimalFraction(){switch(c){case"e":case"E":buffer+=read();lexState="decimalExponent";return}if(util.isDigit(c)){buffer+=read();return}return newToken("numeric",sign*Number(buffer))},decimalExponent:function decimalExponent(){switch(c){case"+":case"-":buffer+=read();lexState="decimalExponentSign";return}if(util.isDigit(c)){buffer+=read();lexState="decimalExponentInteger";return}throw invalidChar(read())},decimalExponentSign:function decimalExponentSign(){if(util.isDigit(c)){buffer+=read();lexState="decimalExponentInteger";return}throw invalidChar(read())},decimalExponentInteger:function decimalExponentInteger(){if(util.isDigit(c)){buffer+=read();return}return newToken("numeric",sign*Number(buffer))},hexadecimal:function hexadecimal(){if(util.isHexDigit(c)){buffer+=read();lexState="hexadecimalInteger";return}throw invalidChar(read())},hexadecimalInteger:function hexadecimalInteger(){if(util.isHexDigit(c)){buffer+=read();return}return newToken("numeric",sign*Number(buffer))},string:function string(){switch(c){case"\\\\":read();buffer+=escape();return;case\'"\':if(doubleQuote){read();return newToken("string",buffer)}buffer+=read();return;case"\'":if(!doubleQuote){read();return newToken("string",buffer)}buffer+=read();return;case"\\n":case"\\r":throw invalidChar(read());case"\\u2028":case"\\u2029":separatorChar(c);break;case undefined:throw invalidChar(read())}buffer+=read()},start:function start(){switch(c){case"{":case"[":return newToken("punctuator",read())}lexState="value"},beforePropertyName:function beforePropertyName(){switch(c){case"$":case"_":buffer=read();lexState="identifierName";return;case"\\\\":read();lexState="identifierNameStartEscape";return;case"}":return newToken("punctuator",read());case\'"\':case"\'":doubleQuote=read()===\'"\';lexState="string";return}if(util.isIdStartChar(c)){buffer+=read();lexState="identifierName";return}throw invalidChar(read())},afterPropertyName:function afterPropertyName(){if(c===":"){return newToken("punctuator",read())}throw invalidChar(read())},beforePropertyValue:function beforePropertyValue(){lexState="value"},afterPropertyValue:function afterPropertyValue(){switch(c){case",":case"}":return newToken("punctuator",read())}throw invalidChar(read())},beforeArrayValue:function beforeArrayValue(){if(c==="]"){return newToken("punctuator",read())}lexState="value"},afterArrayValue:function afterArrayValue(){switch(c){case",":case"]":return newToken("punctuator",read())}throw invalidChar(read())},end:function end(){throw invalidChar(read())}};function newToken(type,value){return{type:type,value:value,line:line,column:column}}function literal(s){for(var i=0,list=s;i<list.length;i+=1){var c=list[i];var p=peek();if(p!==c){throw invalidChar(read())}read()}}function escape(){var c=peek();switch(c){case"b":read();return"\\b";case"f":read();return"\\f";case"n":read();return"\\n";case"r":read();return"\\r";case"t":read();return"\\t";case"v":read();return"\\v";case"0":read();if(util.isDigit(peek())){throw invalidChar(read())}return"\\0";case"x":read();return hexEscape();case"u":read();return unicodeEscape();case"\\n":case"\\u2028":case"\\u2029":read();return"";case"\\r":read();if(peek()==="\\n"){read()}return"";case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":throw invalidChar(read());case undefined:throw invalidChar(read())}return read()}function hexEscape(){var buffer="";var c=peek();if(!util.isHexDigit(c)){throw invalidChar(read())}buffer+=read();c=peek();if(!util.isHexDigit(c)){throw invalidChar(read())}buffer+=read();return String.fromCodePoint(parseInt(buffer,16))}function unicodeEscape(){var buffer="";var count=4;while(count-- >0){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;i<list.length;i+=1){var v=list[i];var item=void 0;if(typeof v==="string"){item=v}else if(typeof v==="number"||v instanceof String||v instanceof Number){item=String(v)}if(item!==undefined&&propertyList.indexOf(item)<0){propertyList.push(item)}}}if(space instanceof Number){space=Number(space)}else if(space instanceof String){space=String(space)}if(typeof space==="number"){if(space>0){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<value.length;i++){var c=value[i];switch(c){case"\'":case\'"\':quotes[c]++;product+=c;continue;case"\\0":if(util.isDigit(value[i+1])){product+="\\\\x00";continue}}if(replacements[c]){product+=replacements[c];continue}if(c<" "){var hexString=c.charCodeAt(0).toString(16);product+="\\\\x"+("00"+hexString).substring(hexString.length);continue}product+=c}var quoteChar=quote||Object.keys(quotes).reduce(function(a,b){return quotes[a]<quotes[b]?a:b});product=product.replace(new RegExp(quoteChar,"g"),replacements[quoteChar]);return quoteChar+product+quoteChar}function serializeObject(value){if(stack.indexOf(value)>=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<list.length;i+=1){var key=list[i];var propertyString=serializeProperty(key,value);if(propertyString!==undefined){var member=serializeKey(key)+":";if(gap!==""){member+=" "}member+=propertyString;partial.push(member)}}var final;if(partial.length===0){final="{}"}else{var properties;if(gap===""){properties=partial.join(",");final="{"+properties+"}"}else{var separator=",\\n"+indent;properties=partial.join(separator);final="{\\n"+indent+properties+",\\n"+stepback+"}"}}stack.pop();indent=stepback;return final}function serializeKey(key){if(key.length===0){return quoteString(key,true)}var firstChar=String.fromCodePoint(key.codePointAt(0));if(!util.isIdStartChar(firstChar)){return quoteString(key,true)}for(var i=firstChar.length;i<key.length;i++){if(!util.isIdContinueChar(String.fromCodePoint(key.codePointAt(i)))){return quoteString(key,true)}}return key}function serializeArray(value){if(stack.indexOf(value)>=0){throw TypeError("Converting circular structure to JSON5")}stack.push(value);var stepback=indent;indent=indent+gap;var partial=[];for(var i=0;i<value.length;i++){var propertyString=serializeProperty(String(i),value);partial.push(propertyString!==undefined?propertyString:"null")}var final;if(partial.length===0){final="[]"}else{if(gap===""){var properties=partial.join(",");final="["+properties+"]"}else{var separator=",\\n"+indent;var properties$1=partial.join(separator);final="[\\n"+indent+properties$1+",\\n"+stepback+"]"}}stack.pop();indent=stepback;return final}};var JSON5={parse:parse,stringify:stringify};var lib=JSON5;var es5=lib;return es5});'},105:e=>{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<d)return v(240|d>>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<c&&(c=f);a:{for(;a<c;a=a+1|0){b=g.charCodeAt(a)|0;switch(b>>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)<f){k=k+1|0;break}case 14:if((a+2|0)<f){k=k+1|0;break}case 15:if((a+3|0)<f){k=k+1|0;break}default:break a}d[a]=b}c&&(k=k+1|0)}return{written:a,read:h<k?h:k}}var v=String.fromCharCode,x={}.toString,E=x.call(q.SharedArrayBuffer),F=x(),t=q.Uint8Array,w=t||Array,u=t?ArrayBuffer:w,G=u.isView||function(b){return b&&"length"in b},H=x.call(u.prototype),B=z.prototype;u=q.TextEncoder;var D=/[\\x80-\\uD7ff\\uDC00-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]?/g,e=new(t?Uint16Array:w)(32);y.prototype.decode=function(b){if(!G(b)){var d=x.call(b);if(d!==H&&d!==E&&d!==F)throw TypeError("Failed to execute \'decode\' on \'TextDecoder\': The provided value is not of type \'(ArrayBuffer or ArrayBufferView)\'");b=t?new w(b):b||[]}for(var g=d="",c=0,a=b.length|0,k=a-32|0,f,h,l=0,r=0,n,m=0,p=-1;c<a;){for(f=c<=k?32:a-c|0;m<f;c=c+1|0,m=m+1|0){h=b[c]&255;switch(h>>4){case 15:n=b[c=c+1|0]&255;if(2!==n>>6||247<h){c=c-1|0;break}l=(h&7)<<6|n&63;r=5;h=256;case 14:n=b[c=c+1|0]&255,l<<=6,l|=(h&15)<<6|n&63,r=2===n>>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<a&&2===n>>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<a){if(e[0]=p,m=~p>>>31,p=-1,g.length<d.length)continue}else-1!==p&&(g+=v(p));d+=g;g=""}return d};B.encode=function(b){b=void 0===b?"":""+b;var d=b.length|0,g=new w((d<<1)+8|0),c,a=0,k=!t;for(c=0;c<d;c=c+1|0,a=a+1|0){var f=b.charCodeAt(c)|0;if(127>=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<f){g[a]=240|f>>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<a&&c<<1<(a-7|0)&&(k=!0,h=new w(3*d),h.set(g),g=h)}g[a]=224|f>>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<c>>1){var a=I.encode(b);if((a.length|0)<c)return d.set(a),{read:g,written:a.length|0}}return A(b,d)}}})(globalThis||{});'},145: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.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<thatSigBytes;i++){var thatByte=thatWords[i>>>2]>>>24-i%4*8&255;thisWords[thisSigBytes+i>>>2]|=thatByte<<24-(thisSigBytes+i)%4*8}}else{for(var j=0;j<thatSigBytes;j+=4){thisWords[thisSigBytes+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<nBytes;i+=4){words.push(cryptoSecureRandomInt())}return new WordArray.init(words,nBytes)}});var C_enc=C.enc={};var Hex=C_enc.Hex={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var hexChars=[];for(var i=0;i<sigBytes;i++){var bite=words[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<hexStrLength;i+=2){words[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<sigBytes;i++){var bite=words[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<latin1StrLength;i++){words[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<nWordsReady;offset+=blockSize){this._doProcessBlock(dataWords,offset)}processedWords=dataWords.splice(0,nWordsReady);data.sigBytes-=nBytesReady}return new WordArray.init(processedWords,nBytesReady)},clone:function(){var clone=Base.clone.call(this);clone._data=this._data.clone();return clone},_minBufferSize:0});var Hasher=C_lib.Hasher=BufferedBlockAlgorithm.extend({cfg:Base.extend(),init:function(cfg){this.cfg=this.cfg.extend(cfg);this.reset()},reset:function(){BufferedBlockAlgorithm.reset.call(this);this._doReset()},update:function(messageUpdate){this._append(messageUpdate);this._process();return this},finalize:function(messageUpdate){if(messageUpdate){this._append(messageUpdate)}var hash=this._doFinalize();return hash},blockSize:512/32,_createHelper:function(hasher){return function(message,cfg){return new hasher.init(cfg).finalize(message)}},_createHmacHelper:function(hasher){return function(message,key){return new C_algo.HMAC.init(hasher,key).finalize(message)}}});var C_algo=C.algo={};return C}(Math);(function(undefined){var C=CryptoJS;var C_lib=C.lib;var Base=C_lib.Base;var X32WordArray=C_lib.WordArray;var C_x64=C.x64={};var X64Word=C_x64.Word=Base.extend({init:function(high,low){this.high=high;this.low=low}});var X64WordArray=C_x64.WordArray=Base.extend({init:function(words,sigBytes){words=this.words=words||[];if(sigBytes!=undefined){this.sigBytes=sigBytes}else{this.sigBytes=words.length*8}},toX32:function(){var x64Words=this.words;var x64WordsLength=x64Words.length;var x32Words=[];for(var i=0;i<x64WordsLength;i++){var x64Word=x64Words[i];x32Words.push(x64Word.high);x32Words.push(x64Word.low)}return X32WordArray.create(x32Words,this.sigBytes)},clone:function(){var clone=Base.clone.call(this);var words=clone.words=this.words.slice(0);var wordsLength=words.length;for(var i=0;i<wordsLength;i++){words[i]=words[i].clone()}return clone}})})();(function(){if(typeof ArrayBuffer!="function"){return}var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var superInit=WordArray.init;var subInit=WordArray.init=function(typedArray){if(typedArray instanceof ArrayBuffer){typedArray=new Uint8Array(typedArray)}if(typedArray instanceof Int8Array||typeof Uint8ClampedArray!=="undefined"&&typedArray instanceof Uint8ClampedArray||typedArray instanceof Int16Array||typedArray instanceof Uint16Array||typedArray instanceof Int32Array||typedArray instanceof Uint32Array||typedArray instanceof Float32Array||typedArray instanceof Float64Array){typedArray=new Uint8Array(typedArray.buffer,typedArray.byteOffset,typedArray.byteLength)}if(typedArray instanceof Uint8Array){var typedArrayByteLength=typedArray.byteLength;var words=[];for(var i=0;i<typedArrayByteLength;i++){words[i>>>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<sigBytes;i+=2){var codePoint=words[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<utf16StrLength;i++){words[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<sigBytes;i+=2){var codePoint=swapEndian(words[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<utf16StrLength;i++){words[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<sigBytes;i+=3){var byte1=words[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<sigBytes;j++){base64Chars.push(map.charAt(triplet>>>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<map.length;j++){reverseMap[map.charCodeAt(j)]=j}}var paddingChar=map.charAt(64);if(paddingChar){var paddingIndex=base64Str.indexOf(paddingChar);if(paddingIndex!==-1){base64StrLength=paddingIndex}}return parseLoop(base64Str,base64StrLength,reverseMap)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="};function parseLoop(base64Str,base64StrLength,reverseMap){var words=[];var nBytes=0;for(var i=0;i<base64StrLength;i++){if(i%4){var bits1=reverseMap[base64Str.charCodeAt(i-1)]<<i%4*2;var bits2=reverseMap[base64Str.charCodeAt(i)]>>>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<sigBytes;i+=3){var byte1=words[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<sigBytes;j++){base64Chars.push(map.charAt(triplet>>>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<map.length;j++){reverseMap[map.charCodeAt(j)]=j}}var paddingChar=map.charAt(64);if(paddingChar){var paddingIndex=base64Str.indexOf(paddingChar);if(paddingIndex!==-1){base64StrLength=paddingIndex}}return parseLoop(base64Str,base64StrLength,reverseMap)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_safe_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"};function parseLoop(base64Str,base64StrLength,reverseMap){var words=[];var nBytes=0;for(var i=0;i<base64StrLength;i++){if(i%4){var bits1=reverseMap[base64Str.charCodeAt(i-1)]<<i%4*2;var bits2=reverseMap[base64Str.charCodeAt(i)]>>>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<<s|n>>>32-s)+b}function GG(a,b,c,d,x,s,t){var n=a+(b&d|c&~d)+x+t;return(n<<s|n>>>32-s)+b}function HH(a,b,c,d,x,s,t){var n=a+(b^c^d)+x+t;return(n<<s|n>>>32-s)+b}function II(a,b,c,d,x,s,t){var n=a+(c^(b|~d))+x+t;return(n<<s|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<gamma0l>>>0?1:0);Wil=Wil+gamma1l;Wih=Wih+gamma1h+(Wil>>>0<gamma1l>>>0?1:0);Wil=Wil+Wi16l;Wih=Wih+Wi16h+(Wil>>>0<Wi16l>>>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<hl>>>0?1:0);var t1l=t1l+chl;var t1h=t1h+chh+(t1l>>>0<chl>>>0?1:0);var t1l=t1l+Kil;var t1h=t1h+Kih+(t1l>>>0<Kil>>>0?1:0);var t1l=t1l+Wil;var t1h=t1h+Wih+(t1l>>>0<Wil>>>0?1:0);var t2l=sigma0l+majl;var t2h=sigma0h+majh+(t2l>>>0<sigma0l>>>0?1:0);hh=gh;hl=gl;gh=fh;gl=fl;fh=eh;fl=el;el=dl+t1l|0;eh=dh+t1h+(el>>>0<dl>>>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<t1l>>>0?1:0)|0}H0l=H0.low=H0l+al;H0.high=H0h+ah+(H0l>>>0<al>>>0?1:0);H1l=H1.low=H1l+bl;H1.high=H1h+bh+(H1l>>>0<bl>>>0?1:0);H2l=H2.low=H2l+cl;H2.high=H2h+ch+(H2l>>>0<cl>>>0?1:0);H3l=H3.low=H3l+dl;H3.high=H3h+dh+(H3l>>>0<dl>>>0?1:0);H4l=H4.low=H4l+el;H4.high=H4h+eh+(H4l>>>0<el>>>0?1:0);H5l=H5.low=H5l+fl;H5.high=H5h+fh+(H5l>>>0<fl>>>0?1:0);H6l=H6.low=H6l+gl;H6.high=H6h+gh+(H6l>>>0<gl>>>0?1:0);H7l=H7.low=H7l+hl;H7.high=H7h+hh+(H7l>>>0<hl>>>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<<j)-1;if(bitPosition<32){roundConstantLsw^=1<<bitPosition}else{roundConstantMsw^=1<<bitPosition-32}}if(LFSR&128){LFSR=LFSR<<1^113}else{LFSR<<=1}}ROUND_CONSTANTS[i]=X64Word.create(roundConstantMsw,roundConstantLsw)}})();var T=[];(function(){for(var i=0;i<25;i++){T[i]=X64Word.create()}})();var SHA3=C_algo.SHA3=Hasher.extend({cfg:Hasher.cfg.extend({outputLength:512}),_doReset:function(){var state=this._state=[];for(var i=0;i<25;i++){state[i]=new X64Word.init}this.blockSize=(1600-2*this.cfg.outputLength)/32},_doProcessBlock:function(M,offset){var state=this._state;var nBlockSizeLanes=this.blockSize/2;for(var i=0;i<nBlockSizeLanes;i++){var M2i=M[offset+2*i];var M2i1=M[offset+2*i+1];M2i=(M2i<<8|M2i>>>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<<rhoOffset|laneLsw>>>32-rhoOffset;tLsw=laneLsw<<rhoOffset|laneMsw>>>32-rhoOffset}else{tMsw=laneLsw<<rhoOffset-32|laneMsw>>>64-rhoOffset;tLsw=laneMsw<<rhoOffset-32|laneLsw>>>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<outputLengthLanes;i++){var lane=state[i];var laneMsw=lane.high;var laneLsw=lane.low;laneMsw=(laneMsw<<8|laneMsw>>>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<<n|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<hasherBlockSize;i++){oKeyWords[i]^=1549556828;iKeyWords[i]^=909522486}oKey.sigBytes=iKey.sigBytes=hasherBlockSizeBytes;this.reset()},reset:function(){var hasher=this._hasher;hasher.reset();hasher.update(this._iKey)},update:function(messageUpdate){this._hasher.update(messageUpdate);return this},finalize:function(messageUpdate){var hasher=this._hasher;var innerHash=hasher.finalize(messageUpdate);hasher.reset();var hmac=hasher.finalize(this._oKey.clone().concat(innerHash));return hmac}})})();(function(){var C=CryptoJS;var C_lib=C.lib;var Base=C_lib.Base;var WordArray=C_lib.WordArray;var C_algo=C.algo;var SHA1=C_algo.SHA1;var HMAC=C_algo.HMAC;var PBKDF2=C_algo.PBKDF2=Base.extend({cfg:Base.extend({keySize:128/32,hasher:SHA1,iterations:1}),init:function(cfg){this.cfg=this.cfg.extend(cfg)},compute:function(password,salt){var cfg=this.cfg;var hmac=HMAC.create(cfg.hasher,password);var derivedKey=WordArray.create();var blockIndex=WordArray.create([1]);var derivedKeyWords=derivedKey.words;var blockIndexWords=blockIndex.words;var keySize=cfg.keySize;var iterations=cfg.iterations;while(derivedKeyWords.length<keySize){var block=hmac.update(salt).finalize(blockIndex);hmac.reset();var blockWords=block.words;var blockWordsLength=blockWords.length;var intermediate=block;for(var i=1;i<iterations;i++){intermediate=hmac.finalize(intermediate);hmac.reset();var intermediateWords=intermediate.words;for(var j=0;j<blockWordsLength;j++){blockWords[j]^=intermediateWords[j]}}derivedKey.concat(block);blockIndexWords[0]++}derivedKey.sigBytes=keySize*4;return derivedKey}});C.PBKDF2=function(password,salt,cfg){return PBKDF2.create(cfg).compute(password,salt)}})();(function(){var C=CryptoJS;var C_lib=C.lib;var Base=C_lib.Base;var WordArray=C_lib.WordArray;var C_algo=C.algo;var MD5=C_algo.MD5;var EvpKDF=C_algo.EvpKDF=Base.extend({cfg:Base.extend({keySize:128/32,hasher:MD5,iterations:1}),init:function(cfg){this.cfg=this.cfg.extend(cfg)},compute:function(password,salt){var block;var cfg=this.cfg;var hasher=cfg.hasher.create();var derivedKey=WordArray.create();var derivedKeyWords=derivedKey.words;var keySize=cfg.keySize;var iterations=cfg.iterations;while(derivedKeyWords.length<keySize){if(block){hasher.update(block)}block=hasher.update(password).finalize(salt);hasher.reset();for(var i=1;i<iterations;i++){block=hasher.finalize(block);hasher.reset()}derivedKey.concat(block)}derivedKey.sigBytes=keySize*4;return derivedKey}});C.EvpKDF=function(password,salt,cfg){return EvpKDF.create(cfg).compute(password,salt)}})();CryptoJS.lib.Cipher||function(undefined){var C=CryptoJS;var C_lib=C.lib;var Base=C_lib.Base;var WordArray=C_lib.WordArray;var BufferedBlockAlgorithm=C_lib.BufferedBlockAlgorithm;var C_enc=C.enc;var Utf8=C_enc.Utf8;var Base64=C_enc.Base64;var C_algo=C.algo;var EvpKDF=C_algo.EvpKDF;var Cipher=C_lib.Cipher=BufferedBlockAlgorithm.extend({cfg:Base.extend(),createEncryptor:function(key,cfg){return this.create(this._ENC_XFORM_MODE,key,cfg)},createDecryptor:function(key,cfg){return this.create(this._DEC_XFORM_MODE,key,cfg)},init:function(xformMode,key,cfg){this.cfg=this.cfg.extend(cfg);this._xformMode=xformMode;this._key=key;this.reset()},reset:function(){BufferedBlockAlgorithm.reset.call(this);this._doReset()},process:function(dataUpdate){this._append(dataUpdate);return this._process()},finalize:function(dataUpdate){if(dataUpdate){this._append(dataUpdate)}var finalProcessedData=this._doFinalize();return finalProcessedData},keySize:128/32,ivSize:128/32,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function selectCipherStrategy(key){if(typeof key=="string"){return PasswordBasedCipher}else{return SerializableCipher}}return function(cipher){return{encrypt:function(message,key,cfg){return selectCipherStrategy(key).encrypt(cipher,message,key,cfg)},decrypt:function(ciphertext,key,cfg){return selectCipherStrategy(key).decrypt(cipher,ciphertext,key,cfg)}}}}()});var StreamCipher=C_lib.StreamCipher=Cipher.extend({_doFinalize:function(){var finalProcessedBlocks=this._process(!!"flush");return finalProcessedBlocks},blockSize:1});var C_mode=C.mode={};var BlockCipherMode=C_lib.BlockCipherMode=Base.extend({createEncryptor:function(cipher,iv){return this.Encryptor.create(cipher,iv)},createDecryptor:function(cipher,iv){return this.Decryptor.create(cipher,iv)},init:function(cipher,iv){this._cipher=cipher;this._iv=iv}});var CBC=C_mode.CBC=function(){var CBC=BlockCipherMode.extend();CBC.Encryptor=CBC.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;xorBlock.call(this,words,offset,blockSize);cipher.encryptBlock(words,offset);this._prevBlock=words.slice(offset,offset+blockSize)}});CBC.Decryptor=CBC.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;var thisBlock=words.slice(offset,offset+blockSize);cipher.decryptBlock(words,offset);xorBlock.call(this,words,offset,blockSize);this._prevBlock=thisBlock}});function xorBlock(words,offset,blockSize){var block;var iv=this._iv;if(iv){block=iv;this._iv=undefined}else{block=this._prevBlock}for(var i=0;i<blockSize;i++){words[offset+i]^=block[i]}}return CBC}();var C_pad=C.pad={};var Pkcs7=C_pad.Pkcs7={pad:function(data,blockSize){var blockSizeBytes=blockSize*4;var nPaddingBytes=blockSizeBytes-data.sigBytes%blockSizeBytes;var paddingWord=nPaddingBytes<<24|nPaddingBytes<<16|nPaddingBytes<<8|nPaddingBytes;var paddingWords=[];for(var i=0;i<nPaddingBytes;i+=4){paddingWords.push(paddingWord)}var padding=WordArray.create(paddingWords,nPaddingBytes);data.concat(padding)},unpad:function(data){var nPaddingBytes=data.words[data.sigBytes-1>>>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<blockSize;i++){words[offset+i]^=keystream[i]}}return CFB}();CryptoJS.mode.CTR=function(){var CTR=CryptoJS.lib.BlockCipherMode.extend();var Encryptor=CTR.Encryptor=CTR.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}var keystream=counter.slice(0);cipher.encryptBlock(keystream,0);counter[blockSize-1]=counter[blockSize-1]+1|0;for(var i=0;i<blockSize;i++){words[offset+i]^=keystream[i]}}});CTR.Decryptor=Encryptor;return CTR}();CryptoJS.mode.CTRGladman=function(){var CTRGladman=CryptoJS.lib.BlockCipherMode.extend();function incWord(word){if((word>>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<blockSize;i++){words[offset+i]^=keystream[i]}}});CTRGladman.Decryptor=Encryptor;return CTRGladman}();CryptoJS.mode.OFB=function(){var OFB=CryptoJS.lib.BlockCipherMode.extend();var Encryptor=OFB.Encryptor=OFB.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;var iv=this._iv;var keystream=this._keystream;if(iv){keystream=this._keystream=iv.slice(0);this._iv=undefined}cipher.encryptBlock(keystream,0);for(var i=0;i<blockSize;i++){words[offset+i]^=keystream[i]}}});OFB.Decryptor=Encryptor;return OFB}();CryptoJS.mode.ECB=function(){var ECB=CryptoJS.lib.BlockCipherMode.extend();ECB.Encryptor=ECB.extend({processBlock:function(words,offset){this._cipher.encryptBlock(words,offset)}});ECB.Decryptor=ECB.extend({processBlock:function(words,offset){this._cipher.decryptBlock(words,offset)}});return ECB}();CryptoJS.pad.AnsiX923={pad:function(data,blockSize){var dataSigBytes=data.sigBytes;var blockSizeBytes=blockSize*4;var nPaddingBytes=blockSizeBytes-dataSigBytes%blockSizeBytes;var lastBytePos=dataSigBytes+nPaddingBytes-1;data.clamp();data.words[lastBytePos>>>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<ksRows;ksRow++){if(ksRow<keySize){keySchedule[ksRow]=keyWords[ksRow]}else{t=keySchedule[ksRow-1];if(!(ksRow%keySize)){t=t<<8|t>>>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<ksRows;invKsRow++){var ksRow=ksRows-invKsRow;if(invKsRow%4){var t=keySchedule[ksRow]}else{var t=keySchedule[ksRow-4]}if(invKsRow<4||ksRow<=4){invKeySchedule[invKsRow]=t}else{invKeySchedule[invKsRow]=INV_SUB_MIX_0[SBOX[t>>>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<nRounds;round++){var t0=SUB_MIX_0[s0>>>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}function exchangeRL(offset,mask){var t=(this._rBlock>>>offset^this._lBlock)&mask;this._lBlock^=t;this._rBlock^=t<<offset}C.DES=BlockCipher._createHelper(DES);var TripleDES=C_algo.TripleDES=BlockCipher.extend({_doReset:function(){var key=this._key;var keyWords=key.words;if(keyWords.length!==2&&keyWords.length!==4&&keyWords.length<6){throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >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<C_[0]>>>0?1:0)|0;C[2]=C[2]+886263092+(C[1]>>>0<C_[1]>>>0?1:0)|0;C[3]=C[3]+1295307597+(C[2]>>>0<C_[2]>>>0?1:0)|0;C[4]=C[4]+3545052371+(C[3]>>>0<C_[3]>>>0?1:0)|0;C[5]=C[5]+886263092+(C[4]>>>0<C_[4]>>>0?1:0)|0;C[6]=C[6]+1295307597+(C[5]>>>0<C_[5]>>>0?1:0)|0;C[7]=C[7]+3545052371+(C[6]>>>0<C_[6]>>>0?1:0)|0;this._b=C[7]>>>0<C_[7]>>>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<C_[0]>>>0?1:0)|0;C[2]=C[2]+886263092+(C[1]>>>0<C_[1]>>>0?1:0)|0;C[3]=C[3]+1295307597+(C[2]>>>0<C_[2]>>>0?1:0)|0;C[4]=C[4]+3545052371+(C[3]>>>0<C_[3]>>>0?1:0)|0;C[5]=C[5]+886263092+(C[4]>>>0<C_[4]>>>0?1:0)|0;C[6]=C[6]+1295307597+(C[5]>>>0<C_[5]>>>0?1:0)|0;C[7]=C[7]+3545052371+(C[6]>>>0<C_[6]>>>0?1:0)|0;this._b=C[7]>>>0<C_[7]>>>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;e<arguments.length;e++){var i=null!=arguments[e]?arguments[e]:{};e%2?t(Object(i),!0).forEach(function(e){var t,r;t=n,e=i[r=e],(r=a(r))in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e}):Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(i)):t(Object(i)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(i,e))})}return n}function a(e){e=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return("string"===t?String:Number)(e);if("object"!=typeof(t=r.call(e,t||"default")))return t;throw new TypeError("@@toPrimitive must return a primitive value.")}(e,"string");return"symbol"==typeof e?e:e+""}function C(e){return(C="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function s(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function u(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,a(n.key),n)}}function c(e,t,r){return t&&u(e.prototype,t),r&&u(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function l(e){return(l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function h(e,t){return(h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function p(e){var r="function"==typeof Map?new Map:void 0;return(p=function(e){if(null===e||!function(t){try{return-1!==Function.toString.call(t).indexOf("[native code]")}catch(e){return"function"==typeof t}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(e))return r.get(e);r.set(e,t)}function t(){return o(e,arguments,l(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),h(t,e)})(e)}function f(e){return function(e){if(Array.isArray(e))return d(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||O(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function O(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?d(e,t):void 0}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var y=function(){return c(function e(){s(this,e)},[{key:"add",value:function(e,t,r){if("string"!=typeof e)for(var n in e)this.add(n,e[n],t);else(Array.isArray(e)?e:[e]).forEach(function(e){this[e]=this[e]||[],t&&this[e][r?"unshift":"push"](t)},this)}},{key:"run",value:function(e,t){this[e]=this[e]||[],this[e].forEach(function(e){e.call(t&&t.context?t.context:t,t)})}}])}(),b=function(){return c(function e(t){s(this,e),this.jsep=t,this.registered={}},[{key:"register",value:function(){for(var t=this,e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];r.forEach(function(e){if("object"!==C(e)||!e.name||!e.init)throw new Error("Invalid JSEP plugin format");t.registered[e.name]||(e.init(t.jsep),t.registered[e.name]=e)})}}])}(),v=function(){function l(e){s(this,l),this.expr=e,this.index=0}return c(l,[{key:"char",get:function(){return this.expr.charAt(this.index)}},{key:"code",get:function(){return this.expr.charCodeAt(this.index)}},{key:"throwError",value:function(e){var t=new Error(e+" at character "+this.index);throw t.index=this.index,t.description=e,t}},{key:"runHook",value:function(e,t){if(l.hooks[e]){var r={context:this,node:t};return l.hooks.run(e,r),r.node}return t}},{key:"searchHook",value:function(e){if(l.hooks[e]){var t={context:this};return l.hooks[e].find(function(e){return e.call(t.context,t),t.node}),t.node}}},{key:"gobbleSpaces",value:function(){for(var e=this.code;e===l.SPACE_CODE||e===l.TAB_CODE||e===l.LF_CODE||e===l.CR_CODE;)e=this.expr.charCodeAt(++this.index);this.runHook("gobble-spaces")}},{key:"parse",value:function(){this.runHook("before-all");var e=this.gobbleExpressions(),e=1===e.length?e[0]:{type:l.COMPOUND,body:e};return this.runHook("after-all",e)}},{key:"gobbleExpressions",value:function(e){for(var t,r,n=[];this.index<this.expr.length;)if((t=this.code)===l.SEMCOL_CODE||t===l.COMMA_CODE)this.index++;else if(r=this.gobbleExpression())n.push(r);else if(this.index<this.expr.length){if(t===e)break;this.throwError(\'Unexpected "\'+this.char+\'"\')}return n}},{key:"gobbleExpression",value:function(){var e=this.searchHook("gobble-expression")||this.gobbleBinaryExpression();return this.gobbleSpaces(),this.runHook("after-expression",e)}},{key:"gobbleBinaryOp",value:function(){this.gobbleSpaces();for(var e=this.expr.substr(this.index,l.max_binop_len),t=e.length;0<t;){if(l.binary_ops.hasOwnProperty(e)&&(!l.isIdentifierStart(this.code)||this.index+e.length<this.expr.length&&!l.isIdentifierPart(this.expr.charCodeAt(this.index+e.length))))return this.index+=t,e;e=e.substr(0,--t)}return!1}},{key:"gobbleBinaryExpression",value:function(){var e,t,r,n,i,o,a,s,u,c=this.gobbleToken();if(!c)return c;if(!(t=this.gobbleBinaryOp()))return c;for(i={value:t,prec:l.binaryPrecedence(t),right_a:l.right_associative.has(t)},(o=this.gobbleToken())||this.throwError("Expected expression after "+t),n=[c,i,o];t=this.gobbleBinaryOp();){if(0===(r=l.binaryPrecedence(t))){this.index-=t.length;break}i={value:t,prec:r,right_a:l.right_associative.has(t)},s=t;for(;2<n.length&&(u=n[n.length-2],i.right_a&&u.right_a?r>u.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<a;)e={type:l.BINARY_EXP,operator:n[a-1].value,left:n[a-2],right:e},a-=2;return e}},{key:"gobbleToken",value:function(){var e,t,r,n;if(this.gobbleSpaces(),n=this.searchHook("gobble-token"))return this.runHook("after-token",n);if(e=this.code,l.isDecimalDigit(e)||e===l.PERIOD_CODE)return this.gobbleNumericLiteral();if(e===l.SQUOTE_CODE||e===l.DQUOTE_CODE)n=this.gobbleStringLiteral();else if(e===l.OBRACK_CODE)n=this.gobbleArray();else{for(r=(t=this.expr.substr(this.index,l.max_unop_len)).length;0<r;){if(l.unary_ops.hasOwnProperty(t)&&(!l.isIdentifierStart(this.code)||this.index+t.length<this.expr.length&&!l.isIdentifierPart(this.expr.charCodeAt(this.index+t.length)))){this.index+=r;var i=this.gobbleToken();return i||this.throwError("missing unaryOp argument"),this.runHook("after-token",{type:l.UNARY_EXP,operator:t,argument:i,prefix:!0})}t=t.substr(0,--r)}l.isIdentifierStart(e)?(n=this.gobbleIdentifier(),l.literals.hasOwnProperty(n.name)?n={type:l.LITERAL,value:l.literals[n.name],raw:n.name}:n.name===l.this_str&&(n={type:l.THIS_EXP})):e===l.OPAREN_CODE&&(n=this.gobbleGroup())}return n?(n=this.gobbleTokenProperty(n),this.runHook("after-token",n)):this.runHook("after-token",!1)}},{key:"gobbleTokenProperty",value:function(e){this.gobbleSpaces();for(var t=this.code;t===l.PERIOD_CODE||t===l.OBRACK_CODE||t===l.OPAREN_CODE||t===l.QUMARK_CODE;){var r=void 0;if(t===l.QUMARK_CODE){if(this.expr.charCodeAt(this.index+1)!==l.PERIOD_CODE)break;r=!0,this.index+=2,this.gobbleSpaces(),t=this.code}this.index++,t===l.OBRACK_CODE?(e={type:l.MEMBER_EXP,computed:!0,object:e,property:this.gobbleExpression()},this.gobbleSpaces(),(t=this.code)!==l.CBRACK_CODE&&this.throwError("Unclosed ["),this.index++):t===l.OPAREN_CODE?e={type:l.CALL_EXP,arguments:this.gobbleArguments(l.CPAREN_CODE),callee:e}:t!==l.PERIOD_CODE&&!r||(r&&this.index--,this.gobbleSpaces(),e={type:l.MEMBER_EXP,computed:!1,object:e,property:this.gobbleIdentifier()}),r&&(e.optional=!0),this.gobbleSpaces(),t=this.code}return e}},{key:"gobbleNumericLiteral",value:function(){for(var e,t="";l.isDecimalDigit(this.code);)t+=this.expr.charAt(this.index++);if(this.code===l.PERIOD_CODE)for(t+=this.expr.charAt(this.index++);l.isDecimalDigit(this.code);)t+=this.expr.charAt(this.index++);if("e"===(e=this.char)||"E"===e){for(t+=this.expr.charAt(this.index++),"+"!==(e=this.char)&&"-"!==e||(t+=this.expr.charAt(this.index++));l.isDecimalDigit(this.code);)t+=this.expr.charAt(this.index++);l.isDecimalDigit(this.expr.charCodeAt(this.index-1))||this.throwError("Expected exponent ("+t+this.char+")")}return e=this.code,l.isIdentifierStart(e)?this.throwError("Variable names cannot start with a number ("+t+this.char+")"):(e===l.PERIOD_CODE||1===t.length&&t.charCodeAt(0)===l.PERIOD_CODE)&&this.throwError("Unexpected period"),{type:l.LITERAL,value:parseFloat(t),raw:t}}},{key:"gobbleStringLiteral",value:function(){for(var e="",t=this.index,r=this.expr.charAt(this.index++),n=!1;this.index<this.expr.length;){var i=this.expr.charAt(this.index++);if(i===r){n=!0;break}if("\\\\"===i)switch(i=this.expr.charAt(this.index++)){case"n":e+="\\n";break;case"r":e+="\\r";break;case"t":e+="\\t";break;case"b":e+="\\b";break;case"f":e+="\\f";break;case"v":e+="\\v";break;default:e+=i}else e+=i}return n||this.throwError(\'Unclosed quote after "\'+e+\'"\'),{type:l.LITERAL,value:e,raw:this.expr.substring(t,this.index)}}},{key:"gobbleIdentifier",value:function(){var e=this.code,t=this.index;for(l.isIdentifierStart(e)?this.index++:this.throwError("Unexpected "+this.char);this.index<this.expr.length&&(e=this.code,l.isIdentifierPart(e));)this.index++;return{type:l.IDENTIFIER,name:this.expr.slice(t,this.index)}}},{key:"gobbleArguments",value:function(e){for(var t=[],r=!1,n=0;this.index<this.expr.length;){this.gobbleSpaces();var i=this.code;if(i===e){r=!0,this.index++,e===l.CPAREN_CODE&&n&&n>=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<n;o++)t.push(null)}else t.length!==n&&0!==n?this.throwError("Expected comma"):((i=this.gobbleExpression())&&i.type!==l.COMPOUND||this.throwError("Expected comma"),t.push(i))}return r||this.throwError("Expected "+String.fromCharCode(e)),t}},{key:"gobbleGroup",value:function(){this.index++;var e=this.gobbleExpressions(l.CPAREN_CODE);if(this.code===l.CPAREN_CODE)return this.index++,1===e.length?e[0]:!!e.length&&{type:l.SEQUENCE_EXP,expressions:e};this.throwError("Unclosed (")}},{key:"gobbleArray",value:function(){return this.index++,{type:l.ARRAY_EXP,elements:this.gobbleArguments(l.CBRACK_CODE)}}}],[{key:"version",get:function(){return"1.3.8"}},{key:"toString",value:function(){return"JavaScript Expression Parser (JSEP) v"+l.version}},{key:"addUnaryOp",value:function(e){return l.max_unop_len=Math.max(e.length,l.max_unop_len),l.unary_ops[e]=1,l}},{key:"addBinaryOp",value:function(e,t,r){return l.max_binop_len=Math.max(e.length,l.max_binop_len),l.binary_ops[e]=t,r?l.right_associative.add(e):l.right_associative.delete(e),l}},{key:"addIdentifierChar",value:function(e){return l.additional_identifier_chars.add(e),l}},{key:"addLiteral",value:function(e,t){return l.literals[e]=t,l}},{key:"removeUnaryOp",value:function(e){return delete l.unary_ops[e],e.length===l.max_unop_len&&(l.max_unop_len=l.getMaxKeyLen(l.unary_ops)),l}},{key:"removeAllUnaryOps",value:function(){return l.unary_ops={},l.max_unop_len=0,l}},{key:"removeIdentifierChar",value:function(e){return l.additional_identifier_chars.delete(e),l}},{key:"removeBinaryOp",value:function(e){return delete l.binary_ops[e],e.length===l.max_binop_len&&(l.max_binop_len=l.getMaxKeyLen(l.binary_ops)),l.right_associative.delete(e),l}},{key:"removeAllBinaryOps",value:function(){return l.binary_ops={},l.max_binop_len=0,l}},{key:"removeLiteral",value:function(e){return delete l.literals[e],l}},{key:"removeAllLiterals",value:function(){return l.literals={},l}},{key:"parse",value:function(e){return new l(e).parse()}},{key:"getMaxKeyLen",value:function(e){return Math.max.apply(Math,[0].concat(f(Object.keys(e).map(function(e){return e.length}))))}},{key:"isDecimalDigit",value:function(e){return 48<=e&&e<=57}},{key:"binaryPrecedence",value:function(e){return l.binary_ops[e]||0}},{key:"isIdentifierStart",value:function(e){return 65<=e&&e<=90||97<=e&&e<=122||128<=e&&!l.binary_ops[String.fromCharCode(e)]||l.additional_identifier_chars.has(String.fromCharCode(e))}},{key:"isIdentifierPart",value:function(e){return l.isIdentifierStart(e)||l.isDecimalDigit(e)}}])}(),y=new y;Object.assign(v,{hooks:y,plugins:new b(v),COMPOUND:"Compound",SEQUENCE_EXP:"SequenceExpression",IDENTIFIER:"Identifier",MEMBER_EXP:"MemberExpression",LITERAL:"Literal",THIS_EXP:"ThisExpression",CALL_EXP:"CallExpression",UNARY_EXP:"UnaryExpression",BINARY_EXP:"BinaryExpression",ARRAY_EXP:"ArrayExpression",TAB_CODE:9,LF_CODE:10,CR_CODE:13,SPACE_CODE:32,PERIOD_CODE:46,COMMA_CODE:44,SQUOTE_CODE:39,DQUOTE_CODE:34,OPAREN_CODE:40,CPAREN_CODE:41,OBRACK_CODE:91,CBRACK_CODE:93,QUMARK_CODE:63,SEMCOL_CODE:59,COLON_CODE:58,unary_ops:{"-":1,"!":1,"~":1,"+":1},binary_ops:{"||":1,"&&":2,"|":3,"^":4,"&":5,"==":6,"!=":6,"===":6,"!==":6,"<":7,">":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<this.expr.length;){if(47===this.code&&!r){for(var n=this.expr.slice(t,this.index),i="";++this.index<this.expr.length;){var o=this.code;if(!(97<=o&&o<=122||65<=o&&o<=90||48<=o&&o<=57))break;i+=this.char}var a=void 0;try{a=new RegExp(n,i)}catch(e){this.throwError(e.message)}return e.node={type:s.LITERAL,value:a,raw:this.expr.slice(t-1,this.index)},e.node=this.gobbleTokenProperty(e.node),e.node}this.code===s.OBRACK_CODE?r=!0:r&&this.code===s.CBRACK_CODE&&(r=!1),this.index+=92===this.code?2:1}this.throwError("Unclosed Regex")}})}},g={name:"assignment",assignmentOperators:new Set(["=","*=","**=","/=","%=","+=","-=","<<=",">>=",">>>=","&=","^=","|="]),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<e.length&&e.shift(),this._hasParentSelector=null;r=this._trace(e,t,["$"],o,a,r).filter(function(e){return e&&!e.isParentSelector});return r.length?u||1!==r.length||r[0].hasArrExpr?r.reduce(function(e,t){t=i._getPreferredOutput(t);return s&&Array.isArray(t)?e=e.concat(t):e.push(t),e},[]):this._getPreferredOutput(r[0]):u?[]:void 0}},F.prototype._getPreferredOutput=function(e){var t=this.currResultType;switch(t){case"all":var r=Array.isArray(e.path)?e.path:F.toPathArray(e.path);return e.pointer=F.toPointer(r),e.path="string"==typeof e.path?e.path:F.toPathString(e.path),e;case"value":case"parent":case"parentProperty":return e[t];case"path":return F.toPathString(e[t]);case"pointer":return F.toPointer(e.path);default:throw new TypeError("Unknown result type")}},F.prototype._handleCallback=function(e,t,r){var n;t&&(n=this._getPreferredOutput(e),e.path="string"==typeof e.path?e.path:F.toPathString(e.path),t(n,r,e))},F.prototype._trace=function(t,n,i,o,a,s,e,r){var u=this;if(!t.length)return v={path:i,value:n,parent:o,parentProperty:a,hasArrExpr:e},this._handleCallback(v,s,"value"),v;var c=t[0],l=t.slice(1),h=[];function p(e){Array.isArray(e)?e.forEach(function(e){h.push(e)}):h.push(e)}if(("string"!=typeof c||r)&&n&&A.call(n,c))p(this._trace(l,n[c],w(i,c),n,c,s,e));else if("*"===c)this._walk(n,function(e){p(u._trace(l,n[e],w(i,e),n,e,s,!0,!0))});else if(".."===c)p(this._trace(l,n,i,o,a,s,e)),this._walk(n,function(e){"object"===C(n[e])&&p(u._trace(t.slice(),n[e],w(i,e),n,e,s,!0))});else{if("^"===c)return this._hasParentSelector=!0,{path:i.slice(0,-1),expr:l,isParentSelector:!0};if("~"===c)return v={path:w(i,c),value:a,parent:o,parentProperty:null},this._handleCallback(v,s,"property"),v;if("$"===c)p(this._trace(l,n,i,null,null,s,e));else if(/^(\\x2D?[0-9]*):(\\x2D?[0-9]*):?([0-9]*)$/.test(c))p(this._slice(c,l,n,i,o,a,s));else if(0===c.indexOf("?(")){if(!1===this.currEval)throw new Error("Eval [?(expr)] prevented in JSONPath expression.");var f=c.replace(/^\\?\\(((?:[\\0-\\t\\x0B\\f\\x0E-\\u2027\\u202A-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*?)\\)$/,"$1"),d=/@(?:[\\0-\\t\\x0B\\f\\x0E-\\u2027\\u202A-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])?((?:[\\0->@-\\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<u._trace(t,r,i,o,a,s,!0).length&&p(u._trace(l,n[e],w(i,e),n,e,s,!0))}):this._walk(n,function(e){u._eval(f,n[e],e,i,o,a)&&p(u._trace(l,n[e],w(i,e),n,e,s,!0))})}else if("("===c[0]){if(!1===this.currEval)throw new Error("Eval [(expr)] prevented in JSONPath expression.");p(this._trace(k(this._eval(c,n,i[i.length-1],i.slice(0,-1),o,a),l),n,i,o,a,s,e))}else if("@"===c[0]){var y=!1,b=c.slice(1,-2);switch(b){case"scalar":n&&["object","function"].includes(C(n))||(y=!0);break;case"boolean":case"string":case"undefined":case"function":C(n)===b&&(y=!0);break;case"integer":!Number.isFinite(n)||n%1||(y=!0);break;case"number":Number.isFinite(n)&&(y=!0);break;case"nonFinite":"number"!=typeof n||Number.isFinite(n)||(y=!0);break;case"object":n&&C(n)===b&&(y=!0);break;case"array":Array.isArray(n)&&(y=!0);break;case"other":y=this.currOtherTypeCallback(n,i,o,a);break;case"null":null===n&&(y=!0);break;default:throw new TypeError("Unknown value type "+b)}if(y)return v={path:i,value:n,parent:o,parentProperty:a},this._handleCallback(v,s,"value"),v}else if("`"===c[0]&&n&&A.call(n,c.slice(1))){var v=c.slice(1);p(this._trace(l,n[v],w(i,v),n,v,s,e,!0))}else if(c.includes(",")){var E=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=O(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,t=function(){};return{s:t,n:function(){return n>=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<h.length;x++){var F=h[x];if(F&&F.isParentSelector){var D=this._trace(F.expr,n,F.path,o,a,s,e);if(Array.isArray(D)){h[x]=D[0];for(var _=D.length,m=1;m<_;m++)x++,h.splice(x,0,D[m])}else h[x]=D}}return h},F.prototype._walk=function(e,t){if(Array.isArray(e))for(var r=e.length,n=0;n<r;n++)t(n);else e&&"object"===C(e)&&Object.keys(e).forEach(function(e){t(e)})},F.prototype._slice=function(e,t,r,n,i,o,a){if(Array.isArray(r)){for(var s=r.length,u=e.split(":"),c=u[2]&&Number.parseInt(u[2])||1,e=u[0]&&Number.parseInt(u[0])||0,l=u[1]&&Number.parseInt(u[1])||s,e=e<0?Math.max(0,e+s):Math.min(s,e),l=l<0?Math.max(0,l+s):Math.min(s,l),h=[],p=e;p<l;p+=c)this._trace(k(p,t),r,n,i,o,a,!0).forEach(function(e){h.push(e)});return h}},F.prototype._eval=function(t,e,r,n,i,o){var a=this;this.currSandbox._$_parentProperty=o,this.currSandbox._$_parent=i,this.currSandbox._$_property=r,this.currSandbox._$_root=this.json,this.currSandbox._$_v=e;e=t.includes("@path");e&&(this.currSandbox._$_path=F.toPathString(n.concat([r])));var s=this.currEval+"Script:"+t;if(!F.cache[s]){var u=t.replace(/@parentProperty/g,"_$_parentProperty").replace(/@parent/g,"_$_parent").replace(/@property/g,"_$_property").replace(/@root/g,"_$_root").replace(/@([\\t-\\r \\)\\.\\[\\xA0\\u1680\\u2000-\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000\\uFEFF])/g,"_$_v$1");if(e&&(u=u.replace(/@path/g,"_$_path")),"safe"===this.currEval||!0===this.currEval||void 0===this.currEval)F.cache[s]=new this.safeVm.Script(u);else if("native"===this.currEval)F.cache[s]=new this.vm.Script(u);else if("function"==typeof this.currEval&&this.currEval.prototype&&A.call(this.currEval.prototype,"runInNewContext")){e=this.currEval;F.cache[s]=new e(u)}else{if("function"!=typeof this.currEval)throw new TypeError(\'Unknown "eval" property "\'.concat(this.currEval,\'"\'));F.cache[s]={runInNewContext:function(e){return a.currEval(u,e)}}}}try{return F.cache[s].runInNewContext(this.currSandbox)}catch(e){if(this.ignoreEvalErrors)return!1;throw new Error("jsonPath: "+e.message+": "+t)}},F.cache={},F.toPathString=function(e){for(var t=e,r=t.length,n="$",i=1;i<r;i++)/^(~|\\^|@(?:[\\0-\\t\\x0B\\f\\x0E-\\u2027\\u202A-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*?\\(\\))$/.test(t[i])||(n+=/^[\\*0-9]+$/.test(t[i])?"["+t[i]+"]":"[\'"+t[i]+"\']");return n},F.toPointer=function(e){for(var t=e,r=t.length,n="",i=1;i<r;i++)/^(~|\\^|@(?:[\\0-\\t\\x0B\\f\\x0E-\\u2027\\u202A-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*?\\(\\))$/.test(t[i])||(n+="/"+t[i].toString().replace(/~/g,"~0").replace(/\\//g,"~1"));return n},F.toPathArray=function(e){var t=F.cache;if(t[e])return t[e].concat();var r=[],n=e.replace(/@(?:null|boolean|number|string|integer|undefined|nonFinite|scalar|array|object|function|other)\\(\\)/g,";$&;").replace(/[\'\\[](\\??\\((?:[\\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,function(e,t){return"[#"+(r.push(t)-1)+"]"}).replace(/\\[["\']((?:[\\0-&\\(-\\\\\\^-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*)["\']\\]/g,function(e,t){return"[\'"+t.replace(/\\./g,"%@%").replace(/~/g,"%%@@%%")+"\']"}).replace(/~/g,";~;").replace(/["\']?\\.["\']?(?!(?:[\\0-Z\\\\-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*\\])|\\[["\']?/g,";").replace(/%@%/g,".").replace(/%%@@%%/g,"~").replace(/(?:;)?(\\^+)(?:;)?/g,function(e,t){return";"+t.split("").join(";")+";"}).replace(/;;;|;;/g,";..;").replace(/;$|\'?\\]|\'$/g,"").split(";").map(function(e){var t=e.match(/#([0-9]+)/);return t&&t[1]?r[t[1]]:e});return t[e]=n,t[e].concat()};E.plugins.register(b,g);var D={evalAst:function(e,t){switch(e.type){case"BinaryExpression":case"LogicalExpression":return D.evalBinaryExpression(e,t);case"Compound":return D.evalCompound(e,t);case"ConditionalExpression":return D.evalConditionalExpression(e,t);case"Identifier":return D.evalIdentifier(e,t);case"Literal":return D.evalLiteral(e,t);case"MemberExpression":return D.evalMemberExpression(e,t);case"UnaryExpression":return D.evalUnaryExpression(e,t);case"ArrayExpression":return D.evalArrayExpression(e,t);case"CallExpression":return D.evalCallExpression(e,t);case"AssignmentExpression":return D.evalAssignmentExpression(e,t);default:throw SyntaxError("Unexpected expression",e)}},evalBinaryExpression:function(e,t){return{"||":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()},"===":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()},">>":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<e.body.length;r++){"Identifier"===e.body[r].type&&["var","let","const"].includes(e.body[r].name)&&e.body[r+1]&&"AssignmentExpression"===e.body[r+1].type&&(r+=1);var n=e.body[r],i=D.evalAst(n,t)}return i},evalConditionalExpression:function(e,t){return D.evalAst(e.test,t)?D.evalAst(e.consequent,t):D.evalAst(e.alternate,t)},evalIdentifier:function(e,t){if(e.name in t)return t[e.name];throw ReferenceError("".concat(e.name," is not defined"))},evalLiteral:function(e){return e.value},evalMemberExpression:function(e,t){var r=e.computed?D.evalAst(e.property):e.property.name,t=D.evalAst(e.object,t),r=t[r];return"function"==typeof r?r.bind(t):r},evalUnaryExpression:function(e,t){return{"-":function(e){return-D.evalAst(e,t)},"!":function(e){return!D.evalAst(e,t)},"~":function(e){return~D.evalAst(e,t)},"+":function(e){return+D.evalAst(e,t)}}[e.operator](e.argument)},evalArrayExpression:function(e,t){return e.elements.map(function(e){return D.evalAst(e,t)})},evalCallExpression:function(e,t){var r=e.arguments.map(function(e){return D.evalAst(e,t)});return D.evalAst(e.callee,t).apply(void 0,f(r))},evalAssignmentExpression:function(e,t){if("Identifier"!==e.left.type)throw SyntaxError("Invalid left-hand side in assignment");var r=e.left.name,e=D.evalAst(e.right,t);return t[r]=e,t[r]}},b=function(){return c(function e(t){s(this,e),this.code=t,this.ast=E(this.code)},[{key:"runInNewContext",value:function(e){e=r({},e);return D.evalAst(this.ast,e)}}])}();F.prototype.vm={Script:function(){return c(function e(t){s(this,e),this.code=t},[{key:"runInNewContext",value:function(n){var e=this.code,t=Object.keys(n),r=[];!function(e,t,r){for(var n=e.length,i=0;i<n;i++)r(e[i])&&t.push(e.splice(i--,1)[0])}(t,r,function(e){return"function"==typeof n[e]});var i=t.map(function(e){return n[e]}),r=r.reduce(function(e,t){var r=n[t].toString();return/function/.test(r)||(r="function "+r),"var "+t+"="+r+";"+e},"");/(["\'])use strict\\1/.test(e=r+e)||t.includes("arguments")||(e="var arguments = undefined;"+e);r=(e=e.replace(/;[\\t-\\r \\xA0\\u1680\\u2000-\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000\\uFEFF]*$/,"")).lastIndexOf(";"),e=-1<r?e.slice(0,r+1)+" return "+e.slice(r+1):" return "+e;return o(Function,t.concat([e])).apply(void 0,f(i))}}])}()},F.prototype.safeVm={Script:b},e.JSONPath=F,e.SafeScript=b});'},350:(e,t,n)=>{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<t+n){const r=Math.ceil((t+n-e.buffer.byteLength)/65536);e.grow(r),h=new Uint8Array(e.buffer)}}function f(t,e,n,r,i,a){g(t);const o=new Uint8Array(t);return h.set(o),n(0,e),o.set(h.subarray(0,t)),{update(e){let n;return h.set(o),"string"==typeof e?(g(3*e.length,t),n=w.encodeInto(e,h.subarray(t)).written):(g(e.byteLength,t),h.set(e,t),n=e.byteLength),r(0,t,n),o.set(h.subarray(0,t)),this},digest:()=>(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<<t.bi_valid&65535,y(t,t.bi_buf),t.bi_buf=e>>16-t.bi_valid,t.bi_valid+=a-16):(t.bi_buf|=e<<t.bi_valid&65535,t.bi_valid+=a)},z=(t,e,a)=>{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<i;e++)t.dyn_ltree[2*e]=0;for(e=0;e<n;e++)t.dyn_dtree[2*e]=0;for(e=0;e<19;e++)t.bl_tree[2*e]=0;t.dyn_ltree[512]=1,t.opt_len=t.static_len=0,t.sym_next=t.matches=0},Z=t=>{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]<t[s]||t[n]===t[s]&&i[e]<=i[a]},S=(t,e,a)=>{const i=t.heap[a];let n=a<<1;for(;n<=t.heap_len&&(n<t.heap_len&&U(e,t.heap[n+1],t.heap[n],t.depth)&&n++,!U(e,i,t.heap[n],t.depth));)t.heap[a]=t.heap[n],a=n,n<<=1;t.heap[a]=i},D=(t,e,i)=>{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<t.sym_next);z(t,256,e)},T=(t,e)=>{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<r;o++)0!==a[2*o]?(t.heap[++t.heap_len]=d=o,t.depth[o]=0):a[2*o+1]=0;for(;t.heap_len<2;)h=t.heap[++t.heap_len]=d<2?++d:0,a[2*h]=1,t.depth[h]=0,t.opt_len--,n&&(t.static_len-=i[2*h+1]);for(e.max_code=d,o=t.heap_len>>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<l&&n===r||(o<h?t.bl_tree[2*n]+=o:0!==n?(n!==s&&t.bl_tree[2*n]++,t.bl_tree[32]++):o<=10?t.bl_tree[34]++:t.bl_tree[36]++,o=0,s=n,0===r?(l=138,h=3):n===r?(l=6,h=3):(l=7,h=4))},I=(t,e,a)=>{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<l&&n===r)){if(o<h)do{z(t,n,t.bl_tree)}while(0!=--o);else 0!==n?(n!==s&&(z(t,n,t.bl_tree),o--),z(t,16,t.bl_tree),x(t,o-3,2)):o<=10?(z(t,17,t.bl_tree),x(t,o-3,3)):(z(t,18,t.bl_tree),x(t,o-11,7));o=0,s=n,0===r?(l=138,h=3):n===r?(l=6,h=3):(l=7,h=4)}};let F=!1;const L=(t,e,a,i)=>{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<a;e++)if(0!==t.dyn_ltree[2*e])return 1;return 0})(t)),T(t,t.l_desc),T(t,t.d_desc),o=(t=>{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<i;n++)x(t,t.bl_tree[2*h[n]+1],3);I(t,t.dyn_ltree,e-1),I(t,t.dyn_dtree,a-1)})(t,t.l_desc.max_code+1,t.d_desc.max_code+1,o+1),D(t,t.dyn_ltree,t.dyn_dtree)),R(t),n&&Z(t)},B={_tr_init:t=>{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<<r[h];t++)c[a++]=h;for(c[a-1]=h,k=0,h=0;h<16;h++)for(w[h]=k,t=0;t<1<<o[h];t++)f[k++]=h;for(k>>=7;h<n;h++)for(w[h]=k<<7,t=0;t<1<<o[h]-7;t++)f[256+k++]=h;for(e=0;e<=s;e++)v[e]=0;for(t=0;t<=143;)d[2*t+1]=8,t++,v[8]++;for(;t<=255;)d[2*t+1]=9,t++,v[9]++;for(;t<=279;)d[2*t+1]=7,t++,v[7]++;for(;t<=287;)d[2*t+1]=8,t++,v[8]++;for(E(d,287,v),t=0;t<n;t++)_[2*t+1]=5,_[2*t]=A(t,5);b=new m(d,r,257,i,s),g=new m(_,o,0,n,s),p=new m(new Array(0),l,0,19,7)})(),F=!0),t.l_desc=new k(t.dyn_ltree,b),t.d_desc=new k(t.dyn_dtree,g),t.bl_desc=new k(t.bl_tree,p),t.bi_buf=0,t.bi_valid=0,R(t)},_tr_stored_block:L,_tr_flush_block:N,_tr_tally:(t,e,i)=>(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<s;a++)t=t>>>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<<t.hash_shift^a)&t.hash_mask;const xt=t=>{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]&&s<f);if(i=ct-(f-s),s=f-ct,i>r){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<ut&&0!==t.strm.avail_in)},St=(t,e)=>{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_out<n)break;if(n=t.strm.avail_out-n,i=t.strstart-t.block_start,a>i+t.strm.avail_in&&(a=i+t.strm.avail_in),a>n&&(a=n),a<s&&(0===a&&e!==V||e===q||a!==i+t.strm.avail_in))break;r=e===V&&a===i+t.strm.avail_in?1:0,Y(t,0,0,r),t.pending_buf[t.pending-4]=a,t.pending_buf[t.pending-3]=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_water<t.strstart&&(t.high_water=t.strstart),r?4:e!==q&&e!==V&&0===t.strm.avail_in&&t.strstart===t.block_start?2:(n=t.window_size-t.strstart,t.strm.avail_in>n&&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<t.strstart&&(t.high_water=t.strstart),n=t.bi_valid+42>>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<ut){if(Ut(t),t.lookahead<ut&&e===q)return 1;if(0===t.lookahead)break}if(a=0,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<ut){if(Ut(t),t.lookahead<ut&&e===q)return 1;if(0===t.lookahead)break}if(a=0,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_length<t.max_lazy_match&&t.strstart-a<=t.w_size-ut&&(t.match_length=Zt(t,a),t.match_length<=5&&(t.strategy===rt||3===t.match_length&&t.strstart-t.match_start>4096)&&(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<<o.w_bits,o.w_mask=o.w_size-1,o.hash_bits=n+7,o.hash_size=1<<o.hash_bits,o.hash_mask=o.hash_size-1,o.hash_shift=~~((o.hash_bits+3-1)/3),o.window=new Uint8Array(2*o.w_size),o.head=new Uint16Array(o.hash_size),o.prev=new Uint16Array(o.w_size),o.lit_bufsize=1<<n+6,o.pending_buf_size=4*o.lit_bufsize,o.pending_buf=new Uint8Array(o.pending_buf_size),o.sym_buf=o.lit_bufsize,o.sym_end=3*(o.lit_bufsize-1),o.level=e,o.strategy=s,o.method=a,Bt(t)};var Mt={deflateInit:(t,e)=>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.gzindex<a.gzhead.name.length?255&a.gzhead.name.charCodeAt(a.gzindex++):0,At(a,e)}while(0!==e);a.gzhead.hcrc&&a.pending>i&&(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.gzindex<a.gzhead.comment.length?255&a.gzhead.comment.charCodeAt(a.gzindex++):0,At(a,e)}while(0!==e);a.gzhead.hcrc&&a.pending>i&&(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]&&n<s);t.match_length=ct-(s-n),t.match_length>t.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<i;a++)e+=t[a].length;const a=new Uint8Array(e);for(let e=0,i=0,n=t.length;e<n;e++){let n=t[e];a.set(n,i),i+=n.length}return a};let Pt=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch(t){Pt=!1}const Yt=new Uint8Array(256);for(let t=0;t<256;t++)Yt[t]=t>=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<r;n++)a=t.charCodeAt(n),55296==(64512&a)&&n+1<r&&(i=t.charCodeAt(n+1),56320==(64512&i)&&(a=65536+(a-55296<<10)+(i-56320),n++)),o+=a<128?1:a<2048?2:a<65536?3:4;for(e=new Uint8Array(o),s=0,n=0;s<o;n++)a=t.charCodeAt(n),55296==(64512&a)&&n+1<r&&(i=t.charCodeAt(n+1),56320==(64512&i)&&(a=65536+(a-55296<<10)+(i-56320),n++)),a<128?e[s++]=a:a<2048?(e[s++]=192|a>>>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;i<a;){let e=t[i++];if(e<128){s[n++]=e;continue}let r=Yt[e];if(r>4)s[n++]=65533,i+=r-1;else{for(e&=2===r?31:3===r?15:7;r>1&&i<a;)e=e<<6|63&t[i++],r--;r>1?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;i++)a+=String.fromCharCode(t[i]);return a})(s,n)},Wt=(t,e)=>{(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<<E.lenbits)-1,b=(1<<E.distbits)-1;t:do{c<15&&(f+=z[a++]<<c,c+=8,f+=z[a++]<<c,c+=8),g=u[f&m];e:for(;;){if(p=g>>>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)-1)];continue e}if(32&p){E.mode=16191;break t}t.msg="invalid literal/length code",E.mode=he;break t}k=65535&g,p&=15,p&&(c<p&&(f+=z[a++]<<c,c+=8),k+=f&(1<<p)-1,f>>>=p,c-=p),c<15&&(f+=z[a++]<<c,c+=8,f+=z[a++]<<c,c+=8),g=w[f&b];a:for(;;){if(p=g>>>24,f>>>=p,c-=p,p=g>>>16&255,!(16&p)){if(0==(64&p)){g=w[(65535&g)+(f&(1<<p)-1)];continue a}t.msg="invalid distance code",E.mode=he;break t}if(v=65535&g,p&=15,c<p&&(f+=z[a++]<<c,c+=8,c<p&&(f+=z[a++]<<c,c+=8)),v+=f&(1<<p)-1,v>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,p<k){k-=p;do{A[n++]=_[y++]}while(--p);y=n-v,x=A}}else if(d<p){if(y+=l+d-p,p-=d,p<k){k-=p;do{A[n++]=_[y++]}while(--p);if(y=0,d<k){p=d,k-=p;do{A[n++]=_[y++]}while(--p);y=n-v,x=A}}}else if(y+=d-p,p<k){k-=p;do{A[n++]=_[y++]}while(--p);y=n-v,x=A}for(;k>2;)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<i&&n<r);k=c>>3,a-=k,c-=k<<3,f&=(1<<c)-1,t.next_in=a,t.next_out=n,t.avail_in=a<i?i-a+5:5-(a-i),t.avail_out=n<r?r-n+257:257-(n-r),E.hold=f,E.bits=c};const _e=15,fe=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),ce=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),ue=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),we=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]);var me=(t,e,a,i,n,s,r,o)=>{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<i;m++)E[e[a+m]]++;for(p=l,g=_e;g>=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;b<g&&0===E[b];b++);for(p<b&&(p=b),y=1,w=1;w<=_e;w++)if(y<<=1,y-=E[w],y<0)return-1;if(y>0&&(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;m<i;m++)0!==e[a+m]&&(r[R[e[a+m]]++]=m);if(0===t?(A=D=r,u=20):1===t?(A=fe,D=ce,u=257):(A=ue,D=we,u=0),z=0,m=0,w=b,c=s,k=p,v=0,_=-1,x=1<<p,f=x-1,1===t&&x>852||2===t&&x>592)return 1;for(;;){Z=w-v,r[m]+1<u?(U=0,S=r[m]):r[m]>=u?(U=D[r[m]-u],S=A[r[m]-u]):(U=96,S=0),h=1<<w-v,d=1<<k,b=d;do{d-=h,n[c+(z>>v)+d]=Z<<24|U<<16|S|0}while(0!==d);for(h=1<<w-1;z&h;)h>>=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<<k;k+v<g&&(y-=E[k+v],!(y<=0));)k++,y<<=1;if(x+=1<<k,1===t&&x>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.mode<Ze||e.mode>16211?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.wbits,s.wnext=0,s.whave=0,s.window=new Uint8Array(s.wsize)),i>=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.whave<s.wsize&&(s.whave+=n))),0};var qe={inflateReset:He,inflateReset2:je,inflateResetKeep:Me,inflateInit:t=>Ke(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++]<<d,d+=8}if(2&a.wrap&&35615===h){0===a.wbits&&(a.wbits=15),a.check=0,A[0]=255&h,A[1]=h>>>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<<a.wbits,a.flags=0,t.adler=a.check=1,a.mode=512&h?16189:Se,h=0,d=0;break;case 16181:for(;d<16;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(a.flags=h,(255&a.flags)!==Re){t.msg="unknown compression method",a.mode=Le;break}if(57344&a.flags){t.msg="unknown header flags set",a.mode=Le;break}a.head&&(a.head.text=h>>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++]<<d,d+=8}a.head&&(a.head.time=h),512&a.flags&&4&a.wrap&&(A[0]=255&h,A[1]=h>>>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++]<<d,d+=8}a.head&&(a.head.xflags=255&h,a.head.os=h>>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++]<<d,d+=8}a.length=h,a.head&&(a.head.extra_len=h),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}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<o);if(512&a.flags&&4&a.wrap&&(a.check=H(a.check,i,c,s)),o-=c,s+=c,y)break t}else a.head&&(a.head.name=null);a.length=0,a.mode=16187;case 16187:if(4096&a.flags){if(0===o)break t;c=0;do{y=i[s+c++],a.head&&y&&a.length<65536&&(a.head.comment+=String.fromCharCode(y))}while(y&&c<o);if(512&a.flags&&4&a.wrap&&(a.check=H(a.check,i,c,s)),o-=c,s+=c,y)break t}else a.head&&(a.head.comment=null);a.mode=16188;case 16188:if(512&a.flags){for(;d<16;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(4&a.wrap&&h!==(65535&a.check)){t.msg="header crc mismatch",a.mode=Le;break}h=0,d=0}a.head&&(a.head.hcrc=a.flags>>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++]<<d,d+=8}t.adler=a.check=Ne(h),h=0,d=0,a.mode=Ue;case Ue:if(0===a.havedict)return t.next_out=r,t.avail_out=l,t.next_in=s,t.avail_in=o,a.hold=h,a.bits=d,ye;t.adler=a.check=1,a.mode=Se;case Se:if(e===ge||e===pe)break t;case De:if(a.last){h>>>=7&d,d-=7&d,a.mode=Fe;break}for(;d<3;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}switch(a.last=1&h,h>>>=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++]<<d,d+=8}if((65535&h)!=(h>>>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++]<<d,d+=8}if(a.nlen=257+(31&h),h>>>=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<a.ncode;){for(;d<3;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}a.lens[Z[a.have++]]=7&h,h>>>=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<a.nlen+a.ndist;){for(;z=a.lencode[h&(1<<a.lenbits)-1],m=z>>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(g<16)h>>>=m,d-=m,a.lens[a.have++]=g;else{if(16===g){for(R=m+2;d<R;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(h>>>=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<R;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}h>>>=m,d-=m,y=0,c=3+(7&h),h>>>=3,d-=3}else{for(R=m+7;d<R;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}h>>>=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<<a.lenbits)-1],m=z>>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(b&&0==(240&b)){for(p=m,k=b,v=g;z=a.lencode[v+((h&(1<<p+k)-1)>>p)],m=z>>>24,b=z>>>16&255,g=65535&z,!(p+m<=d);){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}h>>>=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<R;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}a.length+=h&(1<<a.extra)-1,h>>>=a.extra,d-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=16202;case 16202:for(;z=a.distcode[h&(1<<a.distbits)-1],m=z>>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(0==(240&b)){for(p=m,k=b,v=g;z=a.distcode[v+((h&(1<<p+k)-1)>>p)],m=z>>>24,b=z>>>16&255,g=65535&z,!(p+m<=d);){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}h>>>=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<R;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}a.offset+=h&(1<<a.extra)-1,h>>>=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++]<<d,d+=8}if(f-=l,t.total_out+=f,a.total+=f,4&a.wrap&&f&&(t.adler=a.check=a.flags?H(a.check,n,f,r-f):C(a.check,n,f,r-f)),f=l,4&a.wrap&&(a.flags?h:Ne(h))!==a.check){t.msg="incorrect data check",a.mode=Le;break}h=0,d=0}a.mode=16207;case 16207:if(a.wrap&&a.flags){for(;d<32;){if(0===o)break t;o--,h+=i[s++]<<d,d+=8}if(4&a.wrap&&h!==(4294967295&a.total)){t.msg="incorrect length check",a.mode=Le;break}h=0,d=0}a.mode=16208;case 16208:x=ve;break t;case Le:x=ze;break t;case 16210:return Ae;default:return xe}return t.next_out=r,t.avail_out=l,t.next_in=s,t.avail_in=o,a.hold=h,a.bits=d,(a.wsize||f!==t.avail_out&&a.mode<Le&&(a.mode<Fe||e!==be))&&We(t,t.output,t.next_out,f-t.avail_out),_-=t.avail_in,f-=t.avail_out,t.total_in+=_,t.total_out+=f,a.total+=f,4&a.wrap&&f&&(t.adler=a.check=a.flags?H(a.check,n,f,t.next_out-f):C(a.check,n,f,t.next_out-f)),t.data_type=a.bits+(a.last?64:0)+(a.mode===Se?128:0)+(a.mode===Oe||a.mode===Te?256:0),(0===_&&0===f||e===be)&&x===ke&&(x=Ee),x},inflateEnd:t=>{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<len;i++){var key=keys[i];dest[key]=src[key]}return dest};var get=function(){var val,n=arguments[0],c=stack.length;while(c--){val=stack[c][n];if(typeof val!="undefined")break}for(var i=1,len=arguments.length;i<len;i++){if(val==null)continue;n=arguments[i];val=_hasOwnProperty.call(val,n)?val[n]:typeof val._get=="function"?val[n]=val._get(n):null}return val==null?"":val};var set=function(n,val){stack[stack.length-1][n]=val};var push=function(ctx){stack.push(ctx||{})};var pop=function(){stack.pop()};var write=function(str){output.push(str)};var filter=function(val){for(var i=1,len=arguments.length;i<len;i++){var arr=arguments[i],name=arr[0],filter=filters[name];if(filter){arr[0]=val;val=filter.apply(data,arr)}else{throw new Error("Invalid filter: "+name)}}if(opts.autoEscape&&name!==opts.autoEscape&&name!=="safe"){val=filters[opts.autoEscape].call(data,val)}output.push(val)};var each=function(obj,loopvar,fn1,fn2){if(obj==null)return;var arr=isArray(obj)?obj:getKeys(obj),len=arr.length;var ctx={loop:{length:len,first:arr[0],last:arr[len-1]}};push(ctx);for(var i=0;i<len;i++){extend(ctx.loop,{index:i+1,index0:i});fn1(ctx[loopvar]=arr[i])}if(len===0&&fn2)fn2();pop()};var block=function(fn){push();fn();pop()};var render=function(){return output.join("")};data=data||{};opts=extend(defaults,opts||{});var filters=extend({html:function(val){return toString(val).split("&").join("&").split("<").join("<").split(">").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<<l|n>>>32-l},D(n,l){return n>>>l|n<<32-l},V(n,l){return(n<<l|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<O;p++)n[u+p]=l[y+p];else for(let p=O-1;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<u;O++)n.push(l);return y},ne(n,l,u,y){if(l>>>=0,y>>>=0,l+y>n.length)throw RangeError();for(let O=0;O<y;O++)n[l+O]=u},C(n,l,u){if(n instanceof xe)return n.m=l,n.le=u,Je;n=new xe;let y;for(;y=l.apply(n,u),n.m;)l=n.m,u=n.le,n.m=null;return y},h(n){if(n===null)return n;let l=ve.get(n);if(l)return l;throw Error("Unexpected foreign function object")},M(n){if(n===null)return null;if(!n.p){let[l,u]=n.ie,y=[],O=[];for(let x=0;x<l.length;x++)y.push("a"+x),O.push(fe("a"+x,l[x]));let p=`f.x(${O})`;if(u.length===1)p="return "+Fe(p,u[0]);else if(u.length>1){p=`let r=${p};`;for(let x=0;x<u.length;x++)p+=`r[${x}]=${Fe(`r[${x}]`,u[x])};`;p+="return r"}ve.set(n.p=new Function("f","l",`return(${y})=>{${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;a<c.length;a++){let _=1;for(;a+_<c.length&&c[a+_-1]+1===c[a+_];)_++;E.push(_>2?`${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;I<C.length;I++)C[I]===f.b[I]&&d++;d>c&&(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<C.length;o++)if(F&&C[o]!==F[o]){let f=T(C[o],b,$);i+=`${B}[${_}+${o+1}]=${f};`}return _},A={},U={},Y=l(),B=l(),D=l(),J=l(),N=l(),t=l(),P=new Set;for(let{e:[M]}of Ue)if(typeof M=="number")P.add(M);else{let[,...b]=M;for(let $ of b)P.add($)}let i=`for(;;){var ${t}=${B}[${N}]&65535;`;return O(N,t,Ue,null,[],{}),i+=`return ${N}}`,new Function(B,D,J,N,i)};var Ze=n=>{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+5<n.length;){let a=n[c++],_=u(),F=c+_;if(a===0){let o=A();if(N.push([o,n.slice(c,F)]),o==="name"){let f=n[c++],d=c+u();if(f===1)for(let I=0,R=u();I<R&&c<d;I++)S.set(u(),A())}}else if(a===1)for(let o=0,f=u();o<f;o++){if(n[c++]!==96)throw new Q("Invalid function type: "+L(n[c-1]));E.push([T(),T()])}else if(a===2)for(let o=0,f=u();o<f;o++){let d=A(),I=A(),R=n[c++];if(R===0)$.push([d,I,R,u()]);else if(R===1)$.push([d,I,R,n[c++],...U()]);else if(R===2)$.push([d,I,R,...U()]);else if(R===3)$.push([d,I,R,n[c++],n[c++]]);else throw new Q("Unsupported import type: "+L(R))}else if(a===3){let o=u();for(let f=0;f<o;f++)M.push(u())}else if(a===4)for(let o=0,f=u();o<f;o++)C.push([n[c++],...U()]);else if(a===5)for(let o=0,f=u();o<f;o++)v.push(U());else if(a===6)for(let o=0,f=u();o<f;o++){let d=n[c++],I=n[c++],R=D(d);b.push([d,I,R])}else if(a===7)for(let o=0,f=u();o<f;o++){let d=A(),I=n[c++],R=u();i.push([d,I,R])}else if(a===8)z=u();else if(a===9)for(let o=0,f=u();o<f;o++){let d=u();if(d>7)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();pe<ie;pe++)Me.push(d&4?B():u());P.push([R,K,Me])}else if(a===10)for(let o=0,f=u();o<f;o++){let d=u()+c,I=u(),R=[];for(let K=0;K<I;K++)R.push([u(),n[c++]]);J.push([R,c,d]),c=d}else if(a===11)for(let o=0,f=u();o<f;o++){let d=u();if(d>2)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)<<s,s+=7}while(r&128);return e>>>0},D=()=>{let e=0,s=0,r;do{r=I[W++],e|=(r&127)<<s,s+=7}while(r&128);return s<32&&r&64?e|-1<<s:e},J=()=>{let e=0n,s=0n,r;do{r=I[W++],e|=BigInt(r&127)<<s,s+=7n}while(r&128);return s<64&&r&64?e|~0n<<s:e},N=()=>{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<e;)_e.push("s"+ ++b);return"s"+e},v={},S=e=>(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<H.length;G++)Z.push($(oe+G));return`[${Z}]=${se}`}case 17:case 19:{let h=s>>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<ee.length;V++)ue.push($(G+V));return`[${ue}]=${Z}`}case 27:case 28:return`${a(t[e+1])}?${a(t[e+2])}:${a(t[e+3])}`;case 32:return re[t[e+1]];case 33:case 34:return`${re[t[e+2]]}=${a(t[e+1])}`;case 35:return`g[${t[e+1]}]`;case 36:return`g[${t[e+2]}]=${a(t[e+1])}`;case 37:return S(t[e+2])+`[${a(t[e+1])}]`;case 38:return S(t[e+3])+`[${a(t[e+1])}]=${a(t[e+2])}`;case 40:return z("Int32",t[e+1],t[e+2],t[e+3]);case 245:return z("Uint32",t[e+1],t[e+2],t[e+3]);case 41:return z("BigUint64",t[e+1],t[e+2],t[e+3]);case 246:return z("BigInt64",t[e+1],t[e+2],t[e+3]);case 42:return z("Float32",t[e+1],t[e+2],t[e+3]);case 43:return z("Float64",t[e+1],t[e+2],t[e+3]);case 44:return C("u",t[e+1],t[e+2],t[e+3]);case 45:return C("l",t[e+1],t[e+2],t[e+3]);case 46:return z("Int16",t[e+1],t[e+2],t[e+3]);case 47:return z("Uint16",t[e+1],t[e+2],t[e+3]);case 48:return`BigInt(${C("u",t[e+1],t[e+2],t[e+3])})&0xFFFFFFFFFFFFFFFFn`;case 49:return`BigInt(${C("l",t[e+1],t[e+2],t[e+3])})`;case 50:return`BigInt(${z("Int16",t[e+1],t[e+2],t[e+3])})&0xFFFFFFFFFFFFFFFFn`;case 51:return`BigInt(${z("Uint16",t[e+1],t[e+2],t[e+3])})`;case 52:return`BigInt(${z("Int32",t[e+1],t[e+2],t[e+3])})&0xFFFFFFFFFFFFFFFFn`;case 53:return`BigInt(${z("Uint32",t[e+1],t[e+2],t[e+3])})`;case 54:return c("Int32",t[e+1],t[e+3],t[e+4],a(t[e+2]));case 55:return c("BigUint64",t[e+1],t[e+3],t[e+4],a(t[e+2]));case 56:return c("Float32",t[e+1],t[e+3],t[e+4],a(t[e+2]));case 57:return c("Float64",t[e+1],t[e+3],t[e+4],a(t[e+2]));case 58:return E("l",t[e+1],t[e+3],t[e+4],a(t[e+2]));case 59:return c("Int16",t[e+1],t[e+3],t[e+4],a(t[e+2]));case 60:return E("l",t[e+1],t[e+3],t[e+4],`Number(${a(t[e+2])}&255n)`);case 61:return c("Int16",t[e+1],t[e+3],t[e+4],`Number(${a(t[e+2])}&65535n)`);case 62:return c("Int32",t[e+1],t[e+3],t[e+4],`Number(${a(t[e+2])}&0xFFFFFFFFn)`);case 63:return`c.${"A"+t[e+1]}.g`;case 64:return`c.${"A"+t[e+2]}.v(${a(t[e+1])})`;case 65:return t[e+1]+"";case 66:return(M[t[e+1]]&0xffffffffffffffffn)+"n";case 67:{let h=R.getFloat32(t[e+1],!0);return Object.is(h,-0)?"-0":h+""}case 68:{let h=R.getFloat64(t[e+1],!0);return Object.is(h,-0)?"-0":h+""}case 240:return a(t[e+1]);case 241:return`!${a(t[e+1])}`;case 242:return`${a(t[e+1])}?1:0`;case 243:return`${a(t[e+1])}>>>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<ze;e++)re.push("a"+e);let _e=["L","T"];for(let[e,s]of Ne)for(let r=0;r<e;r++){let h="l"+_e.length;re.push(h),_e.push(h+(s===126?"=0n":"=0"))}let ae=256,ye=e=>{let s=m.length<ae;s?k+=`b${m.length}:`:m.length===ae&&(k+=`L=1;b${m.length}:for(;;){switch(L){case 1:`,be=2);let r=s?-1:be++,h=s?-1:e!==0?be++:0,[w,q]=N();return m.push({c:w,a:!1,F:e,$:r,_:h,r:g-w,s:q}),h},ne=(e=m.length-B()-1)=>{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+=e<ae?`continue b${e};`:`L=${s._};continue;`}else{if(g>s.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;h<r;h++)o(s&128?243:244,g+h+1);if(!(s&512)){let h=0;s&32&&I[W++]&64&&(h=B()),P.push(i),s&4&&(e|=g+1<<24),t[i++]=e|r<<16;for(let w=1;w<=r;w++)t[i++]=-(g+w);s&16&&(t[i++]=B()),s&32&&(t[i++]=h)}s&4&&g++,s&64&&o(242)}return!0},g=0,W=De,be=0,k="b0:{";for(;W<Ve;){let e=I[W++];if(!we(e))switch(e){case 0:{let s=m[m.length-1];d(),s.a||(k+=\'"unreachable"();\',s.a=!0);break}case 2:d(),ye(0)<0&&(k+="{");break;case 3:{d();let s=ye(1);k+=s<0?"for(;;){":`case ${s}:`;break}case 4:{m[m.length-1].a||o(m.length<ae?240:241);let s=d(!0),r=ye(2);k+=r<0?`if(${s}){`:`if(${s}){L=${r};continue}`;break}case 5:{d();let s=m.length-1,r=m[s];ne(s),k+=s<ae?"}else{":`case ${r._}:`,r.F=0,g=r.r+r.c,r.a=!1;break}case 11:{d();let s=m.length-1,r=m[s];r.F!==2&&(r._=0),r.F=0,ne(s),s<ae?k+="}":(r._&&(k+=`case ${r._}:`),k+=`case ${r.$}:`,s==ae&&(k+="}break}")),g=r.r+r.s,m.pop();break}case 12:d(),ne(),m[m.length-1].a=!0;break;case 13:{m[m.length-1].a||o(240);let s=d(!0);k+=`if(${s}){`,ne(),k+="}";break}case 14:{let s=d(!0);k+=`switch(${s}){`;for(let r=0,h=B();r<h;r++)k+=`case ${r}:`,ne();k+="default:",ne(),k+="}",m[m.length-1].a=!0;break}case 15:f();break;case 16:case 18:{let s=e===18,r=B();if(!m[m.length-1].a){let[h,w]=l[r];g-=h.length,P.push(i),w.length===1&&(e|=g+1<<24),t[i++]=e|h.length<<16;for(let q=1;q<=h.length;q++)t[i++]=-(g+q);t[i++]=r,w.length>1&&(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;T<u.length;T++)O.push("a"+T),p.push(Fe("a"+T,u[T]));let x=`f(${p})`;if(y.length===1)x="return "+fe(x,y[0]);else if(y.length>1){x=`let r=${x};`;for(let T=0;T<y.length;T++)x+=`r[${T}]=${fe(`r[${T}]`,y[T])};`;x+="return r"}return new Function("f","l",`return(${O})=>{${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<P.length;a++){let _=P[a],F=()=>{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<O.length;a++){let _=i.length;M.push(N[A[a]]),i.push((...F)=>(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;x<u;x++)p[x]=null;Be.set(this,p),Object.defineProperty(this,"length",{get:()=>p.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-t<e)return null;this._len=0;for(var r=0;r<e;r++)this._len=(this._len<<8)+(255&this._buf[t++])}return t},a.prototype.readSequence=function(t){var e=this.peek();if(null===e)return null;if(void 0!==t&&t!==e)throw s("Expected 0x"+t.toString(16)+": got 0x"+e.toString(16));var r=this.readLength(this._offset+1);return null===r?null:(this._offset=r,e)},a.prototype.readInt=function(){return this._readTag(o.Integer)},a.prototype.readBoolean=function(){return 0!==this._readTag(o.Boolean)},a.prototype.readEnumeration=function(){return this._readTag(o.Enumeration)},a.prototype.readString=function(t,e){t||(t=o.OctetString);var r=this.peek();if(null===r)return null;if(r!==t)throw s("Expected 0x"+t.toString(16)+": got 0x"+r.toString(16));var n=this.readLength(this._offset+1);if(null===n)return null;if(this.length>this._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;i<e.length;i++){var s=255&e[i];n<<=7,n+=127&s,128&s||(r.push(n),n=0)}return n=r.shift(),r.unshift(n%40),r.unshift(n/40|0),r.join(".")},a.prototype._readTag=function(t){n.ok(void 0!==t);var e=this.peek();if(null===e)return null;if(e!==t)throw s("Expected 0x"+t.toString(16)+": got 0x"+e.toString(16));var r=this.readLength(this._offset+1);if(null===r)return null;if(this.length>4)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<this.length;a++)o<<=8,o|=255&this._buf[this._offset++];return 128&~i||4===a||(o-=1<<8*a),0|o},t.exports=a},6299:t=>{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<t){var e=this._size*this._options.growthFactor;e-this._offset<t&&(e+=t);var r=i.alloc(e);this._buf.copy(r,0,0,this._offset),this._buf=r,this._size=e}},t.exports=f},3100:(t,e,r)=>{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<o;++i)if(t[i]!==e[i]){r=t[i],n=e[i];break}return r<n?-1:n<r?1:0}function o(t){return r.g.Buffer&&"function"==typeof r.g.Buffer.isBuffer?r.g.Buffer.isBuffer(t):!(null==t||!t._isBuffer)}var s=r(4591),a=Object.prototype.hasOwnProperty,f=Array.prototype.slice,u="foo"===function(){}.name;function c(t){return Object.prototype.toString.call(t)}function h(t){return!o(t)&&"function"==typeof r.g.ArrayBuffer&&("function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(t):!!t&&(t instanceof DataView||!!(t.buffer&&t.buffer instanceof ArrayBuffer)))}var p=t.exports=m,l=/\\s*function\\s+([^\\(\\s]*)\\s*/;function y(t){if(s.isFunction(t)){if(u)return t.name;var e=t.toString().match(l);return e&&e[1]}}function g(t,e){return"string"==typeof t?t.length<e?t:t.slice(0,e):t}function d(t){if(u||!s.isFunction(t))return s.inspect(t);var e=y(t);return"[Function"+(e?": "+e:"")+"]"}function v(t,e,r,n,i){throw new p.AssertionError({message:r,actual:t,expected:e,operator:n,stackStartFunction:i})}function m(t,e){t||v(t,!0,e,"==",p.ok)}function S(t,e,r,n){if(t===e)return!0;if(o(t)&&o(e))return 0===i(t,e);if(s.isDate(t)&&s.isDate(e))return t.getTime()===e.getTime();if(s.isRegExp(t)&&s.isRegExp(e))return t.source===e.source&&t.global===e.global&&t.multiline===e.multiline&&t.lastIndex===e.lastIndex&&t.ignoreCase===e.ignoreCase;if(null!==t&&"object"==typeof t||null!==e&&"object"==typeof e){if(h(t)&&h(e)&&c(t)===c(e)&&!(t instanceof Float32Array||t instanceof Float64Array))return 0===i(new Uint8Array(t.buffer),new Uint8Array(e.buffer));if(o(t)!==o(e))return!1;var a=(n=n||{actual:[],expected:[]}).actual.indexOf(t);return-1!==a&&a===n.expected.indexOf(e)||(n.actual.push(t),n.expected.push(e),function(t,e,r,n){if(null==t||null==e)return!1;if(s.isPrimitive(t)||s.isPrimitive(e))return t===e;if(r&&Object.getPrototypeOf(t)!==Object.getPrototypeOf(e))return!1;var i=_(t),o=_(e);if(i&&!o||!i&&o)return!1;if(i)return S(t=f.call(t),e=f.call(e),r);var a,u,c=w(t),h=w(e);if(c.length!==h.length)return!1;for(c.sort(),h.sort(),u=c.length-1;u>=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<arguments.length;r++)e.push(a(arguments[r]));return e.join(" ")}r=1;for(var n=arguments,o=n.length,s=String(t).replace(i,(function(t){if("%%"===t)return"%";if(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<o;f=n[++r])g(f)||!_(f)?s+=" "+f:s+=" "+a(f);return s},e.deprecate=function(t,i){if(m(r.g.process))return function(){return e.deprecate(t,i).apply(this,arguments)};if(!0===n.noDeprecation)return t;var o=!1;return function(){if(!o){if(n.throwDeprecation)throw new Error(i);n.traceDeprecation?console.trace(i):console.error(i),o=!0}return t.apply(this,arguments)}};var o,s={};function a(t,r){var n={seen:[],stylize:u};return arguments.length>=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;s<a;++s)x(e,String(s))?o.push(p(t,e,r,n,String(s),!0)):o.push("");return i.forEach((function(i){i.match(/^\\d+$/)||o.push(p(t,e,r,n,i,!0))})),o}(t,r,n,a,s):s.map((function(e){return p(t,r,n,a,e,O)})),t.seen.pop(),function(t,e,r){return t.reduce((function(t,e){return e.indexOf("\\n"),t+e.replace(/\\u001b\\[\\d\\d?m/g,"").length+1}),0)>60?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<h;r+=4)e=n[t.charCodeAt(r)]<<18|n[t.charCodeAt(r+1)]<<12|n[t.charCodeAt(r+2)]<<6|n[t.charCodeAt(r+3)],u[c++]=e>>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;a<u;a+=s)o.push(f(t,a,a+s>u?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<n;a+=3)i=(t[a]<<16&16711680)+(t[a+1]<<8&65280)+(255&t[a+2]),s.push(r[(o=i)>>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<e)throw new RangeError(\'"offset" is outside of buffer bounds\');if(t.byteLength<e+(r||0))throw new RangeError(\'"length" is outside of buffer bounds\');var n;return(n=void 0===e&&void 0===r?new Uint8Array(t):void 0===r?new Uint8Array(t,e):new Uint8Array(t,e,r)).__proto__=a.prototype,n}(t,e,r);if("number"==typeof t)throw new TypeError(\'The "value" argument must not be of type number. Received type number\');var n=t.valueOf&&t.valueOf();if(null!=n&&n!==t)return a.from(n,e,r);var i=function(t){if(a.isBuffer(t)){var e=0|p(t.length),r=s(e);return 0===r.length||t.copy(r,0,0,e),r}return void 0!==t.length?"number"!=typeof t.length||F(t.length)?s(0):h(t):"Buffer"===t.type&&Array.isArray(t.data)?h(t.data):void 0}(t);if(i)return i;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof t[Symbol.toPrimitive])return a.from(t[Symbol.toPrimitive]("string"),e,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t)}function u(t){if("number"!=typeof t)throw new TypeError(\'"size" argument must be of type number\');if(t<0)throw new RangeError(\'The value "\'+t+\'" is invalid for option "size"\')}function c(t){return u(t),s(t<0?0:0|p(t))}function h(t){for(var e=t.length<0?0:0|p(t.length),r=s(e),n=0;n<e;n+=1)r[n]=255&t[n];return r}function p(t){if(t>=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;o<a;o++)if(u(t,o)===u(e,-1===c?0:o-c)){if(-1===c&&(c=o),o-c+1===f)return c*s}else-1!==c&&(o-=o-c),c=-1}else for(r+f>a&&(r=a-f),o=r;o>=0;o--){for(var h=!0,p=0;p<f;p++)if(u(t,o+p)!==u(e,p)){h=!1;break}if(h)return o}return-1}function m(t,e,r,n){r=Number(r)||0;var i=t.length-r;n?(n=Number(n))>i&&(n=i):n=i;var o=e.length;n>o/2&&(n=o/2);for(var s=0;s<n;++s){var a=parseInt(e.substr(2*s,2),16);if(F(a))return s;t[r+s]=a}return s}function S(t,e,r,n){return j(U(e,t.length-r),t,r,n)}function _(t,e,r,n){return j(function(t){for(var e=[],r=0;r<t.length;++r)e.push(255&t.charCodeAt(r));return e}(e),t,r,n)}function b(t,e,r,n){return _(t,e,r,n)}function E(t,e,r,n){return j(M(e),t,r,n)}function w(t,e,r,n){return j(function(t,e){for(var r,n,i,o=[],s=0;s<t.length&&!((e-=2)<0);++s)n=(r=t.charCodeAt(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;i<r;){var o,s,a,f,u=t[i],c=null,h=u>239?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;n<e;)r+=String.fromCharCode.apply(String,t.slice(n,n+=A));return r}(n)}e.kMaxLength=o,a.TYPED_ARRAY_SUPPORT=function(){try{var t=new Uint8Array(1);return t.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}},42===t.foo()}catch(t){return!1}}(),a.TYPED_ARRAY_SUPPORT||"undefined"==typeof console||"function"!=typeof console.error||console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(a.prototype,"parent",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.buffer}}),Object.defineProperty(a.prototype,"offset",{enumerable:!0,get:function(){if(a.isBuffer(this))return this.byteOffset}}),"undefined"!=typeof Symbol&&null!=Symbol.species&&a[Symbol.species]===a&&Object.defineProperty(a,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),a.poolSize=8192,a.from=function(t,e,r){return f(t,e,r)},a.prototype.__proto__=Uint8Array.prototype,a.__proto__=Uint8Array,a.alloc=function(t,e,r){return function(t,e,r){return u(t),t<=0?s(t):void 0!==e?"string"==typeof r?s(t).fill(e,r):s(t).fill(e):s(t)}(t,e,r)},a.allocUnsafe=function(t){return c(t)},a.allocUnsafeSlow=function(t){return c(t)},a.isBuffer=function(t){return null!=t&&!0===t._isBuffer&&t!==a.prototype},a.compare=function(t,e){if(H(t,Uint8Array)&&(t=a.from(t,t.offset,t.byteLength)),H(e,Uint8Array)&&(e=a.from(e,e.offset,e.byteLength)),!a.isBuffer(t)||!a.isBuffer(e))throw new TypeError(\'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array\');if(t===e)return 0;for(var r=t.length,n=e.length,i=0,o=Math.min(r,n);i<o;++i)if(t[i]!==e[i]){r=t[i],n=e[i];break}return r<n?-1:n<r?1:0},a.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},a.concat=function(t,e){if(!Array.isArray(t))throw new TypeError(\'"list" argument must be an Array of Buffers\');if(0===t.length)return a.alloc(0);var r;if(void 0===e)for(e=0,r=0;r<t.length;++r)e+=t[r].length;var n=a.allocUnsafe(e),i=0;for(r=0;r<t.length;++r){var o=t[r];if(H(o,Uint8Array)&&(o=a.from(o)),!a.isBuffer(o))throw new TypeError(\'"list" argument must be an Array of Buffers\');o.copy(n,i),i+=o.length}return n},a.byteLength=l,a.prototype._isBuffer=!0,a.prototype.swap16=function(){var t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;e<t;e+=2)g(this,e,e+1);return this},a.prototype.swap32=function(){var t=this.length;if(t%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var e=0;e<t;e+=4)g(this,e,e+3),g(this,e+1,e+2);return this},a.prototype.swap64=function(){var t=this.length;if(t%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var e=0;e<t;e+=8)g(this,e,e+7),g(this,e+1,e+6),g(this,e+2,e+5),g(this,e+3,e+4);return this},a.prototype.toString=function(){var t=this.length;return 0===t?"":0===arguments.length?B(this,0,t):y.apply(this,arguments)},a.prototype.toLocaleString=a.prototype.toString,a.prototype.equals=function(t){if(!a.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t||0===a.compare(this,t)},a.prototype.inspect=function(){var t="",r=e.INSPECT_MAX_BYTES;return t=this.toString("hex",0,r).replace(/(.{2})/g,"$1 ").trim(),this.length>r&&(t+=" ... "),"<Buffer "+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<f;++h)if(u[h]!==c[h]){o=u[h],s=c[h];break}return o<s?-1:s<o?1:0},a.prototype.includes=function(t,e,r){return-1!==this.indexOf(t,e,r)},a.prototype.indexOf=function(t,e,r){return d(this,t,e,r,!0)},a.prototype.lastIndexOf=function(t,e,r){return d(this,t,e,r,!1)},a.prototype.write=function(t,e,r,n){if(void 0===e)n="utf8",r=this.length,e=0;else if(void 0===r&&"string"==typeof e)n=e,r=this.length,e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e>>>=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;i<r;++i)n+=String.fromCharCode(127&t[i]);return n}function P(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;i<r;++i)n+=String.fromCharCode(t[i]);return n}function T(t,e,r){var n,i=t.length;(!e||e<0)&&(e=0),(!r||r<0||r>i)&&(r=i);for(var o="",s=e;s<r;++s)o+=(n=t[s])<16?"0"+n.toString(16):n.toString(16);return o}function I(t,e,r){for(var n=t.slice(e,r),i="",o=0;o<n.length;o+=2)i+=String.fromCharCode(n[o]+256*n[o+1]);return i}function k(t,e,r){if(t%1!=0||t<0)throw new RangeError("offset is not uint");if(t+e>r)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||e<o)throw new RangeError(\'"value" argument is out of bounds\');if(r+n>t.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<t&&(e=t);var n=this.subarray(t,e);return n.__proto__=a.prototype,n},a.prototype.readUIntLE=function(t,e,r){t>>>=0,e>>>=0,r||k(t,e,this.length);for(var n=this[t],i=1,o=0;++o<e&&(i*=256);)n+=this[t+o]*i;return n},a.prototype.readUIntBE=function(t,e,r){t>>>=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<e&&(i*=256);)n+=this[t+o]*i;return n>=(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<r&&(i*=256);)this[e+o]=t/i&255;return e+r},a.prototype.writeUIntBE=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=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<r&&(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.writeIntBE=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=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<r&&(n=r),n===r)return 0;if(0===t.length||0===this.length)return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(r<0||r>=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<n-r&&(n=t.length-e+r);var i=n-r;if(this===t&&"function"==typeof Uint8Array.prototype.copyWithin)this.copyWithin(e,r,n);else if(this===t&&r<e&&e<n)for(var o=i-1;o>=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<e||this.length<r)throw new RangeError("Out of range index");if(r<=e)return this;var o;if(e>>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(o=e;o<r;++o)this[o]=t;else{var s=a.isBuffer(t)?t:a.from(t,n),f=s.length;if(0===f)throw new TypeError(\'The value "\'+t+\'" is invalid for argument "value"\');for(o=0;o<r-e;++o)this[o+e]=s[o%f]}return this};var C=/[^+/0-9A-Za-z-_]/g;function U(t,e){var r;e=e||1/0;for(var n=t.length,i=null,o=[],s=0;s<n;++s){if((r=t.charCodeAt(s))>55295&&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<n&&!(i+r>=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;s<n;s++)if(s<r)o[s]=e[s];else{var a=o[s-1];s%r?r>6&&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<n;u++)s=n-u,a=u%4?o[s]:o[s-4],f[u]=u<4||s<=4?a:c[i[a>>>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<f;y++){var g=n[u>>>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<r;o++)t[e+o]^=i[o]}return t.Encryptor=t.extend({processBlock:function(t,r){var n=this._cipher,i=n.blockSize;e.call(this,t,r,i),n.encryptBlock(t,r),this._prevBlock=t.slice(r,r+i)}}),t.Decryptor=t.extend({processBlock:function(t,r){var n=this._cipher,i=n.blockSize,o=t.slice(r,r+i);n.decryptBlock(t,r),e.call(this,t,r,i),this._prevBlock=o}}),t}(),d=(i.pad={}).Pkcs7={pad:function(t,e){for(var r=4*e,n=r-t.sigBytes%r,i=n<<24|n<<16|n<<8|n,o=[],s=0;s<n;s+=4)o.push(i);var f=a.create(o,n);t.concat(f)},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>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<i;o++){var s=r[o>>>2]>>>24-o%4*8&255;e[n+o>>>2]|=s<<24-(n+o)%4*8}else for(o=0;o<i;o+=4)e[n+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<e;o+=4){var a=i(4294967296*(r||t.random()));r=987654071*a(),n.push(4294967296*a()|0)}return new s.init(n,e)}}),a=n.enc={},f=a.Hex={stringify:function(t){for(var e=t.words,r=t.sigBytes,n=[],i=0;i<r;i++){var o=e[i>>>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<e;n+=2)r[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<r;i++){var o=e[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<e;n++)r[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<f;c+=o)this._doProcessBlock(n,c);var h=n.splice(0,f);r.sigBytes-=u}return new s.init(h,u)},clone:function(){var t=o.clone.call(this);return t._data=this._data.clone(),t},_minBufferSize:0}),p=(i.Hasher=h.extend({cfg:o.extend(),init:function(t){this.cfg=this.cfg.extend(t),this.reset()},reset:function(){h.reset.call(this),this._doReset()},update:function(t){return this._append(t),this._process(),this},finalize:function(t){return t&&this._append(t),this._doFinalize()},blockSize:16,_createHelper:function(t){return function(e,r){return new t.init(r).finalize(e)}},_createHmacHelper:function(t){return function(e,r){return new p.HMAC.init(t,r).finalize(e)}}}),n.algo={});return n}(Math),r)},754:function(t,e,r){var n,i,o;t.exports=(n=r(9021),o=(i=n).lib.WordArray,i.enc.Base64={stringify:function(t){var e=t.words,r=t.sigBytes,n=this._map;t.clamp();for(var i=[],o=0;o<r;o+=3)for(var s=(e[o>>>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<r;a++)i.push(n.charAt(s>>>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<r.length;i++)n[r.charCodeAt(i)]=i}var s=r.charAt(64);if(s){var a=t.indexOf(s);-1!==a&&(e=a)}return function(t,e,r){for(var n=[],i=0,s=0;s<e;s++)if(s%4){var a=r[t.charCodeAt(s-1)]<<s%4*2,f=r[t.charCodeAt(s)]>>>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<r;i+=2){var o=e[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<r;i++)n[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<r;o+=2){var s=i(e[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<r;o++)n[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.length<a;){u&&n.update(u);var u=n.update(t).finalize(e);n.reset();for(var c=1;c<f;c++)u=n.finalize(u),n.reset();i.concat(u)}return i.sigBytes=4*a,i}}),n.EvpKDF=function(t,e,r){return u.create(r).compute(t,e)},c.EvpKDF)},25:function(t,e,r){var n,i,o,s;t.exports=(s=r(9021),r(7165),i=(n=s).lib.CipherParams,o=n.enc.Hex,n.format.Hex={stringify:function(t){return t.ciphertext.toString(o)},parse:function(t){var e=o.parse(t);return i.create({ciphertext:e})}},s.format.Hex)},1025:function(t,e,r){var n,i,o;t.exports=(i=(n=r(9021)).lib.Base,o=n.enc.Utf8,void(n.algo.HMAC=i.extend({init:function(t,e){t=this._hasher=new t.init,"string"==typeof e&&(e=o.parse(e));var r=t.blockSize,n=4*r;e.sigBytes>n&&(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<r;u++)a[u]^=1549556828,f[u]^=909522486;i.sigBytes=s.sigBytes=n,this.reset()},reset:function(){var t=this._hasher;t.reset(),t.update(this._iKey)},update:function(t){return this._hasher.update(t),this},finalize:function(t){var e=this._hasher,r=e.finalize(t);return e.reset(),e.finalize(this._oKey.clone().concat(r))}})))},1396:function(t,e,r){var n;t.exports=(n=r(9021),r(3240),r(6440),r(5503),r(754),r(4636),r(5471),r(3009),r(6308),r(1380),r(9557),r(5953),r(8056),r(1025),r(19),r(9506),r(7165),r(2169),r(6939),r(6372),r(3797),r(8454),r(2073),r(4905),r(482),r(2155),r(8124),r(25),r(955),r(7628),r(7193),r(6298),r(2696),n)},6440:function(t,e,r){var n;t.exports=(n=r(9021),function(){if("function"==typeof ArrayBuffer){var t=n.lib.WordArray,e=t.init,r=t.init=function(t){if(t instanceof ArrayBuffer&&(t=new Uint8Array(t)),(t instanceof Int8Array||"undefined"!=typeof Uint8ClampedArray&&t instanceof Uint8ClampedArray||t instanceof Int16Array||t instanceof Uint16Array||t instanceof Int32Array||t instanceof Uint32Array||t instanceof Float32Array||t instanceof Float64Array)&&(t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength)),t instanceof Uint8Array){for(var r=t.byteLength,n=[],i=0;i<r;i++)n[i>>>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<<o|a>>>32-o)+e}function c(t,e,r,n,i,o,s){var a=t+(e&n|r&~n)+i+s;return(a<<o|a>>>32-o)+e}function h(t,e,r,n,i,o,s){var a=t+(e^r^n)+i+s;return(a<<o|a>>>32-o)+e}function p(t,e,r,n,i,o,s){var a=t+(r^(e|~n))+i+s;return(a<<o|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<r;s++)t[e+s]^=o[s]}return t.Encryptor=t.extend({processBlock:function(t,r){var n=this._cipher,i=n.blockSize;e.call(this,t,r,i,n),this._prevBlock=t.slice(r,r+i)}}),t.Decryptor=t.extend({processBlock:function(t,r){var n=this._cipher,i=n.blockSize,o=t.slice(r,r+i);e.call(this,t,r,i,n),this._prevBlock=o}}),t}(),n.mode.CFB)},6372:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.mode.CTRGladman=function(){var t=n.lib.BlockCipherMode.extend();function e(t){if(255&~(t>>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<i;f++)t[r+f]^=a[f]}});return t.Decryptor=r,t}(),n.mode.CTRGladman)},6939:function(t,e,r){var n,i,o;t.exports=(o=r(9021),r(7165),o.mode.CTR=(i=(n=o.lib.BlockCipherMode.extend()).Encryptor=n.extend({processBlock:function(t,e){var r=this._cipher,n=r.blockSize,i=this._iv,o=this._counter;i&&(o=this._counter=i.slice(0),this._iv=void 0);var s=o.slice(0);r.encryptBlock(s,0),o[n-1]=o[n-1]+1|0;for(var a=0;a<n;a++)t[e+a]^=s[a]}}),n.Decryptor=i,n),o.mode.CTR)},8454:function(t,e,r){var n,i;t.exports=(i=r(9021),r(7165),i.mode.ECB=((n=i.lib.BlockCipherMode.extend()).Encryptor=n.extend({processBlock:function(t,e){this._cipher.encryptBlock(t,e)}}),n.Decryptor=n.extend({processBlock:function(t,e){this._cipher.decryptBlock(t,e)}}),n),i.mode.ECB)},3797:function(t,e,r){var n,i,o;t.exports=(o=r(9021),r(7165),o.mode.OFB=(i=(n=o.lib.BlockCipherMode.extend()).Encryptor=n.extend({processBlock:function(t,e){var r=this._cipher,n=r.blockSize,i=this._iv,o=this._keystream;i&&(o=this._keystream=i.slice(0),this._iv=void 0),r.encryptBlock(o,0);for(var s=0;s<n;s++)t[e+s]^=o[s]}}),n.Decryptor=i,n),o.mode.OFB)},2073:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.pad.AnsiX923={pad:function(t,e){var r=t.sigBytes,n=4*e,i=n-r%n,o=r+i-1;t.clamp(),t.words[o>>>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<c;){var p=n.update(e).finalize(o);n.reset();for(var l=p.words,y=l.length,g=p,d=1;d<h;d++){g=n.finalize(g),n.reset();for(var v=g.words,m=0;m<y;m++)l[m]^=v[m]}i.concat(p),f[0]++}return i.sigBytes=4*c,i}}),n.PBKDF2=function(t,e,r){return c.create(r).compute(t,e)},h.PBKDF2)},2696: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.RabbitLegacy=e.extend({_doReset:function(){var t=this._key.words,e=this.cfg.iv,r=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],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<o[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<o[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<o[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<o[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<o[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<o[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<o[6]>>>0?1:0)|0,this._b=e[7]>>>0<o[7]>>>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<o[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<o[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<o[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<o[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<o[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<o[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<o[6]>>>0?1:0)|0,this._b=e[7]>>>0<o[7]>>>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<<e|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<<p)-1;l<32?h^=1<<l:a^=1<<l-32}128&i?i=i<<1^113:i<<=1}c[o]=s.create(a,h)}}();var h=[];!function(){for(var t=0;t<25;t++)h[t]=s.create()}();var p=a.SHA3=o.extend({cfg:o.cfg.extend({outputLength:512}),_doReset:function(){for(var t=this._state=[],e=0;e<25;e++)t[e]=new s.init;this.blockSize=(1600-2*this.cfg.outputLength)/32},_doProcessBlock:function(t,e){for(var r=this._state,n=this.blockSize/2,i=0;i<n;i++){var o=t[e+2*i],s=t[e+2*i+1];o=16711935&(o<<8|o>>>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<<O|w>>>32-O,y=w<<O|E>>>32-O):(l=w<<O-32|E>>>64-O,y=E<<O-32|w>>>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<f;c++){var h=s[c],p=h.high,l=h.low;p=16711935&(p<<8|p>>>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<Q>>>0?1:0))+nt+((V+=it)>>>0<it>>>0?1:0))+ut+((V+=ct)>>>0<ct>>>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<q>>>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<lt>>>0?1:0))+bt+((ht+=Et)>>>0<Et>>>0?1:0))+W+((ht+=V)>>>0<V>>>0?1:0))+((M=C+ht|0)>>>0<C>>>0?1:0)|0,L=R,C=N,R=k,N=D,k=T,D=I,T=wt+(dt+yt+(Ot>>>0<vt>>>0?1:0))+((I=ht+Ot|0)>>>0<ht>>>0?1:0)|0}y=n.low=y+I,n.high=l+T+(y>>>0<I>>>0?1:0),d=i.low=d+D,i.high=g+k+(d>>>0<D>>>0?1:0),m=o.low=m+N,o.high=v+R+(m>>>0<N>>>0?1:0),_=s.low=_+C,s.high=S+L+(_>>>0<C>>>0?1:0),E=a.low=E+M,a.high=b+U+(E>>>0<M>>>0?1:0),O=c.low=O+H,c.high=w+j+(O>>>0<H>>>0?1:0),A=h.low=A+z,h.high=B+F+(A>>>0<z>>>0?1:0),P=p.low=P+q,p.high=x+G+(P>>>0<q>>>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}function l(t,e){var r=(this._rBlock>>>t^this._lBlock)&e;this._lBlock^=r,this._rBlock^=r<<t}t.DES=i._createHelper(h);var y=o.TripleDES=i.extend({_doReset:function(){var t=this._key.words;this._des1=h.createEncryptor(r.create(t.slice(0,2))),this._des2=h.createEncryptor(r.create(t.slice(2,4))),this._des3=h.createEncryptor(r.create(t.slice(4,6)))},encryptBlock:function(t,e){this._des1.encryptBlock(t,e),this._des2.decryptBlock(t,e),this._des3.encryptBlock(t,e)},decryptBlock:function(t,e){this._des3.decryptBlock(t,e),this._des2.encryptBlock(t,e),this._des1.decryptBlock(t,e)},keySize:6,ivSize:2,blockSize:2});t.TripleDES=i._createHelper(y)}(),n.TripleDES)},3240:function(t,e,r){var n,i,o,s,a,f;t.exports=(n=r(9021),o=(i=n).lib,s=o.Base,a=o.WordArray,(f=i.x64={}).Word=s.extend({init:function(t,e){this.high=t,this.low=e}}),f.WordArray=s.extend({init:function(t,e){t=this.words=t||[],this.sigBytes=null!=e?e:8*t.length},toX32:function(){for(var t=this.words,e=t.length,r=[],n=0;n<e;n++){var i=t[n];r.push(i.high),r.push(i.low)}return a.create(r,this.sigBytes)},clone:function(){for(var t=s.clone.call(this),e=t.words=this.words.slice(0),r=e.length,n=0;n<r;n++)e[n]=e[n].clone();return t}}),n)},41:(t,e,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<t.length;n+=1)r[n]=t[n];for(var i=0;i<e.length;i+=1)r[i+t.length]=e[i];return r};t.exports=function(t){var i=this;if("function"!=typeof i||"[object Function]"!==e.apply(i))throw new TypeError("Function.prototype.bind called on incompatible "+i);for(var o,s=function(t,e){for(var r=[],n=1,i=0;n<t.length;n+=1,i+=1)r[i]=t[n];return r}(arguments),a=r(0,i.length-s.length),f=[],u=0;u<a;u++)f[u]="$"+u;if(o=Function("binder","return function ("+function(t,e){for(var r="",n=0;n<t.length;n+=1)r+=t[n],n+1<t.length&&(r+=",");return r}(f)+"){ return binder.apply(this,arguments); }")((function(){if(this instanceof o){var e=i.apply(this,n(s,arguments));return Object(e)===e?e:this}return i.apply(t,n(s,arguments))})),i.prototype){var c=function(){};c.prototype=i.prototype,o.prototype=new c,c.prototype=null}return o}},6743:(t,e,r)=>{"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;h+=1){var y=r[h],g=I(y,0,1),d=I(y,-1);if((\'"\'===g||"\'"===g||"`"===g||\'"\'===d||"\'"===d||"`"===d)&&g!==d)throw new f("property names with quotes must have matching quotes");if("constructor"!==y&&p||(a=!0),A(b,o="%"+(n+="."+y)+"%"))s=b[o];else if(null!=s){if(!(y in s)){if(!e)throw new u("base intrinsic for "+t+" exists, but the property is not available.");return}if(l&&h+1>=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<<a)-1,u=f>>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<<u)-1,h=c>>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<<i|a,u+=i;u>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<t.length;n++)if(t[n])switch(t[n]){case"public":case"private":e=t[n];break;case"pem":case"der":r.type=t[n]}return{scheme:t[0],keyType:e,keyOpt:r}}r(8226)._,t.exports={pkcs1:r(6566),pkcs8:r(8573),components:r(3374),openssh:r(3194),isPrivateExport:function(e){return t.exports[e]&&"function"==typeof t.exports[e].privateExport},isPrivateImport:function(e){return t.exports[e]&&"function"==typeof t.exports[e].privateImport},isPublicExport:function(e){return t.exports[e]&&"function"==typeof t.exports[e].publicExport},isPublicImport:function(e){return t.exports[e]&&"function"==typeof t.exports[e].publicImport},detectAndImport:function(e,r,i){if(void 0===i){for(var o in t.exports)if("function"==typeof t.exports[o].autoImport&&t.exports[o].autoImport(e,r))return!0}else if(i){var s=n(i);if(!t.exports[s.scheme])throw Error("Unsupported key format");"private"===s.keyType?t.exports[s.scheme].privateImport(e,r,s.keyOpt):t.exports[s.scheme].publicImport(e,r,s.keyOpt)}return!1},detectAndExport:function(e,r){if(r){var i=n(r);if(t.exports[i.scheme]){if("private"===i.keyType){if(!e.isPrivate())throw Error("This is not private key");return t.exports[i.scheme].privateExport(e,i.keyOpt)}if(!e.isPublic())throw Error("This is not public key");return t.exports[i.scheme].publicExport(e,i.keyOpt)}throw Error("Unsupported key format")}}}},3194:(t,e,r)=>{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<d;)m.off=m.buf.writeUInt8(S++,m.off);return"der"===e.type?m.buf:a+"\\n"+o.linebrk(v.toString("base64"),70)+"\\n"+f+"\\n"},privateImport:function(t,e,r){var c;if("der"!==(r=r||{}).type){if(n.isBuffer(e)&&(e=e.toString("utf8")),!i.isString(e))throw Error("Unsupported key format");var h=o.trimSurroundingText(e,a,f).replace(/\\s+|\\n\\r|\\n|\\r$/gm,"");c=n.from(h,"base64")}else{if(!n.isBuffer(e))throw Error("Unsupported key format");c=e}const p={buf:c,off:0};if("openssh-key-v1"!==c.slice(0,14).toString("ascii"))throw"Invalid file format.";if(p.off+=15,"none"!==u(p).toString("ascii"))throw Error("Unsupported key type");if("none"!==u(p).toString("ascii"))throw Error("Unsupported key type");if(""!==u(p).toString("ascii"))throw Error("Unsupported key type");if(p.off+=4,p.off+=4,"ssh-rsa"!==u(p).toString("ascii"))throw Error("Unsupported key type");if(u(p),u(p),p.off+=12,"ssh-rsa"!==u(p).toString("ascii"))throw Error("Unsupported key type");const l=u(p),y=u(p),g=u(p),d=u(p),v=u(p),m=u(p),S=new s(g),_=new s(m),b=new s(v),E=S.mod(b.subtract(s.ONE)),w=S.mod(_.subtract(s.ONE));t.setPrivate(l,y,g,v,m,E.toBuffer(),w.toBuffer(),d),t.sshcomment=u(p).toString("ascii")},publicExport:function(t,e){let r=n.alloc(4);for(r.writeUInt32BE(t.e,0);0===r[0];)r=r.slice(1);const i=t.n.toBuffer(),o=n.alloc(r.byteLength+4+i.byteLength+4+7+4),s={buf:o,off:0};c(s,n.from("ssh-rsa")),c(s,r),c(s,i);let a=t.sshcomment||"";return"der"===e.type?s.buf:"ssh-rsa "+o.toString("base64")+" "+a+"\\n"},publicImport:function(t,e,r){var o;if("der"!==(r=r||{}).type){if(n.isBuffer(e)&&(e=e.toString("utf8")),!i.isString(e))throw Error("Unsupported key format");{if("ssh-rsa "!==e.substring(0,8))throw Error("Unsupported key format");let r=e.indexOf(" ",8);-1===r?r=e.length:t.sshcomment=e.substring(r+1).replace(/\\s+|\\n\\r|\\n|\\r$/gm,"");const i=e.substring(8,r).replace(/\\s+|\\n\\r|\\n|\\r$/gm,"");o=n.from(i,"base64")}}else{if(!n.isBuffer(e))throw Error("Unsupported key format");o=e}const s={buf:o,off:0},a=u(s).toString("ascii");if("ssh-rsa"!==a)throw Error("Invalid key type: "+a);const f=u(s),c=u(s);t.setPublic(c,f)},autoImport:function(e,r){return/^[\\S\\s]*-----BEGIN OPENSSH PRIVATE KEY-----\\s*(?=(([A-Za-z0-9+/=]+\\s*)+))\\1-----END OPENSSH PRIVATE KEY-----[\\S\\s]*$/g.test(r)?(t.exports.privateImport(e,r),!0):!!/^[\\S\\s]*ssh-rsa \\s*(?=(([A-Za-z0-9+/=]+\\s*)+))\\1[\\S\\s]*$/g.test(r)&&(t.exports.publicImport(e,r),!0)}}},6566:(t,e,r)=>{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<<t.DB-15)-1,this.mt2=2*t.t}function v(t,e){return t&e}function m(t,e){return t|e}function S(t,e){return t^e}function _(t,e){return t&~e}function b(t){if(0===t)return-1;var e=0;return 65535&t||(t>>=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<this.m.t;++e){var r=32767&t[e],n=r*this.mpl+((r*this.mph+(t[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)-1)<<a,this[this.t++]=f>>this.DB-a):this[this.t-1]|=f<<a,(a+=n)>=this.DB&&(a-=this.DB))}!r&&8==n&&128&t[0]&&(this.s=-1,a>0&&(this[this.t-1]|=(1<<this.DB-a)-1<<a)),this.clamp(),o&&s.ZERO.subTo(this,this)},s.prototype.fromByteArray=function(t,e){this.fromString(t,256,e)},s.prototype.fromBuffer=function(t){this.fromString(t,256,!0)},s.prototype.clamp=function(){for(var t=this.s&this.DM;this.t>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<this.t;++r)e[r-t]=this[r];e.t=Math.max(this.t-t,0),e.s=this.s},s.prototype.lShiftTo=function(t,e){var r,n=t%this.DB,i=this.DB-n,o=(1<<i)-1,s=Math.floor(t/this.DB),a=this.s<<n&this.DM;for(r=this.t-1;r>=0;--r)e[r+s+1]=this[r]>>i|a,a=(this[r]&o)<<n;for(r=s-1;r>=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)-1;e[0]=this[r]>>n;for(var s=r+1;s<this.t;++s)e[s-r-1]|=(this[s]&o)<<i,e[s-r]=this[s]>>n;n>0&&(e[this.t-r-1]|=(this.s&o)<<i),e.t=this.t-r,e.clamp()}},s.prototype.subTo=function(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this[r]-t[r],e[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n-=t.s;r<this.t;)n+=this[r],e[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n-=t[r],e[r++]=n&this.DM,n>>=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<n.t;++i)e[i+r.t]=r.am(0,n[i],e,i,0,r.t);e.s=0,e.clamp(),this.s!=t.s&&s.ZERO.subTo(e,e)},s.prototype.squareTo=function(t){for(var e=this.abs(),r=t.t=2*e.t;--r>=0;)t[r]=0;for(r=0;r<e.t-1;++r){var n=e.am(r,e[r],t,2*r,0,1);(t[r+e.t]+=e.am(r+1,2*e[r],t,2*r+1,n,e.t-r-1))>=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.t<n.t)return null!=e&&e.fromInt(0),void(null!=r&&this.copyTo(r));null==r&&(r=a());var o=a(),f=this.s,u=t.s,c=this.DB-y(n[n.t-1]);c>0?(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<<this.F1)+(h>1?o[h-2]>>this.F2:0),g=this.FV/l,d=(1<<this.F1)/l,v=1<<this.F2,m=r.t,S=m-h,_=null==e?a():e;for(o.dlShiftTo(S,_),r.compareTo(_)>=0&&(r[r.t++]=1,r.subTo(_,r)),s.ONE.dlShiftTo(h,_),_.subTo(o,o);o.t<h;)o[o.t++]=0;for(;--S>=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))<b)for(o.dlShiftTo(S,_),r.subTo(_,r);r[m]<--b;)r.subTo(_,r)}null!=e&&(r.drShiftTo(h,e),f!=u&&s.ZERO.subTo(e,e)),r.t=h,r.clamp(),c>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<<o)>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<t.length;++f){var u=p(t,f);u<0?"-"==t.charAt(f)&&0===this.signum()&&(i=!0):(a=e*a+u,++o>=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<<n)-1:r[0]=0,this.fromByteArray(r)}},s.prototype.bitwiseTo=function(t,e,r){var n,i,o=Math.min(t.t,this.t);for(n=0;n<o;++n)r[n]=e(this[n],t[n]);if(t.t<this.t){for(i=t.s&this.DM,n=o;n<this.t;++n)r[n]=e(this[n],i);r.t=this.t}else{for(i=this.s&this.DM,n=o;n<t.t;++n)r[n]=e(i,t[n]);r.t=t.t}r.s=e(this.s,t.s),r.clamp()},s.prototype.changeBit=function(t,e){var r=s.ONE.shiftLeft(t);return this.bitwiseTo(r,e,r),r},s.prototype.addTo=function(t,e){for(var r=0,n=0,i=Math.min(t.t,this.t);r<i;)n+=this[r]+t[r],e[r++]=n&this.DM,n>>=this.DB;if(t.t<this.t){for(n+=t.s;r<this.t;)n+=this[r],e[r++]=n&this.DM,n>>=this.DB;n+=this.s}else{for(n+=this.s;r<t.t;)n+=t[r],e[r++]=n&this.DM,n>>=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<n;++i)r[i+this.t]=this.am(0,t[i],r,i,0,this.t);for(n=Math.min(t.t,e);i<n;++i)this.am(0,t[i],r,i,0,e-i);r.clamp()},s.prototype.multiplyUpperTo=function(t,e,r){--e;var n=r.t=this.t+t.t-e;for(r.s=0;--n>=0;)r[n]=0;for(n=Math.max(e-this.t,0);n<t.t;++n)r[this.t+n-e]=this.am(e-n,t[n],r,0,0,this.t+n-e);r.clamp(),r.drShiftTo(1,r)},s.prototype.modInt=function(t){if(t<=0)return 0;var e=this.DV%t,r=this.s<0?t-1:0;if(this.t>0)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;o<t;++o){i.fromInt(A[Math.floor(Math.random()*A.length)]);var f=i.modPow(n,this);if(0!=f.compareTo(s.ONE)&&0!=f.compareTo(e)){for(var u=1;u++<r&&0!=f.compareTo(e);)if(0===(f=f.modPowInt(2,this)).compareTo(s.ONE))return!1;if(0!=f.compareTo(e))return!1}}return!0},s.prototype.toString=function(t){if(this.s<0)return"-"+this.negate().toString(t);var e;if(16==t)e=4;else if(8==t)e=3;else if(2==t)e=1;else if(32==t)e=5;else{if(4!=t)return this.toRadix(t);e=2}var r,n=(1<<e)-1,i=!1,o="",s=this.t,a=this.DB-s*this.DB%e;if(s-- >0)for(a<this.DB&&(r=this[s]>>a)>0&&(i=!0,o=h(r));s>=0;)a<e?(r=(this[s]&(1<<a)-1)<<e-a,r|=this[--s]>>(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)<<this.DB|this[0]},s.prototype.byteValue=function(){return 0==this.t?this.s:this[0]<<24>>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<this.DB&&(r=this[t]>>n)!=(this.s&this.DM)>>n&&(e[i++]=r|this.s<<this.DB-n);t>=0;)n<8?(r=(this[t]&(1<<n)-1)<<8-n,r|=this[--t]>>(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;r<e.length-t;r++)if(0!==e[r])return null;return e.slice(e.length-t)}if(e.length<t){var i=n.alloc(t);return i.fill(0,0,t-e.length),e.copy(i,t-e.length),i}}return e},s.prototype.equals=function(t){return 0==this.compareTo(t)},s.prototype.min=function(t){return this.compareTo(t)<0?this:t},s.prototype.max=function(t){return this.compareTo(t)>0?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;++e)t[e]=this.DM&~this[e];return t.t=this.t,t.s=~this.s,t},s.prototype.shiftLeft=function(t){var e=a();return t<0?this.rShiftTo(-t,e):this.lShiftTo(t,e),e},s.prototype.shiftRight=function(t){var e=a();return t<0?this.lShiftTo(-t,e):this.rShiftTo(t,e),e},s.prototype.getLowestSetBit=function(){for(var t=0;t<this.t;++t)if(0!=this[t])return t*this.DB+b(this[t]);return this.s<0?this.t*this.DB:-1},s.prototype.bitCount=function(){for(var t=0,e=this.s&this.DM,r=0;r<this.t;++r)t+=E(this[r]^e);return t},s.prototype.testBit=function(t){var e=Math.floor(t/this.DB);return e>=this.t?0!=this.s:!!(this[e]&1<<t%this.DB)},s.prototype.setBit=function(t){return this.changeBit(t,m)},s.prototype.clearBit=function(t){return this.changeBit(t,_)},s.prototype.flipBit=function(t){return this.changeBit(t,S)},s.prototype.add=function(t){var e=a();return this.addTo(t,e),e},s.prototype.subtract=function(t){var e=a();return this.subTo(t,e),e},s.prototype.multiply=function(t){var e=a();return this.multiplyTo(t,e),e},s.prototype.divide=function(t){var e=a();return this.divRemTo(t,e,null),e},s.prototype.remainder=function(t){var e=a();return this.divRemTo(t,null,e),e},s.prototype.divideAndRemainder=function(t){var e=a(),r=a();return this.divRemTo(t,e,r),new Array(e,r)},s.prototype.modPow=function(t,e){var r,n,i=t.bitLength(),o=l(1);if(i<=0)return o;r=i<18?1:i<48?3:i<144?4:i<768?5:6,n=i<8?new g(e):e.isEven()?new B(e):new d(e);var s=new Array,f=3,u=r-1,c=(1<<r)-1;if(s[1]=n.convert(this),r>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<<i+1)-1)<<u-i,m>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<<i);)n.sqrTo(o,_),v=o,o=_,_=v,--i<0&&(i=this.DB-1,--m)}return n.revert(o)},s.prototype.modInverse=function(t){var e=t.isEven();if(this.isEven()&&e||0===t.signum())return s.ZERO;for(var r=t.clone(),n=this.clone(),i=l(1),o=l(0),a=l(0),f=l(1);0!=r.signum();){for(;r.isEven();)r.rShiftTo(1,r),e?(i.isEven()&&o.isEven()||(i.addTo(this,i),o.subTo(t,o)),i.rShiftTo(1,i)):o.isEven()||o.subTo(t,o),o.rShiftTo(1,o);for(;n.isEven();)n.rShiftTo(1,n),e?(a.isEven()&&f.isEven()||(a.addTo(this,a),f.subTo(t,f)),a.rShiftTo(1,a)):f.isEven()||f.subTo(t,f),f.rShiftTo(1,f);r.compareTo(n)>=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(i<o&&(o=i),o>0&&(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<A.length;++e)if(r[0]==A[e])return!0;return!1}if(r.isEven())return!1;for(e=1;e<A.length;){for(var n=A[e],i=e+1;i<A.length&&n<x;)n*=A[i++];for(n=r.modInt(n);e<i;)if(n%A[e++]==0)return!1}return r.millerRabin(t)},s.int2char=h,s.ZERO=l(0),s.ONE=l(1),s.prototype.square=function(){var t=a();return this.squareTo(t),t},t.exports=s},5682:(t,e,r)=>{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()<t)continue;this.d=n.modInverse(f),this.dmp1=this.d.mod(s),this.dmq1=this.d.mod(a),this.coeff=this.q.modInverse(this.p);break}}this.$$recalculateCache()},t.prototype.setPrivate=function(t,e,r,n,a,f,u,c){if(!(t&&e&&r&&t.length>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;f<s;f++)r.push(t.slice(f*a,(f+1)*a));for(var u=0;u<r.length;u++)i.push(this.encryptEngine.encrypt(r[u],e));return n.concat(i)},t.prototype.decrypt=function(t,e){if(t.length%this.encryptedDataLength>0)throw Error("Incorrect data or key");for(var r=[],i=0,o=0,s=t.length/this.encryptedDataLength,a=0;a<s;a++)o=(i=a*this.encryptedDataLength)+this.encryptedDataLength,r.push(this.encryptEngine.decrypt(t.slice(i,Math.min(o,t.length)),e));return n.concat(r)},t.prototype.sign=function(t){return this.signingScheme.sign.apply(this.signingScheme,arguments)},t.prototype.verify=function(t,e,r){return this.signingScheme.verify.apply(this.signingScheme,arguments)},t.prototype.isPrivate=function(){return!!(this.n&&this.e&&this.d)},t.prototype.isPublic=function(t){return this.n&&this.e&&!(t&&this.d)||!1},Object.defineProperty(t.prototype,"keySize",{get:function(){return this.cache.keyBitLength}}),Object.defineProperty(t.prototype,"encryptedDataLength",{get:function(){return this.cache.keyByteLength}}),Object.defineProperty(t.prototype,"maxMessageLength",{get:function(){return this.encryptionScheme.maxMessageLength()}}),t.prototype.$$recalculateCache=function(){this.cache=this.cache||{},this.cache.keyBitLength=this.n.bitLength(),this.cache.keyByteLength=this.cache.keyBitLength+6>>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;h<f;++h){var p=i.createHash(s);p.update(e),c.writeUInt32BE(h,0),p.update(c),p.digest().copy(u,h*a)}return u.slice(0,r)},t.exports.makeScheme=function(e,r){function s(t,e){this.key=t,this.options=e}return s.prototype.maxMessageLength=function(){return this.key.encryptedDataLength-2*t.exports.digestLength[this.options.encryptionSchemeOptions.hash||o]-2},s.prototype.encPad=function(e){var r=this.options.encryptionSchemeOptions.hash||o,s=this.options.encryptionSchemeOptions.mgf||t.exports.eme_oaep_mgf1,a=this.options.encryptionSchemeOptions.label||n.alloc(0),f=this.key.encryptedDataLength,u=t.exports.digestLength[r];if(e.length>f-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<p.length;g++)p[g]^=y[g];for(y=s(p,u,r),g=0;g<l.length;g++)l[g]^=y[g];var d=n.alloc(1+l.length+p.length);return d[0]=0,l.copy(d,1),p.copy(d,1+l.length),d},s.prototype.encUnPad=function(e){var r=this.options.encryptionSchemeOptions.hash||o,s=this.options.encryptionSchemeOptions.mgf||t.exports.eme_oaep_mgf1,a=this.options.encryptionSchemeOptions.label||n.alloc(0),f=t.exports.digestLength[r];if(e.length<2*f+2)throw new Error("Error decoding message, the supplied message is not long enough to be a valid OAEP encoded message");for(var u=e.slice(1,f+1),c=e.slice(1+f),h=s(c,f,r),p=0;p<u.length;p++)u[p]^=h[p];for(h=s(u,c.length,r),p=0;p<c.length;p++)c[p]^=h[p];var l=i.createHash(r);if(l.update(a),l=l.digest(),c.slice(0,f).toString("hex")!=l.toString("hex"))throw new Error("Error decoding message, the lHash calculated from the label provided and the lHash in the encrypted data do not match.");for(p=f;0===c[p++]&&p<c.length;);if(1!=c[p-1])throw new Error("Error decoding message, there is no padding message separator byte");return c.slice(p)},new s(e,r)}},8290:(t,e,r)=>{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<i.length;a++){for(var f=i[a];0===f;)f=o.randomBytes(1)[0];r[a+2]=f}return r[r.length-1]=0,n.concat([r,t])},r.prototype.encUnPad=function(t,e){e=e||{};var r=0;if(this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==s.RSA_NO_PADDING)return"function"==typeof t.lastIndexOf?t.slice(t.lastIndexOf("\\0")+1,t.length):t.slice(String.prototype.lastIndexOf.call(t,"\\0")+1,t.length);if(t.length<4)return null;if(1===e.type){if(0!==t[0]||1!==t[1])return null;for(r=3;0!==t[r];)if(255!=t[r]||++r>=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<u+f+2)throw new Error("Output length passed to emBits("+e+") is too small for the options specified("+r+", "+f+"). To fix this issue increase the value of emBits. (minimum size: "+(8*u+8*f+9)+")");var h=o.randomBytes(f),p=n.alloc(8+u+f);p.fill(0,0,8),t.copy(p,8),h.copy(p,8+t.length);var l=o.createHash(r);l.update(p),l=l.digest();var y=n.alloc(c-h.length-u-2);y.fill(0);var g=n.alloc(y.length+1+h.length);y.copy(g),g[y.length]=1,h.copy(g,y.length+1);for(var d=i(l,g.length,r),v=n.alloc(g.length),m=0;m<d.length;m++)v[m]=g[m]^d[m];var S=8*c-e,_=255^255>>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<c+u+2||188!=e[e.length-1])return!1;var p=n.alloc(h-c-1);e.copy(p,0,0,h-c-1);for(var l=0,y=0,g=8*h-r;y<g;y++)l|=1<<7-y;if(p[0]&l)return!1;var d=e.slice(h-c-1,h-1),v=f(d,p.length,i);for(y=0;y<p.length;y++)p[y]^=v[y];for(l=255^255>>8-(g=8*h-r)<<8-g,p[0]=p[0]&l,y=0;0===p[y]&&y<p.length;y++);if(1!=p[y])return!1;var m=p.slice(p.length-u),S=n.alloc(8+c+u);S.fill(0,0,8),t.copy(S,8),m.copy(S,8+t.length);var _=o.createHash(i);return _.update(S),_=_.digest(),d.toString("hex")===_.toString("hex")},new f(t,e)}},1768:(t,e,r)=>{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+e<t.length;)r+=t.substring(n,n+e)+"\\n",n+=e;return r+t.substring(n,t.length)},t.exports.detectEnvironment=function(){return "browser";"undefined"==typeof window||!window||n&&"node"===n.title?"node":"browser"},t.exports.get32IntFromBuffer=function(t,e){var r;if(e=e||0,(r=t.length-e)>0){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;g<t.length;++g)p.push(String(g));if(n&&t.length>0)for(var d=0;d<t.length;++d)p.push(String(d));else for(var v in t)y&&"prototype"===v||!i.call(t,v)||p.push(String(v));if(f)for(var m=function(t){if("undefined"==typeof window||!l)return h(t);try{return h(t)}catch(t){return!1}}(t),S=0;S<c.length;++S)m&&"constructor"===c[S]||!i.call(t,c[S])||p.push(c[S]);return p}}t.exports=n},1189:(t,e,r)=>{"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<arguments.length;++o){var c=s(arguments[o]),h=n(c),p=i&&(Object.getOwnPropertySymbols||u);if(p)for(var l=p(c),y=0;y<l.length;++y){var g=l[y];f(c,g)&&a(h,g)}for(var d=0;d<h.length;++d){var v=h[d];if(f(c,v)){var m=c[v];r[v]=m}}}return r}},1514:(t,e,r)=>{"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<e.length;++n)r[e[n]]=e[n];var i=Object.assign({},r),o="";for(var s in i)o+=s;return t!==o}()||function(){if(!Object.assign||!Object.preventExtensions)return!1;var t=Object.preventExtensions({1:2});try{Object.assign(t,"xy")}catch(e){return"y"===t[1]}return!1}()?n:Object.assign:n}},5606:t=>{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=[];++c<e;)a&&a[c].run();c=-1,e=f.length}a=null,u=!1,function(t){if(r===clearTimeout)return clearTimeout(t);if((r===o||!r)&&clearTimeout)return r=clearTimeout,clearTimeout(t);try{return r(t)}catch(e){try{return r.call(null,t)}catch(e){return r.call(this,t)}}}(t)}}function l(t,e){this.fun=t,this.array=e}function y(){}n.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];f.push(new l(t,e)),1!==f.length||u||s(p)},l.prototype.run=function(){this.fun.apply(null,this.array)},n.title="browser",n.browser=!0,n.env={},n.argv=[],n.version="",n.versions={},n.on=y,n.addListener=y,n.once=y,n.off=y,n.removeListener=y,n.removeAllListeners=y,n.emit=y,n.prependListener=y,n.prependOnceListener=y,n.listeners=function(t){return[]},n.binding=function(t){throw new Error("process.binding is not supported")},n.cwd=function(){return"/"},n.chdir=function(t){throw new Error("process.chdir is not supported")},n.umask=function(){return 0}},4774:(t,e,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<t;r++)e.push(Math.floor(256*Math.random()));return n.from(e)},createHash(t){let e=n.from([]);return{update:function(t){return e=n.concat([e,t]),this},digest:function(){let r=i[t.toUpperCase()](i.lib.WordArray.create(new Uint8Array(e))).toString();return n.from(r,"hex")}}}};t.exports=o},7033:(t,e,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<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}function hex2b64(h){var i;var c;var ret="";for(i=0;i+3<=h.length;i+=3){c=parseInt(h.substring(i,i+3),16);ret+=b64map.charAt(c>>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<hex.length;c+=2)bytes.push(parseInt(hex.substr(c,2),16));return bytes}function bytesToHex(bytes){for(var hex=[],i=0;i<bytes.length;i++){hex.push((bytes[i]>>>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<bin.length;++i){var tmp=bin.charCodeAt(i).toString(16);if(tmp.length===1)tmp="0"+tmp;hex[hex.length]=tmp}return hex.join("")}function addPreZero(num,length){var t=(num+"").length,s="";for(var i=0;i<length-t;i++){s+="0"}return s+num}JSEncrypt.prototype.getkeylength=function(){return this.key.n.bitLength()+7>>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;i<len;i++){var charCode=string.charCodeAt(i);if(charCode<=127){bitLen+=1}else if(charCode<=2047){bitLen+=2}else if(charCode<=65535){bitLen+=3}else{bitLen+=4}if(bitLen>maxLength){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 <lapo@lapo.it>\\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 <lapo@lapo.it>\\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 <lapo@lapo.it>\\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 <lapo@lapo.it>\\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<<n)\\n BigInteger.prototype.setBit = function (n) {\\n return this.changeBit(n, _util__WEBPACK_IMPORTED_MODULE_0__.op_or);\\n };\\n // BigInteger.prototype.clearBit = bnClearBit;\\n // (public) this & ~(1<<n)\\n BigInteger.prototype.clearBit = function (n) {\\n return this.changeBit(n, _util__WEBPACK_IMPORTED_MODULE_0__.op_andnot);\\n };\\n // BigInteger.prototype.flipBit = bnFlipBit;\\n // (public) this ^ (1<<n)\\n BigInteger.prototype.flipBit = function (n) {\\n return this.changeBit(n, _util__WEBPACK_IMPORTED_MODULE_0__.op_xor);\\n };\\n // BigInteger.prototype.add = bnAdd;\\n // (public) this + a\\n BigInteger.prototype.add = function (a) {\\n var r = nbi();\\n this.addTo(a, r);\\n return r;\\n };\\n // BigInteger.prototype.subtract = bnSubtract;\\n // (public) this - a\\n BigInteger.prototype.subtract = function (a) {\\n var r = nbi();\\n this.subTo(a, r);\\n return r;\\n };\\n // BigInteger.prototype.multiply = bnMultiply;\\n // (public) this * a\\n BigInteger.prototype.multiply = function (a) {\\n var r = nbi();\\n this.multiplyTo(a, r);\\n return r;\\n };\\n // BigInteger.prototype.divide = bnDivide;\\n // (public) this / a\\n BigInteger.prototype.divide = function (a) {\\n var r = nbi();\\n this.divRemTo(a, r, null);\\n return r;\\n };\\n // BigInteger.prototype.remainder = bnRemainder;\\n // (public) this % a\\n BigInteger.prototype.remainder = function (a) {\\n var r = nbi();\\n this.divRemTo(a, null, r);\\n return r;\\n };\\n // BigInteger.prototype.divideAndRemainder = bnDivideAndRemainder;\\n // (public) [this/a,this%a]\\n BigInteger.prototype.divideAndRemainder = function (a) {\\n var q = nbi();\\n var r = nbi();\\n this.divRemTo(a, q, r);\\n return [q, r];\\n };\\n // BigInteger.prototype.modPow = bnModPow;\\n // (public) this^e % m (HAC 14.85)\\n BigInteger.prototype.modPow = function (e, m) {\\n var i = e.bitLength();\\n var k;\\n var r = nbv(1);\\n var z;\\n if (i <= 0) {\\n return r;\\n }\\n else if (i < 18) {\\n k = 1;\\n }\\n else if (i < 48) {\\n k = 3;\\n }\\n else if (i < 144) {\\n k = 4;\\n }\\n else if (i < 768) {\\n k = 5;\\n }\\n else {\\n k = 6;\\n }\\n if (i < 8) {\\n z = new Classic(m);\\n }\\n else if (m.isEven()) {\\n z = new Barrett(m);\\n }\\n else {\\n z = new Montgomery(m);\\n }\\n // precomputation\\n var g = [];\\n var n = 3;\\n var k1 = k - 1;\\n var km = (1 << k) - 1;\\n g[1] = z.convert(this);\\n if (k > 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<<n)\\n BigInteger.prototype.changeBit = function (n, op) {\\n var r = BigInteger.ONE.shiftLeft(n);\\n this.bitwiseTo(r, op, r);\\n return r;\\n };\\n // BigInteger.prototype.addTo = bnpAddTo;\\n // (protected) r = this + a\\n BigInteger.prototype.addTo = 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 > 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 <a href=\\"https://kjur.github.io/jsrsasign/license/\\">MIT License</a>\\n */\\n/**\\n * kjur\'s class library name space\\n * <p>\\n * This name space provides following name spaces:\\n * <ul>\\n * <li>{@link KJUR.asn1} - ASN.1 primitive hexadecimal encoder</li>\\n * <li>{@link KJUR.asn1.x509} - ASN.1 structure for X.509 certificate and CRL</li>\\n * <li>{@link KJUR.crypto} - Java Cryptographic Extension(JCE) style MessageDigest/Signature\\n * class and utilities</li>\\n * </ul>\\n * </p>\\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 * <p>\\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 * <h4>PROVIDING ASN.1 PRIMITIVES</h4>\\n * Here are ASN.1 DER primitive classes.\\n * <ul>\\n * <li>0x01 {@link KJUR.asn1.DERBoolean}</li>\\n * <li>0x02 {@link KJUR.asn1.DERInteger}</li>\\n * <li>0x03 {@link KJUR.asn1.DERBitString}</li>\\n * <li>0x04 {@link KJUR.asn1.DEROctetString}</li>\\n * <li>0x05 {@link KJUR.asn1.DERNull}</li>\\n * <li>0x06 {@link KJUR.asn1.DERObjectIdentifier}</li>\\n * <li>0x0a {@link KJUR.asn1.DEREnumerated}</li>\\n * <li>0x0c {@link KJUR.asn1.DERUTF8String}</li>\\n * <li>0x12 {@link KJUR.asn1.DERNumericString}</li>\\n * <li>0x13 {@link KJUR.asn1.DERPrintableString}</li>\\n * <li>0x14 {@link KJUR.asn1.DERTeletexString}</li>\\n * <li>0x16 {@link KJUR.asn1.DERIA5String}</li>\\n * <li>0x17 {@link KJUR.asn1.DERUTCTime}</li>\\n * <li>0x18 {@link KJUR.asn1.DERGeneralizedTime}</li>\\n * <li>0x30 {@link KJUR.asn1.DERSequence}</li>\\n * <li>0x31 {@link KJUR.asn1.DERSet}</li>\\n * </ul>\\n * <h4>OTHER ASN.1 CLASSES</h4>\\n * <ul>\\n * <li>{@link KJUR.asn1.ASN1Object}</li>\\n * <li>{@link KJUR.asn1.DERAbstractString}</li>\\n * <li>{@link KJUR.asn1.DERAbstractTime}</li>\\n * <li>{@link KJUR.asn1.DERAbstractStructured}</li>\\n * <li>{@link KJUR.asn1.DERTaggedObject}</li>\\n * </ul>\\n * <h4>SUB NAME SPACES</h4>\\n * <ul>\\n * <li>{@link KJUR.asn1.cades} - CAdES long term signature format</li>\\n * <li>{@link KJUR.asn1.cms} - Cryptographic Message Syntax</li>\\n * <li>{@link KJUR.asn1.csr} - Certificate Signing Request (CSR/PKCS#10)</li>\\n * <li>{@link KJUR.asn1.tsp} - RFC 3161 Timestamping Protocol Format</li>\\n * <li>{@link KJUR.asn1.x509} - RFC 5280 X.509 certificate and CRL</li>\\n * </ul>\\n * </p>\\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 * <blockquote>\\n * {TYPE-OF-ASNOBJ: ASN1OBJ-PARAMETER}\\n * </blockquote>\\n * \'TYPE-OF-ASN1OBJ\' can be one of following symbols:\\n * <ul>\\n * <li>\'bool\' - DERBoolean</li>\\n * <li>\'int\' - DERInteger</li>\\n * <li>\'bitstr\' - DERBitString</li>\\n * <li>\'octstr\' - DEROctetString</li>\\n * <li>\'null\' - DERNull</li>\\n * <li>\'oid\' - DERObjectIdentifier</li>\\n * <li>\'enum\' - DEREnumerated</li>\\n * <li>\'utf8str\' - DERUTF8String</li>\\n * <li>\'numstr\' - DERNumericString</li>\\n * <li>\'prnstr\' - DERPrintableString</li>\\n * <li>\'telstr\' - DERTeletexString</li>\\n * <li>\'ia5str\' - DERIA5String</li>\\n * <li>\'utctime\' - DERUTCTime</li>\\n * <li>\'gentime\' - DERGeneralizedTime</li>\\n * <li>\'seq\' - DERSequence</li>\\n * <li>\'set\' - DERSet</li>\\n * <li>\'tag\' - DERTaggedObject</li>\\n * </ul>\\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 * <br/>\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n * <ul>\\n * <li>str - specify initial ASN.1 value(V) by a string</li>\\n * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>\\n * </ul>\\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 * <br/>\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n * <ul>\\n * <li>int - specify initial ASN.1 value(V) by integer value</li>\\n * <li>bigint - specify initial ASN.1 value(V) by BigInteger object</li>\\n * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>\\n * </ul>\\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 * <br/>\\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 * <br/>\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n * <ul>\\n * <li>bin - specify binary string (ex. \'10111\')</li>\\n * <li>array - specify array of boolean (ex. [true,false,true,true])</li>\\n * <li>hex - specify hexadecimal string of ASN.1 value(V) including unused bits</li>\\n * <li>obj - specify {@link KJUR.asn1.ASN1Util.newObject}\\n * argument for \\"BitString encapsulates\\" structure.</li>\\n * </ul>\\n * NOTE1: \'params\' can be omitted.<br/>\\n * NOTE2: \'obj\' parameter have been supported since\\n * asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).<br/>\\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<br/>\\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\'. <br/>\\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<br/>\\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<br/>\\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<br/>\\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.<br/>\\n * Supported \\"params\\" attributes are:\\n * <ul>\\n * <li>str - to set a string as a value</li>\\n * <li>hex - to set a hexadecimal string as a value</li>\\n * <li>obj - to set a encapsulated ASN.1 value by JSON object\\n * which is defined in {@link KJUR.asn1.ASN1Util.newObject}</li>\\n * </ul>\\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 * <br/>\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n * <ul>\\n * <li>oid - specify initial ASN.1 value(V) by a oid string (ex. 2.5.4.13)</li>\\n * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>\\n * </ul>\\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<br/>\\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 * <br/>\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n * <ul>\\n * <li>int - specify initial ASN.1 value(V) by integer value</li>\\n * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>\\n * </ul>\\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 * <br/>\\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 * <br/>\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n * <ul>\\n * <li>str - specify initial ASN.1 value(V) by a string (ex.\'130430235959Z\')</li>\\n * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>\\n * <li>date - specify Date object.</li>\\n * </ul>\\n * NOTE: \'params\' can be omitted.\\n * <h4>EXAMPLES</h4>\\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<br/>\\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 * <br/>\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n * <ul>\\n * <li>str - specify initial ASN.1 value(V) by a string (ex.\'20130430235959Z\')</li>\\n * <li>hex - specify initial ASN.1 value(V) by a hexadecimal string</li>\\n * <li>date - specify Date object.</li>\\n * <li>millis - specify flag to show milliseconds (from 1.0.6)</li>\\n * </ul>\\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:<br/>\\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 * <br/>\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n * <ul>\\n * <li>array - specify array of ASN1Object to set elements of content</li>\\n * </ul>\\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 * <br/>\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n * <ul>\\n * <li>array - specify array of ASN1Object to set elements of content</li>\\n * <li>sortflag - flag for sort (default: true). ASN.1 BER is not sorted in \'SET OF\'.</li>\\n * </ul>\\n * NOTE1: \'params\' can be omitted.<br/>\\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 * <br/>\\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 * <br/>\\n * As for optional argument \'params\' for constructor, you can specify *ANY* of\\n * following properties:\\n * <ul>\\n * <li>explicit - specify true if this is explicit tag otherwise false\\n * (default is \'true\').</li>\\n * <li>tag - specify tag (default is \'a0\' which means [0])</li>\\n * <li>obj - specify ASN1Object which is tagged</li>\\n * </ul>\\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<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e});var r="js:\n let html = request(input);\n let hconf = html.match(/r player_.*?=(.*?)</)[1];\n let json = JSON5.parse(hconf);\n let url = json.url;\n if (json.encrypt == '1') {\n url = unescape(url);\n } else if (json.encrypt == '2') {\n url = unescape(base64Decode(url));\n }\n if (/\\.(m3u8|mp4|m4a|mp3)/.test(url)) {\n input = {\n parse: 0,\n jx: 0,\n url: url,\n };\n } else {\n input = url && url.startsWith('http') && tellIsJx(url) ? {parse:0,jx:1,url:url}:input;\n }";function a(){var e={mx:{title:"",host:"",url:"/vodshow/fyclass--------fypage---/",searchUrl:"/vodsearch/**----------fypage---/",class_parse:".top_nav li;a&&Text;a&&href;.*/(.*?)/",searchable:2,quickSearch:0,filterable:0,headers:{"User-Agent":"MOBILE_UA"},play_parse:!0,lazy:r,limit:6,double:!0,推荐:".cbox_list;*;*;*;*;*",一级:"ul.vodlist li;a&&title;a&&data-original;.pic_text&&Text;a&&href",二级:{title:"h2&&Text;.content_detail:eq(1)&&li&&a:eq(2)&&Text",img:".vodlist_thumb&&data-original",desc:".content_detail:eq(1)&&li:eq(1)&&Text;.content_detail:eq(1)&&li&&a&&Text;.content_detail:eq(1)&&li&&a:eq(1)&&Text;.content_detail:eq(1)&&li:eq(2)&&Text;.content_detail:eq(1)&&li:eq(3)&&Text",content:".content_desc&&span&&Text",tabs:".play_source_tab&&a",lists:".content_playlist:eq(#id) li"},搜索:"*"},mxpro:{title:"",host:"",url:"/vodshow/fyclass--------fypage---.html",searchUrl:"/vodsearch/**----------fypage---.html",searchable:2,quickSearch:0,filterable:0,headers:{"User-Agent":"MOBILE_UA"},class_parse:".navbar-items li:gt(0):lt(10);a&&Text;a&&href;/(\\d+)",play_parse:!0,lazy:r,limit:6,double:!0,推荐:".tab-list.active;a.module-poster-item.module-item;.module-poster-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href",一级:"body a.module-poster-item.module-item;a&&title;.lazyload&&data-original;.module-item-note&&Text;a&&href",二级:{title:"h1&&Text;.module-info-tag-link:eq(-1)&&Text",img:".lazyload&&data-original||data-src||src",desc:".module-info-item:eq(-2)&&Text;.module-info-tag-link&&Text;.module-info-tag-link:eq(1)&&Text;.module-info-item:eq(2)&&Text;.module-info-item:eq(1)&&Text",content:".module-info-introduction&&Text",tabs:".module-tab-item",lists:".module-play-list:eq(#id) a",tab_text:"div--small&&Text"},搜索:"body .module-item;.module-card-item-title&&Text;.lazyload&&data-original;.module-item-note&&Text;a&&href;.module-info-item-content&&Text"},mxone5:{title:"",host:"",url:"/show/fyclass--------fypage---.html",searchUrl:"/search/**----------fypage---.html",searchable:2,quickSearch:0,filterable:0,class_parse:".nav-menu-items&&li;a&&Text;a&&href;.*/(.*?).html",play_parse:!0,lazy:r,limit:6,double:!0,推荐:".module-list;.module-items&&.module-item;a&&title;img&&data-src;.module-item-text&&Text;a&&href",一级:".module-items .module-item;a&&title;img&&data-src;.module-item-text&&Text;a&&href",二级:{title:"h1&&Text;.tag-link&&Text",img:".module-item-pic&&img&&data-src",desc:".video-info-items:eq(3)&&Text;.tag-link:eq(2)&&Text;.tag-link:eq(1)&&Text;.video-info-items:eq(1)&&Text;.video-info-items:eq(0)&&Text",content:".vod_content&&Text",tabs:".module-tab-item",lists:".module-player-list:eq(#id)&&.scroll-content&&a",tab_text:"div--small&&Text"},搜索:".module-items .module-search-item;a&&title;img&&data-src;.video-serial&&Text;a&&href"},首图:{title:"",host:"",url:"/vodshow/fyclass--------fypage---/",searchUrl:"/vodsearch/**----------fypage---.html",searchable:2,quickSearch:0,filterable:0,headers:{"User-Agent":"MOBILE_UA"},class_parse:".myui-header__menu li.hidden-sm:gt(0):lt(7);a&&Text;a&&href;/(\\d+).html",play_parse:!0,lazy:r,limit:6,double:!0,推荐:"ul.myui-vodlist.clearfix;li;a&&title;a&&data-original;.pic-text&&Text;a&&href",一级:".myui-vodlist li;a&&title;a&&data-original;.pic-text&&Text;a&&href",二级:{title:".myui-content__detail .title--span&&Text;.myui-content__detail p.data:eq(3)&&Text",img:".myui-content__thumb .lazyload&&data-original",desc:".myui-content__detail p.otherbox&&Text;.year&&Text;.myui-content__detail p.data:eq(4)&&Text;.myui-content__detail p.data:eq(2)&&Text;.myui-content__detail p.data:eq(0)&&Text",content:".content&&Text",tabs:".myui-panel__head&&li",lists:".myui-content__list:eq(#id) li"},搜索:"#searchList li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href;.detail&&Text"},首图2:{title:"",host:"",url:"/list/fyclass-fypage.html",searchUrl:"/vodsearch/**----------fypage---.html",searchable:2,quickSearch:0,filterable:0,headers:{"User-Agent":"UC_UA"},class_parse:".stui-header__menu li:gt(0):lt(7);a&&Text;a&&href;.*/(.*?).html",play_parse:!0,lazy:r,limit:6,double:!0,推荐:"ul.stui-vodlist.clearfix;li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href",一级:".stui-vodlist li;a&&title;a&&data-original;.pic-text&&Text;a&&href",二级:{title:".stui-content__detail .title&&Text;.stui-content__detail&&p:eq(-2)&&a&&Text",title1:".stui-content__detail .title&&Text;.stui-content__detail&&p&&Text",img:".stui-content__thumb .lazyload&&data-original",desc:".stui-content__detail p&&Text;.stui-content__detail&&p:eq(-2)&&a:eq(2)&&Text;.stui-content__detail&&p:eq(-2)&&a:eq(1)&&Text;.stui-content__detail p:eq(2)&&Text;.stui-content__detail p:eq(1)&&Text",desc1:".stui-content__detail p:eq(4)&&Text;;;.stui-content__detail p:eq(1)&&Text",content:".detail&&Text",tabs:".stui-pannel__head h3",tabs1:".stui-vodlist__head h3",lists:".stui-content__playlist:eq(#id) li"},搜索:"ul.stui-vodlist__media,ul.stui-vodlist,#searchList li;a&&title;.lazyload&&data-original;.pic-text&&Text;a&&href;.detail&&Text"},默认:{title:"",host:"",url:"",searchUrl:"",searchable:2,quickSearch:0,filterable:0,filter:"",filter_url:"",filter_def:{},headers:{"User-Agent":"MOBILE_UA"},timeout:5e3,class_parse:"#side-menu li;a&&Text;a&&href;/(.*?).html",cate_exclude:"",play_parse:!0,lazy:"js:\n input = { parse: 1, url: input, js: '' };",double:!0,推荐:"列表1;列表2;标题;图片;描述;链接;详情",一级:"列表;标题;图片;描述;链接;详情",二级:{title:"vod_name;vod_type",img:"图片链接",desc:"主要信息;年代;地区;演员;导演",content:"简介",tabs:"",lists:"xx:eq(#id)&&a",tab_text:"body&&Text",list_text:"body&&Text",list_url:"a&&href"},搜索:"列表;标题;图片;描述;链接;详情"},vfed:{title:"",host:"",url:"/index.php/vod/show/id/fyclass/page/fypage.html",searchUrl:"/index.php/vod/search/page/fypage/wd/**.html",searchable:2,quickSearch:0,filterable:0,headers:{"User-Agent":"UC_UA"},class_parse:".fed-pops-navbar&&ul.fed-part-rows&&a;a&&Text;a&&href;.*/(.*?).html",play_parse:!0,lazy:r,limit:6,double:!0,推荐:"ul.fed-list-info.fed-part-rows;li;a.fed-list-title&&Text;a&&data-original;.fed-list-remarks&&Text;a&&href",一级:".fed-list-info&&li;a.fed-list-title&&Text;a&&data-original;.fed-list-remarks&&Text;a&&href",二级:{title:"h1.fed-part-eone&&Text;.fed-deta-content&&.fed-part-rows&&li&&Text",img:".fed-list-info&&a&&data-original",desc:".fed-deta-content&&.fed-part-rows&&li:eq(1)&&Text;.fed-deta-content&&.fed-part-rows&&li:eq(2)&&Text;.fed-deta-content&&.fed-part-rows&&li:eq(3)&&Text",content:".fed-part-esan&&Text",tabs:".fed-drop-boxs&&.fed-part-rows&&li",lists:".fed-play-item:eq(#id)&&ul:eq(1)&&li"},搜索:".fed-deta-info;h1&&Text;.lazyload&&data-original;.fed-list-remarks&&Text;a&&href;.fed-deta-content&&Text"},海螺3:{title:"",host:"",searchUrl:"/v_search/**----------fypage---.html",url:"/vod_____show/fyclass--------fypage---.html",headers:{"User-Agent":"MOBILE_UA"},timeout:5e3,class_parse:"body&&.hl-nav li:gt(0);a&&Text;a&&href;.*/(.*?).html",cate_exclude:"明星|专题|最新|排行",limit:40,play_parse:!0,lazy:r,double:!0,推荐:".hl-vod-list;li;a&&title;a&&data-original;.remarks&&Text;a&&href",一级:".hl-vod-list&&.hl-list-item;a&&title;a&&data-original;.remarks&&Text;a&&href",二级:{title:".hl-dc-title&&Text;.hl-dc-content&&li:eq(6)&&Text",img:".hl-lazy&&data-original",desc:".hl-dc-content&&li:eq(10)&&Text;.hl-dc-content&&li:eq(4)&&Text;.hl-dc-content&&li:eq(5)&&Text;.hl-dc-content&&li:eq(2)&&Text;.hl-dc-content&&li:eq(3)&&Text",content:".hl-content-text&&Text",tabs:".hl-tabs&&a",tab_text:"a--span&&Text",lists:".hl-plays-list:eq(#id)&&li"},搜索:".hl-list-item;a&&title;a&&data-original;.remarks&&Text;a&&href",searchable:2,quickSearch:0,filterable:0},海螺2:{title:"",host:"",searchUrl:"/index.php/vod/search/page/fypage/wd/**/",url:"/index.php/vod/show/id/fyclass/page/fypage/",headers:{"User-Agent":"MOBILE_UA"},timeout:5e3,class_parse:"#nav-bar li;a&&Text;a&&href;id/(.*?)/",limit:40,play_parse:!0,lazy:r,double:!0,推荐:".list-a.size;li;a&&title;.lazy&&data-original;.bt&&Text;a&&href",一级:".list-a&&li;a&&title;.lazy&&data-original;.list-remarks&&Text;a&&href",二级:{title:"h2&&Text;.deployment&&Text",img:".lazy&&data-original",desc:".deployment&&Text",content:".ec-show&&Text",tabs:"#tag&&a",lists:".play_list_box:eq(#id)&&li"},搜索:".search-list;a&&title;.lazy&&data-original;.deployment&&Text;a&&href",searchable:2,quickSearch:0,filterable:0},短视:{title:"",host:"",url:"/channel/fyclass-fypage.html",searchUrl:"/search.html?wd=**",searchable:2,quickSearch:0,filterable:0,headers:{"User-Agent":"MOBILE_UA"},class_parse:".menu_bottom ul li;a&&Text;a&&href;.*/(.*?).html",cate_exclude:"解析|动态",play_parse:!0,lazy:r,limit:6,double:!0,推荐:".indexShowBox;ul&&li;a&&title;img&&data-src;.s1&&Text;a&&href",一级:".pic-list&&li;a&&title;img&&data-src;.s1&&Text;a&&href",二级:{title:"h1&&Text;.content-rt&&p:eq(0)&&Text",img:".img&&img&&data-src",desc:".content-rt&&p:eq(1)&&Text;.content-rt&&p:eq(2)&&Text;.content-rt&&p:eq(3)&&Text;.content-rt&&p:eq(4)&&Text;.content-rt&&p:eq(5)&&Text",content:".zkjj_a&&Text",tabs:".py-tabs&&option",lists:".player:eq(#id) li"},搜索:".sr_lists&&ul&&li;h3&&Text;img&&data-src;.int&&p:eq(0)&&Text;a&&href"},短视2:{title:"",host:"",class_name:"电影&电视剧&综艺&动漫",class_url:"1&2&3&4",searchUrl:"/index.php/ajax/suggest?mid=1&wd=**&limit=50",searchable:2,quickSearch:0,headers:{"User-Agent":"MOBILE_UA"},url:"/index.php/api/vod#type=fyclass&page=fypage",filterable:0,filter_url:"",filter:{},filter_def:{},detailUrl:"/index.php/vod/detail/id/fyid.html",play_parse:!0,lazy:r,limit:6,推荐:".list-vod.flex .public-list-box;a&&title;.lazy&&data-original;.public-list-prb&&Text;a&&href",一级:'js: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(2)--strong&&Text",img:".detail-pic&&data-original",desc:".slide-info-remarks&&Text;.slide-info-remarks:eq(1)&&Text;.slide-info-remarks:eq(2)&&Text;.slide-info:eq(1)--strong&&Text;.info-parameter&&ul&&li:eq(3)&&Text",content:"#height_limit&&Text",tabs:".anthology.wow.fadeInUp.animated&&.swiper-wrapper&&a",tab_text:"a--span&&Text",lists:".anthology-list-box:eq(#id) li"},搜索:"json:list;name;pic;;id"},采集1:{title:"",host:"",homeTid:"13",homeUrl:"/api.php/provide/vod/?ac=detail&t={{rule.homeTid}}",detailUrl:"/api.php/provide/vod/?ac=detail&ids=fyid",searchUrl:"/api.php/provide/vod/?wd=**&pg=fypage",url:"/api.php/provide/vod/?ac=detail&pg=fypage&t=fyclass",headers:{"User-Agent":"MOBILE_UA"},timeout:5e3,class_parse:"json:class;",limit:20,multi:1,searchable:2,quickSearch:1,filterable:0,play_parse:!0,parse_url:"",lazy:"js:\n if (/\\.(m3u8|mp4)/.test(input)) {\n input = { parse: 0, url: input };\n } else {\n if (rule.parse_url.startsWith('json:')) {\n let purl = rule.parse_url.replace('json:', '') + input;\n let html = request(purl);\n let json = JSON.parse(html);\n if (json.url) {\n input = { parse: 0, url: json.url };\n }\n } else {\n input = rule.parse_url + input;\n }\n }",推荐:"*",一级:"json:list;vod_name;vod_pic;vod_remarks;vod_id;vod_play_from",二级:"js:\n let html=request(input);\n html=JSON.parse(html);\n let data=html.list;\n VOD=data[0];",搜索:"*"}};return JSON.parse(JSON.stringify(e))}a();const i={muban:a(),getMubans:a};n(316),n(603),n(740),n(536),n(856),n(350),n(762),n(462),n(815),n(277),n(156);var s=globalThis.gbkTool,o=globalThis.CryptoJS,c=globalThis.JSEncrypt,f=globalThis.NODERSA,u=globalThis.pako,l=globalThis.JSON5,d=globalThis.JSONPath,h=globalThis.jinja,p=globalThis.WebAssembly,b=globalThis.TextEncoder,g=globalThis.TextDecoder,y={jinja2:function e(t,n){return h.render(t,n)},jp:function e(t,n){return d.JSONPath({path:t,json:n})[0]}};export{o as CryptoJS,c as JSEncrypt,l as JSON5,d as JSONPath,f as NODERSA,g as TextDecoder,b as TextEncoder,p as WebAssembly,y as cheerio,s as gbkTool,h as jinja,u as pako,i as 模板}; \ No newline at end of file diff --git a/cpu_iy/lib/drpy2.min.js b/cpu_iy/lib/drpy2.min.js deleted file mode 100644 index 8e28a734..00000000 --- a/cpu_iy/lib/drpy2.min.js +++ /dev/null @@ -1,3201 +0,0 @@ -import { - cheerio, - 模板 -} from "./drpy-core-lite.min.js"; -let vercode = typeof pdfl === "function" ? "drpy2.1" : "drpy2"; -const VERSION = vercode + " 3.9.52beta3 20250801"; -const UpdateInfo = [{ - date: "20250801", - title: "drpy依赖更新,使用drpy-core-lite.min.js", - version: "3.9.52beta3 20250801", - msg: ` -drpy-core.min.js 更换为更小的drpy-core-lite.min.js - - ` -}, { - date: "20250729", - title: "drpy更新,所有依赖打包成一个js文件", - version: "3.9.52beta2 20250729", - msg: ` - 1. wasm支持 - 2. 引入 TextEncoder、TextDecoder对象 - 3. 引入 WXXH 加解密库 - 4. 所有依赖打包成一个js - 5. 增加 buildQueryString - - ` -}, { - date: "20250728", - title: "drpy更新,增加tab_order线路模糊排序,优化解密算法支持文件头", - version: "3.9.52beta1 20250728", - msg: ` - 1. 增加tab_order线路模糊排序 - 2. 优化解密算法支持文件头 - 3. wasm支持 - 4. 增加 removeHeader 函数可用于清除js/py文件的头信息及所有头注释 - 5. 引入 TextEncoder、TextDecoder对象 - 6. 引入 WXXH 加解密库 - ` -}, { - date: "20241126", - title: "drpy更新,优化去广告算法", - version: "3.9.51beta6 20241126", - msg: ` - 1. 更新龙头大佬提供的去广告算法 - ` -}, { - date: "20241104", - title: "drpy更新,增加新特性", - version: "3.9.51beta5 20241104", - msg: ` - 1. rule增加 搜索验证标识 属性,可以不定义,默认为 '系统安全验证|请输入验证码' - 2. rule增加 searchNoPage 属性,可以不定义,如果定义 1 将关闭该源的搜索翻页功能,超过1页直接返回空 - ` -}]; - -function getUpdateInfo() { - return UpdateInfo.map(_o => { - _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/cpu_iy/lib/茫茫.png b/cpu_iy/lib/茫茫.png deleted file mode 100644 index 93c54a68..00000000 --- a/cpu_iy/lib/茫茫.png +++ /dev/null @@ -1 +0,0 @@ -dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eZvuW/meaXoOaenFvlrphdJywKICAgIGhvc3Q6ICdodHRwczovL3BpYW5rdS5hcGkubWd0di5jb20nLAogICAgaG9tZVVybDogJycsCiAgICBzZWFyY2hVcmw6ICdodHRwczovL21vYmlsZXNvLmJ6Lm1ndHYuY29tL21zaXRlL3NlYXJjaC92Mj9xPSoqJnBuPWZ5cGFnZSZwYz0xMCcsCiAgICBkZXRhaWxVcmw6ICdodHRwczovL3Bjd2ViLmFwaS5tZ3R2LmNvbS9lcGlzb2RlL2xpc3Q/cGFnZT0xJnNpemU9NTAmdmlkZW9faWQ9ZnlpZCcsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcXVpY2tTZWFyY2g6IDAsCiAgICBmaWx0ZXJhYmxlOiAxLAogICAgbXVsdGk6IDEsCiAgICB1cmw6ICcvcmlkZXIvbGlzdC9wY3dlYi92Mz9wbGF0Zm9ybT1wY3dlYiZjaGFubmVsSWQ9ZnljbGFzcyZwbj1meXBhZ2UmcGM9ODAmaHVkb25nPTEmX3N1cHBvcnQ9MTAwMDAwMDAma2luZD1hMSZhcmVhPWExJywKICAgIGZpbHRlcl91cmw6ICd5ZWFyPXt7ZmwueWVhciBvciAiYWxsIn19JnNvcnQ9e3tmbC5zb3J0IG9yICJhbGwifX0mY2hhcmdlSW5mbz17e2ZsLmNoYXJnZUluZm8gb3IgImFsbCJ9fScsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnUENfVUEnCiAgICB9LAogICAgdGltZW91dDogNTAwMCwKICAgIGNsYXNzX25hbWU6ICdcdTgzMmJcdTgzMmJcdTc1MzVcdTVmNzFcdTAwMjZcdTgzMmJcdTgzMmJcdTc1MzVcdTg5YzZcdTUyNjdcdTAwMjZcdTgzMmJcdTgzMmJcdTdlZmNcdTgyN2FcdTAwMjZcdTgzMmJcdTgzMmJcdTUyYThcdTZmMmJcdTAwMjZcdTgzMmJcdTgzMmJcdTdlYWFcdTVmNTVcdTcyNDdcdTAwMjZcdTgzMmJcdTgzMmJcdTY1NTlcdTgwYjJcdTAwMjZcdTgzMmJcdTgzMmJcdTVjMTFcdTUxM2YnLAogICAgY2xhc3NfdXJsOiAnXHUwMDMzXHUwMDI2XHUwMDMyXHUwMDI2XHUwMDMxXHUwMDI2XHUwMDM1XHUwMDMwXHUwMDI2XHUwMDM1XHUwMDMxXHUwMDI2XHUwMDMxXHUwMDMxXHUwMDM1XHUwMDI2XHUwMDMxXHUwMDMwJywKICAgIGZpbHRlcjogewogICAgICAgICIxIjogZ2V0Q29tbW9uRmlsdGVyKCksCiAgICAgICAgIjIiOiBnZXRDb21tb25GaWx0ZXIoKSwKICAgICAgICAiMyI6IGdldENvbW1vbkZpbHRlcigpLAogICAgICAgICI1MCI6IGdldENvbW1vbkZpbHRlcigpLAogICAgICAgICI1MSI6IGdldENvbW1vbkZpbHRlcigpLAogICAgICAgICIxMTUiOiBnZXRDb21tb25GaWx0ZXIoKQogICAgfSwKICAgIGxpbWl0OiAyMCwKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBsYXp5OiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIGxldCBhcGkgPSAiaHR0cDovLzEuOTQuMjQ0LjIxNDo4ODg5L2dldHVybD91cmw9IiArIGlucHV0LnNwbGl0KCI/IilbMF07CiAgICAgICAgICAgIGNvbnNvbGUubG9nKGFwaSk7CiAgICAgICAgICAgIGxldCByZXNwb25zZSA9IGZldGNoKGFwaSwgewogICAgICAgICAgICAgICAgbWV0aG9kOiAnZ2V0JywKICAgICAgICAgICAgICAgIGhlYWRlcnM6IHsKICAgICAgICAgICAgICAgICAgICAnVXNlci1BZ2VudCc6ICdva2h0dHAvMy4xNC45JywKICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGxldCBiYXRhID0gSlNPTi5wYXJzZShyZXNwb25zZSk7CiAgICAgICAgICAgIGlucHV0ID0gewogICAgICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgICAgICB1cmw6IGJhdGEudXJsLmluY2x1ZGVzKCJtZ3R2IikgPyBiYXRhLnVybCA6IGlucHV0LnNwbGl0KCI/IilbMF0sCiAgICAgICAgICAgICAgICBqeDogYmF0YS51cmwuaW5jbHVkZXMoIm1ndHYiKSA/IDAgOiAxLAogICAgICAgICAgICAgICAgZGFubWFrdTogImh0dHA6Ly8xMjcuMC4wLjE6OTk3OC9wcm94eT9kbz1kYW5tdSZzaXRlPWpzJnVybD0iICsgaW5wdXQuc3BsaXQoIj8iKVswXQogICAgICAgICAgICB9OwogICAgICAgIH0gY2F0Y2ggewogICAgICAgICAgICBpbnB1dCA9IHsKICAgICAgICAgICAgICAgIHBhcnNlOiAwLAogICAgICAgICAgICAgICAgdXJsOiBpbnB1dC5zcGxpdCgiPyIpWzBdLAogICAgICAgICAgICAgICAgang6IDEsCiAgICAgICAgICAgICAgICBkYW5tYWt1OiAiaHR0cDovLzEyNy4wLjAuMTo5OTc4L3Byb3h5P2RvPWRhbm11JnNpdGU9anMmdXJsPSIgKyBpbnB1dC5zcGxpdCgiPyIpWzBdCiAgICAgICAgICAgIH07CiAgICAgICAgfQogICAgfSksCiAgICDkuIDnuqc6ICdqc29uOmRhdGEuaGl0RG9jczt0aXRsZTtpbWc7dXBkYXRlSW5mb3x8cmlnaHRDb3JuZXIudGV4dDtwbGF5UGFydElkJywKICAgIOS6jOe6pzogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBmZXRjaF9wYXJhbXMuaGVhZGVycy5SZWZlcmVyID0gImh0dHBzOi8vd3d3Lm1ndHYuY29tIjsKICAgICAgICBmZXRjaF9wYXJhbXMuaGVhZGVyc1siVXNlci1BZ2VudCJdID0gTU9CSUxFX1VBOwoKICAgICAgICBsZXQgdmlkZW9JZCA9IGlucHV0LnNwbGl0KCd2aWRlb19pZD0nKVsxXS5zcGxpdCgnJicpWzBdOwogICAgICAgIGxldCBpbmZvVXJsID0gYGh0dHBzOi8vcGN3ZWIuYXBpLm1ndHYuY29tL3ZpZGVvL2luZm8/YWxsb3dlZFJDPTEmdmlkPSR7dmlkZW9JZH0mdHlwZT1iJl9zdXBwb3J0PTEwMDAwMDAwYDsKICAgICAgICBsZXQgaW5mb0RhdGEgPSBKU09OLnBhcnNlKHJlcXVlc3QoaW5mb1VybCkpOwoKICAgICAgICBpZiAoaW5mb0RhdGEgJiYgaW5mb0RhdGEuZGF0YSAmJiBpbmZvRGF0YS5kYXRhLmluZm8pIHsKICAgICAgICAgICAgbGV0IGRldGFpbCA9IGluZm9EYXRhLmRhdGEuaW5mby5kZXRhaWwgfHwge307CiAgICAgICAgICAgIFZPRCA9IHsKICAgICAgICAgICAgICAgIHZvZF9uYW1lOiBpbmZvRGF0YS5kYXRhLmluZm8udGl0bGUgfHwgIiIsCiAgICAgICAgICAgICAgICB0eXBlX25hbWU6IGRldGFpbC5raW5kIHx8ICIiLAogICAgICAgICAgICAgICAgdm9kX3llYXI6IGRldGFpbC5yZWxlYXNlVGltZSB8fCAiIiwKICAgICAgICAgICAgICAgIHZvZF9hcmVhOiBkZXRhaWwuYXJlYSB8fCAiIiwKICAgICAgICAgICAgICAgIHZvZF9hY3RvcjogZGV0YWlsLmxlYWRlciB8fCAiIiwKICAgICAgICAgICAgICAgIHZvZF9kaXJlY3RvcjogZGV0YWlsLmRpcmVjdG9yIHx8ICIiLAogICAgICAgICAgICAgICAgdm9kX2NvbnRlbnQ6IGRldGFpbC5zdG9yeSB8fCAiIiwKICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiBkZXRhaWwudXBkYXRlSW5mbyB8fCAiIgogICAgICAgICAgICB9OwogICAgICAgICAgICBpZiAoZGV0YWlsLmltZykgVk9ELnZvZF9waWMgPSBkZXRhaWwuaW1nOwogICAgICAgIH0KCiAgICAgICAgbGV0IGQgPSBbXTsKICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QoaW5wdXQpOwogICAgICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShodG1sKTsKICAgICAgICBsZXQgaG9zdCA9ICJodHRwczovL3d3dy5tZ3R2LmNvbSI7CiAgICAgICAgbGV0IG91cmwgPSBqc29uLmRhdGEubGlzdC5sZW5ndGggPiAwID8ganNvbi5kYXRhLmxpc3RbMF0udXJsIDoganNvbi5kYXRhLnNlcmllc1swXS51cmw7CiAgICAgICAgaWYgKCEvXmh0dHAvLnRlc3Qob3VybCkpIG91cmwgPSBob3N0ICsgb3VybDsKCiAgICAgICAgZmV0Y2hfcGFyYW1zLmhlYWRlcnNbIlVzZXItQWdlbnQiXSA9IE1PQklMRV9VQTsKICAgICAgICBodG1sID0gcmVxdWVzdChvdXJsKTsKICAgICAgICBpZiAoaHRtbC5pbmNsdWRlcygid2luZG93LmxvY2F0aW9uID0iKSkgewogICAgICAgICAgICBvdXJsID0gcGRmaChodG1sLCAibWV0YVtodHRwLWVxdWl2PXJlZnJlc2hdJiZjb250ZW50Iikuc3BsaXQoInVybD0iKVsxXTsKICAgICAgICAgICAgaHRtbCA9IHJlcXVlc3Qob3VybCk7CiAgICAgICAgfQoKICAgICAgICB0cnkgewogICAgICAgICAgICBsZXQgZGV0YWlscyA9IHBkZmgoaHRtbCwgIi5tLWRldGFpbHMmJkh0bWwiKS5yZXBsYWNlKC9oMT4vLCAiaDY+IikucmVwbGFjZSgvZGl2L2csICJiciIpOwogICAgICAgICAgICBsZXQgYWN0b3IgPSAiIiwKICAgICAgICAgICAgICAgIGRpcmVjdG9yID0gIiIsCiAgICAgICAgICAgICAgICB0aW1lID0gIiI7CiAgICAgICAgICAgIGlmICgv5pKt5Ye65pe26Ze0Ly50ZXN0KGRldGFpbHMpKSB7CiAgICAgICAgICAgICAgICBhY3RvciA9IHBkZmgoaHRtbCwgInA6ZXEoNSkmJlRleHQiKS5zdWJzdHIoMCwgMjUpOwogICAgICAgICAgICAgICAgZGlyZWN0b3IgPSBwZGZoKGh0bWwsICJwOmVxKDQpJiZUZXh0Iik7CiAgICAgICAgICAgICAgICB0aW1lID0gcGRmaChodG1sLCAicDplcSgzKSYmVGV4dCIpOwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgYWN0b3IgPSBwZGZoKGh0bWwsICJwOmVxKDQpJiZUZXh0Iikuc3Vic3RyKDAsIDI1KTsKICAgICAgICAgICAgICAgIGRpcmVjdG9yID0gcGRmaChodG1sLCAicDplcSgzKSYmVGV4dCIpOwogICAgICAgICAgICAgICAgdGltZSA9ICLlt7Llroznu5MiOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGxldCBfaW1nID0gcGQoaHRtbCwgIi52aWRlby1pbWcmJmltZyYmc3JjIik7CiAgICAgICAgICAgIGxldCBKSiA9IHBkZmgoaHRtbCwgIi5kZXNjJiZUZXh0Iikuc3BsaXQoIueJm+mprOeugOS7i++8miIpWzFdOwogICAgICAgICAgICBWT0Qudm9kX25hbWUgPSBWT0Qudm9kX25hbWUgfHwgcGRmaChodG1sLCAiLnZ0LXR4dCYmVGV4dCIpOwogICAgICAgICAgICBWT0QudHlwZV9uYW1lID0gVk9ELnR5cGVfbmFtZSB8fCBwZGZoKGh0bWwsICJwOmVxKDApJiZUZXh0Iikuc3Vic3RyKDAsIDYpOwogICAgICAgICAgICBWT0Qudm9kX2FyZWEgPSBWT0Qudm9kX2FyZWEgfHwgcGRmaChodG1sLCAicDplcSgxKSYmVGV4dCIpOwogICAgICAgICAgICBWT0Qudm9kX2FjdG9yID0gVk9ELnZvZF9hY3RvciB8fCBhY3RvcjsKICAgICAgICAgICAgVk9ELnZvZF9kaXJlY3RvciA9IFZPRC52b2RfZGlyZWN0b3IgfHwgZGlyZWN0b3I7CiAgICAgICAgICAgIFZPRC52b2RfcmVtYXJrcyA9IFZPRC52b2RfcmVtYXJrcyB8fCB0aW1lOwogICAgICAgICAgICBWT0Qudm9kX3BpYyA9IFZPRC52b2RfcGljIHx8IF9pbWc7CiAgICAgICAgICAgIFZPRC52b2RfY29udGVudCA9IFZPRC52b2RfY29udGVudCB8fCBKSjsKICAgICAgICAgICAgaWYgKCFWT0Qudm9kX25hbWUpIFZPRC52b2RfbmFtZSA9IFZPRC50eXBlX25hbWU7CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICBsb2coIuiOt+WPluW9seeJh+S/oeaBr+WPkeeUn+mUmeivrzoiICsgZS5tZXNzYWdlKTsKICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIGdldFJqcGcoaW1nVXJsLCB4cykgewogICAgICAgICAgICB4cyA9IHhzIHx8IDM7CiAgICAgICAgICAgIGxldCBwaWNTaXplID0gL2pwZ18vLnRlc3QoaW1nVXJsKSA/IGltZ1VybC5zcGxpdCgianBnXyIpWzFdLnNwbGl0KCIuIilbMF0gOiBmYWxzZTsKICAgICAgICAgICAgbGV0IHJqcGcgPSBmYWxzZTsKICAgICAgICAgICAgaWYgKHBpY1NpemUpIHsKICAgICAgICAgICAgICAgIGxldCBhID0gcGFyc2VJbnQocGljU2l6ZS5zcGxpdCgieCIpWzBdKSAqIHhzOwogICAgICAgICAgICAgICAgbGV0IGIgPSBwYXJzZUludChwaWNTaXplLnNwbGl0KCJ4IilbMV0pICogeHM7CiAgICAgICAgICAgICAgICByanBnID0gYSArICJ4IiArIGIgKyAiLmpwZyI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIC9qcGdfLy50ZXN0KGltZ1VybCkgJiYgcmpwZyA/IGltZ1VybC5yZXBsYWNlKGltZ1VybC5zcGxpdCgianBnXyIpWzFdLCByanBnKSA6IGltZ1VybDsKICAgICAgICB9CgogICAgICAgIGlmIChqc29uLmRhdGEudG90YWwgPT09IDEgJiYganNvbi5kYXRhLmxpc3QubGVuZ3RoID09PSAxKSB7CiAgICAgICAgICAgIGxldCBkYXRhID0ganNvbi5kYXRhLmxpc3RbMF07CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB0aXRsZTogZGF0YS50NCwKICAgICAgICAgICAgICAgIGRlc2M6IGRhdGEudDIsCiAgICAgICAgICAgICAgICBwaWNfdXJsOiBnZXRSanBnKGRhdGEuaW1nKSwKICAgICAgICAgICAgICAgIHVybDogImh0dHBzOi8vd3d3Lm1ndHYuY29tIiArIGRhdGEudXJsCiAgICAgICAgICAgIH0pOwogICAgICAgIH0gZWxzZSBpZiAoanNvbi5kYXRhLmxpc3QubGVuZ3RoID4gMSkgewogICAgICAgICAgICBmb3IgKGxldCBpID0gMTsgaSA8PSBqc29uLmRhdGEudG90YWxfcGFnZTsgaSsrKSB7CiAgICAgICAgICAgICAgICBpZiAoaSA+IDEpIGpzb24gPSBKU09OLnBhcnNlKGZldGNoKGlucHV0LnJlcGxhY2UoInBhZ2U9MSIsICJwYWdlPSIgKyBpKSwge30pKTsKICAgICAgICAgICAgICAgIGpzb24uZGF0YS5saXN0LmZvckVhY2goZnVuY3Rpb24oZGF0YSkgewogICAgICAgICAgICAgICAgICAgIGlmIChkYXRhLmlzSW50YWN0ID09ICIxIikgewogICAgICAgICAgICAgICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGRhdGEudDQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjOiBkYXRhLnQyLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgcGljX3VybDogZ2V0UmpwZyhkYXRhLmltZyksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6ICJodHRwczovL3d3dy5tZ3R2LmNvbSIgKyBkYXRhLnVybAogICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHByaW50KGlucHV0ICsgIuaaguaXoOeJh+a6kCIpOwogICAgICAgIH0KICAgICAgICBWT0Qudm9kX3BsYXlfZnJvbSA9ICJcdTU5MjlcdTc5NWVcdTAwNDlcdTAwNTlcdTIwMTRcdTIwMTRcdTgzMmJcdTgzMmIiOwogICAgICAgIFZPRC52b2RfcGxheV91cmwgPSBkLm1hcChmdW5jdGlvbihpdCkgewogICAgICAgICAgICByZXR1cm4gaXQudGl0bGUgKyAiJCIgKyBpdC51cmw7CiAgICAgICAgfSkuam9pbigiIyIpOwogICAgICAgIHNldFJlc3VsdChkKTsKICAgIH0pLAogICAg5pCc57SiOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGZldGNoX3BhcmFtcy5oZWFkZXJzLlJlZmVyZXIgPSAiaHR0cHM6Ly93d3cubWd0di5jb20iOwogICAgICAgIGZldGNoX3BhcmFtcy5oZWFkZXJzWyJVc2VyLUFnZW50Il0gPSBNT0JJTEVfVUE7CiAgICAgICAgbGV0IGQgPSBbXTsKICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QoaW5wdXQpOwogICAgICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShodG1sKTsKICAgICAgICBqc29uLmRhdGEuY29udGVudHMuZm9yRWFjaChmdW5jdGlvbihkYXRhKSB7CiAgICAgICAgICAgIGlmIChkYXRhLnR5cGUgJiYgZGF0YS50eXBlID09ICdtZWRpYScpIHsKICAgICAgICAgICAgICAgIGxldCBpdGVtID0gZGF0YS5kYXRhWzBdOwogICAgICAgICAgICAgICAgaWYgKGl0ZW0uc291cmNlID09PSAiaW1nbyIpIHsKICAgICAgICAgICAgICAgICAgICBsZXQgZnljbGFzcyA9ICcnOwogICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZ5Y2xhc3MgPSBpdGVtLnJwdC5tYXRjaCgvaWR4PSguKj8pJi8pWzFdICsgJyQnOwogICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgbG9nKGUubWVzc2FnZSk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBpdGVtLnRpdGxlLnJlcGxhY2UoLzxCPnw8XC9CPi9nLCAnJyksCiAgICAgICAgICAgICAgICAgICAgICAgIGltZzogaXRlbS5pbWcgfHwgJycsCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnLAogICAgICAgICAgICAgICAgICAgICAgICBkZXNjOiBpdGVtLmRlc2Muam9pbignLCcpLAogICAgICAgICAgICAgICAgICAgICAgICB1cmw6IGZ5Y2xhc3MgKyBpdGVtLnVybC5tYXRjaCgvLipcLyguKj8pXC5odG1sLylbMV0KICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHNldFJlc3VsdChkKTsKICAgIH0pCn07CgpmdW5jdGlvbiBnZXRDb21tb25GaWx0ZXIoKSB7CiAgICByZXR1cm4gW3sKICAgICAgICAia2V5IjogImNoYXJnZUluZm8iLAogICAgICAgICJuYW1lIjogIuS7mOi0ueexu+WeiyIsCiAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICJhbGwiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJuIjogIuWFjei0uSIsCiAgICAgICAgICAgICAgICAidiI6ICJiMSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIm4iOiAidmlwIiwKICAgICAgICAgICAgICAgICJ2IjogImIyIgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAibiI6ICJWSVDnlKjliLgiLAogICAgICAgICAgICAgICAgInYiOiAiYjMiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJuIjogIuS7mOi0ueeCueaSrSIsCiAgICAgICAgICAgICAgICAidiI6ICJiNCIKICAgICAgICAgICAgfQogICAgICAgIF0KICAgIH0sIHsKICAgICAgICAia2V5IjogInNvcnQiLAogICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICJjMSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogImMyIgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAibiI6ICLnn6XkuY7pq5jliIYiLAogICAgICAgICAgICAgICAgInYiOiAiYzQiCiAgICAgICAgICAgIH0KICAgICAgICBdCiAgICB9LCB7CiAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiYWxsIgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjYiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTQiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMyIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEyIgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTEiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMCIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA5IgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDgiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDciLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNyIKICAgICAgICAgICAgfSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA2IgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDUiCiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNCIKICAgICAgICAgICAgfQogICAgICAgIF0KICAgIH1dOwp9 \ No newline at end of file diff --git a/cpu_iy/lib/藤藤.png b/cpu_iy/lib/藤藤.png deleted file mode 100644 index faa2b9de..00000000 --- a/cpu_iy/lib/藤藤.png +++ /dev/null @@ -1 +0,0 @@ -dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+iFvuiur+inhumikScsCiAgICBob3N0OiAnaHR0cHM6Ly92LnFxLmNvbScsCiAgICBob21lVXJsOiAnL3gvYnUvcGFnZXNoZWV0L2xpc3Q/X2FsbD0xJmFwcGVuZD0xJmNoYW5uZWw9Y2FydG9vbiZsaXN0cGFnZT0xJm9mZnNldD0wJnBhZ2VzaXplPTIxJmlhcmVhPS0xJnNvcnQ9MTgnLAogICAgZGV0YWlsVXJsOiAnaHR0cHM6Ly9ub2RlLnZpZGVvLnFxLmNvbS94L2FwaS9mbG9hdF92aW5mbzI/Y2lkPWZ5aWQnLAogICAgc2VhcmNoVXJsOiAnKionLAogICAgc2VhcmNoYWJsZTogMiwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBtdWx0aTogMSwKICAgIHVybDogJy94L2J1L3BhZ2VzaGVldC9saXN0P19hbGw9MSZhcHBlbmQ9MSZjaGFubmVsPWZ5Y2xhc3MmbGlzdHBhZ2U9MSZvZmZzZXQ9KChmeXBhZ2UtMSkqMjEpJnBhZ2VzaXplPTIxJmlhcmVhPS0xJywKICAgIGZpbHRlcl91cmw6ICdzb3J0PXt7Zmwuc29ydCBvciA3NX19Jml5ZWFyPXt7ZmwuaXllYXJ9fSZ5ZWFyPXt7ZmwueWVhcn19Jml0eXBlPXt7ZmwudHlwZX19JmlmZWF0dXJlPXt7ZmwuZmVhdHVyZX19JmlhcmVhPXt7ZmwuYXJlYX19Jml0cmFpbGVyPXt7ZmwuaXRyYWlsZXJ9fSZnZW5kZXI9e3tmbC5zZXh9fScsCiAgICBmaWx0ZXJfdXJsOiAnc29ydD17e2ZsLnNvcnQgb3IgNzV9fSZpeWVhcj17e2ZsLml5ZWFyfX0meWVhcj17e2ZsLnllYXJ9fSZpdHlwZT17e2ZsLnR5cGV9fSZpZmVhdHVyZT17e2ZsLmZlYXR1cmV9fSZpYXJlYT17e2ZsLmFyZWF9fSZpdHJhaWxlcj17e2ZsLml0cmFpbGVyfX0mZ2VuZGVyPXt7Zmwuc2V4fX0nLAogICAgZmlsdGVyOiB7CiAgICAgICAgImNob2ljZSI6IFt7CiAgICAgICAgICAgICJrZXkiOiAic29ydCIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDng60iLAogICAgICAgICAgICAgICAgInYiOiAiNzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICI4MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aW96K+EIiwKICAgICAgICAgICAgICAgICJ2IjogIjgxIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJpeWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7oyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiLTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgInR2IjogW3sKICAgICAgICAgICAgImtleSI6ICJzb3J0IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOeDrSIsCiAgICAgICAgICAgICAgICAidiI6ICI3NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5pawIiwKICAgICAgICAgICAgICAgICJ2IjogIjc5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpb3or4QiLAogICAgICAgICAgICAgICAgInYiOiAiMTYiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImZlYXR1cmUiLAogICAgICAgICAgICAibmFtZSI6ICLnsbvlnosiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIi0xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLniLHmg4UiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y+k6KOFIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaCrOeWkSIsCiAgICAgICAgICAgICAgICAidiI6ICIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpg73luIIiLAogICAgICAgICAgICAgICAgInYiOiAiNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5a625bqtIiwKICAgICAgICAgICAgICAgICJ2IjogIjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWWnOWJpyIsCiAgICAgICAgICAgICAgICAidiI6ICI2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkvKDlpYciLAogICAgICAgICAgICAgICAgInYiOiAiNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5q2m5L6gIiwKICAgICAgICAgICAgICAgICJ2IjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGm+aXhSIsCiAgICAgICAgICAgICAgICAidiI6ICI5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnYPosIsiLAogICAgICAgICAgICAgICAgInYiOiAiMTAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumdqeWRvSIsCiAgICAgICAgICAgICAgICAidiI6ICIxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi546w5a6eIiwKICAgICAgICAgICAgICAgICJ2IjogIjEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpnZLmmKUiLAogICAgICAgICAgICAgICAgInYiOiAiMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueMjuWlhyIsCiAgICAgICAgICAgICAgICAidiI6ICIxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56eR5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIjE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnq57mioAiLAogICAgICAgICAgICAgICAgInYiOiAiMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueOhOW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICIxOCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiaXllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIi0xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICJtb3ZpZSI6IFt7CiAgICAgICAgICAgICJrZXkiOiAic29ydCIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDng60iLAogICAgICAgICAgICAgICAgInYiOiAiNzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICI4MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aW96K+EIiwKICAgICAgICAgICAgICAgICJ2IjogIjgxIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ0eXBlIiwKICAgICAgICAgICAgIm5hbWUiOiAi57G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICItMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54qv572qIiwKICAgICAgICAgICAgICAgICJ2IjogIjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKseW/lyIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLllpzliaciLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDA0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLng63ooYAiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDYxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgqznlpEiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLniLHmg4UiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDA1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnp5HlubsiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgZDmgJYiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliqjnlLsiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmiJjkuokiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDA2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlrrbluq0iLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliafmg4UiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpYflubsiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmrabkvqAiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDExIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljoblj7IiLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLogIHniYciLAogICAgICAgICAgICAgICAgInYiOiAiMTAwMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLopb/pg6giLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K6w5b2V54mHIiwKICAgICAgICAgICAgICAgICJ2IjogIjEwMDAyMCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7oyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiLTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgInZhcmlldHkiOiBbewogICAgICAgICAgICAia2V5IjogInNvcnQiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogIjc1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDmlrAiLAogICAgICAgICAgICAgICAgInYiOiAiMjMiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogIml5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05LujIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICItMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNSIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiY2FydG9vbiI6IFt7CiAgICAgICAgICAgICJrZXkiOiAic29ydCIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDng60iLAogICAgICAgICAgICAgICAgInYiOiAiNzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICI4MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aW96K+EIiwKICAgICAgICAgICAgICAgICJ2IjogIjgxIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICItMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaF5ZywIiwKICAgICAgICAgICAgICAgICJ2IjogIjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeacrCIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmrKfnvo4iLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YW25LuWIiwKICAgICAgICAgICAgICAgICJ2IjogIjQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInR5cGUiLAogICAgICAgICAgICAibmFtZSI6ICLnsbvlnosiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIi0xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnjoTlubsiLAogICAgICAgICAgICAgICAgInYiOiAiOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56eR5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuatpuS+oCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaS6ZmpIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOaWlyIsCiAgICAgICAgICAgICAgICAidiI6ICI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmkJ7nrJEiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oGL54ixIiwKICAgICAgICAgICAgICAgICJ2IjogIjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumtlOW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICI2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnq57mioAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaCrOeWkSIsCiAgICAgICAgICAgICAgICAidiI6ICIxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5bi4IiwKICAgICAgICAgICAgICAgICJ2IjogIjE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmoKHlm60iLAogICAgICAgICAgICAgICAgInYiOiAiMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuecn+S6uiIsCiAgICAgICAgICAgICAgICAidiI6ICIxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5o6o55CGIiwKICAgICAgICAgICAgICAgICJ2IjogIjE0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljoblj7IiLAogICAgICAgICAgICAgICAgInYiOiAiMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue7j+WFuCIsCiAgICAgICAgICAgICAgICAidiI6ICIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAiMTIiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogIml5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05LujIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICItMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNSIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiY2hpbGQiOiBbewogICAgICAgICAgICAia2V5IjogInNvcnQiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogIjc1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDmlrAiLAogICAgICAgICAgICAgICAgInYiOiAiNzYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWlveivhCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAic2V4IiwKICAgICAgICAgICAgIm5hbWUiOiAi5oCn5YirIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICItMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWz5a2pIiwKICAgICAgICAgICAgICAgICJ2IjogIjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueUt+WtqSIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICItMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaF5ZywIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeacrCIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiaXllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTpvoTmrrUiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIi0xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIwLTPlsoEiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNC025bKBIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjctOeWygSIsCiAgICAgICAgICAgICAgICAidiI6ICIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIxMOWygeS7peS4iiIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhajlubTpvoTmrrUiLAogICAgICAgICAgICAgICAgInYiOiAiNyIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiZG9jbyI6IFt7CiAgICAgICAgICAgICJrZXkiOiAic29ydCIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDng60iLAogICAgICAgICAgICAgICAgInYiOiAiNzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICI3NCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiaXRyYWlsZXIiLAogICAgICAgICAgICAibmFtZSI6ICLlh7rlk4HmlrkiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIi0xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJCQkMiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zu95a625Zyw55CGIiwKICAgICAgICAgICAgICAgICJ2IjogIjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkhCTyIsCiAgICAgICAgICAgICAgICAidiI6ICIzMTc1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJOSEsiLAogICAgICAgICAgICAgICAgInYiOiAiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y6G5Y+y6aKR6YGTIiwKICAgICAgICAgICAgICAgICJ2IjogIjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIklUViIsCiAgICAgICAgICAgICAgICAidiI6ICIzNTMwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmjqLntKLpopHpgZMiLAogICAgICAgICAgICAgICAgInYiOiAiMzE3NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiWkRGIiwKICAgICAgICAgICAgICAgICJ2IjogIjMxNzYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiFvuiur+iHquWItiIsCiAgICAgICAgICAgICAgICAidiI6ICIxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ZCI5L2c5py65p6EIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuS7liIsCiAgICAgICAgICAgICAgICAidiI6ICI1IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ0eXBlIiwKICAgICAgICAgICAgIm5hbWUiOiAi57G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICItMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Ieq54S2IiwKICAgICAgICAgICAgICAgICJ2IjogIjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue+jumjnyIsCiAgICAgICAgICAgICAgICAidiI6ICIxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56S+5LyaIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6uuaWhyIsCiAgICAgICAgICAgICAgICAidiI6ICI2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljoblj7IiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yab5LqLIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuenkeaKgCIsCiAgICAgICAgICAgICAgICAidiI6ICI4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLotKLnu48iLAogICAgICAgICAgICAgICAgInYiOiAiMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaOoumZqSIsCiAgICAgICAgICAgICAgICAidiI6ICIxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi572q5qGIIiwKICAgICAgICAgICAgICAgICJ2IjogIjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuernuaKgCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5peF5ri4IiwKICAgICAgICAgICAgICAgICJ2IjogIjExIgogICAgICAgICAgICB9XQogICAgICAgIH1dCiAgICB9LAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ1BDX1VBJwogICAgfSwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBjYXRlX2V4Y2x1ZGU6ICfkvJrlkZh85ri45oiPfOWFqOmDqCcsCiAgICBjbGFzc19uYW1lOiAnXHU4NWU0XHU4NWU0XHU1MmE4XHU2ZjJiXHUwMDI2XHU4NWU0XHU4NWU0XHU3NTM1XHU1ZjcxXHUwMDI2XHU4NWU0XHU4NWU0XHU3NTM1XHU4OWM2XHU1MjY3XHUwMDI2XHU4NWU0XHU4NWU0XHU3ZWZjXHU4MjdhXHUwMDI2XHU4NWU0XHU4NWU0XHU1YzExXHU1MTNmXHUwMDI2XHU4NWU0XHU4NWU0XHU3ZWFhXHU1ZjU1XHU3MjQ3JywKICAgIGNsYXNzX3VybDogJ1x1MDA2M1x1MDA2MVx1MDA3Mlx1MDA3NFx1MDA2Zlx1MDA2Zlx1MDA2ZVx1MDAyNlx1MDA2ZFx1MDA2Zlx1MDA3Nlx1MDA2OVx1MDA2NVx1MDAyNlx1MDA3NFx1MDA3Nlx1MDAyNlx1MDA3Nlx1MDA2MVx1MDA3Mlx1MDA2OVx1MDA2NVx1MDA3NFx1MDA3OVx1MDAyNlx1MDA2M1x1MDA2OFx1MDA2OVx1MDA2Y1x1MDA2NFx1MDAyNlx1MDA2NFx1MDA2Zlx1MDA2M1x1MDA2ZicsCiAgICBsaW1pdDogMjAsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICB0cnkgewogICAgICAgICAgICBsZXQgYXBpPSJodHRwOi8vMS45NC4yNDQuMjE0Ojg4ODkvZ2V0dXJsP3VybD0iICsgaW5wdXQuc3BsaXQoIj8iKVswXTsKICAgICAgICAgICAgY29uc29sZS5sb2coYXBpKTsKICAgICAgICAgICAgbGV0IHJlc3BvbnNlID0gZmV0Y2goYXBpLCB7CiAgICAgICAgICAgICAgICBtZXRob2Q6ICdnZXQnLAogICAgICAgICAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjE0LjknLAogICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgbGV0IGJhdGEgPSBKU09OLnBhcnNlKHJlc3BvbnNlKTsKICAgICAgICAgICAgbG9nKGJhdGEpCiAgICAgICAgICAgIGlmIChiYXRhLnVybC5pbmNsdWRlcygiaHR0cCIpKSB7CiAgICAgICAgICAgICAgICBpbnB1dCA9IHsKICAgICAgICAgICAgICAgICAgICBoZWFkZXI6IHsKICAgICAgICAgICAgICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAiIgogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgICAgICAgICAgdXJsOiBiYXRhLnVybCwKICAgICAgICAgICAgICAgICAgICBqeDogMCwKICAgICAgICAgICAgICAgICAgICBkYW5tYWt1OiAnaHR0cDovLzEyNy4wLjAuMTo5OTc4L3Byb3h5P2RvPWRhbm11JnNpdGU9anMmdXJsPScgKyBpbnB1dC5zcGxpdCgiPyIpWzBdCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgaW5wdXQgPSB7CiAgICAgICAgICAgICAgICAgICAgaGVhZGVyOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICdVc2VyLUFnZW50JzogIiIKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIHBhcnNlOiAwLAogICAgICAgICAgICAgICAgICAgIHVybDogaW5wdXQuc3BsaXQoIj8iKVswXSwKICAgICAgICAgICAgICAgICAgICBqeDogMSwKICAgICAgICAgICAgICAgICAgICBkYW5tYWt1OiAnaHR0cDovLzEyNy4wLjAuMTo5OTc4L3Byb3h5P2RvPWRhbm11JnNpdGU9anMmdXJsPScgKyBpbnB1dC5zcGxpdCgiPyIpWzBdCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgIGlucHV0ID0gewogICAgICAgICAgICAgICAgaGVhZGVyOiB7CiAgICAgICAgICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAiIgogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIHBhcnNlOiAwLAogICAgICAgICAgICAgICAgdXJsOiBpbnB1dC5zcGxpdCgiPyIpWzBdLAogICAgICAgICAgICAgICAgang6IDEsCiAgICAgICAgICAgICAgICBkYW5tYWt1OiAnaHR0cDovLzEyNy4wLjAuMTo5OTc4L3Byb3h5P2RvPWRhbm11JnNpdGU9anMmdXJsPScgKyBpbnB1dC5zcGxpdCgiPyIpWzBdCiAgICAgICAgICAgIH07CiAgICAgICAgfQogICAgfSksCgogICAg5o6o6I2QOiAnLmxpc3RfaXRlbTtpbWcmJmFsdDtpbWcmJnNyYzthJiZUZXh0O2EmJmRhdGEtZmxvYXQnLAogICAg5LiA57qnOiAnLmxpc3RfaXRlbTtpbWcmJmFsdDtpbWcmJnNyYzthJiZUZXh0O2EmJmRhdGEtZmxvYXQnLAogICAg5LqM57qnOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIFZPRCA9IHt9OwogICAgICAgIGxldCBkID0gW107CiAgICAgICAgbGV0IHZpZGVvX2xpc3QgPSBbXTsKICAgICAgICBsZXQgdmlkZW9fbGlzdHMgPSBbXTsKICAgICAgICBsZXQgUVpPdXRwdXRKc29uOwogICAgICAgIGxldCBodG1sID0gZmV0Y2goaW5wdXQsIGZldGNoX3BhcmFtcyk7CiAgICAgICAgbGV0IHNvdXJjZUlkID0gL2dldF9wbGF5c291cmNlLy50ZXN0KGlucHV0KSA/IGlucHV0Lm1hdGNoKC9pZD0oXGQqPykmLylbMV0gOiBpbnB1dC5zcGxpdCgiY2lkPSIpWzFdOwogICAgICAgIGxldCBjaWQgPSBzb3VyY2VJZDsKICAgICAgICBsZXQgZGV0YWlsVXJsID0gImh0dHBzOi8vdi5xcS5jb20vZGV0YWlsL20vIiArIGNpZCArICIuaHRtbCI7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgbGV0IGpzb24gPSBKU09OLnBhcnNlKGh0bWwpOwogICAgICAgICAgICBWT0QgPSB7CiAgICAgICAgICAgICAgICB2b2RfdXJsOiBpbnB1dCwKICAgICAgICAgICAgICAgIHZvZF9uYW1lOiBqc29uLmMudGl0bGUsCiAgICAgICAgICAgICAgICB0eXBlX25hbWU6IGpzb24udHlwLmpvaW4oIiwiKSwKICAgICAgICAgICAgICAgIHZvZF9hY3RvcjoganNvbi5uYW0uam9pbigiLCIpLAogICAgICAgICAgICAgICAgdm9kX3llYXI6IGpzb24uYy55ZWFyLAogICAgICAgICAgICAgICAgdm9kX2NvbnRlbnQ6IGpzb24uYy5kZXNjcmlwdGlvbiwKICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiBqc29uLnJlYywKICAgICAgICAgICAgICAgIHZvZF9waWM6IHVybGpvaW4yKGlucHV0LCBqc29uLmMucGljKQogICAgICAgICAgICB9CiAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICBpZiAoL2dldF9wbGF5c291cmNlLy50ZXN0KGlucHV0KSkgewogICAgICAgICAgICBldmFsKGh0bWwpOwogICAgICAgICAgICBsZXQgaW5kZXhMaXN0ID0gUVpPdXRwdXRKc29uLlBsYXlsaXN0SXRlbS5pbmRleExpc3Q7CiAgICAgICAgICAgIGluZGV4TGlzdC5mb3JFYWNoKGZ1bmN0aW9uKGl0KSB7CiAgICAgICAgICAgICAgICBsZXQgZGF0YVVybCA9ICJodHRwczovL3MudmlkZW8ucXEuY29tL2dldF9wbGF5c291cmNlP2lkPSIgKyBzb3VyY2VJZCArICImcGxhdD0yJnR5cGU9NCZkYXRhX3R5cGU9MyZyYW5nZT0iICsgaXQgKyAiJnZpZGVvX3R5cGU9MTAmcGxuYW1lPXFxJm90eXBlPWpzb24iOwogICAgICAgICAgICAgICAgZXZhbChmZXRjaChkYXRhVXJsLCBmZXRjaF9wYXJhbXMpKTsKICAgICAgICAgICAgICAgIGxldCB2ZGF0YSA9IFFaT3V0cHV0SnNvbi5QbGF5bGlzdEl0ZW0udmlkZW9QbGF5TGlzdDsKICAgICAgICAgICAgICAgIHZkYXRhLmZvckVhY2goZnVuY3Rpb24oaXRlbSkgewogICAgICAgICAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBpdGVtLnRpdGxlLAogICAgICAgICAgICAgICAgICAgICAgICBwaWNfdXJsOiBpdGVtLnBpYywKICAgICAgICAgICAgICAgICAgICAgICAgZGVzYzogaXRlbS5lcGlzb2RlX251bWJlciArICJcdFx0XHTmkq3mlL7ph4/vvJoiICsgaXRlbS50aGlyZExpbmUsCiAgICAgICAgICAgICAgICAgICAgICAgIHVybDogaXRlbS5wbGF5VXJsCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgdmlkZW9fbGlzdHMgPSB2aWRlb19saXN0cy5jb25jYXQodmRhdGEpCiAgICAgICAgICAgIH0pCiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgbGV0IGpzb24gPSBKU09OLnBhcnNlKGh0bWwpOwogICAgICAgICAgICB2aWRlb19saXN0cyA9IGpzb24uYy52aWRlb19pZHM7CiAgICAgICAgICAgIGxldCB1cmwgPSAiaHR0cHM6Ly92LnFxLmNvbS94L2NvdmVyLyIgKyBzb3VyY2VJZCArICIuaHRtbCI7CiAgICAgICAgICAgIGlmICh2aWRlb19saXN0cy5sZW5ndGggPT09IDEpIHsKICAgICAgICAgICAgICAgIGxldCB2aWQgPSB2aWRlb19saXN0c1swXTsKICAgICAgICAgICAgICAgIGxldCBvX3VybCA9ICJodHRwczovL3VuaW9uLnZpZGVvLnFxLmNvbS9mY2dpLWJpbi9kYXRhP290eXBlPWpzb24mdGlkPTE4MDQmYXBwaWQ9MjAwMDEyMzgmYXBwa2V5PTZjMDNiYmU5NjU4NDQ4YTQmdW5pb25fcGxhdGZvcm09MSZpZGxpc3Q9IiArIHZpZDsKICAgICAgICAgICAgICAgIGxldCBvX2h0bWwgPSBmZXRjaChvX3VybCwgZmV0Y2hfcGFyYW1zKTsKICAgICAgICAgICAgICAgIGV2YWwob19odG1sKTsKICAgICAgICAgICAgICAgIGlmIChRWk91dHB1dEpzb24ucmVzdWx0cyAmJiBRWk91dHB1dEpzb24ucmVzdWx0cy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IGl0MSA9IFFaT3V0cHV0SnNvbi5yZXN1bHRzWzBdLmZpZWxkczsKICAgICAgICAgICAgICAgICAgICB1cmwgPSAiaHR0cHM6Ly92LnFxLmNvbS94L2NvdmVyLyIgKyBjaWQgKyAiLyIgKyB2aWQgKyAiLmh0bWwiOwogICAgICAgICAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBpdDEudGl0bGUsCiAgICAgICAgICAgICAgICAgICAgICAgIHVybDogdXJsCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgdXJsID0gImh0dHBzOi8vdi5xcS5jb20veC9jb3Zlci8iICsgY2lkICsgIi8iICsgdmlkICsgIi5odG1sIjsKICAgICAgICAgICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgICAgICAgICB0aXRsZTogIuato+eJh+aSreaUviIsCiAgICAgICAgICAgICAgICAgICAgICAgIHVybDogdXJsCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSBlbHNlIGlmICh2aWRlb19saXN0cy5sZW5ndGggPiAxKSB7CiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHZpZGVvX2xpc3RzLmxlbmd0aDsgaSArPSAzMCkgewogICAgICAgICAgICAgICAgICAgIHZpZGVvX2xpc3QucHVzaCh2aWRlb19saXN0cy5zbGljZShpLCBpICsgMzApKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgdmlkZW9fbGlzdC5mb3JFYWNoKGZ1bmN0aW9uKGl0LCBpZGV4KSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IG9fdXJsID0gImh0dHBzOi8vdW5pb24udmlkZW8ucXEuY29tL2ZjZ2ktYmluL2RhdGE/b3R5cGU9anNvbiZ0aWQ9MTgwNCZhcHBpZD0yMDAwMTIzOCZhcHBrZXk9NmMwM2JiZTk2NTg0NDhhNCZ1bmlvbl9wbGF0Zm9ybT0xJmlkbGlzdD0iICsgaXQuam9pbigiLCIpOwogICAgICAgICAgICAgICAgICAgIGxldCBvX2h0bWwgPSBmZXRjaChvX3VybCwgZmV0Y2hfcGFyYW1zKTsKICAgICAgICAgICAgICAgICAgICBldmFsKG9faHRtbCk7CiAgICAgICAgICAgICAgICAgICAgUVpPdXRwdXRKc29uLnJlc3VsdHMuZm9yRWFjaChmdW5jdGlvbihpdDEpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaXQxID0gaXQxLmZpZWxkczsKICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHVybCA9ICJodHRwczovL3YucXEuY29tL3gvY292ZXIvIiArIGNpZCArICIvIiArIGl0MS52aWQgKyAiLmh0bWwiOwogICAgICAgICAgICAgICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGl0MS50aXRsZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpY191cmw6IGl0MS5waWMxNjB4OTAucmVwbGFjZSgiLzE2MCIsICIiKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2M6IGl0MS52aWRlb19jaGVja3VwX3RpbWUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IHVybCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU6IGl0MS5jYXRlZ29yeV9tYXAgJiYgaXQxLmNhdGVnb3J5X21hcC5sZW5ndGggPiAxID8gaXQxLmNhdGVnb3J5X21hcFsxXSA6ICIiCiAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGxldCBwbGF5RnJvbSA9IFtdOwogICAgICAgIGxldCBwbGF5VXJsID0gW107CgogICAgICAgIGxldCB5Z0tleXdvcmRzID0gWyLpooTlkYoiLCAi6Iqx57WuIiwgIueJh+iKsSIsICLnibnovpEiLCAi5bmV5ZCOIiwgIumHh+iuvyIsICLliLbkvZwiLCAiTVYiLCAi5Li76aKY5puyIl07CgogICAgICAgIGxldCB5ZyA9IGQuZmlsdGVyKGZ1bmN0aW9uKGl0KSB7CiAgICAgICAgICAgIHJldHVybiBpdC50eXBlICYmIHlnS2V5d29yZHMuc29tZShrZXl3b3JkID0+IGl0LnR5cGUuaW5jbHVkZXMoa2V5d29yZCkpOwogICAgICAgIH0pOwogICAgICAgIGxldCB6cCA9IGQuZmlsdGVyKGZ1bmN0aW9uKGl0KSB7CiAgICAgICAgICAgIHJldHVybiAhKGl0LnR5cGUgJiYgeWdLZXl3b3Jkcy5zb21lKGtleXdvcmQgPT4gaXQudHlwZS5pbmNsdWRlcyhrZXl3b3JkKSkpOwogICAgICAgIH0pOwoKICAgICAgICBpZiAoenAubGVuZ3RoID4gMCkgewogICAgICAgICAgICBwbGF5RnJvbS5wdXNoKCJcdTU5MjlcdTc5NWVcdTAwNDlcdTAwNTlcdTIwMTRcdTIwMTRcdTg1ZTRcdTg1ZTQiKTsKICAgICAgICAgICAgcGxheVVybC5wdXNoKHpwLm1hcChpdCA9PiBpdC50aXRsZSArICIkIiArIGl0LnVybCkuam9pbigiIyIpKTsKICAgICAgICB9CgogICAgICAgIGlmICh5Zy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgIGxldCDpooTlkYogPSB5Zy5maWx0ZXIoaXQgPT4gaXQudHlwZSAmJiBpdC50eXBlLmluY2x1ZGVzKCLpooTlkYoiKSk7CiAgICAgICAgICAgIGxldCDoirHnta7niYfoirEgPSB5Zy5maWx0ZXIoaXQgPT4gaXQudHlwZSAmJiAoaXQudHlwZS5pbmNsdWRlcygi6Iqx57WuIikgfHwgaXQudHlwZS5pbmNsdWRlcygi54mH6IqxIikpKTsKICAgICAgICAgICAgbGV0IOeJuei+kSA9IHlnLmZpbHRlcihpdCA9PiBpdC50eXBlICYmIChpdC50eXBlLmluY2x1ZGVzKCLnibnovpEiKSB8fCBpdC50eXBlLmluY2x1ZGVzKCLluZXlkI4iKSkpOwoKICAgICAgICAgICAgaWYgKOmihOWRii5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgICBwbGF5RnJvbS5wdXNoKCJcdTk4ODRcdTU0NGEiKTsKICAgICAgICAgICAgICAgIHBsYXlVcmwucHVzaCjpooTlkYoubWFwKGl0ID0+IGl0LnRpdGxlICsgIiQiICsgaXQudXJsKS5qb2luKCIjIikpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmICjoirHnta7niYfoirEubGVuZ3RoID4gMCkgewogICAgICAgICAgICAgICAgcGxheUZyb20ucHVzaCgi6Iqx57Wu54mH6IqxIik7CiAgICAgICAgICAgICAgICBwbGF5VXJsLnB1c2go6Iqx57Wu54mH6IqxLm1hcChpdCA9PiBpdC50aXRsZSArICIkIiArIGl0LnVybCkuam9pbigiIyIpKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAo54m56L6RLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgICAgIHBsYXlGcm9tLnB1c2goIlx1NzI3OVx1OGY5MSIpOwogICAgICAgICAgICAgICAgcGxheVVybC5wdXNoKOeJuei+kS5tYXAoaXQgPT4gaXQudGl0bGUgKyAiJCIgKyBpdC51cmwpLmpvaW4oIiMiKSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIFZPRC52b2RfcGxheV9mcm9tID0gcGxheUZyb20uam9pbigiJCQkIik7CiAgICAgICAgVk9ELnZvZF9wbGF5X3VybCA9IHBsYXlVcmwuam9pbigiJCQkIik7CiAgICB9KSwKICAgIOaQnOe0ojogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgZCA9IFtdLAogICAgICAgICAgICBrZXl3b3JkID0gaW5wdXQuc3BsaXQoIi8iKVszXTsKICAgICAgICBsZXQgc2VlbklkcyA9IG5ldyBTZXQoKTsKCiAgICAgICAgZnVuY3Rpb24gdm9kU2VhcmNoKGtleXdvcmQsIHBhZ2UgPSAwKSB7CiAgICAgICAgICAgIHJldHVybiByZXF1ZXN0KCdodHRwczovL3BiYWNjZXNzLnZpZGVvLnFxLmNvbS90cnBjLnZpZGVvc2VhcmNoLm1vYmlsZV9zZWFyY2guTXVsdGlUZXJtaW5hbFNlYXJjaC9NYlNlYXJjaD92cGxhdGZvcm09MicsIHsKICAgICAgICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHsKICAgICAgICAgICAgICAgICAgICB2ZXJzaW9uOiAiMjUwNDIyMDEiLAogICAgICAgICAgICAgICAgICAgIGNsaWVudFR5cGU6IDEsCiAgICAgICAgICAgICAgICAgICAgZmlsdGVyVmFsdWU6ICIiLAogICAgICAgICAgICAgICAgICAgIHV1aWQ6ICJCMUU1MDg0Ny1EMjVGLTRDNEItQkJBMC0zNkYwMDkzNDg3RjYiLAogICAgICAgICAgICAgICAgICAgIHJldHJ5OiAwLAogICAgICAgICAgICAgICAgICAgIHF1ZXJ5OiBrZXl3b3JkLAogICAgICAgICAgICAgICAgICAgIHBhZ2VudW06IHBhZ2UsCiAgICAgICAgICAgICAgICAgICAgaXNQcmVmZXRjaDogdHJ1ZSwKICAgICAgICAgICAgICAgICAgICBwYWdlc2l6ZTogMzAsCiAgICAgICAgICAgICAgICAgICAgcXVlcnlGcm9tOiAwLAogICAgICAgICAgICAgICAgICAgIHNlYXJjaERhdGFrZXk6ICIiLAogICAgICAgICAgICAgICAgICAgIHRyYW5zSW5mbzogIiIsCiAgICAgICAgICAgICAgICAgICAgaXNuZWVkUWM6IHRydWUsCiAgICAgICAgICAgICAgICAgICAgcHJlUWlkOiAiIiwKICAgICAgICAgICAgICAgICAgICBhZENsaWVudEluZm86ICIiLAogICAgICAgICAgICAgICAgICAgIGV4dHJhSW5mbzogewogICAgICAgICAgICAgICAgICAgICAgICBpc05ld01hcmtMYWJlbDogIjEiLAogICAgICAgICAgICAgICAgICAgICAgICBtdWx0aV90ZXJtaW5hbF9wYzogIjEiLAogICAgICAgICAgICAgICAgICAgICAgICB0aGVtZVR5cGU6ICIxIiwKICAgICAgICAgICAgICAgICAgICAgICAgc3VnUmVsYXRlZElkczogInt9IiwKICAgICAgICAgICAgICAgICAgICAgICAgYXBwVmVyc2lvbjogIiIKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICAgIGhlYWRlcnM6IHsKICAgICAgICAgICAgICAgICAgICAnVXNlci1BZ2VudCc6ICdNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTguMC40NzU4LjEzOSBTYWZhcmkvNTM3LjM2JywKICAgICAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLAogICAgICAgICAgICAgICAgICAgICdPcmlnaW4nOiAnaHR0cHM6Ly92LnFxLmNvbScsCiAgICAgICAgICAgICAgICAgICAgJ1JlZmVyZXInOiAnaHR0cHM6Ly92LnFxLmNvbS8nCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcKICAgICAgICAgICAgfSk7CiAgICAgICAgfQoKICAgICAgICBjb25zdCBub25NYWluQ29udGVudEtleXdvcmRzID0gWwogICAgICAgICAgICAn77yaJywgJyMnLCAn54m56L6RJywgJ+KAnCcsICfliarovpEnLCAn54mH6IqxJywgJ+eLrOWuticsICfkuJPorr8nLCAn57qv5LqrJywKICAgICAgICAgICAgJ+WItuS9nCcsICfluZXlkI4nLCAn5a6j5LygJywgJ01WJywgJ+S4u+mimOabsicsICfmj5Lmm7InLCAn5b2p6JuLJywKICAgICAgICAgICAgJ+eyvuW9qScsICfpm4bplKYnLCAn55uY54K5JywgJ+WbnumhvicsICfop6Por7QnLCAn6K+E5rWLJywgJ+WPjeW6lCcsICdyZWFjdGlvbicKICAgICAgICBdOwoKICAgICAgICBmdW5jdGlvbiBpc01haW5Db250ZW50KHRpdGxlKSB7CiAgICAgICAgICAgIGlmICghdGl0bGUpIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgaWYgKHRpdGxlLmluY2x1ZGVzKCc8ZW0+JykgfHwgdGl0bGUuaW5jbHVkZXMoJzwvZW0+JykpIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgcmV0dXJuICFub25NYWluQ29udGVudEtleXdvcmRzLnNvbWUoa2V5d29yZCA9PiB0aXRsZS5pbmNsdWRlcyhrZXl3b3JkKSk7CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBpc1FRUGxhdGZvcm0ocGxheVNpdGVzKSB7CiAgICAgICAgICAgIGlmICghcGxheVNpdGVzIHx8ICFBcnJheS5pc0FycmF5KHBsYXlTaXRlcykpIHJldHVybiB0cnVlOyAvLyDlpoLmnpzmsqHmnInlubPlj7Dkv6Hmga/vvIzpu5jorqTkv53nlZkKICAgICAgICAgICAgcmV0dXJuIHBsYXlTaXRlcy5zb21lKHNpdGUgPT4gc2l0ZS5lbk5hbWUgJiYgc2l0ZS5lbk5hbWUudG9Mb3dlckNhc2UoKSA9PT0gJ3FxJyk7CiAgICAgICAgfQoKICAgICAgICB0cnkgewogICAgICAgICAgICBsZXQgaHRtbCA9IHZvZFNlYXJjaChrZXl3b3JkLCAwKTsKICAgICAgICAgICAgbGV0IGpzb24gPSBKU09OLnBhcnNlKGh0bWwpOwoKICAgICAgICAgICAgZnVuY3Rpb24gcHJvY2Vzc0l0ZW1MaXN0KGl0ZW1MaXN0KSB7CiAgICAgICAgICAgICAgICBpZiAoIWl0ZW1MaXN0KSByZXR1cm47CgogICAgICAgICAgICAgICAgaXRlbUxpc3QuZm9yRWFjaChpdCA9PiB7CiAgICAgICAgICAgICAgICAgICAgaWYgKGl0LmRvYyAmJiBpdC5kb2MuaWQgJiYgaXQudmlkZW9JbmZvICYmCiAgICAgICAgICAgICAgICAgICAgICAgIGlzTWFpbkNvbnRlbnQoaXQudmlkZW9JbmZvLnRpdGxlKSAmJgogICAgICAgICAgICAgICAgICAgICAgICBpc1FRUGxhdGZvcm0oaXQudmlkZW9JbmZvLnBsYXlTaXRlcykgJiYKICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmtleXMoaXQudmlkZW9JbmZvLmVwaXNvZGVTaXRlcyB8fCB7fSkubGVuZ3RoID4gMCkgeyAvLyDihpAg5paw5aKe5p2h5Lu277yaZXBpc29kZVNpdGVzIOS4jeS4uuepuuWvueixoQoKICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXRlbUlkID0gaXQuZG9jLmlkOwogICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXNlZW5JZHMuaGFzKGl0ZW1JZCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlZW5JZHMuYWRkKGl0ZW1JZCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBpdC52aWRlb0luZm8udGl0bGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1nOiBpdC52aWRlb0luZm8uaW1nVXJsIHx8ICIiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVybDogaXRlbUlkLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc2M6IGl0LnZpZGVvSW5mby5zZWNvbmRMaW5lIHx8ICIiCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAoanNvbi5kYXRhICYmIGpzb24uZGF0YS5ub3JtYWxMaXN0KSB7CiAgICAgICAgICAgICAgICBwcm9jZXNzSXRlbUxpc3QoanNvbi5kYXRhLm5vcm1hbExpc3QuaXRlbUxpc3QpOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAoanNvbi5kYXRhICYmIGpzb24uZGF0YS5hcmVhQm94TGlzdCkgewogICAgICAgICAgICAgICAganNvbi5kYXRhLmFyZWFCb3hMaXN0LmZvckVhY2goYm94ID0+IHsKICAgICAgICAgICAgICAgICAgICBwcm9jZXNzSXRlbUxpc3QoYm94Lml0ZW1MaXN0KTsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CgogICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgbG9nKCLmkJzntKLlh7rplJk6ICIgKyBlLm1lc3NhZ2UpOwogICAgICAgIH0KCiAgICAgICAgc2V0UmVzdWx0KGQpOwogICAgfSkKCn07 \ No newline at end of file diff --git a/cpu_iy/logo.png b/cpu_iy/logo.png deleted file mode 100644 index 5fbfe093..00000000 Binary files a/cpu_iy/logo.png and /dev/null differ diff --git a/cpu_iy/version.txt b/cpu_iy/version.txt deleted file mode 100644 index 44a82f7d..00000000 --- a/cpu_iy/version.txt +++ /dev/null @@ -1 +0,0 @@ -05.17 \ No newline at end of file diff --git a/cpu_iy/天神IY.json b/cpu_iy/天神IY.json deleted file mode 100644 index 8e4f0b9e..00000000 Binary files a/cpu_iy/天神IY.json and /dev/null differ diff --git a/cpu_iy/天神小屋.png b/cpu_iy/天神小屋.png deleted file mode 100644 index da61919f..00000000 --- a/cpu_iy/天神小屋.png +++ /dev/null @@ -1,238 +0,0 @@ -[ - { - "name": "推荐", - "list": [ - { - "name": "本地库【ff】", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png", - "version": "❤下载过,才能用" - }, - { - "name": "备用库【ff】", - "url": "https://wget.la/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png", - "version": "❤下载过,才能用" - } - ] - }, - { - "name": "播放源下载(❤下载过,才能用)", - "list": [ - { - "name": "本地【潇洒】", - "url": "https://wget.la/https://raw.githubusercontent.com/PizazzGY/NewTVBox/main/单线路.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png", - "version": "最新版本" - }, - { - "name": "本地【vox】", - "url": "http://xw.123234567.xyz:60255/jiduo/vox本地包.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png", - "version": "最新版本" - }, - { - "name": "本地库【ff】", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png", - "version": "2026.04.17版" - }, - { - "name": "备用库【ff】", - "url": "https://wget.la/https://raw.githubusercontent.com/IY-CPU/test/main/本地库【ff】.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png", - "version": "2026.04.17版" - }, - { - "name": "本地【小虎斑】", - "url": "https://gitee.com/cpu-iy/iy/raw/master/小虎斑.zip", - "icon": "https://img0.baidu.com/it/u=3403550249,2192222310&fm=253&fmt=auto?w=800&h=804", - "version": "15.1" - }, - { - "name": "缘起【天神IY】", - "url": "https://gitee.com/cpu-iy/iy/raw/master/缘起【天神IY】.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png", - "version": "2026.04.17版" - }, - { - "name": "真心全量包1", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test1/main/真心20250402-全量包1.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png", - "version": "2025.4.2版" - }, - { - "name": "真心全量包2", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test1/main/真心20250402-全量包2.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png", - "version": "2025.4.2版" - }, - { - "name": "真心增量包", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地【真心】.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png", - "version": "2026.03.30版" - }, - { - "name": "本地【PG】", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/本地【PG】1.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/源.png", - "version": "20260417-2112版" - } - ] - }, - { - "name": "简易手机版软件下载,并在线可安装", - "list": [ - { - "name": "天神IY手机版", - "url": "https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY手机版.apk", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png", - "version": "5.1.5_64位" - }, - { - "name": "倾心壁纸", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test1/main/倾心壁纸_1.4.7", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/倾心壁纸.png", - "version": "1.4.7_手机64位" - }, - { - "name": "Via原版", - "url": "https://res.viayoo.com/v1/via-release-cn.apk", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/Via.png", - "version": "官方最新版" - }, - { - "name": "Via非原版", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/文件/Via_6.4.0内置脚本版.apk", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/Via.png", - "version": "6.4.0_内置脚本" - }, - { - "name": "MT管理器", - "url": "https://pan.mt2.cn/mt/MT2.18.3-clone-target28.apk", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/MT管理器.png", - "version": "2.18.3_原共存版" - }, - { - "name": "MT管理器", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/MT管理器_2.14.5部分破解版.apk", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/MT管理器.png", - "version": "2.14.5_部分破解" - }, - { - "name": "NP管理器", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/NP管理器_3.1.25.apk", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/NP管理器.png", - "version": "3.1.25_原版" - }, - { - "name": "WiFi万能钥匙", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test1/main/万能钥匙_1.1.39.apk", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/WiFi万能钥匙.png", - "version": "1.1.39_破解版" - }, - { - "name": "蓝牙遥控", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/文件/蓝牙遥控_2.0.9.apk", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/蓝牙遥控器.png", - "version": "2.0.9_原版" - } - ] - }, - { - "name": "其他软件下载,去文件管理器查找、安装", - "list": [ - { - "name": "无意云Pro版", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/无意云手机版341.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/无意云.png", - "version": "3.4.1_手机非共存" - }, - { - "name": "无意云Pro版", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/无意云电视版341.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/无意云.png", - "version": "3.4.1_电视非共存" - }, - { - "name": "天神IY电视版", - "url": "https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视版.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png", - "version": "5.1.5_电视32位" - }, - { - "name": "天神IY海信版", - "url": "https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY海信版.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png", - "version": "5.1.5_非共存" - }, - { - "name": "天神IY电视版", - "url": "https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视64位版.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png", - "version": "5.1.5_电视64位" - }, - { - "name": "天神IY电视全内置版", - "url": "https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视全内置版.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png", - "version": "5.1.5_内置32位" - }, - { - "name": "天神IY海信全内置版", - "url": "https://ghfile.geekertao.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY海信全内置版.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png", - "version": "5.1.5_内置非共存" - }, - { - "name": "天神IY电视版", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神IY电视版250.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png", - "version": "2.5.0_安卓4.+版" - }, - { - "name": "小白文件管理器", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/文件/小白文件管理器_2.8.0(TV版).zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/小白文件管理器.png", - "version": "2.8.0_电视版" - }, - { - "name": "天神仓", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神仓617.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png", - "version": "6.1.7_180电视版" - }, - { - "name": "天神仓海信版", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/天神仓海信版617.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/天神IY.png", - "version": "6.1.7_海信非共存" - }, - { - "name": "1DM+", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/1DM+_v17.2.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/1DM.png", - "version": "17.2_手机版" - }, - { - "name": "洛雪音乐", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test/main/洛雪音乐888.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/洛雪音乐.png", - "version": "8.8.8_手机版" - }, - { - "name": "阅读", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/test1/main/阅读合集325.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/阅读.png", - "version": "3.25_手机版" - }, - { - "name": "家庭KTV", - "url": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/家庭KTV115.zip", - "icon": "https://ghfast.top/https://raw.githubusercontent.com/IY-CPU/IY/main/封面/家庭KTV.png", - "version": "1.1.5_电视版" - } - ] - } -] \ No newline at end of file diff --git a/cpu_iy/小虎斑.zip b/cpu_iy/小虎斑.zip deleted file mode 100644 index a3ff2d1c..00000000 Binary files a/cpu_iy/小虎斑.zip and /dev/null differ diff --git a/cpu_iy/测试一下.json b/cpu_iy/测试一下.json deleted file mode 100644 index e9f8222f..00000000 Binary files a/cpu_iy/测试一下.json and /dev/null differ diff --git a/cpu_iy/缘起【天神IY】.zip b/cpu_iy/缘起【天神IY】.zip deleted file mode 100644 index 3342137f..00000000 Binary files a/cpu_iy/缘起【天神IY】.zip and /dev/null differ diff --git a/tvbox/lib/iptv.m3u b/tvbox/lib/iptv.m3u index c4bfd974..c62b31b2 100755 --- a/tvbox/lib/iptv.m3u +++ b/tvbox/lib/iptv.m3u @@ -6,17 +6,17 @@ http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="湖南卫视4K" group-title="4K",湖南卫视4K http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="湖南卫视4K" group-title="4K",湖南卫视4K -http://hlsal-ldvt.qing.mgtv.com/nn_live/nn_x64/dWlwPTEyNy4wLjAuMSZ1aWQ9cWluZy1jbXMmbm5fdGltZXpvbmU9OCZjZG5leF9pZD1hbF9obHNfbGR2dCZ1dWlkPTliODY4NmU5ZTM2YzYwMmMmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNWSZGST.m3u8$LR•IPV4•4『线路2』 +http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="湖南卫视4K" group-title="4K",湖南卫视4K -http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•4『线路3』 +http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="湖南卫视4K" group-title="4K",湖南卫视4K -http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•4『线路4』 +http://hlsal-ldvt.qing.mgtv.com/nn_live/nn_x64/dWlwPTEyNy4wLjAuMSZ1aWQ9cWluZy1jbXMmbm5fdGltZXpvbmU9OCZjZG5leF9pZD1hbF9obHNfbGR2dCZ1dWlkPTliODY4NmU5ZTM2YzYwMmMmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNWSZGST.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="浙江卫视4K" group-title="4K",浙江卫视4K -https://play-qukan.cztv.com/live/1758879019692345.m3u8$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/922.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="浙江卫视4K" group-title="4K",浙江卫视4K -http://43.251.226.89:8080/play/922.m3u8$LR•IPV4•3『线路2』 +http://43.251.226.89:8080/play/923.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="浙江卫视4K" group-title="4K",浙江卫视4K -http://43.251.226.89:8080/play/923.m3u8$LR•IPV4•3『线路3』 +https://play-qukan.cztv.com/live/1758879019692345.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="江苏卫视4K" group-title="4K",江苏卫视4K http://8.138.7.223/tv/jsws4k.php$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="江苏卫视4K" group-title="4K",江苏卫视4K @@ -70,51 +70,51 @@ http://nn.7x9d.cn/深圳最新.php?id=szws4k$LR•IPV4•13『线路12』 #EXTINF:-1 tvg-name="深圳卫视4K" group-title="4K",深圳卫视4K http://101.35.240.114:88/live.php?id=深圳卫视4K$LR•IPV4•13『线路13』 #EXTINF:-1 tvg-name="南国都市4K" group-title="4K",南国都市4K -http://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=140110ae3d6c936a77f94c4f4d85b0d3&txTime=18d57929bd4$LR•IPV4•2『线路1』 +https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=550af55c0ea34ce492748481415b6dfa&txTime=1903e7b17de$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="南国都市4K" group-title="4K",南国都市4K -https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=550af55c0ea34ce492748481415b6dfa&txTime=1903e7b17de$LR•IPV4•2『线路2』 +http://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=140110ae3d6c936a77f94c4f4d85b0d3&txTime=18d57929bd4$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://60.10.139.113:8801/hls/1/index.m3u8$LR•IPV4•50『线路1』 +http://112.27.235.94:8000/hls/1/index.m3u8$LR•IPV4•50『线路1』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://183.129.255.66:8480/hls/1/index.m3u8$LR•IPV4•50『线路2』 +http://60.10.139.113:8801/hls/1/index.m3u8$LR•IPV4•50『线路2』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•50『线路3』 +http://183.129.255.66:8480/hls/1/index.m3u8$LR•IPV4•50『线路3』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://112.27.235.94:8000/hls/1/index.m3u8$LR•IPV4•50『线路4』 +http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•50『线路4』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv1$LR•IPV4•50『线路5』 +http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•50『线路5』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://101.6.130.52:1234/608807420$LR•IPV4•50『线路6』 +http://38.75.136.137:98/gslb/dsdqbv/cctv1hd.m3u8?auth=test20251009$LR•IPV4•50『线路6』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000002226&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路7』 +http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•50『线路7』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030810&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路8』 +http://153.0.171.163:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路8』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路9』 +http://php.jdshipin.com/TVOD/iptv.php?id=rthk33$LR•IPV4•50『线路9』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021973&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路10』 +https://rthktv33-live.akamaized.net/hls/live/2101641/RTHKTV33/stream04/streamPlaylist.m3u8$LR•IPV4•50『线路10』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265001&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路11』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv1$LR•IPV4•50『线路11』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=reallive-cctv1&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路12』 +http://101.6.130.52:1234/608807420$LR•IPV4•50『线路12』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000004953&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000002226&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路13』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://111.29.9.35:6610/000000001000/1000000001000018602/index.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=3$LR•IPV4•50『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030810&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路14』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://111.29.9.33:6610/000000001000/1000000001000021973/index.m3u8?channel-id=bestzb&Contentid=1000000001000021973&livemode=1&stbId=3$LR•IPV4•50『线路15』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路15』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•50『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021973&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路16』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://38.75.136.137:98/gslb/dsdqbv/cctv1hd.m3u8?auth=test20251009$LR•IPV4•50『线路17』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265001&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路17』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•50『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=reallive-cctv1&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路18』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://153.0.171.163:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000004953&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路19』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -http://php.jdshipin.com/TVOD/iptv.php?id=rthk33$LR•IPV4•50『线路20』 +http://111.29.9.35:6610/000000001000/1000000001000018602/index.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=3$LR•IPV4•50『线路20』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 -https://rthktv33-live.akamaized.net/hls/live/2101641/RTHKTV33/stream04/streamPlaylist.m3u8$LR•IPV4•50『线路21』 +http://111.29.9.33:6610/000000001000/1000000001000021973/index.m3u8?channel-id=bestzb&Contentid=1000000001000021973&livemode=1&stbId=3$LR•IPV4•50『线路21』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 http://120.76.248.139/live/bfgd/4200000488.m3u8$LR•IPV4•50『线路22』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 @@ -174,43 +174,43 @@ http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•50『线路49』 #EXTINF:-1 tvg-name="CCTV1" group-title="央视",CCTV1 http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•50『线路50』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://120.198.95.220:9901/tsfile/live/1016_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•47『线路1』 +http://112.27.235.94:8000/hls/2/index.m3u8$LR•IPV4•47『线路1』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://60.10.139.113:8801/hls/2/index.m3u8$LR•IPV4•47『线路2』 +http://120.198.95.220:9901/tsfile/live/1016_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•47『线路2』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•47『线路3』 +http://60.10.139.113:8801/hls/2/index.m3u8$LR•IPV4•47『线路3』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•47『线路4』 +http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•47『线路4』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://36.40.237.49:9999/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路5』 +http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•47『线路5』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://153.0.171.163:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路6』 +http://36.40.237.49:9999/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路6』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://112.27.235.94:8000/hls/2/index.m3u8$LR•IPV4•47『线路7』 +http://153.0.171.163:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路7』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv2$LR•IPV4•47『线路8』 +http://pull-hls-f11.douyincdn.com/media/stream-407062262674621100.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771769775&major_anchor_level=common&sign=98406f42e949db5477a402c85cbee007&t_id=037-20260215221614EEA56BB994BB42D25308-a6AVAz$LR•IPV4•47『线路8』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://101.6.130.52:1234/631780532$LR•IPV4•47『线路9』 +http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•47『线路9』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000031113&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路10』 +http://112.46.105.20:8009/hls/502/index.m3u8$LR•IPV4•47『线路10』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031101&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路11』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv2$LR•IPV4•47『线路11』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000012442&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路12』 +http://101.6.130.52:1234/631780532$LR•IPV4•47『线路12』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000023315&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000031113&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路13』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265002&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031101&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路14』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://111.29.9.34:6610/000000001000/1000000001000012442/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012442&livemode=1&stbId=3$LR•IPV4•47『线路15』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000012442&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路15』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://111.29.9.33:6610/000000001000/1000000001000012442/index.m3u8?channel-id=bestzb&Contentid=1000000001000012442&livemode=1&stbId=3$LR•IPV4•47『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000023315&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路16』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://pull-hls-f11.douyincdn.com/media/stream-407062262674621100.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771769775&major_anchor_level=common&sign=98406f42e949db5477a402c85cbee007&t_id=037-20260215221614EEA56BB994BB42D25308-a6AVAz$LR•IPV4•47『线路17』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265002&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路17』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•47『线路18』 +http://111.29.9.34:6610/000000001000/1000000001000012442/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012442&livemode=1&stbId=3$LR•IPV4•47『线路18』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 -http://112.46.105.20:8009/hls/502/index.m3u8$LR•IPV4•47『线路19』 +http://111.29.9.33:6610/000000001000/1000000001000012442/index.m3u8?channel-id=bestzb&Contentid=1000000001000012442&livemode=1&stbId=3$LR•IPV4•47『线路19』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 http://120.76.248.139/live/bfgd/4200000061.m3u8$LR•IPV4•47『线路20』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 @@ -268,41 +268,41 @@ http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•47『线路46』 #EXTINF:-1 tvg-name="CCTV2" group-title="央视",CCTV2 http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•47『线路47』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•46『线路1』 +http://112.27.235.94:8000/hls/3/index.m3u8$LR•IPV4•46『线路1』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://60.10.139.113:8801/hls/3/index.m3u8$LR•IPV4•46『线路2』 +http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•46『线路2』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://121.57.88.206:898/hls/3/index.m3u8$LR•IPV4•46『线路3』 +http://60.10.139.113:8801/hls/3/index.m3u8$LR•IPV4•46『线路3』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://59.39.89.130:60901/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路4』 +http://121.57.88.206:898/hls/3/index.m3u8$LR•IPV4•46『线路4』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://36.40.237.49:9999/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 +http://59.39.89.130:60901/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://120.198.95.220:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路6』 +http://36.40.237.49:9999/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://112.27.235.94:8000/hls/3/index.m3u8$LR•IPV4•46『线路7』 +http://120.198.95.220:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路7』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv3$LR•IPV4•46『线路8』 +http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•46『线路8』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://101.6.130.52:1234/624878271$LR•IPV4•46『线路9』 +http://38.75.136.137:98/gslb/dsdqbv/cctv3hd.m3u8?auth=test20251009$LR•IPV4•46『线路9』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000002000020548&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路10』 +http://112.46.105.20:8009/hls/3/index.m3u8$LR•IPV4•46『线路10』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000011218&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路11』 +http://153.0.171.163:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路11』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265003&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路12』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv3$LR•IPV4•46『线路12』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://111.29.9.38:6610/000000001000/1000000001000011218/index.m3u8?channel-id=ystenlive&Contentid=1000000001000011218&livemode=1&stbId=3$LR•IPV4•46『线路13』 +http://101.6.130.52:1234/624878271$LR•IPV4•46『线路13』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://111.29.9.33:6610/000000001000/1000000001000011218/index.m3u8?channel-id=bestzb&Contentid=1000000001000011218&livemode=1&stbId=3$LR•IPV4•46『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000002000020548&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•46『线路15』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000011218&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路15』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://38.75.136.137:98/gslb/dsdqbv/cctv3hd.m3u8?auth=test20251009$LR•IPV4•46『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265003&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路16』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://112.46.105.20:8009/hls/3/index.m3u8$LR•IPV4•46『线路17』 +http://111.29.9.38:6610/000000001000/1000000001000011218/index.m3u8?channel-id=ystenlive&Contentid=1000000001000011218&livemode=1&stbId=3$LR•IPV4•46『线路17』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 -http://153.0.171.163:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路18』 +http://111.29.9.33:6610/000000001000/1000000001000011218/index.m3u8?channel-id=bestzb&Contentid=1000000001000011218&livemode=1&stbId=3$LR•IPV4•46『线路18』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 http://120.76.248.139/live/bfgd/4200000062.m3u8$LR•IPV4•46『线路19』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 @@ -360,47 +360,47 @@ http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•46『线路45』 #EXTINF:-1 tvg-name="CCTV3" group-title="央视",CCTV3 http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•46『线路46』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://60.10.139.113:8801/hls/4/index.m3u8$LR•IPV4•79『线路1』 +http://112.27.235.94:8000/hls/4/index.m3u8$LR•IPV4•79『线路1』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•79『线路2』 +http://60.10.139.113:8801/hls/4/index.m3u8$LR•IPV4•79『线路2』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•79『线路3』 +http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•79『线路3』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://36.136.38.87:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路4』 +http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•79『线路4』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•79『线路5』 +http://36.136.38.87:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路5』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://113.25.252.226:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路6』 +http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•79『线路6』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://112.27.235.94:8000/hls/4/index.m3u8$LR•IPV4•79『线路7』 +http://113.25.252.226:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路7』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv4$LR•IPV4•79『线路8』 +http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•79『线路8』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://101.6.130.52:1234/631780421$LR•IPV4•79『线路9』 +http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•79『线路9』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://101.6.130.52:1234/608807419$LR•IPV4•79『线路10』 +http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路10』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://101.6.130.52:1234/608807416$LR•IPV4•79『线路11』 +p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•79『线路11』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000030093&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路12』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv4$LR•IPV4•79『线路12』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031102&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路13』 +http://101.6.130.52:1234/631780421$LR•IPV4•79『线路13』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000031664&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路14』 +http://101.6.130.52:1234/608807419$LR•IPV4•79『线路14』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265004&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路15』 +http://101.6.130.52:1234/608807416$LR•IPV4•79『线路15』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://111.29.9.40:6610/000000001000/5000000005000030093/index.m3u8?channel-id=bestzb&Contentid=5000000005000030093&livemode=1&stbId=3$LR•IPV4•79『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000030093&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路16』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://111.29.9.33:6610/000000001000/1000000002000031664/index.m3u8?channel-id=bestzb&Contentid=1000000002000031664&livemode=1&stbId=3$LR•IPV4•79『线路17』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031102&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路17』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•79『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000031664&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路18』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•79『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265004&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路19』 #EXTINF:-1 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•79『线路20』 +http://111.29.9.40:6610/000000001000/5000000005000030093/index.m3u8?channel-id=bestzb&Contentid=5000000005000030093&livemode=1&stbId=3$LR•IPV4•79『线路20』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•79『线路21』 +http://111.29.9.33:6610/000000001000/1000000002000031664/index.m3u8?channel-id=bestzb&Contentid=1000000002000031664&livemode=1&stbId=3$LR•IPV4•79『线路21』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 http://120.76.248.139/live/bfgd/4200000063.m3u8$LR•IPV4•79『线路22』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 @@ -496,7 +496,7 @@ http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225781/index.m3u8$LR•IP #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227324/index.m3u8$LR•IPV4•79『线路68』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782925200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0976a55b4fad30979ca9561cda031a05&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•79『线路69』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782954000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-9ebdb920742a1c0abe62da12809575a1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•79『线路69』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782889200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-cb6bb8d81dd443bea6c3981543aa5af6&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•79『线路70』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 @@ -518,33 +518,33 @@ http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•79『线路78』 #EXTINF:-1 tvg-name="CCTV4" group-title="央视",CCTV4 http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•79『线路79』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://60.10.139.113:8801/hls/5/index.m3u8$LR•IPV4•79『线路1』 +http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•79『线路1』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•79『线路2』 +http://60.10.139.113:8801/hls/5/index.m3u8$LR•IPV4•79『线路2』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•79『线路3』 +http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•79『线路3』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 http://36.40.237.49:9999/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路4』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv5$LR•IPV4•79『线路5』 +http://74.91.26.218:82/live/cctv5hd.m3u8$LR•IPV4•79『线路5』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://101.6.130.52:1234/641886683$LR•IPV4•79『线路6』 +http://38.75.136.137:98/gslb/dsdqbv/cctv5hd.m3u8?auth=test20251009$LR•IPV4•79『线路6』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000016619&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路7』 +http://112.46.105.20:8009/hls/503/index.m3u8$LR•IPV4•79『线路7』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004794&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路8』 +http://153.0.171.163:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路8』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265005&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路9』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv5$LR•IPV4•79『线路9』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://111.29.9.33:6610/000000001000/1000000001000004794/index.m3u8?channel-id=bestzb&Contentid=1000000001000004794&livemode=1&stbId=3$LR•IPV4•79『线路10』 +http://101.6.130.52:1234/641886683$LR•IPV4•79『线路10』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://74.91.26.218:82/live/cctv5hd.m3u8$LR•IPV4•79『线路11』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000016619&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路11』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://38.75.136.137:98/gslb/dsdqbv/cctv5hd.m3u8?auth=test20251009$LR•IPV4•79『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004794&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路12』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://112.46.105.20:8009/hls/503/index.m3u8$LR•IPV4•79『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265005&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路13』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://153.0.171.163:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路14』 +http://111.29.9.33:6610/000000001000/1000000001000004794/index.m3u8?channel-id=bestzb&Contentid=1000000001000004794&livemode=1&stbId=3$LR•IPV4•79『线路14』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 http://120.76.248.139/live/bfgd/4200000064.m3u8$LR•IPV4•79『线路15』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 @@ -608,27 +608,27 @@ http://173.208.212.130:8181/1080p/cctv5.m3u8$LR•IPV4•79『线路44』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 http://204.12.221.218:8181/3m1080p/cctv5.m3u8$LR•IPV4•79『线路45』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://60.10.139.113:8801/hls/15/index.m3u8$LR•IPV4•79『线路46』 +http://112.27.235.94:8000/hls/6/index.m3u8$LR•IPV4•79『线路46』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://112.27.235.94:8000/hls/6/index.m3u8$LR•IPV4•79『线路47』 +http://60.10.139.113:8801/hls/15/index.m3u8$LR•IPV4•79『线路47』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 http://124.228.160.210:9901/tsfile/live/0016_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路48』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv5p$LR•IPV4•79『线路49』 +http://74.91.26.218:82/live/cctv5p.m3u8$LR•IPV4•79『线路49』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://101.6.130.52:1234/641886773$LR•IPV4•79『线路50』 +http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•79『线路50』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018504&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路51』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv5p$LR•IPV4•79『线路51』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000020505&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路52』 +http://101.6.130.52:1234/641886773$LR•IPV4•79『线路52』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://223.112.114.228:50080/newlive/live/hls/180/live.m3u8$LR•IPV4•79『线路53』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018504&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路53』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://111.29.9.33:6610/000000001000/1000000001000020505/index.m3u8?channel-id=bestzb&Contentid=1000000001000020505&livemode=1&stbId=3$LR•IPV4•79『线路54』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000020505&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路54』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://74.91.26.218:82/live/cctv5p.m3u8$LR•IPV4•79『线路55』 +http://223.112.114.228:50080/newlive/live/hls/180/live.m3u8$LR•IPV4•79『线路55』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 -http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•79『线路56』 +http://111.29.9.33:6610/000000001000/1000000001000020505/index.m3u8?channel-id=bestzb&Contentid=1000000001000020505&livemode=1&stbId=3$LR•IPV4•79『线路56』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 http://120.76.248.139/live/bfgd/4200000246.m3u8$LR•IPV4•79『线路57』 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 @@ -676,39 +676,39 @@ http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221 #EXTINF:-1 tvg-name="CCTV5" group-title="央视",CCTV5 http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•79『线路79』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://121.57.88.206:898/hls/6/index.m3u8$LR•IPV4•46『线路1』 +http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•46『线路1』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•46『线路2』 +http://121.57.88.206:898/hls/6/index.m3u8$LR•IPV4•46『线路2』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•46『线路3』 +http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•46『线路3』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv6hd$LR•IPV4•46『线路4』 +http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•46『线路4』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://36.40.237.49:9999/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv6hd$LR•IPV4•46『线路5』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•46『线路6』 +http://36.40.237.49:9999/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://60.10.139.113:8801/hls/6/index.m3u8$LR•IPV4•46『线路7』 +http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•46『线路7』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv6$LR•IPV4•46『线路8』 +http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•46『线路8』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://101.6.130.52:1234/624878396$LR•IPV4•46『线路9』 +http://153.0.171.163:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路9』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000018433&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路10』 +http://60.10.139.113:8801/hls/6/index.m3u8$LR•IPV4•46『线路10』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000016466&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路11』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv6$LR•IPV4•46『线路11』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265006&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路12』 +http://101.6.130.52:1234/624878396$LR•IPV4•46『线路12』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6117099895556651277&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000018433&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路13』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://111.29.9.33:6610/000000001000/1000000001000016466/index.m3u8?channel-id=bestzb&Contentid=1000000001000016466&livemode=1&stbId=3$LR•IPV4•46『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000016466&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•46『线路15』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265006&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路15』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•46『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6117099895556651277&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路16』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 -http://153.0.171.163:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路17』 +http://111.29.9.33:6610/000000001000/1000000001000016466/index.m3u8?channel-id=bestzb&Contentid=1000000001000016466&livemode=1&stbId=3$LR•IPV4•46『线路17』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 http://120.76.248.139/live/bfgd/4200000065.m3u8$LR•IPV4•46『线路18』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 @@ -768,39 +768,39 @@ http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•46『线路45』 #EXTINF:-1 tvg-name="CCTV6" group-title="央视",CCTV6 http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•46『线路46』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://60.10.139.113:8801/hls/7/index.m3u8$LR•IPV4•44『线路1』 +http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•44『线路1』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://38.75.136.137:98/gslb/dsdqpub/cctv7hd.m3u8?auth=testpub$LR•IPV4•44『线路2』 +http://60.10.139.113:8801/hls/7/index.m3u8$LR•IPV4•44『线路2』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•44『线路3』 +http://38.75.136.137:98/gslb/dsdqpub/cctv7hd.m3u8?auth=testpub$LR•IPV4•44『线路3』 #EXTINF:-1 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•44『线路4』 +http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•44『线路4』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•44『线路5』 +http://153.0.171.163:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路5』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv7$LR•IPV4•44『线路6』 +http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•44『线路6』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://101.6.130.52:1234/673168121$LR•IPV4•44『线路7』 +http://112.46.105.20:8009/hls/504/index.m3u8$LR•IPV4•44『线路7』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000026715&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路8』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv7$LR•IPV4•44『线路8』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031104&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路9』 +http://101.6.130.52:1234/673168121$LR•IPV4•44『线路9』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017218&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路10』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000026715&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路10』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024341&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路11』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031104&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路11』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265007&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017218&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路12』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=3000000010000011518&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024341&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路13』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://111.29.9.40:6610/000000001000/1000000001000017218/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017218&livemode=1&stbId=3$LR•IPV4•44『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265007&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路14』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://111.29.9.33:6610/000000001000/1000000001000017218/index.m3u8?channel-id=bestzb&Contentid=1000000001000017218&livemode=1&stbId=3$LR•IPV4•44『线路15』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=3000000010000011518&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路15』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•44『线路16』 +http://111.29.9.40:6610/000000001000/1000000001000017218/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017218&livemode=1&stbId=3$LR•IPV4•44『线路16』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 -http://112.46.105.20:8009/hls/504/index.m3u8$LR•IPV4•44『线路17』 +http://111.29.9.33:6610/000000001000/1000000001000017218/index.m3u8?channel-id=bestzb&Contentid=1000000001000017218&livemode=1&stbId=3$LR•IPV4•44『线路17』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 http://120.76.248.139/live/bfgd/4200000127.m3u8$LR•IPV4•44『线路18』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 @@ -856,37 +856,37 @@ http://173.208.212.130:8181/1080p/cctv7.m3u8$LR•IPV4•44『线路43』 #EXTINF:-1 tvg-name="CCTV7" group-title="央视",CCTV7 http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•44『线路44』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://121.57.88.206:898/hls/8/index.m3u8$LR•IPV4•48『线路1』 +http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•48『线路1』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://222.223.41.27:8888/hls/8/index.m3u8$LR•IPV4•48『线路2』 +http://121.57.88.206:898/hls/8/index.m3u8$LR•IPV4•48『线路2』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://153.0.171.163:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路3』 +http://222.223.41.27:8888/hls/8/index.m3u8$LR•IPV4•48『线路3』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv8hd$LR•IPV4•48『线路4』 +http://153.0.171.163:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路4』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•48『线路5』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv8hd$LR•IPV4•48『线路5』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•48『线路6』 +http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•48『线路6』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://36.40.237.49:9999/tsfile/live/0008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路7』 +http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•48『线路7』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://120.198.95.220:9901/tsfile/live/1023_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•48『线路8』 +http://36.40.237.49:9999/tsfile/live/0008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路8』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•48『线路9』 +http://120.198.95.220:9901/tsfile/live/1023_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•48『线路9』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://60.10.139.113:8801/hls/8/index.m3u8$LR•IPV4•48『线路10』 +http://112.46.105.20:8009/hls/8/index.m3u8$LR•IPV4•48『线路10』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv8$LR•IPV4•48『线路11』 +http://60.10.139.113:8801/hls/8/index.m3u8$LR•IPV4•48『线路11』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://101.6.130.52:1234/624878356$LR•IPV4•48『线路12』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv8$LR•IPV4•48『线路12』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003736&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路13』 +http://101.6.130.52:1234/624878356$LR•IPV4•48『线路13』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265008&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003736&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路14』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://111.29.9.33:6610/000000001000/1000000001000003736/index.m3u8?channel-id=bestzb&Contentid=1000000001000003736&livemode=1&stbId=3$LR•IPV4•48『线路15』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265008&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路15』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 -http://112.46.105.20:8009/hls/8/index.m3u8$LR•IPV4•48『线路16』 +http://111.29.9.33:6610/000000001000/1000000001000003736/index.m3u8?channel-id=bestzb&Contentid=1000000001000003736&livemode=1&stbId=3$LR•IPV4•48『线路16』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 http://120.76.248.139/live/bfgd/4200000066.m3u8$LR•IPV4•48『线路17』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 @@ -952,135 +952,137 @@ http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•48『线路47』 #EXTINF:-1 tvg-name="CCTV8" group-title="央视",CCTV8 http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•48『线路48』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://60.10.139.113:8801/hls/9/index.m3u8$LR•IPV4•49『线路1』 +http://112.27.235.94:8000/hls/10/index.m3u8$LR•IPV4•50『线路1』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://124.228.160.210:9901/tsfile/live/0009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•49『线路2』 +http://60.10.139.113:8801/hls/9/index.m3u8$LR•IPV4•50『线路2』 #EXTINF:-1 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•49『线路3』 +http://124.228.160.210:9901/tsfile/live/0009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路3』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://112.27.235.94:8000/hls/10/index.m3u8$LR•IPV4•49『线路4』 +http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路4』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv9$LR•IPV4•49『线路5』 +http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•50『线路5』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://101.6.130.52:1234/673168140$LR•IPV4•49『线路6』 +http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IPV4•50『线路6』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000018384&livemode=1&stbId=yu&mode=1&$LR•IPV4•49『线路7』 +http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•50『线路7』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000288020&livemode=1&stbId=yu&mode=1&$LR•IPV4•49『线路8』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv9$LR•IPV4•50『线路8』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014583&livemode=1&stbId=yu&mode=1&$LR•IPV4•49『线路9』 +http://101.6.130.52:1234/673168140$LR•IPV4•50『线路9』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000028286&livemode=1&stbId=yu&mode=1&$LR•IPV4•49『线路10』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000018384&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路10』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265009&livemode=1&stbId=yu&mode=1&$LR•IPV4•49『线路11』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000288020&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路11』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://111.29.9.33:6610/000000001000/1000000001000028286/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028286&livemode=1&stbId=3$LR•IPV4•49『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014583&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路12』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://111.29.9.33:6610/000000001000/1000000001000014583/index.m3u8?channel-id=bestzb&Contentid=1000000001000014583&livemode=1&stbId=3$LR•IPV4•49『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000028286&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路13』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•49『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265009&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路14』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IPV4•49『线路15』 +http://111.29.9.33:6610/000000001000/1000000001000028286/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028286&livemode=1&stbId=3$LR•IPV4•50『线路15』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•49『线路16』 +http://111.29.9.33:6610/000000001000/1000000001000014583/index.m3u8?channel-id=bestzb&Contentid=1000000001000014583&livemode=1&stbId=3$LR•IPV4•50『线路16』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://120.76.248.139/live/bfgd/4200000128.m3u8$LR•IPV4•49『线路17』 +http://120.76.248.139/live/bfgd/4200000128.m3u8$LR•IPV4•50『线路17』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -https://live.chinacert.cftest5.cn/cnmg/live/673168140$LR•IPV4•49『线路18』 +https://live.chinacert.cftest5.cn/cnmg/live/673168140$LR•IPV4•50『线路18』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://m.061899.xyz/mg/cctv9$LR•IPV4•49『线路19』 +http://m.061899.xyz/mg/cctv9$LR•IPV4•50『线路19』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://fn.gcl.de5.net:5908/gsh950428/673168140$LR•IPV4•49『线路20』 +http://fn.gcl.de5.net:5908/gsh950428/673168140$LR•IPV4•50『线路20』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://wfenf.x3322.net:7788/673168140$LR•IPV4•49『线路21』 +http://wfenf.x3322.net:7788/673168140$LR•IPV4•50『线路21』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://106.5.175.159:1234/673168140$LR•IPV4•49『线路22』 +http://106.5.175.159:1234/673168140$LR•IPV4•50『线路22』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://36.104.221.222:7788/673168140$LR•IPV4•49『线路23』 +http://36.104.221.222:7788/673168140$LR•IPV4•50『线路23』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://115.58.151.196:1234/673168140$LR•IPV4•49『线路24』 +http://115.58.151.196:1234/673168140$LR•IPV4•50『线路24』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://182.61.15.163:80/673168140$LR•IPV4•49『线路25』 +http://182.61.15.163:80/673168140$LR•IPV4•50『线路25』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://121.23.132.14:7788/673168140$LR•IPV4•49『线路26』 +http://121.23.132.14:7788/673168140$LR•IPV4•50『线路26』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://120.4.126.153:1234/673168140$LR•IPV4•49『线路27』 +http://120.4.126.153:1234/673168140$LR•IPV4•50『线路27』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://111.43.126.240:9003/hls/9/index.m3u8$LR•IPV4•49『线路28』 +http://111.43.126.240:9003/hls/9/index.m3u8$LR•IPV4•50『线路28』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://47.119.24.76:59093/673168140$LR•IPV4•49『线路29』 +http://47.119.24.76:59093/673168140$LR•IPV4•50『线路29』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://222.134.19.49:8090/673168140$LR•IPV4•49『线路30』 +http://222.134.19.49:8090/673168140$LR•IPV4•50『线路30』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://rihou.cc:555/tv/[mg]CCTV-09$LR•IPV4•49『线路31』 +http://rihou.cc:555/tv/[mg]CCTV-09$LR•IPV4•50『线路31』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://139.155.89.87:1000/673168140$LR•IPV4•49『线路32』 +http://139.155.89.87:1000/673168140$LR•IPV4•50『线路32』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://101.34.236.223:1112/673168140$LR•IPV4•49『线路33』 +http://101.34.236.223:1112/673168140$LR•IPV4•50『线路33』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/1.m3u8$LR•IPV4•49『线路34』 +http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/1.m3u8$LR•IPV4•50『线路34』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/1.m3u8$LR•IPV4•49『线路35』 +http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/1.m3u8$LR•IPV4•50『线路35』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/index.m3u8$LR•IPV4•49『线路36』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/index.m3u8$LR•IPV4•50『线路36』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225758/index.m3u8$LR•IPV4•49『线路37』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225758/index.m3u8$LR•IPV4•50『线路37』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227337/index.m3u8$LR•IPV4•49『线路38』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227337/index.m3u8$LR•IPV4•50『线路38』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=f41a4cba7d196beb36c86b6f7ec67e4d$LR•IPV4•49『线路39』 +https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=45393a2f14f679e6b5db6aea2afafa39$LR•IPV4•50『线路39』 #EXTINF:-1 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•49『线路40』 +https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=473672dc61422fb039e3d97851b8147e$LR•IPV4•50『线路40』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•49『线路41』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•50『线路41』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://111.8.224.6:9999/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•49『线路42』 +http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•50『线路42』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://38.75.136.137:98/gslb/dsdqpub/cctv9hd.m3u8?auth=testpub$LR•IPV4•49『线路43』 +http://111.8.224.6:9999/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路43』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•49『线路44』 +http://38.75.136.137:98/gslb/dsdqpub/cctv9hd.m3u8?auth=testpub$LR•IPV4•50『线路44』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•49『线路45』 +http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•50『线路45』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•49『线路46』 +http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•50『线路46』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•49『线路47』 +http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•50『线路47』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•49『线路48』 +http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•50『线路48』 #EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 -http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•49『线路49』 +http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•50『线路49』 +#EXTINF:-1 tvg-name="CCTV9" group-title="央视",CCTV9 +https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•50『线路50』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://60.10.139.113:8801/hls/10/index.m3u8$LR•IPV4•45『线路1』 +http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•45『线路1』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv10hd$LR•IPV4•45『线路2』 +http://60.10.139.113:8801/hls/10/index.m3u8$LR•IPV4•45『线路2』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•45『线路3』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv10hd$LR•IPV4•45『线路3』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv10$LR•IPV4•45『线路4』 +http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•45『线路4』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://101.6.130.52:1234/624878405$LR•IPV4•45『线路5』 +http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•45『线路5』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000012827&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路6』 +http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•45『线路6』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000016738&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路7』 +http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路7』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000023734&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路8』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv10$LR•IPV4•45『线路8』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000026367&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路9』 +http://101.6.130.52:1234/624878405$LR•IPV4•45『线路9』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265010&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路10』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000012827&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路10』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://111.29.9.38:6610/000000001000/1000000001000023734/index.m3u8?channel-id=ystenlive&Contentid=1000000001000023734&livemode=1&stbId=3$LR•IPV4•45『线路11』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000016738&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路11』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://111.29.9.33:6610/000000001000/1000000001000023734/index.m3u8?channel-id=bestzb&Contentid=1000000001000023734&livemode=1&stbId=3$LR•IPV4•45『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000023734&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路12』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•45『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000026367&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路13』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•45『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265010&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路14』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 -http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•45『线路15』 +http://111.29.9.38:6610/000000001000/1000000001000023734/index.m3u8?channel-id=ystenlive&Contentid=1000000001000023734&livemode=1&stbId=3$LR•IPV4•45『线路15』 #EXTINF:-1 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•45『线路16』 +http://111.29.9.33:6610/000000001000/1000000001000023734/index.m3u8?channel-id=bestzb&Contentid=1000000001000023734&livemode=1&stbId=3$LR•IPV4•45『线路16』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 http://120.76.248.139/live/bfgd/4200000129.m3u8$LR•IPV4•45『线路17』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 @@ -1140,37 +1142,37 @@ http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•45『线路44』 #EXTINF:-1 tvg-name="CCTV10" group-title="央视",CCTV10 http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•45『线路45』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•44『线路1』 +http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•44『线路1』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•44『线路2』 +http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•44『线路2』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•44『线路3』 +http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•44『线路3』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://36.136.38.87:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路4』 +http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•44『线路4』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•44『线路5』 +http://36.136.38.87:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路5』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://60.10.139.113:8801/hls/96/index.m3u8$LR•IPV4•44『线路6』 +http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•44『线路6』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv11$LR•IPV4•44『线路7』 +http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•44『线路7』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://101.6.130.52:1234/667987558$LR•IPV4•44『线路8』 +http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路8』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040011&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路9』 +http://60.10.139.113:8801/hls/96/index.m3u8$LR•IPV4•44『线路9』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031106&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路10』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv11$LR•IPV4•44『线路10』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019789&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路11』 +http://101.6.130.52:1234/667987558$LR•IPV4•44『线路11』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://111.29.9.37:6610/000000001000/1000000002000019789/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•44『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040011&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路12』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://111.29.9.33:6610/000000001000/1000000002000019789/index.m3u8?channel-id=bestzb&Contentid=1000000002000019789&livemode=1&stbId=3$LR•IPV4•44『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031106&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路13』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•44『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019789&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路14』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 -http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•44『线路15』 +http://111.29.9.37:6610/000000001000/1000000002000019789/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•44『线路15』 #EXTINF:-1 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•44『线路16』 +http://111.29.9.33:6610/000000001000/1000000002000019789/index.m3u8?channel-id=bestzb&Contentid=1000000002000019789&livemode=1&stbId=3$LR•IPV4•44『线路16』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 http://120.76.248.139/live/bfgd/4200000130.m3u8$LR•IPV4•44『线路17』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 @@ -1228,35 +1230,35 @@ http://173.208.212.130:8181/1080p/cctv11.m3u8$LR•IPV4•44『线路43』 #EXTINF:-1 tvg-name="CCTV11" group-title="央视",CCTV11 http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•44『线路44』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://60.10.139.113:8801/hls/11/index.m3u8$LR•IPV4•42『线路1』 +http://112.27.235.94:8000/hls/13/index.m3u8$LR•IPV4•42『线路1』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•42『线路2』 +http://60.10.139.113:8801/hls/11/index.m3u8$LR•IPV4•42『线路2』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•42『线路3』 +http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•42『线路3』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://153.0.171.163:9901/tsfile/live/1011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•42『线路4』 +http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•42『线路4』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://112.27.235.94:8000/hls/13/index.m3u8$LR•IPV4•42『线路5』 +http://153.0.171.163:9901/tsfile/live/1011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•42『线路5』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv12$LR•IPV4•42『线路6』 +http://38.75.136.137:98/gslb/dsdqbv/cctv12hd.m3u8?auth=test20251009$LR•IPV4•42『线路6』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://101.6.130.52:1234/673168185$LR•IPV4•42『线路7』 +http://112.46.105.20:8009/hls/507/index.m3u8$LR•IPV4•42『线路7』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040012&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路8』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv12$LR•IPV4•42『线路8』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路9』 +http://101.6.130.52:1234/673168185$LR•IPV4•42『线路9』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000001640&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路10』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040012&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路10』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000032494&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路11』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路11』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://111.29.9.39:6610/000000001000/1000000001000032494/index.m3u8?channel-id=ystenlive&Contentid=1000000001000032494&livemode=1&stbId=3$LR•IPV4•42『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000001640&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路12』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://111.29.9.33:6610/000000001000/1000000001000001640/index.m3u8?channel-id=bestzb&Contentid=1000000001000001640&livemode=1&stbId=3$LR•IPV4•42『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000032494&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路13』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://38.75.136.137:98/gslb/dsdqbv/cctv12hd.m3u8?auth=test20251009$LR•IPV4•42『线路14』 +http://111.29.9.39:6610/000000001000/1000000001000032494/index.m3u8?channel-id=ystenlive&Contentid=1000000001000032494&livemode=1&stbId=3$LR•IPV4•42『线路14』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 -http://112.46.105.20:8009/hls/507/index.m3u8$LR•IPV4•42『线路15』 +http://111.29.9.33:6610/000000001000/1000000001000001640/index.m3u8?channel-id=bestzb&Contentid=1000000001000001640&livemode=1&stbId=3$LR•IPV4•42『线路15』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 http://120.76.248.139/live/bfgd/4200000131.m3u8$LR•IPV4•42『线路16』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 @@ -1312,31 +1314,31 @@ http://173.208.212.130:8181/1080p/cctv12.m3u8$LR•IPV4•42『线路41』 #EXTINF:-1 tvg-name="CCTV12" group-title="央视",CCTV12 http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•42『线路42』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://60.10.139.113:8801/hls/12/index.m3u8$LR•IPV4•44『线路1』 +http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•44『线路1』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://222.223.41.27:8888/hls/13/index.m3u8$LR•IPV4•44『线路2』 +http://60.10.139.113:8801/hls/12/index.m3u8$LR•IPV4•44『线路2』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•44『线路3』 +http://222.223.41.27:8888/hls/13/index.m3u8$LR•IPV4•44『线路3』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv13$LR•IPV4•44『线路4』 +http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•44『线路4』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://101.6.130.52:1234/608807423$LR•IPV4•44『线路5』 +http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4•44『线路5』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000001827&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路6』 +http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路6』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031108&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路7』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv13$LR•IPV4•44『线路7』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000021303&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路8』 +http://101.6.130.52:1234/608807423$LR•IPV4•44『线路8』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://111.29.9.35:6610/000000001000/1000000002000021303/index.m3u8?channel-id=ystenlive&Contentid=1000000002000021303&livemode=1&stbId=3$LR•IPV4•44『线路9』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000001827&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路9』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://111.29.9.33:6610/000000001000/1000000002000021303/index.m3u8?channel-id=bestzb&Contentid=1000000002000021303&livemode=1&stbId=3$LR•IPV4•44『线路10』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031108&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路10』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•44『线路11』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000021303&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路11』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4•44『线路12』 +http://111.29.9.35:6610/000000001000/1000000002000021303/index.m3u8?channel-id=ystenlive&Contentid=1000000002000021303&livemode=1&stbId=3$LR•IPV4•44『线路12』 #EXTINF:-1 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•44『线路13』 +http://111.29.9.33:6610/000000001000/1000000002000021303/index.m3u8?channel-id=bestzb&Contentid=1000000002000021303&livemode=1&stbId=3$LR•IPV4•44『线路13』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 http://120.76.248.139/live/bfgd/4200000067.m3u8$LR•IPV4•44『线路14』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 @@ -1388,49 +1390,49 @@ https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•44『线路37』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•44『线路38』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://go.bkpcp.top/mg/cctv13$LR•IPV4•44『线路39』 +http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•44『线路39』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•44『线路40』 +http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•44『线路40』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•44『线路41』 +http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•44『线路41』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•44『线路42』 +http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•44『线路42』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•44『线路43』 +http://go.bkpcp.top/mg/cctv13$LR•IPV4•44『线路43』 #EXTINF:-1 tvg-name="CCTV13" group-title="央视",CCTV13 -http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•44『线路44』 +https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•44『线路44』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://60.10.139.113:8801/hls/13/index.m3u8$LR•IPV4•46『线路1』 +http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•46『线路1』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•46『线路2』 +http://60.10.139.113:8801/hls/13/index.m3u8$LR•IPV4•46『线路2』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://124.228.160.210:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路3』 +http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•46『线路3』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://36.136.38.87:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路4』 +http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•46『线路4』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv14$LR•IPV4•46『线路5』 +http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://101.6.130.52:1234/624878440$LR•IPV4•46『线路6』 +http://124.228.160.210:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路7』 +http://36.136.38.87:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路7』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000023358&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路8』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv14$LR•IPV4•46『线路8』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000008170&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路9』 +http://101.6.130.52:1234/624878440$LR•IPV4•46『线路9』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021349&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路10』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路10』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000000172&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路11』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000023358&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路11』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://111.29.9.36:6610/000000001000/5000000004000006673/index.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=3$LR•IPV4•46『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000008170&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路12』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://111.29.9.33:6610/000000001000/1000000001000008170/index.m3u8?channel-id=bestzb&Contentid=1000000001000008170&livemode=1&stbId=3$LR•IPV4•46『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021349&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路13』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•46『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000000172&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 -http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•46『线路15』 +http://111.29.9.36:6610/000000001000/5000000004000006673/index.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=3$LR•IPV4•46『线路15』 #EXTINF:-1 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•46『线路16』 +http://111.29.9.33:6610/000000001000/1000000001000008170/index.m3u8?channel-id=bestzb&Contentid=1000000001000008170&livemode=1&stbId=3$LR•IPV4•46『线路16』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 http://120.76.248.139/live/bfgd/4200000132.m3u8$LR•IPV4•46『线路17』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 @@ -1492,107 +1494,109 @@ http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•46『线路45』 #EXTINF:-1 tvg-name="CCTV14" group-title="央视",CCTV14 http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•46『线路46』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://60.10.139.113:8801/hls/97/index.m3u8$LR•IPV4•44『线路1』 +http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•45『线路1』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://74.91.26.218:82/live/cctv15hd.m3u8$LR•IPV4•44『线路2』 +http://60.10.139.113:8801/hls/97/index.m3u8$LR•IPV4•45『线路2』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://198.204.228.26/live/cctv15hd.m3u8$LR•IPV4•44『线路3』 +http://74.91.26.218:82/live/cctv15hd.m3u8$LR•IPV4•45『线路3』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://124.228.160.210:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路4』 +http://198.204.228.26/live/cctv15hd.m3u8$LR•IPV4•45『线路4』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://36.136.38.87:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路5』 +http://124.228.160.210:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路5』 #EXTINF:-1 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•44『线路6』 +http://36.136.38.87:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路6』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•44『线路7』 +http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路7』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv15$LR•IPV4•44『线路8』 +http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•45『线路8』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://101.6.130.52:1234/673168223$LR•IPV4•44『线路9』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv15$LR•IPV4•45『线路9』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000018417&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路10』 +http://101.6.130.52:1234/673168223$LR•IPV4•45『线路10』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031109&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路11』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000018417&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路11』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000008163&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031109&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路12』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://111.29.9.36:6610/000000001000/1000000002000008163/index.m3u8?channel-id=ystenlive&Contentid=1000000002000008163&livemode=1&stbId=3$LR•IPV4•44『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000008163&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路13』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://111.29.9.33:6610/000000001000/1000000002000008163/index.m3u8?channel-id=bestzb&Contentid=1000000002000008163&livemode=1&stbId=3$LR•IPV4•44『线路14』 +http://111.29.9.36:6610/000000001000/1000000002000008163/index.m3u8?channel-id=ystenlive&Contentid=1000000002000008163&livemode=1&stbId=3$LR•IPV4•45『线路14』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•44『线路15』 +http://111.29.9.33:6610/000000001000/1000000002000008163/index.m3u8?channel-id=bestzb&Contentid=1000000002000008163&livemode=1&stbId=3$LR•IPV4•45『线路15』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://120.76.248.139/live/bfgd/4200000133.m3u8$LR•IPV4•44『线路16』 +http://120.76.248.139/live/bfgd/4200000133.m3u8$LR•IPV4•45『线路16』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -https://live.chinacert.cftest5.cn/cnmg/live/673168223$LR•IPV4•44『线路17』 +https://live.chinacert.cftest5.cn/cnmg/live/673168223$LR•IPV4•45『线路17』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://m.061899.xyz/mg/cctv15$LR•IPV4•44『线路18』 +http://m.061899.xyz/mg/cctv15$LR•IPV4•45『线路18』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://fn.gcl.de5.net:5908/gsh950428/673168223$LR•IPV4•44『线路19』 +http://fn.gcl.de5.net:5908/gsh950428/673168223$LR•IPV4•45『线路19』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://wfenf.x3322.net:7788/673168223$LR•IPV4•44『线路20』 +http://wfenf.x3322.net:7788/673168223$LR•IPV4•45『线路20』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://106.5.175.159:1234/673168223$LR•IPV4•44『线路21』 +http://106.5.175.159:1234/673168223$LR•IPV4•45『线路21』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://36.104.221.222:7788/673168223$LR•IPV4•44『线路22』 +http://36.104.221.222:7788/673168223$LR•IPV4•45『线路22』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://115.58.151.196:1234/673168223$LR•IPV4•44『线路23』 +http://115.58.151.196:1234/673168223$LR•IPV4•45『线路23』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://182.61.15.163:80/673168223$LR•IPV4•44『线路24』 +http://182.61.15.163:80/673168223$LR•IPV4•45『线路24』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://121.23.132.14:7788/673168223$LR•IPV4•44『线路25』 +http://121.23.132.14:7788/673168223$LR•IPV4•45『线路25』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://120.4.126.153:1234/673168223$LR•IPV4•44『线路26』 +http://120.4.126.153:1234/673168223$LR•IPV4•45『线路26』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://111.43.126.240:9003/hls/15/index.m3u8$LR•IPV4•44『线路27』 +http://111.43.126.240:9003/hls/15/index.m3u8$LR•IPV4•45『线路27』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://47.119.24.76:59093/673168223$LR•IPV4•44『线路28』 +http://47.119.24.76:59093/673168223$LR•IPV4•45『线路28』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://222.134.19.49:8090/673168223$LR•IPV4•44『线路29』 +http://222.134.19.49:8090/673168223$LR•IPV4•45『线路29』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://rihou.cc:555/tv/[mg]CCTV-15$LR•IPV4•44『线路30』 +http://rihou.cc:555/tv/[mg]CCTV-15$LR•IPV4•45『线路30』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://139.155.89.87:1000/673168223$LR•IPV4•44『线路31』 +http://139.155.89.87:1000/673168223$LR•IPV4•45『线路31』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://101.34.236.223:1112/673168223$LR•IPV4•44『线路32』 +http://101.34.236.223:1112/673168223$LR•IPV4•45『线路32』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225785/1.m3u8$LR•IPV4•44『线路33』 +http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225785/1.m3u8$LR•IPV4•45『线路33』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225785/index.m3u8$LR•IPV4•44『线路34』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225785/index.m3u8$LR•IPV4•45『线路34』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227361/index.m3u8$LR•IPV4•44『线路35』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227361/index.m3u8$LR•IPV4•45『线路35』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•44『线路36』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•45『线路36』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•44『线路37』 +https://piccpndks.v.kcdnvip.com/audio/cctv15_2/index.m3u8$LR•IPV4•45『线路37』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://111.8.224.6:9999/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路38』 +http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•45『线路38』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•44『线路39』 +http://111.8.224.6:9999/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路39』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•44『线路40』 +https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•45『线路40』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•44『线路41』 +http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•45『线路41』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•44『线路42』 +http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•45『线路42』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•44『线路43』 +http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•45『线路43』 #EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 -http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•44『线路44』 +http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•45『线路44』 +#EXTINF:-1 tvg-name="CCTV15" group-title="央视",CCTV15 +http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•45『线路45』 #EXTINF:-1 tvg-name="CCTV16" group-title="央视",CCTV16 -http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•19『线路1』 +http://drive.mxmy.net:8888/udp/239.3.1.184:8001$LR•IPV4•19『线路1』 #EXTINF:-1 tvg-name="CCTV16" group-title="央视",CCTV16 -https://epg.pw/stream/c1beb2abcba5aef09c2f58efc3ca84b76de2c7b9cf60762b0d79772d9e70d454.m3u8$LR•IPV4•19『线路2』 +http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•19『线路2』 #EXTINF:-1 tvg-name="CCTV16" group-title="央视",CCTV16 -http://183.11.239.36:808/hls/169/index.m3u8$LR•IPV4•19『线路3』 +https://epg.pw/stream/c1beb2abcba5aef09c2f58efc3ca84b76de2c7b9cf60762b0d79772d9e70d454.m3u8$LR•IPV4•19『线路3』 #EXTINF:-1 tvg-name="CCTV16" group-title="央视",CCTV16 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv16$LR•IPV4•19『线路4』 +http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•19『线路4』 #EXTINF:-1 tvg-name="CCTV16" group-title="央视",CCTV16 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000233001&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路5』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv16$LR•IPV4•19『线路5』 #EXTINF:-1 tvg-name="CCTV16" group-title="央视",CCTV16 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000233002&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路6』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000233001&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路6』 #EXTINF:-1 tvg-name="CCTV16" group-title="央视",CCTV16 -http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•19『线路7』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000233002&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路7』 #EXTINF:-1 tvg-name="CCTV16" group-title="央视",CCTV16 http://m.061899.xyz/mg/cctv16$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-name="CCTV16" group-title="央视",CCTV16 @@ -1618,25 +1622,25 @@ http://173.208.212.130:8181/720p/cctv16.m3u8$LR•IPV4•19『线路18』 #EXTINF:-1 tvg-name="CCTV16" group-title="央视",CCTV16 http://204.12.221.218:8181/3m1080p/cctv16.m3u8$LR•IPV4•19『线路19』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 -http://60.10.139.113:8801/hls/98/index.m3u8$LR•IPV4•39『线路1』 +http://123.130.84.106:8154/tsfile/live/0019_1.m3u8$LR•IPV4•39『线路1』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 -http://222.169.85.8:9901/tsfile/live/0007_1.m3u8$LR•IPV4•39『线路2』 +http://60.10.139.113:8801/hls/98/index.m3u8$LR•IPV4•39『线路2』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 -https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv17$LR•IPV4•39『线路3』 +http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•39『线路3』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 -http://101.6.130.52:1234/673168256$LR•IPV4•39『线路4』 +http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•39『线路4』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000288014&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路5』 +https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv17$LR•IPV4•39『线路5』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000056836&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路6』 +http://101.6.130.52:1234/673168256$LR•IPV4•39『线路6』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000268004&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路7』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000288014&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路7』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 -http://111.29.9.33:6610/000000001000/1000000005000056836/index.m3u8?channel-id=bestzb&Contentid=1000000005000056836&livemode=1&stbId=3$LR•IPV4•39『线路8』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000056836&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路8』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 -http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•39『线路9』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000268004&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路9』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 -http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•39『线路10』 +http://111.29.9.33:6610/000000001000/1000000005000056836/index.m3u8?channel-id=bestzb&Contentid=1000000005000056836&livemode=1&stbId=3$LR•IPV4•39『线路10』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 http://120.76.248.139/live/bfgd/4200000204.m3u8$LR•IPV4•39『线路11』 #EXTINF:-1 tvg-name="CCTV17" group-title="央视",CCTV17 @@ -1698,11 +1702,11 @@ http://204.12.221.218:8181/3m1080p/cctv17.m3u8$LR•IPV4•39『线路39』 #EXTINF:-1 tvg-name="CCTV第一剧场" group-title="央视",CCTV第一剧场 https://epg.pw/stream/6d7bf281e3d739806a73f5373acaa6e01988ec9739f5ac1355ce54b47a928472.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-name="CCTV第一剧场" group-title="央视",CCTV第一剧场 -http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•10『线路2』 +http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-name="CCTV第一剧场" group-title="央视",CCTV第一剧场 -http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•10『线路3』 +http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-name="CCTV第一剧场" group-title="央视",CCTV第一剧场 -http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•10『线路4』 +http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-name="CCTV第一剧场" group-title="央视",CCTV第一剧场 http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226959/index.m3u8$LR•IPV6•10『线路5』 #EXTINF:-1 tvg-name="CCTV第一剧场" group-title="央视",CCTV第一剧场 @@ -1716,11 +1720,11 @@ http://173.208.212.130:8181/720p/dyjc.m3u8$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-name="CCTV第一剧场" group-title="央视",CCTV第一剧场 http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226959/index.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-name="CCTV怀旧剧场" group-title="央视",CCTV怀旧剧场 -http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•9『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-name="CCTV怀旧剧场" group-title="央视",CCTV怀旧剧场 -http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•9『线路2』 +http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-name="CCTV怀旧剧场" group-title="央视",CCTV怀旧剧场 -http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•9『线路3』 +http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-name="CCTV怀旧剧场" group-title="央视",CCTV怀旧剧场 http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226972/index.m3u8$LR•IPV6•9『线路4』 #EXTINF:-1 tvg-name="CCTV怀旧剧场" group-title="央视",CCTV怀旧剧场 @@ -1734,11 +1738,11 @@ http://173.208.212.130:8181/720p/hjjc.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-name="CCTV怀旧剧场" group-title="央视",CCTV怀旧剧场 http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226972/index.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-name="CCTV风云剧场" group-title="央视",CCTV风云剧场 -http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•9『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-name="CCTV风云剧场" group-title="央视",CCTV风云剧场 -http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•9『线路2』 +http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-name="CCTV风云剧场" group-title="央视",CCTV风云剧场 -http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•9『线路3』 +http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-name="CCTV风云剧场" group-title="央视",CCTV风云剧场 http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226950/index.m3u8$LR•IPV6•9『线路4』 #EXTINF:-1 tvg-name="CCTV风云剧场" group-title="央视",CCTV风云剧场 @@ -1752,9 +1756,9 @@ http://173.208.212.130:8181/720p/fyjc.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-name="CCTV风云剧场" group-title="央视",CCTV风云剧场 http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226950/index.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-name="CCTV风云音乐" group-title="央视",CCTV风云音乐 -http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•8『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-name="CCTV风云音乐" group-title="央视",CCTV风云音乐 -http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•8『线路2』 +http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-name="CCTV风云音乐" group-title="央视",CCTV风云音乐 http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226953/index.m3u8$LR•IPV6•8『线路3』 #EXTINF:-1 tvg-name="CCTV风云音乐" group-title="央视",CCTV风云音乐 @@ -1768,11 +1772,11 @@ http://173.208.212.130:8181/720p/fyyy.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-name="CCTV风云音乐" group-title="央视",CCTV风云音乐 http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226953/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-name="CCTV兵器科技" group-title="央视",CCTV兵器科技 -http://60.10.139.113:8801/hls/72/index.m3u8$LR•IPV4•9『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-name="CCTV兵器科技" group-title="央视",CCTV兵器科技 -http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4•9『线路2』 +http://38.75.136.137:98/gslb/dsdqpub/bqkj.m3u8?auth=testpub$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-name="CCTV兵器科技" group-title="央视",CCTV兵器科技 -http://38.75.136.137:98/gslb/dsdqpub/bqkj.m3u8?auth=testpub$LR•IPV4•9『线路3』 +http://60.10.139.113:8801/hls/72/index.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-name="CCTV兵器科技" group-title="央视",CCTV兵器科技 http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226975/index.m3u8$LR•IPV6•9『线路4』 #EXTINF:-1 tvg-name="CCTV兵器科技" group-title="央视",CCTV兵器科技 @@ -1786,13 +1790,13 @@ http://173.208.212.130:8181/720p/gfjs.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-name="CCTV兵器科技" group-title="央视",CCTV兵器科技 http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226975/index.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-name="CCTV风云足球" group-title="央视",CCTV风云足球 -http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•19『线路1』 +https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•19『线路1』 #EXTINF:-1 tvg-name="CCTV风云足球" group-title="央视",CCTV风云足球 -http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•19『线路2』 +http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•19『线路2』 #EXTINF:-1 tvg-name="CCTV风云足球" group-title="央视",CCTV风云足球 -https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•19『线路3』 +http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•19『线路3』 #EXTINF:-1 tvg-name="CCTV风云足球" group-title="央视",CCTV风云足球 -http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•19『线路4』 +http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•19『线路4』 #EXTINF:-1 tvg-name="CCTV风云足球" group-title="央视",CCTV风云足球 http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226984/index.m3u8$LR•IPV6•19『线路5』 #EXTINF:-1 tvg-name="CCTV风云足球" group-title="央视",CCTV风云足球 @@ -1868,9 +1872,9 @@ http://207.56.13.146:81/cdnlive/ystq.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-name="CCTV央视台球" group-title="央视",CCTV央视台球 http://192.151.150.154/live/ystq.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-name="CCTV女性时尚" group-title="央视",CCTV女性时尚 -http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•8『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-name="CCTV女性时尚" group-title="央视",CCTV女性时尚 -http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•8『线路2』 +http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-name="CCTV女性时尚" group-title="央视",CCTV女性时尚 http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226969/index.m3u8$LR•IPV6•8『线路3』 #EXTINF:-1 tvg-name="CCTV女性时尚" group-title="央视",CCTV女性时尚 @@ -1884,11 +1888,11 @@ http://173.208.212.130:8181/720p/nxss.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-name="CCTV女性时尚" group-title="央视",CCTV女性时尚 http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226969/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-name="CCTV电视指南" group-title="央视",CCTV电视指南 -http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•7『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="CCTV电视指南" group-title="央视",CCTV电视指南 -http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•7『线路2』 +http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="CCTV电视指南" group-title="央视",CCTV电视指南 -http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•7『线路3』 +http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="CCTV电视指南" group-title="央视",CCTV电视指南 http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226987/index.m3u8$LR•IPV6•7『线路4』 #EXTINF:-1 tvg-name="CCTV电视指南" group-title="央视",CCTV电视指南 @@ -1898,11 +1902,11 @@ http://192.151.150.154/live/dszn.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-name="CCTV电视指南" group-title="央视",CCTV电视指南 http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226987/index.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="CCTV世界地理" group-title="央视",CCTV世界地理 -http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•9『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-name="CCTV世界地理" group-title="央视",CCTV世界地理 -http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•9『线路2』 +http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-name="CCTV世界地理" group-title="央视",CCTV世界地理 -http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•9『线路3』 +http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-name="CCTV世界地理" group-title="央视",CCTV世界地理 http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226947/index.m3u8$LR•IPV6•9『线路4』 #EXTINF:-1 tvg-name="CCTV世界地理" group-title="央视",CCTV世界地理 @@ -1956,43 +1960,43 @@ http://139.155.89.87:1000/959986621$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-name="中国天气" group-title="央视",中国天气 http://101.34.236.223:1112/959986621$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://117.161.133.51:81/gitv_live/G_CETV-1/G_CETV-1.m3u8?p=GITV$LR•IPV4•23『线路1』 +http://101.6.130.52:1234/923287154$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://101.6.130.52:1234/923287154$LR•IPV4•23『线路2』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000027253&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000027253&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路3』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288015&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288015&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路4』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000002000002652&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000002000002652&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路5』 +http://120.76.248.139/live/bfgd/4200000135.m3u8$LR•IPV4•23『线路5』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://120.76.248.139/live/bfgd/4200000135.m3u8$LR•IPV4•23『线路6』 +https://live.chinacert.cftest5.cn/cnmg/live/923287154$LR•IPV4•23『线路6』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -https://live.chinacert.cftest5.cn/cnmg/live/923287154$LR•IPV4•23『线路7』 +http://fn.gcl.de5.net:5908/gsh950428/923287154$LR•IPV4•23『线路7』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://fn.gcl.de5.net:5908/gsh950428/923287154$LR•IPV4•23『线路8』 +http://wfenf.x3322.net:7788/923287154$LR•IPV4•23『线路8』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://wfenf.x3322.net:7788/923287154$LR•IPV4•23『线路9』 +http://106.5.175.159:1234/923287154$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://106.5.175.159:1234/923287154$LR•IPV4•23『线路10』 +http://36.104.221.222:7788/923287154$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://36.104.221.222:7788/923287154$LR•IPV4•23『线路11』 +http://115.58.151.196:1234/923287154$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://115.58.151.196:1234/923287154$LR•IPV4•23『线路12』 +http://182.61.15.163:80/923287154$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://182.61.15.163:80/923287154$LR•IPV4•23『线路13』 +http://121.23.132.14:7788/923287154$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://121.23.132.14:7788/923287154$LR•IPV4•23『线路14』 +http://120.4.126.153:1234/923287154$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://120.4.126.153:1234/923287154$LR•IPV4•23『线路15』 +http://47.119.24.76:59093/923287154$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://47.119.24.76:59093/923287154$LR•IPV4•23『线路16』 +http://222.134.19.49:8090/923287154$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://222.134.19.49:8090/923287154$LR•IPV4•23『线路17』 +http://139.155.89.87:1000/923287154$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://139.155.89.87:1000/923287154$LR•IPV4•23『线路18』 +http://101.34.236.223:1112/923287154$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 -http://101.34.236.223:1112/923287154$LR•IPV4•23『线路19』 +http://117.161.133.51:81/gitv_live/G_CETV-1/G_CETV-1.m3u8?p=GITV$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 http://111.43.126.240:9003/hls/20/index.m3u8$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 @@ -2002,43 +2006,43 @@ http://111.29.9.33:6610/000000001000/5000000002000002652/index.m3u8?channel-id=b #EXTINF:-1 tvg-name="CETV1" group-title="央视",CETV1 http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225753/index.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://117.161.133.51:81/gitv_live/G_CETV-2/G_CETV-2.m3u8?p=GITV$LR•IPV4•21『线路1』 +http://101.6.130.52:1234/923287211$LR•IPV4•21『线路1』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://101.6.130.52:1234/923287211$LR•IPV4•21『线路2』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288017&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路2』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288017&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路3』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266004&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路3』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266004&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路4』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031201&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路4』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031201&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路5』 +http://120.76.248.139/live/bfgd/4200000492.m3u8$LR•IPV4•21『线路5』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://120.76.248.139/live/bfgd/4200000492.m3u8$LR•IPV4•21『线路6』 +https://live.chinacert.cftest5.cn/cnmg/live/923287211$LR•IPV4•21『线路6』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -https://live.chinacert.cftest5.cn/cnmg/live/923287211$LR•IPV4•21『线路7』 +http://fn.gcl.de5.net:5908/gsh950428/923287211$LR•IPV4•21『线路7』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://fn.gcl.de5.net:5908/gsh950428/923287211$LR•IPV4•21『线路8』 +http://wfenf.x3322.net:7788/923287211$LR•IPV4•21『线路8』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://wfenf.x3322.net:7788/923287211$LR•IPV4•21『线路9』 +http://106.5.175.159:1234/923287211$LR•IPV4•21『线路9』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://106.5.175.159:1234/923287211$LR•IPV4•21『线路10』 +http://36.104.221.222:7788/923287211$LR•IPV4•21『线路10』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://36.104.221.222:7788/923287211$LR•IPV4•21『线路11』 +http://115.58.151.196:1234/923287211$LR•IPV4•21『线路11』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://115.58.151.196:1234/923287211$LR•IPV4•21『线路12』 +http://182.61.15.163:80/923287211$LR•IPV4•21『线路12』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://182.61.15.163:80/923287211$LR•IPV4•21『线路13』 +http://121.23.132.14:7788/923287211$LR•IPV4•21『线路13』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://121.23.132.14:7788/923287211$LR•IPV4•21『线路14』 +http://120.4.126.153:1234/923287211$LR•IPV4•21『线路14』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://120.4.126.153:1234/923287211$LR•IPV4•21『线路15』 +http://47.119.24.76:59093/923287211$LR•IPV4•21『线路15』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://47.119.24.76:59093/923287211$LR•IPV4•21『线路16』 +http://222.134.19.49:8090/923287211$LR•IPV4•21『线路16』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://222.134.19.49:8090/923287211$LR•IPV4•21『线路17』 +http://139.155.89.87:1000/923287211$LR•IPV4•21『线路17』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://139.155.89.87:1000/923287211$LR•IPV4•21『线路18』 +http://101.34.236.223:1112/923287211$LR•IPV4•21『线路18』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 -http://101.34.236.223:1112/923287211$LR•IPV4•21『线路19』 +http://117.161.133.51:81/gitv_live/G_CETV-2/G_CETV-2.m3u8?p=GITV$LR•IPV4•21『线路19』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226537/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7AxXs4eTU2oiWrhopr9sHw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNxsM0Bor098BJglrhfEQTl%2CEND$LR•IPV6•21『线路20』 #EXTINF:-1 tvg-name="CETV2" group-title="央视",CETV2 @@ -2086,15 +2090,15 @@ http://111.29.9.33:6610/000000001000/5000000011000031126/index.m3u8?channel-id=b #EXTINF:-1 tvg-name="CETV4" group-title="央视",CETV4 http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226225/index.m3u8$LR•IPV4•21『线路21』 #EXTINF:-1 tvg-name="文化精品" group-title="央视",文化精品 -http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•7『线路1』 +http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="文化精品" group-title="央视",文化精品 -http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•7『线路2』 +http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="文化精品" group-title="央视",文化精品 -http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•7『线路3』 +http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="文化精品" group-title="央视",文化精品 -http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•7『线路4』 +http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-name="文化精品" group-title="央视",文化精品 -http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•7『线路5』 +http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-name="文化精品" group-title="央视",文化精品 http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226981/index.m3u8$LR•IPV6•7『线路6』 #EXTINF:-1 tvg-name="文化精品" group-title="央视",文化精品 @@ -2114,15 +2118,15 @@ https://0472.org/hls/cgtnd.m3u8?3.24.120:5140$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-name="CGTN俄语" group-title="央视",CGTN俄语 https://0472.org/hls/cgtne.m3u8$LR•IPV4•20『线路1』 #EXTINF:-1 tvg-name="CGTN俄语" group-title="央视",CGTN俄语 -https://russian-livews.cgtn.com/hls/LSvexABhNipibK5KRuUkvHZ7220802LSTeze9o8tdFXMHsb1VosgoT220802cd/playlist.m3u8$LR•IPV4•20『线路2』 +p3p://167.114.175.6:55331/60e648570006544872703d417386353f$LR•IPV4•20『线路2』 #EXTINF:-1 tvg-name="CGTN俄语" group-title="央视",CGTN俄语 -http://101.6.130.52:1234/609006446$LR•IPV4•20『线路3』 +https://russian-livews.cgtn.com/hls/LSvexABhNipibK5KRuUkvHZ7220802LSTeze9o8tdFXMHsb1VosgoT220802cd/playlist.m3u8$LR•IPV4•20『线路3』 #EXTINF:-1 tvg-name="CGTN俄语" group-title="央视",CGTN俄语 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000280004&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路4』 +http://101.6.130.52:1234/609006446$LR•IPV4•20『线路4』 #EXTINF:-1 tvg-name="CGTN俄语" group-title="央视",CGTN俄语 -https://0472.org/hls/cgtne.m3u8?3.24.170:5140$LR•IPV4•20『线路5』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000280004&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路5』 #EXTINF:-1 tvg-name="CGTN俄语" group-title="央视",CGTN俄语 -p3p://167.114.175.6:55331/60e648570006544872703d417386353f$LR•IPV4•20『线路6』 +https://0472.org/hls/cgtne.m3u8?3.24.170:5140$LR•IPV4•20『线路6』 #EXTINF:-1 tvg-name="CGTN俄语" group-title="央视",CGTN俄语 https://live.chinacert.cftest5.cn/cnmg/live/609006446$LR•IPV4•20『线路7』 #EXTINF:-1 tvg-name="CGTN俄语" group-title="央视",CGTN俄语 @@ -2208,167 +2212,167 @@ https://0472.org/hls/cgtna.m3u8?3.24.160:5140$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-name="CGTN阿语" group-title="央视",CGTN阿语 http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227095/index.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://amg00405-rakutentv-cgtn-rakuten-i9tar.amagi.tv/master.m3u8$LR•IPV4•81『线路1』 +http://112.27.235.94:8000/hls/17/index.m3u8$LR•IPV4•81『线路1』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://arabic-livews.cgtn.com/hls/LSveq57bErWLinBnxosqjisZ220802LSTefTAS9zc9mpU08y3np9TH220802cd/playlist.m3u8$LR•IPV4•81『线路2』 +https://rthktv34-live.akamaized.net/hls/live/2101642/RTHKTV34/stream04/streamPlaylist.m3u8$LR•IPV4•81『线路2』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://espanol-livews.cgtn.com/hls/LSveOGBaBw41Ea7ukkVAUdKQ220802LSTexu6xAuFH8VZNBLE1ZNEa220802cd/playlist.m3u8$LR•IPV4•81『线路3』 +https://rthktv35-live.akamaized.net/hls/live/2101643/RTHKTV35/stream02/streamPlaylist.m3u8$LR•IPV4•81『线路3』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/cgtneurope.m3u8$LR•IPV4•81『线路4』 +p3p://167.114.175.6:55331/63ec50f4000113f9e455fe7b1ca5372f$LR•IPV4•81『线路4』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://amg01314-cgtn-amg01314c2-rakuten-us-1319.playouts.now.amagi.tv/cgtn-fr-rakuten/playlist.m3u8$LR•IPV4•81『线路5』 +p3p://167.114.175.6:55331/63ec5137000178e2e457045579c13af1$LR•IPV4•81『线路5』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://amg01314-amg01314c6-distrotv-us-10220.playouts.now.amagi.tv/playlist/amg01314-cgtn-cgtnglobalbiz-distrotvus/playlist.m3u8$LR•IPV4•81『线路6』 +p3p://167.114.175.6:55331/63ec51ab000772cce458cafd43a96c5d$LR•IPV4•81『线路6』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://amg00405-rakutentv-cgtndocumentary-rakuten-0ql8j.amagi.tv/master.m3u8$LR•IPV4•81『线路7』 +p3p://167.114.175.6:55331/60e647e200033b4a726e736d14e93334$LR•IPV4•81『线路7』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://mn-nl.mncdn.com/dogusdyg_drone/cgtn/playlist.m3u8$LR•IPV4•81『线路8』 +http://60.10.139.113:8801/hls/14/index.m3u8$LR•IPV4•81『线路8』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://112.27.235.94:8000/hls/17/index.m3u8$LR•IPV4•81『线路9』 +https://english-livebkali.cgtn.com/live/encgtn_0.m3u8$LR•IPV4•81『线路9』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://60.10.139.113:8801/hls/14/index.m3u8$LR•IPV4•81『线路10』 +https://amg01314-amg01314c6-distrotv-us-10220.playouts.now.amagi.tv/index_6.m3u8$LR•IPV4•81『线路10』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://english-livebkali.cgtn.com/live/encgtn_0.m3u8$LR•IPV4•81『线路11』 +http://101.6.130.52:1234/609006487$LR•IPV4•81『线路11』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://amg01314-amg01314c6-distrotv-us-10220.playouts.now.amagi.tv/index_6.m3u8$LR•IPV4•81『线路12』 +http://101.6.130.52:1234/609154345$LR•IPV4•81『线路12』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://101.6.130.52:1234/609006487$LR•IPV4•81『线路13』 +http://101.6.130.52:1234/609006450$LR•IPV4•81『线路13』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://101.6.130.52:1234/609154345$LR•IPV4•81『线路14』 +http://101.6.130.52:1234/609017205$LR•IPV4•81『线路14』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://101.6.130.52:1234/609006450$LR•IPV4•81『线路15』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=4810873738577663591&livemode=1&stbId=yu&mode=1&$LR•IPV4•81『线路15』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://101.6.130.52:1234/609017205$LR•IPV4•81『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009569&livemode=1&stbId=yu&mode=1&$LR•IPV4•81『线路16』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=4810873738577663591&livemode=1&stbId=yu&mode=1&$LR•IPV4•81『线路17』 +https://live.chinacert.cftest5.cn/cnmg/live/609006487$LR•IPV4•81『线路17』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009569&livemode=1&stbId=yu&mode=1&$LR•IPV4•81『线路18』 +https://live.chinacert.cftest5.cn/cnmg/live/609154345$LR•IPV4•81『线路18』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://rthktv34-live.akamaized.net/hls/live/2101642/RTHKTV34/stream04/streamPlaylist.m3u8$LR•IPV4•81『线路19』 +https://live.chinacert.cftest5.cn/cnmg/live/609006450$LR•IPV4•81『线路19』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://rthktv35-live.akamaized.net/hls/live/2101643/RTHKTV35/stream02/streamPlaylist.m3u8$LR•IPV4•81『线路20』 +https://live.chinacert.cftest5.cn/cnmg/live/609017205$LR•IPV4•81『线路20』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -p3p://167.114.175.6:55331/63ec50f4000113f9e455fe7b1ca5372f$LR•IPV4•81『线路21』 +http://fn.gcl.de5.net:5908/gsh950428/609006487$LR•IPV4•81『线路21』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -p3p://167.114.175.6:55331/63ec5137000178e2e457045579c13af1$LR•IPV4•81『线路22』 +http://fn.gcl.de5.net:5908/gsh950428/609154345$LR•IPV4•81『线路22』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -p3p://167.114.175.6:55331/63ec51ab000772cce458cafd43a96c5d$LR•IPV4•81『线路23』 +http://fn.gcl.de5.net:5908/gsh950428/609006450$LR•IPV4•81『线路23』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -p3p://167.114.175.6:55331/60e647e200033b4a726e736d14e93334$LR•IPV4•81『线路24』 +http://fn.gcl.de5.net:5908/gsh950428/609017205$LR•IPV4•81『线路24』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://live.chinacert.cftest5.cn/cnmg/live/609006487$LR•IPV4•81『线路25』 +http://wfenf.x3322.net:7788/609006487$LR•IPV4•81『线路25』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://live.chinacert.cftest5.cn/cnmg/live/609154345$LR•IPV4•81『线路26』 +http://wfenf.x3322.net:7788/609154345$LR•IPV4•81『线路26』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://live.chinacert.cftest5.cn/cnmg/live/609006450$LR•IPV4•81『线路27』 +http://wfenf.x3322.net:7788/609006450$LR•IPV4•81『线路27』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -https://live.chinacert.cftest5.cn/cnmg/live/609017205$LR•IPV4•81『线路28』 +http://wfenf.x3322.net:7788/609017205$LR•IPV4•81『线路28』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://fn.gcl.de5.net:5908/gsh950428/609006487$LR•IPV4•81『线路29』 +http://106.5.175.159:1234/609006487$LR•IPV4•81『线路29』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://fn.gcl.de5.net:5908/gsh950428/609154345$LR•IPV4•81『线路30』 +http://106.5.175.159:1234/609154345$LR•IPV4•81『线路30』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://fn.gcl.de5.net:5908/gsh950428/609006450$LR•IPV4•81『线路31』 +http://106.5.175.159:1234/609006450$LR•IPV4•81『线路31』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://fn.gcl.de5.net:5908/gsh950428/609017205$LR•IPV4•81『线路32』 +http://106.5.175.159:1234/609017205$LR•IPV4•81『线路32』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://wfenf.x3322.net:7788/609006487$LR•IPV4•81『线路33』 +http://36.104.221.222:7788/609006487$LR•IPV4•81『线路33』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://wfenf.x3322.net:7788/609154345$LR•IPV4•81『线路34』 +http://36.104.221.222:7788/609154345$LR•IPV4•81『线路34』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://wfenf.x3322.net:7788/609006450$LR•IPV4•81『线路35』 +http://36.104.221.222:7788/609006450$LR•IPV4•81『线路35』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://wfenf.x3322.net:7788/609017205$LR•IPV4•81『线路36』 +http://36.104.221.222:7788/609017205$LR•IPV4•81『线路36』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://106.5.175.159:1234/609006487$LR•IPV4•81『线路37』 +http://115.58.151.196:1234/609006487$LR•IPV4•81『线路37』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://106.5.175.159:1234/609154345$LR•IPV4•81『线路38』 +http://115.58.151.196:1234/609154345$LR•IPV4•81『线路38』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://106.5.175.159:1234/609006450$LR•IPV4•81『线路39』 +http://115.58.151.196:1234/609006450$LR•IPV4•81『线路39』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://106.5.175.159:1234/609017205$LR•IPV4•81『线路40』 +http://115.58.151.196:1234/609017205$LR•IPV4•81『线路40』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://36.104.221.222:7788/609006487$LR•IPV4•81『线路41』 +http://182.61.15.163:80/609006487$LR•IPV4•81『线路41』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://36.104.221.222:7788/609154345$LR•IPV4•81『线路42』 +http://182.61.15.163:80/609154345$LR•IPV4•81『线路42』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://36.104.221.222:7788/609006450$LR•IPV4•81『线路43』 +http://182.61.15.163:80/609006450$LR•IPV4•81『线路43』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://36.104.221.222:7788/609017205$LR•IPV4•81『线路44』 +http://182.61.15.163:80/609017205$LR•IPV4•81『线路44』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://115.58.151.196:1234/609006487$LR•IPV4•81『线路45』 +http://121.23.132.14:7788/609006487$LR•IPV4•81『线路45』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://115.58.151.196:1234/609154345$LR•IPV4•81『线路46』 +http://121.23.132.14:7788/609154345$LR•IPV4•81『线路46』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://115.58.151.196:1234/609006450$LR•IPV4•81『线路47』 +http://121.23.132.14:7788/609006450$LR•IPV4•81『线路47』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://115.58.151.196:1234/609017205$LR•IPV4•81『线路48』 +http://121.23.132.14:7788/609017205$LR•IPV4•81『线路48』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://182.61.15.163:80/609006487$LR•IPV4•81『线路49』 +http://120.4.126.153:1234/609006487$LR•IPV4•81『线路49』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://182.61.15.163:80/609154345$LR•IPV4•81『线路50』 +http://120.4.126.153:1234/609154345$LR•IPV4•81『线路50』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://182.61.15.163:80/609006450$LR•IPV4•81『线路51』 +http://120.4.126.153:1234/609006450$LR•IPV4•81『线路51』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://182.61.15.163:80/609017205$LR•IPV4•81『线路52』 +http://120.4.126.153:1234/609017205$LR•IPV4•81『线路52』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://121.23.132.14:7788/609006487$LR•IPV4•81『线路53』 +http://111.43.126.240:9003/hls/19/index.m3u8$LR•IPV4•81『线路53』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://121.23.132.14:7788/609154345$LR•IPV4•81『线路54』 +http://47.119.24.76:59093/609006487$LR•IPV4•81『线路54』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://121.23.132.14:7788/609006450$LR•IPV4•81『线路55』 +http://47.119.24.76:59093/609154345$LR•IPV4•81『线路55』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://121.23.132.14:7788/609017205$LR•IPV4•81『线路56』 +http://47.119.24.76:59093/609006450$LR•IPV4•81『线路56』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://120.4.126.153:1234/609006487$LR•IPV4•81『线路57』 +http://47.119.24.76:59093/609017205$LR•IPV4•81『线路57』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://120.4.126.153:1234/609154345$LR•IPV4•81『线路58』 +http://222.134.19.49:8090/609006487$LR•IPV4•81『线路58』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://120.4.126.153:1234/609006450$LR•IPV4•81『线路59』 +http://222.134.19.49:8090/609154345$LR•IPV4•81『线路59』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://120.4.126.153:1234/609017205$LR•IPV4•81『线路60』 +http://222.134.19.49:8090/609006450$LR•IPV4•81『线路60』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://111.43.126.240:9003/hls/19/index.m3u8$LR•IPV4•81『线路61』 +http://222.134.19.49:8090/609017205$LR•IPV4•81『线路61』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://47.119.24.76:59093/609006487$LR•IPV4•81『线路62』 +http://rihou.cc:555/tv/[mg]CGTN-西$LR•IPV4•81『线路62』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://47.119.24.76:59093/609154345$LR•IPV4•81『线路63』 +http://rihou.cc:555/tv/[mg]CGTN-阿$LR•IPV4•81『线路63』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://47.119.24.76:59093/609006450$LR•IPV4•81『线路64』 +http://rihou.cc:555/tv/[mg]CGTN-法$LR•IPV4•81『线路64』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://47.119.24.76:59093/609017205$LR•IPV4•81『线路65』 +http://139.155.89.87:1000/609006487$LR•IPV4•81『线路65』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://222.134.19.49:8090/609006487$LR•IPV4•81『线路66』 +http://139.155.89.87:1000/609154345$LR•IPV4•81『线路66』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://222.134.19.49:8090/609154345$LR•IPV4•81『线路67』 +http://139.155.89.87:1000/609006450$LR•IPV4•81『线路67』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://222.134.19.49:8090/609006450$LR•IPV4•81『线路68』 +http://139.155.89.87:1000/609017205$LR•IPV4•81『线路68』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://222.134.19.49:8090/609017205$LR•IPV4•81『线路69』 +http://101.34.236.223:1112/609006487$LR•IPV4•81『线路69』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://rihou.cc:555/tv/[mg]CGTN-西$LR•IPV4•81『线路70』 +http://101.34.236.223:1112/609154345$LR•IPV4•81『线路70』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://rihou.cc:555/tv/[mg]CGTN-阿$LR•IPV4•81『线路71』 +http://101.34.236.223:1112/609006450$LR•IPV4•81『线路71』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://rihou.cc:555/tv/[mg]CGTN-法$LR•IPV4•81『线路72』 +http://101.34.236.223:1112/609017205$LR•IPV4•81『线路72』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://139.155.89.87:1000/609006487$LR•IPV4•81『线路73』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227084/index.m3u8$LR•IPV4•81『线路73』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://139.155.89.87:1000/609154345$LR•IPV4•81『线路74』 +https://amg00405-rakutentv-cgtn-rakuten-i9tar.amagi.tv/master.m3u8$LR•IPV4•81『线路74』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://139.155.89.87:1000/609006450$LR•IPV4•81『线路75』 +https://arabic-livews.cgtn.com/hls/LSveq57bErWLinBnxosqjisZ220802LSTefTAS9zc9mpU08y3np9TH220802cd/playlist.m3u8$LR•IPV4•81『线路75』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://139.155.89.87:1000/609017205$LR•IPV4•81『线路76』 +https://espanol-livews.cgtn.com/hls/LSveOGBaBw41Ea7ukkVAUdKQ220802LSTexu6xAuFH8VZNBLE1ZNEa220802cd/playlist.m3u8$LR•IPV4•81『线路76』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://101.34.236.223:1112/609006487$LR•IPV4•81『线路77』 +https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/cgtneurope.m3u8$LR•IPV4•81『线路77』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://101.34.236.223:1112/609154345$LR•IPV4•81『线路78』 +https://amg01314-cgtn-amg01314c2-rakuten-us-1319.playouts.now.amagi.tv/cgtn-fr-rakuten/playlist.m3u8$LR•IPV4•81『线路78』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://101.34.236.223:1112/609006450$LR•IPV4•81『线路79』 +https://amg01314-amg01314c6-distrotv-us-10220.playouts.now.amagi.tv/playlist/amg01314-cgtn-cgtnglobalbiz-distrotvus/playlist.m3u8$LR•IPV4•81『线路79』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://101.34.236.223:1112/609017205$LR•IPV4•81『线路80』 +https://amg00405-rakutentv-cgtndocumentary-rakuten-0ql8j.amagi.tv/master.m3u8$LR•IPV4•81『线路80』 #EXTINF:-1 tvg-name="CGTN" group-title="央视",CGTN -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227084/index.m3u8$LR•IPV4•81『线路81』 +https://mn-nl.mncdn.com/dogusdyg_drone/cgtn/playlist.m3u8$LR•IPV4•81『线路81』 #EXTINF:-1 tvg-name="直播中国" group-title="央视",直播中国 https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8?contentid=2820180516001$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="直播中国" group-title="央视",直播中国 @@ -2384,25 +2388,25 @@ http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 http://112.27.235.94:8000/hls/50/index.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 -http://8.138.7.223/tv/cwjd.php$LR•IPV4•12『线路2』 +http://php.jdshipin.com/TVOD/iptv.php?id=cwjd$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 -http://cdn6.163189.xyz/163189/cwjd$LR•IPV4•12『线路3』 +http://ali.hlspull.yximgs.com/live/awei_cwjd.flv$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 -http://push.cdn1.hls123.de:8080/streams/g0jj471jied/index.m3u8$LR•IPV4•12『线路4』 +http://home.kuaidi521.com:35455/bptv/10000100000000050000000003887494.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 -https://cdn6.163189.xyz/163189/cwjd$LR•IPV4•12『线路5』 +http://cdn3.132.us.kg/live/cwjd/stream.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 -http://php.jdshipin.com/TVOD/iptv.php?id=cwjd$LR•IPV4•12『线路6』 +http://43.251.226.89:8080/play/906.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 -http://ali.hlspull.yximgs.com/live/awei_cwjd.flv$LR•IPV4•12『线路7』 +p3p://167.114.175.6:55331/65c5064800047df41ad1a47449e93b8b$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 -http://home.kuaidi521.com:35455/bptv/10000100000000050000000003887494.m3u8$LR•IPV4•12『线路8』 +http://8.138.7.223/tv/cwjd.php$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 -http://cdn3.132.us.kg/live/cwjd/stream.m3u8$LR•IPV4•12『线路9』 +http://cdn6.163189.xyz/163189/cwjd$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 -http://43.251.226.89:8080/play/906.m3u8$LR•IPV4•12『线路10』 +http://push.cdn1.hls123.de:8080/streams/g0jj471jied/index.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 -p3p://167.114.175.6:55331/65c5064800047df41ad1a47449e93b8b$LR•IPV4•12『线路11』 +https://cdn6.163189.xyz/163189/cwjd$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-name="重温经典" group-title="卫视",重温经典 http://107.150.60.122/live/cwjd.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-name="香港卫视" group-title="卫视",香港卫视 @@ -2426,61 +2430,61 @@ https://stream1.freetv.fun/xing-kong-wei-shi-4.ctv$LR•IPV4•7『线路7』 #EXTINF:-1 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•36『线路1』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://36.40.237.49:9999/tsfile/live/0128_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•36『线路2』 +http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•36『线路2』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://36.136.38.87:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路3』 +http://36.40.237.49:9999/tsfile/live/0128_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•36『线路3』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://153.0.171.163:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路4』 +http://36.136.38.87:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路4』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•36『线路5』 +http://153.0.171.163:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路5』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•36『线路6』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://60.10.139.113:8801/hls/17/index.m3u8$LR•IPV4•36『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•36『线路7』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://207.56.13.146:81/cdnlive/hnws.m3u8$LR•IPV4•36『线路8』 +http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•36『线路8』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://192.151.150.154/live/hnwshd.m3u8$LR•IPV4•36『线路9』 +https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-2500/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•36『线路9』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://173.208.212.130:8181/1080p/hnws.m3u8$LR•IPV4•36『线路10』 +https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•36『线路10』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://173.208.212.130:8181/720p/hnws.m3u8$LR•IPV4•36『线路11』 +http://23.237.228.134/live6/hunan.m3u8$LR•IPV4•36『线路11』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://204.12.221.218:8181/3m1080p/hnws.m3u8$LR•IPV4•36『线路12』 +http://gfr.x3322.net:9901/tsfile/live/1084_1.m3u8$LR•IPV4•36『线路12』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009115&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路13』 +http://api.kkitv.itv888.cn:8080/hls/hoxiunz7ce/index.m3u8$LR•IPV4•36『线路13』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000032695&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路14』 +https://iptv.catvod.com/catvod.php?id=hunws$LR•IPV4•36『线路14』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265024&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路15』 +https://httop.top/ysp-湖南卫视$LR•IPV4•36『线路15』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6954818217931477266&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路16』 +http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•36『线路16』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006692&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路17』 +http://60.10.139.113:8801/hls/17/index.m3u8$LR•IPV4•36『线路17』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000030452&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路18』 +http://207.56.13.146:81/cdnlive/hnws.m3u8$LR•IPV4•36『线路18』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://111.29.9.33:6610/000000001000/1000000001000009115/index.m3u8?channel-id=bestzb&Contentid=1000000001000009115&livemode=1&stbId=3$LR•IPV4•36『线路19』 +http://192.151.150.154/live/hnwshd.m3u8$LR•IPV4•36『线路19』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•36『线路20』 +http://173.208.212.130:8181/1080p/hnws.m3u8$LR•IPV4•36『线路20』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•36『线路21』 +http://173.208.212.130:8181/720p/hnws.m3u8$LR•IPV4•36『线路21』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-2500/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•36『线路22』 +http://204.12.221.218:8181/3m1080p/hnws.m3u8$LR•IPV4•36『线路22』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•36『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009115&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路23』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://23.237.228.134/live6/hunan.m3u8$LR•IPV4•36『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000032695&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路24』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://gfr.x3322.net:9901/tsfile/live/1084_1.m3u8$LR•IPV4•36『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265024&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路25』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://api.kkitv.itv888.cn:8080/hls/hoxiunz7ce/index.m3u8$LR•IPV4•36『线路26』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6954818217931477266&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路26』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -https://iptv.catvod.com/catvod.php?id=hunws$LR•IPV4•36『线路27』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006692&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路27』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -https://httop.top/ysp-湖南卫视$LR•IPV4•36『线路28』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000030452&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路28』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•36『线路29』 +http://111.29.9.33:6610/000000001000/1000000001000009115/index.m3u8?channel-id=bestzb&Contentid=1000000001000009115&livemode=1&stbId=3$LR•IPV4•36『线路29』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://120.76.248.139/live/bfgd/4200000086.m3u8$LR•IPV4•36『线路30』 #EXTINF:-1 tvg-name="湖南卫视" group-title="卫视",湖南卫视 @@ -2498,141 +2502,141 @@ http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227316/index.m3u8$LR•IPV4 #EXTINF:-1 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•41『线路1』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://107.150.60.122/live/zjwshd.m3u8$LR•IPV4•41『线路2』 +http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•41『线路2』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•41『线路3』 +http://107.150.60.122/live/zjwshd.m3u8$LR•IPV4•41『线路3』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://36.136.38.87:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路4』 +http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•41『线路4』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路5』 +http://36.136.38.87:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路5』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•41『线路6』 +http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路6』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 http://zwebl02.cztv.com/live/channel06720Pnew.m3u8?auth_key=1782690919-a4e701fcca14f2eb9f49523a6892c69e-0-189d3d008d4965bbc39170a448069b93$LR•IPV4•41『线路7』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•41『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•41『线路8』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://60.10.139.113:8801/hls/18/index.m3u8$LR•IPV4•41『线路9』 +http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•41『线路9』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://207.56.13.146:81/cdnlive/zjws.m3u8$LR•IPV4•41『线路10』 +http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•41『线路10』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://192.151.150.154/live/zjwshd.m3u8$LR•IPV4•41『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•41『线路11』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://173.208.212.130:8181/1080p/zjws.m3u8$LR•IPV4•41『线路12』 +http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•41『线路12』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•41『线路13』 +https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•41『线路13』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•41『线路14』 +https://httop.top/ysp-浙江卫视$LR•IPV4•41『线路14』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007275&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路15』 +http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•41『线路15』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000017320&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路16』 +http://60.10.139.113:8801/hls/18/index.m3u8$LR•IPV4•41『线路16』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009806&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路17』 +http://207.56.13.146:81/cdnlive/zjws.m3u8$LR•IPV4•41『线路17』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014260&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路18』 +http://192.151.150.154/live/zjwshd.m3u8$LR•IPV4•41『线路18』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7889730693553663314&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路19』 +http://173.208.212.130:8181/1080p/zjws.m3u8$LR•IPV4•41『线路19』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路20』 +http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•41『线路20』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8#http://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8?#http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路21』 +http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•41『线路21』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://183.215.134.239:19901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007275&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路22』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-m-l.cztv.com/channels/lantian/channel001/720p.m3u8$LR•IPV4•41『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000017320&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路23』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009806&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路24』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014260&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路25』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://111.29.9.33:6610/000000001000/1000000001000009806/index.m3u8?channel-id=bestzb&Contentid=1000000001000009806&livemode=1&stbId=3$LR•IPV4•41『线路26』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7889730693553663314&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路26』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•41『线路27』 +https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路27』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•41『线路28』 +http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8#http://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8?#http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路28』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•41『线路29』 +http://183.215.134.239:19901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路29』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•41『线路30』 +http://ali-m-l.cztv.com/channels/lantian/channel001/720p.m3u8$LR•IPV4•41『线路30』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•41『线路31』 +http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路31』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•41『线路32』 +https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路32』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://httop.top/ysp-浙江卫视$LR•IPV4•41『线路33』 +http://111.29.9.33:6610/000000001000/1000000001000009806/index.m3u8?channel-id=bestzb&Contentid=1000000001000009806&livemode=1&stbId=3$LR•IPV4•41『线路33』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•41『线路34』 +http://120.76.248.139/live/bfgd/4200000094.m3u8$LR•IPV4•41『线路34』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://120.76.248.139/live/bfgd/4200000094.m3u8$LR•IPV4•41『线路35』 +http://m.061899.xyz/mg/zjws$LR•IPV4•41『线路35』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://m.061899.xyz/mg/zjws$LR•IPV4•41『线路36』 +http://111.43.126.240:9003/hls/25/index.m3u8$LR•IPV4•41『线路36』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://111.43.126.240:9003/hls/25/index.m3u8$LR•IPV4•41『线路37』 +http://rihou.cc:555/tv/[mg]浙江卫视$LR•IPV4•41『线路37』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://rihou.cc:555/tv/[mg]浙江卫视$LR•IPV4•41『线路38』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225798/index.m3u8$LR•IPV4•41『线路38』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225798/index.m3u8$LR•IPV4•41『线路39』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225788/index.m3u8$LR•IPV4•41『线路39』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225788/index.m3u8$LR•IPV4•41『线路40』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227313/index.m3u8$LR•IPV4•41『线路40』 #EXTINF:-1 tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227313/index.m3u8$LR•IPV4•41『线路41』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•41『线路41』 #EXTINF:-1 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•48『线路1』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•48『线路2』 +http://bp-resource-dfl.bestv.cn/155/3/video.m3u8$LR•IPV4•48『线路2』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://124.228.160.210:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路3』 +https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•48『线路3』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路4』 +http://124.228.160.210:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路4』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://bp-resource-dfl.bestv.cn/155/3/video.m3u8$LR•IPV4•48『线路5』 +http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路5』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•48『线路6』 +http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•48『线路6』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://60.10.139.113:8801/hls/22/index.m3u8$LR•IPV4•48『线路7』 +http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•48『线路7』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://207.56.13.146:81/cdnlive/dfws.m3u8$LR•IPV4•48『线路8』 +http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•48『线路8』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://192.151.150.154/live/dfwshd.m3u8$LR•IPV4•48『线路9』 +http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•48『线路9』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•48『线路10』 +http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•48『线路10』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://204.12.221.218:8181/3m1080p/dfws.m3u8$LR•IPV4•48『线路11』 +https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•48『线路11』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://101.6.130.52:1234/651632648$LR•IPV4•48『线路12』 +https://httop.top/ysp-东方卫视$LR•IPV4•48『线路12』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000005866&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路13』 +http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•48『线路13』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000030202&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路14』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•48『线路14』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6081477947334326291&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路15』 +http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•48『线路15』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014098&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路16』 +http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•48『线路16』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000032246&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路17』 +http://60.10.139.113:8801/hls/22/index.m3u8$LR•IPV4•48『线路17』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://111.29.9.33:6610/000000001000/1000000001000005866/index.m3u8?channel-id=bestzb&Contentid=1000000001000005866&livemode=1&stbId=3$LR•IPV4•48『线路18』 +http://207.56.13.146:81/cdnlive/dfws.m3u8$LR•IPV4•48『线路18』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•48『线路19』 +http://192.151.150.154/live/dfwshd.m3u8$LR•IPV4•48『线路19』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•48『线路20』 +http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•48『线路20』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•48『线路21』 +http://204.12.221.218:8181/3m1080p/dfws.m3u8$LR•IPV4•48『线路21』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•48『线路22』 +http://101.6.130.52:1234/651632648$LR•IPV4•48『线路22』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•48『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000005866&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路23』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•48『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000030202&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路24』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -https://httop.top/ysp-东方卫视$LR•IPV4•48『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6081477947334326291&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路25』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•48『线路26』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014098&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路26』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•48『线路27』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000032246&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路27』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 -http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•48『线路28』 +http://111.29.9.33:6610/000000001000/1000000001000005866/index.m3u8?channel-id=bestzb&Contentid=1000000001000005866&livemode=1&stbId=3$LR•IPV4•48『线路28』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 http://120.76.248.139/live/bfgd/4200000093.m3u8$LR•IPV4•48『线路29』 #EXTINF:-1 tvg-name="东方卫视" group-title="卫视",东方卫视 @@ -2676,57 +2680,57 @@ http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227212/index.m3u8$LR•IPV4 #EXTINF:-1 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•50『线路1』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://173.208.212.130:8181/720p/bjws.m3u8$LR•IPV4•50『线路2』 +http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•50『线路2』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://36.136.38.87:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路3』 +http://173.208.212.130:8181/720p/bjws.m3u8$LR•IPV4•50『线路3』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路4』 +http://36.136.38.87:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路4』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•50『线路5』 +http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路5』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://go.bkpcp.top/mg/bjws$LR•IPV4•50『线路6』 +http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•50『线路6』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://60.10.139.113:8801/hls/20/index.m3u8$LR•IPV4•50『线路7』 +http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•50『线路7』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://207.56.13.146:81/cdnlive/bjws.m3u8$LR•IPV4•50『线路8』 +http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•50『线路8』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://192.151.150.154/live/bjwshd.m3u8$LR•IPV4•50『线路9』 +http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•50『线路9』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://204.12.221.218:8181/3m1080p/bjws.m3u8$LR•IPV4•50『线路10』 +http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•50『线路10』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://101.6.130.52:1234/630287636$LR•IPV4•50『线路11』 +https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•50『线路11』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000031556&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路12』 +https://httop.top/ysp-北京卫视$LR•IPV4•50『线路12』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000011502&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路13』 +http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•50『线路13』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路14』 +http://go.bkpcp.top/mg/bjws$LR•IPV4•50『线路14』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021288&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路15』 +http://60.10.139.113:8801/hls/20/index.m3u8$LR•IPV4•50『线路15』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265027&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路16』 +http://207.56.13.146:81/cdnlive/bjws.m3u8$LR•IPV4•50『线路16』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=8186688740528366039&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路17』 +http://192.151.150.154/live/bjwshd.m3u8$LR•IPV4•50『线路17』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://111.29.9.42:6610/000000001000/1000000001000017156/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•50『线路18』 +http://204.12.221.218:8181/3m1080p/bjws.m3u8$LR•IPV4•50『线路18』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://111.29.9.33:6610/000000001000/1000000001000017156/index.m3u8?channel-id=bestzb&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•50『线路19』 +http://101.6.130.52:1234/630287636$LR•IPV4•50『线路19』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•50『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000031556&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路20』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•50『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000011502&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路21』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•50『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路22』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•50『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021288&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路23』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•50『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265027&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路24』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•50『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=8186688740528366039&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路25』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -https://httop.top/ysp-北京卫视$LR•IPV4•50『线路26』 +http://111.29.9.42:6610/000000001000/1000000001000017156/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•50『线路26』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 -http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•50『线路27』 +http://111.29.9.33:6610/000000001000/1000000001000017156/index.m3u8?channel-id=bestzb&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•50『线路27』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 http://120.76.248.139/live/bfgd/4200000083.m3u8$LR•IPV4•50『线路28』 #EXTINF:-1 tvg-name="北京卫视" group-title="卫视",北京卫视 @@ -2776,149 +2780,149 @@ http://123.121.5.183:4000/rtp/239.3.1.241:8000$LR•IPV4•50『线路50』 #EXTINF:-1 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•51『线路1』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•51『线路2』 +http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•51『线路2』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://36.40.237.49:9999/tsfile/live/0127_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•51『线路3』 +http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•51『线路3』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://124.228.160.210:9901/tsfile/live/0127_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•51『线路4』 +http://36.40.237.49:9999/tsfile/live/0127_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•51『线路4』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://36.136.38.87:9901/tsfile/live/0127_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•51『线路5』 +http://124.228.160.210:9901/tsfile/live/0127_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•51『线路5』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•51『线路6』 +http://36.136.38.87:9901/tsfile/live/0127_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•51『线路6』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•51『线路7』 +http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•51『线路7』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://60.10.139.113:8801/hls/19/index.m3u8$LR•IPV4•51『线路8』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•51『线路8』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://207.56.13.146:81/cdnlive/jsws.m3u8$LR•IPV4•51『线路9』 +http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•51『线路9』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://192.151.150.154/live/jswshd.m3u8$LR•IPV4•51『线路10』 +http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•51『线路10』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://173.208.212.130:8181/1080p/jsws.m3u8$LR•IPV4•51『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•51『线路11』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•51『线路12』 +http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•51『线路12』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://204.12.221.218:8181/3m1080p/jsws.m3u8$LR•IPV4•51『线路13』 +https://httop.top/ysp-江苏卫视$LR•IPV4•51『线路13』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://101.6.130.52:1234/623899368$LR•IPV4•51『线路14』 +http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•51『线路14』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004684&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路15』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•51『线路15』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=4796340999304424198&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路16』 +http://60.10.139.113:8801/hls/19/index.m3u8$LR•IPV4•51『线路16』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000019351&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路17』 +http://207.56.13.146:81/cdnlive/jsws.m3u8$LR•IPV4•51『线路17』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000018509&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路18』 +http://192.151.150.154/live/jswshd.m3u8$LR•IPV4•51『线路18』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001828&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路19』 +http://173.208.212.130:8181/1080p/jsws.m3u8$LR•IPV4•51『线路19』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://111.29.9.42:6610/000000001000/5000000004000019351/index.m3u8?channel-id=bestzb&Contentid=5000000004000019351&livemode=1&stbId=3$LR•IPV4•51『线路20』 +http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•51『线路20』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://111.29.9.33:6610/000000001000/1000000001000001828/index.m3u8?channel-id=bestzb&Contentid=1000000001000001828&livemode=1&stbId=3$LR•IPV4•51『线路21』 +http://204.12.221.218:8181/3m1080p/jsws.m3u8$LR•IPV4•51『线路21』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•51『线路22』 +http://101.6.130.52:1234/623899368$LR•IPV4•51『线路22』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•51『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004684&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路23』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•51『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=4796340999304424198&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路24』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•51『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000019351&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路25』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•51『线路26』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000018509&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路26』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•51『线路27』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001828&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路27』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -https://httop.top/ysp-江苏卫视$LR•IPV4•51『线路28』 +http://111.29.9.42:6610/000000001000/5000000004000019351/index.m3u8?channel-id=bestzb&Contentid=5000000004000019351&livemode=1&stbId=3$LR•IPV4•51『线路28』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•51『线路29』 +http://111.29.9.33:6610/000000001000/1000000001000001828/index.m3u8?channel-id=bestzb&Contentid=1000000001000001828&livemode=1&stbId=3$LR•IPV4•51『线路29』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•51『线路30』 +http://120.76.248.139/live/bfgd/4200000085.m3u8$LR•IPV4•51『线路30』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://120.76.248.139/live/bfgd/4200000085.m3u8$LR•IPV4•51『线路31』 +https://live.chinacert.cftest5.cn/cnmg/live/623899368$LR•IPV4•51『线路31』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -https://live.chinacert.cftest5.cn/cnmg/live/623899368$LR•IPV4•51『线路32』 +http://m.061899.xyz/mg/jsws$LR•IPV4•51『线路32』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://m.061899.xyz/mg/jsws$LR•IPV4•51『线路33』 +http://fn.gcl.de5.net:5908/gsh950428/623899368$LR•IPV4•51『线路33』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://fn.gcl.de5.net:5908/gsh950428/623899368$LR•IPV4•51『线路34』 +http://wfenf.x3322.net:7788/623899368$LR•IPV4•51『线路34』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://wfenf.x3322.net:7788/623899368$LR•IPV4•51『线路35』 +http://106.5.175.159:1234/623899368$LR•IPV4•51『线路35』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://106.5.175.159:1234/623899368$LR•IPV4•51『线路36』 +http://36.104.221.222:7788/623899368$LR•IPV4•51『线路36』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://36.104.221.222:7788/623899368$LR•IPV4•51『线路37』 +http://115.58.151.196:1234/623899368$LR•IPV4•51『线路37』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://115.58.151.196:1234/623899368$LR•IPV4•51『线路38』 +http://182.61.15.163:80/623899368$LR•IPV4•51『线路38』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://182.61.15.163:80/623899368$LR•IPV4•51『线路39』 +http://121.23.132.14:7788/623899368$LR•IPV4•51『线路39』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://121.23.132.14:7788/623899368$LR•IPV4•51『线路40』 +http://120.4.126.153:1234/623899368$LR•IPV4•51『线路40』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://120.4.126.153:1234/623899368$LR•IPV4•51『线路41』 +http://111.43.126.240:9003/hls/23/index.m3u8$LR•IPV4•51『线路41』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://111.43.126.240:9003/hls/23/index.m3u8$LR•IPV4•51『线路42』 +http://47.119.24.76:59093/623899368$LR•IPV4•51『线路42』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://47.119.24.76:59093/623899368$LR•IPV4•51『线路43』 +http://222.134.19.49:8090/623899368$LR•IPV4•51『线路43』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://222.134.19.49:8090/623899368$LR•IPV4•51『线路44』 +http://rihou.cc:555/tv/[mg]江苏卫视$LR•IPV4•51『线路44』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://rihou.cc:555/tv/[mg]江苏卫视$LR•IPV4•51『线路45』 +http://139.155.89.87:1000/623899368$LR•IPV4•51『线路45』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://139.155.89.87:1000/623899368$LR•IPV4•51『线路46』 +http://101.34.236.223:1112/623899368$LR•IPV4•51『线路46』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://101.34.236.223:1112/623899368$LR•IPV4•51『线路47』 +http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8?$LR•IPV4•51『线路47』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8?$LR•IPV4•51『线路48』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225800/index.m3u8$LR•IPV4•51『线路48』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225800/index.m3u8$LR•IPV4•51『线路49』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225746/index.m3u8$LR•IPV4•51『线路49』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225746/index.m3u8$LR•IPV4•51『线路50』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227303/index.m3u8$LR•IPV4•51『线路50』 #EXTINF:-1 tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227303/index.m3u8$LR•IPV4•51『线路51』 +http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•51『线路51』 #EXTINF:-1 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•28『线路1』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://60.10.139.113:8801/hls/99/index.m3u8$LR•IPV4•28『线路2』 +http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•28『线路2』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://222.90.21.30:9901/hls/25/index.m3u8$LR•IPV4•28『线路3』 +http://60.10.139.113:8801/hls/99/index.m3u8$LR•IPV4•28『线路3』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://173.208.212.130:8181/720p/ahws.m3u8$LR•IPV4•28『线路4』 +http://222.90.21.30:9901/hls/25/index.m3u8$LR•IPV4•28『线路4』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路5』 +http://173.208.212.130:8181/720p/ahws.m3u8$LR•IPV4•28『线路5』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•28『线路6』 +http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路6』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://207.56.13.146:81/cdnlive/ahws.m3u8$LR•IPV4•28『线路7』 +http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•28『线路7』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://192.151.150.154/live/ahwshd.m3u8$LR•IPV4•28『线路8』 +http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•28『线路8』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://204.12.221.218:8181/3m1080p/ahws.m3u8$LR•IPV4•28『线路9』 +http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•28『线路9』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000023002&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路10』 +https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•28『线路10』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000020780&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路11』 +https://httop.top/ysp-安徽卫视$LR•IPV4•28『线路11』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000030159&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路12』 +http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•28『线路12』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000027288&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路13』 +http://207.56.13.146:81/cdnlive/ahws.m3u8$LR•IPV4•28『线路13』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265025&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路14』 +http://192.151.150.154/live/ahwshd.m3u8$LR•IPV4•28『线路14』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://111.29.9.34:6610/000000001000/1000000001000020780/index.m3u8?channel-id=ystenlive&Contentid=1000000001000020780&livemode=1&stbId=3$LR•IPV4•28『线路15』 +http://204.12.221.218:8181/3m1080p/ahws.m3u8$LR•IPV4•28『线路15』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://111.29.9.33:6610/000000001000/1000000001000020780/index.m3u8?channel-id=bestzb&Contentid=1000000001000020780&livemode=1&stbId=3$LR•IPV4•28『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000023002&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路16』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•28『线路17』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000020780&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路17』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•28『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000030159&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路18』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•28『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000027288&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路19』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•28『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265025&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路20』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -https://httop.top/ysp-安徽卫视$LR•IPV4•28『线路21』 +http://111.29.9.34:6610/000000001000/1000000001000020780/index.m3u8?channel-id=ystenlive&Contentid=1000000001000020780&livemode=1&stbId=3$LR•IPV4•28『线路21』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•28『线路22』 +http://111.29.9.33:6610/000000001000/1000000001000020780/index.m3u8?channel-id=bestzb&Contentid=1000000001000020780&livemode=1&stbId=3$LR•IPV4•28『线路22』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 http://120.76.248.139/live/bfgd/4200000096.m3u8$LR•IPV4•28『线路23』 #EXTINF:-1 tvg-name="安徽卫视" group-title="卫视",安徽卫视 @@ -2934,287 +2938,287 @@ http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227233/index.m3u8$LR•IPV4 #EXTINF:-1 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•43『线路1』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://111.8.224.6:9999/tsfile/live/1071_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•43『线路2』 +http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•43『线路2』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://204.12.221.218:8181/3m1080p/cqws.m3u8$LR•IPV4•43『线路3』 +http://111.8.224.6:9999/tsfile/live/1071_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•43『线路3』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://222.90.21.30:9901/hls/69/index.m3u8$LR•IPV4•43『线路4』 +http://204.12.221.218:8181/3m1080p/cqws.m3u8$LR•IPV4•43『线路4』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•43『线路5』 +http://222.90.21.30:9901/hls/69/index.m3u8$LR•IPV4•43『线路5』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•43『线路6』 +http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•43『线路6』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•43『线路7』 +http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•43『线路7』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://p2.ioioz.com/videojs.php?id=https://sjlivecdn9.cbg.cn/202607011506/app_2/_definst_/ls_2.stream/chunklist.m3u8$LR•IPV4•43『线路8』 +http://p2.ioioz.com/videojs.php?id=https://sjlivecdn9.cbg.cn/202607011807/app_2/_definst_/ls_2.stream/chunklist.m3u8$LR•IPV4•43『线路8』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•43『线路9』 +http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•43『线路9』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://60.10.139.113:8801/hls/31/index.m3u8$LR•IPV4•43『线路10』 +http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•43『线路10』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://207.56.13.146:81/cdnlive/cqws.m3u8$LR•IPV4•43『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•43『线路11』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://192.151.150.154/live/cqwshd.m3u8$LR•IPV4•43『线路12』 +http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•43『线路12』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://101.6.130.52:1234/738910914$LR•IPV4•43『线路13』 +https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•43『线路13』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025797&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路14』 +https://httop.top/ysp-重庆卫视$LR•IPV4•43『线路14』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001096&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路15』 +http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•43『线路15』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000018937&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路16』 +http://60.10.139.113:8801/hls/31/index.m3u8$LR•IPV4•43『线路16』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://111.29.9.33:6610/000000001000/1000000001000001096/index.m3u8?channel-id=bestzb&Contentid=1000000001000001096&livemode=1&stbId=3$LR•IPV4•43『线路17』 +http://207.56.13.146:81/cdnlive/cqws.m3u8$LR•IPV4•43『线路17』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•43『线路18』 +http://192.151.150.154/live/cqwshd.m3u8$LR•IPV4•43『线路18』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•43『线路19』 +http://101.6.130.52:1234/738910914$LR•IPV4•43『线路19』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•43『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025797&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路20』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•43『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001096&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路21』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•43『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000018937&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路22』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -https://httop.top/ysp-重庆卫视$LR•IPV4•43『线路23』 +http://111.29.9.33:6610/000000001000/1000000001000001096/index.m3u8?channel-id=bestzb&Contentid=1000000001000001096&livemode=1&stbId=3$LR•IPV4•43『线路23』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•43『线路24』 +http://120.76.248.139/live/bfgd/4200000107.m3u8$LR•IPV4•43『线路24』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://120.76.248.139/live/bfgd/4200000107.m3u8$LR•IPV4•43『线路25』 +https://live.chinacert.cftest5.cn/cnmg/live/738910914$LR•IPV4•43『线路25』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -https://live.chinacert.cftest5.cn/cnmg/live/738910914$LR•IPV4•43『线路26』 +http://m.061899.xyz/mg/cqws$LR•IPV4•43『线路26』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://m.061899.xyz/mg/cqws$LR•IPV4•43『线路27』 +http://fn.gcl.de5.net:5908/gsh950428/738910914$LR•IPV4•43『线路27』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://fn.gcl.de5.net:5908/gsh950428/738910914$LR•IPV4•43『线路28』 +http://wfenf.x3322.net:7788/738910914$LR•IPV4•43『线路28』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://wfenf.x3322.net:7788/738910914$LR•IPV4•43『线路29』 +http://106.5.175.159:1234/738910914$LR•IPV4•43『线路29』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://106.5.175.159:1234/738910914$LR•IPV4•43『线路30』 +http://36.104.221.222:7788/738910914$LR•IPV4•43『线路30』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://36.104.221.222:7788/738910914$LR•IPV4•43『线路31』 +http://115.58.151.196:1234/738910914$LR•IPV4•43『线路31』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://115.58.151.196:1234/738910914$LR•IPV4•43『线路32』 +http://182.61.15.163:80/738910914$LR•IPV4•43『线路32』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://182.61.15.163:80/738910914$LR•IPV4•43『线路33』 +http://121.23.132.14:7788/738910914$LR•IPV4•43『线路33』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://121.23.132.14:7788/738910914$LR•IPV4•43『线路34』 +http://120.4.126.153:1234/738910914$LR•IPV4•43『线路34』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://120.4.126.153:1234/738910914$LR•IPV4•43『线路35』 +http://111.43.126.240:9003/hls/39/index.m3u8$LR•IPV4•43『线路35』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://111.43.126.240:9003/hls/39/index.m3u8$LR•IPV4•43『线路36』 +http://47.119.24.76:59093/738910914$LR•IPV4•43『线路36』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://47.119.24.76:59093/738910914$LR•IPV4•43『线路37』 +http://222.134.19.49:8090/738910914$LR•IPV4•43『线路37』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://222.134.19.49:8090/738910914$LR•IPV4•43『线路38』 +http://139.155.89.87:1000/738910914$LR•IPV4•43『线路38』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://139.155.89.87:1000/738910914$LR•IPV4•43『线路39』 +http://101.34.236.223:1112/738910914$LR•IPV4•43『线路39』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://101.34.236.223:1112/738910914$LR•IPV4•43『线路40』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226202/index.m3u8$LR•IPV4•43『线路40』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226202/index.m3u8$LR•IPV4•43『线路41』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225791/index.m3u8$LR•IPV4•43『线路41』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225791/index.m3u8$LR•IPV4•43『线路42』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227227/index.m3u8$LR•IPV4•43『线路42』 #EXTINF:-1 tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227227/index.m3u8$LR•IPV4•43『线路43』 +http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•43『线路43』 #EXTINF:-1 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•27『线路1』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://222.90.21.30:9901/hls/45/index.m3u8$LR•IPV4•27『线路2』 +http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://111.8.224.6:9999/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路3』 +http://222.90.21.30:9901/hls/45/index.m3u8$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://207.56.13.146:81/cdnlive/scws.m3u8$LR•IPV4•27『线路4』 +http://111.8.224.6:9999/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=scwshd$LR•IPV4•27『线路5』 +http://207.56.13.146:81/cdnlive/scws.m3u8$LR•IPV4•27『线路5』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://120.198.95.220:9901/tsfile/live/1060_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路6』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=scwshd$LR•IPV4•27『线路6』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://153.0.171.163:85/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 +http://120.198.95.220:9901/tsfile/live/1060_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路7』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•27『线路8』 +http://153.0.171.163:85/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•27『线路9』 +http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•27『线路9』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://60.10.139.113:8801/hls/30/index.m3u8$LR•IPV4•27『线路10』 +http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•27『线路10』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://192.151.150.154/live/scwshd.m3u8$LR•IPV4•27『线路11』 +https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://204.12.221.218:8181/3m1080p/scws.m3u8$LR•IPV4•27『线路12』 +https://httop.top/ysp-四川卫视$LR•IPV4•27『线路12』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006119&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路13』 +http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•27『线路13』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016825&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路14』 +http://60.10.139.113:8801/hls/30/index.m3u8$LR•IPV4•27『线路14』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://111.29.9.37:6610/000000001000/1000000002000016825/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•27『线路15』 +http://192.151.150.154/live/scwshd.m3u8$LR•IPV4•27『线路15』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://111.29.9.33:6610/000000001000/1000000002000016825/index.m3u8?channel-id=bestzb&Contentid=1000000002000016825&livemode=1&stbId=3$LR•IPV4•27『线路16』 +http://204.12.221.218:8181/3m1080p/scws.m3u8$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•27『线路17』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006119&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路17』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•27『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016825&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路18』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•27『线路19』 +http://111.29.9.37:6610/000000001000/1000000002000016825/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•27『线路19』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -https://httop.top/ysp-四川卫视$LR•IPV4•27『线路20』 +http://111.29.9.33:6610/000000001000/1000000002000016825/index.m3u8?channel-id=bestzb&Contentid=1000000002000016825&livemode=1&stbId=3$LR•IPV4•27『线路20』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•27『线路21』 +http://120.76.248.139/live/bfgd/4200000103.m3u8$LR•IPV4•27『线路21』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://120.76.248.139/live/bfgd/4200000103.m3u8$LR•IPV4•27『线路22』 +http://m.061899.xyz/mg/scws$LR•IPV4•27『线路22』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://m.061899.xyz/mg/scws$LR•IPV4•27『线路23』 +http://111.43.126.240:9003/hls/34/index.m3u8$LR•IPV4•27『线路23』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://111.43.126.240:9003/hls/34/index.m3u8$LR•IPV4•27『线路24』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227190/index.m3u8$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227190/index.m3u8$LR•IPV4•27『线路25』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225768/index.m3u8$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225768/index.m3u8$LR•IPV4•27『线路26』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227245/index.m3u8$LR•IPV4•27『线路26』 #EXTINF:-1 tvg-name="四川卫视" group-title="卫视",四川卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227245/index.m3u8$LR•IPV4•27『线路27』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•27『线路27』 #EXTINF:-1 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•45『线路1』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•45『线路2』 +http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•45『线路2』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://222.90.21.30:9901/hls/30/index.m3u8$LR•IPV4•45『线路3』 +http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•45『线路3』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://60.10.139.113:8801/hls/21/index.m3u8$LR•IPV4•45『线路4』 +http://222.90.21.30:9901/hls/30/index.m3u8$LR•IPV4•45『线路4』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://36.40.237.49:9999/tsfile/live/0137_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•45『线路5』 +http://60.10.139.113:8801/hls/21/index.m3u8$LR•IPV4•45『线路5』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路6』 +http://36.40.237.49:9999/tsfile/live/0137_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•45『线路6』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•45『线路7』 +http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路7』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•45『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•45『线路8』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://207.56.13.146:81/cdnlive/dnws.m3u8$LR•IPV4•45『线路9』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•45『线路9』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://192.151.150.154/live/dnwshd.m3u8$LR•IPV4•45『线路10』 +http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•45『线路10』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•45『线路11』 +http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•45『线路11』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://101.6.130.52:1234/849116810$LR•IPV4•45『线路12』 +http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•45『线路12』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000010584&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路13』 +http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•45『线路13』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000005829&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路14』 +http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•45『线路14』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009263&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路15』 +https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•45『线路15』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://111.29.9.37:6610/000000001000/1000000002000009263/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•45『线路16』 +https://httop.top/ysp-东南卫视$LR•IPV4•45『线路16』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://111.29.9.33:6610/000000001000/1000000002000009263/index.m3u8?channel-id=bestzb&Contentid=1000000002000009263&livemode=1&stbId=3$LR•IPV4•45『线路17』 +http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•45『线路17』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•45『线路18』 +http://207.56.13.146:81/cdnlive/dnws.m3u8$LR•IPV4•45『线路18』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•45『线路19』 +http://192.151.150.154/live/dnwshd.m3u8$LR•IPV4•45『线路19』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•45『线路20』 +http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•45『线路20』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•45『线路21』 +http://101.6.130.52:1234/849116810$LR•IPV4•45『线路21』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•45『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000010584&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路22』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•45『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000005829&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路23』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•45『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009263&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路24』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•45『线路25』 +http://111.29.9.37:6610/000000001000/1000000002000009263/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•45『线路25』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -https://httop.top/ysp-东南卫视$LR•IPV4•45『线路26』 +http://111.29.9.33:6610/000000001000/1000000002000009263/index.m3u8?channel-id=bestzb&Contentid=1000000002000009263&livemode=1&stbId=3$LR•IPV4•45『线路26』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•45『线路27』 +http://120.76.248.139/live/bfgd/4200000483.m3u8$LR•IPV4•45『线路27』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://120.76.248.139/live/bfgd/4200000483.m3u8$LR•IPV4•45『线路28』 +https://live.chinacert.cftest5.cn/cnmg/live/849116810$LR•IPV4•45『线路28』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -https://live.chinacert.cftest5.cn/cnmg/live/849116810$LR•IPV4•45『线路29』 +http://m.061899.xyz/mg/dnws$LR•IPV4•45『线路29』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://m.061899.xyz/mg/dnws$LR•IPV4•45『线路30』 +http://fn.gcl.de5.net:5908/gsh950428/849116810$LR•IPV4•45『线路30』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://fn.gcl.de5.net:5908/gsh950428/849116810$LR•IPV4•45『线路31』 +http://wfenf.x3322.net:7788/849116810$LR•IPV4•45『线路31』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://wfenf.x3322.net:7788/849116810$LR•IPV4•45『线路32』 +http://106.5.175.159:1234/849116810$LR•IPV4•45『线路32』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://106.5.175.159:1234/849116810$LR•IPV4•45『线路33』 +http://36.104.221.222:7788/849116810$LR•IPV4•45『线路33』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://36.104.221.222:7788/849116810$LR•IPV4•45『线路34』 +http://115.58.151.196:1234/849116810$LR•IPV4•45『线路34』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://115.58.151.196:1234/849116810$LR•IPV4•45『线路35』 +http://182.61.15.163:80/849116810$LR•IPV4•45『线路35』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://182.61.15.163:80/849116810$LR•IPV4•45『线路36』 +http://121.23.132.14:7788/849116810$LR•IPV4•45『线路36』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://121.23.132.14:7788/849116810$LR•IPV4•45『线路37』 +http://120.4.126.153:1234/849116810$LR•IPV4•45『线路37』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://120.4.126.153:1234/849116810$LR•IPV4•45『线路38』 +http://111.43.126.240:9003/hls/32/index.m3u8$LR•IPV4•45『线路38』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://111.43.126.240:9003/hls/32/index.m3u8$LR•IPV4•45『线路39』 +http://47.119.24.76:59093/849116810$LR•IPV4•45『线路39』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://47.119.24.76:59093/849116810$LR•IPV4•45『线路40』 +http://222.134.19.49:8090/849116810$LR•IPV4•45『线路40』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://222.134.19.49:8090/849116810$LR•IPV4•45『线路41』 +http://139.155.89.87:1000/849116810$LR•IPV4•45『线路41』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://139.155.89.87:1000/849116810$LR•IPV4•45『线路42』 +http://101.34.236.223:1112/849116810$LR•IPV4•45『线路42』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://101.34.236.223:1112/849116810$LR•IPV4•45『线路43』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225766/index.m3u8$LR•IPV4•45『线路43』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225766/index.m3u8$LR•IPV4•45『线路44』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226784/index.m3u8$LR•IPV4•45『线路44』 #EXTINF:-1 tvg-name="东南卫视" group-title="卫视",东南卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226784/index.m3u8$LR•IPV4•45『线路45』 +http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•45『线路45』 #EXTINF:-1 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•35『线路1』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•35『线路2』 +http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•35『线路2』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://36.40.237.49:9999/tsfile/live/0126_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•35『线路3』 +http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•35『线路3』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路4』 +http://36.40.237.49:9999/tsfile/live/0126_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•35『线路4』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路5』 +http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路5』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•35『线路6』 +http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路6』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 https://sztv-hls.sztv.com.cn/AxeFRth/500/c37hx4F.m3u8?sign=3b158240837c2e09fbb3365badee9796&t=6a41c43b$LR•IPV4•35『线路7』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•35『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•35『线路8』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•35『线路9』 +http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•35『线路9』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•35『线路10』 +http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•35『线路10』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•35『线路11』 +http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•35『线路11』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路12』 +https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•35『线路12』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路13』 +https://httop.top/ysp-深圳卫视$LR•IPV4•35『线路13』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路14』 +http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•35『线路14』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路15』 +http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路15』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路16』 +http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•35『线路16』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•35『线路17』 +http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•35『线路17』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•35『线路18』 +http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•35『线路18』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•35『线路19』 +http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•35『线路19』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•35『线路20』 +http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•35『线路20』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•35『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路21』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•35『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路22』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•35『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路23』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -https://httop.top/ysp-深圳卫视$LR•IPV4•35『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路24』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•35『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路25』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路26』 +http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•35『线路26』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 -http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•35『线路27』 +http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•35『线路27』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 http://120.76.248.139/live/bfgd/4200000100.m3u8$LR•IPV4•35『线路28』 #EXTINF:-1 tvg-name="深圳卫视" group-title="卫视",深圳卫视 @@ -3234,141 +3238,141 @@ http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227239/index.m3u8$LR•IPV4 #EXTINF:-1 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•47『线路1』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://173.208.212.130:8181/720p/gdws.m3u8$LR•IPV4•47『线路2』 +https://txmov2.a.kwimgs.com/upic/2023/01/26/09/BMjAyMzAxMjYwOTE3NDVfNzM5MzQzNzIyXzk0NjI1OTUwNTA3XzBfMw==_b_B81ddda927d33445d544befd008e60109.mp4$LR•IPV4•47『线路2』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://36.40.237.49:9999/tsfile/live/0125_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•47『线路3』 +http://173.208.212.130:8181/720p/gdws.m3u8$LR•IPV4•47『线路3』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://153.0.171.163:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路4』 +http://36.40.237.49:9999/tsfile/live/0125_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•47『线路4』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•47『线路5』 +http://153.0.171.163:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路5』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•47『线路6』 +http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•47『线路6』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://60.10.139.113:8801/hls/26/index.m3u8$LR•IPV4•47『线路7』 +http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•47『线路7』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://207.56.13.146:81/cdnlive/gdws.m3u8$LR•IPV4•47『线路8』 +http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•47『线路8』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://192.151.150.154/live/gdwshd.m3u8$LR•IPV4•47『线路9』 +http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•47『线路9』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://204.12.221.218:8181/3m1080p/gdws.m3u8$LR•IPV4•47『线路10』 +http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•47『线路10』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://101.6.130.52:1234/608831231$LR•IPV4•47『线路11』 +https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•47『线路11』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5616881981321254555&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路12』 +https://httop.top/ysp-广东卫视$LR•IPV4•47『线路12』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030417&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路13』 +http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•47『线路13』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014694&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路14』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•47『线路14』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000014176&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路15』 +http://60.10.139.113:8801/hls/26/index.m3u8$LR•IPV4•47『线路15』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000028357&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路16』 +http://207.56.13.146:81/cdnlive/gdws.m3u8$LR•IPV4•47『线路16』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://111.29.9.36:6610/000000001000/1000000001000028357/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028357&livemode=1&stbId=3$LR•IPV4•47『线路17』 +http://192.151.150.154/live/gdwshd.m3u8$LR•IPV4•47『线路17』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://111.29.9.33:6610/000000001000/1000000001000014176/index.m3u8?channel-id=bestzb&Contentid=1000000001000014176&livemode=1&stbId=3$LR•IPV4•47『线路18』 +http://204.12.221.218:8181/3m1080p/gdws.m3u8$LR•IPV4•47『线路18』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•47『线路19』 +http://101.6.130.52:1234/608831231$LR•IPV4•47『线路19』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•47『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5616881981321254555&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路20』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•47『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030417&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路21』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•47『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014694&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路22』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•47『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000014176&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路23』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•47『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000028357&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路24』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -https://httop.top/ysp-广东卫视$LR•IPV4•47『线路25』 +http://111.29.9.36:6610/000000001000/1000000001000028357/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028357&livemode=1&stbId=3$LR•IPV4•47『线路25』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•47『线路26』 +http://111.29.9.33:6610/000000001000/1000000001000014176/index.m3u8?channel-id=bestzb&Contentid=1000000001000014176&livemode=1&stbId=3$LR•IPV4•47『线路26』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•47『线路27』 +http://120.76.248.139/live/bfgd/4200000092.m3u8$LR•IPV4•47『线路27』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://120.76.248.139/live/bfgd/4200000092.m3u8$LR•IPV4•47『线路28』 +https://live.chinacert.cftest5.cn/cnmg/live/608831231$LR•IPV4•47『线路28』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -https://live.chinacert.cftest5.cn/cnmg/live/608831231$LR•IPV4•47『线路29』 +http://m.061899.xyz/mg/gdws$LR•IPV4•47『线路29』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://m.061899.xyz/mg/gdws$LR•IPV4•47『线路30』 +http://fn.gcl.de5.net:5908/gsh950428/608831231$LR•IPV4•47『线路30』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://fn.gcl.de5.net:5908/gsh950428/608831231$LR•IPV4•47『线路31』 +http://wfenf.x3322.net:7788/608831231$LR•IPV4•47『线路31』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://wfenf.x3322.net:7788/608831231$LR•IPV4•47『线路32』 +http://106.5.175.159:1234/608831231$LR•IPV4•47『线路32』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://106.5.175.159:1234/608831231$LR•IPV4•47『线路33』 +http://36.104.221.222:7788/608831231$LR•IPV4•47『线路33』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://36.104.221.222:7788/608831231$LR•IPV4•47『线路34』 +http://115.58.151.196:1234/608831231$LR•IPV4•47『线路34』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://115.58.151.196:1234/608831231$LR•IPV4•47『线路35』 +http://182.61.15.163:80/608831231$LR•IPV4•47『线路35』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://182.61.15.163:80/608831231$LR•IPV4•47『线路36』 +http://121.23.132.14:7788/608831231$LR•IPV4•47『线路36』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://121.23.132.14:7788/608831231$LR•IPV4•47『线路37』 +http://120.4.126.153:1234/608831231$LR•IPV4•47『线路37』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://120.4.126.153:1234/608831231$LR•IPV4•47『线路38』 +http://111.43.126.240:9003/hls/27/index.m3u8$LR•IPV4•47『线路38』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://111.43.126.240:9003/hls/27/index.m3u8$LR•IPV4•47『线路39』 +http://47.119.24.76:59093/608831231$LR•IPV4•47『线路39』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://47.119.24.76:59093/608831231$LR•IPV4•47『线路40』 +http://222.134.19.49:8090/608831231$LR•IPV4•47『线路40』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://222.134.19.49:8090/608831231$LR•IPV4•47『线路41』 +http://rihou.cc:555/tv/[mg]广东卫视$LR•IPV4•47『线路41』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://rihou.cc:555/tv/[mg]广东卫视$LR•IPV4•47『线路42』 +http://139.155.89.87:1000/608831231$LR•IPV4•47『线路42』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://139.155.89.87:1000/608831231$LR•IPV4•47『线路43』 +http://101.34.236.223:1112/608831231$LR•IPV4•47『线路43』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://101.34.236.223:1112/608831231$LR•IPV4•47『线路44』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225803/index.m3u8$LR•IPV4•47『线路44』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225803/index.m3u8$LR•IPV4•47『线路45』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225757/index.m3u8$LR•IPV4•47『线路45』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225757/index.m3u8$LR•IPV4•47『线路46』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227318/index.m3u8$LR•IPV4•47『线路46』 #EXTINF:-1 tvg-name="广东卫视" group-title="卫视",广东卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227318/index.m3u8$LR•IPV4•47『线路47』 +http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•47『线路47』 #EXTINF:-1 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•26『线路1』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://120.198.95.220:9901/tsfile/live/1054_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路2』 +http://222.134.245.16:9901/tsfile/live/0113_1.m3u8$LR•IPV4•26『线路2』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://198.204.228.26/live/gxwshd.m3u8$LR•IPV4•26『线路3』 +http://120.198.95.220:9901/tsfile/live/1054_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 +http://198.204.228.26/live/gxwshd.m3u8$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://113.25.252.226:9901/tsfile/live/1029_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 +http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://222.169.85.8:9901/tsfile/live/0113_1.m3u8$LR•IPV4•26『线路6』 +http://113.25.252.226:9901/tsfile/live/1029_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路6』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•26『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://60.10.139.113:8801/hls/52/index.m3u8$LR•IPV4•26『线路8』 +http://pull-hls-f11.douyincdn.com/media/stream-695314078702240428.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771760950&major_anchor_level=common&sign=d9c21ca1151fa649e68dc18c13ac2e23&t_id=037-2026021519491078C5C8D15B8DDFD19426-OM31JH$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://207.56.13.146:81/cdnlive/gxws.m3u8$LR•IPV4•26『线路9』 +http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://192.151.150.154/live/gxwshd.m3u8$LR•IPV4•26『线路10』 +http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031118&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路11』 +http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040014&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路12』 +https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019837&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路13』 +https://httop.top/ysp-广西卫视$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://111.29.9.37:6610/000000001000/1000000002000019837/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•26『线路14』 +http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://111.29.9.33:6610/000000001000/1000000002000019837/index.m3u8?channel-id=bestzb&Contentid=1000000002000019837&livemode=1&stbId=3$LR•IPV4•26『线路15』 +http://60.10.139.113:8801/hls/52/index.m3u8$LR•IPV4•26『线路15』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•26『线路16』 +http://207.56.13.146:81/cdnlive/gxws.m3u8$LR•IPV4•26『线路16』 #EXTINF:-1 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•26『线路17』 +http://192.151.150.154/live/gxwshd.m3u8$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•26『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031118&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•26『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040014&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•26『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019837&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•26『线路21』 +http://111.29.9.37:6610/000000001000/1000000002000019837/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 -https://httop.top/ysp-广西卫视$LR•IPV4•26『线路22』 +http://111.29.9.33:6610/000000001000/1000000002000019837/index.m3u8?channel-id=bestzb&Contentid=1000000002000019837&livemode=1&stbId=3$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 http://120.76.248.139/live/bfgd/4200000116.m3u8$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 @@ -3378,51 +3382,51 @@ http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225770/index.m3u8$LR•IP #EXTINF:-1 tvg-name="广西卫视" group-title="卫视",广西卫视 http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226830/index.m3u8$LR•IPV4•26『线路26』 #EXTINF:-1 tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•9『线路1』 +http://e2.woc.iiiya.cn:28888/rtp/239.61.2.11:8060$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•9『线路2』 +https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•9『线路3』 +http://192.151.150.154/live/xmws.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://192.151.150.154/live/xmws.m3u8$LR•IPV4•9『线路4』 +http://204.12.221.218:8181/3m1080p/xmws.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://204.12.221.218:8181/3m1080p/xmws.m3u8$LR•IPV4•9『线路5』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266006&livemode=1&stbId=yu&mode=1&$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266006&livemode=1&stbId=yu&mode=1&$LR•IPV4•9『线路6』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226219/index.m3u8$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-name="厦门卫视" group-title="卫视",厦门卫视 -https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•9『线路7』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226803/index.m3u8$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226219/index.m3u8$LR•IPV4•9『线路8』 +http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226803/index.m3u8$LR•IPV4•9『线路9』 +http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 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•18『线路1』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://36.40.237.49:9999/tsfile/live/0141_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路2』 +http://218.13.170.98:9901/tsfile/live/0141_1.m3u8$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://cssbyd.imwork.net:8082/hls/48/index.m3u8$LR•IPV4•18『线路3』 +http://36.40.237.49:9999/tsfile/live/0141_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•18『线路4』 +https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://207.56.13.146:81/cdnlive/gsws.m3u8$LR•IPV4•18『线路5』 +https://httop.top/ysp-甘肃卫视$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://192.151.150.154/live/gswshd.m3u8$LR•IPV4•18『线路6』 +http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•18『线路7』 +http://207.56.13.146:81/cdnlive/gsws.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031121&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路8』 +http://192.151.150.154/live/gswshd.m3u8$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017827&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路9』 +http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040021&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路10』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031121&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://111.29.9.37:6610/000000001000/1000000002000017827/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•18『线路11』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017827&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://111.29.9.33:6610/000000001000/1000000002000017827/index.m3u8?channel-id=bestzb&Contentid=1000000002000017827&livemode=1&stbId=3$LR•IPV4•18『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040021&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•18『线路13』 +http://111.29.9.37:6610/000000001000/1000000002000017827/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -https://httop.top/ysp-甘肃卫视$LR•IPV4•18『线路14』 +http://111.29.9.33:6610/000000001000/1000000002000017827/index.m3u8?channel-id=bestzb&Contentid=1000000002000017827&livemode=1&stbId=3$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 http://120.76.248.139/live/bfgd/4200000119.m3u8$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 @@ -3434,277 +3438,275 @@ http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226875/index.m3u8$LR•IPV4 #EXTINF:-1 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•26『线路1』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路2』 +http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•26『线路2』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001184/index.m3u8?streamid=091bd59ea031989839c23459bb8cc9d4&streamkey=02BjlnRKVk4w1OimLNBUheOcwPFu2B6oL1pyXGnUypEwAWXSi5pA2M8vAAQNdTDwVOBg3wflpOJH2qUejFLrTdJs5UqkOuOhX0oeeOuZCXNP6xGvpxjLkvkGHVF&token=1775846394-f40678590315c3a3-0-795d5d8e9ef7cc7d142de1b17bf1df44$LR•IPV4•26『线路3』 +http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 +https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001184/index.m3u8?streamid=091bd59ea031989839c23459bb8cc9d4&streamkey=02BjlnRKVk4w1OimLNBUheOcwPFu2B6oL1pyXGnUypEwAWXSi5pA2M8vAAQNdTDwVOBg3wflpOJH2qUejFLrTdJs5UqkOuOhX0oeeOuZCXNP6xGvpxjLkvkGHVF&token=1775846394-f40678590315c3a3-0-795d5d8e9ef7cc7d142de1b17bf1df44$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•26『线路5』 +http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•26『线路6』 +http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•26『线路6』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•26『线路7』 +http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://60.10.139.113:8801/hls/36/index.m3u8$LR•IPV4•26『线路8』 +http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://207.56.13.146:81/cdnlive/gzws.m3u8$LR•IPV4•26『线路9』 +http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://192.151.150.154/live/gzwshd.m3u8$LR•IPV4•26『线路10』 +https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•26『线路11』 +https://httop.top/ysp-贵州卫视$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025843&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路12』 +http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000003169&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路13』 +http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://111.29.9.44:6610/000000001000/5000000004000025843/index.m3u8?channel-id=bestzb&Contentid=5000000004000025843&livemode=1&stbId=3$LR•IPV4•26『线路14』 +http://60.10.139.113:8801/hls/36/index.m3u8$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://111.29.9.33:6610/000000001000/1000000002000003169/index.m3u8?channel-id=bestzb&Contentid=1000000002000003169&livemode=1&stbId=3$LR•IPV4•26『线路15』 +http://207.56.13.146:81/cdnlive/gzws.m3u8$LR•IPV4•26『线路15』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•26『线路16』 +http://192.151.150.154/live/gzwshd.m3u8$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•26『线路17』 +http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•26『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025843&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•26『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000003169&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•26『线路20』 +http://111.29.9.44:6610/000000001000/5000000004000025843/index.m3u8?channel-id=bestzb&Contentid=5000000004000025843&livemode=1&stbId=3$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://httop.top/ysp-贵州卫视$LR•IPV4•26『线路21』 +http://111.29.9.33:6610/000000001000/1000000002000003169/index.m3u8?channel-id=bestzb&Contentid=1000000002000003169&livemode=1&stbId=3$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路22』 +http://120.76.248.139/live/bfgd/4200000101.m3u8$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://120.76.248.139/live/bfgd/4200000101.m3u8$LR•IPV4•26『线路23』 +http://111.43.126.240:9003/hls/36/index.m3u8$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://111.43.126.240:9003/hls/36/index.m3u8$LR•IPV4•26『线路24』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225793/index.m3u8$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225793/index.m3u8$LR•IPV4•26『线路25』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226874/index.m3u8$LR•IPV4•26『线路25』 #EXTINF:-1 tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226874/index.m3u8$LR•IPV4•26『线路26』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•26『线路26』 #EXTINF:-1 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•42『线路1』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227014/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErSGjhI3DMaaAASPrbQJYTg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•41『线路1』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://222.90.21.30:9901/hls/44/index.m3u8$LR•IPV4•42『线路2』 +http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•41『线路2』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://173.208.212.130:8181/720p/hews.m3u8$LR•IPV4•42『线路3』 +http://222.90.21.30:9901/hls/44/index.m3u8$LR•IPV4•41『线路3』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://36.40.237.49:9999/tsfile/live/0138_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•42『线路4』 +http://173.208.212.130:8181/720p/hews.m3u8$LR•IPV4•41『线路4』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://36.136.38.87:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•42『线路5』 +http://36.40.237.49:9999/tsfile/live/0138_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•41『线路5』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•42『线路6』 +http://36.136.38.87:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路6』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•42『线路7』 +http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路7』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•42『线路8』 +http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•41『线路8』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -https://tv.pull.hebtv.com/jishi/nongminpindao.m3u8?t=1782721229&k=b37c20269609549cb025f346f758e5d4$LR•IPV4•42『线路9』 +http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•41『线路9』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://60.10.139.113:8801/hls/16/index.m3u8$LR•IPV4•42『线路10』 +http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•41『线路10』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://207.56.13.146:81/cdnlive/hews.m3u8$LR•IPV4•42『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•41『线路11』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://192.151.150.154/live/hewshd.m3u8$LR•IPV4•42『线路12』 +https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•41『线路12』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•42『线路13』 +https://httop.top/ysp-河北卫视$LR•IPV4•41『线路13』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://101.6.130.52:1234/962042070$LR•IPV4•42『线路14』 +http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•41『线路14』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040016&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路15』 +http://60.10.139.113:8801/hls/16/index.m3u8$LR•IPV4•41『线路15』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017118&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路16』 +http://207.56.13.146:81/cdnlive/hews.m3u8$LR•IPV4•41『线路16』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://111.29.9.37:6610/000000001000/1000000002000017118/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•42『线路17』 +http://192.151.150.154/live/hewshd.m3u8$LR•IPV4•41『线路17』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://111.29.9.33:6610/000000001000/1000000002000017118/index.m3u8?channel-id=bestzb&Contentid=1000000002000017118&livemode=1&stbId=3$LR•IPV4•42『线路18』 +http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•41『线路18』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•42『线路19』 +http://101.6.130.52:1234/962042070$LR•IPV4•41『线路19』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•42『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040016&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路20』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•42『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017118&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路21』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•42『线路22』 +http://111.29.9.37:6610/000000001000/1000000002000017118/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•41『线路22』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -https://httop.top/ysp-河北卫视$LR•IPV4•42『线路23』 +http://111.29.9.33:6610/000000001000/1000000002000017118/index.m3u8?channel-id=bestzb&Contentid=1000000002000017118&livemode=1&stbId=3$LR•IPV4•41『线路23』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•42『线路24』 +http://120.76.248.139/live/bfgd/4200000108.m3u8$LR•IPV4•41『线路24』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://120.76.248.139/live/bfgd/4200000108.m3u8$LR•IPV4•42『线路25』 +https://live.chinacert.cftest5.cn/cnmg/live/962042070$LR•IPV4•41『线路25』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -https://live.chinacert.cftest5.cn/cnmg/live/962042070$LR•IPV4•42『线路26』 +http://m.061899.xyz/mg/hbws$LR•IPV4•41『线路26』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://m.061899.xyz/mg/hbws$LR•IPV4•42『线路27』 +http://fn.gcl.de5.net:5908/gsh950428/962042070$LR•IPV4•41『线路27』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://fn.gcl.de5.net:5908/gsh950428/962042070$LR•IPV4•42『线路28』 +http://wfenf.x3322.net:7788/962042070$LR•IPV4•41『线路28』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://wfenf.x3322.net:7788/962042070$LR•IPV4•42『线路29』 +http://106.5.175.159:1234/962042070$LR•IPV4•41『线路29』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://106.5.175.159:1234/962042070$LR•IPV4•42『线路30』 +http://36.104.221.222:7788/962042070$LR•IPV4•41『线路30』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://36.104.221.222:7788/962042070$LR•IPV4•42『线路31』 +http://115.58.151.196:1234/962042070$LR•IPV4•41『线路31』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://115.58.151.196:1234/962042070$LR•IPV4•42『线路32』 +http://182.61.15.163:80/962042070$LR•IPV4•41『线路32』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://182.61.15.163:80/962042070$LR•IPV4•42『线路33』 +http://121.23.132.14:7788/962042070$LR•IPV4•41『线路33』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://121.23.132.14:7788/962042070$LR•IPV4•42『线路34』 +http://120.4.126.153:1234/962042070$LR•IPV4•41『线路34』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://120.4.126.153:1234/962042070$LR•IPV4•42『线路35』 +http://111.43.126.240:9003/hls/40/index.m3u8$LR•IPV4•41『线路35』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://111.43.126.240:9003/hls/40/index.m3u8$LR•IPV4•42『线路36』 +http://47.119.24.76:59093/962042070$LR•IPV4•41『线路36』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://47.119.24.76:59093/962042070$LR•IPV4•42『线路37』 +http://222.134.19.49:8090/962042070$LR•IPV4•41『线路37』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://222.134.19.49:8090/962042070$LR•IPV4•42『线路38』 +http://139.155.89.87:1000/962042070$LR•IPV4•41『线路38』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://139.155.89.87:1000/962042070$LR•IPV4•42『线路39』 +http://101.34.236.223:1112/962042070$LR•IPV4•41『线路39』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://101.34.236.223:1112/962042070$LR•IPV4•42『线路40』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225750/index.m3u8$LR•IPV4•41『线路40』 #EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225750/index.m3u8$LR•IPV4•42『线路41』 -#EXTINF:-1 tvg-name="河北卫视" group-title="卫视",河北卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226774/index.m3u8$LR•IPV4•42『线路42』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226774/index.m3u8$LR•IPV4•41『线路41』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://222.90.21.30:9901/hls/31/index.m3u8$LR•IPV4•46『线路1』 +http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•46『线路1』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://207.56.13.146:81/cdnlive/haws.m3u8$LR•IPV4•46『线路2』 +http://222.90.21.30:9901/hls/31/index.m3u8$LR•IPV4•46『线路2』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hawshd$LR•IPV4•46『线路3』 +http://207.56.13.146:81/cdnlive/haws.m3u8$LR•IPV4•46『线路3』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://173.208.212.130:8181/720p/haws.m3u8$LR•IPV4•46『线路4』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hawshd$LR•IPV4•46『线路4』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://36.40.237.49:9999/tsfile/live/0139_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路5』 +http://173.208.212.130:8181/720p/haws.m3u8$LR•IPV4•46『线路5』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://112.123.243.37:50085/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路6』 +http://36.40.237.49:9999/tsfile/live/0139_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路6』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://36.136.38.87:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路7』 +http://112.123.243.37:50085/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路7』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://153.0.171.163:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路8』 +http://36.136.38.87:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路8』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•46『线路9』 +http://153.0.171.163:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路9』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 http://tvcdn.stream3.hndt.com/tv/65c4a6d5017e1000b2b6ea2500000000_transios/playlist.m3u8?wsSecret=6260de8a657b9690378b0de17073af85&wsTime=1782713258$LR•IPV4•46『线路10』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•46『线路11』 +http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•46『线路11』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://60.10.139.113:8801/hls/32/index.m3u8$LR•IPV4•46『线路12』 +http://23.237.228.134/live6/henan.m3u8$LR•IPV4•46『线路12』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://1.94.31.214/php/hntv.php?id=hnws#http://lxajh.top/tv/hn.php?id=hnws$LR•IPV4•46『线路13』 +http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•46『线路13』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://192.151.150.154/live/hawshd.m3u8$LR•IPV4•46『线路14』 +https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•46『线路14』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://204.12.221.218:8181/3m1080p/haws.m3u8$LR•IPV4•46『线路15』 +https://httop.top/ysp-河南卫视$LR•IPV4•46『线路15』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://101.6.130.52:1234/790187291$LR•IPV4•46『线路16』 +http://60.10.139.113:8801/hls/32/index.m3u8$LR•IPV4•46『线路16』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000017925&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路17』 +http://1.94.31.214/php/hntv.php?id=hnws#http://lxajh.top/tv/hn.php?id=hnws$LR•IPV4•46『线路17』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://1.94.31.214/php/hntv.php?id=hnws$LR•IPV4•46『线路18』 +http://192.151.150.154/live/hawshd.m3u8$LR•IPV4•46『线路18』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031119&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路19』 +http://204.12.221.218:8181/3m1080p/haws.m3u8$LR•IPV4•46『线路19』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7304224304099543804&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路20』 +http://101.6.130.52:1234/790187291$LR•IPV4•46『线路20』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://111.29.9.33:6610/000000001000/5000000011000031119/index.m3u8?channel-id=bestzb&Contentid=5000000011000031119&livemode=1&stbId=3$LR•IPV4•46『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000017925&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路21』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•46『线路22』 +http://1.94.31.214/php/hntv.php?id=hnws$LR•IPV4•46『线路22』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://23.237.228.134/live6/henan.m3u8$LR•IPV4•46『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031119&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路23』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•46『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7304224304099543804&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路24』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•46『线路25』 +http://111.29.9.33:6610/000000001000/5000000011000031119/index.m3u8?channel-id=bestzb&Contentid=5000000011000031119&livemode=1&stbId=3$LR•IPV4•46『线路25』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -https://httop.top/ysp-河南卫视$LR•IPV4•46『线路26』 +http://120.76.248.139/live/bfgd/4200000339.m3u8$LR•IPV4•46『线路26』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://120.76.248.139/live/bfgd/4200000339.m3u8$LR•IPV4•46『线路27』 +https://live.chinacert.cftest5.cn/cnmg/live/790187291$LR•IPV4•46『线路27』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -https://live.chinacert.cftest5.cn/cnmg/live/790187291$LR•IPV4•46『线路28』 +http://m.061899.xyz/mg/hnws$LR•IPV4•46『线路28』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://m.061899.xyz/mg/hnws$LR•IPV4•46『线路29』 +http://fn.gcl.de5.net:5908/gsh950428/790187291$LR•IPV4•46『线路29』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://fn.gcl.de5.net:5908/gsh950428/790187291$LR•IPV4•46『线路30』 +http://wfenf.x3322.net:7788/790187291$LR•IPV4•46『线路30』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://wfenf.x3322.net:7788/790187291$LR•IPV4•46『线路31』 +http://106.5.175.159:1234/790187291$LR•IPV4•46『线路31』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://106.5.175.159:1234/790187291$LR•IPV4•46『线路32』 +http://36.104.221.222:7788/790187291$LR•IPV4•46『线路32』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://36.104.221.222:7788/790187291$LR•IPV4•46『线路33』 +http://115.58.151.196:1234/790187291$LR•IPV4•46『线路33』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://115.58.151.196:1234/790187291$LR•IPV4•46『线路34』 +http://182.61.15.163:80/790187291$LR•IPV4•46『线路34』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://182.61.15.163:80/790187291$LR•IPV4•46『线路35』 +http://121.23.132.14:7788/790187291$LR•IPV4•46『线路35』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://121.23.132.14:7788/790187291$LR•IPV4•46『线路36』 +http://120.4.126.153:1234/790187291$LR•IPV4•46『线路36』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://120.4.126.153:1234/790187291$LR•IPV4•46『线路37』 +http://111.43.126.240:9003/hls/29/index.m3u8$LR•IPV4•46『线路37』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://111.43.126.240:9003/hls/29/index.m3u8$LR•IPV4•46『线路38』 +http://47.119.24.76:59093/790187291$LR•IPV4•46『线路38』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://47.119.24.76:59093/790187291$LR•IPV4•46『线路39』 +http://222.134.19.49:8090/790187291$LR•IPV4•46『线路39』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://222.134.19.49:8090/790187291$LR•IPV4•46『线路40』 +http://rihou.cc:555/tv/[mg]河南卫视$LR•IPV4•46『线路40』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://rihou.cc:555/tv/[mg]河南卫视$LR•IPV4•46『线路41』 +http://139.155.89.87:1000/790187291$LR•IPV4•46『线路41』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://139.155.89.87:1000/790187291$LR•IPV4•46『线路42』 +http://101.34.236.223:1112/790187291$LR•IPV4•46『线路42』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://101.34.236.223:1112/790187291$LR•IPV4•46『线路43』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227198/index.m3u8$LR•IPV4•46『线路43』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227198/index.m3u8$LR•IPV4•46『线路44』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225767/index.m3u8$LR•IPV4•46『线路44』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225767/index.m3u8$LR•IPV4•46『线路45』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226791/index.m3u8$LR•IPV4•46『线路45』 #EXTINF:-1 tvg-name="河南卫视" group-title="卫视",河南卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226791/index.m3u8$LR•IPV4•46『线路46』 +http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•46『线路46』 #EXTINF:-1 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•29『线路1』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://120.198.95.220:9901/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•29『线路2』 +http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•29『线路2』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•29『线路3』 +http://120.198.95.220:9901/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•29『线路3』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://153.0.171.163:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路4』 +http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•29『线路4』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•29『线路5』 +http://153.0.171.163:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路5』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•29『线路6』 +http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•29『线路6』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://60.10.139.113:8801/hls/27/index.m3u8$LR•IPV4•29『线路7』 +http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•29『线路7』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://207.56.13.146:81/cdnlive/hljws.m3u8$LR•IPV4•29『线路8』 +http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•29『线路8』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://192.151.150.154/live/hljwshd.m3u8$LR•IPV4•29『线路9』 +http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•29『线路9』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://204.12.221.218:8181/3m1080p/hljws.m3u8$LR•IPV4•29『线路10』 +https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•29『线路10』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025203&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路11』 +https://httop.top/ysp-黑龙江卫视$LR•IPV4•29『线路11』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001925&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路12』 +http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•29『线路12』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路13』 +http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•29『线路13』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009082&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路14』 +http://60.10.139.113:8801/hls/27/index.m3u8$LR•IPV4•29『线路14』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://idclive.hljtv.com:4430/live/hljws_own.m3u8$LR•IPV4•29『线路15』 +http://207.56.13.146:81/cdnlive/hljws.m3u8$LR•IPV4•29『线路15』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://111.29.9.33:6610/000000001000/1000000001000001925/index.m3u8?channel-id=bestzb&Contentid=1000000001000001925&livemode=1&stbId=3$LR•IPV4•29『线路16』 +http://192.151.150.154/live/hljwshd.m3u8$LR•IPV4•29『线路16』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•29『线路17』 +http://204.12.221.218:8181/3m1080p/hljws.m3u8$LR•IPV4•29『线路17』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•29『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025203&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路18』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•29『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001925&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路19』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•29『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路20』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•29『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009082&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路21』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://httop.top/ysp-黑龙江卫视$LR•IPV4•29『线路22』 +https://idclive.hljtv.com:4430/live/hljws_own.m3u8$LR•IPV4•29『线路22』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•29『线路23』 +http://111.29.9.33:6610/000000001000/1000000001000001925/index.m3u8?channel-id=bestzb&Contentid=1000000001000001925&livemode=1&stbId=3$LR•IPV4•29『线路23』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 http://120.76.248.139/live/bfgd/4200000095.m3u8$LR•IPV4•29『线路24』 #EXTINF:-1 tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 @@ -3720,233 +3722,233 @@ http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227288/index.m3u8$LR•IPV4 #EXTINF:-1 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•46『线路1』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://120.198.95.220:9901/tsfile/live/1053_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路2』 +http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•46『线路2』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://153.0.171.163:85/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路3』 +http://120.198.95.220:9901/tsfile/live/1053_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路3』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路4』 +http://153.0.171.163:85/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路4』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•46『线路5』 +http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•46『线路6』 +http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•46『线路6』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://60.10.139.113:8801/hls/29/index.m3u8$LR•IPV4•46『线路7』 +http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•46『线路7』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://207.56.13.146:81/cdnlive/hbws.m3u8$LR•IPV4•46『线路8』 +http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•46『线路8』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://192.151.150.154/live/hbwshd.m3u8$LR•IPV4•46『线路9』 +http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•46『线路9』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://204.12.221.218:8181/3m1080p/hbws.m3u8$LR•IPV4•46『线路10』 +http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•46『线路10』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://101.6.130.52:1234/947472496$LR•IPV4•46『线路11』 +https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•46『线路11』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014954&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路12』 +https://httop.top/ysp-湖北卫视$LR•IPV4•46『线路12』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000022140&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路13』 +http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•46『线路13』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000010355&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•46『线路14』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024621&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路15』 +http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•46『线路15』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265023&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路16』 +http://60.10.139.113:8801/hls/29/index.m3u8$LR•IPV4•46『线路16』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://111.29.9.33:6610/000000001000/1000000001000010355/index.m3u8?channel-id=bestzb&Contentid=1000000001000010355&livemode=1&stbId=3$LR•IPV4•46『线路17』 +http://207.56.13.146:81/cdnlive/hbws.m3u8$LR•IPV4•46『线路17』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•46『线路18』 +http://192.151.150.154/live/hbwshd.m3u8$LR•IPV4•46『线路18』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•46『线路19』 +http://204.12.221.218:8181/3m1080p/hbws.m3u8$LR•IPV4•46『线路19』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•46『线路20』 +http://101.6.130.52:1234/947472496$LR•IPV4•46『线路20』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•46『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014954&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路21』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•46『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000022140&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路22』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•46『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000010355&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路23』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -https://httop.top/ysp-湖北卫视$LR•IPV4•46『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024621&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路24』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•46『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265023&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路25』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•46『线路26』 +http://111.29.9.33:6610/000000001000/1000000001000010355/index.m3u8?channel-id=bestzb&Contentid=1000000001000010355&livemode=1&stbId=3$LR•IPV4•46『线路26』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•46『线路27』 +http://120.76.248.139/live/bfgd/4200000102.m3u8$LR•IPV4•46『线路27』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://120.76.248.139/live/bfgd/4200000102.m3u8$LR•IPV4•46『线路28』 +https://live.chinacert.cftest5.cn/cnmg/live/947472496$LR•IPV4•46『线路28』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -https://live.chinacert.cftest5.cn/cnmg/live/947472496$LR•IPV4•46『线路29』 +http://fn.gcl.de5.net:5908/gsh950428/947472496$LR•IPV4•46『线路29』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://fn.gcl.de5.net:5908/gsh950428/947472496$LR•IPV4•46『线路30』 +http://wfenf.x3322.net:7788/947472496$LR•IPV4•46『线路30』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://wfenf.x3322.net:7788/947472496$LR•IPV4•46『线路31』 +http://106.5.175.159:1234/947472496$LR•IPV4•46『线路31』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://106.5.175.159:1234/947472496$LR•IPV4•46『线路32』 +http://36.104.221.222:7788/947472496$LR•IPV4•46『线路32』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://36.104.221.222:7788/947472496$LR•IPV4•46『线路33』 +http://115.58.151.196:1234/947472496$LR•IPV4•46『线路33』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://115.58.151.196:1234/947472496$LR•IPV4•46『线路34』 +http://182.61.15.163:80/947472496$LR•IPV4•46『线路34』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://182.61.15.163:80/947472496$LR•IPV4•46『线路35』 +http://121.23.132.14:7788/947472496$LR•IPV4•46『线路35』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://121.23.132.14:7788/947472496$LR•IPV4•46『线路36』 +http://120.4.126.153:1234/947472496$LR•IPV4•46『线路36』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://120.4.126.153:1234/947472496$LR•IPV4•46『线路37』 +http://111.43.126.240:9003/hls/38/index.m3u8$LR•IPV4•46『线路37』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://111.43.126.240:9003/hls/38/index.m3u8$LR•IPV4•46『线路38』 +http://47.119.24.76:59093/947472496$LR•IPV4•46『线路38』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://47.119.24.76:59093/947472496$LR•IPV4•46『线路39』 +http://222.134.19.49:8090/947472496$LR•IPV4•46『线路39』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://222.134.19.49:8090/947472496$LR•IPV4•46『线路40』 +http://rihou.cc:555/tv/[mg]湖北卫视$LR•IPV4•46『线路40』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://rihou.cc:555/tv/[mg]湖北卫视$LR•IPV4•46『线路41』 +http://139.155.89.87:1000/947472496$LR•IPV4•46『线路41』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://139.155.89.87:1000/947472496$LR•IPV4•46『线路42』 +http://101.34.236.223:1112/947472496$LR•IPV4•46『线路42』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://101.34.236.223:1112/947472496$LR•IPV4•46『线路43』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226206/index.m3u8$LR•IPV4•46『线路43』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226206/index.m3u8$LR•IPV4•46『线路44』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225760/index.m3u8$LR•IPV4•46『线路44』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225760/index.m3u8$LR•IPV4•46『线路45』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227230/index.m3u8$LR•IPV4•46『线路45』 #EXTINF:-1 tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227230/index.m3u8$LR•IPV4•46『线路46』 +http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•46『线路46』 #EXTINF:-1 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•46『线路1』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路2』 +http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•46『线路2』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://120.198.95.220:9901/tsfile/live/1061_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路3』 +http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路3』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://36.136.38.87:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路4』 +http://120.198.95.220:9901/tsfile/live/1061_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路4』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 +http://36.136.38.87:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•46『线路6』 +http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 https://jsp-tv-live.jxtvcn.com.cn/live-jsp/tv_jxtv1.m3u8?t=1782690276&token=63790ba6-2f66-425e-934c-c0b23c9024ce&d=939da61343f04522a73cd2c09a09352f$LR•IPV4•46『线路7』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•46『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•46『线路8』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://60.10.139.113:8801/hls/37/index.m3u8$LR•IPV4•46『线路9』 +http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•46『线路9』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•46『线路10』 +http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•46『线路10』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://192.151.150.154/live/jxwshd.m3u8$LR•IPV4•46『线路11』 +http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•46『线路11』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://204.12.221.218:8181/3m1080p/jxws.m3u8$LR•IPV4•46『线路12』 +https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•46『线路12』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://101.6.130.52:1234/783847495$LR•IPV4•46『线路13』 +https://httop.top/ysp-江西卫视$LR•IPV4•46『线路13』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011210&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 +http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•46『线路14』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000013731&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路15』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•46『线路15』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000006000268001&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路16』 +http://60.10.139.113:8801/hls/37/index.m3u8$LR•IPV4•46『线路16』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000032154&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路17』 +http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•46『线路17』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://111.29.9.39:6610/000000001000/5000000004000011210/index.m3u8?channel-id=bestzb&Contentid=5000000004000011210&livemode=1&stbId=3$LR•IPV4•46『线路18』 +http://192.151.150.154/live/jxwshd.m3u8$LR•IPV4•46『线路18』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://111.29.9.33:6610/000000001000/1000000001000013731/index.m3u8?channel-id=bestzb&Contentid=1000000001000013731&livemode=1&stbId=3$LR•IPV4•46『线路19』 +http://204.12.221.218:8181/3m1080p/jxws.m3u8$LR•IPV4•46『线路19』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•46『线路20』 +http://101.6.130.52:1234/783847495$LR•IPV4•46『线路20』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•46『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011210&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路21』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•46『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000013731&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路22』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•46『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000006000268001&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路23』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•46『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000032154&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路24』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -https://httop.top/ysp-江西卫视$LR•IPV4•46『线路25』 +http://111.29.9.39:6610/000000001000/5000000004000011210/index.m3u8?channel-id=bestzb&Contentid=5000000004000011210&livemode=1&stbId=3$LR•IPV4•46『线路25』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•46『线路26』 +http://111.29.9.33:6610/000000001000/1000000001000013731/index.m3u8?channel-id=bestzb&Contentid=1000000001000013731&livemode=1&stbId=3$LR•IPV4•46『线路26』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•46『线路27』 +http://120.76.248.139/live/bfgd/4200000098.m3u8$LR•IPV4•46『线路27』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://120.76.248.139/live/bfgd/4200000098.m3u8$LR•IPV4•46『线路28』 +https://live.chinacert.cftest5.cn/cnmg/live/783847495$LR•IPV4•46『线路28』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -https://live.chinacert.cftest5.cn/cnmg/live/783847495$LR•IPV4•46『线路29』 +http://m.061899.xyz/mg/jxws$LR•IPV4•46『线路29』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://m.061899.xyz/mg/jxws$LR•IPV4•46『线路30』 +http://fn.gcl.de5.net:5908/gsh950428/783847495$LR•IPV4•46『线路30』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://fn.gcl.de5.net:5908/gsh950428/783847495$LR•IPV4•46『线路31』 +http://wfenf.x3322.net:7788/783847495$LR•IPV4•46『线路31』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://wfenf.x3322.net:7788/783847495$LR•IPV4•46『线路32』 +http://106.5.175.159:1234/783847495$LR•IPV4•46『线路32』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://106.5.175.159:1234/783847495$LR•IPV4•46『线路33』 +http://36.104.221.222:7788/783847495$LR•IPV4•46『线路33』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://36.104.221.222:7788/783847495$LR•IPV4•46『线路34』 +http://115.58.151.196:1234/783847495$LR•IPV4•46『线路34』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://115.58.151.196:1234/783847495$LR•IPV4•46『线路35』 +http://182.61.15.163:80/783847495$LR•IPV4•46『线路35』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://182.61.15.163:80/783847495$LR•IPV4•46『线路36』 +http://121.23.132.14:7788/783847495$LR•IPV4•46『线路36』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://121.23.132.14:7788/783847495$LR•IPV4•46『线路37』 +http://120.4.126.153:1234/783847495$LR•IPV4•46『线路37』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://120.4.126.153:1234/783847495$LR•IPV4•46『线路38』 +http://111.43.126.240:9003/hls/33/index.m3u8$LR•IPV4•46『线路38』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://111.43.126.240:9003/hls/33/index.m3u8$LR•IPV4•46『线路39』 +http://47.119.24.76:59093/783847495$LR•IPV4•46『线路39』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://47.119.24.76:59093/783847495$LR•IPV4•46『线路40』 +http://222.134.19.49:8090/783847495$LR•IPV4•46『线路40』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://222.134.19.49:8090/783847495$LR•IPV4•46『线路41』 +http://rihou.cc:555/tv/[mg]江西卫视$LR•IPV4•46『线路41』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://rihou.cc:555/tv/[mg]江西卫视$LR•IPV4•46『线路42』 +http://139.155.89.87:1000/783847495$LR•IPV4•46『线路42』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://139.155.89.87:1000/783847495$LR•IPV4•46『线路43』 +http://101.34.236.223:1112/783847495$LR•IPV4•46『线路43』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://101.34.236.223:1112/783847495$LR•IPV4•46『线路44』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225764/index.m3u8$LR•IPV4•46『线路44』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225764/index.m3u8$LR•IPV4•46『线路45』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226788/index.m3u8$LR•IPV4•46『线路45』 #EXTINF:-1 tvg-name="江西卫视" group-title="卫视",江西卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226788/index.m3u8$LR•IPV4•46『线路46』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•46『线路46』 #EXTINF:-1 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•41『线路1』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://111.8.224.6:9999/tsfile/live/1032_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路2』 +http://cssbyd.imwork.net:8082/hls/41/index.m3u8$LR•IPV4•41『线路2』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://36.40.237.49:9999/tsfile/live/0116_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•41『线路3』 +http://111.8.224.6:9999/tsfile/live/1032_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路3』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•41『线路4』 +http://36.40.237.49:9999/tsfile/live/0116_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•41『线路4』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路5』 +http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•41『线路5』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路6』 +http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路6』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://cssbyd.imwork.net:8082/hls/41/index.m3u8$LR•IPV4•41『线路7』 +http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路7』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•41『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•41『线路8』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://60.10.139.113:8801/hls/38/index.m3u8$LR•IPV4•41『线路9』 +http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•41『线路9』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://207.56.13.146:81/cdnlive/jlws.m3u8$LR•IPV4•41『线路10』 +http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•41『线路10』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://192.151.150.154/live/jlwshd.m3u8$LR•IPV4•41『线路11』 +http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•41『线路11』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•41『线路12』 +https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•41『线路12』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://101.6.130.52:1234/947472500$LR•IPV4•41『线路13』 +https://httop.top/ysp-吉林卫视$LR•IPV4•41『线路13』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031117&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路14』 +http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•41『线路14』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6042486520432105075&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路15』 +http://60.10.139.113:8801/hls/38/index.m3u8$LR•IPV4•41『线路15』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040013&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路16』 +http://207.56.13.146:81/cdnlive/jlws.m3u8$LR•IPV4•41『线路16』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://111.29.9.33:6610/000000001000/5000000011000031117/index.m3u8?channel-id=bestzb&Contentid=5000000011000031117&livemode=1&stbId=3$LR•IPV4•41『线路17』 +http://192.151.150.154/live/jlwshd.m3u8$LR•IPV4•41『线路17』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•41『线路18』 +http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•41『线路18』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•41『线路19』 +http://101.6.130.52:1234/947472500$LR•IPV4•41『线路19』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•41『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031117&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路20』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•41『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6042486520432105075&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路21』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•41『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040013&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路22』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 -https://httop.top/ysp-吉林卫视$LR•IPV4•41『线路23』 +http://111.29.9.33:6610/000000001000/5000000011000031117/index.m3u8?channel-id=bestzb&Contentid=5000000011000031117&livemode=1&stbId=3$LR•IPV4•41『线路23』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 http://120.76.248.139/live/bfgd/4200000097.m3u8$LR•IPV4•41『线路24』 #EXTINF:-1 tvg-name="吉林卫视" group-title="卫视",吉林卫视 @@ -3986,111 +3988,111 @@ http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227310/index.m3u8$LR•IPV4 #EXTINF:-1 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•28『线路1』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://107.150.60.122/live/nmgws.m3u8$LR•IPV4•28『线路2』 +http://112.27.235.94:8000/hls/49/index.m3u8$LR•IPV4•28『线路2』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://111.8.224.6:9999/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路3』 +http://107.150.60.122/live/nmgws.m3u8$LR•IPV4•28『线路3』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://36.40.237.49:9999/tsfile/live/0109_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•28『线路4』 +http://111.8.224.6:9999/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路4』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路5』 +http://36.40.237.49:9999/tsfile/live/0109_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•28『线路5』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://58.56.162.102:4466/newlive/live/hls/40/live.m3u8$LR•IPV4•28『线路6』 +http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路6』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路7』 +http://58.56.162.102:4466/newlive/live/hls/40/live.m3u8$LR•IPV4•28『线路7』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://204.12.221.218:8181/3m1080p/nmgws.m3u8$LR•IPV4•28『线路8』 +http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路8』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://112.27.235.94:8000/hls/49/index.m3u8$LR•IPV4•28『线路9』 +http://204.12.221.218:8181/3m1080p/nmgws.m3u8$LR•IPV4•28『线路9』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•28『线路10』 +http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•28『线路10』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•28『线路11』 +https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•28『线路11』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•28『线路12』 +https://httop.top/ysp-内蒙古卫视$LR•IPV4•28『线路12』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•28『线路13』 +http://60.10.139.113:8801/hls/55/index.m3u8$LR•IPV4•28『线路13』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://60.10.139.113:8801/hls/55/index.m3u8$LR•IPV4•28『线路14』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.217:5140$LR•IPV4•28『线路14』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.217:5140$LR•IPV4•28『线路15』 +http://207.56.13.146:81/cdnlive/nmgws.m3u8$LR•IPV4•28『线路15』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://207.56.13.146:81/cdnlive/nmgws.m3u8$LR•IPV4•28『线路16』 +http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•28『线路16』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•28『线路17』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000014080&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路17』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000014080&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7331079758781182663&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路18』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7331079758781182663&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路19』 +http://120.76.248.139/live/bfgd/4200000110.m3u8$LR•IPV4•28『线路19』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•28『线路20』 +http://m.061899.xyz/mg/nmgws$LR•IPV4•28『线路20』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•28『线路21』 +http://111.43.126.240:9003/hls/47/index.m3u8$LR•IPV4•28『线路21』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -https://httop.top/ysp-内蒙古卫视$LR•IPV4•28『线路22』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227182/index.m3u8$LR•IPV4•28『线路22』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://120.76.248.139/live/bfgd/4200000110.m3u8$LR•IPV4•28『线路23』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225786/index.m3u8$LR•IPV4•28『线路23』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://m.061899.xyz/mg/nmgws$LR•IPV4•28『线路24』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226886/index.m3u8$LR•IPV4•28『线路24』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://111.43.126.240:9003/hls/47/index.m3u8$LR•IPV4•28『线路25』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•28『线路25』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227182/index.m3u8$LR•IPV4•28『线路26』 +http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•28『线路26』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225786/index.m3u8$LR•IPV4•28『线路27』 +http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•28『线路27』 #EXTINF:-1 tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226886/index.m3u8$LR•IPV4•28『线路28』 +http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•28『线路28』 #EXTINF:-1 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•46『线路1』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://112.123.243.37:50085/tsfile/live/0126_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路2』 +http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•46『线路2』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://120.198.95.220:9901/tsfile/live/1051_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路3』 +http://112.123.243.37:50085/tsfile/live/0126_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路3』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•46『线路4』 +http://120.198.95.220:9901/tsfile/live/1051_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路4』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://36.136.38.87:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 +http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•46『线路5』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 +http://36.136.38.87:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•46『线路7』 +http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路7』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•46『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•46『线路8』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://60.10.139.113:8801/hls/28/index.m3u8$LR•IPV4•46『线路9』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•46『线路9』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://192.151.150.154/live/lnwshd.m3u8$LR•IPV4•46『线路10』 +http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•46『线路10』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•46『线路11』 +http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•46『线路11』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://101.6.130.52:1234/630291707$LR•IPV4•46『线路12』 +http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•46『线路12』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011671&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路13』 +http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•46『线路13』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001945&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 +https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•46『线路14』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000024033&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路15』 +https://httop.top/ysp-辽宁卫视$LR•IPV4•46『线路15』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000008940&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路16』 +http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•46『线路16』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://111.29.9.33:6610/000000001000/1000000001000001945/index.m3u8?channel-id=bestzb&Contentid=1000000001000001945&livemode=1&stbId=3$LR•IPV4•46『线路17』 +http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•46『线路17』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•46『线路18』 +http://60.10.139.113:8801/hls/28/index.m3u8$LR•IPV4•46『线路18』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•46『线路19』 +http://192.151.150.154/live/lnwshd.m3u8$LR•IPV4•46『线路19』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•46『线路20』 +http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•46『线路20』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•46『线路21』 +http://101.6.130.52:1234/630291707$LR•IPV4•46『线路21』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•46『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011671&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路22』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•46『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001945&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路23』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•46『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000024033&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路24』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://httop.top/ysp-辽宁卫视$LR•IPV4•46『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000008940&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路25』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•46『线路26』 +http://111.29.9.33:6610/000000001000/1000000001000001945/index.m3u8?channel-id=bestzb&Contentid=1000000001000001945&livemode=1&stbId=3$LR•IPV4•46『线路26』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 http://120.76.248.139/live/bfgd/4200000141.m3u8$LR•IPV4•46『线路27』 #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 @@ -4132,291 +4134,291 @@ http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225772/index.m3u8$LR•IP #EXTINF:-1 tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227242/index.m3u8$LR•IPV4•46『线路46』 #EXTINF:-1 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•38『线路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•37『线路1』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://198.204.228.26/live/nxws.m3u8$LR•IPV4•38『线路2』 +http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•37『线路2』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•38『线路3』 +http://198.204.228.26/live/nxws.m3u8$LR•IPV4•37『线路3』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://58.56.162.102:4466/newlive/live/hls/43/live.m3u8$LR•IPV4•38『线路4』 +http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•37『线路4』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•38『线路5』 +http://58.56.162.102:4466/newlive/live/hls/43/live.m3u8$LR•IPV4•37『线路5』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://207.56.13.146:81/cdnlive/nxws.m3u8$LR•IPV4•38『线路6』 +http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路6』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://cssbyd.imwork.net:8082/hls/45/index.m3u8$LR•IPV4•38『线路7』 +http://207.56.13.146:81/cdnlive/nxws.m3u8$LR•IPV4•37『线路7』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•38『线路8』 +http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•37『线路8』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://60.10.139.113:8801/hls/57/index.m3u8$LR•IPV4•38『线路9』 +https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•37『线路9』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.230:5140$LR•IPV4•38『线路10』 +https://httop.top/ysp-宁夏卫视$LR•IPV4•37『线路10』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://192.151.150.154/live/nxws.m3u8$LR•IPV4•38『线路11』 +http://60.10.139.113:8801/hls/57/index.m3u8$LR•IPV4•37『线路11』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://204.12.221.218:8181/3m1080p/nxws.m3u8$LR•IPV4•38『线路12』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.230:5140$LR•IPV4•37『线路12』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://101.6.130.52:1234/738910535$LR•IPV4•38『线路13』 +http://192.151.150.154/live/nxws.m3u8$LR•IPV4•37『线路13』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000031451&livemode=1&stbId=yu&mode=1&$LR•IPV4•38『线路14』 +http://204.12.221.218:8181/3m1080p/nxws.m3u8$LR•IPV4•37『线路14』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040022&livemode=1&stbId=yu&mode=1&$LR•IPV4•38『线路15』 +http://101.6.130.52:1234/738910535$LR•IPV4•37『线路15』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://111.29.9.33:6610/000000001000/1000000002000031451/index.m3u8?channel-id=bestzb&Contentid=1000000002000031451&livemode=1&stbId=3$LR•IPV4•38『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000031451&livemode=1&stbId=yu&mode=1&$LR•IPV4•37『线路16』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•38『线路17』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040022&livemode=1&stbId=yu&mode=1&$LR•IPV4•37『线路17』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•38『线路18』 +http://111.29.9.33:6610/000000001000/1000000002000031451/index.m3u8?channel-id=bestzb&Contentid=1000000002000031451&livemode=1&stbId=3$LR•IPV4•37『线路18』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -https://httop.top/ysp-宁夏卫视$LR•IPV4•38『线路19』 +https://live.chinacert.cftest5.cn/cnmg/live/738910535$LR•IPV4•37『线路19』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•38『线路20』 +http://fn.gcl.de5.net:5908/gsh950428/738910535$LR•IPV4•37『线路20』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -https://live.chinacert.cftest5.cn/cnmg/live/738910535$LR•IPV4•38『线路21』 +http://wfenf.x3322.net:7788/738910535$LR•IPV4•37『线路21』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://fn.gcl.de5.net:5908/gsh950428/738910535$LR•IPV4•38『线路22』 +http://106.5.175.159:1234/738910535$LR•IPV4•37『线路22』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://wfenf.x3322.net:7788/738910535$LR•IPV4•38『线路23』 +http://36.104.221.222:7788/738910535$LR•IPV4•37『线路23』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://106.5.175.159:1234/738910535$LR•IPV4•38『线路24』 +http://115.58.151.196:1234/738910535$LR•IPV4•37『线路24』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://36.104.221.222:7788/738910535$LR•IPV4•38『线路25』 +http://182.61.15.163:80/738910535$LR•IPV4•37『线路25』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://115.58.151.196:1234/738910535$LR•IPV4•38『线路26』 +http://121.23.132.14:7788/738910535$LR•IPV4•37『线路26』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://182.61.15.163:80/738910535$LR•IPV4•38『线路27』 +http://120.4.126.153:1234/738910535$LR•IPV4•37『线路27』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://121.23.132.14:7788/738910535$LR•IPV4•38『线路28』 +http://111.43.126.240:9003/hls/51/index.m3u8$LR•IPV4•37『线路28』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://120.4.126.153:1234/738910535$LR•IPV4•38『线路29』 +http://47.119.24.76:59093/738910535$LR•IPV4•37『线路29』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://111.43.126.240:9003/hls/51/index.m3u8$LR•IPV4•38『线路30』 +http://222.134.19.49:8090/738910535$LR•IPV4•37『线路30』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://47.119.24.76:59093/738910535$LR•IPV4•38『线路31』 +http://139.155.89.87:1000/738910535$LR•IPV4•37『线路31』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://222.134.19.49:8090/738910535$LR•IPV4•38『线路32』 +http://101.34.236.223:1112/738910535$LR•IPV4•37『线路32』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://139.155.89.87:1000/738910535$LR•IPV4•38『线路33』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227145/index.m3u8$LR•IPV4•37『线路33』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://101.34.236.223:1112/738910535$LR•IPV4•38『线路34』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227184/index.m3u8$LR•IPV4•37『线路34』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227145/index.m3u8$LR•IPV4•38『线路35』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225748/index.m3u8$LR•IPV4•37『线路35』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227184/index.m3u8$LR•IPV4•38『线路36』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226804/index.m3u8$LR•IPV4•37『线路36』 #EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225748/index.m3u8$LR•IPV4•38『线路37』 -#EXTINF:-1 tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226804/index.m3u8$LR•IPV4•38『线路38』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•37『线路37』 #EXTINF:-1 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•36『线路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•37『线路1』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•36『线路2』 +http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•37『线路2』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://111.8.224.6:9999/tsfile/live/1030_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路3』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•37『线路3』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://192.151.150.154/live/qhws.m3u8$LR•IPV4•36『线路4』 +http://111.8.224.6:9999/tsfile/live/1030_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路4』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://207.56.13.146:81/cdnlive/qhws.m3u8$LR•IPV4•36『线路5』 +http://192.151.150.154/live/qhws.m3u8$LR•IPV4•37『线路5』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路6』 +http://207.56.13.146:81/cdnlive/qhws.m3u8$LR•IPV4•37『线路6』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://204.12.221.218:8181/3m1080p/qhws.m3u8$LR•IPV4•36『线路7』 +http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路7』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•36『线路8』 +http://204.12.221.218:8181/3m1080p/qhws.m3u8$LR•IPV4•37『线路8』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://60.10.139.113:8801/hls/56/index.m3u8$LR•IPV4•36『线路9』 +http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•37『线路9』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://101.6.130.52:1234/947472506$LR•IPV4•36『线路10』 +http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•37『线路10』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040015&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路11』 +https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•37『线路11』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000013359&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路12』 +https://httop.top/ysp-青海卫视$LR•IPV4•37『线路12』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://111.29.9.33:6610/000000001000/1000000002000013359/index.m3u8?channel-id=bestzb&Contentid=1000000002000013359&livemode=1&stbId=3$LR•IPV4•36『线路13』 +http://60.10.139.113:8801/hls/56/index.m3u8$LR•IPV4•37『线路13』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•36『线路14』 +http://101.6.130.52:1234/947472506$LR•IPV4•37『线路14』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•36『线路15』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040015&livemode=1&stbId=yu&mode=1&$LR•IPV4•37『线路15』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•36『线路16』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000013359&livemode=1&stbId=yu&mode=1&$LR•IPV4•37『线路16』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -https://httop.top/ysp-青海卫视$LR•IPV4•36『线路17』 +http://111.29.9.33:6610/000000001000/1000000002000013359/index.m3u8?channel-id=bestzb&Contentid=1000000002000013359&livemode=1&stbId=3$LR•IPV4•37『线路17』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://120.76.248.139/live/bfgd/4200000111.m3u8$LR•IPV4•36『线路18』 +http://120.76.248.139/live/bfgd/4200000111.m3u8$LR•IPV4•37『线路18』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -https://live.chinacert.cftest5.cn/cnmg/live/947472506$LR•IPV4•36『线路19』 +https://live.chinacert.cftest5.cn/cnmg/live/947472506$LR•IPV4•37『线路19』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://m.061899.xyz/mg/qhws$LR•IPV4•36『线路20』 +http://m.061899.xyz/mg/qhws$LR•IPV4•37『线路20』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://fn.gcl.de5.net:5908/gsh950428/947472506$LR•IPV4•36『线路21』 +http://fn.gcl.de5.net:5908/gsh950428/947472506$LR•IPV4•37『线路21』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://wfenf.x3322.net:7788/947472506$LR•IPV4•36『线路22』 +http://wfenf.x3322.net:7788/947472506$LR•IPV4•37『线路22』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://106.5.175.159:1234/947472506$LR•IPV4•36『线路23』 +http://106.5.175.159:1234/947472506$LR•IPV4•37『线路23』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://36.104.221.222:7788/947472506$LR•IPV4•36『线路24』 +http://36.104.221.222:7788/947472506$LR•IPV4•37『线路24』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://115.58.151.196:1234/947472506$LR•IPV4•36『线路25』 +http://115.58.151.196:1234/947472506$LR•IPV4•37『线路25』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://182.61.15.163:80/947472506$LR•IPV4•36『线路26』 +http://182.61.15.163:80/947472506$LR•IPV4•37『线路26』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://121.23.132.14:7788/947472506$LR•IPV4•36『线路27』 +http://121.23.132.14:7788/947472506$LR•IPV4•37『线路27』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://120.4.126.153:1234/947472506$LR•IPV4•36『线路28』 +http://120.4.126.153:1234/947472506$LR•IPV4•37『线路28』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://111.43.126.240:9003/hls/43/index.m3u8$LR•IPV4•36『线路29』 +http://111.43.126.240:9003/hls/43/index.m3u8$LR•IPV4•37『线路29』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://47.119.24.76:59093/947472506$LR•IPV4•36『线路30』 +http://47.119.24.76:59093/947472506$LR•IPV4•37『线路30』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://222.134.19.49:8090/947472506$LR•IPV4•36『线路31』 +http://222.134.19.49:8090/947472506$LR•IPV4•37『线路31』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://139.155.89.87:1000/947472506$LR•IPV4•36『线路32』 +http://139.155.89.87:1000/947472506$LR•IPV4•37『线路32』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://101.34.236.223:1112/947472506$LR•IPV4•36『线路33』 +http://101.34.236.223:1112/947472506$LR•IPV4•37『线路33』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227179/index.m3u8$LR•IPV4•36『线路34』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227179/index.m3u8$LR•IPV4•37『线路34』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225794/index.m3u8$LR•IPV4•36『线路35』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225794/index.m3u8$LR•IPV4•37『线路35』 #EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226889/index.m3u8$LR•IPV4•36『线路36』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226889/index.m3u8$LR•IPV4•37『线路36』 +#EXTINF:-1 tvg-name="青海卫视" group-title="卫视",青海卫视 +http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•37『线路37』 #EXTINF:-1 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•35『线路1』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•35『线路2』 +http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•35『线路2』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://173.208.212.130:8181/720p/sdws.m3u8$LR•IPV4•35『线路3』 +http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•35『线路3』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://36.40.237.49:9999/tsfile/live/0131_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•35『线路4』 +http://173.208.212.130:8181/720p/sdws.m3u8$LR•IPV4•35『线路4』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://36.136.38.87:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路5』 +http://36.40.237.49:9999/tsfile/live/0131_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•35『线路5』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•35『线路6』 +http://36.136.38.87:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路6』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•35『线路7』 +http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•35『线路7』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•35『线路8』 +https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•35『线路8』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://60.10.139.113:8801/hls/25/index.m3u8$LR•IPV4•35『线路9』 +https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•35『线路9』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•35『线路10』 +http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•35『线路10』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://192.151.150.154/live/sdwshd.m3u8$LR•IPV4•35『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•35『线路11』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://204.12.221.218:8181/3m1080p/sdws.m3u8$LR•IPV4•35『线路12』 +http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•35『线路12』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000020424&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路13』 +https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•35『线路13』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000012807&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路14』 +https://httop.top/ysp-山东卫视$LR•IPV4•35『线路14』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000016568&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路15』 +http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•35『线路15』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000027763&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路16』 +http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路16』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7347081113971056899&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路17』 +http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•35『线路17』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://111.29.9.37:6610/000000001000/1000000001000012807/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•35『线路18』 +http://60.10.139.113:8801/hls/25/index.m3u8$LR•IPV4•35『线路18』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://111.29.9.33:6610/000000001000/1000000001000012807/index.m3u8?channel-id=bestzb&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•35『线路19』 +http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•35『线路19』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•35『线路20』 +http://192.151.150.154/live/sdwshd.m3u8$LR•IPV4•35『线路20』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•35『线路21』 +http://204.12.221.218:8181/3m1080p/sdws.m3u8$LR•IPV4•35『线路21』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•35『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000020424&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路22』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•35『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000012807&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路23』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•35『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000016568&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路24』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•35『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000027763&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路25』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•35『线路26』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7347081113971056899&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路26』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -https://httop.top/ysp-山东卫视$LR•IPV4•35『线路27』 +http://111.29.9.37:6610/000000001000/1000000001000012807/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•35『线路27』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•35『线路28』 +http://111.29.9.33:6610/000000001000/1000000001000012807/index.m3u8?channel-id=bestzb&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•35『线路28』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路29』 +http://120.76.248.139/live/bfgd/4200000099.m3u8$LR•IPV4•35『线路29』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://120.76.248.139/live/bfgd/4200000099.m3u8$LR•IPV4•35『线路30』 +http://m.061899.xyz/mg/sdws$LR•IPV4•35『线路30』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://m.061899.xyz/mg/sdws$LR•IPV4•35『线路31』 +http://rihou.cc:555/tv/[mg]山东卫视$LR•IPV4•35『线路31』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://rihou.cc:555/tv/[mg]山东卫视$LR•IPV4•35『线路32』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•35『线路32』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•35『线路33』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225771/index.m3u8$LR•IPV4•35『线路33』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225771/index.m3u8$LR•IPV4•35『线路34』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227312/index.m3u8$LR•IPV4•35『线路34』 #EXTINF:-1 tvg-name="山东卫视" group-title="卫视",山东卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227312/index.m3u8$LR•IPV4•35『线路35』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•35『线路35』 #EXTINF:-1 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•34『线路1』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://222.90.21.30:9901/hls/43/index.m3u8$LR•IPV4•34『线路2』 +http://123.129.70.178:9901/tsfile/live/0135_1.m3u8$LR•IPV4•34『线路2』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://198.204.228.26/live/tjwshd.m3u8$LR•IPV4•34『线路3』 +http://222.90.21.30:9901/hls/43/index.m3u8$LR•IPV4•34『线路3』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•34『线路4』 +http://198.204.228.26/live/tjwshd.m3u8$LR•IPV4•34『线路4』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•34『线路5』 +http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•34『线路5』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•34『线路6』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•34『线路6』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路7』 +http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•34『线路7』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•34『线路8』 +http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路8』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•34『线路9』 +http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•34『线路9』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•34『线路10』 +http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•34『线路10』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•34『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•34『线路11』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•34『线路12』 +http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•34『线路12』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•34『线路13』 +https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•34『线路13』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•34『线路14』 +https://httop.top/ysp-天津卫视$LR•IPV4•34『线路14』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路15』 +http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•34『线路15』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路16』 +http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•34『线路16』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路17』 +http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•34『线路17』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路18』 +http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•34『线路18』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路19』 +http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•34『线路19』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路20』 +http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•34『线路20』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•34『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路21』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•34『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路22』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•34『线路23』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路23』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•34『线路24』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路24』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•34『线路25』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路25』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•34『线路26』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路26』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•34『线路27』 +http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•34『线路27』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -https://httop.top/ysp-天津卫视$LR•IPV4•34『线路28』 +http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•34『线路28』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•34『线路29』 +http://m.061899.xyz/mg/tjws$LR•IPV4•34『线路29』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://m.061899.xyz/mg/tjws$LR•IPV4•34『线路30』 +http://111.43.126.240:9003/hls/31/index.m3u8$LR•IPV4•34『线路30』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://111.43.126.240:9003/hls/31/index.m3u8$LR•IPV4•34『线路31』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226204/index.m3u8$LR•IPV4•34『线路31』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226204/index.m3u8$LR•IPV4•34『线路32』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225765/index.m3u8$LR•IPV4•34『线路32』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225765/index.m3u8$LR•IPV4•34『线路33』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227306/index.m3u8$LR•IPV4•34『线路33』 #EXTINF:-1 tvg-name="天津卫视" group-title="卫视",天津卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227306/index.m3u8$LR•IPV4•34『线路34』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•34『线路34』 #EXTINF:-1 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•35『线路1』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 @@ -4424,171 +4426,169 @@ http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•35『线路2』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•35『线路3』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•35『线路4』 +http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•35『线路4』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://nn.7x9d.cn/地方台8563/海南.php?id=hnws$LR•IPV4•35『线路5』 +http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•35『线路5』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://207.56.13.146:81/cdnlive/lyws.m3u8$LR•IPV4•35『线路6』 +https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•35『线路6』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://204.12.221.218:8181/3m1080p/lyws.m3u8$LR•IPV4•35『线路7』 +https://httop.top/ysp-海南卫视$LR•IPV4•35『线路7』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://101.6.130.52:1234/947472502$LR•IPV4•35『线路8』 +http://nn.7x9d.cn/地方台8563/海南.php?id=hnws$LR•IPV4•35『线路8』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006211&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路9』 +http://207.56.13.146:81/cdnlive/lyws.m3u8$LR•IPV4•35『线路9』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7899627377857656087&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路10』 +http://204.12.221.218:8181/3m1080p/lyws.m3u8$LR•IPV4•35『线路10』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://111.29.9.33:6610/000000001000/5000000004000006211/index.m3u8?channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=3$LR•IPV4•35『线路11』 +http://101.6.130.52:1234/947472502$LR•IPV4•35『线路11』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•35『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006211&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路12』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•35『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7899627377857656087&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路13』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•35『线路14』 +http://111.29.9.33:6610/000000001000/5000000004000006211/index.m3u8?channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=3$LR•IPV4•35『线路14』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -https://httop.top/ysp-海南卫视$LR•IPV4•35『线路15』 +https://live.chinacert.cftest5.cn/cnmg/live/947472502$LR•IPV4•35『线路15』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -https://live.chinacert.cftest5.cn/cnmg/live/947472502$LR•IPV4•35『线路16』 +http://m.061899.xyz/mg/hinws$LR•IPV4•35『线路16』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://m.061899.xyz/mg/hinws$LR•IPV4•35『线路17』 +http://fn.gcl.de5.net:5908/gsh950428/947472502$LR•IPV4•35『线路17』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://fn.gcl.de5.net:5908/gsh950428/947472502$LR•IPV4•35『线路18』 +http://wfenf.x3322.net:7788/947472502$LR•IPV4•35『线路18』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://wfenf.x3322.net:7788/947472502$LR•IPV4•35『线路19』 +http://106.5.175.159:1234/947472502$LR•IPV4•35『线路19』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://106.5.175.159:1234/947472502$LR•IPV4•35『线路20』 +http://36.104.221.222:7788/947472502$LR•IPV4•35『线路20』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://36.104.221.222:7788/947472502$LR•IPV4•35『线路21』 +http://115.58.151.196:1234/947472502$LR•IPV4•35『线路21』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://115.58.151.196:1234/947472502$LR•IPV4•35『线路22』 +http://182.61.15.163:80/947472502$LR•IPV4•35『线路22』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://182.61.15.163:80/947472502$LR•IPV4•35『线路23』 +http://121.23.132.14:7788/947472502$LR•IPV4•35『线路23』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://121.23.132.14:7788/947472502$LR•IPV4•35『线路24』 +http://120.4.126.153:1234/947472502$LR•IPV4•35『线路24』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://120.4.126.153:1234/947472502$LR•IPV4•35『线路25』 +http://111.43.126.240:9003/hls/37/index.m3u8$LR•IPV4•35『线路25』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://111.43.126.240:9003/hls/37/index.m3u8$LR•IPV4•35『线路26』 +http://47.119.24.76:59093/947472502$LR•IPV4•35『线路26』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://47.119.24.76:59093/947472502$LR•IPV4•35『线路27』 +http://222.134.19.49:8090/947472502$LR•IPV4•35『线路27』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://222.134.19.49:8090/947472502$LR•IPV4•35『线路28』 +http://rihou.cc:555/tv/[mg]海南卫视$LR•IPV4•35『线路28』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://rihou.cc:555/tv/[mg]海南卫视$LR•IPV4•35『线路29』 +http://139.155.89.87:1000/947472502$LR•IPV4•35『线路29』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://139.155.89.87:1000/947472502$LR•IPV4•35『线路30』 +http://101.34.236.223:1112/947472502$LR•IPV4•35『线路30』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://101.34.236.223:1112/947472502$LR•IPV4•35『线路31』 +http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225769/index.m3u8?$LR•IPV4•35『线路31』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225769/index.m3u8?$LR•IPV4•35『线路32』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227201/index.m3u8$LR•IPV4•35『线路32』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227201/index.m3u8$LR•IPV4•35『线路33』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225769/index.m3u8$LR•IPV4•35『线路33』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225769/index.m3u8$LR•IPV4•35『线路34』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226801/index.m3u8$LR•IPV4•35『线路34』 #EXTINF:-1 tvg-name="海南卫视" group-title="卫视",海南卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226801/index.m3u8$LR•IPV4•35『线路35』 +http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•35『线路35』 #EXTINF:-1 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•28『线路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•27『线路1』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://107.150.60.122/live/xjws.m3u8$LR•IPV4•28『线路2』 +http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://198.204.228.26/live/xjws.m3u8$LR•IPV4•28『线路3』 +http://107.150.60.122/live/xjws.m3u8$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://207.56.13.146:81/cdnlive/xjws.m3u8$LR•IPV4•28『线路4』 +http://198.204.228.26/live/xjws.m3u8$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路5』 +http://207.56.13.146:81/cdnlive/xjws.m3u8$LR•IPV4•27『线路5』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•28『线路6』 +http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路6』 #EXTINF:-1 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•28『线路7』 +http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•27『线路7』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.11.239.36:808/hls/65/index.m3u8$LR•IPV4•28『线路8』 +https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•28『线路9』 +https://httop.top/ysp-新疆卫视$LR•IPV4•27『线路9』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•28『线路10』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.220:5140$LR•IPV4•27『线路10』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•28『线路11』 +http://192.151.150.154/live/xjws.m3u8$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•28『线路12』 +http://204.12.221.218:8181/3m1080p/xjws.m3u8$LR•IPV4•27『线路12』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•28『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040018&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路13』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•28『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000029441&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路14』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.220:5140$LR•IPV4•28『线路15』 +http://111.29.9.33:6610/000000001000/1000000002000029441/index.m3u8?channel-id=bestzb&Contentid=1000000002000029441&livemode=1&stbId=3$LR•IPV4•27『线路15』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://192.151.150.154/live/xjws.m3u8$LR•IPV4•28『线路16』 +http://120.76.248.139/live/bfgd/4200000150.m3u8$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://204.12.221.218:8181/3m1080p/xjws.m3u8$LR•IPV4•28『线路17』 +http://m.061899.xyz/mg/xjws$LR•IPV4•27『线路17』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040018&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路18』 +http://111.43.126.240:9003/hls/48/index.m3u8$LR•IPV4•27『线路18』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000029441&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路19』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227136/index.m3u8$LR•IPV4•27『线路19』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://111.29.9.33:6610/000000001000/1000000002000029441/index.m3u8?channel-id=bestzb&Contentid=1000000002000029441&livemode=1&stbId=3$LR•IPV4•28『线路20』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225747/index.m3u8$LR•IPV4•27『线路20』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•28『线路21』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226893/index.m3u8$LR•IPV4•27『线路21』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -https://httop.top/ysp-新疆卫视$LR•IPV4•28『线路22』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•27『线路22』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://120.76.248.139/live/bfgd/4200000150.m3u8$LR•IPV4•28『线路23』 +http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•27『线路23』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://m.061899.xyz/mg/xjws$LR•IPV4•28『线路24』 +http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://111.43.126.240:9003/hls/48/index.m3u8$LR•IPV4•28『线路25』 +http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227136/index.m3u8$LR•IPV4•28『线路26』 +http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•27『线路26』 #EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225747/index.m3u8$LR•IPV4•28『线路27』 -#EXTINF:-1 tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226893/index.m3u8$LR•IPV4•28『线路28』 +http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•27『线路27』 #EXTINF:-1 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•28『线路1』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://207.56.13.146:81/cdnlive/ynws.m3u8$LR•IPV4•28『线路2』 +http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•28『线路2』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://198.204.228.26/live/ynwshd.m3u8$LR•IPV4•28『线路3』 +http://207.56.13.146:81/cdnlive/ynws.m3u8$LR•IPV4•28『线路3』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://107.150.60.122/live/ynwshd.m3u8$LR•IPV4•28『线路4』 +http://198.204.228.26/live/ynwshd.m3u8$LR•IPV4•28『线路4』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://192.151.150.154/live/ynwshd.m3u8$LR•IPV4•28『线路5』 +http://107.150.60.122/live/ynwshd.m3u8$LR•IPV4•28『线路5』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路6』 +http://192.151.150.154/live/ynwshd.m3u8$LR•IPV4•28『线路6』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://120.211.62.180:8000/hls/39/index.m3u8$LR•IPV4•28『线路7』 +http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路7』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路8』 +http://120.211.62.180:8000/hls/39/index.m3u8$LR•IPV4•28『线路8』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•28『线路9』 +http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路9』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 http://p2.ioioz.com/xgplayer.php?id=https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•28『线路10』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•28『线路11』 +http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•28『线路11』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://60.10.139.113:8801/hls/51/index.m3u8$LR•IPV4•28『线路12』 +http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•28『线路12』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•28『线路13』 +https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•28『线路13』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031120&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路14』 +https://httop.top/ysp-云南卫视$LR•IPV4•28『线路14』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040019&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路15』 +https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•28『线路15』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000024694&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路16』 +http://60.10.139.113:8801/hls/51/index.m3u8$LR•IPV4•28『线路16』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://111.29.9.37:6610/000000001000/1000000002000024694/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•28『线路17』 +http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•28『线路17』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://111.43.126.240:9003/hls/60/index.m3u8$LR•IPV4•28『线路18』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031120&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路18』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://111.29.9.33:6610/000000001000/1000000002000024694/index.m3u8?channel-id=bestzb&Contentid=1000000002000024694&livemode=1&stbId=3$LR•IPV4•28『线路19』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040019&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路19』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•28『线路20』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000024694&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路20』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•28『线路21』 +http://111.29.9.37:6610/000000001000/1000000002000024694/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•28『线路21』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•28『线路22』 +http://111.43.126.240:9003/hls/60/index.m3u8$LR•IPV4•28『线路22』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 -https://httop.top/ysp-云南卫视$LR•IPV4•28『线路23』 +http://111.29.9.33:6610/000000001000/1000000002000024694/index.m3u8?channel-id=bestzb&Contentid=1000000002000024694&livemode=1&stbId=3$LR•IPV4•28『线路23』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 http://120.76.248.139/live/bfgd/4200000482.m3u8$LR•IPV4•28『线路24』 #EXTINF:-1 tvg-name="云南卫视" group-title="卫视",云南卫视 @@ -4602,59 +4602,59 @@ http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226816/index.m3u8$LR•IPV4 #EXTINF:-1 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•22『线路1』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://107.150.60.122/live/xzws.m3u8$LR•IPV4•22『线路2』 +http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•22『线路2』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://222.90.21.30:9901/hls/90/index.m3u8$LR•IPV4•22『线路3』 +http://107.150.60.122/live/xzws.m3u8$LR•IPV4•22『线路3』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://183.11.239.36:808/hls/64/index.m3u8$LR•IPV4•22『线路4』 +http://222.90.21.30:9901/hls/90/index.m3u8$LR•IPV4•22『线路4』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•22『线路5』 +https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•22『线路5』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•22『线路6』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.222:5140$LR•IPV4•22『线路6』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•22『线路7』 +http://207.56.13.146:81/cdnlive/xzws.m3u8$LR•IPV4•22『线路7』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.222:5140$LR•IPV4•22『线路8』 +http://204.12.221.218:8181/3m1080p/xzws.m3u8$LR•IPV4•22『线路8』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://207.56.13.146:81/cdnlive/xzws.m3u8$LR•IPV4•22『线路9』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5381760837640571168&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路9』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://204.12.221.218:8181/3m1080p/xzws.m3u8$LR•IPV4•22『线路10』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6603041244077933770&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路10』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5381760837640571168&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路11』 +http://120.76.248.139/live/bfgd/4200000489.m3u8$LR•IPV4•22『线路11』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6603041244077933770&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路12』 +http://120.76.248.139/live/bfgd/4200000121.m3u8$LR•IPV4•22『线路12』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•22『线路13』 +http://m.061899.xyz/mg/xzws$LR•IPV4•22『线路13』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://120.76.248.139/live/bfgd/4200000489.m3u8$LR•IPV4•22『线路14』 +http://111.43.126.240:9003/hls/42/index.m3u8$LR•IPV4•22『线路14』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://120.76.248.139/live/bfgd/4200000121.m3u8$LR•IPV4•22『线路15』 +http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226212/index.m3u8$LR•IPV4•22『线路15』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://m.061899.xyz/mg/xzws$LR•IPV4•22『线路16』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227147/index.m3u8$LR•IPV4•22『线路16』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://111.43.126.240:9003/hls/42/index.m3u8$LR•IPV4•22『线路17』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226212/index.m3u8$LR•IPV4•22『线路17』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226212/index.m3u8$LR•IPV4•22『线路18』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226896/index.m3u8$LR•IPV4•22『线路18』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227147/index.m3u8$LR•IPV4•22『线路19』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227157/index.m3u8$LR•IPV4•22『线路19』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226212/index.m3u8$LR•IPV4•22『线路20』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•22『线路20』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226896/index.m3u8$LR•IPV4•22『线路21』 +http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•22『线路21』 #EXTINF:-1 tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227157/index.m3u8$LR•IPV4•22『线路22』 +http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•22『线路22』 #EXTINF:-1 tvg-name="海峡卫视" group-title="卫视",海峡卫视 -http://38.64.72.148:80/hls/modn/list/4009/chunklist0.m3u8$LR•IPV4•19『线路1』 +http://38.64.72.148:80/hls/modn/list/4009/playlist.m3u8$LR•IPV4•19『线路1』 #EXTINF:-1 tvg-name="海峡卫视" group-title="卫视",海峡卫视 -http://101.6.130.52:1234/849119120$LR•IPV4•19『线路2』 +http://43.251.226.89:8080/play/51.m3u8$LR•IPV4•19『线路2』 #EXTINF:-1 tvg-name="海峡卫视" group-title="卫视",海峡卫视 -http://8.138.7.223/tv/hxws.m3u8$LR•IPV4•19『线路3』 +p3p://167.114.175.6:55331/63ec47390001586de42ffc1a7e1856a6$LR•IPV4•19『线路3』 #EXTINF:-1 tvg-name="海峡卫视" group-title="卫视",海峡卫视 -http://hlsbkmgsplive.miguvideo.com/migu/kailu/haixiaws/57/20230724/01.m3u8?msisdn=&Channel_ID=&ContentId=&HlsSubType=&HlsProfileId=&encrypt=$LR•IPV4•19『线路4』 +http://101.6.130.52:1234/849119120$LR•IPV4•19『线路4』 #EXTINF:-1 tvg-name="海峡卫视" group-title="卫视",海峡卫视 -http://43.251.226.89:8080/play/51.m3u8$LR•IPV4•19『线路5』 +http://8.138.7.223/tv/hxws.m3u8$LR•IPV4•19『线路5』 #EXTINF:-1 tvg-name="海峡卫视" group-title="卫视",海峡卫视 -p3p://167.114.175.6:55331/63ec47390001586de42ffc1a7e1856a6$LR•IPV4•19『线路6』 +http://hlsbkmgsplive.miguvideo.com/migu/kailu/haixiaws/57/20230724/01.m3u8?msisdn=&Channel_ID=&ContentId=&HlsSubType=&HlsProfileId=&encrypt=$LR•IPV4•19『线路6』 #EXTINF:-1 tvg-name="海峡卫视" group-title="卫视",海峡卫视 https://live.chinacert.cftest5.cn/cnmg/live/849119120$LR•IPV4•19『线路7』 #EXTINF:-1 tvg-name="海峡卫视" group-title="卫视",海峡卫视 @@ -4682,75 +4682,75 @@ http://139.155.89.87:1000/849119120$LR•IPV4•19『线路18』 #EXTINF:-1 tvg-name="海峡卫视" group-title="卫视",海峡卫视 http://101.34.236.223:1112/849119120$LR•IPV4•19『线路19』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://111.8.224.6:9999/tsfile/live/1020_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路1』 +http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•35『线路1』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://222.90.21.30:9901/hls/65/index.m3u8$LR•IPV4•35『线路2』 +http://111.8.224.6:9999/tsfile/live/1020_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路2』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://38.75.136.137:98/gslb/dsdqpub/btws.m3u8?auth=testpub$LR•IPV4•35『线路3』 +http://222.90.21.30:9901/hls/65/index.m3u8$LR•IPV4•35『线路3』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://198.204.228.26/live/btws.m3u8$LR•IPV4•35『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/btws.m3u8?auth=testpub$LR•IPV4•35『线路4』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•35『线路5』 +http://198.204.228.26/live/btws.m3u8$LR•IPV4•35『线路5』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•35『线路6』 +http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•35『线路6』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.221:5140$LR•IPV4•35『线路7』 +https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•35『线路7』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://192.151.150.154/live/btws.m3u8$LR•IPV4•35『线路8』 +https://httop.top/ysp-兵团卫视$LR•IPV4•35『线路8』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://204.12.221.218:8181/3m1080p/btws.m3u8$LR•IPV4•35『线路9』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.221:5140$LR•IPV4•35『线路9』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://101.6.130.52:1234/956923145$LR•IPV4•35『线路10』 +http://192.151.150.154/live/btws.m3u8$LR•IPV4•35『线路10』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266005&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路11』 +http://204.12.221.218:8181/3m1080p/btws.m3u8$LR•IPV4•35『线路11』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040020&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路12』 +http://101.6.130.52:1234/956923145$LR•IPV4•35『线路12』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•35『线路13』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266005&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路13』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•35『线路14』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040020&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路14』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -https://httop.top/ysp-兵团卫视$LR•IPV4•35『线路15』 +https://live.chinacert.cftest5.cn/cnmg/live/956923145$LR•IPV4•35『线路15』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -https://live.chinacert.cftest5.cn/cnmg/live/956923145$LR•IPV4•35『线路16』 +http://m.061899.xyz/mg/btws$LR•IPV4•35『线路16』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://m.061899.xyz/mg/btws$LR•IPV4•35『线路17』 +http://fn.gcl.de5.net:5908/gsh950428/956923145$LR•IPV4•35『线路17』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://fn.gcl.de5.net:5908/gsh950428/956923145$LR•IPV4•35『线路18』 +http://wfenf.x3322.net:7788/956923145$LR•IPV4•35『线路18』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://wfenf.x3322.net:7788/956923145$LR•IPV4•35『线路19』 +http://106.5.175.159:1234/956923145$LR•IPV4•35『线路19』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://106.5.175.159:1234/956923145$LR•IPV4•35『线路20』 +http://36.104.221.222:7788/956923145$LR•IPV4•35『线路20』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://36.104.221.222:7788/956923145$LR•IPV4•35『线路21』 +http://115.58.151.196:1234/956923145$LR•IPV4•35『线路21』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://115.58.151.196:1234/956923145$LR•IPV4•35『线路22』 +http://182.61.15.163:80/956923145$LR•IPV4•35『线路22』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://182.61.15.163:80/956923145$LR•IPV4•35『线路23』 +http://121.23.132.14:7788/956923145$LR•IPV4•35『线路23』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://121.23.132.14:7788/956923145$LR•IPV4•35『线路24』 +http://120.4.126.153:1234/956923145$LR•IPV4•35『线路24』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://120.4.126.153:1234/956923145$LR•IPV4•35『线路25』 +http://111.43.126.240:9003/hls/50/index.m3u8$LR•IPV4•35『线路25』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://111.43.126.240:9003/hls/50/index.m3u8$LR•IPV4•35『线路26』 +http://47.119.24.76:59093/956923145$LR•IPV4•35『线路26』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://47.119.24.76:59093/956923145$LR•IPV4•35『线路27』 +http://222.134.19.49:8090/956923145$LR•IPV4•35『线路27』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://222.134.19.49:8090/956923145$LR•IPV4•35『线路28』 +http://rihou.cc:555/tv/[mg]兵团卫视$LR•IPV4•35『线路28』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://rihou.cc:555/tv/[mg]兵团卫视$LR•IPV4•35『线路29』 +http://139.155.89.87:1000/956923145$LR•IPV4•35『线路29』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://139.155.89.87:1000/956923145$LR•IPV4•35『线路30』 +http://101.34.236.223:1112/956923145$LR•IPV4•35『线路30』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://101.34.236.223:1112/956923145$LR•IPV4•35『线路31』 +http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226214/index.m3u8$LR•IPV4•35『线路31』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226214/index.m3u8$LR•IPV4•35『线路32』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227155/index.m3u8$LR•IPV4•35『线路32』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227155/index.m3u8$LR•IPV4•35『线路33』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226214/index.m3u8$LR•IPV4•35『线路33』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226214/index.m3u8$LR•IPV4•35『线路34』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226859/index.m3u8$LR•IPV4•35『线路34』 #EXTINF:-1 tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226859/index.m3u8$LR•IPV4•35『线路35』 +http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•35『线路35』 #EXTINF:-1 tvg-name="安多卫视" group-title="卫视",安多卫视 https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="安多卫视" group-title="卫视",安多卫视 @@ -4762,23 +4762,23 @@ http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227160/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="康巴卫视" group-title="卫视",康巴卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227027/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkHMvBpWz4rccMxNvSRekpQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•5『线路1』 #EXTINF:-1 tvg-name="康巴卫视" group-title="卫视",康巴卫视 -http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•5『线路2』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266002&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-name="康巴卫视" group-title="卫视",康巴卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266002&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路3』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226234/index.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-name="康巴卫视" group-title="卫视",康巴卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226234/index.m3u8$LR•IPV4•5『线路4』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227111/index.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-name="康巴卫视" group-title="卫视",康巴卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227111/index.m3u8$LR•IPV4•5『线路5』 +http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-name="农林卫视" group-title="卫视",农林卫视 http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•22『线路1』 #EXTINF:-1 tvg-name="农林卫视" group-title="卫视",农林卫视 -http://204.12.221.218:8181/3m1080p/snnl.m3u8$LR•IPV4•22『线路2』 +http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•22『线路2』 #EXTINF:-1 tvg-name="农林卫视" group-title="卫视",农林卫视 -http://101.6.130.52:1234/956904896$LR•IPV4•22『线路3』 +http://204.12.221.218:8181/3m1080p/snnl.m3u8$LR•IPV4•22『线路3』 #EXTINF:-1 tvg-name="农林卫视" group-title="卫视",农林卫视 -http://8.138.7.223/%E3%80%90%E5%85%AC%E4%BC%97%E5%8F%B7%EF%BC%9A%E6%A6%B4%E8%8A%92%E7%94%B5%E8%A7%86%E3%80%91/%E5%86%9C%E6%9E%97%E5%8D%AB%E8%A7%86.m3u8$LR•IPV4•22『线路4』 +http://101.6.130.52:1234/956904896$LR•IPV4•22『线路4』 #EXTINF:-1 tvg-name="农林卫视" group-title="卫视",农林卫视 -http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•22『线路5』 +http://8.138.7.223/%E3%80%90%E5%85%AC%E4%BC%97%E5%8F%B7%EF%BC%9A%E6%A6%B4%E8%8A%92%E7%94%B5%E8%A7%86%E3%80%91/%E5%86%9C%E6%9E%97%E5%8D%AB%E8%A7%86.m3u8$LR•IPV4•22『线路5』 #EXTINF:-1 tvg-name="农林卫视" group-title="卫视",农林卫视 https://live.chinacert.cftest5.cn/cnmg/live/956904896$LR•IPV4•22『线路6』 #EXTINF:-1 tvg-name="农林卫视" group-title="卫视",农林卫视 @@ -4816,23 +4816,23 @@ http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227108/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•24『线路1』 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 -https://srs.ssws.tv/video/sstv-10/index.m3u8#http://nn.7x9d.cn/地方台8563/海南.php?id=ssws$LR•IPV4•24『线路2』 +http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•24『线路2』 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://192.151.150.154/live/ssws.m3u8$LR•IPV4•24『线路3』 +https://iptv.catvod.com/catvod.php?id=ssws$LR•IPV4•24『线路3』 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://204.12.221.218:8181/3m1080p/ssws.m3u8$LR•IPV4•24『线路4』 +https://srs.ssws.tv/video/sstv-10/index.m3u8#http://nn.7x9d.cn/地方台8563/海南.php?id=ssws$LR•IPV4•24『线路4』 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://101.6.130.52:1234/961023778$LR•IPV4•24『线路5』 +http://192.151.150.154/live/ssws.m3u8$LR•IPV4•24『线路5』 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288016&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路6』 +http://204.12.221.218:8181/3m1080p/ssws.m3u8$LR•IPV4•24『线路6』 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://nn.7x9d.cn/地方台8563/海南.php?id=ssws$LR•IPV4•24『线路7』 +http://101.6.130.52:1234/961023778$LR•IPV4•24『线路7』 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://btjg.net:809/hls/142/index.m3u8$LR•IPV4•24『线路8』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288016&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路8』 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•24『线路9』 +http://nn.7x9d.cn/地方台8563/海南.php?id=ssws$LR•IPV4•24『线路9』 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 -https://iptv.catvod.com/catvod.php?id=ssws$LR•IPV4•24『线路10』 +http://btjg.net:809/hls/142/index.m3u8$LR•IPV4•24『线路10』 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 https://live.chinacert.cftest5.cn/cnmg/live/961023778$LR•IPV4•24『线路11』 #EXTINF:-1 tvg-name="三沙卫视" group-title="卫视",三沙卫视 @@ -4864,11 +4864,11 @@ http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227055/index.m3u8$LR•IP #EXTINF:-1 tvg-name="延边卫视" group-title="卫视",延边卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227045/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eq0D3NdTUN7FuRzr8eJsbQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•10『线路1』 #EXTINF:-1 tvg-name="延边卫视" group-title="卫视",延边卫视 -https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•10『线路2』 +http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-name="延边卫视" group-title="卫视",延边卫视 -https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•10『线路3』 +https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-name="延边卫视" group-title="卫视",延边卫视 -http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•10『线路4』 +https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-name="延边卫视" group-title="卫视",延边卫视 http://204.12.221.218:8181/3m1080p/ybws.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-name="延边卫视" group-title="卫视",延边卫视 @@ -4888,25 +4888,25 @@ http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226226/index.m3u8$LR•IP #EXTINF:-1 tvg-name="上海卫视" group-title="卫视",上海卫视 http://112.27.235.94:8000/hls/28/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="北京纪实" group-title="卫视",北京纪实 -http://111.29.9.33:6610/000000001000/1000000001000028380/index.m3u8?channel-id=bestzb&Contentid=1000000001000028380&livemode=1&stbId=3$LR•IPV4•4『线路1』 +https://gdcucc.v1.mk/gdcucc/brtv8k.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="北京纪实" group-title="卫视",北京纪实 -https://gdcucc.v1.mk/gdcucc/brtv8k.m3u8$LR•IPV4•4『线路2』 +http://111.29.9.33:6610/000000001000/1000000001000028380/index.m3u8?channel-id=bestzb&Contentid=1000000001000028380&livemode=1&stbId=3$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="北京纪实" group-title="卫视",北京纪实 http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227294/index.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="北京纪实" group-title="卫视",北京纪实 http://123.121.5.183:4000/rtp/239.3.1.115:8000$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="家庭理财" group-title="卫视",家庭理财 -http://223.110.245.139/PLTV/4/224/3221227011/index.m3u8$LR•IPV4•3『线路1』 +http://gslbserv.itv.cmvideo.cn:80/5000000011000265001/1.m3u8?channel-id=bestzb&Contentid=5000000011000031210&livemode=1&stbId=toShengfen&mode=1&$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="家庭理财" group-title="卫视",家庭理财 -http://gslbserv.itv.cmvideo.cn:80/5000000011000265001/1.m3u8?channel-id=bestzb&Contentid=5000000011000031210&livemode=1&stbId=toShengfen&mode=1&$LR•IPV4•3『线路2』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226754/index.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="家庭理财" group-title="卫视",家庭理财 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226754/index.m3u8$LR•IPV4•3『线路3』 +http://223.110.245.139/PLTV/4/224/3221227011/index.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="梨园" group-title="卫视",梨园 -http://60.10.139.113:8801/hls/86/index.m3u8$LR•IPV4•15『线路1』 +https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-name="梨园" group-title="卫视",梨园 http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•15『线路2』 #EXTINF:-1 tvg-name="梨园" group-title="卫视",梨园 -https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•15『线路3』 +http://60.10.139.113:8801/hls/86/index.m3u8$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-name="梨园" group-title="卫视",梨园 https://live.chinacert.cftest5.cn/cnmg/live/961930369$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-name="梨园" group-title="卫视",梨园 @@ -4972,145 +4972,145 @@ http://106.53.99.30/tv/api.php?id=hebtv4k$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227016/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ESb5Qr3NTpE2ZugIroKoyTw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•27『线路1』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://119.39.9.8:9901/tsfile/live/0118_1.m3u8$LR•IPV4•27『线路2』 +http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://198.204.228.26/live/sxwshd.m3u8$LR•IPV4•27『线路3』 +http://119.39.9.8:9901/tsfile/live/0118_1.m3u8$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://36.40.237.49:9999/tsfile/live/0118_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•27『线路4』 +http://198.204.228.26/live/sxwshd.m3u8$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://112.123.243.37:50085/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•27『线路5』 +http://36.40.237.49:9999/tsfile/live/0118_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•27『线路5』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://113.25.252.226:9901/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路6』 +http://112.123.243.37:50085/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•27『线路6』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://59.39.89.130:60901/tsfile/live/0125_20.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 +http://113.25.252.226:9901/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://120.198.95.220:9901/tsfile/live/1057_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路8』 +http://59.39.89.130:60901/tsfile/live/0125_20.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://36.136.38.87:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路9』 +http://120.198.95.220:9901/tsfile/live/1057_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路9』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://222.90.21.30:9901/hls/32/index.m3u8$LR•IPV4•27『线路10』 +http://36.136.38.87:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路10』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://207.56.13.146:81/cdnlive/sxws.m3u8$LR•IPV4•27『线路11』 +http://222.90.21.30:9901/hls/32/index.m3u8$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•27『线路12』 +http://207.56.13.146:81/cdnlive/sxws.m3u8$LR•IPV4•27『线路12』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•27『线路13』 +http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•27『线路13』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://60.10.139.113:8801/hls/54/index.m3u8$LR•IPV4•27『线路14』 +https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•27『线路14』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.211:5140$LR•IPV4•27『线路15』 +https://httop.top/ysp-山西卫视$LR•IPV4•27『线路15』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://192.151.150.154/live/sxwshd.m3u8$LR•IPV4•27『线路16』 +http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•27『线路17』 +http://60.10.139.113:8801/hls/54/index.m3u8$LR•IPV4•27『线路17』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040023&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路18』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.211:5140$LR•IPV4•27『线路18』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000021220&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路19』 +http://192.151.150.154/live/sxwshd.m3u8$LR•IPV4•27『线路19』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•27『线路20』 +http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•27『线路20』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•27『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040023&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -https://httop.top/ysp-山西卫视$LR•IPV4•27『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000021220&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路23』 +http://111.43.126.240:9003/hls/45/index.m3u8$LR•IPV4•27『线路23』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://111.43.126.240:9003/hls/45/index.m3u8$LR•IPV4•27『线路24』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227187/index.m3u8$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227187/index.m3u8$LR•IPV4•27『线路25』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225763/index.m3u8$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225763/index.m3u8$LR•IPV4•27『线路26』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226778/index.m3u8$LR•IPV4•27『线路26』 #EXTINF:-1 tvg-name="山西卫视" group-title="卫视",山西卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226778/index.m3u8$LR•IPV4•27『线路27』 +http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•27『线路27』 #EXTINF:-1 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•44『线路1』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•44『线路2』 +http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•44『线路2』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://198.204.228.26/live/snwshd.m3u8$LR•IPV4•44『线路3』 +http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•44『线路3』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://107.150.60.122/live/snwshd.m3u8$LR•IPV4•44『线路4』 +http://198.204.228.26/live/snwshd.m3u8$LR•IPV4•44『线路4』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://36.40.237.49:9999/tsfile/live/0136_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•44『线路5』 +http://107.150.60.122/live/snwshd.m3u8$LR•IPV4•44『线路5』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://120.198.95.220:9901/tsfile/live/1068_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•44『线路6』 +http://36.40.237.49:9999/tsfile/live/0136_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•44『线路6』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路7』 +http://120.198.95.220:9901/tsfile/live/1068_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•44『线路7』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•44『线路8』 +http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路8』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 http://stream.snrtv.com/sxbc-nl-itHLO2.m3u8$LR•IPV4•44『线路9』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•44『线路10』 +http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•44『线路10』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•44『线路11』 +http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•44『线路11』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•44『线路12』 +http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•44『线路12』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://60.10.139.113:8801/hls/53/index.m3u8$LR•IPV4•44『线路13』 +https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•44『线路13』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://jasonzhangnas.f3322.net:7088/udp/233.18.204.223:5140$LR•IPV4•44『线路14』 +https://httop.top/ysp-陕西卫视$LR•IPV4•44『线路14』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://207.56.13.146:81/cdnlive/snws.m3u8$LR•IPV4•44『线路15』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•44『线路15』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://204.12.221.218:8181/3m1080p/snws.m3u8$LR•IPV4•44『线路16』 +http://60.10.139.113:8801/hls/53/index.m3u8$LR•IPV4•44『线路16』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://101.6.130.52:1234/738910838$LR•IPV4•44『线路17』 +http://jasonzhangnas.f3322.net:7088/udp/233.18.204.223:5140$LR•IPV4•44『线路17』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000007495&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路18』 +http://207.56.13.146:81/cdnlive/snws.m3u8$LR•IPV4•44『线路18』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040017&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路19』 +http://204.12.221.218:8181/3m1080p/snws.m3u8$LR•IPV4•44『线路19』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•44『线路20』 +http://101.6.130.52:1234/738910838$LR•IPV4•44『线路20』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•44『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000007495&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路21』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•44『线路22』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040017&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路22』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•44『线路23』 +https://live.chinacert.cftest5.cn/cnmg/live/738910838$LR•IPV4•44『线路23』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -https://httop.top/ysp-陕西卫视$LR•IPV4•44『线路24』 +http://m.061899.xyz/mg/sxws$LR•IPV4•44『线路24』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•44『线路25』 +http://fn.gcl.de5.net:5908/gsh950428/738910838$LR•IPV4•44『线路25』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -https://live.chinacert.cftest5.cn/cnmg/live/738910838$LR•IPV4•44『线路26』 +http://wfenf.x3322.net:7788/738910838$LR•IPV4•44『线路26』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://m.061899.xyz/mg/sxws$LR•IPV4•44『线路27』 +http://106.5.175.159:1234/738910838$LR•IPV4•44『线路27』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://fn.gcl.de5.net:5908/gsh950428/738910838$LR•IPV4•44『线路28』 +http://36.104.221.222:7788/738910838$LR•IPV4•44『线路28』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://wfenf.x3322.net:7788/738910838$LR•IPV4•44『线路29』 +http://115.58.151.196:1234/738910838$LR•IPV4•44『线路29』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://106.5.175.159:1234/738910838$LR•IPV4•44『线路30』 +http://182.61.15.163:80/738910838$LR•IPV4•44『线路30』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://36.104.221.222:7788/738910838$LR•IPV4•44『线路31』 +http://121.23.132.14:7788/738910838$LR•IPV4•44『线路31』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://115.58.151.196:1234/738910838$LR•IPV4•44『线路32』 +http://120.4.126.153:1234/738910838$LR•IPV4•44『线路32』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://182.61.15.163:80/738910838$LR•IPV4•44『线路33』 +http://111.43.126.240:9003/hls/52/index.m3u8$LR•IPV4•44『线路33』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://121.23.132.14:7788/738910838$LR•IPV4•44『线路34』 +http://47.119.24.76:59093/738910838$LR•IPV4•44『线路34』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://120.4.126.153:1234/738910838$LR•IPV4•44『线路35』 +http://222.134.19.49:8090/738910838$LR•IPV4•44『线路35』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://111.43.126.240:9003/hls/52/index.m3u8$LR•IPV4•44『线路36』 +http://rihou.cc:555/tv/[mg]陕西卫视$LR•IPV4•44『线路36』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://47.119.24.76:59093/738910838$LR•IPV4•44『线路37』 +http://139.155.89.87:1000/738910838$LR•IPV4•44『线路37』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://222.134.19.49:8090/738910838$LR•IPV4•44『线路38』 +http://101.34.236.223:1112/738910838$LR•IPV4•44『线路38』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://rihou.cc:555/tv/[mg]陕西卫视$LR•IPV4•44『线路39』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225821/index.m3u8$LR•IPV4•44『线路39』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://139.155.89.87:1000/738910838$LR•IPV4•44『线路40』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227096/index.m3u8$LR•IPV4•44『线路40』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://101.34.236.223:1112/738910838$LR•IPV4•44『线路41』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226892/index.m3u8$LR•IPV4•44『线路41』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225821/index.m3u8$LR•IPV4•44『线路42』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•44『线路42』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227096/index.m3u8$LR•IPV4•44『线路43』 +http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•44『线路43』 #EXTINF:-1 tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226892/index.m3u8$LR•IPV4•44『线路44』 +http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•44『线路44』 #EXTINF:-1 tvg-name="北京卫视4K" group-title="卫视",北京卫视4K http://43.251.226.89:8080/play/918.m3u8$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-name="北京卫视4K" group-title="卫视",北京卫视4K @@ -5134,11 +5134,11 @@ http://101.35.240.114:88/live.php?id=北京卫视$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-name="北京卫视4K" group-title="卫视",北京卫视4K http://106.53.99.30/tv/api.php?id=bjws4k$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-name="CHC影迷电影" group-title="数字",CHC影迷电影 -http://192.151.150.154/live/chchd.m3u8$LR•IPV4•18『线路1』 +p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-name="CHC影迷电影" group-title="数字",CHC影迷电影 -http://38.75.136.137:98/gslb/dsdqpub/chchd.m3u8?auth=testpub$LR•IPV4•18『线路2』 +http://192.151.150.154/live/chchd.m3u8$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-name="CHC影迷电影" group-title="数字",CHC影迷电影 -p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4•18『线路3』 +http://38.75.136.137:98/gslb/dsdqpub/chchd.m3u8?auth=testpub$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-name="CHC影迷电影" group-title="数字",CHC影迷电影 https://live.chinacert.cftest5.cn/cnmg/live/952383261$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-name="CHC影迷电影" group-title="数字",CHC影迷电影 @@ -5648,11 +5648,11 @@ http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=100000 #EXTINF:-1 tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=8103864434730665389&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 -http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•5『线路3』 +http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 -http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•5『线路4』 +http://111.43.126.240:9003/hls/58/index.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 -http://111.43.126.240:9003/hls/58/index.m3u8$LR•IPV4•5『线路5』 +http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-name="NewTV惊悚悬疑" group-title="数字",NewTV惊悚悬疑 http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000024282&livemode=1&stbId=yu&mode=1&$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="NewTV惊悚悬疑" group-title="数字",NewTV惊悚悬疑 @@ -5748,59 +5748,59 @@ http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=532094 #EXTINF:-1 tvg-name="NewTV哒啵赛事" group-title="数字",NewTV哒啵赛事 http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://192.151.150.154/live/btvkk.m3u8$LR•IPV4•7『线路1』 +http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://204.12.221.218:8181/3m1080p/btvkk.m3u8$LR•IPV4•7『线路2』 +http://192.151.150.154/live/btvkk.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7851974109718180595&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路3』 +http://204.12.221.218:8181/3m1080p/btvkk.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7589856436881630561&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路4』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7851974109718180595&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-name="卡酷少儿" group-title="数字",卡酷少儿 -http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4•7『线路5』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7589856436881630561&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-name="卡酷少儿" group-title="数字",卡酷少儿 http://111.43.126.240:9003/hls/54/index.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-name="卡酷少儿" group-title="数字",卡酷少儿 http://123.121.5.183:4000/rtp/239.3.1.189:8000$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•20『线路1』 +http://192.151.150.154/live/ymkt.m3u8$LR•IPV4•20『线路1』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://192.151.150.154/live/ymkt.m3u8$LR•IPV4•20『线路2』 +http://204.12.221.218:8181/3m1080p/ymkt.m3u8$LR•IPV4•20『线路2』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://204.12.221.218:8181/3m1080p/ymkt.m3u8$LR•IPV4•20『线路3』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000010063&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路3』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000010063&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路4』 +https://live.chinacert.cftest5.cn/cnmg/live/626064703$LR•IPV4•20『线路4』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -https://live.chinacert.cftest5.cn/cnmg/live/626064703$LR•IPV4•20『线路5』 +http://fn.gcl.de5.net:5908/gsh950428/626064703$LR•IPV4•20『线路5』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://fn.gcl.de5.net:5908/gsh950428/626064703$LR•IPV4•20『线路6』 +http://wfenf.x3322.net:7788/626064703$LR•IPV4•20『线路6』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://wfenf.x3322.net:7788/626064703$LR•IPV4•20『线路7』 +http://106.5.175.159:1234/626064703$LR•IPV4•20『线路7』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://106.5.175.159:1234/626064703$LR•IPV4•20『线路8』 +http://36.104.221.222:7788/626064703$LR•IPV4•20『线路8』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://36.104.221.222:7788/626064703$LR•IPV4•20『线路9』 +http://115.58.151.196:1234/626064703$LR•IPV4•20『线路9』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://115.58.151.196:1234/626064703$LR•IPV4•20『线路10』 +http://182.61.15.163:80/626064703$LR•IPV4•20『线路10』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://182.61.15.163:80/626064703$LR•IPV4•20『线路11』 +http://121.23.132.14:7788/626064703$LR•IPV4•20『线路11』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://121.23.132.14:7788/626064703$LR•IPV4•20『线路12』 +http://120.4.126.153:1234/626064703$LR•IPV4•20『线路12』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://120.4.126.153:1234/626064703$LR•IPV4•20『线路13』 +http://111.43.126.240:9003/hls/57/index.m3u8$LR•IPV4•20『线路13』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://111.43.126.240:9003/hls/57/index.m3u8$LR•IPV4•20『线路14』 +http://47.119.24.76:59093/626064703$LR•IPV4•20『线路14』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://47.119.24.76:59093/626064703$LR•IPV4•20『线路15』 +http://222.134.19.49:8090/626064703$LR•IPV4•20『线路15』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://222.134.19.49:8090/626064703$LR•IPV4•20『线路16』 +http://139.155.89.87:1000/626064703$LR•IPV4•20『线路16』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://139.155.89.87:1000/626064703$LR•IPV4•20『线路17』 +http://101.34.236.223:1112/626064703$LR•IPV4•20『线路17』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://101.34.236.223:1112/626064703$LR•IPV4•20『线路18』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225795/index.m3u8$LR•IPV4•20『线路18』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225795/index.m3u8$LR•IPV4•20『线路19』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226768/index.m3u8$LR•IPV4•20『线路19』 #EXTINF:-1 tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226768/index.m3u8$LR•IPV4•20『线路20』 +http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•20『线路20』 #EXTINF:-1 tvg-name="哈哈炫动" group-title="数字",哈哈炫动 http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031123&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-name="哈哈炫动" group-title="数字",哈哈炫动 @@ -5808,251 +5808,251 @@ http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=50000000050 #EXTINF:-1 tvg-name="哈哈炫动" group-title="数字",哈哈炫动 http://111.29.9.33:6610/000000001000/5000000011000031123/index.m3u8?channel-id=bestzb&Contentid=5000000011000031123&livemode=1&stbId=3$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-name="哈哈炫动" group-title="数字",哈哈炫动 -http://223.110.245.139/PLTV/4/224/3221226388/index.m3u8$LR•IPV4•5『线路4』 +http://111.43.126.240:9003/hls/55/index.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-name="哈哈炫动" group-title="数字",哈哈炫动 -http://111.43.126.240:9003/hls/55/index.m3u8$LR•IPV4•5『线路5』 +http://223.110.245.139/PLTV/4/224/3221226388/index.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•21『线路1』 +http://192.151.150.154/live/gdjjkt.m3u8$LR•IPV4•21『线路1』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•21『线路2』 +http://204.12.221.218:8181/3m1080p/gdjjkt.m3u8$LR•IPV4•21『线路2』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://192.151.150.154/live/gdjjkt.m3u8$LR•IPV4•21『线路3』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000025964&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路3』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://204.12.221.218:8181/3m1080p/gdjjkt.m3u8$LR•IPV4•21『线路4』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=4739906347743456369&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路4』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000025964&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路5』 +http://111.29.9.33:6610/000000001000/1000000002000025964/index.m3u8?channel-id=bestzb&Contentid=1000000002000025964&livemode=1&stbId=3$LR•IPV4•21『线路5』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=4739906347743456369&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路6』 +https://live.chinacert.cftest5.cn/cnmg/live/614952364$LR•IPV4•21『线路6』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://111.29.9.33:6610/000000001000/1000000002000025964/index.m3u8?channel-id=bestzb&Contentid=1000000002000025964&livemode=1&stbId=3$LR•IPV4•21『线路7』 +http://fn.gcl.de5.net:5908/gsh950428/614952364$LR•IPV4•21『线路7』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -https://live.chinacert.cftest5.cn/cnmg/live/614952364$LR•IPV4•21『线路8』 +http://wfenf.x3322.net:7788/614952364$LR•IPV4•21『线路8』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://fn.gcl.de5.net:5908/gsh950428/614952364$LR•IPV4•21『线路9』 +http://106.5.175.159:1234/614952364$LR•IPV4•21『线路9』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://wfenf.x3322.net:7788/614952364$LR•IPV4•21『线路10』 +http://36.104.221.222:7788/614952364$LR•IPV4•21『线路10』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://106.5.175.159:1234/614952364$LR•IPV4•21『线路11』 +http://115.58.151.196:1234/614952364$LR•IPV4•21『线路11』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://36.104.221.222:7788/614952364$LR•IPV4•21『线路12』 +http://182.61.15.163:80/614952364$LR•IPV4•21『线路12』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://115.58.151.196:1234/614952364$LR•IPV4•21『线路13』 +http://121.23.132.14:7788/614952364$LR•IPV4•21『线路13』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://182.61.15.163:80/614952364$LR•IPV4•21『线路14』 +http://120.4.126.153:1234/614952364$LR•IPV4•21『线路14』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://121.23.132.14:7788/614952364$LR•IPV4•21『线路15』 +http://47.119.24.76:59093/614952364$LR•IPV4•21『线路15』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://120.4.126.153:1234/614952364$LR•IPV4•21『线路16』 +http://222.134.19.49:8090/614952364$LR•IPV4•21『线路16』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://47.119.24.76:59093/614952364$LR•IPV4•21『线路17』 +http://101.34.236.223:1112/614952364$LR•IPV4•21『线路17』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://222.134.19.49:8090/614952364$LR•IPV4•21『线路18』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226227/index.m3u8$LR•IPV4•21『线路18』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://101.34.236.223:1112/614952364$LR•IPV4•21『线路19』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226744/index.m3u8$LR•IPV4•21『线路19』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226227/index.m3u8$LR•IPV4•21『线路20』 +http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•21『线路20』 #EXTINF:-1 tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226744/index.m3u8$LR•IPV4•21『线路21』 +http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•21『线路21』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•14『线路1』 +http://101.66.195.88:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 http://phoneal.qing.mgtv.com/nn_live/nn_x64/dGVybT01Jm5kaT02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJmNkbmV4X2lkPWFsX3Bob25lMyZzPTdiNDZjMTFiMWQwZmEyN2Q0NjUwN2Q4NWJlMGY2NWY0JmFzPTAmX2NhckNvZGU9MCZ1aXA9MTA2LjE0LjM4LjU1Jm1hY2lkPTY4NmU4Y2Y4Yzg4ZTc3ZWM5YTA3OTMyODlmNTM0ODQyYWJlYzRmM2MmcWlkPSZyYXV0aF9lbmFibGU9b2ZmJmNocz0mdXVpZD1jOWIzNTBkOTU1MGUxMzcwYjI4YzZkNTQzOWM1N2VmOS02YTBlMjYzNyZ2PTImbmR2PWlvcy02LjUuMCZ1aWQ9JmRlZj0xJmVzPTE3ODI3MTQ2NTg,/KLCDMPP360.m3u8$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•14『线路3』 +http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路4』 +http://124.228.160.210:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://124.228.160.210:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 +http://204.12.221.218:8181/3m1080p/hnjykt.m3u8$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://204.12.221.218:8181/3m1080p/hnjykt.m3u8$LR•IPV4•14『线路6』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYKTMPP360.m3u8$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYKTMPP360.m3u8$LR•IPV4•14『线路7』 +http://183.237.95.108:9901/tsfile/live/1099_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://183.237.95.108:9901/tsfile/live/1099_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路8』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040024&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040024&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路9』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016601&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016601&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路10』 +http://111.29.9.33:6610/000000001000/5000000006000040024/index.m3u8?channel-id=bestzb&Contentid=5000000006000040024&livemode=1&stbId=3$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://111.29.9.33:6610/000000001000/5000000006000040024/index.m3u8?channel-id=bestzb&Contentid=5000000006000040024&livemode=1&stbId=3$LR•IPV4•14『线路11』 +http://111.43.126.240:9003/hls/56/index.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://111.43.126.240:9003/hls/56/index.m3u8$LR•IPV4•14『线路12』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225744/index.m3u8$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225744/index.m3u8$LR•IPV4•14『线路13』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227300/index.m3u8$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227300/index.m3u8$LR•IPV4•14『线路14』 +http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYJSMPP360.m3u8$LR•IPV4•88『线路1』 +http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•88『线路1』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://111.29.9.33:6610/000000001000/5000000011000031203/index.m3u8?channel-id=bestzb&Contentid=5000000011000031203&livemode=1&stbId=3$LR•IPV4•88『线路2』 +https://stream1.freetv.fun/jin-ying-ji-shi-12.m3u8$LR•IPV4•88『线路2』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•88『线路3』 +https://stream1.freetv.fun/jin-ying-ji-shi-gao-qing-2.m3u8$LR•IPV4•88『线路3』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-12.m3u8$LR•IPV4•88『线路4』 +https://stream1.freetv.fun/jin-ying-ji-shi-3.m3u8$LR•IPV4•88『线路4』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-gao-qing-2.m3u8$LR•IPV4•88『线路5』 +http://nas.hssvm.com:8888/udp/225.1.1.124:5002$LR•IPV4•88『线路5』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-3.m3u8$LR•IPV4•88『线路6』 +https://stream1.freetv.fun/jin-ying-ji-shi-44.m3u8$LR•IPV4•88『线路6』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://nas.hssvm.com:8888/udp/225.1.1.124:5002$LR•IPV4•88『线路7』 +https://stream1.freetv.fun/jin-ying-ji-shi-2.ctv$LR•IPV4•88『线路7』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-44.m3u8$LR•IPV4•88『线路8』 +https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-20.m3u8$LR•IPV4•88『线路8』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-2.ctv$LR•IPV4•88『线路9』 +https://stream1.freetv.fun/jin-ying-ji-shi-23.ctv$LR•IPV4•88『线路9』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-20.m3u8$LR•IPV4•88『线路10』 +https://stream1.freetv.fun/jin-ying-ji-shi-9.m3u8$LR•IPV4•88『线路10』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-23.ctv$LR•IPV4•88『线路11』 +http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=jyjs$LR•IPV4•88『线路11』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-9.m3u8$LR•IPV4•88『线路12』 +https://stream1.freetv.fun/jin-ying-ji-shi-26.m3u8$LR•IPV4•88『线路12』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=jyjs$LR•IPV4•88『线路13』 +https://stream1.freetv.fun/jin-ying-ji-shi-6.m3u8$LR•IPV4•88『线路13』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-26.m3u8$LR•IPV4•88『线路14』 +http://60.2.190.206:4000/udp/239.253.92.103:6054$LR•IPV4•88『线路14』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-6.m3u8$LR•IPV4•88『线路15』 +https://stream1.freetv.fun/jin-ying-ji-shi-31.m3u8$LR•IPV4•88『线路15』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://60.2.190.206:4000/udp/239.253.92.103:6054$LR•IPV4•88『线路16』 +http://e1.woc.iiiya.cn:8888/rtp/239.61.3.7:9560$LR•IPV4•88『线路16』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-31.m3u8$LR•IPV4•88『线路17』 +http://36.105.100.208:35455/itv/5000000011000031203.m3u8?cdn=bestzb$LR•IPV4•88『线路17』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://e1.woc.iiiya.cn:8888/rtp/239.61.3.7:9560$LR•IPV4•88『线路18』 +https://stream1.freetv.fun/jin-ying-ji-shi-16.m3u8$LR•IPV4•88『线路18』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://36.105.100.208:35455/itv/5000000011000031203.m3u8?cdn=bestzb$LR•IPV4•88『线路19』 +https://stream1.freetv.fun/jin-ying-ji-shi-1.ctv$LR•IPV4•88『线路19』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-16.m3u8$LR•IPV4•88『线路20』 +https://stream1.freetv.fun/jin-ying-ji-shi-23.m3u8$LR•IPV4•88『线路20』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-1.ctv$LR•IPV4•88『线路21』 +http://home.wwang.pw:35455/itv/5000000011000031203.m3u8?cdn=bestzb$LR•IPV4•88『线路21』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-23.m3u8$LR•IPV4•88『线路22』 +http://116.128.242.83:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•88『线路22』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://home.wwang.pw:35455/itv/5000000011000031203.m3u8?cdn=bestzb$LR•IPV4•88『线路23』 +https://stream1.freetv.fun/jin-ying-ji-shi-34.m3u8$LR•IPV4•88『线路23』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://116.128.242.83:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•88『线路24』 +https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-22.m3u8$LR•IPV4•88『线路24』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-34.m3u8$LR•IPV4•88『线路25』 +http://drive.mxmy.net:8888/udp/239.3.1.58:8156$LR•IPV4•88『线路25』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-22.m3u8$LR•IPV4•88『线路26』 +http://121.19.134.222:808/tsfile/live/1037_1.m3u8$LR•IPV4•88『线路26』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://drive.mxmy.net:8888/udp/239.3.1.58:8156$LR•IPV4•88『线路27』 +https://stream1.freetv.fun/jin-ying-ji-shi-41.m3u8$LR•IPV4•88『线路27』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://121.19.134.222:808/tsfile/live/1037_1.m3u8$LR•IPV4•88『线路28』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4465&tk=b53028476470$LR•IPV4•88『线路28』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-41.m3u8$LR•IPV4•88『线路29』 +https://stream1.freetv.fun/jin-ying-ji-shi-42.ctv$LR•IPV4•88『线路29』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4465&tk=b53028476470$LR•IPV4•88『线路30』 +https://stream1.freetv.fun/jin-ying-ji-shi-37.m3u8$LR•IPV4•88『线路30』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-42.ctv$LR•IPV4•88『线路31』 +https://stream1.freetv.fun/jin-ying-ji-shi-14.m3u8$LR•IPV4•88『线路31』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-37.m3u8$LR•IPV4•88『线路32』 +https://stream1.freetv.fun/jin-ying-ji-shi-33.m3u8$LR•IPV4•88『线路32』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-14.m3u8$LR•IPV4•88『线路33』 +https://live.264788.xyz/channel/jinyingjishi?streamid=b33f7690b2ce36708f54588c53a20742&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路33』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-33.m3u8$LR•IPV4•88『线路34』 +http://58.57.40.22:9901/tsfile/live/1070_1.m3u8$LR•IPV4•88『线路34』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://live.264788.xyz/channel/jinyingjishi?streamid=b33f7690b2ce36708f54588c53a20742&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路35』 +https://stream1.freetv.fun/jin-ying-ji-shi-35.m3u8$LR•IPV4•88『线路35』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://58.57.40.22:9901/tsfile/live/1070_1.m3u8$LR•IPV4•88『线路36』 +http://rrs01.hw.gmcc.net:8088/PLTV/81/224/3221226667/1.m3u8$LR•IPV4•88『线路36』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-35.m3u8$LR•IPV4•88『线路37』 +https://stream1.freetv.fun/jin-ying-ji-shi-13.m3u8$LR•IPV4•88『线路37』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://rrs01.hw.gmcc.net:8088/PLTV/81/224/3221226667/1.m3u8$LR•IPV4•88『线路38』 +https://live.264788.xyz/channel/jinyingjishi?streamid=39c14c1420dbb152d037b2b1cc17c175&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路38』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-13.m3u8$LR•IPV4•88『线路39』 +https://stream1.freetv.fun/jin-ying-ji-shi-21.ctv$LR•IPV4•88『线路39』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://live.264788.xyz/channel/jinyingjishi?streamid=39c14c1420dbb152d037b2b1cc17c175&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路40』 +https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-15.m3u8$LR•IPV4•88『线路40』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-21.ctv$LR•IPV4•88『线路41』 +http://121.19.134.200:808/tsfile/live/1028_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•88『线路41』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-15.m3u8$LR•IPV4•88『线路42』 +https://stream1.freetv.fun/jin-ying-ji-shi-5.ctv$LR•IPV4•88『线路42』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://121.19.134.200:808/tsfile/live/1028_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•88『线路43』 +https://stream1.freetv.fun/jin-ying-ji-shi-10.ctv$LR•IPV4•88『线路43』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-5.ctv$LR•IPV4•88『线路44』 +https://stream1.freetv.fun/jin-ying-ji-shi-37.ctv$LR•IPV4•88『线路44』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-10.ctv$LR•IPV4•88『线路45』 +http://120.238.94.10:9901/tsfile/live/1059_1.m3u8$LR•IPV4•88『线路45』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-37.ctv$LR•IPV4•88『线路46』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4197&tk=f6cc1e0a0e1a$LR•IPV4•88『线路46』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://120.238.94.10:9901/tsfile/live/1059_1.m3u8$LR•IPV4•88『线路47』 +https://stream1.freetv.fun/jin-ying-ji-shi-24.m3u8$LR•IPV4•88『线路47』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4197&tk=f6cc1e0a0e1a$LR•IPV4•88『线路48』 +https://stream1.freetv.fun/jin-ying-ji-shi-43.ctv$LR•IPV4•88『线路48』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-24.m3u8$LR•IPV4•88『线路49』 +https://stream1.freetv.fun/jin-ying-ji-shi-20.ctv$LR•IPV4•88『线路49』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-43.ctv$LR•IPV4•88『线路50』 +https://t.freetv.fun/live/jin-ying-ji-shi.m3u8$LR•IPV4•88『线路50』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-20.ctv$LR•IPV4•88『线路51』 +https://stream1.freetv.fun/jin-ying-ji-shi-11.m3u8$LR•IPV4•88『线路51』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://t.freetv.fun/live/jin-ying-ji-shi.m3u8$LR•IPV4•88『线路52』 +https://stream1.freetv.fun/jin-ying-ji-shi-38.m3u8$LR•IPV4•88『线路52』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-11.m3u8$LR•IPV4•88『线路53』 +https://stream1.freetv.fun/jin-ying-ji-shi-28.ctv$LR•IPV4•88『线路53』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-38.m3u8$LR•IPV4•88『线路54』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2417&tk=e503191f8e20$LR•IPV4•88『线路54』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-28.ctv$LR•IPV4•88『线路55』 +http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/JYJSMPP360.m3u8$LR•IPV4•88『线路55』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2417&tk=e503191f8e20$LR•IPV4•88『线路56』 +https://stream1.freetv.fun/jin-ying-ji-shi-gao-qing-3.m3u8$LR•IPV4•88『线路56』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/JYJSMPP360.m3u8$LR•IPV4•88『线路57』 +https://stream1.freetv.fun/jin-ying-ji-shi-8.m3u8$LR•IPV4•88『线路57』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-gao-qing-3.m3u8$LR•IPV4•88『线路58』 +https://stream1.freetv.fun/jin-ying-ji-shi-2.m3u8$LR•IPV4•88『线路58』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-8.m3u8$LR•IPV4•88『线路59』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6735&tk=e640d0a1bf70$LR•IPV4•88『线路59』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-2.m3u8$LR•IPV4•88『线路60』 +https://stream1.freetv.fun/jin-ying-ji-shi-36.ctv$LR•IPV4•88『线路60』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6735&tk=e640d0a1bf70$LR•IPV4•88『线路61』 +https://stream1.freetv.fun/jin-ying-ji-shi-39.ctv$LR•IPV4•88『线路61』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-36.ctv$LR•IPV4•88『线路62』 +https://stream1.freetv.fun/jin-ying-ji-shi-32.ctv$LR•IPV4•88『线路62』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-39.ctv$LR•IPV4•88『线路63』 +https://stream1.freetv.fun/jin-ying-ji-shi-22.ctv$LR•IPV4•88『线路63』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-32.ctv$LR•IPV4•88『线路64』 +https://live.264788.xyz/channel/jinyingjishi?streamid=3680a1c0ad58417e29641bb984685a5b&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路64』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-22.ctv$LR•IPV4•88『线路65』 +https://hls-gateway.vpstv.net/streams/708834.m3u8$LR•IPV4•88『线路65』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://live.264788.xyz/channel/jinyingjishi?streamid=3680a1c0ad58417e29641bb984685a5b&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路66』 +http://wouu.net:9977/udp/239.93.0.130:5140$LR•IPV4•88『线路66』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://hls-gateway.vpstv.net/streams/708834.m3u8$LR•IPV4•88『线路67』 +https://stream1.freetv.fun/jin-ying-ji-shi-24.ctv$LR•IPV4•88『线路67』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://wouu.net:9977/udp/239.93.0.130:5140$LR•IPV4•88『线路68』 +http://60.7.56.33:4000/udp/239.253.92.103:6054$LR•IPV4•88『线路68』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-24.ctv$LR•IPV4•88『线路69』 +https://stream1.freetv.fun/jin-ying-ji-shi-41.ctv$LR•IPV4•88『线路69』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://60.7.56.33:4000/udp/239.253.92.103:6054$LR•IPV4•88『线路70』 +https://stream1.freetv.fun/jin-ying-ji-shi-30.m3u8$LR•IPV4•88『线路70』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-41.ctv$LR•IPV4•88『线路71』 +https://stream1.freetv.fun/jin-ying-ji-shi-19.ctv$LR•IPV4•88『线路71』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-30.m3u8$LR•IPV4•88『线路72』 +https://stream1.freetv.fun/jin-ying-ji-shi-13.ctv$LR•IPV4•88『线路72』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-19.ctv$LR•IPV4•88『线路73』 +https://stream1.freetv.fun/jin-ying-ji-shi-40.m3u8$LR•IPV4•88『线路73』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-13.ctv$LR•IPV4•88『线路74』 +https://stream1.freetv.fun/jin-ying-ji-shi-12.ctv$LR•IPV4•88『线路74』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-40.m3u8$LR•IPV4•88『线路75』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4677&tk=a0c4f6cfaba3$LR•IPV4•88『线路75』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-12.ctv$LR•IPV4•88『线路76』 +http://183.11.239.36:808/hls/171/index.m3u8$LR•IPV4•88『线路76』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4677&tk=a0c4f6cfaba3$LR•IPV4•88『线路77』 +https://stream1.freetv.fun/jin-ying-ji-shi-4.m3u8$LR•IPV4•88『线路77』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://183.11.239.36:808/hls/171/index.m3u8$LR•IPV4•88『线路78』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6241&tk=a0c4f6cfaba3$LR•IPV4•88『线路78』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-4.m3u8$LR•IPV4•88『线路79』 +https://stream1.freetv.fun/jin-ying-ji-shi-31.ctv$LR•IPV4•88『线路79』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6241&tk=a0c4f6cfaba3$LR•IPV4•88『线路80』 +https://live.264788.xyz/channel/jinyingjishi?streamid=4e14722244f78fc9c49bf260b10b3cad&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路80』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-31.ctv$LR•IPV4•88『线路81』 +https://stream1.freetv.fun/jin-ying-ji-shi-7.ctv$LR•IPV4•88『线路81』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://live.264788.xyz/channel/jinyingjishi?streamid=4e14722244f78fc9c49bf260b10b3cad&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路82』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8115&tk=e640d0a1bf70$LR•IPV4•88『线路82』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-7.ctv$LR•IPV4•88『线路83』 +https://stream1.freetv.fun/jin-ying-ji-shi-29.m3u8$LR•IPV4•88『线路83』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8115&tk=e640d0a1bf70$LR•IPV4•88『线路84』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6268&tk=23a9aca1f79f$LR•IPV4•88『线路84』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -https://stream1.freetv.fun/jin-ying-ji-shi-29.m3u8$LR•IPV4•88『线路85』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYJSMPP360.m3u8$LR•IPV4•88『线路85』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6268&tk=23a9aca1f79f$LR•IPV4•88『线路86』 +http://111.29.9.33:6610/000000001000/5000000011000031203/index.m3u8?channel-id=bestzb&Contentid=5000000011000031203&livemode=1&stbId=3$LR•IPV4•88『线路86』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226351/index.m3u8$LR•IPV4•88『线路87』 #EXTINF:-1 tvg-name="金鹰纪实" group-title="数字",金鹰纪实 @@ -6142,9 +6142,9 @@ http://139.155.89.87:1000/961930263$LR•IPV4•42『线路41』 #EXTINF:-1 tvg-name="快乐垂钓" group-title="数字",快乐垂钓 http://101.34.236.223:1112/961930263$LR•IPV4•42『线路42』 #EXTINF:-1 tvg-name="纪实人文" group-title="数字",纪实人文 -http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•2『线路1』 +http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="纪实人文" group-title="数字",纪实人文 -http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•2『线路2』 +http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="中国功夫" group-title="数字",中国功夫 http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5897056882324761054&livemode=1&stbId=yu&mode=1&$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="中国功夫" group-title="数字",中国功夫 @@ -6206,19 +6206,19 @@ http://111.22.153.159:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4 #EXTINF:-1 tvg-name="华数4K" group-title="数字",华数4K http://home.wwang.pw:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="纯享4K" group-title="数字",纯享4K -http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•7『线路1』 +http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="纯享4K" group-title="数字",纯享4K -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000011651&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路2』 +https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="纯享4K" group-title="数字",纯享4K -http://111.29.9.33:6610/000000001000/1000000004000011651/index.m3u8?channel-id=bestzb&Contentid=1000000004000011651&livemode=1&stbId=3$LR•IPV4•7『线路3』 +https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="纯享4K" group-title="数字",纯享4K -http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•7『线路4』 +http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-name="纯享4K" group-title="数字",纯享4K -https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路5』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000011651&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-name="纯享4K" group-title="数字",纯享4K -https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路6』 +http://111.29.9.33:6610/000000001000/1000000004000011651/index.m3u8?channel-id=bestzb&Contentid=1000000004000011651&livemode=1&stbId=3$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-name="纯享4K" group-title="数字",纯享4K -http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•7『线路7』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="滁州新闻综合频道" group-title="安徽",滁州新闻综合频道 http://183.167.193.45:1935/live/cztvzh/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="滁州科教频道" group-title="安徽",滁州科教频道 @@ -6230,17 +6230,17 @@ https://ls.qingting.fm/live/21303/64k.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="铜陵新闻综合频道" group-title="安徽",铜陵新闻综合频道 http://dstpush1.retalltech.com/app/stream1.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="亳州农村" group-title="安徽",亳州农村 -http://220.180.110.101:8083/videos/live/39/13/o4ncrHkSp7q09/o4ncrHkSp7q09.m3u8$LR•IPV4•2『线路1』 +http://zbbf2.ahbztv.com/live/418.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="亳州农村" group-title="安徽",亳州农村 -http://zbbf2.ahbztv.com/live/418.m3u8$LR•IPV4•2『线路2』 +http://220.180.110.101:8083/videos/live/39/13/o4ncrHkSp7q09/o4ncrHkSp7q09.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="北京财经" group-title="北京",北京财经 -http://ivi.bupt.edu.cn/hls/btv5.m3u8$LR•IPV4•2『线路1』 +http://123.121.5.183:4000/rtp/239.3.1.116:8000$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="北京财经" group-title="北京",北京财经 -http://123.121.5.183:4000/rtp/239.3.1.116:8000$LR•IPV4•2『线路2』 +http://ivi.bupt.edu.cn/hls/btv5.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="北京青年" group-title="北京",北京青年 -http://ivi.bupt.edu.cn/hls/btv8.m3u8$LR•IPV4•2『线路1』 +http://123.121.5.183:4000/rtp/239.3.1.118:8000$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="北京青年" group-title="北京",北京青年 -http://123.121.5.183:4000/rtp/239.3.1.118:8000$LR•IPV4•2『线路2』 +http://ivi.bupt.edu.cn/hls/btv8.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="优优宝贝" group-title="北京",优优宝贝 http://120.76.248.139/live/bfgd/4200000153.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="生态环境" group-title="北京",生态环境 @@ -6310,35 +6310,37 @@ https://31182.hlsplay.aodianyun.com/lms_31182/tv_channel_175.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="南宁影视娱乐" group-title="广西",南宁影视娱乐 http://hls.nntv.cn/nnlive/YSYL_244.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="邢台综合" group-title="河北",邢台综合 -http://222.223.119.21:8888/newlive/live/hls/54/live.m3u8$LR•IPV4•3『线路1』 +https://jwplay.hebyun.com.cn:443/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="邢台综合" group-title="河北",邢台综合 -https://jwplay.hebyun.com.cn:443/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•3『线路2』 +http://jwplay.hebyun.com.cn/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="邢台综合" group-title="河北",邢台综合 -http://jwplay.hebyun.com.cn/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•3『线路3』 +http://222.223.119.21:8888/newlive/live/hls/54/live.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="河北都市" group-title="河北",河北都市 -http://121.19.134.246:808/hls/21/index.m3u8$LR•IPV4•2『线路1』 +https://radio.pull.hebtv.com/live/hebnczx.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="河北都市" group-title="河北",河北都市 -http://1.94.31.214/php/hebei.php?id=hbds$LR•IPV4•2『线路2』 +http://1.94.31.214/php/hebei.php?id=hbds$LR•IPV4•3『线路2』 +#EXTINF:-1 tvg-name="河北都市" group-title="河北",河北都市 +http://121.19.134.246:808/hls/21/index.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="河北农民" group-title="河北",河北农民 -http://121.19.134.246:808/hls/25/index.m3u8$LR•IPV4•3『线路1』 +https://jwcdnqx.hebyun.com.cn/live/clzhpd/1500k/tzwj_video.m3u8?zhebd$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="河北农民" group-title="河北",河北农民 -https://ls.qingting.fm/live/1650/64k.m3u8$LR•IPV4•3『线路2』 +http://1.94.31.214/php/hebei.php?id=nmpd$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="河北农民" group-title="河北",河北农民 -http://1.94.31.214/php/hebei.php?id=nmpd$LR•IPV4•3『线路3』 +http://121.19.134.246:808/hls/25/index.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="鹿泉一套" group-title="河北",鹿泉一套 http://hblq.chinashadt.com:2036/live/stream:luquan1.stream/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="河北经济" group-title="河北",河北经济 -http://121.19.134.246:808/hls/20/index.m3u8$LR•IPV4•2『线路1』 +http://1.94.31.214/php/hebei.php?id=jjsh$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="河北经济" group-title="河北",河北经济 -http://1.94.31.214/php/hebei.php?id=jjsh$LR•IPV4•2『线路2』 +http://121.19.134.246:808/hls/20/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="河北影视" group-title="河北",河北影视 -http://121.19.134.246:808/hls/22/index.m3u8$LR•IPV4•2『线路1』 +http://1.94.31.214/php/hebei.php?id=hbys$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="河北影视" group-title="河北",河北影视 -http://1.94.31.214/php/hebei.php?id=hbys$LR•IPV4•2『线路2』 +http://121.19.134.246:808/hls/22/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="河北公共" group-title="河北",河北公共 -http://121.19.134.246:808/hls/24/index.m3u8$LR•IPV4•2『线路1』 +http://1.94.31.214/php/hebei.php?id=hbgg$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="河北公共" group-title="河北",河北公共 -http://1.94.31.214/php/hebei.php?id=hbgg$LR•IPV4•2『线路2』 +http://121.19.134.246:808/hls/24/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="鹿泉二套" group-title="河北",鹿泉二套 http://hblq.chinashadt.com:2036/live/stream:luquan2.stream/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="内蒙新闻" group-title="内蒙古",内蒙新闻 @@ -6404,157 +6406,157 @@ http://139.155.89.87:1000/626064714$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-name="江苏城市" group-title="江苏",江苏城市 http://101.34.236.223:1112/626064714$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://183.207.248.71/gitv/live1/G_JSZY/G_JSZY$LR•IPV4•14『线路1』 +https://live.chinacert.cftest5.cn/cnmg/live/626065193$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -https://live.chinacert.cftest5.cn/cnmg/live/626065193$LR•IPV4•14『线路2』 +http://fn.gcl.de5.net:5908/gsh950428/626065193$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://fn.gcl.de5.net:5908/gsh950428/626065193$LR•IPV4•14『线路3』 +http://wfenf.x3322.net:7788/626065193$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://wfenf.x3322.net:7788/626065193$LR•IPV4•14『线路4』 +http://106.5.175.159:1234/626065193$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://106.5.175.159:1234/626065193$LR•IPV4•14『线路5』 +http://36.104.221.222:7788/626065193$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://36.104.221.222:7788/626065193$LR•IPV4•14『线路6』 +http://115.58.151.196:1234/626065193$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://115.58.151.196:1234/626065193$LR•IPV4•14『线路7』 +http://182.61.15.163:80/626065193$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://182.61.15.163:80/626065193$LR•IPV4•14『线路8』 +http://121.23.132.14:7788/626065193$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://121.23.132.14:7788/626065193$LR•IPV4•14『线路9』 +http://120.4.126.153:1234/626065193$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://120.4.126.153:1234/626065193$LR•IPV4•14『线路10』 +http://47.119.24.76:59093/626065193$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://47.119.24.76:59093/626065193$LR•IPV4•14『线路11』 +http://222.134.19.49:8090/626065193$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://222.134.19.49:8090/626065193$LR•IPV4•14『线路12』 +http://139.155.89.87:1000/626065193$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://139.155.89.87:1000/626065193$LR•IPV4•14『线路13』 +http://101.34.236.223:1112/626065193$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-name="江苏综艺" group-title="江苏",江苏综艺 -http://101.34.236.223:1112/626065193$LR•IPV4•14『线路14』 +http://183.207.248.71/gitv/live1/G_JSZY/G_JSZY$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://223.110.243.134/PLTV/4/224/3221225937/index.m3u8$LR•IPV4•14『线路1』 +https://live.chinacert.cftest5.cn/cnmg/live/626064697$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -https://live.chinacert.cftest5.cn/cnmg/live/626064697$LR•IPV4•14『线路2』 +http://fn.gcl.de5.net:5908/gsh950428/626064697$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://fn.gcl.de5.net:5908/gsh950428/626064697$LR•IPV4•14『线路3』 +http://wfenf.x3322.net:7788/626064697$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://wfenf.x3322.net:7788/626064697$LR•IPV4•14『线路4』 +http://106.5.175.159:1234/626064697$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://106.5.175.159:1234/626064697$LR•IPV4•14『线路5』 +http://36.104.221.222:7788/626064697$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://36.104.221.222:7788/626064697$LR•IPV4•14『线路6』 +http://115.58.151.196:1234/626064697$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://115.58.151.196:1234/626064697$LR•IPV4•14『线路7』 +http://182.61.15.163:80/626064697$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://182.61.15.163:80/626064697$LR•IPV4•14『线路8』 +http://121.23.132.14:7788/626064697$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://121.23.132.14:7788/626064697$LR•IPV4•14『线路9』 +http://120.4.126.153:1234/626064697$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://120.4.126.153:1234/626064697$LR•IPV4•14『线路10』 +http://47.119.24.76:59093/626064697$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://47.119.24.76:59093/626064697$LR•IPV4•14『线路11』 +http://222.134.19.49:8090/626064697$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://222.134.19.49:8090/626064697$LR•IPV4•14『线路12』 +http://139.155.89.87:1000/626064697$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://139.155.89.87:1000/626064697$LR•IPV4•14『线路13』 +http://101.34.236.223:1112/626064697$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-name="江苏影视" group-title="江苏",江苏影视 -http://101.34.236.223:1112/626064697$LR•IPV4•14『线路14』 +http://223.110.243.134/PLTV/4/224/3221225937/index.m3u8$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://223.110.245.151/ott.js.chinamobile.com/PLTV/3/224/3221225923/index.m3u8$LR•IPV4•14『线路1』 +https://live.chinacert.cftest5.cn/cnmg/live/628008321$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -https://live.chinacert.cftest5.cn/cnmg/live/628008321$LR•IPV4•14『线路2』 +http://fn.gcl.de5.net:5908/gsh950428/628008321$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://fn.gcl.de5.net:5908/gsh950428/628008321$LR•IPV4•14『线路3』 +http://wfenf.x3322.net:7788/628008321$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://wfenf.x3322.net:7788/628008321$LR•IPV4•14『线路4』 +http://106.5.175.159:1234/628008321$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://106.5.175.159:1234/628008321$LR•IPV4•14『线路5』 +http://36.104.221.222:7788/628008321$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://36.104.221.222:7788/628008321$LR•IPV4•14『线路6』 +http://115.58.151.196:1234/628008321$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://115.58.151.196:1234/628008321$LR•IPV4•14『线路7』 +http://182.61.15.163:80/628008321$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://182.61.15.163:80/628008321$LR•IPV4•14『线路8』 +http://121.23.132.14:7788/628008321$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://121.23.132.14:7788/628008321$LR•IPV4•14『线路9』 +http://120.4.126.153:1234/628008321$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://120.4.126.153:1234/628008321$LR•IPV4•14『线路10』 +http://47.119.24.76:59093/628008321$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://47.119.24.76:59093/628008321$LR•IPV4•14『线路11』 +http://222.134.19.49:8090/628008321$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://222.134.19.49:8090/628008321$LR•IPV4•14『线路12』 +http://139.155.89.87:1000/628008321$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://139.155.89.87:1000/628008321$LR•IPV4•14『线路13』 +http://101.34.236.223:1112/628008321$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-name="江苏教育" group-title="江苏",江苏教育 -http://101.34.236.223:1112/628008321$LR•IPV4•14『线路14』 +http://223.110.245.151/ott.js.chinamobile.com/PLTV/3/224/3221225923/index.m3u8$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://183.207.248.71/gitv/live1/G_NJSB/G_NJSB$LR•IPV4•14『线路1』 +https://live.chinacert.cftest5.cn/cnmg/live/838151753$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -https://live.chinacert.cftest5.cn/cnmg/live/838151753$LR•IPV4•14『线路2』 +http://fn.gcl.de5.net:5908/gsh950428/838151753$LR•IPV4•14『线路2』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://fn.gcl.de5.net:5908/gsh950428/838151753$LR•IPV4•14『线路3』 +http://wfenf.x3322.net:7788/838151753$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://wfenf.x3322.net:7788/838151753$LR•IPV4•14『线路4』 +http://106.5.175.159:1234/838151753$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://106.5.175.159:1234/838151753$LR•IPV4•14『线路5』 +http://36.104.221.222:7788/838151753$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://36.104.221.222:7788/838151753$LR•IPV4•14『线路6』 +http://115.58.151.196:1234/838151753$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://115.58.151.196:1234/838151753$LR•IPV4•14『线路7』 +http://182.61.15.163:80/838151753$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://182.61.15.163:80/838151753$LR•IPV4•14『线路8』 +http://121.23.132.14:7788/838151753$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://121.23.132.14:7788/838151753$LR•IPV4•14『线路9』 +http://120.4.126.153:1234/838151753$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://120.4.126.153:1234/838151753$LR•IPV4•14『线路10』 +http://47.119.24.76:59093/838151753$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://47.119.24.76:59093/838151753$LR•IPV4•14『线路11』 +http://222.134.19.49:8090/838151753$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://222.134.19.49:8090/838151753$LR•IPV4•14『线路12』 +http://139.155.89.87:1000/838151753$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://139.155.89.87:1000/838151753$LR•IPV4•14『线路13』 +http://101.34.236.223:1112/838151753$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-name="南京十八" group-title="江苏",南京十八 -http://101.34.236.223:1112/838151753$LR•IPV4•14『线路14』 +http://183.207.248.71/gitv/live1/G_NJSB/G_NJSB$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-name="江苏体育" group-title="江苏",江苏体育 http://183.207.248.71/gitv/live1/G_JSTY/G_JSTY$LR•IPV4 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -https://live.nbs.cn/channels/njtv/jkpd/m3u8:500k/live.m3u8$LR•IPV4•17『线路1』 +http://nklive.nbs.cn/hls/75b3c462-b831-4de7-a34b-5d3221db2069/index.m3u8$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://183.207.248.71/gitv/live1/G_NJJK/G_NJJK$LR•IPV4•17『线路2』 +https://live.chinacert.cftest5.cn/cnmg/live/838153729$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://223.110.245.155/ott.js.chinamobile.com/PLTV/3/224/3221227194/index.m3u8$LR•IPV4•17『线路3』 +http://fn.gcl.de5.net:5908/gsh950428/838153729$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://nklive.nbs.cn/hls/75b3c462-b831-4de7-a34b-5d3221db2069/index.m3u8$LR•IPV4•17『线路4』 +http://wfenf.x3322.net:7788/838153729$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -https://live.chinacert.cftest5.cn/cnmg/live/838153729$LR•IPV4•17『线路5』 +http://106.5.175.159:1234/838153729$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://fn.gcl.de5.net:5908/gsh950428/838153729$LR•IPV4•17『线路6』 +http://36.104.221.222:7788/838153729$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://wfenf.x3322.net:7788/838153729$LR•IPV4•17『线路7』 +http://115.58.151.196:1234/838153729$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://106.5.175.159:1234/838153729$LR•IPV4•17『线路8』 +http://182.61.15.163:80/838153729$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://36.104.221.222:7788/838153729$LR•IPV4•17『线路9』 +http://121.23.132.14:7788/838153729$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://115.58.151.196:1234/838153729$LR•IPV4•17『线路10』 +http://120.4.126.153:1234/838153729$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://182.61.15.163:80/838153729$LR•IPV4•17『线路11』 +http://47.119.24.76:59093/838153729$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://121.23.132.14:7788/838153729$LR•IPV4•17『线路12』 +http://222.134.19.49:8090/838153729$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://120.4.126.153:1234/838153729$LR•IPV4•17『线路13』 +http://139.155.89.87:1000/838153729$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://47.119.24.76:59093/838153729$LR•IPV4•17『线路14』 +http://101.34.236.223:1112/838153729$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://222.134.19.49:8090/838153729$LR•IPV4•17『线路15』 +https://live.nbs.cn/channels/njtv/jkpd/m3u8:500k/live.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://139.155.89.87:1000/838153729$LR•IPV4•17『线路16』 +http://183.207.248.71/gitv/live1/G_NJJK/G_NJJK$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-name="南京教科" group-title="江苏",南京教科 -http://101.34.236.223:1112/838153729$LR•IPV4•17『线路17』 +http://223.110.245.155/ott.js.chinamobile.com/PLTV/3/224/3221227194/index.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-name="南京少儿" group-title="江苏",南京少儿 -https://live.nbs.cn/channels/njtv/sepd/m3u8:500k/live.m3u8$LR•IPV4•2『线路1』 +http://nklive.nbs.cn/hls/e0981f3f-1a20-4a59-b8d1-17feb83a4610/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="南京少儿" group-title="江苏",南京少儿 -http://nklive.nbs.cn/hls/e0981f3f-1a20-4a59-b8d1-17feb83a4610/index.m3u8$LR•IPV4•2『线路2』 +https://live.nbs.cn/channels/njtv/sepd/m3u8:500k/live.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="苏州4k" group-title="江苏",苏州4k https://live-auth.51kandianshi.com/szgd/csztv4k_hd.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="苏州4k" group-title="江苏",苏州4k @@ -6762,7 +6764,7 @@ http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd #EXTINF:-1 tvg-name="浙江民生" group-title="浙江",浙江民生 https://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路1』 #EXTINF:-1 tvg-name="浙江民生" group-title="浙江",浙江民生 -http://ali-m-l.cztv.com/channels/lantian/channel06/1080p.m3u8$LR•IPV4•37『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路2』 #EXTINF:-1 tvg-name="浙江民生" group-title="浙江",浙江民生 https://stream1.freetv.fun/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路3』 #EXTINF:-1 tvg-name="浙江民生" group-title="浙江",浙江民生 @@ -6780,9 +6782,9 @@ https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-6.ctv$LR•IPV4•37『 #EXTINF:-1 tvg-name="浙江民生" group-title="浙江",浙江民生 https://t.freetv.fun/live/zhe-jiang-min-sheng.m3u8$LR•IPV4•37『线路10』 #EXTINF:-1 tvg-name="浙江民生" group-title="浙江",浙江民生 -http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路11』 +http://ali-m-l.cztv.com/channels/lantian/channel06/1080p.m3u8$LR•IPV4•37『线路11』 #EXTINF:-1 tvg-name="浙江民生" group-title="浙江",浙江民生 -http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路12』 +http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路12』 #EXTINF:-1 tvg-name="浙江民生" group-title="浙江",浙江民生 https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路13』 #EXTINF:-1 tvg-name="浙江民生" group-title="浙江",浙江民生 @@ -6836,35 +6838,35 @@ https://ali-xwl.cztv.com/live/channel061080Plxw.m3u8$LR•IPV4•37『线路37 #EXTINF:-1 tvg-name="浙江经济" group-title="浙江",浙江经济 https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="浙江经济" group-title="浙江",浙江经济 -https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8?$LR•IPV4•7『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="浙江经济" group-title="浙江",浙江经济 -http://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8$LR•IPV4•7『线路3』 +http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="浙江经济" group-title="浙江",浙江经济 https://ali-xwl.cztv.com/live/channel031080Plxw.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-name="浙江经济" group-title="浙江",浙江经济 -http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•7『线路5』 +http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-name="浙江经济" group-title="浙江",浙江经济 -http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•7『线路6』 +http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-name="浙江经济" group-title="浙江",浙江经济 -http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•7『线路7』 +http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="浙江钱江" group-title="浙江",浙江钱江 https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•21『线路1』 #EXTINF:-1 tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•21『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•21『线路2』 #EXTINF:-1 tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•21『线路3』 +http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•21『线路3』 #EXTINF:-1 tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•21『线路4』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•21『线路4』 #EXTINF:-1 tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•21『线路5』 +http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•21『线路5』 #EXTINF:-1 tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•21『线路6』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•21『线路6』 #EXTINF:-1 tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•21『线路7』 +http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•21『线路7』 #EXTINF:-1 tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•21『线路8』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•21『线路8』 #EXTINF:-1 tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•21『线路9』 +http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•21『线路9』 #EXTINF:-1 tvg-name="浙江钱江" group-title="浙江",浙江钱江 http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•21『线路10』 #EXTINF:-1 tvg-name="浙江钱江" group-title="浙江",浙江钱江 @@ -6936,25 +6938,27 @@ http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?zzhed$LR•IPV4•2 #EXTINF:-1 tvg-name="上虞新闻综合" group-title="浙江",上虞新闻综合 http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•9『线路1』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•9『线路2』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•9『线路3』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•9『线路4』 +https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•9『线路5』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•9『线路6』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•9『线路7』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•9『线路8』 +https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•9『线路9』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•10『线路9』 +#EXTINF:-1 tvg-name="上虞文化影院" group-title="浙江",上虞文化影院 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-name="上虞新商都" group-title="浙江",上虞新商都 -http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路1』 +http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-name="上虞新商都" group-title="浙江",上虞新商都 https://t.freetv.fun/live/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-name="上虞新商都" group-title="浙江",上虞新商都 @@ -6966,13 +6970,13 @@ https://stream1.freetv.fun/shang-yu-xin-shang-du-2.m3u8$LR•IPV4•11『线路5 #EXTINF:-1 tvg-name="上虞新商都" group-title="浙江",上虞新商都 https://stream1.freetv.fun/shang-yu-xin-shang-du-5.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路7』 +http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路8』 +https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-name="上虞新商都" group-title="浙江",上虞新商都 -https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路9』 +https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-name="上虞新商都" group-title="浙江",上虞新商都 -http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路10』 +https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-name="上虞新商都" group-title="浙江",上虞新商都 https://stream1.freetv.fun/shang-yu-xin-shang-du-4.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-name="云和新闻综合" group-title="浙江",云和新闻综合 @@ -7126,9 +7130,9 @@ http://l.cztvcloud.com/channels/lantian/SXxiaoshan3/720p.m3u8$LR•IPV4•17『 #EXTINF:-1 tvg-name="萧山生活频道" group-title="浙江",萧山生活频道 http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="萧山生活频道" group-title="浙江",萧山生活频道 -http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•4『线路2』 +https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="萧山生活频道" group-title="浙江",萧山生活频道 -https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•4『线路3』 +http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="萧山生活频道" group-title="浙江",萧山生活频道 http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed?$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="诸暨新闻综合" group-title="浙江",诸暨新闻综合 @@ -7182,27 +7186,27 @@ http://ali-vl.cztv.com/channels/lantian/channel003/360p.m3u8$LR•IPV4•19『 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 http://api3.52tb.xyz/info?id=437&token=20230226bgyszp$LR•IPV4•19『线路4』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 -http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8$LR•IPV4•19『线路5』 +https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-7.m3u8$LR•IPV4•19『线路5』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 -https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-7.m3u8$LR•IPV4•19『线路6』 +https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-3.m3u8$LR•IPV4•19『线路6』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 -https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-3.m3u8$LR•IPV4•19『线路7』 +https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•19『线路7』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 -https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•19『线路8』 +http://ali-xwl.cztv.com/live/channel031080Plxw.m3u8$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 -http://ali-xwl.cztv.com/live/channel031080Plxw.m3u8$LR•IPV4•19『线路9』 +http://ali-m-l.cztv.com/channels/lantian/channel03/720p.m3u8$LR•IPV4•19『线路9』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 -http://ali-m-l.cztv.com/channels/lantian/channel03/720p.m3u8$LR•IPV4•19『线路10』 +http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•19『线路10』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 -http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•19『线路11』 +https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-6.m3u8$LR•IPV4•19『线路11』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 -https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-6.m3u8$LR•IPV4•19『线路12』 +https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-8.ctv$LR•IPV4•19『线路12』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 -https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-8.ctv$LR•IPV4•19『线路13』 +https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-1.ctv$LR•IPV4•19『线路13』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 -https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-1.ctv$LR•IPV4•19『线路14』 +https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-6.m3u8$LR•IPV4•19『线路14』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 -https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-6.m3u8$LR•IPV4•19『线路15』 +https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8?$LR•IPV4•19『线路15』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-7.ctv$LR•IPV4•19『线路16』 #EXTINF:-1 tvg-name="浙江生活" group-title="浙江",浙江生活 @@ -7414,11 +7418,11 @@ https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-4.m3u8$LR•IPV4•7『线 #EXTINF:-1 tvg-name="新昌新闻综合" group-title="浙江",新昌新闻综合 https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="文成综合" group-title="浙江",文成综合 -http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路1』 +http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="文成综合" group-title="浙江",文成综合 http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="文成综合" group-title="浙江",文成综合 -http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路3』 +http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="文成综合" group-title="浙江",文成综合 http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?fbl=$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="庆元综合" group-title="浙江",庆元综合 @@ -7482,213 +7486,213 @@ http://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8$LR•IPV4•2『 #EXTINF:-1 tvg-name="中国蓝新闻" group-title="浙江",中国蓝新闻 https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8?$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDSMPP360.m3u8$LR•IPV4•26『线路1』 +http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnds$LR•IPV4•26『线路1』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnds$LR•IPV4•26『线路2』 +http://110.53.218.182:9902/tsfile/live/0127_1.m3u8$LR•IPV4•26『线路2』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -http://110.53.218.182:9902/tsfile/live/0127_1.m3u8$LR•IPV4•26『线路3』 +https://stream1.freetv.fun/hu-nan-du-shi-12.ctv$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-12.ctv$LR•IPV4•26『线路4』 +https://stream1.freetv.fun/hu-nan-du-shi-3.m3u8$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-3.m3u8$LR•IPV4•26『线路5』 +https://stream1.freetv.fun/hu-nan-du-shi-6.ctv$LR•IPV4•26『线路5』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-6.ctv$LR•IPV4•26『线路6』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7510&tk=23a9aca1f79f$LR•IPV4•26『线路6』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7510&tk=23a9aca1f79f$LR•IPV4•26『线路7』 +https://stream1.freetv.fun/hu-nan-du-shi-5.m3u8$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-5.m3u8$LR•IPV4•26『线路8』 +https://stream1.freetv.fun/hu-nan-du-shi-8.m3u8$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-8.m3u8$LR•IPV4•26『线路9』 +https://stream1.freetv.fun/hu-nan-du-shi-15.m3u8$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-15.m3u8$LR•IPV4•26『线路10』 +https://stream1.freetv.fun/hu-nan-du-shi-4.m3u8$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-4.m3u8$LR•IPV4•26『线路11』 +https://stream1.freetv.fun/hu-nan-du-shi-7.m3u8$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-7.m3u8$LR•IPV4•26『线路12』 +https://stream1.freetv.fun/hu-nan-du-shi-gao-qing-1.m3u8$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-gao-qing-1.m3u8$LR•IPV4•26『线路13』 +https://stream1.freetv.fun/hu-nan-du-shi-10.m3u8$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-10.m3u8$LR•IPV4•26『线路14』 +http://www.peanutbar.cn:8099/tsfile/live/1002_1.m3u8?key=txiptv$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -http://www.peanutbar.cn:8099/tsfile/live/1002_1.m3u8?key=txiptv$LR•IPV4•26『线路15』 +https://stream1.freetv.fun/hu-nan-du-shi-6.m3u8$LR•IPV4•26『线路15』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-6.m3u8$LR•IPV4•26『线路16』 +https://stream1.freetv.fun/hu-nan-du-shi-gao-qing-3.m3u8$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-gao-qing-3.m3u8$LR•IPV4•26『线路17』 +https://stream1.freetv.fun/hu-nan-du-shi-14.m3u8$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-14.m3u8$LR•IPV4•26『线路18』 +https://stream1.freetv.fun/hu-nan-du-shi-13.m3u8$LR•IPV4•26『线路18』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-13.m3u8$LR•IPV4•26『线路19』 +https://stream1.freetv.fun/hu-nan-du-shi-1.m3u8$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-1.m3u8$LR•IPV4•26『线路20』 +https://stream1.freetv.fun/hu-nan-du-shi-9.m3u8$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-9.m3u8$LR•IPV4•26『线路21』 +http://116.128.243.121:85/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -http://116.128.243.121:85/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路22』 +http://116.128.242.83:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -http://116.128.242.83:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路23』 +http://113.241.133.180:85/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -http://113.241.133.180:85/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路24』 +https://stream1.freetv.fun/hu-nan-du-shi-11.m3u8$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 -https://stream1.freetv.fun/hu-nan-du-shi-11.m3u8$LR•IPV4•26『线路25』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDSMPP360.m3u8$LR•IPV4•26『线路25』 #EXTINF:-1 tvg-name="湖南都市" group-title="湖南",湖南都市 http://36.137.183.45:1100/difang/hunan/hunan.php?id=hnds$LR•IPV4•26『线路26』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNJSMPP360.m3u8$LR•IPV4•25『线路1』 +http://116.128.243.121:85/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路1』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -http://116.128.243.121:85/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路2』 +https://stream1.freetv.fun/hu-nan-jing-shi-2.m3u8$LR•IPV4•25『线路2』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-2.m3u8$LR•IPV4•25『线路3』 +https://stream1.freetv.fun/hu-nan-jing-shi-12.m3u8$LR•IPV4•25『线路3』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-12.m3u8$LR•IPV4•25『线路4』 +https://stream1.freetv.fun/hu-nan-jing-shi-10.ctv$LR•IPV4•25『线路4』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-10.ctv$LR•IPV4•25『线路5』 +https://stream1.freetv.fun/hu-nan-jing-shi-9.m3u8$LR•IPV4•25『线路5』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-9.m3u8$LR•IPV4•25『线路6』 +https://stream1.freetv.fun/hu-nan-jing-shi-1.m3u8$LR•IPV4•25『线路6』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-1.m3u8$LR•IPV4•25『线路7』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0780&tk=abed47f08529$LR•IPV4•25『线路7』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0780&tk=abed47f08529$LR•IPV4•25『线路8』 +http://116.128.242.83:9901/tsfile/live/0131_1.m3u8$LR•IPV4•25『线路8』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -http://116.128.242.83:9901/tsfile/live/0131_1.m3u8$LR•IPV4•25『线路9』 +https://stream1.freetv.fun/hu-nan-jing-shi-4.m3u8$LR•IPV4•25『线路9』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-4.m3u8$LR•IPV4•25『线路10』 +http://116.128.242.83:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路10』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -http://116.128.242.83:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路11』 +https://stream1.freetv.fun/hu-nan-jing-shi-gao-qing-2.m3u8$LR•IPV4•25『线路11』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-gao-qing-2.m3u8$LR•IPV4•25『线路12』 +https://stream1.freetv.fun/hu-nan-jing-shi-5.m3u8$LR•IPV4•25『线路12』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-5.m3u8$LR•IPV4•25『线路13』 +http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnjs$LR•IPV4•25『线路13』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnjs$LR•IPV4•25『线路14』 +http://www.peanutbar.cn:8099/tsfile/live/1006_1.m3u8?key=txiptv$LR•IPV4•25『线路14』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -http://www.peanutbar.cn:8099/tsfile/live/1006_1.m3u8?key=txiptv$LR•IPV4•25『线路15』 +https://stream1.freetv.fun/hu-nan-jing-shi-10.m3u8$LR•IPV4•25『线路15』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-10.m3u8$LR•IPV4•25『线路16』 +https://stream1.freetv.fun/hu-nan-jing-shi-6.m3u8$LR•IPV4•25『线路16』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-6.m3u8$LR•IPV4•25『线路17』 +http://110.53.218.182:9902/tsfile/live/1004_1.m3u8$LR•IPV4•25『线路17』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -http://110.53.218.182:9902/tsfile/live/1004_1.m3u8$LR•IPV4•25『线路18』 +https://stream1.freetv.fun/hu-nan-jing-shi-11.m3u8$LR•IPV4•25『线路18』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-11.m3u8$LR•IPV4•25『线路19』 +https://stream1.freetv.fun/hu-nan-jing-shi-13.m3u8$LR•IPV4•25『线路19』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-13.m3u8$LR•IPV4•25『线路20』 +http://113.241.133.180:85/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路20』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -http://113.241.133.180:85/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路21』 +https://stream1.freetv.fun/hu-nan-jing-shi-14.m3u8$LR•IPV4•25『线路21』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-14.m3u8$LR•IPV4•25『线路22』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0241&tk=23a9aca1f79f$LR•IPV4•25『线路22』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0241&tk=23a9aca1f79f$LR•IPV4•25『线路23』 +https://stream1.freetv.fun/hu-nan-jing-shi-15.ctv$LR•IPV4•25『线路23』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 -https://stream1.freetv.fun/hu-nan-jing-shi-15.ctv$LR•IPV4•25『线路24』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNJSMPP360.m3u8$LR•IPV4•25『线路24』 #EXTINF:-1 tvg-name="湖南经视" group-title="湖南",湖南经视 http://36.137.183.45:1100/difang/hunan/hunan.php?id=hnjs$LR•IPV4•25『线路25』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDSJMPP360.m3u8$LR•IPV4•23『线路1』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-2.m3u8$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-2.m3u8$LR•IPV4•23『线路2』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-14.ctv$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-14.ctv$LR•IPV4•23『线路3』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-12.m3u8$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-12.m3u8$LR•IPV4•23『线路4』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9007&tk=23a9aca1f79f$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9007&tk=23a9aca1f79f$LR•IPV4•23『线路5』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-10.ctv$LR•IPV4•23『线路5』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-10.ctv$LR•IPV4•23『线路6』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-11.m3u8$LR•IPV4•23『线路6』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-11.m3u8$LR•IPV4•23『线路7』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-3.m3u8$LR•IPV4•23『线路7』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-3.m3u8$LR•IPV4•23『线路8』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-8.m3u8$LR•IPV4•23『线路8』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-8.m3u8$LR•IPV4•23『线路9』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-gao-qing-1.m3u8$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-gao-qing-1.m3u8$LR•IPV4•23『线路10』 +http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hndsj$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hndsj$LR•IPV4•23『线路11』 +http://php.jdshipin.com:8880/iptv.php?id=hndsj$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -http://php.jdshipin.com:8880/iptv.php?id=hndsj$LR•IPV4•23『线路12』 +http://175.155.106.72:89/live1/live1.m3u8?zsicd 72.会东新闻$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -http://175.155.106.72:89/live1/live1.m3u8?zsicd 72.会东新闻$LR•IPV4•23『线路13』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-5.m3u8$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-5.m3u8$LR•IPV4•23『线路14』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-4.m3u8$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-4.m3u8$LR•IPV4•23『线路15』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-6.m3u8$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-6.m3u8$LR•IPV4•23『线路16』 +http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNDSJMPP360.m3u8$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNDSJMPP360.m3u8$LR•IPV4•23『线路17』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-15.m3u8$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-15.m3u8$LR•IPV4•23『线路18』 +http://www.peanutbar.cn:8099/tsfile/live/1004_1.m3u8?key=txiptv$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -http://www.peanutbar.cn:8099/tsfile/live/1004_1.m3u8?key=txiptv$LR•IPV4•23『线路19』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-1.m3u8$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-1.m3u8$LR•IPV4•23『线路20』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-7.m3u8$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-7.m3u8$LR•IPV4•23『线路21』 +https://stream1.freetv.fun/hu-nan-dian-shi-ju-9.m3u8$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 -https://stream1.freetv.fun/hu-nan-dian-shi-ju-9.m3u8$LR•IPV4•23『线路22』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDSJMPP360.m3u8$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-name="湖南电视剧" group-title="湖南",湖南电视剧 http://36.137.183.45:1100/difang/hunan/hunan.php?id=hndsj$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDYMPP360.m3u8$LR•IPV4•24『线路1』 +https://stream1.freetv.fun/hu-nan-dian-ying-2.m3u8$LR•IPV4•24『线路1』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-2.m3u8$LR•IPV4•24『线路2』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3631&tk=23a9aca1f79f$LR•IPV4•24『线路2』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3631&tk=23a9aca1f79f$LR•IPV4•24『线路3』 +https://stream1.freetv.fun/hu-nan-dian-ying-4.m3u8$LR•IPV4•24『线路3』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-4.m3u8$LR•IPV4•24『线路4』 +https://stream1.freetv.fun/hu-nan-dian-ying-3.m3u8$LR•IPV4•24『线路4』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-3.m3u8$LR•IPV4•24『线路5』 +https://stream1.freetv.fun/hu-nan-dian-ying-5.m3u8$LR•IPV4•24『线路5』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-5.m3u8$LR•IPV4•24『线路6』 +https://stream1.freetv.fun/hu-nan-dian-ying-13.m3u8$LR•IPV4•24『线路6』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-13.m3u8$LR•IPV4•24『线路7』 +https://stream1.freetv.fun/hu-nan-dian-ying-9.m3u8$LR•IPV4•24『线路7』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-9.m3u8$LR•IPV4•24『线路8』 +http://php.jdshipin.com:8880/iptv.php$LR•IPV4•24『线路8』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -http://php.jdshipin.com:8880/iptv.php$LR•IPV4•24『线路9』 +https://stream1.freetv.fun/hu-nan-dian-ying-15.m3u8$LR•IPV4•24『线路9』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-15.m3u8$LR•IPV4•24『线路10』 +https://stream1.freetv.fun/hu-nan-dian-ying-14.m3u8$LR•IPV4•24『线路10』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-14.m3u8$LR•IPV4•24『线路11』 +https://stream1.freetv.fun/hu-nan-dian-ying-12.m3u8$LR•IPV4•24『线路11』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-12.m3u8$LR•IPV4•24『线路12』 +https://stream1.freetv.fun/hu-nan-dian-ying-2.ctv$LR•IPV4•24『线路12』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-2.ctv$LR•IPV4•24『线路13』 +https://stream1.freetv.fun/hu-nan-dian-ying-8.m3u8$LR•IPV4•24『线路13』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-8.m3u8$LR•IPV4•24『线路14』 +https://stream1.freetv.fun/hu-nan-dian-ying-10.m3u8$LR•IPV4•24『线路14』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-10.m3u8$LR•IPV4•24『线路15』 +http://www.peanutbar.cn:8099/tsfile/live/1001_1.m3u8?key=txiptv$LR•IPV4•24『线路15』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -http://www.peanutbar.cn:8099/tsfile/live/1001_1.m3u8?key=txiptv$LR•IPV4•24『线路16』 +https://stream1.freetv.fun/hu-nan-dian-ying-7.m3u8$LR•IPV4•24『线路16』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-7.m3u8$LR•IPV4•24『线路17』 +https://stream1.freetv.fun/hu-nan-dian-ying-6.m3u8$LR•IPV4•24『线路17』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-6.m3u8$LR•IPV4•24『线路18』 +http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNDYMPP360.m3u8$LR•IPV4•24『线路18』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNDYMPP360.m3u8$LR•IPV4•24『线路19』 +https://stream1.freetv.fun/hu-nan-dian-ying-17.ctv$LR•IPV4•24『线路19』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-17.ctv$LR•IPV4•24『线路20』 +http://116.128.242.83:9901/tsfile/live/1009_1.m3u8$LR•IPV4•24『线路20』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -http://116.128.242.83:9901/tsfile/live/1009_1.m3u8$LR•IPV4•24『线路21』 +http://218.77.84.102:85/tsfile/live/149/2005_1.m3u8?key=txiptv$LR•IPV4•24『线路21』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -http://218.77.84.102:85/tsfile/live/149/2005_1.m3u8?key=txiptv$LR•IPV4•24『线路22』 +https://stream1.freetv.fun/hu-nan-dian-ying-11.m3u8$LR•IPV4•24『线路22』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 -https://stream1.freetv.fun/hu-nan-dian-ying-11.m3u8$LR•IPV4•24『线路23』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDYMPP360.m3u8$LR•IPV4•24『线路23』 #EXTINF:-1 tvg-name="湖南电影" group-title="湖南",湖南电影 http://36.137.183.45:1100/difang/hunan/hunan.php?id=hndy$LR•IPV4•24『线路24』 #EXTINF:-1 tvg-name="湖南爱晚" group-title="湖南",湖南爱晚 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNGGMPP360.m3u8$LR•IPV4•7『线路1』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7644&tk=23a9aca1f79f$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="湖南爱晚" group-title="湖南",湖南爱晚 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7644&tk=23a9aca1f79f$LR•IPV4•7『线路2』 +http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnaw$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="湖南爱晚" group-title="湖南",湖南爱晚 -http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnaw$LR•IPV4•7『线路3』 +http://php.jdshipin.com:8880/iptv.php?id=hngg$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="湖南爱晚" group-title="湖南",湖南爱晚 -http://php.jdshipin.com:8880/iptv.php?id=hngg$LR•IPV4•7『线路4』 +http://p2.vzan.com/527645544/149039617847513156/live.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-name="湖南爱晚" group-title="湖南",湖南爱晚 -http://p2.vzan.com/527645544/149039617847513156/live.m3u8$LR•IPV4•7『线路5』 +http://www.peanutbar.cn:8099/tsfile/live/1003_1.m3u8?key=txiptv$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-name="湖南爱晚" group-title="湖南",湖南爱晚 -http://www.peanutbar.cn:8099/tsfile/live/1003_1.m3u8?key=txiptv$LR•IPV4•7『线路6』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNGGMPP360.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-name="湖南爱晚" group-title="湖南",湖南爱晚 http://36.137.183.45:1100/difang/hunan/hunan.php?id=hnaw$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="湖南教育" group-title="湖南",湖南教育 @@ -7706,95 +7710,95 @@ https://stream1.freetv.fun/hu-nan-jiao-yu-2.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-name="湖南教育" group-title="湖南",湖南教育 http://36.137.183.45:1100/difang/hunan/hunan.php?id=hnjy$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNYLMPP360.m3u8$LR•IPV4•28『线路1』 +https://stream1.freetv.fun/hu-nan-yu-le-11.m3u8$LR•IPV4•28『线路1』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-11.m3u8$LR•IPV4•28『线路2』 +https://stream1.freetv.fun/hu-nan-yu-le-gao-qing-1.m3u8$LR•IPV4•28『线路2』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-gao-qing-1.m3u8$LR•IPV4•28『线路3』 +https://stream1.freetv.fun/hu-nan-yu-le-16.m3u8$LR•IPV4•28『线路3』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-16.m3u8$LR•IPV4•28『线路4』 +https://stream1.freetv.fun/hu-nan-yu-le-15.m3u8$LR•IPV4•28『线路4』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-15.m3u8$LR•IPV4•28『线路5』 +http://116.128.243.121:85/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路5』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -http://116.128.243.121:85/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路6』 +https://stream1.freetv.fun/hu-nan-yu-le-gao-qing-3.m3u8$LR•IPV4•28『线路6』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-gao-qing-3.m3u8$LR•IPV4•28『线路7』 +https://stream1.freetv.fun/hu-nan-yu-le-2.m3u8$LR•IPV4•28『线路7』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-2.m3u8$LR•IPV4•28『线路8』 +https://stream1.freetv.fun/hu-nan-yu-le-9.ctv$LR•IPV4•28『线路8』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-9.ctv$LR•IPV4•28『线路9』 +https://stream1.freetv.fun/hu-nan-yu-le-7.m3u8$LR•IPV4•28『线路9』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-7.m3u8$LR•IPV4•28『线路10』 +https://stream1.freetv.fun/hu-nan-yu-le-10.m3u8$LR•IPV4•28『线路10』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-10.m3u8$LR•IPV4•28『线路11』 +https://stream1.freetv.fun/hu-nan-yu-le-6.m3u8$LR•IPV4•28『线路11』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-6.m3u8$LR•IPV4•28『线路12』 +https://stream1.freetv.fun/hu-nan-yu-le-16.ctv$LR•IPV4•28『线路12』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-16.ctv$LR•IPV4•28『线路13』 +https://stream1.freetv.fun/hu-nan-yu-le-13.m3u8$LR•IPV4•28『线路13』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-13.m3u8$LR•IPV4•28『线路14』 +http://116.128.242.83:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路14』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -http://116.128.242.83:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路15』 +https://stream1.freetv.fun/hu-nan-yu-le-3.m3u8$LR•IPV4•28『线路15』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-3.m3u8$LR•IPV4•28『线路16』 +https://stream1.freetv.fun/hu-nan-yu-le-4.m3u8$LR•IPV4•28『线路16』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-4.m3u8$LR•IPV4•28『线路17』 +https://stream1.freetv.fun/hu-nan-yu-le-12.m3u8$LR•IPV4•28『线路17』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-12.m3u8$LR•IPV4•28『线路18』 +https://stream1.freetv.fun/hu-nan-yu-le-5.m3u8$LR•IPV4•28『线路18』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-5.m3u8$LR•IPV4•28『线路19』 +http://www.peanutbar.cn:8099/tsfile/live/1000_1.m3u8?key=txiptv$LR•IPV4•28『线路19』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -http://www.peanutbar.cn:8099/tsfile/live/1000_1.m3u8?key=txiptv$LR•IPV4•28『线路20』 +http://jf.jxx2023.work:40446/tsfile/live/1011_1.m3u8?key=txiptv$LR•IPV4•28『线路20』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -http://jf.jxx2023.work:40446/tsfile/live/1011_1.m3u8?key=txiptv$LR•IPV4•28『线路21』 +https://stream1.freetv.fun/hu-nan-yu-le-1.m3u8$LR•IPV4•28『线路21』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-1.m3u8$LR•IPV4•28『线路22』 +http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnyl$LR•IPV4•28『线路22』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnyl$LR•IPV4•28『线路23』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6594&tk=23a9aca1f79f$LR•IPV4•28『线路23』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6594&tk=23a9aca1f79f$LR•IPV4•28『线路24』 +https://stream1.freetv.fun/hu-nan-yu-le-9.m3u8$LR•IPV4•28『线路24』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-9.m3u8$LR•IPV4•28『线路25』 +https://stream1.freetv.fun/hu-nan-yu-le-8.m3u8$LR•IPV4•28『线路25』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-8.m3u8$LR•IPV4•28『线路26』 +https://stream1.freetv.fun/hu-nan-yu-le-14.m3u8$LR•IPV4•28『线路26』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 -https://stream1.freetv.fun/hu-nan-yu-le-14.m3u8$LR•IPV4•28『线路27』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNYLMPP360.m3u8$LR•IPV4•28『线路27』 #EXTINF:-1 tvg-name="湖南娱乐" group-title="湖南",湖南娱乐 http://36.137.183.45:1100/difang/hunan/hunan.php?id=hnyl$LR•IPV4•28『线路28』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNGJMPP360.m3u8$LR•IPV4•18『线路1』 +https://stream1.freetv.fun/hu-nan-guo-ji-4.ctv$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-4.ctv$LR•IPV4•18『线路2』 +https://stream1.freetv.fun/hu-nan-guo-ji-3.m3u8$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-3.m3u8$LR•IPV4•18『线路3』 +https://stream1.freetv.fun/hu-nan-guo-ji-7.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-7.m3u8$LR•IPV4•18『线路4』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1138&tk=23a9aca1f79f$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1138&tk=23a9aca1f79f$LR•IPV4•18『线路5』 +http://113.241.133.180:85/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -http://113.241.133.180:85/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路6』 +https://stream1.freetv.fun/hu-nan-guo-ji-9.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-9.m3u8$LR•IPV4•18『线路7』 +https://stream1.freetv.fun/hu-nan-guo-ji-6.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-6.m3u8$LR•IPV4•18『线路8』 +https://stream1.freetv.fun/hu-nan-guo-ji-12.m3u8$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-12.m3u8$LR•IPV4•18『线路9』 +https://stream1.freetv.fun/hu-nan-guo-ji-2.m3u8$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-2.m3u8$LR•IPV4•18『线路10』 +http://www.peanutbar.cn:8099/tsfile/live/1007_1.m3u8?key=txiptv$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -http://www.peanutbar.cn:8099/tsfile/live/1007_1.m3u8?key=txiptv$LR•IPV4•18『线路11』 +https://stream1.freetv.fun/hu-nan-guo-ji-1.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-1.m3u8$LR•IPV4•18『线路12』 +http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNGJMPP360.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNGJMPP360.m3u8$LR•IPV4•18『线路13』 +https://stream1.freetv.fun/hu-nan-guo-ji-2.ctv$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-2.ctv$LR•IPV4•18『线路14』 +https://stream1.freetv.fun/hu-nan-guo-ji-4.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-4.m3u8$LR•IPV4•18『线路15』 +https://stream1.freetv.fun/hu-nan-guo-ji-10.m3u8$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-10.m3u8$LR•IPV4•18『线路16』 +https://stream1.freetv.fun/hu-nan-guo-ji-13.ctv$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 -https://stream1.freetv.fun/hu-nan-guo-ji-13.ctv$LR•IPV4•18『线路17』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNGJMPP360.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-name="湖南国际" group-title="湖南",湖南国际 http://36.137.183.45:1100/difang/hunan/hunan.php?id=hngj$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-name="湖南公共" group-title="湖南",湖南公共 @@ -7828,15 +7832,15 @@ http://ls.qingting.fm/live/4877.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="长沙新闻综合" group-title="湖南",长沙新闻综合 http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSXWMPP360.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="长沙新闻" group-title="湖南",长沙新闻 -http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_346.m3u8$LR•IPV4•2『线路1』 +https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSXWMPP360.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="长沙新闻" group-title="湖南",长沙新闻 -https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSXWMPP360.m3u8$LR•IPV4•2『线路2』 +http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_346.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="长沙政法" group-title="湖南",长沙政法 -http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•3『线路1』 +http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="长沙政法" group-title="湖南",长沙政法 https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSZFMPP360.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="长沙政法" group-title="湖南",长沙政法 -http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•3『线路3』 +http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="长沙女性" group-title="湖南",长沙女性 http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_349.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="衡阳新闻综合" group-title="湖南",衡阳新闻综合 @@ -8210,7 +8214,7 @@ http://dassby.qqff.top:99/live/辽宁生活/index.m3u8$LR•IPV4•2『线路1 #EXTINF:-1 tvg-name="辽宁生活" group-title="辽宁",辽宁生活 http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227319/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="辽宁经济" group-title="辽宁",辽宁经济 -http://120.76.248.139/live/bfgd/4200000480.m3u8$LR•IPV4•2『线路1』 +http://120.76.248.139/live/bfgd/4200000076.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="辽宁经济" group-title="辽宁",辽宁经济 http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227322/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="辽宁都市" group-title="辽宁",辽宁都市 @@ -8278,7 +8282,7 @@ https://hls-gateway.vpstv.net/streams/708829.m3u8$LR•IPV4•25『线路24』 #EXTINF:-1 tvg-name="汕头新闻综合" group-title="广东",汕头新闻综合 http://pr.19760929.xyz:9688/rtp/239.253.43.45:5146#http://129.211.14.102:25000/gdst.php?id=st1&token=www.9kds.com$LR•IPV4•25『线路25』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -http://gmxw.7766.org:808/hls/83/index.m3u8$LR•IPV4•126『线路1』 +http://183.11.239.36:808/hls/83/index.m3u8$LR•IPV4•126『线路1』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 https://stream1.freetv.fun/yan-dong-zhu-jiang-gao-qing-1.m3u8$LR•IPV4•126『线路2』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 @@ -8384,53 +8388,53 @@ https://stream1.freetv.fun/yan-dong-zhu-jiang-12.ctv$LR•IPV4•126『线路52 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 https://stream1.freetv.fun/yan-dong-zhu-jiang-13.ctv$LR•IPV4•126『线路53』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-7.ctv$LR•IPV4•126『线路54』 +http://gmxw.7766.org:808/hls/83/index.m3u8$LR•IPV4•126『线路54』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -http://121.11.160.7:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•126『线路55』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-7.ctv$LR•IPV4•126『线路55』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1463&tk=a0c4f6cfaba3$LR•IPV4•126『线路56』 +http://121.11.160.7:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•126『线路56』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://t.freetv.fun/live/yan-dong-zhu-jiang-5.m3u8$LR•IPV4•126『线路57』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1463&tk=a0c4f6cfaba3$LR•IPV4•126『线路57』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -http://67.220.71.199:2347/livehttpplay?channel_id=20144$LR•IPV4•126『线路58』 +https://t.freetv.fun/live/yan-dong-zhu-jiang-5.m3u8$LR•IPV4•126『线路58』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6340&tk=f6cc1e0a0e1a$LR•IPV4•126『线路59』 +http://67.220.71.199:2347/livehttpplay?channel_id=20144$LR•IPV4•126『线路59』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -http://qjrhc.jydjd.top:2911/udp/224.1.100.24:11111$LR•IPV4•126『线路60』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6340&tk=f6cc1e0a0e1a$LR•IPV4•126『线路60』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-25.ctv$LR•IPV4•126『线路61』 +http://qjrhc.jydjd.top:2911/udp/224.1.100.24:11111$LR•IPV4•126『线路61』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://iptv.catvod.com/catvod?id=%E5%B9%BF%E4%B8%9C%E7%8F%A0%E6%B1%9F&line=1$LR•IPV4•126『线路62』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-25.ctv$LR•IPV4•126『线路62』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://iptv.catvod.com/catvod?id=%E5%B9%BF%E4%B8%9C%E7%8F%A0%E6%B1%9F&line=2$LR•IPV4•126『线路63』 +https://iptv.catvod.com/catvod?id=%E5%B9%BF%E4%B8%9C%E7%8F%A0%E6%B1%9F&line=1$LR•IPV4•126『线路63』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-1.m3u8$LR•IPV4•126『线路64』 +https://iptv.catvod.com/catvod?id=%E5%B9%BF%E4%B8%9C%E7%8F%A0%E6%B1%9F&line=2$LR•IPV4•126『线路64』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://hk.188766.xyz/?migutoken=34467290b64f0850801479159893a4de&id=gd_gdzj&type=sz$LR•IPV4•126『线路65』 +https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-1.m3u8$LR•IPV4•126『线路65』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-16.ctv$LR•IPV4•126『线路66』 +https://hk.188766.xyz/?migutoken=34467290b64f0850801479159893a4de&id=gd_gdzj&type=sz$LR•IPV4•126『线路66』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-12.m3u8$LR•IPV4•126『线路67』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-16.ctv$LR•IPV4•126『线路67』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-1.ctv$LR•IPV4•126『线路68』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-12.m3u8$LR•IPV4•126『线路68』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -http://120.238.94.10:9901/tsfile/live/1009_1.m3u8$LR•IPV4•126『线路69』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-1.ctv$LR•IPV4•126『线路69』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-18.ctv$LR•IPV4•126『线路70』 +http://120.238.94.10:9901/tsfile/live/1009_1.m3u8$LR•IPV4•126『线路70』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -http://218.15.183.23:9901/tsfile/live/23009_1.m3u8$LR•IPV4•126『线路71』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-18.ctv$LR•IPV4•126『线路71』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://live.ximalaya.com/radio-first-page-app/live/252/64.m3u8?transcode=ts$LR•IPV4•126『线路72』 +http://218.15.183.23:9901/tsfile/live/23009_1.m3u8$LR•IPV4•126『线路72』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-24.ctv$LR•IPV4•126『线路73』 +https://live.ximalaya.com/radio-first-page-app/live/252/64.m3u8?transcode=ts$LR•IPV4•126『线路73』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-5.m3u8$LR•IPV4•126『线路74』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-24.ctv$LR•IPV4•126『线路74』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -https://stream1.freetv.fun/yan-dong-zhu-jiang-27.ctv$LR•IPV4•126『线路75』 +https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-5.m3u8$LR•IPV4•126『线路75』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -http://home.wwang.pw:35455/itv/2000000003000000033.m3u8?cdn=hnbblive$LR•IPV4•126『线路76』 +https://stream1.freetv.fun/yan-dong-zhu-jiang-27.ctv$LR•IPV4•126『线路76』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 -http://183.11.239.36:808/hls/83/index.m3u8$LR•IPV4•126『线路77』 +http://home.wwang.pw:35455/itv/2000000003000000033.m3u8?cdn=hnbblive$LR•IPV4•126『线路77』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 https://t.freetv.fun/live/yan-dong-zhu-jiang-8.m3u8$LR•IPV4•126『线路78』 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 @@ -8530,183 +8534,183 @@ http://223.111.150.99:6673/tv/mg4.php?id=广东珠江$LR•IPV4•126『线路12 #EXTINF:-1 tvg-name="广东珠江" group-title="广东",广东珠江 http://gxyd.484947.xyz/PLTV/77777777/224/3221225717/index.m3u8?servicetype=1$LR•IPV4•126『线路126』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://67.220.71.199:2347/livehttpplay?channel_id=12028$LR•IPV4•110『线路1』 +http://218.13.170.98:9901/tsfile/live/0019_1.m3u8$LR•IPV4•110『线路1』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6559&tk=a0c4f6cfaba3$LR•IPV4•110『线路2』 +http://67.220.71.199:2347/livehttpplay?channel_id=12028$LR•IPV4•110『线路2』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-6.ctv$LR•IPV4•110『线路3』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6559&tk=a0c4f6cfaba3$LR•IPV4•110『线路3』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://125.89.163.44:8888/udp/239.77.0.112:5146$LR•IPV4•110『线路4』 +https://stream1.freetv.fun/yan-dong-ti-yu-6.ctv$LR•IPV4•110『线路4』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-1.m3u8$LR•IPV4•110『线路5』 +http://125.89.163.44:8888/udp/239.77.0.112:5146$LR•IPV4•110『线路5』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://120.198.95.220:9901/tsfile/live/1010_1.m3u8?key=txiptv$LR•IPV4•110『线路6』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-1.m3u8$LR•IPV4•110『线路6』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-10.m3u8$LR•IPV4•110『线路7』 +http://120.198.95.220:9901/tsfile/live/1010_1.m3u8?key=txiptv$LR•IPV4•110『线路7』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://218.15.183.23:9901/tsfile/live/23012_1.m3u8$LR•IPV4•110『线路8』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-10.m3u8$LR•IPV4•110『线路8』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8718&tk=a0c4f6cfaba3$LR•IPV4•110『线路9』 +http://218.15.183.23:9901/tsfile/live/23012_1.m3u8$LR•IPV4•110『线路9』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-18.ctv$LR•IPV4•110『线路10』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8718&tk=a0c4f6cfaba3$LR•IPV4•110『线路10』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://120.238.94.10:9901/tsfile/live/1012_1.m3u8$LR•IPV4•110『线路11』 +https://stream1.freetv.fun/yan-dong-ti-yu-18.ctv$LR•IPV4•110『线路11』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-38.ctv$LR•IPV4•110『线路12』 +http://120.238.94.10:9901/tsfile/live/1012_1.m3u8$LR•IPV4•110『线路12』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-16.m3u8$LR•IPV4•110『线路13』 +https://stream1.freetv.fun/yan-dong-ti-yu-38.ctv$LR•IPV4•110『线路13』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://api2.52tb.xyz/info?id=413&token=20230218qkyjia$LR•IPV4•110『线路14』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-16.m3u8$LR•IPV4•110『线路14』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://epg.pw/stream/7b470f9fc5c305db0c8622117b7b25ca00eb35ba3e93e865cf0ff9df5c736681.m3u8$LR•IPV4•110『线路15』 +http://api2.52tb.xyz/info?id=413&token=20230218qkyjia$LR•IPV4•110『线路15』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://119.32.12.32:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路16』 +https://epg.pw/stream/7b470f9fc5c305db0c8622117b7b25ca00eb35ba3e93e865cf0ff9df5c736681.m3u8$LR•IPV4•110『线路16』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-33.ctv$LR•IPV4•110『线路17』 +http://119.32.12.32:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路17』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2030&tk=a0c4f6cfaba3$LR•IPV4•110『线路18』 +https://stream1.freetv.fun/yan-dong-ti-yu-33.ctv$LR•IPV4•110『线路18』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://183.237.95.108:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路19』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2030&tk=a0c4f6cfaba3$LR•IPV4•110『线路19』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://183.11.239.36:808/hls/2/index.m3u8$LR•IPV4•110『线路20』 +http://183.237.95.108:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路20』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-14.ctv$LR•IPV4•110『线路21』 +http://183.11.239.36:808/hls/2/index.m3u8$LR•IPV4•110『线路21』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路22』 +https://stream1.freetv.fun/yan-dong-ti-yu-14.ctv$LR•IPV4•110『线路22』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://116.77.239.26:44300/tsfile/live/0124_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路23』 +https://stream1.freetv.fun/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路23』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-39.ctv$LR•IPV4•110『线路24』 +http://116.77.239.26:44300/tsfile/live/0124_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路24』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-12.ctv$LR•IPV4•110『线路25』 +https://stream1.freetv.fun/yan-dong-ti-yu-39.ctv$LR•IPV4•110『线路25』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-10.ctv$LR•IPV4•110『线路26』 +https://stream1.freetv.fun/yan-dong-ti-yu-12.ctv$LR•IPV4•110『线路26』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://api3.52tb.xyz/info?id=413&token=20221127jxwhhemby$LR•IPV4•110『线路27』 +https://stream1.freetv.fun/yan-dong-ti-yu-10.ctv$LR•IPV4•110『线路27』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-10.m3u8$LR•IPV4•110『线路28』 +http://api3.52tb.xyz/info?id=413&token=20221127jxwhhemby$LR•IPV4•110『线路28』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-23.ctv$LR•IPV4•110『线路29』 +https://t.freetv.fun/live/yan-dong-ti-yu-10.m3u8$LR•IPV4•110『线路29』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gdty$LR•IPV4•110『线路30』 +https://stream1.freetv.fun/yan-dong-ti-yu-23.ctv$LR•IPV4•110『线路30』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://bak.dou.ddns-ip.net/api.php?n=cctvxxx&id=t3ucOH&tk=zUr4K92Dl6kh$LR•IPV4•110『线路31』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gdty$LR•IPV4•110『线路31』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路32』 +http://bak.dou.ddns-ip.net/api.php?n=cctvxxx&id=t3ucOH&tk=zUr4K92Dl6kh$LR•IPV4•110『线路32』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路33』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路33』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://php.jdshipin.com/TVOD/iptv.php?id=gdty$LR•IPV4•110『线路34』 +https://stream1.freetv.fun/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路34』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-3.m3u8$LR•IPV4•110『线路35』 +http://php.jdshipin.com/TVOD/iptv.php?id=gdty$LR•IPV4•110『线路35』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-16.ctv$LR•IPV4•110『线路36』 +https://stream1.freetv.fun/yan-dong-ti-yu-3.m3u8$LR•IPV4•110『线路36』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-7.ctv$LR•IPV4•110『线路37』 +https://stream1.freetv.fun/yan-dong-ti-yu-16.ctv$LR•IPV4•110『线路37』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-15.m3u8$LR•IPV4•110『线路38』 +https://stream1.freetv.fun/yan-dong-ti-yu-7.ctv$LR•IPV4•110『线路38』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-6.m3u8$LR•IPV4•110『线路39』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-15.m3u8$LR•IPV4•110『线路39』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://222.128.55.152:9080/live/gdty.m3u8$LR•IPV4•110『线路40』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-6.m3u8$LR•IPV4•110『线路40』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://38.75.136.137:98/gslb/dsdqpub/gdty.m3u8?auth=testpub$LR•IPV4•110『线路41』 +http://222.128.55.152:9080/live/gdty.m3u8$LR•IPV4•110『线路41』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://120.77.205.62:8087/rtp/239.77.1.97:5146$LR•IPV4•110『线路42』 +http://38.75.136.137:98/gslb/dsdqpub/gdty.m3u8?auth=testpub$LR•IPV4•110『线路42』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://api.mytv666.top/api/hk.php?id=3635306561306164626438636438373731346432656366353839663866326232267469643d74762669643d3131$LR•IPV4•110『线路43』 +http://120.77.205.62:8087/rtp/239.77.1.97:5146$LR•IPV4•110『线路43』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-24.ctv$LR•IPV4•110『线路44』 +http://api.mytv666.top/api/hk.php?id=3635306561306164626438636438373731346432656366353839663866326232267469643d74762669643d3131$LR•IPV4•110『线路44』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://67.220.71.199:2347/livehttpplay?channel_id=20130$LR•IPV4•110『线路45』 +https://stream1.freetv.fun/yan-dong-ti-yu-24.ctv$LR•IPV4•110『线路45』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路46』 +http://67.220.71.199:2347/livehttpplay?channel_id=20130$LR•IPV4•110『线路46』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://api2.52tb.xyz/info?id=414&token=20230218jsyklh$LR•IPV4•110『线路47』 +https://t.freetv.fun/live/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路47』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-39.m3u8$LR•IPV4•110『线路48』 +http://api2.52tb.xyz/info?id=414&token=20230218jsyklh$LR•IPV4•110『线路48』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-26.m3u8$LR•IPV4•110『线路49』 +https://stream1.freetv.fun/yan-dong-ti-yu-39.m3u8$LR•IPV4•110『线路49』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://tv.cdn.com.mp/live/gdty/stream.m3u8$LR•IPV4•110『线路50』 +https://stream1.freetv.fun/yan-dong-ti-yu-26.m3u8$LR•IPV4•110『线路50』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-7.m3u8$LR•IPV4•110『线路51』 +https://tv.cdn.com.mp/live/gdty/stream.m3u8$LR•IPV4•110『线路51』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://119.32.12.17:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路52』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-7.m3u8$LR•IPV4•110『线路52』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-17.m3u8$LR•IPV4•110『线路53』 +http://119.32.12.17:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路53』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-30.ctv$LR•IPV4•110『线路54』 +https://stream1.freetv.fun/yan-dong-ti-yu-17.m3u8$LR•IPV4•110『线路54』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-27.m3u8$LR•IPV4•110『线路55』 +https://stream1.freetv.fun/yan-dong-ti-yu-30.ctv$LR•IPV4•110『线路55』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-26.ctv$LR•IPV4•110『线路56』 +https://stream1.freetv.fun/yan-dong-ti-yu-27.m3u8$LR•IPV4•110『线路56』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-8.m3u8$LR•IPV4•110『线路57』 +https://stream1.freetv.fun/yan-dong-ti-yu-26.ctv$LR•IPV4•110『线路57』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://120.198.101.106:9901/tsfile/live/1012_1.m3u8?key=txiptv$LR•IPV4•110『线路58』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-8.m3u8$LR•IPV4•110『线路58』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://67.220.71.199:2347/livehttpplay?channel_id=30031$LR•IPV4•110『线路59』 +http://120.198.101.106:9901/tsfile/live/1012_1.m3u8?key=txiptv$LR•IPV4•110『线路59』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://r.jdshipin.com/LiYdg$LR•IPV4•110『线路60』 +http://67.220.71.199:2347/livehttpplay?channel_id=30031$LR•IPV4•110『线路60』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-11.ctv$LR•IPV4•110『线路61』 +http://r.jdshipin.com/LiYdg$LR•IPV4•110『线路61』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-34.ctv$LR•IPV4•110『线路62』 +https://stream1.freetv.fun/yan-dong-ti-yu-11.ctv$LR•IPV4•110『线路62』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-12.m3u8$LR•IPV4•110『线路63』 +https://stream1.freetv.fun/yan-dong-ti-yu-34.ctv$LR•IPV4•110『线路63』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-21.m3u8$LR•IPV4•110『线路64』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-12.m3u8$LR•IPV4•110『线路64』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing.m3u8$LR•IPV4•110『线路65』 +https://stream1.freetv.fun/yan-dong-ti-yu-21.m3u8$LR•IPV4•110『线路65』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://qjrhc.jydjd.top:2911/udp/224.1.100.33:11111$LR•IPV4•110『线路66』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing.m3u8$LR•IPV4•110『线路66』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路67』 +http://qjrhc.jydjd.top:2911/udp/224.1.100.33:11111$LR•IPV4•110『线路67』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-24.m3u8$LR•IPV4•110『线路68』 +https://stream1.freetv.fun/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路68』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-4.m3u8$LR•IPV4•110『线路69』 +https://stream1.freetv.fun/yan-dong-ti-yu-24.m3u8$LR•IPV4•110『线路69』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-19.m3u8$LR•IPV4•110『线路70』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-4.m3u8$LR•IPV4•110『线路70』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://hls-gateway.vpstv.net/streams/476954.m3u8$LR•IPV4•110『线路71』 +https://stream1.freetv.fun/yan-dong-ti-yu-19.m3u8$LR•IPV4•110『线路71』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-30.m3u8$LR•IPV4•110『线路72』 +https://hls-gateway.vpstv.net/streams/476954.m3u8$LR•IPV4•110『线路72』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://120.77.205.62:8087/rtp/239.77.0.168:5146$LR•IPV4•110『线路73』 +https://stream1.freetv.fun/yan-dong-ti-yu-30.m3u8$LR•IPV4•110『线路73』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-11.m3u8$LR•IPV4•110『线路74』 +http://120.77.205.62:8087/rtp/239.77.0.168:5146$LR•IPV4•110『线路74』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-4.m3u8$LR•IPV4•110『线路75』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-11.m3u8$LR•IPV4•110『线路75』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-35.ctv$LR•IPV4•110『线路76』 +https://stream1.freetv.fun/yan-dong-ti-yu-4.m3u8$LR•IPV4•110『线路76』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-3.m3u8$LR•IPV4•110『线路77』 +https://stream1.freetv.fun/yan-dong-ti-yu-35.ctv$LR•IPV4•110『线路77』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://php.jdshipin.com/PLTV/iptv.php?id=gdty$LR•IPV4•110『线路78』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-3.m3u8$LR•IPV4•110『线路78』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路79』 +http://php.jdshipin.com/PLTV/iptv.php?id=gdty$LR•IPV4•110『线路79』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://183.3.134.56:9901/tsfile/live/0142_1.m3u8$LR•IPV4•110『线路80』 +https://t.freetv.fun/live/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路80』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://api2.52tb.xyz/info?id=414&token=20230218qkyjia$LR•IPV4•110『线路81』 +http://183.3.134.56:9901/tsfile/live/0142_1.m3u8$LR•IPV4•110『线路81』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://cdn2.163189.xyz/live/gdty/stream.m3u8$LR•IPV4•110『线路82』 +http://api2.52tb.xyz/info?id=414&token=20230218qkyjia$LR•IPV4•110『线路82』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-5.m3u8$LR•IPV4•110『线路83』 +http://cdn2.163189.xyz/live/gdty/stream.m3u8$LR•IPV4•110『线路83』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-17.ctv$LR•IPV4•110『线路84』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-5.m3u8$LR•IPV4•110『线路84』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-13.m3u8$LR•IPV4•110『线路85』 +https://stream1.freetv.fun/yan-dong-ti-yu-17.ctv$LR•IPV4•110『线路85』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-8.ctv$LR•IPV4•110『线路86』 +https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-13.m3u8$LR•IPV4•110『线路86』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://stream1.freetv.fun/yan-dong-ti-yu-2.m3u8$LR•IPV4•110『线路87』 +https://stream1.freetv.fun/yan-dong-ti-yu-8.ctv$LR•IPV4•110『线路87』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -https://t.freetv.fun/live/yan-dong-ti-yu-15.m3u8$LR•IPV4•110『线路88』 +https://stream1.freetv.fun/yan-dong-ti-yu-2.m3u8$LR•IPV4•110『线路88』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://218.13.170.98:9901/tsfile/live/0019_1.m3u8$LR•IPV4•110『线路89』 +https://t.freetv.fun/live/yan-dong-ti-yu-15.m3u8$LR•IPV4•110『线路89』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 http://120.77.205.62:8087/rtp/239.77.0.112:5146$LR•IPV4•110『线路90』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 @@ -8744,9 +8748,9 @@ http://qjrhc.jydjd.top:2911/udp/224.1.100.34:11111$LR•IPV4•110『线路106 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 https://stream1.freetv.fun/yan-dong-ti-yu-5.ctv$LR•IPV4•110『线路107』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://111.221.137.234:44330/tsfile/live/0124_1.m3u8$LR•IPV4•110『线路108』 +http://bxtv.3a.ink/api.php?id=gdty$LR•IPV4•110『线路108』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 -http://bxtv.3a.ink/api.php?id=gdty$LR•IPV4•110『线路109』 +http://111.221.137.234:44330/tsfile/live/0124_1.m3u8$LR•IPV4•110『线路109』 #EXTINF:-1 tvg-name="广东体育" group-title="广东",广东体育 http://223.111.150.99:6673/tv/mg4.php?id=广东体育$LR•IPV4•110『线路110』 #EXTINF:-1 tvg-name="广东民生" group-title="广东",广东民生 @@ -8860,17 +8864,17 @@ http://223.111.150.99:6673/tv/mg4.php?id=广东民生$LR•IPV4•54『线路54 #EXTINF:-1 tvg-name="大湾区卫视" group-title="广东",大湾区卫视 http://222.128.55.152:9080/live/dwq.m3u8$LR•IPV4•22『线路1』 #EXTINF:-1 tvg-name="大湾区卫视" group-title="广东",大湾区卫视 -http://192.151.150.154/live/nfws.m3u8$LR•IPV4•22『线路2』 +http://43.251.226.89:8080/play/39.m3u8$LR•IPV4•22『线路2』 #EXTINF:-1 tvg-name="大湾区卫视" group-title="广东",大湾区卫视 -http://101.6.130.52:1234/608917627$LR•IPV4•22『线路3』 +p3p://167.114.175.6:55331/63ec48e000076bf6e43672044d3841bb$LR•IPV4•22『线路3』 #EXTINF:-1 tvg-name="大湾区卫视" group-title="广东",大湾区卫视 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000011619&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路4』 +http://192.151.150.154/live/nfws.m3u8$LR•IPV4•22『线路4』 #EXTINF:-1 tvg-name="大湾区卫视" group-title="广东",大湾区卫视 -http://gslbserv.itv.cmvideo.cn:80/5000000011000265001/1.m3u8?channel-id=ystenlive&Contentid=1000000002000011619&livemode=1&stbId=toShengfen&mode=1&$LR•IPV4•22『线路5』 +http://101.6.130.52:1234/608917627$LR•IPV4•22『线路5』 #EXTINF:-1 tvg-name="大湾区卫视" group-title="广东",大湾区卫视 -http://43.251.226.89:8080/play/39.m3u8$LR•IPV4•22『线路6』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000011619&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路6』 #EXTINF:-1 tvg-name="大湾区卫视" group-title="广东",大湾区卫视 -p3p://167.114.175.6:55331/63ec48e000076bf6e43672044d3841bb$LR•IPV4•22『线路7』 +http://gslbserv.itv.cmvideo.cn:80/5000000011000265001/1.m3u8?channel-id=ystenlive&Contentid=1000000002000011619&livemode=1&stbId=toShengfen&mode=1&$LR•IPV4•22『线路7』 #EXTINF:-1 tvg-name="大湾区卫视" group-title="广东",大湾区卫视 https://live.chinacert.cftest5.cn/cnmg/live/608917627$LR•IPV4•22『线路8』 #EXTINF:-1 tvg-name="大湾区卫视" group-title="广东",大湾区卫视 @@ -9320,11 +9324,11 @@ https://stream1.freetv.fun/jiang-men-zong-he-13.ctv$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-name="江门综合" group-title="广东",江门综合 https://stream1.freetv.fun/jiang-men-zong-he-7.ctv$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-name="河源综合" group-title="广东",河源综合 -https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路1』 +http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-name="河源综合" group-title="广东",河源综合 -http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路2』 +http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-name="河源综合" group-title="广东",河源综合 -http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路3』 +https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-name="河源综合" group-title="广东",河源综合 http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-name="河源综合" group-title="广东",河源综合 @@ -9642,95 +9646,95 @@ http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0017&tk=a0c4f6cfaba3$LR•IPV4•7『 #EXTINF:-1 tvg-name="上海外语" group-title="上海",上海外语 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6608&tk=e503191f8e20$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•45『线路1』 +http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•45『线路1』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•45『线路2』 +https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•45『线路2』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•45『线路3』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•45『线路3』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•45『线路4』 +http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路4』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路5』 +https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•45『线路5』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•45『线路6』 +https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•45『线路6』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•45『线路7』 +http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•45『线路7』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•45『线路8』 +https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•45『线路8』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•45『线路9』 +https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•45『线路9』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•45『线路10』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•45『线路10』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•45『线路11』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•45『线路11』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•45『线路12』 +https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•45『线路12』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•45『线路13』 +https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•45『线路13』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•45『线路14』 +https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•45『线路14』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•45『线路15』 +https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•45『线路15』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•45『线路16』 +http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•45『线路16』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•45『线路17』 +https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•45『线路17』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•45『线路18』 +https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•45『线路18』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•45『线路19』 +https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•45『线路19』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•45『线路20』 +https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•45『线路20』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•45『线路21』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•45『线路21』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•45『线路22』 +https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•45『线路22』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•45『线路23』 +http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路23』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路24』 +https://live.264788.xyz/channel/wuxingtiyu?streamid=86a2efa09c42c8f425082fc405958019&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路24』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://live.264788.xyz/channel/wuxingtiyu?streamid=86a2efa09c42c8f425082fc405958019&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路25』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•45『线路25』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•45『线路26』 +https://live.264788.xyz/channel/wuxingtiyu?streamid=5d17da390f8e4805aae4a71868d4ef6c&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路26』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://live.264788.xyz/channel/wuxingtiyu?streamid=5d17da390f8e4805aae4a71868d4ef6c&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路27』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•45『线路27』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•45『线路28』 +https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•45『线路28』 #EXTINF:-1 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•45『线路29』 +https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•45『线路29』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•45『线路30』 +http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路30』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路31』 +https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•45『线路31』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•45『线路32』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•45『线路32』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•45『线路33』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•45『线路33』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•45『线路34』 +https://live.264788.xyz/channel/wuxingtiyu?streamid=574ea4050333d6418edfd71d0df52f43&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路34』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://live.264788.xyz/channel/wuxingtiyu?streamid=574ea4050333d6418edfd71d0df52f43&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路35』 +https://live.264788.xyz/channel/wuxingtiyu?streamid=bacdc88caa25b71b955f471072f07349&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路35』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://live.264788.xyz/channel/wuxingtiyu?streamid=bacdc88caa25b71b955f471072f07349&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路36』 +http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•45『线路36』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•45『线路37』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•45『线路37』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•45『线路38』 +https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•45『线路38』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•45『线路39』 +https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•45『线路39』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•45『线路40』 +https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•45『线路40』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•45『线路41』 +http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•45『线路41』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•45『线路42』 +https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•45『线路42』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•45『线路43』 +https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•45『线路43』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•45『线路44』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•45『线路44』 #EXTINF:-1 tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•45『线路45』 +http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•45『线路45』 #EXTINF:-1 tvg-name="东方影视" group-title="上海",东方影视 https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-5.m3u8$LR•IPV4•47『线路1』 #EXTINF:-1 tvg-name="东方影视" group-title="上海",东方影视 @@ -10002,723 +10006,725 @@ https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-1.m3u8$LR•IPV4•10 #EXTINF:-1 tvg-name="上海纪实" group-title="上海",上海纪实 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5196&tk=23a9aca1f79f$LR•IPV4•10『线路10』 #EXTINF:-1 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•309『线路1』 +https://44911.hlsplay.aodianyun.com/tv_radio_44911/tv_channel_1796.m3u8?auth_key=4830573978-0-0-92824c2c03f95906a3c49a4aa28f1709&extra_key=Yc1XsmxOKy2UBoPM4Wy5vCPsEYqnj06taCR2SRB2Xrg2w28NPilH03KdIbbM5wgSql-VBohSnoO9AOKl94q2t2DWMftz-XB-2qUX-UjXcS80StcSZahBFjrKLivXaRjiY5r2NOMKWMKFbv-S0Bz2G6iEXgCK8yGjtrFHDcPfAQEE0pvXq0Bwy34b7We8zARN&ali_ffmpeg_version=mpengine$LR•IPV4•310『线路1』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8$LR•IPV4•309『线路2』 +http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•310『线路2』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•309『线路3』 +http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8$LR•IPV4•310『线路3』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•309『线路4』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•310『线路4』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•309『线路5』 +http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•310『线路5』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•309『线路6』 +http://47.104.178.59:3566/651632657$LR•IPV4•310『线路6』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8$LR•IPV4•309『线路7』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•310『线路7』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•309『线路8』 +https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•310『线路8』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•309『线路9』 +http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260701080235&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260701080235&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=b17d9c71293c0983cb3d364149c676c5&sv=10004&ct=android$LR•IPV4•310『线路9』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://221.5.213.4:30000/1111.m3u8$LR•IPV4•309『线路10』 +https://t.freetv.fun/live/shang-hai-xin-wen-zong-he.php$LR•IPV4•310『线路10』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•309『线路11』 +https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•310『线路11』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•309『线路12』 +https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•310『线路12』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•309『线路13』 +http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•310『线路13』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•309『线路14』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•310『线路14』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•309『线路15』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•310『线路15』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•309『线路16』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•310『线路16』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•309『线路17』 +http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•310『线路17』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•309『线路18』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•310『线路18』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•309『线路19』 +https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•310『线路19』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•309『线路20』 +http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260701040231&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260701040231&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=4cc2d5d47f9596bd20533fc8d57e53e4&sv=10004&ct=android$LR•IPV4•310『线路20』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•309『线路21』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•310『线路21』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•309『线路22』 +https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=6f4b191d0930fafab8274665578e1df8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•310『线路22』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•309『线路23』 +https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•310『线路23』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•309『线路24』 +http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•310『线路24』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•309『线路25』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•310『线路25』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•309『线路26』 +https://iptv.catvod.com/live.php?id=%E4%B8%8A%E6%B5%B7%E6%96%B0%E9%97%BB%E7%BB%BC%E5%90%88&line=1$LR•IPV4•310『线路26』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•309『线路27』 +http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•310『线路27』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•309『线路28』 +https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•310『线路28』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•309『线路29』 +https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•310『线路29』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.104.178.59:3566/651632657$LR•IPV4•309『线路30』 +https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•310『线路30』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•309『线路31』 +https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=a064629942f561cf9f5a930648802197&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•310『线路31』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•309『线路32』 +http://123.113.205.253:3000/651632657$LR•IPV4•310『线路32』 #EXTINF:-1 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=20260701080235&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260701080235&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=b17d9c71293c0983cb3d364149c676c5&sv=10004&ct=android$LR•IPV4•309『线路33』 +http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•310『线路33』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://t.freetv.fun/live/shang-hai-xin-wen-zong-he.php$LR•IPV4•309『线路34』 +https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•310『线路34』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•309『线路35』 +https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•310『线路35』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•309『线路36』 +http://115.190.247.176:1111/651632657$LR•IPV4•310『线路36』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•309『线路37』 +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•310『线路37』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•309『线路38』 +https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=c0bc623be007e5295d462465c7bd7bd7&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•310『线路38』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•309『线路39』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•310『线路39』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•309『线路40』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•310『线路40』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•309『线路41』 +https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•310『线路41』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•309『线路42』 +https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•310『线路42』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•309『线路43』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•310『线路43』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260701040231&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260701040231&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=4cc2d5d47f9596bd20533fc8d57e53e4&sv=10004&ct=android$LR•IPV4•309『线路44』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•310『线路44』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•309『线路45』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•310『线路45』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=6f4b191d0930fafab8274665578e1df8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•309『线路46』 +https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•310『线路46』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•309『线路47』 +https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•310『线路47』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•309『线路48』 +http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•310『线路48』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•309『线路49』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•310『线路49』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://iptv.catvod.com/live.php?id=%E4%B8%8A%E6%B5%B7%E6%96%B0%E9%97%BB%E7%BB%BC%E5%90%88&line=1$LR•IPV4•309『线路50』 +https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•310『线路50』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•309『线路51』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•310『线路51』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•309『线路52』 +https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•310『线路52』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•309『线路53』 +https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=b42305d47a7ea7de356f6b9953dd63fb&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•310『线路53』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•309『线路54』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•310『线路54』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=a064629942f561cf9f5a930648802197&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•309『线路55』 +https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•310『线路55』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://123.113.205.253:3000/651632657$LR•IPV4•309『线路56』 +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•310『线路56』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•309『线路57』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•310『线路57』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•309『线路58』 +https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•310『线路58』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•309『线路59』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•310『线路59』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.190.247.176:1111/651632657$LR•IPV4•309『线路60』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•310『线路60』 #EXTINF:-1 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•309『线路61』 +http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•310『线路61』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=c0bc623be007e5295d462465c7bd7bd7&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•309『线路62』 +http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•310『线路62』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•309『线路63』 +http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•310『线路63』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•309『线路64』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•310『线路64』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•309『线路65』 +https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•310『线路65』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•309『线路66』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•310『线路66』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•309『线路67』 +https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•310『线路67』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•309『线路68』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•310『线路68』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•309『线路69』 +https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•310『线路69』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•309『线路70』 +http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•310『线路70』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•309『线路71』 +http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•310『线路71』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•309『线路72』 +http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•310『线路72』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•309『线路73』 +http://channel.wcrmt.cn:80/nmip-media/channellive/channel105268/playlist.m3u8$LR•IPV4•310『线路73』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•309『线路74』 +http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•310『线路74』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•309『线路75』 +http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•310『线路75』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•309『线路76』 +http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•310『线路76』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=b42305d47a7ea7de356f6b9953dd63fb&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•309『线路77』 +https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•310『线路77』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•309『线路78』 +http://traffic.jbh.tjbh.com/live/bhtv10/playlist.m3u8$LR•IPV4•310『线路78』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•309『线路79』 +http://ls.qingting.fm/live/267.m3u8$LR•IPV4•310『线路79』 #EXTINF:-1 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•309『线路80』 +http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•310『线路80』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•309『线路81』 +https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&tpid=1516989100&type=0$LR•IPV4•310『线路81』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•309『线路82』 +https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•310『线路82』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•309『线路83』 +http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•310『线路83』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•309『线路84』 +https://stream.sun0769.com/dgrtv1/mp4tv1_800/index.m3u8$LR•IPV4•310『线路84』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•309『线路85』 +https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•310『线路85』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•309『线路86』 +http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•310『线路86』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•309『线路87』 +http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•310『线路87』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•309『线路88』 +http://cm-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•310『线路88』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•309『线路89』 +http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•310『线路89』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•309『线路90』 +https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•310『线路90』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•309『线路91』 +https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•310『线路91』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•309『线路92』 +https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•310『线路92』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•309『线路93』 +http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•310『线路93』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•309『线路94』 +http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•310『线路94』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•309『线路95』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8439&tk=a0c4f6cfaba3$LR•IPV4•310『线路95』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•309『线路96』 +http://58.254.14.61:808/hls/504/index.m3u8$LR•IPV4•310『线路96』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://channel.wcrmt.cn:80/nmip-media/channellive/channel105268/playlist.m3u8$LR•IPV4•309『线路97』 +https://stream1.freetv.fun/shan-wei-xin-wen-zong-he-3.ctv$LR•IPV4•310『线路97』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•309『线路98』 +https://stream1.freetv.fun/shan-wei-xin-wen-zong-he-2.m3u8$LR•IPV4•310『线路98』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://file.ysxtv.cn/cms/videos/nmip-media/channellive/channel4/playlist.m3u8?zsicd#rtmp://tv.mcrm.org.cn:1935/channellive/tv01$LR•IPV4•309『线路99』 +http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77bb6a7063c4cdea57f09ca22f9ef12-0-39c19a21f73b823db2150ea45b147eb2$LR•IPV4•310『线路99』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•309『线路100』 +http://play-sh13.quklive.com/live/1702360350551252.m3u8?auth_key=2037107484-800189c57a5a44d3b823b60cf84f6756-0-a6f6828a62d5c167cff5e68735fa0d39$LR•IPV4•310『线路100』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•309『线路101』 +https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•310『线路101』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://ls.qingting.fm/live/267.m3u8$LR•IPV4•309『线路102』 +https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•310『线路102』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•309『线路103』 +http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•310『线路103』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•309『线路104』 +http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•310『线路104』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•309『线路105』 +https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•310『线路105』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•309『线路106』 +https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•310『线路106』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream.sun0769.com/dgrtv1/mp4tv1_800/index.m3u8$LR•IPV4•309『线路107』 +http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•310『线路107』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•309『线路108』 +http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•310『线路108』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•309『线路109』 +http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•310『线路109』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•309『线路110』 +https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•310『线路110』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://zjtv-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•309『线路111』 +https://live.chinacert.cftest5.cn/cnmg/live/651632657$LR•IPV4•310『线路111』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•309『线路112』 +https://live.chinacert.cftest5.cn/cnmg/live/838109047$LR•IPV4•310『线路112』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•309『线路113』 +https://live.chinacert.cftest5.cn/cnmg/live/639731825$LR•IPV4•310『线路113』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•309『线路114』 +https://live.chinacert.cftest5.cn/cnmg/live/639731826$LR•IPV4•310『线路114』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•309『线路115』 +https://live.chinacert.cftest5.cn/cnmg/live/639731818$LR•IPV4•310『线路115』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•309『线路116』 +https://live.chinacert.cftest5.cn/cnmg/live/639731715$LR•IPV4•310『线路116』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•309『线路117』 +https://live.chinacert.cftest5.cn/cnmg/live/639731832$LR•IPV4•310『线路117』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8439&tk=a0c4f6cfaba3$LR•IPV4•309『线路118』 +https://live.chinacert.cftest5.cn/cnmg/live/639731747$LR•IPV4•310『线路118』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://58.254.14.61:808/hls/504/index.m3u8$LR•IPV4•309『线路119』 +https://live.chinacert.cftest5.cn/cnmg/live/955227979$LR•IPV4•310『线路119』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shan-wei-xin-wen-zong-he-3.ctv$LR•IPV4•309『线路120』 +https://live.chinacert.cftest5.cn/cnmg/live/955227985$LR•IPV4•310『线路120』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shan-wei-xin-wen-zong-he-2.m3u8$LR•IPV4•309『线路121』 +https://live.chinacert.cftest5.cn/cnmg/live/955227996$LR•IPV4•310『线路121』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77bb6a7063c4cdea57f09ca22f9ef12-0-39c19a21f73b823db2150ea45b147eb2$LR•IPV4•309『线路122』 +https://live.chinacert.cftest5.cn/cnmg/live/639737327$LR•IPV4•310『线路122』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://play-sh13.quklive.com/live/1702360350551252.m3u8?auth_key=2037107484-800189c57a5a44d3b823b60cf84f6756-0-a6f6828a62d5c167cff5e68735fa0d39$LR•IPV4•309『线路123』 +https://live.chinacert.cftest5.cn/cnmg/live/639731783$LR•IPV4•310『线路123』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://44911.hlsplay.aodianyun.com/tv_radio_44911/tv_channel_1796.m3u8?auth_key=4830573978-0-0-92824c2c03f95906a3c49a4aa28f1709&extra_key=Yc1XsmxOKy2UBoPM4Wy5vCPsEYqnj06taCR2SRB2Xrg2w28NPilH03KdIbbM5wgSql-VBohSnoO9AOKl94q2t2DWMftz-XB-2qUX-UjXcS80StcSZahBFjrKLivXaRjiY5r2NOMKWMKFbv-S0Bz2G6iEXgCK8yGjtrFHDcPfAQEE0pvXq0Bwy34b7We8zARN&ali_ffmpeg_version=mpengine$LR•IPV4•309『线路124』 +http://fn.gcl.de5.net:5908/gsh950428/651632657$LR•IPV4•310『线路124』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•309『线路125』 +http://fn.gcl.de5.net:5908/gsh950428/838109047$LR•IPV4•310『线路125』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•309『线路126』 +http://fn.gcl.de5.net:5908/gsh950428/639731825$LR•IPV4•310『线路126』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•309『线路127』 +http://fn.gcl.de5.net:5908/gsh950428/639731826$LR•IPV4•310『线路127』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•309『线路128』 +http://fn.gcl.de5.net:5908/gsh950428/639731818$LR•IPV4•310『线路128』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•309『线路129』 +http://fn.gcl.de5.net:5908/gsh950428/639731715$LR•IPV4•310『线路129』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•309『线路130』 +http://fn.gcl.de5.net:5908/gsh950428/639731832$LR•IPV4•310『线路130』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•309『线路131』 +http://fn.gcl.de5.net:5908/gsh950428/639731747$LR•IPV4•310『线路131』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•309『线路132』 +http://fn.gcl.de5.net:5908/gsh950428/955227979$LR•IPV4•310『线路132』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•309『线路133』 +http://fn.gcl.de5.net:5908/gsh950428/955227985$LR•IPV4•310『线路133』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/651632657$LR•IPV4•309『线路134』 +http://fn.gcl.de5.net:5908/gsh950428/955227996$LR•IPV4•310『线路134』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/838109047$LR•IPV4•309『线路135』 +http://fn.gcl.de5.net:5908/gsh950428/639737327$LR•IPV4•310『线路135』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/639731825$LR•IPV4•309『线路136』 +http://fn.gcl.de5.net:5908/gsh950428/639731783$LR•IPV4•310『线路136』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/639731826$LR•IPV4•309『线路137』 +http://wfenf.x3322.net:7788/651632657$LR•IPV4•310『线路137』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/639731818$LR•IPV4•309『线路138』 +http://wfenf.x3322.net:7788/838109047$LR•IPV4•310『线路138』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/639731715$LR•IPV4•309『线路139』 +http://wfenf.x3322.net:7788/639731825$LR•IPV4•310『线路139』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/639731832$LR•IPV4•309『线路140』 +http://wfenf.x3322.net:7788/639731826$LR•IPV4•310『线路140』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/639731747$LR•IPV4•309『线路141』 +http://wfenf.x3322.net:7788/639731818$LR•IPV4•310『线路141』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/955227979$LR•IPV4•309『线路142』 +http://wfenf.x3322.net:7788/639731715$LR•IPV4•310『线路142』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/955227985$LR•IPV4•309『线路143』 +http://wfenf.x3322.net:7788/639731832$LR•IPV4•310『线路143』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/955227996$LR•IPV4•309『线路144』 +http://wfenf.x3322.net:7788/639731747$LR•IPV4•310『线路144』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/639737327$LR•IPV4•309『线路145』 +http://wfenf.x3322.net:7788/955227979$LR•IPV4•310『线路145』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.chinacert.cftest5.cn/cnmg/live/639731783$LR•IPV4•309『线路146』 +http://wfenf.x3322.net:7788/955227985$LR•IPV4•310『线路146』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/651632657$LR•IPV4•309『线路147』 +http://wfenf.x3322.net:7788/955227996$LR•IPV4•310『线路147』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/838109047$LR•IPV4•309『线路148』 +http://wfenf.x3322.net:7788/639737327$LR•IPV4•310『线路148』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/639731825$LR•IPV4•309『线路149』 +http://wfenf.x3322.net:7788/639731783$LR•IPV4•310『线路149』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/639731826$LR•IPV4•309『线路150』 +http://106.5.175.159:1234/651632657$LR•IPV4•310『线路150』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/639731818$LR•IPV4•309『线路151』 +http://106.5.175.159:1234/838109047$LR•IPV4•310『线路151』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/639731715$LR•IPV4•309『线路152』 +http://106.5.175.159:1234/639731825$LR•IPV4•310『线路152』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/639731832$LR•IPV4•309『线路153』 +http://106.5.175.159:1234/639731826$LR•IPV4•310『线路153』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/639731747$LR•IPV4•309『线路154』 +http://106.5.175.159:1234/639731818$LR•IPV4•310『线路154』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/955227979$LR•IPV4•309『线路155』 +http://106.5.175.159:1234/639731715$LR•IPV4•310『线路155』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/955227985$LR•IPV4•309『线路156』 +http://106.5.175.159:1234/639731832$LR•IPV4•310『线路156』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/955227996$LR•IPV4•309『线路157』 +http://106.5.175.159:1234/639731747$LR•IPV4•310『线路157』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/639737327$LR•IPV4•309『线路158』 +http://106.5.175.159:1234/955227979$LR•IPV4•310『线路158』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://fn.gcl.de5.net:5908/gsh950428/639731783$LR•IPV4•309『线路159』 +http://106.5.175.159:1234/955227985$LR•IPV4•310『线路159』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/651632657$LR•IPV4•309『线路160』 +http://106.5.175.159:1234/955227996$LR•IPV4•310『线路160』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/838109047$LR•IPV4•309『线路161』 +http://106.5.175.159:1234/639737327$LR•IPV4•310『线路161』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/639731825$LR•IPV4•309『线路162』 +http://106.5.175.159:1234/639731783$LR•IPV4•310『线路162』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/639731826$LR•IPV4•309『线路163』 +http://36.104.221.222:7788/651632657$LR•IPV4•310『线路163』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/639731818$LR•IPV4•309『线路164』 +http://36.104.221.222:7788/838109047$LR•IPV4•310『线路164』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/639731715$LR•IPV4•309『线路165』 +http://36.104.221.222:7788/639731825$LR•IPV4•310『线路165』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/639731832$LR•IPV4•309『线路166』 +http://36.104.221.222:7788/639731826$LR•IPV4•310『线路166』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/639731747$LR•IPV4•309『线路167』 +http://36.104.221.222:7788/639731818$LR•IPV4•310『线路167』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/955227979$LR•IPV4•309『线路168』 +http://36.104.221.222:7788/639731715$LR•IPV4•310『线路168』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/955227985$LR•IPV4•309『线路169』 +http://36.104.221.222:7788/639731832$LR•IPV4•310『线路169』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/955227996$LR•IPV4•309『线路170』 +http://36.104.221.222:7788/639731747$LR•IPV4•310『线路170』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/639737327$LR•IPV4•309『线路171』 +http://36.104.221.222:7788/955227979$LR•IPV4•310『线路171』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://wfenf.x3322.net:7788/639731783$LR•IPV4•309『线路172』 +http://36.104.221.222:7788/955227985$LR•IPV4•310『线路172』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/651632657$LR•IPV4•309『线路173』 +http://36.104.221.222:7788/955227996$LR•IPV4•310『线路173』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/838109047$LR•IPV4•309『线路174』 +http://36.104.221.222:7788/639737327$LR•IPV4•310『线路174』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/639731825$LR•IPV4•309『线路175』 +http://36.104.221.222:7788/639731783$LR•IPV4•310『线路175』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/639731826$LR•IPV4•309『线路176』 +http://115.58.151.196:1234/651632657$LR•IPV4•310『线路176』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/639731818$LR•IPV4•309『线路177』 +http://115.58.151.196:1234/838109047$LR•IPV4•310『线路177』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/639731715$LR•IPV4•309『线路178』 +http://115.58.151.196:1234/639731825$LR•IPV4•310『线路178』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/639731832$LR•IPV4•309『线路179』 +http://115.58.151.196:1234/639731826$LR•IPV4•310『线路179』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/639731747$LR•IPV4•309『线路180』 +http://115.58.151.196:1234/639731818$LR•IPV4•310『线路180』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/955227979$LR•IPV4•309『线路181』 +http://115.58.151.196:1234/639731715$LR•IPV4•310『线路181』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/955227985$LR•IPV4•309『线路182』 +http://115.58.151.196:1234/639731832$LR•IPV4•310『线路182』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/955227996$LR•IPV4•309『线路183』 +http://115.58.151.196:1234/639731747$LR•IPV4•310『线路183』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/639737327$LR•IPV4•309『线路184』 +http://115.58.151.196:1234/955227979$LR•IPV4•310『线路184』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://106.5.175.159:1234/639731783$LR•IPV4•309『线路185』 +http://115.58.151.196:1234/955227985$LR•IPV4•310『线路185』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/651632657$LR•IPV4•309『线路186』 +http://115.58.151.196:1234/955227996$LR•IPV4•310『线路186』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/838109047$LR•IPV4•309『线路187』 +http://115.58.151.196:1234/639737327$LR•IPV4•310『线路187』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/639731825$LR•IPV4•309『线路188』 +http://115.58.151.196:1234/639731783$LR•IPV4•310『线路188』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/639731826$LR•IPV4•309『线路189』 +http://182.61.15.163:80/651632657$LR•IPV4•310『线路189』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/639731818$LR•IPV4•309『线路190』 +http://182.61.15.163:80/838109047$LR•IPV4•310『线路190』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/639731715$LR•IPV4•309『线路191』 +http://182.61.15.163:80/639731825$LR•IPV4•310『线路191』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/639731832$LR•IPV4•309『线路192』 +http://182.61.15.163:80/639731826$LR•IPV4•310『线路192』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/639731747$LR•IPV4•309『线路193』 +http://182.61.15.163:80/639731818$LR•IPV4•310『线路193』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/955227979$LR•IPV4•309『线路194』 +http://182.61.15.163:80/639731715$LR•IPV4•310『线路194』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/955227985$LR•IPV4•309『线路195』 +http://182.61.15.163:80/639731832$LR•IPV4•310『线路195』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/955227996$LR•IPV4•309『线路196』 +http://182.61.15.163:80/639731747$LR•IPV4•310『线路196』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/639737327$LR•IPV4•309『线路197』 +http://182.61.15.163:80/955227979$LR•IPV4•310『线路197』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://36.104.221.222:7788/639731783$LR•IPV4•309『线路198』 +http://182.61.15.163:80/955227985$LR•IPV4•310『线路198』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/651632657$LR•IPV4•309『线路199』 +http://182.61.15.163:80/955227996$LR•IPV4•310『线路199』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/838109047$LR•IPV4•309『线路200』 +http://182.61.15.163:80/639737327$LR•IPV4•310『线路200』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/639731825$LR•IPV4•309『线路201』 +http://182.61.15.163:80/639731783$LR•IPV4•310『线路201』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/639731826$LR•IPV4•309『线路202』 +http://121.23.132.14:7788/651632657$LR•IPV4•310『线路202』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/639731818$LR•IPV4•309『线路203』 +http://121.23.132.14:7788/838109047$LR•IPV4•310『线路203』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/639731715$LR•IPV4•309『线路204』 +http://121.23.132.14:7788/639731825$LR•IPV4•310『线路204』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/639731832$LR•IPV4•309『线路205』 +http://121.23.132.14:7788/639731826$LR•IPV4•310『线路205』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/639731747$LR•IPV4•309『线路206』 +http://121.23.132.14:7788/639731818$LR•IPV4•310『线路206』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/955227979$LR•IPV4•309『线路207』 +http://121.23.132.14:7788/639731715$LR•IPV4•310『线路207』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/955227985$LR•IPV4•309『线路208』 +http://121.23.132.14:7788/639731832$LR•IPV4•310『线路208』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/955227996$LR•IPV4•309『线路209』 +http://121.23.132.14:7788/639731747$LR•IPV4•310『线路209』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/639737327$LR•IPV4•309『线路210』 +http://121.23.132.14:7788/955227979$LR•IPV4•310『线路210』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.58.151.196:1234/639731783$LR•IPV4•309『线路211』 +http://121.23.132.14:7788/955227985$LR•IPV4•310『线路211』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/651632657$LR•IPV4•309『线路212』 +http://121.23.132.14:7788/955227996$LR•IPV4•310『线路212』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/838109047$LR•IPV4•309『线路213』 +http://121.23.132.14:7788/639737327$LR•IPV4•310『线路213』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/639731825$LR•IPV4•309『线路214』 +http://121.23.132.14:7788/639731783$LR•IPV4•310『线路214』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/639731826$LR•IPV4•309『线路215』 +http://120.4.126.153:1234/651632657$LR•IPV4•310『线路215』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/639731818$LR•IPV4•309『线路216』 +http://120.4.126.153:1234/838109047$LR•IPV4•310『线路216』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/639731715$LR•IPV4•309『线路217』 +http://120.4.126.153:1234/639731825$LR•IPV4•310『线路217』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/639731832$LR•IPV4•309『线路218』 +http://120.4.126.153:1234/639731826$LR•IPV4•310『线路218』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/639731747$LR•IPV4•309『线路219』 +http://120.4.126.153:1234/639731818$LR•IPV4•310『线路219』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/955227979$LR•IPV4•309『线路220』 +http://120.4.126.153:1234/639731715$LR•IPV4•310『线路220』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/955227985$LR•IPV4•309『线路221』 +http://120.4.126.153:1234/639731832$LR•IPV4•310『线路221』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/955227996$LR•IPV4•309『线路222』 +http://120.4.126.153:1234/639731747$LR•IPV4•310『线路222』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/639737327$LR•IPV4•309『线路223』 +http://120.4.126.153:1234/955227979$LR•IPV4•310『线路223』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://182.61.15.163:80/639731783$LR•IPV4•309『线路224』 +http://120.4.126.153:1234/955227985$LR•IPV4•310『线路224』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/651632657$LR•IPV4•309『线路225』 +http://120.4.126.153:1234/955227996$LR•IPV4•310『线路225』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/838109047$LR•IPV4•309『线路226』 +http://120.4.126.153:1234/639737327$LR•IPV4•310『线路226』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/639731825$LR•IPV4•309『线路227』 +http://120.4.126.153:1234/639731783$LR•IPV4•310『线路227』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/639731826$LR•IPV4•309『线路228』 +http://47.119.24.76:59093/651632657$LR•IPV4•310『线路228』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/639731818$LR•IPV4•309『线路229』 +http://47.119.24.76:59093/838109047$LR•IPV4•310『线路229』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/639731715$LR•IPV4•309『线路230』 +http://47.119.24.76:59093/639731825$LR•IPV4•310『线路230』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/639731832$LR•IPV4•309『线路231』 +http://47.119.24.76:59093/639731826$LR•IPV4•310『线路231』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/639731747$LR•IPV4•309『线路232』 +http://47.119.24.76:59093/639731818$LR•IPV4•310『线路232』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/955227979$LR•IPV4•309『线路233』 +http://47.119.24.76:59093/639731715$LR•IPV4•310『线路233』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/955227985$LR•IPV4•309『线路234』 +http://47.119.24.76:59093/639731832$LR•IPV4•310『线路234』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/955227996$LR•IPV4•309『线路235』 +http://47.119.24.76:59093/639731747$LR•IPV4•310『线路235』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/639737327$LR•IPV4•309『线路236』 +http://47.119.24.76:59093/955227979$LR•IPV4•310『线路236』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://121.23.132.14:7788/639731783$LR•IPV4•309『线路237』 +http://47.119.24.76:59093/955227985$LR•IPV4•310『线路237』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/651632657$LR•IPV4•309『线路238』 +http://47.119.24.76:59093/955227996$LR•IPV4•310『线路238』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/838109047$LR•IPV4•309『线路239』 +http://47.119.24.76:59093/639737327$LR•IPV4•310『线路239』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/639731825$LR•IPV4•309『线路240』 +http://47.119.24.76:59093/639731783$LR•IPV4•310『线路240』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/639731826$LR•IPV4•309『线路241』 +http://222.134.19.49:8090/651632657$LR•IPV4•310『线路241』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/639731818$LR•IPV4•309『线路242』 +http://222.134.19.49:8090/838109047$LR•IPV4•310『线路242』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/639731715$LR•IPV4•309『线路243』 +http://222.134.19.49:8090/639731825$LR•IPV4•310『线路243』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/639731832$LR•IPV4•309『线路244』 +http://222.134.19.49:8090/639731826$LR•IPV4•310『线路244』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/639731747$LR•IPV4•309『线路245』 +http://222.134.19.49:8090/639731818$LR•IPV4•310『线路245』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/955227979$LR•IPV4•309『线路246』 +http://222.134.19.49:8090/639731715$LR•IPV4•310『线路246』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/955227985$LR•IPV4•309『线路247』 +http://222.134.19.49:8090/639731832$LR•IPV4•310『线路247』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/955227996$LR•IPV4•309『线路248』 +http://222.134.19.49:8090/639731747$LR•IPV4•310『线路248』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/639737327$LR•IPV4•309『线路249』 +http://222.134.19.49:8090/955227979$LR•IPV4•310『线路249』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://120.4.126.153:1234/639731783$LR•IPV4•309『线路250』 +http://222.134.19.49:8090/955227985$LR•IPV4•310『线路250』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/651632657$LR•IPV4•309『线路251』 +http://222.134.19.49:8090/955227996$LR•IPV4•310『线路251』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/838109047$LR•IPV4•309『线路252』 +http://222.134.19.49:8090/639737327$LR•IPV4•310『线路252』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/639731825$LR•IPV4•309『线路253』 +http://222.134.19.49:8090/639731783$LR•IPV4•310『线路253』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/639731826$LR•IPV4•309『线路254』 +http://139.155.89.87:1000/651632657$LR•IPV4•310『线路254』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/639731818$LR•IPV4•309『线路255』 +http://139.155.89.87:1000/838109047$LR•IPV4•310『线路255』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/639731715$LR•IPV4•309『线路256』 +http://139.155.89.87:1000/639731825$LR•IPV4•310『线路256』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/639731832$LR•IPV4•309『线路257』 +http://139.155.89.87:1000/639731826$LR•IPV4•310『线路257』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/639731747$LR•IPV4•309『线路258』 +http://139.155.89.87:1000/639731818$LR•IPV4•310『线路258』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/955227979$LR•IPV4•309『线路259』 +http://139.155.89.87:1000/639731715$LR•IPV4•310『线路259』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/955227985$LR•IPV4•309『线路260』 +http://139.155.89.87:1000/639731832$LR•IPV4•310『线路260』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/955227996$LR•IPV4•309『线路261』 +http://139.155.89.87:1000/639731747$LR•IPV4•310『线路261』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/639737327$LR•IPV4•309『线路262』 +http://139.155.89.87:1000/955227979$LR•IPV4•310『线路262』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.119.24.76:59093/639731783$LR•IPV4•309『线路263』 +http://139.155.89.87:1000/955227985$LR•IPV4•310『线路263』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/651632657$LR•IPV4•309『线路264』 +http://139.155.89.87:1000/955227996$LR•IPV4•310『线路264』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/838109047$LR•IPV4•309『线路265』 +http://139.155.89.87:1000/639737327$LR•IPV4•310『线路265』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/639731825$LR•IPV4•309『线路266』 +http://139.155.89.87:1000/639731783$LR•IPV4•310『线路266』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/639731826$LR•IPV4•309『线路267』 +http://101.34.236.223:1112/651632657$LR•IPV4•310『线路267』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/639731818$LR•IPV4•309『线路268』 +http://101.34.236.223:1112/838109047$LR•IPV4•310『线路268』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/639731715$LR•IPV4•309『线路269』 +http://101.34.236.223:1112/639731825$LR•IPV4•310『线路269』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/639731832$LR•IPV4•309『线路270』 +http://101.34.236.223:1112/639731826$LR•IPV4•310『线路270』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/639731747$LR•IPV4•309『线路271』 +http://101.34.236.223:1112/639731818$LR•IPV4•310『线路271』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/955227979$LR•IPV4•309『线路272』 +http://101.34.236.223:1112/639731715$LR•IPV4•310『线路272』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/955227985$LR•IPV4•309『线路273』 +http://101.34.236.223:1112/639731832$LR•IPV4•310『线路273』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/955227996$LR•IPV4•309『线路274』 +http://101.34.236.223:1112/639731747$LR•IPV4•310『线路274』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/639737327$LR•IPV4•309『线路275』 +http://101.34.236.223:1112/955227979$LR•IPV4•310『线路275』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.134.19.49:8090/639731783$LR•IPV4•309『线路276』 +http://101.34.236.223:1112/955227985$LR•IPV4•310『线路276』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/651632657$LR•IPV4•309『线路277』 +http://101.34.236.223:1112/955227996$LR•IPV4•310『线路277』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/838109047$LR•IPV4•309『线路278』 +http://101.34.236.223:1112/639737327$LR•IPV4•310『线路278』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/639731825$LR•IPV4•309『线路279』 +http://101.34.236.223:1112/639731783$LR•IPV4•310『线路279』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/639731826$LR•IPV4•309『线路280』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226366/index.m3u8$LR•IPV4•310『线路280』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/639731818$LR•IPV4•309『线路281』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226376/index.m3u8$LR•IPV4•310『线路281』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/639731715$LR•IPV4•309『线路282』 +http://jwcdnqx.hebyun.com.cn/live/hdxwzh/1500k/tzwj_video.m3u8$LR•IPV4•310『线路282』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/639731832$LR•IPV4•309『线路283』 +https://jwcdnqx.hebyun.com.cn/live/SXTV1/1500k/tzwj_video.m3u8$LR•IPV4•310『线路283』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/639731747$LR•IPV4•309『线路284』 +http://stream.thmz.com/wxtv1/sd/live.m3u8?zjiangsd$LR•IPV4•310『线路284』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/955227979$LR•IPV4•309『线路285』 +http://stream.thmz.com/wxtv1/sd/live.m3u8$LR•IPV4•310『线路285』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/955227985$LR•IPV4•309『线路286』 +http://stream.thmz.com/wxtv1/playlist.m3u8$LR•IPV4•310『线路286』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/955227996$LR•IPV4•309『线路287』 +http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•310『线路287』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/639737327$LR•IPV4•309『线路288』 +http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•310『线路288』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://139.155.89.87:1000/639731783$LR•IPV4•309『线路289』 +http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•310『线路289』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/651632657$LR•IPV4•309『线路290』 +https://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8$LR•IPV4•310『线路290』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/838109047$LR•IPV4•309『线路291』 +https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•310『线路291』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/639731825$LR•IPV4•309『线路292』 +http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•310『线路292』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/639731826$LR•IPV4•309『线路293』 +http://221.5.213.4:30000/1111.m3u8$LR•IPV4•310『线路293』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/639731818$LR•IPV4•309『线路294』 +https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•310『线路294』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/639731715$LR•IPV4•309『线路295』 +http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•310『线路295』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/639731832$LR•IPV4•309『线路296』 +https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•310『线路296』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/639731747$LR•IPV4•309『线路297』 +http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•310『线路297』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/955227979$LR•IPV4•309『线路298』 +http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•310『线路298』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/955227985$LR•IPV4•309『线路299』 +https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•310『线路299』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/955227996$LR•IPV4•309『线路300』 +https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•310『线路300』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/639737327$LR•IPV4•309『线路301』 +http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•310『线路301』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://101.34.236.223:1112/639731783$LR•IPV4•309『线路302』 +http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•310『线路302』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226366/index.m3u8$LR•IPV4•309『线路303』 +http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•310『线路303』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226376/index.m3u8$LR•IPV4•309『线路304』 +http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•310『线路304』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://jwcdnqx.hebyun.com.cn/live/hdxwzh/1500k/tzwj_video.m3u8$LR•IPV4•309『线路305』 +http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•310『线路305』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -https://jwcdnqx.hebyun.com.cn/live/SXTV1/1500k/tzwj_video.m3u8$LR•IPV4•309『线路306』 +http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•310『线路306』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.thmz.com/wxtv1/sd/live.m3u8?zjiangsd$LR•IPV4•309『线路307』 +https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•310『线路307』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.thmz.com/wxtv1/sd/live.m3u8$LR•IPV4•309『线路308』 +http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•310『线路308』 #EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.thmz.com/wxtv1/playlist.m3u8$LR•IPV4•309『线路309』 +http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•310『线路309』 +#EXTINF:-1 tvg-name="新闻综合" group-title="上海",新闻综合 +https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•310『线路310』 #EXTINF:-1 tvg-name="西安新闻" group-title="陕西",西安新闻 http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路1』 +http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路1』 #EXTINF:-1 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『线路2』 +http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路3』 +https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路4』 +http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路5』 +https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路6』 +https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路7』 +https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路8』 +https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路9』 +http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路10』 +https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路11』 +https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路12』 +https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路13』 +http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路14』 +https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路15』 +http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-name="山东少儿" group-title="山东",山东少儿 -http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 +http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路1』 +http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路2』 +https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路3』 +https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路4』 +http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路5』 +https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路6』 +https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路7』 +http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路8』 +https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路9』 +https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路10』 +http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路11』 +https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路12』 +http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 https://test1.live.sdetv.com.cn/live/dianshizhibo/playlist.m3u8$LR•IPV4•35『线路1』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000004097&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路2』 +http://112.132.10.54:9901/tsfile/live/1018_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路2』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://112.132.10.54:9901/tsfile/live/1018_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路3』 +http://hlszymgsplive.miguvideo.com:8080/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20260701080242&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260701080242&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=b3c5633f1adc8266e4b2c22da487d41e&sv=10004&ct=android$LR•IPV4•35『线路3』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://hlszymgsplive.miguvideo.com:8080/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20260701080242&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260701080242&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=b3c5633f1adc8266e4b2c22da487d41e&sv=10004&ct=android$LR•IPV4•35『线路4』 +https://iptv.catvod.com/live.php?id=%E5%B1%B1%E4%B8%9C%E6%95%99%E8%82%B2&line=1$LR•IPV4•35『线路4』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -https://iptv.catvod.com/live.php?id=%E5%B1%B1%E4%B8%9C%E6%95%99%E8%82%B2&line=1$LR•IPV4•35『线路5』 +http://120.238.94.10:9901/tsfile/live/1062_1.m3u8?key=txiptv$LR•IPV4•35『线路5』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://120.238.94.10:9901/tsfile/live/1062_1.m3u8?key=txiptv$LR•IPV4•35『线路6』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0563&tk=a0c4f6cfaba3$LR•IPV4•35『线路6』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0563&tk=a0c4f6cfaba3$LR•IPV4•35『线路7』 +http://47.104.178.59:3566/609154353$LR•IPV4•35『线路7』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://47.104.178.59:3566/609154353$LR•IPV4•35『线路8』 +http://iptv.huuc.edu.cn/hls/sdetv.m3u8$LR•IPV4•35『线路8』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://iptv.huuc.edu.cn/hls/sdetv.m3u8$LR•IPV4•35『线路9』 +http://183.11.239.36:808/hls/72/index.m3u8$LR•IPV4•35『线路9』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://183.11.239.36:808/hls/72/index.m3u8$LR•IPV4•35『线路10』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7973&tk=a0c4f6cfaba3$LR•IPV4•35『线路10』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7973&tk=a0c4f6cfaba3$LR•IPV4•35『线路11』 +http://123.113.205.253:3000/609154353$LR•IPV4•35『线路11』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://123.113.205.253:3000/609154353$LR•IPV4•35『线路12』 +http://120.238.94.10:9901/tsfile/live/1062_1.m3u8$LR•IPV4•35『线路12』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://120.238.94.10:9901/tsfile/live/1062_1.m3u8$LR•IPV4•35『线路13』 +http://115.190.247.176:1111/609154353$LR•IPV4•35『线路13』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://115.190.247.176:1111/609154353$LR•IPV4•35『线路14』 +https://migu.188766.xyz/?migutoken=1134813ab83db9f651ce86515f06b7c5&id=%E5%B1%B1%E4%B8%9C%E6%95%99%E8%82%B2&type=yy$LR•IPV4•35『线路14』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -https://migu.188766.xyz/?migutoken=1134813ab83db9f651ce86515f06b7c5&id=%E5%B1%B1%E4%B8%9C%E6%95%99%E8%82%B2&type=yy$LR•IPV4•35『线路15』 +http://dl.wifi942.com:66/jsyd/jsyd.php?id=G_SDETV$LR•IPV4•35『线路15』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://dl.wifi942.com:66/jsyd/jsyd.php?id=G_SDETV$LR•IPV4•35『线路16』 +http://gslbmgsplive.miguvideo.com/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=20250927080126244a72fa1b554182ae03568fff35bca7&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20250927080126&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=106.13.250.83&SecurityKey=20250927080126&promotionId=&mvid=2200208305&mcid=500020&playurlVersion=WX-A1-8.9.2-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=41ee1554c91427e91ee78ce8b64f7a33&ddCalcu=3431eae27e9f104565b48ce9c18472e7ee19$LR•IPV4•35『线路16』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://gslbmgsplive.miguvideo.com/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=20250927080126244a72fa1b554182ae03568fff35bca7&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20250927080126&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=106.13.250.83&SecurityKey=20250927080126&promotionId=&mvid=2200208305&mcid=500020&playurlVersion=WX-A1-8.9.2-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=41ee1554c91427e91ee78ce8b64f7a33&ddCalcu=3431eae27e9f104565b48ce9c18472e7ee19$LR•IPV4•35『线路17』 +http://76.5432123.xyz/杂项代理/学习强国.php?id=sdjy$LR•IPV4•35『线路17』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://76.5432123.xyz/杂项代理/学习强国.php?id=sdjy$LR•IPV4•35『线路18』 +http://121.19.134.222:808/tsfile/live/1033_1.m3u8$LR•IPV4•35『线路18』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://121.19.134.222:808/tsfile/live/1033_1.m3u8$LR•IPV4•35『线路19』 +http://dassby.qqff.top:99/live/山东教育卫视/index.m3u8$LR•IPV4•35『线路19』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 -http://dassby.qqff.top:99/live/山东教育卫视/index.m3u8$LR•IPV4•35『线路20』 +http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20260701040238&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260701040238&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=73b3672404e6f81ba9eb6d7e899a661d&sv=10004&ct=android$LR•IPV4•35『线路20』 #EXTINF:-1 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=20260701040238&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260701040238&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=73b3672404e6f81ba9eb6d7e899a661d&sv=10004&ct=android$LR•IPV4•35『线路21』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000004097&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路21』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 https://live.chinacert.cftest5.cn/cnmg/live/609154353$LR•IPV4•35『线路22』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 @@ -10748,67 +10754,67 @@ http://101.34.236.223:1112/609154353$LR•IPV4•35『线路34』 #EXTINF:-1 tvg-name="山东教育" group-title="山东",山东教育 http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227166/index.m3u8$LR•IPV4•35『线路35』 #EXTINF:-1 tvg-name="山东农科" group-title="山东",山东农科 -http://livealone302.iqilu.com/iqilu/nkpd.m3u8$LR•IPV4•2『线路1』 +http://58.57.40.22:9901/tsfile/live/1022_1.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="山东农科" group-title="山东",山东农科 -http://58.57.40.22:9901/tsfile/live/1022_1.m3u8$LR•IPV4•2『线路2』 +http://livealone302.iqilu.com/iqilu/nkpd.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路1』 +http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路2』 +http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路3』 +http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路5』 +http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路5』 #EXTINF:-1 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『线路6』 +http://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 +http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$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-name="山东齐鲁" group-title="山东",山东齐鲁 -http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路9』 +http://123.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路10』 +http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-name="山东生活" group-title="山东",山东生活 -http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路1』 +http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="山东生活" group-title="山东",山东生活 -http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路2』 +http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="山东生活" group-title="山东",山东生活 -http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路3』 +http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="山东生活" group-title="山东",山东生活 -http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路4』 +http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-name="山东生活" group-title="山东",山东生活 -http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路5』 +http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-name="山东生活" group-title="山东",山东生活 -http://live.xmcdn.com/live/802/64.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-name="山东生活" group-title="山东",山东生活 -http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路7』 +http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路1』 +https://stream1.freetv.fun/shan-dong-ti-yu-15.m3u8$LR•IPV4•37『线路1』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-15.m3u8$LR•IPV4•37『线路2』 +https://stream1.freetv.fun/shan-dong-ti-yu-7.m3u8$LR•IPV4•37『线路2』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-7.m3u8$LR•IPV4•37『线路3』 +http://61.156.228.12:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路3』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -http://61.156.228.12:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路4』 +https://stream1.freetv.fun/shan-dong-ti-yu-16.m3u8$LR•IPV4•37『线路4』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-16.m3u8$LR•IPV4•37『线路5』 +http://123.130.84.106:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路5』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -http://123.130.84.106:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路6』 +https://stream1.freetv.fun/shan-dong-ti-yu-11.m3u8$LR•IPV4•37『线路6』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-11.m3u8$LR•IPV4•37『线路7』 +https://stream1.freetv.fun/shan-dong-ti-yu-8.m3u8$LR•IPV4•37『线路7』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-8.m3u8$LR•IPV4•37『线路8』 +https://stream1.freetv.fun/shan-dong-ti-yu-3.m3u8$LR•IPV4•37『线路8』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-3.m3u8$LR•IPV4•37『线路9』 +https://stream1.freetv.fun/shan-dong-ti-yu-12.m3u8$LR•IPV4•37『线路9』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-12.m3u8$LR•IPV4•37『线路10』 +https://stream1.freetv.fun/shan-dong-ti-yu-4.m3u8$LR•IPV4•37『线路10』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-4.m3u8$LR•IPV4•37『线路11』 +https://stream1.freetv.fun/shan-dong-ti-yu-24.m3u8$LR•IPV4•37『线路11』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 -https://stream1.freetv.fun/shan-dong-ti-yu-24.m3u8$LR•IPV4•37『线路12』 +http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路12』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 http://123.132.233.194:352/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路13』 #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 @@ -10860,17 +10866,17 @@ http://111.14.181.15:9901/tsfile/live/1022_1.m3u8?key=tvbox6_com&playlive=1&auth #EXTINF:-1 tvg-name="山东体育" group-title="山东",山东体育 http://satellitepull.cnr.cn/live/wxsdtyxxgb/playlist.m3u8$LR•IPV4•37『线路37』 #EXTINF:-1 tvg-name="山东综艺" group-title="山东",山东综艺 -http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路1』 +http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-name="山东综艺" group-title="山东",山东综艺 -http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路2』 +http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-name="山东综艺" group-title="山东",山东综艺 -http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路3』 +http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-name="山东综艺" group-title="山东",山东综艺 -http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路4』 +http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-name="山东综艺" group-title="山东",山东综艺 -http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路5』 +http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-name="山东综艺" group-title="山东",山东综艺 -http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路6』 +http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-name="山东文旅" group-title="山东",山东文旅 http://58.57.40.22:9901/tsfile/live/1023_1.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="山东文旅" group-title="山东",山东文旅 @@ -10900,211 +10906,215 @@ http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•18『线路2』 +http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•18『线路3』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路4』 +http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•18『线路5』 +https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•18『线路6』 +http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•18『线路7』 +http://146.56.153.245:20121/bysid/258$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -https://cdn6.163189.xyz/163189/fhzw$LR•IPV4•18『线路8』 +http://146.56.153.245:20121/bysid/258$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•18『线路9』 +http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•18『线路10』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://146.56.153.245:20121/bysid/258$LR•IPV4•18『线路11』 +http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://146.56.153.245:20121/bysid/258$LR•IPV4•18『线路12』 +http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•18『线路13』 +http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•18『线路14』 +http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•18『线路15』 +http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•18『线路16』 +http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•18『线路17』 +http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•18『线路18』 +https://cdn6.163189.xyz/163189/fhzw$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•17『线路2』 +http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•17『线路3』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•17『线路5』 +http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•17『线路6』 +http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -https://cdn6.163189.xyz/163189/fhzx$LR•IPV4•17『线路7』 +http://146.56.153.245:20121/bysid/257$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•17『线路8』 +http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•17『线路9』 +http://146.56.153.245:20121/bysid/257$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•17『线路10』 +http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://146.56.153.245:20121/bysid/257$LR•IPV4•17『线路11』 +http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•17『线路12』 +http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://146.56.153.245:20121/bysid/257$LR•IPV4•17『线路13』 +p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•17『线路14』 +http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•17『线路15』 +http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•17『线路16』 +https://cdn6.163189.xyz/163189/fhzx$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•17『线路17』 +http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•10『线路1』 +http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•10『线路2』 +https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•10『线路3』 +https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•10『线路4』 +http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•10『线路5』 +http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•10『线路6』 +p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -https://cdn6.163189.xyz/163189/fhhk$LR•IPV4•10『线路7』 +http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•10『线路8』 +http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•10『线路9』 +https://cdn6.163189.xyz/163189/fhhk$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•10『线路10』 +http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•38『线路1』 +http://cdn9.163189.xyz/smt1.1.php?id=jade_twn$LR•IPV4•39『线路1』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•38『线路2』 +p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•39『线路2』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•38『线路3』 +p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•39『线路3』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://cdn6.163189.xyz/163189/fct$LR•IPV4•38『线路4』 +p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•39『线路4』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://o11.163189.xyz/stream/tvb/fct/$LR•IPV4•38『线路5』 +http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•39『线路5』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://o11.163189.xyz/stream/tvb/fct4k/$LR•IPV4•38『线路6』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct4$LR•IPV4•39『线路6』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://cdn6.163189.xyz/163189/fct4k$LR•IPV4•38『线路7』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct$LR•IPV4•39『线路7』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://124.244.129.167:9004/0.ts$LR•IPV4•38『线路8』 +http://php.jdshipin.com/TVOD/iptv.php?id=fct3$LR•IPV4•39『线路8』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://qingyi.7766.org:9004/0.ts$LR•IPV4•38『线路9』 +http://php.jdshipin.com/TVOD/iptv.php?id=fct$LR•IPV4•39『线路9』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://push.cdn1.hls123.de:8080/streams/ef5addc0849/index.m3u8$LR•IPV4•38『线路10』 +http://hls.168.us.kg/u/81/master.m3u8$LR•IPV4•39『线路10』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://push.cdn1.hls123.de:8080/streams/n6dnsi33w2e/index.m3u8$LR•IPV4•38『线路11』 +http://r.jdshipin.com/62WM7$LR•IPV4•39『线路11』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•38『线路12』 +http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•39『线路12』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct4$LR•IPV4•38『线路13』 +http://php.jdshipin.com:8880/smt.php?id=jade_twn$LR•IPV4•39『线路13』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct$LR•IPV4•38『线路14』 +http://php.jdshipin.com/smt.php?id=jade_twn$LR•IPV4•39『线路14』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/TVOD/iptv.php?id=fct3$LR•IPV4•38『线路15』 +http://cdn9.1689.us.kg/smt1.1.php?id=jade_twn$LR•IPV4•39『线路15』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/TVOD/iptv.php?id=fct$LR•IPV4•38『线路16』 +http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah005-golive.flv$LR•IPV4•39『线路16』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://hls.168.us.kg/u/81/master.m3u8$LR•IPV4•38『线路17』 +http://58.250.155.2:8180/TV00000000000000000032@HHZT$LR•IPV4•39『线路17』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://r.jdshipin.com/62WM7$LR•IPV4•38『线路18』 +http://hotelplay.net/live/pmb8krf68n4z/4d8cf4af8de3574c/476935.m3u8$LR•IPV4•39『线路18』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•38『线路19』 +http://ali.hlspull.yximgs.com/live/awei_jade.flv$LR•IPV4•39『线路19』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com:8880/smt.php?id=jade_twn$LR•IPV4•38『线路20』 +p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•39『线路20』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://php.jdshipin.com/smt.php?id=jade_twn$LR•IPV4•38『线路21』 +https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•39『线路21』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://cdn9.1689.us.kg/smt1.1.php?id=jade_twn$LR•IPV4•38『线路22』 +http://cdn6.163189.xyz/163189/fct$LR•IPV4•39『线路22』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah005-golive.flv$LR•IPV4•38『线路23』 +http://o11.163189.xyz/stream/tvb/fct/$LR•IPV4•39『线路23』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://58.250.155.2:8180/TV00000000000000000032@HHZT$LR•IPV4•38『线路24』 +http://o11.163189.xyz/stream/tvb/fct4k/$LR•IPV4•39『线路24』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://hotelplay.net/live/pmb8krf68n4z/4d8cf4af8de3574c/476935.m3u8$LR•IPV4•38『线路25』 +https://cdn6.163189.xyz/163189/fct4k$LR•IPV4•39『线路25』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://ali.hlspull.yximgs.com/live/awei_jade.flv$LR•IPV4•38『线路26』 +http://124.244.129.167:9004/0.ts$LR•IPV4•39『线路26』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•38『线路27』 +http://qingyi.7766.org:9004/0.ts$LR•IPV4•39『线路27』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•38『线路28』 +http://push.cdn1.hls123.de:8080/streams/ef5addc0849/index.m3u8$LR•IPV4•39『线路28』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://cdn6.163189.xyz/163189/tvbd$LR•IPV4•38『线路29』 +http://push.cdn1.hls123.de:8080/streams/n6dnsi33w2e/index.m3u8$LR•IPV4•39『线路29』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://cdn6.163189.xyz/163189/tvb1$LR•IPV4•38『线路30』 +http://cdn6.163189.xyz/163189/tvbd$LR•IPV4•39『线路30』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://cdn6.163189.xyz/163189/fct$LR•IPV4•38『线路31』 +https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•39『线路31』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•38『线路32』 +https://mytv.cdn.loc.cc/o12.php?id=fct$LR•IPV4•39『线路32』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -https://mytv.cdn.loc.cc/o12.php?id=fct$LR•IPV4•38『线路33』 +http://43.251.226.89:8080/play/867.m3u8$LR•IPV4•39『线路33』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://43.251.226.89:8080/play/867.m3u8$LR•IPV4•38『线路34』 +http://43.251.226.89:8080/play/868.m3u8$LR•IPV4•39『线路34』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://43.251.226.89:8080/play/868.m3u8$LR•IPV4•38『线路35』 +http://43.251.226.89:8080/play/869.m3u8$LR•IPV4•39『线路35』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://43.251.226.89:8080/play/869.m3u8$LR•IPV4•38『线路36』 +http://43.251.226.89:8080/play/894.m3u8$LR•IPV4•39『线路36』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://43.251.226.89:8080/play/894.m3u8$LR•IPV4•38『线路37』 +http://43.251.226.89:8080/play/895.m3u8$LR•IPV4•39『线路37』 #EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 -http://43.251.226.89:8080/play/895.m3u8$LR•IPV4•38『线路38』 +http://cdn6.163189.xyz/163189/tvb1$LR•IPV4•39『线路38』 +#EXTINF:-1 tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 +https://cdn6.163189.xyz/163189/fct$LR•IPV4•39『线路39』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://php.jdshipin.com/TVOD/iptv.php?id=mzt2$LR•IPV4•17『线路1』 +http://cdn9.163189.xyz/smt1.1.php?id=pearl_twn$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://php.jdshipin.com/PLTV/iptv.php?id=mzt2$LR•IPV4•17『线路2』 +http://php.jdshipin.com/TVOD/iptv.php?id=mzt2$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://php.jdshipin.com/PLTV/iptv.php?id=mzt$LR•IPV4•17『线路3』 +http://php.jdshipin.com/PLTV/iptv.php?id=mzt2$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://php.jdshipin.com/TVOD/iptv.php?id=mzt$LR•IPV4•17『线路4』 +http://php.jdshipin.com/PLTV/iptv.php?id=mzt$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://hls.168.us.kg/u/84/master.m3u8$LR•IPV4•17『线路5』 +http://php.jdshipin.com/TVOD/iptv.php?id=mzt$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -p3p://167.114.175.6:55331/611d99f3000116024a845bb9627404c9$LR•IPV4•17『线路6』 +http://hls.168.us.kg/u/84/master.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://php.jdshipin.com:8880/smt.php?id=pearl_twn$LR•IPV4•17『线路7』 +p3p://167.114.175.6:55331/611d99f3000116024a845bb9627404c9$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://push.cdn1.hls123.de:8080/streams/89a8p45a15e/index.m3u8$LR•IPV4•17『线路8』 +http://php.jdshipin.com:8880/smt.php?id=pearl_twn$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://r.jdshipin.com/jUx8K$LR•IPV4•17『线路9』 +http://r.jdshipin.com/ZQ4kN$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -https://hls-gateway.vpstv.net/streams/476936.m3u8$LR•IPV4•17『线路10』 +https://hls-gateway.vpstv.net/streams/476936.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -p3p://167.114.175.6:55331/602f1ba9000814efa6f2970333d309d9$LR•IPV4•17『线路11』 +http://push.cdn1.hls123.de:8080/streams/89a8p45a15e/index.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://o11.163189.xyz/stream/tvb/mzt/$LR•IPV4•17『线路12』 +p3p://167.114.175.6:55331/602f1ba9000814efa6f2970333d309d9$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -https://cdn6.163189.xyz/163189/mzt$LR•IPV4•17『线路13』 +https://mytv.cdn.loc.cc/o12.php?id=mzt$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -https://mytv.cdn.loc.cc/o12.php?id=mzt$LR•IPV4•17『线路14』 +http://43.251.226.89:8080/play/871.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://43.251.226.89:8080/play/871.m3u8$LR•IPV4•17『线路15』 +http://43.251.226.89:8080/play/872.m3u8$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://43.251.226.89:8080/play/872.m3u8$LR•IPV4•17『线路16』 +http://43.251.226.89:8080/play/897.m3u8$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 -http://43.251.226.89:8080/play/897.m3u8$LR•IPV4•17『线路17』 +http://o11.163189.xyz/stream/tvb/mzt/$LR•IPV4•18『线路17』 +#EXTINF:-1 tvg-name="TVB明珠台" group-title="港澳台",TVB明珠台 +https://cdn6.163189.xyz/163189/mzt$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://php.jdshipin.com/smt.php?id=inews_twn$LR•IPV4•17『线路1』 +http://cdn9.163189.xyz/smt1.1.php?id=inews_twn$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://php.jdshipin.com/TVOD/iptv.php?id=wxxwt$LR•IPV4•17『线路2』 +http://php.jdshipin.com/smt.php?id=inews_twn$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://r.jdshipin.com/CkuBd$LR•IPV4•17『线路3』 +http://php.jdshipin.com/TVOD/iptv.php?id=wxxwt$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://cdn9.163189.xyz/smt1.1.php?id=inews_twn$LR•IPV4•17『线路4』 +http://r.jdshipin.com/CkuBd$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 http://74.91.26.218:82/live/inews.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 @@ -11120,111 +11130,109 @@ p3p://167.114.175.6:55331/66c9c0df00016a4852abc2d358ee0ccb$LR•IPV4•17『线 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 p3p://167.114.175.6:55331/653e4818000b73240c7d19181340415e$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://cdn6.163189.xyz/163189/wxxw$LR•IPV4•17『线路12』 +http://43.251.226.89:8080/play/865.m3u8$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://push.cdn1.hls123.de:8080/streams/n66wwnx3l7i/index.m3u8$LR•IPV4•17『线路13』 +http://43.251.226.89:8080/play/893.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -https://cdn6.163189.xyz/163189/wxxw$LR•IPV4•17『线路14』 +https://hls-gateway.vpstv.net/streams/708884.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://43.251.226.89:8080/play/865.m3u8$LR•IPV4•17『线路15』 +http://cdn6.163189.xyz/163189/wxxw$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -http://43.251.226.89:8080/play/893.m3u8$LR•IPV4•17『线路16』 +http://push.cdn1.hls123.de:8080/streams/n66wwnx3l7i/index.m3u8$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 -https://hls-gateway.vpstv.net/streams/708884.m3u8$LR•IPV4•17『线路17』 +https://cdn6.163189.xyz/163189/wxxw$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://cdn6.163189.xyz/163189/tvbxh$LR•IPV4•19『线路1』 +http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://o11.163189.xyz/stream/live/tvbxh/$LR•IPV4•19『线路2』 +http://php.jdshipin.com:8880/smt.php?id=Xinhe$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://r.jdshipin.com/Voac4$LR•IPV4•19『线路3』 +http://cdn9.1689.us.kg/smt1.1.php?id=Xinhe$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://push.cdn1.hls123.de:8080/streams/hbiwgswysds/index.m3u8$LR•IPV4•19『线路4』 +http://v2h.jdshipin.com/xinghe_1/xinghe_1.stream/chunklist_w106.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://r.jdshipin.com/sXuuD$LR•IPV4•19『线路5』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=xinghe$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•19『线路6』 +https://tv.mytvsuper.xyz/tvb/xinghe/xinghe.m3u8$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://php.jdshipin.com:8880/smt.php?id=Xinhe$LR•IPV4•19『线路7』 +p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://cdn9.1689.us.kg/smt1.1.php?id=Xinhe$LR•IPV4•19『线路8』 +p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://v2h.jdshipin.com/xinghe_1/xinghe_1.stream/chunklist_w106.m3u8$LR•IPV4•19『线路9』 +http://cdn6.163189.xyz/163189/tvbxh$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://php.jdshipin.com:8880/TVOD/iptv.php?id=xinghe$LR•IPV4•19『线路10』 +http://o11.163189.xyz/stream/live/tvbxh/$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://tv.mytvsuper.xyz/tvb/xinghe/xinghe.m3u8$LR•IPV4•19『线路11』 +http://r.jdshipin.com/Voac4$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•19『线路12』 +http://push.cdn1.hls123.de:8080/streams/hbiwgswysds/index.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•19『线路13』 +https://live.ottiptv.cc/huya/23734169$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://cdn6.163189.xyz/163189/tvbxh$LR•IPV4•19『线路14』 +http://43.251.226.89:8080/play/876.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://live.ottiptv.cc/huya/23734169$LR•IPV4•19『线路15』 +http://43.251.226.89:8080/play/877.m3u8$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://43.251.226.89:8080/play/876.m3u8$LR•IPV4•19『线路16』 +http://43.251.226.89:8080/play/898.m3u8$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://43.251.226.89:8080/play/877.m3u8$LR•IPV4•19『线路17』 +https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://43.251.226.89:8080/play/898.m3u8$LR•IPV4•19『线路18』 -#EXTINF:-1 tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•19『线路19』 +https://cdn6.163189.xyz/163189/tvbxh$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS http://38.64.72.148/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路1』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路2』 +http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路2』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路3』 +http://38.64.72.148/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路3』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -http://38.64.72.148/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路4』 +http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路4』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路5』 +http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路6』 +http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路7』 +http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路8』 +http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路8』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路9』 +http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路9』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路10』 +http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路10』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路11』 +p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路11』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路12』 +p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路12』 #EXTINF:-1 tvg-name="TVBS" group-title="港澳台",TVBS -p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路13』 +http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路13』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•12『线路1』 +http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -http://211.72.174.95:8112/0.ts$LR•IPV4•12『线路2』 +http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -http://220.135.241.47:8315/0.ts$LR•IPV4•12『线路3』 +http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路4』 +http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•12『线路5』 +http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•12『线路6』 +http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•12『线路7』 +rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路8』 +p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•12『线路9』 +p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•12『线路10』 +http://211.72.174.95:8112/0.ts$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•12『线路11』 +http://220.135.241.47:8315/0.ts$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-name="台视" group-title="港澳台",台视 -p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•12『线路12』 +http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-name="耀才财经" group-title="港澳台",耀才财经 -http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路1』 +https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-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-name="耀才财经" group-title="港澳台",耀才财经 -https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路3』 +http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="美亚C+" group-title="港澳台",美亚C+ http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="美亚C+" group-title="港澳台",美亚C+ @@ -11234,21 +11242,21 @@ http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="数位电影" group-title="港澳台",数位电影 p3p://167.114.175.6:55331/6223ae1b0007136f3e5c44280e3300fa$LR•IPV4 #EXTINF:-1 tvg-name="龙华偶像" group-title="港澳台",龙华偶像 -https://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路1』 +http://43.251.226.89:8080/play/911.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="龙华偶像" group-title="港澳台",龙华偶像 -http://43.251.226.89:8080/play/911.m3u8$LR•IPV4•4『线路2』 +http://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="龙华偶像" group-title="港澳台",龙华偶像 -http://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路3』 +p3p://167.114.175.6:55331/609bb1b0000732744f174daa791d3b43$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="龙华偶像" group-title="港澳台",龙华偶像 -p3p://167.114.175.6:55331/609bb1b0000732744f174daa791d3b43$LR•IPV4•4『线路4』 +https://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="龙华经典" group-title="港澳台",龙华经典 -https://cdn8.163189.xyz/163189/lhjd$LR•IPV4•4『线路1』 +http://43.251.226.89:8080/play/909.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="龙华经典" group-title="港澳台",龙华经典 http://cdn8.163189.xyz/163189/lhjd$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="龙华经典" group-title="港澳台",龙华经典 -http://43.251.226.89:8080/play/909.m3u8$LR•IPV4•4『线路3』 +p3p://167.114.175.6:55331/6223b9d8000ef67e3e8a2073190e36d5$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="龙华经典" group-title="港澳台",龙华经典 -p3p://167.114.175.6:55331/6223b9d8000ef67e3e8a2073190e36d5$LR•IPV4•4『线路4』 +https://cdn8.163189.xyz/163189/lhjd$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="纬来日本" group-title="港澳台",纬来日本 rtmp://f13h.mine.nu/sat/tv771$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="纬来日本" group-title="港澳台",纬来日本 @@ -11314,13 +11322,13 @@ https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV09.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="中天娱乐" group-title="港澳台",中天娱乐 http://61.221.215.25:8800/hls/47/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="中视" group-title="港澳台",中视 -http://220.135.241.47:8301/0.ts$LR•IPV4•4『线路1』 +http://74.91.26.218:82/live/ctv.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="中视" group-title="港澳台",中视 -http://74.91.26.218:82/live/ctv.m3u8$LR•IPV4•4『线路2』 +p3p://167.114.175.6:55331/621dab720008820a26e1e06b75653395$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="中视" group-title="港澳台",中视 -p3p://167.114.175.6:55331/621dab720008820a26e1e06b75653395$LR•IPV4•4『线路3』 +p3p://167.114.175.6:55331/621db1fb0006fbf526fb672712522a46$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="中视" group-title="港澳台",中视 -p3p://167.114.175.6:55331/621db1fb0006fbf526fb672712522a46$LR•IPV4•4『线路4』 +http://220.135.241.47:8301/0.ts$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="非凡新闻" group-title="港澳台",非凡新闻 rtmp://f13h.mine.nu/sat/tv581$LR•IPV4 #EXTINF:-1 tvg-name="东森新闻" group-title="港澳台",东森新闻 @@ -11330,135 +11338,135 @@ p3p://167.114.175.6:55331/663e9212000a54b4285005cd59217563$LR•IPV4 #EXTINF:-1 tvg-name="tvN" group-title="港澳台",tvN http://210.210.155.37/dr9445/h/h21/index.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-name="tvN" group-title="港澳台",tvN -http://217.26.190.76:8888/play/a0m6/index.m3u8$LR•IPV4•8『线路2』 +https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-name="tvN" group-title="港澳台",tvN -https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•8『线路3』 +p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-name="tvN" group-title="港澳台",tvN -https://live.legitpro.co.in/ctvnakdplus/index.m3u8$LR•IPV4•8『线路4』 +p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-name="tvN" group-title="港澳台",tvN -https://origin2.afxp.telemedia.co.za/abr_kapang/enterepreneur/playlist.m3u8$LR•IPV4•8『线路5』 +http://217.26.190.76:8888/play/a0m6/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-name="tvN" group-title="港澳台",tvN -https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•8『线路6』 +https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-name="tvN" group-title="港澳台",tvN -p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•8『线路7』 +https://live.legitpro.co.in/ctvnakdplus/index.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-name="tvN" group-title="港澳台",tvN -p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•8『线路8』 +https://origin2.afxp.telemedia.co.za/abr_kapang/enterepreneur/playlist.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-name="華視" group-title="港澳台",華視 http://seb.sason.top/sc/hsxw_fhd.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="DW" group-title="港澳台",DW https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV08.m3u8$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-name="DW" group-title="港澳台",DW -https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•9『线路2』 +https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-name="DW" group-title="港澳台",DW -https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•9『线路3』 +http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-name="DW" group-title="港澳台",DW -https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/master.m3u8$LR•IPV4•9『线路4』 +http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-name="DW" group-title="港澳台",DW -https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•9『线路5』 +https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/stream04/streamPlaylist.m3u8$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-name="DW" group-title="港澳台",DW -https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/stream04/streamPlaylist.m3u8$LR•IPV4•9『线路6』 +https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-name="DW" group-title="港澳台",DW -https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•9『线路7』 +https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-name="DW" group-title="港澳台",DW -http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•9『线路8』 +https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/master.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-name="DW" group-title="港澳台",DW -http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•9『线路9』 +https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-name="France 24" group-title="港澳台",France 24 -https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路1』 +https://amg00106-france24-france24-samsunguk-qvpp8.amagi.tv/playlist/amg00106-france24-france24-samsunguk/playlist.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-name="France 24" group-title="港澳台",France 24 -https://live.france24.com/hls/live/2037218-b/F24_EN_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路2』 +https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-name="France 24" group-title="港澳台",France 24 -https://live.france24.com/hls/live/2037220-b/F24_ES_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路3』 +https://live.france24.com/hls/live/2037218-b/F24_EN_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-name="France 24" group-title="港澳台",France 24 -https://live.france24.com/hls/live/2037179-b/F24_FR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路4』 +https://live.france24.com/hls/live/2037220-b/F24_ES_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-name="France 24" group-title="港澳台",France 24 -https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00106-france24fast-france24-rakutenuk/playlist.m3u8$LR•IPV4•6『线路5』 +https://live.france24.com/hls/live/2037179-b/F24_FR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-name="France 24" group-title="港澳台",France 24 -https://amg00106-france24-france24-samsunguk-qvpp8.amagi.tv/playlist/amg00106-france24-france24-samsunguk/playlist.m3u8$LR•IPV4•6『线路6』 +https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00106-france24fast-france24-rakutenuk/playlist.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-name="KIX" group-title="港澳台",KIX http://210.210.155.37/dr9445/h/h07/index.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="KIX" group-title="港澳台",KIX -https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路2』 +p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="KIX" group-title="港澳台",KIX -p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路3』 +https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="NHK World-Japan" group-title="港澳台",NHK World-Japan -https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•4『线路1』 +http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="NHK World-Japan" group-title="港澳台",NHK World-Japan -https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•4『线路2』 +https://media-tyo.hls.nhkworld.jp/hls/w/live/master.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="NHK World-Japan" group-title="港澳台",NHK World-Japan -https://media-tyo.hls.nhkworld.jp/hls/w/live/master.m3u8$LR•IPV4•4『线路3』 +https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="NHK World-Japan" group-title="港澳台",NHK World-Japan -http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•4『线路4』 +https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•10『线路1』 +http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://84.17.50.102/nickjr/index.m3u8$LR•IPV4•10『线路2』 +http://108.181.20.255:27347/livehttpplay?channel_id=23044$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•10『线路3』 +http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•10『线路4』 +http://84.17.50.102/nickjr/index.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•10『线路5』 +https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://179.60.51.134:8888/NICK-JR/index.m3u8$LR•IPV4•10『线路6』 +https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•10『线路7』 +https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•10『线路8』 +http://179.60.51.134:8888/NICK-JR/index.m3u8$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://108.181.20.255:27347/livehttpplay?channel_id=23044$LR•IPV4•10『线路9』 +https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•10『线路10』 +https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://213.91.179.28:8000/play/a056$LR•IPV4•25『线路1』 +http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•25『线路1』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•25『线路2』 +http://213.91.179.28:8000/play/a056$LR•IPV4•25『线路2』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•25『线路3』 +http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•25『线路3』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://149.71.34.166:8000/play/a00u/index.m3u8$LR•IPV4•25『线路4』 +http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•25『线路4』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://193.239.186.231/NICK/index.m3u8$LR•IPV4•25『线路5』 +http://149.71.34.166:8000/play/a00u/index.m3u8$LR•IPV4•25『线路5』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://82.78.243.219:45739/play/a00o/index.m3u8$LR•IPV4•25『线路6』 +http://193.239.186.231/NICK/index.m3u8$LR•IPV4•25『线路6』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•25『线路7』 +http://82.78.243.219:45739/play/a00o/index.m3u8$LR•IPV4•25『线路7』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://202.169.224.202:8800/udp/239.9.1.17:1234$LR•IPV4•25『线路8』 +http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•25『线路8』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•25『线路9』 +http://202.169.224.202:8800/udp/239.9.1.17:1234$LR•IPV4•25『线路9』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•25『线路10』 +https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•25『线路10』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•25『线路11』 +https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•25『线路11』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•25『线路12』 +https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•25『线路12』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://46.149.191.217:9011/play/a018$LR•IPV4•25『线路13』 +https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•25『线路13』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•25『线路14』 +http://46.149.191.217:9011/play/a018$LR•IPV4•25『线路14』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://179.60.51.134:8888/NICK/index.m3u8$LR•IPV4•25『线路15』 +http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•25『线路15』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•25『线路16』 +http://179.60.51.134:8888/NICK/index.m3u8$LR•IPV4•25『线路16』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•25『线路17』 +https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•25『线路17』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•25『线路18』 +https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•25『线路18』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•25『线路19』 +https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•25『线路19』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•25『线路20』 +https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•25『线路20』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•25『线路21』 +https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•25『线路21』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•25『线路22』 +https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•25『线路22』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•25『线路23』 +https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•25『线路23』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•25『线路24』 +https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•25『线路24』 #EXTINF:-1 tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•25『线路25』 +https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•25『线路25』 #EXTINF:-1 tvg-name="Thrill" group-title="港澳台",Thrill https://cdn10jtedge.indihometv.com/atm/DASH/thrill/manifest.mpd$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="Thrill" group-title="港澳台",Thrill @@ -11466,25 +11474,25 @@ https://8c4e8f4f.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/Um9rdV #EXTINF:-1 tvg-name="ZooMoo" group-title="港澳台",ZooMoo p3p://167.114.175.6:55331/65679bc200084412adeb40284be664e6$LR•IPV4 #EXTINF:-1 tvg-name="华视" group-title="港澳台",华视 -http://220.135.241.47:8318/0.ts$LR•IPV4•7『线路1』 +http://74.91.26.218:82/live/cts.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="华视" group-title="港澳台",华视 -http://220.135.241.47:8317/0.ts$LR•IPV4•7『线路2』 +http://74.91.26.218:82/live/ctsjy.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="华视" group-title="港澳台",华视 -http://74.91.26.218:82/live/cts.m3u8$LR•IPV4•7『线路3』 +http://74.91.26.218:82/live/ctsnews.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="华视" group-title="港澳台",华视 -http://74.91.26.218:82/live/ctsjy.m3u8$LR•IPV4•7『线路4』 +rtmp://f13h.mine.nu/sat/tv111$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-name="华视" group-title="港澳台",华视 -http://74.91.26.218:82/live/ctsnews.m3u8$LR•IPV4•7『线路5』 +p3p://167.114.175.6:55331/61eff95c000bcf35803ebfe7426e2914$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-name="华视" group-title="港澳台",华视 -rtmp://f13h.mine.nu/sat/tv111$LR•IPV4•7『线路6』 +http://220.135.241.47:8318/0.ts$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-name="华视" group-title="港澳台",华视 -p3p://167.114.175.6:55331/61eff95c000bcf35803ebfe7426e2914$LR•IPV4•7『线路7』 +http://220.135.241.47:8317/0.ts$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="寰宇新闻" group-title="港澳台",寰宇新闻 https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV02.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="寰宇新闻" group-title="港澳台",寰宇新闻 -http://rihou.cc:555/tv/寰宇新闻$LR•IPV4•3『线路2』 +p3p://167.114.175.6:55331/612d7c11000c9faf888ebf9f3276784e$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="寰宇新闻" group-title="港澳台",寰宇新闻 -p3p://167.114.175.6:55331/612d7c11000c9faf888ebf9f3276784e$LR•IPV4•3『线路3』 +http://rihou.cc:555/tv/寰宇新闻$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="靖天国际" group-title="港澳台",靖天国际 p3p://167.114.175.6:55331/612db8220006940e897960753ab534e9$LR•IPV4 #EXTINF:-1 tvg-name="镜新闻" group-title="港澳台",镜新闻 @@ -11496,13 +11504,13 @@ http://cdn8.163189.xyz/163189/lhkt$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="龙华卡通" group-title="港澳台",龙华卡通 p3p://167.114.175.6:55331/6264b6e0000669483c6365b319d43878$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="龙华日韩" group-title="港澳台",龙华日韩 -https://cdn8.163189.xyz/163189/lhrh$LR•IPV4•4『线路1』 +http://43.251.226.89:8080/play/912.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="龙华日韩" group-title="港澳台",龙华日韩 http://cdn8.163189.xyz/163189/lhrh$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="龙华日韩" group-title="港澳台",龙华日韩 -http://43.251.226.89:8080/play/912.m3u8$LR•IPV4•4『线路3』 +p3p://167.114.175.6:55331/621e1d0e00085766289da9bb1d7120af$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="龙华日韩" group-title="港澳台",龙华日韩 -p3p://167.114.175.6:55331/621e1d0e00085766289da9bb1d7120af$LR•IPV4•4『线路4』 +https://cdn8.163189.xyz/163189/lhrh$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="龙华洋片" group-title="港澳台",龙华洋片 http://43.251.226.89:8080/play/908.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="龙华洋片" group-title="港澳台",龙华洋片 @@ -11530,41 +11538,41 @@ p3p://167.114.175.6:55331/602c73500002f4d29c90fa1270f21160$LR•IPV4•2『线 #EXTINF:-1 tvg-name="凤凰卫视" group-title="港澳台",凤凰卫视 http://cdn.132.us.kg/live/fhzw/stream.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="Viutv" group-title="港澳台",Viutv -https://cdn.163189.xyz/163189/viu$LR•IPV4•8『线路1』 +http://php.jdshipin.com/TVOD/iptv.php?id=viutv2$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-name="Viutv" group-title="港澳台",Viutv -http://push.cdn1.hls123.de:8080/streams/iewbjlpp9v/index.m3u8$LR•IPV4•8『线路2』 +https://cdn.163189.xyz/163189/viu$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-name="Viutv" group-title="港澳台",Viutv -http://php.jdshipin.com/TVOD/iptv.php?id=viutv2$LR•IPV4•8『线路3』 +http://php.jdshipin.com/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-name="Viutv" group-title="港澳台",Viutv -http://php.jdshipin.com/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路4』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-name="Viutv" group-title="港澳台",Viutv -http://php.jdshipin.com:8880/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路5』 +http://php.jdshipin.com/PLTV/iptv.php?id=viutv2$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-name="Viutv" group-title="港澳台",Viutv -http://php.jdshipin.com/PLTV/iptv.php?id=viutv2$LR•IPV4•8『线路6』 +http://rihou.cc:555/tv/[Cx]VIUTV英$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-name="Viutv" group-title="港澳台",Viutv -http://rihou.cc:555/tv/[Cx]VIUTV英$LR•IPV4•8『线路7』 +http://rihou.cc:555/tv/[Cx]VIUTV粤$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-name="Viutv" group-title="港澳台",Viutv -http://rihou.cc:555/tv/[Cx]VIUTV粤$LR•IPV4•8『线路8』 +http://push.cdn1.hls123.de:8080/streams/iewbjlpp9v/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-name="Now剧集" group-title="港澳台",Now剧集 p3p://167.114.175.6:55331/63ed3e1500077d30e7f449055a0846ce$LR•IPV4 #EXTINF:-1 tvg-name="民视" group-title="港澳台",民视 https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV17.m3u8$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-name="民视" group-title="港澳台",民视 -http://rihou.cc:555/tv/民视新闻$LR•IPV4•9『线路2』 +http://38.64.72.148:80/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-name="民视" group-title="港澳台",民视 -http://211.72.174.95:8115/0.ts$LR•IPV4•9『线路3』 +http://38.64.72.148:80/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-name="民视" group-title="港澳台",民视 -http://211.72.174.95:8117/0.ts$LR•IPV4•9『线路4』 +http://38.64.72.148/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-name="民视" group-title="港澳台",民视 -http://38.64.72.148:80/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•9『线路5』 +http://38.64.72.148/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-name="民视" group-title="港澳台",民视 -http://38.64.72.148:80/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•9『线路6』 +rtmp://f13h.mine.nu/sat/tv051$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-name="民视" group-title="港澳台",民视 -http://38.64.72.148/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•9『线路7』 +http://rihou.cc:555/tv/民视新闻$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-name="民视" group-title="港澳台",民视 -http://38.64.72.148/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•9『线路8』 +http://211.72.174.95:8115/0.ts$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-name="民视" group-title="港澳台",民视 -rtmp://f13h.mine.nu/sat/tv051$LR•IPV4•9『线路9』 +http://211.72.174.95:8117/0.ts$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-name="MoMo综合" group-title="港澳台",MoMo综合 p3p://167.114.175.6:55331/621e17750005eaa02887cb6e61ea2a58$LR•IPV4 #EXTINF:-1 tvg-name="ELEVEN体育1" group-title="港澳台",ELEVEN体育1 @@ -11590,13 +11598,13 @@ https://litv.zapi.us.kg/?id=litv-ftv10$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="now新闻" group-title="港澳台",now新闻 http://cdn.163189.xyz/163189/now$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="now新闻" group-title="港澳台",now新闻 -http://push.cdn1.hls123.de:8080/streams/zed7kdzyh1/index.m3u8$LR•IPV4•3『线路2』 +p3p://167.114.175.6:55331/653e4f3d0003bdbf0c98ffaf583a6e3a$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="now新闻" group-title="港澳台",now新闻 -p3p://167.114.175.6:55331/653e4f3d0003bdbf0c98ffaf583a6e3a$LR•IPV4•3『线路3』 +http://push.cdn1.hls123.de:8080/streams/zed7kdzyh1/index.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="有线综合" group-title="港澳台",有线综合 -https://cdn6.163189.xyz/163189/hoy$LR•IPV4•2『线路1』 +http://43.251.226.89:8080/play/891.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="有线综合" group-title="港澳台",有线综合 -http://43.251.226.89:8080/play/891.m3u8$LR•IPV4•2『线路2』 +https://cdn6.163189.xyz/163189/hoy$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="now直播" group-title="港澳台",now直播 p3p://167.114.175.6:55331/655fa52d000c3fc98ed0353c0e327e63$LR•IPV4 #EXTINF:-1 tvg-name="now财经" group-title="港澳台",now财经 @@ -11628,11 +11636,11 @@ https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV03.m3u8$LR•IPV4•2 #EXTINF:-1 tvg-name="东森财经" group-title="港澳台",东森财经 p3p://167.114.175.6:55331/61468bd70005123dea7373f226636dba$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="龙华戏剧" group-title="港澳台",龙华戏剧 -https://cdn8.163189.xyz/163189/lhxj$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/913.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="龙华戏剧" group-title="港澳台",龙华戏剧 http://cdn8.163189.xyz/163189/lhxj$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="龙华戏剧" group-title="港澳台",龙华戏剧 -http://43.251.226.89:8080/play/913.m3u8$LR•IPV4•3『线路3』 +https://cdn8.163189.xyz/163189/lhxj$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="靖天育乐" group-title="港澳台",靖天育乐 p3p://167.114.175.6:55331/6223be04000a57323e9a6b2919b21d76$LR•IPV4 #EXTINF:-1 tvg-name="靖天欢乐" group-title="港澳台",靖天欢乐 @@ -11668,89 +11676,89 @@ http://38.64.72.148:80/hls/modn/list/2013/chunklist1.m3u8$LR•IPV4•3『线路 #EXTINF:-1 tvg-name="东森超视" group-title="港澳台",东森超视 rtmp://f13h.mine.nu/sat/tv331$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="ROCK Action" group-title="港澳台",ROCK Action -http://nmk.ioapk.com:5050/4gtv-live138/index.m3u8$LR•IPV4•2『线路1』 +p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="ROCK Action" group-title="港澳台",ROCK Action -p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$LR•IPV4•2『线路2』 +http://nmk.ioapk.com:5050/4gtv-live138/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="TVB Plus" group-title="港澳台",TVB Plus -http://r.jdshipin.com/ndGgS$LR•IPV4•11『线路1』 +http://r.jdshipin.com/Nr5jq$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-name="TVB Plus" group-title="港澳台",TVB Plus -https://o11.163189.xyz/stream/tvb/tvbp/$LR•IPV4•11『线路2』 +http://php.jdshipin.com/TVOD/iptv.php?id=j2$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-name="TVB Plus" group-title="港澳台",TVB Plus -http://push.cdn1.hls123.de:8080/streams/gw8n98gubb4/index.m3u8$LR•IPV4•11『线路3』 +http://php.jdshipin.com/PLTV/iptv.php?id=j2$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-name="TVB Plus" group-title="港澳台",TVB Plus -http://php.jdshipin.com/TVOD/iptv.php?id=j2$LR•IPV4•11『线路4』 +http://cdn.132.us.kg/live/tvbp/stream.m3u8$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-name="TVB Plus" group-title="港澳台",TVB Plus -http://php.jdshipin.com/PLTV/iptv.php?id=j2$LR•IPV4•11『线路5』 +http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah007-golive.flv$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-name="TVB Plus" group-title="港澳台",TVB Plus -http://cdn.132.us.kg/live/tvbp/stream.m3u8$LR•IPV4•11『线路6』 +http://74.91.26.218:82/live/j2.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-name="TVB Plus" group-title="港澳台",TVB Plus -http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah007-golive.flv$LR•IPV4•11『线路7』 +http://rihou.cc:555/tv/[Pd]Plus综合$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-name="TVB Plus" group-title="港澳台",TVB Plus -http://74.91.26.218:82/live/j2.m3u8$LR•IPV4•11『线路8』 +p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-name="TVB Plus" group-title="港澳台",TVB Plus -http://rihou.cc:555/tv/[Pd]Plus综合$LR•IPV4•11『线路9』 +p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-name="TVB Plus" group-title="港澳台",TVB Plus -p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•11『线路10』 +https://o11.163189.xyz/stream/tvb/tvbp/$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-name="TVB Plus" group-title="港澳台",TVB Plus -p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•11『线路11』 +http://push.cdn1.hls123.de:8080/streams/gw8n98gubb4/index.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•25『线路1』 +p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•25『线路1』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•25『线路2』 +p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•25『线路2』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•25『线路3』 +http://akariko.netgenx.site/stream/jp/action_channel_%28axn%29/stream-output.m3u8?mode=hls$LR•IPV4•25『线路3』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•25『线路4』 +http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•25『线路4』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•25『线路5』 +http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•25『线路5』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://46.149.191.217:9009/play/a02d$LR•IPV4•25『线路6』 +http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•25『线路6』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://85.11.144.9:4222/AXN$LR•IPV4•25『线路7』 +http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•25『线路7』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•25『线路8』 +http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•25『线路8』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•25『线路9』 +http://46.149.191.217:9009/play/a02d$LR•IPV4•25『线路9』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://45.167.1.138:8000/play/a04s$LR•IPV4•25『线路10』 +http://85.11.144.9:4222/AXN$LR•IPV4•25『线路10』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://190.11.225.124:5000/live/axn_hd/playlist.m3u8$LR•IPV4•25『线路11』 +http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•25『线路11』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•25『线路12』 +http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•25『线路12』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•25『线路13』 +http://45.167.1.138:8000/play/a04s$LR•IPV4•25『线路13』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://81.15.109.89:8001/play/AXN$LR•IPV4•25『线路14』 +http://190.11.225.124:5000/live/axn_hd/playlist.m3u8$LR•IPV4•25『线路14』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•25『线路15』 +http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•25『线路15』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•25『线路16』 +http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•25『线路16』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•25『线路17』 +http://81.15.109.89:8001/play/AXN$LR•IPV4•25『线路17』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•25『线路18』 +https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•25『线路18』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•25『线路19』 +http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•25『线路19』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://81.15.109.89:8001/play/AXNBlack$LR•IPV4•25『线路20』 +http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•25『线路20』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://54.37.19.157/axn/playlist.m3u8$LR•IPV4•25『线路21』 +http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•25『线路21』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://81.15.109.89:8001/play/AXNWhite$LR•IPV4•25『线路22』 +http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•25『线路22』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -http://akariko.netgenx.site/stream/jp/action_channel_%28axn%29/stream-output.m3u8?mode=hls$LR•IPV4•25『线路23』 +http://81.15.109.89:8001/play/AXNBlack$LR•IPV4•25『线路23』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•25『线路24』 +http://54.37.19.157/axn/playlist.m3u8$LR•IPV4•25『线路24』 #EXTINF:-1 tvg-name="AXN" group-title="港澳台",AXN -p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•25『线路25』 +http://81.15.109.89:8001/play/AXNWhite$LR•IPV4•25『线路25』 #EXTINF:-1 tvg-name="娱乐新闻" group-title="港澳台",娱乐新闻 -http://cdn6.163189.xyz/163189/ylxw$LR•IPV4•4『线路1』 +http://php.jdshipin.com/PLTV/iptv.php?id=tvbylxw$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="娱乐新闻" group-title="港澳台",娱乐新闻 -http://php.jdshipin.com/PLTV/iptv.php?id=tvbylxw$LR•IPV4•4『线路2』 +http://php.jdshipin.com/smt.php?id=Tvbentertainment$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="娱乐新闻" group-title="港澳台",娱乐新闻 -http://php.jdshipin.com/smt.php?id=Tvbentertainment$LR•IPV4•4『线路3』 +https://hls-gateway.vpstv.net/streams/708904.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="娱乐新闻" group-title="港澳台",娱乐新闻 -https://hls-gateway.vpstv.net/streams/708904.m3u8$LR•IPV4•4『线路4』 +http://cdn6.163189.xyz/163189/ylxw$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="澳门卫视" group-title="港澳台",澳门卫视 http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="澳门卫视" group-title="港澳台",澳门卫视 @@ -11778,77 +11786,77 @@ https://live.streamingfast.net/osmflivech1.m3u8$LR•IPV4•38『线路1』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good https://live.streamingfast.net/osmflivech2.m3u8$LR•IPV4•38『线路2』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•38『线路3』 +http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•38『线路3』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•38『线路4』 +http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•38『线路4』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•38『线路5』 +p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•38『线路5』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路6』 +https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•38『线路6』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路7』 +http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•38『线路7』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路8』 +https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•38『线路8』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路9』 +https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路9』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路10』 +https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路10』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路11』 +https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路11』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路12』 +https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路12』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路13』 +https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路13』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路14』 +https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路14』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路15』 +https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路15』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路16』 +https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路16』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路17』 +https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路17』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路18』 +https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路18』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路19』 +https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路19』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路20』 +https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路20』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路21』 +https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路21』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路22』 +https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路22』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路23』 +https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路23』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路24』 +https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路24』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路25』 +https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路25』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路26』 +https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路26』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路27』 +https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路27』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路28』 +https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路28』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路29』 +https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路29』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路30』 +https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路30』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路31』 +https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路31』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路32』 +https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路32』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路33』 +https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路33』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路34』 +https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路34』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•38『线路35』 +https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路35』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•38『线路36』 +https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路36』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•38『线路37』 +https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路37』 #EXTINF:-1 tvg-name="Good" group-title="港澳台",Good -p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•38『线路38』 +https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•38『线路38』 #EXTINF:-1 tvg-name="Beautiful Life TV" group-title="港澳台",Beautiful Life TV https://5ddce30eb4b55.streamlock.net/bltvhd/bltv1/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="Supreme Master TV" group-title="港澳台",Supreme Master TV @@ -11874,35 +11882,35 @@ https://ythls.armelin.one/channel/UC2VmWn8dAqkzlQqvy02E1PA.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News https://live.corusdigitaldev.com/groupb/live/3062d0e3-ed4c-4f47-8482-95648250f4b8/live.isml/.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•16『线路2』 +http://iptv.zkbhj.com/tv/url/go?id=188da1cd42026cce4e3c6fd900520b5bf2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•16『线路3』 +https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•16『线路4』 +https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•16『线路5』 +https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•16『线路6』 +https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•16『线路7』 +https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•16『线路8』 +https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•16『线路9』 +https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•16『线路10』 +https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•16『线路11』 +https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•16『线路12』 +https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•16『线路13』 +https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•16『线路14』 +https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•16『线路15』 +https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-name="Global News" group-title="港澳台",Global News -http://iptv.zkbhj.com/tv/url/go?id=188da1cd42026cce4e3c6fd900520b5bf2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•16『线路16』 +https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-name="SET iNews" group-title="港澳台",SET iNews https://ythls.armelin.one/channel/UCoNYj9OFHZn3ACmmeRCPwbA.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="TTV News" group-title="港澳台",TTV News @@ -11940,21 +11948,21 @@ https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV15.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="KPop" group-title="港澳台",KPop https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV16.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-name="KPop" group-title="港澳台",KPop -https://cloud.tvomix.com/KPOPMIX/index.m3u8$LR•IPV4•6『线路2』 +https://ads.its-newid.net/api/manifest.m3u8?tp=r_channel&channel_name=newkpop&channel_id=newid_165$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-name="KPop" group-title="港澳台",KPop -https://ads.its-newid.net/api/manifest.m3u8?ads.service_id=USAJ3000013FJ&channel_id=newid_338&tp=samsung_tvplus$LR•IPV4•6『线路3』 +https://cloud.tvomix.com/KPOPMIX/index.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-name="KPop" group-title="港澳台",KPop -https://ads.its-newid.net/api/manifest.m3u8?ads.service_id=GB17000088V&channel_id=newid_086&tp=samsung_tvplus$LR•IPV4•6『线路4』 +https://ads.its-newid.net/api/manifest.m3u8?ads.service_id=USAJ3000013FJ&channel_id=newid_338&tp=samsung_tvplus$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-name="KPop" group-title="港澳台",KPop -https://lotus.stingray.com/manifest/ose-317ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•6『线路5』 +https://ads.its-newid.net/api/manifest.m3u8?ads.service_id=GB17000088V&channel_id=newid_086&tp=samsung_tvplus$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-name="KPop" group-title="港澳台",KPop -https://ads.its-newid.net/api/manifest.m3u8?tp=r_channel&channel_name=newkpop&channel_id=newid_165$LR•IPV4•6『线路6』 +https://lotus.stingray.com/manifest/ose-317ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-name="HOY TV" group-title="港澳台",HOY TV -https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路1』 +p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="HOY TV" group-title="港澳台",HOY TV -http://push.cdn1.hls123.de:8080/streams/dguce4v9b69/index.m3u8$LR•IPV4•3『线路2』 +https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="HOY TV" group-title="港澳台",HOY TV -p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路3』 +http://push.cdn1.hls123.de:8080/streams/dguce4v9b69/index.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="MOMOTV" group-title="港澳台",MOMOTV rtmp://f13h.mine.nu/sat/tv761$LR•IPV4 #EXTINF:-1 tvg-name="大爱1" group-title="港澳台",大爱1 @@ -11966,41 +11974,41 @@ p3p://167.114.175.6:55331/64c4d2ba00051d1d320d17d218503f93$LR•IPV4 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic http://23.237.104.106:8080/USA_NAT_GEO/index.m3u8$LR•IPV4•19『线路1』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://213.91.179.28:8000/play/a0ct$LR•IPV4•19『线路2』 +http://akariko.netgenx.site/stream/jp/national_geographic_japan/stream-output.m3u8?mode=hls$LR•IPV4•19『线路2』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•19『线路3』 +http://213.91.179.28:8000/play/a0ct$LR•IPV4•19『线路3』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•19『线路4』 +http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•19『线路4』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://rezofoot.tv/NATIONAL-GEOGRAPHIC/index.m3u8$LR•IPV4•19『线路5』 +https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•19『线路5』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•19『线路6』 +http://rezofoot.tv/NATIONAL-GEOGRAPHIC/index.m3u8$LR•IPV4•19『线路6』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•19『线路7』 +https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•19『线路7』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•19『线路8』 +http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•19『线路9』 +http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•19『线路9』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•19『线路10』 +http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•19『线路10』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://213.91.179.28:8000/play/a0cu$LR•IPV4•19『线路11』 +http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•19『线路11』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•19『线路12』 +http://213.91.179.28:8000/play/a0cu$LR•IPV4•19『线路12』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•19『线路13』 +http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•19『线路13』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•19『线路14』 +http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•19『线路14』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•19『线路15』 +http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•19『线路15』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•19『线路16』 +https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•19『线路16』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•19『线路17』 +http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•19『线路17』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•19『线路18』 +http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•19『线路18』 #EXTINF:-1 tvg-name="National Geographic" group-title="港澳台",National Geographic -http://akariko.netgenx.site/stream/jp/national_geographic_japan/stream-output.m3u8?mode=hls$LR•IPV4•19『线路19』 +http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•19『线路19』 #EXTINF:-1 tvg-name="東森新聞" group-title="港澳台",東森新聞 http://seb.sason.top/sc/dsxw_fhd.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="Xite Hits" group-title="港澳台",Xite Hits @@ -12014,19 +12022,19 @@ https://d198ro05q94rc4.cloudfront.net/XITE_Rock_On.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="FIGHT SPORTS" group-title="港澳台",FIGHT SPORTS p3p://167.114.175.6:55331/65a4480e000eb9449aeb1d5a33663b73$LR•IPV4 #EXTINF:-1 tvg-name="NBA TV" group-title="港澳台",NBA TV -https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•7『线路1』 +https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="NBA TV" group-title="港澳台",NBA TV -http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•7『线路2』 +https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="NBA TV" group-title="港澳台",NBA TV -https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•7『线路3』 +https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="NBA TV" group-title="港澳台",NBA TV -https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•7『线路4』 +http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-name="NBA TV" group-title="港澳台",NBA TV -https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•7『线路5』 +p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-name="NBA TV" group-title="港澳台",NBA TV -http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•7『线路6』 +https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-name="NBA TV" group-title="港澳台",NBA TV -p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•7『线路7』 +http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="Sukan" group-title="港澳台",Sukan https://d25tgymtnqzu8s.cloudfront.net/smil:sukan/manifest.mpd$LR•IPV4 #EXTINF:-1 tvg-name="TV9" group-title="港澳台",TV9 @@ -12060,257 +12068,257 @@ https://vs-hls-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_ch #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC https://aegis-cloudfront-1.tubi.video/bb1fc6ad-9948-42ea-aaf3-20acfcdeecac/playlist.m3u8$LR•IPV4•100『线路2』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路3』 +http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•100『线路3』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_channel_islands/pc_hd_abr_v2.mpd$LR•IPV4•100『线路4』 +http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•100『线路4』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east/pc_hd_abr_v2.mpd$LR•IPV4•100『线路5』 +p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•100『线路5』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_yorkshire/pc_hd_abr_v2.mpd$LR•IPV4•100『线路6』 +p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•100『线路6』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/pc_hd_abr_v2.mpd$LR•IPV4•100『线路7』 +http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•100『线路7』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路8』 +https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•100『线路8』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_london/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路9』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路9』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•100『线路10』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_channel_islands/pc_hd_abr_v2.mpd$LR•IPV4•100『线路10』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/pc_hd_abr_v2.mpd$LR•IPV4•100『线路11』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east/pc_hd_abr_v2.mpd$LR•IPV4•100『线路11』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路12』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_yorkshire/pc_hd_abr_v2.mpd$LR•IPV4•100『线路12』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/pc_hd_abr_v2.mpd$LR•IPV4•100『线路13』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/pc_hd_abr_v2.mpd$LR•IPV4•100『线路13』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路14』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路14』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/pc_hd_abr_v2.mpd$LR•IPV4•100『线路15』 +https://vs-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_london/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路15』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路16』 +http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•100『线路16』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•100『线路17』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/pc_hd_abr_v2.mpd$LR•IPV4•100『线路17』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.mpd$LR•IPV4•100『线路18』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路18』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south/pc_hd_abr_v2.mpd$LR•IPV4•100『线路19』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/pc_hd_abr_v2.mpd$LR•IPV4•100『线路19』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_east/pc_hd_abr_v2.mpd$LR•IPV4•100『线路20』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路20』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_west/pc_hd_abr_v2.mpd$LR•IPV4•100『线路21』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/pc_hd_abr_v2.mpd$LR•IPV4•100『线路21』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_wales_hd/pc_hd_abr_v2.mpd$LR•IPV4•100『线路22』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路22』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west/pc_hd_abr_v2.mpd$LR•IPV4•100『线路23』 +https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•100『线路23』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west_midlands/pc_hd_abr_v2.mpd$LR•IPV4•100『线路24』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.mpd$LR•IPV4•100『线路24』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_yorks/pc_hd_abr_v2.mpd$LR•IPV4•100『线路25』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south/pc_hd_abr_v2.mpd$LR•IPV4•100『线路25』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_scotland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路26』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_east/pc_hd_abr_v2.mpd$LR•IPV4•100『线路26』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_three_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路27』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_west/pc_hd_abr_v2.mpd$LR•IPV4•100『线路27』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•100『线路28』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_wales_hd/pc_hd_abr_v2.mpd$LR•IPV4•100『线路28』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•100『线路29』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west/pc_hd_abr_v2.mpd$LR•IPV4•100『线路29』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路30』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west_midlands/pc_hd_abr_v2.mpd$LR•IPV4•100『线路30』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_wales_digital/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路31』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_yorks/pc_hd_abr_v2.mpd$LR•IPV4•100『线路31』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•100『线路32』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_scotland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路32』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•100『线路33』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_three_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路33』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路34』 +http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•100『线路34』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•100『线路35』 +https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•100『线路35』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_persian_tv/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路36』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路36』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•100『线路37』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_wales_digital/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路37』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://81.15.109.89:8001/play/BBCBrit$LR•IPV4•100『线路38』 +https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist540p.m3u8$LR•IPV4•100『线路38』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://81.15.109.89:8001/play/BBCFirst$LR•IPV4•100『线路39』 +http://akariko.netgenx.site/stream/jp/bbc_news/stream-output.m3u8?mode=hls$LR•IPV4•100『线路39』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路40』 +https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•100『线路40』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•100『线路41』 +https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•100『线路41』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路42』 +https://vs-cmaf-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路42』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•100『线路43』 +http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•100『线路43』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-ww.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_afghan_tv/pc_hd_abr_v2.mpd$LR•IPV4•100『线路44』 +https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_persian_tv/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路44』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:red_button_one/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路45』 +http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•100『线路45』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_002/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路46』 +http://81.15.109.89:8001/play/BBCBrit$LR•IPV4•100『线路46』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_003/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路47』 +http://81.15.109.89:8001/play/BBCFirst$LR•IPV4•100『线路47』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_004/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路48』 +https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路48』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_005/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路49』 +https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•100『线路49』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_006/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路50』 +https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路50』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路51』 +https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•100『线路51』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_008/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路52』 +https://vs-cmaf-pushb-ww.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_afghan_tv/pc_hd_abr_v2.mpd$LR•IPV4•100『线路52』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_009/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路53』 +https://vs-cmaf-pushb-uk.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:red_button_one/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路53』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_010/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路54』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_002/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路54』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_011/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路55』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_003/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路55』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_012/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路56』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_004/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路56』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_013/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路57』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_005/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路57』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_014/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路58』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_006/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路58』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_015/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路59』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路59』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_016/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路60』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_008/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路60』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_017/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路61』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_009/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路61』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_018/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路62』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_010/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路62』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_019/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路63』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_011/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路63』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_020/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路64』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_012/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路64』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_021/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路65』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_013/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路65』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_022/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路66』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_014/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路66』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_023/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路67』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_015/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路67』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_024/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路68』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_016/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路68』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•100『线路69』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_017/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路69』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•100『线路70』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_018/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路70』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•100『线路71』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_019/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路71』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路72』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_020/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路72』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路73』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_021/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路73』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路74』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_022/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路74』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路75』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_023/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路75』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路76』 +https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_024/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路76』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路77』 +https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•100『线路77』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:cbbc_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路78』 +https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•100『线路78』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•100『线路79』 +https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•100『线路79』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路80』 +https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路80』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路81』 +https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路81』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•100『线路82』 +https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路82』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://81.15.109.89:8001/play/BBCLifestyle$LR•IPV4•100『线路83』 +https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路83』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•100『线路84』 +https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路84』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://81.15.109.89:8001/play/BBCEarth$LR•IPV4•100『线路85』 +https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路85』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•100『线路86』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:cbbc_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路86』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•100『线路87』 +https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•100『线路87』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_parliament/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路88』 +https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路88』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路89』 +https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路89』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://vs-cmaf-pushb-uk.live.fastly.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_four_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路90』 +https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•100『线路90』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•100『线路91』 +http://81.15.109.89:8001/play/BBCLifestyle$LR•IPV4•100『线路91』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/CBBCHD/index.m3u8$LR•IPV4•100『线路92』 +https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•100『线路92』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist540p.m3u8$LR•IPV4•100『线路93』 +http://81.15.109.89:8001/play/BBCEarth$LR•IPV4•100『线路93』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://akariko.netgenx.site/stream/jp/bbc_news/stream-output.m3u8?mode=hls$LR•IPV4•100『线路94』 +https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•100『线路94』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•100『线路95』 +http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•100『线路95』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•100『线路96』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_parliament/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路96』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•100『线路97』 +https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路97』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•100『线路98』 +https://vs-cmaf-pushb-uk.live.fastly.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_four_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路98』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•100『线路99』 +http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•100『线路99』 #EXTINF:-1 tvg-name="BBC" group-title="港澳台",BBC -https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•100『线路100』 +http://193.46.58.239:8080/CBBCHD/index.m3u8$LR•IPV4•100『线路100』 #EXTINF:-1 tvg-name="CNA" group-title="港澳台",CNA https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="CNA" group-title="港澳台",CNA -https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•7『线路2』 +http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="CNA" group-title="港澳台",CNA -https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•7『线路3』 +https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="CNA" group-title="港澳台",CNA -https://live-evg7.tv360.bitel.com.pe/bitel/radiounotv/playlist.m3u8$LR•IPV4•7『线路4』 +https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-name="CNA" group-title="港澳台",CNA -https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•7『线路5』 +https://live-evg7.tv360.bitel.com.pe/bitel/radiounotv/playlist.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-name="CNA" group-title="港澳台",CNA -https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•7『线路6』 +https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-name="CNA" group-title="港澳台",CNA -http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•7『线路7』 +https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN https://ds2c506obo7m8.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-7zjq3tdqasbg8/index.m3u8$LR•IPV4•13『线路1』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•13『线路2』 +http://live.cnnindonesia.com/livecnn/smil:cnntv.smil/chunklist_w1285822120_b384000_sleng.m3u8$LR•IPV4•13『线路2』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_014/Stream/playlist.m3u8$LR•IPV4•13『线路3』 +http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•13『线路3』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•13『线路4』 +https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_014/Stream/playlist.m3u8$LR•IPV4•13『线路4』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•13『线路5』 +https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•13『线路6』 +https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•13『线路7』 +https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•13『线路8』 +https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•13『线路8』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•13『线路9』 +https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•13『线路9』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•13『线路10』 +https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•13『线路10』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•13『线路11』 +https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•13『线路11』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•13『线路12』 +https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•13『线路12』 #EXTINF:-1 tvg-name="CNN" group-title="港澳台",CNN -http://live.cnnindonesia.com/livecnn/smil:cnntv.smil/chunklist_w1285822120_b384000_sleng.m3u8$LR•IPV4•13『线路13』 +https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•13『线路13』 #EXTINF:-1 tvg-name="CBC News" group-title="港澳台",CBC News -https://d2ny9lo79ujali.cloudfront.net/CBC_News_International.m3u8$LR•IPV4•8『线路1』 +https://dbrb49pjoymg4.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/master.m3u8?ads.xumo_channelId=99991276$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路2』 +https://d2ny9lo79ujali.cloudfront.net/CBC_News_International.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-name="CBC News" group-title="港澳台",CBC News -https://amagi-streams.akamaized.net/hls/live/2110960/cbcnewsbc/master.m3u8$LR•IPV4•8『线路3』 +https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路4』 +https://amagi-streams.akamaized.net/hls/live/2110960/cbcnewsbc/master.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-name="CBC News" group-title="港澳台",CBC News -https://amagi-streams.akamaized.net/hls/live/2110962/cbcexplore/master.m3u8$LR•IPV4•8『线路5』 +https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-name="CBC News" group-title="港澳台",CBC News -https://amagi-streams.akamaized.net/hls/live/2110961/cbctoronto/master.m3u8$LR•IPV4•8『线路6』 +https://amagi-streams.akamaized.net/hls/live/2110962/cbcexplore/master.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路7』 +https://amagi-streams.akamaized.net/hls/live/2110961/cbctoronto/master.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-name="CBC News" group-title="港澳台",CBC News -https://dbrb49pjoymg4.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/master.m3u8?ads.xumo_channelId=99991276$LR•IPV4•8『线路8』 +https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-name="Sky News" group-title="港澳台",Sky News https://d39chvnxm26pgp.cloudfront.net/v1/master/72588bff830dec7b26d7cbbf5f3c24928aec5c03/cc-sthen6ms4vxgv-stage/WNSFO/ABR.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-name="Sky News" group-title="港澳台",Sky News @@ -12334,21 +12342,21 @@ https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.st #EXTINF:-1 tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera https://live-hls-aje-ak.getaj.net/AJE/01.m3u8$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•9『线路2』 +http://live-hls-web-aja.getaj.net/AJA/02.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•9『线路3』 +https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•9『线路4』 +https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•9『线路5』 +https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•9『线路6』 +https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•9『线路7』 +https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•9『线路8』 +https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-name="Al Jazeera" group-title="港澳台",Al Jazeera -http://live-hls-web-aja.getaj.net/AJA/02.m3u8$LR•IPV4•9『线路9』 +https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-name="Arirang" group-title="港澳台",Arirang https://amdlive-ch01-ctnd-com.akamaized.net/arirang_1ch/smil:arirang_1ch.smil/chunklist_b3256000_sleng.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-name="Arirang" group-title="港澳台",Arirang @@ -12380,93 +12388,93 @@ http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2179.ts$LR•IPV4•28 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2182.ts$LR•IPV4•28『线路3』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•28『线路4』 +http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•28『线路4』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•28『线路5』 +http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•28『线路5』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•28『线路6』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•28『线路6』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•28『线路7』 +http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•28『线路7』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•28『线路8』 +http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•28『线路8』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•28『线路9』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•28『线路9』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•28『线路10』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•28『线路10』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•28『线路11』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•28『线路11』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://akariko.netgenx.site/stream/jp/sky_a/stream-output.m3u8?mode=hls$LR•IPV4•28『线路12』 +http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•28『线路12』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://akariko.netgenx.site/stream/jp/takarazuka_sky_stage/stream-output.m3u8?mode=hls$LR•IPV4•28『线路13』 +http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•28『线路13』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•28『线路14』 +http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•28『线路14』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•28『线路15』 +http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•28『线路15』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•28『线路16』 +http://vocotv.pro//revol/revol/276918$LR•IPV4•28『线路16』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•28『线路17』 +http://vocotv.pro//revol/revol/276924$LR•IPV4•28『线路17』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•28『线路18』 +http://vocotv.pro//revol/revol/276906$LR•IPV4•28『线路18』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•28『线路19』 +https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•28『线路19』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•28『线路20』 +http://akariko.netgenx.site/stream/jp/sky_a/stream-output.m3u8?mode=hls$LR•IPV4•28『线路20』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•28『线路21』 +http://akariko.netgenx.site/stream/jp/takarazuka_sky_stage/stream-output.m3u8?mode=hls$LR•IPV4•28『线路21』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•28『线路22』 +http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•28『线路22』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•28『线路23』 +https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•28『线路23』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•28『线路24』 +https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•28『线路24』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•28『线路25』 +https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•28『线路25』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276918$LR•IPV4•28『线路26』 +https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•28『线路26』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276924$LR•IPV4•28『线路27』 +https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•28『线路27』 #EXTINF:-1 tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276906$LR•IPV4•28『线路28』 +https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•28『线路28』 #EXTINF:-1 tvg-name="KBS world" group-title="港澳台",KBS world http://31.148.48.15/KBS_World/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="KBS world" group-title="港澳台",KBS world http://akariko.netgenx.site/stream/jp/kbs_world/stream-output.m3u8?mode=hls$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://jmp2.uk/plu-660c29b5aec9680008f5b4a4.m3u8$LR•IPV4•12『线路1』 +https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/554c05e7-129a-4758-97ba-aa2292e58973/1.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://37b4c228.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWZyX0ZJRkFQbHVzRnJlbmNoX0hMUw/playlist.m3u8$LR•IPV4•12『线路2』 +https://d2w9q46ikgrcwx.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/v1/sysdata_s_p_a_fifa_7/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://4397879b.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWRlX0ZJRkFQbHVzR2VybWFuX0hMUw/playlist.m3u8$LR•IPV4•12『线路3』 +https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/035f3906-e664-4f1b-83f0-a7547730adce/0.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://6c849fb3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctbXhfRklGQVBsdXNTcGFuaXNoLTFfSExT/playlist.m3u8$LR•IPV4•12『线路4』 +https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/b31ebba5-b6b6-4083-9426-1c4bd66b7119/0.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://5d95f7d7.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWl0X0ZJRkFQbHVzSXRhbGlhbl9ITFM/playlist.m3u8$LR•IPV4•12『线路5』 +https://jmp2.uk/plu-660c29b5aec9680008f5b4a4.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://e3be9ac5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctYnJfRklGQVBsdXNQb3J0dWd1ZXNlX0hMUw/playlist.m3u8$LR•IPV4•12『线路6』 +https://37b4c228.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWZyX0ZJRkFQbHVzRnJlbmNoX0hMUw/playlist.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://d63fabad.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWVzX0ZJRkFQbHVzU3BhbmlzaF9ITFM/playlist.m3u8$LR•IPV4•12『线路7』 +https://4397879b.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWRlX0ZJRkFQbHVzR2VybWFuX0hMUw/playlist.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://d2w9q46ikgrcwx.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/v1/sysdata_s_p_a_fifa_7/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•12『线路8』 +https://6c849fb3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctbXhfRklGQVBsdXNTcGFuaXNoLTFfSExT/playlist.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•12『线路9』 +https://5d95f7d7.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWl0X0ZJRkFQbHVzSXRhbGlhbl9ITFM/playlist.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/554c05e7-129a-4758-97ba-aa2292e58973/1.m3u8$LR•IPV4•12『线路10』 +https://e3be9ac5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctYnJfRklGQVBsdXNQb3J0dWd1ZXNlX0hMUw/playlist.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/035f3906-e664-4f1b-83f0-a7547730adce/0.m3u8$LR•IPV4•12『线路11』 +https://d63fabad.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWVzX0ZJRkFQbHVzU3BhbmlzaF9ITFM/playlist.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-name="FIFA+" group-title="港澳台",FIFA+ -https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/b31ebba5-b6b6-4083-9426-1c4bd66b7119/0.m3u8$LR•IPV4•12『线路12』 +https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-name="Newsmax" group-title="港澳台",Newsmax https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-name="Newsmax" group-title="港澳台",Newsmax -https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•5『线路2』 +http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-name="Newsmax" group-title="港澳台",Newsmax -https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/newsmax-tv/index.m3u8?ads.vf=Td2nCUXB4ha$LR•IPV4•5『线路3』 +https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-name="Newsmax" group-title="港澳台",Newsmax -http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•5『线路4』 +https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-name="Newsmax" group-title="港澳台",Newsmax -https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•5『线路5』 +https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/newsmax-tv/index.m3u8?ads.vf=Td2nCUXB4ha$LR•IPV4•5『线路5』 #EXTINF:-1 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-name="GB News" group-title="港澳台",GB News @@ -12474,17 +12482,17 @@ https://rakutenaa-lightning-gbnews-rakuten-ccoa9.amagi.tv/playlist/rakutenAA-lig #EXTINF:-1 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』 #EXTINF:-1 tvg-name="TBS" group-title="港澳台",TBS -https://cdntv.tbs.seoul.kr/tbs/tbs_tv_web.smil/playlist.m3u8$LR•IPV4•6『线路1』 +http://akariko.netgenx.site/stream/jp/tbs/stream-output.m3u8?mode=hls$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-name="TBS" group-title="港澳台",TBS -http://akariko.netgenx.site/stream/jp/tbs/stream-output.m3u8?mode=hls$LR•IPV4•6『线路2』 +http://akariko.netgenx.site/stream/jp/tbs_news/stream-output.m3u8?mode=hls$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-name="TBS" group-title="港澳台",TBS -http://akariko.netgenx.site/stream/jp/tbs_news/stream-output.m3u8?mode=hls$LR•IPV4•6『线路3』 +http://akariko.netgenx.site/stream/jp/bs_tbs/stream-output.m3u8?mode=hls$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-name="TBS" group-title="港澳台",TBS -http://akariko.netgenx.site/stream/jp/bs_tbs/stream-output.m3u8?mode=hls$LR•IPV4•6『线路4』 +http://akariko.netgenx.site/stream/jp/tbs_channel_1/stream-output.m3u8?mode=hls$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-name="TBS" group-title="港澳台",TBS -http://akariko.netgenx.site/stream/jp/tbs_channel_1/stream-output.m3u8?mode=hls$LR•IPV4•6『线路5』 +http://akariko.netgenx.site/stream/jp/tbs_channel_2/stream-output.m3u8?mode=hls$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-name="TBS" group-title="港澳台",TBS -http://akariko.netgenx.site/stream/jp/tbs_channel_2/stream-output.m3u8?mode=hls$LR•IPV4•6『线路6』 +https://cdntv.tbs.seoul.kr/tbs/tbs_tv_web.smil/playlist.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-name="ION Plus" group-title="港澳台",ION Plus https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01438-ewscrippscompan-ionplus-tablo/playlist.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="ION Plus" group-title="港澳台",ION Plus @@ -12504,897 +12512,897 @@ https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/ #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION https://action-rakuten-tv-uk.fast.rakuten.tv/v1/manifest/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/8e7f1d8c-5ba7-4dde-9834-b058e17f6bfe/4.m3u8$LR•IPV4•444『线路6』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://actionlive.siliconweb.com/actionabr/actiontv/playlist.m3u8$LR•IPV4•444『线路7』 +p3p://167.114.175.6:55331/65ac3b2b000a5828b9f89b6271881f96$LR•IPV4•444『线路7』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://rezofoot.tv/Action/index.m3u8$LR•IPV4•444『线路8』 +https://fash2043.cloudycdn.services/slive/ftv_ftv_4k_hevc_73d_42080_default_466_hls.smil/playlist.m3u8$LR•IPV4•444『线路8』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://dqi7ayt2o24fn.cloudfront.net/playlist.m3u8$LR•IPV4•444『线路9』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9831&tk=f6cc1e0a0e1a$LR•IPV4•444『线路9』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://213.91.179.28:8000/play/a04n$LR•IPV4•444『线路10』 +https://live-evg8.tv360.bitel.com.pe/bitel/abctelevisionSRT/playlist.m3u8$LR•IPV4•444『线路10』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-5f8ed1ff5c39700007e2204a.m3u8$LR•IPV4•444『线路11』 +https://livestream.telvue.com/accvision1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路11』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://webtvstream.bhtelecom.ba/hls7/filmbox_extra.m3u8$LR•IPV4•444『线路12』 +https://edge.essastream.com/aiontelevision/playlist.m3u8$LR•IPV4•444『线路12』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://213.91.179.28:8000/play/a04r$LR•IPV4•444『线路13』 +https://streamlov.alsolnet.com/grupocentrobo/live/playlist.m3u8$LR•IPV4•444『线路13』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://88.212.15.19/live/test_film_boxextra_hd_hevc/playlist.m3u8$LR•IPV4•444『线路14』 +https://srv.panelcast.net/dorian/dorian/playlist.m3u8$LR•IPV4•444『线路14』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://46.149.191.217:9005/play/a01j$LR•IPV4•444『线路15』 +https://viewhn.com/amagatelevision/sdfUYWKegHKRPpSirG/playlist.m3u8$LR•IPV4•444『线路15』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://31.222.235.15/mosfilm/index.m3u8$LR•IPV4•444『线路16』 +https://live-bd1.tv360.bitel.com.pe/manifest/america/master_clean_source.m3u8$LR•IPV4•444『线路16』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://shd-amg-fast.edgenextcdn.net/tx011/playlist.m3u8$LR•IPV4•444『线路17』 +https://live-antenne-reunion.zeop.tv/live/c3eds/antreunihd/hls_fta/antreunihd.m3u8?location=ZEOP01$LR•IPV4•444『线路17』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://116.90.120.151:8000/play/a0ax/index.m3u8$LR•IPV4•444『线路18』 +https://mini.allinonereborn.fun/tata.php?id=11585$LR•IPV4•444『线路18』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-561d7d484dc7c8770484914a.m3u8$LR•IPV4•444『线路19』 +https://canal.aupurtv.co/live/stream/index.m3u8$LR•IPV4•444『线路19』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-62ea3c2e4823db00072788ed.m3u8$LR•IPV4•444『线路20』 +https://owrcovcrpy.gpcdn.net/bpk-tv/1715/output/index.m3u8$LR•IPV4•444『线路20』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-617b37b361e0fd0008cfd8c5.m3u8$LR•IPV4•444『线路21』 +https://videostream.shockmedia.com.ar/hls/banivision/banivision.m3u8$LR•IPV4•444『线路21』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://0f846627524f4dd2995e93581379db82.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung-at_RakutenActionMovies-1/playlist.m3u8$LR•IPV4•444『线路22』 +https://d135ohnuotzzyo.cloudfront.net/index.m3u8$LR•IPV4•444『线路22』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://bca5a421a70c46ad911efd0a4767c4bf.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6075/master.m3u8$LR•IPV4•444『线路23』 +https://tv.arkeo.cl:1936/kymczwbrge/kymczwbrge/playlist.m3u8$LR•IPV4•444『线路23』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://284824cf70404fdfb6ddf9349009c710.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6066/master.m3u8$LR•IPV4•444『线路24』 +https://tigocloudgen.desdeparaguay.net/satelitaltv/satelitaltv/playlist.m3u8$LR•IPV4•444『线路24』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://87f2e2e5e7624e3bad85da1ca2ed31a7.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6067/master.m3u8$LR•IPV4•444『线路25』 +https://twitch-m3u8.bastypro112.workers.dev/plustelevisionbolivia/index.m3u8$LR•IPV4•444『线路25』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://a9c57ec7ec5e4b7daeacc6316a0bb404.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6069/master.m3u8$LR•IPV4•444『线路26』 +https://live-evg10.tv360.bitel.com.pe/bitel/anqaratv/playlist.m3u8$LR•IPV4•444『线路26』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•444『线路27』 +https://live20.bozztv.com/akamaissh101/ssh101/canalmulti24/playlist.m3u8$LR•IPV4•444『线路27』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cc-yw7ztecy8do3q.akamaized.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-yw7ztecy8do3q/SS_IN.m3u8$LR•IPV4•444『线路28』 +https://strhlslb01.streamakaci.tv/cen/cen-multi/playlist.m3u8$LR•IPV4•444『线路28』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://edge4-moblive.yuppcdn.net/trans1sd/smil:strtml19.smil/playlist.m3u8?dvr=$LR•IPV4•444『线路29』 +https://5790d294af2dc.streamlock.net/cenovision/cenovision/playlist.m3u8$LR•IPV4•444『线路29』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream8.cinerama.uz/1225/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路30』 +http://38.250.127.17:9800/play/a05h/index.m3u8$LR•IPV4•444『线路30』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://dbrb49pjoymg4.cloudfront.net/10001/99991745/hls/master.m3u8?ads.xumo_channelId=99991745$LR•IPV4•444『线路31』 +https://5790d294af2dc.streamlock.net/tvhdlive/tvhdlive/playlist.m3u8$LR•IPV4•444『线路31』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stmv6.voxtvhd.com.br/cineaccion/cineaccion/playlist.m3u8$LR•IPV4•444『线路32』 +http://maxotts.maxdigitaltv.com/x-media/C209/master.m3u8$LR•IPV4•444『线路32』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://103.72.101.252:8080/live/488.m3u8$LR•IPV4•444『线路33』 +http://190.122.104.210:5080/LiveApp/streams/cvision1.m3u8$LR•IPV4•444『线路33』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://rakutenaa-zylo-emotional-rakuten-r1zkm.amagi.tv/playlist/rakutenAA-zylo-emotional-rakuten/playlist.m3u8$LR•IPV4•444『线路34』 +https://radio.congoplanet.com/Congo_Planet_TV.sdp/Congo_Planet_TV/playlist.m3u8$LR•IPV4•444『线路34』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-evg8.tv360.bitel.com.pe/bitel/abctelevisionSRT/playlist.m3u8$LR•IPV4•444『线路35』 +https://stream.arcast.net:4443/correadigital/canal12/playlist.m3u8$LR•IPV4•444『线路35』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://livestream.telvue.com/accvision1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路36』 +https://lbgo.bozztv.com/ssh101/ssh101/Cosmovisi%C3%B3n/playlist.m3u8$LR•IPV4•444『线路36』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://edge.essastream.com/aiontelevision/playlist.m3u8$LR•IPV4•444『线路37』 +https://tv.picta.cu/cubavision/cubavision_0.m3u8$LR•IPV4•444『线路37』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streamlov.alsolnet.com/grupocentrobo/live/playlist.m3u8$LR•IPV4•444『线路38』 +https://tv.picta.cu/cvi/cvi_0.m3u8$LR•IPV4•444『线路38』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://srv.panelcast.net/dorian/dorian/playlist.m3u8$LR•IPV4•444『线路39』 +https://eu1.servers10.com:8081/8128/index.m3u8$LR•IPV4•444『线路39』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://viewhn.com/amagatelevision/sdfUYWKegHKRPpSirG/playlist.m3u8$LR•IPV4•444『线路40』 +http://maxotts.maxdigitaltv.com/x-media/C117/master.m3u8$LR•IPV4•444『线路40』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-bd1.tv360.bitel.com.pe/manifest/america/master_clean_source.m3u8$LR•IPV4•444『线路41』 +https://ss2.tvrdomi.com:1936/digitalvision/digitalvision/playlist.m3u8$LR•IPV4•444『线路41』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-antenne-reunion.zeop.tv/live/c3eds/antreunihd/hls_fta/antreunihd.m3u8?location=ZEOP01$LR•IPV4•444『线路42』 +https://rtmp.win:3650/live/diontvlive.m3u8$LR•IPV4•444『线路42』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://mini.allinonereborn.fun/tata.php?id=11585$LR•IPV4•444『线路43』 +https://live20.bozztv.com/giatv/giatv-doblec1/doblec1/playlist.m3u8$LR•IPV4•444『线路43』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://canal.aupurtv.co/live/stream/index.m3u8$LR•IPV4•444『线路44』 +https://vs20.live.opencaster.com/duacavision_092f3447/index.m3u8$LR•IPV4•444『线路44』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://owrcovcrpy.gpcdn.net/bpk-tv/1715/output/index.m3u8$LR•IPV4•444『线路45』 +https://live-evg11.tv360.bitel.com.pe/bitel/ecotv/playlist.m3u8$LR•IPV4•444『线路45』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://videostream.shockmedia.com.ar/hls/banivision/banivision.m3u8$LR•IPV4•444『线路46』 +https://edge.essastream.com/enntivision/playlist.m3u8$LR•IPV4•444『线路46』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d135ohnuotzzyo.cloudfront.net/index.m3u8$LR•IPV4•444『线路47』 +https://stream.haislin.com/entelevision/index.m3u8$LR•IPV4•444『线路47』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tv.arkeo.cl:1936/kymczwbrge/kymczwbrge/playlist.m3u8$LR•IPV4•444『线路48』 +https://kali.vdopanel.com:3090/hybrid/play.m3u8$LR•IPV4•444『线路48』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tigocloudgen.desdeparaguay.net/satelitaltv/satelitaltv/playlist.m3u8$LR•IPV4•444『线路49』 +https://stmv2.voxtvhd.com.br/evavision/evavision/playlist.m3u8$LR•IPV4•444『线路49』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://twitch-m3u8.bastypro112.workers.dev/plustelevisionbolivia/index.m3u8$LR•IPV4•444『线路50』 +https://edgectc.com/CTC_SAN_RAFAEL/index.m3u8$LR•IPV4•444『线路50』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-evg10.tv360.bitel.com.pe/bitel/anqaratv/playlist.m3u8$LR•IPV4•444『线路51』 +https://panel.freedomflixtv.org:3868/hybrid/play.m3u8$LR•IPV4•444『线路51』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live20.bozztv.com/akamaissh101/ssh101/canalmulti24/playlist.m3u8$LR•IPV4•444『线路52』 +https://reflect-watchkfon-fontana.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路52』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://strhlslb01.streamakaci.tv/cen/cen-multi/playlist.m3u8$LR•IPV4•444『线路53』 +https://fox.hostlagarto.com:8081/ghtelevision/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路53』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://5790d294af2dc.streamlock.net/cenovision/cenovision/playlist.m3u8$LR•IPV4•444『线路54』 +https://securestream11.champds.com/LIVE/GilletteWYLIVE/GilletteWYLIVE.m3u8$LR•IPV4•444『线路54』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://38.250.127.17:9800/play/a05h/index.m3u8$LR•IPV4•444『线路55』 +http://181.78.8.199:8000/play/a09k/index.m3u8$LR•IPV4•444『线路55』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://5790d294af2dc.streamlock.net/tvhdlive/tvhdlive/playlist.m3u8$LR•IPV4•444『线路56』 +https://reflect-golden-co.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路56』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://maxotts.maxdigitaltv.com/x-media/C209/master.m3u8$LR•IPV4•444『线路57』 +https://cdn.streamingcpanel.com:3447/live/hainavisionlive.m3u8$LR•IPV4•444『线路57』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://190.122.104.210:5080/LiveApp/streams/cvision1.m3u8$LR•IPV4•444『线路58』 +https://rpn.bozztv.com/ignitelive/ignitetv/ignitetv/playlist.m3u8$LR•IPV4•444『线路58』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://radio.congoplanet.com/Congo_Planet_TV.sdp/Congo_Planet_TV/playlist.m3u8$LR•IPV4•444『线路59』 +https://np.truestreamz.com/broadcaster/INDIGENOUSmob.stream/playlist.m3u8$LR•IPV4•444『线路59』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream.arcast.net:4443/correadigital/canal12/playlist.m3u8$LR•IPV4•444『线路60』 +https://mist01.homestream.fun/hls/interactivotv/index.m3u8$LR•IPV4•444『线路60』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://lbgo.bozztv.com/ssh101/ssh101/Cosmovisi%C3%B3n/playlist.m3u8$LR•IPV4•444『线路61』 +https://ap02.iqplay.tv:8082/iqb8002/i09/playlist.m3u8$LR•IPV4•444『线路61』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tv.picta.cu/cubavision/cubavision_0.m3u8$LR•IPV4•444『线路62』 +https://kctv.koryofront.org/stream/index.m3u8$LR•IPV4•444『线路62』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tv.picta.cu/cvi/cvi_0.m3u8$LR•IPV4•444『线路63』 +https://streamer.nknews.org/tvdash/stream.mpd$LR•IPV4•444『线路63』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://eu1.servers10.com:8081/8128/index.m3u8$LR•IPV4•444『线路64』 +http://playcom.trapemn.tv:1935/transcoderip/lanacionplus.stream/playlist.m3u8$LR•IPV4•444『线路64』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://maxotts.maxdigitaltv.com/x-media/C117/master.m3u8$LR•IPV4•444『线路65』 +https://cloud5.larivision.net/hls/live.m3u8$LR•IPV4•444『线路65』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://ss2.tvrdomi.com:1936/digitalvision/digitalvision/playlist.m3u8$LR•IPV4•444『线路66』 +https://5790d294af2dc.streamlock.net/manaclar/manaclar/playlist.m3u8$LR•IPV4•444『线路66』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://rtmp.win:3650/live/diontvlive.m3u8$LR•IPV4•444『线路67』 +https://twitch-m3u8.bastypro112.workers.dev/megavisionbo/index.m3u8$LR•IPV4•444『线路67』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live20.bozztv.com/giatv/giatv-doblec1/doblec1/playlist.m3u8$LR•IPV4•444『线路68』 +https://edge.essastream.com/miavisiontv/playlist.m3u8$LR•IPV4•444『线路68』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://vs20.live.opencaster.com/duacavision_092f3447/index.m3u8$LR•IPV4•444『线路69』 +https://streaming.telecablecentral.com.do/live/MicroHD/playlist.m3u8$LR•IPV4•444『线路69』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-evg11.tv360.bitel.com.pe/bitel/ecotv/playlist.m3u8$LR•IPV4•444『线路70』 +https://685c08ed6d81a.streamlock.net/live/mp4:MCTV_aac/playlist.m3u8$LR•IPV4•444『线路70』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://edge.essastream.com/enntivision/playlist.m3u8$LR•IPV4•444『线路71』 +https://stream.castr.com/5da89a909db964293ad13301/live_4e9cefb0652111f18e12cf968e79335c/index.fmp4.m3u8$LR•IPV4•444『线路71』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream.haislin.com/entelevision/index.m3u8$LR•IPV4•444『线路72』 +https://tv.picta.cu/multivision/multivision_1.m3u8$LR•IPV4•444『线路72』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://kali.vdopanel.com:3090/hybrid/play.m3u8$LR•IPV4•444『线路73』 +https://cnn.hostlagarto.com/musavisiontv/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路73』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stmv2.voxtvhd.com.br/evavision/evavision/playlist.m3u8$LR•IPV4•444『线路74』 +https://cnn.hostlagarto.com/ntvnavarrete/index.m3u8$LR•IPV4•444『线路74』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://edgectc.com/CTC_SAN_RAFAEL/index.m3u8$LR•IPV4•444『线路75』 +https://livestream.telvue.com/nctv791/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路75』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://panel.freedomflixtv.org:3868/hybrid/play.m3u8$LR•IPV4•444『线路76』 +https://2-fss-1.streamhoster.com/pl_122/201748-1431018-1/playlist.m3u8$LR•IPV4•444『线路76』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://reflect-watchkfon-fontana.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路77』 +https://tv.arkeo.cl:1936/nublevision/nublevision/playlist.m3u8$LR•IPV4•444『线路77』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://fox.hostlagarto.com:8081/ghtelevision/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路78』 +https://live20.bozztv.com/akamaissh101/ssh101/nuevavisionhd/playlist.m3u8$LR•IPV4•444『线路78』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://securestream11.champds.com/LIVE/GilletteWYLIVE/GilletteWYLIVE.m3u8$LR•IPV4•444『线路79』 +https://eu1.servers10.com:8081/8258/index.m3u8$LR•IPV4•444『线路79』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://181.78.8.199:8000/play/a09k/index.m3u8$LR•IPV4•444『线路80』 +https://securestream10.champds.com/LIVE/KOCTCALIVE/KOCTCALIVE.m3u8$LR•IPV4•444『线路80』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://reflect-golden-co.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路81』 +https://us.streaminghd.cl/pacificotelevision/video.m3u8$LR•IPV4•444『线路81』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn.streamingcpanel.com:3447/live/hainavisionlive.m3u8$LR•IPV4•444『线路82』 +https://vs20.live.opencaster.com/panche_3c70d368/index.m3u8$LR•IPV4•444『线路82』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://rpn.bozztv.com/ignitelive/ignitetv/ignitetv/playlist.m3u8$LR•IPV4•444『线路83』 +http://45.184.109.10/live/69393EAE6ADBC65A68F942022362A202/120.m3u8$LR•IPV4•444『线路83』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://np.truestreamz.com/broadcaster/INDIGENOUSmob.stream/playlist.m3u8$LR•IPV4•444『线路84』 +https://ss2.tvrdomi.com:1936/peraviavision/peraviavision/playlist.m3u8$LR•IPV4•444『线路84』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://mist01.homestream.fun/hls/interactivotv/index.m3u8$LR•IPV4•444『线路85』 +https://cdn3.wowza.com/5/cXdyRHF0Z3kxN0k2/pinole/G0032_002/playlist.m3u8$LR•IPV4•444『线路85』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://ap02.iqplay.tv:8082/iqb8002/i09/playlist.m3u8$LR•IPV4•444『线路86』 +https://live.kwikmotion.com/qtv1live/qtv1.smil/playlist.m3u8$LR•IPV4•444『线路86』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://kctv.koryofront.org/stream/index.m3u8$LR•IPV4•444『线路87』 +https://live.kwikmotion.com/qtv2live/qtv2.smil/playlist.m3u8$LR•IPV4•444『线路87』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streamer.nknews.org/tvdash/stream.mpd$LR•IPV4•444『线路88』 +https://vdopanel.jlahozconsulting.com/p/3142/hybrid/play.m3u8$LR•IPV4•444『线路88』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://playcom.trapemn.tv:1935/transcoderip/lanacionplus.stream/playlist.m3u8$LR•IPV4•444『线路89』 +https://lbgo.bozztv.com/ssh101/ssh101/ratvbol/playlist.m3u8$LR•IPV4•444『线路89』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cloud5.larivision.net/hls/live.m3u8$LR•IPV4•444『线路90』 +https://azura2.bitstreaming.net/hls/kollasuyo3/live.m3u8$LR•IPV4•444『线路90』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://5790d294af2dc.streamlock.net/manaclar/manaclar/playlist.m3u8$LR•IPV4•444『线路91』 +https://watch.haitilive.net/freehb/rtvs/index.m3u8$LR•IPV4•444『线路91』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://twitch-m3u8.bastypro112.workers.dev/megavisionbo/index.m3u8$LR•IPV4•444『线路92』 +https://live-evg10.tv360.bitel.com.pe/bitel/realtv/playlist.m3u8$LR•IPV4•444『线路92』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://edge.essastream.com/miavisiontv/playlist.m3u8$LR•IPV4•444『线路93』 +https://streamunoapp.com:3331/live/rocavisiontvlive.m3u8$LR•IPV4•444『线路93』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streaming.telecablecentral.com.do/live/MicroHD/playlist.m3u8$LR•IPV4•444『线路94』 +https://livestream.telvue.com/santamariactv3/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路94』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://685c08ed6d81a.streamlock.net/live/mp4:MCTV_aac/playlist.m3u8$LR•IPV4•444『线路95』 +https://soportedvb.click:3668/live/simavisiontvlive.m3u8$LR•IPV4•444『线路95』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream.castr.com/5da89a909db964293ad13301/live_4e9cefb0652111f18e12cf968e79335c/index.fmp4.m3u8$LR•IPV4•444『线路96』 +https://livestream.telvue.com/soundviewcmt2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路96』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tv.picta.cu/multivision/multivision_1.m3u8$LR•IPV4•444『线路97』 +https://k20.usastreams.com:8081/telered/index.m3u8$LR•IPV4•444『线路97』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cnn.hostlagarto.com/musavisiontv/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路98』 +http://server2grupocam.com:1945/teleunion/TU/playlist.m3u8$LR•IPV4•444『线路98』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cnn.hostlagarto.com/ntvnavarrete/index.m3u8$LR•IPV4•444『线路99』 +https://twitch-m3u8.bastypro112.workers.dev/radiosangabrielbolivia/index.m3u8$LR•IPV4•444『线路99』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://livestream.telvue.com/nctv791/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路100』 +https://live.kingdom-tv.com:3545/stream/play.m3u8$LR•IPV4•444『线路100』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://2-fss-1.streamhoster.com/pl_122/201748-1431018-1/playlist.m3u8$LR•IPV4•444『线路101』 +https://cdn140m.panaccess.com/HLS/Espoir47/index.m3u8$LR•IPV4•444『线路101』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tv.arkeo.cl:1936/nublevision/nublevision/playlist.m3u8$LR•IPV4•444『线路102』 +https://viewhn.com/canal30/live/playlist.m3u8$LR•IPV4•444『线路102』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live20.bozztv.com/akamaissh101/ssh101/nuevavisionhd/playlist.m3u8$LR•IPV4•444『线路103』 +https://live-evg11.tv360.bitel.com.pe/bitel/tvtarapotoSRT/playlist.m3u8$LR•IPV4•444『线路103』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://eu1.servers10.com:8081/8258/index.m3u8$LR•IPV4•444『线路104』 +https://5eac7b031d945.streamlock.net/TICAVISION/TICAVISION/playlist.m3u8$LR•IPV4•444『线路104』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://securestream10.champds.com/LIVE/KOCTCALIVE/KOCTCALIVE.m3u8$LR•IPV4•444『线路105』 +https://liveingesta118.cdnmedia.tv/trivisionlive/rtmp01-900/chunklist.m3u8?DVR=$LR•IPV4•444『线路105』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://us.streaminghd.cl/pacificotelevision/video.m3u8$LR•IPV4•444『线路106』 +https://rpn.bozztv.com/gusa/gusa-tvstn/index.m3u8$LR•IPV4•444『线路106』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://vs20.live.opencaster.com/panche_3c70d368/index.m3u8$LR•IPV4•444『线路107』 +https://5ff3d9babae13.streamlock.net/ubyecbxnfd/ubyecbxnfd/playlist.m3u8$LR•IPV4•444『线路107』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://45.184.109.10/live/69393EAE6ADBC65A68F942022362A202/120.m3u8$LR•IPV4•444『线路108』 +https://vallejo.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路108』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://ss2.tvrdomi.com:1936/peraviavision/peraviavision/playlist.m3u8$LR•IPV4•444『线路109』 +https://streaming.telecablecentral.com.do/Vallevision/ValleHD/playlist.m3u8$LR•IPV4•444『线路109』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn3.wowza.com/5/cXdyRHF0Z3kxN0k2/pinole/G0032_002/playlist.m3u8$LR•IPV4•444『线路110』 +https://reflect-vsctv.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路110』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live.kwikmotion.com/qtv1live/qtv1.smil/playlist.m3u8$LR•IPV4•444『线路111』 +https://fox.hostlagarto.com:8081/canal26/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路111』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live.kwikmotion.com/qtv2live/qtv2.smil/playlist.m3u8$LR•IPV4•444『线路112』 +http://181.78.8.199:8000/play/a0if/index.m3u8$LR•IPV4•444『线路112』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://vdopanel.jlahozconsulting.com/p/3142/hybrid/play.m3u8$LR•IPV4•444『线路113』 +http://181.78.8.199:8000/play/a091/index.m3u8$LR•IPV4•444『线路113』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://lbgo.bozztv.com/ssh101/ssh101/ratvbol/playlist.m3u8$LR•IPV4•444『线路114』 +https://ss2.tvrdomi.com:1936/vision3000/vision3000/playlist.m3u8$LR•IPV4•444『线路114』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://azura2.bitstreaming.net/hls/kollasuyo3/live.m3u8$LR•IPV4•444『线路115』 +https://media.streambrothers.com:19360/8308/8308.m3u8$LR•IPV4•444『线路115』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://watch.haitilive.net/freehb/rtvs/index.m3u8$LR•IPV4•444『线路116』 +https://cloudsavre.in.net/hls/stream.m3u8$LR•IPV4•444『线路116』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-evg10.tv360.bitel.com.pe/bitel/realtv/playlist.m3u8$LR•IPV4•444『线路117』 +https://live-evg5.tv360.bitel.com.pe/bitel/yurivisionSRT/playlist.m3u8$LR•IPV4•444『线路117』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streamunoapp.com:3331/live/rocavisiontvlive.m3u8$LR•IPV4•444『线路118』 +https://ds.tvabierta.net/memfs/b295f254-7af9-45e4-bfc6-7e0bba41929d.m3u8$LR•IPV4•444『线路118』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://livestream.telvue.com/santamariactv3/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路119』 +http://akariko.netgenx.site/stream/jp/fishing_vision/stream-output.m3u8?mode=hls$LR•IPV4•444『线路119』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://soportedvb.click:3668/live/simavisiontvlive.m3u8$LR•IPV4•444『线路120』 +http://108.181.20.255:27347/livehttpplay?channel_id=23088$LR•IPV4•444『线路120』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://livestream.telvue.com/soundviewcmt2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路121』 +http://108.181.20.255:27347/livehttpplay?channel_id=23089$LR•IPV4•444『线路121』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://k20.usastreams.com:8081/telered/index.m3u8$LR•IPV4•444『线路122』 +http://108.181.20.255:27347/livehttpplay?channel_id=23090$LR•IPV4•444『线路122』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://server2grupocam.com:1945/teleunion/TU/playlist.m3u8$LR•IPV4•444『线路123』 +http://108.181.20.255:27347/livehttpplay?channel_id=23091$LR•IPV4•444『线路123』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://twitch-m3u8.bastypro112.workers.dev/radiosangabrielbolivia/index.m3u8$LR•IPV4•444『线路124』 +http://108.181.20.255:27347/livehttpplay?channel_id=23092$LR•IPV4•444『线路124』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live.kingdom-tv.com:3545/stream/play.m3u8$LR•IPV4•444『线路125』 +http://108.181.20.255:27347/livehttpplay?channel_id=23102$LR•IPV4•444『线路125』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn140m.panaccess.com/HLS/Espoir47/index.m3u8$LR•IPV4•444『线路126』 +http://iptv.zkbhj.com/tv/url/go?id=4db03e9f679d9326568d74d500a9c5a4f2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•444『线路126』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://viewhn.com/canal30/live/playlist.m3u8$LR•IPV4•444『线路127』 +https://streams2.sofast.tv/umaxx/v1/0196fcdb0ee01ea506ec1fab16cfab/0196fcdf09931ea5064918d106ecf7/Automotions_eng_2500k.m3u8$LR•IPV4•444『线路127』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-evg11.tv360.bitel.com.pe/bitel/tvtarapotoSRT/playlist.m3u8$LR•IPV4•444『线路128』 +http://actionlive.siliconweb.com/actionabr/actiontv/playlist.m3u8$LR•IPV4•444『线路128』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://5eac7b031d945.streamlock.net/TICAVISION/TICAVISION/playlist.m3u8$LR•IPV4•444『线路129』 +http://rezofoot.tv/Action/index.m3u8$LR•IPV4•444『线路129』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://liveingesta118.cdnmedia.tv/trivisionlive/rtmp01-900/chunklist.m3u8?DVR=$LR•IPV4•444『线路130』 +https://dqi7ayt2o24fn.cloudfront.net/playlist.m3u8$LR•IPV4•444『线路130』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://rpn.bozztv.com/gusa/gusa-tvstn/index.m3u8$LR•IPV4•444『线路131』 +http://213.91.179.28:8000/play/a04n$LR•IPV4•444『线路131』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://5ff3d9babae13.streamlock.net/ubyecbxnfd/ubyecbxnfd/playlist.m3u8$LR•IPV4•444『线路132』 +https://jmp2.uk/plu-5f8ed1ff5c39700007e2204a.m3u8$LR•IPV4•444『线路132』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://vallejo.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路133』 +https://webtvstream.bhtelecom.ba/hls7/filmbox_extra.m3u8$LR•IPV4•444『线路133』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streaming.telecablecentral.com.do/Vallevision/ValleHD/playlist.m3u8$LR•IPV4•444『线路134』 +http://213.91.179.28:8000/play/a04r$LR•IPV4•444『线路134』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://reflect-vsctv.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路135』 +http://88.212.15.19/live/test_film_boxextra_hd_hevc/playlist.m3u8$LR•IPV4•444『线路135』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://fox.hostlagarto.com:8081/canal26/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路136』 +http://46.149.191.217:9005/play/a01j$LR•IPV4•444『线路136』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://181.78.8.199:8000/play/a0if/index.m3u8$LR•IPV4•444『线路137』 +http://31.222.235.15/mosfilm/index.m3u8$LR•IPV4•444『线路137』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://181.78.8.199:8000/play/a091/index.m3u8$LR•IPV4•444『线路138』 +https://shd-amg-fast.edgenextcdn.net/tx011/playlist.m3u8$LR•IPV4•444『线路138』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://ss2.tvrdomi.com:1936/vision3000/vision3000/playlist.m3u8$LR•IPV4•444『线路139』 +http://116.90.120.151:8000/play/a0ax/index.m3u8$LR•IPV4•444『线路139』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://media.streambrothers.com:19360/8308/8308.m3u8$LR•IPV4•444『线路140』 +https://jmp2.uk/plu-561d7d484dc7c8770484914a.m3u8$LR•IPV4•444『线路140』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cloudsavre.in.net/hls/stream.m3u8$LR•IPV4•444『线路141』 +https://jmp2.uk/plu-62ea3c2e4823db00072788ed.m3u8$LR•IPV4•444『线路141』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-evg5.tv360.bitel.com.pe/bitel/yurivisionSRT/playlist.m3u8$LR•IPV4•444『线路142』 +https://jmp2.uk/plu-617b37b361e0fd0008cfd8c5.m3u8$LR•IPV4•444『线路142』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://ds.tvabierta.net/memfs/b295f254-7af9-45e4-bfc6-7e0bba41929d.m3u8$LR•IPV4•444『线路143』 +https://0f846627524f4dd2995e93581379db82.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung-at_RakutenActionMovies-1/playlist.m3u8$LR•IPV4•444『线路143』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://content.jwplatform.com/live/broadcast/oe7UD7Ag.m3u8$LR•IPV4•444『线路144』 +https://bca5a421a70c46ad911efd0a4767c4bf.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6075/master.m3u8$LR•IPV4•444『线路144』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://30a-tv.com/ln.m3u8$LR•IPV4•444『线路145』 +https://284824cf70404fdfb6ddf9349009c710.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6066/master.m3u8$LR•IPV4•444『线路145』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream.berosat.live:19360/baraka-hd/baraka-hd.m3u8$LR•IPV4•444『线路146』 +https://87f2e2e5e7624e3bad85da1ca2ed31a7.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6067/master.m3u8$LR•IPV4•444『线路146』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://ss2.tvrdomi.com:1936/carivision/carivision/playlist.m3u8$LR•IPV4•444『线路147』 +https://a9c57ec7ec5e4b7daeacc6316a0bb404.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6069/master.m3u8$LR•IPV4•444『线路147』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://edge.enhdtv.com/cn3/index.m3u8$LR•IPV4•444『线路148』 +https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•444『线路148』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://unlimited6-cl.dps.live/cm/cm.smil/playlist.m3u8$LR•IPV4•444『线路149』 +https://cc-yw7ztecy8do3q.akamaized.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-yw7ztecy8do3q/SS_IN.m3u8$LR•IPV4•444『线路149』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream.logichost.in/kannurvision/live/playlist.m3u8$LR•IPV4•444『线路150』 +https://edge4-moblive.yuppcdn.net/trans1sd/smil:strtml19.smil/playlist.m3u8?dvr=$LR•IPV4•444『线路150』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://gjirafa-video-live.gjirafa.net/gjvideo-livestream/lj9-pxm-o53-rp0/tracks-v4a1/mono.m3u8$LR•IPV4•444『线路151』 +https://stream8.cinerama.uz/1225/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路151』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://lencatelevision.com/hls/stream.m3u8$LR•IPV4•444『线路152』 +https://dbrb49pjoymg4.cloudfront.net/10001/99991745/hls/master.m3u8?ads.xumo_channelId=99991745$LR•IPV4•444『线路152』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streamer2.nexgen.bz/01-LOVE/index.m3u8$LR•IPV4•444『线路153』 +https://stmv6.voxtvhd.com.br/cineaccion/cineaccion/playlist.m3u8$LR•IPV4•444『线路153』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://panel.host-live.com:19360/8250/8250.m3u8$LR•IPV4•444『线路154』 +http://103.72.101.252:8080/live/488.m3u8$LR•IPV4•444『线路154』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://nationtv-1jdcjo.cdn.byteark.com/fleetstream/nationtvlive/index.m3u8$LR•IPV4•444『线路155』 +https://rakutenaa-zylo-emotional-rakuten-r1zkm.amagi.tv/playlist/rakutenAA-zylo-emotional-rakuten/playlist.m3u8$LR•IPV4•444『线路155』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d3qs3d2rkhfqrt.cloudfront.net/out/v1/6cd2f649739a45ca9de1daf81cc7d0f2/index.m3u8$LR•IPV4•444『线路156』 +https://content.jwplatform.com/live/broadcast/oe7UD7Ag.m3u8$LR•IPV4•444『线路156』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://edge.essastream.com/televisiondeleste/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路157』 +https://30a-tv.com/ln.m3u8$LR•IPV4•444『线路157』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://rtmp.logichost.in:1935/timevision/timevision/playlist.m3u8$LR•IPV4•444『线路158』 +https://stream.berosat.live:19360/baraka-hd/baraka-hd.m3u8$LR•IPV4•444『线路158』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://vg-zeefta.akamaized.net/ptnr-yupptv/title-wion/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/20c3c0d9-0256-43fe-bca6-70fdd490b957/main.m3u8$LR•IPV4•444『线路159』 +https://ss2.tvrdomi.com:1936/carivision/carivision/playlist.m3u8$LR•IPV4•444『线路159』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://endour.net/hls/One_nationtv/index.m3u8$LR•IPV4•444『线路160』 +https://edge.enhdtv.com/cn3/index.m3u8$LR•IPV4•444『线路160』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://30a-tv.com/feeds/masters/30atv.m3u8$LR•IPV4•444『线路161』 +https://unlimited6-cl.dps.live/cm/cm.smil/playlist.m3u8$LR•IPV4•444『线路161』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live.amelbatv.co:81/anctvlive/index.m3u8$LR•IPV4•444『线路162』 +https://stream.logichost.in/kannurvision/live/playlist.m3u8$LR•IPV4•444『线路162』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-5ede45d077746000072be0fe.m3u8$LR•IPV4•444『线路163』 +https://gjirafa-video-live.gjirafa.net/gjvideo-livestream/lj9-pxm-o53-rp0/tracks-v4a1/mono.m3u8$LR•IPV4•444『线路163』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-62ac50e92c48f900071444c9.m3u8$LR•IPV4•444『线路164』 +https://lencatelevision.com/hls/stream.m3u8$LR•IPV4•444『线路164』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://fox.hostlagarto.com:8081/bellavision8hd/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路165』 +https://streamer2.nexgen.bz/01-LOVE/index.m3u8$LR•IPV4•444『线路165』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live.cineramatvbo.com/hls/stream.m3u8$LR•IPV4•444『线路166』 +https://panel.host-live.com:19360/8250/8250.m3u8$LR•IPV4•444『线路166』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://23.237.104.106:8080/USA_CRIME_INVESTIGATION/index.m3u8$LR•IPV4•444『线路167』 +https://nationtv-1jdcjo.cdn.byteark.com/fleetstream/nationtvlive/index.m3u8$LR•IPV4•444『线路167』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn09jtedge.indihometv.com/joss/133/crimeinvestigation/index.m3u8$LR•IPV4•444『线路168』 +https://d3qs3d2rkhfqrt.cloudfront.net/out/v1/6cd2f649739a45ca9de1daf81cc7d0f2/index.m3u8$LR•IPV4•444『线路168』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://88.212.15.19/live/test_cai_hevc/playlist.m3u8$LR•IPV4•444『线路169』 +https://edge.essastream.com/televisiondeleste/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路169』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://canal.gitelevisionserver.com/live/DIEEFIh506fL8huspvl0f0c2PZF3/index.m3u8$LR•IPV4•444『线路170』 +http://rtmp.logichost.in:1935/timevision/timevision/playlist.m3u8$LR•IPV4•444『线路170』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://pb-xhb3ic8b61whm.akamaized.net/Ion_US.m3u8$LR•IPV4•444『线路171』 +http://vg-zeefta.akamaized.net/ptnr-yupptv/title-wion/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/20c3c0d9-0256-43fe-bca6-70fdd490b957/main.m3u8$LR•IPV4•444『线路171』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-6728c831c7626f0008b28127.m3u8$LR•IPV4•444『线路172』 +https://endour.net/hls/One_nationtv/index.m3u8$LR•IPV4•444『线路172』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-6728c87cc7626f0008b28149.m3u8$LR•IPV4•444『线路173』 +https://30a-tv.com/feeds/masters/30atv.m3u8$LR•IPV4•444『线路173』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-6728c8b45534bb0008b31f35.m3u8$LR•IPV4•444『线路174』 +https://live.amelbatv.co:81/anctvlive/index.m3u8$LR•IPV4•444『线路174』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://mumt03.tangotv.in/KERALAVISION/index.m3u8$LR•IPV4•444『线路175』 +https://jmp2.uk/plu-5ede45d077746000072be0fe.m3u8$LR•IPV4•444『线路175』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://j78dpa3edq5r-hls-live.5centscdn.com/abr/0864028584026e6ad9cdf922473177a4/playlist.m3u8$LR•IPV4•444『线路176』 +https://jmp2.uk/plu-62ac50e92c48f900071444c9.m3u8$LR•IPV4•444『线路176』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://makrodigitaltv.makrodigital.com/makrodigitaltelevision/iptv/playlist.m3u8$LR•IPV4•444『线路177』 +https://fox.hostlagarto.com:8081/bellavision8hd/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路177』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://41.223.30.230/PASSIONTV/index.m3u8$LR•IPV4•444『线路178』 +https://live.cineramatvbo.com/hls/stream.m3u8$LR•IPV4•444『线路178』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-62f3e0522443200008c567d7.m3u8$LR•IPV4•444『线路179』 +http://23.237.104.106:8080/USA_CRIME_INVESTIGATION/index.m3u8$LR•IPV4•444『线路179』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://stb-air.wasmer.app/play.php?id=LIVETV_LIVETVCHANNEL_SET_HD&pass=krish-ka&uid=gana-sunega$LR•IPV4•444『线路180』 +https://cdn09jtedge.indihometv.com/joss/133/crimeinvestigation/index.m3u8$LR•IPV4•444『线路180』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://origin-de-y376549.cdn.nextologies.com:444/4c3caf7294b3/fbbd0aee3d9a8260/playlist.m3u8$LR•IPV4•444『线路181』 +http://88.212.15.19/live/test_cai_hevc/playlist.m3u8$LR•IPV4•444『线路181』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://soportedvb.click:3891/live/visionndvlive.m3u8$LR•IPV4•444『线路182』 +https://canal.gitelevisionserver.com/live/DIEEFIh506fL8huspvl0f0c2PZF3/index.m3u8$LR•IPV4•444『线路182』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tele-stream.telecasa.net/live/st1/yunavision-hd/index.m3u8$LR•IPV4•444『线路183』 +https://pb-xhb3ic8b61whm.akamaized.net/Ion_US.m3u8$LR•IPV4•444『线路183』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream.sen-gt.com/A2iReligion/myStream/playlist.m3u8$LR•IPV4•444『线路184』 +https://jmp2.uk/plu-6728c831c7626f0008b28127.m3u8$LR•IPV4•444『线路184』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://627bb251f23c7.streamlock.net:444/Alientoenvivo/Alientoenvivo/playlist.m3u8$LR•IPV4•444『线路185』 +https://jmp2.uk/plu-6728c87cc7626f0008b28149.m3u8$LR•IPV4•444『线路185』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-evg7.tv360.bitel.com.pe/bitel/andestvSRT/playlist.m3u8$LR•IPV4•444『线路186』 +https://jmp2.uk/plu-6728c8b45534bb0008b31f35.m3u8$LR•IPV4•444『线路186』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://streamer02.nbo1.angani.co:1935/aviationtv/myStream/playlist.m3u8$LR•IPV4•444『线路187』 +https://mumt03.tangotv.in/KERALAVISION/index.m3u8$LR•IPV4•444『线路187』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streamer1.nexgen.bz/ATN/index.m3u8$LR•IPV4•444『线路188』 +https://j78dpa3edq5r-hls-live.5centscdn.com/abr/0864028584026e6ad9cdf922473177a4/playlist.m3u8$LR•IPV4•444『线路188』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://s.emisoras.tv:8081/bendicionchannel/index.m3u8$LR•IPV4•444『线路189』 +https://makrodigitaltv.makrodigital.com/makrodigitaltelevision/iptv/playlist.m3u8$LR•IPV4•444『线路189』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn1.cmbcolombia.tv/bethesda/video.m3u8$LR•IPV4•444『线路190』 +http://41.223.30.230/PASSIONTV/index.m3u8$LR•IPV4•444『线路190』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tnt-television.com/COMPASSION_FM/index.m3u8$LR•IPV4•444『线路191』 +https://jmp2.uk/plu-62f3e0522443200008c567d7.m3u8$LR•IPV4•444『线路191』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tvstream.conexionpositivaradio.com/memfs/69239c4d-4116-4f4f-b065-bf17e81b1411.m3u8$LR•IPV4•444『线路192』 +http://stb-air.wasmer.app/play.php?id=LIVETV_LIVETVCHANNEL_SET_HD&pass=krish-ka&uid=gana-sunega$LR•IPV4•444『线路192』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://3a310f6ec721e6b362fcd22772b57f36a2fe6bb2.tabeelcr.com:8080/cristovision31/iptv.m3u8$LR•IPV4•444『线路193』 +https://origin-de-y376549.cdn.nextologies.com:444/4c3caf7294b3/fbbd0aee3d9a8260/playlist.m3u8$LR•IPV4•444『线路193』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://5fc584f3f19c9.streamlock.net/cristovision/videocristovision/playlist.m3u8$LR•IPV4•444『线路194』 +https://soportedvb.click:3891/live/visionndvlive.m3u8$LR•IPV4•444『线路194』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://video1.getstreamhosting.com:1936/8226/8226/playlist.m3u8$LR•IPV4•444『线路195』 +https://tele-stream.telecasa.net/live/st1/yunavision-hd/index.m3u8$LR•IPV4•444『线路195』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://1206618505.rsc.cdn77.org/LS-ATL-59020-1/playlist.m3u8$LR•IPV4•444『线路196』 +https://stream.sen-gt.com/A2iReligion/myStream/playlist.m3u8$LR•IPV4•444『线路196』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://vs20.live.opencaster.com/lasalvaciondelalmatv_dfc663c0/index.m3u8$LR•IPV4•444『线路197』 +https://627bb251f23c7.streamlock.net:444/Alientoenvivo/Alientoenvivo/playlist.m3u8$LR•IPV4•444『线路197』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streamtv.intervenhosting.net:3403/hybrid/play.m3u8$LR•IPV4•444『线路198』 +https://live-evg7.tv360.bitel.com.pe/bitel/andestvSRT/playlist.m3u8$LR•IPV4•444『线路198』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://1601580044.rsc.cdn77.org/live/_jcn_/amlst:CHANNEL_2/playlist.m3u8$LR•IPV4•444『线路199』 +http://streamer02.nbo1.angani.co:1935/aviationtv/myStream/playlist.m3u8$LR•IPV4•444『线路199』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://eu1.servers10.com:8081/8338/index.m3u8$LR•IPV4•444『线路200』 +https://streamer1.nexgen.bz/ATN/index.m3u8$LR•IPV4•444『线路200』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://rd.tvabierta.net/live/misioneltv.m3u8$LR•IPV4•444『线路201』 +https://s.emisoras.tv:8081/bendicionchannel/index.m3u8$LR•IPV4•444『线路201』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://livecdn.live247stream.com/missionasia/tv/playlist.m3u8$LR•IPV4•444『线路202』 +https://cdn1.cmbcolombia.tv/bethesda/video.m3u8$LR•IPV4•444『线路202』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://6096a9cf11ae5.streamlock.net:1943/live/missiontv/playlist.m3u8$LR•IPV4•444『线路203』 +https://tnt-television.com/COMPASSION_FM/index.m3u8$LR•IPV4•444『线路203』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_027/Stream/playlist.m3u8$LR•IPV4•444『线路204』 +https://tvstream.conexionpositivaradio.com/memfs/69239c4d-4116-4f4f-b065-bf17e81b1411.m3u8$LR•IPV4•444『线路204』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://storage.sardius.media/archives/-KyMV-J0vDqnClcSXs8p/events/site_1a4721d3BA/playlist.m3u8$LR•IPV4•444『线路205』 +https://3a310f6ec721e6b362fcd22772b57f36a2fe6bb2.tabeelcr.com:8080/cristovision31/iptv.m3u8$LR•IPV4•444『线路205』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live.nixsat.com/play/rtm/index.m3u8$LR•IPV4•444『线路206』 +https://5fc584f3f19c9.streamlock.net/cristovision/videocristovision/playlist.m3u8$LR•IPV4•444『线路206』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://ktismaservers.in:3902/live/salvationtvlive.m3u8$LR•IPV4•444『线路207』 +https://video1.getstreamhosting.com:1936/8226/8226/playlist.m3u8$LR•IPV4•444『线路207』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tv.streamcasthd.com:3536/live/siontvlive.m3u8$LR•IPV4•444『线路208』 +https://1206618505.rsc.cdn77.org/LS-ATL-59020-1/playlist.m3u8$LR•IPV4•444『线路208』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://ss2.tvrdomi.com:1936/telebendicion/telebendicion/playlist.m3u8$LR•IPV4•444『线路209』 +https://vs20.live.opencaster.com/lasalvaciondelalmatv_dfc663c0/index.m3u8$LR•IPV4•444『线路209』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://lbgo.bozztv.com/ssh101/ssh101/visiononline/playlist.m3u8$LR•IPV4•444『线路210』 +https://streamtv.intervenhosting.net:3403/hybrid/play.m3u8$LR•IPV4•444『线路210』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jk3lzkn4lw79-hls-live.5centscdn.com/VTN2/bcaafe9ad8d42834b08e762ac58596b8.sdp/playlist.m3u8$LR•IPV4•444『线路211』 +https://1601580044.rsc.cdn77.org/live/_jcn_/amlst:CHANNEL_2/playlist.m3u8$LR•IPV4•444『线路211』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream.ads.ottera.tv/playlist.m3u8?network_id=1153$LR•IPV4•444『线路212』 +https://eu1.servers10.com:8081/8338/index.m3u8$LR•IPV4•444『线路212』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://amg01076-lightningintern-actionhollywood-samsungau-rs69y.amagi.tv/playlist/amg01076-lightningintern-actionhollywood-samsungau/playlist.m3u8$LR•IPV4•444『线路213』 +https://rd.tvabierta.net/live/misioneltv.m3u8$LR•IPV4•444『线路213』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn-apse1-prod.tsv2.amagi.tv/linear/amg01076-lightningintern-actionhollywood-samsungnz/playlist.m3u8$LR•IPV4•444『线路214』 +https://livecdn.live247stream.com/missionasia/tv/playlist.m3u8$LR•IPV4•444『线路214』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://actionhollywood-klowdtv.amagi.tv/playlist.m3u8$LR•IPV4•444『线路215』 +https://6096a9cf11ae5.streamlock.net:1943/live/missiontv/playlist.m3u8$LR•IPV4•444『线路215』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://linear-888.frequency.stream/dist/xumo/888/hls/master/playlist.m3u8$LR•IPV4•444『线路216』 +https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_027/Stream/playlist.m3u8$LR•IPV4•444『线路216』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://aegis-cloudfront-1.tubi.video/baa32c24-e707-4bf8-9f81-d26eb6baa3dc/playlist.m3u8$LR•IPV4•444『线路217』 +https://storage.sardius.media/archives/-KyMV-J0vDqnClcSXs8p/events/site_1a4721d3BA/playlist.m3u8$LR•IPV4•444『线路217』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65a7d99f4a10d800086083a9.m3u8$LR•IPV4•444『线路218』 +https://live.nixsat.com/play/rtm/index.m3u8$LR•IPV4•444『线路218』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streams2.sofast.tv/sofastplayout/0c3229e2-6ca5-4714-859e-c0ac6b9aa58a_0_HLS/master.m3u8$LR•IPV4•444『线路219』 +https://ktismaservers.in:3902/live/salvationtvlive.m3u8$LR•IPV4•444『线路219』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/9a4a5412-ca99-48d3-9013-d1811b95b9d2/manifest.m3u8$LR•IPV4•444『线路220』 +https://tv.streamcasthd.com:3536/live/siontvlive.m3u8$LR•IPV4•444『线路220』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn3.wowza.com/5/V2Y2VmhqMEFDTUkx/beverlyhills/G0072_006/playlist.m3u8$LR•IPV4•444『线路221』 +https://ss2.tvrdomi.com:1936/telebendicion/telebendicion/playlist.m3u8$LR•IPV4•444『线路221』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn3.wowza.com/5/V2Y2VmhqMEFDTUkx/beverlyhills/G0072_007/playlist.m3u8$LR•IPV4•444『线路222』 +https://lbgo.bozztv.com/ssh101/ssh101/visiononline/playlist.m3u8$LR•IPV4•444『线路222』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-611f85396abc84000738417b.m3u8$LR•IPV4•444『线路223』 +https://jk3lzkn4lw79-hls-live.5centscdn.com/VTN2/bcaafe9ad8d42834b08e762ac58596b8.sdp/playlist.m3u8$LR•IPV4•444『线路223』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://a-cdn.klowdtv.com/live3/blackenterprise_720p/playlist.m3u8$LR•IPV4•444『线路224』 +https://stream.ads.ottera.tv/playlist.m3u8?network_id=1153$LR•IPV4•444『线路224』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/cjc-television-network/55e06661da359ab51bbb2d563521f4b2.m3u8?ads.vf=MyS88Juu55G$LR•IPV4•444『线路225』 +https://amg01076-lightningintern-actionhollywood-samsungau-rs69y.amagi.tv/playlist/amg01076-lightningintern-actionhollywood-samsungau/playlist.m3u8$LR•IPV4•444『线路225』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://radio.congoplanet.com/Congo_Planet_TV_Pop.sdp/Congo_Planet_TV_Pop/playlist.m3u8$LR•IPV4•444『线路226』 +https://cdn-apse1-prod.tsv2.amagi.tv/linear/amg01076-lightningintern-actionhollywood-samsungnz/playlist.m3u8$LR•IPV4•444『线路226』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://ssh101.bozztv.com/ssh101/dtelevision/playlist.m3u8$LR•IPV4•444『线路227』 +https://actionhollywood-klowdtv.amagi.tv/playlist.m3u8$LR•IPV4•444『线路227』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/453971f3-855a-455e-9353-ebbb069583a4/manifest.m3u8$LR•IPV4•444『线路228』 +https://linear-888.frequency.stream/dist/xumo/888/hls/master/playlist.m3u8$LR•IPV4•444『线路228』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streams2.sofast.tv/sofastplayout/7e8d2a51-985d-4e76-bf7e-91edf0aa6e5f_0_HLS/master.m3u8$LR•IPV4•444『线路229』 +https://aegis-cloudfront-1.tubi.video/baa32c24-e707-4bf8-9f81-d26eb6baa3dc/playlist.m3u8$LR•IPV4•444『线路229』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://linear-1066.frequency.stream/dist/stirr/1066/hls/master/playlist.m3u8$LR•IPV4•444『线路230』 +https://jmp2.uk/plu-65a7d99f4a10d800086083a9.m3u8$LR•IPV4•444『线路230』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/elevation-church-network/playlist.m3u8?ads.vf=-Zd8ogbOmAi$LR•IPV4•444『线路231』 +https://streams2.sofast.tv/sofastplayout/0c3229e2-6ca5-4714-859e-c0ac6b9aa58a_0_HLS/master.m3u8$LR•IPV4•444『线路231』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://amg00276-amg00276c15-samsung-gb-3790.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路232』 +https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/9a4a5412-ca99-48d3-9013-d1811b95b9d2/manifest.m3u8$LR•IPV4•444『线路232』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-6661739641af6400080cd8f1.m3u8$LR•IPV4•444『线路233』 +https://cdn3.wowza.com/5/V2Y2VmhqMEFDTUkx/beverlyhills/G0072_006/playlist.m3u8$LR•IPV4•444『线路233』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883113$LR•IPV4•444『线路234』 +https://cdn3.wowza.com/5/V2Y2VmhqMEFDTUkx/beverlyhills/G0072_007/playlist.m3u8$LR•IPV4•444『线路234』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•444『线路235』 +https://jmp2.uk/plu-611f85396abc84000738417b.m3u8$LR•IPV4•444『线路235』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://a64543d5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX0ZsaXBwaW5nTmF0aW9uX0hMUw/playlist.m3u8$LR•IPV4•444『线路236』 +https://a-cdn.klowdtv.com/live3/blackenterprise_720p/playlist.m3u8$LR•IPV4•444『线路236』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d3795432.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GbGlwcGluZ05hdGlvbl9ITFM/playlist.m3u8$LR•IPV4•444『线路237』 +https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/cjc-television-network/55e06661da359ab51bbb2d563521f4b2.m3u8?ads.vf=MyS88Juu55G$LR•IPV4•444『线路237』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d21mkcgtx2frod.cloudfront.net/v1/aenetworks_flippingnation_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•444『线路238』 +https://radio.congoplanet.com/Congo_Planet_TV_Pop.sdp/Congo_Planet_TV_Pop/playlist.m3u8$LR•IPV4•444『线路238』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://production-fastbpk.content.okast.tv/fa2e8c4385712f9aa35c5b79a2b4ac2d/channels/eec463a6-4364-473b-8d89-555acc5b8fb2/e36e4304-73ff-4f9f-8d38-e748576a1f51/media_.m3u8$LR•IPV4•444『线路239』 +https://ssh101.bozztv.com/ssh101/dtelevision/playlist.m3u8$LR•IPV4•444『线路239』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-60afb203ec391c00070ea1bf.m3u8$LR•IPV4•444『线路240』 +https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/453971f3-855a-455e-9353-ebbb069583a4/manifest.m3u8$LR•IPV4•444『线路240』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tv2.bitstreaming.net:3576/multi_live/play.m3u8$LR•IPV4•444『线路241』 +https://streams2.sofast.tv/sofastplayout/7e8d2a51-985d-4e76-bf7e-91edf0aa6e5f_0_HLS/master.m3u8$LR•IPV4•444『线路241』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://dtz4aepbew7ez.cloudfront.net/hotwh.m3u8$LR•IPV4•444『线路242』 +https://linear-1066.frequency.stream/dist/stirr/1066/hls/master/playlist.m3u8$LR•IPV4•444『线路242』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://sc1.wasidata.com/Imperial/index.m3u8$LR•IPV4•444『线路243』 +https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/elevation-church-network/playlist.m3u8?ads.vf=-Zd8ogbOmAi$LR•IPV4•444『线路243』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://fast-rakuten.okast.tv/fa2e8c4385712f9a3b579747e448699c/channels/34d82f76-b51f-4bf5-9b35-769fb5904e79/a4226699-b685-4f5d-9cb6-2a6cac14c377/media_.m3u8$LR•IPV4•444『线路244』 +https://amg00276-amg00276c15-samsung-gb-3790.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路244』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-evg5.tv360.bitel.com.pe/bitel/inkavisionSRT/playlist.m3u8$LR•IPV4•444『线路245』 +https://jmp2.uk/plu-6661739641af6400080cd8f1.m3u8$LR•IPV4•444『线路245』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://amg00276-amg00276c17-samsung-gb-3791.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路246』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883113$LR•IPV4•444『线路246』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://pb-5kduxc2en4kdz.akamaized.net/Intervention_by_AE.m3u8$LR•IPV4•444『线路247』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•444『线路247』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://amg00346-vizioono-amg00346c2-distrotv-us-1396.playouts.now.amagi.tv/playlist/amg00346-vizioincfast-investigation-distrotvus/playlist.m3u8$LR•IPV4•444『线路248』 +https://a64543d5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX0ZsaXBwaW5nTmF0aW9uX0hMUw/playlist.m3u8$LR•IPV4•444『线路248』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://amg00346-vizioono-investigation-xumo-us.amagi.tv/playlist.m3u8$LR•IPV4•444『线路249』 +https://d3795432.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GbGlwcGluZ05hdGlvbl9ITFM/playlist.m3u8$LR•IPV4•444『线路249』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65453f30085df200085883d8.m3u8$LR•IPV4•444『线路250』 +https://d21mkcgtx2frod.cloudfront.net/v1/aenetworks_flippingnation_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•444『线路250』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://aegis-cloudfront-1.tubi.video/3b6afc3b-97f7-4f22-99f4-7bcff60fc39d/playlist.m3u8$LR•IPV4•444『线路251』 +https://production-fastbpk.content.okast.tv/fa2e8c4385712f9aa35c5b79a2b4ac2d/channels/eec463a6-4364-473b-8d89-555acc5b8fb2/e36e4304-73ff-4f9f-8d38-e748576a1f51/media_.m3u8$LR•IPV4•444『线路251』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://pb-usmbvsgwcg8pc.akamaized.net/Ion_Mystery_US.m3u8$LR•IPV4•444『线路252』 +https://jmp2.uk/plu-60afb203ec391c00070ea1bf.m3u8$LR•IPV4•444『线路252』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://hls.irannrtv.live/hls/stream.m3u8$LR•IPV4•444『线路253』 +https://tv2.bitstreaming.net:3576/multi_live/play.m3u8$LR•IPV4•444『线路253』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://82934cf9c8696bd2.mediapackage.us-east-1.amazonaws.com/out/v1/72b5a55e4c35445f9e742871aa0aefa2/index.m3u8$LR•IPV4•444『线路254』 +https://dtz4aepbew7ez.cloudfront.net/hotwh.m3u8$LR•IPV4•444『线路254』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d30q6vjmdwhh1y.cloudfront.net/LocationLocationLocation_GB.m3u8$LR•IPV4•444『线路255』 +https://sc1.wasidata.com/Imperial/index.m3u8$LR•IPV4•444『线路255』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://pb-tc6lcocnesxgi.akamaized.net/playlist.m3u8$LR•IPV4•444『线路256』 +https://fast-rakuten.okast.tv/fa2e8c4385712f9a3b579747e448699c/channels/34d82f76-b51f-4bf5-9b35-769fb5904e79/a4226699-b685-4f5d-9cb6-2a6cac14c377/media_.m3u8$LR•IPV4•444『线路256』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-677fb3432952c1163bf1a539.m3u8$LR•IPV4•444『线路257』 +https://live-evg5.tv360.bitel.com.pe/bitel/inkavisionSRT/playlist.m3u8$LR•IPV4•444『线路257』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://xumo-xumoent-ch838-coy7x.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路258』 +https://amg00276-amg00276c17-samsung-gb-3791.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路258』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-6549322e53fc97000838febc.m3u8$LR•IPV4•444『线路259』 +https://pb-5kduxc2en4kdz.akamaized.net/Intervention_by_AE.m3u8$LR•IPV4•444『线路259』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/motorvision-tv-espanol/mv_es.m3u8?ads.vf=-bwCJuiaCt8$LR•IPV4•444『线路260』 +https://amg00346-vizioono-amg00346c2-distrotv-us-1396.playouts.now.amagi.tv/playlist/amg00346-vizioincfast-investigation-distrotvus/playlist.m3u8$LR•IPV4•444『线路260』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d1yhx4ygpfwmgm.cloudfront.net/v1/fast/nesnsamsungtvplus/772bf582-9476-4a30-a4c4-ba1c0839f167.m3u8$LR•IPV4•444『线路261』 +https://amg00346-vizioono-investigation-xumo-us.amagi.tv/playlist.m3u8$LR•IPV4•444『线路261』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d14kyo3ex6k293.cloudfront.net/playlist.m3u8$LR•IPV4•444『线路262』 +https://jmp2.uk/plu-65453f30085df200085883d8.m3u8$LR•IPV4•444『线路262』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/ea1ad8da-7c74-4dc3-999f-15088a0d942a/manifest.m3u8$LR•IPV4•444『线路263』 +https://aegis-cloudfront-1.tubi.video/3b6afc3b-97f7-4f22-99f4-7bcff60fc39d/playlist.m3u8$LR•IPV4•444『线路263』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://dikkyk1ckkhzq.cloudfront.net/RabiddsInvasion_GB.m3u8$LR•IPV4•444『线路264』 +https://pb-usmbvsgwcg8pc.akamaized.net/Ion_Mystery_US.m3u8$LR•IPV4•444『线路264』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/radioromatv.m3u8$LR•IPV4•444『线路265』 +https://hls.irannrtv.live/hls/stream.m3u8$LR•IPV4•444『线路265』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://01ac9352fbfa4204998783d41f9b1a2e.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6068/master.m3u8$LR•IPV4•444『线路266』 +https://82934cf9c8696bd2.mediapackage.us-east-1.amazonaws.com/out/v1/72b5a55e4c35445f9e742871aa0aefa2/index.m3u8$LR•IPV4•444『线路266』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-evg7.tv360.bitel.com.pe/bitel/regiontvSRT/playlist.m3u8$LR•IPV4•444『线路267』 +https://d30q6vjmdwhh1y.cloudfront.net/LocationLocationLocation_GB.m3u8$LR•IPV4•444『线路267』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://1681360479.rsc.cdn77.org/1681360479/index.m3u8$LR•IPV4•444『线路268』 +https://pb-tc6lcocnesxgi.akamaized.net/playlist.m3u8$LR•IPV4•444『线路268』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/RHT6XGG6VHZA0P8T1MGX/hls3/now,-1m/m.m3u8?ads.vf=xV5XOQG_ptm$LR•IPV4•444『线路269』 +https://jmp2.uk/plu-677fb3432952c1163bf1a539.m3u8$LR•IPV4•444『线路269』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://scl.edge.grupoz.cl/rtcstreaming/live/playlist.m3u8$LR•IPV4•444『线路270』 +https://xumo-xumoent-ch838-coy7x.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路270』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_017/Stream/playlist.m3u8$LR•IPV4•444『线路271』 +https://jmp2.uk/plu-6549322e53fc97000838febc.m3u8$LR•IPV4•444『线路271』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream.lamegatv.com/hls/sanvitotelevision/index.m3u8$LR•IPV4•444『线路272』 +https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/motorvision-tv-espanol/mv_es.m3u8?ads.vf=-bwCJuiaCt8$LR•IPV4•444『线路272』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://5ff3d9babae13.streamlock.net/fzkqsdfray/fzkqsdfray/playlist.m3u8$LR•IPV4•444『线路273』 +https://d1yhx4ygpfwmgm.cloudfront.net/v1/fast/nesnsamsungtvplus/772bf582-9476-4a30-a4c4-ba1c0839f167.m3u8$LR•IPV4•444『线路273』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-68e38b005c876cf730fcbf0f.m3u8$LR•IPV4•444『线路274』 +https://d14kyo3ex6k293.cloudfront.net/playlist.m3u8$LR•IPV4•444『线路274』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-evg11.tv360.bitel.com.pe/bitel/solartvSRT/playlist.m3u8$LR•IPV4•444『线路275』 +https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/ea1ad8da-7c74-4dc3-999f-15088a0d942a/manifest.m3u8$LR•IPV4•444『线路275』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://2-fss-1.streamhoster.com/pl_122/206858-4412976-1/chunklist.m3u8$LR•IPV4•444『线路276』 +https://dikkyk1ckkhzq.cloudfront.net/RabiddsInvasion_GB.m3u8$LR•IPV4•444『线路276』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live.cmr24.fm/TVI/HD/chunks.m3u8$LR•IPV4•444『线路277』 +https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/radioromatv.m3u8$LR•IPV4•444『线路277』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://xumo-drct-ch835-ekq0p.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路278』 +https://01ac9352fbfa4204998783d41f9b1a2e.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6068/master.m3u8$LR•IPV4•444『线路278』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d1oyt3v08gcy18.cloudfront.net/index-events.m3u8$LR•IPV4•444『线路279』 +https://live-evg7.tv360.bitel.com.pe/bitel/regiontvSRT/playlist.m3u8$LR•IPV4•444『线路279』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://mediacp.nnw.cl:19360/temucotelevision/temucotelevision.m3u8$LR•IPV4•444『线路280』 +https://1681360479.rsc.cdn77.org/1681360479/index.m3u8$LR•IPV4•444『线路280』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://videohd.live:19360/8008/8008.m3u8$LR•IPV4•444『线路281』 +https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/RHT6XGG6VHZA0P8T1MGX/hls3/now,-1m/m.m3u8?ads.vf=xV5XOQG_ptm$LR•IPV4•444『线路281』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/M43FCP9IGELUIOH4IAVQ/hls3/now,-1m/m.m3u8?ads.vf=dkc6PGrkc0i$LR•IPV4•444『线路282』 +https://scl.edge.grupoz.cl/rtcstreaming/live/playlist.m3u8$LR•IPV4•444『线路282』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://45.5.119.43:4000/play/a0jj/index.m3u8$LR•IPV4•444『线路283』 +https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_017/Stream/playlist.m3u8$LR•IPV4•444『线路283』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://panel.tvstream.cl:1936/sdaumqtfqf/sdaumqtfqf/playlist.m3u8$LR•IPV4•444『线路284』 +https://stream.lamegatv.com/hls/sanvitotelevision/index.m3u8$LR•IPV4•444『线路284』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://s2.tvdatta.com:3687/hybrid/play.m3u8$LR•IPV4•444『线路285』 +https://5ff3d9babae13.streamlock.net/fzkqsdfray/fzkqsdfray/playlist.m3u8$LR•IPV4•444『线路285』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-evg11.tv360.bitel.com.pe/bitel/utv/playlist.m3u8$LR•IPV4•444『线路286』 +https://jmp2.uk/plu-68e38b005c876cf730fcbf0f.m3u8$LR•IPV4•444『线路286』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://xumo-xumoent-ch828-w6val.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路287』 +https://live-evg11.tv360.bitel.com.pe/bitel/solartvSRT/playlist.m3u8$LR•IPV4•444『线路287』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-654933e253fc970008390114.m3u8$LR•IPV4•444『线路288』 +https://2-fss-1.streamhoster.com/pl_122/206858-4412976-1/chunklist.m3u8$LR•IPV4•444『线路288』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://138.121.15.230:9002/UNIVISION/index.m3u8$LR•IPV4•444『线路289』 +https://live.cmr24.fm/TVI/HD/chunks.m3u8$LR•IPV4•444『线路289』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://provedores.unsion.tv:8081/srt/1/playlist.m3u8$LR•IPV4•444『线路290』 +https://xumo-drct-ch835-ekq0p.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路290』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/58XXIGAFT3S6VSMD82AP/hls3/now,-1m/m.m3u8?ads.vf=eieiHoUaPzC$LR•IPV4•444『线路291』 +https://d1oyt3v08gcy18.cloudfront.net/index-events.m3u8$LR•IPV4•444『线路291』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/7ad8ce96-5a3f-413e-ae15-7c2cef7bc8f8/manifest.m3u8$LR•IPV4•444『线路292』 +https://mediacp.nnw.cl:19360/temucotelevision/temucotelevision.m3u8$LR•IPV4•444『线路292』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streaming.proceso.info:8888/vision6-web/stream.m3u8$LR•IPV4•444『线路293』 +https://videohd.live:19360/8008/8008.m3u8$LR•IPV4•444『线路293』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tv.arkeo.cl:1936/8044/8044/playlist.m3u8$LR•IPV4•444『线路294』 +https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/M43FCP9IGELUIOH4IAVQ/hls3/now,-1m/m.m3u8?ads.vf=dkc6PGrkc0i$LR•IPV4•444『线路294』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://vosgestv.live-kd.com/live/vosgestv/vosgestv/playlist.m3u8$LR•IPV4•444『线路295』 +http://45.5.119.43:4000/play/a0jj/index.m3u8$LR•IPV4•444『线路295』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live-manifest.production-public.tubi.io/live/a8250c51-f628-4936-97cb-67a931d2d7d8/playlist.m3u8$LR•IPV4•444『线路296』 +https://panel.tvstream.cl:1936/sdaumqtfqf/sdaumqtfqf/playlist.m3u8$LR•IPV4•444『线路296』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d16xlk626t29pt.cloudfront.net/ABR.m3u8$LR•IPV4•444『线路297』 +https://s2.tvdatta.com:3687/hybrid/play.m3u8$LR•IPV4•444『线路297』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-61e9af6bfbbcc6000700119b.m3u8$LR•IPV4•444『线路298』 +https://live-evg11.tv360.bitel.com.pe/bitel/utv/playlist.m3u8$LR•IPV4•444『线路298』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://m1b2.worldcast.tv/dancetelevisionone/2/dancetelevisionone.m3u8$LR•IPV4•444『线路299』 +https://xumo-xumoent-ch828-w6val.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路299』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://funradiovisionhd.vedge.infomaniak.com/livecast/ik:funradiovisionhd/manifest.m3u8$LR•IPV4•444『线路300』 +https://jmp2.uk/plu-654933e253fc970008390114.m3u8$LR•IPV4•444『线路300』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://edge20.vedge.infomaniak.com/livecast/ik:fusiontv/manifest.m3u8$LR•IPV4•444『线路301』 +http://138.121.15.230:9002/UNIVISION/index.m3u8$LR•IPV4•444『线路301』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streamer1.connectto.com/HIGHVISION_WEB_1205/index.m3u8$LR•IPV4•444『线路302』 +http://provedores.unsion.tv:8081/srt/1/playlist.m3u8$LR•IPV4•444『线路302』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streamlov.alsolnet.com/lapuracrema/live/playlist.m3u8$LR•IPV4•444『线路303』 +https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/58XXIGAFT3S6VSMD82AP/hls3/now,-1m/m.m3u8?ads.vf=eieiHoUaPzC$LR•IPV4•444『线路303』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://mic.siar.us/mic/live/mic.m3u8$LR•IPV4•444『线路304』 +https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/7ad8ce96-5a3f-413e-ae15-7c2cef7bc8f8/manifest.m3u8$LR•IPV4•444『线路304』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tuvideoonline.com.ar:3391/live/radioconexionlive.m3u8$LR•IPV4•444『线路305』 +https://streaming.proceso.info:8888/vision6-web/stream.m3u8$LR•IPV4•444『线路305』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream.mediawork.cz/retrotv/retrotvHQ1/playlist.m3u8$LR•IPV4•444『线路306』 +https://tv.arkeo.cl:1936/8044/8044/playlist.m3u8$LR•IPV4•444『线路306』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://live20.bozztv.com/akamaissh101/ssh101/qMUAZEy/playlist.m3u8$LR•IPV4•444『线路307』 +https://vosgestv.live-kd.com/live/vosgestv/vosgestv/playlist.m3u8$LR•IPV4•444『线路307』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://tvcosta.gleeze.com/memfs/4d48db09-0b1e-4803-8da7-22be388bdd7e.m3u8$LR•IPV4•444『线路308』 +https://live-manifest.production-public.tubi.io/live/a8250c51-f628-4936-97cb-67a931d2d7d8/playlist.m3u8$LR•IPV4•444『线路308』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn.streamhispanatv.net:3652/live/totovisiongtlive.m3u8$LR•IPV4•444『线路309』 +https://d16xlk626t29pt.cloudfront.net/ABR.m3u8$LR•IPV4•444『线路309』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-62da73c4ec46c000070f4cb1.m3u8$LR•IPV4•444『线路310』 +https://jmp2.uk/plu-61e9af6bfbbcc6000700119b.m3u8$LR•IPV4•444『线路310』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-62da7159ca8f220008032730.m3u8$LR•IPV4•444『线路311』 +https://m1b2.worldcast.tv/dancetelevisionone/2/dancetelevisionone.m3u8$LR•IPV4•444『线路311』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-62da7380478a5b0007e610d9.m3u8$LR•IPV4•444『线路312』 +https://funradiovisionhd.vedge.infomaniak.com/livecast/ik:funradiovisionhd/manifest.m3u8$LR•IPV4•444『线路312』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-6304f8d5ffb61000071ab478.m3u8$LR•IPV4•444『线路313』 +https://edge20.vedge.infomaniak.com/livecast/ik:fusiontv/manifest.m3u8$LR•IPV4•444『线路313』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/Q7VW3TCBWCN12JGUJGUY/hls3/now,-1m/m.m3u8?ads.vf=7sLXLbaCnLW$LR•IPV4•444『线路314』 +https://streamer1.connectto.com/HIGHVISION_WEB_1205/index.m3u8$LR•IPV4•444『线路314』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://3238c44f.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/Um9rdV9MaXZlbHlQbGFjZV9ITFM/playlist.m3u8$LR•IPV4•444『线路315』 +https://streamlov.alsolnet.com/lapuracrema/live/playlist.m3u8$LR•IPV4•444『线路315』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-6683cd2fca74680008772545.m3u8$LR•IPV4•444『线路316』 +https://mic.siar.us/mic/live/mic.m3u8$LR•IPV4•444『线路316』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-62ea43aa0c43540007f2db96.m3u8$LR•IPV4•444『线路317』 +https://tuvideoonline.com.ar:3391/live/radioconexionlive.m3u8$LR•IPV4•444『线路317』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-5f77977bd924d80007eee60c.m3u8$LR•IPV4•444『线路318』 +https://stream.mediawork.cz/retrotv/retrotvHQ1/playlist.m3u8$LR•IPV4•444『线路318』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-63808dc806aa4700075f319a.m3u8$LR•IPV4•444『线路319』 +https://live20.bozztv.com/akamaissh101/ssh101/qMUAZEy/playlist.m3u8$LR•IPV4•444『线路319』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-63d000ef4e83e700086e0d6c.m3u8$LR•IPV4•444『线路320』 +https://tvcosta.gleeze.com/memfs/4d48db09-0b1e-4803-8da7-22be388bdd7e.m3u8$LR•IPV4•444『线路320』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-63a1caefc8d285000799e8af.m3u8$LR•IPV4•444『线路321』 +https://cdn.streamhispanatv.net:3652/live/totovisiongtlive.m3u8$LR•IPV4•444『线路321』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-63a1c959d9dd51000825d659.m3u8$LR•IPV4•444『线路322』 +https://jmp2.uk/plu-62da73c4ec46c000070f4cb1.m3u8$LR•IPV4•444『线路322』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-63a1c9c2847a090007f248da.m3u8$LR•IPV4•444『线路323』 +https://jmp2.uk/plu-62da7159ca8f220008032730.m3u8$LR•IPV4•444『线路323』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://6df6888a.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/Um9rdV9UaW55SG91c2VOYXRpb25fSExT/playlist.m3u8$LR•IPV4•444『线路324』 +https://jmp2.uk/plu-62da7380478a5b0007e610d9.m3u8$LR•IPV4•444『线路324』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•444『线路325』 +https://jmp2.uk/plu-6304f8d5ffb61000071ab478.m3u8$LR•IPV4•444『线路325』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://31.148.48.15/Fashion_One_HD/index.m3u8$LR•IPV4•444『线路326』 +https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/Q7VW3TCBWCN12JGUJGUY/hls3/now,-1m/m.m3u8?ads.vf=7sLXLbaCnLW$LR•IPV4•444『线路326』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://pubgfc.teleosmedia.com/linear/globalfashionchannel/globalfashionchannel/playlist.m3u8$LR•IPV4•444『线路327』 +https://3238c44f.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/Um9rdV9MaXZlbHlQbGFjZV9ITFM/playlist.m3u8$LR•IPV4•444『线路327』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://fl718492-exthls-p1.flovp.com/fl718492/live/live.m3u8$LR•IPV4•444『线路328』 +https://jmp2.uk/plu-6683cd2fca74680008772545.m3u8$LR•IPV4•444『线路328』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-64f8a949f5b5e4000862467c.m3u8$LR•IPV4•444『线路329』 +https://jmp2.uk/plu-62ea43aa0c43540007f2db96.m3u8$LR•IPV4•444『线路329』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883107$LR•IPV4•444『线路330』 +https://jmp2.uk/plu-5f77977bd924d80007eee60c.m3u8$LR•IPV4•444『线路330』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://amg00862-amg00862c5-amgplt0173.playout.now3.amagi.tv/playlist/amg00862-amg00862c5-amgplt0173/playlist.m3u8$LR•IPV4•444『线路331』 +https://jmp2.uk/plu-63808dc806aa4700075f319a.m3u8$LR•IPV4•444『线路331』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-69aee8a1acb7eb0bb68df641.m3u8$LR•IPV4•444『线路332』 +https://jmp2.uk/plu-63d000ef4e83e700086e0d6c.m3u8$LR•IPV4•444『线路332』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-68487fb3f212bedacf5a53e3.m3u8$LR•IPV4•444『线路333』 +https://jmp2.uk/plu-63a1caefc8d285000799e8af.m3u8$LR•IPV4•444『线路333』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-634fe5afece2e60007c9d8b8.m3u8$LR•IPV4•444『线路334』 +https://jmp2.uk/plu-63a1c959d9dd51000825d659.m3u8$LR•IPV4•444『线路334』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-6671b21ffc3a46000857fe75.m3u8$LR•IPV4•444『线路335』 +https://jmp2.uk/plu-63a1c9c2847a090007f248da.m3u8$LR•IPV4•444『线路335』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-62ab579258cb950007811aad.m3u8$LR•IPV4•444『线路336』 +https://6df6888a.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/Um9rdV9UaW55SG91c2VOYXRpb25fSExT/playlist.m3u8$LR•IPV4•444『线路336』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65cb77853ba51e00084cba02.m3u8$LR•IPV4•444『线路337』 +https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•444『线路337』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-66d717d2abec540008ba7ec4.m3u8$LR•IPV4•444『线路338』 +http://31.148.48.15/Fashion_One_HD/index.m3u8$LR•IPV4•444『线路338』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-66d717c6abec540008ba7eb5.m3u8$LR•IPV4•444『线路339』 +https://pubgfc.teleosmedia.com/linear/globalfashionchannel/globalfashionchannel/playlist.m3u8$LR•IPV4•444『线路339』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65004605110545000842035d.m3u8$LR•IPV4•444『线路340』 +https://fl718492-exthls-p1.flovp.com/fl718492/live/live.m3u8$LR•IPV4•444『线路340』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-5dbfeb961b411c00090b52b3.m3u8$LR•IPV4•444『线路341』 +https://jmp2.uk/plu-64f8a949f5b5e4000862467c.m3u8$LR•IPV4•444『线路341』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-61c095861782bd000780e0ba.m3u8$LR•IPV4•444『线路342』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883107$LR•IPV4•444『线路342』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-61c1e270489a9c000874d209.m3u8$LR•IPV4•444『线路343』 +https://amg00862-amg00862c5-amgplt0173.playout.now3.amagi.tv/playlist/amg00862-amg00862c5-amgplt0173/playlist.m3u8$LR•IPV4•444『线路343』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-61c0b0688a80a4000703fbcb.m3u8$LR•IPV4•444『线路344』 +https://jmp2.uk/plu-69aee8a1acb7eb0bb68df641.m3u8$LR•IPV4•444『线路344』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-69776ce979545c21a1220bff.m3u8$LR•IPV4•444『线路345』 +https://jmp2.uk/plu-68487fb3f212bedacf5a53e3.m3u8$LR•IPV4•444『线路345』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65786b94cbd0d60008f7e4d9.m3u8$LR•IPV4•444『线路346』 +https://jmp2.uk/plu-634fe5afece2e60007c9d8b8.m3u8$LR•IPV4•444『线路346』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-695c32e61ca20bb8ca802eb9.m3u8$LR•IPV4•444『线路347』 +https://jmp2.uk/plu-6671b21ffc3a46000857fe75.m3u8$LR•IPV4•444『线路347』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://latam-cache-sv2-cdn.latamlive.net/LA_LIGA_SMARTBANK_IP_ENC_LIVE/index.m3u8$LR•IPV4•444『线路348』 +https://jmp2.uk/plu-62ab579258cb950007811aad.m3u8$LR•IPV4•444『线路348』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://cdn2.ujjina.com:1935/iptvovacion1/liveovacion1tv/playlist.m3u8$LR•IPV4•444『线路349』 +https://jmp2.uk/plu-65cb77853ba51e00084cba02.m3u8$LR•IPV4•444『线路349』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-603fde9026ecbf0007752c2c.m3u8$LR•IPV4•444『线路350』 +https://jmp2.uk/plu-66d717d2abec540008ba7ec4.m3u8$LR•IPV4•444『线路350』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://2-fss-2.streamhoster.com/pl_118/204972-2205186-1/playlist.m3u8$LR•IPV4•444『线路351』 +https://jmp2.uk/plu-66d717c6abec540008ba7eb5.m3u8$LR•IPV4•444『线路351』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://mvg-mv-xumo.otteravision.com/mvg/mv/mv.m3u8$LR•IPV4•444『线路352』 +https://jmp2.uk/plu-65004605110545000842035d.m3u8$LR•IPV4•444『线路352』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883047$LR•IPV4•444『线路353』 +https://jmp2.uk/plu-5dbfeb961b411c00090b52b3.m3u8$LR•IPV4•444『线路353』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://amg01258-raycomsports-powernationau-samsungau-18bwc.amagi.tv/playlist.m3u8$LR•IPV4•444『线路354』 +https://jmp2.uk/plu-61c095861782bd000780e0ba.m3u8$LR•IPV4•444『线路354』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/fierrofondo.stream/playlist.m3u8$LR•IPV4•444『线路355』 +https://jmp2.uk/plu-61c1e270489a9c000874d209.m3u8$LR•IPV4•444『线路355』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-6462190b7cb4b1000862dd60.m3u8$LR•IPV4•444『线路356』 +https://jmp2.uk/plu-61c0b0688a80a4000703fbcb.m3u8$LR•IPV4•444『线路356』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-650999b86a841400083bd1ab.m3u8$LR•IPV4•444『线路357』 +https://jmp2.uk/plu-69776ce979545c21a1220bff.m3u8$LR•IPV4•444『线路357』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://dlttx48mxf9m3.cloudfront.net/vod_clients/bolton/live/ch2/video.m3u8$LR•IPV4•444『线路358』 +https://jmp2.uk/plu-65786b94cbd0d60008f7e4d9.m3u8$LR•IPV4•444『线路358』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://iptv.ebc.edu.kh/iptv/channel/1.m3u8$LR•IPV4•444『线路359』 +https://jmp2.uk/plu-695c32e61ca20bb8ca802eb9.m3u8$LR•IPV4•444『线路359』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stmv3.voxtvhd.com.br/conex2/conex2/playlist.m3u8$LR•IPV4•444『线路360』 +http://latam-cache-sv2-cdn.latamlive.net/LA_LIGA_SMARTBANK_IP_ENC_LIVE/index.m3u8$LR•IPV4•444『线路360』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://reflect-vod-cmac.cablecast.tv/live-11/live/stream-2/live.m3u8$LR•IPV4•444『线路361』 +http://cdn2.ujjina.com:1935/iptvovacion1/liveovacion1tv/playlist.m3u8$LR•IPV4•444『线路361』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://securestream11.champds.com/LIVE/GilletteWYLIVE3/GilletteWYLIVE3.m3u8$LR•IPV4•444『线路362』 +https://jmp2.uk/plu-603fde9026ecbf0007752c2c.m3u8$LR•IPV4•444『线路362』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://videostream.chileservidores.com:8081/tome/index.m3u8$LR•IPV4•444『线路363』 +https://2-fss-2.streamhoster.com/pl_118/204972-2205186-1/playlist.m3u8$LR•IPV4•444『线路363』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://reflect-channel36-la.cablecast.tv/live-3/live/stream-1/live.m3u8$LR•IPV4•444『线路364』 +https://mvg-mv-xumo.otteravision.com/mvg/mv/mv.m3u8$LR•IPV4•444『线路364』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://reflect-mcsb-vod.cablecast.tv/live-16/live/live.m3u8$LR•IPV4•444『线路365』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883047$LR•IPV4•444『线路365』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://5c2974786200d.streamlock.net/live-chan28/ngrp:ch28_all/playlist.m3u8$LR•IPV4•444『线路366』 +https://amg01258-raycomsports-powernationau-samsungau-18bwc.amagi.tv/playlist.m3u8$LR•IPV4•444『线路366』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://reflect-monroe-public-access.cablecast.tv/live-4/live/live.m3u8$LR•IPV4•444『线路367』 +http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/fierrofondo.stream/playlist.m3u8$LR•IPV4•444『线路367』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://livestream.telvue.com/natickpegasus1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路368』 +https://jmp2.uk/plu-6462190b7cb4b1000862dd60.m3u8$LR•IPV4•444『线路368』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://fms.nrwision.de/live/ngrp:livestreamHD.stream/playlist.m3u8$LR•IPV4•444『线路369』 +https://jmp2.uk/plu-650999b86a841400083bd1ab.m3u8$LR•IPV4•444『线路369』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://securestream10.champds.com/LIVE/KOCTCALIVE2/KOCTCALIVE2.m3u8$LR•IPV4•444『线路370』 +https://dlttx48mxf9m3.cloudfront.net/vod_clients/bolton/live/ch2/video.m3u8$LR•IPV4•444『线路370』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://livestream.telvue.com/santamariactv2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路371』 +https://iptv.ebc.edu.kh/iptv/channel/1.m3u8$LR•IPV4•444『线路371』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://livestream.telvue.com/accvision2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路372』 +https://stmv3.voxtvhd.com.br/conex2/conex2/playlist.m3u8$LR•IPV4•444『线路372』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://buenapark.cablecast.tv/live/stream-1/live.m3u8$LR•IPV4•444『线路373』 +https://reflect-vod-cmac.cablecast.tv/live-11/live/stream-2/live.m3u8$LR•IPV4•444『线路373』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://champaign-cablecast.cablecast.tv/live/stream-2/live.m3u8$LR•IPV4•444『线路374』 +https://securestream11.champds.com/LIVE/GilletteWYLIVE3/GilletteWYLIVE3.m3u8$LR•IPV4•444『线路374』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://capitalcityconnection.cablecast.tv/live/stream-1/live.m3u8$LR•IPV4•444『线路375』 +https://videostream.chileservidores.com:8081/tome/index.m3u8$LR•IPV4•444『线路375』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://reflect-collier-countyboc.cablecast.tv/live-4/live/stream-1/live.m3u8$LR•IPV4•444『线路376』 +https://reflect-channel36-la.cablecast.tv/live-3/live/stream-1/live.m3u8$LR•IPV4•444『线路376』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn3.wowza.com/5/R09KQXpaMWlrRjly/coralgables/G0937_004/playlist.m3u8$LR•IPV4•444『线路377』 +https://reflect-mcsb-vod.cablecast.tv/live-16/live/live.m3u8$LR•IPV4•444『线路377』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://securestream11.champds.com/LIVE/GilletteWYLIVE2/GilletteWYLIVE2.m3u8$LR•IPV4•444『线路378』 +https://5c2974786200d.streamlock.net/live-chan28/ngrp:ch28_all/playlist.m3u8$LR•IPV4•444『线路378』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream.swagit.com/live-edge/houstontx/smil:hd-16x9-2-a/playlist.m3u8$LR•IPV4•444『线路379』 +https://reflect-monroe-public-access.cablecast.tv/live-4/live/live.m3u8$LR•IPV4•444『线路379』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream.swagit.com/live-edge/houstontx/smil:hd-16x9-2-b/playlist.m3u8$LR•IPV4•444『线路380』 +https://livestream.telvue.com/natickpegasus1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路380』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://reflect-jacksonville.cablecast.tv/live-8/live/live.m3u8$LR•IPV4•444『线路381』 +https://fms.nrwision.de/live/ngrp:livestreamHD.stream/playlist.m3u8$LR•IPV4•444『线路381』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn3.wowza.com/5/dk84U1p2UUdoMGxT/kern/G0169_003/playlist.m3u8$LR•IPV4•444『线路382』 +https://securestream10.champds.com/LIVE/KOCTCALIVE2/KOCTCALIVE2.m3u8$LR•IPV4•444『线路382』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://edge-f.swagit.com/live/longbeachca/live-3-a/playlist.m3u8$LR•IPV4•444『线路383』 +https://livestream.telvue.com/santamariactv2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路383』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://castus-vod-dev.s3.amazonaws.com/vod_clients/monroe/live/ch1/video.m3u8$LR•IPV4•444『线路384』 +https://livestream.telvue.com/accvision2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路384』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn3.wowza.com/5/RXJNMFI3VlVkOEFP/newportbeach/G0064_003/playlist.m3u8$LR•IPV4•444『线路385』 +https://buenapark.cablecast.tv/live/stream-1/live.m3u8$LR•IPV4•444『线路385』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn3.wowza.com/5/cXdyRHF0Z3kxN0k2/pinole/G0032_004/playlist.m3u8$LR•IPV4•444『线路386』 +https://champaign-cablecast.cablecast.tv/live/stream-2/live.m3u8$LR•IPV4•444『线路386』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://livestream.telvue.com/santamariactv1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路387』 +https://capitalcityconnection.cablecast.tv/live/stream-1/live.m3u8$LR•IPV4•444『线路387』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d2ferbiwcx1539.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-8zd06wicndthf-ssai-prd/WNNationalSamsung/WNNationalSamsung.m3u8$LR•IPV4•444『线路388』 +https://reflect-collier-countyboc.cablecast.tv/live-4/live/stream-1/live.m3u8$LR•IPV4•444『线路388』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d1ujfw1zyymzyd.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-a6fukwkbxmex8/live/fast-channel-animevision-64527ec0/fast-channel-animevision-64527ec0.m3u8$LR•IPV4•444『线路389』 +https://cdn3.wowza.com/5/R09KQXpaMWlrRjly/coralgables/G0937_004/playlist.m3u8$LR•IPV4•444『线路389』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d82pyvmcw2kdc.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-swfivzrzwamaq/live/fast-channel-animevisionclassics-efc8dc6d/fast-channel-animevisionclassics-efc8dc6d.m3u8$LR•IPV4•444『线路390』 +https://securestream11.champds.com/LIVE/GilletteWYLIVE2/GilletteWYLIVE2.m3u8$LR•IPV4•444『线路390』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-69492467ae33e24d916e56cf.m3u8$LR•IPV4•444『线路391』 +https://stream.swagit.com/live-edge/houstontx/smil:hd-16x9-2-a/playlist.m3u8$LR•IPV4•444『线路391』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://rpn.bozztv.com/gusa/gusa-chefchampion/index.m3u8$LR•IPV4•444『线路392』 +https://stream.swagit.com/live-edge/houstontx/smil:hd-16x9-2-b/playlist.m3u8$LR•IPV4•444『线路392』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-69a9ae4d3bd16a4ed04240d7.m3u8$LR•IPV4•444『线路393』 +https://reflect-jacksonville.cablecast.tv/live-8/live/live.m3u8$LR•IPV4•444『线路393』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-6478a9e4f77b61000817034b.m3u8$LR•IPV4•444『线路394』 +https://cdn3.wowza.com/5/dk84U1p2UUdoMGxT/kern/G0169_003/playlist.m3u8$LR•IPV4•444『线路394』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-639b4eb4da3fda0008036f6e.m3u8$LR•IPV4•444『线路395』 +https://edge-f.swagit.com/live/longbeachca/live-3-a/playlist.m3u8$LR•IPV4•444『线路395』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-639b4f14be012600070fe1be.m3u8$LR•IPV4•444『线路396』 +https://castus-vod-dev.s3.amazonaws.com/vod_clients/monroe/live/ch1/video.m3u8$LR•IPV4•444『线路396』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://cdn4.skygo.mn/live/disk1/Education/DASH-FTA/Education.mpd$LR•IPV4•444『线路397』 +https://cdn3.wowza.com/5/RXJNMFI3VlVkOEFP/newportbeach/G0064_003/playlist.m3u8$LR•IPV4•444『线路397』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://223.166.234.114:7777/tsfile/live/1033_1.m3u8$LR•IPV4•444『线路398』 +https://cdn3.wowza.com/5/cXdyRHF0Z3kxN0k2/pinole/G0032_004/playlist.m3u8$LR•IPV4•444『线路398』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-67f68bd2135aeda9ddf0ef54.m3u8$LR•IPV4•444『线路399』 +https://livestream.telvue.com/santamariactv1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路399』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-612f761008a9e50007984ba0.m3u8$LR•IPV4•444『线路400』 +https://d2ferbiwcx1539.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-8zd06wicndthf-ssai-prd/WNNationalSamsung/WNNationalSamsung.m3u8$LR•IPV4•444『线路400』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-646b14a0e94c3800082a8d3a.m3u8$LR•IPV4•444『线路401』 +https://d1ujfw1zyymzyd.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-a6fukwkbxmex8/live/fast-channel-animevision-64527ec0/fast-channel-animevision-64527ec0.m3u8$LR•IPV4•444『线路401』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d87a66ec9fda0008a5ac11.m3u8$LR•IPV4•444『线路402』 +https://d82pyvmcw2kdc.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-swfivzrzwamaq/live/fast-channel-animevisionclassics-efc8dc6d/fast-channel-animevisionclassics-efc8dc6d.m3u8$LR•IPV4•444『线路402』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d87fcb66eec8000887f4aa.m3u8$LR•IPV4•444『线路403』 +https://jmp2.uk/plu-69492467ae33e24d916e56cf.m3u8$LR•IPV4•444『线路403』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d881d566eec8000887f6bb.m3u8$LR•IPV4•444『线路404』 +https://rpn.bozztv.com/gusa/gusa-chefchampion/index.m3u8$LR•IPV4•444『线路404』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-646b14747cb4b1000875724d.m3u8$LR•IPV4•444『线路405』 +https://jmp2.uk/plu-69a9ae4d3bd16a4ed04240d7.m3u8$LR•IPV4•444『线路405』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d87a058145cb0008265c2e.m3u8$LR•IPV4•444『线路406』 +https://jmp2.uk/plu-6478a9e4f77b61000817034b.m3u8$LR•IPV4•444『线路406』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d87fa0f7f0af0008b2358b.m3u8$LR•IPV4•444『线路407』 +https://jmp2.uk/plu-639b4eb4da3fda0008036f6e.m3u8$LR•IPV4•444『线路407』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d881b1332fec000833a122.m3u8$LR•IPV4•444『线路408』 +https://jmp2.uk/plu-639b4f14be012600070fe1be.m3u8$LR•IPV4•444『线路408』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65df4934f7f0af0008c32545.m3u8$LR•IPV4•444『线路409』 +https://cdn4.skygo.mn/live/disk1/Education/DASH-FTA/Education.mpd$LR•IPV4•444『线路409』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-646b1404ee6a2f00082b5d66.m3u8$LR•IPV4•444『线路410』 +http://223.166.234.114:7777/tsfile/live/1033_1.m3u8$LR•IPV4•444『线路410』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d879bd0d4561000805d190.m3u8$LR•IPV4•444『线路411』 +https://jmp2.uk/plu-67f68bd2135aeda9ddf0ef54.m3u8$LR•IPV4•444『线路411』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d87f53ec9fda0008a5b810.m3u8$LR•IPV4•444『线路412』 +https://jmp2.uk/plu-612f761008a9e50007984ba0.m3u8$LR•IPV4•444『线路412』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d880cea25d5e0008315b0a.m3u8$LR•IPV4•444『线路413』 +https://jmp2.uk/plu-646b14a0e94c3800082a8d3a.m3u8$LR•IPV4•444『线路413』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65df47f428730900089f83ac.m3u8$LR•IPV4•444『线路414』 +https://jmp2.uk/plu-65d87a66ec9fda0008a5ac11.m3u8$LR•IPV4•444『线路414』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-646b14d0e1979c0008915a09.m3u8$LR•IPV4•444『线路415』 +https://jmp2.uk/plu-65d87fcb66eec8000887f4aa.m3u8$LR•IPV4•444『线路415』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d87a908145cb0008265c6d.m3u8$LR•IPV4•444『线路416』 +https://jmp2.uk/plu-65d881d566eec8000887f6bb.m3u8$LR•IPV4•444『线路416』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d88004ec9fda0008a5b8b3.m3u8$LR•IPV4•444『线路417』 +https://jmp2.uk/plu-646b14747cb4b1000875724d.m3u8$LR•IPV4•444『线路417』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d882394e01740008a36768.m3u8$LR•IPV4•444『线路418』 +https://jmp2.uk/plu-65d87a058145cb0008265c2e.m3u8$LR•IPV4•444『线路418』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65df49b30d45610008172c5b.m3u8$LR•IPV4•444『线路419』 +https://jmp2.uk/plu-65d87fa0f7f0af0008b2358b.m3u8$LR•IPV4•444『线路419』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-646b150a15939400089e2702.m3u8$LR•IPV4•444『线路420』 +https://jmp2.uk/plu-65d881b1332fec000833a122.m3u8$LR•IPV4•444『线路420』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-646b1438e94c3800082a8cff.m3u8$LR•IPV4•444『线路421』 +https://jmp2.uk/plu-65df4934f7f0af0008c32545.m3u8$LR•IPV4•444『线路421』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d879e266eec8000887e91b.m3u8$LR•IPV4•444『线路422』 +https://jmp2.uk/plu-646b1404ee6a2f00082b5d66.m3u8$LR•IPV4•444『线路422』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d87f7a28730900088e7fbf.m3u8$LR•IPV4•444『线路423』 +https://jmp2.uk/plu-65d879bd0d4561000805d190.m3u8$LR•IPV4•444『线路423』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65d881914e01740008a36603.m3u8$LR•IPV4•444『线路424』 +https://jmp2.uk/plu-65d87f53ec9fda0008a5b810.m3u8$LR•IPV4•444『线路424』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://jmp2.uk/plu-65df48ba28730900089f8480.m3u8$LR•IPV4•444『线路425』 +https://jmp2.uk/plu-65d880cea25d5e0008315b0a.m3u8$LR•IPV4•444『线路425』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://qvc-amd-live.akamaized.net/hls/live/2034113/lsqvc5us/master.m3u8$LR•IPV4•444『线路426』 +https://jmp2.uk/plu-65df47f428730900089f83ac.m3u8$LR•IPV4•444『线路426』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/jewish-life-television-jltv/jltv.m3u8?ads.vf=sDqPiBzBf9O$LR•IPV4•444『线路427』 +https://jmp2.uk/plu-646b14d0e1979c0008915a09.m3u8$LR•IPV4•444『线路427』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://amg00627-amg00627c40-rakuten-uk-5725.playouts.now.amagi.tv/playlist/amg00627-banijayfast-mrbeanpopupcc-rakutenuk/playlist.m3u8$LR•IPV4•444『线路428』 +https://jmp2.uk/plu-65d87a908145cb0008265c6d.m3u8$LR•IPV4•444『线路428』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://amg00627-amg00627c39-samsung-gb-5569.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路429』 +https://jmp2.uk/plu-65d88004ec9fda0008a5b8b3.m3u8$LR•IPV4•444『线路429』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream-204968.castr.net/64e0c91d08bff3041638aee3/live_a4243540d4b911f0b624bda5e9a32aa9/index.m3u8$LR•IPV4•444『线路430』 +https://jmp2.uk/plu-65d882394e01740008a36768.m3u8$LR•IPV4•444『线路430』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://stream-204968.castr.net/64e0c91d08bff3041638aee3/live_a16fa020f4c411f09ddaa1978319689a/index.m3u8$LR•IPV4•444『线路431』 +https://jmp2.uk/plu-65df49b30d45610008172c5b.m3u8$LR•IPV4•444『线路431』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://lukentvlive.vgcdn.net/v1/master/cef183924f24adfa3d5d7601c3a17769082c0c2b/Revn/index.m3u8$LR•IPV4•444『线路432』 +https://jmp2.uk/plu-646b150a15939400089e2702.m3u8$LR•IPV4•444『线路432』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://akariko.netgenx.site/stream/jp/fishing_vision/stream-output.m3u8?mode=hls$LR•IPV4•444『线路433』 +https://jmp2.uk/plu-646b1438e94c3800082a8cff.m3u8$LR•IPV4•444『线路433』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://108.181.20.255:27347/livehttpplay?channel_id=23088$LR•IPV4•444『线路434』 +https://jmp2.uk/plu-65d879e266eec8000887e91b.m3u8$LR•IPV4•444『线路434』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://108.181.20.255:27347/livehttpplay?channel_id=23089$LR•IPV4•444『线路435』 +https://jmp2.uk/plu-65d87f7a28730900088e7fbf.m3u8$LR•IPV4•444『线路435』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://108.181.20.255:27347/livehttpplay?channel_id=23090$LR•IPV4•444『线路436』 +https://jmp2.uk/plu-65d881914e01740008a36603.m3u8$LR•IPV4•444『线路436』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://108.181.20.255:27347/livehttpplay?channel_id=23091$LR•IPV4•444『线路437』 +https://jmp2.uk/plu-65df48ba28730900089f8480.m3u8$LR•IPV4•444『线路437』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://108.181.20.255:27347/livehttpplay?channel_id=23092$LR•IPV4•444『线路438』 +https://qvc-amd-live.akamaized.net/hls/live/2034113/lsqvc5us/master.m3u8$LR•IPV4•444『线路438』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://108.181.20.255:27347/livehttpplay?channel_id=23102$LR•IPV4•444『线路439』 +https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/jewish-life-television-jltv/jltv.m3u8?ads.vf=sDqPiBzBf9O$LR•IPV4•444『线路439』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://iptv.zkbhj.com/tv/url/go?id=4db03e9f679d9326568d74d500a9c5a4f2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•444『线路440』 +https://amg00627-amg00627c40-rakuten-uk-5725.playouts.now.amagi.tv/playlist/amg00627-banijayfast-mrbeanpopupcc-rakutenuk/playlist.m3u8$LR•IPV4•444『线路440』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://streams2.sofast.tv/umaxx/v1/0196fcdb0ee01ea506ec1fab16cfab/0196fcdf09931ea5064918d106ecf7/Automotions_eng_2500k.m3u8$LR•IPV4•444『线路441』 +https://amg00627-amg00627c39-samsung-gb-5569.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路441』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -p3p://167.114.175.6:55331/65ac3b2b000a5828b9f89b6271881f96$LR•IPV4•444『线路442』 +https://stream-204968.castr.net/64e0c91d08bff3041638aee3/live_a4243540d4b911f0b624bda5e9a32aa9/index.m3u8$LR•IPV4•444『线路442』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -https://fash2043.cloudycdn.services/slive/ftv_ftv_4k_hevc_73d_42080_default_466_hls.smil/playlist.m3u8$LR•IPV4•444『线路443』 +https://stream-204968.castr.net/64e0c91d08bff3041638aee3/live_a16fa020f4c411f09ddaa1978319689a/index.m3u8$LR•IPV4•444『线路443』 #EXTINF:-1 tvg-name="ION" group-title="港澳台",ION -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9831&tk=f6cc1e0a0e1a$LR•IPV4•444『线路444』 +https://lukentvlive.vgcdn.net/v1/master/cef183924f24adfa3d5d7601c3a17769082c0c2b/Revn/index.m3u8$LR•IPV4•444『线路444』 #EXTINF:-1 tvg-name="Love Nature" group-title="港澳台",Love Nature -https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•8『线路1』 +p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-name="Love Nature" group-title="港澳台",Love Nature -https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•8『线路2』 +https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-name="Love Nature" group-title="港澳台",Love Nature -https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•8『线路3』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-name="Love Nature" group-title="港澳台",Love Nature -http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•8『线路4』 +http://rihou.cc:555/tv/LoveNature$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-name="Love Nature" group-title="港澳台",Love Nature -http://rihou.cc:555/tv/LoveNature$LR•IPV4•8『线路5』 +https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-name="Love Nature" group-title="港澳台",Love Nature -p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•8『线路6』 +https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-name="Love Nature" group-title="港澳台",Love Nature -https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•8『线路7』 +https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-name="Love Nature" group-title="港澳台",Love Nature -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•8『线路8』 +http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-name="Fight Network" group-title="港澳台",Fight Network https://d12a2vxqkkh1bo.cloudfront.net/hls/main.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="Wild Earth" group-title="港澳台",Wild Earth @@ -13402,55 +13410,55 @@ https://wildearth-plex.amagi.tv/masterR1080p.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="Clarity 4K" group-title="港澳台",Clarity 4K https://pb-qyrvophnifz47.akamaized.net/Clarity_4K.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="Stadium" group-title="港澳台",Stadium -https://wurl120sports.global.transmit.live/hls/679a907dce42a042c23ace37/v1/stadium_gracenote/samsung_us/latest/main/hls/playlist.m3u8$LR•IPV4•2『线路1』 +https://2d006483e2aa43fe812f7b464cb2916d.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung_Stadium/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="Stadium" group-title="港澳台",Stadium -https://2d006483e2aa43fe812f7b464cb2916d.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung_Stadium/playlist.m3u8$LR•IPV4•2『线路2』 +https://wurl120sports.global.transmit.live/hls/679a907dce42a042c23ace37/v1/stadium_gracenote/samsung_us/latest/main/hls/playlist.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://d24c0gmuazjo9x.cloudfront.net/master.m3u8$LR•IPV4•23『线路1』 +http://bgdc.live:25461/catrinamcdermott/catrinamcdermott/51112$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://d3kmrn2mstrnk5.cloudfront.net/f4acc9ba_daae_4ed0_b836_32126cead919/hls/playlist.m3u8$LR•IPV4•23『线路2』 +https://d24c0gmuazjo9x.cloudfront.net/master.m3u8$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://amg01753-narrativeentert-popkids-lggb-xyy5k.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeentert-popkids-lggb/playlist.m3u8$LR•IPV4•23『线路3』 +https://d3kmrn2mstrnk5.cloudfront.net/f4acc9ba_daae_4ed0_b836_32126cead919/hls/playlist.m3u8$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://stream.ads.ottera.tv/playlist.m3u8?network_id=1086$LR•IPV4•23『线路4』 +https://amg01753-narrativeentert-popkids-lggb-xyy5k.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeentert-popkids-lggb/playlist.m3u8$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://amg00056-amg00056c7-rakuten-de-3245.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路5』 +https://stream.ads.ottera.tv/playlist.m3u8?network_id=1086$LR•IPV4•23『线路5』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://amg00056-amg00056c8-rakuten-it-3239.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路6』 +https://amg00056-amg00056c7-rakuten-de-3245.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路6』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://amg00056-amg00056c10-rakuten-es-3242.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路7』 +https://amg00056-amg00056c8-rakuten-it-3239.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路7』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•23『线路8』 +https://amg00056-amg00056c10-rakuten-es-3242.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路8』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://amg00056-amg00056c15-rakuten-it-3241.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路9』 +https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://dogus-live.daioncdn.net/kralpoptv/playlist.m3u8$LR•IPV4•23『线路10』 +https://amg00056-amg00056c15-rakuten-it-3241.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://jmp2.uk/plu-6047fbdbbb776a0007e7f2ff.m3u8$LR•IPV4•23『线路11』 +https://dogus-live.daioncdn.net/kralpoptv/playlist.m3u8$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://jmp2.uk/plu-65410176770cf1000866bf31.m3u8$LR•IPV4•23『线路12』 +https://jmp2.uk/plu-6047fbdbbb776a0007e7f2ff.m3u8$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://jmp2.uk/plu-6047fabfce6e8e00070bcc9f.m3u8$LR•IPV4•23『线路13』 +https://jmp2.uk/plu-65410176770cf1000866bf31.m3u8$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://jmp2.uk/plu-5d14fd1a252d35decbc4080c.m3u8$LR•IPV4•23『线路14』 +https://jmp2.uk/plu-6047fabfce6e8e00070bcc9f.m3u8$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://janus.xpbroadcasting.com:8443/hls/popworld.m3u8$LR•IPV4•23『线路15』 +https://jmp2.uk/plu-5d14fd1a252d35decbc4080c.m3u8$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://lotus.stingray.com/manifest/ose-104ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•23『线路16』 +https://janus.xpbroadcasting.com:8443/hls/popworld.m3u8$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://lotus.stingray.com/manifest/ose-190ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•23『线路17』 +https://lotus.stingray.com/manifest/ose-104ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://d128y56w6v2kax.cloudfront.net/playlist/amg00056-vevotv-vevopopau-samsungau/playlist.m3u8$LR•IPV4•23『线路18』 +https://lotus.stingray.com/manifest/ose-190ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://amg01753-amg01753c9-samsung-gb-8005.playouts.now.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeuk-popup-samsunggb/playlist.m3u8$LR•IPV4•23『线路19』 +https://d128y56w6v2kax.cloudfront.net/playlist/amg00056-vevotv-vevopopau-samsungau/playlist.m3u8$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://jmp2.uk/plu-6093f7b5bb49b90007cecaad.m3u8$LR•IPV4•23『线路20』 +https://amg01753-amg01753c9-samsung-gb-8005.playouts.now.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeuk-popup-samsunggb/playlist.m3u8$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -https://amg01753-narrativeuk-amg01753c1-lg-gb-1830.playouts.now.amagi.tv/playlist/amg01753-narrativeuk-tinypop-lggb/playlist.m3u8$LR•IPV4•23『线路21』 +https://jmp2.uk/plu-6093f7b5bb49b90007cecaad.m3u8$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -http://92.114.85.72:8000/play/a08p$LR•IPV4•23『线路22』 +https://amg01753-narrativeuk-amg01753c1-lg-gb-1830.playouts.now.amagi.tv/playlist/amg01753-narrativeuk-tinypop-lggb/playlist.m3u8$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-name="Pop" group-title="港澳台",Pop -http://bgdc.live:25461/catrinamcdermott/catrinamcdermott/51112$LR•IPV4•23『线路23』 +http://92.114.85.72:8000/play/a08p$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-name="Tastemade" group-title="港澳台",Tastemade https://jmp2.uk/plu-68b88821e542386ab0bf5bef.m3u8$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-name="Tastemade" group-title="港澳台",Tastemade @@ -13494,69 +13502,69 @@ https://jmp2.uk/plu-64a3d96f060e830008af6745.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-name="香港国际财经" group-title="港澳台",香港国际财经 p3p://167.114.175.6:55331/64838620000cd8ed32fb0d6a414411f7$LR•IPV4 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•17『线路1』 +https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•17『线路2』 +https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•17『线路3』 +https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -http://213.91.179.28:8000/play/a04m$LR•IPV4•17『线路4』 +https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•17『线路5』 +https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01601-bloomberg-bloombergplus-hls-rakutenjp/playlist.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•17『线路6』 +https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•17『线路7』 +http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路8』 +https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路9』 +http://213.91.179.28:8000/play/a04m$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•17『线路10』 +https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•17『线路11』 +https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•17『线路12』 +https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•17『线路13』 +https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01601-bloomberg-bloombergplus-hls-rakutenjp/playlist.m3u8$LR•IPV4•17『线路14』 +https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•17『线路15』 +https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•17『线路16』 +https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•17『线路17』 +https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•15『线路1』 +http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•15『线路2』 +https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•15『线路2』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•15『线路3』 +https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -http://rezofoot.tv/CNBC/index.m3u8$LR•IPV4•15『线路4』 +https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•15『线路5』 +http://rezofoot.tv/CNBC/index.m3u8$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•15『线路6』 +https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•15『线路7』 +https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•15『线路8』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•15『线路9』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•15『线路10』 +https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•15『线路11』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•15『线路12』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•15『线路13』 +https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•15『线路14』 +https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-name="CNBC" group-title="港澳台",CNBC -http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•15『线路15』 +https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-name="TV8" group-title="港澳台",TV8 https://1740288887.rsc.cdn77.org/1740288887/index.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="TV8" group-title="港澳台",TV8 @@ -13582,37 +13590,39 @@ p3p://167.114.175.6:55331/612ee43d000c84ea8e0dab707a8b2e0d$LR•IPV4 #EXTINF:-1 tvg-name="中天綜合" group-title="港澳台",中天綜合 http://23.237.10.66:16372$LR•IPV4 #EXTINF:-1 tvg-name="澳视澳门" group-title="港澳台",澳视澳门 -http://cdn6.163189.xyz/163189/asam$LR•IPV4•10『线路1』 +http://php.jdshipin.com/TVOD/iptv.php?id=asam$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-name="澳视澳门" group-title="港澳台",澳视澳门 -http://push.cdn1.hls123.de:8080/streams/2r8ba88ujh6/index.m3u8$LR•IPV4•10『线路2』 +http://php.jdshipin.com/PLTV/iptv.php?id=asam$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-name="澳视澳门" group-title="港澳台",澳视澳门 -https://cdn6.163189.xyz/163189/asam$LR•IPV4•10『线路3』 +http://1b6467f415.iok.la:9931/tsfile/live/1039_1.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-name="澳视澳门" group-title="港澳台",澳视澳门 -http://php.jdshipin.com/TVOD/iptv.php?id=asam$LR•IPV4•10『线路4』 +http://61.244.22.5/ch1/ch1.live/playelist.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-name="澳视澳门" group-title="港澳台",澳视澳门 -http://php.jdshipin.com/PLTV/iptv.php?id=asam$LR•IPV4•10『线路5』 +http://grandprix2023.asuscomm.com:8891/bysid/91.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-name="澳视澳门" group-title="港澳台",澳视澳门 -http://1b6467f415.iok.la:9931/tsfile/live/1039_1.m3u8$LR•IPV4•10『线路6』 +http://103.233.191.134:1935/ch1/ch1.live/playlist.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-name="澳视澳门" group-title="港澳台",澳视澳门 -http://61.244.22.5/ch1/ch1.live/playelist.m3u8$LR•IPV4•10『线路7』 +http://43.251.226.89:8080/play/900.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-name="澳视澳门" group-title="港澳台",澳视澳门 -http://grandprix2023.asuscomm.com:8891/bysid/91.m3u8$LR•IPV4•10『线路8』 +http://cdn6.163189.xyz/163189/asam$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-name="澳视澳门" group-title="港澳台",澳视澳门 -http://103.233.191.134:1935/ch1/ch1.live/playlist.m3u8$LR•IPV4•10『线路9』 +http://push.cdn1.hls123.de:8080/streams/2r8ba88ujh6/index.m3u8$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-name="澳视澳门" group-title="港澳台",澳视澳门 -http://43.251.226.89:8080/play/900.m3u8$LR•IPV4•10『线路10』 +https://cdn6.163189.xyz/163189/asam$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-name="TVB J1" group-title="港澳台",TVB J1 p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4 #EXTINF:-1 tvg-name="千禧经典" group-title="港澳台",千禧经典 -http://o11.163189.xyz/stream/live/tvbc/$LR•IPV4•5『线路1』 +http://cdn9.163189.xyz/smt3.1.1.php?id=Tvbclassic$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-name="千禧经典" group-title="港澳台",千禧经典 -http://php.jdshipin.com/TVOD/iptv.php?id=tvbc$LR•IPV4•5『线路2』 +http://php.jdshipin.com/TVOD/iptv.php?id=tvbc$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-name="千禧经典" group-title="港澳台",千禧经典 -http://php.jdshipin.com/PLTV/iptv.php?id=tvbc$LR•IPV4•5『线路3』 +http://php.jdshipin.com/PLTV/iptv.php?id=tvbc$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-name="千禧经典" group-title="港澳台",千禧经典 -http://php.jdshipin.com/smt.php?id=Tvbclassic$LR•IPV4•5『线路4』 +http://php.jdshipin.com/smt.php?id=Tvbclassic$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-name="千禧经典" group-title="港澳台",千禧经典 -p3p://167.114.175.6:55331/5fdee1a2000b5fba6d93e51308cb7ddf$LR•IPV4•5『线路5』 +p3p://167.114.175.6:55331/5fdee1a2000b5fba6d93e51308cb7ddf$LR•IPV4•6『线路5』 +#EXTINF:-1 tvg-name="千禧经典" group-title="港澳台",千禧经典 +http://o11.163189.xyz/stream/live/tvbc/$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-name="MOMO TV" group-title="港澳台",MOMO TV http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4 #EXTINF:-1 tvg-name="HOY78" group-title="港澳台",HOY78 @@ -13626,35 +13636,35 @@ https://o11.163189.xyz/stream/live/aod/$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="ELEVEN体育3" group-title="港澳台",ELEVEN体育3 https://smart.pendy.dpdns.org/Smart.php?id=eltasport3_twn$LR•IPV4 #EXTINF:-1 tvg-name="澳视卫星" group-title="港澳台",澳视卫星 -http://push.cdn1.hls123.de:8080/streams/gese9d57376/index.m3u8$LR•IPV4•5『线路1』 +http://php.jdshipin.com/TVOD/iptv.php?id=as$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-name="澳视卫星" group-title="港澳台",澳视卫星 -https://cdn6.163189.xyz/163189/as$LR•IPV4•5『线路2』 +http://103.233.191.134:1935/ch3/ch3.live/playlist.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-name="澳视卫星" group-title="港澳台",澳视卫星 -http://php.jdshipin.com/TVOD/iptv.php?id=as$LR•IPV4•5『线路3』 +http://43.251.226.89:8080/play/901.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-name="澳视卫星" group-title="港澳台",澳视卫星 -http://103.233.191.134:1935/ch3/ch3.live/playlist.m3u8$LR•IPV4•5『线路4』 +http://push.cdn1.hls123.de:8080/streams/gese9d57376/index.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-name="澳视卫星" group-title="港澳台",澳视卫星 -http://43.251.226.89:8080/play/901.m3u8$LR•IPV4•5『线路5』 +https://cdn6.163189.xyz/163189/as$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-name="八度空间" group-title="港澳台",八度空间 -http://cdn6.163189.xyz/163189/8tv$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/917.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="八度空间" group-title="港澳台",八度空间 -https://cdn6.163189.xyz/163189/8tv$LR•IPV4•3『线路2』 +http://cdn6.163189.xyz/163189/8tv$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="八度空间" group-title="港澳台",八度空间 -http://43.251.226.89:8080/play/917.m3u8$LR•IPV4•3『线路3』 +https://cdn6.163189.xyz/163189/8tv$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="CH5" group-title="港澳台",CH5 -https://cdn6.163189.xyz/163189/ch5$LR•IPV4•2『线路1』 +http://43.251.226.89:8080/play/915.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="CH5" group-title="港澳台",CH5 -http://43.251.226.89:8080/play/915.m3u8$LR•IPV4•2『线路2』 +https://cdn6.163189.xyz/163189/ch5$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="CH8" group-title="港澳台",CH8 -https://cdn6.163189.xyz/163189/ch8$LR•IPV4•2『线路1』 +http://43.251.226.89:8080/play/916.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="CH8" group-title="港澳台",CH8 -http://43.251.226.89:8080/play/916.m3u8$LR•IPV4•2『线路2』 +https://cdn6.163189.xyz/163189/ch8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="CHU" group-title="港澳台",CHU -https://live-evg11.tv360.bitel.com.pe/bitel/ucayalitvSRT/playlist.m3u8$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/914.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="CHU" group-title="港澳台",CHU -https://cdn6.163189.xyz/163189/chu$LR•IPV4•3『线路2』 +https://live-evg11.tv360.bitel.com.pe/bitel/ucayalitvSRT/playlist.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="CHU" group-title="港澳台",CHU -http://43.251.226.89:8080/play/914.m3u8$LR•IPV4•3『线路3』 +https://cdn6.163189.xyz/163189/chu$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="Astro AEC" group-title="港澳台",Astro AEC https://o11.163189.xyz/stream/live/aec/$LR•IPV4 #EXTINF:-1 tvg-name="爱奇艺" group-title="港澳台",爱奇艺 @@ -13662,17 +13672,17 @@ http://php.jdshipin.com/smt.php?id=Qiyi$LR•IPV4 #EXTINF:-1 tvg-name="NOW NEWS" group-title="港澳台",NOW NEWS https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/times-now-news/master.m3u8?ads.vf=yxbqJWPCXd4$LR•IPV4 #EXTINF:-1 tvg-name="澳门体育" group-title="港澳台",澳门体育 -http://cdn6.163189.xyz/163189/amty$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/902.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="澳门体育" group-title="港澳台",澳门体育 -https://cdn6.163189.xyz/163189/amty$LR•IPV4•3『线路2』 +http://cdn6.163189.xyz/163189/amty$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="澳门体育" group-title="港澳台",澳门体育 -http://43.251.226.89:8080/play/902.m3u8$LR•IPV4•3『线路3』 +https://cdn6.163189.xyz/163189/amty$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="澳门综艺" group-title="港澳台",澳门综艺 -http://cdn6.163189.xyz/163189/amzy$LR•IPV4•3『线路1』 +http://43.251.226.89:8080/play/903.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="澳门综艺" group-title="港澳台",澳门综艺 -https://cdn6.163189.xyz/163189/amzy$LR•IPV4•3『线路2』 +http://cdn6.163189.xyz/163189/amzy$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="澳门综艺" group-title="港澳台",澳门综艺 -http://43.251.226.89:8080/play/903.m3u8$LR•IPV4•3『线路3』 +https://cdn6.163189.xyz/163189/amzy$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="NU2" group-title="港澳台",NU2 https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV14.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="华视HD" group-title="港澳台",华视HD @@ -13684,35 +13694,35 @@ p3p://167.114.175.6:55331/643a6b71000a47fb156c2a403510409b$LR•IPV4•2『线 #EXTINF:-1 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•16『线路1』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•16『线路2』 +https://stream1.freetv.fun/abc-news-australia-1.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•16『线路3』 +https://stream1.freetv.fun/abc-news-australia-2.ctv$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•16『线路4』 +https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•16『线路5』 +https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.m3u8$LR•IPV4•16『线路6』 +https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/master.m3u8$LR•IPV4•16『线路7』 +https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/master.m3u8$LR•IPV4•16『线路8』 +https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/master.m3u8$LR•IPV4•16『线路9』 +https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/master.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/master.m3u8$LR•IPV4•16『线路10』 +https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/master.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/master.m3u8$LR•IPV4•16『线路11』 +https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/master.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/master.m3u8$LR•IPV4•16『线路12』 +https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/master.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/master.m3u8$LR•IPV4•16『线路13』 +https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/master.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://sabconetanw.cdn.mangomolo.com/news/smil:news.stream.smil/master.m3u8$LR•IPV4•16『线路14』 +https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/master.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://stream1.freetv.fun/abc-news-australia-1.m3u8$LR•IPV4•16『线路15』 +https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/master.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-name="ABC NEWS" group-title="YouTube",ABC NEWS -https://stream1.freetv.fun/abc-news-australia-2.ctv$LR•IPV4•16『线路16』 +https://sabconetanw.cdn.mangomolo.com/news/smil:news.stream.smil/master.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-name="大爱" group-title="YouTube",大爱 https://pulltv3.wanfudaluye.com/live/tv3.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="INDIA TODAY" group-title="YouTube",INDIA TODAY @@ -13730,13 +13740,13 @@ http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="林正英电影" group-title="影视",林正英电影 http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="天映经典" group-title="影视",天映经典 -http://o11.163189.xyz/stream/live/ccm/$LR•IPV4•4『线路1』 +http://php.jdshipin.com/smt.php?id=Celestial2$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="天映经典" group-title="影视",天映经典 -http://php.jdshipin.com/smt.php?id=Celestial2$LR•IPV4•4『线路2』 +http://bx.757888.xyz/api.php?id=tyjd$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="天映经典" group-title="影视",天映经典 -http://bx.757888.xyz/api.php?id=tyjd$LR•IPV4•4『线路3』 +p3p://167.114.175.6:55331/5fded422000d0eb46d5f29815c1d4155$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="天映经典" group-title="影视",天映经典 -p3p://167.114.175.6:55331/5fded422000d0eb46d5f29815c1d4155$LR•IPV4•4『线路4』 +http://o11.163189.xyz/stream/live/ccm/$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="东森洋片" group-title="影视",东森洋片 p3p://167.114.175.6:55331/64c62c06000d1cf03751bf246ed813e7$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="东森洋片" group-title="影视",东森洋片 @@ -13746,13 +13756,13 @@ https://live.ottiptv.cc/huya/11342396$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="铁齿铜牙纪晓岚" group-title="YY",铁齿铜牙纪晓岚 http://fmbox.cc/huya.php?id=11342396$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="111" group-title="YY",111 -https://5db313b643fd8.streamlock.net/111/111/playlist.m3u8$LR•IPV4•4『线路1』 +http://61.216.67.119:1935/TWHG/E1/chunklist_w705811302.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="111" group-title="YY",111 -http://61.216.67.119:1935/TWHG/E1/chunklist_w705811302.m3u8$LR•IPV4•4『线路2』 +http://61.216.67.119:1935/TWHG/E1/chunklist_w70581102.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="111" group-title="YY",111 -http://61.216.67.119:1935/TWHG/E1/chunklist_w70581102.m3u8$LR•IPV4•4『线路3』 +http://61.216.67.119:1935/TWHG/E1/chunklist_w7058102.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="111" group-title="YY",111 -http://61.216.67.119:1935/TWHG/E1/chunklist_w7058102.m3u8$LR•IPV4•4『线路4』 +https://5db313b643fd8.streamlock.net/111/111/playlist.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="封神榜" group-title="YY",封神榜 http://cdn.jdshipin.com:8880/huya.php?id=29465849$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="封神榜" group-title="YY",封神榜 @@ -13766,13 +13776,13 @@ https://vip.ffzy-play6.com/20221112/6044_68796407/index.m3u8$LR•IPV4•3『线 #EXTINF:-1 tvg-name="神雕侠侣" group-title="YY",神雕侠侣 http://fmbox.cc/huya.php?id=11352964$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="狄仁杰" group-title="YY",狄仁杰 -https://live.ottiptv.cc/huya/11352958$LR•IPV4•6『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=30080229$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-name="狄仁杰" group-title="YY",狄仁杰 -https://live.ottiptv.cc/huya/11342425$LR•IPV4•6『线路2』 +https://live.ottiptv.cc/huya/11352958$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-name="狄仁杰" group-title="YY",狄仁杰 -https://goodiptv.club/douyu/12183882$LR•IPV4•6『线路3』 +https://live.ottiptv.cc/huya/11342425$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-name="狄仁杰" group-title="YY",狄仁杰 -http://cdn.jdshipin.com:8880/huya.php?id=30080229$LR•IPV4•6『线路4』 +https://goodiptv.club/douyu/12183882$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-name="狄仁杰" group-title="YY",狄仁杰 https://v9.tlkqc.com/wjv9/202408/06/p7712pXCuV81/video/index.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-name="狄仁杰" group-title="YY",狄仁杰 @@ -13786,357 +13796,359 @@ http://120.76.248.139/live/bfgd/4200000146.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="迷" group-title="YY",迷 https://live.ottiptv.cc/huya/29465863$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="迷" group-title="YY",迷 -https://iptv.catvod.com/douyin/46224253966$LR•IPV4•7『线路3』 +https://vip.ffzy-play7.com/20221117/5052_54ce37e4/index.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="迷" group-title="YY",迷 -https://iptv.catvod.com/douyin/1365563194$LR•IPV4•7『线路4』 +https://vip.ffzy-play6.com/20221019/111_6edaadc7/index.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-name="迷" group-title="YY",迷 -https://vip.ffzy-play7.com/20221117/5052_54ce37e4/index.m3u8$LR•IPV4•7『线路5』 +p3p://167.114.175.6:55331/62c9a2fe00025fc4c698ca952e9711cb$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-name="迷" group-title="YY",迷 -https://vip.ffzy-play6.com/20221019/111_6edaadc7/index.m3u8$LR•IPV4•7『线路6』 +https://iptv.catvod.com/douyin/46224253966$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-name="迷" group-title="YY",迷 -p3p://167.114.175.6:55331/62c9a2fe00025fc4c698ca952e9711cb$LR•IPV4•7『线路7』 +https://iptv.catvod.com/douyin/1365563194$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://epg.112114.xyz/douyu/413573$LR•IPV4•171『线路1』 +http://183.237.95.108:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•172『线路1』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://183.207.248.71/cntv/live1/jdianying/jdianying$LR•IPV4•171『线路2』 +http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•172『线路2』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://39.134.19.76/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226463/index.m3u8$LR•IPV4•171『线路3』 +http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•172『线路3』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://feilong123.vip/409990236/tv.php?id=ssdy$LR•IPV4•171『线路4』 +http://cdn.jdshipin.com:8880/huya.php?id=29982675$LR•IPV4•172『线路4』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://cdn8.163189.xyz/163189/lhdy$LR•IPV4•171『线路5』 +http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•172『线路5』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn8.163189.xyz/163189/lhdy$LR•IPV4•171『线路6』 +http://cdn.jdshipin.com:8880/huya.php?id=21059581$LR•IPV4•172『线路6』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://122.224.58.42:85/tsfile/live/1022_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•171『线路7』 +http://cdn.jdshipin.com:8880/huya.php?id=21059577$LR•IPV4•172『线路7』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://hmfs.f3322.net:3388/hls/40/index.m3u8$LR•IPV4•171『线路8』 +http://cdn.jdshipin.com:8880/huya.php?id=21059574$LR•IPV4•172『线路8』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.ottiptv.cc/huya/16028551$LR•IPV4•171『线路9』 +https://live.ottiptv.cc/yy/1354889019$LR•IPV4•172『线路9』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.ottiptv.cc/huya/18715610$LR•IPV4•171『线路10』 +http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•172『线路10』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.ottiptv.cc/huya/29833341$LR•IPV4•171『线路11』 +http://cdn.jdshipin.com:8880/huya.php?id=21059579$LR•IPV4•172『线路11』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.ottiptv.cc/huya/16857432$LR•IPV4•171『线路12』 +http://cdn.jdshipin.com:8880/huya.php?id=11342427$LR•IPV4•172『线路12』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.ottiptv.cc/huya/16424416$LR•IPV4•171『线路13』 +http://cdn.jdshipin.com:8880/huya.php?id=11601968$LR•IPV4•172『线路13』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.ottiptv.cc/huya/29340502$LR•IPV4•171『线路14』 +http://cdn.jdshipin.com:8880/huya.php?id=11342414$LR•IPV4•172『线路14』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.ottiptv.cc/huya/11774959$LR•IPV4•171『线路15』 +http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•172『线路15』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.ottiptv.cc/huya/19863777$LR•IPV4•171『线路16』 +http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•172『线路16』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.ottiptv.cc/huya/29869799$LR•IPV4•171『线路17』 +http://live.metshop.top/huya/21059578?cdn=alicdn$LR•IPV4•172『线路17』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://iptv.catvod.com/yy/1354930209$LR•IPV4•171『线路18』 +http://live.metshop.top/huya/880261?cdn=alicdn$LR•IPV4•172『线路18』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://kbpull.kktv8.com/livekktv/99350550/playlist.m3u8$LR•IPV4•171『线路19』 +http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•172『线路19』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://down-hls.qxiu.com/live/453135/index.m3u8$LR•IPV4•171『线路20』 +http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•172『线路20』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://cfss.cc/api/kg/756444.mp4$LR•IPV4•171『线路21』 +http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•172『线路21』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://183.237.95.108:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•171『线路22』 +http://live.metshop.top/huya/11342423?cdn=alicdn$LR•IPV4•172『线路22』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•171『线路23』 +http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•172『线路23』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•171『线路24』 +http://live.metshop.top/huya/21059599?cdn=alicdn$LR•IPV4•172『线路24』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=29982675$LR•IPV4•171『线路25』 +http://live.metshop.top/huya/21059585?cdn=alicdn$LR•IPV4•172『线路25』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•171『线路26』 +http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4•172『线路26』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=21059581$LR•IPV4•171『线路27』 +http://live.metshop.top/huya/11601971?cdn=alicdn$LR•IPV4•172『线路27』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=21059577$LR•IPV4•171『线路28』 +http://live.metshop.top/huya/11352884?cdn=alicdn$LR•IPV4•172『线路28』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11342386$LR•IPV4•171『线路29』 +http://cdn.jdshipin.com:8880/huya.php?id=11352962$LR•IPV4•172『线路29』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=21059574$LR•IPV4•171『线路30』 +http://cdn.jdshipin.com:8880/huya.php?id=21059585$LR•IPV4•172『线路30』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.ottiptv.cc/yy/1354889019$LR•IPV4•171『线路31』 +http://cdn.jdshipin.com:8880/huya.php?id=11601986$LR•IPV4•172『线路31』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•171『线路32』 +http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•172『线路32』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=21059579$LR•IPV4•171『线路33』 +http://bx.757888.xyz/api.php?id=zgdy$LR•IPV4•172『线路33』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11342427$LR•IPV4•171『线路34』 +http://zzy789.xyz/douyu1.php?id=96577$LR•IPV4•172『线路34』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11601968$LR•IPV4•171『线路35』 +http://zzy789.xyz/douyu1.php?id=20415$LR•IPV4•172『线路35』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11342414$LR•IPV4•171『线路36』 +http://zzy789.xyz/douyu1.php?id=263824$LR•IPV4•172『线路36』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•171『线路37』 +http://zzy789.xyz/douyu1.php?id=3928$LR•IPV4•172『线路37』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•171『线路38』 +http://epg.112114.xyz/douyu/1226741$LR•IPV4•172『线路38』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://live.metshop.top/huya/880261?cdn=alicdn$LR•IPV4•171『线路39』 +http://huanqiuzhibo.cn/manifest/douyu.php?id=3637778$LR•IPV4•172『线路39』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•171『线路40』 +http://huanqiuzhibo.cn/manifest/douyu.php?id=1226741$LR•IPV4•172『线路40』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://live.metshop.top/huya/11336587?cdn=alicdn$LR•IPV4•171『线路41』 +http://huanqiuzhibo.cn/manifest/douyu.php?id=5423$LR•IPV4•172『线路41』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•171『线路42』 +http://huanqiuzhibo.cn/manifest/douyu.php?id=9650887$LR•IPV4•172『线路42』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://live.metshop.top/huya/11342423?cdn=alicdn$LR•IPV4•171『线路43』 +http://huanqiuzhibo.cn/manifest/douyu.php?id=323876$LR•IPV4•172『线路43』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•171『线路44』 +http://huanqiuzhibo.cn/manifest/douyu.php?id=218859$LR•IPV4•172『线路44』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://live.metshop.top/huya/21059599?cdn=alicdn$LR•IPV4•171『线路45』 +http://huanqiuzhibo.cn/manifest/douyu.php?id=96577$LR•IPV4•172『线路45』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://live.metshop.top/huya/21059585?cdn=alicdn$LR•IPV4•171『线路46』 +http://huanqiuzhibo.cn/manifest/douyu.php?id=3637726$LR•IPV4•172『线路46』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://live.metshop.top/huya/11601971?cdn=alicdn$LR•IPV4•171『线路47』 +http://epg.112114.eu.org/douyu/20415$LR•IPV4•172『线路47』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://live.metshop.top/huya/11352884?cdn=alicdn$LR•IPV4•171『线路48』 +http://43.251.226.89:8080/play/907.m3u8$LR•IPV4•172『线路48』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11352962$LR•IPV4•171『线路49』 +http://cdn8.163189.xyz/163189/lhdy$LR•IPV4•172『线路49』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=21059585$LR•IPV4•171『线路50』 +http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•172『线路50』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11601986$LR•IPV4•171『线路51』 +https://live.metshop.top/huya/11352871$LR•IPV4•172『线路51』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•171『线路52』 +https://live.metshop.top/huya/21059588$LR•IPV4•172『线路52』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://bx.757888.xyz/api.php?id=zgdy$LR•IPV4•171『线路53』 +https://live.metshop.top/huya/11336590$LR•IPV4•172『线路53』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://zzy789.xyz/douyu1.php?id=96577$LR•IPV4•171『线路54』 +https://live.metshop.top/huya/11342395$LR•IPV4•172『线路54』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://zzy789.xyz/douyu1.php?id=20415$LR•IPV4•171『线路55』 +https://live.metshop.top/huya/11601981$LR•IPV4•172『线路55』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://zzy789.xyz/douyu1.php?id=263824$LR•IPV4•171『线路56』 +https://live.metshop.top/huya/21059554$LR•IPV4•172『线路56』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://zzy789.xyz/douyu1.php?id=3928$LR•IPV4•171『线路57』 +p3p://167.114.175.6:55331/63375cce0008451773313a26199f3191$LR•IPV4•172『线路57』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://epg.112114.xyz/douyu/1226741$LR•IPV4•171『线路58』 +p3p://167.114.175.6:55331/63fe69a800089af82b062bc65bb57f67$LR•IPV4•172『线路58』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://huanqiuzhibo.cn/manifest/douyu.php?id=3637778$LR•IPV4•171『线路59』 +p3p://167.114.175.6:55331/62cee8b3000ea6aedb30a55616047866$LR•IPV4•172『线路59』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://huanqiuzhibo.cn/manifest/douyu.php?id=1226741$LR•IPV4•171『线路60』 +p3p://167.114.175.6:55331/663e86e0000d192b28244b354df449af$LR•IPV4•172『线路60』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://huanqiuzhibo.cn/manifest/douyu.php?id=5423$LR•IPV4•171『线路61』 +p3p://167.114.175.6:55331/651c3a7e00035f9e8778a18d0aeb27f1$LR•IPV4•172『线路61』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://huanqiuzhibo.cn/manifest/douyu.php?id=9650887$LR•IPV4•171『线路62』 +p3p://167.114.175.6:55331/62c860e50008ea96c1ae9a96599c6947$LR•IPV4•172『线路62』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://huanqiuzhibo.cn/manifest/douyu.php?id=323876$LR•IPV4•171『线路63』 +p3p://167.114.175.6:55331/625bbd49000d7c0d1954e42d45bc3182$LR•IPV4•172『线路63』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://huanqiuzhibo.cn/manifest/douyu.php?id=218859$LR•IPV4•171『线路64』 +http://feilong123.vip/409990236/tv.php?id=ssdy$LR•IPV4•172『线路64』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://huanqiuzhibo.cn/manifest/douyu.php?id=96577$LR•IPV4•171『线路65』 +https://cdn8.163189.xyz/163189/lhdy$LR•IPV4•172『线路65』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://huanqiuzhibo.cn/manifest/douyu.php?id=3637726$LR•IPV4•171『线路66』 +http://122.224.58.42:85/tsfile/live/1022_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•172『线路66』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://epg.112114.eu.org/douyu/20415$LR•IPV4•171『线路67』 +http://hmfs.f3322.net:3388/hls/40/index.m3u8$LR•IPV4•172『线路67』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://43.251.226.89:8080/play/907.m3u8$LR•IPV4•171『线路68』 +https://live.ottiptv.cc/huya/16028551$LR•IPV4•172『线路68』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•171『线路69』 +https://live.ottiptv.cc/huya/18715610$LR•IPV4•172『线路69』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.metshop.top/huya/11352871$LR•IPV4•171『线路70』 +https://live.ottiptv.cc/huya/29833341$LR•IPV4•172『线路70』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.metshop.top/huya/21059588$LR•IPV4•171『线路71』 +https://live.ottiptv.cc/huya/16857432$LR•IPV4•172『线路71』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.metshop.top/huya/11336590$LR•IPV4•171『线路72』 +https://live.ottiptv.cc/huya/16424416$LR•IPV4•172『线路72』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.metshop.top/huya/11342395$LR•IPV4•171『线路73』 +https://live.ottiptv.cc/huya/29340502$LR•IPV4•172『线路73』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.metshop.top/huya/11601981$LR•IPV4•171『线路74』 +https://live.ottiptv.cc/huya/11774959$LR•IPV4•172『线路74』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.metshop.top/huya/21059554$LR•IPV4•171『线路75』 +https://live.ottiptv.cc/huya/19863777$LR•IPV4•172『线路75』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -p3p://167.114.175.6:55331/63375cce0008451773313a26199f3191$LR•IPV4•171『线路76』 +https://live.ottiptv.cc/huya/29869799$LR•IPV4•172『线路76』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -p3p://167.114.175.6:55331/63fe69a800089af82b062bc65bb57f67$LR•IPV4•171『线路77』 +https://iptv.catvod.com/yy/1354930209$LR•IPV4•172『线路77』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -p3p://167.114.175.6:55331/62cee8b3000ea6aedb30a55616047866$LR•IPV4•171『线路78』 +https://kbpull.kktv8.com/livekktv/99350550/playlist.m3u8$LR•IPV4•172『线路78』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -p3p://167.114.175.6:55331/663e86e0000d192b28244b354df449af$LR•IPV4•171『线路79』 +https://down-hls.qxiu.com/live/453135/index.m3u8$LR•IPV4•172『线路79』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -p3p://167.114.175.6:55331/651c3a7e00035f9e8778a18d0aeb27f1$LR•IPV4•171『线路80』 +https://cfss.cc/api/kg/756444.mp4$LR•IPV4•172『线路80』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -p3p://167.114.175.6:55331/62c860e50008ea96c1ae9a96599c6947$LR•IPV4•171『线路81』 +https://live.chinacert.cftest5.cn/cnmg/live/625703337$LR•IPV4•172『线路81』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -p3p://167.114.175.6:55331/625bbd49000d7c0d1954e42d45bc3182$LR•IPV4•171『线路82』 +http://fn.gcl.de5.net:5908/gsh950428/625703337$LR•IPV4•172『线路82』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live.chinacert.cftest5.cn/cnmg/live/625703337$LR•IPV4•171『线路83』 +http://wfenf.x3322.net:7788/625703337$LR•IPV4•172『线路83』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://fn.gcl.de5.net:5908/gsh950428/625703337$LR•IPV4•171『线路84』 +http://106.5.175.159:1234/625703337$LR•IPV4•172『线路84』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://wfenf.x3322.net:7788/625703337$LR•IPV4•171『线路85』 +http://36.104.221.222:7788/625703337$LR•IPV4•172『线路85』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://106.5.175.159:1234/625703337$LR•IPV4•171『线路86』 +http://115.58.151.196:1234/625703337$LR•IPV4•172『线路86』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://36.104.221.222:7788/625703337$LR•IPV4•171『线路87』 +http://182.61.15.163:80/625703337$LR•IPV4•172『线路87』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://115.58.151.196:1234/625703337$LR•IPV4•171『线路88』 +http://121.23.132.14:7788/625703337$LR•IPV4•172『线路88』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://182.61.15.163:80/625703337$LR•IPV4•171『线路89』 +http://120.4.126.153:1234/625703337$LR•IPV4•172『线路89』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://121.23.132.14:7788/625703337$LR•IPV4•171『线路90』 +http://47.119.24.76:59093/625703337$LR•IPV4•172『线路90』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://120.4.126.153:1234/625703337$LR•IPV4•171『线路91』 +http://222.134.19.49:8090/625703337$LR•IPV4•172『线路91』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://47.119.24.76:59093/625703337$LR•IPV4•171『线路92』 +http://139.155.89.87:1000/625703337$LR•IPV4•172『线路92』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.134.19.49:8090/625703337$LR•IPV4•171『线路93』 +http://101.34.236.223:1112/625703337$LR•IPV4•172『线路93』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://139.155.89.87:1000/625703337$LR•IPV4•171『线路94』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226462/index.m3u8$LR•IPV4•172『线路94』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://101.34.236.223:1112/625703337$LR•IPV4•171『线路95』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226364/index.m3u8$LR•IPV4•172『线路95』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226462/index.m3u8$LR•IPV4•171『线路96』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342412$LR•IPV4•172『线路96』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226364/index.m3u8$LR•IPV4•171『线路97』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342421$LR•IPV4•172『线路97』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342412$LR•IPV4•171『线路98』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342387$LR•IPV4•172『线路98』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342421$LR•IPV4•171『线路99』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342386$LR•IPV4•172『线路99』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342387$LR•IPV4•171『线路100』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11602058$LR•IPV4•172『线路100』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342386$LR•IPV4•171『线路101』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11601968$LR•IPV4•172『线路101』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11602058$LR•IPV4•171『线路102』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11352876$LR•IPV4•172『线路102』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11601968$LR•IPV4•171『线路103』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=21059581$LR•IPV4•172『线路103』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11352876$LR•IPV4•171『线路104』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11602034$LR•IPV4•172『线路104』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=21059581$LR•IPV4•171『线路105』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342428$LR•IPV4•172『线路105』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11602034$LR•IPV4•171『线路106』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=21059577$LR•IPV4•172『线路106』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342428$LR•IPV4•171『线路107』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342427$LR•IPV4•172『线路107』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=21059577$LR•IPV4•171『线路108』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11352886$LR•IPV4•172『线路108』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342427$LR•IPV4•171『线路109』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11352962$LR•IPV4•172『线路109』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11352886$LR•IPV4•171『线路110』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=21059579$LR•IPV4•172『线路110』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11352962$LR•IPV4•171『线路111』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=21059595$LR•IPV4•172『线路111』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=21059579$LR•IPV4•171『线路112』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11279247$LR•IPV4•172『线路112』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=21059595$LR•IPV4•171『线路113』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11602041$LR•IPV4•172『线路113』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11279247$LR•IPV4•171『线路114』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=21059594$LR•IPV4•172『线路114』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11602041$LR•IPV4•171『线路115』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11352934$LR•IPV4•172『线路115』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=21059594$LR•IPV4•171『线路116』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=21059552$LR•IPV4•172『线路116』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11352934$LR•IPV4•171『线路117』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11601971$LR•IPV4•172『线路117』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=21059552$LR•IPV4•171『线路118』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342414$LR•IPV4•172『线路118』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11601971$LR•IPV4•171『线路119』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=21059585$LR•IPV4•172『线路119』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342414$LR•IPV4•171『线路120』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=21059592$LR•IPV4•172『线路120』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=21059585$LR•IPV4•171『线路121』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11352877$LR•IPV4•172『线路121』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=21059592$LR•IPV4•171『线路122』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11602043$LR•IPV4•172『线路122』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11352877$LR•IPV4•171『线路123』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11352973$LR•IPV4•172『线路123』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11602043$LR•IPV4•171『线路124』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11336587$LR•IPV4•172『线路124』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11352973$LR•IPV4•171『线路125』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342390$LR•IPV4•172『线路125』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11336587$LR•IPV4•171『线路126』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11279251$LR•IPV4•172『线路126』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342390$LR•IPV4•171『线路127』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342429$LR•IPV4•172『线路127』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11279251$LR•IPV4•171『线路128』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11601972$LR•IPV4•172『线路128』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342429$LR•IPV4•171『线路129』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342424$LR•IPV4•172『线路129』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11601972$LR•IPV4•171『线路130』 +http://222.186.39.21:35466/huya/11342412$LR•IPV4•172『线路130』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342424$LR•IPV4•171『线路131』 +http://222.186.39.21:35466/huya/11342421$LR•IPV4•172『线路131』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11342412$LR•IPV4•171『线路132』 +http://222.186.39.21:35466/huya/11342387$LR•IPV4•172『线路132』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11342421$LR•IPV4•171『线路133』 +http://222.186.39.21:35466/huya/11342386$LR•IPV4•172『线路133』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11342387$LR•IPV4•171『线路134』 +http://222.186.39.21:35466/huya/11602058$LR•IPV4•172『线路134』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11342386$LR•IPV4•171『线路135』 +http://222.186.39.21:35466/huya/11601968$LR•IPV4•172『线路135』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11602058$LR•IPV4•171『线路136』 +http://222.186.39.21:35466/huya/11352876$LR•IPV4•172『线路136』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11601968$LR•IPV4•171『线路137』 +http://222.186.39.21:35466/huya/21059581$LR•IPV4•172『线路137』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11352876$LR•IPV4•171『线路138』 +http://222.186.39.21:35466/huya/11602034$LR•IPV4•172『线路138』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/21059581$LR•IPV4•171『线路139』 +http://222.186.39.21:35466/huya/11342428$LR•IPV4•172『线路139』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11602034$LR•IPV4•171『线路140』 +http://222.186.39.21:35466/huya/21059577$LR•IPV4•172『线路140』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11342428$LR•IPV4•171『线路141』 +http://222.186.39.21:35466/huya/11342427$LR•IPV4•172『线路141』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/21059577$LR•IPV4•171『线路142』 +http://222.186.39.21:35466/huya/11352886$LR•IPV4•172『线路142』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11342427$LR•IPV4•171『线路143』 +http://222.186.39.21:35466/huya/11352962$LR•IPV4•172『线路143』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11352886$LR•IPV4•171『线路144』 +http://222.186.39.21:35466/huya/21059579$LR•IPV4•172『线路144』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11352962$LR•IPV4•171『线路145』 +http://222.186.39.21:35466/huya/21059595$LR•IPV4•172『线路145』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/21059579$LR•IPV4•171『线路146』 +http://222.186.39.21:35466/huya/11279247$LR•IPV4•172『线路146』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/21059595$LR•IPV4•171『线路147』 +http://222.186.39.21:35466/huya/11602041$LR•IPV4•172『线路147』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11279247$LR•IPV4•171『线路148』 +http://222.186.39.21:35466/huya/21059594$LR•IPV4•172『线路148』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11602041$LR•IPV4•171『线路149』 +http://222.186.39.21:35466/huya/11352934$LR•IPV4•172『线路149』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/21059594$LR•IPV4•171『线路150』 +http://222.186.39.21:35466/huya/21059552$LR•IPV4•172『线路150』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11352934$LR•IPV4•171『线路151』 +http://222.186.39.21:35466/huya/11601971$LR•IPV4•172『线路151』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/21059552$LR•IPV4•171『线路152』 +http://222.186.39.21:35466/huya/11342414$LR•IPV4•172『线路152』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11601971$LR•IPV4•171『线路153』 +http://222.186.39.21:35466/huya/21059585$LR•IPV4•172『线路153』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11342414$LR•IPV4•171『线路154』 +http://222.186.39.21:35466/huya/21059592$LR•IPV4•172『线路154』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/21059585$LR•IPV4•171『线路155』 +http://222.186.39.21:35466/huya/11352877$LR•IPV4•172『线路155』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/21059592$LR•IPV4•171『线路156』 +http://222.186.39.21:35466/huya/11602043$LR•IPV4•172『线路156』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11352877$LR•IPV4•171『线路157』 +http://222.186.39.21:35466/huya/11352973$LR•IPV4•172『线路157』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11602043$LR•IPV4•171『线路158』 +http://222.186.39.21:35466/huya/11336587$LR•IPV4•172『线路158』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11352973$LR•IPV4•171『线路159』 +http://222.186.39.21:35466/huya/11342390$LR•IPV4•172『线路159』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11336587$LR•IPV4•171『线路160』 +http://222.186.39.21:35466/huya/11279251$LR•IPV4•172『线路160』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11342390$LR•IPV4•171『线路161』 +http://222.186.39.21:35466/huya/11342429$LR•IPV4•172『线路161』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11279251$LR•IPV4•171『线路162』 +http://222.186.39.21:35466/huya/11601972$LR•IPV4•172『线路162』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11342429$LR•IPV4•171『线路163』 +http://222.186.39.21:35466/huya/11342424$LR•IPV4•172『线路163』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11601972$LR•IPV4•171『线路164』 +http://gxlive.snrtv.com/sx8-SD.m3u8$LR•IPV4•172『线路164』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://222.186.39.21:35466/huya/11342424$LR•IPV4•171『线路165』 +https://live-auth.51kandianshi.com/szgd/csztv4.m3u8$LR•IPV4•172『线路165』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://gxlive.snrtv.com/sx8-SD.m3u8$LR•IPV4•171『线路166』 +http://123.121.5.183:4000/rtp/239.3.1.250:8001$LR•IPV4•172『线路166』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://live-auth.51kandianshi.com/szgd/csztv4.m3u8$LR•IPV4•171『线路167』 +http://118.122.144.115:8888/newlive/live/hls/32/live.m3u8#http://183.223.157.33:85/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•172『线路167』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://123.121.5.183:4000/rtp/239.3.1.250:8001$LR•IPV4•171『线路168』 +http://118.122.144.115:8888/newlive/live/hls/38/live.m3u8$LR•IPV4•172『线路168』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://118.122.144.115:8888/newlive/live/hls/32/live.m3u8#http://183.223.157.33:85/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•171『线路169』 +https://vd3.bdstatic.com/mda-kj0kfvyty9dk9nk0/v1-cae/sc/mda-kj0kfvyty9dk9nk0.mp4$LR•IPV4•172『线路169』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -http://118.122.144.115:8888/newlive/live/hls/38/live.m3u8$LR•IPV4•171『线路170』 +http://epg.112114.xyz/douyu/413573$LR•IPV4•172『线路170』 #EXTINF:-1 tvg-name="电影" group-title="YY",电影 -https://vd3.bdstatic.com/mda-kj0kfvyty9dk9nk0/v1-cae/sc/mda-kj0kfvyty9dk9nk0.mp4$LR•IPV4•171『线路171』 +http://183.207.248.71/cntv/live1/jdianying/jdianying$LR•IPV4•172『线路171』 +#EXTINF:-1 tvg-name="电影" group-title="YY",电影 +http://39.134.19.76/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226463/index.m3u8$LR•IPV4•172『线路172』 #EXTINF:-1 tvg-name="大唐双龙传" group-title="YY",大唐双龙传 http://cdn.jdshipin.com:8880/huya.php?id=29465850$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="大唐双龙传" group-title="YY",大唐双龙传 @@ -14148,17 +14160,17 @@ https://live.ottiptv.cc/yy/1353392400$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-name="西游记" group-title="剧集轮播",西游记 http://www.goodiptv.club/douyu/3113309$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-name="西游记" group-title="剧集轮播",西游记 -https://live.ottiptv.cc/huya/29465860$LR•IPV4•5『线路3』 +https://txmov2.a.kwimgs.com/bs3/video-hls/5239093806671579134_hlsb.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-name="西游记" group-title="剧集轮播",西游记 -https://txmov2.a.kwimgs.com/bs3/video-hls/5239093806671579134_hlsb.m3u8$LR•IPV4•5『线路4』 +https://live.ottiptv.cc/huya/29465860$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-name="西游记" group-title="剧集轮播",西游记 http://tv.zimtv.cn/tv/player/api/huya.php?id=29465860$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-name="猫和老鼠" group-title="剧集轮播",猫和老鼠 https://live.metshop.top/huya/11352879$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-name="猫和老鼠" group-title="剧集轮播",猫和老鼠 -https://live.ottiptv.cc/huya/11352879$LR•IPV4•3『线路2』 +http://103.193.151.146/huya.php?id=11352879$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="猫和老鼠" group-title="剧集轮播",猫和老鼠 -http://103.193.151.146/huya.php?id=11352879$LR•IPV4•3『线路3』 +https://live.ottiptv.cc/huya/11352879$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="相声小品" group-title="剧集轮播",相声小品 http://live.nctv.top/douyu1.php?id=9286868$LR•IPV4 #EXTINF:-1 tvg-name="刑事侦缉档案" group-title="剧集轮播",刑事侦缉档案 @@ -14200,11 +14212,11 @@ http://tv.zimtv.cn/tv/player/api/huya.php?id=29465858$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="东阳影视生活" group-title="地方",东阳影视生活 http://l.cztvcloud.com/channels/lantian/SXdongyang1/720p.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="MY" group-title="广播",MY -https://op-group1-swiftservehd-1.dens.tv/h/h192/index.m3u8$LR•IPV4•28『线路1』 +https://tvsen6.aynaott.com/mytv/index.m3u8$LR•IPV4•28『线路1』 #EXTINF:-1 tvg-name="MY" group-title="广播",MY -https://op-group1-densxvisionhd-1.dens.tv/h/h18/index.m3u8$LR•IPV4•28『线路2』 +https://op-group1-swiftservehd-1.dens.tv/h/h192/index.m3u8$LR•IPV4•28『线路2』 #EXTINF:-1 tvg-name="MY" group-title="广播",MY -https://tvsen6.aynaott.com/mytv/index.m3u8$LR•IPV4•28『线路3』 +https://op-group1-densxvisionhd-1.dens.tv/h/h18/index.m3u8$LR•IPV4•28『线路3』 #EXTINF:-1 tvg-name="MY" group-title="广播",MY https://gstv-myshop.gsshop.com/myshop_hd/myshop_hd.stream/playlist.m3u8$LR•IPV4•28『线路4』 #EXTINF:-1 tvg-name="MY" group-title="广播",MY diff --git a/tvbox/lib/iptv.txt b/tvbox/lib/iptv.txt index c1fd9e55..9bfaf292 100755 --- a/tvbox/lib/iptv.txt +++ b/tvbox/lib/iptv.txt @@ -3,12 +3,12 @@ 东方卫视4K,http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 东方卫视4K,http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 湖南卫视4K,http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•4『线路1』 -湖南卫视4K,http://hlsal-ldvt.qing.mgtv.com/nn_live/nn_x64/dWlwPTEyNy4wLjAuMSZ1aWQ9cWluZy1jbXMmbm5fdGltZXpvbmU9OCZjZG5leF9pZD1hbF9obHNfbGR2dCZ1dWlkPTliODY4NmU5ZTM2YzYwMmMmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNWSZGST.m3u8$LR•IPV4•4『线路2』 -湖南卫视4K,http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•4『线路3』 -湖南卫视4K,http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•4『线路4』 -浙江卫视4K,https://play-qukan.cztv.com/live/1758879019692345.m3u8$LR•IPV4•3『线路1』 -浙江卫视4K,http://43.251.226.89:8080/play/922.m3u8$LR•IPV4•3『线路2』 -浙江卫视4K,http://43.251.226.89:8080/play/923.m3u8$LR•IPV4•3『线路3』 +湖南卫视4K,http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•4『线路2』 +湖南卫视4K,http://43.251.226.89:8080/play/921.m3u8$LR•IPV4•4『线路3』 +湖南卫视4K,http://hlsal-ldvt.qing.mgtv.com/nn_live/nn_x64/dWlwPTEyNy4wLjAuMSZ1aWQ9cWluZy1jbXMmbm5fdGltZXpvbmU9OCZjZG5leF9pZD1hbF9obHNfbGR2dCZ1dWlkPTliODY4NmU5ZTM2YzYwMmMmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNWSZGST.m3u8$LR•IPV4•4『线路4』 +浙江卫视4K,http://43.251.226.89:8080/play/922.m3u8$LR•IPV4•3『线路1』 +浙江卫视4K,http://43.251.226.89:8080/play/923.m3u8$LR•IPV4•3『线路2』 +浙江卫视4K,https://play-qukan.cztv.com/live/1758879019692345.m3u8$LR•IPV4•3『线路3』 江苏卫视4K,http://8.138.7.223/tv/jsws4k.php$LR•IPV4•3『线路1』 江苏卫视4K,http://43.251.226.89:8080/play/924.m3u8$LR•IPV4•3『线路2』 江苏卫视4K,http://43.251.226.89:8080/play/925.m3u8$LR•IPV4•3『线路3』 @@ -35,31 +35,31 @@ 深圳卫视4K,https://live.264788.xyz/channel/shenzhenweishi4k?streamid=6a514a5cfdaa120248fe2cdbd96284bc&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•13『线路11』 深圳卫视4K,http://nn.7x9d.cn/深圳最新.php?id=szws4k$LR•IPV4•13『线路12』 深圳卫视4K,http://101.35.240.114:88/live.php?id=深圳卫视4K$LR•IPV4•13『线路13』 -南国都市4K,http://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=140110ae3d6c936a77f94c4f4d85b0d3&txTime=18d57929bd4$LR•IPV4•2『线路1』 -南国都市4K,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=550af55c0ea34ce492748481415b6dfa&txTime=1903e7b17de$LR•IPV4•2『线路2』 +南国都市4K,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=550af55c0ea34ce492748481415b6dfa&txTime=1903e7b17de$LR•IPV4•2『线路1』 +南国都市4K,http://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=140110ae3d6c936a77f94c4f4d85b0d3&txTime=18d57929bd4$LR•IPV4•2『线路2』 央视,#genre# -CCTV1,http://60.10.139.113:8801/hls/1/index.m3u8$LR•IPV4•50『线路1』 -CCTV1,http://183.129.255.66:8480/hls/1/index.m3u8$LR•IPV4•50『线路2』 -CCTV1,http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•50『线路3』 -CCTV1,http://112.27.235.94:8000/hls/1/index.m3u8$LR•IPV4•50『线路4』 -CCTV1,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv1$LR•IPV4•50『线路5』 -CCTV1,http://101.6.130.52:1234/608807420$LR•IPV4•50『线路6』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000002226&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路7』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030810&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路8』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路9』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021973&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路10』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265001&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路11』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=reallive-cctv1&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路12』 -CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000004953&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路13』 -CCTV1,http://111.29.9.35:6610/000000001000/1000000001000018602/index.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=3$LR•IPV4•50『线路14』 -CCTV1,http://111.29.9.33:6610/000000001000/1000000001000021973/index.m3u8?channel-id=bestzb&Contentid=1000000001000021973&livemode=1&stbId=3$LR•IPV4•50『线路15』 -CCTV1,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•50『线路16』 -CCTV1,http://38.75.136.137:98/gslb/dsdqbv/cctv1hd.m3u8?auth=test20251009$LR•IPV4•50『线路17』 -CCTV1,http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•50『线路18』 -CCTV1,http://153.0.171.163:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路19』 -CCTV1,http://php.jdshipin.com/TVOD/iptv.php?id=rthk33$LR•IPV4•50『线路20』 -CCTV1,https://rthktv33-live.akamaized.net/hls/live/2101641/RTHKTV33/stream04/streamPlaylist.m3u8$LR•IPV4•50『线路21』 +CCTV1,http://112.27.235.94:8000/hls/1/index.m3u8$LR•IPV4•50『线路1』 +CCTV1,http://60.10.139.113:8801/hls/1/index.m3u8$LR•IPV4•50『线路2』 +CCTV1,http://183.129.255.66:8480/hls/1/index.m3u8$LR•IPV4•50『线路3』 +CCTV1,http://play.kankanlive.com/live/1698234869325962.m3u8$LR•IPV4•50『线路4』 +CCTV1,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•50『线路5』 +CCTV1,http://38.75.136.137:98/gslb/dsdqbv/cctv1hd.m3u8?auth=test20251009$LR•IPV4•50『线路6』 +CCTV1,http://112.46.105.20:8009/hls/501/index.m3u8$LR•IPV4•50『线路7』 +CCTV1,http://153.0.171.163:9901/tsfile/live/0001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路8』 +CCTV1,http://php.jdshipin.com/TVOD/iptv.php?id=rthk33$LR•IPV4•50『线路9』 +CCTV1,https://rthktv33-live.akamaized.net/hls/live/2101641/RTHKTV33/stream04/streamPlaylist.m3u8$LR•IPV4•50『线路10』 +CCTV1,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv1$LR•IPV4•50『线路11』 +CCTV1,http://101.6.130.52:1234/608807420$LR•IPV4•50『线路12』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000002226&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路13』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030810&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路14』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路15』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021973&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路16』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265001&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路17』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=reallive-cctv1&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路18』 +CCTV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000004953&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路19』 +CCTV1,http://111.29.9.35:6610/000000001000/1000000001000018602/index.m3u8?channel-id=ystenlive&Contentid=1000000001000018602&livemode=1&stbId=3$LR•IPV4•50『线路20』 +CCTV1,http://111.29.9.33:6610/000000001000/1000000001000021973/index.m3u8?channel-id=bestzb&Contentid=1000000001000021973&livemode=1&stbId=3$LR•IPV4•50『线路21』 CCTV1,http://120.76.248.139/live/bfgd/4200000488.m3u8$LR•IPV4•50『线路22』 CCTV1,https://live.chinacert.cftest5.cn/cnmg/live/608807420$LR•IPV4•50『线路23』 CCTV1,http://m.061899.xyz/mg/cctv1$LR•IPV4•50『线路24』 @@ -89,25 +89,25 @@ CCTV1,http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•50『线路47』 CCTV1,http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•50『线路48』 CCTV1,http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•50『线路49』 CCTV1,http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•50『线路50』 -CCTV2,http://120.198.95.220:9901/tsfile/live/1016_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•47『线路1』 -CCTV2,http://60.10.139.113:8801/hls/2/index.m3u8$LR•IPV4•47『线路2』 -CCTV2,http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•47『线路3』 -CCTV2,http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•47『线路4』 -CCTV2,http://36.40.237.49:9999/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路5』 -CCTV2,http://153.0.171.163:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路6』 -CCTV2,http://112.27.235.94:8000/hls/2/index.m3u8$LR•IPV4•47『线路7』 -CCTV2,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv2$LR•IPV4•47『线路8』 -CCTV2,http://101.6.130.52:1234/631780532$LR•IPV4•47『线路9』 -CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000031113&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路10』 -CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031101&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路11』 -CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000012442&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路12』 -CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000023315&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路13』 -CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265002&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路14』 -CCTV2,http://111.29.9.34:6610/000000001000/1000000001000012442/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012442&livemode=1&stbId=3$LR•IPV4•47『线路15』 -CCTV2,http://111.29.9.33:6610/000000001000/1000000001000012442/index.m3u8?channel-id=bestzb&Contentid=1000000001000012442&livemode=1&stbId=3$LR•IPV4•47『线路16』 -CCTV2,http://pull-hls-f11.douyincdn.com/media/stream-407062262674621100.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771769775&major_anchor_level=common&sign=98406f42e949db5477a402c85cbee007&t_id=037-20260215221614EEA56BB994BB42D25308-a6AVAz$LR•IPV4•47『线路17』 -CCTV2,http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•47『线路18』 -CCTV2,http://112.46.105.20:8009/hls/502/index.m3u8$LR•IPV4•47『线路19』 +CCTV2,http://112.27.235.94:8000/hls/2/index.m3u8$LR•IPV4•47『线路1』 +CCTV2,http://120.198.95.220:9901/tsfile/live/1016_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•47『线路2』 +CCTV2,http://60.10.139.113:8801/hls/2/index.m3u8$LR•IPV4•47『线路3』 +CCTV2,http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•47『线路4』 +CCTV2,http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•47『线路5』 +CCTV2,http://36.40.237.49:9999/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路6』 +CCTV2,http://153.0.171.163:9901/tsfile/live/0002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路7』 +CCTV2,http://pull-hls-f11.douyincdn.com/media/stream-407062262674621100.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771769775&major_anchor_level=common&sign=98406f42e949db5477a402c85cbee007&t_id=037-20260215221614EEA56BB994BB42D25308-a6AVAz$LR•IPV4•47『线路8』 +CCTV2,http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•47『线路9』 +CCTV2,http://112.46.105.20:8009/hls/502/index.m3u8$LR•IPV4•47『线路10』 +CCTV2,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv2$LR•IPV4•47『线路11』 +CCTV2,http://101.6.130.52:1234/631780532$LR•IPV4•47『线路12』 +CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000031113&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路13』 +CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031101&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路14』 +CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000012442&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路15』 +CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000023315&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路16』 +CCTV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265002&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路17』 +CCTV2,http://111.29.9.34:6610/000000001000/1000000001000012442/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012442&livemode=1&stbId=3$LR•IPV4•47『线路18』 +CCTV2,http://111.29.9.33:6610/000000001000/1000000001000012442/index.m3u8?channel-id=bestzb&Contentid=1000000001000012442&livemode=1&stbId=3$LR•IPV4•47『线路19』 CCTV2,http://120.76.248.139/live/bfgd/4200000061.m3u8$LR•IPV4•47『线路20』 CCTV2,https://live.chinacert.cftest5.cn/cnmg/live/631780532$LR•IPV4•47『线路21』 CCTV2,http://m.061899.xyz/mg/cctv2$LR•IPV4•47『线路22』 @@ -136,24 +136,24 @@ CCTV2,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•47『线路44』 CCTV2,http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•47『线路45』 CCTV2,http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•47『线路46』 CCTV2,http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•47『线路47』 -CCTV3,http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•46『线路1』 -CCTV3,http://60.10.139.113:8801/hls/3/index.m3u8$LR•IPV4•46『线路2』 -CCTV3,http://121.57.88.206:898/hls/3/index.m3u8$LR•IPV4•46『线路3』 -CCTV3,http://59.39.89.130:60901/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路4』 -CCTV3,http://36.40.237.49:9999/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 -CCTV3,http://120.198.95.220:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路6』 -CCTV3,http://112.27.235.94:8000/hls/3/index.m3u8$LR•IPV4•46『线路7』 -CCTV3,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv3$LR•IPV4•46『线路8』 -CCTV3,http://101.6.130.52:1234/624878271$LR•IPV4•46『线路9』 -CCTV3,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000002000020548&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路10』 -CCTV3,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000011218&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路11』 -CCTV3,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265003&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路12』 -CCTV3,http://111.29.9.38:6610/000000001000/1000000001000011218/index.m3u8?channel-id=ystenlive&Contentid=1000000001000011218&livemode=1&stbId=3$LR•IPV4•46『线路13』 -CCTV3,http://111.29.9.33:6610/000000001000/1000000001000011218/index.m3u8?channel-id=bestzb&Contentid=1000000001000011218&livemode=1&stbId=3$LR•IPV4•46『线路14』 -CCTV3,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•46『线路15』 -CCTV3,http://38.75.136.137:98/gslb/dsdqbv/cctv3hd.m3u8?auth=test20251009$LR•IPV4•46『线路16』 -CCTV3,http://112.46.105.20:8009/hls/3/index.m3u8$LR•IPV4•46『线路17』 -CCTV3,http://153.0.171.163:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路18』 +CCTV3,http://112.27.235.94:8000/hls/3/index.m3u8$LR•IPV4•46『线路1』 +CCTV3,http://222.223.41.27:8888/hls/3/index.m3u8$LR•IPV4•46『线路2』 +CCTV3,http://60.10.139.113:8801/hls/3/index.m3u8$LR•IPV4•46『线路3』 +CCTV3,http://121.57.88.206:898/hls/3/index.m3u8$LR•IPV4•46『线路4』 +CCTV3,http://59.39.89.130:60901/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 +CCTV3,http://36.40.237.49:9999/tsfile/live/0003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 +CCTV3,http://120.198.95.220:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路7』 +CCTV3,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•46『线路8』 +CCTV3,http://38.75.136.137:98/gslb/dsdqbv/cctv3hd.m3u8?auth=test20251009$LR•IPV4•46『线路9』 +CCTV3,http://112.46.105.20:8009/hls/3/index.m3u8$LR•IPV4•46『线路10』 +CCTV3,http://153.0.171.163:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路11』 +CCTV3,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv3$LR•IPV4•46『线路12』 +CCTV3,http://101.6.130.52:1234/624878271$LR•IPV4•46『线路13』 +CCTV3,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000002000020548&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 +CCTV3,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000011218&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路15』 +CCTV3,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265003&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路16』 +CCTV3,http://111.29.9.38:6610/000000001000/1000000001000011218/index.m3u8?channel-id=ystenlive&Contentid=1000000001000011218&livemode=1&stbId=3$LR•IPV4•46『线路17』 +CCTV3,http://111.29.9.33:6610/000000001000/1000000001000011218/index.m3u8?channel-id=bestzb&Contentid=1000000001000011218&livemode=1&stbId=3$LR•IPV4•46『线路18』 CCTV3,http://120.76.248.139/live/bfgd/4200000062.m3u8$LR•IPV4•46『线路19』 CCTV3,https://live.chinacert.cftest5.cn/cnmg/live/624878271$LR•IPV4•46『线路20』 CCTV3,http://m.061899.xyz/mg/cctv3$LR•IPV4•46『线路21』 @@ -182,27 +182,27 @@ CCTV3,http://192.151.150.154/live/cctv3hd.m3u8$LR•IPV4•46『线路43』 CCTV3,http://173.208.212.130:8181/1080p/cctv3.m3u8$LR•IPV4•46『线路44』 CCTV3,http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•46『线路45』 CCTV3,http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•46『线路46』 -CCTV4,http://60.10.139.113:8801/hls/4/index.m3u8$LR•IPV4•79『线路1』 -CCTV4,http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•79『线路2』 -CCTV4,http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•79『线路3』 -CCTV4,http://36.136.38.87:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路4』 -CCTV4,http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•79『线路5』 -CCTV4,http://113.25.252.226:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路6』 -CCTV4,http://112.27.235.94:8000/hls/4/index.m3u8$LR•IPV4•79『线路7』 -CCTV4,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv4$LR•IPV4•79『线路8』 -CCTV4,http://101.6.130.52:1234/631780421$LR•IPV4•79『线路9』 -CCTV4,http://101.6.130.52:1234/608807419$LR•IPV4•79『线路10』 -CCTV4,http://101.6.130.52:1234/608807416$LR•IPV4•79『线路11』 -CCTV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000030093&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路12』 -CCTV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031102&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路13』 -CCTV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000031664&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路14』 -CCTV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265004&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路15』 -CCTV4,http://111.29.9.40:6610/000000001000/5000000005000030093/index.m3u8?channel-id=bestzb&Contentid=5000000005000030093&livemode=1&stbId=3$LR•IPV4•79『线路16』 -CCTV4,http://111.29.9.33:6610/000000001000/1000000002000031664/index.m3u8?channel-id=bestzb&Contentid=1000000002000031664&livemode=1&stbId=3$LR•IPV4•79『线路17』 -CCTV4,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•79『线路18』 -CCTV4,http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•79『线路19』 -CCTV4,http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路20』 -CCTV4,p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•79『线路21』 +CCTV4,http://112.27.235.94:8000/hls/4/index.m3u8$LR•IPV4•79『线路1』 +CCTV4,http://60.10.139.113:8801/hls/4/index.m3u8$LR•IPV4•79『线路2』 +CCTV4,http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•79『线路3』 +CCTV4,http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•79『线路4』 +CCTV4,http://36.136.38.87:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路5』 +CCTV4,http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•79『线路6』 +CCTV4,http://113.25.252.226:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路7』 +CCTV4,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•79『线路8』 +CCTV4,http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•79『线路9』 +CCTV4,http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路10』 +CCTV4,p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•79『线路11』 +CCTV4,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv4$LR•IPV4•79『线路12』 +CCTV4,http://101.6.130.52:1234/631780421$LR•IPV4•79『线路13』 +CCTV4,http://101.6.130.52:1234/608807419$LR•IPV4•79『线路14』 +CCTV4,http://101.6.130.52:1234/608807416$LR•IPV4•79『线路15』 +CCTV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000030093&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路16』 +CCTV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031102&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路17』 +CCTV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000031664&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路18』 +CCTV4,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265004&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路19』 +CCTV4,http://111.29.9.40:6610/000000001000/5000000005000030093/index.m3u8?channel-id=bestzb&Contentid=5000000005000030093&livemode=1&stbId=3$LR•IPV4•79『线路20』 +CCTV4,http://111.29.9.33:6610/000000001000/1000000002000031664/index.m3u8?channel-id=bestzb&Contentid=1000000002000031664&livemode=1&stbId=3$LR•IPV4•79『线路21』 CCTV4,http://120.76.248.139/live/bfgd/4200000063.m3u8$LR•IPV4•79『线路22』 CCTV4,https://live.chinacert.cftest5.cn/cnmg/live/631780421$LR•IPV4•79『线路23』 CCTV4,https://live.chinacert.cftest5.cn/cnmg/live/608807419$LR•IPV4•79『线路24』 @@ -250,7 +250,7 @@ CCTV4,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888888/224/322122619 CCTV4,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226191/index.m3u8$LR•IPV4•79『线路66』 CCTV4,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225781/index.m3u8$LR•IPV4•79『线路67』 CCTV4,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227324/index.m3u8$LR•IPV4•79『线路68』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782925200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0976a55b4fad30979ca9561cda031a05&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•79『线路69』 +CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782954000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-9ebdb920742a1c0abe62da12809575a1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•79『线路69』 CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782889200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-cb6bb8d81dd443bea6c3981543aa5af6&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•79『线路70』 CCTV4,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•79『线路71』 CCTV4,http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•79『线路72』 @@ -261,20 +261,20 @@ CCTV4,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•79『线路76』 CCTV4,http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•79『线路77』 CCTV4,http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•79『线路78』 CCTV4,http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•79『线路79』 -CCTV5,http://60.10.139.113:8801/hls/5/index.m3u8$LR•IPV4•79『线路1』 -CCTV5,http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•79『线路2』 -CCTV5,http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•79『线路3』 +CCTV5,http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•79『线路1』 +CCTV5,http://60.10.139.113:8801/hls/5/index.m3u8$LR•IPV4•79『线路2』 +CCTV5,http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•79『线路3』 CCTV5,http://36.40.237.49:9999/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路4』 -CCTV5,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv5$LR•IPV4•79『线路5』 -CCTV5,http://101.6.130.52:1234/641886683$LR•IPV4•79『线路6』 -CCTV5,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000016619&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路7』 -CCTV5,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004794&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路8』 -CCTV5,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265005&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路9』 -CCTV5,http://111.29.9.33:6610/000000001000/1000000001000004794/index.m3u8?channel-id=bestzb&Contentid=1000000001000004794&livemode=1&stbId=3$LR•IPV4•79『线路10』 -CCTV5,http://74.91.26.218:82/live/cctv5hd.m3u8$LR•IPV4•79『线路11』 -CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5hd.m3u8?auth=test20251009$LR•IPV4•79『线路12』 -CCTV5,http://112.46.105.20:8009/hls/503/index.m3u8$LR•IPV4•79『线路13』 -CCTV5,http://153.0.171.163:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路14』 +CCTV5,http://74.91.26.218:82/live/cctv5hd.m3u8$LR•IPV4•79『线路5』 +CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5hd.m3u8?auth=test20251009$LR•IPV4•79『线路6』 +CCTV5,http://112.46.105.20:8009/hls/503/index.m3u8$LR•IPV4•79『线路7』 +CCTV5,http://153.0.171.163:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路8』 +CCTV5,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv5$LR•IPV4•79『线路9』 +CCTV5,http://101.6.130.52:1234/641886683$LR•IPV4•79『线路10』 +CCTV5,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000016619&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路11』 +CCTV5,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004794&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路12』 +CCTV5,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265005&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路13』 +CCTV5,http://111.29.9.33:6610/000000001000/1000000001000004794/index.m3u8?channel-id=bestzb&Contentid=1000000001000004794&livemode=1&stbId=3$LR•IPV4•79『线路14』 CCTV5,http://120.76.248.139/live/bfgd/4200000064.m3u8$LR•IPV4•79『线路15』 CCTV5,https://live.chinacert.cftest5.cn/cnmg/live/641886683$LR•IPV4•79『线路16』 CCTV5,http://m.061899.xyz/mg/cctv5$LR•IPV4•79『线路17』 @@ -306,17 +306,17 @@ CCTV5,http://207.56.13.146:81/cdnlive/cctv5.m3u8$LR•IPV4•79『线路42』 CCTV5,http://192.151.150.154/live/cctv5hd.m3u8$LR•IPV4•79『线路43』 CCTV5,http://173.208.212.130:8181/1080p/cctv5.m3u8$LR•IPV4•79『线路44』 CCTV5,http://204.12.221.218:8181/3m1080p/cctv5.m3u8$LR•IPV4•79『线路45』 -CCTV5,http://60.10.139.113:8801/hls/15/index.m3u8$LR•IPV4•79『线路46』 -CCTV5,http://112.27.235.94:8000/hls/6/index.m3u8$LR•IPV4•79『线路47』 +CCTV5,http://112.27.235.94:8000/hls/6/index.m3u8$LR•IPV4•79『线路46』 +CCTV5,http://60.10.139.113:8801/hls/15/index.m3u8$LR•IPV4•79『线路47』 CCTV5,http://124.228.160.210:9901/tsfile/live/0016_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•79『线路48』 -CCTV5,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv5p$LR•IPV4•79『线路49』 -CCTV5,http://101.6.130.52:1234/641886773$LR•IPV4•79『线路50』 -CCTV5,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018504&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路51』 -CCTV5,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000020505&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路52』 -CCTV5,http://223.112.114.228:50080/newlive/live/hls/180/live.m3u8$LR•IPV4•79『线路53』 -CCTV5,http://111.29.9.33:6610/000000001000/1000000001000020505/index.m3u8?channel-id=bestzb&Contentid=1000000001000020505&livemode=1&stbId=3$LR•IPV4•79『线路54』 -CCTV5,http://74.91.26.218:82/live/cctv5p.m3u8$LR•IPV4•79『线路55』 -CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•79『线路56』 +CCTV5,http://74.91.26.218:82/live/cctv5p.m3u8$LR•IPV4•79『线路49』 +CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•79『线路50』 +CCTV5,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv5p$LR•IPV4•79『线路51』 +CCTV5,http://101.6.130.52:1234/641886773$LR•IPV4•79『线路52』 +CCTV5,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000018504&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路53』 +CCTV5,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000020505&livemode=1&stbId=yu&mode=1&$LR•IPV4•79『线路54』 +CCTV5,http://223.112.114.228:50080/newlive/live/hls/180/live.m3u8$LR•IPV4•79『线路55』 +CCTV5,http://111.29.9.33:6610/000000001000/1000000001000020505/index.m3u8?channel-id=bestzb&Contentid=1000000001000020505&livemode=1&stbId=3$LR•IPV4•79『线路56』 CCTV5,http://120.76.248.139/live/bfgd/4200000246.m3u8$LR•IPV4•79『线路57』 CCTV5,https://live.chinacert.cftest5.cn/cnmg/live/641886773$LR•IPV4•79『线路58』 CCTV5,http://m.061899.xyz/mg/cctv5p$LR•IPV4•79『线路59』 @@ -340,23 +340,23 @@ CCTV5,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225761/index.m3u8$L CCTV5,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227236/index.m3u8$LR•IPV4•79『线路77』 CCTV5,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226894/1.m3u8?$LR•IPV6•79『线路78』 CCTV5,http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•79『线路79』 -CCTV6,http://121.57.88.206:898/hls/6/index.m3u8$LR•IPV4•46『线路1』 -CCTV6,http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•46『线路2』 -CCTV6,http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•46『线路3』 -CCTV6,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv6hd$LR•IPV4•46『线路4』 -CCTV6,http://36.40.237.49:9999/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 -CCTV6,http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•46『线路6』 -CCTV6,http://60.10.139.113:8801/hls/6/index.m3u8$LR•IPV4•46『线路7』 -CCTV6,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv6$LR•IPV4•46『线路8』 -CCTV6,http://101.6.130.52:1234/624878396$LR•IPV4•46『线路9』 -CCTV6,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000018433&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路10』 -CCTV6,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000016466&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路11』 -CCTV6,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265006&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路12』 -CCTV6,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6117099895556651277&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路13』 -CCTV6,http://111.29.9.33:6610/000000001000/1000000001000016466/index.m3u8?channel-id=bestzb&Contentid=1000000001000016466&livemode=1&stbId=3$LR•IPV4•46『线路14』 -CCTV6,http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•46『线路15』 -CCTV6,http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•46『线路16』 -CCTV6,http://153.0.171.163:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路17』 +CCTV6,http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•46『线路1』 +CCTV6,http://121.57.88.206:898/hls/6/index.m3u8$LR•IPV4•46『线路2』 +CCTV6,http://222.223.41.27:8888/hls/6/index.m3u8$LR•IPV4•46『线路3』 +CCTV6,http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•46『线路4』 +CCTV6,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv6hd$LR•IPV4•46『线路5』 +CCTV6,http://36.40.237.49:9999/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 +CCTV6,http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•46『线路7』 +CCTV6,http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•46『线路8』 +CCTV6,http://153.0.171.163:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路9』 +CCTV6,http://60.10.139.113:8801/hls/6/index.m3u8$LR•IPV4•46『线路10』 +CCTV6,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv6$LR•IPV4•46『线路11』 +CCTV6,http://101.6.130.52:1234/624878396$LR•IPV4•46『线路12』 +CCTV6,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000018433&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路13』 +CCTV6,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000016466&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 +CCTV6,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265006&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路15』 +CCTV6,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6117099895556651277&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路16』 +CCTV6,http://111.29.9.33:6610/000000001000/1000000001000016466/index.m3u8?channel-id=bestzb&Contentid=1000000001000016466&livemode=1&stbId=3$LR•IPV4•46『线路17』 CCTV6,http://120.76.248.139/live/bfgd/4200000065.m3u8$LR•IPV4•46『线路18』 CCTV6,https://live.chinacert.cftest5.cn/cnmg/live/624878396$LR•IPV4•46『线路19』 CCTV6,http://m.061899.xyz/mg/cctv6$LR•IPV4•46『线路20』 @@ -386,23 +386,23 @@ CCTV6,http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•46『线路43』 CCTV6,http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•46『线路44』 CCTV6,http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•46『线路45』 CCTV6,http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•46『线路46』 -CCTV7,http://60.10.139.113:8801/hls/7/index.m3u8$LR•IPV4•44『线路1』 -CCTV7,http://38.75.136.137:98/gslb/dsdqpub/cctv7hd.m3u8?auth=testpub$LR•IPV4•44『线路2』 -CCTV7,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•44『线路3』 -CCTV7,http://153.0.171.163:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路4』 -CCTV7,http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•44『线路5』 -CCTV7,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv7$LR•IPV4•44『线路6』 -CCTV7,http://101.6.130.52:1234/673168121$LR•IPV4•44『线路7』 -CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000026715&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路8』 -CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031104&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路9』 -CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017218&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路10』 -CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024341&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路11』 -CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265007&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路12』 -CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=3000000010000011518&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路13』 -CCTV7,http://111.29.9.40:6610/000000001000/1000000001000017218/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017218&livemode=1&stbId=3$LR•IPV4•44『线路14』 -CCTV7,http://111.29.9.33:6610/000000001000/1000000001000017218/index.m3u8?channel-id=bestzb&Contentid=1000000001000017218&livemode=1&stbId=3$LR•IPV4•44『线路15』 -CCTV7,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•44『线路16』 -CCTV7,http://112.46.105.20:8009/hls/504/index.m3u8$LR•IPV4•44『线路17』 +CCTV7,http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•44『线路1』 +CCTV7,http://60.10.139.113:8801/hls/7/index.m3u8$LR•IPV4•44『线路2』 +CCTV7,http://38.75.136.137:98/gslb/dsdqpub/cctv7hd.m3u8?auth=testpub$LR•IPV4•44『线路3』 +CCTV7,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•44『线路4』 +CCTV7,http://153.0.171.163:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路5』 +CCTV7,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•44『线路6』 +CCTV7,http://112.46.105.20:8009/hls/504/index.m3u8$LR•IPV4•44『线路7』 +CCTV7,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv7$LR•IPV4•44『线路8』 +CCTV7,http://101.6.130.52:1234/673168121$LR•IPV4•44『线路9』 +CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000026715&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路10』 +CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031104&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路11』 +CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017218&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路12』 +CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024341&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路13』 +CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265007&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路14』 +CCTV7,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=3000000010000011518&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路15』 +CCTV7,http://111.29.9.40:6610/000000001000/1000000001000017218/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017218&livemode=1&stbId=3$LR•IPV4•44『线路16』 +CCTV7,http://111.29.9.33:6610/000000001000/1000000001000017218/index.m3u8?channel-id=bestzb&Contentid=1000000001000017218&livemode=1&stbId=3$LR•IPV4•44『线路17』 CCTV7,http://120.76.248.139/live/bfgd/4200000127.m3u8$LR•IPV4•44『线路18』 CCTV7,https://live.chinacert.cftest5.cn/cnmg/live/673168121$LR•IPV4•44『线路19』 CCTV7,http://m.061899.xyz/mg/cctv7$LR•IPV4•44『线路20』 @@ -430,22 +430,22 @@ CCTV7,http://173.208.212.130:8181/720p/cctv7.m3u8$LR•IPV4•44『线路41』 CCTV7,http://192.151.150.154/live/cctv7hd.m3u8$LR•IPV4•44『线路42』 CCTV7,http://173.208.212.130:8181/1080p/cctv7.m3u8$LR•IPV4•44『线路43』 CCTV7,http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•44『线路44』 -CCTV8,http://121.57.88.206:898/hls/8/index.m3u8$LR•IPV4•48『线路1』 -CCTV8,http://222.223.41.27:8888/hls/8/index.m3u8$LR•IPV4•48『线路2』 -CCTV8,http://153.0.171.163:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路3』 -CCTV8,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv8hd$LR•IPV4•48『线路4』 -CCTV8,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•48『线路5』 -CCTV8,http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•48『线路6』 -CCTV8,http://36.40.237.49:9999/tsfile/live/0008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路7』 -CCTV8,http://120.198.95.220:9901/tsfile/live/1023_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•48『线路8』 -CCTV8,http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•48『线路9』 -CCTV8,http://60.10.139.113:8801/hls/8/index.m3u8$LR•IPV4•48『线路10』 -CCTV8,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv8$LR•IPV4•48『线路11』 -CCTV8,http://101.6.130.52:1234/624878356$LR•IPV4•48『线路12』 -CCTV8,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003736&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路13』 -CCTV8,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265008&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路14』 -CCTV8,http://111.29.9.33:6610/000000001000/1000000001000003736/index.m3u8?channel-id=bestzb&Contentid=1000000001000003736&livemode=1&stbId=3$LR•IPV4•48『线路15』 -CCTV8,http://112.46.105.20:8009/hls/8/index.m3u8$LR•IPV4•48『线路16』 +CCTV8,http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•48『线路1』 +CCTV8,http://121.57.88.206:898/hls/8/index.m3u8$LR•IPV4•48『线路2』 +CCTV8,http://222.223.41.27:8888/hls/8/index.m3u8$LR•IPV4•48『线路3』 +CCTV8,http://153.0.171.163:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路4』 +CCTV8,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv8hd$LR•IPV4•48『线路5』 +CCTV8,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•48『线路6』 +CCTV8,http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•48『线路7』 +CCTV8,http://36.40.237.49:9999/tsfile/live/0008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路8』 +CCTV8,http://120.198.95.220:9901/tsfile/live/1023_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•48『线路9』 +CCTV8,http://112.46.105.20:8009/hls/8/index.m3u8$LR•IPV4•48『线路10』 +CCTV8,http://60.10.139.113:8801/hls/8/index.m3u8$LR•IPV4•48『线路11』 +CCTV8,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv8$LR•IPV4•48『线路12』 +CCTV8,http://101.6.130.52:1234/624878356$LR•IPV4•48『线路13』 +CCTV8,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003736&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路14』 +CCTV8,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265008&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路15』 +CCTV8,http://111.29.9.33:6610/000000001000/1000000001000003736/index.m3u8?channel-id=bestzb&Contentid=1000000001000003736&livemode=1&stbId=3$LR•IPV4•48『线路16』 CCTV8,http://120.76.248.139/live/bfgd/4200000066.m3u8$LR•IPV4•48『线路17』 CCTV8,https://live.chinacert.cftest5.cn/cnmg/live/624878356$LR•IPV4•48『线路18』 CCTV8,http://m.061899.xyz/mg/cctv8$LR•IPV4•48『线路19』 @@ -478,71 +478,72 @@ CCTV8,http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•48『线路45』 CCTV8,http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•48『线路46』 CCTV8,http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•48『线路47』 CCTV8,http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•48『线路48』 -CCTV9,http://60.10.139.113:8801/hls/9/index.m3u8$LR•IPV4•49『线路1』 -CCTV9,http://124.228.160.210:9901/tsfile/live/0009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•49『线路2』 -CCTV9,http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•49『线路3』 -CCTV9,http://112.27.235.94:8000/hls/10/index.m3u8$LR•IPV4•49『线路4』 -CCTV9,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv9$LR•IPV4•49『线路5』 -CCTV9,http://101.6.130.52:1234/673168140$LR•IPV4•49『线路6』 -CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000018384&livemode=1&stbId=yu&mode=1&$LR•IPV4•49『线路7』 -CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000288020&livemode=1&stbId=yu&mode=1&$LR•IPV4•49『线路8』 -CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014583&livemode=1&stbId=yu&mode=1&$LR•IPV4•49『线路9』 -CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000028286&livemode=1&stbId=yu&mode=1&$LR•IPV4•49『线路10』 -CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265009&livemode=1&stbId=yu&mode=1&$LR•IPV4•49『线路11』 -CCTV9,http://111.29.9.33:6610/000000001000/1000000001000028286/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028286&livemode=1&stbId=3$LR•IPV4•49『线路12』 -CCTV9,http://111.29.9.33:6610/000000001000/1000000001000014583/index.m3u8?channel-id=bestzb&Contentid=1000000001000014583&livemode=1&stbId=3$LR•IPV4•49『线路13』 -CCTV9,http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•49『线路14』 -CCTV9,http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IPV4•49『线路15』 -CCTV9,http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•49『线路16』 -CCTV9,http://120.76.248.139/live/bfgd/4200000128.m3u8$LR•IPV4•49『线路17』 -CCTV9,https://live.chinacert.cftest5.cn/cnmg/live/673168140$LR•IPV4•49『线路18』 -CCTV9,http://m.061899.xyz/mg/cctv9$LR•IPV4•49『线路19』 -CCTV9,http://fn.gcl.de5.net:5908/gsh950428/673168140$LR•IPV4•49『线路20』 -CCTV9,http://wfenf.x3322.net:7788/673168140$LR•IPV4•49『线路21』 -CCTV9,http://106.5.175.159:1234/673168140$LR•IPV4•49『线路22』 -CCTV9,http://36.104.221.222:7788/673168140$LR•IPV4•49『线路23』 -CCTV9,http://115.58.151.196:1234/673168140$LR•IPV4•49『线路24』 -CCTV9,http://182.61.15.163:80/673168140$LR•IPV4•49『线路25』 -CCTV9,http://121.23.132.14:7788/673168140$LR•IPV4•49『线路26』 -CCTV9,http://120.4.126.153:1234/673168140$LR•IPV4•49『线路27』 -CCTV9,http://111.43.126.240:9003/hls/9/index.m3u8$LR•IPV4•49『线路28』 -CCTV9,http://47.119.24.76:59093/673168140$LR•IPV4•49『线路29』 -CCTV9,http://222.134.19.49:8090/673168140$LR•IPV4•49『线路30』 -CCTV9,http://rihou.cc:555/tv/[mg]CCTV-09$LR•IPV4•49『线路31』 -CCTV9,http://139.155.89.87:1000/673168140$LR•IPV4•49『线路32』 -CCTV9,http://101.34.236.223:1112/673168140$LR•IPV4•49『线路33』 -CCTV9,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/1.m3u8$LR•IPV4•49『线路34』 -CCTV9,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/1.m3u8$LR•IPV4•49『线路35』 -CCTV9,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/index.m3u8$LR•IPV4•49『线路36』 -CCTV9,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225758/index.m3u8$LR•IPV4•49『线路37』 -CCTV9,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227337/index.m3u8$LR•IPV4•49『线路38』 -CCTV9,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=f41a4cba7d196beb36c86b6f7ec67e4d$LR•IPV4•49『线路39』 -CCTV9,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•49『线路40』 -CCTV9,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•49『线路41』 -CCTV9,http://111.8.224.6:9999/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•49『线路42』 -CCTV9,http://38.75.136.137:98/gslb/dsdqpub/cctv9hd.m3u8?auth=testpub$LR•IPV4•49『线路43』 -CCTV9,http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•49『线路44』 -CCTV9,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•49『线路45』 -CCTV9,http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•49『线路46』 -CCTV9,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•49『线路47』 -CCTV9,http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•49『线路48』 -CCTV9,http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•49『线路49』 -CCTV10,http://60.10.139.113:8801/hls/10/index.m3u8$LR•IPV4•45『线路1』 -CCTV10,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv10hd$LR•IPV4•45『线路2』 -CCTV10,http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•45『线路3』 -CCTV10,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv10$LR•IPV4•45『线路4』 -CCTV10,http://101.6.130.52:1234/624878405$LR•IPV4•45『线路5』 -CCTV10,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000012827&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路6』 -CCTV10,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000016738&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路7』 -CCTV10,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000023734&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路8』 -CCTV10,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000026367&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路9』 -CCTV10,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265010&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路10』 -CCTV10,http://111.29.9.38:6610/000000001000/1000000001000023734/index.m3u8?channel-id=ystenlive&Contentid=1000000001000023734&livemode=1&stbId=3$LR•IPV4•45『线路11』 -CCTV10,http://111.29.9.33:6610/000000001000/1000000001000023734/index.m3u8?channel-id=bestzb&Contentid=1000000001000023734&livemode=1&stbId=3$LR•IPV4•45『线路12』 -CCTV10,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•45『线路13』 -CCTV10,http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•45『线路14』 -CCTV10,http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•45『线路15』 -CCTV10,http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路16』 +CCTV9,http://112.27.235.94:8000/hls/10/index.m3u8$LR•IPV4•50『线路1』 +CCTV9,http://60.10.139.113:8801/hls/9/index.m3u8$LR•IPV4•50『线路2』 +CCTV9,http://124.228.160.210:9901/tsfile/live/0009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路3』 +CCTV9,http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路4』 +CCTV9,http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•50『线路5』 +CCTV9,http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IPV4•50『线路6』 +CCTV9,http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•50『线路7』 +CCTV9,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv9$LR•IPV4•50『线路8』 +CCTV9,http://101.6.130.52:1234/673168140$LR•IPV4•50『线路9』 +CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000018384&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路10』 +CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000288020&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路11』 +CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014583&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路12』 +CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000028286&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路13』 +CCTV9,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265009&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路14』 +CCTV9,http://111.29.9.33:6610/000000001000/1000000001000028286/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028286&livemode=1&stbId=3$LR•IPV4•50『线路15』 +CCTV9,http://111.29.9.33:6610/000000001000/1000000001000014583/index.m3u8?channel-id=bestzb&Contentid=1000000001000014583&livemode=1&stbId=3$LR•IPV4•50『线路16』 +CCTV9,http://120.76.248.139/live/bfgd/4200000128.m3u8$LR•IPV4•50『线路17』 +CCTV9,https://live.chinacert.cftest5.cn/cnmg/live/673168140$LR•IPV4•50『线路18』 +CCTV9,http://m.061899.xyz/mg/cctv9$LR•IPV4•50『线路19』 +CCTV9,http://fn.gcl.de5.net:5908/gsh950428/673168140$LR•IPV4•50『线路20』 +CCTV9,http://wfenf.x3322.net:7788/673168140$LR•IPV4•50『线路21』 +CCTV9,http://106.5.175.159:1234/673168140$LR•IPV4•50『线路22』 +CCTV9,http://36.104.221.222:7788/673168140$LR•IPV4•50『线路23』 +CCTV9,http://115.58.151.196:1234/673168140$LR•IPV4•50『线路24』 +CCTV9,http://182.61.15.163:80/673168140$LR•IPV4•50『线路25』 +CCTV9,http://121.23.132.14:7788/673168140$LR•IPV4•50『线路26』 +CCTV9,http://120.4.126.153:1234/673168140$LR•IPV4•50『线路27』 +CCTV9,http://111.43.126.240:9003/hls/9/index.m3u8$LR•IPV4•50『线路28』 +CCTV9,http://47.119.24.76:59093/673168140$LR•IPV4•50『线路29』 +CCTV9,http://222.134.19.49:8090/673168140$LR•IPV4•50『线路30』 +CCTV9,http://rihou.cc:555/tv/[mg]CCTV-09$LR•IPV4•50『线路31』 +CCTV9,http://139.155.89.87:1000/673168140$LR•IPV4•50『线路32』 +CCTV9,http://101.34.236.223:1112/673168140$LR•IPV4•50『线路33』 +CCTV9,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/1.m3u8$LR•IPV4•50『线路34』 +CCTV9,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/1.m3u8$LR•IPV4•50『线路35』 +CCTV9,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226197/index.m3u8$LR•IPV4•50『线路36』 +CCTV9,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225758/index.m3u8$LR•IPV4•50『线路37』 +CCTV9,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227337/index.m3u8$LR•IPV4•50『线路38』 +CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=45393a2f14f679e6b5db6aea2afafa39$LR•IPV4•50『线路39』 +CCTV9,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=473672dc61422fb039e3d97851b8147e$LR•IPV4•50『线路40』 +CCTV9,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•50『线路41』 +CCTV9,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•50『线路42』 +CCTV9,http://111.8.224.6:9999/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路43』 +CCTV9,http://38.75.136.137:98/gslb/dsdqpub/cctv9hd.m3u8?auth=testpub$LR•IPV4•50『线路44』 +CCTV9,http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•50『线路45』 +CCTV9,http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•50『线路46』 +CCTV9,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•50『线路47』 +CCTV9,http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•50『线路48』 +CCTV9,http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•50『线路49』 +CCTV9,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•50『线路50』 +CCTV10,http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•45『线路1』 +CCTV10,http://60.10.139.113:8801/hls/10/index.m3u8$LR•IPV4•45『线路2』 +CCTV10,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv10hd$LR•IPV4•45『线路3』 +CCTV10,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•45『线路4』 +CCTV10,http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•45『线路5』 +CCTV10,http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•45『线路6』 +CCTV10,http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路7』 +CCTV10,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv10$LR•IPV4•45『线路8』 +CCTV10,http://101.6.130.52:1234/624878405$LR•IPV4•45『线路9』 +CCTV10,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000012827&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路10』 +CCTV10,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000016738&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路11』 +CCTV10,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000023734&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路12』 +CCTV10,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000026367&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路13』 +CCTV10,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265010&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路14』 +CCTV10,http://111.29.9.38:6610/000000001000/1000000001000023734/index.m3u8?channel-id=ystenlive&Contentid=1000000001000023734&livemode=1&stbId=3$LR•IPV4•45『线路15』 +CCTV10,http://111.29.9.33:6610/000000001000/1000000001000023734/index.m3u8?channel-id=bestzb&Contentid=1000000001000023734&livemode=1&stbId=3$LR•IPV4•45『线路16』 CCTV10,http://120.76.248.139/live/bfgd/4200000129.m3u8$LR•IPV4•45『线路17』 CCTV10,https://live.chinacert.cftest5.cn/cnmg/live/624878405$LR•IPV4•45『线路18』 CCTV10,http://m.061899.xyz/mg/cctv10$LR•IPV4•45『线路19』 @@ -572,22 +573,22 @@ CCTV10,http://192.151.150.154/live/cctv10hd.m3u8$LR•IPV4•45『线路42』 CCTV10,http://173.208.212.130:8181/1080p/cctv10.m3u8$LR•IPV4•45『线路43』 CCTV10,http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•45『线路44』 CCTV10,http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•45『线路45』 -CCTV11,http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•44『线路1』 -CCTV11,http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•44『线路2』 -CCTV11,http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•44『线路3』 -CCTV11,http://36.136.38.87:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路4』 -CCTV11,http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•44『线路5』 -CCTV11,http://60.10.139.113:8801/hls/96/index.m3u8$LR•IPV4•44『线路6』 -CCTV11,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv11$LR•IPV4•44『线路7』 -CCTV11,http://101.6.130.52:1234/667987558$LR•IPV4•44『线路8』 -CCTV11,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040011&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路9』 -CCTV11,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031106&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路10』 -CCTV11,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019789&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路11』 -CCTV11,http://111.29.9.37:6610/000000001000/1000000002000019789/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•44『线路12』 -CCTV11,http://111.29.9.33:6610/000000001000/1000000002000019789/index.m3u8?channel-id=bestzb&Contentid=1000000002000019789&livemode=1&stbId=3$LR•IPV4•44『线路13』 -CCTV11,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•44『线路14』 -CCTV11,http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•44『线路15』 -CCTV11,http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路16』 +CCTV11,http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•44『线路1』 +CCTV11,http://38.75.136.137:98/gslb/dsdqpub/cctv11hd.m3u8?auth=testpub$LR•IPV4•44『线路2』 +CCTV11,http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•44『线路3』 +CCTV11,http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•44『线路4』 +CCTV11,http://36.136.38.87:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路5』 +CCTV11,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•44『线路6』 +CCTV11,http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•44『线路7』 +CCTV11,http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路8』 +CCTV11,http://60.10.139.113:8801/hls/96/index.m3u8$LR•IPV4•44『线路9』 +CCTV11,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv11$LR•IPV4•44『线路10』 +CCTV11,http://101.6.130.52:1234/667987558$LR•IPV4•44『线路11』 +CCTV11,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040011&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路12』 +CCTV11,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031106&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路13』 +CCTV11,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019789&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路14』 +CCTV11,http://111.29.9.37:6610/000000001000/1000000002000019789/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•44『线路15』 +CCTV11,http://111.29.9.33:6610/000000001000/1000000002000019789/index.m3u8?channel-id=bestzb&Contentid=1000000002000019789&livemode=1&stbId=3$LR•IPV4•44『线路16』 CCTV11,http://120.76.248.139/live/bfgd/4200000130.m3u8$LR•IPV4•44『线路17』 CCTV11,https://live.chinacert.cftest5.cn/cnmg/live/667987558$LR•IPV4•44『线路18』 CCTV11,http://m.061899.xyz/mg/cctv11$LR•IPV4•44『线路19』 @@ -616,21 +617,21 @@ CCTV11,http://207.56.13.146:81/cdnlive/cctv11.m3u8$LR•IPV4•44『线路41』 CCTV11,http://192.151.150.154/live/cctv11hd.m3u8$LR•IPV4•44『线路42』 CCTV11,http://173.208.212.130:8181/1080p/cctv11.m3u8$LR•IPV4•44『线路43』 CCTV11,http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•44『线路44』 -CCTV12,http://60.10.139.113:8801/hls/11/index.m3u8$LR•IPV4•42『线路1』 -CCTV12,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•42『线路2』 -CCTV12,http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•42『线路3』 -CCTV12,http://153.0.171.163:9901/tsfile/live/1011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•42『线路4』 -CCTV12,http://112.27.235.94:8000/hls/13/index.m3u8$LR•IPV4•42『线路5』 -CCTV12,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv12$LR•IPV4•42『线路6』 -CCTV12,http://101.6.130.52:1234/673168185$LR•IPV4•42『线路7』 -CCTV12,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040012&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路8』 -CCTV12,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路9』 -CCTV12,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000001640&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路10』 -CCTV12,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000032494&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路11』 -CCTV12,http://111.29.9.39:6610/000000001000/1000000001000032494/index.m3u8?channel-id=ystenlive&Contentid=1000000001000032494&livemode=1&stbId=3$LR•IPV4•42『线路12』 -CCTV12,http://111.29.9.33:6610/000000001000/1000000001000001640/index.m3u8?channel-id=bestzb&Contentid=1000000001000001640&livemode=1&stbId=3$LR•IPV4•42『线路13』 -CCTV12,http://38.75.136.137:98/gslb/dsdqbv/cctv12hd.m3u8?auth=test20251009$LR•IPV4•42『线路14』 -CCTV12,http://112.46.105.20:8009/hls/507/index.m3u8$LR•IPV4•42『线路15』 +CCTV12,http://112.27.235.94:8000/hls/13/index.m3u8$LR•IPV4•42『线路1』 +CCTV12,http://60.10.139.113:8801/hls/11/index.m3u8$LR•IPV4•42『线路2』 +CCTV12,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•42『线路3』 +CCTV12,http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•42『线路4』 +CCTV12,http://153.0.171.163:9901/tsfile/live/1011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•42『线路5』 +CCTV12,http://38.75.136.137:98/gslb/dsdqbv/cctv12hd.m3u8?auth=test20251009$LR•IPV4•42『线路6』 +CCTV12,http://112.46.105.20:8009/hls/507/index.m3u8$LR•IPV4•42『线路7』 +CCTV12,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv12$LR•IPV4•42『线路8』 +CCTV12,http://101.6.130.52:1234/673168185$LR•IPV4•42『线路9』 +CCTV12,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040012&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路10』 +CCTV12,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路11』 +CCTV12,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000001640&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路12』 +CCTV12,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000032494&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路13』 +CCTV12,http://111.29.9.39:6610/000000001000/1000000001000032494/index.m3u8?channel-id=ystenlive&Contentid=1000000001000032494&livemode=1&stbId=3$LR•IPV4•42『线路14』 +CCTV12,http://111.29.9.33:6610/000000001000/1000000001000001640/index.m3u8?channel-id=bestzb&Contentid=1000000001000001640&livemode=1&stbId=3$LR•IPV4•42『线路15』 CCTV12,http://120.76.248.139/live/bfgd/4200000131.m3u8$LR•IPV4•42『线路16』 CCTV12,https://live.chinacert.cftest5.cn/cnmg/live/673168185$LR•IPV4•42『线路17』 CCTV12,http://m.061899.xyz/mg/cctv12$LR•IPV4•42『线路18』 @@ -658,19 +659,19 @@ CCTV12,http://207.56.13.146:81/cdnlive/cctv12.m3u8$LR•IPV4•42『线路39』 CCTV12,http://192.151.150.154/live/cctv12hd.m3u8$LR•IPV4•42『线路40』 CCTV12,http://173.208.212.130:8181/1080p/cctv12.m3u8$LR•IPV4•42『线路41』 CCTV12,http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•42『线路42』 -CCTV13,http://60.10.139.113:8801/hls/12/index.m3u8$LR•IPV4•44『线路1』 -CCTV13,http://222.223.41.27:8888/hls/13/index.m3u8$LR•IPV4•44『线路2』 -CCTV13,http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•44『线路3』 -CCTV13,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv13$LR•IPV4•44『线路4』 -CCTV13,http://101.6.130.52:1234/608807423$LR•IPV4•44『线路5』 -CCTV13,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000001827&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路6』 -CCTV13,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031108&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路7』 -CCTV13,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000021303&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路8』 -CCTV13,http://111.29.9.35:6610/000000001000/1000000002000021303/index.m3u8?channel-id=ystenlive&Contentid=1000000002000021303&livemode=1&stbId=3$LR•IPV4•44『线路9』 -CCTV13,http://111.29.9.33:6610/000000001000/1000000002000021303/index.m3u8?channel-id=bestzb&Contentid=1000000002000021303&livemode=1&stbId=3$LR•IPV4•44『线路10』 -CCTV13,http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•44『线路11』 -CCTV13,http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4•44『线路12』 -CCTV13,http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路13』 +CCTV13,http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•44『线路1』 +CCTV13,http://60.10.139.113:8801/hls/12/index.m3u8$LR•IPV4•44『线路2』 +CCTV13,http://222.223.41.27:8888/hls/13/index.m3u8$LR•IPV4•44『线路3』 +CCTV13,http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•44『线路4』 +CCTV13,http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4•44『线路5』 +CCTV13,http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路6』 +CCTV13,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv13$LR•IPV4•44『线路7』 +CCTV13,http://101.6.130.52:1234/608807423$LR•IPV4•44『线路8』 +CCTV13,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000001827&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路9』 +CCTV13,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031108&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路10』 +CCTV13,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000021303&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路11』 +CCTV13,http://111.29.9.35:6610/000000001000/1000000002000021303/index.m3u8?channel-id=ystenlive&Contentid=1000000002000021303&livemode=1&stbId=3$LR•IPV4•44『线路12』 +CCTV13,http://111.29.9.33:6610/000000001000/1000000002000021303/index.m3u8?channel-id=bestzb&Contentid=1000000002000021303&livemode=1&stbId=3$LR•IPV4•44『线路13』 CCTV13,http://120.76.248.139/live/bfgd/4200000067.m3u8$LR•IPV4•44『线路14』 CCTV13,https://live.chinacert.cftest5.cn/cnmg/live/608807423$LR•IPV4•44『线路15』 CCTV13,http://m.061899.xyz/mg/cctv13$LR•IPV4•44『线路16』 @@ -696,28 +697,28 @@ CCTV13,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/2 CCTV13,http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•44『线路36』 CCTV13,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•44『线路37』 CCTV13,http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•44『线路38』 -CCTV13,http://go.bkpcp.top/mg/cctv13$LR•IPV4•44『线路39』 -CCTV13,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•44『线路40』 -CCTV13,http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•44『线路41』 -CCTV13,http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•44『线路42』 -CCTV13,http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•44『线路43』 -CCTV13,http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•44『线路44』 -CCTV14,http://60.10.139.113:8801/hls/13/index.m3u8$LR•IPV4•46『线路1』 -CCTV14,http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•46『线路2』 -CCTV14,http://124.228.160.210:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路3』 -CCTV14,http://36.136.38.87:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路4』 -CCTV14,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv14$LR•IPV4•46『线路5』 -CCTV14,http://101.6.130.52:1234/624878440$LR•IPV4•46『线路6』 -CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路7』 -CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000023358&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路8』 -CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000008170&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路9』 -CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021349&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路10』 -CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000000172&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路11』 -CCTV14,http://111.29.9.36:6610/000000001000/5000000004000006673/index.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=3$LR•IPV4•46『线路12』 -CCTV14,http://111.29.9.33:6610/000000001000/1000000001000008170/index.m3u8?channel-id=bestzb&Contentid=1000000001000008170&livemode=1&stbId=3$LR•IPV4•46『线路13』 -CCTV14,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•46『线路14』 -CCTV14,http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•46『线路15』 -CCTV14,http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路16』 +CCTV13,http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•44『线路39』 +CCTV13,http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•44『线路40』 +CCTV13,http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•44『线路41』 +CCTV13,http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•44『线路42』 +CCTV13,http://go.bkpcp.top/mg/cctv13$LR•IPV4•44『线路43』 +CCTV13,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•44『线路44』 +CCTV14,http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•46『线路1』 +CCTV14,http://60.10.139.113:8801/hls/13/index.m3u8$LR•IPV4•46『线路2』 +CCTV14,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•46『线路3』 +CCTV14,http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•46『线路4』 +CCTV14,http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 +CCTV14,http://124.228.160.210:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 +CCTV14,http://36.136.38.87:9901/tsfile/live/0014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路7』 +CCTV14,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv14$LR•IPV4•46『线路8』 +CCTV14,http://101.6.130.52:1234/624878440$LR•IPV4•46『线路9』 +CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路10』 +CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000023358&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路11』 +CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000008170&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路12』 +CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021349&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路13』 +CCTV14,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000000172&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 +CCTV14,http://111.29.9.36:6610/000000001000/5000000004000006673/index.m3u8?channel-id=bestzb&Contentid=5000000004000006673&livemode=1&stbId=3$LR•IPV4•46『线路15』 +CCTV14,http://111.29.9.33:6610/000000001000/1000000001000008170/index.m3u8?channel-id=bestzb&Contentid=1000000001000008170&livemode=1&stbId=3$LR•IPV4•46『线路16』 CCTV14,http://120.76.248.139/live/bfgd/4200000132.m3u8$LR•IPV4•46『线路17』 CCTV14,https://live.chinacert.cftest5.cn/cnmg/live/624878440$LR•IPV4•46『线路18』 CCTV14,http://m.061899.xyz/mg/cctv14$LR•IPV4•46『线路19』 @@ -748,57 +749,58 @@ CCTV14,http://207.56.13.146:81/cdnlive/cctv14.m3u8$LR•IPV4•46『线路43』 CCTV14,http://192.151.150.154/live/cctv14hd.m3u8$LR•IPV4•46『线路44』 CCTV14,http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•46『线路45』 CCTV14,http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•46『线路46』 -CCTV15,http://60.10.139.113:8801/hls/97/index.m3u8$LR•IPV4•44『线路1』 -CCTV15,http://74.91.26.218:82/live/cctv15hd.m3u8$LR•IPV4•44『线路2』 -CCTV15,http://198.204.228.26/live/cctv15hd.m3u8$LR•IPV4•44『线路3』 -CCTV15,http://124.228.160.210:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路4』 -CCTV15,http://36.136.38.87:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路5』 -CCTV15,http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路6』 -CCTV15,http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•44『线路7』 -CCTV15,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv15$LR•IPV4•44『线路8』 -CCTV15,http://101.6.130.52:1234/673168223$LR•IPV4•44『线路9』 -CCTV15,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000018417&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路10』 -CCTV15,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031109&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路11』 -CCTV15,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000008163&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路12』 -CCTV15,http://111.29.9.36:6610/000000001000/1000000002000008163/index.m3u8?channel-id=ystenlive&Contentid=1000000002000008163&livemode=1&stbId=3$LR•IPV4•44『线路13』 -CCTV15,http://111.29.9.33:6610/000000001000/1000000002000008163/index.m3u8?channel-id=bestzb&Contentid=1000000002000008163&livemode=1&stbId=3$LR•IPV4•44『线路14』 -CCTV15,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•44『线路15』 -CCTV15,http://120.76.248.139/live/bfgd/4200000133.m3u8$LR•IPV4•44『线路16』 -CCTV15,https://live.chinacert.cftest5.cn/cnmg/live/673168223$LR•IPV4•44『线路17』 -CCTV15,http://m.061899.xyz/mg/cctv15$LR•IPV4•44『线路18』 -CCTV15,http://fn.gcl.de5.net:5908/gsh950428/673168223$LR•IPV4•44『线路19』 -CCTV15,http://wfenf.x3322.net:7788/673168223$LR•IPV4•44『线路20』 -CCTV15,http://106.5.175.159:1234/673168223$LR•IPV4•44『线路21』 -CCTV15,http://36.104.221.222:7788/673168223$LR•IPV4•44『线路22』 -CCTV15,http://115.58.151.196:1234/673168223$LR•IPV4•44『线路23』 -CCTV15,http://182.61.15.163:80/673168223$LR•IPV4•44『线路24』 -CCTV15,http://121.23.132.14:7788/673168223$LR•IPV4•44『线路25』 -CCTV15,http://120.4.126.153:1234/673168223$LR•IPV4•44『线路26』 -CCTV15,http://111.43.126.240:9003/hls/15/index.m3u8$LR•IPV4•44『线路27』 -CCTV15,http://47.119.24.76:59093/673168223$LR•IPV4•44『线路28』 -CCTV15,http://222.134.19.49:8090/673168223$LR•IPV4•44『线路29』 -CCTV15,http://rihou.cc:555/tv/[mg]CCTV-15$LR•IPV4•44『线路30』 -CCTV15,http://139.155.89.87:1000/673168223$LR•IPV4•44『线路31』 -CCTV15,http://101.34.236.223:1112/673168223$LR•IPV4•44『线路32』 -CCTV15,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225785/1.m3u8$LR•IPV4•44『线路33』 -CCTV15,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225785/index.m3u8$LR•IPV4•44『线路34』 -CCTV15,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227361/index.m3u8$LR•IPV4•44『线路35』 -CCTV15,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•44『线路36』 -CCTV15,http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•44『线路37』 -CCTV15,http://111.8.224.6:9999/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路38』 -CCTV15,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•44『线路39』 -CCTV15,http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•44『线路40』 -CCTV15,http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•44『线路41』 -CCTV15,http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•44『线路42』 -CCTV15,http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•44『线路43』 -CCTV15,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•44『线路44』 -CCTV16,http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•19『线路1』 -CCTV16,https://epg.pw/stream/c1beb2abcba5aef09c2f58efc3ca84b76de2c7b9cf60762b0d79772d9e70d454.m3u8$LR•IPV4•19『线路2』 -CCTV16,http://183.11.239.36:808/hls/169/index.m3u8$LR•IPV4•19『线路3』 -CCTV16,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv16$LR•IPV4•19『线路4』 -CCTV16,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000233001&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路5』 -CCTV16,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000233002&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路6』 -CCTV16,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•19『线路7』 +CCTV15,http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•45『线路1』 +CCTV15,http://60.10.139.113:8801/hls/97/index.m3u8$LR•IPV4•45『线路2』 +CCTV15,http://74.91.26.218:82/live/cctv15hd.m3u8$LR•IPV4•45『线路3』 +CCTV15,http://198.204.228.26/live/cctv15hd.m3u8$LR•IPV4•45『线路4』 +CCTV15,http://124.228.160.210:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路5』 +CCTV15,http://36.136.38.87:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路6』 +CCTV15,http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路7』 +CCTV15,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•45『线路8』 +CCTV15,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv15$LR•IPV4•45『线路9』 +CCTV15,http://101.6.130.52:1234/673168223$LR•IPV4•45『线路10』 +CCTV15,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000018417&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路11』 +CCTV15,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000031109&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路12』 +CCTV15,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000008163&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路13』 +CCTV15,http://111.29.9.36:6610/000000001000/1000000002000008163/index.m3u8?channel-id=ystenlive&Contentid=1000000002000008163&livemode=1&stbId=3$LR•IPV4•45『线路14』 +CCTV15,http://111.29.9.33:6610/000000001000/1000000002000008163/index.m3u8?channel-id=bestzb&Contentid=1000000002000008163&livemode=1&stbId=3$LR•IPV4•45『线路15』 +CCTV15,http://120.76.248.139/live/bfgd/4200000133.m3u8$LR•IPV4•45『线路16』 +CCTV15,https://live.chinacert.cftest5.cn/cnmg/live/673168223$LR•IPV4•45『线路17』 +CCTV15,http://m.061899.xyz/mg/cctv15$LR•IPV4•45『线路18』 +CCTV15,http://fn.gcl.de5.net:5908/gsh950428/673168223$LR•IPV4•45『线路19』 +CCTV15,http://wfenf.x3322.net:7788/673168223$LR•IPV4•45『线路20』 +CCTV15,http://106.5.175.159:1234/673168223$LR•IPV4•45『线路21』 +CCTV15,http://36.104.221.222:7788/673168223$LR•IPV4•45『线路22』 +CCTV15,http://115.58.151.196:1234/673168223$LR•IPV4•45『线路23』 +CCTV15,http://182.61.15.163:80/673168223$LR•IPV4•45『线路24』 +CCTV15,http://121.23.132.14:7788/673168223$LR•IPV4•45『线路25』 +CCTV15,http://120.4.126.153:1234/673168223$LR•IPV4•45『线路26』 +CCTV15,http://111.43.126.240:9003/hls/15/index.m3u8$LR•IPV4•45『线路27』 +CCTV15,http://47.119.24.76:59093/673168223$LR•IPV4•45『线路28』 +CCTV15,http://222.134.19.49:8090/673168223$LR•IPV4•45『线路29』 +CCTV15,http://rihou.cc:555/tv/[mg]CCTV-15$LR•IPV4•45『线路30』 +CCTV15,http://139.155.89.87:1000/673168223$LR•IPV4•45『线路31』 +CCTV15,http://101.34.236.223:1112/673168223$LR•IPV4•45『线路32』 +CCTV15,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225785/1.m3u8$LR•IPV4•45『线路33』 +CCTV15,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225785/index.m3u8$LR•IPV4•45『线路34』 +CCTV15,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227361/index.m3u8$LR•IPV4•45『线路35』 +CCTV15,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•45『线路36』 +CCTV15,https://piccpndks.v.kcdnvip.com/audio/cctv15_2/index.m3u8$LR•IPV4•45『线路37』 +CCTV15,http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•45『线路38』 +CCTV15,http://111.8.224.6:9999/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路39』 +CCTV15,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•45『线路40』 +CCTV15,http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•45『线路41』 +CCTV15,http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•45『线路42』 +CCTV15,http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•45『线路43』 +CCTV15,http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•45『线路44』 +CCTV15,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•45『线路45』 +CCTV16,http://drive.mxmy.net:8888/udp/239.3.1.184:8001$LR•IPV4•19『线路1』 +CCTV16,http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•19『线路2』 +CCTV16,https://epg.pw/stream/c1beb2abcba5aef09c2f58efc3ca84b76de2c7b9cf60762b0d79772d9e70d454.m3u8$LR•IPV4•19『线路3』 +CCTV16,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•19『线路4』 +CCTV16,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv16$LR•IPV4•19『线路5』 +CCTV16,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000233001&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路6』 +CCTV16,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000233002&livemode=1&stbId=yu&mode=1&$LR•IPV4•19『线路7』 CCTV16,http://m.061899.xyz/mg/cctv16$LR•IPV4•19『线路8』 CCTV16,http://111.43.126.240:9003/hls/16/index.m3u8$LR•IPV4•19『线路9』 CCTV16,http://rihou.cc:555/tv/[mg]CCTV-16$LR•IPV4•19『线路10』 @@ -811,16 +813,16 @@ CCTV16,http://192.151.150.154/live/cctv16hd.m3u8$LR•IPV4•19『线路16』 CCTV16,http://173.208.212.130:8181/1080p/cctv16.m3u8$LR•IPV4•19『线路17』 CCTV16,http://173.208.212.130:8181/720p/cctv16.m3u8$LR•IPV4•19『线路18』 CCTV16,http://204.12.221.218:8181/3m1080p/cctv16.m3u8$LR•IPV4•19『线路19』 -CCTV17,http://60.10.139.113:8801/hls/98/index.m3u8$LR•IPV4•39『线路1』 -CCTV17,http://222.169.85.8:9901/tsfile/live/0007_1.m3u8$LR•IPV4•39『线路2』 -CCTV17,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv17$LR•IPV4•39『线路3』 -CCTV17,http://101.6.130.52:1234/673168256$LR•IPV4•39『线路4』 -CCTV17,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000288014&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路5』 -CCTV17,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000056836&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路6』 -CCTV17,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000268004&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路7』 -CCTV17,http://111.29.9.33:6610/000000001000/1000000005000056836/index.m3u8?channel-id=bestzb&Contentid=1000000005000056836&livemode=1&stbId=3$LR•IPV4•39『线路8』 -CCTV17,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•39『线路9』 -CCTV17,http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•39『线路10』 +CCTV17,http://123.130.84.106:8154/tsfile/live/0019_1.m3u8$LR•IPV4•39『线路1』 +CCTV17,http://60.10.139.113:8801/hls/98/index.m3u8$LR•IPV4•39『线路2』 +CCTV17,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•39『线路3』 +CCTV17,http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•39『线路4』 +CCTV17,https://php.jdshipin.com:2096/TVOD/iptv.php?id=cctv17$LR•IPV4•39『线路5』 +CCTV17,http://101.6.130.52:1234/673168256$LR•IPV4•39『线路6』 +CCTV17,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000011000288014&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路7』 +CCTV17,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000056836&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路8』 +CCTV17,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000268004&livemode=1&stbId=yu&mode=1&$LR•IPV4•39『线路9』 +CCTV17,http://111.29.9.33:6610/000000001000/1000000005000056836/index.m3u8?channel-id=bestzb&Contentid=1000000005000056836&livemode=1&stbId=3$LR•IPV4•39『线路10』 CCTV17,http://120.76.248.139/live/bfgd/4200000204.m3u8$LR•IPV4•39『线路11』 CCTV17,https://live.chinacert.cftest5.cn/cnmg/live/673168256$LR•IPV4•39『线路12』 CCTV17,http://m.061899.xyz/mg/cctv17$LR•IPV4•39『线路13』 @@ -851,54 +853,54 @@ CCTV17,http://173.208.212.130:8181/1080p/cctv17.m3u8$LR•IPV4•39『线路37 CCTV17,http://173.208.212.130:8181/720p/cctv17.m3u8$LR•IPV4•39『线路38』 CCTV17,http://204.12.221.218:8181/3m1080p/cctv17.m3u8$LR•IPV4•39『线路39』 CCTV第一剧场,https://epg.pw/stream/6d7bf281e3d739806a73f5373acaa6e01988ec9739f5ac1355ce54b47a928472.m3u8$LR•IPV4•10『线路1』 -CCTV第一剧场,http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•10『线路2』 -CCTV第一剧场,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•10『线路3』 -CCTV第一剧场,http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•10『线路4』 +CCTV第一剧场,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•10『线路2』 +CCTV第一剧场,http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•10『线路3』 +CCTV第一剧场,http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•10『线路4』 CCTV第一剧场,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226959/index.m3u8$LR•IPV6•10『线路5』 CCTV第一剧场,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=dyjc$LR•IPV4•10『线路6』 CCTV第一剧场,http://207.56.13.146:81/cdnlive/dyjc.m3u8$LR•IPV4•10『线路7』 CCTV第一剧场,http://192.151.150.154/live/dyjc.m3u8$LR•IPV4•10『线路8』 CCTV第一剧场,http://173.208.212.130:8181/720p/dyjc.m3u8$LR•IPV4•10『线路9』 CCTV第一剧场,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226959/index.m3u8$LR•IPV4•10『线路10』 -CCTV怀旧剧场,http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•9『线路1』 -CCTV怀旧剧场,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•9『线路2』 -CCTV怀旧剧场,http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•9『线路3』 +CCTV怀旧剧场,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•9『线路1』 +CCTV怀旧剧场,http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•9『线路2』 +CCTV怀旧剧场,http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•9『线路3』 CCTV怀旧剧场,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226972/index.m3u8$LR•IPV6•9『线路4』 CCTV怀旧剧场,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hjjc$LR•IPV4•9『线路5』 CCTV怀旧剧场,http://207.56.13.146:81/cdnlive/hjjc.m3u8$LR•IPV4•9『线路6』 CCTV怀旧剧场,http://192.151.150.154/live/hjjc.m3u8$LR•IPV4•9『线路7』 CCTV怀旧剧场,http://173.208.212.130:8181/720p/hjjc.m3u8$LR•IPV4•9『线路8』 CCTV怀旧剧场,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226972/index.m3u8$LR•IPV4•9『线路9』 -CCTV风云剧场,http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•9『线路1』 -CCTV风云剧场,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•9『线路2』 -CCTV风云剧场,http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•9『线路3』 +CCTV风云剧场,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•9『线路1』 +CCTV风云剧场,http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•9『线路2』 +CCTV风云剧场,http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•9『线路3』 CCTV风云剧场,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226950/index.m3u8$LR•IPV6•9『线路4』 CCTV风云剧场,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyjc$LR•IPV4•9『线路5』 CCTV风云剧场,http://207.56.13.146:81/cdnlive/fyjc.m3u8$LR•IPV4•9『线路6』 CCTV风云剧场,http://192.151.150.154/live/fyjc.m3u8$LR•IPV4•9『线路7』 CCTV风云剧场,http://173.208.212.130:8181/720p/fyjc.m3u8$LR•IPV4•9『线路8』 CCTV风云剧场,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226950/index.m3u8$LR•IPV4•9『线路9』 -CCTV风云音乐,http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•8『线路1』 -CCTV风云音乐,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•8『线路2』 +CCTV风云音乐,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•8『线路1』 +CCTV风云音乐,http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•8『线路2』 CCTV风云音乐,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226953/index.m3u8$LR•IPV6•8『线路3』 CCTV风云音乐,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyyy$LR•IPV4•8『线路4』 CCTV风云音乐,http://207.56.13.146:81/cdnlive/fyyy.m3u8$LR•IPV4•8『线路5』 CCTV风云音乐,http://192.151.150.154/live/fyyy.m3u8$LR•IPV4•8『线路6』 CCTV风云音乐,http://173.208.212.130:8181/720p/fyyy.m3u8$LR•IPV4•8『线路7』 CCTV风云音乐,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226953/index.m3u8$LR•IPV4•8『线路8』 -CCTV兵器科技,http://60.10.139.113:8801/hls/72/index.m3u8$LR•IPV4•9『线路1』 -CCTV兵器科技,http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4•9『线路2』 -CCTV兵器科技,http://38.75.136.137:98/gslb/dsdqpub/bqkj.m3u8?auth=testpub$LR•IPV4•9『线路3』 +CCTV兵器科技,http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4•9『线路1』 +CCTV兵器科技,http://38.75.136.137:98/gslb/dsdqpub/bqkj.m3u8?auth=testpub$LR•IPV4•9『线路2』 +CCTV兵器科技,http://60.10.139.113:8801/hls/72/index.m3u8$LR•IPV4•9『线路3』 CCTV兵器科技,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226975/index.m3u8$LR•IPV6•9『线路4』 CCTV兵器科技,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gfjs$LR•IPV4•9『线路5』 CCTV兵器科技,http://207.56.13.146:81/cdnlive/gfjs.m3u8$LR•IPV4•9『线路6』 CCTV兵器科技,http://192.151.150.154/live/gfjs.m3u8$LR•IPV4•9『线路7』 CCTV兵器科技,http://173.208.212.130:8181/720p/gfjs.m3u8$LR•IPV4•9『线路8』 CCTV兵器科技,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226975/index.m3u8$LR•IPV4•9『线路9』 -CCTV风云足球,http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•19『线路1』 -CCTV风云足球,http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•19『线路2』 -CCTV风云足球,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•19『线路3』 -CCTV风云足球,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•19『线路4』 +CCTV风云足球,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•19『线路1』 +CCTV风云足球,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•19『线路2』 +CCTV风云足球,http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•19『线路3』 +CCTV风云足球,http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•19『线路4』 CCTV风云足球,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226984/index.m3u8$LR•IPV6•19『线路5』 CCTV风云足球,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyzq$LR•IPV4•19『线路6』 CCTV风云足球,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4934&tk=a0c4f6cfaba3$LR•IPV4•19『线路7』 @@ -936,24 +938,24 @@ CCTV央视台球,https://hls-gateway.vpstv.net/streams/708855.m3u8$LR•IPV4•1 CCTV央视台球,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7711&tk=a0c4f6cfaba3$LR•IPV4•16『线路14』 CCTV央视台球,http://207.56.13.146:81/cdnlive/ystq.m3u8$LR•IPV4•16『线路15』 CCTV央视台球,http://192.151.150.154/live/ystq.m3u8$LR•IPV4•16『线路16』 -CCTV女性时尚,http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•8『线路1』 -CCTV女性时尚,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•8『线路2』 +CCTV女性时尚,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•8『线路1』 +CCTV女性时尚,http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•8『线路2』 CCTV女性时尚,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226969/index.m3u8$LR•IPV6•8『线路3』 CCTV女性时尚,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nxss$LR•IPV4•8『线路4』 CCTV女性时尚,http://207.56.13.146:81/cdnlive/nxss.m3u8$LR•IPV4•8『线路5』 CCTV女性时尚,http://192.151.150.154/live/nxss.m3u8$LR•IPV4•8『线路6』 CCTV女性时尚,http://173.208.212.130:8181/720p/nxss.m3u8$LR•IPV4•8『线路7』 CCTV女性时尚,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226969/index.m3u8$LR•IPV4•8『线路8』 -CCTV电视指南,http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•7『线路1』 -CCTV电视指南,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•7『线路2』 -CCTV电视指南,http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•7『线路3』 +CCTV电视指南,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•7『线路1』 +CCTV电视指南,http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•7『线路2』 +CCTV电视指南,http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•7『线路3』 CCTV电视指南,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226987/index.m3u8$LR•IPV6•7『线路4』 CCTV电视指南,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=dszn$LR•IPV4•7『线路5』 CCTV电视指南,http://192.151.150.154/live/dszn.m3u8$LR•IPV4•7『线路6』 CCTV电视指南,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226987/index.m3u8$LR•IPV4•7『线路7』 -CCTV世界地理,http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•9『线路1』 -CCTV世界地理,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•9『线路2』 -CCTV世界地理,http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•9『线路3』 +CCTV世界地理,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•9『线路1』 +CCTV世界地理,http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•9『线路2』 +CCTV世界地理,http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•9『线路3』 CCTV世界地理,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226947/index.m3u8$LR•IPV6•9『线路4』 CCTV世界地理,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sjdl$LR•IPV4•9『线路5』 CCTV世界地理,http://207.56.13.146:81/cdnlive/sjdl.m3u8$LR•IPV4•9『线路6』 @@ -980,48 +982,48 @@ CCTV卫生健康,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227146/i 中国天气,http://222.134.19.49:8090/959986621$LR•IPV4•14『线路12』 中国天气,http://139.155.89.87:1000/959986621$LR•IPV4•14『线路13』 中国天气,http://101.34.236.223:1112/959986621$LR•IPV4•14『线路14』 -CETV1,http://117.161.133.51:81/gitv_live/G_CETV-1/G_CETV-1.m3u8?p=GITV$LR•IPV4•23『线路1』 -CETV1,http://101.6.130.52:1234/923287154$LR•IPV4•23『线路2』 -CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000027253&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路3』 -CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288015&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路4』 -CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000002000002652&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路5』 -CETV1,http://120.76.248.139/live/bfgd/4200000135.m3u8$LR•IPV4•23『线路6』 -CETV1,https://live.chinacert.cftest5.cn/cnmg/live/923287154$LR•IPV4•23『线路7』 -CETV1,http://fn.gcl.de5.net:5908/gsh950428/923287154$LR•IPV4•23『线路8』 -CETV1,http://wfenf.x3322.net:7788/923287154$LR•IPV4•23『线路9』 -CETV1,http://106.5.175.159:1234/923287154$LR•IPV4•23『线路10』 -CETV1,http://36.104.221.222:7788/923287154$LR•IPV4•23『线路11』 -CETV1,http://115.58.151.196:1234/923287154$LR•IPV4•23『线路12』 -CETV1,http://182.61.15.163:80/923287154$LR•IPV4•23『线路13』 -CETV1,http://121.23.132.14:7788/923287154$LR•IPV4•23『线路14』 -CETV1,http://120.4.126.153:1234/923287154$LR•IPV4•23『线路15』 -CETV1,http://47.119.24.76:59093/923287154$LR•IPV4•23『线路16』 -CETV1,http://222.134.19.49:8090/923287154$LR•IPV4•23『线路17』 -CETV1,http://139.155.89.87:1000/923287154$LR•IPV4•23『线路18』 -CETV1,http://101.34.236.223:1112/923287154$LR•IPV4•23『线路19』 +CETV1,http://101.6.130.52:1234/923287154$LR•IPV4•23『线路1』 +CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000027253&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路2』 +CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288015&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路3』 +CETV1,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000002000002652&livemode=1&stbId=yu&mode=1&$LR•IPV4•23『线路4』 +CETV1,http://120.76.248.139/live/bfgd/4200000135.m3u8$LR•IPV4•23『线路5』 +CETV1,https://live.chinacert.cftest5.cn/cnmg/live/923287154$LR•IPV4•23『线路6』 +CETV1,http://fn.gcl.de5.net:5908/gsh950428/923287154$LR•IPV4•23『线路7』 +CETV1,http://wfenf.x3322.net:7788/923287154$LR•IPV4•23『线路8』 +CETV1,http://106.5.175.159:1234/923287154$LR•IPV4•23『线路9』 +CETV1,http://36.104.221.222:7788/923287154$LR•IPV4•23『线路10』 +CETV1,http://115.58.151.196:1234/923287154$LR•IPV4•23『线路11』 +CETV1,http://182.61.15.163:80/923287154$LR•IPV4•23『线路12』 +CETV1,http://121.23.132.14:7788/923287154$LR•IPV4•23『线路13』 +CETV1,http://120.4.126.153:1234/923287154$LR•IPV4•23『线路14』 +CETV1,http://47.119.24.76:59093/923287154$LR•IPV4•23『线路15』 +CETV1,http://222.134.19.49:8090/923287154$LR•IPV4•23『线路16』 +CETV1,http://139.155.89.87:1000/923287154$LR•IPV4•23『线路17』 +CETV1,http://101.34.236.223:1112/923287154$LR•IPV4•23『线路18』 +CETV1,http://117.161.133.51:81/gitv_live/G_CETV-1/G_CETV-1.m3u8?p=GITV$LR•IPV4•23『线路19』 CETV1,http://111.43.126.240:9003/hls/20/index.m3u8$LR•IPV4•23『线路20』 CETV1,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226494/1.m3u8?$LR•IPV6•23『线路21』 CETV1,http://111.29.9.33:6610/000000001000/5000000002000002652/index.m3u8?channel-id=bestzb&Contentid=5000000002000002652&livemode=1&stbId=3$LR•IPV4•23『线路22』 CETV1,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225753/index.m3u8$LR•IPV4•23『线路23』 -CETV2,http://117.161.133.51:81/gitv_live/G_CETV-2/G_CETV-2.m3u8?p=GITV$LR•IPV4•21『线路1』 -CETV2,http://101.6.130.52:1234/923287211$LR•IPV4•21『线路2』 -CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288017&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路3』 -CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266004&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路4』 -CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031201&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路5』 -CETV2,http://120.76.248.139/live/bfgd/4200000492.m3u8$LR•IPV4•21『线路6』 -CETV2,https://live.chinacert.cftest5.cn/cnmg/live/923287211$LR•IPV4•21『线路7』 -CETV2,http://fn.gcl.de5.net:5908/gsh950428/923287211$LR•IPV4•21『线路8』 -CETV2,http://wfenf.x3322.net:7788/923287211$LR•IPV4•21『线路9』 -CETV2,http://106.5.175.159:1234/923287211$LR•IPV4•21『线路10』 -CETV2,http://36.104.221.222:7788/923287211$LR•IPV4•21『线路11』 -CETV2,http://115.58.151.196:1234/923287211$LR•IPV4•21『线路12』 -CETV2,http://182.61.15.163:80/923287211$LR•IPV4•21『线路13』 -CETV2,http://121.23.132.14:7788/923287211$LR•IPV4•21『线路14』 -CETV2,http://120.4.126.153:1234/923287211$LR•IPV4•21『线路15』 -CETV2,http://47.119.24.76:59093/923287211$LR•IPV4•21『线路16』 -CETV2,http://222.134.19.49:8090/923287211$LR•IPV4•21『线路17』 -CETV2,http://139.155.89.87:1000/923287211$LR•IPV4•21『线路18』 -CETV2,http://101.34.236.223:1112/923287211$LR•IPV4•21『线路19』 +CETV2,http://101.6.130.52:1234/923287211$LR•IPV4•21『线路1』 +CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288017&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路2』 +CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266004&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路3』 +CETV2,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031201&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路4』 +CETV2,http://120.76.248.139/live/bfgd/4200000492.m3u8$LR•IPV4•21『线路5』 +CETV2,https://live.chinacert.cftest5.cn/cnmg/live/923287211$LR•IPV4•21『线路6』 +CETV2,http://fn.gcl.de5.net:5908/gsh950428/923287211$LR•IPV4•21『线路7』 +CETV2,http://wfenf.x3322.net:7788/923287211$LR•IPV4•21『线路8』 +CETV2,http://106.5.175.159:1234/923287211$LR•IPV4•21『线路9』 +CETV2,http://36.104.221.222:7788/923287211$LR•IPV4•21『线路10』 +CETV2,http://115.58.151.196:1234/923287211$LR•IPV4•21『线路11』 +CETV2,http://182.61.15.163:80/923287211$LR•IPV4•21『线路12』 +CETV2,http://121.23.132.14:7788/923287211$LR•IPV4•21『线路13』 +CETV2,http://120.4.126.153:1234/923287211$LR•IPV4•21『线路14』 +CETV2,http://47.119.24.76:59093/923287211$LR•IPV4•21『线路15』 +CETV2,http://222.134.19.49:8090/923287211$LR•IPV4•21『线路16』 +CETV2,http://139.155.89.87:1000/923287211$LR•IPV4•21『线路17』 +CETV2,http://101.34.236.223:1112/923287211$LR•IPV4•21『线路18』 +CETV2,http://117.161.133.51:81/gitv_live/G_CETV-2/G_CETV-2.m3u8?p=GITV$LR•IPV4•21『线路19』 CETV2,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226537/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7AxXs4eTU2oiWrhopr9sHw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNNxsM0Bor098BJglrhfEQTl%2CEND$LR•IPV6•21『线路20』 CETV2,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225756/index.m3u8$LR•IPV4•21『线路21』 CETV4,http://101.6.130.52:1234/923287339$LR•IPV4•21『线路1』 @@ -1045,11 +1047,11 @@ CETV4,http://111.43.126.240:9003/hls/21/index.m3u8$LR•IPV4•21『线路18』 CETV4,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226997/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EAw_OvjRgJVjtlaOa0dcgzg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•21『线路19』 CETV4,http://111.29.9.33:6610/000000001000/5000000011000031126/index.m3u8?channel-id=bestzb&Contentid=5000000011000031126&livemode=1&stbId=3$LR•IPV4•21『线路20』 CETV4,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226225/index.m3u8$LR•IPV4•21『线路21』 -文化精品,http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•7『线路1』 -文化精品,http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•7『线路2』 -文化精品,http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•7『线路3』 -文化精品,http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•7『线路4』 -文化精品,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•7『线路5』 +文化精品,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•7『线路1』 +文化精品,http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•7『线路2』 +文化精品,http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•7『线路3』 +文化精品,http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•7『线路4』 +文化精品,http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•7『线路5』 文化精品,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226981/index.m3u8$LR•IPV6•7『线路6』 文化精品,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ysjp$LR•IPV4•7『线路7』 CGTN英语,https://0472.org/hls/cgtn.m3u8$LR•IPV4 @@ -1059,11 +1061,11 @@ CGTN记录,https://english-livebkali.cgtn.com/live/doccgtn_0.m3u8$LR•IPV4•5 CGTN记录,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=8428799834696888424&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路4』 CGTN记录,https://0472.org/hls/cgtnd.m3u8?3.24.120:5140$LR•IPV4•5『线路5』 CGTN俄语,https://0472.org/hls/cgtne.m3u8$LR•IPV4•20『线路1』 -CGTN俄语,https://russian-livews.cgtn.com/hls/LSvexABhNipibK5KRuUkvHZ7220802LSTeze9o8tdFXMHsb1VosgoT220802cd/playlist.m3u8$LR•IPV4•20『线路2』 -CGTN俄语,http://101.6.130.52:1234/609006446$LR•IPV4•20『线路3』 -CGTN俄语,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000280004&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路4』 -CGTN俄语,https://0472.org/hls/cgtne.m3u8?3.24.170:5140$LR•IPV4•20『线路5』 -CGTN俄语,p3p://167.114.175.6:55331/60e648570006544872703d417386353f$LR•IPV4•20『线路6』 +CGTN俄语,p3p://167.114.175.6:55331/60e648570006544872703d417386353f$LR•IPV4•20『线路2』 +CGTN俄语,https://russian-livews.cgtn.com/hls/LSvexABhNipibK5KRuUkvHZ7220802LSTeze9o8tdFXMHsb1VosgoT220802cd/playlist.m3u8$LR•IPV4•20『线路3』 +CGTN俄语,http://101.6.130.52:1234/609006446$LR•IPV4•20『线路4』 +CGTN俄语,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000280004&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路5』 +CGTN俄语,https://0472.org/hls/cgtne.m3u8?3.24.170:5140$LR•IPV4•20『线路6』 CGTN俄语,https://live.chinacert.cftest5.cn/cnmg/live/609006446$LR•IPV4•20『线路7』 CGTN俄语,http://fn.gcl.de5.net:5908/gsh950428/609006446$LR•IPV4•20『线路8』 CGTN俄语,http://wfenf.x3322.net:7788/609006446$LR•IPV4•20『线路9』 @@ -1106,87 +1108,87 @@ CGTN阿语,https://arabic-liveali.cgtn.com/hls/LSveq57bErWLinBnxosqjisZ220802LST CGTN阿语,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000006000280001&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路3』 CGTN阿语,https://0472.org/hls/cgtna.m3u8?3.24.160:5140$LR•IPV4•5『线路4』 CGTN阿语,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227095/index.m3u8$LR•IPV4•5『线路5』 -CGTN,https://amg00405-rakutentv-cgtn-rakuten-i9tar.amagi.tv/master.m3u8$LR•IPV4•81『线路1』 -CGTN,https://arabic-livews.cgtn.com/hls/LSveq57bErWLinBnxosqjisZ220802LSTefTAS9zc9mpU08y3np9TH220802cd/playlist.m3u8$LR•IPV4•81『线路2』 -CGTN,https://espanol-livews.cgtn.com/hls/LSveOGBaBw41Ea7ukkVAUdKQ220802LSTexu6xAuFH8VZNBLE1ZNEa220802cd/playlist.m3u8$LR•IPV4•81『线路3』 -CGTN,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/cgtneurope.m3u8$LR•IPV4•81『线路4』 -CGTN,https://amg01314-cgtn-amg01314c2-rakuten-us-1319.playouts.now.amagi.tv/cgtn-fr-rakuten/playlist.m3u8$LR•IPV4•81『线路5』 -CGTN,https://amg01314-amg01314c6-distrotv-us-10220.playouts.now.amagi.tv/playlist/amg01314-cgtn-cgtnglobalbiz-distrotvus/playlist.m3u8$LR•IPV4•81『线路6』 -CGTN,https://amg00405-rakutentv-cgtndocumentary-rakuten-0ql8j.amagi.tv/master.m3u8$LR•IPV4•81『线路7』 -CGTN,https://mn-nl.mncdn.com/dogusdyg_drone/cgtn/playlist.m3u8$LR•IPV4•81『线路8』 -CGTN,http://112.27.235.94:8000/hls/17/index.m3u8$LR•IPV4•81『线路9』 -CGTN,http://60.10.139.113:8801/hls/14/index.m3u8$LR•IPV4•81『线路10』 -CGTN,https://english-livebkali.cgtn.com/live/encgtn_0.m3u8$LR•IPV4•81『线路11』 -CGTN,https://amg01314-amg01314c6-distrotv-us-10220.playouts.now.amagi.tv/index_6.m3u8$LR•IPV4•81『线路12』 -CGTN,http://101.6.130.52:1234/609006487$LR•IPV4•81『线路13』 -CGTN,http://101.6.130.52:1234/609154345$LR•IPV4•81『线路14』 -CGTN,http://101.6.130.52:1234/609006450$LR•IPV4•81『线路15』 -CGTN,http://101.6.130.52:1234/609017205$LR•IPV4•81『线路16』 -CGTN,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=4810873738577663591&livemode=1&stbId=yu&mode=1&$LR•IPV4•81『线路17』 -CGTN,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009569&livemode=1&stbId=yu&mode=1&$LR•IPV4•81『线路18』 -CGTN,https://rthktv34-live.akamaized.net/hls/live/2101642/RTHKTV34/stream04/streamPlaylist.m3u8$LR•IPV4•81『线路19』 -CGTN,https://rthktv35-live.akamaized.net/hls/live/2101643/RTHKTV35/stream02/streamPlaylist.m3u8$LR•IPV4•81『线路20』 -CGTN,p3p://167.114.175.6:55331/63ec50f4000113f9e455fe7b1ca5372f$LR•IPV4•81『线路21』 -CGTN,p3p://167.114.175.6:55331/63ec5137000178e2e457045579c13af1$LR•IPV4•81『线路22』 -CGTN,p3p://167.114.175.6:55331/63ec51ab000772cce458cafd43a96c5d$LR•IPV4•81『线路23』 -CGTN,p3p://167.114.175.6:55331/60e647e200033b4a726e736d14e93334$LR•IPV4•81『线路24』 -CGTN,https://live.chinacert.cftest5.cn/cnmg/live/609006487$LR•IPV4•81『线路25』 -CGTN,https://live.chinacert.cftest5.cn/cnmg/live/609154345$LR•IPV4•81『线路26』 -CGTN,https://live.chinacert.cftest5.cn/cnmg/live/609006450$LR•IPV4•81『线路27』 -CGTN,https://live.chinacert.cftest5.cn/cnmg/live/609017205$LR•IPV4•81『线路28』 -CGTN,http://fn.gcl.de5.net:5908/gsh950428/609006487$LR•IPV4•81『线路29』 -CGTN,http://fn.gcl.de5.net:5908/gsh950428/609154345$LR•IPV4•81『线路30』 -CGTN,http://fn.gcl.de5.net:5908/gsh950428/609006450$LR•IPV4•81『线路31』 -CGTN,http://fn.gcl.de5.net:5908/gsh950428/609017205$LR•IPV4•81『线路32』 -CGTN,http://wfenf.x3322.net:7788/609006487$LR•IPV4•81『线路33』 -CGTN,http://wfenf.x3322.net:7788/609154345$LR•IPV4•81『线路34』 -CGTN,http://wfenf.x3322.net:7788/609006450$LR•IPV4•81『线路35』 -CGTN,http://wfenf.x3322.net:7788/609017205$LR•IPV4•81『线路36』 -CGTN,http://106.5.175.159:1234/609006487$LR•IPV4•81『线路37』 -CGTN,http://106.5.175.159:1234/609154345$LR•IPV4•81『线路38』 -CGTN,http://106.5.175.159:1234/609006450$LR•IPV4•81『线路39』 -CGTN,http://106.5.175.159:1234/609017205$LR•IPV4•81『线路40』 -CGTN,http://36.104.221.222:7788/609006487$LR•IPV4•81『线路41』 -CGTN,http://36.104.221.222:7788/609154345$LR•IPV4•81『线路42』 -CGTN,http://36.104.221.222:7788/609006450$LR•IPV4•81『线路43』 -CGTN,http://36.104.221.222:7788/609017205$LR•IPV4•81『线路44』 -CGTN,http://115.58.151.196:1234/609006487$LR•IPV4•81『线路45』 -CGTN,http://115.58.151.196:1234/609154345$LR•IPV4•81『线路46』 -CGTN,http://115.58.151.196:1234/609006450$LR•IPV4•81『线路47』 -CGTN,http://115.58.151.196:1234/609017205$LR•IPV4•81『线路48』 -CGTN,http://182.61.15.163:80/609006487$LR•IPV4•81『线路49』 -CGTN,http://182.61.15.163:80/609154345$LR•IPV4•81『线路50』 -CGTN,http://182.61.15.163:80/609006450$LR•IPV4•81『线路51』 -CGTN,http://182.61.15.163:80/609017205$LR•IPV4•81『线路52』 -CGTN,http://121.23.132.14:7788/609006487$LR•IPV4•81『线路53』 -CGTN,http://121.23.132.14:7788/609154345$LR•IPV4•81『线路54』 -CGTN,http://121.23.132.14:7788/609006450$LR•IPV4•81『线路55』 -CGTN,http://121.23.132.14:7788/609017205$LR•IPV4•81『线路56』 -CGTN,http://120.4.126.153:1234/609006487$LR•IPV4•81『线路57』 -CGTN,http://120.4.126.153:1234/609154345$LR•IPV4•81『线路58』 -CGTN,http://120.4.126.153:1234/609006450$LR•IPV4•81『线路59』 -CGTN,http://120.4.126.153:1234/609017205$LR•IPV4•81『线路60』 -CGTN,http://111.43.126.240:9003/hls/19/index.m3u8$LR•IPV4•81『线路61』 -CGTN,http://47.119.24.76:59093/609006487$LR•IPV4•81『线路62』 -CGTN,http://47.119.24.76:59093/609154345$LR•IPV4•81『线路63』 -CGTN,http://47.119.24.76:59093/609006450$LR•IPV4•81『线路64』 -CGTN,http://47.119.24.76:59093/609017205$LR•IPV4•81『线路65』 -CGTN,http://222.134.19.49:8090/609006487$LR•IPV4•81『线路66』 -CGTN,http://222.134.19.49:8090/609154345$LR•IPV4•81『线路67』 -CGTN,http://222.134.19.49:8090/609006450$LR•IPV4•81『线路68』 -CGTN,http://222.134.19.49:8090/609017205$LR•IPV4•81『线路69』 -CGTN,http://rihou.cc:555/tv/[mg]CGTN-西$LR•IPV4•81『线路70』 -CGTN,http://rihou.cc:555/tv/[mg]CGTN-阿$LR•IPV4•81『线路71』 -CGTN,http://rihou.cc:555/tv/[mg]CGTN-法$LR•IPV4•81『线路72』 -CGTN,http://139.155.89.87:1000/609006487$LR•IPV4•81『线路73』 -CGTN,http://139.155.89.87:1000/609154345$LR•IPV4•81『线路74』 -CGTN,http://139.155.89.87:1000/609006450$LR•IPV4•81『线路75』 -CGTN,http://139.155.89.87:1000/609017205$LR•IPV4•81『线路76』 -CGTN,http://101.34.236.223:1112/609006487$LR•IPV4•81『线路77』 -CGTN,http://101.34.236.223:1112/609154345$LR•IPV4•81『线路78』 -CGTN,http://101.34.236.223:1112/609006450$LR•IPV4•81『线路79』 -CGTN,http://101.34.236.223:1112/609017205$LR•IPV4•81『线路80』 -CGTN,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227084/index.m3u8$LR•IPV4•81『线路81』 +CGTN,http://112.27.235.94:8000/hls/17/index.m3u8$LR•IPV4•81『线路1』 +CGTN,https://rthktv34-live.akamaized.net/hls/live/2101642/RTHKTV34/stream04/streamPlaylist.m3u8$LR•IPV4•81『线路2』 +CGTN,https://rthktv35-live.akamaized.net/hls/live/2101643/RTHKTV35/stream02/streamPlaylist.m3u8$LR•IPV4•81『线路3』 +CGTN,p3p://167.114.175.6:55331/63ec50f4000113f9e455fe7b1ca5372f$LR•IPV4•81『线路4』 +CGTN,p3p://167.114.175.6:55331/63ec5137000178e2e457045579c13af1$LR•IPV4•81『线路5』 +CGTN,p3p://167.114.175.6:55331/63ec51ab000772cce458cafd43a96c5d$LR•IPV4•81『线路6』 +CGTN,p3p://167.114.175.6:55331/60e647e200033b4a726e736d14e93334$LR•IPV4•81『线路7』 +CGTN,http://60.10.139.113:8801/hls/14/index.m3u8$LR•IPV4•81『线路8』 +CGTN,https://english-livebkali.cgtn.com/live/encgtn_0.m3u8$LR•IPV4•81『线路9』 +CGTN,https://amg01314-amg01314c6-distrotv-us-10220.playouts.now.amagi.tv/index_6.m3u8$LR•IPV4•81『线路10』 +CGTN,http://101.6.130.52:1234/609006487$LR•IPV4•81『线路11』 +CGTN,http://101.6.130.52:1234/609154345$LR•IPV4•81『线路12』 +CGTN,http://101.6.130.52:1234/609006450$LR•IPV4•81『线路13』 +CGTN,http://101.6.130.52:1234/609017205$LR•IPV4•81『线路14』 +CGTN,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=4810873738577663591&livemode=1&stbId=yu&mode=1&$LR•IPV4•81『线路15』 +CGTN,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009569&livemode=1&stbId=yu&mode=1&$LR•IPV4•81『线路16』 +CGTN,https://live.chinacert.cftest5.cn/cnmg/live/609006487$LR•IPV4•81『线路17』 +CGTN,https://live.chinacert.cftest5.cn/cnmg/live/609154345$LR•IPV4•81『线路18』 +CGTN,https://live.chinacert.cftest5.cn/cnmg/live/609006450$LR•IPV4•81『线路19』 +CGTN,https://live.chinacert.cftest5.cn/cnmg/live/609017205$LR•IPV4•81『线路20』 +CGTN,http://fn.gcl.de5.net:5908/gsh950428/609006487$LR•IPV4•81『线路21』 +CGTN,http://fn.gcl.de5.net:5908/gsh950428/609154345$LR•IPV4•81『线路22』 +CGTN,http://fn.gcl.de5.net:5908/gsh950428/609006450$LR•IPV4•81『线路23』 +CGTN,http://fn.gcl.de5.net:5908/gsh950428/609017205$LR•IPV4•81『线路24』 +CGTN,http://wfenf.x3322.net:7788/609006487$LR•IPV4•81『线路25』 +CGTN,http://wfenf.x3322.net:7788/609154345$LR•IPV4•81『线路26』 +CGTN,http://wfenf.x3322.net:7788/609006450$LR•IPV4•81『线路27』 +CGTN,http://wfenf.x3322.net:7788/609017205$LR•IPV4•81『线路28』 +CGTN,http://106.5.175.159:1234/609006487$LR•IPV4•81『线路29』 +CGTN,http://106.5.175.159:1234/609154345$LR•IPV4•81『线路30』 +CGTN,http://106.5.175.159:1234/609006450$LR•IPV4•81『线路31』 +CGTN,http://106.5.175.159:1234/609017205$LR•IPV4•81『线路32』 +CGTN,http://36.104.221.222:7788/609006487$LR•IPV4•81『线路33』 +CGTN,http://36.104.221.222:7788/609154345$LR•IPV4•81『线路34』 +CGTN,http://36.104.221.222:7788/609006450$LR•IPV4•81『线路35』 +CGTN,http://36.104.221.222:7788/609017205$LR•IPV4•81『线路36』 +CGTN,http://115.58.151.196:1234/609006487$LR•IPV4•81『线路37』 +CGTN,http://115.58.151.196:1234/609154345$LR•IPV4•81『线路38』 +CGTN,http://115.58.151.196:1234/609006450$LR•IPV4•81『线路39』 +CGTN,http://115.58.151.196:1234/609017205$LR•IPV4•81『线路40』 +CGTN,http://182.61.15.163:80/609006487$LR•IPV4•81『线路41』 +CGTN,http://182.61.15.163:80/609154345$LR•IPV4•81『线路42』 +CGTN,http://182.61.15.163:80/609006450$LR•IPV4•81『线路43』 +CGTN,http://182.61.15.163:80/609017205$LR•IPV4•81『线路44』 +CGTN,http://121.23.132.14:7788/609006487$LR•IPV4•81『线路45』 +CGTN,http://121.23.132.14:7788/609154345$LR•IPV4•81『线路46』 +CGTN,http://121.23.132.14:7788/609006450$LR•IPV4•81『线路47』 +CGTN,http://121.23.132.14:7788/609017205$LR•IPV4•81『线路48』 +CGTN,http://120.4.126.153:1234/609006487$LR•IPV4•81『线路49』 +CGTN,http://120.4.126.153:1234/609154345$LR•IPV4•81『线路50』 +CGTN,http://120.4.126.153:1234/609006450$LR•IPV4•81『线路51』 +CGTN,http://120.4.126.153:1234/609017205$LR•IPV4•81『线路52』 +CGTN,http://111.43.126.240:9003/hls/19/index.m3u8$LR•IPV4•81『线路53』 +CGTN,http://47.119.24.76:59093/609006487$LR•IPV4•81『线路54』 +CGTN,http://47.119.24.76:59093/609154345$LR•IPV4•81『线路55』 +CGTN,http://47.119.24.76:59093/609006450$LR•IPV4•81『线路56』 +CGTN,http://47.119.24.76:59093/609017205$LR•IPV4•81『线路57』 +CGTN,http://222.134.19.49:8090/609006487$LR•IPV4•81『线路58』 +CGTN,http://222.134.19.49:8090/609154345$LR•IPV4•81『线路59』 +CGTN,http://222.134.19.49:8090/609006450$LR•IPV4•81『线路60』 +CGTN,http://222.134.19.49:8090/609017205$LR•IPV4•81『线路61』 +CGTN,http://rihou.cc:555/tv/[mg]CGTN-西$LR•IPV4•81『线路62』 +CGTN,http://rihou.cc:555/tv/[mg]CGTN-阿$LR•IPV4•81『线路63』 +CGTN,http://rihou.cc:555/tv/[mg]CGTN-法$LR•IPV4•81『线路64』 +CGTN,http://139.155.89.87:1000/609006487$LR•IPV4•81『线路65』 +CGTN,http://139.155.89.87:1000/609154345$LR•IPV4•81『线路66』 +CGTN,http://139.155.89.87:1000/609006450$LR•IPV4•81『线路67』 +CGTN,http://139.155.89.87:1000/609017205$LR•IPV4•81『线路68』 +CGTN,http://101.34.236.223:1112/609006487$LR•IPV4•81『线路69』 +CGTN,http://101.34.236.223:1112/609154345$LR•IPV4•81『线路70』 +CGTN,http://101.34.236.223:1112/609006450$LR•IPV4•81『线路71』 +CGTN,http://101.34.236.223:1112/609017205$LR•IPV4•81『线路72』 +CGTN,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227084/index.m3u8$LR•IPV4•81『线路73』 +CGTN,https://amg00405-rakutentv-cgtn-rakuten-i9tar.amagi.tv/master.m3u8$LR•IPV4•81『线路74』 +CGTN,https://arabic-livews.cgtn.com/hls/LSveq57bErWLinBnxosqjisZ220802LSTefTAS9zc9mpU08y3np9TH220802cd/playlist.m3u8$LR•IPV4•81『线路75』 +CGTN,https://espanol-livews.cgtn.com/hls/LSveOGBaBw41Ea7ukkVAUdKQ220802LSTexu6xAuFH8VZNBLE1ZNEa220802cd/playlist.m3u8$LR•IPV4•81『线路76』 +CGTN,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/cgtneurope.m3u8$LR•IPV4•81『线路77』 +CGTN,https://amg01314-cgtn-amg01314c2-rakuten-us-1319.playouts.now.amagi.tv/cgtn-fr-rakuten/playlist.m3u8$LR•IPV4•81『线路78』 +CGTN,https://amg01314-amg01314c6-distrotv-us-10220.playouts.now.amagi.tv/playlist/amg01314-cgtn-cgtnglobalbiz-distrotvus/playlist.m3u8$LR•IPV4•81『线路79』 +CGTN,https://amg00405-rakutentv-cgtndocumentary-rakuten-0ql8j.amagi.tv/master.m3u8$LR•IPV4•81『线路80』 +CGTN,https://mn-nl.mncdn.com/dogusdyg_drone/cgtn/playlist.m3u8$LR•IPV4•81『线路81』 直播中国,https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8?contentid=2820180516001$LR•IPV4•2『线路1』 直播中国,https://gcalic.v.myalicdn.com/gc/wgw05_1/index.m3u8$LR•IPV4•2『线路2』 CCTV 4K,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•2『线路1』 @@ -1196,16 +1198,16 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 卫视,#genre# 重温经典,http://112.27.235.94:8000/hls/50/index.m3u8$LR•IPV4•12『线路1』 -重温经典,http://8.138.7.223/tv/cwjd.php$LR•IPV4•12『线路2』 -重温经典,http://cdn6.163189.xyz/163189/cwjd$LR•IPV4•12『线路3』 -重温经典,http://push.cdn1.hls123.de:8080/streams/g0jj471jied/index.m3u8$LR•IPV4•12『线路4』 -重温经典,https://cdn6.163189.xyz/163189/cwjd$LR•IPV4•12『线路5』 -重温经典,http://php.jdshipin.com/TVOD/iptv.php?id=cwjd$LR•IPV4•12『线路6』 -重温经典,http://ali.hlspull.yximgs.com/live/awei_cwjd.flv$LR•IPV4•12『线路7』 -重温经典,http://home.kuaidi521.com:35455/bptv/10000100000000050000000003887494.m3u8$LR•IPV4•12『线路8』 -重温经典,http://cdn3.132.us.kg/live/cwjd/stream.m3u8$LR•IPV4•12『线路9』 -重温经典,http://43.251.226.89:8080/play/906.m3u8$LR•IPV4•12『线路10』 -重温经典,p3p://167.114.175.6:55331/65c5064800047df41ad1a47449e93b8b$LR•IPV4•12『线路11』 +重温经典,http://php.jdshipin.com/TVOD/iptv.php?id=cwjd$LR•IPV4•12『线路2』 +重温经典,http://ali.hlspull.yximgs.com/live/awei_cwjd.flv$LR•IPV4•12『线路3』 +重温经典,http://home.kuaidi521.com:35455/bptv/10000100000000050000000003887494.m3u8$LR•IPV4•12『线路4』 +重温经典,http://cdn3.132.us.kg/live/cwjd/stream.m3u8$LR•IPV4•12『线路5』 +重温经典,http://43.251.226.89:8080/play/906.m3u8$LR•IPV4•12『线路6』 +重温经典,p3p://167.114.175.6:55331/65c5064800047df41ad1a47449e93b8b$LR•IPV4•12『线路7』 +重温经典,http://8.138.7.223/tv/cwjd.php$LR•IPV4•12『线路8』 +重温经典,http://cdn6.163189.xyz/163189/cwjd$LR•IPV4•12『线路9』 +重温经典,http://push.cdn1.hls123.de:8080/streams/g0jj471jied/index.m3u8$LR•IPV4•12『线路10』 +重温经典,https://cdn6.163189.xyz/163189/cwjd$LR•IPV4•12『线路11』 重温经典,http://107.150.60.122/live/cwjd.m3u8$LR•IPV4•12『线路12』 香港卫视,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』 @@ -1217,34 +1219,34 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 星空卫视,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://[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•36『线路1』 -湖南卫视,http://36.40.237.49:9999/tsfile/live/0128_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•36『线路2』 -湖南卫视,http://36.136.38.87:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路3』 -湖南卫视,http://153.0.171.163:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路4』 -湖南卫视,http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•36『线路5』 +湖南卫视,http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•36『线路2』 +湖南卫视,http://36.40.237.49:9999/tsfile/live/0128_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•36『线路3』 +湖南卫视,http://36.136.38.87:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路4』 +湖南卫视,http://153.0.171.163:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路5』 湖南卫视,http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•36『线路6』 -湖南卫视,http://60.10.139.113:8801/hls/17/index.m3u8$LR•IPV4•36『线路7』 -湖南卫视,http://207.56.13.146:81/cdnlive/hnws.m3u8$LR•IPV4•36『线路8』 -湖南卫视,http://192.151.150.154/live/hnwshd.m3u8$LR•IPV4•36『线路9』 -湖南卫视,http://173.208.212.130:8181/1080p/hnws.m3u8$LR•IPV4•36『线路10』 -湖南卫视,http://173.208.212.130:8181/720p/hnws.m3u8$LR•IPV4•36『线路11』 -湖南卫视,http://204.12.221.218:8181/3m1080p/hnws.m3u8$LR•IPV4•36『线路12』 -湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009115&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路13』 -湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000032695&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路14』 -湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265024&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路15』 -湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6954818217931477266&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路16』 -湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006692&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路17』 -湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000030452&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路18』 -湖南卫视,http://111.29.9.33:6610/000000001000/1000000001000009115/index.m3u8?channel-id=bestzb&Contentid=1000000001000009115&livemode=1&stbId=3$LR•IPV4•36『线路19』 -湖南卫视,http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•36『线路20』 -湖南卫视,http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•36『线路21』 -湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-2500/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•36『线路22』 -湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•36『线路23』 -湖南卫视,http://23.237.228.134/live6/hunan.m3u8$LR•IPV4•36『线路24』 -湖南卫视,http://gfr.x3322.net:9901/tsfile/live/1084_1.m3u8$LR•IPV4•36『线路25』 -湖南卫视,http://api.kkitv.itv888.cn:8080/hls/hoxiunz7ce/index.m3u8$LR•IPV4•36『线路26』 -湖南卫视,https://iptv.catvod.com/catvod.php?id=hunws$LR•IPV4•36『线路27』 -湖南卫视,https://httop.top/ysp-湖南卫视$LR•IPV4•36『线路28』 -湖南卫视,http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•36『线路29』 +湖南卫视,http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•36『线路7』 +湖南卫视,http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•36『线路8』 +湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-2500/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•36『线路9』 +湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•36『线路10』 +湖南卫视,http://23.237.228.134/live6/hunan.m3u8$LR•IPV4•36『线路11』 +湖南卫视,http://gfr.x3322.net:9901/tsfile/live/1084_1.m3u8$LR•IPV4•36『线路12』 +湖南卫视,http://api.kkitv.itv888.cn:8080/hls/hoxiunz7ce/index.m3u8$LR•IPV4•36『线路13』 +湖南卫视,https://iptv.catvod.com/catvod.php?id=hunws$LR•IPV4•36『线路14』 +湖南卫视,https://httop.top/ysp-湖南卫视$LR•IPV4•36『线路15』 +湖南卫视,http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•36『线路16』 +湖南卫视,http://60.10.139.113:8801/hls/17/index.m3u8$LR•IPV4•36『线路17』 +湖南卫视,http://207.56.13.146:81/cdnlive/hnws.m3u8$LR•IPV4•36『线路18』 +湖南卫视,http://192.151.150.154/live/hnwshd.m3u8$LR•IPV4•36『线路19』 +湖南卫视,http://173.208.212.130:8181/1080p/hnws.m3u8$LR•IPV4•36『线路20』 +湖南卫视,http://173.208.212.130:8181/720p/hnws.m3u8$LR•IPV4•36『线路21』 +湖南卫视,http://204.12.221.218:8181/3m1080p/hnws.m3u8$LR•IPV4•36『线路22』 +湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009115&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路23』 +湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000032695&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路24』 +湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265024&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路25』 +湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6954818217931477266&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路26』 +湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006692&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路27』 +湖南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000030452&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路28』 +湖南卫视,http://111.29.9.33:6610/000000001000/1000000001000009115/index.m3u8?channel-id=bestzb&Contentid=1000000001000009115&livemode=1&stbId=3$LR•IPV4•36『线路29』 湖南卫视,http://120.76.248.139/live/bfgd/4200000086.m3u8$LR•IPV4•36『线路30』 湖南卫视,http://m.061899.xyz/mg/hunws$LR•IPV4•36『线路31』 湖南卫视,http://111.43.126.240:9003/hls/22/index.m3u8$LR•IPV4•36『线路32』 @@ -1253,74 +1255,74 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 湖南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225787/index.m3u8$LR•IPV4•36『线路35』 湖南卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227316/index.m3u8$LR•IPV4•36『线路36』 浙江卫视,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•41『线路1』 -浙江卫视,http://107.150.60.122/live/zjwshd.m3u8$LR•IPV4•41『线路2』 -浙江卫视,http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•41『线路3』 -浙江卫视,http://36.136.38.87:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路4』 -浙江卫视,http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路5』 -浙江卫视,http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•41『线路6』 +浙江卫视,http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•41『线路2』 +浙江卫视,http://107.150.60.122/live/zjwshd.m3u8$LR•IPV4•41『线路3』 +浙江卫视,http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•41『线路4』 +浙江卫视,http://36.136.38.87:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路5』 +浙江卫视,http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路6』 浙江卫视,http://zwebl02.cztv.com/live/channel06720Pnew.m3u8?auth_key=1782690919-a4e701fcca14f2eb9f49523a6892c69e-0-189d3d008d4965bbc39170a448069b93$LR•IPV4•41『线路7』 -浙江卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•41『线路8』 -浙江卫视,http://60.10.139.113:8801/hls/18/index.m3u8$LR•IPV4•41『线路9』 -浙江卫视,http://207.56.13.146:81/cdnlive/zjws.m3u8$LR•IPV4•41『线路10』 -浙江卫视,http://192.151.150.154/live/zjwshd.m3u8$LR•IPV4•41『线路11』 -浙江卫视,http://173.208.212.130:8181/1080p/zjws.m3u8$LR•IPV4•41『线路12』 -浙江卫视,http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•41『线路13』 -浙江卫视,http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•41『线路14』 -浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007275&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路15』 -浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000017320&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路16』 -浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009806&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路17』 -浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014260&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路18』 -浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7889730693553663314&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路19』 -浙江卫视,https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路20』 -浙江卫视,http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8#http://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8?#http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路21』 -浙江卫视,http://183.215.134.239:19901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路22』 -浙江卫视,http://ali-m-l.cztv.com/channels/lantian/channel001/720p.m3u8$LR•IPV4•41『线路23』 -浙江卫视,http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路24』 -浙江卫视,https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路25』 -浙江卫视,http://111.29.9.33:6610/000000001000/1000000001000009806/index.m3u8?channel-id=bestzb&Contentid=1000000001000009806&livemode=1&stbId=3$LR•IPV4•41『线路26』 -浙江卫视,http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•41『线路27』 -浙江卫视,http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•41『线路28』 -浙江卫视,http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•41『线路29』 -浙江卫视,http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•41『线路30』 -浙江卫视,http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•41『线路31』 -浙江卫视,https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•41『线路32』 -浙江卫视,https://httop.top/ysp-浙江卫视$LR•IPV4•41『线路33』 -浙江卫视,http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•41『线路34』 -浙江卫视,http://120.76.248.139/live/bfgd/4200000094.m3u8$LR•IPV4•41『线路35』 -浙江卫视,http://m.061899.xyz/mg/zjws$LR•IPV4•41『线路36』 -浙江卫视,http://111.43.126.240:9003/hls/25/index.m3u8$LR•IPV4•41『线路37』 -浙江卫视,http://rihou.cc:555/tv/[mg]浙江卫视$LR•IPV4•41『线路38』 -浙江卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225798/index.m3u8$LR•IPV4•41『线路39』 -浙江卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225788/index.m3u8$LR•IPV4•41『线路40』 -浙江卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227313/index.m3u8$LR•IPV4•41『线路41』 +浙江卫视,http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•41『线路8』 +浙江卫视,http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•41『线路9』 +浙江卫视,http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•41『线路10』 +浙江卫视,http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•41『线路11』 +浙江卫视,http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•41『线路12』 +浙江卫视,https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•41『线路13』 +浙江卫视,https://httop.top/ysp-浙江卫视$LR•IPV4•41『线路14』 +浙江卫视,http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•41『线路15』 +浙江卫视,http://60.10.139.113:8801/hls/18/index.m3u8$LR•IPV4•41『线路16』 +浙江卫视,http://207.56.13.146:81/cdnlive/zjws.m3u8$LR•IPV4•41『线路17』 +浙江卫视,http://192.151.150.154/live/zjwshd.m3u8$LR•IPV4•41『线路18』 +浙江卫视,http://173.208.212.130:8181/1080p/zjws.m3u8$LR•IPV4•41『线路19』 +浙江卫视,http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•41『线路20』 +浙江卫视,http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•41『线路21』 +浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007275&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路22』 +浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000017320&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路23』 +浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009806&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路24』 +浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000014260&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路25』 +浙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7889730693553663314&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路26』 +浙江卫视,https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路27』 +浙江卫视,http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8#http://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8#https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8?#http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路28』 +浙江卫视,http://183.215.134.239:19901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路29』 +浙江卫视,http://ali-m-l.cztv.com/channels/lantian/channel001/720p.m3u8$LR•IPV4•41『线路30』 +浙江卫视,http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路31』 +浙江卫视,https://ali-m-l.cztv.com/channels/lantian/channel001/1080p.m3u8$LR•IPV4•41『线路32』 +浙江卫视,http://111.29.9.33:6610/000000001000/1000000001000009806/index.m3u8?channel-id=bestzb&Contentid=1000000001000009806&livemode=1&stbId=3$LR•IPV4•41『线路33』 +浙江卫视,http://120.76.248.139/live/bfgd/4200000094.m3u8$LR•IPV4•41『线路34』 +浙江卫视,http://m.061899.xyz/mg/zjws$LR•IPV4•41『线路35』 +浙江卫视,http://111.43.126.240:9003/hls/25/index.m3u8$LR•IPV4•41『线路36』 +浙江卫视,http://rihou.cc:555/tv/[mg]浙江卫视$LR•IPV4•41『线路37』 +浙江卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225798/index.m3u8$LR•IPV4•41『线路38』 +浙江卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225788/index.m3u8$LR•IPV4•41『线路39』 +浙江卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227313/index.m3u8$LR•IPV4•41『线路40』 +浙江卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•41『线路41』 东方卫视,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•48『线路1』 -东方卫视,https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•48『线路2』 -东方卫视,http://124.228.160.210:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路3』 -东方卫视,http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路4』 -东方卫视,http://bp-resource-dfl.bestv.cn/155/3/video.m3u8$LR•IPV4•48『线路5』 -东方卫视,http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•48『线路6』 -东方卫视,http://60.10.139.113:8801/hls/22/index.m3u8$LR•IPV4•48『线路7』 -东方卫视,http://207.56.13.146:81/cdnlive/dfws.m3u8$LR•IPV4•48『线路8』 -东方卫视,http://192.151.150.154/live/dfwshd.m3u8$LR•IPV4•48『线路9』 -东方卫视,http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•48『线路10』 -东方卫视,http://204.12.221.218:8181/3m1080p/dfws.m3u8$LR•IPV4•48『线路11』 -东方卫视,http://101.6.130.52:1234/651632648$LR•IPV4•48『线路12』 -东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000005866&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路13』 -东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000030202&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路14』 -东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6081477947334326291&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路15』 -东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014098&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路16』 -东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000032246&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路17』 -东方卫视,http://111.29.9.33:6610/000000001000/1000000001000005866/index.m3u8?channel-id=bestzb&Contentid=1000000001000005866&livemode=1&stbId=3$LR•IPV4•48『线路18』 -东方卫视,http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•48『线路19』 -东方卫视,http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•48『线路20』 -东方卫视,http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•48『线路21』 -东方卫视,http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•48『线路22』 -东方卫视,http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•48『线路23』 -东方卫视,https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•48『线路24』 -东方卫视,https://httop.top/ysp-东方卫视$LR•IPV4•48『线路25』 -东方卫视,http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•48『线路26』 -东方卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•48『线路27』 -东方卫视,http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•48『线路28』 +东方卫视,http://bp-resource-dfl.bestv.cn/155/3/video.m3u8$LR•IPV4•48『线路2』 +东方卫视,https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•48『线路3』 +东方卫视,http://124.228.160.210:9901/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路4』 +东方卫视,http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•48『线路5』 +东方卫视,http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•48『线路6』 +东方卫视,http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•48『线路7』 +东方卫视,http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•48『线路8』 +东方卫视,http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•48『线路9』 +东方卫视,http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•48『线路10』 +东方卫视,https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•48『线路11』 +东方卫视,https://httop.top/ysp-东方卫视$LR•IPV4•48『线路12』 +东方卫视,http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•48『线路13』 +东方卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•48『线路14』 +东方卫视,http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•48『线路15』 +东方卫视,http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•48『线路16』 +东方卫视,http://60.10.139.113:8801/hls/22/index.m3u8$LR•IPV4•48『线路17』 +东方卫视,http://207.56.13.146:81/cdnlive/dfws.m3u8$LR•IPV4•48『线路18』 +东方卫视,http://192.151.150.154/live/dfwshd.m3u8$LR•IPV4•48『线路19』 +东方卫视,http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•48『线路20』 +东方卫视,http://204.12.221.218:8181/3m1080p/dfws.m3u8$LR•IPV4•48『线路21』 +东方卫视,http://101.6.130.52:1234/651632648$LR•IPV4•48『线路22』 +东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000005866&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路23』 +东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000030202&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路24』 +东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6081477947334326291&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路25』 +东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014098&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路26』 +东方卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000032246&livemode=1&stbId=yu&mode=1&$LR•IPV4•48『线路27』 +东方卫视,http://111.29.9.33:6610/000000001000/1000000001000005866/index.m3u8?channel-id=bestzb&Contentid=1000000001000005866&livemode=1&stbId=3$LR•IPV4•48『线路28』 东方卫视,http://120.76.248.139/live/bfgd/4200000093.m3u8$LR•IPV4•48『线路29』 东方卫视,https://live.chinacert.cftest5.cn/cnmg/live/651632648$LR•IPV4•48『线路30』 东方卫视,http://m.061899.xyz/mg/dfws$LR•IPV4•48『线路31』 @@ -1342,32 +1344,32 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 东方卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225789/index.m3u8$LR•IPV4•48『线路47』 东方卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227212/index.m3u8$LR•IPV4•48『线路48』 北京卫视,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•50『线路1』 -北京卫视,http://173.208.212.130:8181/720p/bjws.m3u8$LR•IPV4•50『线路2』 -北京卫视,http://36.136.38.87:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路3』 -北京卫视,http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路4』 -北京卫视,http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•50『线路5』 -北京卫视,http://go.bkpcp.top/mg/bjws$LR•IPV4•50『线路6』 -北京卫视,http://60.10.139.113:8801/hls/20/index.m3u8$LR•IPV4•50『线路7』 -北京卫视,http://207.56.13.146:81/cdnlive/bjws.m3u8$LR•IPV4•50『线路8』 -北京卫视,http://192.151.150.154/live/bjwshd.m3u8$LR•IPV4•50『线路9』 -北京卫视,http://204.12.221.218:8181/3m1080p/bjws.m3u8$LR•IPV4•50『线路10』 -北京卫视,http://101.6.130.52:1234/630287636$LR•IPV4•50『线路11』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000031556&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路12』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000011502&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路13』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路14』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021288&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路15』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265027&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路16』 -北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=8186688740528366039&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路17』 -北京卫视,http://111.29.9.42:6610/000000001000/1000000001000017156/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•50『线路18』 -北京卫视,http://111.29.9.33:6610/000000001000/1000000001000017156/index.m3u8?channel-id=bestzb&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•50『线路19』 -北京卫视,http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•50『线路20』 -北京卫视,http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•50『线路21』 -北京卫视,http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•50『线路22』 -北京卫视,http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•50『线路23』 -北京卫视,http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•50『线路24』 -北京卫视,https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•50『线路25』 -北京卫视,https://httop.top/ysp-北京卫视$LR•IPV4•50『线路26』 -北京卫视,http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•50『线路27』 +北京卫视,http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•50『线路2』 +北京卫视,http://173.208.212.130:8181/720p/bjws.m3u8$LR•IPV4•50『线路3』 +北京卫视,http://36.136.38.87:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路4』 +北京卫视,http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•50『线路5』 +北京卫视,http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•50『线路6』 +北京卫视,http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•50『线路7』 +北京卫视,http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•50『线路8』 +北京卫视,http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•50『线路9』 +北京卫视,http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•50『线路10』 +北京卫视,https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•50『线路11』 +北京卫视,https://httop.top/ysp-北京卫视$LR•IPV4•50『线路12』 +北京卫视,http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•50『线路13』 +北京卫视,http://go.bkpcp.top/mg/bjws$LR•IPV4•50『线路14』 +北京卫视,http://60.10.139.113:8801/hls/20/index.m3u8$LR•IPV4•50『线路15』 +北京卫视,http://207.56.13.146:81/cdnlive/bjws.m3u8$LR•IPV4•50『线路16』 +北京卫视,http://192.151.150.154/live/bjwshd.m3u8$LR•IPV4•50『线路17』 +北京卫视,http://204.12.221.218:8181/3m1080p/bjws.m3u8$LR•IPV4•50『线路18』 +北京卫视,http://101.6.130.52:1234/630287636$LR•IPV4•50『线路19』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000031556&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路20』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000011502&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路21』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路22』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000021288&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路23』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265027&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路24』 +北京卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=8186688740528366039&livemode=1&stbId=yu&mode=1&$LR•IPV4•50『线路25』 +北京卫视,http://111.29.9.42:6610/000000001000/1000000001000017156/index.m3u8?channel-id=ystenlive&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•50『线路26』 +北京卫视,http://111.29.9.33:6610/000000001000/1000000001000017156/index.m3u8?channel-id=bestzb&Contentid=1000000001000017156&livemode=1&stbId=3$LR•IPV4•50『线路27』 北京卫视,http://120.76.248.139/live/bfgd/4200000083.m3u8$LR•IPV4•50『线路28』 北京卫视,https://live.chinacert.cftest5.cn/cnmg/live/630287636$LR•IPV4•50『线路29』 北京卫视,http://m.061899.xyz/mg/bjws$LR•IPV4•50『线路30』 @@ -1392,78 +1394,78 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 北京卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227340/index.m3u8$LR•IPV4•50『线路49』 北京卫视,http://123.121.5.183:4000/rtp/239.3.1.241:8000$LR•IPV4•50『线路50』 江苏卫视,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•51『线路1』 -江苏卫视,http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•51『线路2』 -江苏卫视,http://36.40.237.49:9999/tsfile/live/0127_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•51『线路3』 -江苏卫视,http://124.228.160.210:9901/tsfile/live/0127_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•51『线路4』 -江苏卫视,http://36.136.38.87:9901/tsfile/live/0127_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•51『线路5』 -江苏卫视,http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•51『线路6』 -江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•51『线路7』 -江苏卫视,http://60.10.139.113:8801/hls/19/index.m3u8$LR•IPV4•51『线路8』 -江苏卫视,http://207.56.13.146:81/cdnlive/jsws.m3u8$LR•IPV4•51『线路9』 -江苏卫视,http://192.151.150.154/live/jswshd.m3u8$LR•IPV4•51『线路10』 -江苏卫视,http://173.208.212.130:8181/1080p/jsws.m3u8$LR•IPV4•51『线路11』 -江苏卫视,http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•51『线路12』 -江苏卫视,http://204.12.221.218:8181/3m1080p/jsws.m3u8$LR•IPV4•51『线路13』 -江苏卫视,http://101.6.130.52:1234/623899368$LR•IPV4•51『线路14』 -江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004684&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路15』 -江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=4796340999304424198&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路16』 -江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000019351&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路17』 -江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000018509&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路18』 -江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001828&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路19』 -江苏卫视,http://111.29.9.42:6610/000000001000/5000000004000019351/index.m3u8?channel-id=bestzb&Contentid=5000000004000019351&livemode=1&stbId=3$LR•IPV4•51『线路20』 -江苏卫视,http://111.29.9.33:6610/000000001000/1000000001000001828/index.m3u8?channel-id=bestzb&Contentid=1000000001000001828&livemode=1&stbId=3$LR•IPV4•51『线路21』 -江苏卫视,http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•51『线路22』 -江苏卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•51『线路23』 -江苏卫视,http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•51『线路24』 -江苏卫视,http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•51『线路25』 -江苏卫视,http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•51『线路26』 -江苏卫视,http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•51『线路27』 -江苏卫视,https://httop.top/ysp-江苏卫视$LR•IPV4•51『线路28』 -江苏卫视,http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•51『线路29』 -江苏卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•51『线路30』 -江苏卫视,http://120.76.248.139/live/bfgd/4200000085.m3u8$LR•IPV4•51『线路31』 -江苏卫视,https://live.chinacert.cftest5.cn/cnmg/live/623899368$LR•IPV4•51『线路32』 -江苏卫视,http://m.061899.xyz/mg/jsws$LR•IPV4•51『线路33』 -江苏卫视,http://fn.gcl.de5.net:5908/gsh950428/623899368$LR•IPV4•51『线路34』 -江苏卫视,http://wfenf.x3322.net:7788/623899368$LR•IPV4•51『线路35』 -江苏卫视,http://106.5.175.159:1234/623899368$LR•IPV4•51『线路36』 -江苏卫视,http://36.104.221.222:7788/623899368$LR•IPV4•51『线路37』 -江苏卫视,http://115.58.151.196:1234/623899368$LR•IPV4•51『线路38』 -江苏卫视,http://182.61.15.163:80/623899368$LR•IPV4•51『线路39』 -江苏卫视,http://121.23.132.14:7788/623899368$LR•IPV4•51『线路40』 -江苏卫视,http://120.4.126.153:1234/623899368$LR•IPV4•51『线路41』 -江苏卫视,http://111.43.126.240:9003/hls/23/index.m3u8$LR•IPV4•51『线路42』 -江苏卫视,http://47.119.24.76:59093/623899368$LR•IPV4•51『线路43』 -江苏卫视,http://222.134.19.49:8090/623899368$LR•IPV4•51『线路44』 -江苏卫视,http://rihou.cc:555/tv/[mg]江苏卫视$LR•IPV4•51『线路45』 -江苏卫视,http://139.155.89.87:1000/623899368$LR•IPV4•51『线路46』 -江苏卫视,http://101.34.236.223:1112/623899368$LR•IPV4•51『线路47』 -江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8?$LR•IPV4•51『线路48』 -江苏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225800/index.m3u8$LR•IPV4•51『线路49』 -江苏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225746/index.m3u8$LR•IPV4•51『线路50』 -江苏卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227303/index.m3u8$LR•IPV4•51『线路51』 +江苏卫视,http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•51『线路2』 +江苏卫视,http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•51『线路3』 +江苏卫视,http://36.40.237.49:9999/tsfile/live/0127_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•51『线路4』 +江苏卫视,http://124.228.160.210:9901/tsfile/live/0127_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•51『线路5』 +江苏卫视,http://36.136.38.87:9901/tsfile/live/0127_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•51『线路6』 +江苏卫视,http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•51『线路7』 +江苏卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•51『线路8』 +江苏卫视,http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•51『线路9』 +江苏卫视,http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•51『线路10』 +江苏卫视,http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•51『线路11』 +江苏卫视,http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•51『线路12』 +江苏卫视,https://httop.top/ysp-江苏卫视$LR•IPV4•51『线路13』 +江苏卫视,http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•51『线路14』 +江苏卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•51『线路15』 +江苏卫视,http://60.10.139.113:8801/hls/19/index.m3u8$LR•IPV4•51『线路16』 +江苏卫视,http://207.56.13.146:81/cdnlive/jsws.m3u8$LR•IPV4•51『线路17』 +江苏卫视,http://192.151.150.154/live/jswshd.m3u8$LR•IPV4•51『线路18』 +江苏卫视,http://173.208.212.130:8181/1080p/jsws.m3u8$LR•IPV4•51『线路19』 +江苏卫视,http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•51『线路20』 +江苏卫视,http://204.12.221.218:8181/3m1080p/jsws.m3u8$LR•IPV4•51『线路21』 +江苏卫视,http://101.6.130.52:1234/623899368$LR•IPV4•51『线路22』 +江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000004684&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路23』 +江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=4796340999304424198&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路24』 +江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000019351&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路25』 +江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000010000018509&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路26』 +江苏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001828&livemode=1&stbId=yu&mode=1&$LR•IPV4•51『线路27』 +江苏卫视,http://111.29.9.42:6610/000000001000/5000000004000019351/index.m3u8?channel-id=bestzb&Contentid=5000000004000019351&livemode=1&stbId=3$LR•IPV4•51『线路28』 +江苏卫视,http://111.29.9.33:6610/000000001000/1000000001000001828/index.m3u8?channel-id=bestzb&Contentid=1000000001000001828&livemode=1&stbId=3$LR•IPV4•51『线路29』 +江苏卫视,http://120.76.248.139/live/bfgd/4200000085.m3u8$LR•IPV4•51『线路30』 +江苏卫视,https://live.chinacert.cftest5.cn/cnmg/live/623899368$LR•IPV4•51『线路31』 +江苏卫视,http://m.061899.xyz/mg/jsws$LR•IPV4•51『线路32』 +江苏卫视,http://fn.gcl.de5.net:5908/gsh950428/623899368$LR•IPV4•51『线路33』 +江苏卫视,http://wfenf.x3322.net:7788/623899368$LR•IPV4•51『线路34』 +江苏卫视,http://106.5.175.159:1234/623899368$LR•IPV4•51『线路35』 +江苏卫视,http://36.104.221.222:7788/623899368$LR•IPV4•51『线路36』 +江苏卫视,http://115.58.151.196:1234/623899368$LR•IPV4•51『线路37』 +江苏卫视,http://182.61.15.163:80/623899368$LR•IPV4•51『线路38』 +江苏卫视,http://121.23.132.14:7788/623899368$LR•IPV4•51『线路39』 +江苏卫视,http://120.4.126.153:1234/623899368$LR•IPV4•51『线路40』 +江苏卫视,http://111.43.126.240:9003/hls/23/index.m3u8$LR•IPV4•51『线路41』 +江苏卫视,http://47.119.24.76:59093/623899368$LR•IPV4•51『线路42』 +江苏卫视,http://222.134.19.49:8090/623899368$LR•IPV4•51『线路43』 +江苏卫视,http://rihou.cc:555/tv/[mg]江苏卫视$LR•IPV4•51『线路44』 +江苏卫视,http://139.155.89.87:1000/623899368$LR•IPV4•51『线路45』 +江苏卫视,http://101.34.236.223:1112/623899368$LR•IPV4•51『线路46』 +江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8?$LR•IPV4•51『线路47』 +江苏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225800/index.m3u8$LR•IPV4•51『线路48』 +江苏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225746/index.m3u8$LR•IPV4•51『线路49』 +江苏卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227303/index.m3u8$LR•IPV4•51『线路50』 +江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•51『线路51』 安徽卫视,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•28『线路1』 -安徽卫视,http://60.10.139.113:8801/hls/99/index.m3u8$LR•IPV4•28『线路2』 -安徽卫视,http://222.90.21.30:9901/hls/25/index.m3u8$LR•IPV4•28『线路3』 -安徽卫视,http://173.208.212.130:8181/720p/ahws.m3u8$LR•IPV4•28『线路4』 -安徽卫视,http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路5』 -安徽卫视,http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•28『线路6』 -安徽卫视,http://207.56.13.146:81/cdnlive/ahws.m3u8$LR•IPV4•28『线路7』 -安徽卫视,http://192.151.150.154/live/ahwshd.m3u8$LR•IPV4•28『线路8』 -安徽卫视,http://204.12.221.218:8181/3m1080p/ahws.m3u8$LR•IPV4•28『线路9』 -安徽卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000023002&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路10』 -安徽卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000020780&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路11』 -安徽卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000030159&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路12』 -安徽卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000027288&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路13』 -安徽卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265025&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路14』 -安徽卫视,http://111.29.9.34:6610/000000001000/1000000001000020780/index.m3u8?channel-id=ystenlive&Contentid=1000000001000020780&livemode=1&stbId=3$LR•IPV4•28『线路15』 -安徽卫视,http://111.29.9.33:6610/000000001000/1000000001000020780/index.m3u8?channel-id=bestzb&Contentid=1000000001000020780&livemode=1&stbId=3$LR•IPV4•28『线路16』 -安徽卫视,http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•28『线路17』 -安徽卫视,http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•28『线路18』 -安徽卫视,http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•28『线路19』 -安徽卫视,https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•28『线路20』 -安徽卫视,https://httop.top/ysp-安徽卫视$LR•IPV4•28『线路21』 -安徽卫视,http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•28『线路22』 +安徽卫视,http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•28『线路2』 +安徽卫视,http://60.10.139.113:8801/hls/99/index.m3u8$LR•IPV4•28『线路3』 +安徽卫视,http://222.90.21.30:9901/hls/25/index.m3u8$LR•IPV4•28『线路4』 +安徽卫视,http://173.208.212.130:8181/720p/ahws.m3u8$LR•IPV4•28『线路5』 +安徽卫视,http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路6』 +安徽卫视,http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•28『线路7』 +安徽卫视,http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•28『线路8』 +安徽卫视,http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•28『线路9』 +安徽卫视,https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•28『线路10』 +安徽卫视,https://httop.top/ysp-安徽卫视$LR•IPV4•28『线路11』 +安徽卫视,http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•28『线路12』 +安徽卫视,http://207.56.13.146:81/cdnlive/ahws.m3u8$LR•IPV4•28『线路13』 +安徽卫视,http://192.151.150.154/live/ahwshd.m3u8$LR•IPV4•28『线路14』 +安徽卫视,http://204.12.221.218:8181/3m1080p/ahws.m3u8$LR•IPV4•28『线路15』 +安徽卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000023002&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路16』 +安徽卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000020780&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路17』 +安徽卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000030159&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路18』 +安徽卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000027288&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路19』 +安徽卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265025&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路20』 +安徽卫视,http://111.29.9.34:6610/000000001000/1000000001000020780/index.m3u8?channel-id=ystenlive&Contentid=1000000001000020780&livemode=1&stbId=3$LR•IPV4•28『线路21』 +安徽卫视,http://111.29.9.33:6610/000000001000/1000000001000020780/index.m3u8?channel-id=bestzb&Contentid=1000000001000020780&livemode=1&stbId=3$LR•IPV4•28『线路22』 安徽卫视,http://120.76.248.139/live/bfgd/4200000096.m3u8$LR•IPV4•28『线路23』 安徽卫视,http://m.061899.xyz/mg/ahws$LR•IPV4•28『线路24』 安徽卫视,http://111.43.126.240:9003/hls/28/index.m3u8$LR•IPV4•28『线路25』 @@ -1471,147 +1473,147 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 安徽卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225773/index.m3u8$LR•IPV4•28『线路27』 安徽卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227233/index.m3u8$LR•IPV4•28『线路28』 重庆卫视,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•43『线路1』 -重庆卫视,http://111.8.224.6:9999/tsfile/live/1071_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•43『线路2』 -重庆卫视,http://204.12.221.218:8181/3m1080p/cqws.m3u8$LR•IPV4•43『线路3』 -重庆卫视,http://222.90.21.30:9901/hls/69/index.m3u8$LR•IPV4•43『线路4』 -重庆卫视,http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•43『线路5』 -重庆卫视,http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•43『线路6』 -重庆卫视,http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•43『线路7』 -重庆卫视,http://p2.ioioz.com/videojs.php?id=https://sjlivecdn9.cbg.cn/202607011506/app_2/_definst_/ls_2.stream/chunklist.m3u8$LR•IPV4•43『线路8』 -重庆卫视,http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•43『线路9』 -重庆卫视,http://60.10.139.113:8801/hls/31/index.m3u8$LR•IPV4•43『线路10』 -重庆卫视,http://207.56.13.146:81/cdnlive/cqws.m3u8$LR•IPV4•43『线路11』 -重庆卫视,http://192.151.150.154/live/cqwshd.m3u8$LR•IPV4•43『线路12』 -重庆卫视,http://101.6.130.52:1234/738910914$LR•IPV4•43『线路13』 -重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025797&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路14』 -重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001096&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路15』 -重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000018937&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路16』 -重庆卫视,http://111.29.9.33:6610/000000001000/1000000001000001096/index.m3u8?channel-id=bestzb&Contentid=1000000001000001096&livemode=1&stbId=3$LR•IPV4•43『线路17』 -重庆卫视,http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•43『线路18』 -重庆卫视,http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•43『线路19』 -重庆卫视,http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•43『线路20』 -重庆卫视,http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•43『线路21』 -重庆卫视,https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•43『线路22』 -重庆卫视,https://httop.top/ysp-重庆卫视$LR•IPV4•43『线路23』 -重庆卫视,http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•43『线路24』 -重庆卫视,http://120.76.248.139/live/bfgd/4200000107.m3u8$LR•IPV4•43『线路25』 -重庆卫视,https://live.chinacert.cftest5.cn/cnmg/live/738910914$LR•IPV4•43『线路26』 -重庆卫视,http://m.061899.xyz/mg/cqws$LR•IPV4•43『线路27』 -重庆卫视,http://fn.gcl.de5.net:5908/gsh950428/738910914$LR•IPV4•43『线路28』 -重庆卫视,http://wfenf.x3322.net:7788/738910914$LR•IPV4•43『线路29』 -重庆卫视,http://106.5.175.159:1234/738910914$LR•IPV4•43『线路30』 -重庆卫视,http://36.104.221.222:7788/738910914$LR•IPV4•43『线路31』 -重庆卫视,http://115.58.151.196:1234/738910914$LR•IPV4•43『线路32』 -重庆卫视,http://182.61.15.163:80/738910914$LR•IPV4•43『线路33』 -重庆卫视,http://121.23.132.14:7788/738910914$LR•IPV4•43『线路34』 -重庆卫视,http://120.4.126.153:1234/738910914$LR•IPV4•43『线路35』 -重庆卫视,http://111.43.126.240:9003/hls/39/index.m3u8$LR•IPV4•43『线路36』 -重庆卫视,http://47.119.24.76:59093/738910914$LR•IPV4•43『线路37』 -重庆卫视,http://222.134.19.49:8090/738910914$LR•IPV4•43『线路38』 -重庆卫视,http://139.155.89.87:1000/738910914$LR•IPV4•43『线路39』 -重庆卫视,http://101.34.236.223:1112/738910914$LR•IPV4•43『线路40』 -重庆卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226202/index.m3u8$LR•IPV4•43『线路41』 -重庆卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225791/index.m3u8$LR•IPV4•43『线路42』 -重庆卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227227/index.m3u8$LR•IPV4•43『线路43』 +重庆卫视,http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•43『线路2』 +重庆卫视,http://111.8.224.6:9999/tsfile/live/1071_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•43『线路3』 +重庆卫视,http://204.12.221.218:8181/3m1080p/cqws.m3u8$LR•IPV4•43『线路4』 +重庆卫视,http://222.90.21.30:9901/hls/69/index.m3u8$LR•IPV4•43『线路5』 +重庆卫视,http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•43『线路6』 +重庆卫视,http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•43『线路7』 +重庆卫视,http://p2.ioioz.com/videojs.php?id=https://sjlivecdn9.cbg.cn/202607011807/app_2/_definst_/ls_2.stream/chunklist.m3u8$LR•IPV4•43『线路8』 +重庆卫视,http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•43『线路9』 +重庆卫视,http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•43『线路10』 +重庆卫视,http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•43『线路11』 +重庆卫视,http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•43『线路12』 +重庆卫视,https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•43『线路13』 +重庆卫视,https://httop.top/ysp-重庆卫视$LR•IPV4•43『线路14』 +重庆卫视,http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•43『线路15』 +重庆卫视,http://60.10.139.113:8801/hls/31/index.m3u8$LR•IPV4•43『线路16』 +重庆卫视,http://207.56.13.146:81/cdnlive/cqws.m3u8$LR•IPV4•43『线路17』 +重庆卫视,http://192.151.150.154/live/cqwshd.m3u8$LR•IPV4•43『线路18』 +重庆卫视,http://101.6.130.52:1234/738910914$LR•IPV4•43『线路19』 +重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025797&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路20』 +重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001096&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路21』 +重庆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000018937&livemode=1&stbId=yu&mode=1&$LR•IPV4•43『线路22』 +重庆卫视,http://111.29.9.33:6610/000000001000/1000000001000001096/index.m3u8?channel-id=bestzb&Contentid=1000000001000001096&livemode=1&stbId=3$LR•IPV4•43『线路23』 +重庆卫视,http://120.76.248.139/live/bfgd/4200000107.m3u8$LR•IPV4•43『线路24』 +重庆卫视,https://live.chinacert.cftest5.cn/cnmg/live/738910914$LR•IPV4•43『线路25』 +重庆卫视,http://m.061899.xyz/mg/cqws$LR•IPV4•43『线路26』 +重庆卫视,http://fn.gcl.de5.net:5908/gsh950428/738910914$LR•IPV4•43『线路27』 +重庆卫视,http://wfenf.x3322.net:7788/738910914$LR•IPV4•43『线路28』 +重庆卫视,http://106.5.175.159:1234/738910914$LR•IPV4•43『线路29』 +重庆卫视,http://36.104.221.222:7788/738910914$LR•IPV4•43『线路30』 +重庆卫视,http://115.58.151.196:1234/738910914$LR•IPV4•43『线路31』 +重庆卫视,http://182.61.15.163:80/738910914$LR•IPV4•43『线路32』 +重庆卫视,http://121.23.132.14:7788/738910914$LR•IPV4•43『线路33』 +重庆卫视,http://120.4.126.153:1234/738910914$LR•IPV4•43『线路34』 +重庆卫视,http://111.43.126.240:9003/hls/39/index.m3u8$LR•IPV4•43『线路35』 +重庆卫视,http://47.119.24.76:59093/738910914$LR•IPV4•43『线路36』 +重庆卫视,http://222.134.19.49:8090/738910914$LR•IPV4•43『线路37』 +重庆卫视,http://139.155.89.87:1000/738910914$LR•IPV4•43『线路38』 +重庆卫视,http://101.34.236.223:1112/738910914$LR•IPV4•43『线路39』 +重庆卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226202/index.m3u8$LR•IPV4•43『线路40』 +重庆卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225791/index.m3u8$LR•IPV4•43『线路41』 +重庆卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227227/index.m3u8$LR•IPV4•43『线路42』 +重庆卫视,http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•43『线路43』 四川卫视,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•27『线路1』 -四川卫视,http://222.90.21.30:9901/hls/45/index.m3u8$LR•IPV4•27『线路2』 -四川卫视,http://111.8.224.6:9999/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路3』 -四川卫视,http://207.56.13.146:81/cdnlive/scws.m3u8$LR•IPV4•27『线路4』 -四川卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=scwshd$LR•IPV4•27『线路5』 -四川卫视,http://120.198.95.220:9901/tsfile/live/1060_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路6』 -四川卫视,http://153.0.171.163:85/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 -四川卫视,http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•27『线路8』 -四川卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•27『线路9』 -四川卫视,http://60.10.139.113:8801/hls/30/index.m3u8$LR•IPV4•27『线路10』 -四川卫视,http://192.151.150.154/live/scwshd.m3u8$LR•IPV4•27『线路11』 -四川卫视,http://204.12.221.218:8181/3m1080p/scws.m3u8$LR•IPV4•27『线路12』 -四川卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006119&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路13』 -四川卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016825&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路14』 -四川卫视,http://111.29.9.37:6610/000000001000/1000000002000016825/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•27『线路15』 -四川卫视,http://111.29.9.33:6610/000000001000/1000000002000016825/index.m3u8?channel-id=bestzb&Contentid=1000000002000016825&livemode=1&stbId=3$LR•IPV4•27『线路16』 -四川卫视,http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•27『线路17』 -四川卫视,http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•27『线路18』 -四川卫视,https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•27『线路19』 -四川卫视,https://httop.top/ysp-四川卫视$LR•IPV4•27『线路20』 -四川卫视,http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•27『线路21』 -四川卫视,http://120.76.248.139/live/bfgd/4200000103.m3u8$LR•IPV4•27『线路22』 -四川卫视,http://m.061899.xyz/mg/scws$LR•IPV4•27『线路23』 -四川卫视,http://111.43.126.240:9003/hls/34/index.m3u8$LR•IPV4•27『线路24』 -四川卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227190/index.m3u8$LR•IPV4•27『线路25』 -四川卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225768/index.m3u8$LR•IPV4•27『线路26』 -四川卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227245/index.m3u8$LR•IPV4•27『线路27』 +四川卫视,http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•27『线路2』 +四川卫视,http://222.90.21.30:9901/hls/45/index.m3u8$LR•IPV4•27『线路3』 +四川卫视,http://111.8.224.6:9999/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路4』 +四川卫视,http://207.56.13.146:81/cdnlive/scws.m3u8$LR•IPV4•27『线路5』 +四川卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=scwshd$LR•IPV4•27『线路6』 +四川卫视,http://120.198.95.220:9901/tsfile/live/1060_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路7』 +四川卫视,http://153.0.171.163:85/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路8』 +四川卫视,http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•27『线路9』 +四川卫视,http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•27『线路10』 +四川卫视,https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•27『线路11』 +四川卫视,https://httop.top/ysp-四川卫视$LR•IPV4•27『线路12』 +四川卫视,http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•27『线路13』 +四川卫视,http://60.10.139.113:8801/hls/30/index.m3u8$LR•IPV4•27『线路14』 +四川卫视,http://192.151.150.154/live/scwshd.m3u8$LR•IPV4•27『线路15』 +四川卫视,http://204.12.221.218:8181/3m1080p/scws.m3u8$LR•IPV4•27『线路16』 +四川卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006119&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路17』 +四川卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016825&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路18』 +四川卫视,http://111.29.9.37:6610/000000001000/1000000002000016825/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•27『线路19』 +四川卫视,http://111.29.9.33:6610/000000001000/1000000002000016825/index.m3u8?channel-id=bestzb&Contentid=1000000002000016825&livemode=1&stbId=3$LR•IPV4•27『线路20』 +四川卫视,http://120.76.248.139/live/bfgd/4200000103.m3u8$LR•IPV4•27『线路21』 +四川卫视,http://m.061899.xyz/mg/scws$LR•IPV4•27『线路22』 +四川卫视,http://111.43.126.240:9003/hls/34/index.m3u8$LR•IPV4•27『线路23』 +四川卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227190/index.m3u8$LR•IPV4•27『线路24』 +四川卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225768/index.m3u8$LR•IPV4•27『线路25』 +四川卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227245/index.m3u8$LR•IPV4•27『线路26』 +四川卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•27『线路27』 东南卫视,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•45『线路1』 -东南卫视,http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•45『线路2』 -东南卫视,http://222.90.21.30:9901/hls/30/index.m3u8$LR•IPV4•45『线路3』 -东南卫视,http://60.10.139.113:8801/hls/21/index.m3u8$LR•IPV4•45『线路4』 -东南卫视,http://36.40.237.49:9999/tsfile/live/0137_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•45『线路5』 -东南卫视,http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路6』 -东南卫视,http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•45『线路7』 -东南卫视,http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•45『线路8』 -东南卫视,http://207.56.13.146:81/cdnlive/dnws.m3u8$LR•IPV4•45『线路9』 -东南卫视,http://192.151.150.154/live/dnwshd.m3u8$LR•IPV4•45『线路10』 -东南卫视,http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•45『线路11』 -东南卫视,http://101.6.130.52:1234/849116810$LR•IPV4•45『线路12』 -东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000010584&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路13』 -东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000005829&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路14』 -东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009263&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路15』 -东南卫视,http://111.29.9.37:6610/000000001000/1000000002000009263/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•45『线路16』 -东南卫视,http://111.29.9.33:6610/000000001000/1000000002000009263/index.m3u8?channel-id=bestzb&Contentid=1000000002000009263&livemode=1&stbId=3$LR•IPV4•45『线路17』 -东南卫视,http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•45『线路18』 -东南卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•45『线路19』 -东南卫视,http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•45『线路20』 -东南卫视,http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•45『线路21』 -东南卫视,http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•45『线路22』 -东南卫视,http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•45『线路23』 -东南卫视,http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•45『线路24』 -东南卫视,https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•45『线路25』 -东南卫视,https://httop.top/ysp-东南卫视$LR•IPV4•45『线路26』 -东南卫视,http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•45『线路27』 -东南卫视,http://120.76.248.139/live/bfgd/4200000483.m3u8$LR•IPV4•45『线路28』 -东南卫视,https://live.chinacert.cftest5.cn/cnmg/live/849116810$LR•IPV4•45『线路29』 -东南卫视,http://m.061899.xyz/mg/dnws$LR•IPV4•45『线路30』 -东南卫视,http://fn.gcl.de5.net:5908/gsh950428/849116810$LR•IPV4•45『线路31』 -东南卫视,http://wfenf.x3322.net:7788/849116810$LR•IPV4•45『线路32』 -东南卫视,http://106.5.175.159:1234/849116810$LR•IPV4•45『线路33』 -东南卫视,http://36.104.221.222:7788/849116810$LR•IPV4•45『线路34』 -东南卫视,http://115.58.151.196:1234/849116810$LR•IPV4•45『线路35』 -东南卫视,http://182.61.15.163:80/849116810$LR•IPV4•45『线路36』 -东南卫视,http://121.23.132.14:7788/849116810$LR•IPV4•45『线路37』 -东南卫视,http://120.4.126.153:1234/849116810$LR•IPV4•45『线路38』 -东南卫视,http://111.43.126.240:9003/hls/32/index.m3u8$LR•IPV4•45『线路39』 -东南卫视,http://47.119.24.76:59093/849116810$LR•IPV4•45『线路40』 -东南卫视,http://222.134.19.49:8090/849116810$LR•IPV4•45『线路41』 -东南卫视,http://139.155.89.87:1000/849116810$LR•IPV4•45『线路42』 -东南卫视,http://101.34.236.223:1112/849116810$LR•IPV4•45『线路43』 -东南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225766/index.m3u8$LR•IPV4•45『线路44』 -东南卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226784/index.m3u8$LR•IPV4•45『线路45』 +东南卫视,http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•45『线路2』 +东南卫视,http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•45『线路3』 +东南卫视,http://222.90.21.30:9901/hls/30/index.m3u8$LR•IPV4•45『线路4』 +东南卫视,http://60.10.139.113:8801/hls/21/index.m3u8$LR•IPV4•45『线路5』 +东南卫视,http://36.40.237.49:9999/tsfile/live/0137_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•45『线路6』 +东南卫视,http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•45『线路7』 +东南卫视,http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•45『线路8』 +东南卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•45『线路9』 +东南卫视,http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•45『线路10』 +东南卫视,http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•45『线路11』 +东南卫视,http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•45『线路12』 +东南卫视,http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•45『线路13』 +东南卫视,http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•45『线路14』 +东南卫视,https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•45『线路15』 +东南卫视,https://httop.top/ysp-东南卫视$LR•IPV4•45『线路16』 +东南卫视,http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•45『线路17』 +东南卫视,http://207.56.13.146:81/cdnlive/dnws.m3u8$LR•IPV4•45『线路18』 +东南卫视,http://192.151.150.154/live/dnwshd.m3u8$LR•IPV4•45『线路19』 +东南卫视,http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•45『线路20』 +东南卫视,http://101.6.130.52:1234/849116810$LR•IPV4•45『线路21』 +东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000010584&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路22』 +东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000005829&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路23』 +东南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000009263&livemode=1&stbId=yu&mode=1&$LR•IPV4•45『线路24』 +东南卫视,http://111.29.9.37:6610/000000001000/1000000002000009263/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•45『线路25』 +东南卫视,http://111.29.9.33:6610/000000001000/1000000002000009263/index.m3u8?channel-id=bestzb&Contentid=1000000002000009263&livemode=1&stbId=3$LR•IPV4•45『线路26』 +东南卫视,http://120.76.248.139/live/bfgd/4200000483.m3u8$LR•IPV4•45『线路27』 +东南卫视,https://live.chinacert.cftest5.cn/cnmg/live/849116810$LR•IPV4•45『线路28』 +东南卫视,http://m.061899.xyz/mg/dnws$LR•IPV4•45『线路29』 +东南卫视,http://fn.gcl.de5.net:5908/gsh950428/849116810$LR•IPV4•45『线路30』 +东南卫视,http://wfenf.x3322.net:7788/849116810$LR•IPV4•45『线路31』 +东南卫视,http://106.5.175.159:1234/849116810$LR•IPV4•45『线路32』 +东南卫视,http://36.104.221.222:7788/849116810$LR•IPV4•45『线路33』 +东南卫视,http://115.58.151.196:1234/849116810$LR•IPV4•45『线路34』 +东南卫视,http://182.61.15.163:80/849116810$LR•IPV4•45『线路35』 +东南卫视,http://121.23.132.14:7788/849116810$LR•IPV4•45『线路36』 +东南卫视,http://120.4.126.153:1234/849116810$LR•IPV4•45『线路37』 +东南卫视,http://111.43.126.240:9003/hls/32/index.m3u8$LR•IPV4•45『线路38』 +东南卫视,http://47.119.24.76:59093/849116810$LR•IPV4•45『线路39』 +东南卫视,http://222.134.19.49:8090/849116810$LR•IPV4•45『线路40』 +东南卫视,http://139.155.89.87:1000/849116810$LR•IPV4•45『线路41』 +东南卫视,http://101.34.236.223:1112/849116810$LR•IPV4•45『线路42』 +东南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225766/index.m3u8$LR•IPV4•45『线路43』 +东南卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226784/index.m3u8$LR•IPV4•45『线路44』 +东南卫视,http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•45『线路45』 深圳卫视,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•35『线路1』 -深圳卫视,http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•35『线路2』 -深圳卫视,http://36.40.237.49:9999/tsfile/live/0126_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•35『线路3』 -深圳卫视,http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路4』 -深圳卫视,http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路5』 -深圳卫视,http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•35『线路6』 +深圳卫视,http://112.27.235.94:8000/hls/33/index.m3u8$LR•IPV4•35『线路2』 +深圳卫视,http://173.208.212.130:8181/720p/szws.m3u8$LR•IPV4•35『线路3』 +深圳卫视,http://36.40.237.49:9999/tsfile/live/0126_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•35『线路4』 +深圳卫视,http://124.228.160.210:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路5』 +深圳卫视,http://36.136.38.87:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路6』 深圳卫视,https://sztv-hls.sztv.com.cn/AxeFRth/500/c37hx4F.m3u8?sign=3b158240837c2e09fbb3365badee9796&t=6a41c43b$LR•IPV4•35『线路7』 -深圳卫视,http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•35『线路8』 -深圳卫视,http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•35『线路9』 -深圳卫视,http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•35『线路10』 -深圳卫视,http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•35『线路11』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路12』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路13』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路14』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路15』 -深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路16』 -深圳卫视,http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•35『线路17』 -深圳卫视,http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•35『线路18』 -深圳卫视,http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•35『线路19』 -深圳卫视,http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•35『线路20』 -深圳卫视,http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•35『线路21』 -深圳卫视,http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•35『线路22』 -深圳卫视,https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•35『线路23』 -深圳卫视,https://httop.top/ysp-深圳卫视$LR•IPV4•35『线路24』 -深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•35『线路25』 -深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路26』 -深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•35『线路27』 +深圳卫视,http://38.75.136.137:98/gslb/dsdqpub/szwshd.m3u8?auth=testpub$LR•IPV4•35『线路8』 +深圳卫视,http://23.237.228.134/live6/shenzhen.m3u8$LR•IPV4•35『线路9』 +深圳卫视,http://gfr.x3322.net:9901/tsfile/live/1095_1.m3u8$LR•IPV4•35『线路10』 +深圳卫视,http://api.kkitv.itv888.cn:8080/hls/iftsd32ykm/index.m3u8$LR•IPV4•35『线路11』 +深圳卫视,https://iptv.catvod.com/catvod.php?id=szws$LR•IPV4•35『线路12』 +深圳卫视,https://httop.top/ysp-深圳卫视$LR•IPV4•35『线路13』 +深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•35『线路14』 +深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路15』 +深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•35『线路16』 +深圳卫视,http://60.10.139.113:8801/hls/24/index.m3u8$LR•IPV4•35『线路17』 +深圳卫视,http://207.56.13.146:81/cdnlive/szws.m3u8$LR•IPV4•35『线路18』 +深圳卫视,http://192.151.150.154/live/szwshd.m3u8$LR•IPV4•35『线路19』 +深圳卫视,http://204.12.221.218:8181/3m1080p/szws.m3u8$LR•IPV4•35『线路20』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000024026&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路21』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000007410&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路22』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000009227&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路23』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000011645&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路24』 +深圳卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5352218613763113657&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路25』 +深圳卫视,http://111.29.9.38:6610/000000001000/1000000001000009227/index.m3u8?channel-id=ystenlive&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•35『线路26』 +深圳卫视,http://111.29.9.33:6610/000000001000/1000000001000009227/index.m3u8?channel-id=bestzb&Contentid=1000000001000009227&livemode=1&stbId=3$LR•IPV4•35『线路27』 深圳卫视,http://120.76.248.139/live/bfgd/4200000100.m3u8$LR•IPV4•35『线路28』 深圳卫视,http://m.061899.xyz/mg/szws$LR•IPV4•35『线路29』 深圳卫视,http://111.43.126.240:9003/hls/35/index.m3u8$LR•IPV4•35『线路30』 @@ -1621,242 +1623,241 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 深圳卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225752/index.m3u8$LR•IPV4•35『线路34』 深圳卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227239/index.m3u8$LR•IPV4•35『线路35』 广东卫视,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•47『线路1』 -广东卫视,http://173.208.212.130:8181/720p/gdws.m3u8$LR•IPV4•47『线路2』 -广东卫视,http://36.40.237.49:9999/tsfile/live/0125_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•47『线路3』 -广东卫视,http://153.0.171.163:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路4』 -广东卫视,http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•47『线路5』 -广东卫视,http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•47『线路6』 -广东卫视,http://60.10.139.113:8801/hls/26/index.m3u8$LR•IPV4•47『线路7』 -广东卫视,http://207.56.13.146:81/cdnlive/gdws.m3u8$LR•IPV4•47『线路8』 -广东卫视,http://192.151.150.154/live/gdwshd.m3u8$LR•IPV4•47『线路9』 -广东卫视,http://204.12.221.218:8181/3m1080p/gdws.m3u8$LR•IPV4•47『线路10』 -广东卫视,http://101.6.130.52:1234/608831231$LR•IPV4•47『线路11』 -广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5616881981321254555&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路12』 -广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030417&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路13』 -广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014694&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路14』 -广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000014176&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路15』 -广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000028357&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路16』 -广东卫视,http://111.29.9.36:6610/000000001000/1000000001000028357/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028357&livemode=1&stbId=3$LR•IPV4•47『线路17』 -广东卫视,http://111.29.9.33:6610/000000001000/1000000001000014176/index.m3u8?channel-id=bestzb&Contentid=1000000001000014176&livemode=1&stbId=3$LR•IPV4•47『线路18』 -广东卫视,http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•47『线路19』 -广东卫视,http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•47『线路20』 -广东卫视,http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•47『线路21』 -广东卫视,http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•47『线路22』 -广东卫视,http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•47『线路23』 -广东卫视,https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•47『线路24』 -广东卫视,https://httop.top/ysp-广东卫视$LR•IPV4•47『线路25』 -广东卫视,http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•47『线路26』 -广东卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•47『线路27』 -广东卫视,http://120.76.248.139/live/bfgd/4200000092.m3u8$LR•IPV4•47『线路28』 -广东卫视,https://live.chinacert.cftest5.cn/cnmg/live/608831231$LR•IPV4•47『线路29』 -广东卫视,http://m.061899.xyz/mg/gdws$LR•IPV4•47『线路30』 -广东卫视,http://fn.gcl.de5.net:5908/gsh950428/608831231$LR•IPV4•47『线路31』 -广东卫视,http://wfenf.x3322.net:7788/608831231$LR•IPV4•47『线路32』 -广东卫视,http://106.5.175.159:1234/608831231$LR•IPV4•47『线路33』 -广东卫视,http://36.104.221.222:7788/608831231$LR•IPV4•47『线路34』 -广东卫视,http://115.58.151.196:1234/608831231$LR•IPV4•47『线路35』 -广东卫视,http://182.61.15.163:80/608831231$LR•IPV4•47『线路36』 -广东卫视,http://121.23.132.14:7788/608831231$LR•IPV4•47『线路37』 -广东卫视,http://120.4.126.153:1234/608831231$LR•IPV4•47『线路38』 -广东卫视,http://111.43.126.240:9003/hls/27/index.m3u8$LR•IPV4•47『线路39』 -广东卫视,http://47.119.24.76:59093/608831231$LR•IPV4•47『线路40』 -广东卫视,http://222.134.19.49:8090/608831231$LR•IPV4•47『线路41』 -广东卫视,http://rihou.cc:555/tv/[mg]广东卫视$LR•IPV4•47『线路42』 -广东卫视,http://139.155.89.87:1000/608831231$LR•IPV4•47『线路43』 -广东卫视,http://101.34.236.223:1112/608831231$LR•IPV4•47『线路44』 -广东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225803/index.m3u8$LR•IPV4•47『线路45』 -广东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225757/index.m3u8$LR•IPV4•47『线路46』 -广东卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227318/index.m3u8$LR•IPV4•47『线路47』 +广东卫视,https://txmov2.a.kwimgs.com/upic/2023/01/26/09/BMjAyMzAxMjYwOTE3NDVfNzM5MzQzNzIyXzk0NjI1OTUwNTA3XzBfMw==_b_B81ddda927d33445d544befd008e60109.mp4$LR•IPV4•47『线路2』 +广东卫视,http://173.208.212.130:8181/720p/gdws.m3u8$LR•IPV4•47『线路3』 +广东卫视,http://36.40.237.49:9999/tsfile/live/0125_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•47『线路4』 +广东卫视,http://153.0.171.163:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•47『线路5』 +广东卫视,http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•47『线路6』 +广东卫视,http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•47『线路7』 +广东卫视,http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•47『线路8』 +广东卫视,http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•47『线路9』 +广东卫视,http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•47『线路10』 +广东卫视,https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•47『线路11』 +广东卫视,https://httop.top/ysp-广东卫视$LR•IPV4•47『线路12』 +广东卫视,http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•47『线路13』 +广东卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•47『线路14』 +广东卫视,http://60.10.139.113:8801/hls/26/index.m3u8$LR•IPV4•47『线路15』 +广东卫视,http://207.56.13.146:81/cdnlive/gdws.m3u8$LR•IPV4•47『线路16』 +广东卫视,http://192.151.150.154/live/gdwshd.m3u8$LR•IPV4•47『线路17』 +广东卫视,http://204.12.221.218:8181/3m1080p/gdws.m3u8$LR•IPV4•47『线路18』 +广东卫视,http://101.6.130.52:1234/608831231$LR•IPV4•47『线路19』 +广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=5616881981321254555&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路20』 +广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000030417&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路21』 +广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014694&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路22』 +广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000014176&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路23』 +广东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000028357&livemode=1&stbId=yu&mode=1&$LR•IPV4•47『线路24』 +广东卫视,http://111.29.9.36:6610/000000001000/1000000001000028357/index.m3u8?channel-id=ystenlive&Contentid=1000000001000028357&livemode=1&stbId=3$LR•IPV4•47『线路25』 +广东卫视,http://111.29.9.33:6610/000000001000/1000000001000014176/index.m3u8?channel-id=bestzb&Contentid=1000000001000014176&livemode=1&stbId=3$LR•IPV4•47『线路26』 +广东卫视,http://120.76.248.139/live/bfgd/4200000092.m3u8$LR•IPV4•47『线路27』 +广东卫视,https://live.chinacert.cftest5.cn/cnmg/live/608831231$LR•IPV4•47『线路28』 +广东卫视,http://m.061899.xyz/mg/gdws$LR•IPV4•47『线路29』 +广东卫视,http://fn.gcl.de5.net:5908/gsh950428/608831231$LR•IPV4•47『线路30』 +广东卫视,http://wfenf.x3322.net:7788/608831231$LR•IPV4•47『线路31』 +广东卫视,http://106.5.175.159:1234/608831231$LR•IPV4•47『线路32』 +广东卫视,http://36.104.221.222:7788/608831231$LR•IPV4•47『线路33』 +广东卫视,http://115.58.151.196:1234/608831231$LR•IPV4•47『线路34』 +广东卫视,http://182.61.15.163:80/608831231$LR•IPV4•47『线路35』 +广东卫视,http://121.23.132.14:7788/608831231$LR•IPV4•47『线路36』 +广东卫视,http://120.4.126.153:1234/608831231$LR•IPV4•47『线路37』 +广东卫视,http://111.43.126.240:9003/hls/27/index.m3u8$LR•IPV4•47『线路38』 +广东卫视,http://47.119.24.76:59093/608831231$LR•IPV4•47『线路39』 +广东卫视,http://222.134.19.49:8090/608831231$LR•IPV4•47『线路40』 +广东卫视,http://rihou.cc:555/tv/[mg]广东卫视$LR•IPV4•47『线路41』 +广东卫视,http://139.155.89.87:1000/608831231$LR•IPV4•47『线路42』 +广东卫视,http://101.34.236.223:1112/608831231$LR•IPV4•47『线路43』 +广东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225803/index.m3u8$LR•IPV4•47『线路44』 +广东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225757/index.m3u8$LR•IPV4•47『线路45』 +广东卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227318/index.m3u8$LR•IPV4•47『线路46』 +广东卫视,http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•47『线路47』 广西卫视,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•26『线路1』 -广西卫视,http://120.198.95.220:9901/tsfile/live/1054_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路2』 -广西卫视,http://198.204.228.26/live/gxwshd.m3u8$LR•IPV4•26『线路3』 -广西卫视,http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 -广西卫视,http://113.25.252.226:9901/tsfile/live/1029_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 -广西卫视,http://222.169.85.8:9901/tsfile/live/0113_1.m3u8$LR•IPV4•26『线路6』 -广西卫视,http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•26『线路7』 -广西卫视,http://60.10.139.113:8801/hls/52/index.m3u8$LR•IPV4•26『线路8』 -广西卫视,http://207.56.13.146:81/cdnlive/gxws.m3u8$LR•IPV4•26『线路9』 -广西卫视,http://192.151.150.154/live/gxwshd.m3u8$LR•IPV4•26『线路10』 -广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031118&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路11』 -广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040014&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路12』 -广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019837&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路13』 -广西卫视,http://111.29.9.37:6610/000000001000/1000000002000019837/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•26『线路14』 -广西卫视,http://111.29.9.33:6610/000000001000/1000000002000019837/index.m3u8?channel-id=bestzb&Contentid=1000000002000019837&livemode=1&stbId=3$LR•IPV4•26『线路15』 -广西卫视,http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•26『线路16』 -广西卫视,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•26『线路17』 -广西卫视,http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•26『线路18』 -广西卫视,http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•26『线路19』 -广西卫视,http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•26『线路20』 -广西卫视,https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•26『线路21』 -广西卫视,https://httop.top/ysp-广西卫视$LR•IPV4•26『线路22』 +广西卫视,http://222.134.245.16:9901/tsfile/live/0113_1.m3u8$LR•IPV4•26『线路2』 +广西卫视,http://120.198.95.220:9901/tsfile/live/1054_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路3』 +广西卫视,http://198.204.228.26/live/gxwshd.m3u8$LR•IPV4•26『线路4』 +广西卫视,http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 +广西卫视,http://113.25.252.226:9901/tsfile/live/1029_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路6』 +广西卫视,http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•26『线路7』 +广西卫视,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•26『线路8』 +广西卫视,http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•26『线路9』 +广西卫视,http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•26『线路10』 +广西卫视,http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•26『线路11』 +广西卫视,https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•26『线路12』 +广西卫视,https://httop.top/ysp-广西卫视$LR•IPV4•26『线路13』 +广西卫视,http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•26『线路14』 +广西卫视,http://60.10.139.113:8801/hls/52/index.m3u8$LR•IPV4•26『线路15』 +广西卫视,http://207.56.13.146:81/cdnlive/gxws.m3u8$LR•IPV4•26『线路16』 +广西卫视,http://192.151.150.154/live/gxwshd.m3u8$LR•IPV4•26『线路17』 +广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031118&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路18』 +广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040014&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路19』 +广西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000019837&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路20』 +广西卫视,http://111.29.9.37:6610/000000001000/1000000002000019837/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•26『线路21』 +广西卫视,http://111.29.9.33:6610/000000001000/1000000002000019837/index.m3u8?channel-id=bestzb&Contentid=1000000002000019837&livemode=1&stbId=3$LR•IPV4•26『线路22』 广西卫视,http://120.76.248.139/live/bfgd/4200000116.m3u8$LR•IPV4•26『线路23』 广西卫视,http://111.43.126.240:9003/hls/46/index.m3u8$LR•IPV4•26『线路24』 广西卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225770/index.m3u8$LR•IPV4•26『线路25』 广西卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226830/index.m3u8$LR•IPV4•26『线路26』 -厦门卫视,http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•9『线路1』 -厦门卫视,http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•9『线路2』 -厦门卫视,http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•9『线路3』 -厦门卫视,http://192.151.150.154/live/xmws.m3u8$LR•IPV4•9『线路4』 -厦门卫视,http://204.12.221.218:8181/3m1080p/xmws.m3u8$LR•IPV4•9『线路5』 -厦门卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266006&livemode=1&stbId=yu&mode=1&$LR•IPV4•9『线路6』 -厦门卫视,https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•9『线路7』 -厦门卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226219/index.m3u8$LR•IPV4•9『线路8』 -厦门卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226803/index.m3u8$LR•IPV4•9『线路9』 +厦门卫视,http://e2.woc.iiiya.cn:28888/rtp/239.61.2.11:8060$LR•IPV4•9『线路1』 +厦门卫视,https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•9『线路2』 +厦门卫视,http://192.151.150.154/live/xmws.m3u8$LR•IPV4•9『线路3』 +厦门卫视,http://204.12.221.218:8181/3m1080p/xmws.m3u8$LR•IPV4•9『线路4』 +厦门卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266006&livemode=1&stbId=yu&mode=1&$LR•IPV4•9『线路5』 +厦门卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226219/index.m3u8$LR•IPV4•9『线路6』 +厦门卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226803/index.m3u8$LR•IPV4•9『线路7』 +厦门卫视,http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•9『线路8』 +厦门卫视,http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•9『线路9』 甘肃卫视,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•18『线路1』 -甘肃卫视,http://36.40.237.49:9999/tsfile/live/0141_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路2』 -甘肃卫视,http://cssbyd.imwork.net:8082/hls/48/index.m3u8$LR•IPV4•18『线路3』 -甘肃卫视,http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•18『线路4』 -甘肃卫视,http://207.56.13.146:81/cdnlive/gsws.m3u8$LR•IPV4•18『线路5』 -甘肃卫视,http://192.151.150.154/live/gswshd.m3u8$LR•IPV4•18『线路6』 -甘肃卫视,http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•18『线路7』 -甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031121&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路8』 -甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017827&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路9』 -甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040021&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路10』 -甘肃卫视,http://111.29.9.37:6610/000000001000/1000000002000017827/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•18『线路11』 -甘肃卫视,http://111.29.9.33:6610/000000001000/1000000002000017827/index.m3u8?channel-id=bestzb&Contentid=1000000002000017827&livemode=1&stbId=3$LR•IPV4•18『线路12』 -甘肃卫视,https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•18『线路13』 -甘肃卫视,https://httop.top/ysp-甘肃卫视$LR•IPV4•18『线路14』 +甘肃卫视,http://218.13.170.98:9901/tsfile/live/0141_1.m3u8$LR•IPV4•18『线路2』 +甘肃卫视,http://36.40.237.49:9999/tsfile/live/0141_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路3』 +甘肃卫视,https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•18『线路4』 +甘肃卫视,https://httop.top/ysp-甘肃卫视$LR•IPV4•18『线路5』 +甘肃卫视,http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•18『线路6』 +甘肃卫视,http://207.56.13.146:81/cdnlive/gsws.m3u8$LR•IPV4•18『线路7』 +甘肃卫视,http://192.151.150.154/live/gswshd.m3u8$LR•IPV4•18『线路8』 +甘肃卫视,http://204.12.221.218:8181/3m1080p/gsws.m3u8$LR•IPV4•18『线路9』 +甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031121&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路10』 +甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017827&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路11』 +甘肃卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040021&livemode=1&stbId=yu&mode=1&$LR•IPV4•18『线路12』 +甘肃卫视,http://111.29.9.37:6610/000000001000/1000000002000017827/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•18『线路13』 +甘肃卫视,http://111.29.9.33:6610/000000001000/1000000002000017827/index.m3u8?channel-id=bestzb&Contentid=1000000002000017827&livemode=1&stbId=3$LR•IPV4•18『线路14』 甘肃卫视,http://120.76.248.139/live/bfgd/4200000119.m3u8$LR•IPV4•18『线路15』 甘肃卫视,http://111.43.126.240:9003/hls/53/index.m3u8$LR•IPV4•18『线路16』 甘肃卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225754/index.m3u8$LR•IPV4•18『线路17』 甘肃卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226875/index.m3u8$LR•IPV4•18『线路18』 贵州卫视,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•26『线路1』 -贵州卫视,http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路2』 -贵州卫视,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001184/index.m3u8?streamid=091bd59ea031989839c23459bb8cc9d4&streamkey=02BjlnRKVk4w1OimLNBUheOcwPFu2B6oL1pyXGnUypEwAWXSi5pA2M8vAAQNdTDwVOBg3wflpOJH2qUejFLrTdJs5UqkOuOhX0oeeOuZCXNP6xGvpxjLkvkGHVF&token=1775846394-f40678590315c3a3-0-795d5d8e9ef7cc7d142de1b17bf1df44$LR•IPV4•26『线路3』 -贵州卫视,http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路4』 -贵州卫视,http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•26『线路5』 -贵州卫视,http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•26『线路6』 -贵州卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•26『线路7』 -贵州卫视,http://60.10.139.113:8801/hls/36/index.m3u8$LR•IPV4•26『线路8』 -贵州卫视,http://207.56.13.146:81/cdnlive/gzws.m3u8$LR•IPV4•26『线路9』 -贵州卫视,http://192.151.150.154/live/gzwshd.m3u8$LR•IPV4•26『线路10』 -贵州卫视,http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•26『线路11』 -贵州卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025843&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路12』 -贵州卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000003169&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路13』 -贵州卫视,http://111.29.9.44:6610/000000001000/5000000004000025843/index.m3u8?channel-id=bestzb&Contentid=5000000004000025843&livemode=1&stbId=3$LR•IPV4•26『线路14』 -贵州卫视,http://111.29.9.33:6610/000000001000/1000000002000003169/index.m3u8?channel-id=bestzb&Contentid=1000000002000003169&livemode=1&stbId=3$LR•IPV4•26『线路15』 -贵州卫视,http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•26『线路16』 -贵州卫视,http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•26『线路17』 -贵州卫视,http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•26『线路18』 -贵州卫视,http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•26『线路19』 -贵州卫视,https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•26『线路20』 -贵州卫视,https://httop.top/ysp-贵州卫视$LR•IPV4•26『线路21』 -贵州卫视,http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路22』 -贵州卫视,http://120.76.248.139/live/bfgd/4200000101.m3u8$LR•IPV4•26『线路23』 -贵州卫视,http://111.43.126.240:9003/hls/36/index.m3u8$LR•IPV4•26『线路24』 -贵州卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225793/index.m3u8$LR•IPV4•26『线路25』 -贵州卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226874/index.m3u8$LR•IPV4•26『线路26』 -河北卫视,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•42『线路1』 -河北卫视,http://222.90.21.30:9901/hls/44/index.m3u8$LR•IPV4•42『线路2』 -河北卫视,http://173.208.212.130:8181/720p/hews.m3u8$LR•IPV4•42『线路3』 -河北卫视,http://36.40.237.49:9999/tsfile/live/0138_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•42『线路4』 -河北卫视,http://36.136.38.87:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•42『线路5』 -河北卫视,http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•42『线路6』 -河北卫视,http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•42『线路7』 -河北卫视,http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•42『线路8』 -河北卫视,https://tv.pull.hebtv.com/jishi/nongminpindao.m3u8?t=1782721229&k=b37c20269609549cb025f346f758e5d4$LR•IPV4•42『线路9』 -河北卫视,http://60.10.139.113:8801/hls/16/index.m3u8$LR•IPV4•42『线路10』 -河北卫视,http://207.56.13.146:81/cdnlive/hews.m3u8$LR•IPV4•42『线路11』 -河北卫视,http://192.151.150.154/live/hewshd.m3u8$LR•IPV4•42『线路12』 -河北卫视,http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•42『线路13』 -河北卫视,http://101.6.130.52:1234/962042070$LR•IPV4•42『线路14』 -河北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040016&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路15』 -河北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017118&livemode=1&stbId=yu&mode=1&$LR•IPV4•42『线路16』 -河北卫视,http://111.29.9.37:6610/000000001000/1000000002000017118/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•42『线路17』 -河北卫视,http://111.29.9.33:6610/000000001000/1000000002000017118/index.m3u8?channel-id=bestzb&Contentid=1000000002000017118&livemode=1&stbId=3$LR•IPV4•42『线路18』 -河北卫视,http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•42『线路19』 -河北卫视,http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•42『线路20』 -河北卫视,http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•42『线路21』 -河北卫视,https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•42『线路22』 -河北卫视,https://httop.top/ysp-河北卫视$LR•IPV4•42『线路23』 -河北卫视,http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•42『线路24』 -河北卫视,http://120.76.248.139/live/bfgd/4200000108.m3u8$LR•IPV4•42『线路25』 -河北卫视,https://live.chinacert.cftest5.cn/cnmg/live/962042070$LR•IPV4•42『线路26』 -河北卫视,http://m.061899.xyz/mg/hbws$LR•IPV4•42『线路27』 -河北卫视,http://fn.gcl.de5.net:5908/gsh950428/962042070$LR•IPV4•42『线路28』 -河北卫视,http://wfenf.x3322.net:7788/962042070$LR•IPV4•42『线路29』 -河北卫视,http://106.5.175.159:1234/962042070$LR•IPV4•42『线路30』 -河北卫视,http://36.104.221.222:7788/962042070$LR•IPV4•42『线路31』 -河北卫视,http://115.58.151.196:1234/962042070$LR•IPV4•42『线路32』 -河北卫视,http://182.61.15.163:80/962042070$LR•IPV4•42『线路33』 -河北卫视,http://121.23.132.14:7788/962042070$LR•IPV4•42『线路34』 -河北卫视,http://120.4.126.153:1234/962042070$LR•IPV4•42『线路35』 -河北卫视,http://111.43.126.240:9003/hls/40/index.m3u8$LR•IPV4•42『线路36』 -河北卫视,http://47.119.24.76:59093/962042070$LR•IPV4•42『线路37』 -河北卫视,http://222.134.19.49:8090/962042070$LR•IPV4•42『线路38』 -河北卫视,http://139.155.89.87:1000/962042070$LR•IPV4•42『线路39』 -河北卫视,http://101.34.236.223:1112/962042070$LR•IPV4•42『线路40』 -河北卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225750/index.m3u8$LR•IPV4•42『线路41』 -河北卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226774/index.m3u8$LR•IPV4•42『线路42』 -河南卫视,http://222.90.21.30:9901/hls/31/index.m3u8$LR•IPV4•46『线路1』 -河南卫视,http://207.56.13.146:81/cdnlive/haws.m3u8$LR•IPV4•46『线路2』 -河南卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hawshd$LR•IPV4•46『线路3』 -河南卫视,http://173.208.212.130:8181/720p/haws.m3u8$LR•IPV4•46『线路4』 -河南卫视,http://36.40.237.49:9999/tsfile/live/0139_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路5』 -河南卫视,http://112.123.243.37:50085/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路6』 -河南卫视,http://36.136.38.87:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路7』 -河南卫视,http://153.0.171.163:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路8』 -河南卫视,http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•46『线路9』 +贵州卫视,http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•26『线路2』 +贵州卫视,http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•26『线路3』 +贵州卫视,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001184/index.m3u8?streamid=091bd59ea031989839c23459bb8cc9d4&streamkey=02BjlnRKVk4w1OimLNBUheOcwPFu2B6oL1pyXGnUypEwAWXSi5pA2M8vAAQNdTDwVOBg3wflpOJH2qUejFLrTdJs5UqkOuOhX0oeeOuZCXNP6xGvpxjLkvkGHVF&token=1775846394-f40678590315c3a3-0-795d5d8e9ef7cc7d142de1b17bf1df44$LR•IPV4•26『线路4』 +贵州卫视,http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路5』 +贵州卫视,http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•26『线路6』 +贵州卫视,http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•26『线路7』 +贵州卫视,http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•26『线路8』 +贵州卫视,http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•26『线路9』 +贵州卫视,https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•26『线路10』 +贵州卫视,https://httop.top/ysp-贵州卫视$LR•IPV4•26『线路11』 +贵州卫视,http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路12』 +贵州卫视,http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•26『线路13』 +贵州卫视,http://60.10.139.113:8801/hls/36/index.m3u8$LR•IPV4•26『线路14』 +贵州卫视,http://207.56.13.146:81/cdnlive/gzws.m3u8$LR•IPV4•26『线路15』 +贵州卫视,http://192.151.150.154/live/gzwshd.m3u8$LR•IPV4•26『线路16』 +贵州卫视,http://204.12.221.218:8181/3m1080p/gzws.m3u8$LR•IPV4•26『线路17』 +贵州卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025843&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路18』 +贵州卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000003169&livemode=1&stbId=yu&mode=1&$LR•IPV4•26『线路19』 +贵州卫视,http://111.29.9.44:6610/000000001000/5000000004000025843/index.m3u8?channel-id=bestzb&Contentid=5000000004000025843&livemode=1&stbId=3$LR•IPV4•26『线路20』 +贵州卫视,http://111.29.9.33:6610/000000001000/1000000002000003169/index.m3u8?channel-id=bestzb&Contentid=1000000002000003169&livemode=1&stbId=3$LR•IPV4•26『线路21』 +贵州卫视,http://120.76.248.139/live/bfgd/4200000101.m3u8$LR•IPV4•26『线路22』 +贵州卫视,http://111.43.126.240:9003/hls/36/index.m3u8$LR•IPV4•26『线路23』 +贵州卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225793/index.m3u8$LR•IPV4•26『线路24』 +贵州卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226874/index.m3u8$LR•IPV4•26『线路25』 +贵州卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•26『线路26』 +河北卫视,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•41『线路1』 +河北卫视,http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•41『线路2』 +河北卫视,http://222.90.21.30:9901/hls/44/index.m3u8$LR•IPV4•41『线路3』 +河北卫视,http://173.208.212.130:8181/720p/hews.m3u8$LR•IPV4•41『线路4』 +河北卫视,http://36.40.237.49:9999/tsfile/live/0138_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•41『线路5』 +河北卫视,http://36.136.38.87:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路6』 +河北卫视,http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路7』 +河北卫视,http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•41『线路8』 +河北卫视,http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•41『线路9』 +河北卫视,http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•41『线路10』 +河北卫视,http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•41『线路11』 +河北卫视,https://iptv.catvod.com/catvod.php?id=hbws$LR•IPV4•41『线路12』 +河北卫视,https://httop.top/ysp-河北卫视$LR•IPV4•41『线路13』 +河北卫视,http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•41『线路14』 +河北卫视,http://60.10.139.113:8801/hls/16/index.m3u8$LR•IPV4•41『线路15』 +河北卫视,http://207.56.13.146:81/cdnlive/hews.m3u8$LR•IPV4•41『线路16』 +河北卫视,http://192.151.150.154/live/hewshd.m3u8$LR•IPV4•41『线路17』 +河北卫视,http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•41『线路18』 +河北卫视,http://101.6.130.52:1234/962042070$LR•IPV4•41『线路19』 +河北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040016&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路20』 +河北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000017118&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路21』 +河北卫视,http://111.29.9.37:6610/000000001000/1000000002000017118/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•41『线路22』 +河北卫视,http://111.29.9.33:6610/000000001000/1000000002000017118/index.m3u8?channel-id=bestzb&Contentid=1000000002000017118&livemode=1&stbId=3$LR•IPV4•41『线路23』 +河北卫视,http://120.76.248.139/live/bfgd/4200000108.m3u8$LR•IPV4•41『线路24』 +河北卫视,https://live.chinacert.cftest5.cn/cnmg/live/962042070$LR•IPV4•41『线路25』 +河北卫视,http://m.061899.xyz/mg/hbws$LR•IPV4•41『线路26』 +河北卫视,http://fn.gcl.de5.net:5908/gsh950428/962042070$LR•IPV4•41『线路27』 +河北卫视,http://wfenf.x3322.net:7788/962042070$LR•IPV4•41『线路28』 +河北卫视,http://106.5.175.159:1234/962042070$LR•IPV4•41『线路29』 +河北卫视,http://36.104.221.222:7788/962042070$LR•IPV4•41『线路30』 +河北卫视,http://115.58.151.196:1234/962042070$LR•IPV4•41『线路31』 +河北卫视,http://182.61.15.163:80/962042070$LR•IPV4•41『线路32』 +河北卫视,http://121.23.132.14:7788/962042070$LR•IPV4•41『线路33』 +河北卫视,http://120.4.126.153:1234/962042070$LR•IPV4•41『线路34』 +河北卫视,http://111.43.126.240:9003/hls/40/index.m3u8$LR•IPV4•41『线路35』 +河北卫视,http://47.119.24.76:59093/962042070$LR•IPV4•41『线路36』 +河北卫视,http://222.134.19.49:8090/962042070$LR•IPV4•41『线路37』 +河北卫视,http://139.155.89.87:1000/962042070$LR•IPV4•41『线路38』 +河北卫视,http://101.34.236.223:1112/962042070$LR•IPV4•41『线路39』 +河北卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225750/index.m3u8$LR•IPV4•41『线路40』 +河北卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226774/index.m3u8$LR•IPV4•41『线路41』 +河南卫视,http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•46『线路1』 +河南卫视,http://222.90.21.30:9901/hls/31/index.m3u8$LR•IPV4•46『线路2』 +河南卫视,http://207.56.13.146:81/cdnlive/haws.m3u8$LR•IPV4•46『线路3』 +河南卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hawshd$LR•IPV4•46『线路4』 +河南卫视,http://173.208.212.130:8181/720p/haws.m3u8$LR•IPV4•46『线路5』 +河南卫视,http://36.40.237.49:9999/tsfile/live/0139_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路6』 +河南卫视,http://112.123.243.37:50085/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路7』 +河南卫视,http://36.136.38.87:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路8』 +河南卫视,http://153.0.171.163:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路9』 河南卫视,http://tvcdn.stream3.hndt.com/tv/65c4a6d5017e1000b2b6ea2500000000_transios/playlist.m3u8?wsSecret=6260de8a657b9690378b0de17073af85&wsTime=1782713258$LR•IPV4•46『线路10』 -河南卫视,http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•46『线路11』 -河南卫视,http://60.10.139.113:8801/hls/32/index.m3u8$LR•IPV4•46『线路12』 -河南卫视,http://1.94.31.214/php/hntv.php?id=hnws#http://lxajh.top/tv/hn.php?id=hnws$LR•IPV4•46『线路13』 -河南卫视,http://192.151.150.154/live/hawshd.m3u8$LR•IPV4•46『线路14』 -河南卫视,http://204.12.221.218:8181/3m1080p/haws.m3u8$LR•IPV4•46『线路15』 -河南卫视,http://101.6.130.52:1234/790187291$LR•IPV4•46『线路16』 -河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000017925&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路17』 -河南卫视,http://1.94.31.214/php/hntv.php?id=hnws$LR•IPV4•46『线路18』 -河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031119&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路19』 -河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7304224304099543804&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路20』 -河南卫视,http://111.29.9.33:6610/000000001000/5000000011000031119/index.m3u8?channel-id=bestzb&Contentid=5000000011000031119&livemode=1&stbId=3$LR•IPV4•46『线路21』 -河南卫视,http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•46『线路22』 -河南卫视,http://23.237.228.134/live6/henan.m3u8$LR•IPV4•46『线路23』 -河南卫视,http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•46『线路24』 -河南卫视,https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•46『线路25』 -河南卫视,https://httop.top/ysp-河南卫视$LR•IPV4•46『线路26』 -河南卫视,http://120.76.248.139/live/bfgd/4200000339.m3u8$LR•IPV4•46『线路27』 -河南卫视,https://live.chinacert.cftest5.cn/cnmg/live/790187291$LR•IPV4•46『线路28』 -河南卫视,http://m.061899.xyz/mg/hnws$LR•IPV4•46『线路29』 -河南卫视,http://fn.gcl.de5.net:5908/gsh950428/790187291$LR•IPV4•46『线路30』 -河南卫视,http://wfenf.x3322.net:7788/790187291$LR•IPV4•46『线路31』 -河南卫视,http://106.5.175.159:1234/790187291$LR•IPV4•46『线路32』 -河南卫视,http://36.104.221.222:7788/790187291$LR•IPV4•46『线路33』 -河南卫视,http://115.58.151.196:1234/790187291$LR•IPV4•46『线路34』 -河南卫视,http://182.61.15.163:80/790187291$LR•IPV4•46『线路35』 -河南卫视,http://121.23.132.14:7788/790187291$LR•IPV4•46『线路36』 -河南卫视,http://120.4.126.153:1234/790187291$LR•IPV4•46『线路37』 -河南卫视,http://111.43.126.240:9003/hls/29/index.m3u8$LR•IPV4•46『线路38』 -河南卫视,http://47.119.24.76:59093/790187291$LR•IPV4•46『线路39』 -河南卫视,http://222.134.19.49:8090/790187291$LR•IPV4•46『线路40』 -河南卫视,http://rihou.cc:555/tv/[mg]河南卫视$LR•IPV4•46『线路41』 -河南卫视,http://139.155.89.87:1000/790187291$LR•IPV4•46『线路42』 -河南卫视,http://101.34.236.223:1112/790187291$LR•IPV4•46『线路43』 -河南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227198/index.m3u8$LR•IPV4•46『线路44』 -河南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225767/index.m3u8$LR•IPV4•46『线路45』 -河南卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226791/index.m3u8$LR•IPV4•46『线路46』 +河南卫视,http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•46『线路11』 +河南卫视,http://23.237.228.134/live6/henan.m3u8$LR•IPV4•46『线路12』 +河南卫视,http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•46『线路13』 +河南卫视,https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•46『线路14』 +河南卫视,https://httop.top/ysp-河南卫视$LR•IPV4•46『线路15』 +河南卫视,http://60.10.139.113:8801/hls/32/index.m3u8$LR•IPV4•46『线路16』 +河南卫视,http://1.94.31.214/php/hntv.php?id=hnws#http://lxajh.top/tv/hn.php?id=hnws$LR•IPV4•46『线路17』 +河南卫视,http://192.151.150.154/live/hawshd.m3u8$LR•IPV4•46『线路18』 +河南卫视,http://204.12.221.218:8181/3m1080p/haws.m3u8$LR•IPV4•46『线路19』 +河南卫视,http://101.6.130.52:1234/790187291$LR•IPV4•46『线路20』 +河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000017925&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路21』 +河南卫视,http://1.94.31.214/php/hntv.php?id=hnws$LR•IPV4•46『线路22』 +河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031119&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路23』 +河南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7304224304099543804&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路24』 +河南卫视,http://111.29.9.33:6610/000000001000/5000000011000031119/index.m3u8?channel-id=bestzb&Contentid=5000000011000031119&livemode=1&stbId=3$LR•IPV4•46『线路25』 +河南卫视,http://120.76.248.139/live/bfgd/4200000339.m3u8$LR•IPV4•46『线路26』 +河南卫视,https://live.chinacert.cftest5.cn/cnmg/live/790187291$LR•IPV4•46『线路27』 +河南卫视,http://m.061899.xyz/mg/hnws$LR•IPV4•46『线路28』 +河南卫视,http://fn.gcl.de5.net:5908/gsh950428/790187291$LR•IPV4•46『线路29』 +河南卫视,http://wfenf.x3322.net:7788/790187291$LR•IPV4•46『线路30』 +河南卫视,http://106.5.175.159:1234/790187291$LR•IPV4•46『线路31』 +河南卫视,http://36.104.221.222:7788/790187291$LR•IPV4•46『线路32』 +河南卫视,http://115.58.151.196:1234/790187291$LR•IPV4•46『线路33』 +河南卫视,http://182.61.15.163:80/790187291$LR•IPV4•46『线路34』 +河南卫视,http://121.23.132.14:7788/790187291$LR•IPV4•46『线路35』 +河南卫视,http://120.4.126.153:1234/790187291$LR•IPV4•46『线路36』 +河南卫视,http://111.43.126.240:9003/hls/29/index.m3u8$LR•IPV4•46『线路37』 +河南卫视,http://47.119.24.76:59093/790187291$LR•IPV4•46『线路38』 +河南卫视,http://222.134.19.49:8090/790187291$LR•IPV4•46『线路39』 +河南卫视,http://rihou.cc:555/tv/[mg]河南卫视$LR•IPV4•46『线路40』 +河南卫视,http://139.155.89.87:1000/790187291$LR•IPV4•46『线路41』 +河南卫视,http://101.34.236.223:1112/790187291$LR•IPV4•46『线路42』 +河南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227198/index.m3u8$LR•IPV4•46『线路43』 +河南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225767/index.m3u8$LR•IPV4•46『线路44』 +河南卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226791/index.m3u8$LR•IPV4•46『线路45』 +河南卫视,http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•46『线路46』 黑龙江卫视,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•29『线路1』 -黑龙江卫视,http://120.198.95.220:9901/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•29『线路2』 -黑龙江卫视,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•29『线路3』 -黑龙江卫视,http://153.0.171.163:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路4』 -黑龙江卫视,http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•29『线路5』 -黑龙江卫视,http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•29『线路6』 -黑龙江卫视,http://60.10.139.113:8801/hls/27/index.m3u8$LR•IPV4•29『线路7』 -黑龙江卫视,http://207.56.13.146:81/cdnlive/hljws.m3u8$LR•IPV4•29『线路8』 -黑龙江卫视,http://192.151.150.154/live/hljwshd.m3u8$LR•IPV4•29『线路9』 -黑龙江卫视,http://204.12.221.218:8181/3m1080p/hljws.m3u8$LR•IPV4•29『线路10』 -黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025203&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路11』 -黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001925&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路12』 -黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路13』 -黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009082&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路14』 -黑龙江卫视,https://idclive.hljtv.com:4430/live/hljws_own.m3u8$LR•IPV4•29『线路15』 -黑龙江卫视,http://111.29.9.33:6610/000000001000/1000000001000001925/index.m3u8?channel-id=bestzb&Contentid=1000000001000001925&livemode=1&stbId=3$LR•IPV4•29『线路16』 -黑龙江卫视,http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•29『线路17』 -黑龙江卫视,http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•29『线路18』 -黑龙江卫视,http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•29『线路19』 -黑龙江卫视,http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•29『线路20』 -黑龙江卫视,https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•29『线路21』 -黑龙江卫视,https://httop.top/ysp-黑龙江卫视$LR•IPV4•29『线路22』 -黑龙江卫视,http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•29『线路23』 +黑龙江卫视,http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•29『线路2』 +黑龙江卫视,http://120.198.95.220:9901/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•29『线路3』 +黑龙江卫视,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•29『线路4』 +黑龙江卫视,http://153.0.171.163:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•29『线路5』 +黑龙江卫视,http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•29『线路6』 +黑龙江卫视,http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•29『线路7』 +黑龙江卫视,http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•29『线路8』 +黑龙江卫视,http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•29『线路9』 +黑龙江卫视,https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•29『线路10』 +黑龙江卫视,https://httop.top/ysp-黑龙江卫视$LR•IPV4•29『线路11』 +黑龙江卫视,http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•29『线路12』 +黑龙江卫视,http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•29『线路13』 +黑龙江卫视,http://60.10.139.113:8801/hls/27/index.m3u8$LR•IPV4•29『线路14』 +黑龙江卫视,http://207.56.13.146:81/cdnlive/hljws.m3u8$LR•IPV4•29『线路15』 +黑龙江卫视,http://192.151.150.154/live/hljwshd.m3u8$LR•IPV4•29『线路16』 +黑龙江卫视,http://204.12.221.218:8181/3m1080p/hljws.m3u8$LR•IPV4•29『线路17』 +黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000025203&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路18』 +黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001925&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路19』 +黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000031107&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路20』 +黑龙江卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000009082&livemode=1&stbId=yu&mode=1&$LR•IPV4•29『线路21』 +黑龙江卫视,https://idclive.hljtv.com:4430/live/hljws_own.m3u8$LR•IPV4•29『线路22』 +黑龙江卫视,http://111.29.9.33:6610/000000001000/1000000001000001925/index.m3u8?channel-id=bestzb&Contentid=1000000001000001925&livemode=1&stbId=3$LR•IPV4•29『线路23』 黑龙江卫视,http://120.76.248.139/live/bfgd/4200000095.m3u8$LR•IPV4•29『线路24』 黑龙江卫视,http://m.061899.xyz/mg/hljws$LR•IPV4•29『线路25』 黑龙江卫视,http://111.43.126.240:9003/hls/89/index.m3u8$LR•IPV4•29『线路26』 @@ -1864,120 +1865,120 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 黑龙江卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225802/index.m3u8$LR•IPV4•29『线路28』 黑龙江卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227288/index.m3u8$LR•IPV4•29『线路29』 湖北卫视,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•46『线路1』 -湖北卫视,http://120.198.95.220:9901/tsfile/live/1053_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路2』 -湖北卫视,http://153.0.171.163:85/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路3』 -湖北卫视,http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路4』 -湖北卫视,http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•46『线路5』 -湖北卫视,http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•46『线路6』 -湖北卫视,http://60.10.139.113:8801/hls/29/index.m3u8$LR•IPV4•46『线路7』 -湖北卫视,http://207.56.13.146:81/cdnlive/hbws.m3u8$LR•IPV4•46『线路8』 -湖北卫视,http://192.151.150.154/live/hbwshd.m3u8$LR•IPV4•46『线路9』 -湖北卫视,http://204.12.221.218:8181/3m1080p/hbws.m3u8$LR•IPV4•46『线路10』 -湖北卫视,http://101.6.130.52:1234/947472496$LR•IPV4•46『线路11』 -湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014954&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路12』 -湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000022140&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路13』 -湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000010355&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 -湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024621&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路15』 -湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265023&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路16』 -湖北卫视,http://111.29.9.33:6610/000000001000/1000000001000010355/index.m3u8?channel-id=bestzb&Contentid=1000000001000010355&livemode=1&stbId=3$LR•IPV4•46『线路17』 -湖北卫视,http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•46『线路18』 -湖北卫视,http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•46『线路19』 -湖北卫视,http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•46『线路20』 -湖北卫视,http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•46『线路21』 -湖北卫视,http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•46『线路22』 -湖北卫视,https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•46『线路23』 -湖北卫视,https://httop.top/ysp-湖北卫视$LR•IPV4•46『线路24』 -湖北卫视,http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•46『线路25』 -湖北卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•46『线路26』 -湖北卫视,http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•46『线路27』 -湖北卫视,http://120.76.248.139/live/bfgd/4200000102.m3u8$LR•IPV4•46『线路28』 -湖北卫视,https://live.chinacert.cftest5.cn/cnmg/live/947472496$LR•IPV4•46『线路29』 -湖北卫视,http://fn.gcl.de5.net:5908/gsh950428/947472496$LR•IPV4•46『线路30』 -湖北卫视,http://wfenf.x3322.net:7788/947472496$LR•IPV4•46『线路31』 -湖北卫视,http://106.5.175.159:1234/947472496$LR•IPV4•46『线路32』 -湖北卫视,http://36.104.221.222:7788/947472496$LR•IPV4•46『线路33』 -湖北卫视,http://115.58.151.196:1234/947472496$LR•IPV4•46『线路34』 -湖北卫视,http://182.61.15.163:80/947472496$LR•IPV4•46『线路35』 -湖北卫视,http://121.23.132.14:7788/947472496$LR•IPV4•46『线路36』 -湖北卫视,http://120.4.126.153:1234/947472496$LR•IPV4•46『线路37』 -湖北卫视,http://111.43.126.240:9003/hls/38/index.m3u8$LR•IPV4•46『线路38』 -湖北卫视,http://47.119.24.76:59093/947472496$LR•IPV4•46『线路39』 -湖北卫视,http://222.134.19.49:8090/947472496$LR•IPV4•46『线路40』 -湖北卫视,http://rihou.cc:555/tv/[mg]湖北卫视$LR•IPV4•46『线路41』 -湖北卫视,http://139.155.89.87:1000/947472496$LR•IPV4•46『线路42』 -湖北卫视,http://101.34.236.223:1112/947472496$LR•IPV4•46『线路43』 -湖北卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226206/index.m3u8$LR•IPV4•46『线路44』 -湖北卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225760/index.m3u8$LR•IPV4•46『线路45』 -湖北卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227230/index.m3u8$LR•IPV4•46『线路46』 +湖北卫视,http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•46『线路2』 +湖北卫视,http://120.198.95.220:9901/tsfile/live/1053_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路3』 +湖北卫视,http://153.0.171.163:85/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路4』 +湖北卫视,http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 +湖北卫视,http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•46『线路6』 +湖北卫视,http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•46『线路7』 +湖北卫视,http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•46『线路8』 +湖北卫视,http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•46『线路9』 +湖北卫视,http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•46『线路10』 +湖北卫视,https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•46『线路11』 +湖北卫视,https://httop.top/ysp-湖北卫视$LR•IPV4•46『线路12』 +湖北卫视,http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•46『线路13』 +湖北卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•46『线路14』 +湖北卫视,http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•46『线路15』 +湖北卫视,http://60.10.139.113:8801/hls/29/index.m3u8$LR•IPV4•46『线路16』 +湖北卫视,http://207.56.13.146:81/cdnlive/hbws.m3u8$LR•IPV4•46『线路17』 +湖北卫视,http://192.151.150.154/live/hbwshd.m3u8$LR•IPV4•46『线路18』 +湖北卫视,http://204.12.221.218:8181/3m1080p/hbws.m3u8$LR•IPV4•46『线路19』 +湖北卫视,http://101.6.130.52:1234/947472496$LR•IPV4•46『线路20』 +湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000014954&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路21』 +湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000022140&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路22』 +湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000010355&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路23』 +湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000024621&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路24』 +湖北卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265023&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路25』 +湖北卫视,http://111.29.9.33:6610/000000001000/1000000001000010355/index.m3u8?channel-id=bestzb&Contentid=1000000001000010355&livemode=1&stbId=3$LR•IPV4•46『线路26』 +湖北卫视,http://120.76.248.139/live/bfgd/4200000102.m3u8$LR•IPV4•46『线路27』 +湖北卫视,https://live.chinacert.cftest5.cn/cnmg/live/947472496$LR•IPV4•46『线路28』 +湖北卫视,http://fn.gcl.de5.net:5908/gsh950428/947472496$LR•IPV4•46『线路29』 +湖北卫视,http://wfenf.x3322.net:7788/947472496$LR•IPV4•46『线路30』 +湖北卫视,http://106.5.175.159:1234/947472496$LR•IPV4•46『线路31』 +湖北卫视,http://36.104.221.222:7788/947472496$LR•IPV4•46『线路32』 +湖北卫视,http://115.58.151.196:1234/947472496$LR•IPV4•46『线路33』 +湖北卫视,http://182.61.15.163:80/947472496$LR•IPV4•46『线路34』 +湖北卫视,http://121.23.132.14:7788/947472496$LR•IPV4•46『线路35』 +湖北卫视,http://120.4.126.153:1234/947472496$LR•IPV4•46『线路36』 +湖北卫视,http://111.43.126.240:9003/hls/38/index.m3u8$LR•IPV4•46『线路37』 +湖北卫视,http://47.119.24.76:59093/947472496$LR•IPV4•46『线路38』 +湖北卫视,http://222.134.19.49:8090/947472496$LR•IPV4•46『线路39』 +湖北卫视,http://rihou.cc:555/tv/[mg]湖北卫视$LR•IPV4•46『线路40』 +湖北卫视,http://139.155.89.87:1000/947472496$LR•IPV4•46『线路41』 +湖北卫视,http://101.34.236.223:1112/947472496$LR•IPV4•46『线路42』 +湖北卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226206/index.m3u8$LR•IPV4•46『线路43』 +湖北卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225760/index.m3u8$LR•IPV4•46『线路44』 +湖北卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227230/index.m3u8$LR•IPV4•46『线路45』 +湖北卫视,http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•46『线路46』 江西卫视,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•46『线路1』 -江西卫视,http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路2』 -江西卫视,http://120.198.95.220:9901/tsfile/live/1061_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路3』 -江西卫视,http://36.136.38.87:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路4』 -江西卫视,http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 -江西卫视,http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•46『线路6』 +江西卫视,http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•46『线路2』 +江西卫视,http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路3』 +江西卫视,http://120.198.95.220:9901/tsfile/live/1061_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路4』 +江西卫视,http://36.136.38.87:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 +江西卫视,http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 江西卫视,https://jsp-tv-live.jxtvcn.com.cn/live-jsp/tv_jxtv1.m3u8?t=1782690276&token=63790ba6-2f66-425e-934c-c0b23c9024ce&d=939da61343f04522a73cd2c09a09352f$LR•IPV4•46『线路7』 -江西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•46『线路8』 -江西卫视,http://60.10.139.113:8801/hls/37/index.m3u8$LR•IPV4•46『线路9』 -江西卫视,http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•46『线路10』 -江西卫视,http://192.151.150.154/live/jxwshd.m3u8$LR•IPV4•46『线路11』 -江西卫视,http://204.12.221.218:8181/3m1080p/jxws.m3u8$LR•IPV4•46『线路12』 -江西卫视,http://101.6.130.52:1234/783847495$LR•IPV4•46『线路13』 -江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011210&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 -江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000013731&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路15』 -江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000006000268001&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路16』 -江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000032154&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路17』 -江西卫视,http://111.29.9.39:6610/000000001000/5000000004000011210/index.m3u8?channel-id=bestzb&Contentid=5000000004000011210&livemode=1&stbId=3$LR•IPV4•46『线路18』 -江西卫视,http://111.29.9.33:6610/000000001000/1000000001000013731/index.m3u8?channel-id=bestzb&Contentid=1000000001000013731&livemode=1&stbId=3$LR•IPV4•46『线路19』 -江西卫视,http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•46『线路20』 -江西卫视,http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•46『线路21』 -江西卫视,http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•46『线路22』 -江西卫视,http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•46『线路23』 -江西卫视,https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•46『线路24』 -江西卫视,https://httop.top/ysp-江西卫视$LR•IPV4•46『线路25』 -江西卫视,http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•46『线路26』 -江西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•46『线路27』 -江西卫视,http://120.76.248.139/live/bfgd/4200000098.m3u8$LR•IPV4•46『线路28』 -江西卫视,https://live.chinacert.cftest5.cn/cnmg/live/783847495$LR•IPV4•46『线路29』 -江西卫视,http://m.061899.xyz/mg/jxws$LR•IPV4•46『线路30』 -江西卫视,http://fn.gcl.de5.net:5908/gsh950428/783847495$LR•IPV4•46『线路31』 -江西卫视,http://wfenf.x3322.net:7788/783847495$LR•IPV4•46『线路32』 -江西卫视,http://106.5.175.159:1234/783847495$LR•IPV4•46『线路33』 -江西卫视,http://36.104.221.222:7788/783847495$LR•IPV4•46『线路34』 -江西卫视,http://115.58.151.196:1234/783847495$LR•IPV4•46『线路35』 -江西卫视,http://182.61.15.163:80/783847495$LR•IPV4•46『线路36』 -江西卫视,http://121.23.132.14:7788/783847495$LR•IPV4•46『线路37』 -江西卫视,http://120.4.126.153:1234/783847495$LR•IPV4•46『线路38』 -江西卫视,http://111.43.126.240:9003/hls/33/index.m3u8$LR•IPV4•46『线路39』 -江西卫视,http://47.119.24.76:59093/783847495$LR•IPV4•46『线路40』 -江西卫视,http://222.134.19.49:8090/783847495$LR•IPV4•46『线路41』 -江西卫视,http://rihou.cc:555/tv/[mg]江西卫视$LR•IPV4•46『线路42』 -江西卫视,http://139.155.89.87:1000/783847495$LR•IPV4•46『线路43』 -江西卫视,http://101.34.236.223:1112/783847495$LR•IPV4•46『线路44』 -江西卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225764/index.m3u8$LR•IPV4•46『线路45』 -江西卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226788/index.m3u8$LR•IPV4•46『线路46』 +江西卫视,http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•46『线路8』 +江西卫视,http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•46『线路9』 +江西卫视,http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•46『线路10』 +江西卫视,http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•46『线路11』 +江西卫视,https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•46『线路12』 +江西卫视,https://httop.top/ysp-江西卫视$LR•IPV4•46『线路13』 +江西卫视,http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•46『线路14』 +江西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•46『线路15』 +江西卫视,http://60.10.139.113:8801/hls/37/index.m3u8$LR•IPV4•46『线路16』 +江西卫视,http://207.56.13.146:81/cdnlive/jxws.m3u8$LR•IPV4•46『线路17』 +江西卫视,http://192.151.150.154/live/jxwshd.m3u8$LR•IPV4•46『线路18』 +江西卫视,http://204.12.221.218:8181/3m1080p/jxws.m3u8$LR•IPV4•46『线路19』 +江西卫视,http://101.6.130.52:1234/783847495$LR•IPV4•46『线路20』 +江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011210&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路21』 +江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000013731&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路22』 +江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000006000268001&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路23』 +江西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000032154&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路24』 +江西卫视,http://111.29.9.39:6610/000000001000/5000000004000011210/index.m3u8?channel-id=bestzb&Contentid=5000000004000011210&livemode=1&stbId=3$LR•IPV4•46『线路25』 +江西卫视,http://111.29.9.33:6610/000000001000/1000000001000013731/index.m3u8?channel-id=bestzb&Contentid=1000000001000013731&livemode=1&stbId=3$LR•IPV4•46『线路26』 +江西卫视,http://120.76.248.139/live/bfgd/4200000098.m3u8$LR•IPV4•46『线路27』 +江西卫视,https://live.chinacert.cftest5.cn/cnmg/live/783847495$LR•IPV4•46『线路28』 +江西卫视,http://m.061899.xyz/mg/jxws$LR•IPV4•46『线路29』 +江西卫视,http://fn.gcl.de5.net:5908/gsh950428/783847495$LR•IPV4•46『线路30』 +江西卫视,http://wfenf.x3322.net:7788/783847495$LR•IPV4•46『线路31』 +江西卫视,http://106.5.175.159:1234/783847495$LR•IPV4•46『线路32』 +江西卫视,http://36.104.221.222:7788/783847495$LR•IPV4•46『线路33』 +江西卫视,http://115.58.151.196:1234/783847495$LR•IPV4•46『线路34』 +江西卫视,http://182.61.15.163:80/783847495$LR•IPV4•46『线路35』 +江西卫视,http://121.23.132.14:7788/783847495$LR•IPV4•46『线路36』 +江西卫视,http://120.4.126.153:1234/783847495$LR•IPV4•46『线路37』 +江西卫视,http://111.43.126.240:9003/hls/33/index.m3u8$LR•IPV4•46『线路38』 +江西卫视,http://47.119.24.76:59093/783847495$LR•IPV4•46『线路39』 +江西卫视,http://222.134.19.49:8090/783847495$LR•IPV4•46『线路40』 +江西卫视,http://rihou.cc:555/tv/[mg]江西卫视$LR•IPV4•46『线路41』 +江西卫视,http://139.155.89.87:1000/783847495$LR•IPV4•46『线路42』 +江西卫视,http://101.34.236.223:1112/783847495$LR•IPV4•46『线路43』 +江西卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225764/index.m3u8$LR•IPV4•46『线路44』 +江西卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226788/index.m3u8$LR•IPV4•46『线路45』 +江西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•46『线路46』 吉林卫视,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•41『线路1』 -吉林卫视,http://111.8.224.6:9999/tsfile/live/1032_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路2』 -吉林卫视,http://36.40.237.49:9999/tsfile/live/0116_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•41『线路3』 -吉林卫视,http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•41『线路4』 -吉林卫视,http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路5』 -吉林卫视,http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路6』 -吉林卫视,http://cssbyd.imwork.net:8082/hls/41/index.m3u8$LR•IPV4•41『线路7』 -吉林卫视,http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•41『线路8』 -吉林卫视,http://60.10.139.113:8801/hls/38/index.m3u8$LR•IPV4•41『线路9』 -吉林卫视,http://207.56.13.146:81/cdnlive/jlws.m3u8$LR•IPV4•41『线路10』 -吉林卫视,http://192.151.150.154/live/jlwshd.m3u8$LR•IPV4•41『线路11』 -吉林卫视,http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•41『线路12』 -吉林卫视,http://101.6.130.52:1234/947472500$LR•IPV4•41『线路13』 -吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031117&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路14』 -吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6042486520432105075&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路15』 -吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040013&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路16』 -吉林卫视,http://111.29.9.33:6610/000000001000/5000000011000031117/index.m3u8?channel-id=bestzb&Contentid=5000000011000031117&livemode=1&stbId=3$LR•IPV4•41『线路17』 -吉林卫视,http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•41『线路18』 -吉林卫视,http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•41『线路19』 -吉林卫视,http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•41『线路20』 -吉林卫视,http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•41『线路21』 -吉林卫视,https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•41『线路22』 -吉林卫视,https://httop.top/ysp-吉林卫视$LR•IPV4•41『线路23』 +吉林卫视,http://cssbyd.imwork.net:8082/hls/41/index.m3u8$LR•IPV4•41『线路2』 +吉林卫视,http://111.8.224.6:9999/tsfile/live/1032_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路3』 +吉林卫视,http://36.40.237.49:9999/tsfile/live/0116_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•41『线路4』 +吉林卫视,http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•41『线路5』 +吉林卫视,http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路6』 +吉林卫视,http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•41『线路7』 +吉林卫视,http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•41『线路8』 +吉林卫视,http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•41『线路9』 +吉林卫视,http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•41『线路10』 +吉林卫视,http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•41『线路11』 +吉林卫视,https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•41『线路12』 +吉林卫视,https://httop.top/ysp-吉林卫视$LR•IPV4•41『线路13』 +吉林卫视,http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•41『线路14』 +吉林卫视,http://60.10.139.113:8801/hls/38/index.m3u8$LR•IPV4•41『线路15』 +吉林卫视,http://207.56.13.146:81/cdnlive/jlws.m3u8$LR•IPV4•41『线路16』 +吉林卫视,http://192.151.150.154/live/jlwshd.m3u8$LR•IPV4•41『线路17』 +吉林卫视,http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•41『线路18』 +吉林卫视,http://101.6.130.52:1234/947472500$LR•IPV4•41『线路19』 +吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031117&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路20』 +吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6042486520432105075&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路21』 +吉林卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040013&livemode=1&stbId=yu&mode=1&$LR•IPV4•41『线路22』 +吉林卫视,http://111.29.9.33:6610/000000001000/5000000011000031117/index.m3u8?channel-id=bestzb&Contentid=5000000011000031117&livemode=1&stbId=3$LR•IPV4•41『线路23』 吉林卫视,http://120.76.248.139/live/bfgd/4200000097.m3u8$LR•IPV4•41『线路24』 吉林卫视,https://live.chinacert.cftest5.cn/cnmg/live/947472500$LR•IPV4•41『线路25』 吉林卫视,http://m.061899.xyz/mg/jlws$LR•IPV4•41『线路26』 @@ -1997,59 +1998,59 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 吉林卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225792/index.m3u8$LR•IPV4•41『线路40』 吉林卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227310/index.m3u8$LR•IPV4•41『线路41』 内蒙古卫视,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•28『线路1』 -内蒙古卫视,http://107.150.60.122/live/nmgws.m3u8$LR•IPV4•28『线路2』 -内蒙古卫视,http://111.8.224.6:9999/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路3』 -内蒙古卫视,http://36.40.237.49:9999/tsfile/live/0109_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•28『线路4』 -内蒙古卫视,http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路5』 -内蒙古卫视,http://58.56.162.102:4466/newlive/live/hls/40/live.m3u8$LR•IPV4•28『线路6』 -内蒙古卫视,http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路7』 -内蒙古卫视,http://204.12.221.218:8181/3m1080p/nmgws.m3u8$LR•IPV4•28『线路8』 -内蒙古卫视,http://112.27.235.94:8000/hls/49/index.m3u8$LR•IPV4•28『线路9』 -内蒙古卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•28『线路10』 -内蒙古卫视,http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•28『线路11』 -内蒙古卫视,http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•28『线路12』 -内蒙古卫视,http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•28『线路13』 -内蒙古卫视,http://60.10.139.113:8801/hls/55/index.m3u8$LR•IPV4•28『线路14』 -内蒙古卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.217:5140$LR•IPV4•28『线路15』 -内蒙古卫视,http://207.56.13.146:81/cdnlive/nmgws.m3u8$LR•IPV4•28『线路16』 -内蒙古卫视,http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•28『线路17』 -内蒙古卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000014080&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路18』 -内蒙古卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7331079758781182663&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路19』 -内蒙古卫视,http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•28『线路20』 -内蒙古卫视,https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•28『线路21』 -内蒙古卫视,https://httop.top/ysp-内蒙古卫视$LR•IPV4•28『线路22』 -内蒙古卫视,http://120.76.248.139/live/bfgd/4200000110.m3u8$LR•IPV4•28『线路23』 -内蒙古卫视,http://m.061899.xyz/mg/nmgws$LR•IPV4•28『线路24』 -内蒙古卫视,http://111.43.126.240:9003/hls/47/index.m3u8$LR•IPV4•28『线路25』 -内蒙古卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227182/index.m3u8$LR•IPV4•28『线路26』 -内蒙古卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225786/index.m3u8$LR•IPV4•28『线路27』 -内蒙古卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226886/index.m3u8$LR•IPV4•28『线路28』 +内蒙古卫视,http://112.27.235.94:8000/hls/49/index.m3u8$LR•IPV4•28『线路2』 +内蒙古卫视,http://107.150.60.122/live/nmgws.m3u8$LR•IPV4•28『线路3』 +内蒙古卫视,http://111.8.224.6:9999/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路4』 +内蒙古卫视,http://36.40.237.49:9999/tsfile/live/0109_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•28『线路5』 +内蒙古卫视,http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路6』 +内蒙古卫视,http://58.56.162.102:4466/newlive/live/hls/40/live.m3u8$LR•IPV4•28『线路7』 +内蒙古卫视,http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路8』 +内蒙古卫视,http://204.12.221.218:8181/3m1080p/nmgws.m3u8$LR•IPV4•28『线路9』 +内蒙古卫视,http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•28『线路10』 +内蒙古卫视,https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•28『线路11』 +内蒙古卫视,https://httop.top/ysp-内蒙古卫视$LR•IPV4•28『线路12』 +内蒙古卫视,http://60.10.139.113:8801/hls/55/index.m3u8$LR•IPV4•28『线路13』 +内蒙古卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.217:5140$LR•IPV4•28『线路14』 +内蒙古卫视,http://207.56.13.146:81/cdnlive/nmgws.m3u8$LR•IPV4•28『线路15』 +内蒙古卫视,http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•28『线路16』 +内蒙古卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000014080&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路17』 +内蒙古卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7331079758781182663&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路18』 +内蒙古卫视,http://120.76.248.139/live/bfgd/4200000110.m3u8$LR•IPV4•28『线路19』 +内蒙古卫视,http://m.061899.xyz/mg/nmgws$LR•IPV4•28『线路20』 +内蒙古卫视,http://111.43.126.240:9003/hls/47/index.m3u8$LR•IPV4•28『线路21』 +内蒙古卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227182/index.m3u8$LR•IPV4•28『线路22』 +内蒙古卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225786/index.m3u8$LR•IPV4•28『线路23』 +内蒙古卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226886/index.m3u8$LR•IPV4•28『线路24』 +内蒙古卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•28『线路25』 +内蒙古卫视,http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•28『线路26』 +内蒙古卫视,http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•28『线路27』 +内蒙古卫视,http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•28『线路28』 辽宁卫视,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•46『线路1』 -辽宁卫视,http://112.123.243.37:50085/tsfile/live/0126_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路2』 -辽宁卫视,http://120.198.95.220:9901/tsfile/live/1051_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路3』 -辽宁卫视,http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•46『线路4』 -辽宁卫视,http://36.136.38.87:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路5』 -辽宁卫视,http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 -辽宁卫视,http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•46『线路7』 -辽宁卫视,http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•46『线路8』 -辽宁卫视,http://60.10.139.113:8801/hls/28/index.m3u8$LR•IPV4•46『线路9』 -辽宁卫视,http://192.151.150.154/live/lnwshd.m3u8$LR•IPV4•46『线路10』 -辽宁卫视,http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•46『线路11』 -辽宁卫视,http://101.6.130.52:1234/630291707$LR•IPV4•46『线路12』 -辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011671&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路13』 -辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001945&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路14』 -辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000024033&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路15』 -辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000008940&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路16』 -辽宁卫视,http://111.29.9.33:6610/000000001000/1000000001000001945/index.m3u8?channel-id=bestzb&Contentid=1000000001000001945&livemode=1&stbId=3$LR•IPV4•46『线路17』 -辽宁卫视,http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•46『线路18』 -辽宁卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•46『线路19』 -辽宁卫视,http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•46『线路20』 -辽宁卫视,http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•46『线路21』 -辽宁卫视,http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•46『线路22』 -辽宁卫视,http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•46『线路23』 -辽宁卫视,https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•46『线路24』 -辽宁卫视,https://httop.top/ysp-辽宁卫视$LR•IPV4•46『线路25』 -辽宁卫视,http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•46『线路26』 +辽宁卫视,http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•46『线路2』 +辽宁卫视,http://112.123.243.37:50085/tsfile/live/0126_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•46『线路3』 +辽宁卫视,http://120.198.95.220:9901/tsfile/live/1051_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•46『线路4』 +辽宁卫视,http://207.56.13.146:81/cdnlive/lnws.m3u8$LR•IPV4•46『线路5』 +辽宁卫视,http://36.136.38.87:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路6』 +辽宁卫视,http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•46『线路7』 +辽宁卫视,http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•46『线路8』 +辽宁卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•46『线路9』 +辽宁卫视,http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•46『线路10』 +辽宁卫视,http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•46『线路11』 +辽宁卫视,http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•46『线路12』 +辽宁卫视,http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•46『线路13』 +辽宁卫视,https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•46『线路14』 +辽宁卫视,https://httop.top/ysp-辽宁卫视$LR•IPV4•46『线路15』 +辽宁卫视,http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•46『线路16』 +辽宁卫视,http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•46『线路17』 +辽宁卫视,http://60.10.139.113:8801/hls/28/index.m3u8$LR•IPV4•46『线路18』 +辽宁卫视,http://192.151.150.154/live/lnwshd.m3u8$LR•IPV4•46『线路19』 +辽宁卫视,http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•46『线路20』 +辽宁卫视,http://101.6.130.52:1234/630291707$LR•IPV4•46『线路21』 +辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000011671&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路22』 +辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000001945&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路23』 +辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000024033&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路24』 +辽宁卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000001000008940&livemode=1&stbId=yu&mode=1&$LR•IPV4•46『线路25』 +辽宁卫视,http://111.29.9.33:6610/000000001000/1000000001000001945/index.m3u8?channel-id=bestzb&Contentid=1000000001000001945&livemode=1&stbId=3$LR•IPV4•46『线路26』 辽宁卫视,http://120.76.248.139/live/bfgd/4200000141.m3u8$LR•IPV4•46『线路27』 辽宁卫视,http://120.76.248.139/live/bfgd/4200000185.m3u8$LR•IPV4•46『线路28』 辽宁卫视,http://120.76.248.139/live/bfgd/4200000058.m3u8$LR•IPV4•46『线路29』 @@ -2070,268 +2071,267 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 辽宁卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226201/index.m3u8$LR•IPV4•46『线路44』 辽宁卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225772/index.m3u8$LR•IPV4•46『线路45』 辽宁卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227242/index.m3u8$LR•IPV4•46『线路46』 -宁夏卫视,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•38『线路1』 -宁夏卫视,http://198.204.228.26/live/nxws.m3u8$LR•IPV4•38『线路2』 -宁夏卫视,http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•38『线路3』 -宁夏卫视,http://58.56.162.102:4466/newlive/live/hls/43/live.m3u8$LR•IPV4•38『线路4』 -宁夏卫视,http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•38『线路5』 -宁夏卫视,http://207.56.13.146:81/cdnlive/nxws.m3u8$LR•IPV4•38『线路6』 -宁夏卫视,http://cssbyd.imwork.net:8082/hls/45/index.m3u8$LR•IPV4•38『线路7』 -宁夏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•38『线路8』 -宁夏卫视,http://60.10.139.113:8801/hls/57/index.m3u8$LR•IPV4•38『线路9』 -宁夏卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.230:5140$LR•IPV4•38『线路10』 -宁夏卫视,http://192.151.150.154/live/nxws.m3u8$LR•IPV4•38『线路11』 -宁夏卫视,http://204.12.221.218:8181/3m1080p/nxws.m3u8$LR•IPV4•38『线路12』 -宁夏卫视,http://101.6.130.52:1234/738910535$LR•IPV4•38『线路13』 -宁夏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000031451&livemode=1&stbId=yu&mode=1&$LR•IPV4•38『线路14』 -宁夏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040022&livemode=1&stbId=yu&mode=1&$LR•IPV4•38『线路15』 -宁夏卫视,http://111.29.9.33:6610/000000001000/1000000002000031451/index.m3u8?channel-id=bestzb&Contentid=1000000002000031451&livemode=1&stbId=3$LR•IPV4•38『线路16』 -宁夏卫视,http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•38『线路17』 -宁夏卫视,https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•38『线路18』 -宁夏卫视,https://httop.top/ysp-宁夏卫视$LR•IPV4•38『线路19』 -宁夏卫视,http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•38『线路20』 -宁夏卫视,https://live.chinacert.cftest5.cn/cnmg/live/738910535$LR•IPV4•38『线路21』 -宁夏卫视,http://fn.gcl.de5.net:5908/gsh950428/738910535$LR•IPV4•38『线路22』 -宁夏卫视,http://wfenf.x3322.net:7788/738910535$LR•IPV4•38『线路23』 -宁夏卫视,http://106.5.175.159:1234/738910535$LR•IPV4•38『线路24』 -宁夏卫视,http://36.104.221.222:7788/738910535$LR•IPV4•38『线路25』 -宁夏卫视,http://115.58.151.196:1234/738910535$LR•IPV4•38『线路26』 -宁夏卫视,http://182.61.15.163:80/738910535$LR•IPV4•38『线路27』 -宁夏卫视,http://121.23.132.14:7788/738910535$LR•IPV4•38『线路28』 -宁夏卫视,http://120.4.126.153:1234/738910535$LR•IPV4•38『线路29』 -宁夏卫视,http://111.43.126.240:9003/hls/51/index.m3u8$LR•IPV4•38『线路30』 -宁夏卫视,http://47.119.24.76:59093/738910535$LR•IPV4•38『线路31』 -宁夏卫视,http://222.134.19.49:8090/738910535$LR•IPV4•38『线路32』 -宁夏卫视,http://139.155.89.87:1000/738910535$LR•IPV4•38『线路33』 -宁夏卫视,http://101.34.236.223:1112/738910535$LR•IPV4•38『线路34』 -宁夏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227145/index.m3u8$LR•IPV4•38『线路35』 -宁夏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227184/index.m3u8$LR•IPV4•38『线路36』 -宁夏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225748/index.m3u8$LR•IPV4•38『线路37』 -宁夏卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226804/index.m3u8$LR•IPV4•38『线路38』 -青海卫视,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•36『线路1』 -青海卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•36『线路2』 -青海卫视,http://111.8.224.6:9999/tsfile/live/1030_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路3』 -青海卫视,http://192.151.150.154/live/qhws.m3u8$LR•IPV4•36『线路4』 -青海卫视,http://207.56.13.146:81/cdnlive/qhws.m3u8$LR•IPV4•36『线路5』 -青海卫视,http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•36『线路6』 -青海卫视,http://204.12.221.218:8181/3m1080p/qhws.m3u8$LR•IPV4•36『线路7』 -青海卫视,http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•36『线路8』 -青海卫视,http://60.10.139.113:8801/hls/56/index.m3u8$LR•IPV4•36『线路9』 -青海卫视,http://101.6.130.52:1234/947472506$LR•IPV4•36『线路10』 -青海卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040015&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路11』 -青海卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000013359&livemode=1&stbId=yu&mode=1&$LR•IPV4•36『线路12』 -青海卫视,http://111.29.9.33:6610/000000001000/1000000002000013359/index.m3u8?channel-id=bestzb&Contentid=1000000002000013359&livemode=1&stbId=3$LR•IPV4•36『线路13』 -青海卫视,http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•36『线路14』 -青海卫视,http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•36『线路15』 -青海卫视,https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•36『线路16』 -青海卫视,https://httop.top/ysp-青海卫视$LR•IPV4•36『线路17』 -青海卫视,http://120.76.248.139/live/bfgd/4200000111.m3u8$LR•IPV4•36『线路18』 -青海卫视,https://live.chinacert.cftest5.cn/cnmg/live/947472506$LR•IPV4•36『线路19』 -青海卫视,http://m.061899.xyz/mg/qhws$LR•IPV4•36『线路20』 -青海卫视,http://fn.gcl.de5.net:5908/gsh950428/947472506$LR•IPV4•36『线路21』 -青海卫视,http://wfenf.x3322.net:7788/947472506$LR•IPV4•36『线路22』 -青海卫视,http://106.5.175.159:1234/947472506$LR•IPV4•36『线路23』 -青海卫视,http://36.104.221.222:7788/947472506$LR•IPV4•36『线路24』 -青海卫视,http://115.58.151.196:1234/947472506$LR•IPV4•36『线路25』 -青海卫视,http://182.61.15.163:80/947472506$LR•IPV4•36『线路26』 -青海卫视,http://121.23.132.14:7788/947472506$LR•IPV4•36『线路27』 -青海卫视,http://120.4.126.153:1234/947472506$LR•IPV4•36『线路28』 -青海卫视,http://111.43.126.240:9003/hls/43/index.m3u8$LR•IPV4•36『线路29』 -青海卫视,http://47.119.24.76:59093/947472506$LR•IPV4•36『线路30』 -青海卫视,http://222.134.19.49:8090/947472506$LR•IPV4•36『线路31』 -青海卫视,http://139.155.89.87:1000/947472506$LR•IPV4•36『线路32』 -青海卫视,http://101.34.236.223:1112/947472506$LR•IPV4•36『线路33』 -青海卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227179/index.m3u8$LR•IPV4•36『线路34』 -青海卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225794/index.m3u8$LR•IPV4•36『线路35』 -青海卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226889/index.m3u8$LR•IPV4•36『线路36』 +宁夏卫视,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•37『线路1』 +宁夏卫视,http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•37『线路2』 +宁夏卫视,http://198.204.228.26/live/nxws.m3u8$LR•IPV4•37『线路3』 +宁夏卫视,http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•37『线路4』 +宁夏卫视,http://58.56.162.102:4466/newlive/live/hls/43/live.m3u8$LR•IPV4•37『线路5』 +宁夏卫视,http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路6』 +宁夏卫视,http://207.56.13.146:81/cdnlive/nxws.m3u8$LR•IPV4•37『线路7』 +宁夏卫视,http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•37『线路8』 +宁夏卫视,https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•37『线路9』 +宁夏卫视,https://httop.top/ysp-宁夏卫视$LR•IPV4•37『线路10』 +宁夏卫视,http://60.10.139.113:8801/hls/57/index.m3u8$LR•IPV4•37『线路11』 +宁夏卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.230:5140$LR•IPV4•37『线路12』 +宁夏卫视,http://192.151.150.154/live/nxws.m3u8$LR•IPV4•37『线路13』 +宁夏卫视,http://204.12.221.218:8181/3m1080p/nxws.m3u8$LR•IPV4•37『线路14』 +宁夏卫视,http://101.6.130.52:1234/738910535$LR•IPV4•37『线路15』 +宁夏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000031451&livemode=1&stbId=yu&mode=1&$LR•IPV4•37『线路16』 +宁夏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040022&livemode=1&stbId=yu&mode=1&$LR•IPV4•37『线路17』 +宁夏卫视,http://111.29.9.33:6610/000000001000/1000000002000031451/index.m3u8?channel-id=bestzb&Contentid=1000000002000031451&livemode=1&stbId=3$LR•IPV4•37『线路18』 +宁夏卫视,https://live.chinacert.cftest5.cn/cnmg/live/738910535$LR•IPV4•37『线路19』 +宁夏卫视,http://fn.gcl.de5.net:5908/gsh950428/738910535$LR•IPV4•37『线路20』 +宁夏卫视,http://wfenf.x3322.net:7788/738910535$LR•IPV4•37『线路21』 +宁夏卫视,http://106.5.175.159:1234/738910535$LR•IPV4•37『线路22』 +宁夏卫视,http://36.104.221.222:7788/738910535$LR•IPV4•37『线路23』 +宁夏卫视,http://115.58.151.196:1234/738910535$LR•IPV4•37『线路24』 +宁夏卫视,http://182.61.15.163:80/738910535$LR•IPV4•37『线路25』 +宁夏卫视,http://121.23.132.14:7788/738910535$LR•IPV4•37『线路26』 +宁夏卫视,http://120.4.126.153:1234/738910535$LR•IPV4•37『线路27』 +宁夏卫视,http://111.43.126.240:9003/hls/51/index.m3u8$LR•IPV4•37『线路28』 +宁夏卫视,http://47.119.24.76:59093/738910535$LR•IPV4•37『线路29』 +宁夏卫视,http://222.134.19.49:8090/738910535$LR•IPV4•37『线路30』 +宁夏卫视,http://139.155.89.87:1000/738910535$LR•IPV4•37『线路31』 +宁夏卫视,http://101.34.236.223:1112/738910535$LR•IPV4•37『线路32』 +宁夏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227145/index.m3u8$LR•IPV4•37『线路33』 +宁夏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227184/index.m3u8$LR•IPV4•37『线路34』 +宁夏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225748/index.m3u8$LR•IPV4•37『线路35』 +宁夏卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226804/index.m3u8$LR•IPV4•37『线路36』 +宁夏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•37『线路37』 +青海卫视,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•37『线路1』 +青海卫视,http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•37『线路2』 +青海卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•37『线路3』 +青海卫视,http://111.8.224.6:9999/tsfile/live/1030_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路4』 +青海卫视,http://192.151.150.154/live/qhws.m3u8$LR•IPV4•37『线路5』 +青海卫视,http://207.56.13.146:81/cdnlive/qhws.m3u8$LR•IPV4•37『线路6』 +青海卫视,http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路7』 +青海卫视,http://204.12.221.218:8181/3m1080p/qhws.m3u8$LR•IPV4•37『线路8』 +青海卫视,http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•37『线路9』 +青海卫视,http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•37『线路10』 +青海卫视,https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•37『线路11』 +青海卫视,https://httop.top/ysp-青海卫视$LR•IPV4•37『线路12』 +青海卫视,http://60.10.139.113:8801/hls/56/index.m3u8$LR•IPV4•37『线路13』 +青海卫视,http://101.6.130.52:1234/947472506$LR•IPV4•37『线路14』 +青海卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040015&livemode=1&stbId=yu&mode=1&$LR•IPV4•37『线路15』 +青海卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000013359&livemode=1&stbId=yu&mode=1&$LR•IPV4•37『线路16』 +青海卫视,http://111.29.9.33:6610/000000001000/1000000002000013359/index.m3u8?channel-id=bestzb&Contentid=1000000002000013359&livemode=1&stbId=3$LR•IPV4•37『线路17』 +青海卫视,http://120.76.248.139/live/bfgd/4200000111.m3u8$LR•IPV4•37『线路18』 +青海卫视,https://live.chinacert.cftest5.cn/cnmg/live/947472506$LR•IPV4•37『线路19』 +青海卫视,http://m.061899.xyz/mg/qhws$LR•IPV4•37『线路20』 +青海卫视,http://fn.gcl.de5.net:5908/gsh950428/947472506$LR•IPV4•37『线路21』 +青海卫视,http://wfenf.x3322.net:7788/947472506$LR•IPV4•37『线路22』 +青海卫视,http://106.5.175.159:1234/947472506$LR•IPV4•37『线路23』 +青海卫视,http://36.104.221.222:7788/947472506$LR•IPV4•37『线路24』 +青海卫视,http://115.58.151.196:1234/947472506$LR•IPV4•37『线路25』 +青海卫视,http://182.61.15.163:80/947472506$LR•IPV4•37『线路26』 +青海卫视,http://121.23.132.14:7788/947472506$LR•IPV4•37『线路27』 +青海卫视,http://120.4.126.153:1234/947472506$LR•IPV4•37『线路28』 +青海卫视,http://111.43.126.240:9003/hls/43/index.m3u8$LR•IPV4•37『线路29』 +青海卫视,http://47.119.24.76:59093/947472506$LR•IPV4•37『线路30』 +青海卫视,http://222.134.19.49:8090/947472506$LR•IPV4•37『线路31』 +青海卫视,http://139.155.89.87:1000/947472506$LR•IPV4•37『线路32』 +青海卫视,http://101.34.236.223:1112/947472506$LR•IPV4•37『线路33』 +青海卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227179/index.m3u8$LR•IPV4•37『线路34』 +青海卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225794/index.m3u8$LR•IPV4•37『线路35』 +青海卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226889/index.m3u8$LR•IPV4•37『线路36』 +青海卫视,http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•37『线路37』 山东卫视,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•35『线路1』 -山东卫视,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•35『线路2』 -山东卫视,http://173.208.212.130:8181/720p/sdws.m3u8$LR•IPV4•35『线路3』 -山东卫视,http://36.40.237.49:9999/tsfile/live/0131_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•35『线路4』 -山东卫视,http://36.136.38.87:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路5』 -山东卫视,http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•35『线路6』 -山东卫视,http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•35『线路7』 -山东卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•35『线路8』 -山东卫视,http://60.10.139.113:8801/hls/25/index.m3u8$LR•IPV4•35『线路9』 -山东卫视,http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•35『线路10』 -山东卫视,http://192.151.150.154/live/sdwshd.m3u8$LR•IPV4•35『线路11』 -山东卫视,http://204.12.221.218:8181/3m1080p/sdws.m3u8$LR•IPV4•35『线路12』 -山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000020424&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路13』 -山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000012807&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路14』 -山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000016568&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路15』 -山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000027763&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路16』 -山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7347081113971056899&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路17』 -山东卫视,http://111.29.9.37:6610/000000001000/1000000001000012807/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•35『线路18』 -山东卫视,http://111.29.9.33:6610/000000001000/1000000001000012807/index.m3u8?channel-id=bestzb&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•35『线路19』 -山东卫视,http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•35『线路20』 -山东卫视,https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•35『线路21』 -山东卫视,https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•35『线路22』 -山东卫视,http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•35『线路23』 -山东卫视,http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•35『线路24』 -山东卫视,http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•35『线路25』 -山东卫视,https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•35『线路26』 -山东卫视,https://httop.top/ysp-山东卫视$LR•IPV4•35『线路27』 -山东卫视,http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•35『线路28』 -山东卫视,http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路29』 -山东卫视,http://120.76.248.139/live/bfgd/4200000099.m3u8$LR•IPV4•35『线路30』 -山东卫视,http://m.061899.xyz/mg/sdws$LR•IPV4•35『线路31』 -山东卫视,http://rihou.cc:555/tv/[mg]山东卫视$LR•IPV4•35『线路32』 -山东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•35『线路33』 -山东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225771/index.m3u8$LR•IPV4•35『线路34』 -山东卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227312/index.m3u8$LR•IPV4•35『线路35』 +山东卫视,http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•35『线路2』 +山东卫视,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•35『线路3』 +山东卫视,http://173.208.212.130:8181/720p/sdws.m3u8$LR•IPV4•35『线路4』 +山东卫视,http://36.40.237.49:9999/tsfile/live/0131_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•35『线路5』 +山东卫视,http://36.136.38.87:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路6』 +山东卫视,http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•35『线路7』 +山东卫视,https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•35『线路8』 +山东卫视,https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•35『线路9』 +山东卫视,http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•35『线路10』 +山东卫视,http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•35『线路11』 +山东卫视,http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•35『线路12』 +山东卫视,https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•35『线路13』 +山东卫视,https://httop.top/ysp-山东卫视$LR•IPV4•35『线路14』 +山东卫视,http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•35『线路15』 +山东卫视,http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路16』 +山东卫视,http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•35『线路17』 +山东卫视,http://60.10.139.113:8801/hls/25/index.m3u8$LR•IPV4•35『线路18』 +山东卫视,http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•35『线路19』 +山东卫视,http://192.151.150.154/live/sdwshd.m3u8$LR•IPV4•35『线路20』 +山东卫视,http://204.12.221.218:8181/3m1080p/sdws.m3u8$LR•IPV4•35『线路21』 +山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000020424&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路22』 +山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000012807&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路23』 +山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000016568&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路24』 +山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000010000027763&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路25』 +山东卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=7347081113971056899&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路26』 +山东卫视,http://111.29.9.37:6610/000000001000/1000000001000012807/index.m3u8?channel-id=ystenlive&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•35『线路27』 +山东卫视,http://111.29.9.33:6610/000000001000/1000000001000012807/index.m3u8?channel-id=bestzb&Contentid=1000000001000012807&livemode=1&stbId=3$LR•IPV4•35『线路28』 +山东卫视,http://120.76.248.139/live/bfgd/4200000099.m3u8$LR•IPV4•35『线路29』 +山东卫视,http://m.061899.xyz/mg/sdws$LR•IPV4•35『线路30』 +山东卫视,http://rihou.cc:555/tv/[mg]山东卫视$LR•IPV4•35『线路31』 +山东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•35『线路32』 +山东卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225771/index.m3u8$LR•IPV4•35『线路33』 +山东卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227312/index.m3u8$LR•IPV4•35『线路34』 +山东卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•35『线路35』 天津卫视,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•34『线路1』 -天津卫视,http://222.90.21.30:9901/hls/43/index.m3u8$LR•IPV4•34『线路2』 -天津卫视,http://198.204.228.26/live/tjwshd.m3u8$LR•IPV4•34『线路3』 -天津卫视,http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•34『线路4』 -天津卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•34『线路5』 -天津卫视,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•34『线路6』 -天津卫视,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路7』 -天津卫视,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•34『线路8』 -天津卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•34『线路9』 -天津卫视,http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•34『线路10』 -天津卫视,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•34『线路11』 -天津卫视,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•34『线路12』 -天津卫视,http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•34『线路13』 -天津卫视,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•34『线路14』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路15』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路16』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路17』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路18』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路19』 -天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路20』 -天津卫视,http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•34『线路21』 -天津卫视,http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•34『线路22』 -天津卫视,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•34『线路23』 -天津卫视,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•34『线路24』 -天津卫视,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•34『线路25』 -天津卫视,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•34『线路26』 -天津卫视,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•34『线路27』 -天津卫视,https://httop.top/ysp-天津卫视$LR•IPV4•34『线路28』 -天津卫视,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•34『线路29』 -天津卫视,http://m.061899.xyz/mg/tjws$LR•IPV4•34『线路30』 -天津卫视,http://111.43.126.240:9003/hls/31/index.m3u8$LR•IPV4•34『线路31』 -天津卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226204/index.m3u8$LR•IPV4•34『线路32』 -天津卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225765/index.m3u8$LR•IPV4•34『线路33』 -天津卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227306/index.m3u8$LR•IPV4•34『线路34』 +天津卫视,http://123.129.70.178:9901/tsfile/live/0135_1.m3u8$LR•IPV4•34『线路2』 +天津卫视,http://222.90.21.30:9901/hls/43/index.m3u8$LR•IPV4•34『线路3』 +天津卫视,http://198.204.228.26/live/tjwshd.m3u8$LR•IPV4•34『线路4』 +天津卫视,http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•34『线路5』 +天津卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•34『线路6』 +天津卫视,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•34『线路7』 +天津卫视,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•34『线路8』 +天津卫视,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•34『线路9』 +天津卫视,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•34『线路10』 +天津卫视,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•34『线路11』 +天津卫视,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•34『线路12』 +天津卫视,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•34『线路13』 +天津卫视,https://httop.top/ysp-天津卫视$LR•IPV4•34『线路14』 +天津卫视,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•34『线路15』 +天津卫视,http://60.10.139.113:8801/hls/23/index.m3u8$LR•IPV4•34『线路16』 +天津卫视,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•34『线路17』 +天津卫视,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•34『线路18』 +天津卫视,http://173.208.212.130:8181/720p/tjws.m3u8$LR•IPV4•34『线路19』 +天津卫视,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•34『线路20』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000001000030788&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路21』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006827&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路22』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000001000000831&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路23』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000001000003475&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路24』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000005000265026&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路25』 +天津卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•34『线路26』 +天津卫视,http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•34『线路27』 +天津卫视,http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•34『线路28』 +天津卫视,http://m.061899.xyz/mg/tjws$LR•IPV4•34『线路29』 +天津卫视,http://111.43.126.240:9003/hls/31/index.m3u8$LR•IPV4•34『线路30』 +天津卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226204/index.m3u8$LR•IPV4•34『线路31』 +天津卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225765/index.m3u8$LR•IPV4•34『线路32』 +天津卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227306/index.m3u8$LR•IPV4•34『线路33』 +天津卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•34『线路34』 海南卫视,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•35『线路1』 海南卫视,http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•35『线路2』 海南卫视,https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•35『线路3』 -海南卫视,http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•35『线路4』 -海南卫视,http://nn.7x9d.cn/地方台8563/海南.php?id=hnws$LR•IPV4•35『线路5』 -海南卫视,http://207.56.13.146:81/cdnlive/lyws.m3u8$LR•IPV4•35『线路6』 -海南卫视,http://204.12.221.218:8181/3m1080p/lyws.m3u8$LR•IPV4•35『线路7』 -海南卫视,http://101.6.130.52:1234/947472502$LR•IPV4•35『线路8』 -海南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006211&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路9』 -海南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7899627377857656087&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路10』 -海南卫视,http://111.29.9.33:6610/000000001000/5000000004000006211/index.m3u8?channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=3$LR•IPV4•35『线路11』 -海南卫视,http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•35『线路12』 -海南卫视,http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•35『线路13』 -海南卫视,https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•35『线路14』 -海南卫视,https://httop.top/ysp-海南卫视$LR•IPV4•35『线路15』 -海南卫视,https://live.chinacert.cftest5.cn/cnmg/live/947472502$LR•IPV4•35『线路16』 -海南卫视,http://m.061899.xyz/mg/hinws$LR•IPV4•35『线路17』 -海南卫视,http://fn.gcl.de5.net:5908/gsh950428/947472502$LR•IPV4•35『线路18』 -海南卫视,http://wfenf.x3322.net:7788/947472502$LR•IPV4•35『线路19』 -海南卫视,http://106.5.175.159:1234/947472502$LR•IPV4•35『线路20』 -海南卫视,http://36.104.221.222:7788/947472502$LR•IPV4•35『线路21』 -海南卫视,http://115.58.151.196:1234/947472502$LR•IPV4•35『线路22』 -海南卫视,http://182.61.15.163:80/947472502$LR•IPV4•35『线路23』 -海南卫视,http://121.23.132.14:7788/947472502$LR•IPV4•35『线路24』 -海南卫视,http://120.4.126.153:1234/947472502$LR•IPV4•35『线路25』 -海南卫视,http://111.43.126.240:9003/hls/37/index.m3u8$LR•IPV4•35『线路26』 -海南卫视,http://47.119.24.76:59093/947472502$LR•IPV4•35『线路27』 -海南卫视,http://222.134.19.49:8090/947472502$LR•IPV4•35『线路28』 -海南卫视,http://rihou.cc:555/tv/[mg]海南卫视$LR•IPV4•35『线路29』 -海南卫视,http://139.155.89.87:1000/947472502$LR•IPV4•35『线路30』 -海南卫视,http://101.34.236.223:1112/947472502$LR•IPV4•35『线路31』 -海南卫视,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225769/index.m3u8?$LR•IPV4•35『线路32』 -海南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227201/index.m3u8$LR•IPV4•35『线路33』 -海南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225769/index.m3u8$LR•IPV4•35『线路34』 -海南卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226801/index.m3u8$LR•IPV4•35『线路35』 -新疆卫视,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•28『线路1』 -新疆卫视,http://107.150.60.122/live/xjws.m3u8$LR•IPV4•28『线路2』 -新疆卫视,http://198.204.228.26/live/xjws.m3u8$LR•IPV4•28『线路3』 -新疆卫视,http://207.56.13.146:81/cdnlive/xjws.m3u8$LR•IPV4•28『线路4』 -新疆卫视,http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路5』 -新疆卫视,http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•28『线路6』 -新疆卫视,http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•28『线路7』 -新疆卫视,http://183.11.239.36:808/hls/65/index.m3u8$LR•IPV4•28『线路8』 -新疆卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•28『线路9』 -新疆卫视,http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•28『线路10』 -新疆卫视,http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•28『线路11』 -新疆卫视,http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•28『线路12』 -新疆卫视,http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•28『线路13』 -新疆卫视,http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•28『线路14』 -新疆卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.220:5140$LR•IPV4•28『线路15』 -新疆卫视,http://192.151.150.154/live/xjws.m3u8$LR•IPV4•28『线路16』 -新疆卫视,http://204.12.221.218:8181/3m1080p/xjws.m3u8$LR•IPV4•28『线路17』 -新疆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040018&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路18』 -新疆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000029441&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路19』 -新疆卫视,http://111.29.9.33:6610/000000001000/1000000002000029441/index.m3u8?channel-id=bestzb&Contentid=1000000002000029441&livemode=1&stbId=3$LR•IPV4•28『线路20』 -新疆卫视,https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•28『线路21』 -新疆卫视,https://httop.top/ysp-新疆卫视$LR•IPV4•28『线路22』 -新疆卫视,http://120.76.248.139/live/bfgd/4200000150.m3u8$LR•IPV4•28『线路23』 -新疆卫视,http://m.061899.xyz/mg/xjws$LR•IPV4•28『线路24』 -新疆卫视,http://111.43.126.240:9003/hls/48/index.m3u8$LR•IPV4•28『线路25』 -新疆卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227136/index.m3u8$LR•IPV4•28『线路26』 -新疆卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225747/index.m3u8$LR•IPV4•28『线路27』 -新疆卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226893/index.m3u8$LR•IPV4•28『线路28』 +海南卫视,http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•35『线路4』 +海南卫视,http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•35『线路5』 +海南卫视,https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•35『线路6』 +海南卫视,https://httop.top/ysp-海南卫视$LR•IPV4•35『线路7』 +海南卫视,http://nn.7x9d.cn/地方台8563/海南.php?id=hnws$LR•IPV4•35『线路8』 +海南卫视,http://207.56.13.146:81/cdnlive/lyws.m3u8$LR•IPV4•35『线路9』 +海南卫视,http://204.12.221.218:8181/3m1080p/lyws.m3u8$LR•IPV4•35『线路10』 +海南卫视,http://101.6.130.52:1234/947472502$LR•IPV4•35『线路11』 +海南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000004000006211&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路12』 +海南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7899627377857656087&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路13』 +海南卫视,http://111.29.9.33:6610/000000001000/5000000004000006211/index.m3u8?channel-id=bestzb&Contentid=5000000004000006211&livemode=1&stbId=3$LR•IPV4•35『线路14』 +海南卫视,https://live.chinacert.cftest5.cn/cnmg/live/947472502$LR•IPV4•35『线路15』 +海南卫视,http://m.061899.xyz/mg/hinws$LR•IPV4•35『线路16』 +海南卫视,http://fn.gcl.de5.net:5908/gsh950428/947472502$LR•IPV4•35『线路17』 +海南卫视,http://wfenf.x3322.net:7788/947472502$LR•IPV4•35『线路18』 +海南卫视,http://106.5.175.159:1234/947472502$LR•IPV4•35『线路19』 +海南卫视,http://36.104.221.222:7788/947472502$LR•IPV4•35『线路20』 +海南卫视,http://115.58.151.196:1234/947472502$LR•IPV4•35『线路21』 +海南卫视,http://182.61.15.163:80/947472502$LR•IPV4•35『线路22』 +海南卫视,http://121.23.132.14:7788/947472502$LR•IPV4•35『线路23』 +海南卫视,http://120.4.126.153:1234/947472502$LR•IPV4•35『线路24』 +海南卫视,http://111.43.126.240:9003/hls/37/index.m3u8$LR•IPV4•35『线路25』 +海南卫视,http://47.119.24.76:59093/947472502$LR•IPV4•35『线路26』 +海南卫视,http://222.134.19.49:8090/947472502$LR•IPV4•35『线路27』 +海南卫视,http://rihou.cc:555/tv/[mg]海南卫视$LR•IPV4•35『线路28』 +海南卫视,http://139.155.89.87:1000/947472502$LR•IPV4•35『线路29』 +海南卫视,http://101.34.236.223:1112/947472502$LR•IPV4•35『线路30』 +海南卫视,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221225769/index.m3u8?$LR•IPV4•35『线路31』 +海南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227201/index.m3u8$LR•IPV4•35『线路32』 +海南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225769/index.m3u8$LR•IPV4•35『线路33』 +海南卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226801/index.m3u8$LR•IPV4•35『线路34』 +海南卫视,http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•35『线路35』 +新疆卫视,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•27『线路1』 +新疆卫视,http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•27『线路2』 +新疆卫视,http://107.150.60.122/live/xjws.m3u8$LR•IPV4•27『线路3』 +新疆卫视,http://198.204.228.26/live/xjws.m3u8$LR•IPV4•27『线路4』 +新疆卫视,http://207.56.13.146:81/cdnlive/xjws.m3u8$LR•IPV4•27『线路5』 +新疆卫视,http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路6』 +新疆卫视,http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•27『线路7』 +新疆卫视,https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•27『线路8』 +新疆卫视,https://httop.top/ysp-新疆卫视$LR•IPV4•27『线路9』 +新疆卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.220:5140$LR•IPV4•27『线路10』 +新疆卫视,http://192.151.150.154/live/xjws.m3u8$LR•IPV4•27『线路11』 +新疆卫视,http://204.12.221.218:8181/3m1080p/xjws.m3u8$LR•IPV4•27『线路12』 +新疆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040018&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路13』 +新疆卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000029441&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路14』 +新疆卫视,http://111.29.9.33:6610/000000001000/1000000002000029441/index.m3u8?channel-id=bestzb&Contentid=1000000002000029441&livemode=1&stbId=3$LR•IPV4•27『线路15』 +新疆卫视,http://120.76.248.139/live/bfgd/4200000150.m3u8$LR•IPV4•27『线路16』 +新疆卫视,http://m.061899.xyz/mg/xjws$LR•IPV4•27『线路17』 +新疆卫视,http://111.43.126.240:9003/hls/48/index.m3u8$LR•IPV4•27『线路18』 +新疆卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227136/index.m3u8$LR•IPV4•27『线路19』 +新疆卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225747/index.m3u8$LR•IPV4•27『线路20』 +新疆卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226893/index.m3u8$LR•IPV4•27『线路21』 +新疆卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•27『线路22』 +新疆卫视,http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•27『线路23』 +新疆卫视,http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•27『线路24』 +新疆卫视,http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•27『线路25』 +新疆卫视,http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•27『线路26』 +新疆卫视,http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•27『线路27』 云南卫视,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•28『线路1』 -云南卫视,http://207.56.13.146:81/cdnlive/ynws.m3u8$LR•IPV4•28『线路2』 -云南卫视,http://198.204.228.26/live/ynwshd.m3u8$LR•IPV4•28『线路3』 -云南卫视,http://107.150.60.122/live/ynwshd.m3u8$LR•IPV4•28『线路4』 -云南卫视,http://192.151.150.154/live/ynwshd.m3u8$LR•IPV4•28『线路5』 -云南卫视,http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路6』 -云南卫视,http://120.211.62.180:8000/hls/39/index.m3u8$LR•IPV4•28『线路7』 -云南卫视,http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路8』 -云南卫视,http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•28『线路9』 +云南卫视,http://112.27.235.94:8000/hls/40/index.m3u8$LR•IPV4•28『线路2』 +云南卫视,http://207.56.13.146:81/cdnlive/ynws.m3u8$LR•IPV4•28『线路3』 +云南卫视,http://198.204.228.26/live/ynwshd.m3u8$LR•IPV4•28『线路4』 +云南卫视,http://107.150.60.122/live/ynwshd.m3u8$LR•IPV4•28『线路5』 +云南卫视,http://192.151.150.154/live/ynwshd.m3u8$LR•IPV4•28『线路6』 +云南卫视,http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路7』 +云南卫视,http://120.211.62.180:8000/hls/39/index.m3u8$LR•IPV4•28『线路8』 +云南卫视,http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路9』 云南卫视,http://p2.ioioz.com/xgplayer.php?id=https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•28『线路10』 -云南卫视,https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•28『线路11』 -云南卫视,http://60.10.139.113:8801/hls/51/index.m3u8$LR•IPV4•28『线路12』 -云南卫视,http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•28『线路13』 -云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031120&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路14』 -云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040019&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路15』 -云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000024694&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路16』 -云南卫视,http://111.29.9.37:6610/000000001000/1000000002000024694/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•28『线路17』 -云南卫视,http://111.43.126.240:9003/hls/60/index.m3u8$LR•IPV4•28『线路18』 -云南卫视,http://111.29.9.33:6610/000000001000/1000000002000024694/index.m3u8?channel-id=bestzb&Contentid=1000000002000024694&livemode=1&stbId=3$LR•IPV4•28『线路19』 -云南卫视,http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•28『线路20』 -云南卫视,http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•28『线路21』 -云南卫视,https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•28『线路22』 -云南卫视,https://httop.top/ysp-云南卫视$LR•IPV4•28『线路23』 +云南卫视,http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•28『线路11』 +云南卫视,http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•28『线路12』 +云南卫视,https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•28『线路13』 +云南卫视,https://httop.top/ysp-云南卫视$LR•IPV4•28『线路14』 +云南卫视,https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•28『线路15』 +云南卫视,http://60.10.139.113:8801/hls/51/index.m3u8$LR•IPV4•28『线路16』 +云南卫视,http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•28『线路17』 +云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031120&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路18』 +云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040019&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路19』 +云南卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=1000000002000024694&livemode=1&stbId=yu&mode=1&$LR•IPV4•28『线路20』 +云南卫视,http://111.29.9.37:6610/000000001000/1000000002000024694/index.m3u8?stbId=3&livemode=1&IASHttpSessionId=OTT$LR•IPV4•28『线路21』 +云南卫视,http://111.43.126.240:9003/hls/60/index.m3u8$LR•IPV4•28『线路22』 +云南卫视,http://111.29.9.33:6610/000000001000/1000000002000024694/index.m3u8?channel-id=bestzb&Contentid=1000000002000024694&livemode=1&stbId=3$LR•IPV4•28『线路23』 云南卫视,http://120.76.248.139/live/bfgd/4200000482.m3u8$LR•IPV4•28『线路24』 云南卫视,http://111.43.126.240:9003/hls/44/index.m3u8$LR•IPV4•28『线路25』 云南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227195/index.m3u8$LR•IPV4•28『线路26』 云南卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225751/index.m3u8$LR•IPV4•28『线路27』 云南卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226816/index.m3u8$LR•IPV4•28『线路28』 西藏卫视,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•22『线路1』 -西藏卫视,http://107.150.60.122/live/xzws.m3u8$LR•IPV4•22『线路2』 -西藏卫视,http://222.90.21.30:9901/hls/90/index.m3u8$LR•IPV4•22『线路3』 -西藏卫视,http://183.11.239.36:808/hls/64/index.m3u8$LR•IPV4•22『线路4』 -西藏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•22『线路5』 -西藏卫视,http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•22『线路6』 -西藏卫视,http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•22『线路7』 -西藏卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.222:5140$LR•IPV4•22『线路8』 -西藏卫视,http://207.56.13.146:81/cdnlive/xzws.m3u8$LR•IPV4•22『线路9』 -西藏卫视,http://204.12.221.218:8181/3m1080p/xzws.m3u8$LR•IPV4•22『线路10』 -西藏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5381760837640571168&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路11』 -西藏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6603041244077933770&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路12』 -西藏卫视,https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•22『线路13』 -西藏卫视,http://120.76.248.139/live/bfgd/4200000489.m3u8$LR•IPV4•22『线路14』 -西藏卫视,http://120.76.248.139/live/bfgd/4200000121.m3u8$LR•IPV4•22『线路15』 -西藏卫视,http://m.061899.xyz/mg/xzws$LR•IPV4•22『线路16』 -西藏卫视,http://111.43.126.240:9003/hls/42/index.m3u8$LR•IPV4•22『线路17』 -西藏卫视,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226212/index.m3u8$LR•IPV4•22『线路18』 -西藏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227147/index.m3u8$LR•IPV4•22『线路19』 -西藏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226212/index.m3u8$LR•IPV4•22『线路20』 -西藏卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226896/index.m3u8$LR•IPV4•22『线路21』 -西藏卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227157/index.m3u8$LR•IPV4•22『线路22』 -海峡卫视,http://38.64.72.148:80/hls/modn/list/4009/chunklist0.m3u8$LR•IPV4•19『线路1』 -海峡卫视,http://101.6.130.52:1234/849119120$LR•IPV4•19『线路2』 -海峡卫视,http://8.138.7.223/tv/hxws.m3u8$LR•IPV4•19『线路3』 -海峡卫视,http://hlsbkmgsplive.miguvideo.com/migu/kailu/haixiaws/57/20230724/01.m3u8?msisdn=&Channel_ID=&ContentId=&HlsSubType=&HlsProfileId=&encrypt=$LR•IPV4•19『线路4』 -海峡卫视,http://43.251.226.89:8080/play/51.m3u8$LR•IPV4•19『线路5』 -海峡卫视,p3p://167.114.175.6:55331/63ec47390001586de42ffc1a7e1856a6$LR•IPV4•19『线路6』 +西藏卫视,http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•22『线路2』 +西藏卫视,http://107.150.60.122/live/xzws.m3u8$LR•IPV4•22『线路3』 +西藏卫视,http://222.90.21.30:9901/hls/90/index.m3u8$LR•IPV4•22『线路4』 +西藏卫视,https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•22『线路5』 +西藏卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.222:5140$LR•IPV4•22『线路6』 +西藏卫视,http://207.56.13.146:81/cdnlive/xzws.m3u8$LR•IPV4•22『线路7』 +西藏卫视,http://204.12.221.218:8181/3m1080p/xzws.m3u8$LR•IPV4•22『线路8』 +西藏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5381760837640571168&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路9』 +西藏卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=6603041244077933770&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路10』 +西藏卫视,http://120.76.248.139/live/bfgd/4200000489.m3u8$LR•IPV4•22『线路11』 +西藏卫视,http://120.76.248.139/live/bfgd/4200000121.m3u8$LR•IPV4•22『线路12』 +西藏卫视,http://m.061899.xyz/mg/xzws$LR•IPV4•22『线路13』 +西藏卫视,http://111.43.126.240:9003/hls/42/index.m3u8$LR•IPV4•22『线路14』 +西藏卫视,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226212/index.m3u8$LR•IPV4•22『线路15』 +西藏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227147/index.m3u8$LR•IPV4•22『线路16』 +西藏卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226212/index.m3u8$LR•IPV4•22『线路17』 +西藏卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226896/index.m3u8$LR•IPV4•22『线路18』 +西藏卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227157/index.m3u8$LR•IPV4•22『线路19』 +西藏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•22『线路20』 +西藏卫视,http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•22『线路21』 +西藏卫视,http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•22『线路22』 +海峡卫视,http://38.64.72.148:80/hls/modn/list/4009/playlist.m3u8$LR•IPV4•19『线路1』 +海峡卫视,http://43.251.226.89:8080/play/51.m3u8$LR•IPV4•19『线路2』 +海峡卫视,p3p://167.114.175.6:55331/63ec47390001586de42ffc1a7e1856a6$LR•IPV4•19『线路3』 +海峡卫视,http://101.6.130.52:1234/849119120$LR•IPV4•19『线路4』 +海峡卫视,http://8.138.7.223/tv/hxws.m3u8$LR•IPV4•19『线路5』 +海峡卫视,http://hlsbkmgsplive.miguvideo.com/migu/kailu/haixiaws/57/20230724/01.m3u8?msisdn=&Channel_ID=&ContentId=&HlsSubType=&HlsProfileId=&encrypt=$LR•IPV4•19『线路6』 海峡卫视,https://live.chinacert.cftest5.cn/cnmg/live/849119120$LR•IPV4•19『线路7』 海峡卫视,http://fn.gcl.de5.net:5908/gsh950428/849119120$LR•IPV4•19『线路8』 海峡卫视,http://wfenf.x3322.net:7788/849119120$LR•IPV4•19『线路9』 @@ -2345,55 +2345,55 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 海峡卫视,http://222.134.19.49:8090/849119120$LR•IPV4•19『线路17』 海峡卫视,http://139.155.89.87:1000/849119120$LR•IPV4•19『线路18』 海峡卫视,http://101.34.236.223:1112/849119120$LR•IPV4•19『线路19』 -兵团卫视,http://111.8.224.6:9999/tsfile/live/1020_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路1』 -兵团卫视,http://222.90.21.30:9901/hls/65/index.m3u8$LR•IPV4•35『线路2』 -兵团卫视,http://38.75.136.137:98/gslb/dsdqpub/btws.m3u8?auth=testpub$LR•IPV4•35『线路3』 -兵团卫视,http://198.204.228.26/live/btws.m3u8$LR•IPV4•35『线路4』 -兵团卫视,http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•35『线路5』 -兵团卫视,http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•35『线路6』 -兵团卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.221:5140$LR•IPV4•35『线路7』 -兵团卫视,http://192.151.150.154/live/btws.m3u8$LR•IPV4•35『线路8』 -兵团卫视,http://204.12.221.218:8181/3m1080p/btws.m3u8$LR•IPV4•35『线路9』 -兵团卫视,http://101.6.130.52:1234/956923145$LR•IPV4•35『线路10』 -兵团卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266005&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路11』 -兵团卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040020&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路12』 -兵团卫视,http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•35『线路13』 -兵团卫视,https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•35『线路14』 -兵团卫视,https://httop.top/ysp-兵团卫视$LR•IPV4•35『线路15』 -兵团卫视,https://live.chinacert.cftest5.cn/cnmg/live/956923145$LR•IPV4•35『线路16』 -兵团卫视,http://m.061899.xyz/mg/btws$LR•IPV4•35『线路17』 -兵团卫视,http://fn.gcl.de5.net:5908/gsh950428/956923145$LR•IPV4•35『线路18』 -兵团卫视,http://wfenf.x3322.net:7788/956923145$LR•IPV4•35『线路19』 -兵团卫视,http://106.5.175.159:1234/956923145$LR•IPV4•35『线路20』 -兵团卫视,http://36.104.221.222:7788/956923145$LR•IPV4•35『线路21』 -兵团卫视,http://115.58.151.196:1234/956923145$LR•IPV4•35『线路22』 -兵团卫视,http://182.61.15.163:80/956923145$LR•IPV4•35『线路23』 -兵团卫视,http://121.23.132.14:7788/956923145$LR•IPV4•35『线路24』 -兵团卫视,http://120.4.126.153:1234/956923145$LR•IPV4•35『线路25』 -兵团卫视,http://111.43.126.240:9003/hls/50/index.m3u8$LR•IPV4•35『线路26』 -兵团卫视,http://47.119.24.76:59093/956923145$LR•IPV4•35『线路27』 -兵团卫视,http://222.134.19.49:8090/956923145$LR•IPV4•35『线路28』 -兵团卫视,http://rihou.cc:555/tv/[mg]兵团卫视$LR•IPV4•35『线路29』 -兵团卫视,http://139.155.89.87:1000/956923145$LR•IPV4•35『线路30』 -兵团卫视,http://101.34.236.223:1112/956923145$LR•IPV4•35『线路31』 -兵团卫视,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226214/index.m3u8$LR•IPV4•35『线路32』 -兵团卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227155/index.m3u8$LR•IPV4•35『线路33』 -兵团卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226214/index.m3u8$LR•IPV4•35『线路34』 -兵团卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226859/index.m3u8$LR•IPV4•35『线路35』 +兵团卫视,http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•35『线路1』 +兵团卫视,http://111.8.224.6:9999/tsfile/live/1020_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路2』 +兵团卫视,http://222.90.21.30:9901/hls/65/index.m3u8$LR•IPV4•35『线路3』 +兵团卫视,http://38.75.136.137:98/gslb/dsdqpub/btws.m3u8?auth=testpub$LR•IPV4•35『线路4』 +兵团卫视,http://198.204.228.26/live/btws.m3u8$LR•IPV4•35『线路5』 +兵团卫视,http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•35『线路6』 +兵团卫视,https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•35『线路7』 +兵团卫视,https://httop.top/ysp-兵团卫视$LR•IPV4•35『线路8』 +兵团卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.221:5140$LR•IPV4•35『线路9』 +兵团卫视,http://192.151.150.154/live/btws.m3u8$LR•IPV4•35『线路10』 +兵团卫视,http://204.12.221.218:8181/3m1080p/btws.m3u8$LR•IPV4•35『线路11』 +兵团卫视,http://101.6.130.52:1234/956923145$LR•IPV4•35『线路12』 +兵团卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266005&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路13』 +兵团卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040020&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路14』 +兵团卫视,https://live.chinacert.cftest5.cn/cnmg/live/956923145$LR•IPV4•35『线路15』 +兵团卫视,http://m.061899.xyz/mg/btws$LR•IPV4•35『线路16』 +兵团卫视,http://fn.gcl.de5.net:5908/gsh950428/956923145$LR•IPV4•35『线路17』 +兵团卫视,http://wfenf.x3322.net:7788/956923145$LR•IPV4•35『线路18』 +兵团卫视,http://106.5.175.159:1234/956923145$LR•IPV4•35『线路19』 +兵团卫视,http://36.104.221.222:7788/956923145$LR•IPV4•35『线路20』 +兵团卫视,http://115.58.151.196:1234/956923145$LR•IPV4•35『线路21』 +兵团卫视,http://182.61.15.163:80/956923145$LR•IPV4•35『线路22』 +兵团卫视,http://121.23.132.14:7788/956923145$LR•IPV4•35『线路23』 +兵团卫视,http://120.4.126.153:1234/956923145$LR•IPV4•35『线路24』 +兵团卫视,http://111.43.126.240:9003/hls/50/index.m3u8$LR•IPV4•35『线路25』 +兵团卫视,http://47.119.24.76:59093/956923145$LR•IPV4•35『线路26』 +兵团卫视,http://222.134.19.49:8090/956923145$LR•IPV4•35『线路27』 +兵团卫视,http://rihou.cc:555/tv/[mg]兵团卫视$LR•IPV4•35『线路28』 +兵团卫视,http://139.155.89.87:1000/956923145$LR•IPV4•35『线路29』 +兵团卫视,http://101.34.236.223:1112/956923145$LR•IPV4•35『线路30』 +兵团卫视,http://39.134.24.162/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226214/index.m3u8$LR•IPV4•35『线路31』 +兵团卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227155/index.m3u8$LR•IPV4•35『线路32』 +兵团卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226214/index.m3u8$LR•IPV4•35『线路33』 +兵团卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226859/index.m3u8$LR•IPV4•35『线路34』 +兵团卫视,http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•35『线路35』 安多卫视,https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4•4『线路1』 安多卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000022124&livemode=1&stbId=yu&mode=1&$LR•IPV4•4『线路2』 安多卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226228/index.m3u8$LR•IPV4•4『线路3』 安多卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227160/index.m3u8$LR•IPV4•4『线路4』 康巴卫视,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•5『线路1』 -康巴卫视,http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•5『线路2』 -康巴卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266002&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路3』 -康巴卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226234/index.m3u8$LR•IPV4•5『线路4』 -康巴卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227111/index.m3u8$LR•IPV4•5『线路5』 +康巴卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266002&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路2』 +康巴卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226234/index.m3u8$LR•IPV4•5『线路3』 +康巴卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227111/index.m3u8$LR•IPV4•5『线路4』 +康巴卫视,http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•5『线路5』 农林卫视,http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•22『线路1』 -农林卫视,http://204.12.221.218:8181/3m1080p/snnl.m3u8$LR•IPV4•22『线路2』 -农林卫视,http://101.6.130.52:1234/956904896$LR•IPV4•22『线路3』 -农林卫视,http://8.138.7.223/%E3%80%90%E5%85%AC%E4%BC%97%E5%8F%B7%EF%BC%9A%E6%A6%B4%E8%8A%92%E7%94%B5%E8%A7%86%E3%80%91/%E5%86%9C%E6%9E%97%E5%8D%AB%E8%A7%86.m3u8$LR•IPV4•22『线路4』 -农林卫视,http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•22『线路5』 +农林卫视,http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•22『线路2』 +农林卫视,http://204.12.221.218:8181/3m1080p/snnl.m3u8$LR•IPV4•22『线路3』 +农林卫视,http://101.6.130.52:1234/956904896$LR•IPV4•22『线路4』 +农林卫视,http://8.138.7.223/%E3%80%90%E5%85%AC%E4%BC%97%E5%8F%B7%EF%BC%9A%E6%A6%B4%E8%8A%92%E7%94%B5%E8%A7%86%E3%80%91/%E5%86%9C%E6%9E%97%E5%8D%AB%E8%A7%86.m3u8$LR•IPV4•22『线路5』 农林卫视,https://live.chinacert.cftest5.cn/cnmg/live/956904896$LR•IPV4•22『线路6』 农林卫视,http://fn.gcl.de5.net:5908/gsh950428/956904896$LR•IPV4•22『线路7』 农林卫视,http://wfenf.x3322.net:7788/956904896$LR•IPV4•22『线路8』 @@ -2412,15 +2412,15 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 农林卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226229/index.m3u8$LR•IPV4•22『线路21』 农林卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227108/index.m3u8$LR•IPV4•22『线路22』 三沙卫视,https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•24『线路1』 -三沙卫视,https://srs.ssws.tv/video/sstv-10/index.m3u8#http://nn.7x9d.cn/地方台8563/海南.php?id=ssws$LR•IPV4•24『线路2』 -三沙卫视,http://192.151.150.154/live/ssws.m3u8$LR•IPV4•24『线路3』 -三沙卫视,http://204.12.221.218:8181/3m1080p/ssws.m3u8$LR•IPV4•24『线路4』 -三沙卫视,http://101.6.130.52:1234/961023778$LR•IPV4•24『线路5』 -三沙卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288016&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路6』 -三沙卫视,http://nn.7x9d.cn/地方台8563/海南.php?id=ssws$LR•IPV4•24『线路7』 -三沙卫视,http://btjg.net:809/hls/142/index.m3u8$LR•IPV4•24『线路8』 -三沙卫视,http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•24『线路9』 -三沙卫视,https://iptv.catvod.com/catvod.php?id=ssws$LR•IPV4•24『线路10』 +三沙卫视,http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•24『线路2』 +三沙卫视,https://iptv.catvod.com/catvod.php?id=ssws$LR•IPV4•24『线路3』 +三沙卫视,https://srs.ssws.tv/video/sstv-10/index.m3u8#http://nn.7x9d.cn/地方台8563/海南.php?id=ssws$LR•IPV4•24『线路4』 +三沙卫视,http://192.151.150.154/live/ssws.m3u8$LR•IPV4•24『线路5』 +三沙卫视,http://204.12.221.218:8181/3m1080p/ssws.m3u8$LR•IPV4•24『线路6』 +三沙卫视,http://101.6.130.52:1234/961023778$LR•IPV4•24『线路7』 +三沙卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288016&livemode=1&stbId=yu&mode=1&$LR•IPV4•24『线路8』 +三沙卫视,http://nn.7x9d.cn/地方台8563/海南.php?id=ssws$LR•IPV4•24『线路9』 +三沙卫视,http://btjg.net:809/hls/142/index.m3u8$LR•IPV4•24『线路10』 三沙卫视,https://live.chinacert.cftest5.cn/cnmg/live/961023778$LR•IPV4•24『线路11』 三沙卫视,http://fn.gcl.de5.net:5908/gsh950428/961023778$LR•IPV4•24『线路12』 三沙卫视,http://wfenf.x3322.net:7788/961023778$LR•IPV4•24『线路13』 @@ -2436,9 +2436,9 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 三沙卫视,http://101.34.236.223:1112/961023778$LR•IPV4•24『线路23』 三沙卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227055/index.m3u8$LR•IPV4•24『线路24』 延边卫视,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•10『线路1』 -延边卫视,https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•10『线路2』 -延边卫视,https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•10『线路3』 -延边卫视,http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•10『线路4』 +延边卫视,http://120.76.248.139/live/bfgd/4200000117.m3u8$LR•IPV4•10『线路2』 +延边卫视,https://srs.iyb983.cn/video/CYS/index.m3u8$LR•IPV4•10『线路3』 +延边卫视,https://srs.iyb983.cn:443/video/CYS/index.m3u8$LR•IPV4•10『线路4』 延边卫视,http://204.12.221.218:8181/3m1080p/ybws.m3u8$LR•IPV4•10『线路5』 延边卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000005000266008&livemode=1&stbId=yu&mode=1&$LR•IPV4•10『线路6』 延边卫视,http://111.43.126.240:9003/hls/49/index.m3u8$LR•IPV4•10『线路7』 @@ -2448,16 +2448,16 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 中国教育3台,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226577/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EhE2Z89HKgsQOlN9opVn1iw%7E_eNUbgU9sJGUcVVduOMKhafLvQUgE_zlz_7pvDimJNN03yUnk4zBVk1bynPPL3hZ%2CEND$LR•IPV6•2『线路1』 中国教育3台,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226226/index.m3u8$LR•IPV4•2『线路2』 上海卫视,http://112.27.235.94:8000/hls/28/index.m3u8$LR•IPV4 -北京纪实,http://111.29.9.33:6610/000000001000/1000000001000028380/index.m3u8?channel-id=bestzb&Contentid=1000000001000028380&livemode=1&stbId=3$LR•IPV4•4『线路1』 -北京纪实,https://gdcucc.v1.mk/gdcucc/brtv8k.m3u8$LR•IPV4•4『线路2』 +北京纪实,https://gdcucc.v1.mk/gdcucc/brtv8k.m3u8$LR•IPV4•4『线路1』 +北京纪实,http://111.29.9.33:6610/000000001000/1000000001000028380/index.m3u8?channel-id=bestzb&Contentid=1000000001000028380&livemode=1&stbId=3$LR•IPV4•4『线路2』 北京纪实,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227294/index.m3u8$LR•IPV4•4『线路3』 北京纪实,http://123.121.5.183:4000/rtp/239.3.1.115:8000$LR•IPV4•4『线路4』 -家庭理财,http://223.110.245.139/PLTV/4/224/3221227011/index.m3u8$LR•IPV4•3『线路1』 -家庭理财,http://gslbserv.itv.cmvideo.cn:80/5000000011000265001/1.m3u8?channel-id=bestzb&Contentid=5000000011000031210&livemode=1&stbId=toShengfen&mode=1&$LR•IPV4•3『线路2』 -家庭理财,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226754/index.m3u8$LR•IPV4•3『线路3』 -梨园,http://60.10.139.113:8801/hls/86/index.m3u8$LR•IPV4•15『线路1』 +家庭理财,http://gslbserv.itv.cmvideo.cn:80/5000000011000265001/1.m3u8?channel-id=bestzb&Contentid=5000000011000031210&livemode=1&stbId=toShengfen&mode=1&$LR•IPV4•3『线路1』 +家庭理财,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226754/index.m3u8$LR•IPV4•3『线路2』 +家庭理财,http://223.110.245.139/PLTV/4/224/3221227011/index.m3u8$LR•IPV4•3『线路3』 +梨园,https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•15『线路1』 梨园,http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•15『线路2』 -梨园,https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•15『线路3』 +梨园,http://60.10.139.113:8801/hls/86/index.m3u8$LR•IPV4•15『线路3』 梨园,https://live.chinacert.cftest5.cn/cnmg/live/961930369$LR•IPV4•15『线路4』 梨园,http://fn.gcl.de5.net:5908/gsh950428/961930369$LR•IPV4•15『线路5』 梨园,http://wfenf.x3322.net:7788/961930369$LR•IPV4•15『线路6』 @@ -2490,76 +2490,76 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 河北4K,http://43.251.226.89:8080/play/928.m3u8$LR•IPV4•4『线路3』 河北4K,http://106.53.99.30/tv/api.php?id=hebtv4k$LR•IPV4•4『线路4』 山西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227016/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ESb5Qr3NTpE2ZugIroKoyTw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•27『线路1』 -山西卫视,http://119.39.9.8:9901/tsfile/live/0118_1.m3u8$LR•IPV4•27『线路2』 -山西卫视,http://198.204.228.26/live/sxwshd.m3u8$LR•IPV4•27『线路3』 -山西卫视,http://36.40.237.49:9999/tsfile/live/0118_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•27『线路4』 -山西卫视,http://112.123.243.37:50085/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•27『线路5』 -山西卫视,http://113.25.252.226:9901/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路6』 -山西卫视,http://59.39.89.130:60901/tsfile/live/0125_20.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 -山西卫视,http://120.198.95.220:9901/tsfile/live/1057_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路8』 -山西卫视,http://36.136.38.87:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路9』 -山西卫视,http://222.90.21.30:9901/hls/32/index.m3u8$LR•IPV4•27『线路10』 -山西卫视,http://207.56.13.146:81/cdnlive/sxws.m3u8$LR•IPV4•27『线路11』 -山西卫视,http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•27『线路12』 -山西卫视,http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•27『线路13』 -山西卫视,http://60.10.139.113:8801/hls/54/index.m3u8$LR•IPV4•27『线路14』 -山西卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.211:5140$LR•IPV4•27『线路15』 -山西卫视,http://192.151.150.154/live/sxwshd.m3u8$LR•IPV4•27『线路16』 -山西卫视,http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•27『线路17』 -山西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040023&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路18』 -山西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000021220&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路19』 -山西卫视,http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•27『线路20』 -山西卫视,https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•27『线路21』 -山西卫视,https://httop.top/ysp-山西卫视$LR•IPV4•27『线路22』 -山西卫视,http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路23』 -山西卫视,http://111.43.126.240:9003/hls/45/index.m3u8$LR•IPV4•27『线路24』 -山西卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227187/index.m3u8$LR•IPV4•27『线路25』 -山西卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225763/index.m3u8$LR•IPV4•27『线路26』 -山西卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226778/index.m3u8$LR•IPV4•27『线路27』 +山西卫视,http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•27『线路2』 +山西卫视,http://119.39.9.8:9901/tsfile/live/0118_1.m3u8$LR•IPV4•27『线路3』 +山西卫视,http://198.204.228.26/live/sxwshd.m3u8$LR•IPV4•27『线路4』 +山西卫视,http://36.40.237.49:9999/tsfile/live/0118_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•27『线路5』 +山西卫视,http://112.123.243.37:50085/tsfile/live/0120_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•27『线路6』 +山西卫视,http://113.25.252.226:9901/tsfile/live/1039_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路7』 +山西卫视,http://59.39.89.130:60901/tsfile/live/0125_20.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路8』 +山西卫视,http://120.198.95.220:9901/tsfile/live/1057_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•27『线路9』 +山西卫视,http://36.136.38.87:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路10』 +山西卫视,http://222.90.21.30:9901/hls/32/index.m3u8$LR•IPV4•27『线路11』 +山西卫视,http://207.56.13.146:81/cdnlive/sxws.m3u8$LR•IPV4•27『线路12』 +山西卫视,http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•27『线路13』 +山西卫视,https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•27『线路14』 +山西卫视,https://httop.top/ysp-山西卫视$LR•IPV4•27『线路15』 +山西卫视,http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•27『线路16』 +山西卫视,http://60.10.139.113:8801/hls/54/index.m3u8$LR•IPV4•27『线路17』 +山西卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.211:5140$LR•IPV4•27『线路18』 +山西卫视,http://192.151.150.154/live/sxwshd.m3u8$LR•IPV4•27『线路19』 +山西卫视,http://204.12.221.218:8181/3m1080p/sxws.m3u8$LR•IPV4•27『线路20』 +山西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040023&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路21』 +山西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000021220&livemode=1&stbId=yu&mode=1&$LR•IPV4•27『线路22』 +山西卫视,http://111.43.126.240:9003/hls/45/index.m3u8$LR•IPV4•27『线路23』 +山西卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227187/index.m3u8$LR•IPV4•27『线路24』 +山西卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225763/index.m3u8$LR•IPV4•27『线路25』 +山西卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226778/index.m3u8$LR•IPV4•27『线路26』 +山西卫视,http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•27『线路27』 陕西卫视,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•44『线路1』 -陕西卫视,http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•44『线路2』 -陕西卫视,http://198.204.228.26/live/snwshd.m3u8$LR•IPV4•44『线路3』 -陕西卫视,http://107.150.60.122/live/snwshd.m3u8$LR•IPV4•44『线路4』 -陕西卫视,http://36.40.237.49:9999/tsfile/live/0136_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•44『线路5』 -陕西卫视,http://120.198.95.220:9901/tsfile/live/1068_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•44『线路6』 -陕西卫视,http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路7』 -陕西卫视,http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•44『线路8』 +陕西卫视,http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•44『线路2』 +陕西卫视,http://192.151.150.154/live/snwshd.m3u8$LR•IPV4•44『线路3』 +陕西卫视,http://198.204.228.26/live/snwshd.m3u8$LR•IPV4•44『线路4』 +陕西卫视,http://107.150.60.122/live/snwshd.m3u8$LR•IPV4•44『线路5』 +陕西卫视,http://36.40.237.49:9999/tsfile/live/0136_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•44『线路6』 +陕西卫视,http://120.198.95.220:9901/tsfile/live/1068_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•44『线路7』 +陕西卫视,http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•44『线路8』 陕西卫视,http://stream.snrtv.com/sxbc-nl-itHLO2.m3u8$LR•IPV4•44『线路9』 -陕西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•44『线路10』 -陕西卫视,http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•44『线路11』 -陕西卫视,http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•44『线路12』 -陕西卫视,http://60.10.139.113:8801/hls/53/index.m3u8$LR•IPV4•44『线路13』 -陕西卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.223:5140$LR•IPV4•44『线路14』 -陕西卫视,http://207.56.13.146:81/cdnlive/snws.m3u8$LR•IPV4•44『线路15』 -陕西卫视,http://204.12.221.218:8181/3m1080p/snws.m3u8$LR•IPV4•44『线路16』 -陕西卫视,http://101.6.130.52:1234/738910838$LR•IPV4•44『线路17』 -陕西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000007495&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路18』 -陕西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040017&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路19』 -陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•44『线路20』 -陕西卫视,http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•44『线路21』 -陕西卫视,http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•44『线路22』 -陕西卫视,https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•44『线路23』 -陕西卫视,https://httop.top/ysp-陕西卫视$LR•IPV4•44『线路24』 -陕西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•44『线路25』 -陕西卫视,https://live.chinacert.cftest5.cn/cnmg/live/738910838$LR•IPV4•44『线路26』 -陕西卫视,http://m.061899.xyz/mg/sxws$LR•IPV4•44『线路27』 -陕西卫视,http://fn.gcl.de5.net:5908/gsh950428/738910838$LR•IPV4•44『线路28』 -陕西卫视,http://wfenf.x3322.net:7788/738910838$LR•IPV4•44『线路29』 -陕西卫视,http://106.5.175.159:1234/738910838$LR•IPV4•44『线路30』 -陕西卫视,http://36.104.221.222:7788/738910838$LR•IPV4•44『线路31』 -陕西卫视,http://115.58.151.196:1234/738910838$LR•IPV4•44『线路32』 -陕西卫视,http://182.61.15.163:80/738910838$LR•IPV4•44『线路33』 -陕西卫视,http://121.23.132.14:7788/738910838$LR•IPV4•44『线路34』 -陕西卫视,http://120.4.126.153:1234/738910838$LR•IPV4•44『线路35』 -陕西卫视,http://111.43.126.240:9003/hls/52/index.m3u8$LR•IPV4•44『线路36』 -陕西卫视,http://47.119.24.76:59093/738910838$LR•IPV4•44『线路37』 -陕西卫视,http://222.134.19.49:8090/738910838$LR•IPV4•44『线路38』 -陕西卫视,http://rihou.cc:555/tv/[mg]陕西卫视$LR•IPV4•44『线路39』 -陕西卫视,http://139.155.89.87:1000/738910838$LR•IPV4•44『线路40』 -陕西卫视,http://101.34.236.223:1112/738910838$LR•IPV4•44『线路41』 -陕西卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225821/index.m3u8$LR•IPV4•44『线路42』 -陕西卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227096/index.m3u8$LR•IPV4•44『线路43』 -陕西卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226892/index.m3u8$LR•IPV4•44『线路44』 +陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•44『线路10』 +陕西卫视,http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•44『线路11』 +陕西卫视,http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•44『线路12』 +陕西卫视,https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•44『线路13』 +陕西卫视,https://httop.top/ysp-陕西卫视$LR•IPV4•44『线路14』 +陕西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•44『线路15』 +陕西卫视,http://60.10.139.113:8801/hls/53/index.m3u8$LR•IPV4•44『线路16』 +陕西卫视,http://jasonzhangnas.f3322.net:7088/udp/233.18.204.223:5140$LR•IPV4•44『线路17』 +陕西卫视,http://207.56.13.146:81/cdnlive/snws.m3u8$LR•IPV4•44『线路18』 +陕西卫视,http://204.12.221.218:8181/3m1080p/snws.m3u8$LR•IPV4•44『线路19』 +陕西卫视,http://101.6.130.52:1234/738910838$LR•IPV4•44『线路20』 +陕西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000007495&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路21』 +陕西卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000006000040017&livemode=1&stbId=yu&mode=1&$LR•IPV4•44『线路22』 +陕西卫视,https://live.chinacert.cftest5.cn/cnmg/live/738910838$LR•IPV4•44『线路23』 +陕西卫视,http://m.061899.xyz/mg/sxws$LR•IPV4•44『线路24』 +陕西卫视,http://fn.gcl.de5.net:5908/gsh950428/738910838$LR•IPV4•44『线路25』 +陕西卫视,http://wfenf.x3322.net:7788/738910838$LR•IPV4•44『线路26』 +陕西卫视,http://106.5.175.159:1234/738910838$LR•IPV4•44『线路27』 +陕西卫视,http://36.104.221.222:7788/738910838$LR•IPV4•44『线路28』 +陕西卫视,http://115.58.151.196:1234/738910838$LR•IPV4•44『线路29』 +陕西卫视,http://182.61.15.163:80/738910838$LR•IPV4•44『线路30』 +陕西卫视,http://121.23.132.14:7788/738910838$LR•IPV4•44『线路31』 +陕西卫视,http://120.4.126.153:1234/738910838$LR•IPV4•44『线路32』 +陕西卫视,http://111.43.126.240:9003/hls/52/index.m3u8$LR•IPV4•44『线路33』 +陕西卫视,http://47.119.24.76:59093/738910838$LR•IPV4•44『线路34』 +陕西卫视,http://222.134.19.49:8090/738910838$LR•IPV4•44『线路35』 +陕西卫视,http://rihou.cc:555/tv/[mg]陕西卫视$LR•IPV4•44『线路36』 +陕西卫视,http://139.155.89.87:1000/738910838$LR•IPV4•44『线路37』 +陕西卫视,http://101.34.236.223:1112/738910838$LR•IPV4•44『线路38』 +陕西卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225821/index.m3u8$LR•IPV4•44『线路39』 +陕西卫视,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227096/index.m3u8$LR•IPV4•44『线路40』 +陕西卫视,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226892/index.m3u8$LR•IPV4•44『线路41』 +陕西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•44『线路42』 +陕西卫视,http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•44『线路43』 +陕西卫视,http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•44『线路44』 北京卫视4K,http://43.251.226.89:8080/play/918.m3u8$LR•IPV4•11『线路1』 北京卫视4K,https://live.264788.xyz/channel/beijingweishi4k?streamid=ec1dc6a6eb32cabcbff436085ff993ef&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•11『线路2』 北京卫视4K,https://live.264788.xyz/channel/beijingweishi4k?streamid=20915ffd9b2848bf3604dfea93e5f344&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•11『线路3』 @@ -2573,9 +2573,9 @@ CCTV 8K,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•2『线路2』 北京卫视4K,http://106.53.99.30/tv/api.php?id=bjws4k$LR•IPV4•11『线路11』 数字,#genre# -CHC影迷电影,http://192.151.150.154/live/chchd.m3u8$LR•IPV4•18『线路1』 -CHC影迷电影,http://38.75.136.137:98/gslb/dsdqpub/chchd.m3u8?auth=testpub$LR•IPV4•18『线路2』 -CHC影迷电影,p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4•18『线路3』 +CHC影迷电影,p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4•18『线路1』 +CHC影迷电影,http://192.151.150.154/live/chchd.m3u8$LR•IPV4•18『线路2』 +CHC影迷电影,http://38.75.136.137:98/gslb/dsdqpub/chchd.m3u8?auth=testpub$LR•IPV4•18『线路3』 CHC影迷电影,https://live.chinacert.cftest5.cn/cnmg/live/952383261$LR•IPV4•18『线路4』 CHC影迷电影,http://fn.gcl.de5.net:5908/gsh950428/952383261$LR•IPV4•18『线路5』 CHC影迷电影,http://wfenf.x3322.net:7788/952383261$LR•IPV4•18『线路6』 @@ -2830,9 +2830,9 @@ NewTV军旅剧场,http://php.jdshipin.com/TVOD/hnyd.php?id=200000001898/46000008 NewTV军旅剧场,http://111.43.126.240:9003/hls/65/index.m3u8$LR•IPV4•5『线路5』 NewTV动作电影,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000018653&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路1』 NewTV动作电影,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=8103864434730665389&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路2』 -NewTV动作电影,http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•5『线路3』 -NewTV动作电影,http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•5『线路4』 -NewTV动作电影,http://111.43.126.240:9003/hls/58/index.m3u8$LR•IPV4•5『线路5』 +NewTV动作电影,http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•5『线路3』 +NewTV动作电影,http://111.43.126.240:9003/hls/58/index.m3u8$LR•IPV4•5『线路4』 +NewTV动作电影,http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•5『线路5』 NewTV惊悚悬疑,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000024282&livemode=1&stbId=yu&mode=1&$LR•IPV4•3『线路1』 NewTV惊悚悬疑,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7151256057701199617&livemode=1&stbId=yu&mode=1&$LR•IPV4•3『线路2』 NewTV惊悚悬疑,http://111.29.9.33:6610/000000001000/1000000004000024282/index.m3u8?channel-id=bestzb&Contentid=1000000004000024282&livemode=1&stbId=3$LR•IPV4•3『线路3』 @@ -2880,159 +2880,159 @@ NewTV炫舞未来,http://111.43.126.240:9003/hls/85/index.m3u8$LR•IPV4•3『 怡伴健康,http://111.43.126.240:9003/hls/76/index.m3u8$LR•IPV4•2『线路2』 NewTV哒啵赛事,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5320946857686967621&livemode=1&stbId=yu&mode=1&$LR•IPV4•2『线路1』 NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『线路2』 -卡酷少儿,http://192.151.150.154/live/btvkk.m3u8$LR•IPV4•7『线路1』 -卡酷少儿,http://204.12.221.218:8181/3m1080p/btvkk.m3u8$LR•IPV4•7『线路2』 -卡酷少儿,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7851974109718180595&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路3』 -卡酷少儿,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7589856436881630561&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路4』 -卡酷少儿,http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4•7『线路5』 +卡酷少儿,http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4•7『线路1』 +卡酷少儿,http://192.151.150.154/live/btvkk.m3u8$LR•IPV4•7『线路2』 +卡酷少儿,http://204.12.221.218:8181/3m1080p/btvkk.m3u8$LR•IPV4•7『线路3』 +卡酷少儿,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7851974109718180595&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路4』 +卡酷少儿,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=7589856436881630561&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路5』 卡酷少儿,http://111.43.126.240:9003/hls/54/index.m3u8$LR•IPV4•7『线路6』 卡酷少儿,http://123.121.5.183:4000/rtp/239.3.1.189:8000$LR•IPV4•7『线路7』 -优漫卡通,http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•20『线路1』 -优漫卡通,http://192.151.150.154/live/ymkt.m3u8$LR•IPV4•20『线路2』 -优漫卡通,http://204.12.221.218:8181/3m1080p/ymkt.m3u8$LR•IPV4•20『线路3』 -优漫卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000010063&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路4』 -优漫卡通,https://live.chinacert.cftest5.cn/cnmg/live/626064703$LR•IPV4•20『线路5』 -优漫卡通,http://fn.gcl.de5.net:5908/gsh950428/626064703$LR•IPV4•20『线路6』 -优漫卡通,http://wfenf.x3322.net:7788/626064703$LR•IPV4•20『线路7』 -优漫卡通,http://106.5.175.159:1234/626064703$LR•IPV4•20『线路8』 -优漫卡通,http://36.104.221.222:7788/626064703$LR•IPV4•20『线路9』 -优漫卡通,http://115.58.151.196:1234/626064703$LR•IPV4•20『线路10』 -优漫卡通,http://182.61.15.163:80/626064703$LR•IPV4•20『线路11』 -优漫卡通,http://121.23.132.14:7788/626064703$LR•IPV4•20『线路12』 -优漫卡通,http://120.4.126.153:1234/626064703$LR•IPV4•20『线路13』 -优漫卡通,http://111.43.126.240:9003/hls/57/index.m3u8$LR•IPV4•20『线路14』 -优漫卡通,http://47.119.24.76:59093/626064703$LR•IPV4•20『线路15』 -优漫卡通,http://222.134.19.49:8090/626064703$LR•IPV4•20『线路16』 -优漫卡通,http://139.155.89.87:1000/626064703$LR•IPV4•20『线路17』 -优漫卡通,http://101.34.236.223:1112/626064703$LR•IPV4•20『线路18』 -优漫卡通,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225795/index.m3u8$LR•IPV4•20『线路19』 -优漫卡通,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226768/index.m3u8$LR•IPV4•20『线路20』 +优漫卡通,http://192.151.150.154/live/ymkt.m3u8$LR•IPV4•20『线路1』 +优漫卡通,http://204.12.221.218:8181/3m1080p/ymkt.m3u8$LR•IPV4•20『线路2』 +优漫卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000010063&livemode=1&stbId=yu&mode=1&$LR•IPV4•20『线路3』 +优漫卡通,https://live.chinacert.cftest5.cn/cnmg/live/626064703$LR•IPV4•20『线路4』 +优漫卡通,http://fn.gcl.de5.net:5908/gsh950428/626064703$LR•IPV4•20『线路5』 +优漫卡通,http://wfenf.x3322.net:7788/626064703$LR•IPV4•20『线路6』 +优漫卡通,http://106.5.175.159:1234/626064703$LR•IPV4•20『线路7』 +优漫卡通,http://36.104.221.222:7788/626064703$LR•IPV4•20『线路8』 +优漫卡通,http://115.58.151.196:1234/626064703$LR•IPV4•20『线路9』 +优漫卡通,http://182.61.15.163:80/626064703$LR•IPV4•20『线路10』 +优漫卡通,http://121.23.132.14:7788/626064703$LR•IPV4•20『线路11』 +优漫卡通,http://120.4.126.153:1234/626064703$LR•IPV4•20『线路12』 +优漫卡通,http://111.43.126.240:9003/hls/57/index.m3u8$LR•IPV4•20『线路13』 +优漫卡通,http://47.119.24.76:59093/626064703$LR•IPV4•20『线路14』 +优漫卡通,http://222.134.19.49:8090/626064703$LR•IPV4•20『线路15』 +优漫卡通,http://139.155.89.87:1000/626064703$LR•IPV4•20『线路16』 +优漫卡通,http://101.34.236.223:1112/626064703$LR•IPV4•20『线路17』 +优漫卡通,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225795/index.m3u8$LR•IPV4•20『线路18』 +优漫卡通,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226768/index.m3u8$LR•IPV4•20『线路19』 +优漫卡通,http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•20『线路20』 哈哈炫动,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000031123&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路1』 哈哈炫动,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=bestzb&Contentid=5000000005000031641&livemode=1&stbId=yu&mode=1&$LR•IPV4•5『线路2』 哈哈炫动,http://111.29.9.33:6610/000000001000/5000000011000031123/index.m3u8?channel-id=bestzb&Contentid=5000000011000031123&livemode=1&stbId=3$LR•IPV4•5『线路3』 -哈哈炫动,http://223.110.245.139/PLTV/4/224/3221226388/index.m3u8$LR•IPV4•5『线路4』 -哈哈炫动,http://111.43.126.240:9003/hls/55/index.m3u8$LR•IPV4•5『线路5』 -嘉佳卡通,http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•21『线路1』 -嘉佳卡通,http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•21『线路2』 -嘉佳卡通,http://192.151.150.154/live/gdjjkt.m3u8$LR•IPV4•21『线路3』 -嘉佳卡通,http://204.12.221.218:8181/3m1080p/gdjjkt.m3u8$LR•IPV4•21『线路4』 -嘉佳卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000025964&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路5』 -嘉佳卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=4739906347743456369&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路6』 -嘉佳卡通,http://111.29.9.33:6610/000000001000/1000000002000025964/index.m3u8?channel-id=bestzb&Contentid=1000000002000025964&livemode=1&stbId=3$LR•IPV4•21『线路7』 -嘉佳卡通,https://live.chinacert.cftest5.cn/cnmg/live/614952364$LR•IPV4•21『线路8』 -嘉佳卡通,http://fn.gcl.de5.net:5908/gsh950428/614952364$LR•IPV4•21『线路9』 -嘉佳卡通,http://wfenf.x3322.net:7788/614952364$LR•IPV4•21『线路10』 -嘉佳卡通,http://106.5.175.159:1234/614952364$LR•IPV4•21『线路11』 -嘉佳卡通,http://36.104.221.222:7788/614952364$LR•IPV4•21『线路12』 -嘉佳卡通,http://115.58.151.196:1234/614952364$LR•IPV4•21『线路13』 -嘉佳卡通,http://182.61.15.163:80/614952364$LR•IPV4•21『线路14』 -嘉佳卡通,http://121.23.132.14:7788/614952364$LR•IPV4•21『线路15』 -嘉佳卡通,http://120.4.126.153:1234/614952364$LR•IPV4•21『线路16』 -嘉佳卡通,http://47.119.24.76:59093/614952364$LR•IPV4•21『线路17』 -嘉佳卡通,http://222.134.19.49:8090/614952364$LR•IPV4•21『线路18』 -嘉佳卡通,http://101.34.236.223:1112/614952364$LR•IPV4•21『线路19』 -嘉佳卡通,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226227/index.m3u8$LR•IPV4•21『线路20』 -嘉佳卡通,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226744/index.m3u8$LR•IPV4•21『线路21』 -金鹰卡通,http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•14『线路1』 +哈哈炫动,http://111.43.126.240:9003/hls/55/index.m3u8$LR•IPV4•5『线路4』 +哈哈炫动,http://223.110.245.139/PLTV/4/224/3221226388/index.m3u8$LR•IPV4•5『线路5』 +嘉佳卡通,http://192.151.150.154/live/gdjjkt.m3u8$LR•IPV4•21『线路1』 +嘉佳卡通,http://204.12.221.218:8181/3m1080p/gdjjkt.m3u8$LR•IPV4•21『线路2』 +嘉佳卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000025964&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路3』 +嘉佳卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=4739906347743456369&livemode=1&stbId=yu&mode=1&$LR•IPV4•21『线路4』 +嘉佳卡通,http://111.29.9.33:6610/000000001000/1000000002000025964/index.m3u8?channel-id=bestzb&Contentid=1000000002000025964&livemode=1&stbId=3$LR•IPV4•21『线路5』 +嘉佳卡通,https://live.chinacert.cftest5.cn/cnmg/live/614952364$LR•IPV4•21『线路6』 +嘉佳卡通,http://fn.gcl.de5.net:5908/gsh950428/614952364$LR•IPV4•21『线路7』 +嘉佳卡通,http://wfenf.x3322.net:7788/614952364$LR•IPV4•21『线路8』 +嘉佳卡通,http://106.5.175.159:1234/614952364$LR•IPV4•21『线路9』 +嘉佳卡通,http://36.104.221.222:7788/614952364$LR•IPV4•21『线路10』 +嘉佳卡通,http://115.58.151.196:1234/614952364$LR•IPV4•21『线路11』 +嘉佳卡通,http://182.61.15.163:80/614952364$LR•IPV4•21『线路12』 +嘉佳卡通,http://121.23.132.14:7788/614952364$LR•IPV4•21『线路13』 +嘉佳卡通,http://120.4.126.153:1234/614952364$LR•IPV4•21『线路14』 +嘉佳卡通,http://47.119.24.76:59093/614952364$LR•IPV4•21『线路15』 +嘉佳卡通,http://222.134.19.49:8090/614952364$LR•IPV4•21『线路16』 +嘉佳卡通,http://101.34.236.223:1112/614952364$LR•IPV4•21『线路17』 +嘉佳卡通,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226227/index.m3u8$LR•IPV4•21『线路18』 +嘉佳卡通,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221226744/index.m3u8$LR•IPV4•21『线路19』 +嘉佳卡通,http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•21『线路20』 +嘉佳卡通,http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•21『线路21』 +金鹰卡通,http://101.66.195.88:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路1』 金鹰卡通,http://phoneal.qing.mgtv.com/nn_live/nn_x64/dGVybT01Jm5kaT02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJmNkbmV4X2lkPWFsX3Bob25lMyZzPTdiNDZjMTFiMWQwZmEyN2Q0NjUwN2Q4NWJlMGY2NWY0JmFzPTAmX2NhckNvZGU9MCZ1aXA9MTA2LjE0LjM4LjU1Jm1hY2lkPTY4NmU4Y2Y4Yzg4ZTc3ZWM5YTA3OTMyODlmNTM0ODQyYWJlYzRmM2MmcWlkPSZyYXV0aF9lbmFibGU9b2ZmJmNocz0mdXVpZD1jOWIzNTBkOTU1MGUxMzcwYjI4YzZkNTQzOWM1N2VmOS02YTBlMjYzNyZ2PTImbmR2PWlvcy02LjUuMCZ1aWQ9JmRlZj0xJmVzPTE3ODI3MTQ2NTg,/KLCDMPP360.m3u8$LR•IPV4•14『线路2』 -金鹰卡通,http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•14『线路3』 -金鹰卡通,http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路4』 -金鹰卡通,http://124.228.160.210:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 -金鹰卡通,http://204.12.221.218:8181/3m1080p/hnjykt.m3u8$LR•IPV4•14『线路6』 -金鹰卡通,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYKTMPP360.m3u8$LR•IPV4•14『线路7』 -金鹰卡通,http://183.237.95.108:9901/tsfile/live/1099_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路8』 -金鹰卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040024&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路9』 -金鹰卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016601&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路10』 -金鹰卡通,http://111.29.9.33:6610/000000001000/5000000006000040024/index.m3u8?channel-id=bestzb&Contentid=5000000006000040024&livemode=1&stbId=3$LR•IPV4•14『线路11』 -金鹰卡通,http://111.43.126.240:9003/hls/56/index.m3u8$LR•IPV4•14『线路12』 -金鹰卡通,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225744/index.m3u8$LR•IPV4•14『线路13』 -金鹰卡通,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227300/index.m3u8$LR•IPV4•14『线路14』 -金鹰纪实,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYJSMPP360.m3u8$LR•IPV4•88『线路1』 -金鹰纪实,http://111.29.9.33:6610/000000001000/5000000011000031203/index.m3u8?channel-id=bestzb&Contentid=5000000011000031203&livemode=1&stbId=3$LR•IPV4•88『线路2』 -金鹰纪实,http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•88『线路3』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-12.m3u8$LR•IPV4•88『线路4』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-gao-qing-2.m3u8$LR•IPV4•88『线路5』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-3.m3u8$LR•IPV4•88『线路6』 -金鹰纪实,http://nas.hssvm.com:8888/udp/225.1.1.124:5002$LR•IPV4•88『线路7』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-44.m3u8$LR•IPV4•88『线路8』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-2.ctv$LR•IPV4•88『线路9』 -金鹰纪实,https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-20.m3u8$LR•IPV4•88『线路10』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-23.ctv$LR•IPV4•88『线路11』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-9.m3u8$LR•IPV4•88『线路12』 -金鹰纪实,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=jyjs$LR•IPV4•88『线路13』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-26.m3u8$LR•IPV4•88『线路14』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-6.m3u8$LR•IPV4•88『线路15』 -金鹰纪实,http://60.2.190.206:4000/udp/239.253.92.103:6054$LR•IPV4•88『线路16』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-31.m3u8$LR•IPV4•88『线路17』 -金鹰纪实,http://e1.woc.iiiya.cn:8888/rtp/239.61.3.7:9560$LR•IPV4•88『线路18』 -金鹰纪实,http://36.105.100.208:35455/itv/5000000011000031203.m3u8?cdn=bestzb$LR•IPV4•88『线路19』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-16.m3u8$LR•IPV4•88『线路20』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-1.ctv$LR•IPV4•88『线路21』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-23.m3u8$LR•IPV4•88『线路22』 -金鹰纪实,http://home.wwang.pw:35455/itv/5000000011000031203.m3u8?cdn=bestzb$LR•IPV4•88『线路23』 -金鹰纪实,http://116.128.242.83:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•88『线路24』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-34.m3u8$LR•IPV4•88『线路25』 -金鹰纪实,https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-22.m3u8$LR•IPV4•88『线路26』 -金鹰纪实,http://drive.mxmy.net:8888/udp/239.3.1.58:8156$LR•IPV4•88『线路27』 -金鹰纪实,http://121.19.134.222:808/tsfile/live/1037_1.m3u8$LR•IPV4•88『线路28』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-41.m3u8$LR•IPV4•88『线路29』 -金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4465&tk=b53028476470$LR•IPV4•88『线路30』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-42.ctv$LR•IPV4•88『线路31』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-37.m3u8$LR•IPV4•88『线路32』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-14.m3u8$LR•IPV4•88『线路33』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-33.m3u8$LR•IPV4•88『线路34』 -金鹰纪实,https://live.264788.xyz/channel/jinyingjishi?streamid=b33f7690b2ce36708f54588c53a20742&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路35』 -金鹰纪实,http://58.57.40.22:9901/tsfile/live/1070_1.m3u8$LR•IPV4•88『线路36』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-35.m3u8$LR•IPV4•88『线路37』 -金鹰纪实,http://rrs01.hw.gmcc.net:8088/PLTV/81/224/3221226667/1.m3u8$LR•IPV4•88『线路38』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-13.m3u8$LR•IPV4•88『线路39』 -金鹰纪实,https://live.264788.xyz/channel/jinyingjishi?streamid=39c14c1420dbb152d037b2b1cc17c175&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路40』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-21.ctv$LR•IPV4•88『线路41』 -金鹰纪实,https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-15.m3u8$LR•IPV4•88『线路42』 -金鹰纪实,http://121.19.134.200:808/tsfile/live/1028_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•88『线路43』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-5.ctv$LR•IPV4•88『线路44』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-10.ctv$LR•IPV4•88『线路45』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-37.ctv$LR•IPV4•88『线路46』 -金鹰纪实,http://120.238.94.10:9901/tsfile/live/1059_1.m3u8$LR•IPV4•88『线路47』 -金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4197&tk=f6cc1e0a0e1a$LR•IPV4•88『线路48』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-24.m3u8$LR•IPV4•88『线路49』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-43.ctv$LR•IPV4•88『线路50』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-20.ctv$LR•IPV4•88『线路51』 -金鹰纪实,https://t.freetv.fun/live/jin-ying-ji-shi.m3u8$LR•IPV4•88『线路52』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-11.m3u8$LR•IPV4•88『线路53』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-38.m3u8$LR•IPV4•88『线路54』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-28.ctv$LR•IPV4•88『线路55』 -金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2417&tk=e503191f8e20$LR•IPV4•88『线路56』 -金鹰纪实,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/JYJSMPP360.m3u8$LR•IPV4•88『线路57』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-gao-qing-3.m3u8$LR•IPV4•88『线路58』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-8.m3u8$LR•IPV4•88『线路59』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-2.m3u8$LR•IPV4•88『线路60』 -金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6735&tk=e640d0a1bf70$LR•IPV4•88『线路61』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-36.ctv$LR•IPV4•88『线路62』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-39.ctv$LR•IPV4•88『线路63』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-32.ctv$LR•IPV4•88『线路64』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-22.ctv$LR•IPV4•88『线路65』 -金鹰纪实,https://live.264788.xyz/channel/jinyingjishi?streamid=3680a1c0ad58417e29641bb984685a5b&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路66』 -金鹰纪实,https://hls-gateway.vpstv.net/streams/708834.m3u8$LR•IPV4•88『线路67』 -金鹰纪实,http://wouu.net:9977/udp/239.93.0.130:5140$LR•IPV4•88『线路68』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-24.ctv$LR•IPV4•88『线路69』 -金鹰纪实,http://60.7.56.33:4000/udp/239.253.92.103:6054$LR•IPV4•88『线路70』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-41.ctv$LR•IPV4•88『线路71』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-30.m3u8$LR•IPV4•88『线路72』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-19.ctv$LR•IPV4•88『线路73』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-13.ctv$LR•IPV4•88『线路74』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-40.m3u8$LR•IPV4•88『线路75』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-12.ctv$LR•IPV4•88『线路76』 -金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4677&tk=a0c4f6cfaba3$LR•IPV4•88『线路77』 -金鹰纪实,http://183.11.239.36:808/hls/171/index.m3u8$LR•IPV4•88『线路78』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-4.m3u8$LR•IPV4•88『线路79』 -金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6241&tk=a0c4f6cfaba3$LR•IPV4•88『线路80』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-31.ctv$LR•IPV4•88『线路81』 -金鹰纪实,https://live.264788.xyz/channel/jinyingjishi?streamid=4e14722244f78fc9c49bf260b10b3cad&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路82』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-7.ctv$LR•IPV4•88『线路83』 -金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8115&tk=e640d0a1bf70$LR•IPV4•88『线路84』 -金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-29.m3u8$LR•IPV4•88『线路85』 -金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6268&tk=23a9aca1f79f$LR•IPV4•88『线路86』 +金鹰卡通,http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•14『线路3』 +金鹰卡通,http://124.228.160.210:9901/tsfile/live/0011_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路4』 +金鹰卡通,http://204.12.221.218:8181/3m1080p/hnjykt.m3u8$LR•IPV4•14『线路5』 +金鹰卡通,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYKTMPP360.m3u8$LR•IPV4•14『线路6』 +金鹰卡通,http://183.237.95.108:9901/tsfile/live/1099_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路7』 +金鹰卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000006000040024&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路8』 +金鹰卡通,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000016601&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路9』 +金鹰卡通,http://111.29.9.33:6610/000000001000/5000000006000040024/index.m3u8?channel-id=bestzb&Contentid=5000000006000040024&livemode=1&stbId=3$LR•IPV4•14『线路10』 +金鹰卡通,http://111.43.126.240:9003/hls/56/index.m3u8$LR•IPV4•14『线路11』 +金鹰卡通,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225744/index.m3u8$LR•IPV4•14『线路12』 +金鹰卡通,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227300/index.m3u8$LR•IPV4•14『线路13』 +金鹰卡通,http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•14『线路14』 +金鹰纪实,http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•88『线路1』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-12.m3u8$LR•IPV4•88『线路2』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-gao-qing-2.m3u8$LR•IPV4•88『线路3』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-3.m3u8$LR•IPV4•88『线路4』 +金鹰纪实,http://nas.hssvm.com:8888/udp/225.1.1.124:5002$LR•IPV4•88『线路5』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-44.m3u8$LR•IPV4•88『线路6』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-2.ctv$LR•IPV4•88『线路7』 +金鹰纪实,https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-20.m3u8$LR•IPV4•88『线路8』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-23.ctv$LR•IPV4•88『线路9』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-9.m3u8$LR•IPV4•88『线路10』 +金鹰纪实,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=jyjs$LR•IPV4•88『线路11』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-26.m3u8$LR•IPV4•88『线路12』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-6.m3u8$LR•IPV4•88『线路13』 +金鹰纪实,http://60.2.190.206:4000/udp/239.253.92.103:6054$LR•IPV4•88『线路14』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-31.m3u8$LR•IPV4•88『线路15』 +金鹰纪实,http://e1.woc.iiiya.cn:8888/rtp/239.61.3.7:9560$LR•IPV4•88『线路16』 +金鹰纪实,http://36.105.100.208:35455/itv/5000000011000031203.m3u8?cdn=bestzb$LR•IPV4•88『线路17』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-16.m3u8$LR•IPV4•88『线路18』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-1.ctv$LR•IPV4•88『线路19』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-23.m3u8$LR•IPV4•88『线路20』 +金鹰纪实,http://home.wwang.pw:35455/itv/5000000011000031203.m3u8?cdn=bestzb$LR•IPV4•88『线路21』 +金鹰纪实,http://116.128.242.83:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•88『线路22』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-34.m3u8$LR•IPV4•88『线路23』 +金鹰纪实,https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-22.m3u8$LR•IPV4•88『线路24』 +金鹰纪实,http://drive.mxmy.net:8888/udp/239.3.1.58:8156$LR•IPV4•88『线路25』 +金鹰纪实,http://121.19.134.222:808/tsfile/live/1037_1.m3u8$LR•IPV4•88『线路26』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-41.m3u8$LR•IPV4•88『线路27』 +金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4465&tk=b53028476470$LR•IPV4•88『线路28』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-42.ctv$LR•IPV4•88『线路29』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-37.m3u8$LR•IPV4•88『线路30』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-14.m3u8$LR•IPV4•88『线路31』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-33.m3u8$LR•IPV4•88『线路32』 +金鹰纪实,https://live.264788.xyz/channel/jinyingjishi?streamid=b33f7690b2ce36708f54588c53a20742&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路33』 +金鹰纪实,http://58.57.40.22:9901/tsfile/live/1070_1.m3u8$LR•IPV4•88『线路34』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-35.m3u8$LR•IPV4•88『线路35』 +金鹰纪实,http://rrs01.hw.gmcc.net:8088/PLTV/81/224/3221226667/1.m3u8$LR•IPV4•88『线路36』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-13.m3u8$LR•IPV4•88『线路37』 +金鹰纪实,https://live.264788.xyz/channel/jinyingjishi?streamid=39c14c1420dbb152d037b2b1cc17c175&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路38』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-21.ctv$LR•IPV4•88『线路39』 +金鹰纪实,https://stream1.freetv.fun/ipv6-jin-ying-ji-shi-15.m3u8$LR•IPV4•88『线路40』 +金鹰纪实,http://121.19.134.200:808/tsfile/live/1028_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•88『线路41』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-5.ctv$LR•IPV4•88『线路42』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-10.ctv$LR•IPV4•88『线路43』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-37.ctv$LR•IPV4•88『线路44』 +金鹰纪实,http://120.238.94.10:9901/tsfile/live/1059_1.m3u8$LR•IPV4•88『线路45』 +金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4197&tk=f6cc1e0a0e1a$LR•IPV4•88『线路46』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-24.m3u8$LR•IPV4•88『线路47』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-43.ctv$LR•IPV4•88『线路48』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-20.ctv$LR•IPV4•88『线路49』 +金鹰纪实,https://t.freetv.fun/live/jin-ying-ji-shi.m3u8$LR•IPV4•88『线路50』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-11.m3u8$LR•IPV4•88『线路51』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-38.m3u8$LR•IPV4•88『线路52』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-28.ctv$LR•IPV4•88『线路53』 +金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2417&tk=e503191f8e20$LR•IPV4•88『线路54』 +金鹰纪实,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/JYJSMPP360.m3u8$LR•IPV4•88『线路55』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-gao-qing-3.m3u8$LR•IPV4•88『线路56』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-8.m3u8$LR•IPV4•88『线路57』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-2.m3u8$LR•IPV4•88『线路58』 +金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6735&tk=e640d0a1bf70$LR•IPV4•88『线路59』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-36.ctv$LR•IPV4•88『线路60』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-39.ctv$LR•IPV4•88『线路61』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-32.ctv$LR•IPV4•88『线路62』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-22.ctv$LR•IPV4•88『线路63』 +金鹰纪实,https://live.264788.xyz/channel/jinyingjishi?streamid=3680a1c0ad58417e29641bb984685a5b&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路64』 +金鹰纪实,https://hls-gateway.vpstv.net/streams/708834.m3u8$LR•IPV4•88『线路65』 +金鹰纪实,http://wouu.net:9977/udp/239.93.0.130:5140$LR•IPV4•88『线路66』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-24.ctv$LR•IPV4•88『线路67』 +金鹰纪实,http://60.7.56.33:4000/udp/239.253.92.103:6054$LR•IPV4•88『线路68』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-41.ctv$LR•IPV4•88『线路69』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-30.m3u8$LR•IPV4•88『线路70』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-19.ctv$LR•IPV4•88『线路71』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-13.ctv$LR•IPV4•88『线路72』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-40.m3u8$LR•IPV4•88『线路73』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-12.ctv$LR•IPV4•88『线路74』 +金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4677&tk=a0c4f6cfaba3$LR•IPV4•88『线路75』 +金鹰纪实,http://183.11.239.36:808/hls/171/index.m3u8$LR•IPV4•88『线路76』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-4.m3u8$LR•IPV4•88『线路77』 +金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6241&tk=a0c4f6cfaba3$LR•IPV4•88『线路78』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-31.ctv$LR•IPV4•88『线路79』 +金鹰纪实,https://live.264788.xyz/channel/jinyingjishi?streamid=4e14722244f78fc9c49bf260b10b3cad&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•88『线路80』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-7.ctv$LR•IPV4•88『线路81』 +金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8115&tk=e640d0a1bf70$LR•IPV4•88『线路82』 +金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-29.m3u8$LR•IPV4•88『线路83』 +金鹰纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6268&tk=23a9aca1f79f$LR•IPV4•88『线路84』 +金鹰纪实,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/JYJSMPP360.m3u8$LR•IPV4•88『线路85』 +金鹰纪实,http://111.29.9.33:6610/000000001000/5000000011000031203/index.m3u8?channel-id=bestzb&Contentid=5000000011000031203&livemode=1&stbId=3$LR•IPV4•88『线路86』 金鹰纪实,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226351/index.m3u8$LR•IPV4•88『线路87』 金鹰纪实,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227291/index.m3u8$LR•IPV4•88『线路88』 快乐垂钓,https://migu.188766.xyz/?migutoken=396182b2a9b61dca2daded3fc6f62311&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•42『线路1』 @@ -3077,8 +3077,8 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 快乐垂钓,http://222.134.19.49:8090/961930263$LR•IPV4•42『线路40』 快乐垂钓,http://139.155.89.87:1000/961930263$LR•IPV4•42『线路41』 快乐垂钓,http://101.34.236.223:1112/961930263$LR•IPV4•42『线路42』 -纪实人文,http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•2『线路1』 -纪实人文,http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•2『线路2』 +纪实人文,http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•2『线路1』 +纪实人文,http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•2『线路2』 中国功夫,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5897056882324761054&livemode=1&stbId=yu&mode=1&$LR•IPV4•2『线路1』 中国功夫,http://111.43.126.240:9003/hls/79/index.m3u8$LR•IPV4•2『线路2』 明星大片,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000019008&livemode=1&stbId=yu&mode=1&$LR•IPV4•3『线路1』 @@ -3109,13 +3109,13 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 弈坛春秋,http://223.110.245.139/PLTV/4/224/3221227031/index.m3u8$LR•IPV4 华数4K,http://111.22.153.159:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4•2『线路1』 华数4K,http://home.wwang.pw:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4•2『线路2』 -纯享4K,http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•7『线路1』 -纯享4K,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000011651&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路2』 -纯享4K,http://111.29.9.33:6610/000000001000/1000000004000011651/index.m3u8?channel-id=bestzb&Contentid=1000000004000011651&livemode=1&stbId=3$LR•IPV4•7『线路3』 -纯享4K,http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•7『线路4』 -纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路5』 -纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路6』 -纯享4K,http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•7『线路7』 +纯享4K,http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•7『线路1』 +纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路2』 +纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•7『线路3』 +纯享4K,http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•7『线路4』 +纯享4K,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000004000011651&livemode=1&stbId=yu&mode=1&$LR•IPV4•7『线路5』 +纯享4K,http://111.29.9.33:6610/000000001000/1000000004000011651/index.m3u8?channel-id=bestzb&Contentid=1000000004000011651&livemode=1&stbId=3$LR•IPV4•7『线路6』 +纯享4K,http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•7『线路7』 安徽,#genre# 滁州新闻综合频道,http://183.167.193.45:1935/live/cztvzh/playlist.m3u8$LR•IPV4 @@ -3123,14 +3123,14 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 滁州公共频道,http://183.167.193.45:1935/live/cztvgg/playlist.m3u8$LR•IPV4 铜陵新闻综合频道,https://ls.qingting.fm/live/21303/64k.m3u8$LR•IPV4•2『线路1』 铜陵新闻综合频道,http://dstpush1.retalltech.com/app/stream1.m3u8$LR•IPV4•2『线路2』 -亳州农村,http://220.180.110.101:8083/videos/live/39/13/o4ncrHkSp7q09/o4ncrHkSp7q09.m3u8$LR•IPV4•2『线路1』 -亳州农村,http://zbbf2.ahbztv.com/live/418.m3u8$LR•IPV4•2『线路2』 +亳州农村,http://zbbf2.ahbztv.com/live/418.m3u8$LR•IPV4•2『线路1』 +亳州农村,http://220.180.110.101:8083/videos/live/39/13/o4ncrHkSp7q09/o4ncrHkSp7q09.m3u8$LR•IPV4•2『线路2』 北京,#genre# -北京财经,http://ivi.bupt.edu.cn/hls/btv5.m3u8$LR•IPV4•2『线路1』 -北京财经,http://123.121.5.183:4000/rtp/239.3.1.116:8000$LR•IPV4•2『线路2』 -北京青年,http://ivi.bupt.edu.cn/hls/btv8.m3u8$LR•IPV4•2『线路1』 -北京青年,http://123.121.5.183:4000/rtp/239.3.1.118:8000$LR•IPV4•2『线路2』 +北京财经,http://123.121.5.183:4000/rtp/239.3.1.116:8000$LR•IPV4•2『线路1』 +北京财经,http://ivi.bupt.edu.cn/hls/btv5.m3u8$LR•IPV4•2『线路2』 +北京青年,http://123.121.5.183:4000/rtp/239.3.1.118:8000$LR•IPV4•2『线路1』 +北京青年,http://ivi.bupt.edu.cn/hls/btv8.m3u8$LR•IPV4•2『线路2』 优优宝贝,http://120.76.248.139/live/bfgd/4200000153.m3u8$LR•IPV4 生态环境,http://120.76.248.139/live/bfgd/4200000149.m3u8$LR•IPV4 四海钓鱼,http://120.76.248.139/live/bfgd/4200000229.m3u8$LR•IPV4•15『线路1』 @@ -3173,21 +3173,22 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 南宁影视娱乐,http://hls.nntv.cn/nnlive/YSYL_244.m3u8$LR•IPV4 河北,#genre# -邢台综合,http://222.223.119.21:8888/newlive/live/hls/54/live.m3u8$LR•IPV4•3『线路1』 -邢台综合,https://jwplay.hebyun.com.cn:443/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•3『线路2』 -邢台综合,http://jwplay.hebyun.com.cn/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•3『线路3』 -河北都市,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•3『线路1』 -河北农民,https://ls.qingting.fm/live/1650/64k.m3u8$LR•IPV4•3『线路2』 -河北农民,http://1.94.31.214/php/hebei.php?id=nmpd$LR•IPV4•3『线路3』 +邢台综合,https://jwplay.hebyun.com.cn:443/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•3『线路1』 +邢台综合,http://jwplay.hebyun.com.cn/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•3『线路2』 +邢台综合,http://222.223.119.21:8888/newlive/live/hls/54/live.m3u8$LR•IPV4•3『线路3』 +河北都市,https://radio.pull.hebtv.com/live/hebnczx.m3u8$LR•IPV4•3『线路1』 +河北都市,http://1.94.31.214/php/hebei.php?id=hbds$LR•IPV4•3『线路2』 +河北都市,http://121.19.134.246:808/hls/21/index.m3u8$LR•IPV4•3『线路3』 +河北农民,https://jwcdnqx.hebyun.com.cn/live/clzhpd/1500k/tzwj_video.m3u8?zhebd$LR•IPV4•3『线路1』 +河北农民,http://1.94.31.214/php/hebei.php?id=nmpd$LR•IPV4•3『线路2』 +河北农民,http://121.19.134.246:808/hls/25/index.m3u8$LR•IPV4•3『线路3』 鹿泉一套,http://hblq.chinashadt.com:2036/live/stream:luquan1.stream/playlist.m3u8$LR•IPV4 -河北经济,http://121.19.134.246:808/hls/20/index.m3u8$LR•IPV4•2『线路1』 -河北经济,http://1.94.31.214/php/hebei.php?id=jjsh$LR•IPV4•2『线路2』 -河北影视,http://121.19.134.246:808/hls/22/index.m3u8$LR•IPV4•2『线路1』 -河北影视,http://1.94.31.214/php/hebei.php?id=hbys$LR•IPV4•2『线路2』 -河北公共,http://121.19.134.246:808/hls/24/index.m3u8$LR•IPV4•2『线路1』 -河北公共,http://1.94.31.214/php/hebei.php?id=hbgg$LR•IPV4•2『线路2』 +河北经济,http://1.94.31.214/php/hebei.php?id=jjsh$LR•IPV4•2『线路1』 +河北经济,http://121.19.134.246:808/hls/20/index.m3u8$LR•IPV4•2『线路2』 +河北影视,http://1.94.31.214/php/hebei.php?id=hbys$LR•IPV4•2『线路1』 +河北影视,http://121.19.134.246:808/hls/22/index.m3u8$LR•IPV4•2『线路2』 +河北公共,http://1.94.31.214/php/hebei.php?id=hbgg$LR•IPV4•2『线路1』 +河北公共,http://121.19.134.246:808/hls/24/index.m3u8$LR•IPV4•2『线路2』 鹿泉二套,http://hblq.chinashadt.com:2036/live/stream:luquan2.stream/playlist.m3u8$LR•IPV4 内蒙古,#genre# @@ -3224,82 +3225,82 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 江苏城市,http://222.134.19.49:8090/626064714$LR•IPV4•14『线路12』 江苏城市,http://139.155.89.87:1000/626064714$LR•IPV4•14『线路13』 江苏城市,http://101.34.236.223:1112/626064714$LR•IPV4•14『线路14』 -江苏综艺,http://183.207.248.71/gitv/live1/G_JSZY/G_JSZY$LR•IPV4•14『线路1』 -江苏综艺,https://live.chinacert.cftest5.cn/cnmg/live/626065193$LR•IPV4•14『线路2』 -江苏综艺,http://fn.gcl.de5.net:5908/gsh950428/626065193$LR•IPV4•14『线路3』 -江苏综艺,http://wfenf.x3322.net:7788/626065193$LR•IPV4•14『线路4』 -江苏综艺,http://106.5.175.159:1234/626065193$LR•IPV4•14『线路5』 -江苏综艺,http://36.104.221.222:7788/626065193$LR•IPV4•14『线路6』 -江苏综艺,http://115.58.151.196:1234/626065193$LR•IPV4•14『线路7』 -江苏综艺,http://182.61.15.163:80/626065193$LR•IPV4•14『线路8』 -江苏综艺,http://121.23.132.14:7788/626065193$LR•IPV4•14『线路9』 -江苏综艺,http://120.4.126.153:1234/626065193$LR•IPV4•14『线路10』 -江苏综艺,http://47.119.24.76:59093/626065193$LR•IPV4•14『线路11』 -江苏综艺,http://222.134.19.49:8090/626065193$LR•IPV4•14『线路12』 -江苏综艺,http://139.155.89.87:1000/626065193$LR•IPV4•14『线路13』 -江苏综艺,http://101.34.236.223:1112/626065193$LR•IPV4•14『线路14』 -江苏影视,http://223.110.243.134/PLTV/4/224/3221225937/index.m3u8$LR•IPV4•14『线路1』 -江苏影视,https://live.chinacert.cftest5.cn/cnmg/live/626064697$LR•IPV4•14『线路2』 -江苏影视,http://fn.gcl.de5.net:5908/gsh950428/626064697$LR•IPV4•14『线路3』 -江苏影视,http://wfenf.x3322.net:7788/626064697$LR•IPV4•14『线路4』 -江苏影视,http://106.5.175.159:1234/626064697$LR•IPV4•14『线路5』 -江苏影视,http://36.104.221.222:7788/626064697$LR•IPV4•14『线路6』 -江苏影视,http://115.58.151.196:1234/626064697$LR•IPV4•14『线路7』 -江苏影视,http://182.61.15.163:80/626064697$LR•IPV4•14『线路8』 -江苏影视,http://121.23.132.14:7788/626064697$LR•IPV4•14『线路9』 -江苏影视,http://120.4.126.153:1234/626064697$LR•IPV4•14『线路10』 -江苏影视,http://47.119.24.76:59093/626064697$LR•IPV4•14『线路11』 -江苏影视,http://222.134.19.49:8090/626064697$LR•IPV4•14『线路12』 -江苏影视,http://139.155.89.87:1000/626064697$LR•IPV4•14『线路13』 -江苏影视,http://101.34.236.223:1112/626064697$LR•IPV4•14『线路14』 -江苏教育,http://223.110.245.151/ott.js.chinamobile.com/PLTV/3/224/3221225923/index.m3u8$LR•IPV4•14『线路1』 -江苏教育,https://live.chinacert.cftest5.cn/cnmg/live/628008321$LR•IPV4•14『线路2』 -江苏教育,http://fn.gcl.de5.net:5908/gsh950428/628008321$LR•IPV4•14『线路3』 -江苏教育,http://wfenf.x3322.net:7788/628008321$LR•IPV4•14『线路4』 -江苏教育,http://106.5.175.159:1234/628008321$LR•IPV4•14『线路5』 -江苏教育,http://36.104.221.222:7788/628008321$LR•IPV4•14『线路6』 -江苏教育,http://115.58.151.196:1234/628008321$LR•IPV4•14『线路7』 -江苏教育,http://182.61.15.163:80/628008321$LR•IPV4•14『线路8』 -江苏教育,http://121.23.132.14:7788/628008321$LR•IPV4•14『线路9』 -江苏教育,http://120.4.126.153:1234/628008321$LR•IPV4•14『线路10』 -江苏教育,http://47.119.24.76:59093/628008321$LR•IPV4•14『线路11』 -江苏教育,http://222.134.19.49:8090/628008321$LR•IPV4•14『线路12』 -江苏教育,http://139.155.89.87:1000/628008321$LR•IPV4•14『线路13』 -江苏教育,http://101.34.236.223:1112/628008321$LR•IPV4•14『线路14』 -南京十八,http://183.207.248.71/gitv/live1/G_NJSB/G_NJSB$LR•IPV4•14『线路1』 -南京十八,https://live.chinacert.cftest5.cn/cnmg/live/838151753$LR•IPV4•14『线路2』 -南京十八,http://fn.gcl.de5.net:5908/gsh950428/838151753$LR•IPV4•14『线路3』 -南京十八,http://wfenf.x3322.net:7788/838151753$LR•IPV4•14『线路4』 -南京十八,http://106.5.175.159:1234/838151753$LR•IPV4•14『线路5』 -南京十八,http://36.104.221.222:7788/838151753$LR•IPV4•14『线路6』 -南京十八,http://115.58.151.196:1234/838151753$LR•IPV4•14『线路7』 -南京十八,http://182.61.15.163:80/838151753$LR•IPV4•14『线路8』 -南京十八,http://121.23.132.14:7788/838151753$LR•IPV4•14『线路9』 -南京十八,http://120.4.126.153:1234/838151753$LR•IPV4•14『线路10』 -南京十八,http://47.119.24.76:59093/838151753$LR•IPV4•14『线路11』 -南京十八,http://222.134.19.49:8090/838151753$LR•IPV4•14『线路12』 -南京十八,http://139.155.89.87:1000/838151753$LR•IPV4•14『线路13』 -南京十八,http://101.34.236.223:1112/838151753$LR•IPV4•14『线路14』 +江苏综艺,https://live.chinacert.cftest5.cn/cnmg/live/626065193$LR•IPV4•14『线路1』 +江苏综艺,http://fn.gcl.de5.net:5908/gsh950428/626065193$LR•IPV4•14『线路2』 +江苏综艺,http://wfenf.x3322.net:7788/626065193$LR•IPV4•14『线路3』 +江苏综艺,http://106.5.175.159:1234/626065193$LR•IPV4•14『线路4』 +江苏综艺,http://36.104.221.222:7788/626065193$LR•IPV4•14『线路5』 +江苏综艺,http://115.58.151.196:1234/626065193$LR•IPV4•14『线路6』 +江苏综艺,http://182.61.15.163:80/626065193$LR•IPV4•14『线路7』 +江苏综艺,http://121.23.132.14:7788/626065193$LR•IPV4•14『线路8』 +江苏综艺,http://120.4.126.153:1234/626065193$LR•IPV4•14『线路9』 +江苏综艺,http://47.119.24.76:59093/626065193$LR•IPV4•14『线路10』 +江苏综艺,http://222.134.19.49:8090/626065193$LR•IPV4•14『线路11』 +江苏综艺,http://139.155.89.87:1000/626065193$LR•IPV4•14『线路12』 +江苏综艺,http://101.34.236.223:1112/626065193$LR•IPV4•14『线路13』 +江苏综艺,http://183.207.248.71/gitv/live1/G_JSZY/G_JSZY$LR•IPV4•14『线路14』 +江苏影视,https://live.chinacert.cftest5.cn/cnmg/live/626064697$LR•IPV4•14『线路1』 +江苏影视,http://fn.gcl.de5.net:5908/gsh950428/626064697$LR•IPV4•14『线路2』 +江苏影视,http://wfenf.x3322.net:7788/626064697$LR•IPV4•14『线路3』 +江苏影视,http://106.5.175.159:1234/626064697$LR•IPV4•14『线路4』 +江苏影视,http://36.104.221.222:7788/626064697$LR•IPV4•14『线路5』 +江苏影视,http://115.58.151.196:1234/626064697$LR•IPV4•14『线路6』 +江苏影视,http://182.61.15.163:80/626064697$LR•IPV4•14『线路7』 +江苏影视,http://121.23.132.14:7788/626064697$LR•IPV4•14『线路8』 +江苏影视,http://120.4.126.153:1234/626064697$LR•IPV4•14『线路9』 +江苏影视,http://47.119.24.76:59093/626064697$LR•IPV4•14『线路10』 +江苏影视,http://222.134.19.49:8090/626064697$LR•IPV4•14『线路11』 +江苏影视,http://139.155.89.87:1000/626064697$LR•IPV4•14『线路12』 +江苏影视,http://101.34.236.223:1112/626064697$LR•IPV4•14『线路13』 +江苏影视,http://223.110.243.134/PLTV/4/224/3221225937/index.m3u8$LR•IPV4•14『线路14』 +江苏教育,https://live.chinacert.cftest5.cn/cnmg/live/628008321$LR•IPV4•14『线路1』 +江苏教育,http://fn.gcl.de5.net:5908/gsh950428/628008321$LR•IPV4•14『线路2』 +江苏教育,http://wfenf.x3322.net:7788/628008321$LR•IPV4•14『线路3』 +江苏教育,http://106.5.175.159:1234/628008321$LR•IPV4•14『线路4』 +江苏教育,http://36.104.221.222:7788/628008321$LR•IPV4•14『线路5』 +江苏教育,http://115.58.151.196:1234/628008321$LR•IPV4•14『线路6』 +江苏教育,http://182.61.15.163:80/628008321$LR•IPV4•14『线路7』 +江苏教育,http://121.23.132.14:7788/628008321$LR•IPV4•14『线路8』 +江苏教育,http://120.4.126.153:1234/628008321$LR•IPV4•14『线路9』 +江苏教育,http://47.119.24.76:59093/628008321$LR•IPV4•14『线路10』 +江苏教育,http://222.134.19.49:8090/628008321$LR•IPV4•14『线路11』 +江苏教育,http://139.155.89.87:1000/628008321$LR•IPV4•14『线路12』 +江苏教育,http://101.34.236.223:1112/628008321$LR•IPV4•14『线路13』 +江苏教育,http://223.110.245.151/ott.js.chinamobile.com/PLTV/3/224/3221225923/index.m3u8$LR•IPV4•14『线路14』 +南京十八,https://live.chinacert.cftest5.cn/cnmg/live/838151753$LR•IPV4•14『线路1』 +南京十八,http://fn.gcl.de5.net:5908/gsh950428/838151753$LR•IPV4•14『线路2』 +南京十八,http://wfenf.x3322.net:7788/838151753$LR•IPV4•14『线路3』 +南京十八,http://106.5.175.159:1234/838151753$LR•IPV4•14『线路4』 +南京十八,http://36.104.221.222:7788/838151753$LR•IPV4•14『线路5』 +南京十八,http://115.58.151.196:1234/838151753$LR•IPV4•14『线路6』 +南京十八,http://182.61.15.163:80/838151753$LR•IPV4•14『线路7』 +南京十八,http://121.23.132.14:7788/838151753$LR•IPV4•14『线路8』 +南京十八,http://120.4.126.153:1234/838151753$LR•IPV4•14『线路9』 +南京十八,http://47.119.24.76:59093/838151753$LR•IPV4•14『线路10』 +南京十八,http://222.134.19.49:8090/838151753$LR•IPV4•14『线路11』 +南京十八,http://139.155.89.87:1000/838151753$LR•IPV4•14『线路12』 +南京十八,http://101.34.236.223:1112/838151753$LR•IPV4•14『线路13』 +南京十八,http://183.207.248.71/gitv/live1/G_NJSB/G_NJSB$LR•IPV4•14『线路14』 江苏体育,http://183.207.248.71/gitv/live1/G_JSTY/G_JSTY$LR•IPV4 -南京教科,https://live.nbs.cn/channels/njtv/jkpd/m3u8:500k/live.m3u8$LR•IPV4•17『线路1』 -南京教科,http://183.207.248.71/gitv/live1/G_NJJK/G_NJJK$LR•IPV4•17『线路2』 -南京教科,http://223.110.245.155/ott.js.chinamobile.com/PLTV/3/224/3221227194/index.m3u8$LR•IPV4•17『线路3』 -南京教科,http://nklive.nbs.cn/hls/75b3c462-b831-4de7-a34b-5d3221db2069/index.m3u8$LR•IPV4•17『线路4』 -南京教科,https://live.chinacert.cftest5.cn/cnmg/live/838153729$LR•IPV4•17『线路5』 -南京教科,http://fn.gcl.de5.net:5908/gsh950428/838153729$LR•IPV4•17『线路6』 -南京教科,http://wfenf.x3322.net:7788/838153729$LR•IPV4•17『线路7』 -南京教科,http://106.5.175.159:1234/838153729$LR•IPV4•17『线路8』 -南京教科,http://36.104.221.222:7788/838153729$LR•IPV4•17『线路9』 -南京教科,http://115.58.151.196:1234/838153729$LR•IPV4•17『线路10』 -南京教科,http://182.61.15.163:80/838153729$LR•IPV4•17『线路11』 -南京教科,http://121.23.132.14:7788/838153729$LR•IPV4•17『线路12』 -南京教科,http://120.4.126.153:1234/838153729$LR•IPV4•17『线路13』 -南京教科,http://47.119.24.76:59093/838153729$LR•IPV4•17『线路14』 -南京教科,http://222.134.19.49:8090/838153729$LR•IPV4•17『线路15』 -南京教科,http://139.155.89.87:1000/838153729$LR•IPV4•17『线路16』 -南京教科,http://101.34.236.223:1112/838153729$LR•IPV4•17『线路17』 -南京少儿,https://live.nbs.cn/channels/njtv/sepd/m3u8:500k/live.m3u8$LR•IPV4•2『线路1』 -南京少儿,http://nklive.nbs.cn/hls/e0981f3f-1a20-4a59-b8d1-17feb83a4610/index.m3u8$LR•IPV4•2『线路2』 +南京教科,http://nklive.nbs.cn/hls/75b3c462-b831-4de7-a34b-5d3221db2069/index.m3u8$LR•IPV4•17『线路1』 +南京教科,https://live.chinacert.cftest5.cn/cnmg/live/838153729$LR•IPV4•17『线路2』 +南京教科,http://fn.gcl.de5.net:5908/gsh950428/838153729$LR•IPV4•17『线路3』 +南京教科,http://wfenf.x3322.net:7788/838153729$LR•IPV4•17『线路4』 +南京教科,http://106.5.175.159:1234/838153729$LR•IPV4•17『线路5』 +南京教科,http://36.104.221.222:7788/838153729$LR•IPV4•17『线路6』 +南京教科,http://115.58.151.196:1234/838153729$LR•IPV4•17『线路7』 +南京教科,http://182.61.15.163:80/838153729$LR•IPV4•17『线路8』 +南京教科,http://121.23.132.14:7788/838153729$LR•IPV4•17『线路9』 +南京教科,http://120.4.126.153:1234/838153729$LR•IPV4•17『线路10』 +南京教科,http://47.119.24.76:59093/838153729$LR•IPV4•17『线路11』 +南京教科,http://222.134.19.49:8090/838153729$LR•IPV4•17『线路12』 +南京教科,http://139.155.89.87:1000/838153729$LR•IPV4•17『线路13』 +南京教科,http://101.34.236.223:1112/838153729$LR•IPV4•17『线路14』 +南京教科,https://live.nbs.cn/channels/njtv/jkpd/m3u8:500k/live.m3u8$LR•IPV4•17『线路15』 +南京教科,http://183.207.248.71/gitv/live1/G_NJJK/G_NJJK$LR•IPV4•17『线路16』 +南京教科,http://223.110.245.155/ott.js.chinamobile.com/PLTV/3/224/3221227194/index.m3u8$LR•IPV4•17『线路17』 +南京少儿,http://nklive.nbs.cn/hls/e0981f3f-1a20-4a59-b8d1-17feb83a4610/index.m3u8$LR•IPV4•2『线路1』 +南京少儿,https://live.nbs.cn/channels/njtv/sepd/m3u8:500k/live.m3u8$LR•IPV4•2『线路2』 苏州4k,https://live-auth.51kandianshi.com/szgd/csztv4k_hd.m3u8$LR•IPV4•4『线路1』 苏州4k,http://43.251.226.89:8080/play/927.m3u8$LR•IPV4•4『线路2』 苏州4k,https://tylive.kan0512.com/norecord/csztv4k_4k.m3u8$LR•IPV4•4『线路3』 @@ -3405,7 +3406,7 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 之江纪录,http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•6『线路5』 之江纪录,http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•6『线路6』 浙江民生,https://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路1』 -浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel06/1080p.m3u8$LR•IPV4•37『线路2』 +浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路2』 浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-1.m3u8$LR•IPV4•37『线路3』 浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-2.ctv$LR•IPV4•37『线路4』 浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-1.m3u8$LR•IPV4•37『线路5』 @@ -3414,8 +3415,8 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-9.ctv$LR•IPV4•37『线路8』 浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-6.ctv$LR•IPV4•37『线路9』 浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng.m3u8$LR•IPV4•37『线路10』 -浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路11』 -浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel006/1080p.m3u8$LR•IPV4•37『线路12』 +浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel06/1080p.m3u8$LR•IPV4•37『线路11』 +浙江民生,http://ali-m-l.cztv.com/channels/lantian/channel06/720p.m3u8$LR•IPV4•37『线路12』 浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-xiu-xian-4.m3u8$LR•IPV4•37『线路13』 浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-3.m3u8$LR•IPV4•37『线路14』 浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-2.m3u8$LR•IPV4•37『线路15』 @@ -3442,21 +3443,21 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 浙江民生,http://120.55.49.231:3095/rtp/233.50.201.136:5140$LR•IPV4•37『线路36』 浙江民生,https://ali-xwl.cztv.com/live/channel061080Plxw.m3u8$LR•IPV4•37『线路37』 浙江经济,https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8$LR•IPV4•7『线路1』 -浙江经济,https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8?$LR•IPV4•7『线路2』 -浙江经济,http://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8$LR•IPV4•7『线路3』 +浙江经济,http://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8$LR•IPV4•7『线路2』 +浙江经济,http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8$LR•IPV4•7『线路3』 浙江经济,https://ali-xwl.cztv.com/live/channel031080Plxw.m3u8$LR•IPV4•7『线路4』 -浙江经济,http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•7『线路5』 -浙江经济,http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•7『线路6』 -浙江经济,http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•7『线路7』 +浙江经济,http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•7『线路5』 +浙江经济,http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•7『线路6』 +浙江经济,http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•7『线路7』 浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•21『线路1』 -浙江钱江,http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•21『线路2』 -浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•21『线路3』 -浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•21『线路4』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•21『线路5』 -浙江钱江,http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•21『线路6』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•21『线路7』 -浙江钱江,http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•21『线路8』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•21『线路9』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•21『线路2』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•21『线路3』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•21『线路4』 +浙江钱江,http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•21『线路5』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•21『线路6』 +浙江钱江,http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•21『线路7』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•21『线路8』 +浙江钱江,http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•21『线路9』 浙江钱江,http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•21『线路10』 浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•21『线路11』 浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•21『线路12』 @@ -3492,25 +3493,26 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 公共新闻,http://101.34.236.223:1112/626064693$LR•IPV4•19『线路19』 上虞新闻综合,http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?zzhed$LR•IPV4•2『线路1』 上虞新闻综合,http://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•2『线路2』 -上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•9『线路1』 -上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•9『线路2』 -上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•9『线路3』 -上虞文化影院,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•9『线路4』 -上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•9『线路5』 -上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•9『线路6』 -上虞文化影院,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•9『线路7』 -上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•9『线路8』 -上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•9『线路9』 -上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路1』 +上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•10『线路1』 +上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•10『线路2』 +上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路3』 +上虞文化影院,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•10『线路4』 +上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•10『线路5』 +上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•10『线路6』 +上虞文化影院,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•10『线路7』 +上虞文化影院,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•10『线路8』 +上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•10『线路9』 +上虞文化影院,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•10『线路10』 +上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路1』 上虞新商都,https://t.freetv.fun/live/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路2』 上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed\r\n$LR•IPV4•11『线路3』 上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed?$LR•IPV4•11『线路4』 上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-2.m3u8$LR•IPV4•11『线路5』 上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-5.m3u8$LR•IPV4•11『线路6』 -上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路7』 -上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路8』 -上虞新商都,https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路9』 -上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8$LR•IPV4•11『线路10』 +上虞新商都,http://l.cztvcloud.com/channels/lantian/SXshangyu3/720p.m3u8?zzhed$LR•IPV4•11『线路7』 +上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-1.m3u8$LR•IPV4•11『线路8』 +上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-3.m3u8$LR•IPV4•11『线路9』 +上虞新商都,https://t.freetv.fun/live/shang-yu-xin-shang-du.m3u8$LR•IPV4•11『线路10』 上虞新商都,https://stream1.freetv.fun/shang-yu-xin-shang-du-4.m3u8$LR•IPV4•11『线路11』 云和新闻综合,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』 @@ -3587,8 +3589,8 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 萧山新闻综合,http://l.cztvcloud.com/channels/lantian/SXxiaoshan1/720p.m3u8?$LR•IPV4•17『线路16』 萧山新闻综合,http://l.cztvcloud.com/channels/lantian/SXxiaoshan3/720p.m3u8$LR•IPV4•17『线路17』 萧山生活频道,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed$LR•IPV4•4『线路1』 -萧山生活频道,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•4『线路2』 -萧山生活频道,https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•4『线路3』 +萧山生活频道,https://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•4『线路2』 +萧山生活频道,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8$LR•IPV4•4『线路3』 萧山生活频道,http://l.cztvcloud.com/channels/lantian/SXxiaoshan2/720p.m3u8?zzhed?$LR•IPV4•4『线路4』 诸暨新闻综合,https://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8$LR•IPV4•2『线路1』 诸暨新闻综合,http://l.cztvcloud.com/channels/lantian/SXzhuji3/720p.m3u8?zzhed$LR•IPV4•2『线路2』 @@ -3615,17 +3617,17 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 浙江生活,http://ali-m-l.cztv.com/channels/lantian/channel003/720p.m3u8$LR•IPV4•19『线路2』 浙江生活,http://ali-vl.cztv.com/channels/lantian/channel003/360p.m3u8$LR•IPV4•19『线路3』 浙江生活,http://api3.52tb.xyz/info?id=437&token=20230226bgyszp$LR•IPV4•19『线路4』 -浙江生活,http://ali-m-l.cztv.com/channels/lantian/channel03/1080p.m3u8$LR•IPV4•19『线路5』 -浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-7.m3u8$LR•IPV4•19『线路6』 -浙江生活,https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-3.m3u8$LR•IPV4•19『线路7』 -浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•19『线路8』 -浙江生活,http://ali-xwl.cztv.com/live/channel031080Plxw.m3u8$LR•IPV4•19『线路9』 -浙江生活,http://ali-m-l.cztv.com/channels/lantian/channel03/720p.m3u8$LR•IPV4•19『线路10』 -浙江生活,http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•19『线路11』 -浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-6.m3u8$LR•IPV4•19『线路12』 -浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-8.ctv$LR•IPV4•19『线路13』 -浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-1.ctv$LR•IPV4•19『线路14』 -浙江生活,https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-6.m3u8$LR•IPV4•19『线路15』 +浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-7.m3u8$LR•IPV4•19『线路5』 +浙江生活,https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-3.m3u8$LR•IPV4•19『线路6』 +浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-2.ctv$LR•IPV4•19『线路7』 +浙江生活,http://ali-xwl.cztv.com/live/channel031080Plxw.m3u8$LR•IPV4•19『线路8』 +浙江生活,http://ali-m-l.cztv.com/channels/lantian/channel03/720p.m3u8$LR•IPV4•19『线路9』 +浙江生活,http://ali-xwl.cztv.com/live/channel03720Plxw.m3u8$LR•IPV4•19『线路10』 +浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-6.m3u8$LR•IPV4•19『线路11』 +浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-8.ctv$LR•IPV4•19『线路12』 +浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-1.ctv$LR•IPV4•19『线路13』 +浙江生活,https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-6.m3u8$LR•IPV4•19『线路14』 +浙江生活,https://ali-m-l.cztv.com/channels/lantian/channel003/1080p.m3u8?$LR•IPV4•19『线路15』 浙江生活,https://stream1.freetv.fun/zhe-jiang-jing-ji-sheng-huo-7.ctv$LR•IPV4•19『线路16』 浙江生活,http://120.55.49.231:3095/rtp/233.50.201.133:5140$LR•IPV4•19『线路17』 浙江生活,https://t.freetv.fun/live/zhe-jiang-jing-ji-sheng-huo-2.m3u8$LR•IPV4•19『线路18』 @@ -3731,9 +3733,9 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-5.ctv$LR•IPV4•7『线路5』 新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-4.m3u8$LR•IPV4•7『线路6』 新昌新闻综合,https://stream1.freetv.fun/xin-chang-xin-wen-zong-he-1.m3u8$LR•IPV4•7『线路7』 -文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路1』 +文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路1』 文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8$LR•IPV4•4『线路2』 -文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed?$LR•IPV4•4『线路3』 +文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?zzhed$LR•IPV4•4『线路3』 文成综合,http://l.cztvcloud.com/channels/lantian/SXwencheng1/720p.m3u8?fbl=$LR•IPV4•4『线路4』 庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8$LR•IPV4•6『线路1』 庆元综合,http://l.cztvcloud.com/channels/lantian/SXqingyuan1/720p.m3u8?zzhed$LR•IPV4•6『线路2』 @@ -3767,110 +3769,110 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 中国蓝新闻,https://ali-m-l.cztv.com/channels/lantian/channel009/1080p.m3u8?$LR•IPV4•2『线路2』 湖南,#genre# -湖南都市,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDSMPP360.m3u8$LR•IPV4•26『线路1』 -湖南都市,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnds$LR•IPV4•26『线路2』 -湖南都市,http://110.53.218.182:9902/tsfile/live/0127_1.m3u8$LR•IPV4•26『线路3』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-12.ctv$LR•IPV4•26『线路4』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-3.m3u8$LR•IPV4•26『线路5』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-6.ctv$LR•IPV4•26『线路6』 -湖南都市,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7510&tk=23a9aca1f79f$LR•IPV4•26『线路7』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-5.m3u8$LR•IPV4•26『线路8』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-8.m3u8$LR•IPV4•26『线路9』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-15.m3u8$LR•IPV4•26『线路10』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-4.m3u8$LR•IPV4•26『线路11』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-7.m3u8$LR•IPV4•26『线路12』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-gao-qing-1.m3u8$LR•IPV4•26『线路13』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-10.m3u8$LR•IPV4•26『线路14』 -湖南都市,http://www.peanutbar.cn:8099/tsfile/live/1002_1.m3u8?key=txiptv$LR•IPV4•26『线路15』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-6.m3u8$LR•IPV4•26『线路16』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-gao-qing-3.m3u8$LR•IPV4•26『线路17』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-14.m3u8$LR•IPV4•26『线路18』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-13.m3u8$LR•IPV4•26『线路19』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-1.m3u8$LR•IPV4•26『线路20』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-9.m3u8$LR•IPV4•26『线路21』 -湖南都市,http://116.128.243.121:85/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路22』 -湖南都市,http://116.128.242.83:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路23』 -湖南都市,http://113.241.133.180:85/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路24』 -湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-11.m3u8$LR•IPV4•26『线路25』 +湖南都市,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnds$LR•IPV4•26『线路1』 +湖南都市,http://110.53.218.182:9902/tsfile/live/0127_1.m3u8$LR•IPV4•26『线路2』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-12.ctv$LR•IPV4•26『线路3』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-3.m3u8$LR•IPV4•26『线路4』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-6.ctv$LR•IPV4•26『线路5』 +湖南都市,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7510&tk=23a9aca1f79f$LR•IPV4•26『线路6』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-5.m3u8$LR•IPV4•26『线路7』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-8.m3u8$LR•IPV4•26『线路8』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-15.m3u8$LR•IPV4•26『线路9』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-4.m3u8$LR•IPV4•26『线路10』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-7.m3u8$LR•IPV4•26『线路11』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-gao-qing-1.m3u8$LR•IPV4•26『线路12』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-10.m3u8$LR•IPV4•26『线路13』 +湖南都市,http://www.peanutbar.cn:8099/tsfile/live/1002_1.m3u8?key=txiptv$LR•IPV4•26『线路14』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-6.m3u8$LR•IPV4•26『线路15』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-gao-qing-3.m3u8$LR•IPV4•26『线路16』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-14.m3u8$LR•IPV4•26『线路17』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-13.m3u8$LR•IPV4•26『线路18』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-1.m3u8$LR•IPV4•26『线路19』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-9.m3u8$LR•IPV4•26『线路20』 +湖南都市,http://116.128.243.121:85/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路21』 +湖南都市,http://116.128.242.83:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路22』 +湖南都市,http://113.241.133.180:85/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•26『线路23』 +湖南都市,https://stream1.freetv.fun/hu-nan-du-shi-11.m3u8$LR•IPV4•26『线路24』 +湖南都市,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDSMPP360.m3u8$LR•IPV4•26『线路25』 湖南都市,http://36.137.183.45:1100/difang/hunan/hunan.php?id=hnds$LR•IPV4•26『线路26』 -湖南经视,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNJSMPP360.m3u8$LR•IPV4•25『线路1』 -湖南经视,http://116.128.243.121:85/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路2』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-2.m3u8$LR•IPV4•25『线路3』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-12.m3u8$LR•IPV4•25『线路4』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-10.ctv$LR•IPV4•25『线路5』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-9.m3u8$LR•IPV4•25『线路6』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-1.m3u8$LR•IPV4•25『线路7』 -湖南经视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0780&tk=abed47f08529$LR•IPV4•25『线路8』 -湖南经视,http://116.128.242.83:9901/tsfile/live/0131_1.m3u8$LR•IPV4•25『线路9』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-4.m3u8$LR•IPV4•25『线路10』 -湖南经视,http://116.128.242.83:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路11』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-gao-qing-2.m3u8$LR•IPV4•25『线路12』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-5.m3u8$LR•IPV4•25『线路13』 -湖南经视,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnjs$LR•IPV4•25『线路14』 -湖南经视,http://www.peanutbar.cn:8099/tsfile/live/1006_1.m3u8?key=txiptv$LR•IPV4•25『线路15』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-10.m3u8$LR•IPV4•25『线路16』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-6.m3u8$LR•IPV4•25『线路17』 -湖南经视,http://110.53.218.182:9902/tsfile/live/1004_1.m3u8$LR•IPV4•25『线路18』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-11.m3u8$LR•IPV4•25『线路19』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-13.m3u8$LR•IPV4•25『线路20』 -湖南经视,http://113.241.133.180:85/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路21』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-14.m3u8$LR•IPV4•25『线路22』 -湖南经视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0241&tk=23a9aca1f79f$LR•IPV4•25『线路23』 -湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-15.ctv$LR•IPV4•25『线路24』 +湖南经视,http://116.128.243.121:85/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路1』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-2.m3u8$LR•IPV4•25『线路2』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-12.m3u8$LR•IPV4•25『线路3』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-10.ctv$LR•IPV4•25『线路4』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-9.m3u8$LR•IPV4•25『线路5』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-1.m3u8$LR•IPV4•25『线路6』 +湖南经视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0780&tk=abed47f08529$LR•IPV4•25『线路7』 +湖南经视,http://116.128.242.83:9901/tsfile/live/0131_1.m3u8$LR•IPV4•25『线路8』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-4.m3u8$LR•IPV4•25『线路9』 +湖南经视,http://116.128.242.83:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路10』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-gao-qing-2.m3u8$LR•IPV4•25『线路11』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-5.m3u8$LR•IPV4•25『线路12』 +湖南经视,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnjs$LR•IPV4•25『线路13』 +湖南经视,http://www.peanutbar.cn:8099/tsfile/live/1006_1.m3u8?key=txiptv$LR•IPV4•25『线路14』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-10.m3u8$LR•IPV4•25『线路15』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-6.m3u8$LR•IPV4•25『线路16』 +湖南经视,http://110.53.218.182:9902/tsfile/live/1004_1.m3u8$LR•IPV4•25『线路17』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-11.m3u8$LR•IPV4•25『线路18』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-13.m3u8$LR•IPV4•25『线路19』 +湖南经视,http://113.241.133.180:85/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•25『线路20』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-14.m3u8$LR•IPV4•25『线路21』 +湖南经视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0241&tk=23a9aca1f79f$LR•IPV4•25『线路22』 +湖南经视,https://stream1.freetv.fun/hu-nan-jing-shi-15.ctv$LR•IPV4•25『线路23』 +湖南经视,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNJSMPP360.m3u8$LR•IPV4•25『线路24』 湖南经视,http://36.137.183.45:1100/difang/hunan/hunan.php?id=hnjs$LR•IPV4•25『线路25』 -湖南电视剧,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDSJMPP360.m3u8$LR•IPV4•23『线路1』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-2.m3u8$LR•IPV4•23『线路2』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-14.ctv$LR•IPV4•23『线路3』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-12.m3u8$LR•IPV4•23『线路4』 -湖南电视剧,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9007&tk=23a9aca1f79f$LR•IPV4•23『线路5』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-10.ctv$LR•IPV4•23『线路6』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-11.m3u8$LR•IPV4•23『线路7』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-3.m3u8$LR•IPV4•23『线路8』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-8.m3u8$LR•IPV4•23『线路9』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-gao-qing-1.m3u8$LR•IPV4•23『线路10』 -湖南电视剧,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hndsj$LR•IPV4•23『线路11』 -湖南电视剧,http://php.jdshipin.com:8880/iptv.php?id=hndsj$LR•IPV4•23『线路12』 -湖南电视剧,http://175.155.106.72:89/live1/live1.m3u8?zsicd 72.会东新闻$LR•IPV4•23『线路13』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-5.m3u8$LR•IPV4•23『线路14』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-4.m3u8$LR•IPV4•23『线路15』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-6.m3u8$LR•IPV4•23『线路16』 -湖南电视剧,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNDSJMPP360.m3u8$LR•IPV4•23『线路17』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-15.m3u8$LR•IPV4•23『线路18』 -湖南电视剧,http://www.peanutbar.cn:8099/tsfile/live/1004_1.m3u8?key=txiptv$LR•IPV4•23『线路19』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-1.m3u8$LR•IPV4•23『线路20』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-7.m3u8$LR•IPV4•23『线路21』 -湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-9.m3u8$LR•IPV4•23『线路22』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-2.m3u8$LR•IPV4•23『线路1』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-14.ctv$LR•IPV4•23『线路2』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-12.m3u8$LR•IPV4•23『线路3』 +湖南电视剧,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9007&tk=23a9aca1f79f$LR•IPV4•23『线路4』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-10.ctv$LR•IPV4•23『线路5』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-11.m3u8$LR•IPV4•23『线路6』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-3.m3u8$LR•IPV4•23『线路7』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-8.m3u8$LR•IPV4•23『线路8』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-gao-qing-1.m3u8$LR•IPV4•23『线路9』 +湖南电视剧,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hndsj$LR•IPV4•23『线路10』 +湖南电视剧,http://php.jdshipin.com:8880/iptv.php?id=hndsj$LR•IPV4•23『线路11』 +湖南电视剧,http://175.155.106.72:89/live1/live1.m3u8?zsicd 72.会东新闻$LR•IPV4•23『线路12』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-5.m3u8$LR•IPV4•23『线路13』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-4.m3u8$LR•IPV4•23『线路14』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-6.m3u8$LR•IPV4•23『线路15』 +湖南电视剧,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNDSJMPP360.m3u8$LR•IPV4•23『线路16』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-15.m3u8$LR•IPV4•23『线路17』 +湖南电视剧,http://www.peanutbar.cn:8099/tsfile/live/1004_1.m3u8?key=txiptv$LR•IPV4•23『线路18』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-1.m3u8$LR•IPV4•23『线路19』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-7.m3u8$LR•IPV4•23『线路20』 +湖南电视剧,https://stream1.freetv.fun/hu-nan-dian-shi-ju-9.m3u8$LR•IPV4•23『线路21』 +湖南电视剧,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDSJMPP360.m3u8$LR•IPV4•23『线路22』 湖南电视剧,http://36.137.183.45:1100/difang/hunan/hunan.php?id=hndsj$LR•IPV4•23『线路23』 -湖南电影,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDYMPP360.m3u8$LR•IPV4•24『线路1』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-2.m3u8$LR•IPV4•24『线路2』 -湖南电影,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3631&tk=23a9aca1f79f$LR•IPV4•24『线路3』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-4.m3u8$LR•IPV4•24『线路4』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-3.m3u8$LR•IPV4•24『线路5』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-5.m3u8$LR•IPV4•24『线路6』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-13.m3u8$LR•IPV4•24『线路7』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-9.m3u8$LR•IPV4•24『线路8』 -湖南电影,http://php.jdshipin.com:8880/iptv.php$LR•IPV4•24『线路9』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-15.m3u8$LR•IPV4•24『线路10』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-14.m3u8$LR•IPV4•24『线路11』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-12.m3u8$LR•IPV4•24『线路12』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-2.ctv$LR•IPV4•24『线路13』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-8.m3u8$LR•IPV4•24『线路14』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-10.m3u8$LR•IPV4•24『线路15』 -湖南电影,http://www.peanutbar.cn:8099/tsfile/live/1001_1.m3u8?key=txiptv$LR•IPV4•24『线路16』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-7.m3u8$LR•IPV4•24『线路17』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-6.m3u8$LR•IPV4•24『线路18』 -湖南电影,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNDYMPP360.m3u8$LR•IPV4•24『线路19』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-17.ctv$LR•IPV4•24『线路20』 -湖南电影,http://116.128.242.83:9901/tsfile/live/1009_1.m3u8$LR•IPV4•24『线路21』 -湖南电影,http://218.77.84.102:85/tsfile/live/149/2005_1.m3u8?key=txiptv$LR•IPV4•24『线路22』 -湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-11.m3u8$LR•IPV4•24『线路23』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-2.m3u8$LR•IPV4•24『线路1』 +湖南电影,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3631&tk=23a9aca1f79f$LR•IPV4•24『线路2』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-4.m3u8$LR•IPV4•24『线路3』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-3.m3u8$LR•IPV4•24『线路4』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-5.m3u8$LR•IPV4•24『线路5』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-13.m3u8$LR•IPV4•24『线路6』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-9.m3u8$LR•IPV4•24『线路7』 +湖南电影,http://php.jdshipin.com:8880/iptv.php$LR•IPV4•24『线路8』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-15.m3u8$LR•IPV4•24『线路9』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-14.m3u8$LR•IPV4•24『线路10』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-12.m3u8$LR•IPV4•24『线路11』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-2.ctv$LR•IPV4•24『线路12』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-8.m3u8$LR•IPV4•24『线路13』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-10.m3u8$LR•IPV4•24『线路14』 +湖南电影,http://www.peanutbar.cn:8099/tsfile/live/1001_1.m3u8?key=txiptv$LR•IPV4•24『线路15』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-7.m3u8$LR•IPV4•24『线路16』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-6.m3u8$LR•IPV4•24『线路17』 +湖南电影,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNDYMPP360.m3u8$LR•IPV4•24『线路18』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-17.ctv$LR•IPV4•24『线路19』 +湖南电影,http://116.128.242.83:9901/tsfile/live/1009_1.m3u8$LR•IPV4•24『线路20』 +湖南电影,http://218.77.84.102:85/tsfile/live/149/2005_1.m3u8?key=txiptv$LR•IPV4•24『线路21』 +湖南电影,https://stream1.freetv.fun/hu-nan-dian-ying-11.m3u8$LR•IPV4•24『线路22』 +湖南电影,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNDYMPP360.m3u8$LR•IPV4•24『线路23』 湖南电影,http://36.137.183.45:1100/difang/hunan/hunan.php?id=hndy$LR•IPV4•24『线路24』 -湖南爱晚,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNGGMPP360.m3u8$LR•IPV4•7『线路1』 -湖南爱晚,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7644&tk=23a9aca1f79f$LR•IPV4•7『线路2』 -湖南爱晚,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnaw$LR•IPV4•7『线路3』 -湖南爱晚,http://php.jdshipin.com:8880/iptv.php?id=hngg$LR•IPV4•7『线路4』 -湖南爱晚,http://p2.vzan.com/527645544/149039617847513156/live.m3u8$LR•IPV4•7『线路5』 -湖南爱晚,http://www.peanutbar.cn:8099/tsfile/live/1003_1.m3u8?key=txiptv$LR•IPV4•7『线路6』 +湖南爱晚,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7644&tk=23a9aca1f79f$LR•IPV4•7『线路1』 +湖南爱晚,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnaw$LR•IPV4•7『线路2』 +湖南爱晚,http://php.jdshipin.com:8880/iptv.php?id=hngg$LR•IPV4•7『线路3』 +湖南爱晚,http://p2.vzan.com/527645544/149039617847513156/live.m3u8$LR•IPV4•7『线路4』 +湖南爱晚,http://www.peanutbar.cn:8099/tsfile/live/1003_1.m3u8?key=txiptv$LR•IPV4•7『线路5』 +湖南爱晚,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNGGMPP360.m3u8$LR•IPV4•7『线路6』 湖南爱晚,http://36.137.183.45:1100/difang/hunan/hunan.php?id=hnaw$LR•IPV4•7『线路7』 湖南教育,https://stream1.freetv.fun/hu-nan-jiao-yu-6.ctv$LR•IPV4•7『线路1』 湖南教育,http://www.peanutbar.cn:8099/tsfile/live/1008_1.m3u8?key=txiptv$LR•IPV4•7『线路2』 @@ -3879,51 +3881,51 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 湖南教育,https://stream1.freetv.fun/hu-nan-jiao-yu-4.m3u8$LR•IPV4•7『线路5』 湖南教育,https://stream1.freetv.fun/hu-nan-jiao-yu-2.m3u8$LR•IPV4•7『线路6』 湖南教育,http://36.137.183.45:1100/difang/hunan/hunan.php?id=hnjy$LR•IPV4•7『线路7』 -湖南娱乐,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNYLMPP360.m3u8$LR•IPV4•28『线路1』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-11.m3u8$LR•IPV4•28『线路2』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-gao-qing-1.m3u8$LR•IPV4•28『线路3』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-16.m3u8$LR•IPV4•28『线路4』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-15.m3u8$LR•IPV4•28『线路5』 -湖南娱乐,http://116.128.243.121:85/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路6』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-gao-qing-3.m3u8$LR•IPV4•28『线路7』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-2.m3u8$LR•IPV4•28『线路8』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-9.ctv$LR•IPV4•28『线路9』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-7.m3u8$LR•IPV4•28『线路10』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-10.m3u8$LR•IPV4•28『线路11』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-6.m3u8$LR•IPV4•28『线路12』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-16.ctv$LR•IPV4•28『线路13』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-13.m3u8$LR•IPV4•28『线路14』 -湖南娱乐,http://116.128.242.83:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路15』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-3.m3u8$LR•IPV4•28『线路16』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-4.m3u8$LR•IPV4•28『线路17』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-12.m3u8$LR•IPV4•28『线路18』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-5.m3u8$LR•IPV4•28『线路19』 -湖南娱乐,http://www.peanutbar.cn:8099/tsfile/live/1000_1.m3u8?key=txiptv$LR•IPV4•28『线路20』 -湖南娱乐,http://jf.jxx2023.work:40446/tsfile/live/1011_1.m3u8?key=txiptv$LR•IPV4•28『线路21』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-1.m3u8$LR•IPV4•28『线路22』 -湖南娱乐,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnyl$LR•IPV4•28『线路23』 -湖南娱乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6594&tk=23a9aca1f79f$LR•IPV4•28『线路24』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-9.m3u8$LR•IPV4•28『线路25』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-8.m3u8$LR•IPV4•28『线路26』 -湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-14.m3u8$LR•IPV4•28『线路27』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-11.m3u8$LR•IPV4•28『线路1』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-gao-qing-1.m3u8$LR•IPV4•28『线路2』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-16.m3u8$LR•IPV4•28『线路3』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-15.m3u8$LR•IPV4•28『线路4』 +湖南娱乐,http://116.128.243.121:85/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路5』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-gao-qing-3.m3u8$LR•IPV4•28『线路6』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-2.m3u8$LR•IPV4•28『线路7』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-9.ctv$LR•IPV4•28『线路8』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-7.m3u8$LR•IPV4•28『线路9』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-10.m3u8$LR•IPV4•28『线路10』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-6.m3u8$LR•IPV4•28『线路11』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-16.ctv$LR•IPV4•28『线路12』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-13.m3u8$LR•IPV4•28『线路13』 +湖南娱乐,http://116.128.242.83:9901/tsfile/live/0125_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•28『线路14』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-3.m3u8$LR•IPV4•28『线路15』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-4.m3u8$LR•IPV4•28『线路16』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-12.m3u8$LR•IPV4•28『线路17』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-5.m3u8$LR•IPV4•28『线路18』 +湖南娱乐,http://www.peanutbar.cn:8099/tsfile/live/1000_1.m3u8?key=txiptv$LR•IPV4•28『线路19』 +湖南娱乐,http://jf.jxx2023.work:40446/tsfile/live/1011_1.m3u8?key=txiptv$LR•IPV4•28『线路20』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-1.m3u8$LR•IPV4•28『线路21』 +湖南娱乐,http://156.238.253.62:5555/tvbox/公众号好享生活小助手/湖南.php?id=hnyl$LR•IPV4•28『线路22』 +湖南娱乐,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6594&tk=23a9aca1f79f$LR•IPV4•28『线路23』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-9.m3u8$LR•IPV4•28『线路24』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-8.m3u8$LR•IPV4•28『线路25』 +湖南娱乐,https://stream1.freetv.fun/hu-nan-yu-le-14.m3u8$LR•IPV4•28『线路26』 +湖南娱乐,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNYLMPP360.m3u8$LR•IPV4•28『线路27』 湖南娱乐,http://36.137.183.45:1100/difang/hunan/hunan.php?id=hnyl$LR•IPV4•28『线路28』 -湖南国际,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNGJMPP360.m3u8$LR•IPV4•18『线路1』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-4.ctv$LR•IPV4•18『线路2』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-3.m3u8$LR•IPV4•18『线路3』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-7.m3u8$LR•IPV4•18『线路4』 -湖南国际,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1138&tk=23a9aca1f79f$LR•IPV4•18『线路5』 -湖南国际,http://113.241.133.180:85/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路6』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-9.m3u8$LR•IPV4•18『线路7』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-6.m3u8$LR•IPV4•18『线路8』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-12.m3u8$LR•IPV4•18『线路9』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-2.m3u8$LR•IPV4•18『线路10』 -湖南国际,http://www.peanutbar.cn:8099/tsfile/live/1007_1.m3u8?key=txiptv$LR•IPV4•18『线路11』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-1.m3u8$LR•IPV4•18『线路12』 -湖南国际,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNGJMPP360.m3u8$LR•IPV4•18『线路13』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-2.ctv$LR•IPV4•18『线路14』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-4.m3u8$LR•IPV4•18『线路15』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-10.m3u8$LR•IPV4•18『线路16』 -湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-13.ctv$LR•IPV4•18『线路17』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-4.ctv$LR•IPV4•18『线路1』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-3.m3u8$LR•IPV4•18『线路2』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-7.m3u8$LR•IPV4•18『线路3』 +湖南国际,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1138&tk=23a9aca1f79f$LR•IPV4•18『线路4』 +湖南国际,http://113.241.133.180:85/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路5』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-9.m3u8$LR•IPV4•18『线路6』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-6.m3u8$LR•IPV4•18『线路7』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-12.m3u8$LR•IPV4•18『线路8』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-2.m3u8$LR•IPV4•18『线路9』 +湖南国际,http://www.peanutbar.cn:8099/tsfile/live/1007_1.m3u8?key=txiptv$LR•IPV4•18『线路10』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-1.m3u8$LR•IPV4•18『线路11』 +湖南国际,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/HNGJMPP360.m3u8$LR•IPV4•18『线路12』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-2.ctv$LR•IPV4•18『线路13』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-4.m3u8$LR•IPV4•18『线路14』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-10.m3u8$LR•IPV4•18『线路15』 +湖南国际,https://stream1.freetv.fun/hu-nan-guo-ji-13.ctv$LR•IPV4•18『线路16』 +湖南国际,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/HNGJMPP360.m3u8$LR•IPV4•18『线路17』 湖南国际,http://36.137.183.45:1100/difang/hunan/hunan.php?id=hngj$LR•IPV4•18『线路18』 湖南公共,https://stream1.freetv.fun/hu-nan-gong-gong-gao-qing-1.m3u8$LR•IPV4•13『线路1』 湖南公共,https://stream1.freetv.fun/hu-nan-gong-gong-4.m3u8$LR•IPV4•13『线路2』 @@ -3940,11 +3942,11 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 湖南公共,https://stream1.freetv.fun/hu-nan-gong-gong-7.ctv$LR•IPV4•13『线路13』 长沙新闻综合,http://ls.qingting.fm/live/4877.m3u8$LR•IPV4•2『线路1』 长沙新闻综合,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSXWMPP360.m3u8$LR•IPV4•2『线路2』 -长沙新闻,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_346.m3u8$LR•IPV4•2『线路1』 -长沙新闻,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSXWMPP360.m3u8$LR•IPV4•2『线路2』 -长沙政法,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•3『线路1』 +长沙新闻,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSXWMPP360.m3u8$LR•IPV4•2『线路1』 +长沙新闻,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_346.m3u8$LR•IPV4•2『线路2』 +长沙政法,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•3『线路1』 长沙政法,https://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2RuZXhfaWQ9YWxfaGxzX2xkdnQmZT02OTE0NjA0JnY9MSZpZD1ITldTWkdTVCZzPTcwN2RiYTc2YzJjNmJmMTQ4MmUyZGYzOWU2NWM3YWFi/CSZFMPP360.m3u8$LR•IPV4•3『线路2』 -长沙政法,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•3『线路3』 +长沙政法,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•3『线路3』 长沙女性,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_349.m3u8$LR•IPV4 衡阳新闻综合,https://liveplay-srs.voc.com.cn/hls/tv/183_554704.m3u8$LR•IPV4 @@ -4137,7 +4139,7 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 辽宁教育青少,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227297/index.m3u8$LR•IPV4•2『线路2』 辽宁生活,http://dassby.qqff.top:99/live/辽宁生活/index.m3u8$LR•IPV4•2『线路1』 辽宁生活,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227319/index.m3u8$LR•IPV4•2『线路2』 -辽宁经济,http://120.76.248.139/live/bfgd/4200000480.m3u8$LR•IPV4•2『线路1』 +辽宁经济,http://120.76.248.139/live/bfgd/4200000076.m3u8$LR•IPV4•2『线路1』 辽宁经济,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227322/index.m3u8$LR•IPV4•2『线路2』 辽宁都市,http://120.76.248.139/live/bfgd/4200000610.m3u8$LR•IPV4•2『线路1』 辽宁都市,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227355/index.m3u8$LR•IPV4•2『线路2』 @@ -4173,7 +4175,7 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 汕头新闻综合,https://stream1.freetv.fun/shan-tou-zong-he-5.ctv$LR•IPV4•25『线路23』 汕头新闻综合,https://hls-gateway.vpstv.net/streams/708829.m3u8$LR•IPV4•25『线路24』 汕头新闻综合,http://pr.19760929.xyz:9688/rtp/239.253.43.45:5146#http://129.211.14.102:25000/gdst.php?id=st1&token=www.9kds.com$LR•IPV4•25『线路25』 -广东珠江,http://gmxw.7766.org:808/hls/83/index.m3u8$LR•IPV4•126『线路1』 +广东珠江,http://183.11.239.36:808/hls/83/index.m3u8$LR•IPV4•126『线路1』 广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-gao-qing-1.m3u8$LR•IPV4•126『线路2』 广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang.m3u8$LR•IPV4•126『线路3』 广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-14.m3u8$LR•IPV4•126『线路4』 @@ -4226,30 +4228,30 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 广东珠江,https://stream1.freetv.fun/468bff09871ed8a1eba7a539f461001a9683ac2cbb084ef2d52449c7f1a52478.m3u8$LR•IPV4•126『线路51』 广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-12.ctv$LR•IPV4•126『线路52』 广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-13.ctv$LR•IPV4•126『线路53』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-7.ctv$LR•IPV4•126『线路54』 -广东珠江,http://121.11.160.7:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•126『线路55』 -广东珠江,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1463&tk=a0c4f6cfaba3$LR•IPV4•126『线路56』 -广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-5.m3u8$LR•IPV4•126『线路57』 -广东珠江,http://67.220.71.199:2347/livehttpplay?channel_id=20144$LR•IPV4•126『线路58』 -广东珠江,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6340&tk=f6cc1e0a0e1a$LR•IPV4•126『线路59』 -广东珠江,http://qjrhc.jydjd.top:2911/udp/224.1.100.24:11111$LR•IPV4•126『线路60』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-25.ctv$LR•IPV4•126『线路61』 -广东珠江,https://iptv.catvod.com/catvod?id=%E5%B9%BF%E4%B8%9C%E7%8F%A0%E6%B1%9F&line=1$LR•IPV4•126『线路62』 -广东珠江,https://iptv.catvod.com/catvod?id=%E5%B9%BF%E4%B8%9C%E7%8F%A0%E6%B1%9F&line=2$LR•IPV4•126『线路63』 -广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-1.m3u8$LR•IPV4•126『线路64』 -广东珠江,https://hk.188766.xyz/?migutoken=34467290b64f0850801479159893a4de&id=gd_gdzj&type=sz$LR•IPV4•126『线路65』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-16.ctv$LR•IPV4•126『线路66』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-12.m3u8$LR•IPV4•126『线路67』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-1.ctv$LR•IPV4•126『线路68』 -广东珠江,http://120.238.94.10:9901/tsfile/live/1009_1.m3u8$LR•IPV4•126『线路69』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-18.ctv$LR•IPV4•126『线路70』 -广东珠江,http://218.15.183.23:9901/tsfile/live/23009_1.m3u8$LR•IPV4•126『线路71』 -广东珠江,https://live.ximalaya.com/radio-first-page-app/live/252/64.m3u8?transcode=ts$LR•IPV4•126『线路72』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-24.ctv$LR•IPV4•126『线路73』 -广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-5.m3u8$LR•IPV4•126『线路74』 -广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-27.ctv$LR•IPV4•126『线路75』 -广东珠江,http://home.wwang.pw:35455/itv/2000000003000000033.m3u8?cdn=hnbblive$LR•IPV4•126『线路76』 -广东珠江,http://183.11.239.36:808/hls/83/index.m3u8$LR•IPV4•126『线路77』 +广东珠江,http://gmxw.7766.org:808/hls/83/index.m3u8$LR•IPV4•126『线路54』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-7.ctv$LR•IPV4•126『线路55』 +广东珠江,http://121.11.160.7:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•126『线路56』 +广东珠江,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1463&tk=a0c4f6cfaba3$LR•IPV4•126『线路57』 +广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-5.m3u8$LR•IPV4•126『线路58』 +广东珠江,http://67.220.71.199:2347/livehttpplay?channel_id=20144$LR•IPV4•126『线路59』 +广东珠江,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6340&tk=f6cc1e0a0e1a$LR•IPV4•126『线路60』 +广东珠江,http://qjrhc.jydjd.top:2911/udp/224.1.100.24:11111$LR•IPV4•126『线路61』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-25.ctv$LR•IPV4•126『线路62』 +广东珠江,https://iptv.catvod.com/catvod?id=%E5%B9%BF%E4%B8%9C%E7%8F%A0%E6%B1%9F&line=1$LR•IPV4•126『线路63』 +广东珠江,https://iptv.catvod.com/catvod?id=%E5%B9%BF%E4%B8%9C%E7%8F%A0%E6%B1%9F&line=2$LR•IPV4•126『线路64』 +广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-1.m3u8$LR•IPV4•126『线路65』 +广东珠江,https://hk.188766.xyz/?migutoken=34467290b64f0850801479159893a4de&id=gd_gdzj&type=sz$LR•IPV4•126『线路66』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-16.ctv$LR•IPV4•126『线路67』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-12.m3u8$LR•IPV4•126『线路68』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-1.ctv$LR•IPV4•126『线路69』 +广东珠江,http://120.238.94.10:9901/tsfile/live/1009_1.m3u8$LR•IPV4•126『线路70』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-18.ctv$LR•IPV4•126『线路71』 +广东珠江,http://218.15.183.23:9901/tsfile/live/23009_1.m3u8$LR•IPV4•126『线路72』 +广东珠江,https://live.ximalaya.com/radio-first-page-app/live/252/64.m3u8?transcode=ts$LR•IPV4•126『线路73』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-24.ctv$LR•IPV4•126『线路74』 +广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-gao-qing-5.m3u8$LR•IPV4•126『线路75』 +广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-27.ctv$LR•IPV4•126『线路76』 +广东珠江,http://home.wwang.pw:35455/itv/2000000003000000033.m3u8?cdn=hnbblive$LR•IPV4•126『线路77』 广东珠江,https://t.freetv.fun/live/yan-dong-zhu-jiang-8.m3u8$LR•IPV4•126『线路78』 广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-14.m3u8$LR•IPV4•126『线路79』 广东珠江,https://stream1.freetv.fun/yan-dong-zhu-jiang-4.m3u8$LR•IPV4•126『线路80』 @@ -4299,95 +4301,95 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 广东珠江,http://103.45.128.46:2001/jmb/IPTV.php?id=广东珠江$LR•IPV4•126『线路124』 广东珠江,http://223.111.150.99:6673/tv/mg4.php?id=广东珠江$LR•IPV4•126『线路125』 广东珠江,http://gxyd.484947.xyz/PLTV/77777777/224/3221225717/index.m3u8?servicetype=1$LR•IPV4•126『线路126』 -广东体育,http://67.220.71.199:2347/livehttpplay?channel_id=12028$LR•IPV4•110『线路1』 -广东体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6559&tk=a0c4f6cfaba3$LR•IPV4•110『线路2』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-6.ctv$LR•IPV4•110『线路3』 -广东体育,http://125.89.163.44:8888/udp/239.77.0.112:5146$LR•IPV4•110『线路4』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-1.m3u8$LR•IPV4•110『线路5』 -广东体育,http://120.198.95.220:9901/tsfile/live/1010_1.m3u8?key=txiptv$LR•IPV4•110『线路6』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-10.m3u8$LR•IPV4•110『线路7』 -广东体育,http://218.15.183.23:9901/tsfile/live/23012_1.m3u8$LR•IPV4•110『线路8』 -广东体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8718&tk=a0c4f6cfaba3$LR•IPV4•110『线路9』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-18.ctv$LR•IPV4•110『线路10』 -广东体育,http://120.238.94.10:9901/tsfile/live/1012_1.m3u8$LR•IPV4•110『线路11』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-38.ctv$LR•IPV4•110『线路12』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-16.m3u8$LR•IPV4•110『线路13』 -广东体育,http://api2.52tb.xyz/info?id=413&token=20230218qkyjia$LR•IPV4•110『线路14』 -广东体育,https://epg.pw/stream/7b470f9fc5c305db0c8622117b7b25ca00eb35ba3e93e865cf0ff9df5c736681.m3u8$LR•IPV4•110『线路15』 -广东体育,http://119.32.12.32:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路16』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-33.ctv$LR•IPV4•110『线路17』 -广东体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2030&tk=a0c4f6cfaba3$LR•IPV4•110『线路18』 -广东体育,http://183.237.95.108:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路19』 -广东体育,http://183.11.239.36:808/hls/2/index.m3u8$LR•IPV4•110『线路20』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-14.ctv$LR•IPV4•110『线路21』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路22』 -广东体育,http://116.77.239.26:44300/tsfile/live/0124_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路23』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-39.ctv$LR•IPV4•110『线路24』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-12.ctv$LR•IPV4•110『线路25』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-10.ctv$LR•IPV4•110『线路26』 -广东体育,http://api3.52tb.xyz/info?id=413&token=20221127jxwhhemby$LR•IPV4•110『线路27』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-10.m3u8$LR•IPV4•110『线路28』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-23.ctv$LR•IPV4•110『线路29』 -广东体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gdty$LR•IPV4•110『线路30』 -广东体育,http://bak.dou.ddns-ip.net/api.php?n=cctvxxx&id=t3ucOH&tk=zUr4K92Dl6kh$LR•IPV4•110『线路31』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路32』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路33』 -广东体育,http://php.jdshipin.com/TVOD/iptv.php?id=gdty$LR•IPV4•110『线路34』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-3.m3u8$LR•IPV4•110『线路35』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-16.ctv$LR•IPV4•110『线路36』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-7.ctv$LR•IPV4•110『线路37』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-15.m3u8$LR•IPV4•110『线路38』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-6.m3u8$LR•IPV4•110『线路39』 -广东体育,http://222.128.55.152:9080/live/gdty.m3u8$LR•IPV4•110『线路40』 -广东体育,http://38.75.136.137:98/gslb/dsdqpub/gdty.m3u8?auth=testpub$LR•IPV4•110『线路41』 -广东体育,http://120.77.205.62:8087/rtp/239.77.1.97:5146$LR•IPV4•110『线路42』 -广东体育,http://api.mytv666.top/api/hk.php?id=3635306561306164626438636438373731346432656366353839663866326232267469643d74762669643d3131$LR•IPV4•110『线路43』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-24.ctv$LR•IPV4•110『线路44』 -广东体育,http://67.220.71.199:2347/livehttpplay?channel_id=20130$LR•IPV4•110『线路45』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路46』 -广东体育,http://api2.52tb.xyz/info?id=414&token=20230218jsyklh$LR•IPV4•110『线路47』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-39.m3u8$LR•IPV4•110『线路48』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-26.m3u8$LR•IPV4•110『线路49』 -广东体育,https://tv.cdn.com.mp/live/gdty/stream.m3u8$LR•IPV4•110『线路50』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-7.m3u8$LR•IPV4•110『线路51』 -广东体育,http://119.32.12.17:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路52』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-17.m3u8$LR•IPV4•110『线路53』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-30.ctv$LR•IPV4•110『线路54』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-27.m3u8$LR•IPV4•110『线路55』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-26.ctv$LR•IPV4•110『线路56』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-8.m3u8$LR•IPV4•110『线路57』 -广东体育,http://120.198.101.106:9901/tsfile/live/1012_1.m3u8?key=txiptv$LR•IPV4•110『线路58』 -广东体育,http://67.220.71.199:2347/livehttpplay?channel_id=30031$LR•IPV4•110『线路59』 -广东体育,http://r.jdshipin.com/LiYdg$LR•IPV4•110『线路60』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-11.ctv$LR•IPV4•110『线路61』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-34.ctv$LR•IPV4•110『线路62』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-12.m3u8$LR•IPV4•110『线路63』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-21.m3u8$LR•IPV4•110『线路64』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing.m3u8$LR•IPV4•110『线路65』 -广东体育,http://qjrhc.jydjd.top:2911/udp/224.1.100.33:11111$LR•IPV4•110『线路66』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路67』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-24.m3u8$LR•IPV4•110『线路68』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-4.m3u8$LR•IPV4•110『线路69』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-19.m3u8$LR•IPV4•110『线路70』 -广东体育,https://hls-gateway.vpstv.net/streams/476954.m3u8$LR•IPV4•110『线路71』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-30.m3u8$LR•IPV4•110『线路72』 -广东体育,http://120.77.205.62:8087/rtp/239.77.0.168:5146$LR•IPV4•110『线路73』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-11.m3u8$LR•IPV4•110『线路74』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-4.m3u8$LR•IPV4•110『线路75』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-35.ctv$LR•IPV4•110『线路76』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-3.m3u8$LR•IPV4•110『线路77』 -广东体育,http://php.jdshipin.com/PLTV/iptv.php?id=gdty$LR•IPV4•110『线路78』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路79』 -广东体育,http://183.3.134.56:9901/tsfile/live/0142_1.m3u8$LR•IPV4•110『线路80』 -广东体育,http://api2.52tb.xyz/info?id=414&token=20230218qkyjia$LR•IPV4•110『线路81』 -广东体育,http://cdn2.163189.xyz/live/gdty/stream.m3u8$LR•IPV4•110『线路82』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-5.m3u8$LR•IPV4•110『线路83』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-17.ctv$LR•IPV4•110『线路84』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-13.m3u8$LR•IPV4•110『线路85』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-8.ctv$LR•IPV4•110『线路86』 -广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-2.m3u8$LR•IPV4•110『线路87』 -广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-15.m3u8$LR•IPV4•110『线路88』 -广东体育,http://218.13.170.98:9901/tsfile/live/0019_1.m3u8$LR•IPV4•110『线路89』 +广东体育,http://218.13.170.98:9901/tsfile/live/0019_1.m3u8$LR•IPV4•110『线路1』 +广东体育,http://67.220.71.199:2347/livehttpplay?channel_id=12028$LR•IPV4•110『线路2』 +广东体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6559&tk=a0c4f6cfaba3$LR•IPV4•110『线路3』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-6.ctv$LR•IPV4•110『线路4』 +广东体育,http://125.89.163.44:8888/udp/239.77.0.112:5146$LR•IPV4•110『线路5』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-1.m3u8$LR•IPV4•110『线路6』 +广东体育,http://120.198.95.220:9901/tsfile/live/1010_1.m3u8?key=txiptv$LR•IPV4•110『线路7』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-10.m3u8$LR•IPV4•110『线路8』 +广东体育,http://218.15.183.23:9901/tsfile/live/23012_1.m3u8$LR•IPV4•110『线路9』 +广东体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8718&tk=a0c4f6cfaba3$LR•IPV4•110『线路10』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-18.ctv$LR•IPV4•110『线路11』 +广东体育,http://120.238.94.10:9901/tsfile/live/1012_1.m3u8$LR•IPV4•110『线路12』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-38.ctv$LR•IPV4•110『线路13』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-16.m3u8$LR•IPV4•110『线路14』 +广东体育,http://api2.52tb.xyz/info?id=413&token=20230218qkyjia$LR•IPV4•110『线路15』 +广东体育,https://epg.pw/stream/7b470f9fc5c305db0c8622117b7b25ca00eb35ba3e93e865cf0ff9df5c736681.m3u8$LR•IPV4•110『线路16』 +广东体育,http://119.32.12.32:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路17』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-33.ctv$LR•IPV4•110『线路18』 +广东体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2030&tk=a0c4f6cfaba3$LR•IPV4•110『线路19』 +广东体育,http://183.237.95.108:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路20』 +广东体育,http://183.11.239.36:808/hls/2/index.m3u8$LR•IPV4•110『线路21』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-14.ctv$LR•IPV4•110『线路22』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路23』 +广东体育,http://116.77.239.26:44300/tsfile/live/0124_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•110『线路24』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-39.ctv$LR•IPV4•110『线路25』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-12.ctv$LR•IPV4•110『线路26』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-10.ctv$LR•IPV4•110『线路27』 +广东体育,http://api3.52tb.xyz/info?id=413&token=20221127jxwhhemby$LR•IPV4•110『线路28』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-10.m3u8$LR•IPV4•110『线路29』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-23.ctv$LR•IPV4•110『线路30』 +广东体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gdty$LR•IPV4•110『线路31』 +广东体育,http://bak.dou.ddns-ip.net/api.php?n=cctvxxx&id=t3ucOH&tk=zUr4K92Dl6kh$LR•IPV4•110『线路32』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路33』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-gao-qing-2.m3u8$LR•IPV4•110『线路34』 +广东体育,http://php.jdshipin.com/TVOD/iptv.php?id=gdty$LR•IPV4•110『线路35』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-3.m3u8$LR•IPV4•110『线路36』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-16.ctv$LR•IPV4•110『线路37』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-7.ctv$LR•IPV4•110『线路38』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-15.m3u8$LR•IPV4•110『线路39』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-6.m3u8$LR•IPV4•110『线路40』 +广东体育,http://222.128.55.152:9080/live/gdty.m3u8$LR•IPV4•110『线路41』 +广东体育,http://38.75.136.137:98/gslb/dsdqpub/gdty.m3u8?auth=testpub$LR•IPV4•110『线路42』 +广东体育,http://120.77.205.62:8087/rtp/239.77.1.97:5146$LR•IPV4•110『线路43』 +广东体育,http://api.mytv666.top/api/hk.php?id=3635306561306164626438636438373731346432656366353839663866326232267469643d74762669643d3131$LR•IPV4•110『线路44』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-24.ctv$LR•IPV4•110『线路45』 +广东体育,http://67.220.71.199:2347/livehttpplay?channel_id=20130$LR•IPV4•110『线路46』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路47』 +广东体育,http://api2.52tb.xyz/info?id=414&token=20230218jsyklh$LR•IPV4•110『线路48』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-39.m3u8$LR•IPV4•110『线路49』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-26.m3u8$LR•IPV4•110『线路50』 +广东体育,https://tv.cdn.com.mp/live/gdty/stream.m3u8$LR•IPV4•110『线路51』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-7.m3u8$LR•IPV4•110『线路52』 +广东体育,http://119.32.12.17:2901/udp/224.1.100.34:11111$LR•IPV4•110『线路53』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-17.m3u8$LR•IPV4•110『线路54』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-30.ctv$LR•IPV4•110『线路55』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-27.m3u8$LR•IPV4•110『线路56』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-26.ctv$LR•IPV4•110『线路57』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-8.m3u8$LR•IPV4•110『线路58』 +广东体育,http://120.198.101.106:9901/tsfile/live/1012_1.m3u8?key=txiptv$LR•IPV4•110『线路59』 +广东体育,http://67.220.71.199:2347/livehttpplay?channel_id=30031$LR•IPV4•110『线路60』 +广东体育,http://r.jdshipin.com/LiYdg$LR•IPV4•110『线路61』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-11.ctv$LR•IPV4•110『线路62』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-34.ctv$LR•IPV4•110『线路63』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-12.m3u8$LR•IPV4•110『线路64』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-21.m3u8$LR•IPV4•110『线路65』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing.m3u8$LR•IPV4•110『线路66』 +广东体育,http://qjrhc.jydjd.top:2911/udp/224.1.100.33:11111$LR•IPV4•110『线路67』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-5.m3u8$LR•IPV4•110『线路68』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-24.m3u8$LR•IPV4•110『线路69』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-4.m3u8$LR•IPV4•110『线路70』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-19.m3u8$LR•IPV4•110『线路71』 +广东体育,https://hls-gateway.vpstv.net/streams/476954.m3u8$LR•IPV4•110『线路72』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-30.m3u8$LR•IPV4•110『线路73』 +广东体育,http://120.77.205.62:8087/rtp/239.77.0.168:5146$LR•IPV4•110『线路74』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-11.m3u8$LR•IPV4•110『线路75』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-4.m3u8$LR•IPV4•110『线路76』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-35.ctv$LR•IPV4•110『线路77』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-3.m3u8$LR•IPV4•110『线路78』 +广东体育,http://php.jdshipin.com/PLTV/iptv.php?id=gdty$LR•IPV4•110『线路79』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-1.m3u8$LR•IPV4•110『线路80』 +广东体育,http://183.3.134.56:9901/tsfile/live/0142_1.m3u8$LR•IPV4•110『线路81』 +广东体育,http://api2.52tb.xyz/info?id=414&token=20230218qkyjia$LR•IPV4•110『线路82』 +广东体育,http://cdn2.163189.xyz/live/gdty/stream.m3u8$LR•IPV4•110『线路83』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-5.m3u8$LR•IPV4•110『线路84』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-17.ctv$LR•IPV4•110『线路85』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-gao-qing-13.m3u8$LR•IPV4•110『线路86』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-8.ctv$LR•IPV4•110『线路87』 +广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-2.m3u8$LR•IPV4•110『线路88』 +广东体育,https://t.freetv.fun/live/yan-dong-ti-yu-15.m3u8$LR•IPV4•110『线路89』 广东体育,http://120.77.205.62:8087/rtp/239.77.0.112:5146$LR•IPV4•110『线路90』 广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-4.ctv$LR•IPV4•110『线路91』 广东体育,https://t.freetv.fun/live/yan-dong-ti-yu.m3u8$LR•IPV4•110『线路92』 @@ -4406,8 +4408,8 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-16.m3u8$LR•IPV4•110『线路105』 广东体育,http://qjrhc.jydjd.top:2911/udp/224.1.100.34:11111$LR•IPV4•110『线路106』 广东体育,https://stream1.freetv.fun/yan-dong-ti-yu-5.ctv$LR•IPV4•110『线路107』 -广东体育,http://111.221.137.234:44330/tsfile/live/0124_1.m3u8$LR•IPV4•110『线路108』 -广东体育,http://bxtv.3a.ink/api.php?id=gdty$LR•IPV4•110『线路109』 +广东体育,http://bxtv.3a.ink/api.php?id=gdty$LR•IPV4•110『线路108』 +广东体育,http://111.221.137.234:44330/tsfile/live/0124_1.m3u8$LR•IPV4•110『线路109』 广东体育,http://223.111.150.99:6673/tv/mg4.php?id=广东体育$LR•IPV4•110『线路110』 广东民生,http://183.11.239.36:808/hls/18/index.m3u8$LR•IPV4•54『线路1』 广东民生,https://stream1.freetv.fun/yan-dong-min-sheng-40.ctv$LR•IPV4•54『线路2』 @@ -4464,12 +4466,12 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 广东民生,http://121.11.160.7:9901/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•54『线路53』 广东民生,http://223.111.150.99:6673/tv/mg4.php?id=广东民生$LR•IPV4•54『线路54』 大湾区卫视,http://222.128.55.152:9080/live/dwq.m3u8$LR•IPV4•22『线路1』 -大湾区卫视,http://192.151.150.154/live/nfws.m3u8$LR•IPV4•22『线路2』 -大湾区卫视,http://101.6.130.52:1234/608917627$LR•IPV4•22『线路3』 -大湾区卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000011619&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路4』 -大湾区卫视,http://gslbserv.itv.cmvideo.cn:80/5000000011000265001/1.m3u8?channel-id=ystenlive&Contentid=1000000002000011619&livemode=1&stbId=toShengfen&mode=1&$LR•IPV4•22『线路5』 -大湾区卫视,http://43.251.226.89:8080/play/39.m3u8$LR•IPV4•22『线路6』 -大湾区卫视,p3p://167.114.175.6:55331/63ec48e000076bf6e43672044d3841bb$LR•IPV4•22『线路7』 +大湾区卫视,http://43.251.226.89:8080/play/39.m3u8$LR•IPV4•22『线路2』 +大湾区卫视,p3p://167.114.175.6:55331/63ec48e000076bf6e43672044d3841bb$LR•IPV4•22『线路3』 +大湾区卫视,http://192.151.150.154/live/nfws.m3u8$LR•IPV4•22『线路4』 +大湾区卫视,http://101.6.130.52:1234/608917627$LR•IPV4•22『线路5』 +大湾区卫视,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000011619&livemode=1&stbId=yu&mode=1&$LR•IPV4•22『线路6』 +大湾区卫视,http://gslbserv.itv.cmvideo.cn:80/5000000011000265001/1.m3u8?channel-id=ystenlive&Contentid=1000000002000011619&livemode=1&stbId=toShengfen&mode=1&$LR•IPV4•22『线路7』 大湾区卫视,https://live.chinacert.cftest5.cn/cnmg/live/608917627$LR•IPV4•22『线路8』 大湾区卫视,http://fn.gcl.de5.net:5908/gsh950428/608917627$LR•IPV4•22『线路9』 大湾区卫视,http://wfenf.x3322.net:7788/608917627$LR•IPV4•22『线路10』 @@ -4694,9 +4696,9 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 江门综合,https://stream1.freetv.fun/jiang-men-zong-he-10.ctv$LR•IPV4•18『线路16』 江门综合,https://stream1.freetv.fun/jiang-men-zong-he-13.ctv$LR•IPV4•18『线路17』 江门综合,https://stream1.freetv.fun/jiang-men-zong-he-7.ctv$LR•IPV4•18『线路18』 -河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路1』 -河源综合,http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路2』 -河源综合,http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路3』 +河源综合,http://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』 +河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$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://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•6『线路6』 @@ -4857,51 +4859,51 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 上海外语,http://t.061899.xyz/tl/tl.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://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6608&tk=e503191f8e20$LR•IPV4•7『线路7』 -五星体育,http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•45『线路1』 -五星体育,http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•45『线路2』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•45『线路3』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•45『线路4』 -五星体育,http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路5』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•45『线路6』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•45『线路7』 -五星体育,http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•45『线路8』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•45『线路9』 -五星体育,https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•45『线路10』 -五星体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•45『线路11』 -五星体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•45『线路12』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•45『线路13』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•45『线路14』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•45『线路15』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•45『线路16』 -五星体育,http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•45『线路17』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•45『线路18』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•45『线路19』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•45『线路20』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•45『线路21』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•45『线路22』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•45『线路23』 -五星体育,http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路24』 -五星体育,https://live.264788.xyz/channel/wuxingtiyu?streamid=86a2efa09c42c8f425082fc405958019&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路25』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•45『线路26』 -五星体育,https://live.264788.xyz/channel/wuxingtiyu?streamid=5d17da390f8e4805aae4a71868d4ef6c&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路27』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•45『线路28』 -五星体育,https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•45『线路29』 -五星体育,https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•45『线路30』 -五星体育,http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路31』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•45『线路32』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•45『线路33』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•45『线路34』 -五星体育,https://live.264788.xyz/channel/wuxingtiyu?streamid=574ea4050333d6418edfd71d0df52f43&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路35』 -五星体育,https://live.264788.xyz/channel/wuxingtiyu?streamid=bacdc88caa25b71b955f471072f07349&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路36』 -五星体育,http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•45『线路37』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•45『线路38』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•45『线路39』 -五星体育,https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•45『线路40』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•45『线路41』 -五星体育,http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•45『线路42』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•45『线路43』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•45『线路44』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•45『线路45』 +五星体育,http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•45『线路1』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•45『线路2』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•45『线路3』 +五星体育,http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路4』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•45『线路5』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•45『线路6』 +五星体育,http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•45『线路7』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•45『线路8』 +五星体育,https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•45『线路9』 +五星体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•45『线路10』 +五星体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•45『线路11』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•45『线路12』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•45『线路13』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu.m3u8$LR•IPV4•45『线路14』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•45『线路15』 +五星体育,http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•45『线路16』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•45『线路17』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•45『线路18』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•45『线路19』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•45『线路20』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•45『线路21』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•45『线路22』 +五星体育,http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路23』 +五星体育,https://live.264788.xyz/channel/wuxingtiyu?streamid=86a2efa09c42c8f425082fc405958019&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路24』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•45『线路25』 +五星体育,https://live.264788.xyz/channel/wuxingtiyu?streamid=5d17da390f8e4805aae4a71868d4ef6c&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路26』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•45『线路27』 +五星体育,https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•45『线路28』 +五星体育,https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•45『线路29』 +五星体育,http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•45『线路30』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•45『线路31』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•45『线路32』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•45『线路33』 +五星体育,https://live.264788.xyz/channel/wuxingtiyu?streamid=574ea4050333d6418edfd71d0df52f43&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路34』 +五星体育,https://live.264788.xyz/channel/wuxingtiyu?streamid=bacdc88caa25b71b955f471072f07349&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•45『线路35』 +五星体育,http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•45『线路36』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•45『线路37』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•45『线路38』 +五星体育,https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•45『线路39』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•45『线路40』 +五星体育,http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•45『线路41』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•45『线路42』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•45『线路43』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•45『线路44』 +五星体育,http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•45『线路45』 东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-5.m3u8$LR•IPV4•47『线路1』 东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-7.m3u8$LR•IPV4•47『线路2』 东方影视,http://t.061899.xyz/tl/tl.php?id=dfys$LR•IPV4•47『线路3』 @@ -5037,369 +5039,370 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 上海纪实,http://iptv.huuc.edu.cn/hls/docuchina.m3u8$LR•IPV4•10『线路8』 上海纪实,https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-1.m3u8$LR•IPV4•10『线路9』 上海纪实,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5196&tk=23a9aca1f79f$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•309『线路1』 -新闻综合,http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8$LR•IPV4•309『线路2』 -新闻综合,https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•309『线路3』 -新闻综合,http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•309『线路4』 -新闻综合,http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•309『线路5』 -新闻综合,http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•309『线路6』 -新闻综合,https://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8$LR•IPV4•309『线路7』 -新闻综合,https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•309『线路8』 -新闻综合,http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•309『线路9』 -新闻综合,http://221.5.213.4:30000/1111.m3u8$LR•IPV4•309『线路10』 -新闻综合,https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•309『线路11』 -新闻综合,http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•309『线路12』 -新闻综合,https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•309『线路13』 -新闻综合,http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•309『线路14』 -新闻综合,http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•309『线路15』 -新闻综合,https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•309『线路16』 -新闻综合,https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•309『线路17』 -新闻综合,http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•309『线路18』 -新闻综合,http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•309『线路19』 -新闻综合,http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•309『线路20』 -新闻综合,http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•309『线路21』 -新闻综合,http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•309『线路22』 -新闻综合,http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•309『线路23』 -新闻综合,https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•309『线路24』 -新闻综合,http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•309『线路25』 -新闻综合,http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•309『线路26』 -新闻综合,https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•309『线路27』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•309『线路28』 -新闻综合,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•309『线路29』 -新闻综合,http://47.104.178.59:3566/651632657$LR•IPV4•309『线路30』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•309『线路31』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•309『线路32』 -新闻综合,http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260701080235&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260701080235&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=b17d9c71293c0983cb3d364149c676c5&sv=10004&ct=android$LR•IPV4•309『线路33』 -新闻综合,https://t.freetv.fun/live/shang-hai-xin-wen-zong-he.php$LR•IPV4•309『线路34』 -新闻综合,https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•309『线路35』 -新闻综合,https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•309『线路36』 -新闻综合,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•309『线路37』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•309『线路38』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•309『线路39』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•309『线路40』 -新闻综合,http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•309『线路41』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•309『线路42』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•309『线路43』 -新闻综合,http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260701040231&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260701040231&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=4cc2d5d47f9596bd20533fc8d57e53e4&sv=10004&ct=android$LR•IPV4•309『线路44』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•309『线路45』 -新闻综合,https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=6f4b191d0930fafab8274665578e1df8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•309『线路46』 -新闻综合,https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•309『线路47』 -新闻综合,http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•309『线路48』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•309『线路49』 -新闻综合,https://iptv.catvod.com/live.php?id=%E4%B8%8A%E6%B5%B7%E6%96%B0%E9%97%BB%E7%BB%BC%E5%90%88&line=1$LR•IPV4•309『线路50』 -新闻综合,http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•309『线路51』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•309『线路52』 -新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•309『线路53』 -新闻综合,https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•309『线路54』 -新闻综合,https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=a064629942f561cf9f5a930648802197&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•309『线路55』 -新闻综合,http://123.113.205.253:3000/651632657$LR•IPV4•309『线路56』 -新闻综合,http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•309『线路57』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•309『线路58』 -新闻综合,https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•309『线路59』 -新闻综合,http://115.190.247.176:1111/651632657$LR•IPV4•309『线路60』 -新闻综合,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•309『线路61』 -新闻综合,https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=c0bc623be007e5295d462465c7bd7bd7&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•309『线路62』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•309『线路63』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•309『线路64』 -新闻综合,https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•309『线路65』 -新闻综合,https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•309『线路66』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•309『线路67』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•309『线路68』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•309『线路69』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•309『线路70』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•309『线路71』 -新闻综合,http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•309『线路72』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•309『线路73』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•309『线路74』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•309『线路75』 -新闻综合,https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•309『线路76』 -新闻综合,https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=b42305d47a7ea7de356f6b9953dd63fb&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•309『线路77』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•309『线路78』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•309『线路79』 -新闻综合,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•309『线路80』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•309『线路81』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•309『线路82』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•309『线路83』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•309『线路84』 -新闻综合,http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•309『线路85』 -新闻综合,http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•309『线路86』 -新闻综合,http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•309『线路87』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•309『线路88』 -新闻综合,https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•309『线路89』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•309『线路90』 -新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•309『线路91』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•309『线路92』 -新闻综合,https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•309『线路93』 -新闻综合,http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•309『线路94』 -新闻综合,http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•309『线路95』 -新闻综合,http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•309『线路96』 -新闻综合,http://channel.wcrmt.cn:80/nmip-media/channellive/channel105268/playlist.m3u8$LR•IPV4•309『线路97』 -新闻综合,http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•309『线路98』 -新闻综合,http://file.ysxtv.cn/cms/videos/nmip-media/channellive/channel4/playlist.m3u8?zsicd#rtmp://tv.mcrm.org.cn:1935/channellive/tv01$LR•IPV4•309『线路99』 -新闻综合,http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•309『线路100』 -新闻综合,https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•309『线路101』 -新闻综合,http://ls.qingting.fm/live/267.m3u8$LR•IPV4•309『线路102』 -新闻综合,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•309『线路103』 -新闻综合,https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•309『线路104』 -新闻综合,https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•309『线路105』 -新闻综合,http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•309『线路106』 -新闻综合,https://stream.sun0769.com/dgrtv1/mp4tv1_800/index.m3u8$LR•IPV4•309『线路107』 -新闻综合,https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•309『线路108』 -新闻综合,http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•309『线路109』 -新闻综合,http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•309『线路110』 -新闻综合,http://zjtv-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•309『线路111』 -新闻综合,http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•309『线路112』 -新闻综合,https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•309『线路113』 -新闻综合,https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•309『线路114』 -新闻综合,https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•309『线路115』 -新闻综合,http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•309『线路116』 -新闻综合,http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•309『线路117』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8439&tk=a0c4f6cfaba3$LR•IPV4•309『线路118』 -新闻综合,http://58.254.14.61:808/hls/504/index.m3u8$LR•IPV4•309『线路119』 -新闻综合,https://stream1.freetv.fun/shan-wei-xin-wen-zong-he-3.ctv$LR•IPV4•309『线路120』 -新闻综合,https://stream1.freetv.fun/shan-wei-xin-wen-zong-he-2.m3u8$LR•IPV4•309『线路121』 -新闻综合,http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77bb6a7063c4cdea57f09ca22f9ef12-0-39c19a21f73b823db2150ea45b147eb2$LR•IPV4•309『线路122』 -新闻综合,http://play-sh13.quklive.com/live/1702360350551252.m3u8?auth_key=2037107484-800189c57a5a44d3b823b60cf84f6756-0-a6f6828a62d5c167cff5e68735fa0d39$LR•IPV4•309『线路123』 -新闻综合,https://44911.hlsplay.aodianyun.com/tv_radio_44911/tv_channel_1796.m3u8?auth_key=4830573978-0-0-92824c2c03f95906a3c49a4aa28f1709&extra_key=Yc1XsmxOKy2UBoPM4Wy5vCPsEYqnj06taCR2SRB2Xrg2w28NPilH03KdIbbM5wgSql-VBohSnoO9AOKl94q2t2DWMftz-XB-2qUX-UjXcS80StcSZahBFjrKLivXaRjiY5r2NOMKWMKFbv-S0Bz2G6iEXgCK8yGjtrFHDcPfAQEE0pvXq0Bwy34b7We8zARN&ali_ffmpeg_version=mpengine$LR•IPV4•309『线路124』 -新闻综合,https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•309『线路125』 -新闻综合,https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•309『线路126』 -新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•309『线路127』 -新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•309『线路128』 -新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•309『线路129』 -新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•309『线路130』 -新闻综合,http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•309『线路131』 -新闻综合,http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•309『线路132』 -新闻综合,http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•309『线路133』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/651632657$LR•IPV4•309『线路134』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/838109047$LR•IPV4•309『线路135』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731825$LR•IPV4•309『线路136』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731826$LR•IPV4•309『线路137』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731818$LR•IPV4•309『线路138』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731715$LR•IPV4•309『线路139』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731832$LR•IPV4•309『线路140』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731747$LR•IPV4•309『线路141』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/955227979$LR•IPV4•309『线路142』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/955227985$LR•IPV4•309『线路143』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/955227996$LR•IPV4•309『线路144』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639737327$LR•IPV4•309『线路145』 -新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731783$LR•IPV4•309『线路146』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/651632657$LR•IPV4•309『线路147』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/838109047$LR•IPV4•309『线路148』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731825$LR•IPV4•309『线路149』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731826$LR•IPV4•309『线路150』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731818$LR•IPV4•309『线路151』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731715$LR•IPV4•309『线路152』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731832$LR•IPV4•309『线路153』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731747$LR•IPV4•309『线路154』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/955227979$LR•IPV4•309『线路155』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/955227985$LR•IPV4•309『线路156』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/955227996$LR•IPV4•309『线路157』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639737327$LR•IPV4•309『线路158』 -新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731783$LR•IPV4•309『线路159』 -新闻综合,http://wfenf.x3322.net:7788/651632657$LR•IPV4•309『线路160』 -新闻综合,http://wfenf.x3322.net:7788/838109047$LR•IPV4•309『线路161』 -新闻综合,http://wfenf.x3322.net:7788/639731825$LR•IPV4•309『线路162』 -新闻综合,http://wfenf.x3322.net:7788/639731826$LR•IPV4•309『线路163』 -新闻综合,http://wfenf.x3322.net:7788/639731818$LR•IPV4•309『线路164』 -新闻综合,http://wfenf.x3322.net:7788/639731715$LR•IPV4•309『线路165』 -新闻综合,http://wfenf.x3322.net:7788/639731832$LR•IPV4•309『线路166』 -新闻综合,http://wfenf.x3322.net:7788/639731747$LR•IPV4•309『线路167』 -新闻综合,http://wfenf.x3322.net:7788/955227979$LR•IPV4•309『线路168』 -新闻综合,http://wfenf.x3322.net:7788/955227985$LR•IPV4•309『线路169』 -新闻综合,http://wfenf.x3322.net:7788/955227996$LR•IPV4•309『线路170』 -新闻综合,http://wfenf.x3322.net:7788/639737327$LR•IPV4•309『线路171』 -新闻综合,http://wfenf.x3322.net:7788/639731783$LR•IPV4•309『线路172』 -新闻综合,http://106.5.175.159:1234/651632657$LR•IPV4•309『线路173』 -新闻综合,http://106.5.175.159:1234/838109047$LR•IPV4•309『线路174』 -新闻综合,http://106.5.175.159:1234/639731825$LR•IPV4•309『线路175』 -新闻综合,http://106.5.175.159:1234/639731826$LR•IPV4•309『线路176』 -新闻综合,http://106.5.175.159:1234/639731818$LR•IPV4•309『线路177』 -新闻综合,http://106.5.175.159:1234/639731715$LR•IPV4•309『线路178』 -新闻综合,http://106.5.175.159:1234/639731832$LR•IPV4•309『线路179』 -新闻综合,http://106.5.175.159:1234/639731747$LR•IPV4•309『线路180』 -新闻综合,http://106.5.175.159:1234/955227979$LR•IPV4•309『线路181』 -新闻综合,http://106.5.175.159:1234/955227985$LR•IPV4•309『线路182』 -新闻综合,http://106.5.175.159:1234/955227996$LR•IPV4•309『线路183』 -新闻综合,http://106.5.175.159:1234/639737327$LR•IPV4•309『线路184』 -新闻综合,http://106.5.175.159:1234/639731783$LR•IPV4•309『线路185』 -新闻综合,http://36.104.221.222:7788/651632657$LR•IPV4•309『线路186』 -新闻综合,http://36.104.221.222:7788/838109047$LR•IPV4•309『线路187』 -新闻综合,http://36.104.221.222:7788/639731825$LR•IPV4•309『线路188』 -新闻综合,http://36.104.221.222:7788/639731826$LR•IPV4•309『线路189』 -新闻综合,http://36.104.221.222:7788/639731818$LR•IPV4•309『线路190』 -新闻综合,http://36.104.221.222:7788/639731715$LR•IPV4•309『线路191』 -新闻综合,http://36.104.221.222:7788/639731832$LR•IPV4•309『线路192』 -新闻综合,http://36.104.221.222:7788/639731747$LR•IPV4•309『线路193』 -新闻综合,http://36.104.221.222:7788/955227979$LR•IPV4•309『线路194』 -新闻综合,http://36.104.221.222:7788/955227985$LR•IPV4•309『线路195』 -新闻综合,http://36.104.221.222:7788/955227996$LR•IPV4•309『线路196』 -新闻综合,http://36.104.221.222:7788/639737327$LR•IPV4•309『线路197』 -新闻综合,http://36.104.221.222:7788/639731783$LR•IPV4•309『线路198』 -新闻综合,http://115.58.151.196:1234/651632657$LR•IPV4•309『线路199』 -新闻综合,http://115.58.151.196:1234/838109047$LR•IPV4•309『线路200』 -新闻综合,http://115.58.151.196:1234/639731825$LR•IPV4•309『线路201』 -新闻综合,http://115.58.151.196:1234/639731826$LR•IPV4•309『线路202』 -新闻综合,http://115.58.151.196:1234/639731818$LR•IPV4•309『线路203』 -新闻综合,http://115.58.151.196:1234/639731715$LR•IPV4•309『线路204』 -新闻综合,http://115.58.151.196:1234/639731832$LR•IPV4•309『线路205』 -新闻综合,http://115.58.151.196:1234/639731747$LR•IPV4•309『线路206』 -新闻综合,http://115.58.151.196:1234/955227979$LR•IPV4•309『线路207』 -新闻综合,http://115.58.151.196:1234/955227985$LR•IPV4•309『线路208』 -新闻综合,http://115.58.151.196:1234/955227996$LR•IPV4•309『线路209』 -新闻综合,http://115.58.151.196:1234/639737327$LR•IPV4•309『线路210』 -新闻综合,http://115.58.151.196:1234/639731783$LR•IPV4•309『线路211』 -新闻综合,http://182.61.15.163:80/651632657$LR•IPV4•309『线路212』 -新闻综合,http://182.61.15.163:80/838109047$LR•IPV4•309『线路213』 -新闻综合,http://182.61.15.163:80/639731825$LR•IPV4•309『线路214』 -新闻综合,http://182.61.15.163:80/639731826$LR•IPV4•309『线路215』 -新闻综合,http://182.61.15.163:80/639731818$LR•IPV4•309『线路216』 -新闻综合,http://182.61.15.163:80/639731715$LR•IPV4•309『线路217』 -新闻综合,http://182.61.15.163:80/639731832$LR•IPV4•309『线路218』 -新闻综合,http://182.61.15.163:80/639731747$LR•IPV4•309『线路219』 -新闻综合,http://182.61.15.163:80/955227979$LR•IPV4•309『线路220』 -新闻综合,http://182.61.15.163:80/955227985$LR•IPV4•309『线路221』 -新闻综合,http://182.61.15.163:80/955227996$LR•IPV4•309『线路222』 -新闻综合,http://182.61.15.163:80/639737327$LR•IPV4•309『线路223』 -新闻综合,http://182.61.15.163:80/639731783$LR•IPV4•309『线路224』 -新闻综合,http://121.23.132.14:7788/651632657$LR•IPV4•309『线路225』 -新闻综合,http://121.23.132.14:7788/838109047$LR•IPV4•309『线路226』 -新闻综合,http://121.23.132.14:7788/639731825$LR•IPV4•309『线路227』 -新闻综合,http://121.23.132.14:7788/639731826$LR•IPV4•309『线路228』 -新闻综合,http://121.23.132.14:7788/639731818$LR•IPV4•309『线路229』 -新闻综合,http://121.23.132.14:7788/639731715$LR•IPV4•309『线路230』 -新闻综合,http://121.23.132.14:7788/639731832$LR•IPV4•309『线路231』 -新闻综合,http://121.23.132.14:7788/639731747$LR•IPV4•309『线路232』 -新闻综合,http://121.23.132.14:7788/955227979$LR•IPV4•309『线路233』 -新闻综合,http://121.23.132.14:7788/955227985$LR•IPV4•309『线路234』 -新闻综合,http://121.23.132.14:7788/955227996$LR•IPV4•309『线路235』 -新闻综合,http://121.23.132.14:7788/639737327$LR•IPV4•309『线路236』 -新闻综合,http://121.23.132.14:7788/639731783$LR•IPV4•309『线路237』 -新闻综合,http://120.4.126.153:1234/651632657$LR•IPV4•309『线路238』 -新闻综合,http://120.4.126.153:1234/838109047$LR•IPV4•309『线路239』 -新闻综合,http://120.4.126.153:1234/639731825$LR•IPV4•309『线路240』 -新闻综合,http://120.4.126.153:1234/639731826$LR•IPV4•309『线路241』 -新闻综合,http://120.4.126.153:1234/639731818$LR•IPV4•309『线路242』 -新闻综合,http://120.4.126.153:1234/639731715$LR•IPV4•309『线路243』 -新闻综合,http://120.4.126.153:1234/639731832$LR•IPV4•309『线路244』 -新闻综合,http://120.4.126.153:1234/639731747$LR•IPV4•309『线路245』 -新闻综合,http://120.4.126.153:1234/955227979$LR•IPV4•309『线路246』 -新闻综合,http://120.4.126.153:1234/955227985$LR•IPV4•309『线路247』 -新闻综合,http://120.4.126.153:1234/955227996$LR•IPV4•309『线路248』 -新闻综合,http://120.4.126.153:1234/639737327$LR•IPV4•309『线路249』 -新闻综合,http://120.4.126.153:1234/639731783$LR•IPV4•309『线路250』 -新闻综合,http://47.119.24.76:59093/651632657$LR•IPV4•309『线路251』 -新闻综合,http://47.119.24.76:59093/838109047$LR•IPV4•309『线路252』 -新闻综合,http://47.119.24.76:59093/639731825$LR•IPV4•309『线路253』 -新闻综合,http://47.119.24.76:59093/639731826$LR•IPV4•309『线路254』 -新闻综合,http://47.119.24.76:59093/639731818$LR•IPV4•309『线路255』 -新闻综合,http://47.119.24.76:59093/639731715$LR•IPV4•309『线路256』 -新闻综合,http://47.119.24.76:59093/639731832$LR•IPV4•309『线路257』 -新闻综合,http://47.119.24.76:59093/639731747$LR•IPV4•309『线路258』 -新闻综合,http://47.119.24.76:59093/955227979$LR•IPV4•309『线路259』 -新闻综合,http://47.119.24.76:59093/955227985$LR•IPV4•309『线路260』 -新闻综合,http://47.119.24.76:59093/955227996$LR•IPV4•309『线路261』 -新闻综合,http://47.119.24.76:59093/639737327$LR•IPV4•309『线路262』 -新闻综合,http://47.119.24.76:59093/639731783$LR•IPV4•309『线路263』 -新闻综合,http://222.134.19.49:8090/651632657$LR•IPV4•309『线路264』 -新闻综合,http://222.134.19.49:8090/838109047$LR•IPV4•309『线路265』 -新闻综合,http://222.134.19.49:8090/639731825$LR•IPV4•309『线路266』 -新闻综合,http://222.134.19.49:8090/639731826$LR•IPV4•309『线路267』 -新闻综合,http://222.134.19.49:8090/639731818$LR•IPV4•309『线路268』 -新闻综合,http://222.134.19.49:8090/639731715$LR•IPV4•309『线路269』 -新闻综合,http://222.134.19.49:8090/639731832$LR•IPV4•309『线路270』 -新闻综合,http://222.134.19.49:8090/639731747$LR•IPV4•309『线路271』 -新闻综合,http://222.134.19.49:8090/955227979$LR•IPV4•309『线路272』 -新闻综合,http://222.134.19.49:8090/955227985$LR•IPV4•309『线路273』 -新闻综合,http://222.134.19.49:8090/955227996$LR•IPV4•309『线路274』 -新闻综合,http://222.134.19.49:8090/639737327$LR•IPV4•309『线路275』 -新闻综合,http://222.134.19.49:8090/639731783$LR•IPV4•309『线路276』 -新闻综合,http://139.155.89.87:1000/651632657$LR•IPV4•309『线路277』 -新闻综合,http://139.155.89.87:1000/838109047$LR•IPV4•309『线路278』 -新闻综合,http://139.155.89.87:1000/639731825$LR•IPV4•309『线路279』 -新闻综合,http://139.155.89.87:1000/639731826$LR•IPV4•309『线路280』 -新闻综合,http://139.155.89.87:1000/639731818$LR•IPV4•309『线路281』 -新闻综合,http://139.155.89.87:1000/639731715$LR•IPV4•309『线路282』 -新闻综合,http://139.155.89.87:1000/639731832$LR•IPV4•309『线路283』 -新闻综合,http://139.155.89.87:1000/639731747$LR•IPV4•309『线路284』 -新闻综合,http://139.155.89.87:1000/955227979$LR•IPV4•309『线路285』 -新闻综合,http://139.155.89.87:1000/955227985$LR•IPV4•309『线路286』 -新闻综合,http://139.155.89.87:1000/955227996$LR•IPV4•309『线路287』 -新闻综合,http://139.155.89.87:1000/639737327$LR•IPV4•309『线路288』 -新闻综合,http://139.155.89.87:1000/639731783$LR•IPV4•309『线路289』 -新闻综合,http://101.34.236.223:1112/651632657$LR•IPV4•309『线路290』 -新闻综合,http://101.34.236.223:1112/838109047$LR•IPV4•309『线路291』 -新闻综合,http://101.34.236.223:1112/639731825$LR•IPV4•309『线路292』 -新闻综合,http://101.34.236.223:1112/639731826$LR•IPV4•309『线路293』 -新闻综合,http://101.34.236.223:1112/639731818$LR•IPV4•309『线路294』 -新闻综合,http://101.34.236.223:1112/639731715$LR•IPV4•309『线路295』 -新闻综合,http://101.34.236.223:1112/639731832$LR•IPV4•309『线路296』 -新闻综合,http://101.34.236.223:1112/639731747$LR•IPV4•309『线路297』 -新闻综合,http://101.34.236.223:1112/955227979$LR•IPV4•309『线路298』 -新闻综合,http://101.34.236.223:1112/955227985$LR•IPV4•309『线路299』 -新闻综合,http://101.34.236.223:1112/955227996$LR•IPV4•309『线路300』 -新闻综合,http://101.34.236.223:1112/639737327$LR•IPV4•309『线路301』 -新闻综合,http://101.34.236.223:1112/639731783$LR•IPV4•309『线路302』 -新闻综合,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226366/index.m3u8$LR•IPV4•309『线路303』 -新闻综合,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226376/index.m3u8$LR•IPV4•309『线路304』 -新闻综合,http://jwcdnqx.hebyun.com.cn/live/hdxwzh/1500k/tzwj_video.m3u8$LR•IPV4•309『线路305』 -新闻综合,https://jwcdnqx.hebyun.com.cn/live/SXTV1/1500k/tzwj_video.m3u8$LR•IPV4•309『线路306』 -新闻综合,http://stream.thmz.com/wxtv1/sd/live.m3u8?zjiangsd$LR•IPV4•309『线路307』 -新闻综合,http://stream.thmz.com/wxtv1/sd/live.m3u8$LR•IPV4•309『线路308』 -新闻综合,http://stream.thmz.com/wxtv1/playlist.m3u8$LR•IPV4•309『线路309』 +新闻综合,https://44911.hlsplay.aodianyun.com/tv_radio_44911/tv_channel_1796.m3u8?auth_key=4830573978-0-0-92824c2c03f95906a3c49a4aa28f1709&extra_key=Yc1XsmxOKy2UBoPM4Wy5vCPsEYqnj06taCR2SRB2Xrg2w28NPilH03KdIbbM5wgSql-VBohSnoO9AOKl94q2t2DWMftz-XB-2qUX-UjXcS80StcSZahBFjrKLivXaRjiY5r2NOMKWMKFbv-S0Bz2G6iEXgCK8yGjtrFHDcPfAQEE0pvXq0Bwy34b7We8zARN&ali_ffmpeg_version=mpengine$LR•IPV4•310『线路1』 +新闻综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•310『线路2』 +新闻综合,http://l.cztvcloud.com/channels/lantian/SXxiangshan1/720p.m3u8$LR•IPV4•310『线路3』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•310『线路4』 +新闻综合,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•310『线路5』 +新闻综合,http://47.104.178.59:3566/651632657$LR•IPV4•310『线路6』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•310『线路7』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•310『线路8』 +新闻综合,http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260701080235&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260701080235&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=b17d9c71293c0983cb3d364149c676c5&sv=10004&ct=android$LR•IPV4•310『线路9』 +新闻综合,https://t.freetv.fun/live/shang-hai-xin-wen-zong-he.php$LR•IPV4•310『线路10』 +新闻综合,https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•310『线路11』 +新闻综合,https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•310『线路12』 +新闻综合,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•310『线路13』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•310『线路14』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•310『线路15』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•310『线路16』 +新闻综合,http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•310『线路17』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•310『线路18』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•310『线路19』 +新闻综合,http://hlszymgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260701040231&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260701040231&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=4cc2d5d47f9596bd20533fc8d57e53e4&sv=10004&ct=android$LR•IPV4•310『线路20』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•310『线路21』 +新闻综合,https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=6f4b191d0930fafab8274665578e1df8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•310『线路22』 +新闻综合,https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•310『线路23』 +新闻综合,http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•310『线路24』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•310『线路25』 +新闻综合,https://iptv.catvod.com/live.php?id=%E4%B8%8A%E6%B5%B7%E6%96%B0%E9%97%BB%E7%BB%BC%E5%90%88&line=1$LR•IPV4•310『线路26』 +新闻综合,http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•310『线路27』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•310『线路28』 +新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•310『线路29』 +新闻综合,https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•310『线路30』 +新闻综合,https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=a064629942f561cf9f5a930648802197&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•310『线路31』 +新闻综合,http://123.113.205.253:3000/651632657$LR•IPV4•310『线路32』 +新闻综合,http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•310『线路33』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•310『线路34』 +新闻综合,https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•310『线路35』 +新闻综合,http://115.190.247.176:1111/651632657$LR•IPV4•310『线路36』 +新闻综合,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•310『线路37』 +新闻综合,https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=c0bc623be007e5295d462465c7bd7bd7&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•310『线路38』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•310『线路39』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•310『线路40』 +新闻综合,https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•310『线路41』 +新闻综合,https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•310『线路42』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•310『线路43』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•310『线路44』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•310『线路45』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•310『线路46』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•310『线路47』 +新闻综合,http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•310『线路48』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•310『线路49』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•310『线路50』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•310『线路51』 +新闻综合,https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•310『线路52』 +新闻综合,https://live.264788.xyz/channel/shanghaixinwenzonghe?streamid=b42305d47a7ea7de356f6b9953dd63fb&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•310『线路53』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•310『线路54』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•310『线路55』 +新闻综合,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•310『线路56』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•310『线路57』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•310『线路58』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•310『线路59』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•310『线路60』 +新闻综合,http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•310『线路61』 +新闻综合,http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•310『线路62』 +新闻综合,http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•310『线路63』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•310『线路64』 +新闻综合,https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•310『线路65』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•310『线路66』 +新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•310『线路67』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•310『线路68』 +新闻综合,https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•310『线路69』 +新闻综合,http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•310『线路70』 +新闻综合,http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•310『线路71』 +新闻综合,http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•310『线路72』 +新闻综合,http://channel.wcrmt.cn:80/nmip-media/channellive/channel105268/playlist.m3u8$LR•IPV4•310『线路73』 +新闻综合,http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•310『线路74』 +新闻综合,http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•310『线路75』 +新闻综合,http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•310『线路76』 +新闻综合,https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•310『线路77』 +新闻综合,http://traffic.jbh.tjbh.com/live/bhtv10/playlist.m3u8$LR•IPV4•310『线路78』 +新闻综合,http://ls.qingting.fm/live/267.m3u8$LR•IPV4•310『线路79』 +新闻综合,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•310『线路80』 +新闻综合,https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&tpid=1516989100&type=0$LR•IPV4•310『线路81』 +新闻综合,https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•310『线路82』 +新闻综合,http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•310『线路83』 +新闻综合,https://stream.sun0769.com/dgrtv1/mp4tv1_800/index.m3u8$LR•IPV4•310『线路84』 +新闻综合,https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•310『线路85』 +新闻综合,http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•310『线路86』 +新闻综合,http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•310『线路87』 +新闻综合,http://cm-wshls.homecdn.com/live/2aa50.m3u8$LR•IPV4•310『线路88』 +新闻综合,http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•310『线路89』 +新闻综合,https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•310『线路90』 +新闻综合,https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•310『线路91』 +新闻综合,https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•310『线路92』 +新闻综合,http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•310『线路93』 +新闻综合,http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•310『线路94』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8439&tk=a0c4f6cfaba3$LR•IPV4•310『线路95』 +新闻综合,http://58.254.14.61:808/hls/504/index.m3u8$LR•IPV4•310『线路96』 +新闻综合,https://stream1.freetv.fun/shan-wei-xin-wen-zong-he-3.ctv$LR•IPV4•310『线路97』 +新闻综合,https://stream1.freetv.fun/shan-wei-xin-wen-zong-he-2.m3u8$LR•IPV4•310『线路98』 +新闻综合,http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77bb6a7063c4cdea57f09ca22f9ef12-0-39c19a21f73b823db2150ea45b147eb2$LR•IPV4•310『线路99』 +新闻综合,http://play-sh13.quklive.com/live/1702360350551252.m3u8?auth_key=2037107484-800189c57a5a44d3b823b60cf84f6756-0-a6f6828a62d5c167cff5e68735fa0d39$LR•IPV4•310『线路100』 +新闻综合,https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•310『线路101』 +新闻综合,https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•310『线路102』 +新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•310『线路103』 +新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•310『线路104』 +新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•310『线路105』 +新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•310『线路106』 +新闻综合,http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•310『线路107』 +新闻综合,http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•310『线路108』 +新闻综合,http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•310『线路109』 +新闻综合,https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•310『线路110』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/651632657$LR•IPV4•310『线路111』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/838109047$LR•IPV4•310『线路112』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731825$LR•IPV4•310『线路113』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731826$LR•IPV4•310『线路114』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731818$LR•IPV4•310『线路115』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731715$LR•IPV4•310『线路116』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731832$LR•IPV4•310『线路117』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731747$LR•IPV4•310『线路118』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/955227979$LR•IPV4•310『线路119』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/955227985$LR•IPV4•310『线路120』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/955227996$LR•IPV4•310『线路121』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639737327$LR•IPV4•310『线路122』 +新闻综合,https://live.chinacert.cftest5.cn/cnmg/live/639731783$LR•IPV4•310『线路123』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/651632657$LR•IPV4•310『线路124』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/838109047$LR•IPV4•310『线路125』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731825$LR•IPV4•310『线路126』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731826$LR•IPV4•310『线路127』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731818$LR•IPV4•310『线路128』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731715$LR•IPV4•310『线路129』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731832$LR•IPV4•310『线路130』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731747$LR•IPV4•310『线路131』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/955227979$LR•IPV4•310『线路132』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/955227985$LR•IPV4•310『线路133』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/955227996$LR•IPV4•310『线路134』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639737327$LR•IPV4•310『线路135』 +新闻综合,http://fn.gcl.de5.net:5908/gsh950428/639731783$LR•IPV4•310『线路136』 +新闻综合,http://wfenf.x3322.net:7788/651632657$LR•IPV4•310『线路137』 +新闻综合,http://wfenf.x3322.net:7788/838109047$LR•IPV4•310『线路138』 +新闻综合,http://wfenf.x3322.net:7788/639731825$LR•IPV4•310『线路139』 +新闻综合,http://wfenf.x3322.net:7788/639731826$LR•IPV4•310『线路140』 +新闻综合,http://wfenf.x3322.net:7788/639731818$LR•IPV4•310『线路141』 +新闻综合,http://wfenf.x3322.net:7788/639731715$LR•IPV4•310『线路142』 +新闻综合,http://wfenf.x3322.net:7788/639731832$LR•IPV4•310『线路143』 +新闻综合,http://wfenf.x3322.net:7788/639731747$LR•IPV4•310『线路144』 +新闻综合,http://wfenf.x3322.net:7788/955227979$LR•IPV4•310『线路145』 +新闻综合,http://wfenf.x3322.net:7788/955227985$LR•IPV4•310『线路146』 +新闻综合,http://wfenf.x3322.net:7788/955227996$LR•IPV4•310『线路147』 +新闻综合,http://wfenf.x3322.net:7788/639737327$LR•IPV4•310『线路148』 +新闻综合,http://wfenf.x3322.net:7788/639731783$LR•IPV4•310『线路149』 +新闻综合,http://106.5.175.159:1234/651632657$LR•IPV4•310『线路150』 +新闻综合,http://106.5.175.159:1234/838109047$LR•IPV4•310『线路151』 +新闻综合,http://106.5.175.159:1234/639731825$LR•IPV4•310『线路152』 +新闻综合,http://106.5.175.159:1234/639731826$LR•IPV4•310『线路153』 +新闻综合,http://106.5.175.159:1234/639731818$LR•IPV4•310『线路154』 +新闻综合,http://106.5.175.159:1234/639731715$LR•IPV4•310『线路155』 +新闻综合,http://106.5.175.159:1234/639731832$LR•IPV4•310『线路156』 +新闻综合,http://106.5.175.159:1234/639731747$LR•IPV4•310『线路157』 +新闻综合,http://106.5.175.159:1234/955227979$LR•IPV4•310『线路158』 +新闻综合,http://106.5.175.159:1234/955227985$LR•IPV4•310『线路159』 +新闻综合,http://106.5.175.159:1234/955227996$LR•IPV4•310『线路160』 +新闻综合,http://106.5.175.159:1234/639737327$LR•IPV4•310『线路161』 +新闻综合,http://106.5.175.159:1234/639731783$LR•IPV4•310『线路162』 +新闻综合,http://36.104.221.222:7788/651632657$LR•IPV4•310『线路163』 +新闻综合,http://36.104.221.222:7788/838109047$LR•IPV4•310『线路164』 +新闻综合,http://36.104.221.222:7788/639731825$LR•IPV4•310『线路165』 +新闻综合,http://36.104.221.222:7788/639731826$LR•IPV4•310『线路166』 +新闻综合,http://36.104.221.222:7788/639731818$LR•IPV4•310『线路167』 +新闻综合,http://36.104.221.222:7788/639731715$LR•IPV4•310『线路168』 +新闻综合,http://36.104.221.222:7788/639731832$LR•IPV4•310『线路169』 +新闻综合,http://36.104.221.222:7788/639731747$LR•IPV4•310『线路170』 +新闻综合,http://36.104.221.222:7788/955227979$LR•IPV4•310『线路171』 +新闻综合,http://36.104.221.222:7788/955227985$LR•IPV4•310『线路172』 +新闻综合,http://36.104.221.222:7788/955227996$LR•IPV4•310『线路173』 +新闻综合,http://36.104.221.222:7788/639737327$LR•IPV4•310『线路174』 +新闻综合,http://36.104.221.222:7788/639731783$LR•IPV4•310『线路175』 +新闻综合,http://115.58.151.196:1234/651632657$LR•IPV4•310『线路176』 +新闻综合,http://115.58.151.196:1234/838109047$LR•IPV4•310『线路177』 +新闻综合,http://115.58.151.196:1234/639731825$LR•IPV4•310『线路178』 +新闻综合,http://115.58.151.196:1234/639731826$LR•IPV4•310『线路179』 +新闻综合,http://115.58.151.196:1234/639731818$LR•IPV4•310『线路180』 +新闻综合,http://115.58.151.196:1234/639731715$LR•IPV4•310『线路181』 +新闻综合,http://115.58.151.196:1234/639731832$LR•IPV4•310『线路182』 +新闻综合,http://115.58.151.196:1234/639731747$LR•IPV4•310『线路183』 +新闻综合,http://115.58.151.196:1234/955227979$LR•IPV4•310『线路184』 +新闻综合,http://115.58.151.196:1234/955227985$LR•IPV4•310『线路185』 +新闻综合,http://115.58.151.196:1234/955227996$LR•IPV4•310『线路186』 +新闻综合,http://115.58.151.196:1234/639737327$LR•IPV4•310『线路187』 +新闻综合,http://115.58.151.196:1234/639731783$LR•IPV4•310『线路188』 +新闻综合,http://182.61.15.163:80/651632657$LR•IPV4•310『线路189』 +新闻综合,http://182.61.15.163:80/838109047$LR•IPV4•310『线路190』 +新闻综合,http://182.61.15.163:80/639731825$LR•IPV4•310『线路191』 +新闻综合,http://182.61.15.163:80/639731826$LR•IPV4•310『线路192』 +新闻综合,http://182.61.15.163:80/639731818$LR•IPV4•310『线路193』 +新闻综合,http://182.61.15.163:80/639731715$LR•IPV4•310『线路194』 +新闻综合,http://182.61.15.163:80/639731832$LR•IPV4•310『线路195』 +新闻综合,http://182.61.15.163:80/639731747$LR•IPV4•310『线路196』 +新闻综合,http://182.61.15.163:80/955227979$LR•IPV4•310『线路197』 +新闻综合,http://182.61.15.163:80/955227985$LR•IPV4•310『线路198』 +新闻综合,http://182.61.15.163:80/955227996$LR•IPV4•310『线路199』 +新闻综合,http://182.61.15.163:80/639737327$LR•IPV4•310『线路200』 +新闻综合,http://182.61.15.163:80/639731783$LR•IPV4•310『线路201』 +新闻综合,http://121.23.132.14:7788/651632657$LR•IPV4•310『线路202』 +新闻综合,http://121.23.132.14:7788/838109047$LR•IPV4•310『线路203』 +新闻综合,http://121.23.132.14:7788/639731825$LR•IPV4•310『线路204』 +新闻综合,http://121.23.132.14:7788/639731826$LR•IPV4•310『线路205』 +新闻综合,http://121.23.132.14:7788/639731818$LR•IPV4•310『线路206』 +新闻综合,http://121.23.132.14:7788/639731715$LR•IPV4•310『线路207』 +新闻综合,http://121.23.132.14:7788/639731832$LR•IPV4•310『线路208』 +新闻综合,http://121.23.132.14:7788/639731747$LR•IPV4•310『线路209』 +新闻综合,http://121.23.132.14:7788/955227979$LR•IPV4•310『线路210』 +新闻综合,http://121.23.132.14:7788/955227985$LR•IPV4•310『线路211』 +新闻综合,http://121.23.132.14:7788/955227996$LR•IPV4•310『线路212』 +新闻综合,http://121.23.132.14:7788/639737327$LR•IPV4•310『线路213』 +新闻综合,http://121.23.132.14:7788/639731783$LR•IPV4•310『线路214』 +新闻综合,http://120.4.126.153:1234/651632657$LR•IPV4•310『线路215』 +新闻综合,http://120.4.126.153:1234/838109047$LR•IPV4•310『线路216』 +新闻综合,http://120.4.126.153:1234/639731825$LR•IPV4•310『线路217』 +新闻综合,http://120.4.126.153:1234/639731826$LR•IPV4•310『线路218』 +新闻综合,http://120.4.126.153:1234/639731818$LR•IPV4•310『线路219』 +新闻综合,http://120.4.126.153:1234/639731715$LR•IPV4•310『线路220』 +新闻综合,http://120.4.126.153:1234/639731832$LR•IPV4•310『线路221』 +新闻综合,http://120.4.126.153:1234/639731747$LR•IPV4•310『线路222』 +新闻综合,http://120.4.126.153:1234/955227979$LR•IPV4•310『线路223』 +新闻综合,http://120.4.126.153:1234/955227985$LR•IPV4•310『线路224』 +新闻综合,http://120.4.126.153:1234/955227996$LR•IPV4•310『线路225』 +新闻综合,http://120.4.126.153:1234/639737327$LR•IPV4•310『线路226』 +新闻综合,http://120.4.126.153:1234/639731783$LR•IPV4•310『线路227』 +新闻综合,http://47.119.24.76:59093/651632657$LR•IPV4•310『线路228』 +新闻综合,http://47.119.24.76:59093/838109047$LR•IPV4•310『线路229』 +新闻综合,http://47.119.24.76:59093/639731825$LR•IPV4•310『线路230』 +新闻综合,http://47.119.24.76:59093/639731826$LR•IPV4•310『线路231』 +新闻综合,http://47.119.24.76:59093/639731818$LR•IPV4•310『线路232』 +新闻综合,http://47.119.24.76:59093/639731715$LR•IPV4•310『线路233』 +新闻综合,http://47.119.24.76:59093/639731832$LR•IPV4•310『线路234』 +新闻综合,http://47.119.24.76:59093/639731747$LR•IPV4•310『线路235』 +新闻综合,http://47.119.24.76:59093/955227979$LR•IPV4•310『线路236』 +新闻综合,http://47.119.24.76:59093/955227985$LR•IPV4•310『线路237』 +新闻综合,http://47.119.24.76:59093/955227996$LR•IPV4•310『线路238』 +新闻综合,http://47.119.24.76:59093/639737327$LR•IPV4•310『线路239』 +新闻综合,http://47.119.24.76:59093/639731783$LR•IPV4•310『线路240』 +新闻综合,http://222.134.19.49:8090/651632657$LR•IPV4•310『线路241』 +新闻综合,http://222.134.19.49:8090/838109047$LR•IPV4•310『线路242』 +新闻综合,http://222.134.19.49:8090/639731825$LR•IPV4•310『线路243』 +新闻综合,http://222.134.19.49:8090/639731826$LR•IPV4•310『线路244』 +新闻综合,http://222.134.19.49:8090/639731818$LR•IPV4•310『线路245』 +新闻综合,http://222.134.19.49:8090/639731715$LR•IPV4•310『线路246』 +新闻综合,http://222.134.19.49:8090/639731832$LR•IPV4•310『线路247』 +新闻综合,http://222.134.19.49:8090/639731747$LR•IPV4•310『线路248』 +新闻综合,http://222.134.19.49:8090/955227979$LR•IPV4•310『线路249』 +新闻综合,http://222.134.19.49:8090/955227985$LR•IPV4•310『线路250』 +新闻综合,http://222.134.19.49:8090/955227996$LR•IPV4•310『线路251』 +新闻综合,http://222.134.19.49:8090/639737327$LR•IPV4•310『线路252』 +新闻综合,http://222.134.19.49:8090/639731783$LR•IPV4•310『线路253』 +新闻综合,http://139.155.89.87:1000/651632657$LR•IPV4•310『线路254』 +新闻综合,http://139.155.89.87:1000/838109047$LR•IPV4•310『线路255』 +新闻综合,http://139.155.89.87:1000/639731825$LR•IPV4•310『线路256』 +新闻综合,http://139.155.89.87:1000/639731826$LR•IPV4•310『线路257』 +新闻综合,http://139.155.89.87:1000/639731818$LR•IPV4•310『线路258』 +新闻综合,http://139.155.89.87:1000/639731715$LR•IPV4•310『线路259』 +新闻综合,http://139.155.89.87:1000/639731832$LR•IPV4•310『线路260』 +新闻综合,http://139.155.89.87:1000/639731747$LR•IPV4•310『线路261』 +新闻综合,http://139.155.89.87:1000/955227979$LR•IPV4•310『线路262』 +新闻综合,http://139.155.89.87:1000/955227985$LR•IPV4•310『线路263』 +新闻综合,http://139.155.89.87:1000/955227996$LR•IPV4•310『线路264』 +新闻综合,http://139.155.89.87:1000/639737327$LR•IPV4•310『线路265』 +新闻综合,http://139.155.89.87:1000/639731783$LR•IPV4•310『线路266』 +新闻综合,http://101.34.236.223:1112/651632657$LR•IPV4•310『线路267』 +新闻综合,http://101.34.236.223:1112/838109047$LR•IPV4•310『线路268』 +新闻综合,http://101.34.236.223:1112/639731825$LR•IPV4•310『线路269』 +新闻综合,http://101.34.236.223:1112/639731826$LR•IPV4•310『线路270』 +新闻综合,http://101.34.236.223:1112/639731818$LR•IPV4•310『线路271』 +新闻综合,http://101.34.236.223:1112/639731715$LR•IPV4•310『线路272』 +新闻综合,http://101.34.236.223:1112/639731832$LR•IPV4•310『线路273』 +新闻综合,http://101.34.236.223:1112/639731747$LR•IPV4•310『线路274』 +新闻综合,http://101.34.236.223:1112/955227979$LR•IPV4•310『线路275』 +新闻综合,http://101.34.236.223:1112/955227985$LR•IPV4•310『线路276』 +新闻综合,http://101.34.236.223:1112/955227996$LR•IPV4•310『线路277』 +新闻综合,http://101.34.236.223:1112/639737327$LR•IPV4•310『线路278』 +新闻综合,http://101.34.236.223:1112/639731783$LR•IPV4•310『线路279』 +新闻综合,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226366/index.m3u8$LR•IPV4•310『线路280』 +新闻综合,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226376/index.m3u8$LR•IPV4•310『线路281』 +新闻综合,http://jwcdnqx.hebyun.com.cn/live/hdxwzh/1500k/tzwj_video.m3u8$LR•IPV4•310『线路282』 +新闻综合,https://jwcdnqx.hebyun.com.cn/live/SXTV1/1500k/tzwj_video.m3u8$LR•IPV4•310『线路283』 +新闻综合,http://stream.thmz.com/wxtv1/sd/live.m3u8?zjiangsd$LR•IPV4•310『线路284』 +新闻综合,http://stream.thmz.com/wxtv1/sd/live.m3u8$LR•IPV4•310『线路285』 +新闻综合,http://stream.thmz.com/wxtv1/playlist.m3u8$LR•IPV4•310『线路286』 +新闻综合,http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•310『线路287』 +新闻综合,http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•310『线路288』 +新闻综合,http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•310『线路289』 +新闻综合,https://l.cztvcloud.com/channels/lantian/SXshangyu1/720p.m3u8$LR•IPV4•310『线路290』 +新闻综合,https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•310『线路291』 +新闻综合,http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•310『线路292』 +新闻综合,http://221.5.213.4:30000/1111.m3u8$LR•IPV4•310『线路293』 +新闻综合,https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•310『线路294』 +新闻综合,http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•310『线路295』 +新闻综合,https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•310『线路296』 +新闻综合,http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•310『线路297』 +新闻综合,http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•310『线路298』 +新闻综合,https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•310『线路299』 +新闻综合,https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•310『线路300』 +新闻综合,http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•310『线路301』 +新闻综合,http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•310『线路302』 +新闻综合,http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•310『线路303』 +新闻综合,http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•310『线路304』 +新闻综合,http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•310『线路305』 +新闻综合,http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•310『线路306』 +新闻综合,https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•310『线路307』 +新闻综合,http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•310『线路308』 +新闻综合,http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•310『线路309』 +新闻综合,https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•310『线路310』 陕西,#genre# 西安新闻,http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4 山东,#genre# -山东少儿,http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路1』 -山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路2』 -山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路3』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路4』 -山东少儿,http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路5』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路6』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路7』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路8』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路9』 -山东少儿,http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路10』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路11』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路12』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路13』 -山东少儿,http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路14』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路15』 -山东少儿,http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 -山东新闻,http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路1』 -山东新闻,http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路2』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路3』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路4』 -山东新闻,http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路5』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路6』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路7』 -山东新闻,http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路8』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路9』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路10』 -山东新闻,http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路11』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路12』 +山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路1』 +山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路2』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路3』 +山东少儿,http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路4』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路5』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路6』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路7』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路8』 +山东少儿,http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路9』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路10』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路11』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路12』 +山东少儿,http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路13』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-9.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『线路15』 +山东少儿,http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路16』 +山东新闻,http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路1』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路2』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路3』 +山东新闻,http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路4』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路5』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路6』 +山东新闻,http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路7』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路8』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路9』 +山东新闻,http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路10』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路11』 +山东新闻,http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路12』 山东教育,https://test1.live.sdetv.com.cn/live/dianshizhibo/playlist.m3u8$LR•IPV4•35『线路1』 -山东教育,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000004097&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路2』 -山东教育,http://112.132.10.54:9901/tsfile/live/1018_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路3』 -山东教育,http://hlszymgsplive.miguvideo.com:8080/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20260701080242&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260701080242&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=b3c5633f1adc8266e4b2c22da487d41e&sv=10004&ct=android$LR•IPV4•35『线路4』 -山东教育,https://iptv.catvod.com/live.php?id=%E5%B1%B1%E4%B8%9C%E6%95%99%E8%82%B2&line=1$LR•IPV4•35『线路5』 -山东教育,http://120.238.94.10:9901/tsfile/live/1062_1.m3u8?key=txiptv$LR•IPV4•35『线路6』 -山东教育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0563&tk=a0c4f6cfaba3$LR•IPV4•35『线路7』 -山东教育,http://47.104.178.59:3566/609154353$LR•IPV4•35『线路8』 -山东教育,http://iptv.huuc.edu.cn/hls/sdetv.m3u8$LR•IPV4•35『线路9』 -山东教育,http://183.11.239.36:808/hls/72/index.m3u8$LR•IPV4•35『线路10』 -山东教育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7973&tk=a0c4f6cfaba3$LR•IPV4•35『线路11』 -山东教育,http://123.113.205.253:3000/609154353$LR•IPV4•35『线路12』 -山东教育,http://120.238.94.10:9901/tsfile/live/1062_1.m3u8$LR•IPV4•35『线路13』 -山东教育,http://115.190.247.176:1111/609154353$LR•IPV4•35『线路14』 -山东教育,https://migu.188766.xyz/?migutoken=1134813ab83db9f651ce86515f06b7c5&id=%E5%B1%B1%E4%B8%9C%E6%95%99%E8%82%B2&type=yy$LR•IPV4•35『线路15』 -山东教育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=G_SDETV$LR•IPV4•35『线路16』 -山东教育,http://gslbmgsplive.miguvideo.com/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=20250927080126244a72fa1b554182ae03568fff35bca7&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20250927080126&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=106.13.250.83&SecurityKey=20250927080126&promotionId=&mvid=2200208305&mcid=500020&playurlVersion=WX-A1-8.9.2-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=41ee1554c91427e91ee78ce8b64f7a33&ddCalcu=3431eae27e9f104565b48ce9c18472e7ee19$LR•IPV4•35『线路17』 -山东教育,http://76.5432123.xyz/杂项代理/学习强国.php?id=sdjy$LR•IPV4•35『线路18』 -山东教育,http://121.19.134.222:808/tsfile/live/1033_1.m3u8$LR•IPV4•35『线路19』 -山东教育,http://dassby.qqff.top:99/live/山东教育卫视/index.m3u8$LR•IPV4•35『线路20』 -山东教育,http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20260701040238&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260701040238&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=73b3672404e6f81ba9eb6d7e899a661d&sv=10004&ct=android$LR•IPV4•35『线路21』 +山东教育,http://112.132.10.54:9901/tsfile/live/1018_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路2』 +山东教育,http://hlszymgsplive.miguvideo.com:8080/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20260701080242&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260701080242&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=b3c5633f1adc8266e4b2c22da487d41e&sv=10004&ct=android$LR•IPV4•35『线路3』 +山东教育,https://iptv.catvod.com/live.php?id=%E5%B1%B1%E4%B8%9C%E6%95%99%E8%82%B2&line=1$LR•IPV4•35『线路4』 +山东教育,http://120.238.94.10:9901/tsfile/live/1062_1.m3u8?key=txiptv$LR•IPV4•35『线路5』 +山东教育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0563&tk=a0c4f6cfaba3$LR•IPV4•35『线路6』 +山东教育,http://47.104.178.59:3566/609154353$LR•IPV4•35『线路7』 +山东教育,http://iptv.huuc.edu.cn/hls/sdetv.m3u8$LR•IPV4•35『线路8』 +山东教育,http://183.11.239.36:808/hls/72/index.m3u8$LR•IPV4•35『线路9』 +山东教育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7973&tk=a0c4f6cfaba3$LR•IPV4•35『线路10』 +山东教育,http://123.113.205.253:3000/609154353$LR•IPV4•35『线路11』 +山东教育,http://120.238.94.10:9901/tsfile/live/1062_1.m3u8$LR•IPV4•35『线路12』 +山东教育,http://115.190.247.176:1111/609154353$LR•IPV4•35『线路13』 +山东教育,https://migu.188766.xyz/?migutoken=1134813ab83db9f651ce86515f06b7c5&id=%E5%B1%B1%E4%B8%9C%E6%95%99%E8%82%B2&type=yy$LR•IPV4•35『线路14』 +山东教育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=G_SDETV$LR•IPV4•35『线路15』 +山东教育,http://gslbmgsplive.miguvideo.com/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=20250927080126244a72fa1b554182ae03568fff35bca7&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20250927080126&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=106.13.250.83&SecurityKey=20250927080126&promotionId=&mvid=2200208305&mcid=500020&playurlVersion=WX-A1-8.9.2-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=41ee1554c91427e91ee78ce8b64f7a33&ddCalcu=3431eae27e9f104565b48ce9c18472e7ee19$LR•IPV4•35『线路16』 +山东教育,http://76.5432123.xyz/杂项代理/学习强国.php?id=sdjy$LR•IPV4•35『线路17』 +山东教育,http://121.19.134.222:808/tsfile/live/1033_1.m3u8$LR•IPV4•35『线路18』 +山东教育,http://dassby.qqff.top:99/live/山东教育卫视/index.m3u8$LR•IPV4•35『线路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=20260701040238&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260701040238&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=73b3672404e6f81ba9eb6d7e899a661d&sv=10004&ct=android$LR•IPV4•35『线路20』 +山东教育,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=1000000002000004097&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路21』 山东教育,https://live.chinacert.cftest5.cn/cnmg/live/609154353$LR•IPV4•35『线路22』 山东教育,http://fn.gcl.de5.net:5908/gsh950428/609154353$LR•IPV4•35『线路23』 山东教育,http://wfenf.x3322.net:7788/609154353$LR•IPV4•35『线路24』 @@ -5414,37 +5417,37 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 山东教育,http://139.155.89.87:1000/609154353$LR•IPV4•35『线路33』 山东教育,http://101.34.236.223:1112/609154353$LR•IPV4•35『线路34』 山东教育,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227166/index.m3u8$LR•IPV4•35『线路35』 -山东农科,http://livealone302.iqilu.com/iqilu/nkpd.m3u8$LR•IPV4•2『线路1』 -山东农科,http://58.57.40.22:9901/tsfile/live/1022_1.m3u8$LR•IPV4•2『线路2』 -山东齐鲁,http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路1』 -山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路2』 -山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$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://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路5』 -山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&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://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 -山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路9』 -山东齐鲁,http://123.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路10』 -山东生活,http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路1』 -山东生活,http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路2』 -山东生活,http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路3』 -山东生活,http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路4』 -山东生活,http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路5』 -山东生活,http://live.xmcdn.com/live/802/64.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『线路7』 -山东体育,http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路1』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-15.m3u8$LR•IPV4•37『线路2』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-7.m3u8$LR•IPV4•37『线路3』 -山东体育,http://61.156.228.12:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路4』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-16.m3u8$LR•IPV4•37『线路5』 -山东体育,http://123.130.84.106:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路6』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-11.m3u8$LR•IPV4•37『线路7』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-8.m3u8$LR•IPV4•37『线路8』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-3.m3u8$LR•IPV4•37『线路9』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-12.m3u8$LR•IPV4•37『线路10』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-4.m3u8$LR•IPV4•37『线路11』 -山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-24.m3u8$LR•IPV4•37『线路12』 +山东农科,http://58.57.40.22:9901/tsfile/live/1022_1.m3u8$LR•IPV4•2『线路1』 +山东农科,http://livealone302.iqilu.com/iqilu/nkpd.m3u8$LR•IPV4•2『线路2』 +山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路1』 +山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$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://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路4』 +山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路5』 +山东齐鲁,http://123.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『线路7』 +山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 +山东齐鲁,http://123.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路9』 +山东齐鲁,http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路10』 +山东生活,http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路1』 +山东生活,http://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『线路3』 +山东生活,http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路4』 +山东生活,http://live.xmcdn.com/live/802/64.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://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路7』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-15.m3u8$LR•IPV4•37『线路1』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-7.m3u8$LR•IPV4•37『线路2』 +山东体育,http://61.156.228.12:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路3』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-16.m3u8$LR•IPV4•37『线路4』 +山东体育,http://123.130.84.106:8154/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路5』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-11.m3u8$LR•IPV4•37『线路6』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-8.m3u8$LR•IPV4•37『线路7』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-3.m3u8$LR•IPV4•37『线路8』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-12.m3u8$LR•IPV4•37『线路9』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-4.m3u8$LR•IPV4•37『线路10』 +山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-24.m3u8$LR•IPV4•37『线路11』 +山东体育,http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路12』 山东体育,http://123.132.233.194:352/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•37『线路13』 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-18.m3u8$LR•IPV4•37『线路14』 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-2.m3u8$LR•IPV4•37『线路15』 @@ -5470,12 +5473,12 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-13.m3u8$LR•IPV4•37『线路35』 山东体育,http://111.14.181.15:9901/tsfile/live/1022_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•37『线路36』 山东体育,http://satellitepull.cnr.cn/live/wxsdtyxxgb/playlist.m3u8$LR•IPV4•37『线路37』 -山东综艺,http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路1』 -山东综艺,http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路2』 -山东综艺,http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$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://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路5』 -山东综艺,http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路6』 +山东综艺,http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路1』 +山东综艺,http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路2』 +山东综艺,http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路3』 +山东综艺,http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路4』 +山东综艺,http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路5』 +山东综艺,http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路6』 山东文旅,http://58.57.40.22:9901/tsfile/live/1023_1.m3u8$LR•IPV4•3『线路1』 山东文旅,http://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』 @@ -5496,109 +5499,111 @@ NewTV哒啵赛事,http://111.43.126.240:9003/hls/84/index.m3u8$LR•IPV4•2『 港澳台,#genre# 凤凰卫视中文台,http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•18『线路1』 -凤凰卫视中文台,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•18『线路2』 -凤凰卫视中文台,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•18『线路3』 -凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路4』 -凤凰卫视中文台,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•18『线路5』 -凤凰卫视中文台,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•18『线路6』 -凤凰卫视中文台,http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•18『线路7』 -凤凰卫视中文台,https://cdn6.163189.xyz/163189/fhzw$LR•IPV4•18『线路8』 -凤凰卫视中文台,https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•18『线路9』 -凤凰卫视中文台,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•18『线路10』 -凤凰卫视中文台,http://146.56.153.245:20121/bysid/258$LR•IPV4•18『线路11』 -凤凰卫视中文台,http://146.56.153.245:20121/bysid/258$LR•IPV4•18『线路12』 -凤凰卫视中文台,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•18『线路13』 -凤凰卫视中文台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•18『线路14』 -凤凰卫视中文台,http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•18『线路15』 -凤凰卫视中文台,http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•18『线路16』 -凤凰卫视中文台,http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•18『线路17』 -凤凰卫视中文台,http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•18『线路18』 +凤凰卫视中文台,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•18『线路2』 +凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路3』 +凤凰卫视中文台,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•18『线路4』 +凤凰卫视中文台,https://k44991.kylintv.tv/live/pxna_iphone.m3u8$LR•IPV4•18『线路5』 +凤凰卫视中文台,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8577/.m3u8$LR•IPV4•18『线路6』 +凤凰卫视中文台,http://146.56.153.245:20121/bysid/258$LR•IPV4•18『线路7』 +凤凰卫视中文台,http://146.56.153.245:20121/bysid/258$LR•IPV4•18『线路8』 +凤凰卫视中文台,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.184:9092$LR•IPV4•18『线路9』 +凤凰卫视中文台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzw$LR•IPV4•18『线路10』 +凤凰卫视中文台,http://122.117.71.103:8574/http/61.222.53.250:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•18『线路11』 +凤凰卫视中文台,http://148.135.93.213:81/phenix.php?id=fhzw$LR•IPV4•18『线路12』 +凤凰卫视中文台,http://211.75.171.121:8577/http/61.67.128.137:8078/hls/21/80/phoenixch.m3u8$LR•IPV4•18『线路13』 +凤凰卫视中文台,http://43.251.226.89:8080/play/888.m3u8$LR•IPV4•18『线路14』 +凤凰卫视中文台,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•18『线路15』 +凤凰卫视中文台,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•18『线路16』 +凤凰卫视中文台,http://push.cdn1.hls123.de:8080/streams/a4y2t99pzyi/index.m3u8$LR•IPV4•18『线路17』 +凤凰卫视中文台,https://cdn6.163189.xyz/163189/fhzw$LR•IPV4•18『线路18』 凤凰卫视资讯台,http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•17『线路1』 -凤凰卫视资讯台,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•17『线路2』 -凤凰卫视资讯台,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•17『线路3』 -凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 -凤凰卫视资讯台,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•17『线路5』 -凤凰卫视资讯台,http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•17『线路6』 -凤凰卫视资讯台,https://cdn6.163189.xyz/163189/fhzx$LR•IPV4•17『线路7』 -凤凰卫视资讯台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•17『线路8』 -凤凰卫视资讯台,http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•17『线路9』 -凤凰卫视资讯台,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•17『线路10』 -凤凰卫视资讯台,http://146.56.153.245:20121/bysid/257$LR•IPV4•17『线路11』 -凤凰卫视资讯台,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•17『线路12』 -凤凰卫视资讯台,http://146.56.153.245:20121/bysid/257$LR•IPV4•17『线路13』 -凤凰卫视资讯台,http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•17『线路14』 -凤凰卫视资讯台,http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•17『线路15』 -凤凰卫视资讯台,http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•17『线路16』 -凤凰卫视资讯台,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•17『线路17』 -凤凰卫视香港台,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•10『线路1』 -凤凰卫视香港台,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•10『线路2』 -凤凰卫视香港台,https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•10『线路3』 -凤凰卫视香港台,https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•10『线路4』 -凤凰卫视香港台,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•10『线路5』 -凤凰卫视香港台,http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•10『线路6』 -凤凰卫视香港台,https://cdn6.163189.xyz/163189/fhhk$LR•IPV4•10『线路7』 -凤凰卫视香港台,http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•10『线路8』 -凤凰卫视香港台,http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•10『线路9』 -凤凰卫视香港台,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•10『线路10』 -TVB翡翠台,p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•38『线路1』 -TVB翡翠台,p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•38『线路2』 -TVB翡翠台,p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•38『线路3』 -TVB翡翠台,http://cdn6.163189.xyz/163189/fct$LR•IPV4•38『线路4』 -TVB翡翠台,http://o11.163189.xyz/stream/tvb/fct/$LR•IPV4•38『线路5』 -TVB翡翠台,http://o11.163189.xyz/stream/tvb/fct4k/$LR•IPV4•38『线路6』 -TVB翡翠台,https://cdn6.163189.xyz/163189/fct4k$LR•IPV4•38『线路7』 -TVB翡翠台,http://124.244.129.167:9004/0.ts$LR•IPV4•38『线路8』 -TVB翡翠台,http://qingyi.7766.org:9004/0.ts$LR•IPV4•38『线路9』 -TVB翡翠台,http://push.cdn1.hls123.de:8080/streams/ef5addc0849/index.m3u8$LR•IPV4•38『线路10』 -TVB翡翠台,http://push.cdn1.hls123.de:8080/streams/n6dnsi33w2e/index.m3u8$LR•IPV4•38『线路11』 -TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•38『线路12』 -TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct4$LR•IPV4•38『线路13』 -TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct$LR•IPV4•38『线路14』 -TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct3$LR•IPV4•38『线路15』 -TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct$LR•IPV4•38『线路16』 -TVB翡翠台,http://hls.168.us.kg/u/81/master.m3u8$LR•IPV4•38『线路17』 -TVB翡翠台,http://r.jdshipin.com/62WM7$LR•IPV4•38『线路18』 -TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•38『线路19』 -TVB翡翠台,http://php.jdshipin.com:8880/smt.php?id=jade_twn$LR•IPV4•38『线路20』 -TVB翡翠台,http://php.jdshipin.com/smt.php?id=jade_twn$LR•IPV4•38『线路21』 -TVB翡翠台,http://cdn9.1689.us.kg/smt1.1.php?id=jade_twn$LR•IPV4•38『线路22』 -TVB翡翠台,http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah005-golive.flv$LR•IPV4•38『线路23』 -TVB翡翠台,http://58.250.155.2:8180/TV00000000000000000032@HHZT$LR•IPV4•38『线路24』 -TVB翡翠台,http://hotelplay.net/live/pmb8krf68n4z/4d8cf4af8de3574c/476935.m3u8$LR•IPV4•38『线路25』 -TVB翡翠台,http://ali.hlspull.yximgs.com/live/awei_jade.flv$LR•IPV4•38『线路26』 -TVB翡翠台,p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•38『线路27』 -TVB翡翠台,https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•38『线路28』 -TVB翡翠台,http://cdn6.163189.xyz/163189/tvbd$LR•IPV4•38『线路29』 -TVB翡翠台,http://cdn6.163189.xyz/163189/tvb1$LR•IPV4•38『线路30』 -TVB翡翠台,https://cdn6.163189.xyz/163189/fct$LR•IPV4•38『线路31』 -TVB翡翠台,https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•38『线路32』 -TVB翡翠台,https://mytv.cdn.loc.cc/o12.php?id=fct$LR•IPV4•38『线路33』 -TVB翡翠台,http://43.251.226.89:8080/play/867.m3u8$LR•IPV4•38『线路34』 -TVB翡翠台,http://43.251.226.89:8080/play/868.m3u8$LR•IPV4•38『线路35』 -TVB翡翠台,http://43.251.226.89:8080/play/869.m3u8$LR•IPV4•38『线路36』 -TVB翡翠台,http://43.251.226.89:8080/play/894.m3u8$LR•IPV4•38『线路37』 -TVB翡翠台,http://43.251.226.89:8080/play/895.m3u8$LR•IPV4•38『线路38』 -TVB明珠台,http://php.jdshipin.com/TVOD/iptv.php?id=mzt2$LR•IPV4•17『线路1』 -TVB明珠台,http://php.jdshipin.com/PLTV/iptv.php?id=mzt2$LR•IPV4•17『线路2』 -TVB明珠台,http://php.jdshipin.com/PLTV/iptv.php?id=mzt$LR•IPV4•17『线路3』 -TVB明珠台,http://php.jdshipin.com/TVOD/iptv.php?id=mzt$LR•IPV4•17『线路4』 -TVB明珠台,http://hls.168.us.kg/u/84/master.m3u8$LR•IPV4•17『线路5』 -TVB明珠台,p3p://167.114.175.6:55331/611d99f3000116024a845bb9627404c9$LR•IPV4•17『线路6』 -TVB明珠台,http://php.jdshipin.com:8880/smt.php?id=pearl_twn$LR•IPV4•17『线路7』 -TVB明珠台,http://push.cdn1.hls123.de:8080/streams/89a8p45a15e/index.m3u8$LR•IPV4•17『线路8』 -TVB明珠台,http://r.jdshipin.com/jUx8K$LR•IPV4•17『线路9』 -TVB明珠台,https://hls-gateway.vpstv.net/streams/476936.m3u8$LR•IPV4•17『线路10』 -TVB明珠台,p3p://167.114.175.6:55331/602f1ba9000814efa6f2970333d309d9$LR•IPV4•17『线路11』 -TVB明珠台,http://o11.163189.xyz/stream/tvb/mzt/$LR•IPV4•17『线路12』 -TVB明珠台,https://cdn6.163189.xyz/163189/mzt$LR•IPV4•17『线路13』 -TVB明珠台,https://mytv.cdn.loc.cc/o12.php?id=mzt$LR•IPV4•17『线路14』 -TVB明珠台,http://43.251.226.89:8080/play/871.m3u8$LR•IPV4•17『线路15』 -TVB明珠台,http://43.251.226.89:8080/play/872.m3u8$LR•IPV4•17『线路16』 -TVB明珠台,http://43.251.226.89:8080/play/897.m3u8$LR•IPV4•17『线路17』 -TVB无线新闻,http://php.jdshipin.com/smt.php?id=inews_twn$LR•IPV4•17『线路1』 -TVB无线新闻,http://php.jdshipin.com/TVOD/iptv.php?id=wxxwt$LR•IPV4•17『线路2』 -TVB无线新闻,http://r.jdshipin.com/CkuBd$LR•IPV4•17『线路3』 -TVB无线新闻,http://cdn9.163189.xyz/smt1.1.php?id=inews_twn$LR•IPV4•17『线路4』 +凤凰卫视资讯台,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•17『线路2』 +凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路3』 +凤凰卫视资讯台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•17『线路4』 +凤凰卫视资讯台,http://122.117.71.103:8573/http/61.222.53.250:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•17『线路5』 +凤凰卫视资讯台,http://e1.woc.iiiya.cn:8888/rtp/239.61.2.183:9086$LR•IPV4•17『线路6』 +凤凰卫视资讯台,http://146.56.153.245:20121/bysid/257$LR•IPV4•17『线路7』 +凤凰卫视资讯台,http://tianhewan.top/ZIPP.php?url=http://211.72.65.236:8576/.m3u8$LR•IPV4•17『线路8』 +凤凰卫视资讯台,http://146.56.153.245:20121/bysid/257$LR•IPV4•17『线路9』 +凤凰卫视资讯台,http://148.135.93.213:81/phenix.php?id=fhzx$LR•IPV4•17『线路10』 +凤凰卫视资讯台,http://211.75.171.121:8576/http/61.67.128.137:8078/hls/20/80/phoenixif.m3u8$LR•IPV4•17『线路11』 +凤凰卫视资讯台,http://43.251.226.89:8080/play/889.m3u8$LR•IPV4•17『线路12』 +凤凰卫视资讯台,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•17『线路13』 +凤凰卫视资讯台,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•17『线路14』 +凤凰卫视资讯台,http://push.cdn1.hls123.de:8080/streams/0u0qd5ovqkg/index.m3u8$LR•IPV4•17『线路15』 +凤凰卫视资讯台,https://cdn6.163189.xyz/163189/fhzx$LR•IPV4•17『线路16』 +凤凰卫视资讯台,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•17『线路17』 +凤凰卫视香港台,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•10『线路1』 +凤凰卫视香港台,https://epg.pw/stream/8770e89223a086eb1b8a0c931e42296d772a8069ad3eb72540e0c434e7cb3e93.m3u8$LR•IPV4•10『线路2』 +凤凰卫视香港台,https://epg.pw/stream/5f16dc7fc8aaaed3205516c63e4a8c24bca9dbba1181684244729cf574505b0e.m3u8$LR•IPV4•10『线路3』 +凤凰卫视香港台,http://148.135.93.213:81/phenix.php?id=fhhk$LR•IPV4•10『线路4』 +凤凰卫视香港台,http://43.251.226.89:8080/play/890.m3u8$LR•IPV4•10『线路5』 +凤凰卫视香港台,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•10『线路6』 +凤凰卫视香港台,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•10『线路7』 +凤凰卫视香港台,http://push.cdn1.hls123.de:8080/streams/898y722sqjr/index.m3u8$LR•IPV4•10『线路8』 +凤凰卫视香港台,https://cdn6.163189.xyz/163189/fhhk$LR•IPV4•10『线路9』 +凤凰卫视香港台,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•10『线路10』 +TVB翡翠台,http://cdn9.163189.xyz/smt1.1.php?id=jade_twn$LR•IPV4•39『线路1』 +TVB翡翠台,p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•39『线路2』 +TVB翡翠台,p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•39『线路3』 +TVB翡翠台,p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•39『线路4』 +TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=huali2$LR•IPV4•39『线路5』 +TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct4$LR•IPV4•39『线路6』 +TVB翡翠台,http://php.jdshipin.com:8880/TVOD/iptv.php?id=fct$LR•IPV4•39『线路7』 +TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct3$LR•IPV4•39『线路8』 +TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct$LR•IPV4•39『线路9』 +TVB翡翠台,http://hls.168.us.kg/u/81/master.m3u8$LR•IPV4•39『线路10』 +TVB翡翠台,http://r.jdshipin.com/62WM7$LR•IPV4•39『线路11』 +TVB翡翠台,http://php.jdshipin.com/TVOD/iptv.php?id=fct4$LR•IPV4•39『线路12』 +TVB翡翠台,http://php.jdshipin.com:8880/smt.php?id=jade_twn$LR•IPV4•39『线路13』 +TVB翡翠台,http://php.jdshipin.com/smt.php?id=jade_twn$LR•IPV4•39『线路14』 +TVB翡翠台,http://cdn9.1689.us.kg/smt1.1.php?id=jade_twn$LR•IPV4•39『线路15』 +TVB翡翠台,http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah005-golive.flv$LR•IPV4•39『线路16』 +TVB翡翠台,http://58.250.155.2:8180/TV00000000000000000032@HHZT$LR•IPV4•39『线路17』 +TVB翡翠台,http://hotelplay.net/live/pmb8krf68n4z/4d8cf4af8de3574c/476935.m3u8$LR•IPV4•39『线路18』 +TVB翡翠台,http://ali.hlspull.yximgs.com/live/awei_jade.flv$LR•IPV4•39『线路19』 +TVB翡翠台,p3p://167.114.175.6:55331/653e49c20006c60f0c8397f7771b1b7b$LR•IPV4•39『线路20』 +TVB翡翠台,https://hls-gateway.vpstv.net/streams/476929.m3u8$LR•IPV4•39『线路21』 +TVB翡翠台,http://cdn6.163189.xyz/163189/fct$LR•IPV4•39『线路22』 +TVB翡翠台,http://o11.163189.xyz/stream/tvb/fct/$LR•IPV4•39『线路23』 +TVB翡翠台,http://o11.163189.xyz/stream/tvb/fct4k/$LR•IPV4•39『线路24』 +TVB翡翠台,https://cdn6.163189.xyz/163189/fct4k$LR•IPV4•39『线路25』 +TVB翡翠台,http://124.244.129.167:9004/0.ts$LR•IPV4•39『线路26』 +TVB翡翠台,http://qingyi.7766.org:9004/0.ts$LR•IPV4•39『线路27』 +TVB翡翠台,http://push.cdn1.hls123.de:8080/streams/ef5addc0849/index.m3u8$LR•IPV4•39『线路28』 +TVB翡翠台,http://push.cdn1.hls123.de:8080/streams/n6dnsi33w2e/index.m3u8$LR•IPV4•39『线路29』 +TVB翡翠台,http://cdn6.163189.xyz/163189/tvbd$LR•IPV4•39『线路30』 +TVB翡翠台,https://gcalic.v.myalicdn.com/gc/fcw03_1/index.m3u8$LR•IPV4•39『线路31』 +TVB翡翠台,https://mytv.cdn.loc.cc/o12.php?id=fct$LR•IPV4•39『线路32』 +TVB翡翠台,http://43.251.226.89:8080/play/867.m3u8$LR•IPV4•39『线路33』 +TVB翡翠台,http://43.251.226.89:8080/play/868.m3u8$LR•IPV4•39『线路34』 +TVB翡翠台,http://43.251.226.89:8080/play/869.m3u8$LR•IPV4•39『线路35』 +TVB翡翠台,http://43.251.226.89:8080/play/894.m3u8$LR•IPV4•39『线路36』 +TVB翡翠台,http://43.251.226.89:8080/play/895.m3u8$LR•IPV4•39『线路37』 +TVB翡翠台,http://cdn6.163189.xyz/163189/tvb1$LR•IPV4•39『线路38』 +TVB翡翠台,https://cdn6.163189.xyz/163189/fct$LR•IPV4•39『线路39』 +TVB明珠台,http://cdn9.163189.xyz/smt1.1.php?id=pearl_twn$LR•IPV4•18『线路1』 +TVB明珠台,http://php.jdshipin.com/TVOD/iptv.php?id=mzt2$LR•IPV4•18『线路2』 +TVB明珠台,http://php.jdshipin.com/PLTV/iptv.php?id=mzt2$LR•IPV4•18『线路3』 +TVB明珠台,http://php.jdshipin.com/PLTV/iptv.php?id=mzt$LR•IPV4•18『线路4』 +TVB明珠台,http://php.jdshipin.com/TVOD/iptv.php?id=mzt$LR•IPV4•18『线路5』 +TVB明珠台,http://hls.168.us.kg/u/84/master.m3u8$LR•IPV4•18『线路6』 +TVB明珠台,p3p://167.114.175.6:55331/611d99f3000116024a845bb9627404c9$LR•IPV4•18『线路7』 +TVB明珠台,http://php.jdshipin.com:8880/smt.php?id=pearl_twn$LR•IPV4•18『线路8』 +TVB明珠台,http://r.jdshipin.com/ZQ4kN$LR•IPV4•18『线路9』 +TVB明珠台,https://hls-gateway.vpstv.net/streams/476936.m3u8$LR•IPV4•18『线路10』 +TVB明珠台,http://push.cdn1.hls123.de:8080/streams/89a8p45a15e/index.m3u8$LR•IPV4•18『线路11』 +TVB明珠台,p3p://167.114.175.6:55331/602f1ba9000814efa6f2970333d309d9$LR•IPV4•18『线路12』 +TVB明珠台,https://mytv.cdn.loc.cc/o12.php?id=mzt$LR•IPV4•18『线路13』 +TVB明珠台,http://43.251.226.89:8080/play/871.m3u8$LR•IPV4•18『线路14』 +TVB明珠台,http://43.251.226.89:8080/play/872.m3u8$LR•IPV4•18『线路15』 +TVB明珠台,http://43.251.226.89:8080/play/897.m3u8$LR•IPV4•18『线路16』 +TVB明珠台,http://o11.163189.xyz/stream/tvb/mzt/$LR•IPV4•18『线路17』 +TVB明珠台,https://cdn6.163189.xyz/163189/mzt$LR•IPV4•18『线路18』 +TVB无线新闻,http://cdn9.163189.xyz/smt1.1.php?id=inews_twn$LR•IPV4•17『线路1』 +TVB无线新闻,http://php.jdshipin.com/smt.php?id=inews_twn$LR•IPV4•17『线路2』 +TVB无线新闻,http://php.jdshipin.com/TVOD/iptv.php?id=wxxwt$LR•IPV4•17『线路3』 +TVB无线新闻,http://r.jdshipin.com/CkuBd$LR•IPV4•17『线路4』 TVB无线新闻,http://74.91.26.218:82/live/inews.m3u8$LR•IPV4•17『线路5』 TVB无线新闻,http://php.jdshipin.com:8880/smt.php?id=inews_twn$LR•IPV4•17『线路6』 TVB无线新闻,http://v2hcdn.jdshipin.com/news/news.stream/chunklist_w1005.m3u8$LR•IPV4•17『线路7』 @@ -5606,71 +5611,70 @@ TVB无线新闻,p3p://167.114.175.6:55331/653e4703000daead0c78dfb07723484e$LR• TVB无线新闻,p3p://108.181.32.169:19673/66c414110003f1f047eb7cb30cd84a38$LR•IPV4•17『线路9』 TVB无线新闻,p3p://167.114.175.6:55331/66c9c0df00016a4852abc2d358ee0ccb$LR•IPV4•17『线路10』 TVB无线新闻,p3p://167.114.175.6:55331/653e4818000b73240c7d19181340415e$LR•IPV4•17『线路11』 -TVB无线新闻,http://cdn6.163189.xyz/163189/wxxw$LR•IPV4•17『线路12』 -TVB无线新闻,http://push.cdn1.hls123.de:8080/streams/n66wwnx3l7i/index.m3u8$LR•IPV4•17『线路13』 -TVB无线新闻,https://cdn6.163189.xyz/163189/wxxw$LR•IPV4•17『线路14』 -TVB无线新闻,http://43.251.226.89:8080/play/865.m3u8$LR•IPV4•17『线路15』 -TVB无线新闻,http://43.251.226.89:8080/play/893.m3u8$LR•IPV4•17『线路16』 -TVB无线新闻,https://hls-gateway.vpstv.net/streams/708884.m3u8$LR•IPV4•17『线路17』 -TVB星河,http://cdn6.163189.xyz/163189/tvbxh$LR•IPV4•19『线路1』 -TVB星河,http://o11.163189.xyz/stream/live/tvbxh/$LR•IPV4•19『线路2』 -TVB星河,http://r.jdshipin.com/Voac4$LR•IPV4•19『线路3』 -TVB星河,http://push.cdn1.hls123.de:8080/streams/hbiwgswysds/index.m3u8$LR•IPV4•19『线路4』 -TVB星河,http://r.jdshipin.com/sXuuD$LR•IPV4•19『线路5』 -TVB星河,http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•19『线路6』 -TVB星河,http://php.jdshipin.com:8880/smt.php?id=Xinhe$LR•IPV4•19『线路7』 -TVB星河,http://cdn9.1689.us.kg/smt1.1.php?id=Xinhe$LR•IPV4•19『线路8』 -TVB星河,http://v2h.jdshipin.com/xinghe_1/xinghe_1.stream/chunklist_w106.m3u8$LR•IPV4•19『线路9』 -TVB星河,http://php.jdshipin.com:8880/TVOD/iptv.php?id=xinghe$LR•IPV4•19『线路10』 -TVB星河,https://tv.mytvsuper.xyz/tvb/xinghe/xinghe.m3u8$LR•IPV4•19『线路11』 -TVB星河,p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•19『线路12』 -TVB星河,p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•19『线路13』 -TVB星河,https://cdn6.163189.xyz/163189/tvbxh$LR•IPV4•19『线路14』 -TVB星河,https://live.ottiptv.cc/huya/23734169$LR•IPV4•19『线路15』 -TVB星河,http://43.251.226.89:8080/play/876.m3u8$LR•IPV4•19『线路16』 -TVB星河,http://43.251.226.89:8080/play/877.m3u8$LR•IPV4•19『线路17』 -TVB星河,http://43.251.226.89:8080/play/898.m3u8$LR•IPV4•19『线路18』 -TVB星河,https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•19『线路19』 +TVB无线新闻,http://43.251.226.89:8080/play/865.m3u8$LR•IPV4•17『线路12』 +TVB无线新闻,http://43.251.226.89:8080/play/893.m3u8$LR•IPV4•17『线路13』 +TVB无线新闻,https://hls-gateway.vpstv.net/streams/708884.m3u8$LR•IPV4•17『线路14』 +TVB无线新闻,http://cdn6.163189.xyz/163189/wxxw$LR•IPV4•17『线路15』 +TVB无线新闻,http://push.cdn1.hls123.de:8080/streams/n66wwnx3l7i/index.m3u8$LR•IPV4•17『线路16』 +TVB无线新闻,https://cdn6.163189.xyz/163189/wxxw$LR•IPV4•17『线路17』 +TVB星河,http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•18『线路1』 +TVB星河,http://php.jdshipin.com:8880/smt.php?id=Xinhe$LR•IPV4•18『线路2』 +TVB星河,http://cdn9.1689.us.kg/smt1.1.php?id=Xinhe$LR•IPV4•18『线路3』 +TVB星河,http://v2h.jdshipin.com/xinghe_1/xinghe_1.stream/chunklist_w106.m3u8$LR•IPV4•18『线路4』 +TVB星河,http://php.jdshipin.com:8880/TVOD/iptv.php?id=xinghe$LR•IPV4•18『线路5』 +TVB星河,https://tv.mytvsuper.xyz/tvb/xinghe/xinghe.m3u8$LR•IPV4•18『线路6』 +TVB星河,p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•18『线路7』 +TVB星河,p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•18『线路8』 +TVB星河,http://cdn6.163189.xyz/163189/tvbxh$LR•IPV4•18『线路9』 +TVB星河,http://o11.163189.xyz/stream/live/tvbxh/$LR•IPV4•18『线路10』 +TVB星河,http://r.jdshipin.com/Voac4$LR•IPV4•18『线路11』 +TVB星河,http://push.cdn1.hls123.de:8080/streams/hbiwgswysds/index.m3u8$LR•IPV4•18『线路12』 +TVB星河,https://live.ottiptv.cc/huya/23734169$LR•IPV4•18『线路13』 +TVB星河,http://43.251.226.89:8080/play/876.m3u8$LR•IPV4•18『线路14』 +TVB星河,http://43.251.226.89:8080/play/877.m3u8$LR•IPV4•18『线路15』 +TVB星河,http://43.251.226.89:8080/play/898.m3u8$LR•IPV4•18『线路16』 +TVB星河,https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•18『线路17』 +TVB星河,https://cdn6.163189.xyz/163189/tvbxh$LR•IPV4•18『线路18』 TVBS,http://38.64.72.148/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路1』 -TVBS,http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路2』 -TVBS,http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路3』 -TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路4』 -TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路5』 -TVBS,http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路6』 -TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路7』 -TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路8』 -TVBS,http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路9』 -TVBS,http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路10』 -TVBS,http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路11』 -TVBS,p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路12』 -TVBS,p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路13』 -台视,http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•12『线路1』 -台视,http://211.72.174.95:8112/0.ts$LR•IPV4•12『线路2』 -台视,http://220.135.241.47:8315/0.ts$LR•IPV4•12『线路3』 -台视,http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路4』 -台视,http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•12『线路5』 -台视,http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•12『线路6』 -台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•12『线路7』 -台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路8』 -台视,http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•12『线路9』 -台视,rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•12『线路10』 -台视,p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•12『线路11』 -台视,p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•12『线路12』 -耀才财经,http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路1』 -耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路2』 -耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路3』 +TVBS,http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路2』 +TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路3』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路4』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路5』 +TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路6』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路7』 +TVBS,http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路8』 +TVBS,http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路9』 +TVBS,http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路10』 +TVBS,p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路11』 +TVBS,p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路12』 +TVBS,http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路13』 +台视,http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路1』 +台视,http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•12『线路2』 +台视,http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•12『线路3』 +台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•12『线路4』 +台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•12『线路5』 +台视,http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•12『线路6』 +台视,rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•12『线路7』 +台视,p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•12『线路8』 +台视,p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•12『线路9』 +台视,http://211.72.174.95:8112/0.ts$LR•IPV4•12『线路10』 +台视,http://220.135.241.47:8315/0.ts$LR•IPV4•12『线路11』 +台视,http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•12『线路12』 +耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路1』 +耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路2』 +耀才财经,http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路3』 美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•3『线路1』 美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/01.m3u8$LR•IPV4•3『线路2』 美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•3『线路3』 数位电影,p3p://167.114.175.6:55331/6223ae1b0007136f3e5c44280e3300fa$LR•IPV4 -龙华偶像,https://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路1』 -龙华偶像,http://43.251.226.89:8080/play/911.m3u8$LR•IPV4•4『线路2』 -龙华偶像,http://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路3』 -龙华偶像,p3p://167.114.175.6:55331/609bb1b0000732744f174daa791d3b43$LR•IPV4•4『线路4』 -龙华经典,https://cdn8.163189.xyz/163189/lhjd$LR•IPV4•4『线路1』 +龙华偶像,http://43.251.226.89:8080/play/911.m3u8$LR•IPV4•4『线路1』 +龙华偶像,http://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路2』 +龙华偶像,p3p://167.114.175.6:55331/609bb1b0000732744f174daa791d3b43$LR•IPV4•4『线路3』 +龙华偶像,https://cdn8.163189.xyz/163189/lhox$LR•IPV4•4『线路4』 +龙华经典,http://43.251.226.89:8080/play/909.m3u8$LR•IPV4•4『线路1』 龙华经典,http://cdn8.163189.xyz/163189/lhjd$LR•IPV4•4『线路2』 -龙华经典,http://43.251.226.89:8080/play/909.m3u8$LR•IPV4•4『线路3』 -龙华经典,p3p://167.114.175.6:55331/6223b9d8000ef67e3e8a2073190e36d5$LR•IPV4•4『线路4』 +龙华经典,p3p://167.114.175.6:55331/6223b9d8000ef67e3e8a2073190e36d5$LR•IPV4•4『线路3』 +龙华经典,https://cdn8.163189.xyz/163189/lhjd$LR•IPV4•4『线路4』 纬来日本,rtmp://f13h.mine.nu/sat/tv771$LR•IPV4•2『线路1』 纬来日本,p3p://167.114.175.6:55331/5fe1add80007bbbd788125c43bf36060$LR•IPV4•2『线路2』 纬来体育,https://epg.pw/stream/8855a9936e37e608a0ec8a014cce1673dee9c5d68d560da376cc92e5edef2b25.m3u8$LR•IPV4•27『线路1』 @@ -5703,101 +5707,101 @@ TVBS,p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13 中视闽南,rtmp://f13h.mine.nu/sat/tv091$LR•IPV4 中视新闻,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV09.m3u8$LR•IPV4 中天娱乐,http://61.221.215.25:8800/hls/47/index.m3u8$LR•IPV4 -中视,http://220.135.241.47:8301/0.ts$LR•IPV4•4『线路1』 -中视,http://74.91.26.218:82/live/ctv.m3u8$LR•IPV4•4『线路2』 -中视,p3p://167.114.175.6:55331/621dab720008820a26e1e06b75653395$LR•IPV4•4『线路3』 -中视,p3p://167.114.175.6:55331/621db1fb0006fbf526fb672712522a46$LR•IPV4•4『线路4』 +中视,http://74.91.26.218:82/live/ctv.m3u8$LR•IPV4•4『线路1』 +中视,p3p://167.114.175.6:55331/621dab720008820a26e1e06b75653395$LR•IPV4•4『线路2』 +中视,p3p://167.114.175.6:55331/621db1fb0006fbf526fb672712522a46$LR•IPV4•4『线路3』 +中视,http://220.135.241.47:8301/0.ts$LR•IPV4•4『线路4』 非凡新闻,rtmp://f13h.mine.nu/sat/tv581$LR•IPV4 东森新闻,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•8『线路1』 -tvN,http://217.26.190.76:8888/play/a0m6/index.m3u8$LR•IPV4•8『线路2』 -tvN,https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•8『线路3』 -tvN,https://live.legitpro.co.in/ctvnakdplus/index.m3u8$LR•IPV4•8『线路4』 -tvN,https://origin2.afxp.telemedia.co.za/abr_kapang/enterepreneur/playlist.m3u8$LR•IPV4•8『线路5』 -tvN,https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•8『线路6』 -tvN,p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•8『线路7』 -tvN,p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•8『线路8』 +tvN,https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•8『线路2』 +tvN,p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•8『线路3』 +tvN,p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•8『线路4』 +tvN,http://217.26.190.76:8888/play/a0m6/index.m3u8$LR•IPV4•8『线路5』 +tvN,https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•8『线路6』 +tvN,https://live.legitpro.co.in/ctvnakdplus/index.m3u8$LR•IPV4•8『线路7』 +tvN,https://origin2.afxp.telemedia.co.za/abr_kapang/enterepreneur/playlist.m3u8$LR•IPV4•8『线路8』 華視,http://seb.sason.top/sc/hsxw_fhd.m3u8$LR•IPV4 DW,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV08.m3u8$LR•IPV4•9『线路1』 -DW,https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•9『线路2』 -DW,https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•9『线路3』 -DW,https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/master.m3u8$LR•IPV4•9『线路4』 -DW,https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•9『线路5』 -DW,https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/stream04/streamPlaylist.m3u8$LR•IPV4•9『线路6』 -DW,https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•9『线路7』 -DW,http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•9『线路8』 -DW,http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•9『线路9』 -France 24,https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路1』 -France 24,https://live.france24.com/hls/live/2037218-b/F24_EN_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路2』 -France 24,https://live.france24.com/hls/live/2037220-b/F24_ES_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路3』 -France 24,https://live.france24.com/hls/live/2037179-b/F24_FR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路4』 -France 24,https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00106-france24fast-france24-rakutenuk/playlist.m3u8$LR•IPV4•6『线路5』 -France 24,https://amg00106-france24-france24-samsunguk-qvpp8.amagi.tv/playlist/amg00106-france24-france24-samsunguk/playlist.m3u8$LR•IPV4•6『线路6』 +DW,https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•9『线路2』 +DW,http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•9『线路3』 +DW,http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•9『线路4』 +DW,https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/stream04/streamPlaylist.m3u8$LR•IPV4•9『线路5』 +DW,https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•9『线路6』 +DW,https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•9『线路7』 +DW,https://dwamdstream104.akamaized.net/hls/live/2015530/dwstream104/master.m3u8$LR•IPV4•9『线路8』 +DW,https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•9『线路9』 +France 24,https://amg00106-france24-france24-samsunguk-qvpp8.amagi.tv/playlist/amg00106-france24-france24-samsunguk/playlist.m3u8$LR•IPV4•6『线路1』 +France 24,https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路2』 +France 24,https://live.france24.com/hls/live/2037218-b/F24_EN_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路3』 +France 24,https://live.france24.com/hls/live/2037220-b/F24_ES_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路4』 +France 24,https://live.france24.com/hls/live/2037179-b/F24_FR_HI_HLS/master_5000.m3u8$LR•IPV4•6『线路5』 +France 24,https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00106-france24fast-france24-rakutenuk/playlist.m3u8$LR•IPV4•6『线路6』 KIX,http://210.210.155.37/dr9445/h/h07/index.m3u8$LR•IPV4•3『线路1』 -KIX,https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路2』 -KIX,p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路3』 -NHK World-Japan,https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•4『线路1』 -NHK World-Japan,https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•4『线路2』 -NHK World-Japan,https://media-tyo.hls.nhkworld.jp/hls/w/live/master.m3u8$LR•IPV4•4『线路3』 -NHK World-Japan,http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•4『线路4』 -Nick Jr,http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•10『线路1』 -Nick Jr,http://84.17.50.102/nickjr/index.m3u8$LR•IPV4•10『线路2』 -Nick Jr,https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•10『线路3』 -Nick Jr,https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•10『线路4』 -Nick Jr,https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•10『线路5』 -Nick Jr,http://179.60.51.134:8888/NICK-JR/index.m3u8$LR•IPV4•10『线路6』 -Nick Jr,https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•10『线路7』 -Nick Jr,https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•10『线路8』 -Nick Jr,http://108.181.20.255:27347/livehttpplay?channel_id=23044$LR•IPV4•10『线路9』 -Nick Jr,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•10『线路10』 -Nickelodeon,http://213.91.179.28:8000/play/a056$LR•IPV4•25『线路1』 -Nickelodeon,http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•25『线路2』 -Nickelodeon,http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•25『线路3』 -Nickelodeon,http://149.71.34.166:8000/play/a00u/index.m3u8$LR•IPV4•25『线路4』 -Nickelodeon,http://193.239.186.231/NICK/index.m3u8$LR•IPV4•25『线路5』 -Nickelodeon,http://82.78.243.219:45739/play/a00o/index.m3u8$LR•IPV4•25『线路6』 -Nickelodeon,http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•25『线路7』 -Nickelodeon,http://202.169.224.202:8800/udp/239.9.1.17:1234$LR•IPV4•25『线路8』 -Nickelodeon,https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•25『线路9』 -Nickelodeon,https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•25『线路10』 -Nickelodeon,https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•25『线路11』 -Nickelodeon,https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•25『线路12』 -Nickelodeon,http://46.149.191.217:9011/play/a018$LR•IPV4•25『线路13』 -Nickelodeon,http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•25『线路14』 -Nickelodeon,http://179.60.51.134:8888/NICK/index.m3u8$LR•IPV4•25『线路15』 -Nickelodeon,https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•25『线路16』 -Nickelodeon,https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•25『线路17』 -Nickelodeon,https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•25『线路18』 -Nickelodeon,https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•25『线路19』 -Nickelodeon,https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•25『线路20』 -Nickelodeon,https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•25『线路21』 -Nickelodeon,https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•25『线路22』 -Nickelodeon,https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•25『线路23』 -Nickelodeon,https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•25『线路24』 -Nickelodeon,http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•25『线路25』 +KIX,p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路2』 +KIX,https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路3』 +NHK World-Japan,http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•4『线路1』 +NHK World-Japan,https://media-tyo.hls.nhkworld.jp/hls/w/live/master.m3u8$LR•IPV4•4『线路2』 +NHK World-Japan,https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•4『线路3』 +NHK World-Japan,https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•4『线路4』 +Nick Jr,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•10『线路1』 +Nick Jr,http://108.181.20.255:27347/livehttpplay?channel_id=23044$LR•IPV4•10『线路2』 +Nick Jr,http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•10『线路3』 +Nick Jr,http://84.17.50.102/nickjr/index.m3u8$LR•IPV4•10『线路4』 +Nick Jr,https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•10『线路5』 +Nick Jr,https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•10『线路6』 +Nick Jr,https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•10『线路7』 +Nick Jr,http://179.60.51.134:8888/NICK-JR/index.m3u8$LR•IPV4•10『线路8』 +Nick Jr,https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•10『线路9』 +Nick Jr,https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•10『线路10』 +Nickelodeon,http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•25『线路1』 +Nickelodeon,http://213.91.179.28:8000/play/a056$LR•IPV4•25『线路2』 +Nickelodeon,http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•25『线路3』 +Nickelodeon,http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•25『线路4』 +Nickelodeon,http://149.71.34.166:8000/play/a00u/index.m3u8$LR•IPV4•25『线路5』 +Nickelodeon,http://193.239.186.231/NICK/index.m3u8$LR•IPV4•25『线路6』 +Nickelodeon,http://82.78.243.219:45739/play/a00o/index.m3u8$LR•IPV4•25『线路7』 +Nickelodeon,http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•25『线路8』 +Nickelodeon,http://202.169.224.202:8800/udp/239.9.1.17:1234$LR•IPV4•25『线路9』 +Nickelodeon,https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•25『线路10』 +Nickelodeon,https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•25『线路11』 +Nickelodeon,https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•25『线路12』 +Nickelodeon,https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•25『线路13』 +Nickelodeon,http://46.149.191.217:9011/play/a018$LR•IPV4•25『线路14』 +Nickelodeon,http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•25『线路15』 +Nickelodeon,http://179.60.51.134:8888/NICK/index.m3u8$LR•IPV4•25『线路16』 +Nickelodeon,https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•25『线路17』 +Nickelodeon,https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•25『线路18』 +Nickelodeon,https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•25『线路19』 +Nickelodeon,https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•25『线路20』 +Nickelodeon,https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•25『线路21』 +Nickelodeon,https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•25『线路22』 +Nickelodeon,https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•25『线路23』 +Nickelodeon,https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•25『线路24』 +Nickelodeon,https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•25『线路25』 Thrill,https://cdn10jtedge.indihometv.com/atm/DASH/thrill/manifest.mpd$LR•IPV4•2『线路1』 Thrill,https://8c4e8f4f.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/Um9rdV9DcmltZVRocmlsbEhlcl9ITFM/playlist.m3u8$LR•IPV4•2『线路2』 ZooMoo,p3p://167.114.175.6:55331/65679bc200084412adeb40284be664e6$LR•IPV4 -华视,http://220.135.241.47:8318/0.ts$LR•IPV4•7『线路1』 -华视,http://220.135.241.47:8317/0.ts$LR•IPV4•7『线路2』 -华视,http://74.91.26.218:82/live/cts.m3u8$LR•IPV4•7『线路3』 -华视,http://74.91.26.218:82/live/ctsjy.m3u8$LR•IPV4•7『线路4』 -华视,http://74.91.26.218:82/live/ctsnews.m3u8$LR•IPV4•7『线路5』 -华视,rtmp://f13h.mine.nu/sat/tv111$LR•IPV4•7『线路6』 -华视,p3p://167.114.175.6:55331/61eff95c000bcf35803ebfe7426e2914$LR•IPV4•7『线路7』 +华视,http://74.91.26.218:82/live/cts.m3u8$LR•IPV4•7『线路1』 +华视,http://74.91.26.218:82/live/ctsjy.m3u8$LR•IPV4•7『线路2』 +华视,http://74.91.26.218:82/live/ctsnews.m3u8$LR•IPV4•7『线路3』 +华视,rtmp://f13h.mine.nu/sat/tv111$LR•IPV4•7『线路4』 +华视,p3p://167.114.175.6:55331/61eff95c000bcf35803ebfe7426e2914$LR•IPV4•7『线路5』 +华视,http://220.135.241.47:8318/0.ts$LR•IPV4•7『线路6』 +华视,http://220.135.241.47:8317/0.ts$LR•IPV4•7『线路7』 寰宇新闻,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV02.m3u8$LR•IPV4•3『线路1』 -寰宇新闻,http://rihou.cc:555/tv/寰宇新闻$LR•IPV4•3『线路2』 -寰宇新闻,p3p://167.114.175.6:55331/612d7c11000c9faf888ebf9f3276784e$LR•IPV4•3『线路3』 +寰宇新闻,p3p://167.114.175.6:55331/612d7c11000c9faf888ebf9f3276784e$LR•IPV4•3『线路2』 +寰宇新闻,http://rihou.cc:555/tv/寰宇新闻$LR•IPV4•3『线路3』 靖天国际,p3p://167.114.175.6:55331/612db8220006940e897960753ab534e9$LR•IPV4 镜新闻,p3p://167.114.175.6:55331/63ebd33c0003c437e26ae87279d061f1$LR•IPV4 龙华卡通,http://43.251.226.89:8080/play/910.m3u8$LR•IPV4•3『线路1』 龙华卡通,http://cdn8.163189.xyz/163189/lhkt$LR•IPV4•3『线路2』 龙华卡通,p3p://167.114.175.6:55331/6264b6e0000669483c6365b319d43878$LR•IPV4•3『线路3』 -龙华日韩,https://cdn8.163189.xyz/163189/lhrh$LR•IPV4•4『线路1』 +龙华日韩,http://43.251.226.89:8080/play/912.m3u8$LR•IPV4•4『线路1』 龙华日韩,http://cdn8.163189.xyz/163189/lhrh$LR•IPV4•4『线路2』 -龙华日韩,http://43.251.226.89:8080/play/912.m3u8$LR•IPV4•4『线路3』 -龙华日韩,p3p://167.114.175.6:55331/621e1d0e00085766289da9bb1d7120af$LR•IPV4•4『线路4』 +龙华日韩,p3p://167.114.175.6:55331/621e1d0e00085766289da9bb1d7120af$LR•IPV4•4『线路3』 +龙华日韩,https://cdn8.163189.xyz/163189/lhrh$LR•IPV4•4『线路4』 龙华洋片,http://43.251.226.89:8080/play/908.m3u8$LR•IPV4•3『线路1』 龙华洋片,http://cdn8.163189.xyz/163189/lhyp$LR•IPV4•3『线路2』 龙华洋片,p3p://167.114.175.6:55331/64c0e1af000875f522a785c0570b06ae$LR•IPV4•3『线路3』 @@ -5811,24 +5815,24 @@ ZooMoo,p3p://167.114.175.6:55331/65679bc200084412adeb40284be664e6$LR•IPV4 三立戏剧,http://61.221.215.25:8800/hls/41/index.m3u8$LR•IPV4 凤凰卫视,p3p://167.114.175.6:55331/602c73500002f4d29c90fa1270f21160$LR•IPV4•2『线路1』 凤凰卫视,http://cdn.132.us.kg/live/fhzw/stream.m3u8$LR•IPV4•2『线路2』 -Viutv,https://cdn.163189.xyz/163189/viu$LR•IPV4•8『线路1』 -Viutv,http://push.cdn1.hls123.de:8080/streams/iewbjlpp9v/index.m3u8$LR•IPV4•8『线路2』 -Viutv,http://php.jdshipin.com/TVOD/iptv.php?id=viutv2$LR•IPV4•8『线路3』 -Viutv,http://php.jdshipin.com/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路4』 -Viutv,http://php.jdshipin.com:8880/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路5』 -Viutv,http://php.jdshipin.com/PLTV/iptv.php?id=viutv2$LR•IPV4•8『线路6』 -Viutv,http://rihou.cc:555/tv/[Cx]VIUTV英$LR•IPV4•8『线路7』 -Viutv,http://rihou.cc:555/tv/[Cx]VIUTV粤$LR•IPV4•8『线路8』 +Viutv,http://php.jdshipin.com/TVOD/iptv.php?id=viutv2$LR•IPV4•8『线路1』 +Viutv,https://cdn.163189.xyz/163189/viu$LR•IPV4•8『线路2』 +Viutv,http://php.jdshipin.com/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路3』 +Viutv,http://php.jdshipin.com:8880/TVOD/iptv.php?id=viutv$LR•IPV4•8『线路4』 +Viutv,http://php.jdshipin.com/PLTV/iptv.php?id=viutv2$LR•IPV4•8『线路5』 +Viutv,http://rihou.cc:555/tv/[Cx]VIUTV英$LR•IPV4•8『线路6』 +Viutv,http://rihou.cc:555/tv/[Cx]VIUTV粤$LR•IPV4•8『线路7』 +Viutv,http://push.cdn1.hls123.de:8080/streams/iewbjlpp9v/index.m3u8$LR•IPV4•8『线路8』 Now剧集,p3p://167.114.175.6:55331/63ed3e1500077d30e7f449055a0846ce$LR•IPV4 民视,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV17.m3u8$LR•IPV4•9『线路1』 -民视,http://rihou.cc:555/tv/民视新闻$LR•IPV4•9『线路2』 -民视,http://211.72.174.95:8115/0.ts$LR•IPV4•9『线路3』 -民视,http://211.72.174.95:8117/0.ts$LR•IPV4•9『线路4』 -民视,http://38.64.72.148:80/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•9『线路5』 -民视,http://38.64.72.148:80/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•9『线路6』 -民视,http://38.64.72.148/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•9『线路7』 -民视,http://38.64.72.148/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•9『线路8』 -民视,rtmp://f13h.mine.nu/sat/tv051$LR•IPV4•9『线路9』 +民视,http://38.64.72.148:80/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•9『线路2』 +民视,http://38.64.72.148:80/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•9『线路3』 +民视,http://38.64.72.148/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•9『线路4』 +民视,http://38.64.72.148/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•9『线路5』 +民视,rtmp://f13h.mine.nu/sat/tv051$LR•IPV4•9『线路6』 +民视,http://rihou.cc:555/tv/民视新闻$LR•IPV4•9『线路7』 +民视,http://211.72.174.95:8115/0.ts$LR•IPV4•9『线路8』 +民视,http://211.72.174.95:8117/0.ts$LR•IPV4•9『线路9』 MoMo综合,p3p://167.114.175.6:55331/621e17750005eaa02887cb6e61ea2a58$LR•IPV4 ELEVEN体育1,https://stream1.freetv.fun/eltaai-er-da-ti-yu--1--wj-1.ctv$LR•IPV4•3『线路1』 ELEVEN体育1,https://smart.pendy.dpdns.org/Smart.php?id=eltasport1_twn$LR•IPV4•3『线路2』 @@ -5841,10 +5845,10 @@ ELEVEN体育2,rtmp://f13h.mine.nu/sat/tv741$LR•IPV4•3『线路3』 半岛新闻,https://live-hls-web-aje.getaj.net/AJE/02.m3u8$LR•IPV4•4『线路3』 半岛新闻,https://litv.zapi.us.kg/?id=litv-ftv10$LR•IPV4•4『线路4』 now新闻,http://cdn.163189.xyz/163189/now$LR•IPV4•3『线路1』 -now新闻,http://push.cdn1.hls123.de:8080/streams/zed7kdzyh1/index.m3u8$LR•IPV4•3『线路2』 -now新闻,p3p://167.114.175.6:55331/653e4f3d0003bdbf0c98ffaf583a6e3a$LR•IPV4•3『线路3』 -有线综合,https://cdn6.163189.xyz/163189/hoy$LR•IPV4•2『线路1』 -有线综合,http://43.251.226.89:8080/play/891.m3u8$LR•IPV4•2『线路2』 +now新闻,p3p://167.114.175.6:55331/653e4f3d0003bdbf0c98ffaf583a6e3a$LR•IPV4•3『线路2』 +now新闻,http://push.cdn1.hls123.de:8080/streams/zed7kdzyh1/index.m3u8$LR•IPV4•3『线路3』 +有线综合,http://43.251.226.89:8080/play/891.m3u8$LR•IPV4•2『线路1』 +有线综合,https://cdn6.163189.xyz/163189/hoy$LR•IPV4•2『线路2』 now直播,p3p://167.114.175.6:55331/655fa52d000c3fc98ed0353c0e327e63$LR•IPV4 now财经,p3p://167.114.175.6:55331/6256e47a0007a6bb0665fa1971252f50$LR•IPV4 RTHK-31,http://rihou.cc:555/tv/[Cx]RTHK-31$LR•IPV4•5『线路1』 @@ -5860,9 +5864,9 @@ RTHK-32,https://cdn5.163189.xyz/live/rthk32/stream.m3u8$LR•IPV4•4『线路4 寰宇财经,p3p://167.114.175.6:55331/64e36edf00052681a99e432a601547f5$LR•IPV4 东森财经,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV03.m3u8$LR•IPV4•2『线路1』 东森财经,p3p://167.114.175.6:55331/61468bd70005123dea7373f226636dba$LR•IPV4•2『线路2』 -龙华戏剧,https://cdn8.163189.xyz/163189/lhxj$LR•IPV4•3『线路1』 +龙华戏剧,http://43.251.226.89:8080/play/913.m3u8$LR•IPV4•3『线路1』 龙华戏剧,http://cdn8.163189.xyz/163189/lhxj$LR•IPV4•3『线路2』 -龙华戏剧,http://43.251.226.89:8080/play/913.m3u8$LR•IPV4•3『线路3』 +龙华戏剧,https://cdn8.163189.xyz/163189/lhxj$LR•IPV4•3『线路3』 靖天育乐,p3p://167.114.175.6:55331/6223be04000a57323e9a6b2919b21d76$LR•IPV4 靖天欢乐,p3p://167.114.175.6:55331/6258f7e400070ac10e81d00831393e97$LR•IPV4 靖天综合,p3p://167.114.175.6:55331/6223bd68000c7a903e980a5524d66f67$LR•IPV4 @@ -5880,48 +5884,48 @@ RTHK-32,https://cdn5.163189.xyz/live/rthk32/stream.m3u8$LR•IPV4•4『线路4 东森超视,http://38.64.72.148:80/hls/modn/list/2013/chunklist0.m3u8$LR•IPV4•3『线路1』 东森超视,http://38.64.72.148:80/hls/modn/list/2013/chunklist1.m3u8$LR•IPV4•3『线路2』 东森超视,rtmp://f13h.mine.nu/sat/tv331$LR•IPV4•3『线路3』 -ROCK Action,http://nmk.ioapk.com:5050/4gtv-live138/index.m3u8$LR•IPV4•2『线路1』 -ROCK Action,p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$LR•IPV4•2『线路2』 -TVB Plus,http://r.jdshipin.com/ndGgS$LR•IPV4•11『线路1』 -TVB Plus,https://o11.163189.xyz/stream/tvb/tvbp/$LR•IPV4•11『线路2』 -TVB Plus,http://push.cdn1.hls123.de:8080/streams/gw8n98gubb4/index.m3u8$LR•IPV4•11『线路3』 -TVB Plus,http://php.jdshipin.com/TVOD/iptv.php?id=j2$LR•IPV4•11『线路4』 -TVB Plus,http://php.jdshipin.com/PLTV/iptv.php?id=j2$LR•IPV4•11『线路5』 -TVB Plus,http://cdn.132.us.kg/live/tvbp/stream.m3u8$LR•IPV4•11『线路6』 -TVB Plus,http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah007-golive.flv$LR•IPV4•11『线路7』 -TVB Plus,http://74.91.26.218:82/live/j2.m3u8$LR•IPV4•11『线路8』 -TVB Plus,http://rihou.cc:555/tv/[Pd]Plus综合$LR•IPV4•11『线路9』 -TVB Plus,p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•11『线路10』 -TVB Plus,p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•11『线路11』 -AXN,http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•25『线路1』 -AXN,http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•25『线路2』 -AXN,http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•25『线路3』 -AXN,http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•25『线路4』 -AXN,http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•25『线路5』 -AXN,http://46.149.191.217:9009/play/a02d$LR•IPV4•25『线路6』 -AXN,http://85.11.144.9:4222/AXN$LR•IPV4•25『线路7』 -AXN,http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•25『线路8』 -AXN,http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•25『线路9』 -AXN,http://45.167.1.138:8000/play/a04s$LR•IPV4•25『线路10』 -AXN,http://190.11.225.124:5000/live/axn_hd/playlist.m3u8$LR•IPV4•25『线路11』 -AXN,http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•25『线路12』 -AXN,http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•25『线路13』 -AXN,http://81.15.109.89:8001/play/AXN$LR•IPV4•25『线路14』 -AXN,https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•25『线路15』 -AXN,http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•25『线路16』 -AXN,http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•25『线路17』 -AXN,http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•25『线路18』 -AXN,http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•25『线路19』 -AXN,http://81.15.109.89:8001/play/AXNBlack$LR•IPV4•25『线路20』 -AXN,http://54.37.19.157/axn/playlist.m3u8$LR•IPV4•25『线路21』 -AXN,http://81.15.109.89:8001/play/AXNWhite$LR•IPV4•25『线路22』 -AXN,http://akariko.netgenx.site/stream/jp/action_channel_%28axn%29/stream-output.m3u8?mode=hls$LR•IPV4•25『线路23』 -AXN,p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•25『线路24』 -AXN,p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•25『线路25』 -娱乐新闻,http://cdn6.163189.xyz/163189/ylxw$LR•IPV4•4『线路1』 -娱乐新闻,http://php.jdshipin.com/PLTV/iptv.php?id=tvbylxw$LR•IPV4•4『线路2』 -娱乐新闻,http://php.jdshipin.com/smt.php?id=Tvbentertainment$LR•IPV4•4『线路3』 -娱乐新闻,https://hls-gateway.vpstv.net/streams/708904.m3u8$LR•IPV4•4『线路4』 +ROCK Action,p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$LR•IPV4•2『线路1』 +ROCK Action,http://nmk.ioapk.com:5050/4gtv-live138/index.m3u8$LR•IPV4•2『线路2』 +TVB Plus,http://r.jdshipin.com/Nr5jq$LR•IPV4•11『线路1』 +TVB Plus,http://php.jdshipin.com/TVOD/iptv.php?id=j2$LR•IPV4•11『线路2』 +TVB Plus,http://php.jdshipin.com/PLTV/iptv.php?id=j2$LR•IPV4•11『线路3』 +TVB Plus,http://cdn.132.us.kg/live/tvbp/stream.m3u8$LR•IPV4•11『线路4』 +TVB Plus,http://ali.hlspull.yximgs.com/live/l3w1tt2dkzvpukkliu64ah007-golive.flv$LR•IPV4•11『线路5』 +TVB Plus,http://74.91.26.218:82/live/j2.m3u8$LR•IPV4•11『线路6』 +TVB Plus,http://rihou.cc:555/tv/[Pd]Plus综合$LR•IPV4•11『线路7』 +TVB Plus,p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•11『线路8』 +TVB Plus,p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•11『线路9』 +TVB Plus,https://o11.163189.xyz/stream/tvb/tvbp/$LR•IPV4•11『线路10』 +TVB Plus,http://push.cdn1.hls123.de:8080/streams/gw8n98gubb4/index.m3u8$LR•IPV4•11『线路11』 +AXN,p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•25『线路1』 +AXN,p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•25『线路2』 +AXN,http://akariko.netgenx.site/stream/jp/action_channel_%28axn%29/stream-output.m3u8?mode=hls$LR•IPV4•25『线路3』 +AXN,http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•25『线路4』 +AXN,http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•25『线路5』 +AXN,http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•25『线路6』 +AXN,http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•25『线路7』 +AXN,http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•25『线路8』 +AXN,http://46.149.191.217:9009/play/a02d$LR•IPV4•25『线路9』 +AXN,http://85.11.144.9:4222/AXN$LR•IPV4•25『线路10』 +AXN,http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•25『线路11』 +AXN,http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•25『线路12』 +AXN,http://45.167.1.138:8000/play/a04s$LR•IPV4•25『线路13』 +AXN,http://190.11.225.124:5000/live/axn_hd/playlist.m3u8$LR•IPV4•25『线路14』 +AXN,http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•25『线路15』 +AXN,http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•25『线路16』 +AXN,http://81.15.109.89:8001/play/AXN$LR•IPV4•25『线路17』 +AXN,https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•25『线路18』 +AXN,http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•25『线路19』 +AXN,http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•25『线路20』 +AXN,http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•25『线路21』 +AXN,http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•25『线路22』 +AXN,http://81.15.109.89:8001/play/AXNBlack$LR•IPV4•25『线路23』 +AXN,http://54.37.19.157/axn/playlist.m3u8$LR•IPV4•25『线路24』 +AXN,http://81.15.109.89:8001/play/AXNWhite$LR•IPV4•25『线路25』 +娱乐新闻,http://php.jdshipin.com/PLTV/iptv.php?id=tvbylxw$LR•IPV4•4『线路1』 +娱乐新闻,http://php.jdshipin.com/smt.php?id=Tvbentertainment$LR•IPV4•4『线路2』 +娱乐新闻,https://hls-gateway.vpstv.net/streams/708904.m3u8$LR•IPV4•4『线路3』 +娱乐新闻,http://cdn6.163189.xyz/163189/ylxw$LR•IPV4•4『线路4』 澳门卫视,http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•2『线路1』 澳门卫视,http://61.244.22.5/ch3/ch3.live/chunklist_w1228316132.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』 @@ -5935,42 +5939,42 @@ Celestial Movies,http://103.58.160.157:8278/720-CELESTIALMOVIES/playlist.m3u8$LR TVB News,p3p://167.114.175.6:55331/63efe2a100034c82f2470ad419e43975$LR•IPV4 Good,https://live.streamingfast.net/osmflivech1.m3u8$LR•IPV4•38『线路1』 Good,https://live.streamingfast.net/osmflivech2.m3u8$LR•IPV4•38『线路2』 -Good,https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•38『线路3』 -Good,http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•38『线路4』 -Good,https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•38『线路5』 -Good,https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路6』 -Good,https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路7』 -Good,https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路8』 -Good,https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路9』 -Good,https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路10』 -Good,https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路11』 -Good,https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路12』 -Good,https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路13』 -Good,https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路14』 -Good,https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路15』 -Good,https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路16』 -Good,https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路17』 -Good,https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路18』 -Good,https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路19』 -Good,https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路20』 -Good,https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路21』 -Good,https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路22』 -Good,https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路23』 -Good,https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路24』 -Good,https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路25』 -Good,https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路26』 -Good,https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路27』 -Good,https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路28』 -Good,https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路29』 -Good,https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路30』 -Good,https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路31』 -Good,https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路32』 -Good,https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路33』 -Good,https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路34』 -Good,https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•38『线路35』 -Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•38『线路36』 -Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•38『线路37』 -Good,p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•38『线路38』 +Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•38『线路3』 +Good,http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•38『线路4』 +Good,p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•38『线路5』 +Good,https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•38『线路6』 +Good,http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•38『线路7』 +Good,https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•38『线路8』 +Good,https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路9』 +Good,https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路10』 +Good,https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路11』 +Good,https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路12』 +Good,https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路13』 +Good,https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路14』 +Good,https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路15』 +Good,https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路16』 +Good,https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路17』 +Good,https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路18』 +Good,https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路19』 +Good,https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路20』 +Good,https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路21』 +Good,https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路22』 +Good,https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路23』 +Good,https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路24』 +Good,https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路25』 +Good,https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路26』 +Good,https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路27』 +Good,https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路28』 +Good,https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路29』 +Good,https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路30』 +Good,https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路31』 +Good,https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路32』 +Good,https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路33』 +Good,https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路34』 +Good,https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路35』 +Good,https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路36』 +Good,https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路37』 +Good,https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•38『线路38』 Beautiful Life TV,https://5ddce30eb4b55.streamlock.net/bltvhd/bltv1/playlist.m3u8$LR•IPV4 Supreme Master TV,https://lbs-us1.suprememastertv.com/720p.m3u8$LR•IPV4 Taiwan Plus TV,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV78.m3u8$LR•IPV4•2『线路1』 @@ -5983,21 +5987,21 @@ EBC YOYO,https://ythls.armelin.one/channel/UCiWRSesvSYmY7YOyz0tv_zQ.m3u8$LR•IP CTi News,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV28.m3u8$LR•IPV4 FTV News,https://ythls.armelin.one/channel/UC2VmWn8dAqkzlQqvy02E1PA.m3u8$LR•IPV4 Global News,https://live.corusdigitaldev.com/groupb/live/3062d0e3-ed4c-4f47-8482-95648250f4b8/live.isml/.m3u8$LR•IPV4•16『线路1』 -Global News,https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•16『线路2』 -Global News,https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•16『线路3』 -Global News,https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•16『线路4』 -Global News,https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•16『线路5』 -Global News,https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•16『线路6』 -Global News,https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•16『线路7』 -Global News,https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•16『线路8』 -Global News,https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•16『线路9』 -Global News,https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•16『线路10』 -Global News,https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•16『线路11』 -Global News,https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•16『线路12』 -Global News,https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•16『线路13』 -Global News,https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•16『线路14』 -Global News,https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•16『线路15』 -Global News,http://iptv.zkbhj.com/tv/url/go?id=188da1cd42026cce4e3c6fd900520b5bf2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•16『线路16』 +Global News,http://iptv.zkbhj.com/tv/url/go?id=188da1cd42026cce4e3c6fd900520b5bf2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•16『线路2』 +Global News,https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•16『线路3』 +Global News,https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•16『线路4』 +Global News,https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•16『线路5』 +Global News,https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•16『线路6』 +Global News,https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•16『线路7』 +Global News,https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•16『线路8』 +Global News,https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•16『线路9』 +Global News,https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•16『线路10』 +Global News,https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•16『线路11』 +Global News,https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•16『线路12』 +Global News,https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•16『线路13』 +Global News,https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•16『线路14』 +Global News,https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•16『线路15』 +Global News,https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•16『线路16』 SET iNews,https://ythls.armelin.one/channel/UCoNYj9OFHZn3ACmmeRCPwbA.m3u8$LR•IPV4 TTV News,https://ythls.armelin.one/channel/UC8ROUUjHzEQm-ndb69CX8Ww.m3u8$LR•IPV4 mnews,https://ythls.armelin.one/channel/UC4LjkybVKXCDlneVXlKAbmw.m3u8$LR•IPV4 @@ -6016,50 +6020,50 @@ NU,https://cdn-7.pishow.tv/live/10016/master.m3u8$LR•IPV4•9『线路8』 NU,http://23.237.104.106:8080/USA_ESPNU/index.m3u8$LR•IPV4•9『线路9』 JP1,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV15.m3u8$LR•IPV4 KPop,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV16.m3u8$LR•IPV4•6『线路1』 -KPop,https://cloud.tvomix.com/KPOPMIX/index.m3u8$LR•IPV4•6『线路2』 -KPop,https://ads.its-newid.net/api/manifest.m3u8?ads.service_id=USAJ3000013FJ&channel_id=newid_338&tp=samsung_tvplus$LR•IPV4•6『线路3』 -KPop,https://ads.its-newid.net/api/manifest.m3u8?ads.service_id=GB17000088V&channel_id=newid_086&tp=samsung_tvplus$LR•IPV4•6『线路4』 -KPop,https://lotus.stingray.com/manifest/ose-317ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•6『线路5』 -KPop,https://ads.its-newid.net/api/manifest.m3u8?tp=r_channel&channel_name=newkpop&channel_id=newid_165$LR•IPV4•6『线路6』 -HOY TV,https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路1』 -HOY TV,http://push.cdn1.hls123.de:8080/streams/dguce4v9b69/index.m3u8$LR•IPV4•3『线路2』 -HOY TV,p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路3』 +KPop,https://ads.its-newid.net/api/manifest.m3u8?tp=r_channel&channel_name=newkpop&channel_id=newid_165$LR•IPV4•6『线路2』 +KPop,https://cloud.tvomix.com/KPOPMIX/index.m3u8$LR•IPV4•6『线路3』 +KPop,https://ads.its-newid.net/api/manifest.m3u8?ads.service_id=USAJ3000013FJ&channel_id=newid_338&tp=samsung_tvplus$LR•IPV4•6『线路4』 +KPop,https://ads.its-newid.net/api/manifest.m3u8?ads.service_id=GB17000088V&channel_id=newid_086&tp=samsung_tvplus$LR•IPV4•6『线路5』 +KPop,https://lotus.stingray.com/manifest/ose-317ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•6『线路6』 +HOY TV,p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路1』 +HOY TV,https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路2』 +HOY TV,http://push.cdn1.hls123.de:8080/streams/dguce4v9b69/index.m3u8$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•19『线路1』 -National Geographic,http://213.91.179.28:8000/play/a0ct$LR•IPV4•19『线路2』 -National Geographic,http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•19『线路3』 -National Geographic,https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•19『线路4』 -National Geographic,http://rezofoot.tv/NATIONAL-GEOGRAPHIC/index.m3u8$LR•IPV4•19『线路5』 -National Geographic,https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•19『线路6』 -National Geographic,http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•19『线路7』 -National Geographic,http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•19『线路8』 -National Geographic,http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•19『线路9』 -National Geographic,http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•19『线路10』 -National Geographic,http://213.91.179.28:8000/play/a0cu$LR•IPV4•19『线路11』 -National Geographic,http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•19『线路12』 -National Geographic,http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•19『线路13』 -National Geographic,http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•19『线路14』 -National Geographic,https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•19『线路15』 -National Geographic,http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•19『线路16』 -National Geographic,http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•19『线路17』 -National Geographic,http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•19『线路18』 -National Geographic,http://akariko.netgenx.site/stream/jp/national_geographic_japan/stream-output.m3u8?mode=hls$LR•IPV4•19『线路19』 +National Geographic,http://akariko.netgenx.site/stream/jp/national_geographic_japan/stream-output.m3u8?mode=hls$LR•IPV4•19『线路2』 +National Geographic,http://213.91.179.28:8000/play/a0ct$LR•IPV4•19『线路3』 +National Geographic,http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•19『线路4』 +National Geographic,https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•19『线路5』 +National Geographic,http://rezofoot.tv/NATIONAL-GEOGRAPHIC/index.m3u8$LR•IPV4•19『线路6』 +National Geographic,https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•19『线路7』 +National Geographic,http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•19『线路8』 +National Geographic,http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•19『线路9』 +National Geographic,http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•19『线路10』 +National Geographic,http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•19『线路11』 +National Geographic,http://213.91.179.28:8000/play/a0cu$LR•IPV4•19『线路12』 +National Geographic,http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•19『线路13』 +National Geographic,http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•19『线路14』 +National Geographic,http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•19『线路15』 +National Geographic,https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•19『线路16』 +National Geographic,http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•19『线路17』 +National Geographic,http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•19『线路18』 +National Geographic,http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•19『线路19』 東森新聞,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://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•7『线路1』 -NBA TV,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•7『线路2』 -NBA TV,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•7『线路3』 -NBA TV,https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•7『线路4』 -NBA TV,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•7『线路5』 -NBA TV,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•7『线路6』 -NBA TV,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•7『线路7』 +NBA TV,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•7『线路1』 +NBA TV,https://t.freetv.fun/live/nba-tv.m3u8$LR•IPV4•7『线路2』 +NBA TV,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•7『线路3』 +NBA TV,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•7『线路4』 +NBA TV,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•7『线路5』 +NBA TV,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•7『线路6』 +NBA TV,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•7『线路7』 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•13『线路1』 TV9,https://dyjmyiv3bp2ez.cloudfront.net/pub-iotv9banaen8yq/liveabr/playlist.m3u8$LR•IPV4•13『线路2』 @@ -6076,132 +6080,132 @@ TV9,https://live.fptplay53.net/live/media/vtv9/live247-hls-avc/index.m3u8$LR•I TV9,https://live.fptplay53.net/epzhd1/htv9hd_vhls.smil/chunklist.m3u8$LR•IPV4•13『线路13』 BBC,https://vs-hls-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/t=3840/v=pv14/b=5070016/main.m3u8$LR•IPV4•100『线路1』 BBC,https://aegis-cloudfront-1.tubi.video/bb1fc6ad-9948-42ea-aaf3-20acfcdeecac/playlist.m3u8$LR•IPV4•100『线路2』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路3』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_channel_islands/pc_hd_abr_v2.mpd$LR•IPV4•100『线路4』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east/pc_hd_abr_v2.mpd$LR•IPV4•100『线路5』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_yorkshire/pc_hd_abr_v2.mpd$LR•IPV4•100『线路6』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/pc_hd_abr_v2.mpd$LR•IPV4•100『线路7』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路8』 -BBC,https://vs-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_london/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路9』 -BBC,http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•100『线路10』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/pc_hd_abr_v2.mpd$LR•IPV4•100『线路11』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路12』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/pc_hd_abr_v2.mpd$LR•IPV4•100『线路13』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路14』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/pc_hd_abr_v2.mpd$LR•IPV4•100『线路15』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路16』 -BBC,https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•100『线路17』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.mpd$LR•IPV4•100『线路18』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south/pc_hd_abr_v2.mpd$LR•IPV4•100『线路19』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_east/pc_hd_abr_v2.mpd$LR•IPV4•100『线路20』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_west/pc_hd_abr_v2.mpd$LR•IPV4•100『线路21』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_wales_hd/pc_hd_abr_v2.mpd$LR•IPV4•100『线路22』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west/pc_hd_abr_v2.mpd$LR•IPV4•100『线路23』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west_midlands/pc_hd_abr_v2.mpd$LR•IPV4•100『线路24』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_yorks/pc_hd_abr_v2.mpd$LR•IPV4•100『线路25』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_scotland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路26』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_three_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路27』 -BBC,http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•100『线路28』 -BBC,https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•100『线路29』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路30』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_wales_digital/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路31』 -BBC,https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•100『线路32』 -BBC,https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•100『线路33』 -BBC,https://vs-cmaf-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路34』 -BBC,http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•100『线路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•100『线路36』 -BBC,http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•100『线路37』 -BBC,http://81.15.109.89:8001/play/BBCBrit$LR•IPV4•100『线路38』 -BBC,http://81.15.109.89:8001/play/BBCFirst$LR•IPV4•100『线路39』 -BBC,https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路40』 -BBC,https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•100『线路41』 -BBC,https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路42』 -BBC,https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路68』 -BBC,https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•100『线路69』 -BBC,https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•100『线路70』 -BBC,https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•100『线路71』 -BBC,https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路72』 -BBC,https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路73』 -BBC,https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路74』 -BBC,https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路75』 -BBC,https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路76』 -BBC,https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路77』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:cbbc_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路78』 -BBC,https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•100『线路79』 -BBC,https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路80』 -BBC,https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路81』 -BBC,https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•100『线路82』 -BBC,http://81.15.109.89:8001/play/BBCLifestyle$LR•IPV4•100『线路83』 -BBC,https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•100『线路84』 -BBC,http://81.15.109.89:8001/play/BBCEarth$LR•IPV4•100『线路85』 -BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•100『线路86』 -BBC,http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•100『线路87』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_parliament/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路88』 -BBC,https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路89』 -BBC,https://vs-cmaf-pushb-uk.live.fastly.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_four_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路90』 -BBC,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•100『线路91』 -BBC,http://193.46.58.239:8080/CBBCHD/index.m3u8$LR•IPV4•100『线路92』 -BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist540p.m3u8$LR•IPV4•100『线路93』 -BBC,http://akariko.netgenx.site/stream/jp/bbc_news/stream-output.m3u8?mode=hls$LR•IPV4•100『线路94』 -BBC,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•100『线路95』 -BBC,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•100『线路96』 -BBC,p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•100『线路97』 -BBC,p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•100『线路98』 -BBC,http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•100『线路99』 -BBC,https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•100『线路100』 +BBC,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•100『线路3』 +BBC,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•100『线路4』 +BBC,p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•100『线路5』 +BBC,p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•100『线路6』 +BBC,http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•100『线路7』 +BBC,https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•100『线路8』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路15』 +BBC,http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路33』 +BBC,http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•100『线路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•100『线路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•100『线路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•100『线路37』 +BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist540p.m3u8$LR•IPV4•100『线路38』 +BBC,http://akariko.netgenx.site/stream/jp/bbc_news/stream-output.m3u8?mode=hls$LR•IPV4•100『线路39』 +BBC,https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•100『线路40』 +BBC,https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•100『线路41』 +BBC,https://vs-cmaf-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•100『线路42』 +BBC,http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•100『线路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•100『线路44』 +BBC,http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•100『线路45』 +BBC,http://81.15.109.89:8001/play/BBCBrit$LR•IPV4•100『线路46』 +BBC,http://81.15.109.89:8001/play/BBCFirst$LR•IPV4•100『线路47』 +BBC,https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路48』 +BBC,https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•100『线路49』 +BBC,https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路50』 +BBC,https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路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•100『线路76』 +BBC,https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•100『线路77』 +BBC,https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•100『线路78』 +BBC,https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•100『线路79』 +BBC,https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路80』 +BBC,https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路81』 +BBC,https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路82』 +BBC,https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路83』 +BBC,https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路84』 +BBC,https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路85』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:cbbc_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路86』 +BBC,https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•100『线路87』 +BBC,https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•100『线路88』 +BBC,https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路89』 +BBC,https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•100『线路90』 +BBC,http://81.15.109.89:8001/play/BBCLifestyle$LR•IPV4•100『线路91』 +BBC,https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•100『线路92』 +BBC,http://81.15.109.89:8001/play/BBCEarth$LR•IPV4•100『线路93』 +BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•100『线路94』 +BBC,http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•100『线路95』 +BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_parliament/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路96』 +BBC,https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•100『线路97』 +BBC,https://vs-cmaf-pushb-uk.live.fastly.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_four_hd/iptv_hd_abr_v1.mpd$LR•IPV4•100『线路98』 +BBC,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•100『线路99』 +BBC,http://193.46.58.239:8080/CBBCHD/index.m3u8$LR•IPV4•100『线路100』 CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•7『线路1』 -CNA,https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•7『线路2』 -CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•7『线路3』 -CNA,https://live-evg7.tv360.bitel.com.pe/bitel/radiounotv/playlist.m3u8$LR•IPV4•7『线路4』 -CNA,https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•7『线路5』 -CNA,https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•7『线路6』 -CNA,http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•7『线路7』 +CNA,http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•7『线路2』 +CNA,https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•7『线路3』 +CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•7『线路4』 +CNA,https://live-evg7.tv360.bitel.com.pe/bitel/radiounotv/playlist.m3u8$LR•IPV4•7『线路5』 +CNA,https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•7『线路6』 +CNA,https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•7『线路7』 CNN,https://ds2c506obo7m8.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-7zjq3tdqasbg8/index.m3u8$LR•IPV4•13『线路1』 -CNN,http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•13『线路2』 -CNN,https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_014/Stream/playlist.m3u8$LR•IPV4•13『线路3』 -CNN,https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•13『线路4』 -CNN,https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•13『线路5』 -CNN,https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•13『线路6』 -CNN,https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•13『线路7』 -CNN,https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•13『线路8』 -CNN,https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•13『线路9』 -CNN,https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•13『线路10』 -CNN,https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•13『线路11』 -CNN,https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•13『线路12』 -CNN,http://live.cnnindonesia.com/livecnn/smil:cnntv.smil/chunklist_w1285822120_b384000_sleng.m3u8$LR•IPV4•13『线路13』 -CBC News,https://d2ny9lo79ujali.cloudfront.net/CBC_News_International.m3u8$LR•IPV4•8『线路1』 -CBC News,https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路2』 -CBC News,https://amagi-streams.akamaized.net/hls/live/2110960/cbcnewsbc/master.m3u8$LR•IPV4•8『线路3』 -CBC News,https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路4』 -CBC News,https://amagi-streams.akamaized.net/hls/live/2110962/cbcexplore/master.m3u8$LR•IPV4•8『线路5』 -CBC News,https://amagi-streams.akamaized.net/hls/live/2110961/cbctoronto/master.m3u8$LR•IPV4•8『线路6』 -CBC News,https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路7』 -CBC News,https://dbrb49pjoymg4.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/master.m3u8?ads.xumo_channelId=99991276$LR•IPV4•8『线路8』 +CNN,http://live.cnnindonesia.com/livecnn/smil:cnntv.smil/chunklist_w1285822120_b384000_sleng.m3u8$LR•IPV4•13『线路2』 +CNN,http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•13『线路3』 +CNN,https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_014/Stream/playlist.m3u8$LR•IPV4•13『线路4』 +CNN,https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•13『线路5』 +CNN,https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•13『线路6』 +CNN,https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•13『线路7』 +CNN,https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•13『线路8』 +CNN,https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•13『线路9』 +CNN,https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•13『线路10』 +CNN,https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•13『线路11』 +CNN,https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•13『线路12』 +CNN,https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•13『线路13』 +CBC News,https://dbrb49pjoymg4.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/master.m3u8?ads.xumo_channelId=99991276$LR•IPV4•8『线路1』 +CBC News,https://d2ny9lo79ujali.cloudfront.net/CBC_News_International.m3u8$LR•IPV4•8『线路2』 +CBC News,https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路3』 +CBC News,https://amagi-streams.akamaized.net/hls/live/2110960/cbcnewsbc/master.m3u8$LR•IPV4•8『线路4』 +CBC News,https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路5』 +CBC News,https://amagi-streams.akamaized.net/hls/live/2110962/cbcexplore/master.m3u8$LR•IPV4•8『线路6』 +CBC News,https://amagi-streams.akamaized.net/hls/live/2110961/cbctoronto/master.m3u8$LR•IPV4•8『线路7』 +CBC News,https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路8』 Sky News,https://d39chvnxm26pgp.cloudfront.net/v1/master/72588bff830dec7b26d7cbbf5f3c24928aec5c03/cc-sthen6ms4vxgv-stage/WNSFO/ABR.m3u8$LR•IPV4•10『线路1』 Sky News,http://41.205.77.102/SKYNEWS/index.m3u8$LR•IPV4•10『线路2』 Sky News,https://live-stream.skynewsarabia.com/c-horizontal-channel/horizontal-stream/index.m3u8$LR•IPV4•10『线路3』 @@ -6213,14 +6217,14 @@ Sky News,https://skynewsau-live.akamaized.net/hls/live/2002690/skynewsau-extra2/ Sky News,https://skynewsau-live.akamaized.net/hls/live/2002691/skynewsau-extra3/master.m3u8$LR•IPV4•10『线路9』 Sky News,https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.stream_all/playlist.m3u8$LR•IPV4•10『线路10』 Al Jazeera,https://live-hls-aje-ak.getaj.net/AJE/01.m3u8$LR•IPV4•9『线路1』 -Al Jazeera,https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•9『线路2』 -Al Jazeera,https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•9『线路3』 -Al Jazeera,https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•9『线路4』 -Al Jazeera,https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•9『线路5』 -Al Jazeera,https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•9『线路6』 -Al Jazeera,https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•9『线路7』 -Al Jazeera,https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•9『线路8』 -Al Jazeera,http://live-hls-web-aja.getaj.net/AJA/02.m3u8$LR•IPV4•9『线路9』 +Al Jazeera,http://live-hls-web-aja.getaj.net/AJA/02.m3u8$LR•IPV4•9『线路2』 +Al Jazeera,https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•9『线路3』 +Al Jazeera,https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•9『线路4』 +Al Jazeera,https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•9『线路5』 +Al Jazeera,https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•9『线路6』 +Al Jazeera,https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•9『线路7』 +Al Jazeera,https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•9『线路8』 +Al Jazeera,https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•9『线路9』 Arirang,https://amdlive-ch01-ctnd-com.akamaized.net/arirang_1ch/smil:arirang_1ch.smil/chunklist_b3256000_sleng.m3u8$LR•IPV4•5『线路1』 Arirang,http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_3ch/smil:arirang_3ch.smil/playlist.m3u8$LR•IPV4•5『线路2』 Arirang,https://amdlive-ch02-ctnd-com.akamaized.net/arirang_2ch/smil:arirang_2ch.smil/playlist.m3u8$LR•IPV4•5『线路3』 @@ -6236,59 +6240,59 @@ Fashion TV,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$ SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2188.ts$LR•IPV4•28『线路1』 SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2179.ts$LR•IPV4•28『线路2』 SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2182.ts$LR•IPV4•28『线路3』 -SKY,https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•28『线路4』 -SKY,http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•28『线路5』 -SKY,https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•28『线路6』 -SKY,https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•28『线路7』 -SKY,https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•28『线路8』 -SKY,https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•28『线路9』 -SKY,https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•28『线路10』 -SKY,https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•28『线路11』 -SKY,http://akariko.netgenx.site/stream/jp/sky_a/stream-output.m3u8?mode=hls$LR•IPV4•28『线路12』 -SKY,http://akariko.netgenx.site/stream/jp/takarazuka_sky_stage/stream-output.m3u8?mode=hls$LR•IPV4•28『线路13』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•28『线路14』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•28『线路15』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•28『线路16』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•28『线路17』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•28『线路18』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•28『线路19』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•28『线路20』 -SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•28『线路21』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•28『线路22』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•28『线路23』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•28『线路24』 -SKY,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•28『线路25』 -SKY,http://vocotv.pro//revol/revol/276918$LR•IPV4•28『线路26』 -SKY,http://vocotv.pro//revol/revol/276924$LR•IPV4•28『线路27』 -SKY,http://vocotv.pro//revol/revol/276906$LR•IPV4•28『线路28』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•28『线路4』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•28『线路5』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•28『线路6』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•28『线路7』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•28『线路8』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•28『线路9』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•28『线路10』 +SKY,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•28『线路11』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•28『线路12』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•28『线路13』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•28『线路14』 +SKY,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•28『线路15』 +SKY,http://vocotv.pro//revol/revol/276918$LR•IPV4•28『线路16』 +SKY,http://vocotv.pro//revol/revol/276924$LR•IPV4•28『线路17』 +SKY,http://vocotv.pro//revol/revol/276906$LR•IPV4•28『线路18』 +SKY,https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•28『线路19』 +SKY,http://akariko.netgenx.site/stream/jp/sky_a/stream-output.m3u8?mode=hls$LR•IPV4•28『线路20』 +SKY,http://akariko.netgenx.site/stream/jp/takarazuka_sky_stage/stream-output.m3u8?mode=hls$LR•IPV4•28『线路21』 +SKY,http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•28『线路22』 +SKY,https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•28『线路23』 +SKY,https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•28『线路24』 +SKY,https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•28『线路25』 +SKY,https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•28『线路26』 +SKY,https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•28『线路27』 +SKY,https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•28『线路28』 KBS world,http://31.148.48.15/KBS_World/index.m3u8$LR•IPV4•2『线路1』 KBS world,http://akariko.netgenx.site/stream/jp/kbs_world/stream-output.m3u8?mode=hls$LR•IPV4•2『线路2』 -FIFA+,https://jmp2.uk/plu-660c29b5aec9680008f5b4a4.m3u8$LR•IPV4•12『线路1』 -FIFA+,https://37b4c228.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWZyX0ZJRkFQbHVzRnJlbmNoX0hMUw/playlist.m3u8$LR•IPV4•12『线路2』 -FIFA+,https://4397879b.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWRlX0ZJRkFQbHVzR2VybWFuX0hMUw/playlist.m3u8$LR•IPV4•12『线路3』 -FIFA+,https://6c849fb3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctbXhfRklGQVBsdXNTcGFuaXNoLTFfSExT/playlist.m3u8$LR•IPV4•12『线路4』 -FIFA+,https://5d95f7d7.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWl0X0ZJRkFQbHVzSXRhbGlhbl9ITFM/playlist.m3u8$LR•IPV4•12『线路5』 -FIFA+,https://e3be9ac5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctYnJfRklGQVBsdXNQb3J0dWd1ZXNlX0hMUw/playlist.m3u8$LR•IPV4•12『线路6』 -FIFA+,https://d63fabad.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWVzX0ZJRkFQbHVzU3BhbmlzaF9ITFM/playlist.m3u8$LR•IPV4•12『线路7』 -FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/v1/sysdata_s_p_a_fifa_7/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•12『线路8』 -FIFA+,https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•12『线路9』 -FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/554c05e7-129a-4758-97ba-aa2292e58973/1.m3u8$LR•IPV4•12『线路10』 -FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/035f3906-e664-4f1b-83f0-a7547730adce/0.m3u8$LR•IPV4•12『线路11』 -FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/b31ebba5-b6b6-4083-9426-1c4bd66b7119/0.m3u8$LR•IPV4•12『线路12』 +FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/554c05e7-129a-4758-97ba-aa2292e58973/1.m3u8$LR•IPV4•12『线路1』 +FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/v1/sysdata_s_p_a_fifa_7/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•12『线路2』 +FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/035f3906-e664-4f1b-83f0-a7547730adce/0.m3u8$LR•IPV4•12『线路3』 +FIFA+,https://d2w9q46ikgrcwx.cloudfront.net/v1/manifest/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-of5cbk3sav3w5/b31ebba5-b6b6-4083-9426-1c4bd66b7119/0.m3u8$LR•IPV4•12『线路4』 +FIFA+,https://jmp2.uk/plu-660c29b5aec9680008f5b4a4.m3u8$LR•IPV4•12『线路5』 +FIFA+,https://37b4c228.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWZyX0ZJRkFQbHVzRnJlbmNoX0hMUw/playlist.m3u8$LR•IPV4•12『线路6』 +FIFA+,https://4397879b.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWRlX0ZJRkFQbHVzR2VybWFuX0hMUw/playlist.m3u8$LR•IPV4•12『线路7』 +FIFA+,https://6c849fb3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctbXhfRklGQVBsdXNTcGFuaXNoLTFfSExT/playlist.m3u8$LR•IPV4•12『线路8』 +FIFA+,https://5d95f7d7.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWl0X0ZJRkFQbHVzSXRhbGlhbl9ITFM/playlist.m3u8$LR•IPV4•12『线路9』 +FIFA+,https://e3be9ac5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctYnJfRklGQVBsdXNQb3J0dWd1ZXNlX0hMUw/playlist.m3u8$LR•IPV4•12『线路10』 +FIFA+,https://d63fabad.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWVzX0ZJRkFQbHVzU3BhbmlzaF9ITFM/playlist.m3u8$LR•IPV4•12『线路11』 +FIFA+,https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•12『线路12』 Newsmax,https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•5『线路1』 -Newsmax,https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•5『线路2』 -Newsmax,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/newsmax-tv/index.m3u8?ads.vf=Td2nCUXB4ha$LR•IPV4•5『线路3』 -Newsmax,http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•5『线路4』 -Newsmax,https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•5『线路5』 +Newsmax,http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•5『线路2』 +Newsmax,https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•5『线路3』 +Newsmax,https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•5『线路4』 +Newsmax,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/newsmax-tv/index.m3u8?ads.vf=Td2nCUXB4ha$LR•IPV4•5『线路5』 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』 -TBS,https://cdntv.tbs.seoul.kr/tbs/tbs_tv_web.smil/playlist.m3u8$LR•IPV4•6『线路1』 -TBS,http://akariko.netgenx.site/stream/jp/tbs/stream-output.m3u8?mode=hls$LR•IPV4•6『线路2』 -TBS,http://akariko.netgenx.site/stream/jp/tbs_news/stream-output.m3u8?mode=hls$LR•IPV4•6『线路3』 -TBS,http://akariko.netgenx.site/stream/jp/bs_tbs/stream-output.m3u8?mode=hls$LR•IPV4•6『线路4』 -TBS,http://akariko.netgenx.site/stream/jp/tbs_channel_1/stream-output.m3u8?mode=hls$LR•IPV4•6『线路5』 -TBS,http://akariko.netgenx.site/stream/jp/tbs_channel_2/stream-output.m3u8?mode=hls$LR•IPV4•6『线路6』 +TBS,http://akariko.netgenx.site/stream/jp/tbs/stream-output.m3u8?mode=hls$LR•IPV4•6『线路1』 +TBS,http://akariko.netgenx.site/stream/jp/tbs_news/stream-output.m3u8?mode=hls$LR•IPV4•6『线路2』 +TBS,http://akariko.netgenx.site/stream/jp/bs_tbs/stream-output.m3u8?mode=hls$LR•IPV4•6『线路3』 +TBS,http://akariko.netgenx.site/stream/jp/tbs_channel_1/stream-output.m3u8?mode=hls$LR•IPV4•6『线路4』 +TBS,http://akariko.netgenx.site/stream/jp/tbs_channel_2/stream-output.m3u8?mode=hls$LR•IPV4•6『线路5』 +TBS,https://cdntv.tbs.seoul.kr/tbs/tbs_tv_web.smil/playlist.m3u8$LR•IPV4•6『线路6』 ION Plus,https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01438-ewscrippscompan-ionplus-tablo/playlist.m3u8$LR•IPV4•3『线路1』 ION Plus,https://tringliveviz.akamaized.net/delta/105/out/u/qwaszxerdfcvrtryuy.m3u8$LR•IPV4•3『线路2』 ION Plus,https://5ff3d9babae13.streamlock.net/jwagpqxehu/jwagpqxehu/playlist.m3u8$LR•IPV4•3『线路3』 @@ -6298,480 +6302,480 @@ ION,https://d4whmvwm0rdvi.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83da ION,https://89514e758f814907be6d14bbc0aa66b7.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-800-UK-SONYONEACTIONHITS-LG_UK/playlist.m3u8$LR•IPV4•444『线路4』 ION,https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•444『线路5』 ION,https://action-rakuten-tv-uk.fast.rakuten.tv/v1/manifest/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/8e7f1d8c-5ba7-4dde-9834-b058e17f6bfe/4.m3u8$LR•IPV4•444『线路6』 -ION,http://actionlive.siliconweb.com/actionabr/actiontv/playlist.m3u8$LR•IPV4•444『线路7』 -ION,http://rezofoot.tv/Action/index.m3u8$LR•IPV4•444『线路8』 -ION,https://dqi7ayt2o24fn.cloudfront.net/playlist.m3u8$LR•IPV4•444『线路9』 -ION,http://213.91.179.28:8000/play/a04n$LR•IPV4•444『线路10』 -ION,https://jmp2.uk/plu-5f8ed1ff5c39700007e2204a.m3u8$LR•IPV4•444『线路11』 -ION,https://webtvstream.bhtelecom.ba/hls7/filmbox_extra.m3u8$LR•IPV4•444『线路12』 -ION,http://213.91.179.28:8000/play/a04r$LR•IPV4•444『线路13』 -ION,http://88.212.15.19/live/test_film_boxextra_hd_hevc/playlist.m3u8$LR•IPV4•444『线路14』 -ION,http://46.149.191.217:9005/play/a01j$LR•IPV4•444『线路15』 -ION,http://31.222.235.15/mosfilm/index.m3u8$LR•IPV4•444『线路16』 -ION,https://shd-amg-fast.edgenextcdn.net/tx011/playlist.m3u8$LR•IPV4•444『线路17』 -ION,http://116.90.120.151:8000/play/a0ax/index.m3u8$LR•IPV4•444『线路18』 -ION,https://jmp2.uk/plu-561d7d484dc7c8770484914a.m3u8$LR•IPV4•444『线路19』 -ION,https://jmp2.uk/plu-62ea3c2e4823db00072788ed.m3u8$LR•IPV4•444『线路20』 -ION,https://jmp2.uk/plu-617b37b361e0fd0008cfd8c5.m3u8$LR•IPV4•444『线路21』 -ION,https://0f846627524f4dd2995e93581379db82.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung-at_RakutenActionMovies-1/playlist.m3u8$LR•IPV4•444『线路22』 -ION,https://bca5a421a70c46ad911efd0a4767c4bf.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6075/master.m3u8$LR•IPV4•444『线路23』 -ION,https://284824cf70404fdfb6ddf9349009c710.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6066/master.m3u8$LR•IPV4•444『线路24』 -ION,https://87f2e2e5e7624e3bad85da1ca2ed31a7.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6067/master.m3u8$LR•IPV4•444『线路25』 -ION,https://a9c57ec7ec5e4b7daeacc6316a0bb404.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6069/master.m3u8$LR•IPV4•444『线路26』 -ION,https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•444『线路27』 -ION,https://cc-yw7ztecy8do3q.akamaized.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-yw7ztecy8do3q/SS_IN.m3u8$LR•IPV4•444『线路28』 -ION,https://edge4-moblive.yuppcdn.net/trans1sd/smil:strtml19.smil/playlist.m3u8?dvr=$LR•IPV4•444『线路29』 -ION,https://stream8.cinerama.uz/1225/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路30』 -ION,https://dbrb49pjoymg4.cloudfront.net/10001/99991745/hls/master.m3u8?ads.xumo_channelId=99991745$LR•IPV4•444『线路31』 -ION,https://stmv6.voxtvhd.com.br/cineaccion/cineaccion/playlist.m3u8$LR•IPV4•444『线路32』 -ION,http://103.72.101.252:8080/live/488.m3u8$LR•IPV4•444『线路33』 -ION,https://rakutenaa-zylo-emotional-rakuten-r1zkm.amagi.tv/playlist/rakutenAA-zylo-emotional-rakuten/playlist.m3u8$LR•IPV4•444『线路34』 -ION,https://live-evg8.tv360.bitel.com.pe/bitel/abctelevisionSRT/playlist.m3u8$LR•IPV4•444『线路35』 -ION,https://livestream.telvue.com/accvision1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路36』 -ION,https://edge.essastream.com/aiontelevision/playlist.m3u8$LR•IPV4•444『线路37』 -ION,https://streamlov.alsolnet.com/grupocentrobo/live/playlist.m3u8$LR•IPV4•444『线路38』 -ION,https://srv.panelcast.net/dorian/dorian/playlist.m3u8$LR•IPV4•444『线路39』 -ION,https://viewhn.com/amagatelevision/sdfUYWKegHKRPpSirG/playlist.m3u8$LR•IPV4•444『线路40』 -ION,https://live-bd1.tv360.bitel.com.pe/manifest/america/master_clean_source.m3u8$LR•IPV4•444『线路41』 -ION,https://live-antenne-reunion.zeop.tv/live/c3eds/antreunihd/hls_fta/antreunihd.m3u8?location=ZEOP01$LR•IPV4•444『线路42』 -ION,https://mini.allinonereborn.fun/tata.php?id=11585$LR•IPV4•444『线路43』 -ION,https://canal.aupurtv.co/live/stream/index.m3u8$LR•IPV4•444『线路44』 -ION,https://owrcovcrpy.gpcdn.net/bpk-tv/1715/output/index.m3u8$LR•IPV4•444『线路45』 -ION,https://videostream.shockmedia.com.ar/hls/banivision/banivision.m3u8$LR•IPV4•444『线路46』 -ION,https://d135ohnuotzzyo.cloudfront.net/index.m3u8$LR•IPV4•444『线路47』 -ION,https://tv.arkeo.cl:1936/kymczwbrge/kymczwbrge/playlist.m3u8$LR•IPV4•444『线路48』 -ION,https://tigocloudgen.desdeparaguay.net/satelitaltv/satelitaltv/playlist.m3u8$LR•IPV4•444『线路49』 -ION,https://twitch-m3u8.bastypro112.workers.dev/plustelevisionbolivia/index.m3u8$LR•IPV4•444『线路50』 -ION,https://live-evg10.tv360.bitel.com.pe/bitel/anqaratv/playlist.m3u8$LR•IPV4•444『线路51』 -ION,https://live20.bozztv.com/akamaissh101/ssh101/canalmulti24/playlist.m3u8$LR•IPV4•444『线路52』 -ION,https://strhlslb01.streamakaci.tv/cen/cen-multi/playlist.m3u8$LR•IPV4•444『线路53』 -ION,https://5790d294af2dc.streamlock.net/cenovision/cenovision/playlist.m3u8$LR•IPV4•444『线路54』 -ION,http://38.250.127.17:9800/play/a05h/index.m3u8$LR•IPV4•444『线路55』 -ION,https://5790d294af2dc.streamlock.net/tvhdlive/tvhdlive/playlist.m3u8$LR•IPV4•444『线路56』 -ION,http://maxotts.maxdigitaltv.com/x-media/C209/master.m3u8$LR•IPV4•444『线路57』 -ION,http://190.122.104.210:5080/LiveApp/streams/cvision1.m3u8$LR•IPV4•444『线路58』 -ION,https://radio.congoplanet.com/Congo_Planet_TV.sdp/Congo_Planet_TV/playlist.m3u8$LR•IPV4•444『线路59』 -ION,https://stream.arcast.net:4443/correadigital/canal12/playlist.m3u8$LR•IPV4•444『线路60』 -ION,https://lbgo.bozztv.com/ssh101/ssh101/Cosmovisi%C3%B3n/playlist.m3u8$LR•IPV4•444『线路61』 -ION,https://tv.picta.cu/cubavision/cubavision_0.m3u8$LR•IPV4•444『线路62』 -ION,https://tv.picta.cu/cvi/cvi_0.m3u8$LR•IPV4•444『线路63』 -ION,https://eu1.servers10.com:8081/8128/index.m3u8$LR•IPV4•444『线路64』 -ION,http://maxotts.maxdigitaltv.com/x-media/C117/master.m3u8$LR•IPV4•444『线路65』 -ION,https://ss2.tvrdomi.com:1936/digitalvision/digitalvision/playlist.m3u8$LR•IPV4•444『线路66』 -ION,https://rtmp.win:3650/live/diontvlive.m3u8$LR•IPV4•444『线路67』 -ION,https://live20.bozztv.com/giatv/giatv-doblec1/doblec1/playlist.m3u8$LR•IPV4•444『线路68』 -ION,https://vs20.live.opencaster.com/duacavision_092f3447/index.m3u8$LR•IPV4•444『线路69』 -ION,https://live-evg11.tv360.bitel.com.pe/bitel/ecotv/playlist.m3u8$LR•IPV4•444『线路70』 -ION,https://edge.essastream.com/enntivision/playlist.m3u8$LR•IPV4•444『线路71』 -ION,https://stream.haislin.com/entelevision/index.m3u8$LR•IPV4•444『线路72』 -ION,https://kali.vdopanel.com:3090/hybrid/play.m3u8$LR•IPV4•444『线路73』 -ION,https://stmv2.voxtvhd.com.br/evavision/evavision/playlist.m3u8$LR•IPV4•444『线路74』 -ION,https://edgectc.com/CTC_SAN_RAFAEL/index.m3u8$LR•IPV4•444『线路75』 -ION,https://panel.freedomflixtv.org:3868/hybrid/play.m3u8$LR•IPV4•444『线路76』 -ION,https://reflect-watchkfon-fontana.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路77』 -ION,https://fox.hostlagarto.com:8081/ghtelevision/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路78』 -ION,https://securestream11.champds.com/LIVE/GilletteWYLIVE/GilletteWYLIVE.m3u8$LR•IPV4•444『线路79』 -ION,http://181.78.8.199:8000/play/a09k/index.m3u8$LR•IPV4•444『线路80』 -ION,https://reflect-golden-co.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路81』 -ION,https://cdn.streamingcpanel.com:3447/live/hainavisionlive.m3u8$LR•IPV4•444『线路82』 -ION,https://rpn.bozztv.com/ignitelive/ignitetv/ignitetv/playlist.m3u8$LR•IPV4•444『线路83』 -ION,https://np.truestreamz.com/broadcaster/INDIGENOUSmob.stream/playlist.m3u8$LR•IPV4•444『线路84』 -ION,https://mist01.homestream.fun/hls/interactivotv/index.m3u8$LR•IPV4•444『线路85』 -ION,https://ap02.iqplay.tv:8082/iqb8002/i09/playlist.m3u8$LR•IPV4•444『线路86』 -ION,https://kctv.koryofront.org/stream/index.m3u8$LR•IPV4•444『线路87』 -ION,https://streamer.nknews.org/tvdash/stream.mpd$LR•IPV4•444『线路88』 -ION,http://playcom.trapemn.tv:1935/transcoderip/lanacionplus.stream/playlist.m3u8$LR•IPV4•444『线路89』 -ION,https://cloud5.larivision.net/hls/live.m3u8$LR•IPV4•444『线路90』 -ION,https://5790d294af2dc.streamlock.net/manaclar/manaclar/playlist.m3u8$LR•IPV4•444『线路91』 -ION,https://twitch-m3u8.bastypro112.workers.dev/megavisionbo/index.m3u8$LR•IPV4•444『线路92』 -ION,https://edge.essastream.com/miavisiontv/playlist.m3u8$LR•IPV4•444『线路93』 -ION,https://streaming.telecablecentral.com.do/live/MicroHD/playlist.m3u8$LR•IPV4•444『线路94』 -ION,https://685c08ed6d81a.streamlock.net/live/mp4:MCTV_aac/playlist.m3u8$LR•IPV4•444『线路95』 -ION,https://stream.castr.com/5da89a909db964293ad13301/live_4e9cefb0652111f18e12cf968e79335c/index.fmp4.m3u8$LR•IPV4•444『线路96』 -ION,https://tv.picta.cu/multivision/multivision_1.m3u8$LR•IPV4•444『线路97』 -ION,https://cnn.hostlagarto.com/musavisiontv/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路98』 -ION,https://cnn.hostlagarto.com/ntvnavarrete/index.m3u8$LR•IPV4•444『线路99』 -ION,https://livestream.telvue.com/nctv791/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路100』 -ION,https://2-fss-1.streamhoster.com/pl_122/201748-1431018-1/playlist.m3u8$LR•IPV4•444『线路101』 -ION,https://tv.arkeo.cl:1936/nublevision/nublevision/playlist.m3u8$LR•IPV4•444『线路102』 -ION,https://live20.bozztv.com/akamaissh101/ssh101/nuevavisionhd/playlist.m3u8$LR•IPV4•444『线路103』 -ION,https://eu1.servers10.com:8081/8258/index.m3u8$LR•IPV4•444『线路104』 -ION,https://securestream10.champds.com/LIVE/KOCTCALIVE/KOCTCALIVE.m3u8$LR•IPV4•444『线路105』 -ION,https://us.streaminghd.cl/pacificotelevision/video.m3u8$LR•IPV4•444『线路106』 -ION,https://vs20.live.opencaster.com/panche_3c70d368/index.m3u8$LR•IPV4•444『线路107』 -ION,http://45.184.109.10/live/69393EAE6ADBC65A68F942022362A202/120.m3u8$LR•IPV4•444『线路108』 -ION,https://ss2.tvrdomi.com:1936/peraviavision/peraviavision/playlist.m3u8$LR•IPV4•444『线路109』 -ION,https://cdn3.wowza.com/5/cXdyRHF0Z3kxN0k2/pinole/G0032_002/playlist.m3u8$LR•IPV4•444『线路110』 -ION,https://live.kwikmotion.com/qtv1live/qtv1.smil/playlist.m3u8$LR•IPV4•444『线路111』 -ION,https://live.kwikmotion.com/qtv2live/qtv2.smil/playlist.m3u8$LR•IPV4•444『线路112』 -ION,https://vdopanel.jlahozconsulting.com/p/3142/hybrid/play.m3u8$LR•IPV4•444『线路113』 -ION,https://lbgo.bozztv.com/ssh101/ssh101/ratvbol/playlist.m3u8$LR•IPV4•444『线路114』 -ION,https://azura2.bitstreaming.net/hls/kollasuyo3/live.m3u8$LR•IPV4•444『线路115』 -ION,https://watch.haitilive.net/freehb/rtvs/index.m3u8$LR•IPV4•444『线路116』 -ION,https://live-evg10.tv360.bitel.com.pe/bitel/realtv/playlist.m3u8$LR•IPV4•444『线路117』 -ION,https://streamunoapp.com:3331/live/rocavisiontvlive.m3u8$LR•IPV4•444『线路118』 -ION,https://livestream.telvue.com/santamariactv3/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路119』 -ION,https://soportedvb.click:3668/live/simavisiontvlive.m3u8$LR•IPV4•444『线路120』 -ION,https://livestream.telvue.com/soundviewcmt2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路121』 -ION,https://k20.usastreams.com:8081/telered/index.m3u8$LR•IPV4•444『线路122』 -ION,http://server2grupocam.com:1945/teleunion/TU/playlist.m3u8$LR•IPV4•444『线路123』 -ION,https://twitch-m3u8.bastypro112.workers.dev/radiosangabrielbolivia/index.m3u8$LR•IPV4•444『线路124』 -ION,https://live.kingdom-tv.com:3545/stream/play.m3u8$LR•IPV4•444『线路125』 -ION,https://cdn140m.panaccess.com/HLS/Espoir47/index.m3u8$LR•IPV4•444『线路126』 -ION,https://viewhn.com/canal30/live/playlist.m3u8$LR•IPV4•444『线路127』 -ION,https://live-evg11.tv360.bitel.com.pe/bitel/tvtarapotoSRT/playlist.m3u8$LR•IPV4•444『线路128』 -ION,https://5eac7b031d945.streamlock.net/TICAVISION/TICAVISION/playlist.m3u8$LR•IPV4•444『线路129』 -ION,https://liveingesta118.cdnmedia.tv/trivisionlive/rtmp01-900/chunklist.m3u8?DVR=$LR•IPV4•444『线路130』 -ION,https://rpn.bozztv.com/gusa/gusa-tvstn/index.m3u8$LR•IPV4•444『线路131』 -ION,https://5ff3d9babae13.streamlock.net/ubyecbxnfd/ubyecbxnfd/playlist.m3u8$LR•IPV4•444『线路132』 -ION,https://vallejo.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路133』 -ION,https://streaming.telecablecentral.com.do/Vallevision/ValleHD/playlist.m3u8$LR•IPV4•444『线路134』 -ION,https://reflect-vsctv.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路135』 -ION,https://fox.hostlagarto.com:8081/canal26/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路136』 -ION,http://181.78.8.199:8000/play/a0if/index.m3u8$LR•IPV4•444『线路137』 -ION,http://181.78.8.199:8000/play/a091/index.m3u8$LR•IPV4•444『线路138』 -ION,https://ss2.tvrdomi.com:1936/vision3000/vision3000/playlist.m3u8$LR•IPV4•444『线路139』 -ION,https://media.streambrothers.com:19360/8308/8308.m3u8$LR•IPV4•444『线路140』 -ION,https://cloudsavre.in.net/hls/stream.m3u8$LR•IPV4•444『线路141』 -ION,https://live-evg5.tv360.bitel.com.pe/bitel/yurivisionSRT/playlist.m3u8$LR•IPV4•444『线路142』 -ION,https://ds.tvabierta.net/memfs/b295f254-7af9-45e4-bfc6-7e0bba41929d.m3u8$LR•IPV4•444『线路143』 -ION,https://content.jwplatform.com/live/broadcast/oe7UD7Ag.m3u8$LR•IPV4•444『线路144』 -ION,https://30a-tv.com/ln.m3u8$LR•IPV4•444『线路145』 -ION,https://stream.berosat.live:19360/baraka-hd/baraka-hd.m3u8$LR•IPV4•444『线路146』 -ION,https://ss2.tvrdomi.com:1936/carivision/carivision/playlist.m3u8$LR•IPV4•444『线路147』 -ION,https://edge.enhdtv.com/cn3/index.m3u8$LR•IPV4•444『线路148』 -ION,https://unlimited6-cl.dps.live/cm/cm.smil/playlist.m3u8$LR•IPV4•444『线路149』 -ION,https://stream.logichost.in/kannurvision/live/playlist.m3u8$LR•IPV4•444『线路150』 -ION,https://gjirafa-video-live.gjirafa.net/gjvideo-livestream/lj9-pxm-o53-rp0/tracks-v4a1/mono.m3u8$LR•IPV4•444『线路151』 -ION,https://lencatelevision.com/hls/stream.m3u8$LR•IPV4•444『线路152』 -ION,https://streamer2.nexgen.bz/01-LOVE/index.m3u8$LR•IPV4•444『线路153』 -ION,https://panel.host-live.com:19360/8250/8250.m3u8$LR•IPV4•444『线路154』 -ION,https://nationtv-1jdcjo.cdn.byteark.com/fleetstream/nationtvlive/index.m3u8$LR•IPV4•444『线路155』 -ION,https://d3qs3d2rkhfqrt.cloudfront.net/out/v1/6cd2f649739a45ca9de1daf81cc7d0f2/index.m3u8$LR•IPV4•444『线路156』 -ION,https://edge.essastream.com/televisiondeleste/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路157』 -ION,http://rtmp.logichost.in:1935/timevision/timevision/playlist.m3u8$LR•IPV4•444『线路158』 -ION,http://vg-zeefta.akamaized.net/ptnr-yupptv/title-wion/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/20c3c0d9-0256-43fe-bca6-70fdd490b957/main.m3u8$LR•IPV4•444『线路159』 -ION,https://endour.net/hls/One_nationtv/index.m3u8$LR•IPV4•444『线路160』 -ION,https://30a-tv.com/feeds/masters/30atv.m3u8$LR•IPV4•444『线路161』 -ION,https://live.amelbatv.co:81/anctvlive/index.m3u8$LR•IPV4•444『线路162』 -ION,https://jmp2.uk/plu-5ede45d077746000072be0fe.m3u8$LR•IPV4•444『线路163』 -ION,https://jmp2.uk/plu-62ac50e92c48f900071444c9.m3u8$LR•IPV4•444『线路164』 -ION,https://fox.hostlagarto.com:8081/bellavision8hd/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路165』 -ION,https://live.cineramatvbo.com/hls/stream.m3u8$LR•IPV4•444『线路166』 -ION,http://23.237.104.106:8080/USA_CRIME_INVESTIGATION/index.m3u8$LR•IPV4•444『线路167』 -ION,https://cdn09jtedge.indihometv.com/joss/133/crimeinvestigation/index.m3u8$LR•IPV4•444『线路168』 -ION,http://88.212.15.19/live/test_cai_hevc/playlist.m3u8$LR•IPV4•444『线路169』 -ION,https://canal.gitelevisionserver.com/live/DIEEFIh506fL8huspvl0f0c2PZF3/index.m3u8$LR•IPV4•444『线路170』 -ION,https://pb-xhb3ic8b61whm.akamaized.net/Ion_US.m3u8$LR•IPV4•444『线路171』 -ION,https://jmp2.uk/plu-6728c831c7626f0008b28127.m3u8$LR•IPV4•444『线路172』 -ION,https://jmp2.uk/plu-6728c87cc7626f0008b28149.m3u8$LR•IPV4•444『线路173』 -ION,https://jmp2.uk/plu-6728c8b45534bb0008b31f35.m3u8$LR•IPV4•444『线路174』 -ION,https://mumt03.tangotv.in/KERALAVISION/index.m3u8$LR•IPV4•444『线路175』 -ION,https://j78dpa3edq5r-hls-live.5centscdn.com/abr/0864028584026e6ad9cdf922473177a4/playlist.m3u8$LR•IPV4•444『线路176』 -ION,https://makrodigitaltv.makrodigital.com/makrodigitaltelevision/iptv/playlist.m3u8$LR•IPV4•444『线路177』 -ION,http://41.223.30.230/PASSIONTV/index.m3u8$LR•IPV4•444『线路178』 -ION,https://jmp2.uk/plu-62f3e0522443200008c567d7.m3u8$LR•IPV4•444『线路179』 -ION,http://stb-air.wasmer.app/play.php?id=LIVETV_LIVETVCHANNEL_SET_HD&pass=krish-ka&uid=gana-sunega$LR•IPV4•444『线路180』 -ION,https://origin-de-y376549.cdn.nextologies.com:444/4c3caf7294b3/fbbd0aee3d9a8260/playlist.m3u8$LR•IPV4•444『线路181』 -ION,https://soportedvb.click:3891/live/visionndvlive.m3u8$LR•IPV4•444『线路182』 -ION,https://tele-stream.telecasa.net/live/st1/yunavision-hd/index.m3u8$LR•IPV4•444『线路183』 -ION,https://stream.sen-gt.com/A2iReligion/myStream/playlist.m3u8$LR•IPV4•444『线路184』 -ION,https://627bb251f23c7.streamlock.net:444/Alientoenvivo/Alientoenvivo/playlist.m3u8$LR•IPV4•444『线路185』 -ION,https://live-evg7.tv360.bitel.com.pe/bitel/andestvSRT/playlist.m3u8$LR•IPV4•444『线路186』 -ION,http://streamer02.nbo1.angani.co:1935/aviationtv/myStream/playlist.m3u8$LR•IPV4•444『线路187』 -ION,https://streamer1.nexgen.bz/ATN/index.m3u8$LR•IPV4•444『线路188』 -ION,https://s.emisoras.tv:8081/bendicionchannel/index.m3u8$LR•IPV4•444『线路189』 -ION,https://cdn1.cmbcolombia.tv/bethesda/video.m3u8$LR•IPV4•444『线路190』 -ION,https://tnt-television.com/COMPASSION_FM/index.m3u8$LR•IPV4•444『线路191』 -ION,https://tvstream.conexionpositivaradio.com/memfs/69239c4d-4116-4f4f-b065-bf17e81b1411.m3u8$LR•IPV4•444『线路192』 -ION,https://3a310f6ec721e6b362fcd22772b57f36a2fe6bb2.tabeelcr.com:8080/cristovision31/iptv.m3u8$LR•IPV4•444『线路193』 -ION,https://5fc584f3f19c9.streamlock.net/cristovision/videocristovision/playlist.m3u8$LR•IPV4•444『线路194』 -ION,https://video1.getstreamhosting.com:1936/8226/8226/playlist.m3u8$LR•IPV4•444『线路195』 -ION,https://1206618505.rsc.cdn77.org/LS-ATL-59020-1/playlist.m3u8$LR•IPV4•444『线路196』 -ION,https://vs20.live.opencaster.com/lasalvaciondelalmatv_dfc663c0/index.m3u8$LR•IPV4•444『线路197』 -ION,https://streamtv.intervenhosting.net:3403/hybrid/play.m3u8$LR•IPV4•444『线路198』 -ION,https://1601580044.rsc.cdn77.org/live/_jcn_/amlst:CHANNEL_2/playlist.m3u8$LR•IPV4•444『线路199』 -ION,https://eu1.servers10.com:8081/8338/index.m3u8$LR•IPV4•444『线路200』 -ION,https://rd.tvabierta.net/live/misioneltv.m3u8$LR•IPV4•444『线路201』 -ION,https://livecdn.live247stream.com/missionasia/tv/playlist.m3u8$LR•IPV4•444『线路202』 -ION,https://6096a9cf11ae5.streamlock.net:1943/live/missiontv/playlist.m3u8$LR•IPV4•444『线路203』 -ION,https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_027/Stream/playlist.m3u8$LR•IPV4•444『线路204』 -ION,https://storage.sardius.media/archives/-KyMV-J0vDqnClcSXs8p/events/site_1a4721d3BA/playlist.m3u8$LR•IPV4•444『线路205』 -ION,https://live.nixsat.com/play/rtm/index.m3u8$LR•IPV4•444『线路206』 -ION,https://ktismaservers.in:3902/live/salvationtvlive.m3u8$LR•IPV4•444『线路207』 -ION,https://tv.streamcasthd.com:3536/live/siontvlive.m3u8$LR•IPV4•444『线路208』 -ION,https://ss2.tvrdomi.com:1936/telebendicion/telebendicion/playlist.m3u8$LR•IPV4•444『线路209』 -ION,https://lbgo.bozztv.com/ssh101/ssh101/visiononline/playlist.m3u8$LR•IPV4•444『线路210』 -ION,https://jk3lzkn4lw79-hls-live.5centscdn.com/VTN2/bcaafe9ad8d42834b08e762ac58596b8.sdp/playlist.m3u8$LR•IPV4•444『线路211』 -ION,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1153$LR•IPV4•444『线路212』 -ION,https://amg01076-lightningintern-actionhollywood-samsungau-rs69y.amagi.tv/playlist/amg01076-lightningintern-actionhollywood-samsungau/playlist.m3u8$LR•IPV4•444『线路213』 -ION,https://cdn-apse1-prod.tsv2.amagi.tv/linear/amg01076-lightningintern-actionhollywood-samsungnz/playlist.m3u8$LR•IPV4•444『线路214』 -ION,https://actionhollywood-klowdtv.amagi.tv/playlist.m3u8$LR•IPV4•444『线路215』 -ION,https://linear-888.frequency.stream/dist/xumo/888/hls/master/playlist.m3u8$LR•IPV4•444『线路216』 -ION,https://aegis-cloudfront-1.tubi.video/baa32c24-e707-4bf8-9f81-d26eb6baa3dc/playlist.m3u8$LR•IPV4•444『线路217』 -ION,https://jmp2.uk/plu-65a7d99f4a10d800086083a9.m3u8$LR•IPV4•444『线路218』 -ION,https://streams2.sofast.tv/sofastplayout/0c3229e2-6ca5-4714-859e-c0ac6b9aa58a_0_HLS/master.m3u8$LR•IPV4•444『线路219』 -ION,https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/9a4a5412-ca99-48d3-9013-d1811b95b9d2/manifest.m3u8$LR•IPV4•444『线路220』 -ION,https://cdn3.wowza.com/5/V2Y2VmhqMEFDTUkx/beverlyhills/G0072_006/playlist.m3u8$LR•IPV4•444『线路221』 -ION,https://cdn3.wowza.com/5/V2Y2VmhqMEFDTUkx/beverlyhills/G0072_007/playlist.m3u8$LR•IPV4•444『线路222』 -ION,https://jmp2.uk/plu-611f85396abc84000738417b.m3u8$LR•IPV4•444『线路223』 -ION,https://a-cdn.klowdtv.com/live3/blackenterprise_720p/playlist.m3u8$LR•IPV4•444『线路224』 -ION,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/cjc-television-network/55e06661da359ab51bbb2d563521f4b2.m3u8?ads.vf=MyS88Juu55G$LR•IPV4•444『线路225』 -ION,https://radio.congoplanet.com/Congo_Planet_TV_Pop.sdp/Congo_Planet_TV_Pop/playlist.m3u8$LR•IPV4•444『线路226』 -ION,https://ssh101.bozztv.com/ssh101/dtelevision/playlist.m3u8$LR•IPV4•444『线路227』 -ION,https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/453971f3-855a-455e-9353-ebbb069583a4/manifest.m3u8$LR•IPV4•444『线路228』 -ION,https://streams2.sofast.tv/sofastplayout/7e8d2a51-985d-4e76-bf7e-91edf0aa6e5f_0_HLS/master.m3u8$LR•IPV4•444『线路229』 -ION,https://linear-1066.frequency.stream/dist/stirr/1066/hls/master/playlist.m3u8$LR•IPV4•444『线路230』 -ION,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/elevation-church-network/playlist.m3u8?ads.vf=-Zd8ogbOmAi$LR•IPV4•444『线路231』 -ION,https://amg00276-amg00276c15-samsung-gb-3790.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路232』 -ION,https://jmp2.uk/plu-6661739641af6400080cd8f1.m3u8$LR•IPV4•444『线路233』 -ION,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883113$LR•IPV4•444『线路234』 -ION,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•444『线路235』 -ION,https://a64543d5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX0ZsaXBwaW5nTmF0aW9uX0hMUw/playlist.m3u8$LR•IPV4•444『线路236』 -ION,https://d3795432.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GbGlwcGluZ05hdGlvbl9ITFM/playlist.m3u8$LR•IPV4•444『线路237』 -ION,https://d21mkcgtx2frod.cloudfront.net/v1/aenetworks_flippingnation_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•444『线路238』 -ION,https://production-fastbpk.content.okast.tv/fa2e8c4385712f9aa35c5b79a2b4ac2d/channels/eec463a6-4364-473b-8d89-555acc5b8fb2/e36e4304-73ff-4f9f-8d38-e748576a1f51/media_.m3u8$LR•IPV4•444『线路239』 -ION,https://jmp2.uk/plu-60afb203ec391c00070ea1bf.m3u8$LR•IPV4•444『线路240』 -ION,https://tv2.bitstreaming.net:3576/multi_live/play.m3u8$LR•IPV4•444『线路241』 -ION,https://dtz4aepbew7ez.cloudfront.net/hotwh.m3u8$LR•IPV4•444『线路242』 -ION,https://sc1.wasidata.com/Imperial/index.m3u8$LR•IPV4•444『线路243』 -ION,https://fast-rakuten.okast.tv/fa2e8c4385712f9a3b579747e448699c/channels/34d82f76-b51f-4bf5-9b35-769fb5904e79/a4226699-b685-4f5d-9cb6-2a6cac14c377/media_.m3u8$LR•IPV4•444『线路244』 -ION,https://live-evg5.tv360.bitel.com.pe/bitel/inkavisionSRT/playlist.m3u8$LR•IPV4•444『线路245』 -ION,https://amg00276-amg00276c17-samsung-gb-3791.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路246』 -ION,https://pb-5kduxc2en4kdz.akamaized.net/Intervention_by_AE.m3u8$LR•IPV4•444『线路247』 -ION,https://amg00346-vizioono-amg00346c2-distrotv-us-1396.playouts.now.amagi.tv/playlist/amg00346-vizioincfast-investigation-distrotvus/playlist.m3u8$LR•IPV4•444『线路248』 -ION,https://amg00346-vizioono-investigation-xumo-us.amagi.tv/playlist.m3u8$LR•IPV4•444『线路249』 -ION,https://jmp2.uk/plu-65453f30085df200085883d8.m3u8$LR•IPV4•444『线路250』 -ION,https://aegis-cloudfront-1.tubi.video/3b6afc3b-97f7-4f22-99f4-7bcff60fc39d/playlist.m3u8$LR•IPV4•444『线路251』 -ION,https://pb-usmbvsgwcg8pc.akamaized.net/Ion_Mystery_US.m3u8$LR•IPV4•444『线路252』 -ION,https://hls.irannrtv.live/hls/stream.m3u8$LR•IPV4•444『线路253』 -ION,https://82934cf9c8696bd2.mediapackage.us-east-1.amazonaws.com/out/v1/72b5a55e4c35445f9e742871aa0aefa2/index.m3u8$LR•IPV4•444『线路254』 -ION,https://d30q6vjmdwhh1y.cloudfront.net/LocationLocationLocation_GB.m3u8$LR•IPV4•444『线路255』 -ION,https://pb-tc6lcocnesxgi.akamaized.net/playlist.m3u8$LR•IPV4•444『线路256』 -ION,https://jmp2.uk/plu-677fb3432952c1163bf1a539.m3u8$LR•IPV4•444『线路257』 -ION,https://xumo-xumoent-ch838-coy7x.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路258』 -ION,https://jmp2.uk/plu-6549322e53fc97000838febc.m3u8$LR•IPV4•444『线路259』 -ION,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/motorvision-tv-espanol/mv_es.m3u8?ads.vf=-bwCJuiaCt8$LR•IPV4•444『线路260』 -ION,https://d1yhx4ygpfwmgm.cloudfront.net/v1/fast/nesnsamsungtvplus/772bf582-9476-4a30-a4c4-ba1c0839f167.m3u8$LR•IPV4•444『线路261』 -ION,https://d14kyo3ex6k293.cloudfront.net/playlist.m3u8$LR•IPV4•444『线路262』 -ION,https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/ea1ad8da-7c74-4dc3-999f-15088a0d942a/manifest.m3u8$LR•IPV4•444『线路263』 -ION,https://dikkyk1ckkhzq.cloudfront.net/RabiddsInvasion_GB.m3u8$LR•IPV4•444『线路264』 -ION,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/radioromatv.m3u8$LR•IPV4•444『线路265』 -ION,https://01ac9352fbfa4204998783d41f9b1a2e.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6068/master.m3u8$LR•IPV4•444『线路266』 -ION,https://live-evg7.tv360.bitel.com.pe/bitel/regiontvSRT/playlist.m3u8$LR•IPV4•444『线路267』 -ION,https://1681360479.rsc.cdn77.org/1681360479/index.m3u8$LR•IPV4•444『线路268』 -ION,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/RHT6XGG6VHZA0P8T1MGX/hls3/now,-1m/m.m3u8?ads.vf=xV5XOQG_ptm$LR•IPV4•444『线路269』 -ION,https://scl.edge.grupoz.cl/rtcstreaming/live/playlist.m3u8$LR•IPV4•444『线路270』 -ION,https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_017/Stream/playlist.m3u8$LR•IPV4•444『线路271』 -ION,https://stream.lamegatv.com/hls/sanvitotelevision/index.m3u8$LR•IPV4•444『线路272』 -ION,https://5ff3d9babae13.streamlock.net/fzkqsdfray/fzkqsdfray/playlist.m3u8$LR•IPV4•444『线路273』 -ION,https://jmp2.uk/plu-68e38b005c876cf730fcbf0f.m3u8$LR•IPV4•444『线路274』 -ION,https://live-evg11.tv360.bitel.com.pe/bitel/solartvSRT/playlist.m3u8$LR•IPV4•444『线路275』 -ION,https://2-fss-1.streamhoster.com/pl_122/206858-4412976-1/chunklist.m3u8$LR•IPV4•444『线路276』 -ION,https://live.cmr24.fm/TVI/HD/chunks.m3u8$LR•IPV4•444『线路277』 -ION,https://xumo-drct-ch835-ekq0p.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路278』 -ION,https://d1oyt3v08gcy18.cloudfront.net/index-events.m3u8$LR•IPV4•444『线路279』 -ION,https://mediacp.nnw.cl:19360/temucotelevision/temucotelevision.m3u8$LR•IPV4•444『线路280』 -ION,https://videohd.live:19360/8008/8008.m3u8$LR•IPV4•444『线路281』 -ION,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/M43FCP9IGELUIOH4IAVQ/hls3/now,-1m/m.m3u8?ads.vf=dkc6PGrkc0i$LR•IPV4•444『线路282』 -ION,http://45.5.119.43:4000/play/a0jj/index.m3u8$LR•IPV4•444『线路283』 -ION,https://panel.tvstream.cl:1936/sdaumqtfqf/sdaumqtfqf/playlist.m3u8$LR•IPV4•444『线路284』 -ION,https://s2.tvdatta.com:3687/hybrid/play.m3u8$LR•IPV4•444『线路285』 -ION,https://live-evg11.tv360.bitel.com.pe/bitel/utv/playlist.m3u8$LR•IPV4•444『线路286』 -ION,https://xumo-xumoent-ch828-w6val.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路287』 -ION,https://jmp2.uk/plu-654933e253fc970008390114.m3u8$LR•IPV4•444『线路288』 -ION,http://138.121.15.230:9002/UNIVISION/index.m3u8$LR•IPV4•444『线路289』 -ION,http://provedores.unsion.tv:8081/srt/1/playlist.m3u8$LR•IPV4•444『线路290』 -ION,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/58XXIGAFT3S6VSMD82AP/hls3/now,-1m/m.m3u8?ads.vf=eieiHoUaPzC$LR•IPV4•444『线路291』 -ION,https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/7ad8ce96-5a3f-413e-ae15-7c2cef7bc8f8/manifest.m3u8$LR•IPV4•444『线路292』 -ION,https://streaming.proceso.info:8888/vision6-web/stream.m3u8$LR•IPV4•444『线路293』 -ION,https://tv.arkeo.cl:1936/8044/8044/playlist.m3u8$LR•IPV4•444『线路294』 -ION,https://vosgestv.live-kd.com/live/vosgestv/vosgestv/playlist.m3u8$LR•IPV4•444『线路295』 -ION,https://live-manifest.production-public.tubi.io/live/a8250c51-f628-4936-97cb-67a931d2d7d8/playlist.m3u8$LR•IPV4•444『线路296』 -ION,https://d16xlk626t29pt.cloudfront.net/ABR.m3u8$LR•IPV4•444『线路297』 -ION,https://jmp2.uk/plu-61e9af6bfbbcc6000700119b.m3u8$LR•IPV4•444『线路298』 -ION,https://m1b2.worldcast.tv/dancetelevisionone/2/dancetelevisionone.m3u8$LR•IPV4•444『线路299』 -ION,https://funradiovisionhd.vedge.infomaniak.com/livecast/ik:funradiovisionhd/manifest.m3u8$LR•IPV4•444『线路300』 -ION,https://edge20.vedge.infomaniak.com/livecast/ik:fusiontv/manifest.m3u8$LR•IPV4•444『线路301』 -ION,https://streamer1.connectto.com/HIGHVISION_WEB_1205/index.m3u8$LR•IPV4•444『线路302』 -ION,https://streamlov.alsolnet.com/lapuracrema/live/playlist.m3u8$LR•IPV4•444『线路303』 -ION,https://mic.siar.us/mic/live/mic.m3u8$LR•IPV4•444『线路304』 -ION,https://tuvideoonline.com.ar:3391/live/radioconexionlive.m3u8$LR•IPV4•444『线路305』 -ION,https://stream.mediawork.cz/retrotv/retrotvHQ1/playlist.m3u8$LR•IPV4•444『线路306』 -ION,https://live20.bozztv.com/akamaissh101/ssh101/qMUAZEy/playlist.m3u8$LR•IPV4•444『线路307』 -ION,https://tvcosta.gleeze.com/memfs/4d48db09-0b1e-4803-8da7-22be388bdd7e.m3u8$LR•IPV4•444『线路308』 -ION,https://cdn.streamhispanatv.net:3652/live/totovisiongtlive.m3u8$LR•IPV4•444『线路309』 -ION,https://jmp2.uk/plu-62da73c4ec46c000070f4cb1.m3u8$LR•IPV4•444『线路310』 -ION,https://jmp2.uk/plu-62da7159ca8f220008032730.m3u8$LR•IPV4•444『线路311』 -ION,https://jmp2.uk/plu-62da7380478a5b0007e610d9.m3u8$LR•IPV4•444『线路312』 -ION,https://jmp2.uk/plu-6304f8d5ffb61000071ab478.m3u8$LR•IPV4•444『线路313』 -ION,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/Q7VW3TCBWCN12JGUJGUY/hls3/now,-1m/m.m3u8?ads.vf=7sLXLbaCnLW$LR•IPV4•444『线路314』 -ION,https://3238c44f.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/Um9rdV9MaXZlbHlQbGFjZV9ITFM/playlist.m3u8$LR•IPV4•444『线路315』 -ION,https://jmp2.uk/plu-6683cd2fca74680008772545.m3u8$LR•IPV4•444『线路316』 -ION,https://jmp2.uk/plu-62ea43aa0c43540007f2db96.m3u8$LR•IPV4•444『线路317』 -ION,https://jmp2.uk/plu-5f77977bd924d80007eee60c.m3u8$LR•IPV4•444『线路318』 -ION,https://jmp2.uk/plu-63808dc806aa4700075f319a.m3u8$LR•IPV4•444『线路319』 -ION,https://jmp2.uk/plu-63d000ef4e83e700086e0d6c.m3u8$LR•IPV4•444『线路320』 -ION,https://jmp2.uk/plu-63a1caefc8d285000799e8af.m3u8$LR•IPV4•444『线路321』 -ION,https://jmp2.uk/plu-63a1c959d9dd51000825d659.m3u8$LR•IPV4•444『线路322』 -ION,https://jmp2.uk/plu-63a1c9c2847a090007f248da.m3u8$LR•IPV4•444『线路323』 -ION,https://6df6888a.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/Um9rdV9UaW55SG91c2VOYXRpb25fSExT/playlist.m3u8$LR•IPV4•444『线路324』 -ION,https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•444『线路325』 -ION,http://31.148.48.15/Fashion_One_HD/index.m3u8$LR•IPV4•444『线路326』 -ION,https://pubgfc.teleosmedia.com/linear/globalfashionchannel/globalfashionchannel/playlist.m3u8$LR•IPV4•444『线路327』 -ION,https://fl718492-exthls-p1.flovp.com/fl718492/live/live.m3u8$LR•IPV4•444『线路328』 -ION,https://jmp2.uk/plu-64f8a949f5b5e4000862467c.m3u8$LR•IPV4•444『线路329』 -ION,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883107$LR•IPV4•444『线路330』 -ION,https://amg00862-amg00862c5-amgplt0173.playout.now3.amagi.tv/playlist/amg00862-amg00862c5-amgplt0173/playlist.m3u8$LR•IPV4•444『线路331』 -ION,https://jmp2.uk/plu-69aee8a1acb7eb0bb68df641.m3u8$LR•IPV4•444『线路332』 -ION,https://jmp2.uk/plu-68487fb3f212bedacf5a53e3.m3u8$LR•IPV4•444『线路333』 -ION,https://jmp2.uk/plu-634fe5afece2e60007c9d8b8.m3u8$LR•IPV4•444『线路334』 -ION,https://jmp2.uk/plu-6671b21ffc3a46000857fe75.m3u8$LR•IPV4•444『线路335』 -ION,https://jmp2.uk/plu-62ab579258cb950007811aad.m3u8$LR•IPV4•444『线路336』 -ION,https://jmp2.uk/plu-65cb77853ba51e00084cba02.m3u8$LR•IPV4•444『线路337』 -ION,https://jmp2.uk/plu-66d717d2abec540008ba7ec4.m3u8$LR•IPV4•444『线路338』 -ION,https://jmp2.uk/plu-66d717c6abec540008ba7eb5.m3u8$LR•IPV4•444『线路339』 -ION,https://jmp2.uk/plu-65004605110545000842035d.m3u8$LR•IPV4•444『线路340』 -ION,https://jmp2.uk/plu-5dbfeb961b411c00090b52b3.m3u8$LR•IPV4•444『线路341』 -ION,https://jmp2.uk/plu-61c095861782bd000780e0ba.m3u8$LR•IPV4•444『线路342』 -ION,https://jmp2.uk/plu-61c1e270489a9c000874d209.m3u8$LR•IPV4•444『线路343』 -ION,https://jmp2.uk/plu-61c0b0688a80a4000703fbcb.m3u8$LR•IPV4•444『线路344』 -ION,https://jmp2.uk/plu-69776ce979545c21a1220bff.m3u8$LR•IPV4•444『线路345』 -ION,https://jmp2.uk/plu-65786b94cbd0d60008f7e4d9.m3u8$LR•IPV4•444『线路346』 -ION,https://jmp2.uk/plu-695c32e61ca20bb8ca802eb9.m3u8$LR•IPV4•444『线路347』 -ION,http://latam-cache-sv2-cdn.latamlive.net/LA_LIGA_SMARTBANK_IP_ENC_LIVE/index.m3u8$LR•IPV4•444『线路348』 -ION,http://cdn2.ujjina.com:1935/iptvovacion1/liveovacion1tv/playlist.m3u8$LR•IPV4•444『线路349』 -ION,https://jmp2.uk/plu-603fde9026ecbf0007752c2c.m3u8$LR•IPV4•444『线路350』 -ION,https://2-fss-2.streamhoster.com/pl_118/204972-2205186-1/playlist.m3u8$LR•IPV4•444『线路351』 -ION,https://mvg-mv-xumo.otteravision.com/mvg/mv/mv.m3u8$LR•IPV4•444『线路352』 -ION,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883047$LR•IPV4•444『线路353』 -ION,https://amg01258-raycomsports-powernationau-samsungau-18bwc.amagi.tv/playlist.m3u8$LR•IPV4•444『线路354』 -ION,http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/fierrofondo.stream/playlist.m3u8$LR•IPV4•444『线路355』 -ION,https://jmp2.uk/plu-6462190b7cb4b1000862dd60.m3u8$LR•IPV4•444『线路356』 -ION,https://jmp2.uk/plu-650999b86a841400083bd1ab.m3u8$LR•IPV4•444『线路357』 -ION,https://dlttx48mxf9m3.cloudfront.net/vod_clients/bolton/live/ch2/video.m3u8$LR•IPV4•444『线路358』 -ION,https://iptv.ebc.edu.kh/iptv/channel/1.m3u8$LR•IPV4•444『线路359』 -ION,https://stmv3.voxtvhd.com.br/conex2/conex2/playlist.m3u8$LR•IPV4•444『线路360』 -ION,https://reflect-vod-cmac.cablecast.tv/live-11/live/stream-2/live.m3u8$LR•IPV4•444『线路361』 -ION,https://securestream11.champds.com/LIVE/GilletteWYLIVE3/GilletteWYLIVE3.m3u8$LR•IPV4•444『线路362』 -ION,https://videostream.chileservidores.com:8081/tome/index.m3u8$LR•IPV4•444『线路363』 -ION,https://reflect-channel36-la.cablecast.tv/live-3/live/stream-1/live.m3u8$LR•IPV4•444『线路364』 -ION,https://reflect-mcsb-vod.cablecast.tv/live-16/live/live.m3u8$LR•IPV4•444『线路365』 -ION,https://5c2974786200d.streamlock.net/live-chan28/ngrp:ch28_all/playlist.m3u8$LR•IPV4•444『线路366』 -ION,https://reflect-monroe-public-access.cablecast.tv/live-4/live/live.m3u8$LR•IPV4•444『线路367』 -ION,https://livestream.telvue.com/natickpegasus1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路368』 -ION,https://fms.nrwision.de/live/ngrp:livestreamHD.stream/playlist.m3u8$LR•IPV4•444『线路369』 -ION,https://securestream10.champds.com/LIVE/KOCTCALIVE2/KOCTCALIVE2.m3u8$LR•IPV4•444『线路370』 -ION,https://livestream.telvue.com/santamariactv2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路371』 -ION,https://livestream.telvue.com/accvision2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路372』 -ION,https://buenapark.cablecast.tv/live/stream-1/live.m3u8$LR•IPV4•444『线路373』 -ION,https://champaign-cablecast.cablecast.tv/live/stream-2/live.m3u8$LR•IPV4•444『线路374』 -ION,https://capitalcityconnection.cablecast.tv/live/stream-1/live.m3u8$LR•IPV4•444『线路375』 -ION,https://reflect-collier-countyboc.cablecast.tv/live-4/live/stream-1/live.m3u8$LR•IPV4•444『线路376』 -ION,https://cdn3.wowza.com/5/R09KQXpaMWlrRjly/coralgables/G0937_004/playlist.m3u8$LR•IPV4•444『线路377』 -ION,https://securestream11.champds.com/LIVE/GilletteWYLIVE2/GilletteWYLIVE2.m3u8$LR•IPV4•444『线路378』 -ION,https://stream.swagit.com/live-edge/houstontx/smil:hd-16x9-2-a/playlist.m3u8$LR•IPV4•444『线路379』 -ION,https://stream.swagit.com/live-edge/houstontx/smil:hd-16x9-2-b/playlist.m3u8$LR•IPV4•444『线路380』 -ION,https://reflect-jacksonville.cablecast.tv/live-8/live/live.m3u8$LR•IPV4•444『线路381』 -ION,https://cdn3.wowza.com/5/dk84U1p2UUdoMGxT/kern/G0169_003/playlist.m3u8$LR•IPV4•444『线路382』 -ION,https://edge-f.swagit.com/live/longbeachca/live-3-a/playlist.m3u8$LR•IPV4•444『线路383』 -ION,https://castus-vod-dev.s3.amazonaws.com/vod_clients/monroe/live/ch1/video.m3u8$LR•IPV4•444『线路384』 -ION,https://cdn3.wowza.com/5/RXJNMFI3VlVkOEFP/newportbeach/G0064_003/playlist.m3u8$LR•IPV4•444『线路385』 -ION,https://cdn3.wowza.com/5/cXdyRHF0Z3kxN0k2/pinole/G0032_004/playlist.m3u8$LR•IPV4•444『线路386』 -ION,https://livestream.telvue.com/santamariactv1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路387』 -ION,https://d2ferbiwcx1539.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-8zd06wicndthf-ssai-prd/WNNationalSamsung/WNNationalSamsung.m3u8$LR•IPV4•444『线路388』 -ION,https://d1ujfw1zyymzyd.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-a6fukwkbxmex8/live/fast-channel-animevision-64527ec0/fast-channel-animevision-64527ec0.m3u8$LR•IPV4•444『线路389』 -ION,https://d82pyvmcw2kdc.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-swfivzrzwamaq/live/fast-channel-animevisionclassics-efc8dc6d/fast-channel-animevisionclassics-efc8dc6d.m3u8$LR•IPV4•444『线路390』 -ION,https://jmp2.uk/plu-69492467ae33e24d916e56cf.m3u8$LR•IPV4•444『线路391』 -ION,https://rpn.bozztv.com/gusa/gusa-chefchampion/index.m3u8$LR•IPV4•444『线路392』 -ION,https://jmp2.uk/plu-69a9ae4d3bd16a4ed04240d7.m3u8$LR•IPV4•444『线路393』 -ION,https://jmp2.uk/plu-6478a9e4f77b61000817034b.m3u8$LR•IPV4•444『线路394』 -ION,https://jmp2.uk/plu-639b4eb4da3fda0008036f6e.m3u8$LR•IPV4•444『线路395』 -ION,https://jmp2.uk/plu-639b4f14be012600070fe1be.m3u8$LR•IPV4•444『线路396』 -ION,https://cdn4.skygo.mn/live/disk1/Education/DASH-FTA/Education.mpd$LR•IPV4•444『线路397』 -ION,http://223.166.234.114:7777/tsfile/live/1033_1.m3u8$LR•IPV4•444『线路398』 -ION,https://jmp2.uk/plu-67f68bd2135aeda9ddf0ef54.m3u8$LR•IPV4•444『线路399』 -ION,https://jmp2.uk/plu-612f761008a9e50007984ba0.m3u8$LR•IPV4•444『线路400』 -ION,https://jmp2.uk/plu-646b14a0e94c3800082a8d3a.m3u8$LR•IPV4•444『线路401』 -ION,https://jmp2.uk/plu-65d87a66ec9fda0008a5ac11.m3u8$LR•IPV4•444『线路402』 -ION,https://jmp2.uk/plu-65d87fcb66eec8000887f4aa.m3u8$LR•IPV4•444『线路403』 -ION,https://jmp2.uk/plu-65d881d566eec8000887f6bb.m3u8$LR•IPV4•444『线路404』 -ION,https://jmp2.uk/plu-646b14747cb4b1000875724d.m3u8$LR•IPV4•444『线路405』 -ION,https://jmp2.uk/plu-65d87a058145cb0008265c2e.m3u8$LR•IPV4•444『线路406』 -ION,https://jmp2.uk/plu-65d87fa0f7f0af0008b2358b.m3u8$LR•IPV4•444『线路407』 -ION,https://jmp2.uk/plu-65d881b1332fec000833a122.m3u8$LR•IPV4•444『线路408』 -ION,https://jmp2.uk/plu-65df4934f7f0af0008c32545.m3u8$LR•IPV4•444『线路409』 -ION,https://jmp2.uk/plu-646b1404ee6a2f00082b5d66.m3u8$LR•IPV4•444『线路410』 -ION,https://jmp2.uk/plu-65d879bd0d4561000805d190.m3u8$LR•IPV4•444『线路411』 -ION,https://jmp2.uk/plu-65d87f53ec9fda0008a5b810.m3u8$LR•IPV4•444『线路412』 -ION,https://jmp2.uk/plu-65d880cea25d5e0008315b0a.m3u8$LR•IPV4•444『线路413』 -ION,https://jmp2.uk/plu-65df47f428730900089f83ac.m3u8$LR•IPV4•444『线路414』 -ION,https://jmp2.uk/plu-646b14d0e1979c0008915a09.m3u8$LR•IPV4•444『线路415』 -ION,https://jmp2.uk/plu-65d87a908145cb0008265c6d.m3u8$LR•IPV4•444『线路416』 -ION,https://jmp2.uk/plu-65d88004ec9fda0008a5b8b3.m3u8$LR•IPV4•444『线路417』 -ION,https://jmp2.uk/plu-65d882394e01740008a36768.m3u8$LR•IPV4•444『线路418』 -ION,https://jmp2.uk/plu-65df49b30d45610008172c5b.m3u8$LR•IPV4•444『线路419』 -ION,https://jmp2.uk/plu-646b150a15939400089e2702.m3u8$LR•IPV4•444『线路420』 -ION,https://jmp2.uk/plu-646b1438e94c3800082a8cff.m3u8$LR•IPV4•444『线路421』 -ION,https://jmp2.uk/plu-65d879e266eec8000887e91b.m3u8$LR•IPV4•444『线路422』 -ION,https://jmp2.uk/plu-65d87f7a28730900088e7fbf.m3u8$LR•IPV4•444『线路423』 -ION,https://jmp2.uk/plu-65d881914e01740008a36603.m3u8$LR•IPV4•444『线路424』 -ION,https://jmp2.uk/plu-65df48ba28730900089f8480.m3u8$LR•IPV4•444『线路425』 -ION,https://qvc-amd-live.akamaized.net/hls/live/2034113/lsqvc5us/master.m3u8$LR•IPV4•444『线路426』 -ION,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/jewish-life-television-jltv/jltv.m3u8?ads.vf=sDqPiBzBf9O$LR•IPV4•444『线路427』 -ION,https://amg00627-amg00627c40-rakuten-uk-5725.playouts.now.amagi.tv/playlist/amg00627-banijayfast-mrbeanpopupcc-rakutenuk/playlist.m3u8$LR•IPV4•444『线路428』 -ION,https://amg00627-amg00627c39-samsung-gb-5569.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路429』 -ION,https://stream-204968.castr.net/64e0c91d08bff3041638aee3/live_a4243540d4b911f0b624bda5e9a32aa9/index.m3u8$LR•IPV4•444『线路430』 -ION,https://stream-204968.castr.net/64e0c91d08bff3041638aee3/live_a16fa020f4c411f09ddaa1978319689a/index.m3u8$LR•IPV4•444『线路431』 -ION,https://lukentvlive.vgcdn.net/v1/master/cef183924f24adfa3d5d7601c3a17769082c0c2b/Revn/index.m3u8$LR•IPV4•444『线路432』 -ION,http://akariko.netgenx.site/stream/jp/fishing_vision/stream-output.m3u8?mode=hls$LR•IPV4•444『线路433』 -ION,http://108.181.20.255:27347/livehttpplay?channel_id=23088$LR•IPV4•444『线路434』 -ION,http://108.181.20.255:27347/livehttpplay?channel_id=23089$LR•IPV4•444『线路435』 -ION,http://108.181.20.255:27347/livehttpplay?channel_id=23090$LR•IPV4•444『线路436』 -ION,http://108.181.20.255:27347/livehttpplay?channel_id=23091$LR•IPV4•444『线路437』 -ION,http://108.181.20.255:27347/livehttpplay?channel_id=23092$LR•IPV4•444『线路438』 -ION,http://108.181.20.255:27347/livehttpplay?channel_id=23102$LR•IPV4•444『线路439』 -ION,http://iptv.zkbhj.com/tv/url/go?id=4db03e9f679d9326568d74d500a9c5a4f2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•444『线路440』 -ION,https://streams2.sofast.tv/umaxx/v1/0196fcdb0ee01ea506ec1fab16cfab/0196fcdf09931ea5064918d106ecf7/Automotions_eng_2500k.m3u8$LR•IPV4•444『线路441』 -ION,p3p://167.114.175.6:55331/65ac3b2b000a5828b9f89b6271881f96$LR•IPV4•444『线路442』 -ION,https://fash2043.cloudycdn.services/slive/ftv_ftv_4k_hevc_73d_42080_default_466_hls.smil/playlist.m3u8$LR•IPV4•444『线路443』 -ION,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9831&tk=f6cc1e0a0e1a$LR•IPV4•444『线路444』 -Love Nature,https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•8『线路1』 -Love Nature,https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•8『线路2』 -Love Nature,https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•8『线路3』 -Love Nature,http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•8『线路4』 -Love Nature,http://rihou.cc:555/tv/LoveNature$LR•IPV4•8『线路5』 -Love Nature,p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•8『线路6』 -Love Nature,https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•8『线路7』 -Love Nature,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•8『线路8』 +ION,p3p://167.114.175.6:55331/65ac3b2b000a5828b9f89b6271881f96$LR•IPV4•444『线路7』 +ION,https://fash2043.cloudycdn.services/slive/ftv_ftv_4k_hevc_73d_42080_default_466_hls.smil/playlist.m3u8$LR•IPV4•444『线路8』 +ION,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9831&tk=f6cc1e0a0e1a$LR•IPV4•444『线路9』 +ION,https://live-evg8.tv360.bitel.com.pe/bitel/abctelevisionSRT/playlist.m3u8$LR•IPV4•444『线路10』 +ION,https://livestream.telvue.com/accvision1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路11』 +ION,https://edge.essastream.com/aiontelevision/playlist.m3u8$LR•IPV4•444『线路12』 +ION,https://streamlov.alsolnet.com/grupocentrobo/live/playlist.m3u8$LR•IPV4•444『线路13』 +ION,https://srv.panelcast.net/dorian/dorian/playlist.m3u8$LR•IPV4•444『线路14』 +ION,https://viewhn.com/amagatelevision/sdfUYWKegHKRPpSirG/playlist.m3u8$LR•IPV4•444『线路15』 +ION,https://live-bd1.tv360.bitel.com.pe/manifest/america/master_clean_source.m3u8$LR•IPV4•444『线路16』 +ION,https://live-antenne-reunion.zeop.tv/live/c3eds/antreunihd/hls_fta/antreunihd.m3u8?location=ZEOP01$LR•IPV4•444『线路17』 +ION,https://mini.allinonereborn.fun/tata.php?id=11585$LR•IPV4•444『线路18』 +ION,https://canal.aupurtv.co/live/stream/index.m3u8$LR•IPV4•444『线路19』 +ION,https://owrcovcrpy.gpcdn.net/bpk-tv/1715/output/index.m3u8$LR•IPV4•444『线路20』 +ION,https://videostream.shockmedia.com.ar/hls/banivision/banivision.m3u8$LR•IPV4•444『线路21』 +ION,https://d135ohnuotzzyo.cloudfront.net/index.m3u8$LR•IPV4•444『线路22』 +ION,https://tv.arkeo.cl:1936/kymczwbrge/kymczwbrge/playlist.m3u8$LR•IPV4•444『线路23』 +ION,https://tigocloudgen.desdeparaguay.net/satelitaltv/satelitaltv/playlist.m3u8$LR•IPV4•444『线路24』 +ION,https://twitch-m3u8.bastypro112.workers.dev/plustelevisionbolivia/index.m3u8$LR•IPV4•444『线路25』 +ION,https://live-evg10.tv360.bitel.com.pe/bitel/anqaratv/playlist.m3u8$LR•IPV4•444『线路26』 +ION,https://live20.bozztv.com/akamaissh101/ssh101/canalmulti24/playlist.m3u8$LR•IPV4•444『线路27』 +ION,https://strhlslb01.streamakaci.tv/cen/cen-multi/playlist.m3u8$LR•IPV4•444『线路28』 +ION,https://5790d294af2dc.streamlock.net/cenovision/cenovision/playlist.m3u8$LR•IPV4•444『线路29』 +ION,http://38.250.127.17:9800/play/a05h/index.m3u8$LR•IPV4•444『线路30』 +ION,https://5790d294af2dc.streamlock.net/tvhdlive/tvhdlive/playlist.m3u8$LR•IPV4•444『线路31』 +ION,http://maxotts.maxdigitaltv.com/x-media/C209/master.m3u8$LR•IPV4•444『线路32』 +ION,http://190.122.104.210:5080/LiveApp/streams/cvision1.m3u8$LR•IPV4•444『线路33』 +ION,https://radio.congoplanet.com/Congo_Planet_TV.sdp/Congo_Planet_TV/playlist.m3u8$LR•IPV4•444『线路34』 +ION,https://stream.arcast.net:4443/correadigital/canal12/playlist.m3u8$LR•IPV4•444『线路35』 +ION,https://lbgo.bozztv.com/ssh101/ssh101/Cosmovisi%C3%B3n/playlist.m3u8$LR•IPV4•444『线路36』 +ION,https://tv.picta.cu/cubavision/cubavision_0.m3u8$LR•IPV4•444『线路37』 +ION,https://tv.picta.cu/cvi/cvi_0.m3u8$LR•IPV4•444『线路38』 +ION,https://eu1.servers10.com:8081/8128/index.m3u8$LR•IPV4•444『线路39』 +ION,http://maxotts.maxdigitaltv.com/x-media/C117/master.m3u8$LR•IPV4•444『线路40』 +ION,https://ss2.tvrdomi.com:1936/digitalvision/digitalvision/playlist.m3u8$LR•IPV4•444『线路41』 +ION,https://rtmp.win:3650/live/diontvlive.m3u8$LR•IPV4•444『线路42』 +ION,https://live20.bozztv.com/giatv/giatv-doblec1/doblec1/playlist.m3u8$LR•IPV4•444『线路43』 +ION,https://vs20.live.opencaster.com/duacavision_092f3447/index.m3u8$LR•IPV4•444『线路44』 +ION,https://live-evg11.tv360.bitel.com.pe/bitel/ecotv/playlist.m3u8$LR•IPV4•444『线路45』 +ION,https://edge.essastream.com/enntivision/playlist.m3u8$LR•IPV4•444『线路46』 +ION,https://stream.haislin.com/entelevision/index.m3u8$LR•IPV4•444『线路47』 +ION,https://kali.vdopanel.com:3090/hybrid/play.m3u8$LR•IPV4•444『线路48』 +ION,https://stmv2.voxtvhd.com.br/evavision/evavision/playlist.m3u8$LR•IPV4•444『线路49』 +ION,https://edgectc.com/CTC_SAN_RAFAEL/index.m3u8$LR•IPV4•444『线路50』 +ION,https://panel.freedomflixtv.org:3868/hybrid/play.m3u8$LR•IPV4•444『线路51』 +ION,https://reflect-watchkfon-fontana.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路52』 +ION,https://fox.hostlagarto.com:8081/ghtelevision/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路53』 +ION,https://securestream11.champds.com/LIVE/GilletteWYLIVE/GilletteWYLIVE.m3u8$LR•IPV4•444『线路54』 +ION,http://181.78.8.199:8000/play/a09k/index.m3u8$LR•IPV4•444『线路55』 +ION,https://reflect-golden-co.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路56』 +ION,https://cdn.streamingcpanel.com:3447/live/hainavisionlive.m3u8$LR•IPV4•444『线路57』 +ION,https://rpn.bozztv.com/ignitelive/ignitetv/ignitetv/playlist.m3u8$LR•IPV4•444『线路58』 +ION,https://np.truestreamz.com/broadcaster/INDIGENOUSmob.stream/playlist.m3u8$LR•IPV4•444『线路59』 +ION,https://mist01.homestream.fun/hls/interactivotv/index.m3u8$LR•IPV4•444『线路60』 +ION,https://ap02.iqplay.tv:8082/iqb8002/i09/playlist.m3u8$LR•IPV4•444『线路61』 +ION,https://kctv.koryofront.org/stream/index.m3u8$LR•IPV4•444『线路62』 +ION,https://streamer.nknews.org/tvdash/stream.mpd$LR•IPV4•444『线路63』 +ION,http://playcom.trapemn.tv:1935/transcoderip/lanacionplus.stream/playlist.m3u8$LR•IPV4•444『线路64』 +ION,https://cloud5.larivision.net/hls/live.m3u8$LR•IPV4•444『线路65』 +ION,https://5790d294af2dc.streamlock.net/manaclar/manaclar/playlist.m3u8$LR•IPV4•444『线路66』 +ION,https://twitch-m3u8.bastypro112.workers.dev/megavisionbo/index.m3u8$LR•IPV4•444『线路67』 +ION,https://edge.essastream.com/miavisiontv/playlist.m3u8$LR•IPV4•444『线路68』 +ION,https://streaming.telecablecentral.com.do/live/MicroHD/playlist.m3u8$LR•IPV4•444『线路69』 +ION,https://685c08ed6d81a.streamlock.net/live/mp4:MCTV_aac/playlist.m3u8$LR•IPV4•444『线路70』 +ION,https://stream.castr.com/5da89a909db964293ad13301/live_4e9cefb0652111f18e12cf968e79335c/index.fmp4.m3u8$LR•IPV4•444『线路71』 +ION,https://tv.picta.cu/multivision/multivision_1.m3u8$LR•IPV4•444『线路72』 +ION,https://cnn.hostlagarto.com/musavisiontv/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路73』 +ION,https://cnn.hostlagarto.com/ntvnavarrete/index.m3u8$LR•IPV4•444『线路74』 +ION,https://livestream.telvue.com/nctv791/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路75』 +ION,https://2-fss-1.streamhoster.com/pl_122/201748-1431018-1/playlist.m3u8$LR•IPV4•444『线路76』 +ION,https://tv.arkeo.cl:1936/nublevision/nublevision/playlist.m3u8$LR•IPV4•444『线路77』 +ION,https://live20.bozztv.com/akamaissh101/ssh101/nuevavisionhd/playlist.m3u8$LR•IPV4•444『线路78』 +ION,https://eu1.servers10.com:8081/8258/index.m3u8$LR•IPV4•444『线路79』 +ION,https://securestream10.champds.com/LIVE/KOCTCALIVE/KOCTCALIVE.m3u8$LR•IPV4•444『线路80』 +ION,https://us.streaminghd.cl/pacificotelevision/video.m3u8$LR•IPV4•444『线路81』 +ION,https://vs20.live.opencaster.com/panche_3c70d368/index.m3u8$LR•IPV4•444『线路82』 +ION,http://45.184.109.10/live/69393EAE6ADBC65A68F942022362A202/120.m3u8$LR•IPV4•444『线路83』 +ION,https://ss2.tvrdomi.com:1936/peraviavision/peraviavision/playlist.m3u8$LR•IPV4•444『线路84』 +ION,https://cdn3.wowza.com/5/cXdyRHF0Z3kxN0k2/pinole/G0032_002/playlist.m3u8$LR•IPV4•444『线路85』 +ION,https://live.kwikmotion.com/qtv1live/qtv1.smil/playlist.m3u8$LR•IPV4•444『线路86』 +ION,https://live.kwikmotion.com/qtv2live/qtv2.smil/playlist.m3u8$LR•IPV4•444『线路87』 +ION,https://vdopanel.jlahozconsulting.com/p/3142/hybrid/play.m3u8$LR•IPV4•444『线路88』 +ION,https://lbgo.bozztv.com/ssh101/ssh101/ratvbol/playlist.m3u8$LR•IPV4•444『线路89』 +ION,https://azura2.bitstreaming.net/hls/kollasuyo3/live.m3u8$LR•IPV4•444『线路90』 +ION,https://watch.haitilive.net/freehb/rtvs/index.m3u8$LR•IPV4•444『线路91』 +ION,https://live-evg10.tv360.bitel.com.pe/bitel/realtv/playlist.m3u8$LR•IPV4•444『线路92』 +ION,https://streamunoapp.com:3331/live/rocavisiontvlive.m3u8$LR•IPV4•444『线路93』 +ION,https://livestream.telvue.com/santamariactv3/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路94』 +ION,https://soportedvb.click:3668/live/simavisiontvlive.m3u8$LR•IPV4•444『线路95』 +ION,https://livestream.telvue.com/soundviewcmt2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路96』 +ION,https://k20.usastreams.com:8081/telered/index.m3u8$LR•IPV4•444『线路97』 +ION,http://server2grupocam.com:1945/teleunion/TU/playlist.m3u8$LR•IPV4•444『线路98』 +ION,https://twitch-m3u8.bastypro112.workers.dev/radiosangabrielbolivia/index.m3u8$LR•IPV4•444『线路99』 +ION,https://live.kingdom-tv.com:3545/stream/play.m3u8$LR•IPV4•444『线路100』 +ION,https://cdn140m.panaccess.com/HLS/Espoir47/index.m3u8$LR•IPV4•444『线路101』 +ION,https://viewhn.com/canal30/live/playlist.m3u8$LR•IPV4•444『线路102』 +ION,https://live-evg11.tv360.bitel.com.pe/bitel/tvtarapotoSRT/playlist.m3u8$LR•IPV4•444『线路103』 +ION,https://5eac7b031d945.streamlock.net/TICAVISION/TICAVISION/playlist.m3u8$LR•IPV4•444『线路104』 +ION,https://liveingesta118.cdnmedia.tv/trivisionlive/rtmp01-900/chunklist.m3u8?DVR=$LR•IPV4•444『线路105』 +ION,https://rpn.bozztv.com/gusa/gusa-tvstn/index.m3u8$LR•IPV4•444『线路106』 +ION,https://5ff3d9babae13.streamlock.net/ubyecbxnfd/ubyecbxnfd/playlist.m3u8$LR•IPV4•444『线路107』 +ION,https://vallejo.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路108』 +ION,https://streaming.telecablecentral.com.do/Vallevision/ValleHD/playlist.m3u8$LR•IPV4•444『线路109』 +ION,https://reflect-vsctv.cablecast.tv/live-3/live/live.m3u8$LR•IPV4•444『线路110』 +ION,https://fox.hostlagarto.com:8081/canal26/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路111』 +ION,http://181.78.8.199:8000/play/a0if/index.m3u8$LR•IPV4•444『线路112』 +ION,http://181.78.8.199:8000/play/a091/index.m3u8$LR•IPV4•444『线路113』 +ION,https://ss2.tvrdomi.com:1936/vision3000/vision3000/playlist.m3u8$LR•IPV4•444『线路114』 +ION,https://media.streambrothers.com:19360/8308/8308.m3u8$LR•IPV4•444『线路115』 +ION,https://cloudsavre.in.net/hls/stream.m3u8$LR•IPV4•444『线路116』 +ION,https://live-evg5.tv360.bitel.com.pe/bitel/yurivisionSRT/playlist.m3u8$LR•IPV4•444『线路117』 +ION,https://ds.tvabierta.net/memfs/b295f254-7af9-45e4-bfc6-7e0bba41929d.m3u8$LR•IPV4•444『线路118』 +ION,http://akariko.netgenx.site/stream/jp/fishing_vision/stream-output.m3u8?mode=hls$LR•IPV4•444『线路119』 +ION,http://108.181.20.255:27347/livehttpplay?channel_id=23088$LR•IPV4•444『线路120』 +ION,http://108.181.20.255:27347/livehttpplay?channel_id=23089$LR•IPV4•444『线路121』 +ION,http://108.181.20.255:27347/livehttpplay?channel_id=23090$LR•IPV4•444『线路122』 +ION,http://108.181.20.255:27347/livehttpplay?channel_id=23091$LR•IPV4•444『线路123』 +ION,http://108.181.20.255:27347/livehttpplay?channel_id=23092$LR•IPV4•444『线路124』 +ION,http://108.181.20.255:27347/livehttpplay?channel_id=23102$LR•IPV4•444『线路125』 +ION,http://iptv.zkbhj.com/tv/url/go?id=4db03e9f679d9326568d74d500a9c5a4f2325e82e1723382000c25c9009b1449703a53d8cb741b92224765715d1a7388d43b8da7f422852ecf86f83de913c00f$LR•IPV4•444『线路126』 +ION,https://streams2.sofast.tv/umaxx/v1/0196fcdb0ee01ea506ec1fab16cfab/0196fcdf09931ea5064918d106ecf7/Automotions_eng_2500k.m3u8$LR•IPV4•444『线路127』 +ION,http://actionlive.siliconweb.com/actionabr/actiontv/playlist.m3u8$LR•IPV4•444『线路128』 +ION,http://rezofoot.tv/Action/index.m3u8$LR•IPV4•444『线路129』 +ION,https://dqi7ayt2o24fn.cloudfront.net/playlist.m3u8$LR•IPV4•444『线路130』 +ION,http://213.91.179.28:8000/play/a04n$LR•IPV4•444『线路131』 +ION,https://jmp2.uk/plu-5f8ed1ff5c39700007e2204a.m3u8$LR•IPV4•444『线路132』 +ION,https://webtvstream.bhtelecom.ba/hls7/filmbox_extra.m3u8$LR•IPV4•444『线路133』 +ION,http://213.91.179.28:8000/play/a04r$LR•IPV4•444『线路134』 +ION,http://88.212.15.19/live/test_film_boxextra_hd_hevc/playlist.m3u8$LR•IPV4•444『线路135』 +ION,http://46.149.191.217:9005/play/a01j$LR•IPV4•444『线路136』 +ION,http://31.222.235.15/mosfilm/index.m3u8$LR•IPV4•444『线路137』 +ION,https://shd-amg-fast.edgenextcdn.net/tx011/playlist.m3u8$LR•IPV4•444『线路138』 +ION,http://116.90.120.151:8000/play/a0ax/index.m3u8$LR•IPV4•444『线路139』 +ION,https://jmp2.uk/plu-561d7d484dc7c8770484914a.m3u8$LR•IPV4•444『线路140』 +ION,https://jmp2.uk/plu-62ea3c2e4823db00072788ed.m3u8$LR•IPV4•444『线路141』 +ION,https://jmp2.uk/plu-617b37b361e0fd0008cfd8c5.m3u8$LR•IPV4•444『线路142』 +ION,https://0f846627524f4dd2995e93581379db82.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung-at_RakutenActionMovies-1/playlist.m3u8$LR•IPV4•444『线路143』 +ION,https://bca5a421a70c46ad911efd0a4767c4bf.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6075/master.m3u8$LR•IPV4•444『线路144』 +ION,https://284824cf70404fdfb6ddf9349009c710.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6066/master.m3u8$LR•IPV4•444『线路145』 +ION,https://87f2e2e5e7624e3bad85da1ca2ed31a7.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6067/master.m3u8$LR•IPV4•444『线路146』 +ION,https://a9c57ec7ec5e4b7daeacc6316a0bb404.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6069/master.m3u8$LR•IPV4•444『线路147』 +ION,https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•444『线路148』 +ION,https://cc-yw7ztecy8do3q.akamaized.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-yw7ztecy8do3q/SS_IN.m3u8$LR•IPV4•444『线路149』 +ION,https://edge4-moblive.yuppcdn.net/trans1sd/smil:strtml19.smil/playlist.m3u8?dvr=$LR•IPV4•444『线路150』 +ION,https://stream8.cinerama.uz/1225/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路151』 +ION,https://dbrb49pjoymg4.cloudfront.net/10001/99991745/hls/master.m3u8?ads.xumo_channelId=99991745$LR•IPV4•444『线路152』 +ION,https://stmv6.voxtvhd.com.br/cineaccion/cineaccion/playlist.m3u8$LR•IPV4•444『线路153』 +ION,http://103.72.101.252:8080/live/488.m3u8$LR•IPV4•444『线路154』 +ION,https://rakutenaa-zylo-emotional-rakuten-r1zkm.amagi.tv/playlist/rakutenAA-zylo-emotional-rakuten/playlist.m3u8$LR•IPV4•444『线路155』 +ION,https://content.jwplatform.com/live/broadcast/oe7UD7Ag.m3u8$LR•IPV4•444『线路156』 +ION,https://30a-tv.com/ln.m3u8$LR•IPV4•444『线路157』 +ION,https://stream.berosat.live:19360/baraka-hd/baraka-hd.m3u8$LR•IPV4•444『线路158』 +ION,https://ss2.tvrdomi.com:1936/carivision/carivision/playlist.m3u8$LR•IPV4•444『线路159』 +ION,https://edge.enhdtv.com/cn3/index.m3u8$LR•IPV4•444『线路160』 +ION,https://unlimited6-cl.dps.live/cm/cm.smil/playlist.m3u8$LR•IPV4•444『线路161』 +ION,https://stream.logichost.in/kannurvision/live/playlist.m3u8$LR•IPV4•444『线路162』 +ION,https://gjirafa-video-live.gjirafa.net/gjvideo-livestream/lj9-pxm-o53-rp0/tracks-v4a1/mono.m3u8$LR•IPV4•444『线路163』 +ION,https://lencatelevision.com/hls/stream.m3u8$LR•IPV4•444『线路164』 +ION,https://streamer2.nexgen.bz/01-LOVE/index.m3u8$LR•IPV4•444『线路165』 +ION,https://panel.host-live.com:19360/8250/8250.m3u8$LR•IPV4•444『线路166』 +ION,https://nationtv-1jdcjo.cdn.byteark.com/fleetstream/nationtvlive/index.m3u8$LR•IPV4•444『线路167』 +ION,https://d3qs3d2rkhfqrt.cloudfront.net/out/v1/6cd2f649739a45ca9de1daf81cc7d0f2/index.m3u8$LR•IPV4•444『线路168』 +ION,https://edge.essastream.com/televisiondeleste/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路169』 +ION,http://rtmp.logichost.in:1935/timevision/timevision/playlist.m3u8$LR•IPV4•444『线路170』 +ION,http://vg-zeefta.akamaized.net/ptnr-yupptv/title-wion/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/20c3c0d9-0256-43fe-bca6-70fdd490b957/main.m3u8$LR•IPV4•444『线路171』 +ION,https://endour.net/hls/One_nationtv/index.m3u8$LR•IPV4•444『线路172』 +ION,https://30a-tv.com/feeds/masters/30atv.m3u8$LR•IPV4•444『线路173』 +ION,https://live.amelbatv.co:81/anctvlive/index.m3u8$LR•IPV4•444『线路174』 +ION,https://jmp2.uk/plu-5ede45d077746000072be0fe.m3u8$LR•IPV4•444『线路175』 +ION,https://jmp2.uk/plu-62ac50e92c48f900071444c9.m3u8$LR•IPV4•444『线路176』 +ION,https://fox.hostlagarto.com:8081/bellavision8hd/tracks-v1a1/mono.m3u8$LR•IPV4•444『线路177』 +ION,https://live.cineramatvbo.com/hls/stream.m3u8$LR•IPV4•444『线路178』 +ION,http://23.237.104.106:8080/USA_CRIME_INVESTIGATION/index.m3u8$LR•IPV4•444『线路179』 +ION,https://cdn09jtedge.indihometv.com/joss/133/crimeinvestigation/index.m3u8$LR•IPV4•444『线路180』 +ION,http://88.212.15.19/live/test_cai_hevc/playlist.m3u8$LR•IPV4•444『线路181』 +ION,https://canal.gitelevisionserver.com/live/DIEEFIh506fL8huspvl0f0c2PZF3/index.m3u8$LR•IPV4•444『线路182』 +ION,https://pb-xhb3ic8b61whm.akamaized.net/Ion_US.m3u8$LR•IPV4•444『线路183』 +ION,https://jmp2.uk/plu-6728c831c7626f0008b28127.m3u8$LR•IPV4•444『线路184』 +ION,https://jmp2.uk/plu-6728c87cc7626f0008b28149.m3u8$LR•IPV4•444『线路185』 +ION,https://jmp2.uk/plu-6728c8b45534bb0008b31f35.m3u8$LR•IPV4•444『线路186』 +ION,https://mumt03.tangotv.in/KERALAVISION/index.m3u8$LR•IPV4•444『线路187』 +ION,https://j78dpa3edq5r-hls-live.5centscdn.com/abr/0864028584026e6ad9cdf922473177a4/playlist.m3u8$LR•IPV4•444『线路188』 +ION,https://makrodigitaltv.makrodigital.com/makrodigitaltelevision/iptv/playlist.m3u8$LR•IPV4•444『线路189』 +ION,http://41.223.30.230/PASSIONTV/index.m3u8$LR•IPV4•444『线路190』 +ION,https://jmp2.uk/plu-62f3e0522443200008c567d7.m3u8$LR•IPV4•444『线路191』 +ION,http://stb-air.wasmer.app/play.php?id=LIVETV_LIVETVCHANNEL_SET_HD&pass=krish-ka&uid=gana-sunega$LR•IPV4•444『线路192』 +ION,https://origin-de-y376549.cdn.nextologies.com:444/4c3caf7294b3/fbbd0aee3d9a8260/playlist.m3u8$LR•IPV4•444『线路193』 +ION,https://soportedvb.click:3891/live/visionndvlive.m3u8$LR•IPV4•444『线路194』 +ION,https://tele-stream.telecasa.net/live/st1/yunavision-hd/index.m3u8$LR•IPV4•444『线路195』 +ION,https://stream.sen-gt.com/A2iReligion/myStream/playlist.m3u8$LR•IPV4•444『线路196』 +ION,https://627bb251f23c7.streamlock.net:444/Alientoenvivo/Alientoenvivo/playlist.m3u8$LR•IPV4•444『线路197』 +ION,https://live-evg7.tv360.bitel.com.pe/bitel/andestvSRT/playlist.m3u8$LR•IPV4•444『线路198』 +ION,http://streamer02.nbo1.angani.co:1935/aviationtv/myStream/playlist.m3u8$LR•IPV4•444『线路199』 +ION,https://streamer1.nexgen.bz/ATN/index.m3u8$LR•IPV4•444『线路200』 +ION,https://s.emisoras.tv:8081/bendicionchannel/index.m3u8$LR•IPV4•444『线路201』 +ION,https://cdn1.cmbcolombia.tv/bethesda/video.m3u8$LR•IPV4•444『线路202』 +ION,https://tnt-television.com/COMPASSION_FM/index.m3u8$LR•IPV4•444『线路203』 +ION,https://tvstream.conexionpositivaradio.com/memfs/69239c4d-4116-4f4f-b065-bf17e81b1411.m3u8$LR•IPV4•444『线路204』 +ION,https://3a310f6ec721e6b362fcd22772b57f36a2fe6bb2.tabeelcr.com:8080/cristovision31/iptv.m3u8$LR•IPV4•444『线路205』 +ION,https://5fc584f3f19c9.streamlock.net/cristovision/videocristovision/playlist.m3u8$LR•IPV4•444『线路206』 +ION,https://video1.getstreamhosting.com:1936/8226/8226/playlist.m3u8$LR•IPV4•444『线路207』 +ION,https://1206618505.rsc.cdn77.org/LS-ATL-59020-1/playlist.m3u8$LR•IPV4•444『线路208』 +ION,https://vs20.live.opencaster.com/lasalvaciondelalmatv_dfc663c0/index.m3u8$LR•IPV4•444『线路209』 +ION,https://streamtv.intervenhosting.net:3403/hybrid/play.m3u8$LR•IPV4•444『线路210』 +ION,https://1601580044.rsc.cdn77.org/live/_jcn_/amlst:CHANNEL_2/playlist.m3u8$LR•IPV4•444『线路211』 +ION,https://eu1.servers10.com:8081/8338/index.m3u8$LR•IPV4•444『线路212』 +ION,https://rd.tvabierta.net/live/misioneltv.m3u8$LR•IPV4•444『线路213』 +ION,https://livecdn.live247stream.com/missionasia/tv/playlist.m3u8$LR•IPV4•444『线路214』 +ION,https://6096a9cf11ae5.streamlock.net:1943/live/missiontv/playlist.m3u8$LR•IPV4•444『线路215』 +ION,https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_027/Stream/playlist.m3u8$LR•IPV4•444『线路216』 +ION,https://storage.sardius.media/archives/-KyMV-J0vDqnClcSXs8p/events/site_1a4721d3BA/playlist.m3u8$LR•IPV4•444『线路217』 +ION,https://live.nixsat.com/play/rtm/index.m3u8$LR•IPV4•444『线路218』 +ION,https://ktismaservers.in:3902/live/salvationtvlive.m3u8$LR•IPV4•444『线路219』 +ION,https://tv.streamcasthd.com:3536/live/siontvlive.m3u8$LR•IPV4•444『线路220』 +ION,https://ss2.tvrdomi.com:1936/telebendicion/telebendicion/playlist.m3u8$LR•IPV4•444『线路221』 +ION,https://lbgo.bozztv.com/ssh101/ssh101/visiononline/playlist.m3u8$LR•IPV4•444『线路222』 +ION,https://jk3lzkn4lw79-hls-live.5centscdn.com/VTN2/bcaafe9ad8d42834b08e762ac58596b8.sdp/playlist.m3u8$LR•IPV4•444『线路223』 +ION,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1153$LR•IPV4•444『线路224』 +ION,https://amg01076-lightningintern-actionhollywood-samsungau-rs69y.amagi.tv/playlist/amg01076-lightningintern-actionhollywood-samsungau/playlist.m3u8$LR•IPV4•444『线路225』 +ION,https://cdn-apse1-prod.tsv2.amagi.tv/linear/amg01076-lightningintern-actionhollywood-samsungnz/playlist.m3u8$LR•IPV4•444『线路226』 +ION,https://actionhollywood-klowdtv.amagi.tv/playlist.m3u8$LR•IPV4•444『线路227』 +ION,https://linear-888.frequency.stream/dist/xumo/888/hls/master/playlist.m3u8$LR•IPV4•444『线路228』 +ION,https://aegis-cloudfront-1.tubi.video/baa32c24-e707-4bf8-9f81-d26eb6baa3dc/playlist.m3u8$LR•IPV4•444『线路229』 +ION,https://jmp2.uk/plu-65a7d99f4a10d800086083a9.m3u8$LR•IPV4•444『线路230』 +ION,https://streams2.sofast.tv/sofastplayout/0c3229e2-6ca5-4714-859e-c0ac6b9aa58a_0_HLS/master.m3u8$LR•IPV4•444『线路231』 +ION,https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/9a4a5412-ca99-48d3-9013-d1811b95b9d2/manifest.m3u8$LR•IPV4•444『线路232』 +ION,https://cdn3.wowza.com/5/V2Y2VmhqMEFDTUkx/beverlyhills/G0072_006/playlist.m3u8$LR•IPV4•444『线路233』 +ION,https://cdn3.wowza.com/5/V2Y2VmhqMEFDTUkx/beverlyhills/G0072_007/playlist.m3u8$LR•IPV4•444『线路234』 +ION,https://jmp2.uk/plu-611f85396abc84000738417b.m3u8$LR•IPV4•444『线路235』 +ION,https://a-cdn.klowdtv.com/live3/blackenterprise_720p/playlist.m3u8$LR•IPV4•444『线路236』 +ION,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/cjc-television-network/55e06661da359ab51bbb2d563521f4b2.m3u8?ads.vf=MyS88Juu55G$LR•IPV4•444『线路237』 +ION,https://radio.congoplanet.com/Congo_Planet_TV_Pop.sdp/Congo_Planet_TV_Pop/playlist.m3u8$LR•IPV4•444『线路238』 +ION,https://ssh101.bozztv.com/ssh101/dtelevision/playlist.m3u8$LR•IPV4•444『线路239』 +ION,https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/453971f3-855a-455e-9353-ebbb069583a4/manifest.m3u8$LR•IPV4•444『线路240』 +ION,https://streams2.sofast.tv/sofastplayout/7e8d2a51-985d-4e76-bf7e-91edf0aa6e5f_0_HLS/master.m3u8$LR•IPV4•444『线路241』 +ION,https://linear-1066.frequency.stream/dist/stirr/1066/hls/master/playlist.m3u8$LR•IPV4•444『线路242』 +ION,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/elevation-church-network/playlist.m3u8?ads.vf=-Zd8ogbOmAi$LR•IPV4•444『线路243』 +ION,https://amg00276-amg00276c15-samsung-gb-3790.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路244』 +ION,https://jmp2.uk/plu-6661739641af6400080cd8f1.m3u8$LR•IPV4•444『线路245』 +ION,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883113$LR•IPV4•444『线路246』 +ION,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•444『线路247』 +ION,https://a64543d5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX0ZsaXBwaW5nTmF0aW9uX0hMUw/playlist.m3u8$LR•IPV4•444『线路248』 +ION,https://d3795432.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GbGlwcGluZ05hdGlvbl9ITFM/playlist.m3u8$LR•IPV4•444『线路249』 +ION,https://d21mkcgtx2frod.cloudfront.net/v1/aenetworks_flippingnation_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•444『线路250』 +ION,https://production-fastbpk.content.okast.tv/fa2e8c4385712f9aa35c5b79a2b4ac2d/channels/eec463a6-4364-473b-8d89-555acc5b8fb2/e36e4304-73ff-4f9f-8d38-e748576a1f51/media_.m3u8$LR•IPV4•444『线路251』 +ION,https://jmp2.uk/plu-60afb203ec391c00070ea1bf.m3u8$LR•IPV4•444『线路252』 +ION,https://tv2.bitstreaming.net:3576/multi_live/play.m3u8$LR•IPV4•444『线路253』 +ION,https://dtz4aepbew7ez.cloudfront.net/hotwh.m3u8$LR•IPV4•444『线路254』 +ION,https://sc1.wasidata.com/Imperial/index.m3u8$LR•IPV4•444『线路255』 +ION,https://fast-rakuten.okast.tv/fa2e8c4385712f9a3b579747e448699c/channels/34d82f76-b51f-4bf5-9b35-769fb5904e79/a4226699-b685-4f5d-9cb6-2a6cac14c377/media_.m3u8$LR•IPV4•444『线路256』 +ION,https://live-evg5.tv360.bitel.com.pe/bitel/inkavisionSRT/playlist.m3u8$LR•IPV4•444『线路257』 +ION,https://amg00276-amg00276c17-samsung-gb-3791.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路258』 +ION,https://pb-5kduxc2en4kdz.akamaized.net/Intervention_by_AE.m3u8$LR•IPV4•444『线路259』 +ION,https://amg00346-vizioono-amg00346c2-distrotv-us-1396.playouts.now.amagi.tv/playlist/amg00346-vizioincfast-investigation-distrotvus/playlist.m3u8$LR•IPV4•444『线路260』 +ION,https://amg00346-vizioono-investigation-xumo-us.amagi.tv/playlist.m3u8$LR•IPV4•444『线路261』 +ION,https://jmp2.uk/plu-65453f30085df200085883d8.m3u8$LR•IPV4•444『线路262』 +ION,https://aegis-cloudfront-1.tubi.video/3b6afc3b-97f7-4f22-99f4-7bcff60fc39d/playlist.m3u8$LR•IPV4•444『线路263』 +ION,https://pb-usmbvsgwcg8pc.akamaized.net/Ion_Mystery_US.m3u8$LR•IPV4•444『线路264』 +ION,https://hls.irannrtv.live/hls/stream.m3u8$LR•IPV4•444『线路265』 +ION,https://82934cf9c8696bd2.mediapackage.us-east-1.amazonaws.com/out/v1/72b5a55e4c35445f9e742871aa0aefa2/index.m3u8$LR•IPV4•444『线路266』 +ION,https://d30q6vjmdwhh1y.cloudfront.net/LocationLocationLocation_GB.m3u8$LR•IPV4•444『线路267』 +ION,https://pb-tc6lcocnesxgi.akamaized.net/playlist.m3u8$LR•IPV4•444『线路268』 +ION,https://jmp2.uk/plu-677fb3432952c1163bf1a539.m3u8$LR•IPV4•444『线路269』 +ION,https://xumo-xumoent-ch838-coy7x.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路270』 +ION,https://jmp2.uk/plu-6549322e53fc97000838febc.m3u8$LR•IPV4•444『线路271』 +ION,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/motorvision-tv-espanol/mv_es.m3u8?ads.vf=-bwCJuiaCt8$LR•IPV4•444『线路272』 +ION,https://d1yhx4ygpfwmgm.cloudfront.net/v1/fast/nesnsamsungtvplus/772bf582-9476-4a30-a4c4-ba1c0839f167.m3u8$LR•IPV4•444『线路273』 +ION,https://d14kyo3ex6k293.cloudfront.net/playlist.m3u8$LR•IPV4•444『线路274』 +ION,https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/ea1ad8da-7c74-4dc3-999f-15088a0d942a/manifest.m3u8$LR•IPV4•444『线路275』 +ION,https://dikkyk1ckkhzq.cloudfront.net/RabiddsInvasion_GB.m3u8$LR•IPV4•444『线路276』 +ION,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/radioromatv.m3u8$LR•IPV4•444『线路277』 +ION,https://01ac9352fbfa4204998783d41f9b1a2e.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6068/master.m3u8$LR•IPV4•444『线路278』 +ION,https://live-evg7.tv360.bitel.com.pe/bitel/regiontvSRT/playlist.m3u8$LR•IPV4•444『线路279』 +ION,https://1681360479.rsc.cdn77.org/1681360479/index.m3u8$LR•IPV4•444『线路280』 +ION,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/RHT6XGG6VHZA0P8T1MGX/hls3/now,-1m/m.m3u8?ads.vf=xV5XOQG_ptm$LR•IPV4•444『线路281』 +ION,https://scl.edge.grupoz.cl/rtcstreaming/live/playlist.m3u8$LR•IPV4•444『线路282』 +ION,https://viewmedia7219.bozztv.com/wmedia/viewmedia100/web_017/Stream/playlist.m3u8$LR•IPV4•444『线路283』 +ION,https://stream.lamegatv.com/hls/sanvitotelevision/index.m3u8$LR•IPV4•444『线路284』 +ION,https://5ff3d9babae13.streamlock.net/fzkqsdfray/fzkqsdfray/playlist.m3u8$LR•IPV4•444『线路285』 +ION,https://jmp2.uk/plu-68e38b005c876cf730fcbf0f.m3u8$LR•IPV4•444『线路286』 +ION,https://live-evg11.tv360.bitel.com.pe/bitel/solartvSRT/playlist.m3u8$LR•IPV4•444『线路287』 +ION,https://2-fss-1.streamhoster.com/pl_122/206858-4412976-1/chunklist.m3u8$LR•IPV4•444『线路288』 +ION,https://live.cmr24.fm/TVI/HD/chunks.m3u8$LR•IPV4•444『线路289』 +ION,https://xumo-drct-ch835-ekq0p.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路290』 +ION,https://d1oyt3v08gcy18.cloudfront.net/index-events.m3u8$LR•IPV4•444『线路291』 +ION,https://mediacp.nnw.cl:19360/temucotelevision/temucotelevision.m3u8$LR•IPV4•444『线路292』 +ION,https://videohd.live:19360/8008/8008.m3u8$LR•IPV4•444『线路293』 +ION,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/M43FCP9IGELUIOH4IAVQ/hls3/now,-1m/m.m3u8?ads.vf=dkc6PGrkc0i$LR•IPV4•444『线路294』 +ION,http://45.5.119.43:4000/play/a0jj/index.m3u8$LR•IPV4•444『线路295』 +ION,https://panel.tvstream.cl:1936/sdaumqtfqf/sdaumqtfqf/playlist.m3u8$LR•IPV4•444『线路296』 +ION,https://s2.tvdatta.com:3687/hybrid/play.m3u8$LR•IPV4•444『线路297』 +ION,https://live-evg11.tv360.bitel.com.pe/bitel/utv/playlist.m3u8$LR•IPV4•444『线路298』 +ION,https://xumo-xumoent-ch828-w6val.fast.nbcuni.com/live/master.m3u8$LR•IPV4•444『线路299』 +ION,https://jmp2.uk/plu-654933e253fc970008390114.m3u8$LR•IPV4•444『线路300』 +ION,http://138.121.15.230:9002/UNIVISION/index.m3u8$LR•IPV4•444『线路301』 +ION,http://provedores.unsion.tv:8081/srt/1/playlist.m3u8$LR•IPV4•444『线路302』 +ION,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/58XXIGAFT3S6VSMD82AP/hls3/now,-1m/m.m3u8?ads.vf=eieiHoUaPzC$LR•IPV4•444『线路303』 +ION,https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/7ad8ce96-5a3f-413e-ae15-7c2cef7bc8f8/manifest.m3u8$LR•IPV4•444『线路304』 +ION,https://streaming.proceso.info:8888/vision6-web/stream.m3u8$LR•IPV4•444『线路305』 +ION,https://tv.arkeo.cl:1936/8044/8044/playlist.m3u8$LR•IPV4•444『线路306』 +ION,https://vosgestv.live-kd.com/live/vosgestv/vosgestv/playlist.m3u8$LR•IPV4•444『线路307』 +ION,https://live-manifest.production-public.tubi.io/live/a8250c51-f628-4936-97cb-67a931d2d7d8/playlist.m3u8$LR•IPV4•444『线路308』 +ION,https://d16xlk626t29pt.cloudfront.net/ABR.m3u8$LR•IPV4•444『线路309』 +ION,https://jmp2.uk/plu-61e9af6bfbbcc6000700119b.m3u8$LR•IPV4•444『线路310』 +ION,https://m1b2.worldcast.tv/dancetelevisionone/2/dancetelevisionone.m3u8$LR•IPV4•444『线路311』 +ION,https://funradiovisionhd.vedge.infomaniak.com/livecast/ik:funradiovisionhd/manifest.m3u8$LR•IPV4•444『线路312』 +ION,https://edge20.vedge.infomaniak.com/livecast/ik:fusiontv/manifest.m3u8$LR•IPV4•444『线路313』 +ION,https://streamer1.connectto.com/HIGHVISION_WEB_1205/index.m3u8$LR•IPV4•444『线路314』 +ION,https://streamlov.alsolnet.com/lapuracrema/live/playlist.m3u8$LR•IPV4•444『线路315』 +ION,https://mic.siar.us/mic/live/mic.m3u8$LR•IPV4•444『线路316』 +ION,https://tuvideoonline.com.ar:3391/live/radioconexionlive.m3u8$LR•IPV4•444『线路317』 +ION,https://stream.mediawork.cz/retrotv/retrotvHQ1/playlist.m3u8$LR•IPV4•444『线路318』 +ION,https://live20.bozztv.com/akamaissh101/ssh101/qMUAZEy/playlist.m3u8$LR•IPV4•444『线路319』 +ION,https://tvcosta.gleeze.com/memfs/4d48db09-0b1e-4803-8da7-22be388bdd7e.m3u8$LR•IPV4•444『线路320』 +ION,https://cdn.streamhispanatv.net:3652/live/totovisiongtlive.m3u8$LR•IPV4•444『线路321』 +ION,https://jmp2.uk/plu-62da73c4ec46c000070f4cb1.m3u8$LR•IPV4•444『线路322』 +ION,https://jmp2.uk/plu-62da7159ca8f220008032730.m3u8$LR•IPV4•444『线路323』 +ION,https://jmp2.uk/plu-62da7380478a5b0007e610d9.m3u8$LR•IPV4•444『线路324』 +ION,https://jmp2.uk/plu-6304f8d5ffb61000071ab478.m3u8$LR•IPV4•444『线路325』 +ION,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/Q7VW3TCBWCN12JGUJGUY/hls3/now,-1m/m.m3u8?ads.vf=7sLXLbaCnLW$LR•IPV4•444『线路326』 +ION,https://3238c44f.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/Um9rdV9MaXZlbHlQbGFjZV9ITFM/playlist.m3u8$LR•IPV4•444『线路327』 +ION,https://jmp2.uk/plu-6683cd2fca74680008772545.m3u8$LR•IPV4•444『线路328』 +ION,https://jmp2.uk/plu-62ea43aa0c43540007f2db96.m3u8$LR•IPV4•444『线路329』 +ION,https://jmp2.uk/plu-5f77977bd924d80007eee60c.m3u8$LR•IPV4•444『线路330』 +ION,https://jmp2.uk/plu-63808dc806aa4700075f319a.m3u8$LR•IPV4•444『线路331』 +ION,https://jmp2.uk/plu-63d000ef4e83e700086e0d6c.m3u8$LR•IPV4•444『线路332』 +ION,https://jmp2.uk/plu-63a1caefc8d285000799e8af.m3u8$LR•IPV4•444『线路333』 +ION,https://jmp2.uk/plu-63a1c959d9dd51000825d659.m3u8$LR•IPV4•444『线路334』 +ION,https://jmp2.uk/plu-63a1c9c2847a090007f248da.m3u8$LR•IPV4•444『线路335』 +ION,https://6df6888a.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/Um9rdV9UaW55SG91c2VOYXRpb25fSExT/playlist.m3u8$LR•IPV4•444『线路336』 +ION,https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•444『线路337』 +ION,http://31.148.48.15/Fashion_One_HD/index.m3u8$LR•IPV4•444『线路338』 +ION,https://pubgfc.teleosmedia.com/linear/globalfashionchannel/globalfashionchannel/playlist.m3u8$LR•IPV4•444『线路339』 +ION,https://fl718492-exthls-p1.flovp.com/fl718492/live/live.m3u8$LR•IPV4•444『线路340』 +ION,https://jmp2.uk/plu-64f8a949f5b5e4000862467c.m3u8$LR•IPV4•444『线路341』 +ION,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883107$LR•IPV4•444『线路342』 +ION,https://amg00862-amg00862c5-amgplt0173.playout.now3.amagi.tv/playlist/amg00862-amg00862c5-amgplt0173/playlist.m3u8$LR•IPV4•444『线路343』 +ION,https://jmp2.uk/plu-69aee8a1acb7eb0bb68df641.m3u8$LR•IPV4•444『线路344』 +ION,https://jmp2.uk/plu-68487fb3f212bedacf5a53e3.m3u8$LR•IPV4•444『线路345』 +ION,https://jmp2.uk/plu-634fe5afece2e60007c9d8b8.m3u8$LR•IPV4•444『线路346』 +ION,https://jmp2.uk/plu-6671b21ffc3a46000857fe75.m3u8$LR•IPV4•444『线路347』 +ION,https://jmp2.uk/plu-62ab579258cb950007811aad.m3u8$LR•IPV4•444『线路348』 +ION,https://jmp2.uk/plu-65cb77853ba51e00084cba02.m3u8$LR•IPV4•444『线路349』 +ION,https://jmp2.uk/plu-66d717d2abec540008ba7ec4.m3u8$LR•IPV4•444『线路350』 +ION,https://jmp2.uk/plu-66d717c6abec540008ba7eb5.m3u8$LR•IPV4•444『线路351』 +ION,https://jmp2.uk/plu-65004605110545000842035d.m3u8$LR•IPV4•444『线路352』 +ION,https://jmp2.uk/plu-5dbfeb961b411c00090b52b3.m3u8$LR•IPV4•444『线路353』 +ION,https://jmp2.uk/plu-61c095861782bd000780e0ba.m3u8$LR•IPV4•444『线路354』 +ION,https://jmp2.uk/plu-61c1e270489a9c000874d209.m3u8$LR•IPV4•444『线路355』 +ION,https://jmp2.uk/plu-61c0b0688a80a4000703fbcb.m3u8$LR•IPV4•444『线路356』 +ION,https://jmp2.uk/plu-69776ce979545c21a1220bff.m3u8$LR•IPV4•444『线路357』 +ION,https://jmp2.uk/plu-65786b94cbd0d60008f7e4d9.m3u8$LR•IPV4•444『线路358』 +ION,https://jmp2.uk/plu-695c32e61ca20bb8ca802eb9.m3u8$LR•IPV4•444『线路359』 +ION,http://latam-cache-sv2-cdn.latamlive.net/LA_LIGA_SMARTBANK_IP_ENC_LIVE/index.m3u8$LR•IPV4•444『线路360』 +ION,http://cdn2.ujjina.com:1935/iptvovacion1/liveovacion1tv/playlist.m3u8$LR•IPV4•444『线路361』 +ION,https://jmp2.uk/plu-603fde9026ecbf0007752c2c.m3u8$LR•IPV4•444『线路362』 +ION,https://2-fss-2.streamhoster.com/pl_118/204972-2205186-1/playlist.m3u8$LR•IPV4•444『线路363』 +ION,https://mvg-mv-xumo.otteravision.com/mvg/mv/mv.m3u8$LR•IPV4•444『线路364』 +ION,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883047$LR•IPV4•444『线路365』 +ION,https://amg01258-raycomsports-powernationau-samsungau-18bwc.amagi.tv/playlist.m3u8$LR•IPV4•444『线路366』 +ION,http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/fierrofondo.stream/playlist.m3u8$LR•IPV4•444『线路367』 +ION,https://jmp2.uk/plu-6462190b7cb4b1000862dd60.m3u8$LR•IPV4•444『线路368』 +ION,https://jmp2.uk/plu-650999b86a841400083bd1ab.m3u8$LR•IPV4•444『线路369』 +ION,https://dlttx48mxf9m3.cloudfront.net/vod_clients/bolton/live/ch2/video.m3u8$LR•IPV4•444『线路370』 +ION,https://iptv.ebc.edu.kh/iptv/channel/1.m3u8$LR•IPV4•444『线路371』 +ION,https://stmv3.voxtvhd.com.br/conex2/conex2/playlist.m3u8$LR•IPV4•444『线路372』 +ION,https://reflect-vod-cmac.cablecast.tv/live-11/live/stream-2/live.m3u8$LR•IPV4•444『线路373』 +ION,https://securestream11.champds.com/LIVE/GilletteWYLIVE3/GilletteWYLIVE3.m3u8$LR•IPV4•444『线路374』 +ION,https://videostream.chileservidores.com:8081/tome/index.m3u8$LR•IPV4•444『线路375』 +ION,https://reflect-channel36-la.cablecast.tv/live-3/live/stream-1/live.m3u8$LR•IPV4•444『线路376』 +ION,https://reflect-mcsb-vod.cablecast.tv/live-16/live/live.m3u8$LR•IPV4•444『线路377』 +ION,https://5c2974786200d.streamlock.net/live-chan28/ngrp:ch28_all/playlist.m3u8$LR•IPV4•444『线路378』 +ION,https://reflect-monroe-public-access.cablecast.tv/live-4/live/live.m3u8$LR•IPV4•444『线路379』 +ION,https://livestream.telvue.com/natickpegasus1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路380』 +ION,https://fms.nrwision.de/live/ngrp:livestreamHD.stream/playlist.m3u8$LR•IPV4•444『线路381』 +ION,https://securestream10.champds.com/LIVE/KOCTCALIVE2/KOCTCALIVE2.m3u8$LR•IPV4•444『线路382』 +ION,https://livestream.telvue.com/santamariactv2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路383』 +ION,https://livestream.telvue.com/accvision2/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路384』 +ION,https://buenapark.cablecast.tv/live/stream-1/live.m3u8$LR•IPV4•444『线路385』 +ION,https://champaign-cablecast.cablecast.tv/live/stream-2/live.m3u8$LR•IPV4•444『线路386』 +ION,https://capitalcityconnection.cablecast.tv/live/stream-1/live.m3u8$LR•IPV4•444『线路387』 +ION,https://reflect-collier-countyboc.cablecast.tv/live-4/live/stream-1/live.m3u8$LR•IPV4•444『线路388』 +ION,https://cdn3.wowza.com/5/R09KQXpaMWlrRjly/coralgables/G0937_004/playlist.m3u8$LR•IPV4•444『线路389』 +ION,https://securestream11.champds.com/LIVE/GilletteWYLIVE2/GilletteWYLIVE2.m3u8$LR•IPV4•444『线路390』 +ION,https://stream.swagit.com/live-edge/houstontx/smil:hd-16x9-2-a/playlist.m3u8$LR•IPV4•444『线路391』 +ION,https://stream.swagit.com/live-edge/houstontx/smil:hd-16x9-2-b/playlist.m3u8$LR•IPV4•444『线路392』 +ION,https://reflect-jacksonville.cablecast.tv/live-8/live/live.m3u8$LR•IPV4•444『线路393』 +ION,https://cdn3.wowza.com/5/dk84U1p2UUdoMGxT/kern/G0169_003/playlist.m3u8$LR•IPV4•444『线路394』 +ION,https://edge-f.swagit.com/live/longbeachca/live-3-a/playlist.m3u8$LR•IPV4•444『线路395』 +ION,https://castus-vod-dev.s3.amazonaws.com/vod_clients/monroe/live/ch1/video.m3u8$LR•IPV4•444『线路396』 +ION,https://cdn3.wowza.com/5/RXJNMFI3VlVkOEFP/newportbeach/G0064_003/playlist.m3u8$LR•IPV4•444『线路397』 +ION,https://cdn3.wowza.com/5/cXdyRHF0Z3kxN0k2/pinole/G0032_004/playlist.m3u8$LR•IPV4•444『线路398』 +ION,https://livestream.telvue.com/santamariactv1/f7b44cfafd5c52223d5498196c8a2e7b.sdp/playlist.m3u8$LR•IPV4•444『线路399』 +ION,https://d2ferbiwcx1539.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-8zd06wicndthf-ssai-prd/WNNationalSamsung/WNNationalSamsung.m3u8$LR•IPV4•444『线路400』 +ION,https://d1ujfw1zyymzyd.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-a6fukwkbxmex8/live/fast-channel-animevision-64527ec0/fast-channel-animevision-64527ec0.m3u8$LR•IPV4•444『线路401』 +ION,https://d82pyvmcw2kdc.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-swfivzrzwamaq/live/fast-channel-animevisionclassics-efc8dc6d/fast-channel-animevisionclassics-efc8dc6d.m3u8$LR•IPV4•444『线路402』 +ION,https://jmp2.uk/plu-69492467ae33e24d916e56cf.m3u8$LR•IPV4•444『线路403』 +ION,https://rpn.bozztv.com/gusa/gusa-chefchampion/index.m3u8$LR•IPV4•444『线路404』 +ION,https://jmp2.uk/plu-69a9ae4d3bd16a4ed04240d7.m3u8$LR•IPV4•444『线路405』 +ION,https://jmp2.uk/plu-6478a9e4f77b61000817034b.m3u8$LR•IPV4•444『线路406』 +ION,https://jmp2.uk/plu-639b4eb4da3fda0008036f6e.m3u8$LR•IPV4•444『线路407』 +ION,https://jmp2.uk/plu-639b4f14be012600070fe1be.m3u8$LR•IPV4•444『线路408』 +ION,https://cdn4.skygo.mn/live/disk1/Education/DASH-FTA/Education.mpd$LR•IPV4•444『线路409』 +ION,http://223.166.234.114:7777/tsfile/live/1033_1.m3u8$LR•IPV4•444『线路410』 +ION,https://jmp2.uk/plu-67f68bd2135aeda9ddf0ef54.m3u8$LR•IPV4•444『线路411』 +ION,https://jmp2.uk/plu-612f761008a9e50007984ba0.m3u8$LR•IPV4•444『线路412』 +ION,https://jmp2.uk/plu-646b14a0e94c3800082a8d3a.m3u8$LR•IPV4•444『线路413』 +ION,https://jmp2.uk/plu-65d87a66ec9fda0008a5ac11.m3u8$LR•IPV4•444『线路414』 +ION,https://jmp2.uk/plu-65d87fcb66eec8000887f4aa.m3u8$LR•IPV4•444『线路415』 +ION,https://jmp2.uk/plu-65d881d566eec8000887f6bb.m3u8$LR•IPV4•444『线路416』 +ION,https://jmp2.uk/plu-646b14747cb4b1000875724d.m3u8$LR•IPV4•444『线路417』 +ION,https://jmp2.uk/plu-65d87a058145cb0008265c2e.m3u8$LR•IPV4•444『线路418』 +ION,https://jmp2.uk/plu-65d87fa0f7f0af0008b2358b.m3u8$LR•IPV4•444『线路419』 +ION,https://jmp2.uk/plu-65d881b1332fec000833a122.m3u8$LR•IPV4•444『线路420』 +ION,https://jmp2.uk/plu-65df4934f7f0af0008c32545.m3u8$LR•IPV4•444『线路421』 +ION,https://jmp2.uk/plu-646b1404ee6a2f00082b5d66.m3u8$LR•IPV4•444『线路422』 +ION,https://jmp2.uk/plu-65d879bd0d4561000805d190.m3u8$LR•IPV4•444『线路423』 +ION,https://jmp2.uk/plu-65d87f53ec9fda0008a5b810.m3u8$LR•IPV4•444『线路424』 +ION,https://jmp2.uk/plu-65d880cea25d5e0008315b0a.m3u8$LR•IPV4•444『线路425』 +ION,https://jmp2.uk/plu-65df47f428730900089f83ac.m3u8$LR•IPV4•444『线路426』 +ION,https://jmp2.uk/plu-646b14d0e1979c0008915a09.m3u8$LR•IPV4•444『线路427』 +ION,https://jmp2.uk/plu-65d87a908145cb0008265c6d.m3u8$LR•IPV4•444『线路428』 +ION,https://jmp2.uk/plu-65d88004ec9fda0008a5b8b3.m3u8$LR•IPV4•444『线路429』 +ION,https://jmp2.uk/plu-65d882394e01740008a36768.m3u8$LR•IPV4•444『线路430』 +ION,https://jmp2.uk/plu-65df49b30d45610008172c5b.m3u8$LR•IPV4•444『线路431』 +ION,https://jmp2.uk/plu-646b150a15939400089e2702.m3u8$LR•IPV4•444『线路432』 +ION,https://jmp2.uk/plu-646b1438e94c3800082a8cff.m3u8$LR•IPV4•444『线路433』 +ION,https://jmp2.uk/plu-65d879e266eec8000887e91b.m3u8$LR•IPV4•444『线路434』 +ION,https://jmp2.uk/plu-65d87f7a28730900088e7fbf.m3u8$LR•IPV4•444『线路435』 +ION,https://jmp2.uk/plu-65d881914e01740008a36603.m3u8$LR•IPV4•444『线路436』 +ION,https://jmp2.uk/plu-65df48ba28730900089f8480.m3u8$LR•IPV4•444『线路437』 +ION,https://qvc-amd-live.akamaized.net/hls/live/2034113/lsqvc5us/master.m3u8$LR•IPV4•444『线路438』 +ION,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/jewish-life-television-jltv/jltv.m3u8?ads.vf=sDqPiBzBf9O$LR•IPV4•444『线路439』 +ION,https://amg00627-amg00627c40-rakuten-uk-5725.playouts.now.amagi.tv/playlist/amg00627-banijayfast-mrbeanpopupcc-rakutenuk/playlist.m3u8$LR•IPV4•444『线路440』 +ION,https://amg00627-amg00627c39-samsung-gb-5569.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•444『线路441』 +ION,https://stream-204968.castr.net/64e0c91d08bff3041638aee3/live_a4243540d4b911f0b624bda5e9a32aa9/index.m3u8$LR•IPV4•444『线路442』 +ION,https://stream-204968.castr.net/64e0c91d08bff3041638aee3/live_a16fa020f4c411f09ddaa1978319689a/index.m3u8$LR•IPV4•444『线路443』 +ION,https://lukentvlive.vgcdn.net/v1/master/cef183924f24adfa3d5d7601c3a17769082c0c2b/Revn/index.m3u8$LR•IPV4•444『线路444』 +Love Nature,p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•8『线路1』 +Love Nature,https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•8『线路2』 +Love Nature,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•8『线路3』 +Love Nature,http://rihou.cc:555/tv/LoveNature$LR•IPV4•8『线路4』 +Love Nature,https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•8『线路5』 +Love Nature,https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•8『线路6』 +Love Nature,https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•8『线路7』 +Love Nature,http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•8『线路8』 Fight Network,https://d12a2vxqkkh1bo.cloudfront.net/hls/main.m3u8$LR•IPV4 Wild Earth,https://wildearth-plex.amagi.tv/masterR1080p.m3u8$LR•IPV4 Clarity 4K,https://pb-qyrvophnifz47.akamaized.net/Clarity_4K.m3u8$LR•IPV4 -Stadium,https://wurl120sports.global.transmit.live/hls/679a907dce42a042c23ace37/v1/stadium_gracenote/samsung_us/latest/main/hls/playlist.m3u8$LR•IPV4•2『线路1』 -Stadium,https://2d006483e2aa43fe812f7b464cb2916d.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung_Stadium/playlist.m3u8$LR•IPV4•2『线路2』 -Pop,https://d24c0gmuazjo9x.cloudfront.net/master.m3u8$LR•IPV4•23『线路1』 -Pop,https://d3kmrn2mstrnk5.cloudfront.net/f4acc9ba_daae_4ed0_b836_32126cead919/hls/playlist.m3u8$LR•IPV4•23『线路2』 -Pop,https://amg01753-narrativeentert-popkids-lggb-xyy5k.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeentert-popkids-lggb/playlist.m3u8$LR•IPV4•23『线路3』 -Pop,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1086$LR•IPV4•23『线路4』 -Pop,https://amg00056-amg00056c7-rakuten-de-3245.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路5』 -Pop,https://amg00056-amg00056c8-rakuten-it-3239.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路6』 -Pop,https://amg00056-amg00056c10-rakuten-es-3242.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路7』 -Pop,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•23『线路8』 -Pop,https://amg00056-amg00056c15-rakuten-it-3241.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路9』 -Pop,https://dogus-live.daioncdn.net/kralpoptv/playlist.m3u8$LR•IPV4•23『线路10』 -Pop,https://jmp2.uk/plu-6047fbdbbb776a0007e7f2ff.m3u8$LR•IPV4•23『线路11』 -Pop,https://jmp2.uk/plu-65410176770cf1000866bf31.m3u8$LR•IPV4•23『线路12』 -Pop,https://jmp2.uk/plu-6047fabfce6e8e00070bcc9f.m3u8$LR•IPV4•23『线路13』 -Pop,https://jmp2.uk/plu-5d14fd1a252d35decbc4080c.m3u8$LR•IPV4•23『线路14』 -Pop,https://janus.xpbroadcasting.com:8443/hls/popworld.m3u8$LR•IPV4•23『线路15』 -Pop,https://lotus.stingray.com/manifest/ose-104ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•23『线路16』 -Pop,https://lotus.stingray.com/manifest/ose-190ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•23『线路17』 -Pop,https://d128y56w6v2kax.cloudfront.net/playlist/amg00056-vevotv-vevopopau-samsungau/playlist.m3u8$LR•IPV4•23『线路18』 -Pop,https://amg01753-amg01753c9-samsung-gb-8005.playouts.now.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeuk-popup-samsunggb/playlist.m3u8$LR•IPV4•23『线路19』 -Pop,https://jmp2.uk/plu-6093f7b5bb49b90007cecaad.m3u8$LR•IPV4•23『线路20』 -Pop,https://amg01753-narrativeuk-amg01753c1-lg-gb-1830.playouts.now.amagi.tv/playlist/amg01753-narrativeuk-tinypop-lggb/playlist.m3u8$LR•IPV4•23『线路21』 -Pop,http://92.114.85.72:8000/play/a08p$LR•IPV4•23『线路22』 -Pop,http://bgdc.live:25461/catrinamcdermott/catrinamcdermott/51112$LR•IPV4•23『线路23』 +Stadium,https://2d006483e2aa43fe812f7b464cb2916d.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/Samsung_Stadium/playlist.m3u8$LR•IPV4•2『线路1』 +Stadium,https://wurl120sports.global.transmit.live/hls/679a907dce42a042c23ace37/v1/stadium_gracenote/samsung_us/latest/main/hls/playlist.m3u8$LR•IPV4•2『线路2』 +Pop,http://bgdc.live:25461/catrinamcdermott/catrinamcdermott/51112$LR•IPV4•23『线路1』 +Pop,https://d24c0gmuazjo9x.cloudfront.net/master.m3u8$LR•IPV4•23『线路2』 +Pop,https://d3kmrn2mstrnk5.cloudfront.net/f4acc9ba_daae_4ed0_b836_32126cead919/hls/playlist.m3u8$LR•IPV4•23『线路3』 +Pop,https://amg01753-narrativeentert-popkids-lggb-xyy5k.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeentert-popkids-lggb/playlist.m3u8$LR•IPV4•23『线路4』 +Pop,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1086$LR•IPV4•23『线路5』 +Pop,https://amg00056-amg00056c7-rakuten-de-3245.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路6』 +Pop,https://amg00056-amg00056c8-rakuten-it-3239.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路7』 +Pop,https://amg00056-amg00056c10-rakuten-es-3242.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路8』 +Pop,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•23『线路9』 +Pop,https://amg00056-amg00056c15-rakuten-it-3241.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•23『线路10』 +Pop,https://dogus-live.daioncdn.net/kralpoptv/playlist.m3u8$LR•IPV4•23『线路11』 +Pop,https://jmp2.uk/plu-6047fbdbbb776a0007e7f2ff.m3u8$LR•IPV4•23『线路12』 +Pop,https://jmp2.uk/plu-65410176770cf1000866bf31.m3u8$LR•IPV4•23『线路13』 +Pop,https://jmp2.uk/plu-6047fabfce6e8e00070bcc9f.m3u8$LR•IPV4•23『线路14』 +Pop,https://jmp2.uk/plu-5d14fd1a252d35decbc4080c.m3u8$LR•IPV4•23『线路15』 +Pop,https://janus.xpbroadcasting.com:8443/hls/popworld.m3u8$LR•IPV4•23『线路16』 +Pop,https://lotus.stingray.com/manifest/ose-104ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•23『线路17』 +Pop,https://lotus.stingray.com/manifest/ose-190ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•23『线路18』 +Pop,https://d128y56w6v2kax.cloudfront.net/playlist/amg00056-vevotv-vevopopau-samsungau/playlist.m3u8$LR•IPV4•23『线路19』 +Pop,https://amg01753-amg01753c9-samsung-gb-8005.playouts.now.amagi.tv/ts-eu-w1-n2/playlist/amg01753-narrativeuk-popup-samsunggb/playlist.m3u8$LR•IPV4•23『线路20』 +Pop,https://jmp2.uk/plu-6093f7b5bb49b90007cecaad.m3u8$LR•IPV4•23『线路21』 +Pop,https://amg01753-narrativeuk-amg01753c1-lg-gb-1830.playouts.now.amagi.tv/playlist/amg01753-narrativeuk-tinypop-lggb/playlist.m3u8$LR•IPV4•23『线路22』 +Pop,http://92.114.85.72:8000/play/a08p$LR•IPV4•23『线路23』 Tastemade,https://jmp2.uk/plu-68b88821e542386ab0bf5bef.m3u8$LR•IPV4•15『线路1』 Tastemade,https://jmp2.uk/plu-68b887c2e77777498226a0de.m3u8$LR•IPV4•15『线路2』 Tastemade,https://d3ca4qxsdzlrju.cloudfront.net/Tastemade_Home.m3u8$LR•IPV4•15『线路3』 @@ -6793,38 +6797,38 @@ MovieSphere,https://amg00353-lionsgatestudio-moviesphere-xumo-zh5u0.amagi.tv/pla MovieSphere,https://amg00353-lionsgatefilmsi-moviesphereaus-samsungau-7qzhf.amagi.tv/playlist/amg00353-lionsgatefilmsi-moviesphereaus-samsungau/playlist.m3u8$LR•IPV4•5『线路4』 MovieSphere,https://jmp2.uk/plu-64a3d96f060e830008af6745.m3u8$LR•IPV4•5『线路5』 香港国际财经,p3p://167.114.175.6:55331/64838620000cd8ed32fb0d6a414411f7$LR•IPV4 -Bloomberg,https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•17『线路1』 -Bloomberg,http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•17『线路2』 -Bloomberg,https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•17『线路3』 -Bloomberg,http://213.91.179.28:8000/play/a04m$LR•IPV4•17『线路4』 -Bloomberg,https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•17『线路5』 -Bloomberg,https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•17『线路6』 -Bloomberg,https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•17『线路7』 -Bloomberg,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路8』 -Bloomberg,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路9』 -Bloomberg,https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•17『线路10』 -Bloomberg,https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•17『线路11』 -Bloomberg,https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•17『线路12』 -Bloomberg,https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•17『线路13』 -Bloomberg,https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01601-bloomberg-bloombergplus-hls-rakutenjp/playlist.m3u8$LR•IPV4•17『线路14』 -Bloomberg,https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•17『线路15』 -Bloomberg,https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•17『线路16』 -Bloomberg,https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•17『线路17』 -CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•15『线路1』 -CNBC,https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•15『线路2』 -CNBC,https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•15『线路3』 -CNBC,http://rezofoot.tv/CNBC/index.m3u8$LR•IPV4•15『线路4』 -CNBC,https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•15『线路5』 -CNBC,https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•15『线路6』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•15『线路7』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•15『线路8』 -CNBC,https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•15『线路9』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•15『线路10』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•15『线路11』 -CNBC,https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•15『线路12』 -CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•15『线路13』 -CNBC,https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•15『线路14』 -CNBC,http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•15『线路15』 +Bloomberg,https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•17『线路1』 +Bloomberg,https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•17『线路2』 +Bloomberg,https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•17『线路3』 +Bloomberg,https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•17『线路4』 +Bloomberg,https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01601-bloomberg-bloombergplus-hls-rakutenjp/playlist.m3u8$LR•IPV4•17『线路5』 +Bloomberg,https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•17『线路6』 +Bloomberg,http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•17『线路7』 +Bloomberg,https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•17『线路8』 +Bloomberg,http://213.91.179.28:8000/play/a04m$LR•IPV4•17『线路9』 +Bloomberg,https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•17『线路10』 +Bloomberg,https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•17『线路11』 +Bloomberg,https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•17『线路12』 +Bloomberg,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路13』 +Bloomberg,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路14』 +Bloomberg,https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•17『线路15』 +Bloomberg,https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•17『线路16』 +Bloomberg,https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•17『线路17』 +CNBC,http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•15『线路1』 +CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•15『线路2』 +CNBC,https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•15『线路3』 +CNBC,https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•15『线路4』 +CNBC,http://rezofoot.tv/CNBC/index.m3u8$LR•IPV4•15『线路5』 +CNBC,https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•15『线路6』 +CNBC,https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•15『线路7』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•15『线路8』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•15『线路9』 +CNBC,https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•15『线路10』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•15『线路11』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•15『线路12』 +CNBC,https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•15『线路13』 +CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•15『线路14』 +CNBC,https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•15『线路15』 TV8,https://1740288887.rsc.cdn77.org/1740288887/index.m3u8$LR•IPV4•7『线路1』 TV8,https://server.dtvhd.com/memfs/92d5968d-1b58-486d-a1ba-7b5a3f21c16c.m3u8$LR•IPV4•7『线路2』 TV8,https://k20.usastreams.com:8081/tv8/index.m3u8$LR•IPV4•7『线路3』 @@ -6837,52 +6841,53 @@ ViuTV6,http://hls.168.us.kg/u/96/master.m3u8$LR•IPV4 博斯高球2,p3p://167.114.175.6:55331/6258e1c9000c6f010e2b77e9601b5186$LR•IPV4 博斯魅力,p3p://167.114.175.6:55331/612ee43d000c84ea8e0dab707a8b2e0d$LR•IPV4 中天綜合,http://23.237.10.66:16372$LR•IPV4 -澳视澳门,http://cdn6.163189.xyz/163189/asam$LR•IPV4•10『线路1』 -澳视澳门,http://push.cdn1.hls123.de:8080/streams/2r8ba88ujh6/index.m3u8$LR•IPV4•10『线路2』 -澳视澳门,https://cdn6.163189.xyz/163189/asam$LR•IPV4•10『线路3』 -澳视澳门,http://php.jdshipin.com/TVOD/iptv.php?id=asam$LR•IPV4•10『线路4』 -澳视澳门,http://php.jdshipin.com/PLTV/iptv.php?id=asam$LR•IPV4•10『线路5』 -澳视澳门,http://1b6467f415.iok.la:9931/tsfile/live/1039_1.m3u8$LR•IPV4•10『线路6』 -澳视澳门,http://61.244.22.5/ch1/ch1.live/playelist.m3u8$LR•IPV4•10『线路7』 -澳视澳门,http://grandprix2023.asuscomm.com:8891/bysid/91.m3u8$LR•IPV4•10『线路8』 -澳视澳门,http://103.233.191.134:1935/ch1/ch1.live/playlist.m3u8$LR•IPV4•10『线路9』 -澳视澳门,http://43.251.226.89:8080/play/900.m3u8$LR•IPV4•10『线路10』 +澳视澳门,http://php.jdshipin.com/TVOD/iptv.php?id=asam$LR•IPV4•10『线路1』 +澳视澳门,http://php.jdshipin.com/PLTV/iptv.php?id=asam$LR•IPV4•10『线路2』 +澳视澳门,http://1b6467f415.iok.la:9931/tsfile/live/1039_1.m3u8$LR•IPV4•10『线路3』 +澳视澳门,http://61.244.22.5/ch1/ch1.live/playelist.m3u8$LR•IPV4•10『线路4』 +澳视澳门,http://grandprix2023.asuscomm.com:8891/bysid/91.m3u8$LR•IPV4•10『线路5』 +澳视澳门,http://103.233.191.134:1935/ch1/ch1.live/playlist.m3u8$LR•IPV4•10『线路6』 +澳视澳门,http://43.251.226.89:8080/play/900.m3u8$LR•IPV4•10『线路7』 +澳视澳门,http://cdn6.163189.xyz/163189/asam$LR•IPV4•10『线路8』 +澳视澳门,http://push.cdn1.hls123.de:8080/streams/2r8ba88ujh6/index.m3u8$LR•IPV4•10『线路9』 +澳视澳门,https://cdn6.163189.xyz/163189/asam$LR•IPV4•10『线路10』 TVB J1,p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4 -千禧经典,http://o11.163189.xyz/stream/live/tvbc/$LR•IPV4•5『线路1』 -千禧经典,http://php.jdshipin.com/TVOD/iptv.php?id=tvbc$LR•IPV4•5『线路2』 -千禧经典,http://php.jdshipin.com/PLTV/iptv.php?id=tvbc$LR•IPV4•5『线路3』 -千禧经典,http://php.jdshipin.com/smt.php?id=Tvbclassic$LR•IPV4•5『线路4』 -千禧经典,p3p://167.114.175.6:55331/5fdee1a2000b5fba6d93e51308cb7ddf$LR•IPV4•5『线路5』 +千禧经典,http://cdn9.163189.xyz/smt3.1.1.php?id=Tvbclassic$LR•IPV4•6『线路1』 +千禧经典,http://php.jdshipin.com/TVOD/iptv.php?id=tvbc$LR•IPV4•6『线路2』 +千禧经典,http://php.jdshipin.com/PLTV/iptv.php?id=tvbc$LR•IPV4•6『线路3』 +千禧经典,http://php.jdshipin.com/smt.php?id=Tvbclassic$LR•IPV4•6『线路4』 +千禧经典,p3p://167.114.175.6:55331/5fdee1a2000b5fba6d93e51308cb7ddf$LR•IPV4•6『线路5』 +千禧经典,http://o11.163189.xyz/stream/live/tvbc/$LR•IPV4•6『线路6』 MOMO TV,http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4 HOY78,http://bziyunshao.synology.me:8891/bysid/78$LR•IPV4•2『线路1』 HOY78,http://cdn.163189.xyz/live/hoy/stream.m3u8$LR•IPV4•2『线路2』 ASTRO AOD,http://php.jdshipin.com/TVOD/iptv.php?id=aod$LR•IPV4•2『线路1』 ASTRO AOD,https://o11.163189.xyz/stream/live/aod/$LR•IPV4•2『线路2』 ELEVEN体育3,https://smart.pendy.dpdns.org/Smart.php?id=eltasport3_twn$LR•IPV4 -澳视卫星,http://push.cdn1.hls123.de:8080/streams/gese9d57376/index.m3u8$LR•IPV4•5『线路1』 -澳视卫星,https://cdn6.163189.xyz/163189/as$LR•IPV4•5『线路2』 -澳视卫星,http://php.jdshipin.com/TVOD/iptv.php?id=as$LR•IPV4•5『线路3』 -澳视卫星,http://103.233.191.134:1935/ch3/ch3.live/playlist.m3u8$LR•IPV4•5『线路4』 -澳视卫星,http://43.251.226.89:8080/play/901.m3u8$LR•IPV4•5『线路5』 -八度空间,http://cdn6.163189.xyz/163189/8tv$LR•IPV4•3『线路1』 -八度空间,https://cdn6.163189.xyz/163189/8tv$LR•IPV4•3『线路2』 -八度空间,http://43.251.226.89:8080/play/917.m3u8$LR•IPV4•3『线路3』 -CH5,https://cdn6.163189.xyz/163189/ch5$LR•IPV4•2『线路1』 -CH5,http://43.251.226.89:8080/play/915.m3u8$LR•IPV4•2『线路2』 -CH8,https://cdn6.163189.xyz/163189/ch8$LR•IPV4•2『线路1』 -CH8,http://43.251.226.89:8080/play/916.m3u8$LR•IPV4•2『线路2』 -CHU,https://live-evg11.tv360.bitel.com.pe/bitel/ucayalitvSRT/playlist.m3u8$LR•IPV4•3『线路1』 -CHU,https://cdn6.163189.xyz/163189/chu$LR•IPV4•3『线路2』 -CHU,http://43.251.226.89:8080/play/914.m3u8$LR•IPV4•3『线路3』 +澳视卫星,http://php.jdshipin.com/TVOD/iptv.php?id=as$LR•IPV4•5『线路1』 +澳视卫星,http://103.233.191.134:1935/ch3/ch3.live/playlist.m3u8$LR•IPV4•5『线路2』 +澳视卫星,http://43.251.226.89:8080/play/901.m3u8$LR•IPV4•5『线路3』 +澳视卫星,http://push.cdn1.hls123.de:8080/streams/gese9d57376/index.m3u8$LR•IPV4•5『线路4』 +澳视卫星,https://cdn6.163189.xyz/163189/as$LR•IPV4•5『线路5』 +八度空间,http://43.251.226.89:8080/play/917.m3u8$LR•IPV4•3『线路1』 +八度空间,http://cdn6.163189.xyz/163189/8tv$LR•IPV4•3『线路2』 +八度空间,https://cdn6.163189.xyz/163189/8tv$LR•IPV4•3『线路3』 +CH5,http://43.251.226.89:8080/play/915.m3u8$LR•IPV4•2『线路1』 +CH5,https://cdn6.163189.xyz/163189/ch5$LR•IPV4•2『线路2』 +CH8,http://43.251.226.89:8080/play/916.m3u8$LR•IPV4•2『线路1』 +CH8,https://cdn6.163189.xyz/163189/ch8$LR•IPV4•2『线路2』 +CHU,http://43.251.226.89:8080/play/914.m3u8$LR•IPV4•3『线路1』 +CHU,https://live-evg11.tv360.bitel.com.pe/bitel/ucayalitvSRT/playlist.m3u8$LR•IPV4•3『线路2』 +CHU,https://cdn6.163189.xyz/163189/chu$LR•IPV4•3『线路3』 Astro AEC,https://o11.163189.xyz/stream/live/aec/$LR•IPV4 爱奇艺,http://php.jdshipin.com/smt.php?id=Qiyi$LR•IPV4 NOW NEWS,https://d35j504z0x2vu2.cloudfront.net/v1/master/0bc8e8376bd8417a1b6761138aa41c26c7309312/times-now-news/master.m3u8?ads.vf=yxbqJWPCXd4$LR•IPV4 -澳门体育,http://cdn6.163189.xyz/163189/amty$LR•IPV4•3『线路1』 -澳门体育,https://cdn6.163189.xyz/163189/amty$LR•IPV4•3『线路2』 -澳门体育,http://43.251.226.89:8080/play/902.m3u8$LR•IPV4•3『线路3』 -澳门综艺,http://cdn6.163189.xyz/163189/amzy$LR•IPV4•3『线路1』 -澳门综艺,https://cdn6.163189.xyz/163189/amzy$LR•IPV4•3『线路2』 -澳门综艺,http://43.251.226.89:8080/play/903.m3u8$LR•IPV4•3『线路3』 +澳门体育,http://43.251.226.89:8080/play/902.m3u8$LR•IPV4•3『线路1』 +澳门体育,http://cdn6.163189.xyz/163189/amty$LR•IPV4•3『线路2』 +澳门体育,https://cdn6.163189.xyz/163189/amty$LR•IPV4•3『线路3』 +澳门综艺,http://43.251.226.89:8080/play/903.m3u8$LR•IPV4•3『线路1』 +澳门综艺,http://cdn6.163189.xyz/163189/amzy$LR•IPV4•3『线路2』 +澳门综艺,https://cdn6.163189.xyz/163189/amzy$LR•IPV4•3『线路3』 NU2,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV14.m3u8$LR•IPV4 华视HD,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV12.m3u8$LR•IPV4 @@ -6890,21 +6895,21 @@ 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•16『线路1』 -ABC NEWS,https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•16『线路2』 -ABC NEWS,https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•16『线路3』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•16『线路4』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•16『线路5』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.m3u8$LR•IPV4•16『线路6』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/master.m3u8$LR•IPV4•16『线路7』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/master.m3u8$LR•IPV4•16『线路8』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/master.m3u8$LR•IPV4•16『线路9』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/master.m3u8$LR•IPV4•16『线路10』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/master.m3u8$LR•IPV4•16『线路11』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/master.m3u8$LR•IPV4•16『线路12』 -ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/master.m3u8$LR•IPV4•16『线路13』 -ABC NEWS,https://sabconetanw.cdn.mangomolo.com/news/smil:news.stream.smil/master.m3u8$LR•IPV4•16『线路14』 -ABC NEWS,https://stream1.freetv.fun/abc-news-australia-1.m3u8$LR•IPV4•16『线路15』 -ABC NEWS,https://stream1.freetv.fun/abc-news-australia-2.ctv$LR•IPV4•16『线路16』 +ABC NEWS,https://stream1.freetv.fun/abc-news-australia-1.m3u8$LR•IPV4•16『线路2』 +ABC NEWS,https://stream1.freetv.fun/abc-news-australia-2.ctv$LR•IPV4•16『线路3』 +ABC NEWS,https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•16『线路4』 +ABC NEWS,https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•16『线路5』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•16『线路6』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•16『线路7』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.m3u8$LR•IPV4•16『线路8』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/master.m3u8$LR•IPV4•16『线路9』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/master.m3u8$LR•IPV4•16『线路10』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/master.m3u8$LR•IPV4•16『线路11』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/master.m3u8$LR•IPV4•16『线路12』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/master.m3u8$LR•IPV4•16『线路13』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/master.m3u8$LR•IPV4•16『线路14』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/master.m3u8$LR•IPV4•16『线路15』 +ABC NEWS,https://sabconetanw.cdn.mangomolo.com/news/smil:news.stream.smil/master.m3u8$LR•IPV4•16『线路16』 大爱,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•2『线路1』 @@ -6915,212 +6920,213 @@ NBC NEWS,https://d1si3n1st4nkgb.cloudfront.net/10502/88896001/hls/master.m3u8?ad 微服私访,http://fmbox.cc/huya.php?id=11342418$LR•IPV4•2『线路2』 林正英电影,http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•2『线路1』 林正英电影,http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•2『线路2』 -天映经典,http://o11.163189.xyz/stream/live/ccm/$LR•IPV4•4『线路1』 -天映经典,http://php.jdshipin.com/smt.php?id=Celestial2$LR•IPV4•4『线路2』 -天映经典,http://bx.757888.xyz/api.php?id=tyjd$LR•IPV4•4『线路3』 -天映经典,p3p://167.114.175.6:55331/5fded422000d0eb46d5f29815c1d4155$LR•IPV4•4『线路4』 +天映经典,http://php.jdshipin.com/smt.php?id=Celestial2$LR•IPV4•4『线路1』 +天映经典,http://bx.757888.xyz/api.php?id=tyjd$LR•IPV4•4『线路2』 +天映经典,p3p://167.114.175.6:55331/5fded422000d0eb46d5f29815c1d4155$LR•IPV4•4『线路3』 +天映经典,http://o11.163189.xyz/stream/live/ccm/$LR•IPV4•4『线路4』 东森洋片,p3p://167.114.175.6:55331/64c62c06000d1cf03751bf246ed813e7$LR•IPV4•2『线路1』 东森洋片,p3p://173.208.176.178:31809/64c62c06000d1cf03751bf246ed813e7$LR•IPV4•2『线路2』 YY,#genre# 铁齿铜牙纪晓岚,https://live.ottiptv.cc/huya/11342396$LR•IPV4•2『线路1』 铁齿铜牙纪晓岚,http://fmbox.cc/huya.php?id=11342396$LR•IPV4•2『线路2』 -111,https://5db313b643fd8.streamlock.net/111/111/playlist.m3u8$LR•IPV4•4『线路1』 -111,http://61.216.67.119:1935/TWHG/E1/chunklist_w705811302.m3u8$LR•IPV4•4『线路2』 -111,http://61.216.67.119:1935/TWHG/E1/chunklist_w70581102.m3u8$LR•IPV4•4『线路3』 -111,http://61.216.67.119:1935/TWHG/E1/chunklist_w7058102.m3u8$LR•IPV4•4『线路4』 +111,http://61.216.67.119:1935/TWHG/E1/chunklist_w705811302.m3u8$LR•IPV4•4『线路1』 +111,http://61.216.67.119:1935/TWHG/E1/chunklist_w70581102.m3u8$LR•IPV4•4『线路2』 +111,http://61.216.67.119:1935/TWHG/E1/chunklist_w7058102.m3u8$LR•IPV4•4『线路3』 +111,https://5db313b643fd8.streamlock.net/111/111/playlist.m3u8$LR•IPV4•4『线路4』 封神榜,http://cdn.jdshipin.com:8880/huya.php?id=29465849$LR•IPV4•3『线路1』 封神榜,https://live.ottiptv.cc/huya/29465849$LR•IPV4•3『线路2』 封神榜,http://tv.zimtv.cn/tv/player/api/huya.php?id=29465849$LR•IPV4•3『线路3』 神雕侠侣,https://live.ottiptv.cc/huya/11352964$LR•IPV4•3『线路1』 神雕侠侣,https://vip.ffzy-play6.com/20221112/6044_68796407/index.m3u8$LR•IPV4•3『线路2』 神雕侠侣,http://fmbox.cc/huya.php?id=11352964$LR•IPV4•3『线路3』 -狄仁杰,https://live.ottiptv.cc/huya/11352958$LR•IPV4•6『线路1』 -狄仁杰,https://live.ottiptv.cc/huya/11342425$LR•IPV4•6『线路2』 -狄仁杰,https://goodiptv.club/douyu/12183882$LR•IPV4•6『线路3』 -狄仁杰,http://cdn.jdshipin.com:8880/huya.php?id=30080229$LR•IPV4•6『线路4』 +狄仁杰,http://cdn.jdshipin.com:8880/huya.php?id=30080229$LR•IPV4•6『线路1』 +狄仁杰,https://live.ottiptv.cc/huya/11352958$LR•IPV4•6『线路2』 +狄仁杰,https://live.ottiptv.cc/huya/11342425$LR•IPV4•6『线路3』 +狄仁杰,https://goodiptv.club/douyu/12183882$LR•IPV4•6『线路4』 狄仁杰,https://v9.tlkqc.com/wjv9/202408/06/p7712pXCuV81/video/index.m3u8$LR•IPV4•6『线路5』 狄仁杰,https://vip.ffzy-play2.com/20221021/129_ed646884/index.m3u8$LR•IPV4•6『线路6』 上海滩,https://vip.ffzy-play.com/20221015/880_937cdc1a/index.m3u8$LR•IPV4 变形金刚,https://lunbo.freetv.top/yy/1382736803$LR•IPV4 迷,http://120.76.248.139/live/bfgd/4200000146.m3u8$LR•IPV4•7『线路1』 迷,https://live.ottiptv.cc/huya/29465863$LR•IPV4•7『线路2』 -迷,https://iptv.catvod.com/douyin/46224253966$LR•IPV4•7『线路3』 -迷,https://iptv.catvod.com/douyin/1365563194$LR•IPV4•7『线路4』 -迷,https://vip.ffzy-play7.com/20221117/5052_54ce37e4/index.m3u8$LR•IPV4•7『线路5』 -迷,https://vip.ffzy-play6.com/20221019/111_6edaadc7/index.m3u8$LR•IPV4•7『线路6』 -迷,p3p://167.114.175.6:55331/62c9a2fe00025fc4c698ca952e9711cb$LR•IPV4•7『线路7』 -电影,http://epg.112114.xyz/douyu/413573$LR•IPV4•171『线路1』 -电影,http://183.207.248.71/cntv/live1/jdianying/jdianying$LR•IPV4•171『线路2』 -电影,http://39.134.19.76/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226463/index.m3u8$LR•IPV4•171『线路3』 -电影,http://feilong123.vip/409990236/tv.php?id=ssdy$LR•IPV4•171『线路4』 -电影,https://cdn8.163189.xyz/163189/lhdy$LR•IPV4•171『线路5』 -电影,http://cdn8.163189.xyz/163189/lhdy$LR•IPV4•171『线路6』 -电影,http://122.224.58.42:85/tsfile/live/1022_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•171『线路7』 -电影,http://hmfs.f3322.net:3388/hls/40/index.m3u8$LR•IPV4•171『线路8』 -电影,https://live.ottiptv.cc/huya/16028551$LR•IPV4•171『线路9』 -电影,https://live.ottiptv.cc/huya/18715610$LR•IPV4•171『线路10』 -电影,https://live.ottiptv.cc/huya/29833341$LR•IPV4•171『线路11』 -电影,https://live.ottiptv.cc/huya/16857432$LR•IPV4•171『线路12』 -电影,https://live.ottiptv.cc/huya/16424416$LR•IPV4•171『线路13』 -电影,https://live.ottiptv.cc/huya/29340502$LR•IPV4•171『线路14』 -电影,https://live.ottiptv.cc/huya/11774959$LR•IPV4•171『线路15』 -电影,https://live.ottiptv.cc/huya/19863777$LR•IPV4•171『线路16』 -电影,https://live.ottiptv.cc/huya/29869799$LR•IPV4•171『线路17』 -电影,https://iptv.catvod.com/yy/1354930209$LR•IPV4•171『线路18』 -电影,https://kbpull.kktv8.com/livekktv/99350550/playlist.m3u8$LR•IPV4•171『线路19』 -电影,https://down-hls.qxiu.com/live/453135/index.m3u8$LR•IPV4•171『线路20』 -电影,https://cfss.cc/api/kg/756444.mp4$LR•IPV4•171『线路21』 -电影,http://183.237.95.108:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•171『线路22』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•171『线路23』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•171『线路24』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=29982675$LR•IPV4•171『线路25』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•171『线路26』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=21059581$LR•IPV4•171『线路27』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=21059577$LR•IPV4•171『线路28』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11342386$LR•IPV4•171『线路29』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=21059574$LR•IPV4•171『线路30』 -电影,https://live.ottiptv.cc/yy/1354889019$LR•IPV4•171『线路31』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•171『线路32』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=21059579$LR•IPV4•171『线路33』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11342427$LR•IPV4•171『线路34』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11601968$LR•IPV4•171『线路35』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11342414$LR•IPV4•171『线路36』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•171『线路37』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•171『线路38』 -电影,http://live.metshop.top/huya/880261?cdn=alicdn$LR•IPV4•171『线路39』 -电影,http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•171『线路40』 -电影,http://live.metshop.top/huya/11336587?cdn=alicdn$LR•IPV4•171『线路41』 -电影,http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•171『线路42』 -电影,http://live.metshop.top/huya/11342423?cdn=alicdn$LR•IPV4•171『线路43』 -电影,http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•171『线路44』 -电影,http://live.metshop.top/huya/21059599?cdn=alicdn$LR•IPV4•171『线路45』 -电影,http://live.metshop.top/huya/21059585?cdn=alicdn$LR•IPV4•171『线路46』 -电影,http://live.metshop.top/huya/11601971?cdn=alicdn$LR•IPV4•171『线路47』 -电影,http://live.metshop.top/huya/11352884?cdn=alicdn$LR•IPV4•171『线路48』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11352962$LR•IPV4•171『线路49』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=21059585$LR•IPV4•171『线路50』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11601986$LR•IPV4•171『线路51』 -电影,http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•171『线路52』 -电影,http://bx.757888.xyz/api.php?id=zgdy$LR•IPV4•171『线路53』 -电影,http://zzy789.xyz/douyu1.php?id=96577$LR•IPV4•171『线路54』 -电影,http://zzy789.xyz/douyu1.php?id=20415$LR•IPV4•171『线路55』 -电影,http://zzy789.xyz/douyu1.php?id=263824$LR•IPV4•171『线路56』 -电影,http://zzy789.xyz/douyu1.php?id=3928$LR•IPV4•171『线路57』 -电影,http://epg.112114.xyz/douyu/1226741$LR•IPV4•171『线路58』 -电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=3637778$LR•IPV4•171『线路59』 -电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=1226741$LR•IPV4•171『线路60』 -电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=5423$LR•IPV4•171『线路61』 -电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=9650887$LR•IPV4•171『线路62』 -电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=323876$LR•IPV4•171『线路63』 -电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=218859$LR•IPV4•171『线路64』 -电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=96577$LR•IPV4•171『线路65』 -电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=3637726$LR•IPV4•171『线路66』 -电影,http://epg.112114.eu.org/douyu/20415$LR•IPV4•171『线路67』 -电影,http://43.251.226.89:8080/play/907.m3u8$LR•IPV4•171『线路68』 -电影,http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•171『线路69』 -电影,https://live.metshop.top/huya/11352871$LR•IPV4•171『线路70』 -电影,https://live.metshop.top/huya/21059588$LR•IPV4•171『线路71』 -电影,https://live.metshop.top/huya/11336590$LR•IPV4•171『线路72』 -电影,https://live.metshop.top/huya/11342395$LR•IPV4•171『线路73』 -电影,https://live.metshop.top/huya/11601981$LR•IPV4•171『线路74』 -电影,https://live.metshop.top/huya/21059554$LR•IPV4•171『线路75』 -电影,p3p://167.114.175.6:55331/63375cce0008451773313a26199f3191$LR•IPV4•171『线路76』 -电影,p3p://167.114.175.6:55331/63fe69a800089af82b062bc65bb57f67$LR•IPV4•171『线路77』 -电影,p3p://167.114.175.6:55331/62cee8b3000ea6aedb30a55616047866$LR•IPV4•171『线路78』 -电影,p3p://167.114.175.6:55331/663e86e0000d192b28244b354df449af$LR•IPV4•171『线路79』 -电影,p3p://167.114.175.6:55331/651c3a7e00035f9e8778a18d0aeb27f1$LR•IPV4•171『线路80』 -电影,p3p://167.114.175.6:55331/62c860e50008ea96c1ae9a96599c6947$LR•IPV4•171『线路81』 -电影,p3p://167.114.175.6:55331/625bbd49000d7c0d1954e42d45bc3182$LR•IPV4•171『线路82』 -电影,https://live.chinacert.cftest5.cn/cnmg/live/625703337$LR•IPV4•171『线路83』 -电影,http://fn.gcl.de5.net:5908/gsh950428/625703337$LR•IPV4•171『线路84』 -电影,http://wfenf.x3322.net:7788/625703337$LR•IPV4•171『线路85』 -电影,http://106.5.175.159:1234/625703337$LR•IPV4•171『线路86』 -电影,http://36.104.221.222:7788/625703337$LR•IPV4•171『线路87』 -电影,http://115.58.151.196:1234/625703337$LR•IPV4•171『线路88』 -电影,http://182.61.15.163:80/625703337$LR•IPV4•171『线路89』 -电影,http://121.23.132.14:7788/625703337$LR•IPV4•171『线路90』 -电影,http://120.4.126.153:1234/625703337$LR•IPV4•171『线路91』 -电影,http://47.119.24.76:59093/625703337$LR•IPV4•171『线路92』 -电影,http://222.134.19.49:8090/625703337$LR•IPV4•171『线路93』 -电影,http://139.155.89.87:1000/625703337$LR•IPV4•171『线路94』 -电影,http://101.34.236.223:1112/625703337$LR•IPV4•171『线路95』 -电影,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226462/index.m3u8$LR•IPV4•171『线路96』 -电影,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226364/index.m3u8$LR•IPV4•171『线路97』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342412$LR•IPV4•171『线路98』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342421$LR•IPV4•171『线路99』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342387$LR•IPV4•171『线路100』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342386$LR•IPV4•171『线路101』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11602058$LR•IPV4•171『线路102』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11601968$LR•IPV4•171『线路103』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352876$LR•IPV4•171『线路104』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059581$LR•IPV4•171『线路105』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11602034$LR•IPV4•171『线路106』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342428$LR•IPV4•171『线路107』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059577$LR•IPV4•171『线路108』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342427$LR•IPV4•171『线路109』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352886$LR•IPV4•171『线路110』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352962$LR•IPV4•171『线路111』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059579$LR•IPV4•171『线路112』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059595$LR•IPV4•171『线路113』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11279247$LR•IPV4•171『线路114』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11602041$LR•IPV4•171『线路115』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059594$LR•IPV4•171『线路116』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352934$LR•IPV4•171『线路117』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059552$LR•IPV4•171『线路118』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11601971$LR•IPV4•171『线路119』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342414$LR•IPV4•171『线路120』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059585$LR•IPV4•171『线路121』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059592$LR•IPV4•171『线路122』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352877$LR•IPV4•171『线路123』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11602043$LR•IPV4•171『线路124』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352973$LR•IPV4•171『线路125』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11336587$LR•IPV4•171『线路126』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342390$LR•IPV4•171『线路127』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11279251$LR•IPV4•171『线路128』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342429$LR•IPV4•171『线路129』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11601972$LR•IPV4•171『线路130』 -电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342424$LR•IPV4•171『线路131』 -电影,http://222.186.39.21:35466/huya/11342412$LR•IPV4•171『线路132』 -电影,http://222.186.39.21:35466/huya/11342421$LR•IPV4•171『线路133』 -电影,http://222.186.39.21:35466/huya/11342387$LR•IPV4•171『线路134』 -电影,http://222.186.39.21:35466/huya/11342386$LR•IPV4•171『线路135』 -电影,http://222.186.39.21:35466/huya/11602058$LR•IPV4•171『线路136』 -电影,http://222.186.39.21:35466/huya/11601968$LR•IPV4•171『线路137』 -电影,http://222.186.39.21:35466/huya/11352876$LR•IPV4•171『线路138』 -电影,http://222.186.39.21:35466/huya/21059581$LR•IPV4•171『线路139』 -电影,http://222.186.39.21:35466/huya/11602034$LR•IPV4•171『线路140』 -电影,http://222.186.39.21:35466/huya/11342428$LR•IPV4•171『线路141』 -电影,http://222.186.39.21:35466/huya/21059577$LR•IPV4•171『线路142』 -电影,http://222.186.39.21:35466/huya/11342427$LR•IPV4•171『线路143』 -电影,http://222.186.39.21:35466/huya/11352886$LR•IPV4•171『线路144』 -电影,http://222.186.39.21:35466/huya/11352962$LR•IPV4•171『线路145』 -电影,http://222.186.39.21:35466/huya/21059579$LR•IPV4•171『线路146』 -电影,http://222.186.39.21:35466/huya/21059595$LR•IPV4•171『线路147』 -电影,http://222.186.39.21:35466/huya/11279247$LR•IPV4•171『线路148』 -电影,http://222.186.39.21:35466/huya/11602041$LR•IPV4•171『线路149』 -电影,http://222.186.39.21:35466/huya/21059594$LR•IPV4•171『线路150』 -电影,http://222.186.39.21:35466/huya/11352934$LR•IPV4•171『线路151』 -电影,http://222.186.39.21:35466/huya/21059552$LR•IPV4•171『线路152』 -电影,http://222.186.39.21:35466/huya/11601971$LR•IPV4•171『线路153』 -电影,http://222.186.39.21:35466/huya/11342414$LR•IPV4•171『线路154』 -电影,http://222.186.39.21:35466/huya/21059585$LR•IPV4•171『线路155』 -电影,http://222.186.39.21:35466/huya/21059592$LR•IPV4•171『线路156』 -电影,http://222.186.39.21:35466/huya/11352877$LR•IPV4•171『线路157』 -电影,http://222.186.39.21:35466/huya/11602043$LR•IPV4•171『线路158』 -电影,http://222.186.39.21:35466/huya/11352973$LR•IPV4•171『线路159』 -电影,http://222.186.39.21:35466/huya/11336587$LR•IPV4•171『线路160』 -电影,http://222.186.39.21:35466/huya/11342390$LR•IPV4•171『线路161』 -电影,http://222.186.39.21:35466/huya/11279251$LR•IPV4•171『线路162』 -电影,http://222.186.39.21:35466/huya/11342429$LR•IPV4•171『线路163』 -电影,http://222.186.39.21:35466/huya/11601972$LR•IPV4•171『线路164』 -电影,http://222.186.39.21:35466/huya/11342424$LR•IPV4•171『线路165』 -电影,http://gxlive.snrtv.com/sx8-SD.m3u8$LR•IPV4•171『线路166』 -电影,https://live-auth.51kandianshi.com/szgd/csztv4.m3u8$LR•IPV4•171『线路167』 -电影,http://123.121.5.183:4000/rtp/239.3.1.250:8001$LR•IPV4•171『线路168』 -电影,http://118.122.144.115:8888/newlive/live/hls/32/live.m3u8#http://183.223.157.33:85/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•171『线路169』 -电影,http://118.122.144.115:8888/newlive/live/hls/38/live.m3u8$LR•IPV4•171『线路170』 -电影,https://vd3.bdstatic.com/mda-kj0kfvyty9dk9nk0/v1-cae/sc/mda-kj0kfvyty9dk9nk0.mp4$LR•IPV4•171『线路171』 +迷,https://vip.ffzy-play7.com/20221117/5052_54ce37e4/index.m3u8$LR•IPV4•7『线路3』 +迷,https://vip.ffzy-play6.com/20221019/111_6edaadc7/index.m3u8$LR•IPV4•7『线路4』 +迷,p3p://167.114.175.6:55331/62c9a2fe00025fc4c698ca952e9711cb$LR•IPV4•7『线路5』 +迷,https://iptv.catvod.com/douyin/46224253966$LR•IPV4•7『线路6』 +迷,https://iptv.catvod.com/douyin/1365563194$LR•IPV4•7『线路7』 +电影,http://183.237.95.108:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•172『线路1』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•172『线路2』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•172『线路3』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=29982675$LR•IPV4•172『线路4』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•172『线路5』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=21059581$LR•IPV4•172『线路6』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=21059577$LR•IPV4•172『线路7』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=21059574$LR•IPV4•172『线路8』 +电影,https://live.ottiptv.cc/yy/1354889019$LR•IPV4•172『线路9』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•172『线路10』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=21059579$LR•IPV4•172『线路11』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11342427$LR•IPV4•172『线路12』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11601968$LR•IPV4•172『线路13』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11342414$LR•IPV4•172『线路14』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•172『线路15』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•172『线路16』 +电影,http://live.metshop.top/huya/21059578?cdn=alicdn$LR•IPV4•172『线路17』 +电影,http://live.metshop.top/huya/880261?cdn=alicdn$LR•IPV4•172『线路18』 +电影,http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•172『线路19』 +电影,http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•172『线路20』 +电影,http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•172『线路21』 +电影,http://live.metshop.top/huya/11342423?cdn=alicdn$LR•IPV4•172『线路22』 +电影,http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•172『线路23』 +电影,http://live.metshop.top/huya/21059599?cdn=alicdn$LR•IPV4•172『线路24』 +电影,http://live.metshop.top/huya/21059585?cdn=alicdn$LR•IPV4•172『线路25』 +电影,http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4•172『线路26』 +电影,http://live.metshop.top/huya/11601971?cdn=alicdn$LR•IPV4•172『线路27』 +电影,http://live.metshop.top/huya/11352884?cdn=alicdn$LR•IPV4•172『线路28』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11352962$LR•IPV4•172『线路29』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=21059585$LR•IPV4•172『线路30』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11601986$LR•IPV4•172『线路31』 +电影,http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•172『线路32』 +电影,http://bx.757888.xyz/api.php?id=zgdy$LR•IPV4•172『线路33』 +电影,http://zzy789.xyz/douyu1.php?id=96577$LR•IPV4•172『线路34』 +电影,http://zzy789.xyz/douyu1.php?id=20415$LR•IPV4•172『线路35』 +电影,http://zzy789.xyz/douyu1.php?id=263824$LR•IPV4•172『线路36』 +电影,http://zzy789.xyz/douyu1.php?id=3928$LR•IPV4•172『线路37』 +电影,http://epg.112114.xyz/douyu/1226741$LR•IPV4•172『线路38』 +电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=3637778$LR•IPV4•172『线路39』 +电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=1226741$LR•IPV4•172『线路40』 +电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=5423$LR•IPV4•172『线路41』 +电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=9650887$LR•IPV4•172『线路42』 +电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=323876$LR•IPV4•172『线路43』 +电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=218859$LR•IPV4•172『线路44』 +电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=96577$LR•IPV4•172『线路45』 +电影,http://huanqiuzhibo.cn/manifest/douyu.php?id=3637726$LR•IPV4•172『线路46』 +电影,http://epg.112114.eu.org/douyu/20415$LR•IPV4•172『线路47』 +电影,http://43.251.226.89:8080/play/907.m3u8$LR•IPV4•172『线路48』 +电影,http://cdn8.163189.xyz/163189/lhdy$LR•IPV4•172『线路49』 +电影,http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•172『线路50』 +电影,https://live.metshop.top/huya/11352871$LR•IPV4•172『线路51』 +电影,https://live.metshop.top/huya/21059588$LR•IPV4•172『线路52』 +电影,https://live.metshop.top/huya/11336590$LR•IPV4•172『线路53』 +电影,https://live.metshop.top/huya/11342395$LR•IPV4•172『线路54』 +电影,https://live.metshop.top/huya/11601981$LR•IPV4•172『线路55』 +电影,https://live.metshop.top/huya/21059554$LR•IPV4•172『线路56』 +电影,p3p://167.114.175.6:55331/63375cce0008451773313a26199f3191$LR•IPV4•172『线路57』 +电影,p3p://167.114.175.6:55331/63fe69a800089af82b062bc65bb57f67$LR•IPV4•172『线路58』 +电影,p3p://167.114.175.6:55331/62cee8b3000ea6aedb30a55616047866$LR•IPV4•172『线路59』 +电影,p3p://167.114.175.6:55331/663e86e0000d192b28244b354df449af$LR•IPV4•172『线路60』 +电影,p3p://167.114.175.6:55331/651c3a7e00035f9e8778a18d0aeb27f1$LR•IPV4•172『线路61』 +电影,p3p://167.114.175.6:55331/62c860e50008ea96c1ae9a96599c6947$LR•IPV4•172『线路62』 +电影,p3p://167.114.175.6:55331/625bbd49000d7c0d1954e42d45bc3182$LR•IPV4•172『线路63』 +电影,http://feilong123.vip/409990236/tv.php?id=ssdy$LR•IPV4•172『线路64』 +电影,https://cdn8.163189.xyz/163189/lhdy$LR•IPV4•172『线路65』 +电影,http://122.224.58.42:85/tsfile/live/1022_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•172『线路66』 +电影,http://hmfs.f3322.net:3388/hls/40/index.m3u8$LR•IPV4•172『线路67』 +电影,https://live.ottiptv.cc/huya/16028551$LR•IPV4•172『线路68』 +电影,https://live.ottiptv.cc/huya/18715610$LR•IPV4•172『线路69』 +电影,https://live.ottiptv.cc/huya/29833341$LR•IPV4•172『线路70』 +电影,https://live.ottiptv.cc/huya/16857432$LR•IPV4•172『线路71』 +电影,https://live.ottiptv.cc/huya/16424416$LR•IPV4•172『线路72』 +电影,https://live.ottiptv.cc/huya/29340502$LR•IPV4•172『线路73』 +电影,https://live.ottiptv.cc/huya/11774959$LR•IPV4•172『线路74』 +电影,https://live.ottiptv.cc/huya/19863777$LR•IPV4•172『线路75』 +电影,https://live.ottiptv.cc/huya/29869799$LR•IPV4•172『线路76』 +电影,https://iptv.catvod.com/yy/1354930209$LR•IPV4•172『线路77』 +电影,https://kbpull.kktv8.com/livekktv/99350550/playlist.m3u8$LR•IPV4•172『线路78』 +电影,https://down-hls.qxiu.com/live/453135/index.m3u8$LR•IPV4•172『线路79』 +电影,https://cfss.cc/api/kg/756444.mp4$LR•IPV4•172『线路80』 +电影,https://live.chinacert.cftest5.cn/cnmg/live/625703337$LR•IPV4•172『线路81』 +电影,http://fn.gcl.de5.net:5908/gsh950428/625703337$LR•IPV4•172『线路82』 +电影,http://wfenf.x3322.net:7788/625703337$LR•IPV4•172『线路83』 +电影,http://106.5.175.159:1234/625703337$LR•IPV4•172『线路84』 +电影,http://36.104.221.222:7788/625703337$LR•IPV4•172『线路85』 +电影,http://115.58.151.196:1234/625703337$LR•IPV4•172『线路86』 +电影,http://182.61.15.163:80/625703337$LR•IPV4•172『线路87』 +电影,http://121.23.132.14:7788/625703337$LR•IPV4•172『线路88』 +电影,http://120.4.126.153:1234/625703337$LR•IPV4•172『线路89』 +电影,http://47.119.24.76:59093/625703337$LR•IPV4•172『线路90』 +电影,http://222.134.19.49:8090/625703337$LR•IPV4•172『线路91』 +电影,http://139.155.89.87:1000/625703337$LR•IPV4•172『线路92』 +电影,http://101.34.236.223:1112/625703337$LR•IPV4•172『线路93』 +电影,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226462/index.m3u8$LR•IPV4•172『线路94』 +电影,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226364/index.m3u8$LR•IPV4•172『线路95』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342412$LR•IPV4•172『线路96』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342421$LR•IPV4•172『线路97』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342387$LR•IPV4•172『线路98』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342386$LR•IPV4•172『线路99』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11602058$LR•IPV4•172『线路100』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11601968$LR•IPV4•172『线路101』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352876$LR•IPV4•172『线路102』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059581$LR•IPV4•172『线路103』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11602034$LR•IPV4•172『线路104』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342428$LR•IPV4•172『线路105』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059577$LR•IPV4•172『线路106』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342427$LR•IPV4•172『线路107』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352886$LR•IPV4•172『线路108』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352962$LR•IPV4•172『线路109』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059579$LR•IPV4•172『线路110』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059595$LR•IPV4•172『线路111』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11279247$LR•IPV4•172『线路112』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11602041$LR•IPV4•172『线路113』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059594$LR•IPV4•172『线路114』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352934$LR•IPV4•172『线路115』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059552$LR•IPV4•172『线路116』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11601971$LR•IPV4•172『线路117』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342414$LR•IPV4•172『线路118』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059585$LR•IPV4•172『线路119』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=21059592$LR•IPV4•172『线路120』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352877$LR•IPV4•172『线路121』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11602043$LR•IPV4•172『线路122』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352973$LR•IPV4•172『线路123』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11336587$LR•IPV4•172『线路124』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342390$LR•IPV4•172『线路125』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11279251$LR•IPV4•172『线路126』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342429$LR•IPV4•172『线路127』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11601972$LR•IPV4•172『线路128』 +电影,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342424$LR•IPV4•172『线路129』 +电影,http://222.186.39.21:35466/huya/11342412$LR•IPV4•172『线路130』 +电影,http://222.186.39.21:35466/huya/11342421$LR•IPV4•172『线路131』 +电影,http://222.186.39.21:35466/huya/11342387$LR•IPV4•172『线路132』 +电影,http://222.186.39.21:35466/huya/11342386$LR•IPV4•172『线路133』 +电影,http://222.186.39.21:35466/huya/11602058$LR•IPV4•172『线路134』 +电影,http://222.186.39.21:35466/huya/11601968$LR•IPV4•172『线路135』 +电影,http://222.186.39.21:35466/huya/11352876$LR•IPV4•172『线路136』 +电影,http://222.186.39.21:35466/huya/21059581$LR•IPV4•172『线路137』 +电影,http://222.186.39.21:35466/huya/11602034$LR•IPV4•172『线路138』 +电影,http://222.186.39.21:35466/huya/11342428$LR•IPV4•172『线路139』 +电影,http://222.186.39.21:35466/huya/21059577$LR•IPV4•172『线路140』 +电影,http://222.186.39.21:35466/huya/11342427$LR•IPV4•172『线路141』 +电影,http://222.186.39.21:35466/huya/11352886$LR•IPV4•172『线路142』 +电影,http://222.186.39.21:35466/huya/11352962$LR•IPV4•172『线路143』 +电影,http://222.186.39.21:35466/huya/21059579$LR•IPV4•172『线路144』 +电影,http://222.186.39.21:35466/huya/21059595$LR•IPV4•172『线路145』 +电影,http://222.186.39.21:35466/huya/11279247$LR•IPV4•172『线路146』 +电影,http://222.186.39.21:35466/huya/11602041$LR•IPV4•172『线路147』 +电影,http://222.186.39.21:35466/huya/21059594$LR•IPV4•172『线路148』 +电影,http://222.186.39.21:35466/huya/11352934$LR•IPV4•172『线路149』 +电影,http://222.186.39.21:35466/huya/21059552$LR•IPV4•172『线路150』 +电影,http://222.186.39.21:35466/huya/11601971$LR•IPV4•172『线路151』 +电影,http://222.186.39.21:35466/huya/11342414$LR•IPV4•172『线路152』 +电影,http://222.186.39.21:35466/huya/21059585$LR•IPV4•172『线路153』 +电影,http://222.186.39.21:35466/huya/21059592$LR•IPV4•172『线路154』 +电影,http://222.186.39.21:35466/huya/11352877$LR•IPV4•172『线路155』 +电影,http://222.186.39.21:35466/huya/11602043$LR•IPV4•172『线路156』 +电影,http://222.186.39.21:35466/huya/11352973$LR•IPV4•172『线路157』 +电影,http://222.186.39.21:35466/huya/11336587$LR•IPV4•172『线路158』 +电影,http://222.186.39.21:35466/huya/11342390$LR•IPV4•172『线路159』 +电影,http://222.186.39.21:35466/huya/11279251$LR•IPV4•172『线路160』 +电影,http://222.186.39.21:35466/huya/11342429$LR•IPV4•172『线路161』 +电影,http://222.186.39.21:35466/huya/11601972$LR•IPV4•172『线路162』 +电影,http://222.186.39.21:35466/huya/11342424$LR•IPV4•172『线路163』 +电影,http://gxlive.snrtv.com/sx8-SD.m3u8$LR•IPV4•172『线路164』 +电影,https://live-auth.51kandianshi.com/szgd/csztv4.m3u8$LR•IPV4•172『线路165』 +电影,http://123.121.5.183:4000/rtp/239.3.1.250:8001$LR•IPV4•172『线路166』 +电影,http://118.122.144.115:8888/newlive/live/hls/32/live.m3u8#http://183.223.157.33:85/tsfile/live/1006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•172『线路167』 +电影,http://118.122.144.115:8888/newlive/live/hls/38/live.m3u8$LR•IPV4•172『线路168』 +电影,https://vd3.bdstatic.com/mda-kj0kfvyty9dk9nk0/v1-cae/sc/mda-kj0kfvyty9dk9nk0.mp4$LR•IPV4•172『线路169』 +电影,http://epg.112114.xyz/douyu/413573$LR•IPV4•172『线路170』 +电影,http://183.207.248.71/cntv/live1/jdianying/jdianying$LR•IPV4•172『线路171』 +电影,http://39.134.19.76/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226463/index.m3u8$LR•IPV4•172『线路172』 大唐双龙传,http://cdn.jdshipin.com:8880/huya.php?id=29465850$LR•IPV4•3『线路1』 大唐双龙传,https://live.ottiptv.cc/huya/29465850$LR•IPV4•3『线路2』 大唐双龙传,http://tv.zimtv.cn/tv/player/api/huya.php?id=29465850$LR•IPV4•3『线路3』 @@ -7128,12 +7134,12 @@ YY,#genre# 剧集轮播,#genre# 西游记,https://live.ottiptv.cc/yy/1353392400$LR•IPV4•5『线路1』 西游记,http://www.goodiptv.club/douyu/3113309$LR•IPV4•5『线路2』 -西游记,https://live.ottiptv.cc/huya/29465860$LR•IPV4•5『线路3』 -西游记,https://txmov2.a.kwimgs.com/bs3/video-hls/5239093806671579134_hlsb.m3u8$LR•IPV4•5『线路4』 +西游记,https://txmov2.a.kwimgs.com/bs3/video-hls/5239093806671579134_hlsb.m3u8$LR•IPV4•5『线路3』 +西游记,https://live.ottiptv.cc/huya/29465860$LR•IPV4•5『线路4』 西游记,http://tv.zimtv.cn/tv/player/api/huya.php?id=29465860$LR•IPV4•5『线路5』 猫和老鼠,https://live.metshop.top/huya/11352879$LR•IPV4•3『线路1』 -猫和老鼠,https://live.ottiptv.cc/huya/11352879$LR•IPV4•3『线路2』 -猫和老鼠,http://103.193.151.146/huya.php?id=11352879$LR•IPV4•3『线路3』 +猫和老鼠,http://103.193.151.146/huya.php?id=11352879$LR•IPV4•3『线路2』 +猫和老鼠,https://live.ottiptv.cc/huya/11352879$LR•IPV4•3『线路3』 相声小品,http://live.nctv.top/douyu1.php?id=9286868$LR•IPV4 刑事侦缉档案,http://cdn.jdshipin.com:8880/huya.php?id=29465856$LR•IPV4•3『线路1』 刑事侦缉档案,https://live.ottiptv.cc/huya/29465856$LR•IPV4•3『线路2』 @@ -7158,9 +7164,9 @@ YY,#genre# 东阳影视生活,http://l.cztvcloud.com/channels/lantian/SXdongyang1/720p.m3u8$LR•IPV4 广播,#genre# -MY,https://op-group1-swiftservehd-1.dens.tv/h/h192/index.m3u8$LR•IPV4•28『线路1』 -MY,https://op-group1-densxvisionhd-1.dens.tv/h/h18/index.m3u8$LR•IPV4•28『线路2』 -MY,https://tvsen6.aynaott.com/mytv/index.m3u8$LR•IPV4•28『线路3』 +MY,https://tvsen6.aynaott.com/mytv/index.m3u8$LR•IPV4•28『线路1』 +MY,https://op-group1-swiftservehd-1.dens.tv/h/h192/index.m3u8$LR•IPV4•28『线路2』 +MY,https://op-group1-densxvisionhd-1.dens.tv/h/h18/index.m3u8$LR•IPV4•28『线路3』 MY,https://gstv-myshop.gsshop.com/myshop_hd/myshop_hd.stream/playlist.m3u8$LR•IPV4•28『线路4』 MY,https://api-tv.ipnet.ua/api/v1/manifest/2118742632.m3u8$LR•IPV4•28『线路5』 MY,http://live.happywatch99.com/livehd11/90ecf35382a7597e553200692c3fc384.sdp/playlist.m3u8$LR•IPV4•28『线路6』 diff --git a/tvbox/lib/iptv_test.m3u b/tvbox/lib/iptv_test.m3u index 36bf0a7c..cbb2de8e 100755 --- a/tvbox/lib/iptv_test.m3u +++ b/tvbox/lib/iptv_test.m3u @@ -2,7 +2,7 @@ #EXTINF:-1 tvg-name="CCTV-4K" group-title="央视频道",CCTV-4K http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="CCTV-4K" group-title="央视频道",CCTV-4K -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1782925200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-65c07ea98ceb4dedf1dedc50101b9d6e&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•4『线路2』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1782945900-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-d4f726b8b91f87d841370b8379a24383&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="CCTV-4K" group-title="央视频道",CCTV-4K http://192.151.150.154/live/cctv4k.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="CCTV-4K" group-title="央视频道",CCTV-4K @@ -42,33 +42,35 @@ https://vd3.bdstatic.com/mda-kmkh9zy2b3gnx4bq/mda-kmkh9zy2b3gnx4bq.mp4?pd=19&vt= #EXTINF:-1 tvg-name="卖拐" group-title="经典小品",卖拐 https://vd3.bdstatic.com/mda-mdgia7vnkscvxh6d/v1-hknm/hd/mda-mdgia7vnkscvxh6d.mp4?pd=19&vt=1$LR•IPV4 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -https://ukzy.ukubf4.com/20220407/j3bjFWpb/index.m3u8$LR•IPV4•14『线路1』 +https://ukzy.ukubf4.com/20220407/j3bjFWpb/index.m3u8$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -http://rihou.cc:555/tv/[Pd]无线功夫$LR•IPV4•14『线路2』 +http://rihou.cc:555/tv/[Pd]无线功夫$LR•IPV4•15『线路2』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -http://43.251.226.89:8080/play/878.m3u8$LR•IPV4•14『线路3』 +http://43.251.226.89:8080/play/878.m3u8$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -http://43.251.226.89:8080/play/899.m3u8$LR•IPV4•14『线路4』 +http://43.251.226.89:8080/play/899.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•14『线路5』 +https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -p3p://167.114.175.6:55331/653e4a3f000b1abb0c85815c35fa0803$LR•IPV4•14『线路6』 +p3p://167.114.175.6:55331/653e4a3f000b1abb0c85815c35fa0803$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•14『线路7』 +https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -http://cdn6.163189.xyz/163189/yzwx$LR•IPV4•14『线路8』 +http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -https://cdn6.163189.xyz/163189/yzwx$LR•IPV4•14『线路9』 +http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5897056882324761054&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路10』 +http://cdn6.163189.xyz/163189/yzwx$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•14『线路11』 +https://cdn6.163189.xyz/163189/yzwx$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -http://111.43.126.240:9003/hls/79/index.m3u8$LR•IPV4•14『线路12』 +http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5897056882324761054&livemode=1&stbId=yu&mode=1&$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -https://vdse.bdstatic.com//92bd4a8082ab3cb7e96e1d852bc0d5f4.mp4?authorization=bce-auth-v1%2F40f207e648424f47b2e3dfbb1014b1a5%2F2022-05-07T19%3A35%3A37Z%2F-1%2Fhost%2Fbac03dc21a0ea989035da20433039cdcc82efc3a5773df7c4dbcf4d6b6d62443$LR•IPV4•14『线路13』 +http://111.43.126.240:9003/hls/79/index.m3u8$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 -https://vd3.bdstatic.com/mda-mjn3rmcivntas8ez/hd/cae_h264_nowatermark/1635016788091110865/mda-mjn3rmcivntas8ez.mp4?pd=19&vt=1$LR•IPV4•14『线路14』 +https://vdse.bdstatic.com//92bd4a8082ab3cb7e96e1d852bc0d5f4.mp4?authorization=bce-auth-v1%2F40f207e648424f47b2e3dfbb1014b1a5%2F2022-05-07T19%3A35%3A37Z%2F-1%2Fhost%2Fbac03dc21a0ea989035da20433039cdcc82efc3a5773df7c4dbcf4d6b6d62443$LR•IPV4•15『线路14』 +#EXTINF:-1 tvg-name="功夫" group-title="经典小品",功夫 +https://vd3.bdstatic.com/mda-mjn3rmcivntas8ez/hd/cae_h264_nowatermark/1635016788091110865/mda-mjn3rmcivntas8ez.mp4?pd=19&vt=1$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-name="相亲1" group-title="经典小品",相亲1 https://vd3.bdstatic.com/mda-ki5quadqsdi1tk9e/mda-ki5quadqsdi1tk9e.mp4?pd=-1&pt=0&cr=0&vt=0&cd=0&did=cfcd208495d565ef66e7dff9f98764da&logid=3024484252&vid=10808391094376007907&auth_key=1655295624-0-0-6fb10727b6c3c195f08ff9bebe036cd0&bcevod_channel=searchbox_feed$LR•IPV4 #EXTINF:-1 tvg-name="相亲2" group-title="经典小品",相亲2 @@ -312,7 +314,7 @@ https://live.ottiptv.cc/yy/1351814644$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="天龙八部" group-title="电视剧频道",天龙八部 https://live.ottiptv.cc/huya/29981376$LR•IPV4•2『线路2』 #EXTINF:-1 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-name="康熙王朝" group-title="电视剧频道",康熙王朝 https://live.ottiptv.cc/huya/11352940$LR•IPV4 #EXTINF:-1 tvg-name="庆余年" group-title="电视剧频道",庆余年 @@ -448,7 +450,7 @@ http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•6『 #EXTINF:-1 tvg-name="YMG未来" group-title="☘️浙江频道",YMG未来 http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 #EXTINF:-1 tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•12『线路1』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 @@ -458,15 +460,15 @@ https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•12『线 #EXTINF:-1 tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路6』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•12『线路7』 +http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•12『线路8』 +https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•12『线路9』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 -http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•12『线路10』 +https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 https://stream1.freetv.fun/shang-yu-wen-hua-1.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 @@ -1032,7 +1034,7 @@ http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$ #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路7』 #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 -http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•35『线路8』 +http://123.129.70.178:9901/tsfile/live/0135_1.m3u8$LR•IPV4•35『线路8』 #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•35『线路9』 #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 @@ -1074,19 +1076,19 @@ http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=b #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•35『线路28』 #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 -http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•35『线路29』 +http://107.150.60.122/live/tjtv5.m3u8$LR•IPV4•35『线路29』 #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 -http://107.150.60.122/live/tjtv5.m3u8$LR•IPV4•35『线路30』 +http://m.061899.xyz/mg/tjws$LR•IPV4•35『线路30』 #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 -http://m.061899.xyz/mg/tjws$LR•IPV4•35『线路31』 +http://111.43.126.240:9003/hls/31/index.m3u8$LR•IPV4•35『线路31』 #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 -http://111.43.126.240:9003/hls/31/index.m3u8$LR•IPV4•35『线路32』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226204/index.m3u8$LR•IPV4•35『线路32』 #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226204/index.m3u8$LR•IPV4•35『线路33』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225765/index.m3u8$LR•IPV4•35『线路33』 #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225765/index.m3u8$LR•IPV4•35『线路34』 +http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227306/index.m3u8$LR•IPV4•35『线路34』 #EXTINF:-1 tvg-name="天津" group-title="☘️天津频道",天津 -http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227306/index.m3u8$LR•IPV4•35『线路35』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•35『线路35』 #EXTINF:-1 tvg-name="西峰综合" group-title="☘️甘肃频道",西峰综合 https://play.kankanlive.com/live/1683944827526991.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="渭源新闻" group-title="☘️甘肃频道",渭源新闻 @@ -1096,9 +1098,9 @@ http://218.84.127.245:1026/hls/main1/playlist.m3u8?zxinjd,$LR•IPV4 #EXTINF:-1 tvg-name="伊犁哈萨克" group-title="☘️新疆频道",伊犁哈萨克 http://110.153.180.106:55555/out_3/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="伊犁经济法制" group-title="☘️新疆频道",伊犁经济法制 -http://110.153.180.106:55555/out_4/index.m3u8?zxinjd$LR•IPV4 +http://110.153.180.106:55555/out_4/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="伊犁维吾尔" group-title="☘️新疆频道",伊犁维吾尔 -http://110.153.180.106:55555/out_2/index.m3u8?zxinjd$LR•IPV4 +http://110.153.180.106:55555/out_2/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="青州综合" group-title="☘️山东频道",青州综合 http://sdqz.chinashadt.com:2036/live/stream:1.stream/playlist.m3u8?shandd$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="青州综合" group-title="☘️山东频道",青州综合 @@ -1202,9 +1204,9 @@ https://live.ottiptv.cc/huya/25567648$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="火影忍者" group-title="🪁动画频道",火影忍者 https://live.ottiptv.cc/huya/29465866$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="海绵宝宝" group-title="🪁动画频道",海绵宝宝 -https://live.ottiptv.cc/huya/11352919$LR•IPV4•2『线路1』 +https://live.metshop.top/douyu/3949681$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="海绵宝宝" group-title="🪁动画频道",海绵宝宝 -https://live.metshop.top/douyu/3949681$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11352919$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="电竞天堂" group-title="🎮游戏频道",电竞天堂 http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288003&livemode=1&stbId=yu&mode=1&$LR•IPV4 #EXTINF:-1 tvg-name="音乐现场" group-title="🎵音乐频道",音乐现场 @@ -1234,35 +1236,35 @@ http://192.151.150.154/live/chcjt.m3u8$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 http://38.75.136.137:98/gslb/dsdqpub/chcjt.m3u8?auth=testpub$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://39.134.19.153/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226462/index.m3u8$LR•IPV4•18『线路4』 +https://live.chinacert.cftest5.cn/cnmg/live/644368373$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -https://live.chinacert.cftest5.cn/cnmg/live/644368373$LR•IPV4•18『线路5』 +http://fn.gcl.de5.net:5908/gsh950428/644368373$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://fn.gcl.de5.net:5908/gsh950428/644368373$LR•IPV4•18『线路6』 +http://wfenf.x3322.net:7788/644368373$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://wfenf.x3322.net:7788/644368373$LR•IPV4•18『线路7』 +http://106.5.175.159:1234/644368373$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://106.5.175.159:1234/644368373$LR•IPV4•18『线路8』 +http://36.104.221.222:7788/644368373$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://36.104.221.222:7788/644368373$LR•IPV4•18『线路9』 +http://115.58.151.196:1234/644368373$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://115.58.151.196:1234/644368373$LR•IPV4•18『线路10』 +http://182.61.15.163:80/644368373$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://182.61.15.163:80/644368373$LR•IPV4•18『线路11』 +http://121.23.132.14:7788/644368373$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://121.23.132.14:7788/644368373$LR•IPV4•18『线路12』 +http://120.4.126.153:1234/644368373$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://120.4.126.153:1234/644368373$LR•IPV4•18『线路13』 +http://47.119.24.76:59093/644368373$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://47.119.24.76:59093/644368373$LR•IPV4•18『线路14』 +http://222.134.19.49:8090/644368373$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://222.134.19.49:8090/644368373$LR•IPV4•18『线路15』 +http://139.155.89.87:1000/644368373$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://139.155.89.87:1000/644368373$LR•IPV4•18『线路16』 +http://101.34.236.223:1112/644368373$LR•IPV4•18『线路16』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://101.34.236.223:1112/644368373$LR•IPV4•18『线路17』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=chcjt$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-name="家庭影院" group-title="电影频道",家庭影院 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=chcjt$LR•IPV4•18『线路18』 +http://39.134.19.153/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226462/index.m3u8$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-name="九品芝麻官" group-title="电影频道",九品芝麻官 https://alimov2.a.kwimgs.com/upic/2021/12/28/11/BMjAyMTEyMjgxMTIyMTJfNDAzMDAxOTlfNjM2NjgxODA5MTBfMF8z_b_B6a0bcfcdbdaac183fa7dcbcd3e11bcaf.mp4$LR•IPV4 #EXTINF:-1 tvg-name="无间道1" group-title="电影频道",无间道1 @@ -2348,11 +2350,11 @@ https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/ #EXTINF:-1 tvg-name="UK" group-title="•杂货",UK https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•56『线路56』 #EXTINF:-1 tvg-name="US" group-title="•杂货",US -https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01438-ewscrippscompan-ionplus-tablo/playlist.m3u8$LR•IPV4•165『线路1』 +https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV78.m3u8$LR•IPV4•165『线路1』 #EXTINF:-1 tvg-name="US" group-title="•杂货",US -https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV78.m3u8$LR•IPV4•165『线路2』 +https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV26.m3u8$LR•IPV4•165『线路2』 #EXTINF:-1 tvg-name="US" group-title="•杂货",US -https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV26.m3u8$LR•IPV4•165『线路3』 +https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01438-ewscrippscompan-ionplus-tablo/playlist.m3u8$LR•IPV4•165『线路3』 #EXTINF:-1 tvg-name="US" group-title="•杂货",US http://php.jdshipin.com/TVOD/iptv.php?id=j2$LR•IPV4•165『线路4』 #EXTINF:-1 tvg-name="US" group-title="•杂货",US @@ -2416,7 +2418,7 @@ https://eu1.servers10.com:8081/8166/index.m3u8$LR•IPV4•165『线路33』 #EXTINF:-1 tvg-name="US" group-title="•杂货",US https://tringliveviz.akamaized.net/delta/105/out/u/qwaszxerdfcvrtryuy.m3u8$LR•IPV4•165『线路34』 #EXTINF:-1 tvg-name="US" group-title="•杂货",US -http://r.jdshipin.com/ndGgS$LR•IPV4•165『线路35』 +http://r.jdshipin.com/Nr5jq$LR•IPV4•165『线路35』 #EXTINF:-1 tvg-name="US" group-title="•杂货",US https://www.iesdouyin.com/aweme/v1/playwm/?video_id=v0d00fg10000d1bp3snog65icebga4i0&ratio=720p&line=0$LR•IPV4•165『线路36』 #EXTINF:-1 tvg-name="US" group-title="•杂货",US @@ -4448,295 +4450,297 @@ http://newcntv.qcloudcdn.com/asp/hls/4000/0303000a/3/default/2bdfdad540b342f592f #EXTINF:-1 tvg-name="地理中国" group-title="💓优质个源",地理中国 http://newcntv.qcloudcdn.com/asp/hls/1200/0303000a/3/default/c6baf6f74bb944aeacee1065ea72c798/1200.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•145『线路1』 +https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=473672dc61422fb039e3d97851b8147e$LR•IPV4•146『线路1』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://111.8.224.6:9999/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•145『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•146『线路2』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=f41a4cba7d196beb36c86b6f7ec67e4d$LR•IPV4•145『线路3』 +http://111.8.224.6:9999/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•146『线路3』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://0472.org/hls/cgtnd.m3u8$LR•IPV4•145『线路4』 +https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=45393a2f14f679e6b5db6aea2afafa39$LR•IPV4•146『线路4』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•145『线路5』 +https://0472.org/hls/cgtnd.m3u8$LR•IPV4•146『线路5』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•145『线路6』 +http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•146『线路6』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•145『线路7』 +http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•146『线路7』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•145『线路8』 +http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•146『线路8』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•145『线路9』 +http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•146『线路9』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•145『线路10』 +http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•146『线路10』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•145『线路11』 +http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•146『线路11』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•145『线路12』 +http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•146『线路12』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•145『线路13』 +http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•146『线路13』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•145『线路14』 +http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•146『线路14』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•145『线路15』 +http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•146『线路15』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•145『线路16』 +http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•146『线路16』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•145『线路17』 +http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•146『线路17』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•145『线路18』 +http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•146『线路18』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•145『线路19』 +http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•146『线路19』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•145『线路20』 +http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•146『线路20』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•145『线路21』 +http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•146『线路21』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•145『线路22』 +http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•146『线路22』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•145『线路23』 +http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•146『线路23』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•145『线路24』 +http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•146『线路24』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•145『线路25』 +http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•146『线路25』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•145『线路26』 +http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•146『线路26』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•145『线路27』 +http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•146『线路27』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•145『线路28』 +https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•146『线路28』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•145『线路29』 +http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•146『线路29』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•145『线路30』 +http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•146『线路30』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•145『线路31』 +http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•146『线路31』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•145『线路32』 +https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•146『线路32』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•145『线路33』 +https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•146『线路33』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•145『线路34』 +http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•146『线路34』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://101.6.130.52:1234/673168140$LR•IPV4•145『线路35』 +http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•146『线路35』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://101.6.130.52:1234/609006487$LR•IPV4•145『线路36』 +http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•146『线路36』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://lsfb.avap.jilintv.cn/zqvk7vpj/channel/da805d8d77a24db8aaa62328eb6d874e/index.m3u8$LR•IPV4•145『线路37』 +http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•146『线路37』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•145『线路38』 +http://101.6.130.52:1234/673168140$LR•IPV4•146『线路38』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•145『线路39』 +http://101.6.130.52:1234/609006487$LR•IPV4•146『线路39』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://live.chinacert.cftest5.cn/cnmg/live/609006487$LR•IPV4•145『线路40』 +http://lsfb.avap.jilintv.cn/zqvk7vpj/channel/da805d8d77a24db8aaa62328eb6d874e/index.m3u8$LR•IPV4•146『线路40』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://fn.gcl.de5.net:5908/gsh950428/609006487$LR•IPV4•145『线路41』 +https://live.chinacert.cftest5.cn/cnmg/live/609006487$LR•IPV4•146『线路41』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://wfenf.x3322.net:7788/609006487$LR•IPV4•145『线路42』 +http://fn.gcl.de5.net:5908/gsh950428/609006487$LR•IPV4•146『线路42』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://106.5.175.159:1234/609006487$LR•IPV4•145『线路43』 +http://wfenf.x3322.net:7788/609006487$LR•IPV4•146『线路43』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://36.104.221.222:7788/609006487$LR•IPV4•145『线路44』 +http://106.5.175.159:1234/609006487$LR•IPV4•146『线路44』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://115.58.151.196:1234/609006487$LR•IPV4•145『线路45』 +http://36.104.221.222:7788/609006487$LR•IPV4•146『线路45』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://182.61.15.163:80/609006487$LR•IPV4•145『线路46』 +http://115.58.151.196:1234/609006487$LR•IPV4•146『线路46』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://121.23.132.14:7788/609006487$LR•IPV4•145『线路47』 +http://182.61.15.163:80/609006487$LR•IPV4•146『线路47』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://120.4.126.153:1234/609006487$LR•IPV4•145『线路48』 +http://121.23.132.14:7788/609006487$LR•IPV4•146『线路48』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://47.119.24.76:59093/609006487$LR•IPV4•145『线路49』 +http://120.4.126.153:1234/609006487$LR•IPV4•146『线路49』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://222.134.19.49:8090/609006487$LR•IPV4•145『线路50』 +http://47.119.24.76:59093/609006487$LR•IPV4•146『线路50』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://139.155.89.87:1000/609006487$LR•IPV4•145『线路51』 +http://222.134.19.49:8090/609006487$LR•IPV4•146『线路51』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://101.34.236.223:1112/609006487$LR•IPV4•145『线路52』 +http://139.155.89.87:1000/609006487$LR•IPV4•146『线路52』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227084/index.m3u8$LR•IPV4•145『线路53』 +http://101.34.236.223:1112/609006487$LR•IPV4•146『线路53』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://ali-xwl.cztv.com/live/channel121080Plxw.m3u8$LR•IPV4•145『线路54』 +http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227084/index.m3u8$LR•IPV4•146『线路54』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8?ads.app_bundle=[APP_BUNDLE]&ads.app_name=LG%20Channel%20Plus&ads.app_store_url=[APP_STOREURL]&ads.app_version=[APP_VERSION]&ads.brand_name=[DEVICE_MAKE]&ads.content_livestream=0&ads.device_lmt=[LMT]&ads.device_model=[DEVICE_MODEL]&ads.did=[IFA]&ads.fck=[FCK]&ads.gdpr_consent=[GDPR_CONSENT]&ads.ifa_type=[IFA_TYPE]&ads.market=uk&ads.platform=lg_channelplus&ads.pod_type=playerpage_midroll&ads.rtv_channel_name=sci-fi-rakuten-tv_uk&ads.rtv_content_id=6241&ads.rtv_language=en&ads.viewsize=[VIEWSIZE]&channel_id=6241&disable_subtitles=true&publishing_platform_id=2$LR•IPV4•145『线路55』 +https://ali-xwl.cztv.com/live/channel121080Plxw.m3u8$LR•IPV4•146『线路55』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/manifest/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/2633b8e1-37ed-4477-9e50-d6b4f489d363/4.m3u8$LR•IPV4•145『线路56』 +https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8?ads.app_bundle=[APP_BUNDLE]&ads.app_name=LG%20Channel%20Plus&ads.app_store_url=[APP_STOREURL]&ads.app_version=[APP_VERSION]&ads.brand_name=[DEVICE_MAKE]&ads.content_livestream=0&ads.device_lmt=[LMT]&ads.device_model=[DEVICE_MODEL]&ads.did=[IFA]&ads.fck=[FCK]&ads.gdpr_consent=[GDPR_CONSENT]&ads.ifa_type=[IFA_TYPE]&ads.market=uk&ads.platform=lg_channelplus&ads.pod_type=playerpage_midroll&ads.rtv_channel_name=sci-fi-rakuten-tv_uk&ads.rtv_content_id=6241&ads.rtv_language=en&ads.viewsize=[VIEWSIZE]&channel_id=6241&disable_subtitles=true&publishing_platform_id=2$LR•IPV4•146『线路56』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•145『线路57』 +https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/manifest/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/2633b8e1-37ed-4477-9e50-d6b4f489d363/4.m3u8$LR•IPV4•146『线路57』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://aegis-cloudfront-1.tubi.video/8d1f164d-34ef-4f70-b948-ae33826a0aaa/playlist.m3u8$LR•IPV4•145『线路58』 +p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•146『线路58』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/icielsass.m3u8$LR•IPV4•145『线路59』 +https://aegis-cloudfront-1.tubi.video/8d1f164d-34ef-4f70-b948-ae33826a0aaa/playlist.m3u8$LR•IPV4•146『线路59』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://amdici.akamaized.net/hls/live/873426/ICI-Live-Stream/master.m3u8$LR•IPV4•145『线路60』 +https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/icielsass.m3u8$LR•IPV4•146『线路60』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive-dai.akamaized.net/hls/live/696614/cancbftprem/master.m3u8$LR•IPV4•145『线路61』 +https://amdici.akamaized.net/hls/live/873426/ICI-Live-Stream/master.m3u8$LR•IPV4•146『线路61』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/704020/cancbxft/master.m3u8$LR•IPV4•145『线路62』 +https://rcavlive-dai.akamaized.net/hls/live/696614/cancbftprem/master.m3u8$LR•IPV4•146『线路62』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/704017/cancbuft/master.m3u8$LR•IPV4•145『线路63』 +https://rcavlive.akamaized.net/hls/live/704020/cancbxft/master.m3u8$LR•IPV4•146『线路63』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/704024/cancjbr/master.m3u8$LR•IPV4•145『线路64』 +https://rcavlive.akamaized.net/hls/live/704017/cancbuft/master.m3u8$LR•IPV4•146『线路64』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/704016/cancksh/master.m3u8$LR•IPV4•145『线路65』 +https://rcavlive.akamaized.net/hls/live/704024/cancjbr/master.m3u8$LR•IPV4•146『线路65』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/704018/cancbwft/master.m3u8$LR•IPV4•145『线路66』 +https://rcavlive.akamaized.net/hls/live/704016/cancksh/master.m3u8$LR•IPV4•146『线路66』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/704021/cancktm/master.m3u8$LR•IPV4•145『线路67』 +https://rcavlive.akamaized.net/hls/live/704018/cancbwft/master.m3u8$LR•IPV4•146『线路67』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/704022/cancblft/master.m3u8$LR•IPV4•145『线路68』 +https://rcavlive.akamaized.net/hls/live/704021/cancktm/master.m3u8$LR•IPV4•146『线路68』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/664046/cancboft/master.m3u8$LR•IPV4•145『线路69』 +https://rcavlive.akamaized.net/hls/live/704022/cancblft/master.m3u8$LR•IPV4•146『线路69』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/664045/cancbvt/master.m3u8$LR•IPV4•145『线路70』 +https://rcavlive.akamaized.net/hls/live/664046/cancboft/master.m3u8$LR•IPV4•146『线路70』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/704023/cancktv/master.m3u8$LR•IPV4•145『线路71』 +https://rcavlive.akamaized.net/hls/live/664045/cancbvt/master.m3u8$LR•IPV4•146『线路71』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/704019/cancbkft/master.m3u8$LR•IPV4•145『线路72』 +https://rcavlive.akamaized.net/hls/live/704023/cancktv/master.m3u8$LR•IPV4•146『线路72』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/704014/cancbaft/master.m3u8$LR•IPV4•145『线路73』 +https://rcavlive.akamaized.net/hls/live/704019/cancbkft/master.m3u8$LR•IPV4•146『线路73』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://5bf7b725107e5.streamlock.net/kstv/kstv/playlist.m3u8$LR•IPV4•145『线路74』 +https://rcavlive.akamaized.net/hls/live/704014/cancbaft/master.m3u8$LR•IPV4•146『线路74』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://cs2.push2stream.com/NCI-DVR/playlist.m3u8$LR•IPV4•145『线路75』 +https://5bf7b725107e5.streamlock.net/kstv/kstv/playlist.m3u8$LR•IPV4•146『线路75』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://unlimited1-cl-isp.dps.live/tvu/tvu.smil/playlist.m3u8$LR•IPV4•145『线路76』 +https://cs2.push2stream.com/NCI-DVR/playlist.m3u8$LR•IPV4•146『线路76』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-60c34592c911890007f29a73.m3u8$LR•IPV4•145『线路77』 +https://unlimited1-cl-isp.dps.live/tvu/tvu.smil/playlist.m3u8$LR•IPV4•146『线路77』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-5e972a21ad709d00074195ba.m3u8$LR•IPV4•145『线路78』 +https://jmp2.uk/plu-60c34592c911890007f29a73.m3u8$LR•IPV4•146『线路78』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-5f1ac2591dd8880007bb7d6d.m3u8$LR•IPV4•145『线路79』 +https://jmp2.uk/plu-5e972a21ad709d00074195ba.m3u8$LR•IPV4•146『线路79』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-5dcb62e63d4d8f0009f36881.m3u8$LR•IPV4•145『线路80』 +https://jmp2.uk/plu-5f1ac2591dd8880007bb7d6d.m3u8$LR•IPV4•146『线路80』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-699d87093d5dba980705cca8.m3u8$LR•IPV4•145『线路81』 +https://jmp2.uk/plu-5dcb62e63d4d8f0009f36881.m3u8$LR•IPV4•146『线路81』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-608aa4a4cc92820007b663af.m3u8$LR•IPV4•145『线路82』 +https://jmp2.uk/plu-699d87093d5dba980705cca8.m3u8$LR•IPV4•146『线路82』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-68750875759366af05a151ce.m3u8$LR•IPV4•145『线路83』 +https://jmp2.uk/plu-608aa4a4cc92820007b663af.m3u8$LR•IPV4•146『线路83』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-67ed14aaf7c5d70b9089c3bf.m3u8$LR•IPV4•145『线路84』 +https://jmp2.uk/plu-68750875759366af05a151ce.m3u8$LR•IPV4•146『线路84』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://ncdn-live-bfm.pfd.sfr.net/shls/LIVE$LR•IPV4•145『线路85』 +https://jmp2.uk/plu-67ed14aaf7c5d70b9089c3bf.m3u8$LR•IPV4•146『线路85』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://ncdn-live-bfm.pfd.sfr.net/shls/LIVE$LR•IPV4•145『线路86』 +https://ncdn-live-bfm.pfd.sfr.net/shls/LIVE$LR•IPV4•146『线路86』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://rcavlive.akamaized.net/hls/live/704025/xcanrdi/master.m3u8$LR•IPV4•145『线路87』 +https://ncdn-live-bfm.pfd.sfr.net/shls/LIVE$LR•IPV4•146『线路87』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://5f22d76e220e1.streamlock.net/pacicontemporarychannel/pacicontemporarychannel/playlist.m3u8$LR•IPV4•145『线路88』 +https://rcavlive.akamaized.net/hls/live/704025/xcanrdi/master.m3u8$LR•IPV4•146『线路88』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://origin.dpsgo.com/ssai/event/BBp0VeP6QtOOlH8nu3bWTg/master.m3u8$LR•IPV4•145『线路89』 +https://5f22d76e220e1.streamlock.net/pacicontemporarychannel/pacicontemporarychannel/playlist.m3u8$LR•IPV4•146『线路89』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://canal.mediaserver.com.co/live/oracionconson.m3u8$LR•IPV4•145『线路90』 +https://origin.dpsgo.com/ssai/event/BBp0VeP6QtOOlH8nu3bWTg/master.m3u8$LR•IPV4•146『线路90』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://livestream.mediacci.com/ccitv/index.m3u8$LR•IPV4•145『线路91』 +https://canal.mediaserver.com.co/live/oracionconson.m3u8$LR•IPV4•146『线路91』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emciafrique.m3u8$LR•IPV4•145『线路92』 +https://livestream.mediacci.com/ccitv/index.m3u8$LR•IPV4•146『线路92』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emciamerique.m3u8$LR•IPV4•145『线路93』 +https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emciafrique.m3u8$LR•IPV4•146『线路93』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emcieurope.m3u8$LR•IPV4•145『线路94』 +https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emciamerique.m3u8$LR•IPV4•146『线路94』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://video2.getstreamhosting.com:19360/8000/8000.m3u8$LR•IPV4•145『线路95』 +https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emcieurope.m3u8$LR•IPV4•146『线路95』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://stream.eleden.com/livesalvatv/ngrp:livesalvatv_all/playlist.m3u8$LR•IPV4•145『线路96』 +https://video2.getstreamhosting.com:19360/8000/8000.m3u8$LR•IPV4•146『线路96』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://67acccf130420.streamlock.net/enlacepr1/enlacepr1/playlist.m3u8$LR•IPV4•145『线路97』 +https://stream.eleden.com/livesalvatv/ngrp:livesalvatv_all/playlist.m3u8$LR•IPV4•146『线路97』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/RD16KOPRXE0O9L4VAXVJ/hls3/now,-1m/m.m3u8?ads.vf=EoTB4HqnHbi$LR•IPV4•145『线路98』 +https://67acccf130420.streamlock.net/enlacepr1/enlacepr1/playlist.m3u8$LR•IPV4•146『线路98』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-63211ba9cad976000794f988.m3u8$LR•IPV4•145『线路99』 +https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/RD16KOPRXE0O9L4VAXVJ/hls3/now,-1m/m.m3u8?ads.vf=EoTB4HqnHbi$LR•IPV4•146『线路99』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-6964d2179ba4ac18051a18ce.m3u8$LR•IPV4•145『线路100』 +https://jmp2.uk/plu-63211ba9cad976000794f988.m3u8$LR•IPV4•146『线路100』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://sci-fi-rakuten-tv-it.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6430/master.m3u8$LR•IPV4•145『线路101』 +https://jmp2.uk/plu-6964d2179ba4ac18051a18ce.m3u8$LR•IPV4•146『线路101』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://sci-fi-rakuten-tv-es.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6740/master.m3u8$LR•IPV4•145『线路102』 +https://sci-fi-rakuten-tv-it.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6430/master.m3u8$LR•IPV4•146『线路102』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://lb.dstvmultimedia.com/SciFiHD/index.m3u8$LR•IPV4•145『线路103』 +https://sci-fi-rakuten-tv-es.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6740/master.m3u8$LR•IPV4•146『线路103』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/a985e052-6868-4365-ac45-52afe9008b25/manifest.m3u8$LR•IPV4•145『线路104』 +https://lb.dstvmultimedia.com/SciFiHD/index.m3u8$LR•IPV4•146『线路104』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://amg00609-amg00609c5-rakuten-uk-3764.playouts.now.amagi.tv/master.m3u8$LR•IPV4•145『线路105』 +https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/a985e052-6868-4365-ac45-52afe9008b25/manifest.m3u8$LR•IPV4•146『线路105』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-61bb2814ac085a00074309a6.m3u8$LR•IPV4•145『线路106』 +https://amg00609-amg00609c5-rakuten-uk-3764.playouts.now.amagi.tv/master.m3u8$LR•IPV4•146『线路106』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://stream.ads.ottera.tv/playlist.m3u8?network_id=4312$LR•IPV4•145『线路107』 +https://jmp2.uk/plu-61bb2814ac085a00074309a6.m3u8$LR•IPV4•146『线路107』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-680bdaf54d7cf165c705f91e.m3u8$LR•IPV4•145『线路108』 +https://stream.ads.ottera.tv/playlist.m3u8?network_id=4312$LR•IPV4•146『线路108』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://158.180.39.89:5033/hayatovci.m3u8$LR•IPV4•145『线路109』 +https://jmp2.uk/plu-680bdaf54d7cf165c705f91e.m3u8$LR•IPV4•146『线路109』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-619247c34a270700077c8415.m3u8$LR•IPV4•145『线路110』 +http://158.180.39.89:5033/hayatovci.m3u8$LR•IPV4•146『线路110』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-6479ff1c17f5e10008ad2797.m3u8$LR•IPV4•145『线路111』 +https://jmp2.uk/plu-619247c34a270700077c8415.m3u8$LR•IPV4•146『线路111』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-65662f8a2c46f300088a84cc.m3u8$LR•IPV4•145『线路112』 +https://jmp2.uk/plu-6479ff1c17f5e10008ad2797.m3u8$LR•IPV4•146『线路112』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-65ddec1ef7f0af0008be4b65.m3u8$LR•IPV4•145『线路113』 +https://jmp2.uk/plu-65662f8a2c46f300088a84cc.m3u8$LR•IPV4•146『线路113』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-63d2ba2f60bc8f0008981a0e.m3u8$LR•IPV4•145『线路114』 +https://jmp2.uk/plu-65ddec1ef7f0af0008be4b65.m3u8$LR•IPV4•146『线路114』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-645e00d5d3fdde000829463a.m3u8$LR•IPV4•145『线路115』 +https://jmp2.uk/plu-63d2ba2f60bc8f0008981a0e.m3u8$LR•IPV4•146『线路115』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-60ed498c4248a400077c0b9d.m3u8$LR•IPV4•145『线路116』 +https://jmp2.uk/plu-645e00d5d3fdde000829463a.m3u8$LR•IPV4•146『线路116』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-5f6a38eaa5b68b0007a00e7a.m3u8$LR•IPV4•145『线路117』 +https://jmp2.uk/plu-60ed498c4248a400077c0b9d.m3u8$LR•IPV4•146『线路117』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-5dc02a44a9518600094273ac.m3u8$LR•IPV4•145『线路118』 +https://jmp2.uk/plu-5f6a38eaa5b68b0007a00e7a.m3u8$LR•IPV4•146『线路118』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-61728bb9ee3773000840c1fa.m3u8$LR•IPV4•145『线路119』 +https://jmp2.uk/plu-5dc02a44a9518600094273ac.m3u8$LR•IPV4•146『线路119』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-61f9598588f86000078ee7d6.m3u8$LR•IPV4•145『线路120』 +https://jmp2.uk/plu-61728bb9ee3773000840c1fa.m3u8$LR•IPV4•146『线路120』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-61f957e051cca800076f2358.m3u8$LR•IPV4•145『线路121』 +https://jmp2.uk/plu-61f9598588f86000078ee7d6.m3u8$LR•IPV4•146『线路121』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-61f9597e78607000074f6c2a.m3u8$LR•IPV4•145『线路122』 +https://jmp2.uk/plu-61f957e051cca800076f2358.m3u8$LR•IPV4•146『线路122』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-66166cb1307fa30008f275e7.m3u8$LR•IPV4•145『线路123』 +https://jmp2.uk/plu-61f9597e78607000074f6c2a.m3u8$LR•IPV4•146『线路123』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-5f2817d3d7573a00080f9175.m3u8$LR•IPV4•145『线路124』 +https://jmp2.uk/plu-66166cb1307fa30008f275e7.m3u8$LR•IPV4•146『线路124』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-5b4fc274694c027be6ed3eea.m3u8$LR•IPV4•145『线路125』 +https://jmp2.uk/plu-5f2817d3d7573a00080f9175.m3u8$LR•IPV4•146『线路125』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://webstream.multistream.it/memfs/e2cb3629-c1a2-495b-b43a-9eb386f04ed8.m3u8$LR•IPV4•145『线路126』 +https://jmp2.uk/plu-5b4fc274694c027be6ed3eea.m3u8$LR•IPV4•146『线路126』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://31.148.48.15/SONY_SCI_FI/index.m3u8$LR•IPV4•145『线路127』 +https://webstream.multistream.it/memfs/e2cb3629-c1a2-495b-b43a-9eb386f04ed8.m3u8$LR•IPV4•146『线路127』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://hls127.freeott.top:8080/Da_Vinci_Learning/video.m3u8$LR•IPV4•145『线路128』 +http://31.148.48.15/SONY_SCI_FI/index.m3u8$LR•IPV4•146『线路128』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-65df731cec9fda0008b7aa8d.m3u8$LR•IPV4•145『线路129』 +http://hls127.freeott.top:8080/Da_Vinci_Learning/video.m3u8$LR•IPV4•146『线路129』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-65df7272ec9fda0008b7a970.m3u8$LR•IPV4•145『线路130』 +https://jmp2.uk/plu-65df731cec9fda0008b7aa8d.m3u8$LR•IPV4•146『线路130』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-65df73520d4561000817c29b.m3u8$LR•IPV4•145『线路131』 +https://jmp2.uk/plu-65df7272ec9fda0008b7a970.m3u8$LR•IPV4•146『线路131』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-65df72db18036500081a8292.m3u8$LR•IPV4•145『线路132』 +https://jmp2.uk/plu-65df73520d4561000817c29b.m3u8$LR•IPV4•146『线路132』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://video.ejeserver.com/live/mcitelevision.m3u8$LR•IPV4•145『线路133』 +https://jmp2.uk/plu-65df72db18036500081a8292.m3u8$LR•IPV4•146『线路133』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•145『线路134』 +https://video.ejeserver.com/live/mcitelevision.m3u8$LR•IPV4•146『线路134』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://akariko.netgenx.site/stream/jp/discovery_channel/stream-output.m3u8?mode=hls$LR•IPV4•145『线路135』 +http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•146『线路135』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•145『线路136』 +http://akariko.netgenx.site/stream/jp/discovery_channel/stream-output.m3u8?mode=hls$LR•IPV4•146『线路136』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•145『线路137』 +https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•146『线路137』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•145『线路138』 +https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•146『线路138』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://108.181.20.255:27347/livehttpplay?channel_id=23081$LR•IPV4•145『线路139』 +p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•146『线路139』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://23.237.104.106:8080/USA_MTV_LIVE/index.m3u8$LR•IPV4•145『线路140』 +http://108.181.20.255:27347/livehttpplay?channel_id=23081$LR•IPV4•146『线路140』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•145『线路141』 +http://23.237.104.106:8080/USA_MTV_LIVE/index.m3u8$LR•IPV4•146『线路141』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•145『线路142』 +p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•146『线路142』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -http://108.181.20.255:27347/livehttpplay?channel_id=23097$LR•IPV4•145『线路143』 +p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•146『线路143』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•145『线路144』 +http://108.181.20.255:27347/livehttpplay?channel_id=23097$LR•IPV4•146『线路144』 #EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•145『线路145』 +https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•146『线路145』 +#EXTINF:-1 tvg-name="纪录" group-title="💓优质个源",纪录 +p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•146『线路146』 #EXTINF:-1 tvg-name="樱桃小丸子剧" group-title="💓儿童专享",樱桃小丸子剧 http://103.193.151.146/huya.php?id=11342394$LR•IPV4 #EXTINF:-1 tvg-name="东森幼幼" group-title="💓儿童专享",东森幼幼 @@ -5576,521 +5580,521 @@ http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3 #EXTINF:-1 tvg-name="CCTV兵器" group-title="🌐央视频道",CCTV兵器 http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gfjs$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•251『线路1』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782954000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-9ebdb920742a1c0abe62da12809575a1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•252『线路1』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•251『线路2』 +http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•252『线路2』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•251『线路3』 +http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•252『线路3』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782889200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-cb6bb8d81dd443bea6c3981543aa5af6&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•251『线路4』 +http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•252『线路4』 #EXTINF:-1 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•251『线路5』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782889200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-cb6bb8d81dd443bea6c3981543aa5af6&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•252『线路5』 #EXTINF:-1 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•251『线路6』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•252『线路6』 #EXTINF:-1 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•251『线路7』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•252『线路7』 #EXTINF:-1 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•251『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•252『线路8』 #EXTINF:-1 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•251『线路9』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•252『线路9』 #EXTINF:-1 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•251『线路10』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•252『线路10』 #EXTINF:-1 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•251『线路11』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•252『线路11』 #EXTINF:-1 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•251『线路12』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•252『线路12』 #EXTINF:-1 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•251『线路13』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•252『线路13』 #EXTINF:-1 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•251『线路14』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•252『线路14』 #EXTINF:-1 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•251『线路15』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•252『线路15』 #EXTINF:-1 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•251『线路16』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•252『线路16』 #EXTINF:-1 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•251『线路17』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•252『线路17』 #EXTINF:-1 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•251『线路18』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•252『线路18』 #EXTINF:-1 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•251『线路19』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•252『线路19』 #EXTINF:-1 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•251『线路20』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•252『线路20』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv1hd.m3u8?auth=testpub$LR•IPV4•251『线路21』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•252『线路21』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•251『线路22』 +http://38.75.136.137:98/gslb/dsdqpub/cctv1hd.m3u8?auth=testpub$LR•IPV4•252『线路22』 #EXTINF:-1 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•251『线路23』 +http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•252『线路23』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•251『线路24』 +http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•252『线路24』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•251『线路25』 +http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•252『线路25』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.8.224.6:9999/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路26』 +http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•252『线路26』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•251『线路27』 +http://111.8.224.6:9999/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路27』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•251『线路28』 +http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•252『线路28』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.8.224.6:9999/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路29』 +http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•252『线路29』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•251『线路30』 +http://111.8.224.6:9999/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路30』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.8.224.6:9999/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路31』 +http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•252『线路31』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv5p.m3u8?auth=testpub$LR•IPV4•251『线路32』 +http://111.8.224.6:9999/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路32』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv5.m3u8$LR•IPV4•251『线路33』 +http://38.75.136.137:98/gslb/dsdqpub/cctv5p.m3u8?auth=testpub$LR•IPV4•252『线路33』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv5.m3u8$LR•IPV4•251『线路34』 +http://173.208.212.130:8181/720p/cctv5.m3u8$LR•IPV4•252『线路34』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv5p.m3u8$LR•IPV4•251『线路35』 +http://207.56.13.146:81/cdnlive/cctv5.m3u8$LR•IPV4•252『线路35』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•251『线路36』 +http://74.91.26.218:82/live/cctv5p.m3u8$LR•IPV4•252『线路36』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.8.224.6:9999/tsfile/live/1024_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路37』 +http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•252『线路37』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•251『线路38』 +http://111.8.224.6:9999/tsfile/live/1024_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路38』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•251『线路39』 +http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•252『线路39』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•251『线路40』 +http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•252『线路40』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv7.m3u8$LR•IPV4•251『线路41』 +http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•252『线路41』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv7.m3u8$LR•IPV4•251『线路42』 +http://207.56.13.146:81/cdnlive/cctv7.m3u8$LR•IPV4•252『线路42』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•251『线路43』 +http://173.208.212.130:8181/720p/cctv7.m3u8$LR•IPV4•252『线路43』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv8k.m3u8$LR•IPV4•251『线路44』 +http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•252『线路44』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•251『线路45』 +http://173.208.212.130:8181/720p/cctv8k.m3u8$LR•IPV4•252『线路45』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•251『线路46』 +http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•252『线路46』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv9hd.m3u8?auth=testpub$LR•IPV4•251『线路47』 +http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•252『线路47』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•251『线路48』 +http://38.75.136.137:98/gslb/dsdqpub/cctv9hd.m3u8?auth=testpub$LR•IPV4•252『线路48』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•251『线路49』 +http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•252『线路49』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•251『线路50』 +https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•252『线路50』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/11/index.m3u8$LR•IPV4•251『线路51』 +http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•252『线路51』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•251『线路52』 +http://222.223.41.27:8888/hls/11/index.m3u8$LR•IPV4•252『线路52』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.8.224.6:9999/tsfile/live/1043_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路53』 +http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•252『线路53』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•251『线路54』 +http://111.8.224.6:9999/tsfile/live/1043_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路54』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•251『线路55』 +http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•252『线路55』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•251『线路56』 +https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•252『线路56』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/14/index.m3u8$LR•IPV4•251『线路57』 +http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•252『线路57』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•251『线路58』 +http://222.223.41.27:8888/hls/14/index.m3u8$LR•IPV4•252『线路58』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.8.224.6:9999/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路59』 +https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•252『线路59』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•251『线路60』 +http://111.8.224.6:9999/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路60』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv14.m3u8$LR•IPV4•251『线路61』 +http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•252『线路61』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•251『线路62』 +http://173.208.212.130:8181/720p/cctv14.m3u8$LR•IPV4•252『线路62』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.8.224.6:9999/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路63』 +http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•252『线路63』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•251『线路64』 +http://111.8.224.6:9999/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路64』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•251『线路65』 +http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•252『线路65』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.8.224.6:9999/tsfile/live/1025_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路66』 +http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•252『线路66』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782925200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0976a55b4fad30979ca9561cda031a05&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•251『线路67』 +http://111.8.224.6:9999/tsfile/live/1025_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路67』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://epg.pw/stream/25677ac2e8c1f7c3dd6359c43eb5f0f54efb3f5c11f9dda18d01b3e0308ed017.m3u8$LR•IPV4•251『线路68』 +https://piccpndks.v.kcdnvip.com/audio/cctv15_2/index.m3u8$LR•IPV4•252『线路68』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://epg.pw/stream/6d7bf281e3d739806a73f5373acaa6e01988ec9739f5ac1355ce54b47a928472.m3u8$LR•IPV4•251『线路69』 +https://epg.pw/stream/25677ac2e8c1f7c3dd6359c43eb5f0f54efb3f5c11f9dda18d01b3e0308ed017.m3u8$LR•IPV4•252『线路69』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•251『线路70』 +https://epg.pw/stream/6d7bf281e3d739806a73f5373acaa6e01988ec9739f5ac1355ce54b47a928472.m3u8$LR•IPV4•252『线路70』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•251『线路71』 +https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•252『线路71』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•251『线路72』 +http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•252『线路72』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•251『线路73』 +http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•252『线路73』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•251『线路74』 +http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•252『线路74』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•251『线路75』 +http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•252『线路75』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•251『线路76』 +http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•252『线路76』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•251『线路77』 +http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•252『线路77』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•251『线路78』 +http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•252『线路78』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•251『线路79』 +http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•252『线路79』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•251『线路80』 +http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•252『线路80』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•251『线路81』 +http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•252『线路81』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•251『线路82』 +http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•252『线路82』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•251『线路83』 +http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•252『线路83』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•251『线路84』 +http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•252『线路84』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•251『线路85』 +http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•252『线路85』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•251『线路86』 +http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•252『线路86』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•251『线路87』 +http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•252『线路87』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•251『线路88』 +http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•252『线路88』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•251『线路89』 +http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•252『线路89』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•251『线路90』 +http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•252『线路90』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•251『线路91』 +http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•252『线路91』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•251『线路92』 +http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•252『线路92』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•251『线路93』 +http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•252『线路93』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•251『线路94』 +http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•252『线路94』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•251『线路95』 +https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•252『线路95』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•251『线路96』 +http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•252『线路96』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•251『线路97』 +https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•252『线路97』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•251『线路98』 +https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•252『线路98』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•251『线路99』 +http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•252『线路99』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•251『线路100』 +http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•252『线路100』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•251『线路101』 +http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•252『线路101』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•251『线路102』 +http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•252『线路102』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/70/index.m3u8$LR•IPV4•251『线路103』 +http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•252『线路103』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•251『线路104』 +http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•252『线路104』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•251『线路105』 +http://60.10.139.113:8801/hls/70/index.m3u8$LR•IPV4•252『线路105』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•251『线路106』 +http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•252『线路106』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•251『线路107』 +http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•252『线路107』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•251『线路108』 +http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•252『线路108』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•251『线路109』 +http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•252『线路109』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•251『线路110』 +http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•252『线路110』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•251『线路111』 +http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•252『线路111』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv10.m3u8$LR•IPV4•251『线路112』 +http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•252『线路112』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv11.m3u8$LR•IPV4•251『线路113』 +http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•252『线路113』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv12.m3u8$LR•IPV4•251『线路114』 +http://207.56.13.146:81/cdnlive/cctv10.m3u8$LR•IPV4•252『线路114』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•251『线路115』 +http://207.56.13.146:81/cdnlive/cctv11.m3u8$LR•IPV4•252『线路115』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv14.m3u8$LR•IPV4•251『线路116』 +http://207.56.13.146:81/cdnlive/cctv12.m3u8$LR•IPV4•252『线路116』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•251『线路117』 +http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•252『线路117』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv16.m3u8$LR•IPV4•251『线路118』 +http://207.56.13.146:81/cdnlive/cctv14.m3u8$LR•IPV4•252『线路118』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv17.m3u8$LR•IPV4•251『线路119』 +http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•252『线路119』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv5p.m3u8$LR•IPV4•251『线路120』 +http://207.56.13.146:81/cdnlive/cctv16.m3u8$LR•IPV4•252『线路120』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/gfjs.m3u8$LR•IPV4•251『线路121』 +http://207.56.13.146:81/cdnlive/cctv17.m3u8$LR•IPV4•252『线路121』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/nxss.m3u8$LR•IPV4•251『线路122』 +http://207.56.13.146:81/cdnlive/cctv5p.m3u8$LR•IPV4•252『线路122』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/sjdl.m3u8$LR•IPV4•251『线路123』 +http://207.56.13.146:81/cdnlive/gfjs.m3u8$LR•IPV4•252『线路123』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/wsjk.m3u8$LR•IPV4•251『线路124』 +http://207.56.13.146:81/cdnlive/nxss.m3u8$LR•IPV4•252『线路124』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•251『线路125』 +http://207.56.13.146:81/cdnlive/sjdl.m3u8$LR•IPV4•252『线路125』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/dyjc.m3u8$LR•IPV4•251『线路126』 +http://207.56.13.146:81/cdnlive/wsjk.m3u8$LR•IPV4•252『线路126』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/hjjc.m3u8$LR•IPV4•251『线路127』 +http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•252『线路127』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/fyjc.m3u8$LR•IPV4•251『线路128』 +http://207.56.13.146:81/cdnlive/dyjc.m3u8$LR•IPV4•252『线路128』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/fyzq.m3u8$LR•IPV4•251『线路129』 +http://207.56.13.146:81/cdnlive/hjjc.m3u8$LR•IPV4•252『线路129』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/fyyy.m3u8$LR•IPV4•251『线路130』 +http://207.56.13.146:81/cdnlive/fyjc.m3u8$LR•IPV4•252『线路130』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/ystq.m3u8$LR•IPV4•251『线路131』 +http://207.56.13.146:81/cdnlive/fyzq.m3u8$LR•IPV4•252『线路131』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/gefwq.m3u8$LR•IPV4•251『线路132』 +http://207.56.13.146:81/cdnlive/fyyy.m3u8$LR•IPV4•252『线路132』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•251『线路133』 +http://207.56.13.146:81/cdnlive/ystq.m3u8$LR•IPV4•252『线路133』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•251『线路134』 +http://207.56.13.146:81/cdnlive/gefwq.m3u8$LR•IPV4•252『线路134』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv3hd.m3u8$LR•IPV4•251『线路135』 +http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•252『线路135』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•251『线路136』 +http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•252『线路136』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv5hd.m3u8$LR•IPV4•251『线路137』 +http://192.151.150.154/live/cctv3hd.m3u8$LR•IPV4•252『线路137』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•251『线路138』 +http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•252『线路138』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•251『线路139』 +http://192.151.150.154/live/cctv5hd.m3u8$LR•IPV4•252『线路139』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv7hd.m3u8$LR•IPV4•251『线路140』 +http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•252『线路140』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•251『线路141』 +http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•252『线路141』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•251『线路142』 +http://192.151.150.154/live/cctv7hd.m3u8$LR•IPV4•252『线路142』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv10hd.m3u8$LR•IPV4•251『线路143』 +http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•252『线路143』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv11hd.m3u8$LR•IPV4•251『线路144』 +http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•252『线路144』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv12hd.m3u8$LR•IPV4•251『线路145』 +http://192.151.150.154/live/cctv10hd.m3u8$LR•IPV4•252『线路145』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•251『线路146』 +http://192.151.150.154/live/cctv11hd.m3u8$LR•IPV4•252『线路146』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv14hd.m3u8$LR•IPV4•251『线路147』 +http://192.151.150.154/live/cctv12hd.m3u8$LR•IPV4•252『线路147』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•251『线路148』 +http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•252『线路148』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv16hd.m3u8$LR•IPV4•251『线路149』 +http://192.151.150.154/live/cctv14hd.m3u8$LR•IPV4•252『线路149』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv17hd.m3u8$LR•IPV4•251『线路150』 +http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•252『线路150』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•251『线路151』 +http://192.151.150.154/live/cctv16hd.m3u8$LR•IPV4•252『线路151』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/dszn.m3u8$LR•IPV4•251『线路152』 +http://192.151.150.154/live/cctv17hd.m3u8$LR•IPV4•252『线路152』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/dyjc.m3u8$LR•IPV4•251『线路153』 +http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•252『线路153』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/fyjc.m3u8$LR•IPV4•251『线路154』 +http://192.151.150.154/live/dszn.m3u8$LR•IPV4•252『线路154』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/fyyy.m3u8$LR•IPV4•251『线路155』 +http://192.151.150.154/live/dyjc.m3u8$LR•IPV4•252『线路155』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/fyzq.m3u8$LR•IPV4•251『线路156』 +http://192.151.150.154/live/fyjc.m3u8$LR•IPV4•252『线路156』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/gefwq.m3u8$LR•IPV4•251『线路157』 +http://192.151.150.154/live/fyyy.m3u8$LR•IPV4•252『线路157』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/gfjs.m3u8$LR•IPV4•251『线路158』 +http://192.151.150.154/live/fyzq.m3u8$LR•IPV4•252『线路158』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/nxss.m3u8$LR•IPV4•251『线路159』 +http://192.151.150.154/live/gefwq.m3u8$LR•IPV4•252『线路159』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/sjdl.m3u8$LR•IPV4•251『线路160』 +http://192.151.150.154/live/gfjs.m3u8$LR•IPV4•252『线路160』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/hjjc.m3u8$LR•IPV4•251『线路161』 +http://192.151.150.154/live/nxss.m3u8$LR•IPV4•252『线路161』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/ystq.m3u8$LR•IPV4•251『线路162』 +http://192.151.150.154/live/sjdl.m3u8$LR•IPV4•252『线路162』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•251『线路163』 +http://192.151.150.154/live/hjjc.m3u8$LR•IPV4•252『线路163』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/wsjk.m3u8$LR•IPV4•251『线路164』 +http://192.151.150.154/live/ystq.m3u8$LR•IPV4•252『线路164』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•251『线路165』 +http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•252『线路165』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•251『线路166』 +http://192.151.150.154/live/wsjk.m3u8$LR•IPV4•252『线路166』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv3.m3u8$LR•IPV4•251『线路167』 +http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•252『线路167』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•251『线路168』 +http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•252『线路168』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv5.m3u8$LR•IPV4•251『线路169』 +http://173.208.212.130:8181/1080p/cctv3.m3u8$LR•IPV4•252『线路169』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•251『线路170』 +http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•252『线路170』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv7.m3u8$LR•IPV4•251『线路171』 +http://173.208.212.130:8181/1080p/cctv5.m3u8$LR•IPV4•252『线路171』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•251『线路172』 +http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•252『线路172』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv10.m3u8$LR•IPV4•251『线路173』 +http://173.208.212.130:8181/1080p/cctv7.m3u8$LR•IPV4•252『线路173』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv11.m3u8$LR•IPV4•251『线路174』 +http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•252『线路174』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv12.m3u8$LR•IPV4•251『线路175』 +http://173.208.212.130:8181/1080p/cctv10.m3u8$LR•IPV4•252『线路175』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•251『线路176』 +http://173.208.212.130:8181/1080p/cctv11.m3u8$LR•IPV4•252『线路176』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•251『线路177』 +http://173.208.212.130:8181/1080p/cctv12.m3u8$LR•IPV4•252『线路177』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv16.m3u8$LR•IPV4•251『线路178』 +http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•252『线路178』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv17.m3u8$LR•IPV4•251『线路179』 +http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•252『线路179』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/1080p/cctv5p.m3u8$LR•IPV4•251『线路180』 +http://173.208.212.130:8181/1080p/cctv16.m3u8$LR•IPV4•252『线路180』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•251『线路181』 +http://173.208.212.130:8181/1080p/cctv17.m3u8$LR•IPV4•252『线路181』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•251『线路182』 +http://173.208.212.130:8181/1080p/cctv5p.m3u8$LR•IPV4•252『线路182』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•251『线路183』 +http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•252『线路183』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•251『线路184』 +http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•252『线路184』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•251『线路185』 +http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•252『线路185』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•251『线路186』 +http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•252『线路186』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•251『线路187』 +http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•252『线路187』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•251『线路188』 +http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•252『线路188』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•251『线路189』 +http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•252『线路189』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv16.m3u8$LR•IPV4•251『线路190』 +http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•252『线路190』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv17.m3u8$LR•IPV4•251『线路191』 +http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•252『线路191』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv5p.m3u8$LR•IPV4•251『线路192』 +http://173.208.212.130:8181/720p/cctv16.m3u8$LR•IPV4•252『线路192』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/dyjc.m3u8$LR•IPV4•251『线路193』 +http://173.208.212.130:8181/720p/cctv17.m3u8$LR•IPV4•252『线路193』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/fyjc.m3u8$LR•IPV4•251『线路194』 +http://173.208.212.130:8181/720p/cctv5p.m3u8$LR•IPV4•252『线路194』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/hjjc.m3u8$LR•IPV4•251『线路195』 +http://173.208.212.130:8181/720p/dyjc.m3u8$LR•IPV4•252『线路195』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/gfjs.m3u8$LR•IPV4•251『线路196』 +http://173.208.212.130:8181/720p/fyjc.m3u8$LR•IPV4•252『线路196』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/nxss.m3u8$LR•IPV4•251『线路197』 +http://173.208.212.130:8181/720p/hjjc.m3u8$LR•IPV4•252『线路197』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/sjdl.m3u8$LR•IPV4•251『线路198』 +http://173.208.212.130:8181/720p/gfjs.m3u8$LR•IPV4•252『线路198』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/wsjk.m3u8$LR•IPV4•251『线路199』 +http://173.208.212.130:8181/720p/nxss.m3u8$LR•IPV4•252『线路199』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•251『线路200』 +http://173.208.212.130:8181/720p/sjdl.m3u8$LR•IPV4•252『线路200』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/fyyy.m3u8$LR•IPV4•251『线路201』 +http://173.208.212.130:8181/720p/wsjk.m3u8$LR•IPV4•252『线路201』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/ystq.m3u8$LR•IPV4•251『线路202』 +http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•252『线路202』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/fyzq.m3u8$LR•IPV4•251『线路203』 +http://173.208.212.130:8181/720p/fyyy.m3u8$LR•IPV4•252『线路203』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/gefwq.m3u8$LR•IPV4•251『线路204』 +http://173.208.212.130:8181/720p/ystq.m3u8$LR•IPV4•252『线路204』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•251『线路205』 +http://173.208.212.130:8181/720p/fyzq.m3u8$LR•IPV4•252『线路205』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•251『线路206』 +http://173.208.212.130:8181/720p/gefwq.m3u8$LR•IPV4•252『线路206』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•251『线路207』 +http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•252『线路207』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•251『线路208』 +http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•252『线路208』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv5.m3u8$LR•IPV4•251『线路209』 +http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•252『线路209』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•251『线路210』 +http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•252『线路210』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•251『线路211』 +http://204.12.221.218:8181/3m1080p/cctv5.m3u8$LR•IPV4•252『线路211』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•251『线路212』 +http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•252『线路212』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•251『线路213』 +http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•252『线路213』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•251『线路214』 +http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•252『线路214』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•251『线路215』 +http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•252『线路215』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•251『线路216』 +http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•252『线路216』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•251『线路217』 +http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•252『线路217』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•251『线路218』 +http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•252『线路218』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv16.m3u8$LR•IPV4•251『线路219』 +http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•252『线路219』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv17.m3u8$LR•IPV4•251『线路220』 +http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•252『线路220』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•251『线路221』 +http://204.12.221.218:8181/3m1080p/cctv16.m3u8$LR•IPV4•252『线路221』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://go.bkpcp.top/mg/cctv13$LR•IPV4•251『线路222』 +http://204.12.221.218:8181/3m1080p/cctv17.m3u8$LR•IPV4•252『线路222』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•251『线路223』 +http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226972/index.m3u8$LR•IPV6•252『线路223』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•251『线路224』 +http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226947/index.m3u8$LR•IPV6•252『线路224』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•251『线路225』 +http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226981/index.m3u8$LR•IPV6•252『线路225』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•251『线路226』 +http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226956/index.m3u8$LR•IPV6•252『线路226』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•251『线路227』 +http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226978/index.m3u8$LR•IPV6•252『线路227』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•251『线路228』 +http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226950/index.m3u8$LR•IPV6•252『线路228』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226972/index.m3u8$LR•IPV6•251『线路229』 +http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226953/index.m3u8$LR•IPV6•252『线路229』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226947/index.m3u8$LR•IPV6•251『线路230』 +http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226959/index.m3u8$LR•IPV6•252『线路230』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226981/index.m3u8$LR•IPV6•251『线路231』 +http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226969/index.m3u8$LR•IPV6•252『线路231』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226956/index.m3u8$LR•IPV6•251『线路232』 +http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226984/index.m3u8$LR•IPV6•252『线路232』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226978/index.m3u8$LR•IPV6•251『线路233』 +http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226987/index.m3u8$LR•IPV6•252『线路233』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226950/index.m3u8$LR•IPV6•251『线路234』 +http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•252『线路234』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226953/index.m3u8$LR•IPV6•251『线路235』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wsjk$LR•IPV4•252『线路235』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226959/index.m3u8$LR•IPV6•251『线路236』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ystq$LR•IPV4•252『线路236』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226969/index.m3u8$LR•IPV6•251『线路237』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=dyjc$LR•IPV4•252『线路237』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226984/index.m3u8$LR•IPV6•251『线路238』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyjc$LR•IPV4•252『线路238』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226987/index.m3u8$LR•IPV6•251『线路239』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hjjc$LR•IPV4•252『线路239』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wsjk$LR•IPV4•251『线路240』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyzq$LR•IPV4•252『线路240』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ystq$LR•IPV4•251『线路241』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyyy$LR•IPV4•252『线路241』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=dyjc$LR•IPV4•251『线路242』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sjdl$LR•IPV4•252『线路242』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyjc$LR•IPV4•251『线路243』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=dszn$LR•IPV4•252『线路243』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hjjc$LR•IPV4•251『线路244』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gefwq$LR•IPV4•252『线路244』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyzq$LR•IPV4•251『线路245』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ysjp$LR•IPV4•252『线路245』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyyy$LR•IPV4•251『线路246』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nxss$LR•IPV4•252『线路246』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sjdl$LR•IPV4•251『线路247』 +http://go.bkpcp.top/mg/cctv13$LR•IPV4•252『线路247』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=dszn$LR•IPV4•251『线路248』 +https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•252『线路248』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gefwq$LR•IPV4•251『线路249』 +http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•252『线路249』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ysjp$LR•IPV4•251『线路250』 +https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•252『线路250』 #EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nxss$LR•IPV4•251『线路251』 +http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•252『线路251』 +#EXTINF:-1 tvg-name="CCTV" group-title="🌐央视频道",CCTV +https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•252『线路252』 #EXTINF:-1 tvg-name="周星星" group-title="明星",周星星 -http://live.metshop.top/huya/11336587?cdn=alicdn$LR•IPV4•3『线路1』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11336587$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="周星星" group-title="明星",周星星 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11336587$LR•IPV4•3『线路2』 -#EXTINF:-1 tvg-name="周星星" group-title="明星",周星星 -http://222.186.39.21:35466/huya/11336587$LR•IPV4•3『线路3』 +http://222.186.39.21:35466/huya/11336587$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="周星驰" group-title="明星",周星驰 -https://live.ottiptv.cc/huya/11336587$LR•IPV4•2『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="周星驰" group-title="明星",周星驰 -http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11336587$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="李连杰" group-title="明星",李连杰 -https://live.ottiptv.cc/huya/11342390$LR•IPV4•4『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="李连杰" group-title="明星",李连杰 -http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•4『线路2』 +https://live.ottiptv.cc/huya/11342390$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="李连杰" group-title="明星",李连杰 http://tv.zimtv.cn/tv/player/api/huya.php?id=11342390$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="李连杰" group-title="明星",李连杰 @@ -6102,53 +6106,51 @@ http://tv.zimtv.cn/tv/player/api/huya.php?id=11279251$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-name="洪金宝" group-title="明星",洪金宝 http://222.186.39.21:35466/huya/11279251$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-name="梁家辉" group-title="明星",梁家辉 -https://live.ottiptv.cc/huya/11342429$LR•IPV4•4『线路1』 +http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="梁家辉" group-title="明星",梁家辉 -http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•4『线路2』 +https://live.ottiptv.cc/huya/11342429$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="梁家辉" group-title="明星",梁家辉 http://tv.zimtv.cn/tv/player/api/huya.php?id=11342429$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="梁家辉" group-title="明星",梁家辉 http://222.186.39.21:35466/huya/11342429$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="刘德华" group-title="明星",刘德华 -https://live.ottiptv.cc/huya/11342424$LR•IPV4•7『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-name="刘德华" group-title="明星",刘德华 -https://k0ub7yffy10yfz.djvod.ndcimgs.com/upic/2023/07/25/08/BMjAyMzA3MjUwODU3MzRfMzYxMjUyNDA3MV8xMDg4MTUzNTczMzFfMF8z_b_Bf67605afd92859a39e607f504f43c9f7.mp4$LR•IPV4•7『线路2』 +http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-name="刘德华" group-title="明星",刘德华 -http://epg.112114.xyz/douyu/2516864$LR•IPV4•7『线路3』 +https://live.ottiptv.cc/huya/11342424$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-name="刘德华" group-title="明星",刘德华 -http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•7『线路4』 +https://k0ub7yffy10yfz.djvod.ndcimgs.com/upic/2023/07/25/08/BMjAyMzA3MjUwODU3MzRfMzYxMjUyNDA3MV8xMDg4MTUzNTczMzFfMF8z_b_Bf67605afd92859a39e607f504f43c9f7.mp4$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-name="刘德华" group-title="明星",刘德华 -http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•7『线路5』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342424$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-name="刘德华" group-title="明星",刘德华 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342424$LR•IPV4•7『线路6』 +http://222.186.39.21:35466/huya/11342424$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-name="刘德华" group-title="明星",刘德华 -http://222.186.39.21:35466/huya/11342424$LR•IPV4•7『线路7』 +http://epg.112114.xyz/douyu/2516864$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-name="星爷" group-title="明星",星爷 http://tv.zimtv.cn/tv/player/api/huya.php?id=11342412$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="星爷" group-title="明星",星爷 http://222.186.39.21:35466/huya/11342412$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="成龙" group-title="明星",成龙 -https://live.ottiptv.cc/huya/11342386$LR•IPV4•5『线路1』 +https://live.ottiptv.cc/huya/11342386$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="成龙" group-title="明星",成龙 -https://live.ottiptv.cc/huya/11352946$LR•IPV4•5『线路2』 +https://live.ottiptv.cc/huya/11352946$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="成龙" group-title="明星",成龙 -http://cdn.jdshipin.com:8880/huya.php?id=11342386$LR•IPV4•5『线路3』 +http://tv.zimtv.cn/tv/player/api/huya.php?id=11342386$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="成龙" group-title="明星",成龙 -http://tv.zimtv.cn/tv/player/api/huya.php?id=11342386$LR•IPV4•5『线路4』 -#EXTINF:-1 tvg-name="成龙" group-title="明星",成龙 -http://222.186.39.21:35466/huya/11342386$LR•IPV4•5『线路5』 +http://222.186.39.21:35466/huya/11342386$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="王晶" group-title="明星",王晶 -https://live.ottiptv.cc/huya/11602058$LR•IPV4•4『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="王晶" group-title="明星",王晶 -http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•4『线路2』 +https://live.ottiptv.cc/huya/11602058$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="王晶" group-title="明星",王晶 http://tv.zimtv.cn/tv/player/api/huya.php?id=11602058$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="王晶" group-title="明星",王晶 http://222.186.39.21:35466/huya/11602058$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="黄渤" group-title="明星",黄渤 -https://live.ottiptv.cc/huya/11352876$LR•IPV4•4『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="黄渤" group-title="明星",黄渤 -http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•4『线路2』 +https://live.ottiptv.cc/huya/11352876$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="黄渤" group-title="明星",黄渤 http://tv.zimtv.cn/tv/player/api/huya.php?id=11352876$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="黄渤" group-title="明星",黄渤 @@ -6156,23 +6158,25 @@ http://222.186.39.21:35466/huya/11352876$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="林正英" group-title="明星",林正英 http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-name="林正英" group-title="明星",林正英 -https://live.ottiptv.cc/huya/11342421$LR•IPV4•4『线路2』 +http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-name="林正英" group-title="明星",林正英 -http://epg.112114.xyz/douyu/218859$LR•IPV4•4『线路3』 +https://live.ottiptv.cc/huya/11342421$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-name="林正英" group-title="明星",林正英 -http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•4『线路4』 +http://epg.112114.xyz/douyu/218859$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-name="甄子丹" group-title="明星",甄子丹 -https://live.ottiptv.cc/huya/11352935$LR•IPV4•2『线路1』 +http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="甄子丹" group-title="明星",甄子丹 -http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/11352935$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="灾难片" group-title="主题片",灾难片 https://live.ottiptv.cc/huya/23728647$LR•IPV4 #EXTINF:-1 tvg-name="谍战片" group-title="主题片",谍战片 -https://live.ottiptv.cc/huya/26355810$LR•IPV4 +http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4•2『线路1』 +#EXTINF:-1 tvg-name="谍战片" group-title="主题片",谍战片 +https://live.ottiptv.cc/huya/26355810$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="战争片" group-title="主题片",战争片 -https://live.ottiptv.cc/huya/21059618$LR•IPV4•2『线路1』 +http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-name="战争片" group-title="主题片",战争片 -http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•2『线路2』 +https://live.ottiptv.cc/huya/21059618$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-name="VOA美国之音" group-title="国际台",VOA美国之音 https://voa-ingest.akamaized.net/hls/live/2033878/tvmc08/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-name="人与自然" group-title="纪录片",人与自然 diff --git a/tvbox/lib/iptv_test.txt b/tvbox/lib/iptv_test.txt index 7e20726d..7d535dcc 100755 --- a/tvbox/lib/iptv_test.txt +++ b/tvbox/lib/iptv_test.txt @@ -1,7 +1,7 @@ 央视频道,#genre# CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•4『线路1』 -CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1782925200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-65c07ea98ceb4dedf1dedc50101b9d6e&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•4『线路2』 +CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1782945900-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-d4f726b8b91f87d841370b8379a24383&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•4『线路2』 CCTV-4K,http://192.151.150.154/live/cctv4k.m3u8$LR•IPV4•4『线路3』 CCTV-4K,http://173.208.212.130:8181/720p/cctv4k.m3u8$LR•IPV4•4『线路4』 @@ -29,20 +29,21 @@ CCTV-4K,http://173.208.212.130:8181/720p/cctv4k.m3u8$LR•IPV4•4『线路4』 小崔说事,https://vdse.bdstatic.com//0881642336164cb448c0d8addd2d22a6.mp4?authorization=bce-auth-v1/40f207e648424f47b2e3dfbb1014b1a5/2022-05-28T07:29:10Z/-1/host/4c290e67925bf7954af616c290b337b52a840355f1184f78619d696a5da5c0bb$LR•IPV4•2『线路2』 中奖了,https://vd3.bdstatic.com/mda-kmkh9zy2b3gnx4bq/mda-kmkh9zy2b3gnx4bq.mp4?pd=19&vt=1$LR•IPV4 卖拐,https://vd3.bdstatic.com/mda-mdgia7vnkscvxh6d/v1-hknm/hd/mda-mdgia7vnkscvxh6d.mp4?pd=19&vt=1$LR•IPV4 -功夫,https://ukzy.ukubf4.com/20220407/j3bjFWpb/index.m3u8$LR•IPV4•14『线路1』 -功夫,http://rihou.cc:555/tv/[Pd]无线功夫$LR•IPV4•14『线路2』 -功夫,http://43.251.226.89:8080/play/878.m3u8$LR•IPV4•14『线路3』 -功夫,http://43.251.226.89:8080/play/899.m3u8$LR•IPV4•14『线路4』 -功夫,https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•14『线路5』 -功夫,p3p://167.114.175.6:55331/653e4a3f000b1abb0c85815c35fa0803$LR•IPV4•14『线路6』 -功夫,https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•14『线路7』 -功夫,http://cdn6.163189.xyz/163189/yzwx$LR•IPV4•14『线路8』 -功夫,https://cdn6.163189.xyz/163189/yzwx$LR•IPV4•14『线路9』 -功夫,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5897056882324761054&livemode=1&stbId=yu&mode=1&$LR•IPV4•14『线路10』 -功夫,http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•14『线路11』 -功夫,http://111.43.126.240:9003/hls/79/index.m3u8$LR•IPV4•14『线路12』 -功夫,https://vdse.bdstatic.com//92bd4a8082ab3cb7e96e1d852bc0d5f4.mp4?authorization=bce-auth-v1%2F40f207e648424f47b2e3dfbb1014b1a5%2F2022-05-07T19%3A35%3A37Z%2F-1%2Fhost%2Fbac03dc21a0ea989035da20433039cdcc82efc3a5773df7c4dbcf4d6b6d62443$LR•IPV4•14『线路13』 -功夫,https://vd3.bdstatic.com/mda-mjn3rmcivntas8ez/hd/cae_h264_nowatermark/1635016788091110865/mda-mjn3rmcivntas8ez.mp4?pd=19&vt=1$LR•IPV4•14『线路14』 +功夫,https://ukzy.ukubf4.com/20220407/j3bjFWpb/index.m3u8$LR•IPV4•15『线路1』 +功夫,http://rihou.cc:555/tv/[Pd]无线功夫$LR•IPV4•15『线路2』 +功夫,http://43.251.226.89:8080/play/878.m3u8$LR•IPV4•15『线路3』 +功夫,http://43.251.226.89:8080/play/899.m3u8$LR•IPV4•15『线路4』 +功夫,https://vip.ffzy-play2.com/20221124/1291_468b2efb/index.m3u8$LR•IPV4•15『线路5』 +功夫,p3p://167.114.175.6:55331/653e4a3f000b1abb0c85815c35fa0803$LR•IPV4•15『线路6』 +功夫,https://hls-gateway.vpstv.net/streams/476226.m3u8$LR•IPV4•15『线路7』 +功夫,http://cdn.jdshipin.com:8880/huya.php?id=11352941$LR•IPV4•15『线路8』 +功夫,http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•15『线路9』 +功夫,http://cdn6.163189.xyz/163189/yzwx$LR•IPV4•15『线路10』 +功夫,https://cdn6.163189.xyz/163189/yzwx$LR•IPV4•15『线路11』 +功夫,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5897056882324761054&livemode=1&stbId=yu&mode=1&$LR•IPV4•15『线路12』 +功夫,http://111.43.126.240:9003/hls/79/index.m3u8$LR•IPV4•15『线路13』 +功夫,https://vdse.bdstatic.com//92bd4a8082ab3cb7e96e1d852bc0d5f4.mp4?authorization=bce-auth-v1%2F40f207e648424f47b2e3dfbb1014b1a5%2F2022-05-07T19%3A35%3A37Z%2F-1%2Fhost%2Fbac03dc21a0ea989035da20433039cdcc82efc3a5773df7c4dbcf4d6b6d62443$LR•IPV4•15『线路14』 +功夫,https://vd3.bdstatic.com/mda-mjn3rmcivntas8ez/hd/cae_h264_nowatermark/1635016788091110865/mda-mjn3rmcivntas8ez.mp4?pd=19&vt=1$LR•IPV4•15『线路15』 相亲1,https://vd3.bdstatic.com/mda-ki5quadqsdi1tk9e/mda-ki5quadqsdi1tk9e.mp4?pd=-1&pt=0&cr=0&vt=0&cd=0&did=cfcd208495d565ef66e7dff9f98764da&logid=3024484252&vid=10808391094376007907&auth_key=1655295624-0-0-6fb10727b6c3c195f08ff9bebe036cd0&bcevod_channel=searchbox_feed$LR•IPV4 相亲2,https://vd3.bdstatic.com/mda-kipkytij74rnn9k3/hd/mda-kipkytij74rnn9k3.mp4?pd=19&vt=1&playlist=%5B%22sc%22%2C%22hd%22%5D$LR•IPV4 火炬手,https://vd3.bdstatic.com/mda-jar0302925j1nwep/hd/mda-jar0302925j1nwep.mp4?pd=19&vt=1&playlist=%5B%22hd%22%5D$LR•IPV4 @@ -188,7 +189,7 @@ RTHK32,http://cdn.163189.xyz/163189/rthk32$LR•IPV4 士兵突击,https://live.ottiptv.cc/huya/11342430$LR•IPV4•2『线路2』 天龙八部,https://live.ottiptv.cc/yy/1351814644$LR•IPV4•2『线路1』 天龙八部,https://live.ottiptv.cc/huya/29981376$LR•IPV4•2『线路2』 -倚天屠龙记,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 庆余年,http://58.39.190.143:35455/huya/11352960$LR•IPV4•2『线路1』 庆余年,https://live.ottiptv.cc/huya/11352960$LR•IPV4•2『线路2』 @@ -262,16 +263,16 @@ RTHK32,http://cdn.163189.xyz/163189/rthk32$LR•IPV4 钱江都市,https://stream1.freetv.fun/qian-jiang-du-shi-1.m3u8$LR•IPV4•6『线路5』 钱江都市,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•6『线路6』 YMG未来,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 -上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•12『线路1』 +上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•12『线路1』 上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-3.ctv$LR•IPV4•12『线路2』 上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路3』 上虞文化,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan.m3u8$LR•IPV4•12『线路4』 上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-2.ctv$LR•IPV4•12『线路5』 -上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路6』 -上虞文化,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•12『线路7』 -上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•12『线路8』 -上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•12『线路9』 -上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•12『线路10』 +上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed$LR•IPV4•12『线路6』 +上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed;http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8zzhed$LR•IPV4•12『线路7』 +上虞文化,https://t.freetv.fun/live/shang-yu-wen-hua-ying-yuan-2.m3u8zzhed$LR•IPV4•12『线路8』 +上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-4.ctv$LR•IPV4•12『线路9』 +上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•12『线路10』 上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-1.m3u8$LR•IPV4•12『线路11』 上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8?zzhed?$LR•IPV4•12『线路12』 上虞综合,https://stream1.freetv.fun/shang-yu-zong-he-1.m3u8$LR•IPV4•2『线路1』 @@ -586,7 +587,7 @@ Now星影,p3p://167.114.175.6:55331/65bf5e010005226704b84f4f048a4148$LR•IPV4 天津,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•35『线路5』 天津,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•35『线路6』 天津,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•35『线路7』 -天津,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•35『线路8』 +天津,http://123.129.70.178:9901/tsfile/live/0135_1.m3u8$LR•IPV4•35『线路8』 天津,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•35『线路9』 天津,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•35『线路10』 天津,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•35『线路11』 @@ -607,13 +608,13 @@ Now星影,p3p://167.114.175.6:55331/65bf5e010005226704b84f4f048a4148$LR•IPV4 天津,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=ystenlive&Contentid=6707942579111517572&livemode=1&stbId=yu&mode=1&$LR•IPV4•35『线路26』 天津,http://111.29.9.38:6610/000000001000/5000000004000006827/index.m3u8?channel-id=bestzb&Contentid=5000000004000006827&livemode=1&stbId=3$LR•IPV4•35『线路27』 天津,http://111.29.9.33:6610/000000001000/1000000001000000831/index.m3u8?channel-id=bestzb&Contentid=1000000001000000831&livemode=1&stbId=3$LR•IPV4•35『线路28』 -天津,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•35『线路29』 -天津,http://107.150.60.122/live/tjtv5.m3u8$LR•IPV4•35『线路30』 -天津,http://m.061899.xyz/mg/tjws$LR•IPV4•35『线路31』 -天津,http://111.43.126.240:9003/hls/31/index.m3u8$LR•IPV4•35『线路32』 -天津,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226204/index.m3u8$LR•IPV4•35『线路33』 -天津,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225765/index.m3u8$LR•IPV4•35『线路34』 -天津,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227306/index.m3u8$LR•IPV4•35『线路35』 +天津,http://107.150.60.122/live/tjtv5.m3u8$LR•IPV4•35『线路29』 +天津,http://m.061899.xyz/mg/tjws$LR•IPV4•35『线路30』 +天津,http://111.43.126.240:9003/hls/31/index.m3u8$LR•IPV4•35『线路31』 +天津,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226204/index.m3u8$LR•IPV4•35『线路32』 +天津,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221225765/index.m3u8$LR•IPV4•35『线路33』 +天津,http://hwottcdn.ln.chinamobile.com/PLTV/11/224/3221227306/index.m3u8$LR•IPV4•35『线路34』 +天津,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•35『线路35』 ☘️甘肃频道,#genre# 西峰综合,https://play.kankanlive.com/live/1683944827526991.m3u8$LR•IPV4 @@ -622,8 +623,8 @@ Now星影,p3p://167.114.175.6:55331/65bf5e010005226704b84f4f048a4148$LR•IPV4 ☘️新疆频道,#genre# 玛纳斯综合,http://218.84.127.245:1026/hls/main1/playlist.m3u8?zxinjd,$LR•IPV4 伊犁哈萨克,http://110.153.180.106:55555/out_3/index.m3u8$LR•IPV4 -伊犁经济法制,http://110.153.180.106:55555/out_4/index.m3u8?zxinjd$LR•IPV4 -伊犁维吾尔,http://110.153.180.106:55555/out_2/index.m3u8?zxinjd$LR•IPV4 +伊犁经济法制,http://110.153.180.106:55555/out_4/index.m3u8$LR•IPV4 +伊犁维吾尔,http://110.153.180.106:55555/out_2/index.m3u8$LR•IPV4 ☘️山东频道,#genre# 青州综合,http://sdqz.chinashadt.com:2036/live/stream:1.stream/playlist.m3u8?shandd$LR•IPV4•2『线路1』 @@ -689,8 +690,8 @@ CN卡通,p3p://167.114.175.6:55331/648353bb0006d4d93236315a766b692a$LR•IPV4• CN卡通,http://23.237.104.106:8080/USA_CARTOON_NETWORK/tracks-v1a1/mono.m3u8$LR•IPV4•4『线路4』 火影忍者,https://live.ottiptv.cc/huya/25567648$LR•IPV4•2『线路1』 火影忍者,https://live.ottiptv.cc/huya/29465866$LR•IPV4•2『线路2』 -海绵宝宝,https://live.ottiptv.cc/huya/11352919$LR•IPV4•2『线路1』 -海绵宝宝,https://live.metshop.top/douyu/3949681$LR•IPV4•2『线路2』 +海绵宝宝,https://live.metshop.top/douyu/3949681$LR•IPV4•2『线路1』 +海绵宝宝,https://live.ottiptv.cc/huya/11352919$LR•IPV4•2『线路2』 🎮游戏频道,#genre# 电竞天堂,http://gslbserv.itv.cmvideo.cn:80/1.m3u8?channel-id=FifastbLive&Contentid=5000000011000288003&livemode=1&stbId=yu&mode=1&$LR•IPV4 @@ -713,21 +714,21 @@ CN卡通,http://23.237.104.106:8080/USA_CARTOON_NETWORK/tracks-v1a1/mono.m3u8$LR 家庭影院,http://61.162.52.6:8088/newlive/live/hls/60/live.m3u8$LR•IPV4•18『线路1』 家庭影院,http://192.151.150.154/live/chcjt.m3u8$LR•IPV4•18『线路2』 家庭影院,http://38.75.136.137:98/gslb/dsdqpub/chcjt.m3u8?auth=testpub$LR•IPV4•18『线路3』 -家庭影院,http://39.134.19.153/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226462/index.m3u8$LR•IPV4•18『线路4』 -家庭影院,https://live.chinacert.cftest5.cn/cnmg/live/644368373$LR•IPV4•18『线路5』 -家庭影院,http://fn.gcl.de5.net:5908/gsh950428/644368373$LR•IPV4•18『线路6』 -家庭影院,http://wfenf.x3322.net:7788/644368373$LR•IPV4•18『线路7』 -家庭影院,http://106.5.175.159:1234/644368373$LR•IPV4•18『线路8』 -家庭影院,http://36.104.221.222:7788/644368373$LR•IPV4•18『线路9』 -家庭影院,http://115.58.151.196:1234/644368373$LR•IPV4•18『线路10』 -家庭影院,http://182.61.15.163:80/644368373$LR•IPV4•18『线路11』 -家庭影院,http://121.23.132.14:7788/644368373$LR•IPV4•18『线路12』 -家庭影院,http://120.4.126.153:1234/644368373$LR•IPV4•18『线路13』 -家庭影院,http://47.119.24.76:59093/644368373$LR•IPV4•18『线路14』 -家庭影院,http://222.134.19.49:8090/644368373$LR•IPV4•18『线路15』 -家庭影院,http://139.155.89.87:1000/644368373$LR•IPV4•18『线路16』 -家庭影院,http://101.34.236.223:1112/644368373$LR•IPV4•18『线路17』 -家庭影院,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=chcjt$LR•IPV4•18『线路18』 +家庭影院,https://live.chinacert.cftest5.cn/cnmg/live/644368373$LR•IPV4•18『线路4』 +家庭影院,http://fn.gcl.de5.net:5908/gsh950428/644368373$LR•IPV4•18『线路5』 +家庭影院,http://wfenf.x3322.net:7788/644368373$LR•IPV4•18『线路6』 +家庭影院,http://106.5.175.159:1234/644368373$LR•IPV4•18『线路7』 +家庭影院,http://36.104.221.222:7788/644368373$LR•IPV4•18『线路8』 +家庭影院,http://115.58.151.196:1234/644368373$LR•IPV4•18『线路9』 +家庭影院,http://182.61.15.163:80/644368373$LR•IPV4•18『线路10』 +家庭影院,http://121.23.132.14:7788/644368373$LR•IPV4•18『线路11』 +家庭影院,http://120.4.126.153:1234/644368373$LR•IPV4•18『线路12』 +家庭影院,http://47.119.24.76:59093/644368373$LR•IPV4•18『线路13』 +家庭影院,http://222.134.19.49:8090/644368373$LR•IPV4•18『线路14』 +家庭影院,http://139.155.89.87:1000/644368373$LR•IPV4•18『线路15』 +家庭影院,http://101.34.236.223:1112/644368373$LR•IPV4•18『线路16』 +家庭影院,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=chcjt$LR•IPV4•18『线路17』 +家庭影院,http://39.134.19.153/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226462/index.m3u8$LR•IPV4•18『线路18』 九品芝麻官,https://alimov2.a.kwimgs.com/upic/2021/12/28/11/BMjAyMTEyMjgxMTIyMTJfNDAzMDAxOTlfNjM2NjgxODA5MTBfMF8z_b_B6a0bcfcdbdaac183fa7dcbcd3e11bcaf.mp4$LR•IPV4 无间道1,https://vip.ffzy-play6.com/20221017/13_ddfc1740/index.m3u8$LR•IPV4 无间道2,https://vip.lzcdn2.com/20220323/300_8be28e1c/index.m3u8$LR•IPV4 @@ -1288,9 +1289,9 @@ UK,https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2F UK,https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•56『线路54』 UK,https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•56『线路55』 UK,https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•56『线路56』 -US,https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01438-ewscrippscompan-ionplus-tablo/playlist.m3u8$LR•IPV4•165『线路1』 -US,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV78.m3u8$LR•IPV4•165『线路2』 -US,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV26.m3u8$LR•IPV4•165『线路3』 +US,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV78.m3u8$LR•IPV4•165『线路1』 +US,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV26.m3u8$LR•IPV4•165『线路2』 +US,https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01438-ewscrippscompan-ionplus-tablo/playlist.m3u8$LR•IPV4•165『线路3』 US,http://php.jdshipin.com/TVOD/iptv.php?id=j2$LR•IPV4•165『线路4』 US,http://php.jdshipin.com/PLTV/iptv.php?id=j2$LR•IPV4•165『线路5』 US,http://cdn.132.us.kg/live/tvbp/stream.m3u8$LR•IPV4•165『线路6』 @@ -1322,7 +1323,7 @@ US,http://streamipcf.akamaized.net/live/_definst_/live_720/key_b1500.m3u8$LR•I US,https://liveingesta118.cdnmedia.tv/telecaribetvlive/smil:rtmp02.smil/playlist.m3u8$LR•IPV4•165『线路32』 US,https://eu1.servers10.com:8081/8166/index.m3u8$LR•IPV4•165『线路33』 US,https://tringliveviz.akamaized.net/delta/105/out/u/qwaszxerdfcvrtryuy.m3u8$LR•IPV4•165『线路34』 -US,http://r.jdshipin.com/ndGgS$LR•IPV4•165『线路35』 +US,http://r.jdshipin.com/Nr5jq$LR•IPV4•165『线路35』 US,https://www.iesdouyin.com/aweme/v1/playwm/?video_id=v0d00fg10000d1bp3snog65icebga4i0&ratio=720p&line=0$LR•IPV4•165『线路36』 US,https://o11.163189.xyz/stream/tvb/tvbp/$LR•IPV4•165『线路37』 US,http://push.cdn1.hls123.de:8080/streams/gw8n98gubb4/index.m3u8$LR•IPV4•165『线路38』 @@ -2370,151 +2371,152 @@ 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 -纪录,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•145『线路1』 -纪录,http://111.8.224.6:9999/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•145『线路2』 -纪录,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=f41a4cba7d196beb36c86b6f7ec67e4d$LR•IPV4•145『线路3』 -纪录,https://0472.org/hls/cgtnd.m3u8$LR•IPV4•145『线路4』 -纪录,http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•145『线路5』 -纪录,http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•145『线路6』 -纪录,http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•145『线路7』 -纪录,http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•145『线路8』 -纪录,http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•145『线路9』 -纪录,http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•145『线路10』 -纪录,http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•145『线路11』 -纪录,http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•145『线路12』 -纪录,http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•145『线路13』 -纪录,http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•145『线路14』 -纪录,http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•145『线路15』 -纪录,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•145『线路16』 -纪录,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•145『线路17』 -纪录,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•145『线路18』 -纪录,http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•145『线路19』 -纪录,http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•145『线路20』 -纪录,http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•145『线路21』 -纪录,http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•145『线路22』 -纪录,http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•145『线路23』 -纪录,http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•145『线路24』 -纪录,http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•145『线路25』 -纪录,http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•145『线路26』 -纪录,https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•145『线路27』 -纪录,http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•145『线路28』 -纪录,http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•145『线路29』 -纪录,http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•145『线路30』 -纪录,http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•145『线路31』 -纪录,http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•145『线路32』 -纪录,http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•145『线路33』 -纪录,http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•145『线路34』 -纪录,http://101.6.130.52:1234/673168140$LR•IPV4•145『线路35』 -纪录,http://101.6.130.52:1234/609006487$LR•IPV4•145『线路36』 -纪录,http://lsfb.avap.jilintv.cn/zqvk7vpj/channel/da805d8d77a24db8aaa62328eb6d874e/index.m3u8$LR•IPV4•145『线路37』 -纪录,https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•145『线路38』 -纪录,https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•145『线路39』 -纪录,https://live.chinacert.cftest5.cn/cnmg/live/609006487$LR•IPV4•145『线路40』 -纪录,http://fn.gcl.de5.net:5908/gsh950428/609006487$LR•IPV4•145『线路41』 -纪录,http://wfenf.x3322.net:7788/609006487$LR•IPV4•145『线路42』 -纪录,http://106.5.175.159:1234/609006487$LR•IPV4•145『线路43』 -纪录,http://36.104.221.222:7788/609006487$LR•IPV4•145『线路44』 -纪录,http://115.58.151.196:1234/609006487$LR•IPV4•145『线路45』 -纪录,http://182.61.15.163:80/609006487$LR•IPV4•145『线路46』 -纪录,http://121.23.132.14:7788/609006487$LR•IPV4•145『线路47』 -纪录,http://120.4.126.153:1234/609006487$LR•IPV4•145『线路48』 -纪录,http://47.119.24.76:59093/609006487$LR•IPV4•145『线路49』 -纪录,http://222.134.19.49:8090/609006487$LR•IPV4•145『线路50』 -纪录,http://139.155.89.87:1000/609006487$LR•IPV4•145『线路51』 -纪录,http://101.34.236.223:1112/609006487$LR•IPV4•145『线路52』 -纪录,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227084/index.m3u8$LR•IPV4•145『线路53』 -纪录,https://ali-xwl.cztv.com/live/channel121080Plxw.m3u8$LR•IPV4•145『线路54』 -纪录,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8?ads.app_bundle=[APP_BUNDLE]&ads.app_name=LG%20Channel%20Plus&ads.app_store_url=[APP_STOREURL]&ads.app_version=[APP_VERSION]&ads.brand_name=[DEVICE_MAKE]&ads.content_livestream=0&ads.device_lmt=[LMT]&ads.device_model=[DEVICE_MODEL]&ads.did=[IFA]&ads.fck=[FCK]&ads.gdpr_consent=[GDPR_CONSENT]&ads.ifa_type=[IFA_TYPE]&ads.market=uk&ads.platform=lg_channelplus&ads.pod_type=playerpage_midroll&ads.rtv_channel_name=sci-fi-rakuten-tv_uk&ads.rtv_content_id=6241&ads.rtv_language=en&ads.viewsize=[VIEWSIZE]&channel_id=6241&disable_subtitles=true&publishing_platform_id=2$LR•IPV4•145『线路55』 -纪录,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/manifest/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/2633b8e1-37ed-4477-9e50-d6b4f489d363/4.m3u8$LR•IPV4•145『线路56』 -纪录,p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•145『线路57』 -纪录,https://aegis-cloudfront-1.tubi.video/8d1f164d-34ef-4f70-b948-ae33826a0aaa/playlist.m3u8$LR•IPV4•145『线路58』 -纪录,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/icielsass.m3u8$LR•IPV4•145『线路59』 -纪录,https://amdici.akamaized.net/hls/live/873426/ICI-Live-Stream/master.m3u8$LR•IPV4•145『线路60』 -纪录,https://rcavlive-dai.akamaized.net/hls/live/696614/cancbftprem/master.m3u8$LR•IPV4•145『线路61』 -纪录,https://rcavlive.akamaized.net/hls/live/704020/cancbxft/master.m3u8$LR•IPV4•145『线路62』 -纪录,https://rcavlive.akamaized.net/hls/live/704017/cancbuft/master.m3u8$LR•IPV4•145『线路63』 -纪录,https://rcavlive.akamaized.net/hls/live/704024/cancjbr/master.m3u8$LR•IPV4•145『线路64』 -纪录,https://rcavlive.akamaized.net/hls/live/704016/cancksh/master.m3u8$LR•IPV4•145『线路65』 -纪录,https://rcavlive.akamaized.net/hls/live/704018/cancbwft/master.m3u8$LR•IPV4•145『线路66』 -纪录,https://rcavlive.akamaized.net/hls/live/704021/cancktm/master.m3u8$LR•IPV4•145『线路67』 -纪录,https://rcavlive.akamaized.net/hls/live/704022/cancblft/master.m3u8$LR•IPV4•145『线路68』 -纪录,https://rcavlive.akamaized.net/hls/live/664046/cancboft/master.m3u8$LR•IPV4•145『线路69』 -纪录,https://rcavlive.akamaized.net/hls/live/664045/cancbvt/master.m3u8$LR•IPV4•145『线路70』 -纪录,https://rcavlive.akamaized.net/hls/live/704023/cancktv/master.m3u8$LR•IPV4•145『线路71』 -纪录,https://rcavlive.akamaized.net/hls/live/704019/cancbkft/master.m3u8$LR•IPV4•145『线路72』 -纪录,https://rcavlive.akamaized.net/hls/live/704014/cancbaft/master.m3u8$LR•IPV4•145『线路73』 -纪录,https://5bf7b725107e5.streamlock.net/kstv/kstv/playlist.m3u8$LR•IPV4•145『线路74』 -纪录,https://cs2.push2stream.com/NCI-DVR/playlist.m3u8$LR•IPV4•145『线路75』 -纪录,https://unlimited1-cl-isp.dps.live/tvu/tvu.smil/playlist.m3u8$LR•IPV4•145『线路76』 -纪录,https://jmp2.uk/plu-60c34592c911890007f29a73.m3u8$LR•IPV4•145『线路77』 -纪录,https://jmp2.uk/plu-5e972a21ad709d00074195ba.m3u8$LR•IPV4•145『线路78』 -纪录,https://jmp2.uk/plu-5f1ac2591dd8880007bb7d6d.m3u8$LR•IPV4•145『线路79』 -纪录,https://jmp2.uk/plu-5dcb62e63d4d8f0009f36881.m3u8$LR•IPV4•145『线路80』 -纪录,https://jmp2.uk/plu-699d87093d5dba980705cca8.m3u8$LR•IPV4•145『线路81』 -纪录,https://jmp2.uk/plu-608aa4a4cc92820007b663af.m3u8$LR•IPV4•145『线路82』 -纪录,https://jmp2.uk/plu-68750875759366af05a151ce.m3u8$LR•IPV4•145『线路83』 -纪录,https://jmp2.uk/plu-67ed14aaf7c5d70b9089c3bf.m3u8$LR•IPV4•145『线路84』 -纪录,https://ncdn-live-bfm.pfd.sfr.net/shls/LIVE$LR•IPV4•145『线路85』 -纪录,https://ncdn-live-bfm.pfd.sfr.net/shls/LIVE$LR•IPV4•145『线路86』 -纪录,https://rcavlive.akamaized.net/hls/live/704025/xcanrdi/master.m3u8$LR•IPV4•145『线路87』 -纪录,https://5f22d76e220e1.streamlock.net/pacicontemporarychannel/pacicontemporarychannel/playlist.m3u8$LR•IPV4•145『线路88』 -纪录,https://origin.dpsgo.com/ssai/event/BBp0VeP6QtOOlH8nu3bWTg/master.m3u8$LR•IPV4•145『线路89』 -纪录,https://canal.mediaserver.com.co/live/oracionconson.m3u8$LR•IPV4•145『线路90』 -纪录,https://livestream.mediacci.com/ccitv/index.m3u8$LR•IPV4•145『线路91』 -纪录,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emciafrique.m3u8$LR•IPV4•145『线路92』 -纪录,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emciamerique.m3u8$LR•IPV4•145『线路93』 -纪录,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emcieurope.m3u8$LR•IPV4•145『线路94』 -纪录,https://video2.getstreamhosting.com:19360/8000/8000.m3u8$LR•IPV4•145『线路95』 -纪录,https://stream.eleden.com/livesalvatv/ngrp:livesalvatv_all/playlist.m3u8$LR•IPV4•145『线路96』 -纪录,https://67acccf130420.streamlock.net/enlacepr1/enlacepr1/playlist.m3u8$LR•IPV4•145『线路97』 -纪录,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/RD16KOPRXE0O9L4VAXVJ/hls3/now,-1m/m.m3u8?ads.vf=EoTB4HqnHbi$LR•IPV4•145『线路98』 -纪录,https://jmp2.uk/plu-63211ba9cad976000794f988.m3u8$LR•IPV4•145『线路99』 -纪录,https://jmp2.uk/plu-6964d2179ba4ac18051a18ce.m3u8$LR•IPV4•145『线路100』 -纪录,https://sci-fi-rakuten-tv-it.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6430/master.m3u8$LR•IPV4•145『线路101』 -纪录,https://sci-fi-rakuten-tv-es.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6740/master.m3u8$LR•IPV4•145『线路102』 -纪录,https://lb.dstvmultimedia.com/SciFiHD/index.m3u8$LR•IPV4•145『线路103』 -纪录,https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/a985e052-6868-4365-ac45-52afe9008b25/manifest.m3u8$LR•IPV4•145『线路104』 -纪录,https://amg00609-amg00609c5-rakuten-uk-3764.playouts.now.amagi.tv/master.m3u8$LR•IPV4•145『线路105』 -纪录,https://jmp2.uk/plu-61bb2814ac085a00074309a6.m3u8$LR•IPV4•145『线路106』 -纪录,https://stream.ads.ottera.tv/playlist.m3u8?network_id=4312$LR•IPV4•145『线路107』 -纪录,https://jmp2.uk/plu-680bdaf54d7cf165c705f91e.m3u8$LR•IPV4•145『线路108』 -纪录,http://158.180.39.89:5033/hayatovci.m3u8$LR•IPV4•145『线路109』 -纪录,https://jmp2.uk/plu-619247c34a270700077c8415.m3u8$LR•IPV4•145『线路110』 -纪录,https://jmp2.uk/plu-6479ff1c17f5e10008ad2797.m3u8$LR•IPV4•145『线路111』 -纪录,https://jmp2.uk/plu-65662f8a2c46f300088a84cc.m3u8$LR•IPV4•145『线路112』 -纪录,https://jmp2.uk/plu-65ddec1ef7f0af0008be4b65.m3u8$LR•IPV4•145『线路113』 -纪录,https://jmp2.uk/plu-63d2ba2f60bc8f0008981a0e.m3u8$LR•IPV4•145『线路114』 -纪录,https://jmp2.uk/plu-645e00d5d3fdde000829463a.m3u8$LR•IPV4•145『线路115』 -纪录,https://jmp2.uk/plu-60ed498c4248a400077c0b9d.m3u8$LR•IPV4•145『线路116』 -纪录,https://jmp2.uk/plu-5f6a38eaa5b68b0007a00e7a.m3u8$LR•IPV4•145『线路117』 -纪录,https://jmp2.uk/plu-5dc02a44a9518600094273ac.m3u8$LR•IPV4•145『线路118』 -纪录,https://jmp2.uk/plu-61728bb9ee3773000840c1fa.m3u8$LR•IPV4•145『线路119』 -纪录,https://jmp2.uk/plu-61f9598588f86000078ee7d6.m3u8$LR•IPV4•145『线路120』 -纪录,https://jmp2.uk/plu-61f957e051cca800076f2358.m3u8$LR•IPV4•145『线路121』 -纪录,https://jmp2.uk/plu-61f9597e78607000074f6c2a.m3u8$LR•IPV4•145『线路122』 -纪录,https://jmp2.uk/plu-66166cb1307fa30008f275e7.m3u8$LR•IPV4•145『线路123』 -纪录,https://jmp2.uk/plu-5f2817d3d7573a00080f9175.m3u8$LR•IPV4•145『线路124』 -纪录,https://jmp2.uk/plu-5b4fc274694c027be6ed3eea.m3u8$LR•IPV4•145『线路125』 -纪录,https://webstream.multistream.it/memfs/e2cb3629-c1a2-495b-b43a-9eb386f04ed8.m3u8$LR•IPV4•145『线路126』 -纪录,http://31.148.48.15/SONY_SCI_FI/index.m3u8$LR•IPV4•145『线路127』 -纪录,http://hls127.freeott.top:8080/Da_Vinci_Learning/video.m3u8$LR•IPV4•145『线路128』 -纪录,https://jmp2.uk/plu-65df731cec9fda0008b7aa8d.m3u8$LR•IPV4•145『线路129』 -纪录,https://jmp2.uk/plu-65df7272ec9fda0008b7a970.m3u8$LR•IPV4•145『线路130』 -纪录,https://jmp2.uk/plu-65df73520d4561000817c29b.m3u8$LR•IPV4•145『线路131』 -纪录,https://jmp2.uk/plu-65df72db18036500081a8292.m3u8$LR•IPV4•145『线路132』 -纪录,https://video.ejeserver.com/live/mcitelevision.m3u8$LR•IPV4•145『线路133』 -纪录,http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•145『线路134』 -纪录,http://akariko.netgenx.site/stream/jp/discovery_channel/stream-output.m3u8?mode=hls$LR•IPV4•145『线路135』 -纪录,https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•145『线路136』 -纪录,https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•145『线路137』 -纪录,p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•145『线路138』 -纪录,http://108.181.20.255:27347/livehttpplay?channel_id=23081$LR•IPV4•145『线路139』 -纪录,http://23.237.104.106:8080/USA_MTV_LIVE/index.m3u8$LR•IPV4•145『线路140』 -纪录,p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•145『线路141』 -纪录,p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•145『线路142』 -纪录,http://108.181.20.255:27347/livehttpplay?channel_id=23097$LR•IPV4•145『线路143』 -纪录,https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•145『线路144』 -纪录,p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•145『线路145』 +纪录,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=473672dc61422fb039e3d97851b8147e$LR•IPV4•146『线路1』 +纪录,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•146『线路2』 +纪录,http://111.8.224.6:9999/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•146『线路3』 +纪录,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=45393a2f14f679e6b5db6aea2afafa39$LR•IPV4•146『线路4』 +纪录,https://0472.org/hls/cgtnd.m3u8$LR•IPV4•146『线路5』 +纪录,http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•146『线路6』 +纪录,http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•146『线路7』 +纪录,http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•146『线路8』 +纪录,http://free.cnlive.club/channel/n3efbe5af/index.m3u8?q=1752629214236$LR•IPV4•146『线路9』 +纪录,http://free.cnlive.club/channel/1404dfbd/index.m3u8?q=1752629214236$LR•IPV4•146『线路10』 +纪录,http://free.cnlive.club/channel/n3287f647/index.m3u8?q=1752629214236$LR•IPV4•146『线路11』 +纪录,http://free.cnlive.club/channel/n2517f7dd/index.m3u8?q=1752629214236$LR•IPV4•146『线路12』 +纪录,http://free.cnlive.club/channel/4b914480/index.m3u8?q=1752629214236$LR•IPV4•146『线路13』 +纪录,http://free.cnlive.club/channel/6272ba2c/index.m3u8?q=1752629214236$LR•IPV4•146『线路14』 +纪录,http://free.cnlive.club/channel/24a7393c/index.m3u8?q=1752629214236$LR•IPV4•146『线路15』 +纪录,http://free.cnlive.club/channel/n75e57aab/index.m3u8?q=1752629214236$LR•IPV4•146『线路16』 +纪录,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•146『线路17』 +纪录,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•146『线路18』 +纪录,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•146『线路19』 +纪录,http://free.cnlive.club/channel/n7a0c7aec/index.m3u8?q=1752629214236$LR•IPV4•146『线路20』 +纪录,http://free.cnlive.club/channel/n6582cfc7/index.m3u8?q=1752629214236$LR•IPV4•146『线路21』 +纪录,http://free.cnlive.club/channel/n18e58008/index.m3u8?q=1752629214236$LR•IPV4•146『线路22』 +纪录,http://free.cnlive.club/channel/6c975854/index.m3u8?q=1752629214236$LR•IPV4•146『线路23』 +纪录,http://free.cnlive.club/channel/n28af27dd/index.m3u8?q=1752629214236$LR•IPV4•146『线路24』 +纪录,http://free.cnlive.club/channel/264e2d58/index.m3u8?q=1752629214236$LR•IPV4•146『线路25』 +纪录,http://free.cnlive.club/channel/2631a9ae/index.m3u8?q=1752629214236$LR•IPV4•146『线路26』 +纪录,http://120.55.49.231:3095/rtp/233.50.202.25:5140$LR•IPV4•146『线路27』 +纪录,https://ali-m-l.cztv.com/channels/lantian/channel12/720p.m3u8$LR•IPV4•146『线路28』 +纪录,http://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•146『线路29』 +纪录,http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•146『线路30』 +纪录,http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•146『线路31』 +纪录,https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•146『线路32』 +纪录,https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•146『线路33』 +纪录,http://207.56.13.146:81/cdnlive/cctv9.m3u8$LR•IPV4•146『线路34』 +纪录,http://173.208.212.130:8181/1080p/cctv9.m3u8$LR•IPV4•146『线路35』 +纪录,http://173.208.212.130:8181/720p/cctv9.m3u8$LR•IPV4•146『线路36』 +纪录,http://204.12.221.218:8181/3m1080p/cctv9.m3u8$LR•IPV4•146『线路37』 +纪录,http://101.6.130.52:1234/673168140$LR•IPV4•146『线路38』 +纪录,http://101.6.130.52:1234/609006487$LR•IPV4•146『线路39』 +纪录,http://lsfb.avap.jilintv.cn/zqvk7vpj/channel/da805d8d77a24db8aaa62328eb6d874e/index.m3u8$LR•IPV4•146『线路40』 +纪录,https://live.chinacert.cftest5.cn/cnmg/live/609006487$LR•IPV4•146『线路41』 +纪录,http://fn.gcl.de5.net:5908/gsh950428/609006487$LR•IPV4•146『线路42』 +纪录,http://wfenf.x3322.net:7788/609006487$LR•IPV4•146『线路43』 +纪录,http://106.5.175.159:1234/609006487$LR•IPV4•146『线路44』 +纪录,http://36.104.221.222:7788/609006487$LR•IPV4•146『线路45』 +纪录,http://115.58.151.196:1234/609006487$LR•IPV4•146『线路46』 +纪录,http://182.61.15.163:80/609006487$LR•IPV4•146『线路47』 +纪录,http://121.23.132.14:7788/609006487$LR•IPV4•146『线路48』 +纪录,http://120.4.126.153:1234/609006487$LR•IPV4•146『线路49』 +纪录,http://47.119.24.76:59093/609006487$LR•IPV4•146『线路50』 +纪录,http://222.134.19.49:8090/609006487$LR•IPV4•146『线路51』 +纪录,http://139.155.89.87:1000/609006487$LR•IPV4•146『线路52』 +纪录,http://101.34.236.223:1112/609006487$LR•IPV4•146『线路53』 +纪录,http://dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221227084/index.m3u8$LR•IPV4•146『线路54』 +纪录,https://ali-xwl.cztv.com/live/channel121080Plxw.m3u8$LR•IPV4•146『线路55』 +纪录,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8?ads.app_bundle=[APP_BUNDLE]&ads.app_name=LG%20Channel%20Plus&ads.app_store_url=[APP_STOREURL]&ads.app_version=[APP_VERSION]&ads.brand_name=[DEVICE_MAKE]&ads.content_livestream=0&ads.device_lmt=[LMT]&ads.device_model=[DEVICE_MODEL]&ads.did=[IFA]&ads.fck=[FCK]&ads.gdpr_consent=[GDPR_CONSENT]&ads.ifa_type=[IFA_TYPE]&ads.market=uk&ads.platform=lg_channelplus&ads.pod_type=playerpage_midroll&ads.rtv_channel_name=sci-fi-rakuten-tv_uk&ads.rtv_content_id=6241&ads.rtv_language=en&ads.viewsize=[VIEWSIZE]&channel_id=6241&disable_subtitles=true&publishing_platform_id=2$LR•IPV4•146『线路56』 +纪录,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/manifest/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/2633b8e1-37ed-4477-9e50-d6b4f489d363/4.m3u8$LR•IPV4•146『线路57』 +纪录,p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•146『线路58』 +纪录,https://aegis-cloudfront-1.tubi.video/8d1f164d-34ef-4f70-b948-ae33826a0aaa/playlist.m3u8$LR•IPV4•146『线路59』 +纪录,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/icielsass.m3u8$LR•IPV4•146『线路60』 +纪录,https://amdici.akamaized.net/hls/live/873426/ICI-Live-Stream/master.m3u8$LR•IPV4•146『线路61』 +纪录,https://rcavlive-dai.akamaized.net/hls/live/696614/cancbftprem/master.m3u8$LR•IPV4•146『线路62』 +纪录,https://rcavlive.akamaized.net/hls/live/704020/cancbxft/master.m3u8$LR•IPV4•146『线路63』 +纪录,https://rcavlive.akamaized.net/hls/live/704017/cancbuft/master.m3u8$LR•IPV4•146『线路64』 +纪录,https://rcavlive.akamaized.net/hls/live/704024/cancjbr/master.m3u8$LR•IPV4•146『线路65』 +纪录,https://rcavlive.akamaized.net/hls/live/704016/cancksh/master.m3u8$LR•IPV4•146『线路66』 +纪录,https://rcavlive.akamaized.net/hls/live/704018/cancbwft/master.m3u8$LR•IPV4•146『线路67』 +纪录,https://rcavlive.akamaized.net/hls/live/704021/cancktm/master.m3u8$LR•IPV4•146『线路68』 +纪录,https://rcavlive.akamaized.net/hls/live/704022/cancblft/master.m3u8$LR•IPV4•146『线路69』 +纪录,https://rcavlive.akamaized.net/hls/live/664046/cancboft/master.m3u8$LR•IPV4•146『线路70』 +纪录,https://rcavlive.akamaized.net/hls/live/664045/cancbvt/master.m3u8$LR•IPV4•146『线路71』 +纪录,https://rcavlive.akamaized.net/hls/live/704023/cancktv/master.m3u8$LR•IPV4•146『线路72』 +纪录,https://rcavlive.akamaized.net/hls/live/704019/cancbkft/master.m3u8$LR•IPV4•146『线路73』 +纪录,https://rcavlive.akamaized.net/hls/live/704014/cancbaft/master.m3u8$LR•IPV4•146『线路74』 +纪录,https://5bf7b725107e5.streamlock.net/kstv/kstv/playlist.m3u8$LR•IPV4•146『线路75』 +纪录,https://cs2.push2stream.com/NCI-DVR/playlist.m3u8$LR•IPV4•146『线路76』 +纪录,https://unlimited1-cl-isp.dps.live/tvu/tvu.smil/playlist.m3u8$LR•IPV4•146『线路77』 +纪录,https://jmp2.uk/plu-60c34592c911890007f29a73.m3u8$LR•IPV4•146『线路78』 +纪录,https://jmp2.uk/plu-5e972a21ad709d00074195ba.m3u8$LR•IPV4•146『线路79』 +纪录,https://jmp2.uk/plu-5f1ac2591dd8880007bb7d6d.m3u8$LR•IPV4•146『线路80』 +纪录,https://jmp2.uk/plu-5dcb62e63d4d8f0009f36881.m3u8$LR•IPV4•146『线路81』 +纪录,https://jmp2.uk/plu-699d87093d5dba980705cca8.m3u8$LR•IPV4•146『线路82』 +纪录,https://jmp2.uk/plu-608aa4a4cc92820007b663af.m3u8$LR•IPV4•146『线路83』 +纪录,https://jmp2.uk/plu-68750875759366af05a151ce.m3u8$LR•IPV4•146『线路84』 +纪录,https://jmp2.uk/plu-67ed14aaf7c5d70b9089c3bf.m3u8$LR•IPV4•146『线路85』 +纪录,https://ncdn-live-bfm.pfd.sfr.net/shls/LIVE$LR•IPV4•146『线路86』 +纪录,https://ncdn-live-bfm.pfd.sfr.net/shls/LIVE$LR•IPV4•146『线路87』 +纪录,https://rcavlive.akamaized.net/hls/live/704025/xcanrdi/master.m3u8$LR•IPV4•146『线路88』 +纪录,https://5f22d76e220e1.streamlock.net/pacicontemporarychannel/pacicontemporarychannel/playlist.m3u8$LR•IPV4•146『线路89』 +纪录,https://origin.dpsgo.com/ssai/event/BBp0VeP6QtOOlH8nu3bWTg/master.m3u8$LR•IPV4•146『线路90』 +纪录,https://canal.mediaserver.com.co/live/oracionconson.m3u8$LR•IPV4•146『线路91』 +纪录,https://livestream.mediacci.com/ccitv/index.m3u8$LR•IPV4•146『线路92』 +纪录,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emciafrique.m3u8$LR•IPV4•146『线路93』 +纪录,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emciamerique.m3u8$LR•IPV4•146『线路94』 +纪录,https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/emcieurope.m3u8$LR•IPV4•146『线路95』 +纪录,https://video2.getstreamhosting.com:19360/8000/8000.m3u8$LR•IPV4•146『线路96』 +纪录,https://stream.eleden.com/livesalvatv/ngrp:livesalvatv_all/playlist.m3u8$LR•IPV4•146『线路97』 +纪录,https://67acccf130420.streamlock.net/enlacepr1/enlacepr1/playlist.m3u8$LR•IPV4•146『线路98』 +纪录,https://d3s7x6kmqcnb6b.cloudfront.net/d/distro001a/RD16KOPRXE0O9L4VAXVJ/hls3/now,-1m/m.m3u8?ads.vf=EoTB4HqnHbi$LR•IPV4•146『线路99』 +纪录,https://jmp2.uk/plu-63211ba9cad976000794f988.m3u8$LR•IPV4•146『线路100』 +纪录,https://jmp2.uk/plu-6964d2179ba4ac18051a18ce.m3u8$LR•IPV4•146『线路101』 +纪录,https://sci-fi-rakuten-tv-it.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6430/master.m3u8$LR•IPV4•146『线路102』 +纪录,https://sci-fi-rakuten-tv-es.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6740/master.m3u8$LR•IPV4•146『线路103』 +纪录,https://lb.dstvmultimedia.com/SciFiHD/index.m3u8$LR•IPV4•146『线路104』 +纪录,https://streams2.sofast.tv/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/a985e052-6868-4365-ac45-52afe9008b25/manifest.m3u8$LR•IPV4•146『线路105』 +纪录,https://amg00609-amg00609c5-rakuten-uk-3764.playouts.now.amagi.tv/master.m3u8$LR•IPV4•146『线路106』 +纪录,https://jmp2.uk/plu-61bb2814ac085a00074309a6.m3u8$LR•IPV4•146『线路107』 +纪录,https://stream.ads.ottera.tv/playlist.m3u8?network_id=4312$LR•IPV4•146『线路108』 +纪录,https://jmp2.uk/plu-680bdaf54d7cf165c705f91e.m3u8$LR•IPV4•146『线路109』 +纪录,http://158.180.39.89:5033/hayatovci.m3u8$LR•IPV4•146『线路110』 +纪录,https://jmp2.uk/plu-619247c34a270700077c8415.m3u8$LR•IPV4•146『线路111』 +纪录,https://jmp2.uk/plu-6479ff1c17f5e10008ad2797.m3u8$LR•IPV4•146『线路112』 +纪录,https://jmp2.uk/plu-65662f8a2c46f300088a84cc.m3u8$LR•IPV4•146『线路113』 +纪录,https://jmp2.uk/plu-65ddec1ef7f0af0008be4b65.m3u8$LR•IPV4•146『线路114』 +纪录,https://jmp2.uk/plu-63d2ba2f60bc8f0008981a0e.m3u8$LR•IPV4•146『线路115』 +纪录,https://jmp2.uk/plu-645e00d5d3fdde000829463a.m3u8$LR•IPV4•146『线路116』 +纪录,https://jmp2.uk/plu-60ed498c4248a400077c0b9d.m3u8$LR•IPV4•146『线路117』 +纪录,https://jmp2.uk/plu-5f6a38eaa5b68b0007a00e7a.m3u8$LR•IPV4•146『线路118』 +纪录,https://jmp2.uk/plu-5dc02a44a9518600094273ac.m3u8$LR•IPV4•146『线路119』 +纪录,https://jmp2.uk/plu-61728bb9ee3773000840c1fa.m3u8$LR•IPV4•146『线路120』 +纪录,https://jmp2.uk/plu-61f9598588f86000078ee7d6.m3u8$LR•IPV4•146『线路121』 +纪录,https://jmp2.uk/plu-61f957e051cca800076f2358.m3u8$LR•IPV4•146『线路122』 +纪录,https://jmp2.uk/plu-61f9597e78607000074f6c2a.m3u8$LR•IPV4•146『线路123』 +纪录,https://jmp2.uk/plu-66166cb1307fa30008f275e7.m3u8$LR•IPV4•146『线路124』 +纪录,https://jmp2.uk/plu-5f2817d3d7573a00080f9175.m3u8$LR•IPV4•146『线路125』 +纪录,https://jmp2.uk/plu-5b4fc274694c027be6ed3eea.m3u8$LR•IPV4•146『线路126』 +纪录,https://webstream.multistream.it/memfs/e2cb3629-c1a2-495b-b43a-9eb386f04ed8.m3u8$LR•IPV4•146『线路127』 +纪录,http://31.148.48.15/SONY_SCI_FI/index.m3u8$LR•IPV4•146『线路128』 +纪录,http://hls127.freeott.top:8080/Da_Vinci_Learning/video.m3u8$LR•IPV4•146『线路129』 +纪录,https://jmp2.uk/plu-65df731cec9fda0008b7aa8d.m3u8$LR•IPV4•146『线路130』 +纪录,https://jmp2.uk/plu-65df7272ec9fda0008b7a970.m3u8$LR•IPV4•146『线路131』 +纪录,https://jmp2.uk/plu-65df73520d4561000817c29b.m3u8$LR•IPV4•146『线路132』 +纪录,https://jmp2.uk/plu-65df72db18036500081a8292.m3u8$LR•IPV4•146『线路133』 +纪录,https://video.ejeserver.com/live/mcitelevision.m3u8$LR•IPV4•146『线路134』 +纪录,http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•146『线路135』 +纪录,http://akariko.netgenx.site/stream/jp/discovery_channel/stream-output.m3u8?mode=hls$LR•IPV4•146『线路136』 +纪录,https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•146『线路137』 +纪录,https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•146『线路138』 +纪录,p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•146『线路139』 +纪录,http://108.181.20.255:27347/livehttpplay?channel_id=23081$LR•IPV4•146『线路140』 +纪录,http://23.237.104.106:8080/USA_MTV_LIVE/index.m3u8$LR•IPV4•146『线路141』 +纪录,p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•146『线路142』 +纪录,p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•146『线路143』 +纪录,http://108.181.20.255:27347/livehttpplay?channel_id=23097$LR•IPV4•146『线路144』 +纪录,https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•146『线路145』 +纪录,p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•146『线路146』 💓儿童专享,#genre# 樱桃小丸子剧,http://103.193.151.146/huya.php?id=11342394$LR•IPV4 @@ -2948,309 +2950,309 @@ CCTV兵器,http://38.75.136.137:98/gslb/dsdqpub/bqkj.m3u8?auth=testpub$LR•IPV4 CCTV兵器,http://60.10.139.113:8801/hls/72/index.m3u8$LR•IPV4•5『线路3』 CCTV兵器,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226975/index.m3u8$LR•IPV6•5『线路4』 CCTV兵器,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gfjs$LR•IPV4•5『线路5』 -CCTV,http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•251『线路1』 -CCTV,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•251『线路2』 -CCTV,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•251『线路3』 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782889200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-cb6bb8d81dd443bea6c3981543aa5af6&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•251『线路4』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•251『线路5』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•251『线路6』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•251『线路7』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•251『线路8』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•251『线路9』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•251『线路10』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•251『线路11』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•251『线路12』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•251『线路13』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•251『线路14』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•251『线路15』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•251『线路16』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•251『线路17』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•251『线路18』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•251『线路19』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•251『线路20』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv1hd.m3u8?auth=testpub$LR•IPV4•251『线路21』 -CCTV,http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•251『线路22』 -CCTV,http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•251『线路23』 -CCTV,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•251『线路24』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•251『线路25』 -CCTV,http://111.8.224.6:9999/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路26』 -CCTV,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•251『线路27』 -CCTV,http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•251『线路28』 -CCTV,http://111.8.224.6:9999/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路29』 -CCTV,http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•251『线路30』 -CCTV,http://111.8.224.6:9999/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路31』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv5p.m3u8?auth=testpub$LR•IPV4•251『线路32』 -CCTV,http://173.208.212.130:8181/720p/cctv5.m3u8$LR•IPV4•251『线路33』 -CCTV,http://207.56.13.146:81/cdnlive/cctv5.m3u8$LR•IPV4•251『线路34』 -CCTV,http://74.91.26.218:82/live/cctv5p.m3u8$LR•IPV4•251『线路35』 -CCTV,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•251『线路36』 -CCTV,http://111.8.224.6:9999/tsfile/live/1024_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路37』 -CCTV,http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•251『线路38』 -CCTV,http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•251『线路39』 -CCTV,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•251『线路40』 -CCTV,http://207.56.13.146:81/cdnlive/cctv7.m3u8$LR•IPV4•251『线路41』 -CCTV,http://173.208.212.130:8181/720p/cctv7.m3u8$LR•IPV4•251『线路42』 -CCTV,http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•251『线路43』 -CCTV,http://173.208.212.130:8181/720p/cctv8k.m3u8$LR•IPV4•251『线路44』 -CCTV,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•251『线路45』 -CCTV,http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•251『线路46』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv9hd.m3u8?auth=testpub$LR•IPV4•251『线路47』 -CCTV,http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•251『线路48』 -CCTV,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•251『线路49』 -CCTV,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•251『线路50』 -CCTV,http://222.223.41.27:8888/hls/11/index.m3u8$LR•IPV4•251『线路51』 -CCTV,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•251『线路52』 -CCTV,http://111.8.224.6:9999/tsfile/live/1043_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路53』 -CCTV,http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•251『线路54』 -CCTV,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•251『线路55』 -CCTV,http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•251『线路56』 -CCTV,http://222.223.41.27:8888/hls/14/index.m3u8$LR•IPV4•251『线路57』 -CCTV,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•251『线路58』 -CCTV,http://111.8.224.6:9999/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路59』 -CCTV,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•251『线路60』 -CCTV,http://173.208.212.130:8181/720p/cctv14.m3u8$LR•IPV4•251『线路61』 -CCTV,http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•251『线路62』 -CCTV,http://111.8.224.6:9999/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路63』 -CCTV,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•251『线路64』 -CCTV,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•251『线路65』 -CCTV,http://111.8.224.6:9999/tsfile/live/1025_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•251『线路66』 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782925200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0976a55b4fad30979ca9561cda031a05&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•251『线路67』 -CCTV,https://epg.pw/stream/25677ac2e8c1f7c3dd6359c43eb5f0f54efb3f5c11f9dda18d01b3e0308ed017.m3u8$LR•IPV4•251『线路68』 -CCTV,https://epg.pw/stream/6d7bf281e3d739806a73f5373acaa6e01988ec9739f5ac1355ce54b47a928472.m3u8$LR•IPV4•251『线路69』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•251『线路70』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•251『线路71』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•251『线路72』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•251『线路73』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•251『线路74』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•251『线路75』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•251『线路76』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•251『线路77』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•251『线路78』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•251『线路79』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•251『线路80』 -CCTV,http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•251『线路81』 -CCTV,http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•251『线路82』 -CCTV,http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•251『线路83』 -CCTV,http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•251『线路84』 -CCTV,http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•251『线路85』 -CCTV,http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•251『线路86』 -CCTV,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•251『线路87』 -CCTV,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•251『线路88』 -CCTV,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•251『线路89』 -CCTV,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•251『线路90』 -CCTV,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•251『线路91』 -CCTV,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•251『线路92』 -CCTV,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•251『线路93』 -CCTV,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•251『线路94』 -CCTV,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•251『线路95』 -CCTV,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•251『线路96』 -CCTV,http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•251『线路97』 -CCTV,http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•251『线路98』 -CCTV,http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•251『线路99』 -CCTV,http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•251『线路100』 -CCTV,http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•251『线路101』 -CCTV,http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•251『线路102』 -CCTV,http://60.10.139.113:8801/hls/70/index.m3u8$LR•IPV4•251『线路103』 -CCTV,http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•251『线路104』 -CCTV,http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•251『线路105』 -CCTV,http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•251『线路106』 -CCTV,http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•251『线路107』 -CCTV,http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•251『线路108』 -CCTV,http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•251『线路109』 -CCTV,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•251『线路110』 -CCTV,http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•251『线路111』 -CCTV,http://207.56.13.146:81/cdnlive/cctv10.m3u8$LR•IPV4•251『线路112』 -CCTV,http://207.56.13.146:81/cdnlive/cctv11.m3u8$LR•IPV4•251『线路113』 -CCTV,http://207.56.13.146:81/cdnlive/cctv12.m3u8$LR•IPV4•251『线路114』 -CCTV,http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•251『线路115』 -CCTV,http://207.56.13.146:81/cdnlive/cctv14.m3u8$LR•IPV4•251『线路116』 -CCTV,http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•251『线路117』 -CCTV,http://207.56.13.146:81/cdnlive/cctv16.m3u8$LR•IPV4•251『线路118』 -CCTV,http://207.56.13.146:81/cdnlive/cctv17.m3u8$LR•IPV4•251『线路119』 -CCTV,http://207.56.13.146:81/cdnlive/cctv5p.m3u8$LR•IPV4•251『线路120』 -CCTV,http://207.56.13.146:81/cdnlive/gfjs.m3u8$LR•IPV4•251『线路121』 -CCTV,http://207.56.13.146:81/cdnlive/nxss.m3u8$LR•IPV4•251『线路122』 -CCTV,http://207.56.13.146:81/cdnlive/sjdl.m3u8$LR•IPV4•251『线路123』 -CCTV,http://207.56.13.146:81/cdnlive/wsjk.m3u8$LR•IPV4•251『线路124』 -CCTV,http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•251『线路125』 -CCTV,http://207.56.13.146:81/cdnlive/dyjc.m3u8$LR•IPV4•251『线路126』 -CCTV,http://207.56.13.146:81/cdnlive/hjjc.m3u8$LR•IPV4•251『线路127』 -CCTV,http://207.56.13.146:81/cdnlive/fyjc.m3u8$LR•IPV4•251『线路128』 -CCTV,http://207.56.13.146:81/cdnlive/fyzq.m3u8$LR•IPV4•251『线路129』 -CCTV,http://207.56.13.146:81/cdnlive/fyyy.m3u8$LR•IPV4•251『线路130』 -CCTV,http://207.56.13.146:81/cdnlive/ystq.m3u8$LR•IPV4•251『线路131』 -CCTV,http://207.56.13.146:81/cdnlive/gefwq.m3u8$LR•IPV4•251『线路132』 -CCTV,http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•251『线路133』 -CCTV,http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•251『线路134』 -CCTV,http://192.151.150.154/live/cctv3hd.m3u8$LR•IPV4•251『线路135』 -CCTV,http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•251『线路136』 -CCTV,http://192.151.150.154/live/cctv5hd.m3u8$LR•IPV4•251『线路137』 -CCTV,http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•251『线路138』 -CCTV,http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•251『线路139』 -CCTV,http://192.151.150.154/live/cctv7hd.m3u8$LR•IPV4•251『线路140』 -CCTV,http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•251『线路141』 -CCTV,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•251『线路142』 -CCTV,http://192.151.150.154/live/cctv10hd.m3u8$LR•IPV4•251『线路143』 -CCTV,http://192.151.150.154/live/cctv11hd.m3u8$LR•IPV4•251『线路144』 -CCTV,http://192.151.150.154/live/cctv12hd.m3u8$LR•IPV4•251『线路145』 -CCTV,http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•251『线路146』 -CCTV,http://192.151.150.154/live/cctv14hd.m3u8$LR•IPV4•251『线路147』 -CCTV,http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•251『线路148』 -CCTV,http://192.151.150.154/live/cctv16hd.m3u8$LR•IPV4•251『线路149』 -CCTV,http://192.151.150.154/live/cctv17hd.m3u8$LR•IPV4•251『线路150』 -CCTV,http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•251『线路151』 -CCTV,http://192.151.150.154/live/dszn.m3u8$LR•IPV4•251『线路152』 -CCTV,http://192.151.150.154/live/dyjc.m3u8$LR•IPV4•251『线路153』 -CCTV,http://192.151.150.154/live/fyjc.m3u8$LR•IPV4•251『线路154』 -CCTV,http://192.151.150.154/live/fyyy.m3u8$LR•IPV4•251『线路155』 -CCTV,http://192.151.150.154/live/fyzq.m3u8$LR•IPV4•251『线路156』 -CCTV,http://192.151.150.154/live/gefwq.m3u8$LR•IPV4•251『线路157』 -CCTV,http://192.151.150.154/live/gfjs.m3u8$LR•IPV4•251『线路158』 -CCTV,http://192.151.150.154/live/nxss.m3u8$LR•IPV4•251『线路159』 -CCTV,http://192.151.150.154/live/sjdl.m3u8$LR•IPV4•251『线路160』 -CCTV,http://192.151.150.154/live/hjjc.m3u8$LR•IPV4•251『线路161』 -CCTV,http://192.151.150.154/live/ystq.m3u8$LR•IPV4•251『线路162』 -CCTV,http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•251『线路163』 -CCTV,http://192.151.150.154/live/wsjk.m3u8$LR•IPV4•251『线路164』 -CCTV,http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•251『线路165』 -CCTV,http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•251『线路166』 -CCTV,http://173.208.212.130:8181/1080p/cctv3.m3u8$LR•IPV4•251『线路167』 -CCTV,http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•251『线路168』 -CCTV,http://173.208.212.130:8181/1080p/cctv5.m3u8$LR•IPV4•251『线路169』 -CCTV,http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•251『线路170』 -CCTV,http://173.208.212.130:8181/1080p/cctv7.m3u8$LR•IPV4•251『线路171』 -CCTV,http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•251『线路172』 -CCTV,http://173.208.212.130:8181/1080p/cctv10.m3u8$LR•IPV4•251『线路173』 -CCTV,http://173.208.212.130:8181/1080p/cctv11.m3u8$LR•IPV4•251『线路174』 -CCTV,http://173.208.212.130:8181/1080p/cctv12.m3u8$LR•IPV4•251『线路175』 -CCTV,http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•251『线路176』 -CCTV,http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•251『线路177』 -CCTV,http://173.208.212.130:8181/1080p/cctv16.m3u8$LR•IPV4•251『线路178』 -CCTV,http://173.208.212.130:8181/1080p/cctv17.m3u8$LR•IPV4•251『线路179』 -CCTV,http://173.208.212.130:8181/1080p/cctv5p.m3u8$LR•IPV4•251『线路180』 -CCTV,http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•251『线路181』 -CCTV,http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•251『线路182』 -CCTV,http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•251『线路183』 -CCTV,http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•251『线路184』 -CCTV,http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•251『线路185』 -CCTV,http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•251『线路186』 -CCTV,http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•251『线路187』 -CCTV,http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•251『线路188』 -CCTV,http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•251『线路189』 -CCTV,http://173.208.212.130:8181/720p/cctv16.m3u8$LR•IPV4•251『线路190』 -CCTV,http://173.208.212.130:8181/720p/cctv17.m3u8$LR•IPV4•251『线路191』 -CCTV,http://173.208.212.130:8181/720p/cctv5p.m3u8$LR•IPV4•251『线路192』 -CCTV,http://173.208.212.130:8181/720p/dyjc.m3u8$LR•IPV4•251『线路193』 -CCTV,http://173.208.212.130:8181/720p/fyjc.m3u8$LR•IPV4•251『线路194』 -CCTV,http://173.208.212.130:8181/720p/hjjc.m3u8$LR•IPV4•251『线路195』 -CCTV,http://173.208.212.130:8181/720p/gfjs.m3u8$LR•IPV4•251『线路196』 -CCTV,http://173.208.212.130:8181/720p/nxss.m3u8$LR•IPV4•251『线路197』 -CCTV,http://173.208.212.130:8181/720p/sjdl.m3u8$LR•IPV4•251『线路198』 -CCTV,http://173.208.212.130:8181/720p/wsjk.m3u8$LR•IPV4•251『线路199』 -CCTV,http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•251『线路200』 -CCTV,http://173.208.212.130:8181/720p/fyyy.m3u8$LR•IPV4•251『线路201』 -CCTV,http://173.208.212.130:8181/720p/ystq.m3u8$LR•IPV4•251『线路202』 -CCTV,http://173.208.212.130:8181/720p/fyzq.m3u8$LR•IPV4•251『线路203』 -CCTV,http://173.208.212.130:8181/720p/gefwq.m3u8$LR•IPV4•251『线路204』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•251『线路205』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•251『线路206』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•251『线路207』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•251『线路208』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv5.m3u8$LR•IPV4•251『线路209』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•251『线路210』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•251『线路211』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•251『线路212』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•251『线路213』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•251『线路214』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•251『线路215』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•251『线路216』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•251『线路217』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•251『线路218』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv16.m3u8$LR•IPV4•251『线路219』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv17.m3u8$LR•IPV4•251『线路220』 -CCTV,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•251『线路221』 -CCTV,http://go.bkpcp.top/mg/cctv13$LR•IPV4•251『线路222』 -CCTV,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•251『线路223』 -CCTV,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•251『线路224』 -CCTV,https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•251『线路225』 -CCTV,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•251『线路226』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•251『线路227』 -CCTV,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•251『线路228』 -CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226972/index.m3u8$LR•IPV6•251『线路229』 -CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226947/index.m3u8$LR•IPV6•251『线路230』 -CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226981/index.m3u8$LR•IPV6•251『线路231』 -CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226956/index.m3u8$LR•IPV6•251『线路232』 -CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226978/index.m3u8$LR•IPV6•251『线路233』 -CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226950/index.m3u8$LR•IPV6•251『线路234』 -CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226953/index.m3u8$LR•IPV6•251『线路235』 -CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226959/index.m3u8$LR•IPV6•251『线路236』 -CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226969/index.m3u8$LR•IPV6•251『线路237』 -CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226984/index.m3u8$LR•IPV6•251『线路238』 -CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226987/index.m3u8$LR•IPV6•251『线路239』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wsjk$LR•IPV4•251『线路240』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ystq$LR•IPV4•251『线路241』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=dyjc$LR•IPV4•251『线路242』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyjc$LR•IPV4•251『线路243』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hjjc$LR•IPV4•251『线路244』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyzq$LR•IPV4•251『线路245』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyyy$LR•IPV4•251『线路246』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sjdl$LR•IPV4•251『线路247』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=dszn$LR•IPV4•251『线路248』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gefwq$LR•IPV4•251『线路249』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ysjp$LR•IPV4•251『线路250』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nxss$LR•IPV4•251『线路251』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782954000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-9ebdb920742a1c0abe62da12809575a1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•252『线路1』 +CCTV,http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•252『线路2』 +CCTV,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•252『线路3』 +CCTV,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•252『线路4』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1782889200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-cb6bb8d81dd443bea6c3981543aa5af6&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•252『线路5』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•252『线路6』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•252『线路7』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•252『线路8』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•252『线路9』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•252『线路10』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•252『线路11』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•252『线路12』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•252『线路13』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•252『线路14』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•252『线路15』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•252『线路16』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•252『线路17』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•252『线路18』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•252『线路19』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•252『线路20』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•252『线路21』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv1hd.m3u8?auth=testpub$LR•IPV4•252『线路22』 +CCTV,http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•252『线路23』 +CCTV,http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•252『线路24』 +CCTV,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•252『线路25』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv2hd.m3u8?auth=test20251009$LR•IPV4•252『线路26』 +CCTV,http://111.8.224.6:9999/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路27』 +CCTV,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•252『线路28』 +CCTV,http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•252『线路29』 +CCTV,http://111.8.224.6:9999/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路30』 +CCTV,http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•252『线路31』 +CCTV,http://111.8.224.6:9999/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路32』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv5p.m3u8?auth=testpub$LR•IPV4•252『线路33』 +CCTV,http://173.208.212.130:8181/720p/cctv5.m3u8$LR•IPV4•252『线路34』 +CCTV,http://207.56.13.146:81/cdnlive/cctv5.m3u8$LR•IPV4•252『线路35』 +CCTV,http://74.91.26.218:82/live/cctv5p.m3u8$LR•IPV4•252『线路36』 +CCTV,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•252『线路37』 +CCTV,http://111.8.224.6:9999/tsfile/live/1024_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路38』 +CCTV,http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•252『线路39』 +CCTV,http://173.208.212.130:8181/720p/cctv6.m3u8$LR•IPV4•252『线路40』 +CCTV,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•252『线路41』 +CCTV,http://207.56.13.146:81/cdnlive/cctv7.m3u8$LR•IPV4•252『线路42』 +CCTV,http://173.208.212.130:8181/720p/cctv7.m3u8$LR•IPV4•252『线路43』 +CCTV,http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•252『线路44』 +CCTV,http://173.208.212.130:8181/720p/cctv8k.m3u8$LR•IPV4•252『线路45』 +CCTV,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•252『线路46』 +CCTV,http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•252『线路47』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv9hd.m3u8?auth=testpub$LR•IPV4•252『线路48』 +CCTV,http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•252『线路49』 +CCTV,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•252『线路50』 +CCTV,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•252『线路51』 +CCTV,http://222.223.41.27:8888/hls/11/index.m3u8$LR•IPV4•252『线路52』 +CCTV,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•252『线路53』 +CCTV,http://111.8.224.6:9999/tsfile/live/1043_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路54』 +CCTV,http://116.128.243.121:85/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•252『线路55』 +CCTV,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•252『线路56』 +CCTV,http://173.208.212.130:8181/1080p/cctv13.m3u8$LR•IPV4•252『线路57』 +CCTV,http://222.223.41.27:8888/hls/14/index.m3u8$LR•IPV4•252『线路58』 +CCTV,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•252『线路59』 +CCTV,http://111.8.224.6:9999/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路60』 +CCTV,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•252『线路61』 +CCTV,http://173.208.212.130:8181/720p/cctv14.m3u8$LR•IPV4•252『线路62』 +CCTV,http://222.223.41.27:8888/hls/15/index.m3u8$LR•IPV4•252『线路63』 +CCTV,http://111.8.224.6:9999/tsfile/live/1049_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路64』 +CCTV,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•252『线路65』 +CCTV,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•252『线路66』 +CCTV,http://111.8.224.6:9999/tsfile/live/1025_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•252『线路67』 +CCTV,https://piccpndks.v.kcdnvip.com/audio/cctv15_2/index.m3u8$LR•IPV4•252『线路68』 +CCTV,https://epg.pw/stream/25677ac2e8c1f7c3dd6359c43eb5f0f54efb3f5c11f9dda18d01b3e0308ed017.m3u8$LR•IPV4•252『线路69』 +CCTV,https://epg.pw/stream/6d7bf281e3d739806a73f5373acaa6e01988ec9739f5ac1355ce54b47a928472.m3u8$LR•IPV4•252『线路70』 +CCTV,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•252『线路71』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•252『线路72』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•252『线路73』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•252『线路74』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•252『线路75』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•252『线路76』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•252『线路77』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•252『线路78』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•252『线路79』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•252『线路80』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•252『线路81』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•252『线路82』 +CCTV,http://111.61.236.247:9081/hls/58/index.m3u8$LR•IPV4•252『线路83』 +CCTV,http://111.61.236.247:9081/hls/62/index.m3u8$LR•IPV4•252『线路84』 +CCTV,http://xc.mfykeke.top:35455/nptv/dyjc.m3u8$LR•IPV4•252『线路85』 +CCTV,http://xc.mfykeke.top:35455/nptv/fyjc.m3u8$LR•IPV4•252『线路86』 +CCTV,http://xc.mfykeke.top:35455/nptv/hjjc.m3u8$LR•IPV4•252『线路87』 +CCTV,http://www.tszhgjj.cn:7000/rtp/239.253.93.249:6427$LR•IPV4•252『线路88』 +CCTV,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•252『线路89』 +CCTV,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•252『线路90』 +CCTV,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•252『线路91』 +CCTV,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•252『线路92』 +CCTV,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•252『线路93』 +CCTV,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•252『线路94』 +CCTV,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•252『线路95』 +CCTV,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•252『线路96』 +CCTV,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•252『线路97』 +CCTV,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•252『线路98』 +CCTV,http://60.10.139.113:8801/hls/64/index.m3u8$LR•IPV4•252『线路99』 +CCTV,http://60.10.139.113:8801/hls/65/index.m3u8$LR•IPV4•252『线路100』 +CCTV,http://60.10.139.113:8801/hls/66/index.m3u8$LR•IPV4•252『线路101』 +CCTV,http://60.10.139.113:8801/hls/67/index.m3u8$LR•IPV4•252『线路102』 +CCTV,http://60.10.139.113:8801/hls/68/index.m3u8$LR•IPV4•252『线路103』 +CCTV,http://60.10.139.113:8801/hls/69/index.m3u8$LR•IPV4•252『线路104』 +CCTV,http://60.10.139.113:8801/hls/70/index.m3u8$LR•IPV4•252『线路105』 +CCTV,http://60.10.139.113:8801/hls/79/index.m3u8$LR•IPV4•252『线路106』 +CCTV,http://60.10.139.113:8801/hls/80/index.m3u8$LR•IPV4•252『线路107』 +CCTV,http://60.10.139.113:8801/hls/73/index.m3u8$LR•IPV4•252『线路108』 +CCTV,http://207.56.13.146:81/cdnlive/cctv1.m3u8$LR•IPV4•252『线路109』 +CCTV,http://207.56.13.146:81/cdnlive/cctv2.m3u8$LR•IPV4•252『线路110』 +CCTV,http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•252『线路111』 +CCTV,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•252『线路112』 +CCTV,http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•252『线路113』 +CCTV,http://207.56.13.146:81/cdnlive/cctv10.m3u8$LR•IPV4•252『线路114』 +CCTV,http://207.56.13.146:81/cdnlive/cctv11.m3u8$LR•IPV4•252『线路115』 +CCTV,http://207.56.13.146:81/cdnlive/cctv12.m3u8$LR•IPV4•252『线路116』 +CCTV,http://207.56.13.146:81/cdnlive/cctv13.m3u8$LR•IPV4•252『线路117』 +CCTV,http://207.56.13.146:81/cdnlive/cctv14.m3u8$LR•IPV4•252『线路118』 +CCTV,http://207.56.13.146:81/cdnlive/cctv15.m3u8$LR•IPV4•252『线路119』 +CCTV,http://207.56.13.146:81/cdnlive/cctv16.m3u8$LR•IPV4•252『线路120』 +CCTV,http://207.56.13.146:81/cdnlive/cctv17.m3u8$LR•IPV4•252『线路121』 +CCTV,http://207.56.13.146:81/cdnlive/cctv5p.m3u8$LR•IPV4•252『线路122』 +CCTV,http://207.56.13.146:81/cdnlive/gfjs.m3u8$LR•IPV4•252『线路123』 +CCTV,http://207.56.13.146:81/cdnlive/nxss.m3u8$LR•IPV4•252『线路124』 +CCTV,http://207.56.13.146:81/cdnlive/sjdl.m3u8$LR•IPV4•252『线路125』 +CCTV,http://207.56.13.146:81/cdnlive/wsjk.m3u8$LR•IPV4•252『线路126』 +CCTV,http://207.56.13.146:81/cdnlive/ysjp.m3u8$LR•IPV4•252『线路127』 +CCTV,http://207.56.13.146:81/cdnlive/dyjc.m3u8$LR•IPV4•252『线路128』 +CCTV,http://207.56.13.146:81/cdnlive/hjjc.m3u8$LR•IPV4•252『线路129』 +CCTV,http://207.56.13.146:81/cdnlive/fyjc.m3u8$LR•IPV4•252『线路130』 +CCTV,http://207.56.13.146:81/cdnlive/fyzq.m3u8$LR•IPV4•252『线路131』 +CCTV,http://207.56.13.146:81/cdnlive/fyyy.m3u8$LR•IPV4•252『线路132』 +CCTV,http://207.56.13.146:81/cdnlive/ystq.m3u8$LR•IPV4•252『线路133』 +CCTV,http://207.56.13.146:81/cdnlive/gefwq.m3u8$LR•IPV4•252『线路134』 +CCTV,http://192.151.150.154/live/cctv1hd.m3u8$LR•IPV4•252『线路135』 +CCTV,http://192.151.150.154/live/cctv2hd.m3u8$LR•IPV4•252『线路136』 +CCTV,http://192.151.150.154/live/cctv3hd.m3u8$LR•IPV4•252『线路137』 +CCTV,http://192.151.150.154/live/cctv4hd.m3u8$LR•IPV4•252『线路138』 +CCTV,http://192.151.150.154/live/cctv5hd.m3u8$LR•IPV4•252『线路139』 +CCTV,http://192.151.150.154/live/cctv5p.m3u8$LR•IPV4•252『线路140』 +CCTV,http://192.151.150.154/live/cctv6hd.m3u8$LR•IPV4•252『线路141』 +CCTV,http://192.151.150.154/live/cctv7hd.m3u8$LR•IPV4•252『线路142』 +CCTV,http://192.151.150.154/live/cctv8hd.m3u8$LR•IPV4•252『线路143』 +CCTV,http://192.151.150.154/live/cctv9hd.m3u8$LR•IPV4•252『线路144』 +CCTV,http://192.151.150.154/live/cctv10hd.m3u8$LR•IPV4•252『线路145』 +CCTV,http://192.151.150.154/live/cctv11hd.m3u8$LR•IPV4•252『线路146』 +CCTV,http://192.151.150.154/live/cctv12hd.m3u8$LR•IPV4•252『线路147』 +CCTV,http://192.151.150.154/live/cctv13hd.m3u8$LR•IPV4•252『线路148』 +CCTV,http://192.151.150.154/live/cctv14hd.m3u8$LR•IPV4•252『线路149』 +CCTV,http://192.151.150.154/live/cctv15hd.m3u8$LR•IPV4•252『线路150』 +CCTV,http://192.151.150.154/live/cctv16hd.m3u8$LR•IPV4•252『线路151』 +CCTV,http://192.151.150.154/live/cctv17hd.m3u8$LR•IPV4•252『线路152』 +CCTV,http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•252『线路153』 +CCTV,http://192.151.150.154/live/dszn.m3u8$LR•IPV4•252『线路154』 +CCTV,http://192.151.150.154/live/dyjc.m3u8$LR•IPV4•252『线路155』 +CCTV,http://192.151.150.154/live/fyjc.m3u8$LR•IPV4•252『线路156』 +CCTV,http://192.151.150.154/live/fyyy.m3u8$LR•IPV4•252『线路157』 +CCTV,http://192.151.150.154/live/fyzq.m3u8$LR•IPV4•252『线路158』 +CCTV,http://192.151.150.154/live/gefwq.m3u8$LR•IPV4•252『线路159』 +CCTV,http://192.151.150.154/live/gfjs.m3u8$LR•IPV4•252『线路160』 +CCTV,http://192.151.150.154/live/nxss.m3u8$LR•IPV4•252『线路161』 +CCTV,http://192.151.150.154/live/sjdl.m3u8$LR•IPV4•252『线路162』 +CCTV,http://192.151.150.154/live/hjjc.m3u8$LR•IPV4•252『线路163』 +CCTV,http://192.151.150.154/live/ystq.m3u8$LR•IPV4•252『线路164』 +CCTV,http://192.151.150.154/live/ysjp.m3u8$LR•IPV4•252『线路165』 +CCTV,http://192.151.150.154/live/wsjk.m3u8$LR•IPV4•252『线路166』 +CCTV,http://173.208.212.130:8181/1080p/cctv1.m3u8$LR•IPV4•252『线路167』 +CCTV,http://173.208.212.130:8181/1080p/cctv2.m3u8$LR•IPV4•252『线路168』 +CCTV,http://173.208.212.130:8181/1080p/cctv3.m3u8$LR•IPV4•252『线路169』 +CCTV,http://173.208.212.130:8181/1080p/cctv4.m3u8$LR•IPV4•252『线路170』 +CCTV,http://173.208.212.130:8181/1080p/cctv5.m3u8$LR•IPV4•252『线路171』 +CCTV,http://173.208.212.130:8181/1080p/cctv6.m3u8$LR•IPV4•252『线路172』 +CCTV,http://173.208.212.130:8181/1080p/cctv7.m3u8$LR•IPV4•252『线路173』 +CCTV,http://173.208.212.130:8181/1080p/cctv8.m3u8$LR•IPV4•252『线路174』 +CCTV,http://173.208.212.130:8181/1080p/cctv10.m3u8$LR•IPV4•252『线路175』 +CCTV,http://173.208.212.130:8181/1080p/cctv11.m3u8$LR•IPV4•252『线路176』 +CCTV,http://173.208.212.130:8181/1080p/cctv12.m3u8$LR•IPV4•252『线路177』 +CCTV,http://173.208.212.130:8181/1080p/cctv14.m3u8$LR•IPV4•252『线路178』 +CCTV,http://173.208.212.130:8181/1080p/cctv15.m3u8$LR•IPV4•252『线路179』 +CCTV,http://173.208.212.130:8181/1080p/cctv16.m3u8$LR•IPV4•252『线路180』 +CCTV,http://173.208.212.130:8181/1080p/cctv17.m3u8$LR•IPV4•252『线路181』 +CCTV,http://173.208.212.130:8181/1080p/cctv5p.m3u8$LR•IPV4•252『线路182』 +CCTV,http://173.208.212.130:8181/720p/cctv1.m3u8$LR•IPV4•252『线路183』 +CCTV,http://173.208.212.130:8181/720p/cctv2.m3u8$LR•IPV4•252『线路184』 +CCTV,http://173.208.212.130:8181/720p/cctv3.m3u8$LR•IPV4•252『线路185』 +CCTV,http://173.208.212.130:8181/720p/cctv4.m3u8$LR•IPV4•252『线路186』 +CCTV,http://173.208.212.130:8181/720p/cctv10.m3u8$LR•IPV4•252『线路187』 +CCTV,http://173.208.212.130:8181/720p/cctv11.m3u8$LR•IPV4•252『线路188』 +CCTV,http://173.208.212.130:8181/720p/cctv12.m3u8$LR•IPV4•252『线路189』 +CCTV,http://173.208.212.130:8181/720p/cctv13.m3u8$LR•IPV4•252『线路190』 +CCTV,http://173.208.212.130:8181/720p/cctv15.m3u8$LR•IPV4•252『线路191』 +CCTV,http://173.208.212.130:8181/720p/cctv16.m3u8$LR•IPV4•252『线路192』 +CCTV,http://173.208.212.130:8181/720p/cctv17.m3u8$LR•IPV4•252『线路193』 +CCTV,http://173.208.212.130:8181/720p/cctv5p.m3u8$LR•IPV4•252『线路194』 +CCTV,http://173.208.212.130:8181/720p/dyjc.m3u8$LR•IPV4•252『线路195』 +CCTV,http://173.208.212.130:8181/720p/fyjc.m3u8$LR•IPV4•252『线路196』 +CCTV,http://173.208.212.130:8181/720p/hjjc.m3u8$LR•IPV4•252『线路197』 +CCTV,http://173.208.212.130:8181/720p/gfjs.m3u8$LR•IPV4•252『线路198』 +CCTV,http://173.208.212.130:8181/720p/nxss.m3u8$LR•IPV4•252『线路199』 +CCTV,http://173.208.212.130:8181/720p/sjdl.m3u8$LR•IPV4•252『线路200』 +CCTV,http://173.208.212.130:8181/720p/wsjk.m3u8$LR•IPV4•252『线路201』 +CCTV,http://173.208.212.130:8181/720p/ysjp.m3u8$LR•IPV4•252『线路202』 +CCTV,http://173.208.212.130:8181/720p/fyyy.m3u8$LR•IPV4•252『线路203』 +CCTV,http://173.208.212.130:8181/720p/ystq.m3u8$LR•IPV4•252『线路204』 +CCTV,http://173.208.212.130:8181/720p/fyzq.m3u8$LR•IPV4•252『线路205』 +CCTV,http://173.208.212.130:8181/720p/gefwq.m3u8$LR•IPV4•252『线路206』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv1.m3u8$LR•IPV4•252『线路207』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv2.m3u8$LR•IPV4•252『线路208』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv3.m3u8$LR•IPV4•252『线路209』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv4.m3u8$LR•IPV4•252『线路210』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv5.m3u8$LR•IPV4•252『线路211』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•252『线路212』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv7.m3u8$LR•IPV4•252『线路213』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•252『线路214』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv10.m3u8$LR•IPV4•252『线路215』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv11.m3u8$LR•IPV4•252『线路216』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv12.m3u8$LR•IPV4•252『线路217』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv13.m3u8$LR•IPV4•252『线路218』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv14.m3u8$LR•IPV4•252『线路219』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•252『线路220』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv16.m3u8$LR•IPV4•252『线路221』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv17.m3u8$LR•IPV4•252『线路222』 +CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226972/index.m3u8$LR•IPV6•252『线路223』 +CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226947/index.m3u8$LR•IPV6•252『线路224』 +CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226981/index.m3u8$LR•IPV6•252『线路225』 +CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226956/index.m3u8$LR•IPV6•252『线路226』 +CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226978/index.m3u8$LR•IPV6•252『线路227』 +CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226950/index.m3u8$LR•IPV6•252『线路228』 +CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226953/index.m3u8$LR•IPV6•252『线路229』 +CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226959/index.m3u8$LR•IPV6•252『线路230』 +CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226969/index.m3u8$LR•IPV6•252『线路231』 +CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226984/index.m3u8$LR•IPV6•252『线路232』 +CCTV,http://[2409:8087:7001:20:2::3]:80/dbiptv.sn.chinamobile.com/PLTV/88888893/224/3221226987/index.m3u8$LR•IPV6•252『线路233』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•252『线路234』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wsjk$LR•IPV4•252『线路235』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ystq$LR•IPV4•252『线路236』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=dyjc$LR•IPV4•252『线路237』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyjc$LR•IPV4•252『线路238』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hjjc$LR•IPV4•252『线路239』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyzq$LR•IPV4•252『线路240』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=fyyy$LR•IPV4•252『线路241』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sjdl$LR•IPV4•252『线路242』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=dszn$LR•IPV4•252『线路243』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gefwq$LR•IPV4•252『线路244』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=ysjp$LR•IPV4•252『线路245』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=nxss$LR•IPV4•252『线路246』 +CCTV,http://go.bkpcp.top/mg/cctv13$LR•IPV4•252『线路247』 +CCTV,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•252『线路248』 +CCTV,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•252『线路249』 +CCTV,https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•252『线路250』 +CCTV,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•252『线路251』 +CCTV,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•252『线路252』 明星,#genre# -周星星,http://live.metshop.top/huya/11336587?cdn=alicdn$LR•IPV4•3『线路1』 -周星星,http://tv.zimtv.cn/tv/player/api/huya.php?id=11336587$LR•IPV4•3『线路2』 -周星星,http://222.186.39.21:35466/huya/11336587$LR•IPV4•3『线路3』 -周星驰,https://live.ottiptv.cc/huya/11336587$LR•IPV4•2『线路1』 -周星驰,http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•2『线路2』 -李连杰,https://live.ottiptv.cc/huya/11342390$LR•IPV4•4『线路1』 -李连杰,http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•4『线路2』 +周星星,http://tv.zimtv.cn/tv/player/api/huya.php?id=11336587$LR•IPV4•2『线路1』 +周星星,http://222.186.39.21:35466/huya/11336587$LR•IPV4•2『线路2』 +周星驰,http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4•2『线路1』 +周星驰,https://live.ottiptv.cc/huya/11336587$LR•IPV4•2『线路2』 +李连杰,http://cdn.jdshipin.com:8880/huya.php?id=11342390$LR•IPV4•4『线路1』 +李连杰,https://live.ottiptv.cc/huya/11342390$LR•IPV4•4『线路2』 李连杰,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342390$LR•IPV4•4『线路3』 李连杰,http://222.186.39.21:35466/huya/11342390$LR•IPV4•4『线路4』 洪金宝,https://live.ottiptv.cc/huya/11279251$LR•IPV4•3『线路1』 洪金宝,http://tv.zimtv.cn/tv/player/api/huya.php?id=11279251$LR•IPV4•3『线路2』 洪金宝,http://222.186.39.21:35466/huya/11279251$LR•IPV4•3『线路3』 -梁家辉,https://live.ottiptv.cc/huya/11342429$LR•IPV4•4『线路1』 -梁家辉,http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•4『线路2』 +梁家辉,http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4•4『线路1』 +梁家辉,https://live.ottiptv.cc/huya/11342429$LR•IPV4•4『线路2』 梁家辉,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342429$LR•IPV4•4『线路3』 梁家辉,http://222.186.39.21:35466/huya/11342429$LR•IPV4•4『线路4』 -刘德华,https://live.ottiptv.cc/huya/11342424$LR•IPV4•7『线路1』 -刘德华,https://k0ub7yffy10yfz.djvod.ndcimgs.com/upic/2023/07/25/08/BMjAyMzA3MjUwODU3MzRfMzYxMjUyNDA3MV8xMDg4MTUzNTczMzFfMF8z_b_Bf67605afd92859a39e607f504f43c9f7.mp4$LR•IPV4•7『线路2』 -刘德华,http://epg.112114.xyz/douyu/2516864$LR•IPV4•7『线路3』 -刘德华,http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•7『线路4』 -刘德华,http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•7『线路5』 -刘德华,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342424$LR•IPV4•7『线路6』 -刘德华,http://222.186.39.21:35466/huya/11342424$LR•IPV4•7『线路7』 +刘德华,http://cdn.jdshipin.com:8880/huya.php?id=11342424$LR•IPV4•7『线路1』 +刘德华,http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•7『线路2』 +刘德华,https://live.ottiptv.cc/huya/11342424$LR•IPV4•7『线路3』 +刘德华,https://k0ub7yffy10yfz.djvod.ndcimgs.com/upic/2023/07/25/08/BMjAyMzA3MjUwODU3MzRfMzYxMjUyNDA3MV8xMDg4MTUzNTczMzFfMF8z_b_Bf67605afd92859a39e607f504f43c9f7.mp4$LR•IPV4•7『线路4』 +刘德华,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342424$LR•IPV4•7『线路5』 +刘德华,http://222.186.39.21:35466/huya/11342424$LR•IPV4•7『线路6』 +刘德华,http://epg.112114.xyz/douyu/2516864$LR•IPV4•7『线路7』 星爷,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342412$LR•IPV4•2『线路1』 星爷,http://222.186.39.21:35466/huya/11342412$LR•IPV4•2『线路2』 -成龙,https://live.ottiptv.cc/huya/11342386$LR•IPV4•5『线路1』 -成龙,https://live.ottiptv.cc/huya/11352946$LR•IPV4•5『线路2』 -成龙,http://cdn.jdshipin.com:8880/huya.php?id=11342386$LR•IPV4•5『线路3』 -成龙,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342386$LR•IPV4•5『线路4』 -成龙,http://222.186.39.21:35466/huya/11342386$LR•IPV4•5『线路5』 -王晶,https://live.ottiptv.cc/huya/11602058$LR•IPV4•4『线路1』 -王晶,http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•4『线路2』 +成龙,https://live.ottiptv.cc/huya/11342386$LR•IPV4•4『线路1』 +成龙,https://live.ottiptv.cc/huya/11352946$LR•IPV4•4『线路2』 +成龙,http://tv.zimtv.cn/tv/player/api/huya.php?id=11342386$LR•IPV4•4『线路3』 +成龙,http://222.186.39.21:35466/huya/11342386$LR•IPV4•4『线路4』 +王晶,http://cdn.jdshipin.com:8880/huya.php?id=11602058$LR•IPV4•4『线路1』 +王晶,https://live.ottiptv.cc/huya/11602058$LR•IPV4•4『线路2』 王晶,http://tv.zimtv.cn/tv/player/api/huya.php?id=11602058$LR•IPV4•4『线路3』 王晶,http://222.186.39.21:35466/huya/11602058$LR•IPV4•4『线路4』 -黄渤,https://live.ottiptv.cc/huya/11352876$LR•IPV4•4『线路1』 -黄渤,http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•4『线路2』 +黄渤,http://cdn.jdshipin.com:8880/huya.php?id=11352876$LR•IPV4•4『线路1』 +黄渤,https://live.ottiptv.cc/huya/11352876$LR•IPV4•4『线路2』 黄渤,http://tv.zimtv.cn/tv/player/api/huya.php?id=11352876$LR•IPV4•4『线路3』 黄渤,http://222.186.39.21:35466/huya/11352876$LR•IPV4•4『线路4』 林正英,http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•4『线路1』 -林正英,https://live.ottiptv.cc/huya/11342421$LR•IPV4•4『线路2』 -林正英,http://epg.112114.xyz/douyu/218859$LR•IPV4•4『线路3』 -林正英,http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•4『线路4』 -甄子丹,https://live.ottiptv.cc/huya/11352935$LR•IPV4•2『线路1』 -甄子丹,http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•2『线路2』 +林正英,http://cdn.jdshipin.com:8880/huya.php?id=11342421$LR•IPV4•4『线路2』 +林正英,https://live.ottiptv.cc/huya/11342421$LR•IPV4•4『线路3』 +林正英,http://epg.112114.xyz/douyu/218859$LR•IPV4•4『线路4』 +甄子丹,http://cdn.jdshipin.com:8880/huya.php?id=11352935$LR•IPV4•2『线路1』 +甄子丹,https://live.ottiptv.cc/huya/11352935$LR•IPV4•2『线路2』 主题片,#genre# 灾难片,https://live.ottiptv.cc/huya/23728647$LR•IPV4 -谍战片,https://live.ottiptv.cc/huya/26355810$LR•IPV4 -战争片,https://live.ottiptv.cc/huya/21059618$LR•IPV4•2『线路1』 -战争片,http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•2『线路2』 +谍战片,http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4•2『线路1』 +谍战片,https://live.ottiptv.cc/huya/26355810$LR•IPV4•2『线路2』 +战争片,http://live.metshop.top/huya/21059574?cdn=alicdn$LR•IPV4•2『线路1』 +战争片,https://live.ottiptv.cc/huya/21059618$LR•IPV4•2『线路2』 国际台,#genre# VOA美国之音,https://voa-ingest.akamaized.net/hls/live/2033878/tvmc08/playlist.m3u8$LR•IPV4 diff --git a/tvbox/lib/sbjh.m3u b/tvbox/lib/sbjh.m3u index e71ffa64..6dd5a581 100755 --- a/tvbox/lib/sbjh.m3u +++ b/tvbox/lib/sbjh.m3u @@ -1,326 +1,318 @@ #EXTM3U x-tvg-url="" -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yingke.jpg" group-title="映客",小娘们%3F%3F -http://live-pull-zego.ikstatic.cn/inkemain/1782859933186186.flv?stream_id=1782859933186186&stream_type=zego&codecInfo=8192&ikFastRate=1.1&ikMaxBuf=3600&ikMinBuf=2900&ikHost=ws&ikSlowRate=0.9&wsSecret=213c7db9e4074eb6c26503c93c591855&wsABStime=6a459a1d -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",国产乱伦强奸@ -http://77bo.xn--fhqv92p.com/live/cx_31.flv?wsSecret=d3ffbeec015720c625a6aa9f7e32ab7b&wsTime=1782833842 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",极品尤物! -rtmp://hongyangz.xn--fiq64bk2i52brzu7srde4a640a0sk.com/live/21618_1782862705 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",支付宝风控解除 -https://vod.dengzhidao.cn/video/fengkong.mp4 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",再睡五分钟 -http://77bo.xn--4lw519c.com/live/cx_16526.flv?wsSecret=87b81b13fc1a34bfeb5cf2e9c5a8441e&wsTime=1782864639 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",狂草精神小妹.@ -http://77bo.xn--uw0as83a.com/live/cx_120.flv?wsSecret=e06d1fcf4d8cabe75a23dd2419abe755&wsTime=1782518086 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",人兽大战@ -http://77bo.xn--fhqv92p.com/live/cx_24.flv?wsSecret=e206d6e7184d3e74b84751de6d94c493&wsTime=1782832499 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",寂寞小久 -http://xcrmumeetla.abrillantlee.top/live/cx_360482.flv?wsSecret=d1ab333c64d9c22bcc48d9bd8255f3cc&wsTime=1782872085 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",幼又想你 -http://xzqppsukemrla.jinkangyl.com/live/cx_386677.flv?wsSecret=5f8510ca7e3b1c7b5d10ae219d6e20e9&wsTime=1782875032 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",少女乱伦@ -http://77bo.xn--t8w422e.com/live/cx_15966.flv?wsSecret=5599c15e265be4e8a3402f58d72a28fb&wsTime=1782864828 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",真实探花嫖娼@ -http://77bo.xn--t8w422e.com/live/cx_15710.flv?wsSecret=9375359f071d5224e77a421aacd3d768&wsTime=1782518240 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",轩宝 -https://zjkkdkdkd06.oss-ap-northeast-2.aliyuncs.com/zxcvb/1.flv -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",在等星星吗 -http://xzqppsukemrla.jinkangyl.com/live/cx_386583.flv?wsSecret=3f6930c16bd7b95accc96ea129178eef&wsTime=1782855228 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",糖心%3F%3F -http://lawoazletjsuet.sqfkkj.top/live/cx_386206.flv?wsSecret=5799a6ff99e32c4c0d547062e385fe04&wsTime=1782870856 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",水奈奈 -http://guetnzweozela.sqfkkj.top/live/cx_386128.flv?wsSecret=cc0140c99d9b7d7907b71cd2bf94f339&wsTime=1782873043 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/yingke.jpg" group-title="映客",大浪交友厅 +http://extlive-pull-ws.inke.cn/live/1782891126140274.flv?auth_version=1&codecInfo=8192&dpSrc=-1&from=hallfe&ikHost=ws&ikLiveType=multiplayer&ikLog=1&md5sum=8692&pushHost=ext.zego.link.inke.cn×tamp=1782897036 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",%20海棠依旧 +http://la193sahrigxt.sqfkkj.top/live/cx_382709.flv?wsSecret=6761fe72549867490e34341249f0ea40&wsTime=1782894672 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",妈妈被爆流 +rtmp://hongyangz.xn--fiq64bk2i52brzu7srde4a640a0sk.com/live/21578_1782892298 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",亲亲狐狸 +http://xcrmumeetla.abrillantlee.top/live/cx_385616.flv?wsSecret=91401021694cb432360d36fced5963a8&wsTime=1782898168 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",美丽的蝴蝶 +http://likeahjadksetla.abrillantlee.top/live/cx_370859.flv?wsSecret=994a524787048068b245a5c8f57a00a2&wsTime=1782891426 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",花花姐姐 +http://77bo.xn--vuqy52q.com/live/cx_16165.flv?wsSecret=46f37feaea5cee161385118af21d3535&wsTime=1782895721 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",满满金 +http://la193sahrigxt.sqfkkj.top/live/cx_381035.flv?wsSecret=fc23eb83dc4c32ebed045674af027dee&wsTime=1782881259 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Baby%252520 +http://xcrmumeetla.abrillantlee.top/live/cx_386302.flv?wsSecret=db4e885d5d4d8cc38af7856472eeb2ad&wsTime=1782895621 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",旺旺小仙 +http://lawoazletjsuet.sqfkkj.top/live/cx_375169.flv?wsSecret=6b78ba6d7ae045dd75f21e5cdfefe55e&wsTime=1782891742 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",豪女人 +http://myijapiwuewla.cssymt.com/live/cx_385720.flv?wsSecret=a2aba41d04b7a0fa50aafd2442746c0e&wsTime=1782897051 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",依依实力带飞 http://myijapiwuewla.cssymt.com/live/cx_364954.flv?wsSecret=d9f344c9ca1312938aec7f8f0a329e8d&wsTime=1782874726 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",百变小迪 -http://77bo.xn--vuqy52q.com/live/cx_5868.flv?wsSecret=79791e4114d5a2fccfbfe9784c7a495d&wsTime=1782864159 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",书音 -http://guetnzweozela.sqfkkj.top/live/cx_386158.flv?wsSecret=3023ce6712909970480ae04dd3f749e3&wsTime=1782875604 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",糯糯好闪 -http://myijapiwuewla.cssymt.com/live/cx_386138.flv?wsSecret=49bebb8955c6e95a67457014d4e8b28c&wsTime=1782866557 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",kki -http://xcrmumeetla.abrillantlee.top/live/cx_385777.flv?wsSecret=23ff7d78161a103cf3de487529e9db4f&wsTime=1782875498 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",晗晗 -http://77bo.xn--thqp73n.com/live/cx_12040.flv?wsSecret=e1bf9ee980e1cf376df4884525863803&wsTime=1782864974 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",乖乖糯 -http://xzqppsukemrla.jinkangyl.com/live/cx_386495.flv?wsSecret=b41cb07f831070a24e53a0ae3f44cc9c&wsTime=1782872002 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",恬甜不甜 -http://guetnzweozela.sqfkkj.top/live/cx_385210.flv?wsSecret=0f93119d1bc22e67380a19928e07b273&wsTime=1782865372 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",精彩剧情@ -http://77bo.xn--t8w422e.com/live/cx_16437.flv?wsSecret=794bc574ebf798a6426c6f83a338fa71&wsTime=1782864821 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",朵莉亚 -http://la193sahrigxt.sqfkkj.top/live/cx_386032.flv?wsSecret=0de36600d202793eeafac7e8a7db48fb&wsTime=1782867480 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Ann。 -http://likeahjadksetla.abrillantlee.top/live/cx_374820.flv?wsSecret=2ee3477a4e7338f1fb8a55d2fc4f9d33&wsTime=1782868759 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",草莓微胖 -http://xzqppsukemrla.jinkangyl.com/live/cx_386697.flv?wsSecret=c526f0d97b10ba23ed33d0cdd283d9ec&wsTime=1782866477 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",甜辣粥 -http://xrgszsbrila.yueyongli.top/live/cx_385413.flv?wsSecret=3f2c24bb527ab389e8e4692c38c2e73b&wsTime=1782867573 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",媚儿6 -http://x3spmlacr.yueyongli.top/live/cx_386176.flv?wsSecret=30eb7175063f254008b07c5e226d0582&wsTime=1782871035 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",安静 -http://77bo.xn--ypzw80d.com/live/cx_13475.flv?wsSecret=adb8a0ed8154c5e6650d550e76cca9ed&wsTime=1782864476 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",钢管舞小猫 -http://myijapiwuewla.cssymt.com/live/cx_363138.flv?wsSecret=902e765b91c09372106855f42eaa971a&wsTime=1782866644 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",玥玥吖 -http://77bo.xn--vuqy52q.com/live/cx_11275.flv?wsSecret=7b8acc8e36f803c9cfa08ee3f5e073bd&wsTime=1782863854 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",我是你的猫 -http://myijapiwuewla.cssymt.com/live/cx_385556.flv?wsSecret=35d87cbdec4a9de513ecf05d70da4f1b&wsTime=1782856661 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",你灿巨能喷 -http://x3spmlacr.yueyongli.top/live/cx_385868.flv?wsSecret=2e2f2eaa932ad67fec014cbb9a88c5d2&wsTime=1782869805 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",檬茶味 -http://guetnzweozela.sqfkkj.top/live/cx_386220.flv?wsSecret=93573bd041c78e8e8d095780f067288e&wsTime=1782873996 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",岚岚来了 -http://la193sahrigxt.sqfkkj.top/live/cx_380815.flv?wsSecret=d40ca511c7621015b7b5c1afe8806153&wsTime=1782868201 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",南南好运 -http://xlajunasjwqoet.cssymt.com/live/cx_386279.flv?wsSecret=9ade3a2b2bdfa268066efc7a10991fb2&wsTime=1782862389 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小爽、 -http://x3spmlacr.yueyongli.top/live/cx_374539.flv?wsSecret=a677d93854e14038c57dddb168b56121&wsTime=1782863650 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",桃桃儿 -http://lawoazletjsuet.sqfkkj.top/live/cx_385500.flv?wsSecret=643196a4767e1ea64ce104daf217a122&wsTime=1782865833 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",泡泡糖o -http://myijapiwuewla.cssymt.com/live/cx_386163.flv?wsSecret=3b5ee16fc6137384d46668c04558c83b&wsTime=1782868728 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",日本av放映室 -http://x3spmlacr.yueyongli.top/live/cx_373479.flv?wsSecret=9b6966c079e1dc3a503a9f6319e304f3&wsTime=1782836738 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",不爱穿内裤 -http://likeahjadksetla.abrillantlee.top/live/cx_376568.flv?wsSecret=5c76cbeaeb3e8b04b06f6645691fe6be&wsTime=1782862972 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小狐狸妹子 -http://77bo.xn--t8w422e.com/live/cx_14570.flv?wsSecret=8daaf776a0f420e5985fe62b2aa3a0aa&wsTime=1782864027 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",人鱼姬 -http://x3spmlacr.yueyongli.top/live/cx_386671.flv?wsSecret=4e0b700d119a145c00a1692d2a6b839e&wsTime=1782870170 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小耳朵吖 -http://77bo.xn--thqp73n.com/live/cx_11374.flv?wsSecret=18c1fa4661ffced262675b599402edd7&wsTime=1782862788 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",淼淼ck -http://77bo.xn--thqp73n.com/live/cx_14032.flv?wsSecret=4bbc77f70cd989a0ad19b6694fe9b2aa&wsTime=1782875716 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",福崽崽 -http://xcrmumeetla.abrillantlee.top/live/cx_365051.flv?wsSecret=8614c05d47e2dfce6394f5e377cf9d46&wsTime=1782865834 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",茂密的小森林 -http://xcrmumeetla.abrillantlee.top/live/cx_380333.flv?wsSecret=7c90e503853793fb9af17f6b75d80644&wsTime=1782874155 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",溜溜子 -http://la193sahrigxt.sqfkkj.top/live/cx_386319.flv?wsSecret=170a72a988535e0ecfda11d5ae69ebac&wsTime=1782865179 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",千惠 -http://77bo.xn--kcrp02i.com/live/cx_16156.flv?wsSecret=9dab18efc33b8e8aa9ca5c0ece016421&wsTime=1782863155 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",鑫鑫 -http://likeahjadksetla.abrillantlee.top/live/cx_359358.flv?wsSecret=4d0cba4a11f2a8fde59a29b7f3806261&wsTime=1782870708 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",十一呀 -http://xzqppsukemrla.jinkangyl.com/live/cx_372628.flv?wsSecret=4212810fae13e400d734a3662c8ac5ff&wsTime=1782867486 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",要七七 -http://xlajunasjwqoet.cssymt.com/live/cx_375628.flv?wsSecret=4085be66ec10e480e052e158314ab4c8&wsTime=1782864549 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",耶斯 +https://zjkkdkdkd06.oss-ap-northeast-2.aliyuncs.com/zxcvb/1.flv +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",巧乐兹 +http://x3spmlacr.yueyongli.top/live/cx_386037.flv?wsSecret=1002123f8c0b25b22d85d83c7496e87b&wsTime=1782890471 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",雅楠妹妹 +http://lawoazletjsuet.sqfkkj.top/live/cx_385811.flv?wsSecret=38e755f02a1eb9e1b4e1c7abef95c50b&wsTime=1782897159 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大胸美眉 +http://xcrmumeetla.abrillantlee.top/live/cx_386645.flv?wsSecret=63801a555fa6474585db1708ef149ea5&wsTime=1782881905 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",瑞蕊蕊 +http://77bo.xn--4lw519c.com/live/cx_16310.flv?wsSecret=222e27576e3200a1570f4d15951061a2&wsTime=1782893645 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",肉肉i +http://lawoazletjsuet.sqfkkj.top/live/cx_385757.flv?wsSecret=e1277217c5193e4506794bb7bd8cb184&wsTime=1782897764 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小小妲己呼呼啦 +http://likeahjadksetla.abrillantlee.top/live/cx_384266.flv?wsSecret=685a8eaa1009f8e49a1059a9ffdb9434&wsTime=1782889851 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",苦牙妹 +http://xcrmumeetla.abrillantlee.top/live/cx_386097.flv?wsSecret=0ff6c627009e902b0439ef84b22e5fc3&wsTime=1782896611 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶嘟嘟 +http://77bo.xn--vuqy52q.com/live/cx_12613.flv?wsSecret=eb77720dcedf3052752ab29d0a255c3d&wsTime=1782893256 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",%20小丽 +http://likeahjadksetla.abrillantlee.top/live/cx_386098.flv?wsSecret=1a4771ed6d096d0c408870a7fc3102d7&wsTime=1782896633 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",星月月 +http://lawoazletjsuet.sqfkkj.top/live/cx_385722.flv?wsSecret=d977a01f89b541cb72aea86af0bb7f5e&wsTime=1782888909 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",嘉宁 +http://la193sahrigxt.sqfkkj.top/live/cx_385600.flv?wsSecret=82dc16b40ffb0742bf19ad8807c3a4d6&wsTime=1782889204 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",晶晶、 http://lawoazletjsuet.sqfkkj.top/live/cx_352189.flv?wsSecret=36572b3fefc3b65598b65a5d36af01dc&wsTime=1782872514 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小酥妻 -http://77bo.xn--t8w422e.com/live/cx_14595.flv?wsSecret=f4bff07b2844666d0bbdaebb98d37c13&wsTime=1782863964 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",未成年@ -http://77bo.xn--fhqv92p.com/live/cx_28.flv?wsSecret=1d9ccbc2b29d1db87dd42eae2378c059&wsTime=1782832434 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",诗诗吖 -http://77bo.xn--kcrp02i.com/live/cx_7584.flv?wsSecret=b1e8c47bd9db49d2c688cf7ea9e54fd5&wsTime=1782857381 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",温玥玥 -http://xcrmumeetla.abrillantlee.top/live/cx_385701.flv?wsSecret=6f1a086798cdc7b4f9a63b7f112a8dcf&wsTime=1782873274 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小幸运321 +http://77bo.xn--thqp73n.com/live/cx_15519.flv?wsSecret=3d08214c79d807c91ec9e23de5fb9cb5&wsTime=1782892496 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小薇薇 +http://x3spmlacr.yueyongli.top/live/cx_386718.flv?wsSecret=81d5666952e5c1d3eefdcfb7bcd8b3cb&wsTime=1782896448 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",国产三级片@ +http://77bo.xn--fhqv92p.com/live/cx_16585.flv?wsSecret=697f87ad0a12d71e9d3a9f1433c27525&wsTime=1782834600 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",萌萌的宝宝 +http://xcrmumeetla.abrillantlee.top/live/cx_386393.flv?wsSecret=0a033c09c1db052fe9d22887efa0e5a0&wsTime=1782897638 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小黎黎 +http://likeahjadksetla.abrillantlee.top/live/cx_385815.flv?wsSecret=88c752a30deeb20403bf6e2013e912e6&wsTime=1782895906 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",露呀 +http://xrgszsbrila.yueyongli.top/live/cx_386033.flv?wsSecret=950187a4e0bd91ca1abb46d6ba174ceb&wsTime=1782890312 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",我超甜 +http://xrgszsbrila.yueyongli.top/live/cx_351087.flv?wsSecret=8e6e6915776d276bc7a7106de4b05d67&wsTime=1782897553 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",浪花朵朵 +http://77bo.xn--uw0as83a.com/live/cx_16309.flv?wsSecret=ed46481f29f898b2a549431c1a00baf5&wsTime=1782893409 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小怪兽o +http://77bo.xn--4lw519c.com/live/cx_16620.flv?wsSecret=46d480a6eeab3c13885ff0d51c24bda6&wsTime=1782892821 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",茂密的小森林 +http://xcrmumeetla.abrillantlee.top/live/cx_380333.flv?wsSecret=cfd9e512a4cc9d0f4e25810f1c569027&wsTime=1782894661 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",真实探花嫖娼@ +http://77bo.xn--t8w422e.com/live/cx_15710.flv?wsSecret=9375359f071d5224e77a421aacd3d768&wsTime=1782518240 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小水o +http://la193sahrigxt.sqfkkj.top/live/cx_385569.flv?wsSecret=dd890849e250dc86113c389efe5aa530&wsTime=1782885640 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大白兔奶糖 +http://xcrmumeetla.abrillantlee.top/live/cx_384721.flv?wsSecret=8b3708f7d9b6d50ef1569e1d2bead180&wsTime=1782894086 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",萌萌柠 +http://xzqppsukemrla.jinkangyl.com/live/cx_384055.flv?wsSecret=3dc4bbc2466835d3bd1deb10fa15c16a&wsTime=1782891237 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",深情女人 +http://xcrmumeetla.abrillantlee.top/live/cx_386094.flv?wsSecret=88f11c316c223abb6488596557eb5e2b&wsTime=1782896661 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",辣辣椒 +http://la193sahrigxt.sqfkkj.top/live/cx_375612.flv?wsSecret=c6a027e4c6b328c32b6f48667b16a293&wsTime=1782889134 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",眯崽 +http://la193sahrigxt.sqfkkj.top/live/cx_383425.flv?wsSecret=0b7fe85d5b8d1426d3edf2366c912026&wsTime=1782879514 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",恩恩呢 +http://xrgszsbrila.yueyongli.top/live/cx_385370.flv?wsSecret=49236ce7c977bb8ffe4d48ae0b6038dd&wsTime=1782890142 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Kiki%20甜心贝 +http://lawoazletjsuet.sqfkkj.top/live/cx_385075.flv?wsSecret=0baa8e0b54f4ac2201f6778ced4c7a34&wsTime=1782897322 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",露露秋 +http://myijapiwuewla.cssymt.com/live/cx_386224.flv?wsSecret=19c9bcf0abc9854425d006d8e677a536&wsTime=1782883422 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Yomi%252520 +http://xzqppsukemrla.jinkangyl.com/live/cx_386432.flv?wsSecret=bb8ba465b1bac564d9a465b3d87c4502&wsTime=1782880054 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",甜心格格 +http://lawoazletjsuet.sqfkkj.top/live/cx_385555.flv?wsSecret=ee87c587e88e815ecbfd82b83cbeb940&wsTime=1782897950 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",你的小可爱 +http://77bo.xn--thqp73n.com/live/cx_6279.flv?wsSecret=9388e4de1461d7a8ea6f58372e305068&wsTime=1782892232 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",岛国一本道东京热 http://lawoazletjsuet.sqfkkj.top/live/cx_385550.flv?wsSecret=c96515a02ca03b6a270d540449f8e963&wsTime=1782868743 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",奶油布丁 -http://77bo.xn--kcrp02i.com/live/cx_16367.flv?wsSecret=08539b0976853733b7e4b73fe9494a6a&wsTime=1782863208 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",职场身体上位@ -http://77bo.xn--fhqv92p.com/live/cx_15604.flv?wsSecret=2300b65ea1641772ae9df01a3424eb4a&wsTime=1782856454 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",敏敏爱吃糖 -http://77bo.xn--4lw519c.com/live/cx_16688.flv?wsSecret=6df2030dbd40ed59eba941e579c14c8d&wsTime=1782874659 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",热舞瑜瑜 -http://guetnzweozela.sqfkkj.top/live/cx_385717.flv?wsSecret=88e276685378e63de9284cd2f80c36df&wsTime=1782867455 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小羽渔 -http://xrgszsbrila.yueyongli.top/live/cx_386159.flv?wsSecret=db2e4ae880087bc8458f0a66f9af51db&wsTime=1782865447 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",夕夕CC -http://likeahjadksetla.abrillantlee.top/live/cx_381248.flv?wsSecret=8d8caf122d6b3d30e240a3b15623ff5b&wsTime=1782862934 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",心语 -http://77bo.xn--4lw519c.com/live/cx_16701.flv?wsSecret=000d112b96b15af67be47c87c04a9ca3&wsTime=1782863501 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",淡颜 -http://xlajunasjwqoet.cssymt.com/live/cx_385214.flv?wsSecret=8cda8e77a8efd3b241b02615d78ef400&wsTime=1782864697 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",苏17 -http://77bo.xn--fhqv92p.com/live/cx_14703.flv?wsSecret=c242c5c64c30ab63dcdc47c92d69b532&wsTime=1782864232 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",寂寞妹妹 -http://77bo.xn--uw0as83a.com/live/cx_600.flv?wsSecret=227ae739da917fcb62d3c0016cec06aa&wsTime=1782863948 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",你的九妹 -http://lawoazletjsuet.sqfkkj.top/live/cx_386426.flv?wsSecret=99294118ded713af3436426a749ff7ba&wsTime=1782867098 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",桃 -http://77bo.xn--thqp73n.com/live/cx_2474.flv?wsSecret=c4771457110a0196223582569ea985a2&wsTime=1782864167 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",景景a -http://likeahjadksetla.abrillantlee.top/live/cx_370569.flv?wsSecret=225ceb0c18929fa4defb89ac957bc5a6&wsTime=1782867920 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",coco~ -http://likeahjadksetla.abrillantlee.top/live/cx_366195.flv?wsSecret=a7e8dc23cc2d7a35b8e2e7aaf661e320&wsTime=1782874072 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",舞蹈九九 -http://myijapiwuewla.cssymt.com/live/cx_386266.flv?wsSecret=fbe3f8ac945b4b100515006ac0a66d85&wsTime=1782868389 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",大大奈子G -http://la193sahrigxt.sqfkkj.top/live/cx_383809.flv?wsSecret=c533bc71bc0afe350703b898d0ec1f0b&wsTime=1782873761 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",胖灵 -http://xrgszsbrila.yueyongli.top/live/cx_382269.flv?wsSecret=541054184231736d48998bb9a19bc84e&wsTime=1782867149 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",遇见%26 -http://guetnzweozela.sqfkkj.top/live/cx_386267.flv?wsSecret=21c4a7a2f248c920a4f2997036714e6c&wsTime=1782868028 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",蜜儿宝宝 -http://77bo.xn--fhqv92p.com/live/cx_13819.flv?wsSecret=2ae1d7331637e30c96828dc7f4f6af9f&wsTime=1782863912 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",幸运果儿 -http://77bo.xn--ypzw80d.com/live/cx_118.flv?wsSecret=f3671756aae12dbf8bd0fe607dee869f&wsTime=1782864056 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",蓉宝 +http://xlajunasjwqoet.cssymt.com/live/cx_386171.flv?wsSecret=04c2bd6cf872ec775920b489ae73c584&wsTime=1782886756 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",媚儿6 +http://x3spmlacr.yueyongli.top/live/cx_386176.flv?wsSecret=49ae39e166916f1a171f2626ea6f3d9c&wsTime=1782885499 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",妹妹超白 +http://77bo.xn--thqp73n.com/live/cx_15460.flv?wsSecret=60b8ccf7273f8ce0b024b1556ebd1ab1&wsTime=1782892855 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",日本av放映室 +http://x3spmlacr.yueyongli.top/live/cx_373479.flv?wsSecret=9b6966c079e1dc3a503a9f6319e304f3&wsTime=1782836738 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小妈 +http://xcrmumeetla.abrillantlee.top/live/cx_386682.flv?wsSecret=e8eeb4950cfd8386169b92d9329c93f0&wsTime=1782895441 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",玖月儿 +http://guetnzweozela.sqfkkj.top/live/cx_386166.flv?wsSecret=ee042ba1b4ccab935d60ba736e655bbd&wsTime=1782895969 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",苏恬 +http://xcplawater02.yueyongli.top/live/cx_381511.flv?wsSecret=afda3968bd2b7c73e4edf196e546471a&wsTime=1782891508 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",萌萌不暴躁 +http://77bo.xn--ypzw80d.com/live/cx_15547.flv?wsSecret=1d10a15c70ffd220bb8ec7313552351a&wsTime=1782892813 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",萌萌宝儿 +http://77bo.xn--4lw519c.com/live/cx_16106.flv?wsSecret=2a193f947a0ddeb7102b17ae01f8af04&wsTime=1782892365 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",曦儿 +http://x3spmlacr.yueyongli.top/live/cx_385527.flv?wsSecret=329405d6f8b46ed002577a0e31a36db5&wsTime=1782895073 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",未成年@ +http://77bo.xn--fhqv92p.com/live/cx_28.flv?wsSecret=1d9ccbc2b29d1db87dd42eae2378c059&wsTime=1782832434 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",秋 +http://la193sahrigxt.sqfkkj.top/live/cx_385830.flv?wsSecret=40dbcfff1b37155b7f72662bb5caffa8&wsTime=1782895109 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",欧美白人黑人合集 +http://likeahjadksetla.abrillantlee.top/live/cx_375008.flv?wsSecret=ba1e401880cc150ad7719dc3c05bf96f&wsTime=1782673845 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",你的小佩奇 +http://xcplawater02.yueyongli.top/live/cx_385329.flv?wsSecret=be1ef9cdbbb69920a38c21a7789583d9&wsTime=1782898179 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",海澄 +http://77bo.xn--uw0as83a.com/live/cx_15225.flv?wsSecret=612406e6a83c85bc59c79ee9963b4085&wsTime=1782892915 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",户外打野@ http://77bo.xn--fhqv92p.com/live/cx_15642.flv?wsSecret=3361a38b7ef420b18fcf282a5eeab05a&wsTime=1782833438 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",黑色巧克力 -http://xrgszsbrila.yueyongli.top/live/cx_385680.flv?wsSecret=ed350a9aef19c4bb7e657678cc9e140e&wsTime=1782864238 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Lucky6 -http://la193sahrigxt.sqfkkj.top/live/cx_385283.flv?wsSecret=ab8b6b37f0949070e9758547c1a90c06&wsTime=1782864660 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",AD钙奶a -http://77bo.xn--t8w422e.com/live/cx_15953.flv?wsSecret=cab1f70aaca3ccb5376614992686f63c&wsTime=1782863274 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",可可呀 -http://77bo.xn--thqp73n.com/live/cx_12364.flv?wsSecret=a2d40f0e05af0eeadc0afc17e53778d4&wsTime=1782864927 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",梨儿 -http://guetnzweozela.sqfkkj.top/live/cx_386173.flv?wsSecret=67861af251a5480c99be138ada806ea8&wsTime=1782874954 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",哆米 -http://x3spmlacr.yueyongli.top/live/cx_384763.flv?wsSecret=c8bb8cef68800401b0748f53d822d808&wsTime=1782865072 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",妮妮兔s -http://xzqppsukemrla.jinkangyl.com/live/cx_386262.flv?wsSecret=420bf84bb8eb1edcbfa6b147e22252dd&wsTime=1782870473 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",暖暖%7E -http://x3spmlacr.yueyongli.top/live/cx_380325.flv?wsSecret=db9fae3f79dd7b42be0ef6e1ab3dc7fd&wsTime=1782872576 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",美加墨世界杯 -http://xcplawater02.yueyongli.top/live/cx_375616.flv?wsSecret=2c017bcefde88061e2d8c0093cc56672&wsTime=1782837351 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",花无缺5 -http://xlajunasjwqoet.cssymt.com/live/cx_378665.flv?wsSecret=3b0749bb5b072896d57e89343a1cc83b&wsTime=1782875466 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",是你的小咪- -http://xlajunasjwqoet.cssymt.com/live/cx_382407.flv?wsSecret=9dd6a1ecfd590b9b2955d515dfd8a9dd&wsTime=1782868461 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",嘻哈 -http://la193sahrigxt.sqfkkj.top/live/cx_382676.flv?wsSecret=5346a5c0df3d7e9d085047fc4d0d5ee8&wsTime=1782862681 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",由美 -http://xrgszsbrila.yueyongli.top/live/cx_386359.flv?wsSecret=cf5058f39784ffb7eb9c408911bfbc8f&wsTime=1782865185 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小可爱c -http://77bo.xn--kcrp02i.com/live/cx_15110.flv?wsSecret=2e1042c87ca92c549ecfa9144dd3e53c&wsTime=1782863164 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",按摩馆的秘密@ -http://77bo.xn--fhqv92p.com/live/cx_15652.flv?wsSecret=c055e6f3c8409901f4b528d306017b9f&wsTime=1782833652 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",车银优 -http://guetnzweozela.sqfkkj.top/live/cx_386108.flv?wsSecret=03c7c5565a35e1f47d2de81577efe509&wsTime=1782871659 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",粉粉白鹿 -http://xlajunasjwqoet.cssymt.com/live/cx_386178.flv?wsSecret=e54a509ac97882d6bed12d59fb386847&wsTime=1782866690 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",你的煮人 -http://x3spmlacr.yueyongli.top/live/cx_384691.flv?wsSecret=b6fdc2ca1eb4ff7fc4bfa3bcc1a48a2f&wsTime=1782873566 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",星辰呀 -http://xcplawater02.yueyongli.top/live/cx_374986.flv?wsSecret=013e637892bbfead8b040d2ac953490d&wsTime=1782866854 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",赵格格绿播 -http://77bo.xn--vuqy52q.com/live/cx_13228.flv?wsSecret=e3218c2aded42cc81045f9b60bb42a90&wsTime=1782856632 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小姐姐撕丝 -http://guetnzweozela.sqfkkj.top/live/cx_386372.flv?wsSecret=02dcd23158a53f481596f13e2c1f61db&wsTime=1782868107 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",熊熊a -http://xcplawater02.yueyongli.top/live/cx_386303.flv?wsSecret=ab2b0b46c432754f31976a5cc6e5c3b8&wsTime=1782871714 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",鹿屿森 -http://xcrmumeetla.abrillantlee.top/live/cx_385669.flv?wsSecret=61f7ca58dd0f0a1162c689c42aad4d4d&wsTime=1782865471 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",肉肉超肉 -http://77bo.xn--ypzw80d.com/live/cx_108.flv?wsSecret=3707902a996434e5dabd362ee525de3b&wsTime=1782865038 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",大幂幂呀 -http://guetnzweozela.sqfkkj.top/live/cx_385415.flv?wsSecret=2c34ed14c002d3f33f14396713b6a0a9&wsTime=1782865575 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",热舞嘟嘟 -http://myijapiwuewla.cssymt.com/live/cx_386248.flv?wsSecret=bfb9681ce8c6dd99496efefb9fc28417&wsTime=1782873913 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",欧美白人黑人合集 -http://likeahjadksetla.abrillantlee.top/live/cx_375008.flv?wsSecret=ba1e401880cc150ad7719dc3c05bf96f&wsTime=1782673845 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",优mi -http://xrgszsbrila.yueyongli.top/live/cx_386373.flv?wsSecret=547653d12f8ad2279770420019569036&wsTime=1782858103 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",中文字幕剧情@ -http://77bo.xn--uw0as83a.com/live/cx_8643.flv?wsSecret=1c192e345a46277cba7edb1252f75e25&wsTime=1782518277 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",姐姐湿了 -http://xcrmumeetla.abrillantlee.top/live/cx_383947.flv?wsSecret=9cb7e1ddce0d2d1b256deb90c361b01f&wsTime=1782866001 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",钢管二萌 -http://lawoazletjsuet.sqfkkj.top/live/cx_367602.flv?wsSecret=5fb70b3f1eeedc1ac12e5cc4fd0066ed&wsTime=1782871240 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",娘子 -http://77bo.xn--uw0as83a.com/live/cx_16517.flv?wsSecret=5853bee62805a178276f353d118d681f&wsTime=1782863117 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",星笙夏浅枫 -http://xrgszsbrila.yueyongli.top/live/cx_385462.flv?wsSecret=499c392e4b53ce42fd569570825aa003&wsTime=1782870910 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",梦梦Ysl -http://myijapiwuewla.cssymt.com/live/cx_386077.flv?wsSecret=17a7150d3d1897fc65391fc4b3187b3b&wsTime=1782873449 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",七七/ -http://guetnzweozela.sqfkkj.top/live/cx_386202.flv?wsSecret=50b8c251e7fd49c0ba82f8e934a4ad1f&wsTime=1782860776 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",肉松蛋糕 -http://la193sahrigxt.sqfkkj.top/live/cx_386315.flv?wsSecret=fae49d2742e53becbfae64930506b815&wsTime=1782873879 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",懒懒来了 -http://x3spmlacr.yueyongli.top/live/cx_386485.flv?wsSecret=7673d907ca4e03dfd1206049292cae49&wsTime=1782867569 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",蛋卷 -http://xzqppsukemrla.jinkangyl.com/live/cx_373355.flv?wsSecret=82cb51e1496ac4303b73a408978c62e2&wsTime=1782871297 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",国产三级片@ -http://77bo.xn--fhqv92p.com/live/cx_16585.flv?wsSecret=697f87ad0a12d71e9d3a9f1433c27525&wsTime=1782834600 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",天天想睡 -http://myijapiwuewla.cssymt.com/live/cx_385964.flv?wsSecret=cf9d668bf3b73a73fc500aa1c8fa1cd4&wsTime=1782875571 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",多米, -http://xrgszsbrila.yueyongli.top/live/cx_364327.flv?wsSecret=3b8d53b4202b68e48909ec2c70fa0fc0&wsTime=1782875818 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",%20原味奶茶 -http://likeahjadksetla.abrillantlee.top/live/cx_372584.flv?wsSecret=f2fee8c85c842b04cecb372d20bfe63e&wsTime=1782856150 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",轩宝 -http://77bo.xn--vuqy52q.com/live/cx_11284.flv?wsSecret=18965d202f64c94d15017507d99d5af0&wsTime=1782863636 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",宝宝 -http://xlajunasjwqoet.cssymt.com/live/cx_386729.flv?wsSecret=bb8cfa2978ddd56a13929d3010a2d870&wsTime=1782874984 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mitao.jpg" group-title="蜜桃",精彩大秀@ +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小容儿 +http://guetnzweozela.sqfkkj.top/live/cx_385596.flv?wsSecret=31967e31ede0e0641c09a2225f563c63&wsTime=1782894557 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",遥遥呀 +http://la193sahrigxt.sqfkkj.top/live/cx_386453.flv?wsSecret=0e415d2dfa9fe890f855cdf0bca5f723&wsTime=1782892836 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",是炫子吖 +http://77bo.xn--ypzw80d.com/live/cx_11178.flv?wsSecret=512a347ebf6a0551b9ffff04d82c3443&wsTime=1782892787 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",蓝汐 +http://77bo.xn--vuqy52q.com/live/cx_4062.flv?wsSecret=647ce22aec94187eaa623f211458c898&wsTime=1782883915 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",秀零 +http://xcrmumeetla.abrillantlee.top/live/cx_383424.flv?wsSecret=123b52c9c076ce809aaed2266fb8a2e1&wsTime=1782894301 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",精彩剧情@ +http://77bo.xn--t8w422e.com/live/cx_16437.flv?wsSecret=794bc574ebf798a6426c6f83a338fa71&wsTime=1782864821 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",温玥玥 +http://lawoazletjsuet.sqfkkj.top/live/cx_385701.flv?wsSecret=29a2fe372ca10600cb362ea0c60372e6&wsTime=1782894970 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",狂草精神小妹.@ +http://77bo.xn--uw0as83a.com/live/cx_120.flv?wsSecret=e06d1fcf4d8cabe75a23dd2419abe755&wsTime=1782518086 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小耳朵66 +http://x3spmlacr.yueyongli.top/live/cx_361786.flv?wsSecret=60ea49b2cffc82a5aa0abb27447e64ed&wsTime=1782890444 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",绝情瑶 +http://guetnzweozela.sqfkkj.top/live/cx_385363.flv?wsSecret=25ff99a4f1d9b03d01408f0482becbfd&wsTime=1782882574 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",夜色温柔 +http://likeahjadksetla.abrillantlee.top/live/cx_386055.flv?wsSecret=3ac4222a3de91983c6a653dde245e0c2&wsTime=1782891661 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",少女乱伦@ +http://77bo.xn--t8w422e.com/live/cx_15966.flv?wsSecret=5599c15e265be4e8a3402f58d72a28fb&wsTime=1782864828 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",心心丫 +http://77bo.xn--t8w422e.com/live/cx_15985.flv?wsSecret=abb7a72b24e26e8ee138f623a93e7692&wsTime=1782892890 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",一对性感情侣 +http://x3spmlacr.yueyongli.top/live/cx_383343.flv?wsSecret=9bc3b99cf898d12ec08eca01b9751d38&wsTime=1782888585 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",职场身体上位@ +http://77bo.xn--fhqv92p.com/live/cx_15604.flv?wsSecret=2300b65ea1641772ae9df01a3424eb4a&wsTime=1782856454 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",金枝玉叶 +http://x3spmlacr.yueyongli.top/live/cx_386185.flv?wsSecret=5b3cb6c469d5690a12a634bfc7fa3c31&wsTime=1782879045 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小小的人儿 +http://likeahjadksetla.abrillantlee.top/live/cx_386115.flv?wsSecret=7894d668ba93e7be42e0de69420d042a&wsTime=1782896169 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",招财元宝 +http://xzqppsukemrla.jinkangyl.com/live/cx_386181.flv?wsSecret=b49efcc7978cf88f05e12ca3d70d2f05&wsTime=1782897056 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",精彩大秀@ http://77bo.xn--t8w422e.com/live/cx_15861.flv?wsSecret=6afb50bd68616953c0c80d9ad30882a5&wsTime=1782864824 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Petitkaya -https://edge-cdn2.streamparty.online/LiveApp/streams/user69f4bba6b1fef/AGUpf8N2h13bL8JZ9852060320472380_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",abbinatural -https://edge-cdn1.streamparty.online/LiveApp/streams/user684cde80ac8f2/wdN36keep1EfsoOp3426198753806489_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Hotchocolate -https://edge-cdn1.streamparty.online/LiveApp/streams/user6a160fdd950a7/ndjnQEpudk2vUhxI11934254326976021_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",CassandraBaby -https://edge-cdn1.streamparty.online/LiveApp/streams/user6868561b1717b/oPYBpOYc1yrVlqns5200668689770678_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Hotmodel -https://edge-cdn1.streamparty.online/LiveApp/streams/user695c9d27b594a/fWcHKSElgSAxW4Fs5186762221403242_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Nahirr -https://edge-cdn1.streamparty.online/LiveApp/streams/user69b1c1f5a69a6/3NxtFIlvP3Z9AWnt5355039648617613_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",TheLaceyBloom -https://manifest-server.naiadsystems.com/live/cf7302cf-3a9d-4186-a929-eddb73a6af07.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=oE0v9dTEopUEK93S3VSHLmkI5EWWcfL5LOO73JJHKeE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-22.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowpoke%3A8303%22%2C%22btk%22%3A%22oE0v9dTEopUEK93S3VSHLmkI5EWWcfL5LOO73JJHKeE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22cf7302cf-3a9d-4186-a929-eddb73a6af07%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Monica_Steals -https://manifest-server.naiadsystems.com/live/9d643483-6fe0-4347-9733-414ff31ca170.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=drowzee%3A8303&btk=2FOlMGbKWpzfrpixDfiE4c27VOt6kU4M%2BPGiFb1uHVA&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22drowzee%3A8303%22%2C%22btk%22%3A%222FOlMGbKWpzfrpixDfiE4c27VOt6kU4M%2BPGiFb1uHVA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229d643483-6fe0-4347-9733-414ff31ca170%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",SamiSue -https://manifest-server.naiadsystems.com/live/ec367dd0-c8c6-4fc7-ac2c-417df4c1a5da.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=beedrill%3A8303&btk=uiuVa9DiRg%2Bd08T9mhY2vi9n90h3D8OFUS77PCymDzE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22beedrill%3A8303%22%2C%22btk%22%3A%22uiuVa9DiRg%2Bd08T9mhY2vi9n90h3D8OFUS77PCymDzE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ec367dd0-c8c6-4fc7-ac2c-417df4c1a5da%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Emberreinn -https://manifest-server.naiadsystems.com/live/9e397032-0797-48ae-b859-596273c463eb.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pidgeot%3A8303&btk=4Ho7KSm2POyj0I9j2dkUnwvlTOGMAPVb95vJzFxoL2Y&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pidgeot%3A8303%22%2C%22btk%22%3A%224Ho7KSm2POyj0I9j2dkUnwvlTOGMAPVb95vJzFxoL2Y%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229e397032-0797-48ae-b859-596273c463eb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",JordyJett -https://manifest-server.naiadsystems.com/live/6413be3f-ad80-47b6-80c9-9ad31cc88002.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=YBwyVSlWW9vdKFhcb7kSYozoHnPHosPmz4prEuGPw%2FA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%22YBwyVSlWW9vdKFhcb7kSYozoHnPHosPmz4prEuGPw%2FA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%226413be3f-ad80-47b6-80c9-9ad31cc88002%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",GraceBeaumont -https://manifest-server.naiadsystems.com/live/f7adcfec-1206-479e-8f4e-4a0dd333a41b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=fwCZalRZEfllQarCVSvvF8JSElkLBxeqzz%2FxVZR%2FeQY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%22fwCZalRZEfllQarCVSvvF8JSElkLBxeqzz%2FxVZR%2FeQY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f7adcfec-1206-479e-8f4e-4a0dd333a41b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",HottieJadeRoxxx -https://manifest-server.naiadsystems.com/live/874cdb19-411c-402e-9078-d96a0055798a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=kadabra%3A8303&btk=zlNIru%2BSaM5AVmohV4n91fdJyoZE84tpEVv0PYSF2OY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kadabra%3A8303%22%2C%22btk%22%3A%22zlNIru%2BSaM5AVmohV4n91fdJyoZE84tpEVv0PYSF2OY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22874cdb19-411c-402e-9078-d96a0055798a%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",dirtyyiyannaa -https://manifest-server.naiadsystems.com/live/7f2128e5-0ce6-496a-8e85-f9efff9cb9cf.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=ch6HgIuV52mDwbwztWnSopZ70K12XcHZtq%2BZsvTYkNM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22alakazam%3A8303%22%2C%22btk%22%3A%22ch6HgIuV52mDwbwztWnSopZ70K12XcHZtq%2BZsvTYkNM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%227f2128e5-0ce6-496a-8e85-f9efff9cb9cf%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",ValeriaImaniLin -https://manifest-server.naiadsystems.com/live/99ee5bf5-0926-4de4-9c70-24c413c4f461.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machamp%3A8303&btk=EDGkjClrxad1Hxqg4ID%2FOfkp9SXDTyJjFiX2Ce7VHLA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machamp%3A8303%22%2C%22btk%22%3A%22EDGkjClrxad1Hxqg4ID%2FOfkp9SXDTyJjFiX2Ce7VHLA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2299ee5bf5-0926-4de4-9c70-24c413c4f461%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",MsLindsayDevis -https://manifest-server.naiadsystems.com/live/0054bcb7-7dd3-438b-84a4-0c4b5a2995f5.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=kraken%3A8303&btk=ilLvsa7o5xuo%2FMnO%2BekGdfc3UNezEMt0Q35trqQLFbU&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kraken%3A8303%22%2C%22btk%22%3A%22ilLvsa7o5xuo%2FMnO%2BekGdfc3UNezEMt0Q35trqQLFbU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%220054bcb7-7dd3-438b-84a4-0c4b5a2995f5%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",SummerJaymes -https://manifest-server.naiadsystems.com/live/99585141-75f8-491e-8e08-cb3580e504bc.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=ZjyGrTao37ZNNHn6q9laAzBTJuHWI6XbMwSlDxsuOCU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%22ZjyGrTao37ZNNHn6q9laAzBTJuHWI6XbMwSlDxsuOCU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2299585141-75f8-491e-8e08-cb3580e504bc%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",suzyque -https://manifest-server.naiadsystems.com/live/1578801b-bd04-4c9f-84b4-d4afc65c1b20.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=FflGt5z3LPEMqJbuxqRgq6MeyU7WRQyybICWYGhCm7o&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22abra%3A8303%22%2C%22btk%22%3A%22FflGt5z3LPEMqJbuxqRgq6MeyU7WRQyybICWYGhCm7o%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221578801b-bd04-4c9f-84b4-d4afc65c1b20%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",MollyLoveNZ -https://manifest-server.naiadsystems.com/live/c3026032-4333-45ed-a23a-15d01de26e5b.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pinchy%3A8303&btk=HqKRMAtQJIM%2FhVzrsIgvIG4YJwGGKutBjCXrZBjs924&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pinchy%3A8303%22%2C%22btk%22%3A%22HqKRMAtQJIM%2FhVzrsIgvIG4YJwGGKutBjCXrZBjs924%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22c3026032-4333-45ed-a23a-15d01de26e5b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",EdenEvansLive -https://manifest-server.naiadsystems.com/live/28c1607e-d0fc-4104-a096-64c9e353e1fb.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=victreebel%3A8303&btk=zp7%2BOgQZqIw8BZ1U4UpvBb9sKLpmPQCMLk3a%2F%2BxeyY8&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22victreebel%3A8303%22%2C%22btk%22%3A%22zp7%2BOgQZqIw8BZ1U4UpvBb9sKLpmPQCMLk3a%2F%2BxeyY8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2228c1607e-d0fc-4104-a096-64c9e353e1fb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Little_lexxxi -https://manifest-server.naiadsystems.com/live/65cc4e30-0357-43d0-b87c-d37248de25f0.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=firewhale%3A8303&btk=1rVLc9EpvH5ry5T3GDJxhE%2FBzJoj1iSnqhv%2FazuttNM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22firewhale%3A8303%22%2C%22btk%22%3A%221rVLc9EpvH5ry5T3GDJxhE%2FBzJoj1iSnqhv%2FazuttNM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2265cc4e30-0357-43d0-b87c-d37248de25f0%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Alexisdownunderx -https://manifest-server.naiadsystems.com/live/60e28a47-bbd3-4dc5-a24b-3eaf7f105ebe.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=mew%3A8303&btk=ncU0L8ePZuCp%2FzJ82Rvn4%2FHYM%2Flmpw8Pd4xpQcnyFyw&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22mew%3A8303%22%2C%22btk%22%3A%22ncU0L8ePZuCp%2FzJ82Rvn4%2FHYM%2Flmpw8Pd4xpQcnyFyw%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2260e28a47-bbd3-4dc5-a24b-3eaf7f105ebe%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",GoddessElaraa -https://manifest-server.naiadsystems.com/live/84ebc4fd-162e-4cbb-b04c-f24c424ebca8.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=jigglypuff%3A8303&btk=0u0DxgdI32GNvfkWTLqI2HszvS%2FP5AX6P7VwbxVah60&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22jigglypuff%3A8303%22%2C%22btk%22%3A%220u0DxgdI32GNvfkWTLqI2HszvS%2FP5AX6P7VwbxVah60%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2284ebc4fd-162e-4cbb-b04c-f24c424ebca8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Goddesspaigee22 -https://manifest-server.naiadsystems.com/live/d9a4f609-3672-4033-96c1-d824968a9890.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=3wbC6trStdlvpQjyq0hhNmIVAHkP5tu4dS2R%2FE9l3GE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-28.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ponyta%3A8303%22%2C%22btk%22%3A%223wbC6trStdlvpQjyq0hhNmIVAHkP5tu4dS2R%2FE9l3GE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22d9a4f609-3672-4033-96c1-d824968a9890%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",DDlynn -https://manifest-server.naiadsystems.com/live/63614bf5-bb38-4160-8de0-7765f7697487.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=diglett%3A8303&btk=5b1vMKpBH6JnJEKCHMtC6mhVFD7v3aVgdHso2GjHE3Y&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22diglett%3A8303%22%2C%22btk%22%3A%225b1vMKpBH6JnJEKCHMtC6mhVFD7v3aVgdHso2GjHE3Y%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2263614bf5-bb38-4160-8de0-7765f7697487%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",SecretsOfMiaFae -https://manifest-server.naiadsystems.com/live/982adb7a-dcc7-48be-bf2d-f65f5ee2ffcb.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=butterfree%3A8303&btk=s%2BmWEnj%2FNwkG6J4OxVEyvRXwuRgA1h%2BcerZ6%2B0U8ITo&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22butterfree%3A8303%22%2C%22btk%22%3A%22s%2BmWEnj%2FNwkG6J4OxVEyvRXwuRgA1h%2BcerZ6%2B0U8ITo%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22982adb7a-dcc7-48be-bf2d-f65f5ee2ffcb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",Bella +http://myijapiwuewla.cssymt.com/live/cx_348885.flv?wsSecret=188bfc68df35c485ac03a696f6f37685&wsTime=1782887257 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小佩奇 +http://77bo.xn--kcrp02i.com/live/cx_3932.flv?wsSecret=50b26cbeac0125c984fcdda1b90d54dd&wsTime=1782892730 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",淫水多多多 +http://xcrmumeetla.abrillantlee.top/live/cx_385696.flv?wsSecret=cc4faa146ed345e0e503295ca6512083&wsTime=1782898158 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",人兽大战@ +http://77bo.xn--fhqv92p.com/live/cx_24.flv?wsSecret=e206d6e7184d3e74b84751de6d94c493&wsTime=1782832499 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",是肉丝呀 +http://77bo.xn--4lw519c.com/live/cx_13322.flv?wsSecret=d81b6bd1d846cde34e571eaa73ec1be5&wsTime=1782892661 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",支付宝风控解除 +https://vod.dengzhidao.cn/video/fengkong.mp4 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",小猪猪儿 +http://likeahjadksetla.abrillantlee.top/live/cx_385697.flv?wsSecret=67cce0c4e74895bddb041c1ba9d8a90f&wsTime=1782894189 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",中文字幕剧情@ +http://77bo.xn--uw0as83a.com/live/cx_8643.flv?wsSecret=1c192e345a46277cba7edb1252f75e25&wsTime=1782518277 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",要七七 +http://xlajunasjwqoet.cssymt.com/live/cx_375628.flv?wsSecret=b637278f0ecd991acd52b9e71737f11c&wsTime=1782896650 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",刘开心 +http://la193sahrigxt.sqfkkj.top/live/cx_368659.flv?wsSecret=4f5c86838730e7194e84e5cbb5ec2b8f&wsTime=1782892294 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/kawayi.jpg" group-title="卡哇伊",优乐美o +http://la193sahrigxt.sqfkkj.top/live/cx_358896.flv?wsSecret=3a6939ec2e4a7a352f53e6820ca16ae0&wsTime=1782886149 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",国产乱伦强奸@ +http://77bo.xn--fhqv92p.com/live/cx_31.flv?wsSecret=d3ffbeec015720c625a6aa9f7e32ab7b&wsTime=1782833842 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",芝芝. +http://likeahjadksetla.abrillantlee.top/live/cx_372271.flv?wsSecret=686268d1f1fa4fc7f7324c910242cac3&wsTime=1782892391 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",咬一口 +http://77bo.xn--thqp73n.com/live/cx_16320.flv?wsSecret=a8fff0c5a7707cd5a3fc328335a8103a&wsTime=1782898149 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",奶昔要啵啵 +http://lawoazletjsuet.sqfkkj.top/live/cx_386725.flv?wsSecret=adb6565ed63e8ea7c22899314b6559ab&wsTime=1782877047 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",多米, +http://xrgszsbrila.yueyongli.top/live/cx_364327.flv?wsSecret=6ec1c51b62b7040594a539794319ac77&wsTime=1782894593 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",后入希希要用力 +http://likeahjadksetla.abrillantlee.top/live/cx_354263.flv?wsSecret=5f9b877f1c2e3cee464d28387926ea35&wsTime=1782897959 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",许安画 +http://myijapiwuewla.cssymt.com/live/cx_361599.flv?wsSecret=782c339f32946a60f4eda194f838eb6b&wsTime=1782893395 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",奶味葡萄 +http://myijapiwuewla.cssymt.com/live/cx_386127.flv?wsSecret=6b9ddb3d41fc8bea583eb595dd31957b&wsTime=1782888077 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",狂送高潮 +http://xcrmumeetla.abrillantlee.top/live/cx_366975.flv?wsSecret=cf11165a65cfa7d05b55f11bfcf38b3c&wsTime=1782891368 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",照雪 +http://xrgszsbrila.yueyongli.top/live/cx_378879.flv?wsSecret=b41cb5783fc937f94b75b7ddd8e96d03&wsTime=1782889669 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",芝芝莓莓 +http://77bo.xn--uw0as83a.com/live/cx_15810.flv?wsSecret=f7a7de9697c5444b62e3d40355a28fad&wsTime=1782891918 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",按摩馆的秘密@ +http://77bo.xn--fhqv92p.com/live/cx_15652.flv?wsSecret=c055e6f3c8409901f4b528d306017b9f&wsTime=1782833652 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",小荔枝 +http://xrgszsbrila.yueyongli.top/live/cx_1216.flv?wsSecret=23b81fd04779c53f20767125b16033e7&wsTime=1782891101 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",邻家宝妹 +http://77bo.xn--vuqy52q.com/live/cx_6266.flv?wsSecret=ff5b1f88592a08394a615201fda05b3a&wsTime=1782895679 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mihu.jpg" group-title="咪狐",耶斯 +http://la193sahrigxt.sqfkkj.top/live/cx_385355.flv?wsSecret=a079e84b6e24b23fe9527aa5db6ef1bb&wsTime=1782882240 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",优乐美o +http://la193sahrigxt.sqfkkj.top/live/cx_358896.flv?wsSecret=b865fb35070872b2e57ed5897efb65be&wsTime=1782898602 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",南小奈 +http://x3spmlacr.yueyongli.top/live/cx_385898.flv?wsSecret=7014d1f0bad1e7e9212b02c1d1fd1264&wsTime=1782898219 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",小爽、 +http://x3spmlacr.yueyongli.top/live/cx_374539.flv?wsSecret=bedf09cde537316094db3a447fc8d5f7&wsTime=1782898577 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",月落星沉 +http://x3spmlacr.yueyongli.top/live/cx_371517.flv?wsSecret=94c4dc122f07f1eb8af7188a692e437b&wsTime=1782898230 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",舟舟 +http://xcrmumeetla.abrillantlee.top/live/cx_386585.flv?wsSecret=a2966df8c592be88763e5180245c3cb9&wsTime=1782898487 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",在逃公主柳如烟 +http://likeahjadksetla.abrillantlee.top/live/cx_386008.flv?wsSecret=7d6492a9f90b0712e064caaee3859094&wsTime=1782898566 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/huahudie.jpg" group-title="花蝴蝶",兮若 +http://x3spmlacr.yueyongli.top/live/cx_369026.flv?wsSecret=bf9e340221b9c6e38947c07c89f67da3&wsTime=1782898551 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/mitao.jpg" group-title="蜜桃",小爽、 +http://x3spmlacr.yueyongli.top/live/cx_374539.flv?wsSecret=a677d93854e14038c57dddb168b56121&wsTime=1782863650 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/fanqie.png" group-title="番茄社区",辣椒味的魅 +http://77bo.xn--4lw519c.com/live/cx_16698.flv?wsSecret=424ce9b3cdf319011204b883bec86e6c&wsTime=1782898613 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/fanqie.png" group-title="番茄社区",茱丽叶 +http://lawoazletjsuet.sqfkkj.top/live/cx_374370.flv?wsSecret=04b6039ce883f33a9f78f30873fac772&wsTime=1782898506 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/dielian.jpg" group-title="蝶恋",心语心愿 +http://01cxptuincx.yueyongli.top/live/cx_358704.flv?wsSecret=54f0193f47229b0368a52d6fef6c78e2&wsTime=1782898159 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LenaaPaull +https://edge-cdn2.streamparty.online/LiveApp/streams/user67bc6a6a5eee6/CWLkTVfzTylAz16P5301335316098394_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AmyBlair +https://edge-cdn2.streamparty.online/LiveApp/streams/user6827430dbe19c/AkJr9SpHipCjz2ok5244083312879880_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",ChristaHot +https://edge-cdn2.streamparty.online/LiveApp/streams/user6a3d1c7a19c05/pbg5puTFoFppeu0912804036288127190_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",MoonShard +https://edge-cdn1.streamparty.online/LiveApp/streams/user6a3d2c1e231d4/TeWi7Px4Dqq523jZ13153871771319592_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Linseddie +https://edge-cdn2.streamparty.online/LiveApp/streams/user69f1ff81361b4/ezacS9MvaF3Jfw4P11239347329241130_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",DIOSACRISTAL +https://edge-cdn1.streamparty.online/LiveApp/streams/user667d68a06006e/pESBLqhHhzvbDhXH9186432596607208_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",IngAdn +https://edge-cdn2.streamparty.online/LiveApp/streams/user67d95604e206e/Qx8jB3BJW6XmEC1m10363112489982332_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",veronnaink +https://edge-cdn1.streamparty.online/LiveApp/streams/user693f18bad0f04_blur/qsiVBnNdHgvixrGu13119323228407506_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",VIOLETAMEDINA +https://edge-cdn1.streamparty.online/LiveApp/streams/user667d83598abb2/3lXn0Z8oZLaoW2l24625642316367340_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",cute_marshal +https://edge-cdn1.streamparty.online/LiveApp/streams/user698ce80ddc586/7Xc9ncbKtgMIxeKa5184891528403255_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",soaring_love +https://edge-cdn2.streamparty.online/LiveApp/streams/user685b836eac236/TtpeHFROWV4GQzXf14390180653576749_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",shirleyni +https://edge-cdn1.streamparty.online/LiveApp/streams/user69a8fe38ed922/yp9B4NdUQ7j7uFbb5234426583164306_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",NatalllieLynn +https://manifest-server.naiadsystems.com/live/bfb9cd32-5808-4a53-b312-58d1b11849fb.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=VkdKs0Dabn49yI6iZHH2%2F81J00X9CXrOuC2B9en336I&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22haunter%3A8303%22%2C%22btk%22%3A%22VkdKs0Dabn49yI6iZHH2%2F81J00X9CXrOuC2B9en336I%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22bfb9cd32-5808-4a53-b312-58d1b11849fb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",libby_love +https://manifest-server.naiadsystems.com/live/f67f3cf4-94bf-417b-b7ee-eac166ca1f95.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=shellder%3A8303&btk=C955EOgM1rFtjHgTf0Rhkv0kJpgIF5mSwKGY3xXN7yU&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22shellder%3A8303%22%2C%22btk%22%3A%22C955EOgM1rFtjHgTf0Rhkv0kJpgIF5mSwKGY3xXN7yU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f67f3cf4-94bf-417b-b7ee-eac166ca1f95%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LLspinz +https://manifest-server.naiadsystems.com/live/a6a45b40-c520-420f-9e51-28bc055357ad.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=cC5r1pLdZKNxOTNiKSUBnof2P%2FGiybOu7iAkJdSZSRM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22dugtrio%3A8303%22%2C%22btk%22%3A%22cC5r1pLdZKNxOTNiKSUBnof2P%2FGiybOu7iAkJdSZSRM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a6a45b40-c520-420f-9e51-28bc055357ad%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",CuteLittleLeila +https://manifest-server.naiadsystems.com/live/f78b058e-d734-4276-8d52-66cb4f3dc3bf.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonchan%3A8303&btk=rceHuCu7l8%2F3U2XJl9HpAapm%2Fk%2BHXf7iIPF7KHQ2gzc&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonchan%3A8303%22%2C%22btk%22%3A%22rceHuCu7l8%2F3U2XJl9HpAapm%2Fk%2BHXf7iIPF7KHQ2gzc%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f78b058e-d734-4276-8d52-66cb4f3dc3bf%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",TashaNoir +https://manifest-server.naiadsystems.com/live/f6980798-b990-421a-9a3a-4ffa676edb15.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=1CqKy9VtpMr0z34Lq5cmxR5r4lsM9jaguJtiybUXV0E&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%221CqKy9VtpMr0z34Lq5cmxR5r4lsM9jaguJtiybUXV0E%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f6980798-b990-421a-9a3a-4ffa676edb15%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A709%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AthenaMaeve +https://manifest-server.naiadsystems.com/live/50cfd9b9-0dbd-4cac-9c84-3d5b4fbebf91.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=Z2Qs67IWwep1T8pngaKHw%2B%2BF3F%2FGc5VW69lMwUjgq9M&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-26.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22abra%3A8303%22%2C%22btk%22%3A%22Z2Qs67IWwep1T8pngaKHw%2B%2BF3F%2FGc5VW69lMwUjgq9M%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2250cfd9b9-0dbd-4cac-9c84-3d5b4fbebf91%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",TyleneBuck -https://manifest-server.naiadsystems.com/live/92dd4adf-fcfd-40b2-b4f9-1ce801219359.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=kakuna%3A8303&btk=arQuOmI8OXtacrfuxr7ScynigJImgTADRa%2F8NwH%2FF68&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kakuna%3A8303%22%2C%22btk%22%3A%22arQuOmI8OXtacrfuxr7ScynigJImgTADRa%2F8NwH%2FF68%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2292dd4adf-fcfd-40b2-b4f9-1ce801219359%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Sashalouuise -https://manifest-server.naiadsystems.com/live/72c45ab9-0e84-4baf-a12f-66096d7323e0.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=horsea%3A8303&btk=bIBaxyjHFRiSLENJbqS9VfulL3S%2BVlyJdQ7C4%2BkbLbA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22horsea%3A8303%22%2C%22btk%22%3A%22bIBaxyjHFRiSLENJbqS9VfulL3S%2BVlyJdQ7C4%2BkbLbA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2272c45ab9-0e84-4baf-a12f-66096d7323e0%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Cassidy708 -https://manifest-server.naiadsystems.com/live/f4bd2558-1d66-47cb-925e-1cedb8e0c0fe.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=mankey%3A8303&btk=u2%2FORrTdp7QwLbz994CCImEXa7ZhPsq%2BUFzx%2FJ8Dey0&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22mankey%3A8303%22%2C%22btk%22%3A%22u2%2FORrTdp7QwLbz994CCImEXa7ZhPsq%2BUFzx%2FJ8Dey0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f4bd2558-1d66-47cb-925e-1cedb8e0c0fe%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AddisonGreyxo -https://manifest-server.naiadsystems.com/live/ae21384c-b3d7-41eb-b7dd-76c737b6c3ae.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacool%3A8303&btk=PJTvsaU9K1vo2xXBgdBOamV6xCQBo4viz6ye%2FpNmAMM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacool%3A8303%22%2C%22btk%22%3A%22PJTvsaU9K1vo2xXBgdBOamV6xCQBo4viz6ye%2FpNmAMM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ae21384c-b3d7-41eb-b7dd-76c737b6c3ae%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",lizzyLexington -https://manifest-server.naiadsystems.com/live/322d39b8-75d0-4df0-b714-2591a9ddd9f4.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pinchy%3A8303&btk=cVWLvbIsoKKqu%2Fl7%2FcT4uzz4a1j%2BWk6rfIFCz%2FqP1Q0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pinchy%3A8303%22%2C%22btk%22%3A%22cVWLvbIsoKKqu%2Fl7%2FcT4uzz4a1j%2BWk6rfIFCz%2FqP1Q0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22322d39b8-75d0-4df0-b714-2591a9ddd9f4%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LatinSandra -https://manifest-server.naiadsystems.com/live/ff366021-82e6-45b0-a92b-52809e458252.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=satyr%3A8303&btk=jpSIZzMVNXTl4dmhxa0d%2BvU25Ogfz82wstdGAQVQz%2FY&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22satyr%3A8303%22%2C%22btk%22%3A%22jpSIZzMVNXTl4dmhxa0d%2BvU25Ogfz82wstdGAQVQz%2FY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ff366021-82e6-45b0-a92b-52809e458252%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",mschocolatebunny -https://manifest-server.naiadsystems.com/live/dcf46dd7-6491-4bf3-8957-536fa3d28129.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmeleon%3A8303&btk=GiWPDFBgZPp%2Bu7GOHLT0%2BaUqgD4pqY6TV5eDgAX3NM4&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmeleon%3A8303%22%2C%22btk%22%3A%22GiWPDFBgZPp%2Bu7GOHLT0%2BaUqgD4pqY6TV5eDgAX3NM4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22dcf46dd7-6491-4bf3-8957-536fa3d28129%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",GoddessAngelicAmira -https://manifest-server.naiadsystems.com/live/06dcc0a3-40b8-4309-86f0-f1f085798461.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magnemite%3A8303&btk=Zfq6NTaHLVV7Ck2n1%2FOsuhkNZD0uSeIGDiVU6qay%2FTQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-30.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22magnemite%3A8303%22%2C%22btk%22%3A%22Zfq6NTaHLVV7Ck2n1%2FOsuhkNZD0uSeIGDiVU6qay%2FTQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2206dcc0a3-40b8-4309-86f0-f1f085798461%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",GraceeSwift -https://manifest-server.naiadsystems.com/live/d8b8d288-518a-42fb-88d8-ee961af0afa9.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=cmGuEb4xeuUncR2U8EgFE4S8fghMRnaQ2MN7149AEJU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%22cmGuEb4xeuUncR2U8EgFE4S8fghMRnaQ2MN7149AEJU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22d8b8d288-518a-42fb-88d8-ee961af0afa9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LillithSapphire -https://manifest-server.naiadsystems.com/live/e910589c-b75c-43e7-861d-88aad38d22a8.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=raticate%3A8303&btk=n0fHlAphkP9IVrvlI7ndjoFeAhpDrFcvXmZVJZW0QD0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22raticate%3A8303%22%2C%22btk%22%3A%22n0fHlAphkP9IVrvlI7ndjoFeAhpDrFcvXmZVJZW0QD0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22e910589c-b75c-43e7-861d-88aad38d22a8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +https://manifest-server.naiadsystems.com/live/1ff02b6e-c558-4739-9988-f7ee4998112d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weedle%3A8303&btk=bgy75FHJ%2B5%2FcTSNtoZ8wHp8TCnOGXsoZci1c7TRC85Y&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weedle%3A8303%22%2C%22btk%22%3A%22bgy75FHJ%2B5%2FcTSNtoZ8wHp8TCnOGXsoZci1c7TRC85Y%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221ff02b6e-c558-4739-9988-f7ee4998112d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Mina_IMP +https://manifest-server.naiadsystems.com/live/00f981be-98c7-4080-a392-d0acb9379a01.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=threehorn%3A8303&btk=JH6bcGwEnxU0nUriZi%2BNe9IaaGDVlulJQDAN40If%2F1c&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22threehorn%3A8303%22%2C%22btk%22%3A%22JH6bcGwEnxU0nUriZi%2BNe9IaaGDVlulJQDAN40If%2F1c%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2200f981be-98c7-4080-a392-d0acb9379a01%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Skinny_Asian_Amanda +https://manifest-server.naiadsystems.com/live/6d09a81e-e645-420c-9545-05ee82e07fec.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmander%3A8303&btk=mtIPqWcmhVyrDCtgL7c2bmz2paalsZW5FzuRvJBQ3wI&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmander%3A8303%22%2C%22btk%22%3A%22mtIPqWcmhVyrDCtgL7c2bmz2paalsZW5FzuRvJBQ3wI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%226d09a81e-e645-420c-9545-05ee82e07fec%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",SiennaLush +https://manifest-server.naiadsystems.com/live/7ed891b3-bfc4-452b-bc7f-b33974aa9b2a.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=bKfijRhMSwoA71yVBAZgF4lnFgKqVOPrlK7mCbk4z0c&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22bKfijRhMSwoA71yVBAZgF4lnFgKqVOPrlK7mCbk4z0c%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%227ed891b3-bfc4-452b-bc7f-b33974aa9b2a%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LovelyEileen +https://manifest-server.naiadsystems.com/live/466a3ef2-b589-4658-867d-700d3982c9fa.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandslash%3A8303&btk=TY%2BBnhh879jQHqrqO4119MmOsnNi9kwFnXabHGeP5%2F0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22sandslash%3A8303%22%2C%22btk%22%3A%22TY%2BBnhh879jQHqrqO4119MmOsnNi9kwFnXabHGeP5%2F0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22466a3ef2-b589-4658-867d-700d3982c9fa%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AnnieRose +https://manifest-server.naiadsystems.com/live/a13f9596-a2a7-4370-8722-9d5a1e9f9c7c.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=b60S%2BUIM7j7bILpwj%2BEX1sgj6fzrSe9PEuQo%2BzM4q1o&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22b60S%2BUIM7j7bILpwj%2BEX1sgj6fzrSe9PEuQo%2BzM4q1o%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a13f9596-a2a7-4370-8722-9d5a1e9f9c7c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",QueenChloeXO +https://manifest-server.naiadsystems.com/live/ed7d7e78-4e23-456f-90e5-cbc92bd2bf71.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=spiketail%3A8303&btk=WaFrbzzYgbU7uHZwzrg69AZVPAL1bwGo7%2B%2FAQAmjm9k&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22spiketail%3A8303%22%2C%22btk%22%3A%22WaFrbzzYgbU7uHZwzrg69AZVPAL1bwGo7%2B%2FAQAmjm9k%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ed7d7e78-4e23-456f-90e5-cbc92bd2bf71%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LanaKalas +https://manifest-server.naiadsystems.com/live/48fa54c1-108f-4e34-9df2-fd87d41a05b6.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=piggsy%3A8303&btk=7UXR%2FUkz1Sew54QBjuLJf68%2FFgl3lmdvJMK3FoL5WWM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22piggsy%3A8303%22%2C%22btk%22%3A%227UXR%2FUkz1Sew54QBjuLJf68%2FFgl3lmdvJMK3FoL5WWM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2248fa54c1-108f-4e34-9df2-fd87d41a05b6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",RoxyHey +https://manifest-server.naiadsystems.com/live/9b35257a-43ff-4ca3-b982-b91de78cff88.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=drowzee%3A8303&btk=PSsATxSjKX0uHJVhl3vBAAPIpRBAcc9FQz186egQX4w&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22drowzee%3A8303%22%2C%22btk%22%3A%22PSsATxSjKX0uHJVhl3vBAAPIpRBAcc9FQz186egQX4w%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229b35257a-43ff-4ca3-b982-b91de78cff88%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LucyMaria +https://manifest-server.naiadsystems.com/live/24e813d0-7c61-420a-b2e3-74a999cada23.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=arbok%3A8323&btk=Vy5OUTlmNyVUhJKbWS22I%2FRP9sNtRAu68rGPgke6q0o&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arbok%3A8323%22%2C%22btk%22%3A%22Vy5OUTlmNyVUhJKbWS22I%2FRP9sNtRAu68rGPgke6q0o%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2224e813d0-7c61-420a-b2e3-74a999cada23%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",LucinderLush +https://manifest-server.naiadsystems.com/live/fd171106-5be0-46d6-bad4-c1255ed28682.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonchan%3A8303&btk=lcwOErWQJlOaJHuALiWiAcVZL8tmByh0yA3urYOCDUw&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonchan%3A8303%22%2C%22btk%22%3A%22lcwOErWQJlOaJHuALiWiAcVZL8tmByh0yA3urYOCDUw%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22fd171106-5be0-46d6-bad4-c1255ed28682%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",KateDivine69 +https://manifest-server.naiadsystems.com/live/8f77f056-f771-4a44-9459-edf368c4a383.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weedle%3A8303&btk=%2Bln0zaqkDMiaEte%2F4CMsdlYG1OnHikh7hFzICPF7XQY&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weedle%3A8303%22%2C%22btk%22%3A%22%2Bln0zaqkDMiaEte%2F4CMsdlYG1OnHikh7hFzICPF7XQY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228f77f056-f771-4a44-9459-edf368c4a383%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",PalmBeachPrincesa +https://manifest-server.naiadsystems.com/live/dd851340-1c0c-4efe-ba2a-bdcd04553be7.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggutor%3A8303&btk=LZMRfS%2Fscd%2BmM55ZEvWiojbjh2cd%2FS2NUbxxHcfnTAM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggutor%3A8303%22%2C%22btk%22%3A%22LZMRfS%2Fscd%2BmM55ZEvWiojbjh2cd%2FS2NUbxxHcfnTAM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22dd851340-1c0c-4efe-ba2a-bdcd04553be7%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",Divine_Solace +https://manifest-server.naiadsystems.com/live/9534e214-a46c-488b-a425-c8d245f32359.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmander%3A8303&btk=IjFoRnMO9oUqxLW1ePLyJve5wwZp9OLS9zyNL%2FjLmsc&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmander%3A8303%22%2C%22btk%22%3A%22IjFoRnMO9oUqxLW1ePLyJve5wwZp9OLS9zyNL%2FjLmsc%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229534e214-a46c-488b-a425-c8d245f32359%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",HollyLincon +https://manifest-server.naiadsystems.com/live/ec6950ec-f776-4901-86ed-0d2764e0e24e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=psyduck%3A8303&btk=YnpYpTqmSTeFDvkbKMyK%2Bu3tIQRFxw6uCt5o7qZcSkE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22psyduck%3A8303%22%2C%22btk%22%3A%22YnpYpTqmSTeFDvkbKMyK%2Bu3tIQRFxw6uCt5o7qZcSkE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ec6950ec-f776-4901-86ed-0d2764e0e24e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A708%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",MistressIvyShow +https://manifest-server.naiadsystems.com/live/81c21ac8-fb8a-4b3d-8fc0-5034ffab30b3.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacool%3A8303&btk=LQfDFuzLflwo3icdgtGUJYGHgAyoSuj5VpGyql2IGzE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacool%3A8303%22%2C%22btk%22%3A%22LQfDFuzLflwo3icdgtGUJYGHgAyoSuj5VpGyql2IGzE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2281c21ac8-fb8a-4b3d-8fc0-5034ffab30b3%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",NaughtyMilfNextDoor +https://manifest-server.naiadsystems.com/live/33f8c31a-b492-47ca-8dcc-86be5619aedc.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandslash%3A8303&btk=egO2Xja4v9ni%2FScUocRg9QNza0qVqg6eaUfuxCJG0M4&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22sandslash%3A8303%22%2C%22btk%22%3A%22egO2Xja4v9ni%2FScUocRg9QNza0qVqg6eaUfuxCJG0M4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2233f8c31a-b492-47ca-8dcc-86be5619aedc%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",AryStonne +https://manifest-server.naiadsystems.com/live/7ec7bf08-4c59-44df-9202-7ba01491b240.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=firewhale%3A8303&btk=zxgF3i59Os9cEpXCQ2i4jk8NlloDF7WXZNZA9NX5mPA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22firewhale%3A8303%22%2C%22btk%22%3A%22zxgF3i59Os9cEpXCQ2i4jk8NlloDF7WXZNZA9NX5mPA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%227ec7bf08-4c59-44df-9202-7ba01491b240%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEATURED",KatieSkyMadison +https://manifest-server.naiadsystems.com/live/87c41fd4-0c4f-4913-b1aa-4ff604356ba1.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=VMnlm95RHIt6NZa6W5iUsH8CHiyKZm5PK8IoprS0IXI&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22muk%3A8303%22%2C%22btk%22%3A%22VMnlm95RHIt6NZa6W5iUsH8CHiyKZm5PK8IoprS0IXI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2287c41fd4-0c4f-4913-b1aa-4ff604356ba1%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",VelvetSpell https://edge-cdn2.streamparty.online/LiveApp/streams/user69d63d5fd76ab/c0gcdFmorSKuHqU98319178333204356_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",BrainyBelle @@ -353,14 +345,14 @@ https://edge-cdn1.streamparty.online/LiveApp/streams/user6a0f5e551fdc2/N7FzpKl0Z https://edge-cdn1.streamparty.online/LiveApp/streams/user683716d04109f/53ZgRUMULbAskVj911356929493620526_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",AlliciaKim https://edge-cdn1.streamparty.online/LiveApp/streams/user697e95beac0f7/o61ywC9FHoYUWFVf5152390031404193_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",Nahirr +https://edge-cdn1.streamparty.online/LiveApp/streams/user69b1c1f5a69a6/3NxtFIlvP3Z9AWnt5355039648617613_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",simonasim https://edge-cdn2.streamparty.online/LiveApp/streams/user6a0604fc2c9cf/rM4FIj9hKhI8XxKg11702611433109106_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",simihazee https://edge-cdn2.streamparty.online/LiveApp/streams/user6a08ace76c347/IwrhhMNzRWbVG6J711051329937747494_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",SophieRosenfeld https://edge-cdn2.streamparty.online/LiveApp/streams/user67cef17436f29/3CrXDCHhd0NEbkgr7054644214103704_adaptive.m3u8 -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",LenaaPaull -https://edge-cdn2.streamparty.online/LiveApp/streams/user67bc6a6a5eee6/CWLkTVfzTylAz16P5301335316098394_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",KeiraDark rtmp://hongyangz.xn--fiq64bk2i52brzu7srde4a640a0sk.com/live/8086_1687906258899 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",GanseloiMix @@ -369,6 +361,8 @@ https://edge-cdn2.streamparty.online/LiveApp/streams/user688477dd8a778/6GJIZg76h https://edge-cdn1.streamparty.online/LiveApp/streams/user68cd8bc4dcaa8/ppoa6pw9jhchEwnN5211037129721915_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",KayaSins https://edge-cdn2.streamparty.online/LiveApp/streams/user6a0eefe52e013/1ZLwgas1LttQ6MN111519676738680349_adaptive.m3u8 +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",Petitkaya +https://edge-cdn2.streamparty.online/LiveApp/streams/user69f4bba6b1fef/AGUpf8N2h13bL8JZ9852060320472380_adaptive.m3u8 #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",secrethoneypotxo https://manifest-server.naiadsystems.com/live/a9dff8d7-6ea7-4f61-aec1-bd7eb9189caa.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8323&btk=OZHvCBh%2FRmIEL5Na2XiT7Awypc2Xf8Rp%2Bzbnuc46KGI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-30.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacruel%3A8323%22%2C%22btk%22%3A%22OZHvCBh%2FRmIEL5Na2XiT7Awypc2Xf8Rp%2Bzbnuc46KGI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a9dff8d7-6ea7-4f61-aec1-bd7eb9189caa%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",TheLadyKatrina @@ -397,215 +391,203 @@ https://manifest-server.naiadsystems.com/live/e835ade1-e89b-4249-9b81-ad09a67557 https://manifest-server.naiadsystems.com/live/e8642cf5-afb3-4858-bd85-337750031b24.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magneton%3A8323&btk=bBRlDb2iEdcP%2FJh%2BNm%2Be%2Fbhbqq9yeO4UNnB73Os5zNM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22magneton%3A8323%22%2C%22btk%22%3A%22bBRlDb2iEdcP%2FJh%2BNm%2Be%2Fbhbqq9yeO4UNnB73Os5zNM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e8642cf5-afb3-4858-bd85-337750031b24%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美FEMALE",Sarahsteveson018 https://manifest-server.naiadsystems.com/live/b64bf44b-b536-4c30-af4d-229ac078fd1c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8323&btk=948z4V0O7i%2Bsowsc2Q1c20eWuq6clmYhPd5R8liEgFo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-24.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8323%22%2C%22btk%22%3A%22948z4V0O7i%2Bsowsc2Q1c20eWuq6clmYhPd5R8liEgFo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b64bf44b-b536-4c30-af4d-229ac078fd1c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TheLaceyBloom -https://manifest-server.naiadsystems.com/live/cf7302cf-3a9d-4186-a929-eddb73a6af07.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=wRB8ngFK0SxlGb0mhDLzxTCOA1JnhsDSqH%2FUPkFC4%2FI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-22.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowpoke%3A8303%22%2C%22btk%22%3A%22wRB8ngFK0SxlGb0mhDLzxTCOA1JnhsDSqH%2FUPkFC4%2FI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22cf7302cf-3a9d-4186-a929-eddb73a6af07%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SamiSue -https://manifest-server.naiadsystems.com/live/ec367dd0-c8c6-4fc7-ac2c-417df4c1a5da.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=beedrill%3A8303&btk=hdTbljNH3AeVax6T4ue1KEWeA4f16mT0J5Ir50nEcME&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22beedrill%3A8303%22%2C%22btk%22%3A%22hdTbljNH3AeVax6T4ue1KEWeA4f16mT0J5Ir50nEcME%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ec367dd0-c8c6-4fc7-ac2c-417df4c1a5da%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Joeystaciee -https://manifest-server.naiadsystems.com/live/1fe9fb68-9622-4b08-88de-d932ed14c21c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=OVwhipSqIEfoWU1QzgOI1s83GdeTNBE9UL7f0eokZs0&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-18.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22alakazam%3A8303%22%2C%22btk%22%3A%22OVwhipSqIEfoWU1QzgOI1s83GdeTNBE9UL7f0eokZs0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221fe9fb68-9622-4b08-88de-d932ed14c21c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LoriTaylor -https://manifest-server.naiadsystems.com/live/c5c2b832-b94d-432f-ba47-1fac0a464579.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=primeape%3A8303&btk=1wHvyn8Ngb%2BlWpQsQ9s9DeIpNkaPsAg%2FxCBn4%2FIeLQA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22primeape%3A8303%22%2C%22btk%22%3A%221wHvyn8Ngb%2BlWpQsQ9s9DeIpNkaPsAg%2FxCBn4%2FIeLQA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22c5c2b832-b94d-432f-ba47-1fac0a464579%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",JordyJett -https://manifest-server.naiadsystems.com/live/6413be3f-ad80-47b6-80c9-9ad31cc88002.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=ggpVNDnSWEQGAvQNDlvMfBXz8wsLG%2BDA1heAjtapkg4&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%22ggpVNDnSWEQGAvQNDlvMfBXz8wsLG%2BDA1heAjtapkg4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%226413be3f-ad80-47b6-80c9-9ad31cc88002%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",KamiliaMae -https://manifest-server.naiadsystems.com/live/0ea2cf8d-e8cf-4867-8b69-befec5910542.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=blastoise%3A8303&btk=OCF7fkmQL4B3p0vmnAYrpS5fHI2CgYXtpUL67hhdTrE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-4.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22blastoise%3A8303%22%2C%22btk%22%3A%22OCF7fkmQL4B3p0vmnAYrpS5fHI2CgYXtpUL67hhdTrE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%220ea2cf8d-e8cf-4867-8b69-befec5910542%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",GraceBeaumont -https://manifest-server.naiadsystems.com/live/f7adcfec-1206-479e-8f4e-4a0dd333a41b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=iRSnvJ2yh2Qg6ukeqlwL8SYtZ6hd%2FRRoOyRAzE2wsmw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%22iRSnvJ2yh2Qg6ukeqlwL8SYtZ6hd%2FRRoOyRAzE2wsmw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f7adcfec-1206-479e-8f4e-4a0dd333a41b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",HottieJadeRoxxx -https://manifest-server.naiadsystems.com/live/874cdb19-411c-402e-9078-d96a0055798a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=kadabra%3A8303&btk=OlWs2jOjVdWfrogz7W21mcYFEuoi4xdBaUEU7wa8TAM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kadabra%3A8303%22%2C%22btk%22%3A%22OlWs2jOjVdWfrogz7W21mcYFEuoi4xdBaUEU7wa8TAM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22874cdb19-411c-402e-9078-d96a0055798a%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",AkiraRabbit -https://manifest-server.naiadsystems.com/live/066a5d16-35c3-4718-a27a-4ab072fc358e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windweasel%3A8303&btk=%2FybuQ%2BUOgr3gUxkuD4zrhc2efSIsjGUcQWlYUBSM8ZM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windweasel%3A8303%22%2C%22btk%22%3A%22%2FybuQ%2BUOgr3gUxkuD4zrhc2efSIsjGUcQWlYUBSM8ZM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22066a5d16-35c3-4718-a27a-4ab072fc358e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",MsLindsayDevis -https://manifest-server.naiadsystems.com/live/0054bcb7-7dd3-438b-84a4-0c4b5a2995f5.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=kraken%3A8303&btk=U6hqV2SK0hjQm05nJco5cQCOMOjJQIWW8mqUOxoDm8c&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kraken%3A8303%22%2C%22btk%22%3A%22U6hqV2SK0hjQm05nJco5cQCOMOjJQIWW8mqUOxoDm8c%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%220054bcb7-7dd3-438b-84a4-0c4b5a2995f5%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SummerJaymes -https://manifest-server.naiadsystems.com/live/99585141-75f8-491e-8e08-cb3580e504bc.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=DYc2TY6UdA%2BrSTHYGaV%2BfGxQC3hdeUF5e%2FMtzon%2FL0I&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%22DYc2TY6UdA%2BrSTHYGaV%2BfGxQC3hdeUF5e%2FMtzon%2FL0I%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2299585141-75f8-491e-8e08-cb3580e504bc%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",suzyque -https://manifest-server.naiadsystems.com/live/1578801b-bd04-4c9f-84b4-d4afc65c1b20.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=e1QxDxmBQIZ%2Fp4JoBzhdQLNOzwTFK%2BC7GJ%2FBBjB8YcI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22abra%3A8303%22%2C%22btk%22%3A%22e1QxDxmBQIZ%2Fp4JoBzhdQLNOzwTFK%2BC7GJ%2FBBjB8YcI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221578801b-bd04-4c9f-84b4-d4afc65c1b20%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",EdenEvansLive -https://manifest-server.naiadsystems.com/live/28c1607e-d0fc-4104-a096-64c9e353e1fb.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=victreebel%3A8303&btk=JIsX%2F2K%2BGCUSYpY%2F8ioQ4n7NZpjNqXDQa2EMuQyItGo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22victreebel%3A8303%22%2C%22btk%22%3A%22JIsX%2F2K%2BGCUSYpY%2F8ioQ4n7NZpjNqXDQa2EMuQyItGo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2228c1607e-d0fc-4104-a096-64c9e353e1fb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",DDlynn -https://manifest-server.naiadsystems.com/live/63614bf5-bb38-4160-8de0-7765f7697487.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=diglett%3A8303&btk=S%2Fznv198X8DTxU06on0pvMotoXB1EqBAfKbewzwz0qc&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22diglett%3A8303%22%2C%22btk%22%3A%22S%2Fznv198X8DTxU06on0pvMotoXB1EqBAfKbewzwz0qc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2263614bf5-bb38-4160-8de0-7765f7697487%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LexiLexxx -https://manifest-server.naiadsystems.com/live/ac77c5d6-0e26-4b4c-bd23-0d1c60cbfed5.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=bigmouth%3A8303&btk=eDkgJc4SN0xVndBpmx1ZsCjD6puyHvz6%2BbThtE8rwzc&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bigmouth%3A8303%22%2C%22btk%22%3A%22eDkgJc4SN0xVndBpmx1ZsCjD6puyHvz6%2BbThtE8rwzc%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ac77c5d6-0e26-4b4c-bd23-0d1c60cbfed5%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",AddisonGreyxo -https://manifest-server.naiadsystems.com/live/ae21384c-b3d7-41eb-b7dd-76c737b6c3ae.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacool%3A8303&btk=Ne2ujK1HORuyruXrLfrpr5Al5nfp13JOFxu%2FDpq3WXQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacool%3A8303%22%2C%22btk%22%3A%22Ne2ujK1HORuyruXrLfrpr5Al5nfp13JOFxu%2FDpq3WXQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ae21384c-b3d7-41eb-b7dd-76c737b6c3ae%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",lizzyLexington -https://manifest-server.naiadsystems.com/live/322d39b8-75d0-4df0-b714-2591a9ddd9f4.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pinchy%3A8303&btk=tfJBDErlb4s6GTxVLXpw6uHKs%2BCO7ixysACcSPGTVmo&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pinchy%3A8303%22%2C%22btk%22%3A%22tfJBDErlb4s6GTxVLXpw6uHKs%2BCO7ixysACcSPGTVmo%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22322d39b8-75d0-4df0-b714-2591a9ddd9f4%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LatinSandra -https://manifest-server.naiadsystems.com/live/ff366021-82e6-45b0-a92b-52809e458252.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=satyr%3A8303&btk=cUmt%2FpYDkoptSMxk5ZQ8j466BRPPh8m8R%2F%2FTbm7PKQs&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22satyr%3A8303%22%2C%22btk%22%3A%22cUmt%2FpYDkoptSMxk5ZQ8j466BRPPh8m8R%2F%2FTbm7PKQs%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ff366021-82e6-45b0-a92b-52809e458252%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",GraceeSwift -https://manifest-server.naiadsystems.com/live/d8b8d288-518a-42fb-88d8-ee961af0afa9.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=A0rMaKcaoxbuCqx5VkOVc6Z1IzgUYEhw%2FoHU%2FwX43hw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%22A0rMaKcaoxbuCqx5VkOVc6Z1IzgUYEhw%2FoHU%2FwX43hw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22d8b8d288-518a-42fb-88d8-ee961af0afa9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LillithSapphire -https://manifest-server.naiadsystems.com/live/e910589c-b75c-43e7-861d-88aad38d22a8.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=raticate%3A8303&btk=MixSToPua3zWRo2L8yofD9ZgFDsSouvKMyhIY1WEe6c&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22raticate%3A8303%22%2C%22btk%22%3A%22MixSToPua3zWRo2L8yofD9ZgFDsSouvKMyhIY1WEe6c%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22e910589c-b75c-43e7-861d-88aad38d22a8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",NattaliaRubiio -https://manifest-server.naiadsystems.com/live/10a9cdc6-6c00-470d-81ce-2566328eea26.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=arcanine%3A8303&btk=Uc1k7Hr3XCDNVMWf%2BSgW7cpAA01DFMvGn2gLh7jtHOM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-21.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arcanine%3A8303%22%2C%22btk%22%3A%22Uc1k7Hr3XCDNVMWf%2BSgW7cpAA01DFMvGn2gLh7jtHOM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2210a9cdc6-6c00-470d-81ce-2566328eea26%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",ViAddams -https://manifest-server.naiadsystems.com/live/47d1de97-3169-4fe7-8f57-3a4c8e18ad10.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=nBKiiVEaz4u2C2fKEgOYV%2B1cuDCf34gv%2B9cF2E0Jzxk&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22geodude%3A8303%22%2C%22btk%22%3A%22nBKiiVEaz4u2C2fKEgOYV%2B1cuDCf34gv%2B9cF2E0Jzxk%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2247d1de97-3169-4fe7-8f57-3a4c8e18ad10%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",AnaMurphy -https://manifest-server.naiadsystems.com/live/5731a100-47e1-4b56-ab59-fc828a4206b2.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windweasel%3A8303&btk=gTWgLuLbygiBUY0mKsnLSeiBhQiYDZvvjTI4rkMIScQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windweasel%3A8303%22%2C%22btk%22%3A%22gTWgLuLbygiBUY0mKsnLSeiBhQiYDZvvjTI4rkMIScQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%225731a100-47e1-4b56-ab59-fc828a4206b2%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",CamilleCarsonXO -https://manifest-server.naiadsystems.com/live/fb9ba4ff-12e0-4b94-b5a4-2ee22a5b00d1.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pidgeot%3A8303&btk=9%2FcbU5kNhexTu9ttTYtRwmwzrGmUz2e5hBz63F7ZXAI&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pidgeot%3A8303%22%2C%22btk%22%3A%229%2FcbU5kNhexTu9ttTYtRwmwzrGmUz2e5hBz63F7ZXAI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22fb9ba4ff-12e0-4b94-b5a4-2ee22a5b00d1%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",NatashaBangs -https://manifest-server.naiadsystems.com/live/4f592178-6503-4476-be8a-6c424924bf7a.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pinchy%3A8303&btk=GR5SfDw3cECYmBwD5n4pVAYBxLsLtiOyLZ6bCw1R8vE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pinchy%3A8303%22%2C%22btk%22%3A%22GR5SfDw3cECYmBwD5n4pVAYBxLsLtiOyLZ6bCw1R8vE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%224f592178-6503-4476-be8a-6c424924bf7a%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Mia_Colin -https://manifest-server.naiadsystems.com/live/41703747-245c-4dc2-a306-5a82fe1a11c6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machamp%3A8303&btk=8Yj2E8PywdYXCuuC1cmq%2FjIzXJ%2Fbc5wUddT8Sv7q6vc&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machamp%3A8303%22%2C%22btk%22%3A%228Yj2E8PywdYXCuuC1cmq%2FjIzXJ%2Fbc5wUddT8Sv7q6vc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2241703747-245c-4dc2-a306-5a82fe1a11c6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Cat_xx -https://manifest-server.naiadsystems.com/live/818ccf76-23e7-4b3d-a685-2e49ecf32121.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=qLTfJhgPnxhcWt2jHc%2BcC9PcjG7sdXrlnCeq3LoRzsI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%22qLTfJhgPnxhcWt2jHc%2BcC9PcjG7sdXrlnCeq3LoRzsI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22818ccf76-23e7-4b3d-a685-2e49ecf32121%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",CherryFae -https://manifest-server.naiadsystems.com/live/c13b4e45-dcd0-42fe-b9f5-7ca017c64052.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowbro%3A8303&btk=r%2Bx%2BqsMW5WEuNFwslssWtNXBJKzcNckLmIBGm0l4DGs&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowbro%3A8303%22%2C%22btk%22%3A%22r%2Bx%2BqsMW5WEuNFwslssWtNXBJKzcNckLmIBGm0l4DGs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22c13b4e45-dcd0-42fe-b9f5-7ca017c64052%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",JezabelKnight -https://manifest-server.naiadsystems.com/live/653a76c6-cbc0-497b-a691-285b365607f0.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=TDTAtx%2Fw%2F2Kvqiq3a0RHbkwP%2F6fjx1zPVwAR1%2BqiWZo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ponyta%3A8303%22%2C%22btk%22%3A%22TDTAtx%2Fw%2F2Kvqiq3a0RHbkwP%2F6fjx1zPVwAR1%2BqiWZo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22653a76c6-cbc0-497b-a691-285b365607f0%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",WanessaLove -https://manifest-server.naiadsystems.com/live/688ee00e-3882-4f33-b529-b0c58909888f.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=koffing%3A8303&btk=9G%2B2WDjPi0ixmwpxhvEFVu%2FiAesMbARFzWXmDaBt2tM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22koffing%3A8303%22%2C%22btk%22%3A%229G%2B2WDjPi0ixmwpxhvEFVu%2FiAesMbARFzWXmDaBt2tM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22688ee00e-3882-4f33-b529-b0c58909888f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Spankdani -https://manifest-server.naiadsystems.com/live/0f0d78b4-efb0-4385-8df0-3d3e71c3980c.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=altai%3A8303&btk=wfKF3Fk8PmCP%2BLRqg6jVTdUTUHgnIGXw82uCPPwNUW8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22altai%3A8303%22%2C%22btk%22%3A%22wfKF3Fk8PmCP%2BLRqg6jVTdUTUHgnIGXw82uCPPwNUW8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%220f0d78b4-efb0-4385-8df0-3d3e71c3980c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",RichardaLove -https://manifest-server.naiadsystems.com/live/99c52024-37ad-4549-a7af-52f9ac02c3d9.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=raichu%3A8303&btk=lfA1CnZGoxPJdnVXwqPTBztMjNFlKKZJJGcON22oeWo&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22raichu%3A8303%22%2C%22btk%22%3A%22lfA1CnZGoxPJdnVXwqPTBztMjNFlKKZJJGcON22oeWo%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2299c52024-37ad-4549-a7af-52f9ac02c3d9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Ladyluvxo -https://manifest-server.naiadsystems.com/live/4b0f4288-3d26-495c-98f5-589552183c24.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=lxNUQFMEFIxMpVzPc4632DtL%2BOgH5IL6DTxjs7eQvMM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-24.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22abra%3A8303%22%2C%22btk%22%3A%22lxNUQFMEFIxMpVzPc4632DtL%2BOgH5IL6DTxjs7eQvMM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%224b0f4288-3d26-495c-98f5-589552183c24%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SterlingX -https://manifest-server.naiadsystems.com/live/435d2127-2565-4d6b-b846-ad2b4a9b55a3.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charizard%3A8303&btk=GnWdTDW045KiW9TcbwvYlc%2BU31%2FOd6IjDN3TsrM4wJ0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charizard%3A8303%22%2C%22btk%22%3A%22GnWdTDW045KiW9TcbwvYlc%2BU31%2FOd6IjDN3TsrM4wJ0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22435d2127-2565-4d6b-b846-ad2b4a9b55a3%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Chelsea_Rae -https://manifest-server.naiadsystems.com/live/27749cab-e978-4895-b0c8-bcd6bb3fa0d4.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacool%3A8303&btk=hRMrn6OC9AnQcQffbyL4bR8OpDjJ3%2F%2FJGVJ809qLESA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacool%3A8303%22%2C%22btk%22%3A%22hRMrn6OC9AnQcQffbyL4bR8OpDjJ3%2F%2FJGVJ809qLESA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2227749cab-e978-4895-b0c8-bcd6bb3fa0d4%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",JettMonroe -https://manifest-server.naiadsystems.com/live/ef0ff355-559f-44d5-af87-0ab651443262.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=aThDFPHdVzR5d7vel1ZKfuzPYhn0hBg0cq7NHNPUx4s&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ponyta%3A8303%22%2C%22btk%22%3A%22aThDFPHdVzR5d7vel1ZKfuzPYhn0hBg0cq7NHNPUx4s%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ef0ff355-559f-44d5-af87-0ab651443262%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LucyOsbourne -https://manifest-server.naiadsystems.com/live/707b07bb-a940-4c66-87c8-8bcfbc10e883.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8303&btk=u%2FrAmWvezHd4cb03aEqWS9cBuzXv5uKISW0VKyQKf%2BA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-30.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacruel%3A8303%22%2C%22btk%22%3A%22u%2FrAmWvezHd4cb03aEqWS9cBuzXv5uKISW0VKyQKf%2BA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22707b07bb-a940-4c66-87c8-8bcfbc10e883%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",NatalllieLynn +https://manifest-server.naiadsystems.com/live/bfb9cd32-5808-4a53-b312-58d1b11849fb.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=%2Bo29%2Fh3uaxZuDnUMAhutZMSPbswLnyWUu4LxlVrK01E&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22haunter%3A8303%22%2C%22btk%22%3A%22%2Bo29%2Fh3uaxZuDnUMAhutZMSPbswLnyWUu4LxlVrK01E%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22bfb9cd32-5808-4a53-b312-58d1b11849fb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LLspinz +https://manifest-server.naiadsystems.com/live/a6a45b40-c520-420f-9e51-28bc055357ad.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=HxtZFT%2BDqM9VkxFl4JuYhT8YCuYzoBKle0luxdrmoio&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22dugtrio%3A8303%22%2C%22btk%22%3A%22HxtZFT%2BDqM9VkxFl4JuYhT8YCuYzoBKle0luxdrmoio%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a6a45b40-c520-420f-9e51-28bc055357ad%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",CuteLittleLeila +https://manifest-server.naiadsystems.com/live/f78b058e-d734-4276-8d52-66cb4f3dc3bf.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonchan%3A8303&btk=tRM1o7yIEl5oInbgowgXqyquLNGmQ%2BOqgMJrqQ58ZpU&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonchan%3A8303%22%2C%22btk%22%3A%22tRM1o7yIEl5oInbgowgXqyquLNGmQ%2BOqgMJrqQ58ZpU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f78b058e-d734-4276-8d52-66cb4f3dc3bf%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TashaNoir +https://manifest-server.naiadsystems.com/live/f6980798-b990-421a-9a3a-4ffa676edb15.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=nZzsvH3cF7OCJBH0AVBU646ohkDv%2FawL%2BksJX1ezP9I&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%22nZzsvH3cF7OCJBH0AVBU646ohkDv%2FawL%2BksJX1ezP9I%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f6980798-b990-421a-9a3a-4ffa676edb15%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A709%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",AthenaMaeve +https://manifest-server.naiadsystems.com/live/50cfd9b9-0dbd-4cac-9c84-3d5b4fbebf91.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=tYoc4dJyB%2Fi5hbIjxEOSr1nMwQ3C5n2cIaVolqhMZSs&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-26.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22abra%3A8303%22%2C%22btk%22%3A%22tYoc4dJyB%2Fi5hbIjxEOSr1nMwQ3C5n2cIaVolqhMZSs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2250cfd9b9-0dbd-4cac-9c84-3d5b4fbebf91%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TyleneBuck +https://manifest-server.naiadsystems.com/live/1ff02b6e-c558-4739-9988-f7ee4998112d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weedle%3A8303&btk=bKCH05F2%2FcO%2BlePOGthG2sIaYC7vD6fsFnNtpsHpK3Q&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weedle%3A8303%22%2C%22btk%22%3A%22bKCH05F2%2FcO%2BlePOGthG2sIaYC7vD6fsFnNtpsHpK3Q%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221ff02b6e-c558-4739-9988-f7ee4998112d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Mina_IMP +https://manifest-server.naiadsystems.com/live/00f981be-98c7-4080-a392-d0acb9379a01.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=threehorn%3A8303&btk=c9HlLsAbwUgPYkmLxgUCnLDj8OjWCJ5d6c1msecpq2o&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22threehorn%3A8303%22%2C%22btk%22%3A%22c9HlLsAbwUgPYkmLxgUCnLDj8OjWCJ5d6c1msecpq2o%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2200f981be-98c7-4080-a392-d0acb9379a01%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Skinny_Asian_Amanda +https://manifest-server.naiadsystems.com/live/6d09a81e-e645-420c-9545-05ee82e07fec.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmander%3A8303&btk=RF75stMDmEx5zcqvt8NvFH05IRmmjFU7h37lG%2BxmqtE&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmander%3A8303%22%2C%22btk%22%3A%22RF75stMDmEx5zcqvt8NvFH05IRmmjFU7h37lG%2BxmqtE%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%226d09a81e-e645-420c-9545-05ee82e07fec%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",SiennaLush +https://manifest-server.naiadsystems.com/live/7ed891b3-bfc4-452b-bc7f-b33974aa9b2a.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=B01pSP9Ls5WcCgiDU51bZN9mDOqsJKO9XUk5BhfEZDY&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22B01pSP9Ls5WcCgiDU51bZN9mDOqsJKO9XUk5BhfEZDY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%227ed891b3-bfc4-452b-bc7f-b33974aa9b2a%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",AnnieRose +https://manifest-server.naiadsystems.com/live/a13f9596-a2a7-4370-8722-9d5a1e9f9c7c.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=cfdHuZcd1JNAv7q4m1Vb6yVXaLMg7Oak%2Fpu0GHeB124&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22cfdHuZcd1JNAv7q4m1Vb6yVXaLMg7Oak%2Fpu0GHeB124%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a13f9596-a2a7-4370-8722-9d5a1e9f9c7c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",QueenChloeXO +https://manifest-server.naiadsystems.com/live/ed7d7e78-4e23-456f-90e5-cbc92bd2bf71.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=spiketail%3A8303&btk=kCBIiUPKSFib2kq0hrzR2hoxBaKFmU89X1HHr6YCVQo&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22spiketail%3A8303%22%2C%22btk%22%3A%22kCBIiUPKSFib2kq0hrzR2hoxBaKFmU89X1HHr6YCVQo%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ed7d7e78-4e23-456f-90e5-cbc92bd2bf71%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LanaKalas +https://manifest-server.naiadsystems.com/live/48fa54c1-108f-4e34-9df2-fd87d41a05b6.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=piggsy%3A8303&btk=IbB%2BRmFmrx6WyDtoN2rE34U0Jnjn%2Fzt2PzHSszZLsks&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22piggsy%3A8303%22%2C%22btk%22%3A%22IbB%2BRmFmrx6WyDtoN2rE34U0Jnjn%2Fzt2PzHSszZLsks%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2248fa54c1-108f-4e34-9df2-fd87d41a05b6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",RoxyHey +https://manifest-server.naiadsystems.com/live/9b35257a-43ff-4ca3-b982-b91de78cff88.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=drowzee%3A8303&btk=LC6q9Udnrdy39wXdSwUuHJX0b4sKSkpIv5mAEFSO%2Bx8&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22drowzee%3A8303%22%2C%22btk%22%3A%22LC6q9Udnrdy39wXdSwUuHJX0b4sKSkpIv5mAEFSO%2Bx8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229b35257a-43ff-4ca3-b982-b91de78cff88%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LucyMaria +https://manifest-server.naiadsystems.com/live/24e813d0-7c61-420a-b2e3-74a999cada23.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=arbok%3A8323&btk=xZXsSD%2BWRBzQKXEpgJvZ24E%2BUgWOY%2FBu%2BpfYQT6DKCc&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arbok%3A8323%22%2C%22btk%22%3A%22xZXsSD%2BWRBzQKXEpgJvZ24E%2BUgWOY%2FBu%2BpfYQT6DKCc%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2224e813d0-7c61-420a-b2e3-74a999cada23%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LucinderLush +https://manifest-server.naiadsystems.com/live/fd171106-5be0-46d6-bad4-c1255ed28682.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonchan%3A8303&btk=gOSKfHCQ4WJPDWg58uvuNOuR4wO%2F4nVLPtUziypKsNs&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonchan%3A8303%22%2C%22btk%22%3A%22gOSKfHCQ4WJPDWg58uvuNOuR4wO%2F4nVLPtUziypKsNs%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22fd171106-5be0-46d6-bad4-c1255ed28682%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",KateDivine69 +https://manifest-server.naiadsystems.com/live/8f77f056-f771-4a44-9459-edf368c4a383.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weedle%3A8303&btk=mY1cgFtV3lsEWcalUT8aYRRhqgV1twrykxHPcmDaS0U&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weedle%3A8303%22%2C%22btk%22%3A%22mY1cgFtV3lsEWcalUT8aYRRhqgV1twrykxHPcmDaS0U%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228f77f056-f771-4a44-9459-edf368c4a383%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",PalmBeachPrincesa +https://manifest-server.naiadsystems.com/live/dd851340-1c0c-4efe-ba2a-bdcd04553be7.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggutor%3A8303&btk=gqOWnpeCGnobXHp2sZGPSPtLu58ybyOlBEKZAnwDcfo&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggutor%3A8303%22%2C%22btk%22%3A%22gqOWnpeCGnobXHp2sZGPSPtLu58ybyOlBEKZAnwDcfo%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22dd851340-1c0c-4efe-ba2a-bdcd04553be7%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Divine_Solace +https://manifest-server.naiadsystems.com/live/9534e214-a46c-488b-a425-c8d245f32359.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmander%3A8303&btk=mt%2F%2FdLAbNYTIeY0017K5EtlFzKAQ7ITAkvnUjN00mLM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmander%3A8303%22%2C%22btk%22%3A%22mt%2F%2FdLAbNYTIeY0017K5EtlFzKAQ7ITAkvnUjN00mLM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229534e214-a46c-488b-a425-c8d245f32359%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",HollyLincon -https://manifest-server.naiadsystems.com/live/6423ac43-7cb4-422e-a371-b9ca5ac9bc8c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machoke%3A8303&btk=WSr2pfMwqd2CSsrDtg88uMhfBzTMajqaBntpP2O6B5g&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-27.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machoke%3A8303%22%2C%22btk%22%3A%22WSr2pfMwqd2CSsrDtg88uMhfBzTMajqaBntpP2O6B5g%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%226423ac43-7cb4-422e-a371-b9ca5ac9bc8c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",ThickGingerCock -https://manifest-server.naiadsystems.com/live/4f6bb3c4-1d28-4767-899e-0f32d7704586.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windweasel%3A8303&btk=nXGaozQWsqhryX6FxWG3XbYaXGvA9%2BFdGqPUQPLwqa0&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windweasel%3A8303%22%2C%22btk%22%3A%22nXGaozQWsqhryX6FxWG3XbYaXGvA9%2BFdGqPUQPLwqa0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%224f6bb3c4-1d28-4767-899e-0f32d7704586%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",CongressCock -https://manifest-server.naiadsystems.com/live/1f2bf24b-b542-4324-867a-83a429335d0d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=piggsy%3A8303&btk=b6MCqRL371lVnZch6TW1n7PO4PWrKCevDYYgrY9sN0k&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22piggsy%3A8303%22%2C%22btk%22%3A%22b6MCqRL371lVnZch6TW1n7PO4PWrKCevDYYgrY9sN0k%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221f2bf24b-b542-4324-867a-83a429335d0d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",MasterSean -https://manifest-server.naiadsystems.com/live/75e38269-c654-4de5-ab21-4aeca845cd96.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=graveler%3A8303&btk=PTWYnPD%2FgJJeflyJC%2FsAUQMvGMkUwHMVmgGPB50423E&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22graveler%3A8303%22%2C%22btk%22%3A%22PTWYnPD%2FgJJeflyJC%2FsAUQMvGMkUwHMVmgGPB50423E%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2275e38269-c654-4de5-ab21-4aeca845cd96%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",alexisboycum22 -https://manifest-server.naiadsystems.com/live/831b6311-1bd1-4b39-ba29-24f3a7435720.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=6FXiFIizyrirIZdr%2BFsBTDaPW708pj7%2FDu9qkhxE30k&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-22.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%226FXiFIizyrirIZdr%2BFsBTDaPW708pj7%2FDu9qkhxE30k%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22831b6311-1bd1-4b39-ba29-24f3a7435720%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Belacqu96 -https://manifest-server.naiadsystems.com/live/083dcc34-fa0f-4cf5-b7d5-5ae4e7e4adb6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=graveler%3A8303&btk=34B6pt37SPqa39T8OHt0kjylwZHeMdvIkvVdcVg9ZX0&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22graveler%3A8303%22%2C%22btk%22%3A%2234B6pt37SPqa39T8OHt0kjylwZHeMdvIkvVdcVg9ZX0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22083dcc34-fa0f-4cf5-b7d5-5ae4e7e4adb6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",JaxonCarter -https://manifest-server.naiadsystems.com/live/4c034930-985a-4b8d-853a-797c8a1c1662.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=primeape%3A8303&btk=PLdMvja0fwcMFY16zxDpfElXE4h%2B80HRWoJOlUlfMTc&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-30.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22primeape%3A8303%22%2C%22btk%22%3A%22PLdMvja0fwcMFY16zxDpfElXE4h%2B80HRWoJOlUlfMTc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%224c034930-985a-4b8d-853a-797c8a1c1662%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",TAYLORVISIOUS -https://manifest-server.naiadsystems.com/live/83deffd2-4001-4abe-a113-a4807769b49d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=%2B1QgxbbZYLLXJtip9cuIyGQWQNfjbxsisvYs3DG%2BOVQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-26.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%22%2B1QgxbbZYLLXJtip9cuIyGQWQNfjbxsisvYs3DG%2BOVQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2283deffd2-4001-4abe-a113-a4807769b49d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",damnfox -https://manifest-server.naiadsystems.com/live/766d72c6-d56d-4ffe-9000-a4a894f4e304.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=WrdcQbt57042bSeMFvl0S3BqJaw1kVWItOhMd1Wep58&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-27.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22alakazam%3A8303%22%2C%22btk%22%3A%22WrdcQbt57042bSeMFvl0S3BqJaw1kVWItOhMd1Wep58%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22766d72c6-d56d-4ffe-9000-a4a894f4e304%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",DickeyHogstuffin -https://manifest-server.naiadsystems.com/live/90de159b-616c-411a-a5b2-c2739435d0ec.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pinchy%3A8303&btk=F%2BZt4%2BR0wJ8ne63c7TlEQZrTZw%2BRJzOpOrFfjUr60QM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pinchy%3A8303%22%2C%22btk%22%3A%22F%2BZt4%2BR0wJ8ne63c7TlEQZrTZw%2BRJzOpOrFfjUr60QM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2290de159b-616c-411a-a5b2-c2739435d0ec%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Angel97x -https://manifest-server.naiadsystems.com/live/d99c1f6d-b59b-4085-b310-a1391fcccb33.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machamp%3A8303&btk=hiMdicsArOYnYfL0PQBgUVQwMica4hYFA96o92yihFk&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-20.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machamp%3A8303%22%2C%22btk%22%3A%22hiMdicsArOYnYfL0PQBgUVQwMica4hYFA96o92yihFk%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22d99c1f6d-b59b-4085-b310-a1391fcccb33%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Henrik_os -https://manifest-server.naiadsystems.com/live/7b858a91-638f-42cb-b5c5-bbd505ffdc8c.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=golduck%3A8303&btk=FGv0hF79vhpIju2Rje5LiLxOD55o3amY7auTI%2FAy8Wc&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22golduck%3A8303%22%2C%22btk%22%3A%22FGv0hF79vhpIju2Rje5LiLxOD55o3amY7auTI%2FAy8Wc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%227b858a91-638f-42cb-b5c5-bbd505ffdc8c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",RafaelVander -https://manifest-server.naiadsystems.com/live/8fdeb677-cfb8-4761-9872-6b150143f1d6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8303&btk=PWns1Z8g5IV2ym%2FI3ZP0gjmlqovcxGn%2FN6Uipsw9eRg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacruel%3A8303%22%2C%22btk%22%3A%22PWns1Z8g5IV2ym%2FI3ZP0gjmlqovcxGn%2FN6Uipsw9eRg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228fdeb677-cfb8-4761-9872-6b150143f1d6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",roc_co -https://manifest-server.naiadsystems.com/live/2cd165c3-29db-43dc-aecc-2c76dc07d28e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=golduck%3A8303&btk=V4yGl6PUFQxDfYp9LjBrZZyx7cGtpePFIIiCmIBM4BI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22golduck%3A8303%22%2C%22btk%22%3A%22V4yGl6PUFQxDfYp9LjBrZZyx7cGtpePFIIiCmIBM4BI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222cd165c3-29db-43dc-aecc-2c76dc07d28e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Alessandro_28 -https://manifest-server.naiadsystems.com/live/2c21a0b7-be0b-41e3-a281-06334a950101.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=victreebel%3A8303&btk=kTegwBukWo037TgNVuqBJgi3VJKUOSgMdIHkDV88u4E&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22victreebel%3A8303%22%2C%22btk%22%3A%22kTegwBukWo037TgNVuqBJgi3VJKUOSgMdIHkDV88u4E%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222c21a0b7-be0b-41e3-a281-06334a950101%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",ValentinaRujano -https://manifest-server.naiadsystems.com/live/5f1f70ff-c732-4ec8-9c61-df819deaf696.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=weepinbell%3A8303&btk=cHkKfNmrGIriT5i4cXWM6rI1qdpKmy%2FizP36HrAJQj0&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-24.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weepinbell%3A8303%22%2C%22btk%22%3A%22cHkKfNmrGIriT5i4cXWM6rI1qdpKmy%2FizP36HrAJQj0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%225f1f70ff-c732-4ec8-9c61-df819deaf696%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Darkboss_25 -https://manifest-server.naiadsystems.com/live/98e84f52-3fa5-41e3-9236-a978f51d4bf9.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windweasel%3A8303&btk=XmqrKgi4WqXILfCSixXFbLOvgwohN1mU6AZ9yF273Mg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windweasel%3A8303%22%2C%22btk%22%3A%22XmqrKgi4WqXILfCSixXFbLOvgwohN1mU6AZ9yF273Mg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2298e84f52-3fa5-41e3-9236-a978f51d4bf9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",juanD67 -https://manifest-server.naiadsystems.com/live/576008ab-02cf-4844-94c4-2f90afeae63b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpigeon%3A8303&btk=%2Fy1%2Fyly8P%2FTE0X2RkVddctwREueu6S2LiPqfSoY3oFw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpigeon%3A8303%22%2C%22btk%22%3A%22%2Fy1%2Fyly8P%2FTE0X2RkVddctwREueu6S2LiPqfSoY3oFw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22576008ab-02cf-4844-94c4-2f90afeae63b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",itsmeeros -https://manifest-server.naiadsystems.com/live/2eba9528-3175-433e-83ff-993ede75e8be.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=icedolphin%3A8303&btk=7oCteIErbCmpRpj6wBazJg53lBytoyzF6ppk4Sa%2F%2FSk&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-27.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22icedolphin%3A8303%22%2C%22btk%22%3A%227oCteIErbCmpRpj6wBazJg53lBytoyzF6ppk4Sa%2F%2FSk%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222eba9528-3175-433e-83ff-993ede75e8be%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Aleyalexa -https://manifest-server.naiadsystems.com/live/544dc6e7-b116-4f53-b837-28718cd910a6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowking%3A8303&btk=m57afLKipZZoF%2FXJqOOZSIrSyCNqTgIqDmYYO6k%2F6Fo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowking%3A8303%22%2C%22btk%22%3A%22m57afLKipZZoF%2FXJqOOZSIrSyCNqTgIqDmYYO6k%2F6Fo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22544dc6e7-b116-4f53-b837-28718cd910a6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Demonsalvaatore -https://manifest-server.naiadsystems.com/live/cece258d-40fb-47ed-835f-bafada3e376e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpossum%3A8303&btk=WTuK8hYEUE91XgAwM%2B1MIgzt8dn1Cjyxbw9SR3jMDIY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-28.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpossum%3A8303%22%2C%22btk%22%3A%22WTuK8hYEUE91XgAwM%2B1MIgzt8dn1Cjyxbw9SR3jMDIY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22cece258d-40fb-47ed-835f-bafada3e376e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Paul_Docux -https://manifest-server.naiadsystems.com/live/04c5072e-40d1-4d5f-8e8a-58ee828278dd.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=icedolphin%3A8303&btk=T7gCzychrJbw5V%2BXCG1iZnrM%2FwHfW09ueP9HPRWq10M&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22icedolphin%3A8303%22%2C%22btk%22%3A%22T7gCzychrJbw5V%2BXCG1iZnrM%2FwHfW09ueP9HPRWq10M%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2204c5072e-40d1-4d5f-8e8a-58ee828278dd%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +https://manifest-server.naiadsystems.com/live/ec6950ec-f776-4901-86ed-0d2764e0e24e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=psyduck%3A8303&btk=pWAYQllnznRAHLizyH5QgcG519kLGf08a4xlLAXEPyo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22psyduck%3A8303%22%2C%22btk%22%3A%22pWAYQllnznRAHLizyH5QgcG519kLGf08a4xlLAXEPyo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ec6950ec-f776-4901-86ed-0d2764e0e24e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A708%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",MistressIvyShow +https://manifest-server.naiadsystems.com/live/81c21ac8-fb8a-4b3d-8fc0-5034ffab30b3.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacool%3A8303&btk=exR4%2FvT9yDOQi2o2PLj%2B4HkLI8EUjdW6sK5dBVHpCe0&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacool%3A8303%22%2C%22btk%22%3A%22exR4%2FvT9yDOQi2o2PLj%2B4HkLI8EUjdW6sK5dBVHpCe0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2281c21ac8-fb8a-4b3d-8fc0-5034ffab30b3%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",NaughtyMilfNextDoor +https://manifest-server.naiadsystems.com/live/33f8c31a-b492-47ca-8dcc-86be5619aedc.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandslash%3A8303&btk=C%2BdhhkQx4bG%2B%2BiETUkOdnqfZfNHqBHIfssm7YZwdkGw&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22sandslash%3A8303%22%2C%22btk%22%3A%22C%2BdhhkQx4bG%2B%2BiETUkOdnqfZfNHqBHIfssm7YZwdkGw%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2233f8c31a-b492-47ca-8dcc-86be5619aedc%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",AryStonne +https://manifest-server.naiadsystems.com/live/7ec7bf08-4c59-44df-9202-7ba01491b240.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=firewhale%3A8303&btk=NidORhGblzhnr8II3JHWvbNrDWfp28NAODd8DV4PBjg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22firewhale%3A8303%22%2C%22btk%22%3A%22NidORhGblzhnr8II3JHWvbNrDWfp28NAODd8DV4PBjg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%227ec7bf08-4c59-44df-9202-7ba01491b240%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",KatieSkyMadison +https://manifest-server.naiadsystems.com/live/87c41fd4-0c4f-4913-b1aa-4ff604356ba1.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=pP6kFDiYJZCIpsJnnMf%2BqYy%2BS7puG3rKsNJ0v3O8HL0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22muk%3A8303%22%2C%22btk%22%3A%22pP6kFDiYJZCIpsJnnMf%2BqYy%2BS7puG3rKsNJ0v3O8HL0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2287c41fd4-0c4f-4913-b1aa-4ff604356ba1%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",roseangelap +https://manifest-server.naiadsystems.com/live/8baf55bf-2833-4083-aea0-487309dbbaf9.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=QvIyKYJloxjBWi4valYcS5pDcfdkJcjpcGL5l0cj53Q&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22QvIyKYJloxjBWi4valYcS5pDcfdkJcjpcGL5l0cj53Q%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228baf55bf-2833-4083-aea0-487309dbbaf9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Zoe_Silva +https://manifest-server.naiadsystems.com/live/61b6c6e1-c37f-415e-90e5-ca472ce76460.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=victreebel%3A8303&btk=s%2BGlZWKZnsbsQKPoKFD4Pv9aws7aWdkfDi%2B4s3BRyZU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22victreebel%3A8303%22%2C%22btk%22%3A%22s%2BGlZWKZnsbsQKPoKFD4Pv9aws7aWdkfDi%2B4s3BRyZU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2261b6c6e1-c37f-415e-90e5-ca472ce76460%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",FoxyTaylor +https://manifest-server.naiadsystems.com/live/f675885a-10c9-47b9-b723-22a93b7ca88d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=chansey%3A8303&btk=p9RN9nTXl464xSP6T2JDCwPAkGw31IhCwiieRqpShUA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-4.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22chansey%3A8303%22%2C%22btk%22%3A%22p9RN9nTXl464xSP6T2JDCwPAkGw31IhCwiieRqpShUA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f675885a-10c9-47b9-b723-22a93b7ca88d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",NinaNicoleRoyale +https://manifest-server.naiadsystems.com/live/751a93e0-944d-4385-b34f-24e2d362152e.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pidgey%3A8303&btk=9twbP7hSukjdUbH5Y5oeDKKoU38ELdFwCBww7ZqyPQY&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pidgey%3A8303%22%2C%22btk%22%3A%229twbP7hSukjdUbH5Y5oeDKKoU38ELdFwCBww7ZqyPQY%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22751a93e0-944d-4385-b34f-24e2d362152e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",DesireHugeBoobs +https://manifest-server.naiadsystems.com/live/7c6368b0-dfe2-43e7-bbaa-59f294d59afa.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggutor%3A8303&btk=SKUkAhFklN38GsDmEvjdqnLJbAPXv8lbgSVlqw5v790&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggutor%3A8303%22%2C%22btk%22%3A%22SKUkAhFklN38GsDmEvjdqnLJbAPXv8lbgSVlqw5v790%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%227c6368b0-dfe2-43e7-bbaa-59f294d59afa%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Leonoraaa +https://manifest-server.naiadsystems.com/live/f2f5ad74-5016-4788-be7a-f52889d33d04.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=mew%3A8303&btk=S53l%2FgCLSNh%2BfTGvtzqCYLEavb9Ocm%2F2x4uodwfLtcc&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22mew%3A8303%22%2C%22btk%22%3A%22S53l%2FgCLSNh%2BfTGvtzqCYLEavb9Ocm%2F2x4uodwfLtcc%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f2f5ad74-5016-4788-be7a-f52889d33d04%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LilyHargrave +https://manifest-server.naiadsystems.com/live/7344612e-9822-47c5-bc3e-b47f31843341.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=5Oo4JvIWtHfIMCeWS6qkUn4hgjLJ%2Bz0JffcVMQbk75M&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22muk%3A8303%22%2C%22btk%22%3A%225Oo4JvIWtHfIMCeWS6qkUn4hgjLJ%2Bz0JffcVMQbk75M%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%227344612e-9822-47c5-bc3e-b47f31843341%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Nikki_Juggs +https://manifest-server.naiadsystems.com/live/2f2da7ac-4e90-42e1-8a54-c9fc66ebba93.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machoke%3A8303&btk=04IMk3%2FmbMTY7qtyh92k32hLtSQI%2BxuHRcB%2BzM4TVdg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machoke%3A8303%22%2C%22btk%22%3A%2204IMk3%2FmbMTY7qtyh92k32hLtSQI%2BxuHRcB%2BzM4TVdg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%222f2da7ac-4e90-42e1-8a54-c9fc66ebba93%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",TaniaKatts +https://manifest-server.naiadsystems.com/live/e0c2ba09-02c1-4a75-8c9f-490e5c6b08fd.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=primeape%3A8303&btk=jiKRreY%2BbbusYJypLXqySwNqHy0vIv%2FuGGdB%2F8MCCOU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-21.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22primeape%3A8303%22%2C%22btk%22%3A%22jiKRreY%2BbbusYJypLXqySwNqHy0vIv%2FuGGdB%2F8MCCOU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e0c2ba09-02c1-4a75-8c9f-490e5c6b08fd%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",Alesquirt111 +https://manifest-server.naiadsystems.com/live/d40b264e-03e3-485a-858c-d55209a0c600.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=fT%2FKDLZNUMkW3QBl0xYpFqAw5UzHh%2BgX7dWoQ52Uu2k&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22muk%3A8303%22%2C%22btk%22%3A%22fT%2FKDLZNUMkW3QBl0xYpFqAw5UzHh%2BgX7dWoQ52Uu2k%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22d40b264e-03e3-485a-858c-d55209a0c600%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",LizaLive +https://manifest-server.naiadsystems.com/live/57670e2a-e77b-41ac-9f03-514fe8c6fb93.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=farfetchd%3A8303&btk=q75Fb1SXXgJ4BD1qKNATFIwAuOTBL%2BoKnH5rkvif%2BDs&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22farfetchd%3A8303%22%2C%22btk%22%3A%22q75Fb1SXXgJ4BD1qKNATFIwAuOTBL%2BoKnH5rkvif%2BDs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2257670e2a-e77b-41ac-9f03-514fe8c6fb93%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",MissSiennaElla +https://manifest-server.naiadsystems.com/live/35e5732c-2a23-455b-8c03-51ba98e4a695.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weezing%3A8303&btk=lqDQG6BvrakG6wNHvezA5VoQGsHvfEGF%2BgDdJs%2F%2FBYw&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weezing%3A8303%22%2C%22btk%22%3A%22lqDQG6BvrakG6wNHvezA5VoQGsHvfEGF%2BgDdJs%2F%2FBYw%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2235e5732c-2a23-455b-8c03-51ba98e4a695%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",BloomAria +https://manifest-server.naiadsystems.com/live/b4755dc5-38c9-49fd-a9dc-ada2ac93296d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=lickitung%3A8303&btk=aW9F%2FxOi4vW0cRbGySjvq4zraMbz1bviM9JkNQLtxR8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22lickitung%3A8303%22%2C%22btk%22%3A%22aW9F%2FxOi4vW0cRbGySjvq4zraMbz1bviM9JkNQLtxR8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22b4755dc5-38c9-49fd-a9dc-ada2ac93296d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美MALE",RACHELLxo +https://manifest-server.naiadsystems.com/live/45b96ec1-fce7-4062-bb39-b11fcbc5aa57.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=clefable%3A8303&btk=tJoiw%2F1xRvUffeTUdgm%2BuxCZiUtCBW%2B%2BOlITbwY7I1Y&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22clefable%3A8303%22%2C%22btk%22%3A%22tJoiw%2F1xRvUffeTUdgm%2BuxCZiUtCBW%2B%2BOlITbwY7I1Y%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2245b96ec1-fce7-4062-bb39-b11fcbc5aa57%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",zackchandler +https://manifest-server.naiadsystems.com/live/e3af765b-1e81-41f6-b6ee-77bad858772b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=K7F6NUFt4SozXb4AsuiZXlf8O1EFNKVbjVF2b95bgCQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%22K7F6NUFt4SozXb4AsuiZXlf8O1EFNKVbjVF2b95bgCQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22e3af765b-1e81-41f6-b6ee-77bad858772b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Sashaa_Foxxx +https://manifest-server.naiadsystems.com/live/d62d35ce-0cf2-4123-bb8a-df46450d4625.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=VNvdbr07PCNdAmfD98E9KO6wLFmNQ8Sf6b0CmkX%2B8Ww&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22dugtrio%3A8303%22%2C%22btk%22%3A%22VNvdbr07PCNdAmfD98E9KO6wLFmNQ8Sf6b0CmkX%2B8Ww%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22d62d35ce-0cf2-4123-bb8a-df46450d4625%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Graysonn_Owen +https://manifest-server.naiadsystems.com/live/24d70fd7-c887-4f32-88bf-5f9743116eef.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=8OEFWyVA6tt%2Fm6NbTpfjDLXzw0r0IUr0GrmGF6QtDMI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%228OEFWyVA6tt%2Fm6NbTpfjDLXzw0r0IUr0GrmGF6QtDMI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2224d70fd7-c887-4f32-88bf-5f9743116eef%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",JhonnyLewis +https://manifest-server.naiadsystems.com/live/84b3944c-83ae-47fd-8860-040b8f54709b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=BtawfW0MjkNALdlvxxUKlvwXdVdQRU6Pm%2FCzMuqXv2I&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ponyta%3A8303%22%2C%22btk%22%3A%22BtawfW0MjkNALdlvxxUKlvwXdVdQRU6Pm%2FCzMuqXv2I%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2284b3944c-83ae-47fd-8860-040b8f54709b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Jhony33 +https://manifest-server.naiadsystems.com/live/433fee19-5633-4faf-ad6b-ef52ef156254.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=weepinbell%3A8303&btk=1wCs49sua%2FopQwYQbc7eIdM%2Bdyh64%2FPVRXU%2BSrqIiU4&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weepinbell%3A8303%22%2C%22btk%22%3A%221wCs49sua%2FopQwYQbc7eIdM%2Bdyh64%2FPVRXU%2BSrqIiU4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22433fee19-5633-4faf-ad6b-ef52ef156254%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",MensUltimate +https://manifest-server.naiadsystems.com/live/17da3b92-6faf-478b-b79a-ed72c35dde5b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=weepinbell%3A8303&btk=7nODlMVXxEJ10M1NdS1dc3AUHJS5UpDAsOAPZ3aBNmw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-24.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weepinbell%3A8303%22%2C%22btk%22%3A%227nODlMVXxEJ10M1NdS1dc3AUHJS5UpDAsOAPZ3aBNmw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2217da3b92-6faf-478b-b79a-ed72c35dde5b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",FelixRook +https://manifest-server.naiadsystems.com/live/a5bb8d2b-ffbd-4245-a067-d2d0fd651b05.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=rv2dENwAJhoJuvCNTZ6PklI%2F2TYFvphT8iTBIH%2Bjdes&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22rv2dENwAJhoJuvCNTZ6PklI%2F2TYFvphT8iTBIH%2Bjdes%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a5bb8d2b-ffbd-4245-a067-d2d0fd651b05%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A708%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",museIvory +https://manifest-server.naiadsystems.com/live/62161242-f466-41d7-a147-aa50a399f55f.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=8Tv3wsw%2FITxQO1W24%2BNnPJgkBFL4ws7QKxhjUYQqXdY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22alakazam%3A8303%22%2C%22btk%22%3A%228Tv3wsw%2FITxQO1W24%2BNnPJgkBFL4ws7QKxhjUYQqXdY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2262161242-f466-41d7-a147-aa50a399f55f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Scook_Gray +https://manifest-server.naiadsystems.com/live/50b6fb9b-bba9-4a68-a8b6-167d2882b35b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=8ClA4CN8hJPCKmHTxk%2BX2cP5l79k9ZSQAJFdGLowgXA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-26.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%228ClA4CN8hJPCKmHTxk%2BX2cP5l79k9ZSQAJFdGLowgXA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2250b6fb9b-bba9-4a68-a8b6-167d2882b35b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",LuciferRDM +https://manifest-server.naiadsystems.com/live/b8c72d29-331d-47bb-bb78-0ab014d69559.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machoke%3A8303&btk=CWa%2FgXFCiZMY692N6XV0IY2NCnGSbCZ5%2F8nq4m2Kr6w&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machoke%3A8303%22%2C%22btk%22%3A%22CWa%2FgXFCiZMY692N6XV0IY2NCnGSbCZ5%2F8nq4m2Kr6w%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b8c72d29-331d-47bb-bb78-0ab014d69559%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",HimboFox +https://manifest-server.naiadsystems.com/live/8ab4eb8b-37c5-442c-81c2-5cf6c068c1af.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=firewhale%3A8303&btk=7XW7zaoE6VXzCuXrEcLCddq%2F66u0YgBoe7cjLDQ1pao&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-21.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22firewhale%3A8303%22%2C%22btk%22%3A%227XW7zaoE6VXzCuXrEcLCddq%2F66u0YgBoe7cjLDQ1pao%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228ab4eb8b-37c5-442c-81c2-5cf6c068c1af%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Morgan_Blade +https://manifest-server.naiadsystems.com/live/423ad16c-6693-447c-9d88-5515f40514d6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=l9yb%2FL5GvI%2BToDnvct8yNXVVZw3bB2QWZ7r7bpXE%2BOM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%22l9yb%2FL5GvI%2BToDnvct8yNXVVZw3bB2QWZ7r7bpXE%2BOM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22423ad16c-6693-447c-9d88-5515f40514d6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Youreherewithme +https://manifest-server.naiadsystems.com/live/ec516ef2-2e9c-4a6a-bc35-5a1920407b41.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=arcanine%3A8303&btk=QEwDmB7s25GzO%2FNR%2B8u5rYblVSdBu7m43rnxoJhgvJo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arcanine%3A8303%22%2C%22btk%22%3A%22QEwDmB7s25GzO%2FNR%2B8u5rYblVSdBu7m43rnxoJhgvJo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ec516ef2-2e9c-4a6a-bc35-5a1920407b41%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",jackson_millers +https://manifest-server.naiadsystems.com/live/cdb1c829-566a-4b4f-8605-977fbbf5bc51.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=meowth%3A8303&btk=5fm8t7qSZExjP2xQrejbmocB0kZM9G2Eeoh3%2Fdh9aZs&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22meowth%3A8303%22%2C%22btk%22%3A%225fm8t7qSZExjP2xQrejbmocB0kZM9G2Eeoh3%2Fdh9aZs%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22cdb1c829-566a-4b4f-8605-977fbbf5bc51%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",hugearmound +https://manifest-server.naiadsystems.com/live/8972f665-b79f-4b1e-b826-ec732b24f9ff.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=UNgusC%2BAvCg8POg4R3dQnHS13Zqd6J4karRDDufBAh8&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%22UNgusC%2BAvCg8POg4R3dQnHS13Zqd6J4karRDDufBAh8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228972f665-b79f-4b1e-b826-ec732b24f9ff%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",LeleHottxxx -https://manifest-server.naiadsystems.com/live/b341b060-e108-4147-b7cc-5ba31b07f0ca.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=9AXtxw8OYwz3ghfg1ZlW3YPfEvq4%2FgdnLe5RxGYjX88&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-30.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22dugtrio%3A8303%22%2C%22btk%22%3A%229AXtxw8OYwz3ghfg1ZlW3YPfEvq4%2FgdnLe5RxGYjX88%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22b341b060-e108-4147-b7cc-5ba31b07f0ca%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Enrrixxx -https://manifest-server.naiadsystems.com/live/7596b000-388a-420c-b920-518f95f3500a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windweasel%3A8303&btk=baSUt%2F%2BWQRqcitOl9SD8uGcf7YEKQrthDbtkC00tGUY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windweasel%3A8303%22%2C%22btk%22%3A%22baSUt%2F%2BWQRqcitOl9SD8uGcf7YEKQrthDbtkC00tGUY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%227596b000-388a-420c-b920-518f95f3500a%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Black_tentationx -https://manifest-server.naiadsystems.com/live/a1f395c5-e09f-40c8-a8da-8c0ed89c8485.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=graveler%3A8303&btk=Z0IEX2CokX8mhSjcrSIw5wg6wjK7vT1nIj4lmLSbgwQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-26.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22graveler%3A8303%22%2C%22btk%22%3A%22Z0IEX2CokX8mhSjcrSIw5wg6wjK7vT1nIj4lmLSbgwQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a1f395c5-e09f-40c8-a8da-8c0ed89c8485%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",andressmith22 -https://manifest-server.naiadsystems.com/live/ead687ea-f396-407b-8277-d40969669db6.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=diglett%3A8303&btk=tt1tnzCE8077Ys2tCYuG4fYBDseDlqc8eVB0lgDzVkI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-18.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22diglett%3A8303%22%2C%22btk%22%3A%22tt1tnzCE8077Ys2tCYuG4fYBDseDlqc8eVB0lgDzVkI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ead687ea-f396-407b-8277-d40969669db6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",JacodVidal -https://manifest-server.naiadsystems.com/live/5b251084-8290-4909-bca5-4a6502668c6a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=mankey%3A8303&btk=TBWHLuOa0hKk1%2BPkMDvZRkDvKnLtYPGFrPN95ZWN3gA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-21.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22mankey%3A8303%22%2C%22btk%22%3A%22TBWHLuOa0hKk1%2BPkMDvZRkDvKnLtYPGFrPN95ZWN3gA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%225b251084-8290-4909-bca5-4a6502668c6a%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",JuanMhata -https://manifest-server.naiadsystems.com/live/fc1c217e-3b08-4331-a9f7-e5b14998e96d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=jFhcVTQT%2BjPCBOlJ%2BPiVZ7ADpm%2F4IJJ0w3Tt%2FZZ6sgw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-24.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%22jFhcVTQT%2BjPCBOlJ%2BPiVZ7ADpm%2F4IJJ0w3Tt%2FZZ6sgw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22fc1c217e-3b08-4331-a9f7-e5b14998e96d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",DanteKnox -https://manifest-server.naiadsystems.com/live/5cf11cbf-8443-40eb-9926-d1c5819ff57d.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8303&btk=JpwCGfPx5yT5Wj9GHR7yv9mjOkQI6Aa0wymGPV34VTg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-27.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacruel%3A8303%22%2C%22btk%22%3A%22JpwCGfPx5yT5Wj9GHR7yv9mjOkQI6Aa0wymGPV34VTg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%225cf11cbf-8443-40eb-9926-d1c5819ff57d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +https://manifest-server.naiadsystems.com/live/308b481c-ce8c-4ea4-9593-ddaf29441cdf.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=q4xATlcxtfJxKTO3KoB2%2BkF98OtW2w%2BJqGT9MVZvRxg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22abra%3A8303%22%2C%22btk%22%3A%22q4xATlcxtfJxKTO3KoB2%2BkF98OtW2w%2BJqGT9MVZvRxg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22308b481c-ce8c-4ea4-9593-ddaf29441cdf%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",MisterSmmith +https://manifest-server.naiadsystems.com/live/8026f721-47f1-48b9-a026-0a619646c1e8.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=earthturtle%3A8303&btk=j3%2B3EihMuXtCsOcRfDZOai47Hwe4PMypddq8Nt6Utts&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22earthturtle%3A8303%22%2C%22btk%22%3A%22j3%2B3EihMuXtCsOcRfDZOai47Hwe4PMypddq8Nt6Utts%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%228026f721-47f1-48b9-a026-0a619646c1e8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",AAngelbusT +https://manifest-server.naiadsystems.com/live/170b7a77-9d8a-442c-9aea-93bc05a7aa2b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=psyduck%3A8303&btk=hSg7VTtCOBxxaBuud%2B9Xof97Eo1KWV%2Fod74qIeQmpVo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22psyduck%3A8303%22%2C%22btk%22%3A%22hSg7VTtCOBxxaBuud%2B9Xof97Eo1KWV%2Fod74qIeQmpVo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22170b7a77-9d8a-442c-9aea-93bc05a7aa2b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",jeymaximo +https://manifest-server.naiadsystems.com/live/3d1bdc17-d6f0-4c51-bf3a-55366686210a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=winddolphin%3A8303&btk=ovmbOJknNXKXFZD4VHeBnQwfPadOgm45oszdHG%2BXwZo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-28.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22winddolphin%3A8303%22%2C%22btk%22%3A%22ovmbOJknNXKXFZD4VHeBnQwfPadOgm45oszdHG%2BXwZo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%223d1bdc17-d6f0-4c51-bf3a-55366686210a%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",AmethystShadow18 +https://manifest-server.naiadsystems.com/live/980df6ca-9fab-4730-890d-6d57c9e72747.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=cZI%2FZhPwsqLqnk6wQVuLpsQgGOtG3YvFhx40uDmhijY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ponyta%3A8303%22%2C%22btk%22%3A%22cZI%2FZhPwsqLqnk6wQVuLpsQgGOtG3YvFhx40uDmhijY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22980df6ca-9fab-4730-890d-6d57c9e72747%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",GeorgeDiesell +https://manifest-server.naiadsystems.com/live/64aa783a-e669-4a45-8075-8753525d6de5.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=BveWxIc%2FpvsbvrMF8bMifNYRFxyd1gNKkJ7g6nw2r1Y&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%22BveWxIc%2FpvsbvrMF8bMifNYRFxyd1gNKkJ7g6nw2r1Y%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2264aa783a-e669-4a45-8075-8753525d6de5%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Cameros_Pierce +https://manifest-server.naiadsystems.com/live/f7569be1-bc79-4b52-81dc-819b76b2d337.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=t1tlngvSnPgB8MfERhtyHhjzyo%2FjBEVzg3zUZVepRwQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-24.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowpoke%3A8303%22%2C%22btk%22%3A%22t1tlngvSnPgB8MfERhtyHhjzyo%2FjBEVzg3zUZVepRwQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f7569be1-bc79-4b52-81dc-819b76b2d337%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Jake_Muller +https://manifest-server.naiadsystems.com/live/afa749ac-a295-42aa-aac4-f603e7f12994.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=koffing%3A8303&btk=vrR38T2pO6pL6OcNYn68Db7lYqe5dfPImlTHLirOQNg&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22koffing%3A8303%22%2C%22btk%22%3A%22vrR38T2pO6pL6OcNYn68Db7lYqe5dfPImlTHLirOQNg%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22afa749ac-a295-42aa-aac4-f603e7f12994%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",NikoStone +https://manifest-server.naiadsystems.com/live/124c60a1-5af1-4c76-b234-c7594cf86b33.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=2Eq5CU4pLErlQ2yKd9%2BrzldNuICxZzA7epul3ybddos&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%222Eq5CU4pLErlQ2yKd9%2BrzldNuICxZzA7epul3ybddos%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22124c60a1-5af1-4c76-b234-c7594cf86b33%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Kael_Brown +https://manifest-server.naiadsystems.com/live/94472a9c-525f-4f19-a200-b616a6d926f4.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windweasel%3A8303&btk=K0wHrEkszWkIfqPZjvk2KBKQ5JLSJkXpZEdaptpM9ts&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windweasel%3A8303%22%2C%22btk%22%3A%22K0wHrEkszWkIfqPZjvk2KBKQ5JLSJkXpZEdaptpM9ts%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2294472a9c-525f-4f19-a200-b616a6d926f4%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",TiagoBlaze +https://manifest-server.naiadsystems.com/live/9e6ca85c-1748-4fbf-b9b4-920da47d26ab.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacruel%3A8303&btk=IUb08qKcnNrr1xYU3fFL36qiDnmShTQ4uDxJlYWEk3s&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-22.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacruel%3A8303%22%2C%22btk%22%3A%22IUb08qKcnNrr1xYU3fFL36qiDnmShTQ4uDxJlYWEk3s%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%229e6ca85c-1748-4fbf-b9b4-920da47d26ab%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",BrutusK +https://manifest-server.naiadsystems.com/live/30d48c7c-ae06-4baf-8cdb-e8fd3b651f0d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=cubone%3A8303&btk=43RVWuE7H1n1K52vEwwRawlccboP5LozB5CHTNElnAA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22cubone%3A8303%22%2C%22btk%22%3A%2243RVWuE7H1n1K52vEwwRawlccboP5LozB5CHTNElnAA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2230d48c7c-ae06-4baf-8cdb-e8fd3b651f0d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A709%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",theKing27 -https://manifest-server.naiadsystems.com/live/3b2117bf-6a26-44f5-9e4a-7114e2372863.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=diglett%3A8303&btk=5RbNgOWW670vW1q2lJ7BDBQrNasrQtOCGc19sUxCQz8&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-20.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22diglett%3A8303%22%2C%22btk%22%3A%225RbNgOWW670vW1q2lJ7BDBQrNasrQtOCGc19sUxCQz8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%223b2117bf-6a26-44f5-9e4a-7114e2372863%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",DaviidBuckx -https://manifest-server.naiadsystems.com/live/07e81f0b-f36a-4828-aa71-6b79a8a88acf.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=firewhale%3A8303&btk=77%2FGzAJwMmy%2BWV5Yn%2F1Lyd4cMgPOVivxDFv6JFavfqU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22firewhale%3A8303%22%2C%22btk%22%3A%2277%2FGzAJwMmy%2BWV5Yn%2F1Lyd4cMgPOVivxDFv6JFavfqU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2207e81f0b-f36a-4828-aa71-6b79a8a88acf%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",axelg -https://manifest-server.naiadsystems.com/live/13beea18-3caa-493b-8ff6-4be6b85254fd.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=earthturtle%3A8303&btk=yUubfibazUpn%2FeKpIuGtqatI3fDXobhQgSar02nT%2F1E&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-27.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22earthturtle%3A8303%22%2C%22btk%22%3A%22yUubfibazUpn%2FeKpIuGtqatI3fDXobhQgSar02nT%2F1E%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2213beea18-3caa-493b-8ff6-4be6b85254fd%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",clark_paul -https://manifest-server.naiadsystems.com/live/48afc496-ca86-4f3c-9b33-0845da1fc140.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=qDDxdifCS93bBXZyg2RqeqnrwPLqssV975%2F8vqUiHR4&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%22qDDxdifCS93bBXZyg2RqeqnrwPLqssV975%2F8vqUiHR4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2248afc496-ca86-4f3c-9b33-0845da1fc140%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",MateoConde -https://manifest-server.naiadsystems.com/live/a40d2f9e-3aa4-4fe8-b5af-b8f2d17a655f.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=arcanine%3A8303&btk=pwlGtz1lFn%2FaGrz4kRPtHUUVnreYB%2BDnB3F8jhqA7Ag&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arcanine%3A8303%22%2C%22btk%22%3A%22pwlGtz1lFn%2FaGrz4kRPtHUUVnreYB%2BDnB3F8jhqA7Ag%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a40d2f9e-3aa4-4fe8-b5af-b8f2d17a655f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Toji_zenin27 -https://manifest-server.naiadsystems.com/live/f830d381-b4e8-4d98-b4b8-3d0bb4a10d48.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=o4WKC%2BEfd%2FjKuyTL5NJY67RyVqHYFFsJ%2BInykqqmNl0&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22geodude%3A8303%22%2C%22btk%22%3A%22o4WKC%2BEfd%2FjKuyTL5NJY67RyVqHYFFsJ%2BInykqqmNl0%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f830d381-b4e8-4d98-b4b8-3d0bb4a10d48%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",JassonMuller -https://manifest-server.naiadsystems.com/live/a850715f-5e0a-438b-ae95-e1c53d2f6b37.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=b2D3I2OkLO6QpbUMC7Uut%2B5lS3CF4kcmiQpteSkqyOA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-28.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22geodude%3A8303%22%2C%22btk%22%3A%22b2D3I2OkLO6QpbUMC7Uut%2B5lS3CF4kcmiQpteSkqyOA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a850715f-5e0a-438b-ae95-e1c53d2f6b37%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",eren_jeager -https://manifest-server.naiadsystems.com/live/86b4d33e-8504-4dc2-b644-3fe7bfdc1baf.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowking%3A8303&btk=4hLMg8JJeE86ET4fk97BOiwSML5ICMOjdDcT4HGPWjY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-20.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowking%3A8303%22%2C%22btk%22%3A%224hLMg8JJeE86ET4fk97BOiwSML5ICMOjdDcT4HGPWjY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2286b4d33e-8504-4dc2-b644-3fe7bfdc1baf%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",AleLux -https://manifest-server.naiadsystems.com/live/0f1d1c97-acda-4ace-9c37-b2672f197049.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=geodude%3A8303&btk=5o4WO7dFb62A%2B%2BiG0N3xFzE4mZd6dfIbROPwi5t6U2k&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22geodude%3A8303%22%2C%22btk%22%3A%225o4WO7dFb62A%2B%2BiG0N3xFzE4mZd6dfIbROPwi5t6U2k%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220f1d1c97-acda-4ace-9c37-b2672f197049%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",AdamWalkers90 -https://manifest-server.naiadsystems.com/live/0b29a8ab-5fb0-4781-a3d0-5b8d68923bf9.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowbro%3A8303&btk=dvQiZEqBuyESnI2nhAWUGbRlXwZq%2B2dO3laRwpYNzIo&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-28.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowbro%3A8303%22%2C%22btk%22%3A%22dvQiZEqBuyESnI2nhAWUGbRlXwZq%2B2dO3laRwpYNzIo%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220b29a8ab-5fb0-4781-a3d0-5b8d68923bf9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",TheLaceyBloom -https://manifest-server.naiadsystems.com/live/cf7302cf-3a9d-4186-a929-eddb73a6af07.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=slowpoke%3A8303&btk=3eWWgTUYnKetnJsU9kStFUK8NKY%2FQ14ppQZDV%2BcrsiE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-22.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22slowpoke%3A8303%22%2C%22btk%22%3A%223eWWgTUYnKetnJsU9kStFUK8NKY%2FQ14ppQZDV%2BcrsiE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22cf7302cf-3a9d-4186-a929-eddb73a6af07%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Monica_Steals -https://manifest-server.naiadsystems.com/live/9d643483-6fe0-4347-9733-414ff31ca170.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=drowzee%3A8303&btk=nAshtIfKwiX9Yb5sPZTm45T6%2Fx7iG3eCusYHQbBqKNs&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22drowzee%3A8303%22%2C%22btk%22%3A%22nAshtIfKwiX9Yb5sPZTm45T6%2Fx7iG3eCusYHQbBqKNs%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229d643483-6fe0-4347-9733-414ff31ca170%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",SamiSue -https://manifest-server.naiadsystems.com/live/ec367dd0-c8c6-4fc7-ac2c-417df4c1a5da.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=beedrill%3A8303&btk=BUr5Ux27610mizciceTqED7pbhsPpu%2BGBwfeBEnVoMI&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22beedrill%3A8303%22%2C%22btk%22%3A%22BUr5Ux27610mizciceTqED7pbhsPpu%2BGBwfeBEnVoMI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ec367dd0-c8c6-4fc7-ac2c-417df4c1a5da%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Emberreinn -https://manifest-server.naiadsystems.com/live/9e397032-0797-48ae-b859-596273c463eb.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pidgeot%3A8303&btk=szAnv0Lk%2FEtPQTZhGsc4G52hX3a2f4LZE7YlGxxjxfM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pidgeot%3A8303%22%2C%22btk%22%3A%22szAnv0Lk%2FEtPQTZhGsc4G52hX3a2f4LZE7YlGxxjxfM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229e397032-0797-48ae-b859-596273c463eb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",JordyJett -https://manifest-server.naiadsystems.com/live/6413be3f-ad80-47b6-80c9-9ad31cc88002.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=tZw5XhK%2BAs5KsvDq338xxwJQbJx8FfV2AbVsPGFTknQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-23.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%22tZw5XhK%2BAs5KsvDq338xxwJQbJx8FfV2AbVsPGFTknQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%226413be3f-ad80-47b6-80c9-9ad31cc88002%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",GraceBeaumont -https://manifest-server.naiadsystems.com/live/f7adcfec-1206-479e-8f4e-4a0dd333a41b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=bellsprout%3A8303&btk=A%2FNCAhS4f%2FPeEnq5Qe2bO4CDYbFyScmVzujJ%2FZ526Pw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22bellsprout%3A8303%22%2C%22btk%22%3A%22A%2FNCAhS4f%2FPeEnq5Qe2bO4CDYbFyScmVzujJ%2FZ526Pw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f7adcfec-1206-479e-8f4e-4a0dd333a41b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",HottieJadeRoxxx -https://manifest-server.naiadsystems.com/live/874cdb19-411c-402e-9078-d96a0055798a.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=kadabra%3A8303&btk=p%2F3TWcmdHjNB9huG8ntIkXx9ueSrAn9SAn0yvEXF8Iw&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kadabra%3A8303%22%2C%22btk%22%3A%22p%2F3TWcmdHjNB9huG8ntIkXx9ueSrAn9SAn0yvEXF8Iw%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22874cdb19-411c-402e-9078-d96a0055798a%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",dirtyyiyannaa -https://manifest-server.naiadsystems.com/live/7f2128e5-0ce6-496a-8e85-f9efff9cb9cf.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=alakazam%3A8303&btk=ek%2FL6yhYYCV5Ix1bVjXME74WDKMJ19W9rAJEfkeVQbA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22alakazam%3A8303%22%2C%22btk%22%3A%22ek%2FL6yhYYCV5Ix1bVjXME74WDKMJ19W9rAJEfkeVQbA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%227f2128e5-0ce6-496a-8e85-f9efff9cb9cf%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",ValeriaImaniLin -https://manifest-server.naiadsystems.com/live/99ee5bf5-0926-4de4-9c70-24c413c4f461.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=machamp%3A8303&btk=u6x%2FVk4IIYXbbglrvOm0DGkjDPnxbgbTmmwhCUva05c&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22machamp%3A8303%22%2C%22btk%22%3A%22u6x%2FVk4IIYXbbglrvOm0DGkjDPnxbgbTmmwhCUva05c%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2299ee5bf5-0926-4de4-9c70-24c413c4f461%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",MsLindsayDevis -https://manifest-server.naiadsystems.com/live/0054bcb7-7dd3-438b-84a4-0c4b5a2995f5.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=kraken%3A8303&btk=ynVkaTvbK3iK34K5RwkxvEtPfvo8fnJT%2FVb%2F0FHHQ6M&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kraken%3A8303%22%2C%22btk%22%3A%22ynVkaTvbK3iK34K5RwkxvEtPfvo8fnJT%2FVb%2F0FHHQ6M%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%220054bcb7-7dd3-438b-84a4-0c4b5a2995f5%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",SummerJaymes -https://manifest-server.naiadsystems.com/live/99585141-75f8-491e-8e08-cb3580e504bc.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=svgz%2FiUASQbOKAd%2FRAVtu1LGLq1fohRx8d0D5IV7Css&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%22svgz%2FiUASQbOKAd%2FRAVtu1LGLq1fohRx8d0D5IV7Css%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2299585141-75f8-491e-8e08-cb3580e504bc%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",suzyque -https://manifest-server.naiadsystems.com/live/1578801b-bd04-4c9f-84b4-d4afc65c1b20.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=uW0z2oPV%2BTXvHB6jeitSyL0uFq4l17kz6Rt%2FmJuzlkg&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22abra%3A8303%22%2C%22btk%22%3A%22uW0z2oPV%2BTXvHB6jeitSyL0uFq4l17kz6Rt%2FmJuzlkg%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%221578801b-bd04-4c9f-84b4-d4afc65c1b20%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",MollyLoveNZ -https://manifest-server.naiadsystems.com/live/c3026032-4333-45ed-a23a-15d01de26e5b.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pinchy%3A8303&btk=SJKs79f4Tvs9RGbuUO2pvlPF9E3XEGaCh2iUi4MHDMM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pinchy%3A8303%22%2C%22btk%22%3A%22SJKs79f4Tvs9RGbuUO2pvlPF9E3XEGaCh2iUi4MHDMM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22c3026032-4333-45ed-a23a-15d01de26e5b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",EdenEvansLive -https://manifest-server.naiadsystems.com/live/28c1607e-d0fc-4104-a096-64c9e353e1fb.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=victreebel%3A8303&btk=JtUcCsPp%2BVUyLM%2BIB5encd17gBZkmPXoQVxp9t3hzZQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22victreebel%3A8303%22%2C%22btk%22%3A%22JtUcCsPp%2BVUyLM%2BIB5encd17gBZkmPXoQVxp9t3hzZQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2228c1607e-d0fc-4104-a096-64c9e353e1fb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Little_lexxxi -https://manifest-server.naiadsystems.com/live/65cc4e30-0357-43d0-b87c-d37248de25f0.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=firewhale%3A8303&btk=Jptkoxc57FYY5mBFKCQUxfBEOjQp1xag1k2yJcaViKQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22firewhale%3A8303%22%2C%22btk%22%3A%22Jptkoxc57FYY5mBFKCQUxfBEOjQp1xag1k2yJcaViKQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2265cc4e30-0357-43d0-b87c-d37248de25f0%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Alexisdownunderx -https://manifest-server.naiadsystems.com/live/60e28a47-bbd3-4dc5-a24b-3eaf7f105ebe.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=mew%3A8303&btk=etxjKyR8asadMo%2BxiaMD3UWrFcnJUcRvxZvOqCUFUWQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22mew%3A8303%22%2C%22btk%22%3A%22etxjKyR8asadMo%2BxiaMD3UWrFcnJUcRvxZvOqCUFUWQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2260e28a47-bbd3-4dc5-a24b-3eaf7f105ebe%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",GoddessElaraa -https://manifest-server.naiadsystems.com/live/84ebc4fd-162e-4cbb-b04c-f24c424ebca8.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=jigglypuff%3A8303&btk=xg%2BIpAyEo3LB8wYz2lyhsEl9ajO5LIIrGCvjDXcw9U4&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22jigglypuff%3A8303%22%2C%22btk%22%3A%22xg%2BIpAyEo3LB8wYz2lyhsEl9ajO5LIIrGCvjDXcw9U4%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2284ebc4fd-162e-4cbb-b04c-f24c424ebca8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Goddesspaigee22 -https://manifest-server.naiadsystems.com/live/d9a4f609-3672-4033-96c1-d824968a9890.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=%2BHtu3bK7ovpclsgksp%2FVe%2FZD1NQEPfzvaALNaNEYL%2F4&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-28.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ponyta%3A8303%22%2C%22btk%22%3A%22%2BHtu3bK7ovpclsgksp%2FVe%2FZD1NQEPfzvaALNaNEYL%2F4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22d9a4f609-3672-4033-96c1-d824968a9890%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",DDlynn -https://manifest-server.naiadsystems.com/live/63614bf5-bb38-4160-8de0-7765f7697487.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=diglett%3A8303&btk=td%2B8fP04j0eg5ykq%2BHrNFyEtslMPtthd24jTj8vr7KE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22diglett%3A8303%22%2C%22btk%22%3A%22td%2B8fP04j0eg5ykq%2BHrNFyEtslMPtthd24jTj8vr7KE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2263614bf5-bb38-4160-8de0-7765f7697487%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",SecretsOfMiaFae -https://manifest-server.naiadsystems.com/live/982adb7a-dcc7-48be-bf2d-f65f5ee2ffcb.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=butterfree%3A8303&btk=YdXL0MnQr5lhbEfCvRmh%2FZTgulQInCLCYoGZvl4Ryds&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22butterfree%3A8303%22%2C%22btk%22%3A%22YdXL0MnQr5lhbEfCvRmh%2FZTgulQInCLCYoGZvl4Ryds%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22982adb7a-dcc7-48be-bf2d-f65f5ee2ffcb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +https://manifest-server.naiadsystems.com/live/0b6d376b-e069-47ad-8552-fafb95610c5b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magnemite%3A8303&btk=rD5VLwgOw3N7S9qzgB5r96V%2B%2F7VVvXEuQGet%2BYV9ru8&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22magnemite%3A8303%22%2C%22btk%22%3A%22rD5VLwgOw3N7S9qzgB5r96V%2B%2F7VVvXEuQGet%2BYV9ru8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220b6d376b-e069-47ad-8552-fafb95610c5b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",LinaParadise +https://manifest-server.naiadsystems.com/live/8ba12b40-631a-4ff9-8b44-c5abd3cb235f.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggutor%3A8303&btk=%2BMPMDEdeLiWY68EBI%2FA%2B8plWkgA9rSKVG1Tj6nGdBc8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-6.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggutor%3A8303%22%2C%22btk%22%3A%22%2BMPMDEdeLiWY68EBI%2FA%2B8plWkgA9rSKVG1Tj6nGdBc8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228ba12b40-631a-4ff9-8b44-c5abd3cb235f%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",MrBrownChoc +https://manifest-server.naiadsystems.com/live/ce7785d8-2b27-4f14-8068-6915a6e5c6c8.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggcute%3A8303&btk=Dp82FTZnx9cWjUpmRHdM1XA3SD8EUgXbillhGTMIxgA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggcute%3A8303%22%2C%22btk%22%3A%22Dp82FTZnx9cWjUpmRHdM1XA3SD8EUgXbillhGTMIxgA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ce7785d8-2b27-4f14-8068-6915a6e5c6c8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",mikaelslow +https://manifest-server.naiadsystems.com/live/41f167ed-1093-44df-a037-32ab47b22645.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=golduck%3A8303&btk=XK6ddZlcuBtqVV8dG8o5UXpWGE6g22L3mnE12JpmzS8&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-26.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22golduck%3A8303%22%2C%22btk%22%3A%22XK6ddZlcuBtqVV8dG8o5UXpWGE6g22L3mnE12JpmzS8%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2241f167ed-1093-44df-a037-32ab47b22645%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A708%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",DanteLux +https://manifest-server.naiadsystems.com/live/95e112ff-4af3-4cf5-a20d-3dba54a3fa1e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=ponyta%3A8303&btk=yFhwIk6CWCAEmupkyUA29E%2BQr%2BiFE1XXUfrV0YLzGg4&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22ponyta%3A8303%22%2C%22btk%22%3A%22yFhwIk6CWCAEmupkyUA29E%2BQr%2BiFE1XXUfrV0YLzGg4%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2295e112ff-4af3-4cf5-a20d-3dba54a3fa1e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",CockyHunk +https://manifest-server.naiadsystems.com/live/2aacb8f1-1bc7-4def-8853-935833bdb849.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=horsea%3A8303&btk=xYcwQaQzoSpyC0YoyJ7ib5E5wSBFmU2BNd6LZjpV3jM&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22horsea%3A8303%22%2C%22btk%22%3A%22xYcwQaQzoSpyC0YoyJ7ib5E5wSBFmU2BNd6LZjpV3jM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%222aacb8f1-1bc7-4def-8853-935833bdb849%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",RodrigoColby20 +https://manifest-server.naiadsystems.com/live/cd8ae232-c48a-4e7a-a076-1c630281767e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=windpigeon%3A8303&btk=usGsF1R18mZGrhzDBSEZ3icsJHzo%2FpRa2g8v%2B8zv8mc&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22windpigeon%3A8303%22%2C%22btk%22%3A%22usGsF1R18mZGrhzDBSEZ3icsJHzo%2FpRa2g8v%2B8zv8mc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22cd8ae232-c48a-4e7a-a076-1c630281767e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",EthanCoxx19 +https://manifest-server.naiadsystems.com/live/bd175826-8279-422d-ba38-09983c5fbe79.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=Lx8dxVHo2ogiRGQ53CCC8i6R%2FR9d9HoU6CgEWXjhgAI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22dugtrio%3A8303%22%2C%22btk%22%3A%22Lx8dxVHo2ogiRGQ53CCC8i6R%2FR9d9HoU6CgEWXjhgAI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22bd175826-8279-422d-ba38-09983c5fbe79%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Senkitkat +https://manifest-server.naiadsystems.com/live/db68785e-6e11-42d8-b264-3062bd31070b.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=mankey%3A8303&btk=iRXP%2B0kmh8kFAVs59k5bscnU0qyBrhiJ%2B23p2GLI%2BrE&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-21.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22mankey%3A8303%22%2C%22btk%22%3A%22iRXP%2B0kmh8kFAVs59k5bscnU0qyBrhiJ%2B23p2GLI%2BrE%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22db68785e-6e11-42d8-b264-3062bd31070b%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",Angelman_19 +https://manifest-server.naiadsystems.com/live/01b78c2d-4d9e-49e6-a521-326cb474c801.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=arcanine%3A8303&btk=oNeo7CibgCq7OuHBzsCN9P37nAQinMFOQSjQseJsJIc&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arcanine%3A8303%22%2C%22btk%22%3A%22oNeo7CibgCq7OuHBzsCN9P37nAQinMFOQSjQseJsJIc%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2201b78c2d-4d9e-49e6-a521-326cb474c801%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美COUPLE",ZackFentty +https://manifest-server.naiadsystems.com/live/0632c5be-588c-4b06-a937-41ced84e3997.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=growlithe%3A8303&btk=sBqlNPJckeinCdijpFM%2BAxY%2FA%2BlKuzmIxZ6Zt4KkHlI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22growlithe%3A8303%22%2C%22btk%22%3A%22sBqlNPJckeinCdijpFM%2BAxY%2FA%2BlKuzmIxZ6Zt4KkHlI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%220632c5be-588c-4b06-a937-41ced84e3997%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",NatalllieLynn +https://manifest-server.naiadsystems.com/live/bfb9cd32-5808-4a53-b312-58d1b11849fb.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=haunter%3A8303&btk=Pc5Mo%2F6txk5DMuO%2B3jRol1fXwx0yd1PRHFEoLmtHdk0&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22haunter%3A8303%22%2C%22btk%22%3A%22Pc5Mo%2F6txk5DMuO%2B3jRol1fXwx0yd1PRHFEoLmtHdk0%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22bfb9cd32-5808-4a53-b312-58d1b11849fb%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",libby_love +https://manifest-server.naiadsystems.com/live/f67f3cf4-94bf-417b-b7ee-eac166ca1f95.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=shellder%3A8303&btk=RFSXiPH%2FROzb9KI085W%2BqyM%2BWujPj35YvUftlS82b80&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22shellder%3A8303%22%2C%22btk%22%3A%22RFSXiPH%2FROzb9KI085W%2BqyM%2BWujPj35YvUftlS82b80%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f67f3cf4-94bf-417b-b7ee-eac166ca1f95%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",LLspinz +https://manifest-server.naiadsystems.com/live/a6a45b40-c520-420f-9e51-28bc055357ad.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=dugtrio%3A8303&btk=jabsARIak82XOvF92Mnb34HAhJGzr8P%2BgyF7Ek6IZmI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-19.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22dugtrio%3A8303%22%2C%22btk%22%3A%22jabsARIak82XOvF92Mnb34HAhJGzr8P%2BgyF7Ek6IZmI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22a6a45b40-c520-420f-9e51-28bc055357ad%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",CuteLittleLeila +https://manifest-server.naiadsystems.com/live/f78b058e-d734-4276-8d52-66cb4f3dc3bf.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonchan%3A8303&btk=zMtDeInxIpKyPGfRpx543%2BWIBd%2F9i53SUbWedxjnyoA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonchan%3A8303%22%2C%22btk%22%3A%22zMtDeInxIpKyPGfRpx543%2BWIBd%2F9i53SUbWedxjnyoA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22f78b058e-d734-4276-8d52-66cb4f3dc3bf%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A432%2C%22h%22%3A768%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_432x768_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",TashaNoir +https://manifest-server.naiadsystems.com/live/f6980798-b990-421a-9a3a-4ffa676edb15.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=0iRgR05eGflVVqM5y8st5ogge8w8Ak7COupVTa%2Bda5I&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-29.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%220iRgR05eGflVVqM5y8st5ogge8w8Ak7COupVTa%2Bda5I%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f6980798-b990-421a-9a3a-4ffa676edb15%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A709%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",AthenaMaeve +https://manifest-server.naiadsystems.com/live/50cfd9b9-0dbd-4cac-9c84-3d5b4fbebf91.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=abra%3A8303&btk=AQY0m3zMhY5caceWUcfGbVlNoZHydIvmAyoFxkmqKLQ&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-26.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22abra%3A8303%22%2C%22btk%22%3A%22AQY0m3zMhY5caceWUcfGbVlNoZHydIvmAyoFxkmqKLQ%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2250cfd9b9-0dbd-4cac-9c84-3d5b4fbebf91%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D #EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",TyleneBuck -https://manifest-server.naiadsystems.com/live/92dd4adf-fcfd-40b2-b4f9-1ce801219359.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=kakuna%3A8303&btk=Xw1M5WHkK%2FKjLJgrBLVXw1%2BvE7E81Z%2FI%2F58MILlvMmM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22kakuna%3A8303%22%2C%22btk%22%3A%22Xw1M5WHkK%2FKjLJgrBLVXw1%2BvE7E81Z%2FI%2F58MILlvMmM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2292dd4adf-fcfd-40b2-b4f9-1ce801219359%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A702%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Sashalouuise -https://manifest-server.naiadsystems.com/live/72c45ab9-0e84-4baf-a12f-66096d7323e0.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=horsea%3A8303&btk=2Jd4X%2BLYPlR9zECbvj7rzXInJEm3Lf4iB0HZqEH0OWw&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22horsea%3A8303%22%2C%22btk%22%3A%222Jd4X%2BLYPlR9zECbvj7rzXInJEm3Lf4iB0HZqEH0OWw%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2272c45ab9-0e84-4baf-a12f-66096d7323e0%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Cassidy708 -https://manifest-server.naiadsystems.com/live/f4bd2558-1d66-47cb-925e-1cedb8e0c0fe.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=mankey%3A8303&btk=uL8QUXHRbEO80XcEcBpNHs%2FoZi5wpB5mvdg0YiSoLjM&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22mankey%3A8303%22%2C%22btk%22%3A%22uL8QUXHRbEO80XcEcBpNHs%2FoZi5wpB5mvdg0YiSoLjM%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22f4bd2558-1d66-47cb-925e-1cedb8e0c0fe%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",AddisonGreyxo -https://manifest-server.naiadsystems.com/live/ae21384c-b3d7-41eb-b7dd-76c737b6c3ae.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacool%3A8303&btk=AKP5aWOf7Kh3fFRoDJHx6ARt66Ot7IW96XtbNzSLmaA&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacool%3A8303%22%2C%22btk%22%3A%22AKP5aWOf7Kh3fFRoDJHx6ARt66Ot7IW96XtbNzSLmaA%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ae21384c-b3d7-41eb-b7dd-76c737b6c3ae%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",lizzyLexington -https://manifest-server.naiadsystems.com/live/322d39b8-75d0-4df0-b714-2591a9ddd9f4.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=pinchy%3A8303&btk=OqeIhD6NsXzwQwnx6xQtc14TjhZH0J7c565L%2B%2BIgKNI&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-11.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22pinchy%3A8303%22%2C%22btk%22%3A%22OqeIhD6NsXzwQwnx6xQtc14TjhZH0J7c565L%2B%2BIgKNI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22322d39b8-75d0-4df0-b714-2591a9ddd9f4%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A707%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",LatinSandra -https://manifest-server.naiadsystems.com/live/ff366021-82e6-45b0-a92b-52809e458252.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=satyr%3A8303&btk=qL%2Bcruk%2B%2B2dLl5wfNGPvBVRaH6PblpJyvcwgmpylq%2Bc&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22satyr%3A8303%22%2C%22btk%22%3A%22qL%2Bcruk%2B%2B2dLl5wfNGPvBVRaH6PblpJyvcwgmpylq%2Bc%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ff366021-82e6-45b0-a92b-52809e458252%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",mschocolatebunny -https://manifest-server.naiadsystems.com/live/dcf46dd7-6491-4bf3-8957-536fa3d28129.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmeleon%3A8303&btk=R%2BU34xFqX%2FfqCdkAtR%2B7rMVJ7m%2FyN72hSmJjdrYVn4k&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmeleon%3A8303%22%2C%22btk%22%3A%22R%2BU34xFqX%2FfqCdkAtR%2B7rMVJ7m%2FyN72hSmJjdrYVn4k%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22dcf46dd7-6491-4bf3-8957-536fa3d28129%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",GoddessAngelicAmira -https://manifest-server.naiadsystems.com/live/06dcc0a3-40b8-4309-86f0-f1f085798461.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=magnemite%3A8303&btk=0CzkZhHyQLYbhc5nHGQNsRHTFRncx3Fi1V%2B48P8aSHY&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-30.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22magnemite%3A8303%22%2C%22btk%22%3A%220CzkZhHyQLYbhc5nHGQNsRHTFRncx3Fi1V%2B48P8aSHY%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2206dcc0a3-40b8-4309-86f0-f1f085798461%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",GraceeSwift -https://manifest-server.naiadsystems.com/live/d8b8d288-518a-42fb-88d8-ee961af0afa9.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=rapidash%3A8303&btk=MUn%2FksBV1S%2FCofVDFD3ynG6mugNfR8WBYahq18HHmtU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-15.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22rapidash%3A8303%22%2C%22btk%22%3A%22MUn%2FksBV1S%2FCofVDFD3ynG6mugNfR8WBYahq18HHmtU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22d8b8d288-518a-42fb-88d8-ee961af0afa9%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D -#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",LillithSapphire -https://manifest-server.naiadsystems.com/live/e910589c-b75c-43e7-861d-88aad38d22a8.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=raticate%3A8303&btk=TctzVH2S85qcNbqrzR0BDUs1DfQ1YOf3EKrNScoqWmM&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22raticate%3A8303%22%2C%22btk%22%3A%22TctzVH2S85qcNbqrzR0BDUs1DfQ1YOf3EKrNScoqWmM%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22e910589c-b75c-43e7-861d-88aad38d22a8%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D \ No newline at end of file +https://manifest-server.naiadsystems.com/live/1ff02b6e-c558-4739-9988-f7ee4998112d.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weedle%3A8303&btk=NqAoL%2FaQRmASKCEC6g1ltbLVgFwU2wTvH%2BvNzBRst3Y&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weedle%3A8303%22%2C%22btk%22%3A%22NqAoL%2FaQRmASKCEC6g1ltbLVgFwU2wTvH%2BvNzBRst3Y%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%221ff02b6e-c558-4739-9988-f7ee4998112d%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Mina_IMP +https://manifest-server.naiadsystems.com/live/00f981be-98c7-4080-a392-d0acb9379a01.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=threehorn%3A8303&btk=xfmHf4FkWAN39sPJTlXIOfSqGj5Xa1H379b6BLa4EpI&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22threehorn%3A8303%22%2C%22btk%22%3A%22xfmHf4FkWAN39sPJTlXIOfSqGj5Xa1H379b6BLa4EpI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2200f981be-98c7-4080-a392-d0acb9379a01%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Skinny_Asian_Amanda +https://manifest-server.naiadsystems.com/live/6d09a81e-e645-420c-9545-05ee82e07fec.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmander%3A8303&btk=ZhYvCG8RdWT5c8ijDdqEWQUflnjo%2BhNDQasX3yIDGHQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmander%3A8303%22%2C%22btk%22%3A%22ZhYvCG8RdWT5c8ijDdqEWQUflnjo%2BhNDQasX3yIDGHQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%226d09a81e-e645-420c-9545-05ee82e07fec%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",SiennaLush +https://manifest-server.naiadsystems.com/live/7ed891b3-bfc4-452b-bc7f-b33974aa9b2a.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=S9PpHRqgxpA03A%2F%2Bqhr2PNO%2BpLAn3zRiauOaLRru1dI&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22S9PpHRqgxpA03A%2F%2Bqhr2PNO%2BpLAn3zRiauOaLRru1dI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%227ed891b3-bfc4-452b-bc7f-b33974aa9b2a%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A701%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",LovelyEileen +https://manifest-server.naiadsystems.com/live/466a3ef2-b589-4658-867d-700d3982c9fa.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandslash%3A8303&btk=U%2Bbv8cfxdzYAwRONo3xwo0mz0wxXbH9IT3s%2FAIFC7zI&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-8.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22sandslash%3A8303%22%2C%22btk%22%3A%22U%2Bbv8cfxdzYAwRONo3xwo0mz0wxXbH9IT3s%2FAIFC7zI%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22466a3ef2-b589-4658-867d-700d3982c9fa%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A703%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",AnnieRose +https://manifest-server.naiadsystems.com/live/a13f9596-a2a7-4370-8722-9d5a1e9f9c7c.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=gastly%3A8303&btk=sfypYxK91N6QhhuRcnq6QppdmKVXeCSa%2B%2BcKpsbJJ4s&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22gastly%3A8303%22%2C%22btk%22%3A%22sfypYxK91N6QhhuRcnq6QppdmKVXeCSa%2B%2BcKpsbJJ4s%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22a13f9596-a2a7-4370-8722-9d5a1e9f9c7c%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",QueenChloeXO +https://manifest-server.naiadsystems.com/live/ed7d7e78-4e23-456f-90e5-cbc92bd2bf71.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=spiketail%3A8303&btk=HeK4%2B6VWN5v%2F2lQ53jdUhP4FDP3daSN%2BMIuap2NUOp8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-16.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22spiketail%3A8303%22%2C%22btk%22%3A%22HeK4%2B6VWN5v%2F2lQ53jdUhP4FDP3daSN%2BMIuap2NUOp8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22ed7d7e78-4e23-456f-90e5-cbc92bd2bf71%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",LanaKalas +https://manifest-server.naiadsystems.com/live/48fa54c1-108f-4e34-9df2-fd87d41a05b6.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=piggsy%3A8303&btk=b71KK37%2FCElye0a55UuW3L88UQT5n7KrcV6Mv8hyvwk&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22piggsy%3A8303%22%2C%22btk%22%3A%22b71KK37%2FCElye0a55UuW3L88UQT5n7KrcV6Mv8hyvwk%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2248fa54c1-108f-4e34-9df2-fd87d41a05b6%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A704%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",RoxyHey +https://manifest-server.naiadsystems.com/live/9b35257a-43ff-4ca3-b982-b91de78cff88.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=drowzee%3A8303&btk=CH6vuYwRlURmizvyzAtQmoQLOrOizBecomHsNE6bvno&d=%7B%22u%22%3A%22https%3A%2F%2Fsea-13.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22drowzee%3A8303%22%2C%22btk%22%3A%22CH6vuYwRlURmizvyzAtQmoQLOrOizBecomHsNE6bvno%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229b35257a-43ff-4ca3-b982-b91de78cff88%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",LucyMaria +https://manifest-server.naiadsystems.com/live/24e813d0-7c61-420a-b2e3-74a999cada23.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=arbok%3A8323&btk=Bklfne%2Bxl54zcfhRI7a9NtBi8QARH6TTDrke9wp6ZkQ&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22arbok%3A8323%22%2C%22btk%22%3A%22Bklfne%2Bxl54zcfhRI7a9NtBi8QARH6TTDrke9wp6ZkQ%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2224e813d0-7c61-420a-b2e3-74a999cada23%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",LucinderLush +https://manifest-server.naiadsystems.com/live/fd171106-5be0-46d6-bad4-c1255ed28682.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=hitmonchan%3A8303&btk=8VyM0ae8VOoVVMPtDC4zJxbf%2FNHKIr8%2FkfT8Ucj%2FLtU&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-7.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22hitmonchan%3A8303%22%2C%22btk%22%3A%228VyM0ae8VOoVVMPtDC4zJxbf%2FNHKIr8%2FkfT8Ucj%2FLtU%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22fd171106-5be0-46d6-bad4-c1255ed28682%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",KateDivine69 +https://manifest-server.naiadsystems.com/live/8f77f056-f771-4a44-9459-edf368c4a383.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=weedle%3A8303&btk=T%2Bu57Xtx7eedVO5hVgQ3znqP5UziY3Sv6XCMebow6Lg&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-5.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22weedle%3A8303%22%2C%22btk%22%3A%22T%2Bu57Xtx7eedVO5hVgQ3znqP5UziY3Sv6XCMebow6Lg%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%228f77f056-f771-4a44-9459-edf368c4a383%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",PalmBeachPrincesa +https://manifest-server.naiadsystems.com/live/dd851340-1c0c-4efe-ba2a-bdcd04553be7.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=exeggutor%3A8303&btk=i6cAudgJdxfWLL3AVuedbGNBKOx8wnc2DYj1CkXEx9k&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-12.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22exeggutor%3A8303%22%2C%22btk%22%3A%22i6cAudgJdxfWLL3AVuedbGNBKOx8wnc2DYj1CkXEx9k%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%22dd851340-1c0c-4efe-ba2a-bdcd04553be7%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",Divine_Solace +https://manifest-server.naiadsystems.com/live/9534e214-a46c-488b-a425-c8d245f32359.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=charmander%3A8303&btk=yzjt5VNoLoD3cvvdW0MgFy4x45YhL76SFVg5jdQc%2BO8&d=%7B%22u%22%3A%22https%3A%2F%2Fusw3-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22charmander%3A8303%22%2C%22btk%22%3A%22yzjt5VNoLoD3cvvdW0MgFy4x45YhL76SFVg5jdQc%2BO8%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%229534e214-a46c-488b-a425-c8d245f32359%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",HollyLincon +https://manifest-server.naiadsystems.com/live/ec6950ec-f776-4901-86ed-0d2764e0e24e.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=psyduck%3A8303&btk=h1P2ixlSTqsi9HTcNp86XgGQllNi%2FdlB1UmwZolx%2BlI&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-25.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22psyduck%3A8303%22%2C%22btk%22%3A%22h1P2ixlSTqsi9HTcNp86XgGQllNi%2FdlB1UmwZolx%2BlI%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%22ec6950ec-f776-4901-86ed-0d2764e0e24e%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A708%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",MistressIvyShow +https://manifest-server.naiadsystems.com/live/81c21ac8-fb8a-4b3d-8fc0-5034ffab30b3.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=tentacool%3A8303&btk=8X%2BLXPYlDqqa08ygS4oTraftOYr4hdmOV78W3vnqqac&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-17.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22tentacool%3A8303%22%2C%22btk%22%3A%228X%2BLXPYlDqqa08ygS4oTraftOYr4hdmOV78W3vnqqac%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%2281c21ac8-fb8a-4b3d-8fc0-5034ffab30b3%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",NaughtyMilfNextDoor +https://manifest-server.naiadsystems.com/live/33f8c31a-b492-47ca-8dcc-86be5619aedc.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=sandslash%3A8303&btk=mdLcCQAj8Dslesh5DAfZiKpMxoNt0hRxyeijncIc5LA&d=%7B%22u%22%3A%22https%3A%2F%2Fusw4-10.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22sandslash%3A8303%22%2C%22btk%22%3A%22mdLcCQAj8Dslesh5DAfZiKpMxoNt0hRxyeijncIc5LA%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2233f8c31a-b492-47ca-8dcc-86be5619aedc%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A700%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",AryStonne +https://manifest-server.naiadsystems.com/live/7ec7bf08-4c59-44df-9202-7ba01491b240.m3u8?vdc=true&abr=ue1&ns=icfrooms&rsrc=firewhale%3A8303&btk=4VuGVc72iK%2BNnx9NtqWyhoJ8%2F%2BrAQjJaN686KsRpVNU&d=%7B%22u%22%3A%22https%3A%2F%2Fue1-9.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22firewhale%3A8303%22%2C%22btk%22%3A%224VuGVc72iK%2BNnx9NtqWyhoJ8%2F%2BrAQjJaN686KsRpVNU%22%2C%22abr%22%3A%22ue1%22%7D%2C%22p%22%3A%227ec7bf08-4c59-44df-9202-7ba01491b240%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A706%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D +#EXTINF:-1 tvg-logo="http://cdn.gcufbd.top/img/ouTRANS.jpg" group-title="欧美TRANS",KatieSkyMadison +https://manifest-server.naiadsystems.com/live/87c41fd4-0c4f-4913-b1aa-4ff604356ba1.m3u8?vdc=true&abr=sea&ns=icfrooms&rsrc=muk%3A8303&btk=jDJKZaW%2Fr4k%2F19a%2Feo0urTbPwPCCrVoo3ZpVJ3OEV4E&d=%7B%22u%22%3A%22https%3A%2F%2Fusw2-14.nginxborder-server.naiadsystems.com%2Fp%2F8313%22%2C%22q%22%3A%7B%22rsrc%22%3A%22muk%3A8303%22%2C%22btk%22%3A%22jDJKZaW%2Fr4k%2F19a%2Feo0urTbPwPCCrVoo3ZpVJ3OEV4E%22%2C%22abr%22%3A%22sea%22%7D%2C%22p%22%3A%2287c41fd4-0c4f-4913-b1aa-4ff604356ba1%22%2C%22f%22%3A%5B%7B%22a%22%3A128%2C%22v%22%3A705%2C%22w%22%3A768%2C%22h%22%3A432%2C%22e%22%3A%5B%22video%2Fmp4%3B%20codecs%3D%5C%22avc1.4D401F%5C%22%22%2C%22video%2Fmp4%3B%20codecs%3D%5C%22mp4a.40.2%5C%22%22%5D%2C%22n%22%3A%22_700_768x432_128%22%7D%5D%7D \ No newline at end of file